From f6f28a95f6405c6d99670a5bc25ad0b22d2cdd05 Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Mon, 17 May 2021 02:08:12 +0300
Subject: [PATCH 01/58] Used a macro for UUID generation, switched from C-style
 casts to reinterpret_cast, renamed callback

---
 src/components/ble/MusicService.cpp | 194 +++++++++++-----------------
 src/components/ble/MusicService.h   |  54 +++-----
 2 files changed, 93 insertions(+), 155 deletions(-)

diff --git a/src/components/ble/MusicService.cpp b/src/components/ble/MusicService.cpp
index 36bf2709..30dd7274 100644
--- a/src/components/ble/MusicService.cpp
+++ b/src/components/ble/MusicService.cpp
@@ -18,117 +18,68 @@
 #include "MusicService.h"
 #include "systemtask/SystemTask.h"
 
-int MSCallback(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_access_ctxt* ctxt, void* arg) {
-  auto musicService = static_cast<Pinetime::Controllers::MusicService*>(arg);
-  return musicService->OnCommand(conn_handle, attr_handle, ctxt);
+int MusicCallback(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_access_ctxt* ctxt, void* arg) {
+  return static_cast<Pinetime::Controllers::MusicService*>(arg)->OnCommand(conn_handle, attr_handle, ctxt);
 }
 
 Pinetime::Controllers::MusicService::MusicService(Pinetime::System::SystemTask& system) : m_system(system) {
-  msUuid.value[14] = msId[0];
-  msUuid.value[15] = msId[1];
-
-  msEventCharUuid.value[12] = msEventCharId[0];
-  msEventCharUuid.value[13] = msEventCharId[1];
-  msEventCharUuid.value[14] = msId[0];
-  msEventCharUuid.value[15] = msId[1];
-
-  msStatusCharUuid.value[12] = msStatusCharId[0];
-  msStatusCharUuid.value[13] = msStatusCharId[1];
-  msStatusCharUuid.value[14] = msId[0];
-  msStatusCharUuid.value[15] = msId[1];
-
-  msTrackCharUuid.value[12] = msTrackCharId[0];
-  msTrackCharUuid.value[13] = msTrackCharId[1];
-  msTrackCharUuid.value[14] = msId[0];
-  msTrackCharUuid.value[15] = msId[1];
-
-  msArtistCharUuid.value[12] = msArtistCharId[0];
-  msArtistCharUuid.value[13] = msArtistCharId[1];
-  msArtistCharUuid.value[14] = msId[0];
-  msArtistCharUuid.value[15] = msId[1];
-
-  msAlbumCharUuid.value[12] = msAlbumCharId[0];
-  msAlbumCharUuid.value[13] = msAlbumCharId[1];
-  msAlbumCharUuid.value[14] = msId[0];
-  msAlbumCharUuid.value[15] = msId[1];
-
-  msPositionCharUuid.value[12] = msPositionCharId[0];
-  msPositionCharUuid.value[13] = msPositionCharId[1];
-  msPositionCharUuid.value[14] = msId[0];
-  msPositionCharUuid.value[15] = msId[1];
-
-  msTotalLengthCharUuid.value[12] = msTotalLengthCharId[0];
-  msTotalLengthCharUuid.value[13] = msTotalLengthCharId[1];
-  msTotalLengthCharUuid.value[14] = msId[0];
-  msTotalLengthCharUuid.value[15] = msId[1];
-
-  msTrackNumberCharUuid.value[12] = msTrackNumberCharId[0];
-  msTrackNumberCharUuid.value[13] = msTrackNumberCharId[1];
-  msTrackNumberCharUuid.value[14] = msId[0];
-  msTrackNumberCharUuid.value[15] = msId[1];
-
-  msTrackTotalCharUuid.value[12] = msTrackTotalCharId[0];
-  msTrackTotalCharUuid.value[13] = msTrackTotalCharId[1];
-  msTrackTotalCharUuid.value[14] = msId[0];
-  msTrackTotalCharUuid.value[15] = msId[1];
-
-  msPlaybackSpeedCharUuid.value[12] = msPlaybackSpeedCharId[0];
-  msPlaybackSpeedCharUuid.value[13] = msPlaybackSpeedCharId[1];
-  msPlaybackSpeedCharUuid.value[14] = msId[0];
-  msPlaybackSpeedCharUuid.value[15] = msId[1];
-
-  msRepeatCharUuid.value[12] = msRepeatCharId[0];
-  msRepeatCharUuid.value[13] = msRepeatCharId[1];
-  msRepeatCharUuid.value[14] = msId[0];
-  msRepeatCharUuid.value[15] = msId[1];
-
-  msShuffleCharUuid.value[12] = msShuffleCharId[0];
-  msShuffleCharUuid.value[13] = msShuffleCharId[1];
-  msShuffleCharUuid.value[14] = msId[0];
-  msShuffleCharUuid.value[15] = msId[1];
-
-  characteristicDefinition[0] = {.uuid = (ble_uuid_t*) (&msEventCharUuid),
-                                 .access_cb = MSCallback,
+  characteristicDefinition[0] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msEventCharUuid),
+                                 .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_NOTIFY,
                                  .val_handle = &eventHandle};
-  characteristicDefinition[1] = {
-    .uuid = (ble_uuid_t*) (&msStatusCharUuid), .access_cb = MSCallback, .arg = this, .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[2] = {
-    .uuid = (ble_uuid_t*) (&msTrackCharUuid), .access_cb = MSCallback, .arg = this, .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[3] = {
-    .uuid = (ble_uuid_t*) (&msArtistCharUuid), .access_cb = MSCallback, .arg = this, .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[4] = {
-    .uuid = (ble_uuid_t*) (&msAlbumCharUuid), .access_cb = MSCallback, .arg = this, .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[5] = {
-    .uuid = (ble_uuid_t*) (&msPositionCharUuid), .access_cb = MSCallback, .arg = this, .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[6] = {.uuid = (ble_uuid_t*) (&msTotalLengthCharUuid),
-                                 .access_cb = MSCallback,
+  characteristicDefinition[1] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msStatusCharUuid),
+                                 .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[7] = {.uuid = (ble_uuid_t*) (&msTotalLengthCharUuid),
-                                 .access_cb = MSCallback,
+  characteristicDefinition[2] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTrackCharUuid),
+                                 .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[8] = {.uuid = (ble_uuid_t*) (&msTrackNumberCharUuid),
-                                 .access_cb = MSCallback,
+  characteristicDefinition[3] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msArtistCharUuid),
+                                 .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[9] = {.uuid = (ble_uuid_t*) (&msTrackTotalCharUuid),
-                                 .access_cb = MSCallback,
+  characteristicDefinition[4] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msAlbumCharUuid),
+                                 .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[10] = {.uuid = (ble_uuid_t*) (&msPlaybackSpeedCharUuid),
-                                  .access_cb = MSCallback,
+  characteristicDefinition[5] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msPositionCharUuid),
+                                 .access_cb = MusicCallback,
+                                 .arg = this,
+                                 .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
+  characteristicDefinition[6] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTotalLengthCharUuid),
+                                 .access_cb = MusicCallback,
+                                 .arg = this,
+                                 .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
+  characteristicDefinition[7] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTotalLengthCharUuid),
+                                 .access_cb = MusicCallback,
+                                 .arg = this,
+                                 .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
+  characteristicDefinition[8] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTrackNumberCharUuid),
+                                 .access_cb = MusicCallback,
+                                 .arg = this,
+                                 .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
+  characteristicDefinition[9] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTrackTotalCharUuid),
+                                 .access_cb = MusicCallback,
+                                 .arg = this,
+                                 .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
+  characteristicDefinition[10] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msPlaybackSpeedCharUuid),
+                                  .access_cb = MusicCallback,
+                                  .arg = this,
+                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
+  characteristicDefinition[11] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msRepeatCharUuid),
+                                  .access_cb = MusicCallback,
+                                  .arg = this,
+                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
+  characteristicDefinition[12] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msShuffleCharUuid),
+                                  .access_cb = MusicCallback,
                                   .arg = this,
                                   .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[11] = {
-    .uuid = (ble_uuid_t*) (&msRepeatCharUuid), .access_cb = MSCallback, .arg = this, .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[12] = {
-    .uuid = (ble_uuid_t*) (&msShuffleCharUuid), .access_cb = MSCallback, .arg = this, .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
   characteristicDefinition[13] = {0};
 
-  serviceDefinition[0] = {.type = BLE_GATT_SVC_TYPE_PRIMARY, .uuid = (ble_uuid_t*) &msUuid, .characteristics = characteristicDefinition};
+  serviceDefinition[0] = {
+    .type = BLE_GATT_SVC_TYPE_PRIMARY, .uuid = reinterpret_cast<ble_uuid_t*>(&msUuid), .characteristics = characteristicDefinition};
   serviceDefinition[1] = {0};
 
   artistName = "Waiting for";
@@ -143,7 +94,7 @@ Pinetime::Controllers::MusicService::MusicService(Pinetime::System::SystemTask&
 }
 
 void Pinetime::Controllers::MusicService::Init() {
-  int res = 0;
+  uint8_t res = 0;
   res = ble_gatts_count_cfg(serviceDefinition);
   ASSERT(res == 0);
 
@@ -152,60 +103,67 @@ void Pinetime::Controllers::MusicService::Init() {
 }
 
 int Pinetime::Controllers::MusicService::OnCommand(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_access_ctxt* ctxt) {
-
   if (ctxt->op == BLE_GATT_ACCESS_OP_WRITE_CHR) {
     size_t notifSize = OS_MBUF_PKTLEN(ctxt->om);
-    uint8_t data[notifSize + 1];
+    char data[notifSize + 1];
     data[notifSize] = '\0';
     os_mbuf_copydata(ctxt->om, 0, notifSize, data);
-    char* s = (char*) &data[0];
-    if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msArtistCharUuid) == 0) {
+    char* s = &data[0];
+    if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msArtistCharUuid)) == 0) {
       artistName = s;
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msTrackCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msTrackCharUuid)) == 0) {
       trackName = s;
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msAlbumCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msAlbumCharUuid)) == 0) {
       albumName = s;
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msStatusCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msStatusCharUuid)) == 0) {
       playing = s[0];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msRepeatCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msRepeatCharUuid)) == 0) {
       repeat = s[0];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msShuffleCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msShuffleCharUuid)) == 0) {
       shuffle = s[0];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msPositionCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msPositionCharUuid)) == 0) {
       trackProgress = (s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msTotalLengthCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msTotalLengthCharUuid)) == 0) {
       trackLength = (s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msTrackNumberCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msTrackNumberCharUuid)) == 0) {
       trackNumber = (s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msTrackTotalCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msTrackTotalCharUuid)) == 0) {
       tracksTotal = (s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, (ble_uuid_t*) &msPlaybackSpeedCharUuid) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msPlaybackSpeedCharUuid)) == 0) {
       playbackSpeed = static_cast<float>(((s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3])) / 100.0f;
     }
   }
   return 0;
 }
 
-std::string Pinetime::Controllers::MusicService::getAlbum() {
+std::string Pinetime::Controllers::MusicService::getAlbum() const {
   return albumName;
 }
 
-std::string Pinetime::Controllers::MusicService::getArtist() {
+std::string Pinetime::Controllers::MusicService::getArtist() const {
   return artistName;
 }
 
-std::string Pinetime::Controllers::MusicService::getTrack() {
+std::string Pinetime::Controllers::MusicService::getTrack() const {
   return trackName;
 }
 
-bool Pinetime::Controllers::MusicService::isPlaying() {
+bool Pinetime::Controllers::MusicService::isPlaying() const {
   return playing;
 }
 
-float Pinetime::Controllers::MusicService::getPlaybackSpeed() {
+float Pinetime::Controllers::MusicService::getPlaybackSpeed() const {
   return playbackSpeed;
 }
 
+int Pinetime::Controllers::MusicService::getProgress() const {
+  return trackProgress;
+}
+
+int Pinetime::Controllers::MusicService::getTrackLength() const {
+  return trackLength;
+}
+
 void Pinetime::Controllers::MusicService::event(char event) {
   auto* om = ble_hs_mbuf_from_flat(&event, 1);
 
@@ -216,12 +174,4 @@ void Pinetime::Controllers::MusicService::event(char event) {
   }
 
   ble_gattc_notify_custom(connectionHandle, eventHandle, om);
-}
-
-int Pinetime::Controllers::MusicService::getProgress() {
-  return trackProgress;
-}
-
-int Pinetime::Controllers::MusicService::getTrackLength() {
-  return trackLength;
-}
+}
\ No newline at end of file
diff --git a/src/components/ble/MusicService.h b/src/components/ble/MusicService.h
index 5f5343e4..4314db0f 100644
--- a/src/components/ble/MusicService.h
+++ b/src/components/ble/MusicService.h
@@ -29,6 +29,8 @@
 // 00000000-78fc-48fe-8e23-433b3a1942d0
 #define MUSIC_SERVICE_UUID_BASE                                                                                                            \
   { 0xd0, 0x42, 0x19, 0x3a, 0x3b, 0x43, 0x23, 0x8e, 0xfe, 0x48, 0xfc, 0x78, 0x00, 0x00, 0x00, 0x00 }
+#define MUSIC_SERVICE_CHAR_UUID(x, y)                                                                                                      \
+  { 0xd0, 0x42, 0x19, 0x3a, 0x3b, 0x43, 0x23, 0x8e, 0xfe, 0x48, 0xfc, 0x78, x, y, 0x00, 0x00 }
 
 namespace Pinetime {
   namespace System {
@@ -46,19 +48,19 @@ namespace Pinetime {
 
       void event(char event);
 
-      std::string getArtist();
+      std::string getArtist() const;
 
-      std::string getTrack();
+      std::string getTrack() const;
 
-      std::string getAlbum();
+      std::string getAlbum() const;
 
-      int getProgress();
+      int getProgress() const;
 
-      int getTrackLength();
+      int getTrackLength() const;
 
-      float getPlaybackSpeed();
+      float getPlaybackSpeed() const;
 
-      bool isPlaying();
+      bool isPlaying() const;
 
       static const char EVENT_MUSIC_OPEN = 0xe0;
       static const char EVENT_MUSIC_PLAY = 0x00;
@@ -71,34 +73,20 @@ namespace Pinetime {
       enum MusicStatus { NotPlaying = 0x00, Playing = 0x01 };
 
     private:
-      static constexpr uint8_t msId[2] = {0x00, 0x00};
-      static constexpr uint8_t msEventCharId[2] = {0x01, 0x00};
-      static constexpr uint8_t msStatusCharId[2] = {0x02, 0x00};
-      static constexpr uint8_t msArtistCharId[2] = {0x03, 0x00};
-      static constexpr uint8_t msTrackCharId[2] = {0x04, 0x00};
-      static constexpr uint8_t msAlbumCharId[2] = {0x05, 0x00};
-      static constexpr uint8_t msPositionCharId[2] = {0x06, 0x00};
-      static constexpr uint8_t msTotalLengthCharId[2] = {0x07, 0x00};
-      static constexpr uint8_t msTrackNumberCharId[2] = {0x08, 0x00};
-      static constexpr uint8_t msTrackTotalCharId[2] = {0x09, 0x00};
-      static constexpr uint8_t msPlaybackSpeedCharId[2] = {0x0a, 0x00};
-      static constexpr uint8_t msRepeatCharId[2] = {0x0b, 0x00};
-      static constexpr uint8_t msShuffleCharId[2] = {0x0c, 0x00};
-
       ble_uuid128_t msUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
 
-      ble_uuid128_t msEventCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msStatusCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msArtistCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msTrackCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msAlbumCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msPositionCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msTotalLengthCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msTrackNumberCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msTrackTotalCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msPlaybackSpeedCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msRepeatCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-      ble_uuid128_t msShuffleCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
+      ble_uuid128_t msEventCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x01, 0x00)};
+      ble_uuid128_t msStatusCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x02, 0x00)};
+      ble_uuid128_t msArtistCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x03, 0x00)};
+      ble_uuid128_t msTrackCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x04, 0x00)};
+      ble_uuid128_t msAlbumCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x05, 0x00)};
+      ble_uuid128_t msPositionCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x06, 0x00)};
+      ble_uuid128_t msTotalLengthCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x07, 0x00)};
+      ble_uuid128_t msTrackNumberCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x08, 0x00)};
+      ble_uuid128_t msTrackTotalCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x09, 0x00)};
+      ble_uuid128_t msPlaybackSpeedCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x0a, 0x00)};
+      ble_uuid128_t msRepeatCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x0b, 0x00)};
+      ble_uuid128_t msShuffleCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x0c, 0x00)};
 
       struct ble_gatt_chr_def characteristicDefinition[14];
       struct ble_gatt_svc_def serviceDefinition[2];

From 8568b5f31b1b3f6b5232ba0ce6e3e6a7064fe787 Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Mon, 17 May 2021 02:16:50 +0300
Subject: [PATCH 02/58] Updated license header year

---
 src/components/ble/MusicService.cpp | 2 +-
 src/components/ble/MusicService.h   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/components/ble/MusicService.cpp b/src/components/ble/MusicService.cpp
index 30dd7274..c420a576 100644
--- a/src/components/ble/MusicService.cpp
+++ b/src/components/ble/MusicService.cpp
@@ -1,4 +1,4 @@
-/*  Copyright (C) 2020 JF, Adam Pigg, Avamander
+/*  Copyright (C) 2020-2021 JF, Adam Pigg, Avamander
 
     This file is part of InfiniTime.
 
diff --git a/src/components/ble/MusicService.h b/src/components/ble/MusicService.h
index 4314db0f..0b5a7464 100644
--- a/src/components/ble/MusicService.h
+++ b/src/components/ble/MusicService.h
@@ -1,4 +1,4 @@
-/*  Copyright (C) 2020 JF, Adam Pigg, Avamander
+/*  Copyright (C) 2020-2021 JF, Adam Pigg, Avamander
 
     This file is part of InfiniTime.
 

From b39310508292b6d5f0d235872fad6b0bf31efb75 Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Wed, 26 May 2021 15:15:10 +0300
Subject: [PATCH 03/58] improve ui and optimize code

---
 src/displayapp/screens/StopWatch.cpp | 35 ++++++++++++++--------------
 1 file changed, 17 insertions(+), 18 deletions(-)

diff --git a/src/displayapp/screens/StopWatch.cpp b/src/displayapp/screens/StopWatch.cpp
index d7cd20c3..76c4bfa0 100644
--- a/src/displayapp/screens/StopWatch.cpp
+++ b/src/displayapp/screens/StopWatch.cpp
@@ -61,22 +61,32 @@ StopWatch::StopWatch(DisplayApp* app)
   lv_obj_set_style_local_text_font(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_76);
   lv_obj_set_style_local_text_color(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);
   lv_label_set_text(time, "00:00");
-  lv_obj_align(time, lv_scr_act(), LV_ALIGN_IN_LEFT_MID, 0, -45);
+  lv_obj_align(time, lv_scr_act(), LV_ALIGN_CENTER, 0, -45);
 
   msecTime = lv_label_create(lv_scr_act(), nullptr);
   // lv_obj_set_style_local_text_font(msecTime, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_bold_20);
   lv_obj_set_style_local_text_color(msecTime, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);
   lv_label_set_text(msecTime, "00");
-  lv_obj_align(msecTime, lv_scr_act(), LV_ALIGN_IN_LEFT_MID, 108, 3);
+  lv_obj_align(msecTime, lv_scr_act(), LV_ALIGN_CENTER, 0, 3);
 
   btnPlayPause = lv_btn_create(lv_scr_act(), nullptr);
   btnPlayPause->user_data = this;
   lv_obj_set_event_cb(btnPlayPause, play_pause_event_handler);
-  lv_obj_align(btnPlayPause, lv_scr_act(), LV_ALIGN_IN_BOTTOM_MID, 0, -10);
-  lv_obj_set_height(btnPlayPause, 40);
+  lv_obj_set_height(btnPlayPause, 50);
+  lv_obj_set_width(btnPlayPause, 115);
+  lv_obj_align(btnPlayPause, lv_scr_act(), LV_ALIGN_IN_BOTTOM_RIGHT, 0, 0);
   txtPlayPause = lv_label_create(btnPlayPause, nullptr);
   lv_label_set_text(txtPlayPause, Symbols::play);
 
+  btnStopLap = lv_btn_create(lv_scr_act(), nullptr);
+  btnStopLap->user_data = this;
+  lv_obj_set_event_cb(btnStopLap, stop_lap_event_handler);
+  lv_obj_set_height(btnStopLap, 50);
+  lv_obj_set_width(btnStopLap, 115);
+  lv_obj_align(btnStopLap, lv_scr_act(), LV_ALIGN_IN_BOTTOM_LEFT, 0, 0);
+  txtStopLap = lv_label_create(btnStopLap, nullptr);
+  lv_obj_set_hidden(btnStopLap, true);
+
   lapOneText = lv_label_create(lv_scr_act(), nullptr);
   // lv_obj_set_style_local_text_font(lapOneText, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_bold_20);
   lv_obj_set_style_local_text_color(lapOneText, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_YELLOW);
@@ -88,9 +98,6 @@ StopWatch::StopWatch(DisplayApp* app)
   lv_obj_set_style_local_text_color(lapTwoText, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_YELLOW);
   lv_obj_align(lapTwoText, lv_scr_act(), LV_ALIGN_IN_LEFT_MID, 50, 55);
   lv_label_set_text(lapTwoText, "");
-
-  // We don't want this button in the init state
-  btnStopLap = nullptr;
 }
 
 StopWatch::~StopWatch() {
@@ -115,10 +122,6 @@ bool StopWatch::Refresh() {
     // Init state when an user first opens the app
     // and when a stop/reset button is pressed
     case States::Init: {
-      if (btnStopLap != nullptr) {
-        lv_obj_del(btnStopLap);
-        btnStopLap = nullptr;
-      }
       // The initial default value
       lv_label_set_text(time, "00:00");
       lv_label_set_text(msecTime, "00");
@@ -129,16 +132,12 @@ bool StopWatch::Refresh() {
       lapNr = 0;
 
       if (currentEvent == Events::Play) {
-        btnStopLap = lv_btn_create(lv_scr_act(), nullptr);
-        btnStopLap->user_data = this;
-        lv_obj_set_event_cb(btnStopLap, stop_lap_event_handler);
-        lv_obj_align(btnStopLap, lv_scr_act(), LV_ALIGN_IN_TOP_MID, 0, 0);
-        lv_obj_set_height(btnStopLap, 40);
-        txtStopLap = lv_label_create(btnStopLap, nullptr);
-        lv_label_set_text(txtStopLap, Symbols::lapsFlag);
+        lv_obj_set_hidden(btnStopLap, false);
 
         startTime = xTaskGetTickCount();
         currentState = States::Running;
+      } else {
+        lv_obj_set_hidden(btnStopLap, true);
       }
       break;
     }

From c6969268fc162c41dbb37f7a2f061858563ba3c1 Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Wed, 26 May 2021 16:13:40 +0300
Subject: [PATCH 04/58] Keep button visible, but disabled

---
 src/displayapp/screens/StopWatch.cpp | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/displayapp/screens/StopWatch.cpp b/src/displayapp/screens/StopWatch.cpp
index 76c4bfa0..7c128d1b 100644
--- a/src/displayapp/screens/StopWatch.cpp
+++ b/src/displayapp/screens/StopWatch.cpp
@@ -84,8 +84,12 @@ StopWatch::StopWatch(DisplayApp* app)
   lv_obj_set_height(btnStopLap, 50);
   lv_obj_set_width(btnStopLap, 115);
   lv_obj_align(btnStopLap, lv_scr_act(), LV_ALIGN_IN_BOTTOM_LEFT, 0, 0);
+  lv_obj_set_style_local_bg_color(btnStopLap, LV_BTN_PART_MAIN, LV_STATE_DISABLED, lv_color_hex(0x080808));
   txtStopLap = lv_label_create(btnStopLap, nullptr);
-  lv_obj_set_hidden(btnStopLap, true);
+  lv_obj_set_style_local_text_color(txtStopLap, LV_BTN_PART_MAIN, LV_STATE_DISABLED, lv_color_hex(0x888888));
+  lv_label_set_text(txtStopLap, Symbols::stop);
+  lv_obj_set_state(btnStopLap, LV_STATE_DISABLED);
+  lv_obj_set_state(txtStopLap, LV_STATE_DISABLED);
 
   lapOneText = lv_label_create(lv_scr_act(), nullptr);
   // lv_obj_set_style_local_text_font(lapOneText, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_bold_20);
@@ -132,12 +136,14 @@ bool StopWatch::Refresh() {
       lapNr = 0;
 
       if (currentEvent == Events::Play) {
-        lv_obj_set_hidden(btnStopLap, false);
+        lv_obj_set_state(btnStopLap, LV_STATE_DEFAULT);
+        lv_obj_set_state(txtStopLap, LV_STATE_DEFAULT);
 
         startTime = xTaskGetTickCount();
         currentState = States::Running;
       } else {
-        lv_obj_set_hidden(btnStopLap, true);
+        lv_obj_set_state(btnStopLap, LV_STATE_DISABLED);
+        lv_obj_set_state(txtStopLap, LV_STATE_DISABLED);
       }
       break;
     }

From 7f9cc51b050e1034b573e37484f7afe29c370d81 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Sun, 6 Jun 2021 15:56:03 +0200
Subject: [PATCH 05/58] Initialize SystemTask, DisplayApp and HeartRateTask as
 global static variable instead of variables on the heap. We don't need them
 on the heap as we know their size at build time, it'll reduce memory
 fragmentation and it'll make memory analysis easier.

---
 src/CMakeLists.txt                            |  4 +-
 src/FreeRTOSConfig.h                          |  2 +-
 .../ble/AlertNotificationClient.cpp           |  2 +-
 .../ble/AlertNotificationService.cpp          |  2 +-
 src/components/ble/DfuService.cpp             |  6 +-
 src/components/ble/ImmediateAlertService.cpp  |  2 +-
 src/components/ble/NimbleController.cpp       |  2 +-
 .../datetime/DateTimeController.cpp           | 10 ++-
 src/components/datetime/DateTimeController.h  |  6 +-
 .../heartrate/HeartRateController.cpp         |  3 -
 .../heartrate/HeartRateController.h           |  4 +-
 src/components/heartrate/Ppg.cpp              | 11 +--
 src/components/heartrate/Ppg.h                |  3 +-
 src/components/timer/TimerController.cpp      | 29 +++++---
 src/components/timer/TimerController.h        | 13 ++--
 src/displayapp/DisplayApp.cpp                 | 32 +++++---
 src/displayapp/DisplayApp.h                   |  7 +-
 src/displayapp/screens/FlashLight.cpp         |  4 +-
 src/displayapp/screens/HeartRate.cpp          |  8 +-
 src/displayapp/screens/ScreenList.h           | 13 +++-
 .../screens/settings/QuickSettings.cpp        |  4 +-
 src/drivers/Bma421.cpp                        |  2 -
 src/drivers/SpiMaster.h                       |  1 -
 src/heartratetask/HeartRateTask.cpp           |  2 +-
 src/main.cpp                                  | 69 +++++++++++++-----
 src/systemtask/Messages.h                     | 26 +++++++
 src/systemtask/SystemTask.cpp                 | 73 +++++++++----------
 src/systemtask/SystemTask.h                   | 53 ++++++--------
 28 files changed, 223 insertions(+), 170 deletions(-)
 create mode 100644 src/systemtask/Messages.h

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index cd729921..c72f7c9c 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -750,8 +750,8 @@ add_definitions(-DNIMBLE_CFG_CONTROLLER)
 add_definitions(-DOS_CPUTIME_FREQ)
 add_definitions(-DNRF52 -DNRF52832 -DNRF52832_XXAA -DNRF52_PAN_74 -DNRF52_PAN_64 -DNRF52_PAN_12 -DNRF52_PAN_58 -DNRF52_PAN_54 -DNRF52_PAN_31 -DNRF52_PAN_51 -DNRF52_PAN_36 -DNRF52_PAN_15 -DNRF52_PAN_20 -DNRF52_PAN_55 -DBOARD_PCA10040)
 add_definitions(-DFREERTOS)
-add_definitions(-D__STACK_SIZE=8192)
-add_definitions(-D__HEAP_SIZE=8192)
+add_definitions(-D__STACK_SIZE=1024)
+add_definitions(-D__HEAP_SIZE=4096)
 
 # NOTE : Add the following defines to enable debug mode of the NRF SDK:
 #add_definitions(-DDEBUG)
diff --git a/src/FreeRTOSConfig.h b/src/FreeRTOSConfig.h
index 15185766..07c152dc 100644
--- a/src/FreeRTOSConfig.h
+++ b/src/FreeRTOSConfig.h
@@ -62,7 +62,7 @@
 #define configTICK_RATE_HZ                      1024
 #define configMAX_PRIORITIES                    (3)
 #define configMINIMAL_STACK_SIZE                (120)
-#define configTOTAL_HEAP_SIZE                   (1024 * 16)
+#define configTOTAL_HEAP_SIZE                   (1024 * 17)
 #define configMAX_TASK_NAME_LEN                 (4)
 #define configUSE_16_BIT_TICKS                  0
 #define configIDLE_SHOULD_YIELD                 1
diff --git a/src/components/ble/AlertNotificationClient.cpp b/src/components/ble/AlertNotificationClient.cpp
index 6043a129..c3d1d69a 100644
--- a/src/components/ble/AlertNotificationClient.cpp
+++ b/src/components/ble/AlertNotificationClient.cpp
@@ -159,7 +159,7 @@ void AlertNotificationClient::OnNotification(ble_gap_event* event) {
     notif.category = Pinetime::Controllers::NotificationManager::Categories::SimpleAlert;
     notificationManager.Push(std::move(notif));
 
-    systemTask.PushMessage(Pinetime::System::SystemTask::Messages::OnNewNotification);
+    systemTask.PushMessage(Pinetime::System::Messages::OnNewNotification);
   }
 }
 
diff --git a/src/components/ble/AlertNotificationService.cpp b/src/components/ble/AlertNotificationService.cpp
index e9f5941e..d5fc7f65 100644
--- a/src/components/ble/AlertNotificationService.cpp
+++ b/src/components/ble/AlertNotificationService.cpp
@@ -79,7 +79,7 @@ int AlertNotificationService::OnAlert(uint16_t conn_handle, uint16_t attr_handle
         break;
     }
 
-    auto event = Pinetime::System::SystemTask::Messages::OnNewNotification;
+    auto event = Pinetime::System::Messages::OnNewNotification;
     notificationManager.Push(std::move(notif));
     systemTask.PushMessage(event);
   }
diff --git a/src/components/ble/DfuService.cpp b/src/components/ble/DfuService.cpp
index 2031668e..cec194cc 100644
--- a/src/components/ble/DfuService.cpp
+++ b/src/components/ble/DfuService.cpp
@@ -205,7 +205,7 @@ int DfuService::ControlPointHandler(uint16_t connectionHandle, os_mbuf* om) {
         bleController.State(Pinetime::Controllers::Ble::FirmwareUpdateStates::Running);
         bleController.FirmwareUpdateTotalBytes(0xffffffffu);
         bleController.FirmwareUpdateCurrentBytes(0);
-        systemTask.PushMessage(Pinetime::System::SystemTask::Messages::BleFirmwareUpdateStarted);
+        systemTask.PushMessage(Pinetime::System::Messages::BleFirmwareUpdateStarted);
         return 0;
       } else {
         NRF_LOG_INFO("[DFU] -> Start DFU, mode %d not supported!", imageType);
@@ -279,7 +279,7 @@ int DfuService::ControlPointHandler(uint16_t connectionHandle, os_mbuf* om) {
       }
       NRF_LOG_INFO("[DFU] -> Activate image and reset!");
       bleController.StopFirmwareUpdate();
-      systemTask.PushMessage(Pinetime::System::SystemTask::Messages::BleFirmwareUpdateFinished);
+      systemTask.PushMessage(Pinetime::System::Messages::BleFirmwareUpdateFinished);
       Reset();
       bleController.State(Pinetime::Controllers::Ble::FirmwareUpdateStates::Validated);
       return 0;
@@ -304,7 +304,7 @@ void DfuService::Reset() {
   notificationManager.Reset();
   bleController.State(Pinetime::Controllers::Ble::FirmwareUpdateStates::Error);
   bleController.StopFirmwareUpdate();
-  systemTask.PushMessage(Pinetime::System::SystemTask::Messages::BleFirmwareUpdateFinished);
+  systemTask.PushMessage(Pinetime::System::Messages::BleFirmwareUpdateFinished);
 }
 
 DfuService::NotificationManager::NotificationManager() {
diff --git a/src/components/ble/ImmediateAlertService.cpp b/src/components/ble/ImmediateAlertService.cpp
index fd6430af..820d3b6e 100644
--- a/src/components/ble/ImmediateAlertService.cpp
+++ b/src/components/ble/ImmediateAlertService.cpp
@@ -67,7 +67,7 @@ int ImmediateAlertService::OnAlertLevelChanged(uint16_t connectionHandle, uint16
       notif.category = Pinetime::Controllers::NotificationManager::Categories::SimpleAlert;
       notificationManager.Push(std::move(notif));
 
-      systemTask.PushMessage(Pinetime::System::SystemTask::Messages::OnNewNotification);
+      systemTask.PushMessage(Pinetime::System::Messages::OnNewNotification);
     }
   }
 
diff --git a/src/components/ble/NimbleController.cpp b/src/components/ble/NimbleController.cpp
index 67a6d691..2c1d0f99 100644
--- a/src/components/ble/NimbleController.cpp
+++ b/src/components/ble/NimbleController.cpp
@@ -149,7 +149,7 @@ int NimbleController::OnGAPEvent(ble_gap_event* event) {
         bleController.Disconnect();
       } else {
         bleController.Connect();
-        systemTask.PushMessage(Pinetime::System::SystemTask::Messages::BleConnected);
+        systemTask.PushMessage(Pinetime::System::Messages::BleConnected);
         connectionHandle = event->connect.conn_handle;
         // Service discovery is deffered via systemtask
       }
diff --git a/src/components/datetime/DateTimeController.cpp b/src/components/datetime/DateTimeController.cpp
index 4f9302eb..28a70abc 100644
--- a/src/components/datetime/DateTimeController.cpp
+++ b/src/components/datetime/DateTimeController.cpp
@@ -5,9 +5,6 @@
 
 using namespace Pinetime::Controllers;
 
-DateTime::DateTime(System::SystemTask& systemTask) : systemTask {systemTask} {
-}
-
 void DateTime::SetTime(
   uint16_t year, uint8_t month, uint8_t day, uint8_t dayOfWeek, uint8_t hour, uint8_t minute, uint8_t second, uint32_t systickCounter) {
   std::tm tm = {
@@ -70,7 +67,8 @@ void DateTime::UpdateTime(uint32_t systickCounter) {
   // Notify new day to SystemTask
   if (hour == 0 and not isMidnightAlreadyNotified) {
     isMidnightAlreadyNotified = true;
-    systemTask.PushMessage(System::SystemTask::Messages::OnNewDay);
+    if(systemTask != nullptr)
+      systemTask->PushMessage(System::Messages::OnNewDay);
   } else if (hour != 0) {
     isMidnightAlreadyNotified = false;
   }
@@ -104,6 +102,10 @@ const char* DateTime::DayOfWeekShortToStringLow() {
   return DateTime::DaysStringShortLow[(uint8_t) dayOfWeek];
 }
 
+void DateTime::Register(Pinetime::System::SystemTask* systemTask) {
+  this->systemTask = systemTask;
+}
+
 char const* DateTime::DaysStringLow[] = {"--", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
 
 char const* DateTime::DaysStringShortLow[] = {"--", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"};
diff --git a/src/components/datetime/DateTimeController.h b/src/components/datetime/DateTimeController.h
index d0ae727e..265d6e9d 100644
--- a/src/components/datetime/DateTimeController.h
+++ b/src/components/datetime/DateTimeController.h
@@ -27,8 +27,6 @@ namespace Pinetime {
         December
       };
 
-      DateTime(System::SystemTask& systemTask);
-
       void SetTime(uint16_t year,
                    uint8_t month,
                    uint8_t day,
@@ -75,8 +73,9 @@ namespace Pinetime {
         return uptime;
       }
 
+      void Register(System::SystemTask* systemTask);
+
     private:
-      System::SystemTask& systemTask;
       uint16_t year = 0;
       Months month = Months::Unknown;
       uint8_t day = 0;
@@ -90,6 +89,7 @@ namespace Pinetime {
       std::chrono::seconds uptime {0};
 
       bool isMidnightAlreadyNotified = false;
+      System::SystemTask* systemTask = nullptr;
 
       static char const* DaysString[];
       static char const* DaysStringShort[];
diff --git a/src/components/heartrate/HeartRateController.cpp b/src/components/heartrate/HeartRateController.cpp
index e84d665a..716813b3 100644
--- a/src/components/heartrate/HeartRateController.cpp
+++ b/src/components/heartrate/HeartRateController.cpp
@@ -4,9 +4,6 @@
 
 using namespace Pinetime::Controllers;
 
-HeartRateController::HeartRateController(Pinetime::System::SystemTask& systemTask) : systemTask {systemTask} {
-}
-
 void HeartRateController::Update(HeartRateController::States newState, uint8_t heartRate) {
   this->state = newState;
   if (this->heartRate != heartRate) {
diff --git a/src/components/heartrate/HeartRateController.h b/src/components/heartrate/HeartRateController.h
index d3a8460d..a63f1a70 100644
--- a/src/components/heartrate/HeartRateController.h
+++ b/src/components/heartrate/HeartRateController.h
@@ -15,8 +15,7 @@ namespace Pinetime {
     public:
       enum class States { Stopped, NotEnoughData, NoTouch, Running };
 
-      explicit HeartRateController(System::SystemTask& systemTask);
-
+      HeartRateController() = default;
       void Start();
       void Stop();
       void Update(States newState, uint8_t heartRate);
@@ -32,7 +31,6 @@ namespace Pinetime {
       void SetService(Pinetime::Controllers::HeartRateService* service);
 
     private:
-      System::SystemTask& systemTask;
       Applications::HeartRateTask* task = nullptr;
       States state = States::Stopped;
       uint8_t heartRate = 0;
diff --git a/src/components/heartrate/Ppg.cpp b/src/components/heartrate/Ppg.cpp
index da0789e0..fcba3815 100644
--- a/src/components/heartrate/Ppg.cpp
+++ b/src/components/heartrate/Ppg.cpp
@@ -38,9 +38,8 @@ namespace {
   }
 }
 
-Ppg::Ppg(float spl)
-  : offset {spl},
-    hpf {0.87033078, -1.74066156, 0.87033078, -1.72377617, 0.75754694},
+Ppg::Ppg()
+  : hpf {0.87033078, -1.74066156, 0.87033078, -1.72377617, 0.75754694},
     agc {20, 0.971, 2},
     lpf {0.11595249, 0.23190498, 0.11595249, -0.72168143, 0.18549138} {
 }
@@ -67,13 +66,7 @@ float Ppg::HeartRate() {
   dataIndex = 0;
   return hr;
 }
-
-int cccount = 0;
 float Ppg::ProcessHeartRate() {
-
-  if (cccount > 2)
-    asm("nop");
-  cccount++;
   auto t0 = Trough(data.data(), dataIndex, 7, 48);
   if (t0 < 0)
     return 0;
diff --git a/src/components/heartrate/Ppg.h b/src/components/heartrate/Ppg.h
index ee07dfcf..00014162 100644
--- a/src/components/heartrate/Ppg.h
+++ b/src/components/heartrate/Ppg.h
@@ -8,8 +8,7 @@ namespace Pinetime {
   namespace Controllers {
     class Ppg {
     public:
-      explicit Ppg(float spl);
-
+      Ppg();
       int8_t Preprocess(float spl);
       float HeartRate();
 
diff --git a/src/components/timer/TimerController.cpp b/src/components/timer/TimerController.cpp
index 3b25901c..8d5f5c33 100644
--- a/src/components/timer/TimerController.cpp
+++ b/src/components/timer/TimerController.cpp
@@ -12,14 +12,17 @@ using namespace Pinetime::Controllers;
 
 APP_TIMER_DEF(timerAppTimer);
 
-
-TimerController::TimerController(System::SystemTask& systemTask) : systemTask{systemTask} {
+namespace {
+  void TimerEnd(void* p_context) {
+    auto* controller = static_cast<Pinetime::Controllers::TimerController*> (p_context);
+    if(controller != nullptr)
+      controller->OnTimerEnd();
+  }
 }
 
 
 void TimerController::Init() {
-  app_timer_create(&timerAppTimer, APP_TIMER_MODE_SINGLE_SHOT, timerEnd);
-  
+  app_timer_create(&timerAppTimer, APP_TIMER_MODE_SINGLE_SHOT, TimerEnd);
 }
 
 void TimerController::StartTimer(uint32_t duration) {
@@ -47,13 +50,6 @@ uint32_t TimerController::GetTimeRemaining() {
   return (static_cast<TickType_t>(deltaTicks) / static_cast<TickType_t>(configTICK_RATE_HZ)) * 1000;
 }
 
-void TimerController::timerEnd(void* p_context) {
-  
-  auto* controller = static_cast<Controllers::TimerController*> (p_context);
-  controller->timerRunning = false;
-  controller->systemTask.PushMessage(System::SystemTask::Messages::OnTimerDone);
-}
-
 void TimerController::StopTimer() {
   app_timer_stop(timerAppTimer);
   timerRunning = false;
@@ -61,4 +57,13 @@ void TimerController::StopTimer() {
 
 bool TimerController::IsRunning() {
   return timerRunning;
-}
\ No newline at end of file
+}
+void TimerController::OnTimerEnd() {
+  timerRunning = false;
+  if(systemTask != nullptr)
+    systemTask->PushMessage(System::Messages::OnTimerDone);
+}
+
+void TimerController::Register(Pinetime::System::SystemTask* systemTask) {
+  this->systemTask = systemTask;
+}
diff --git a/src/components/timer/TimerController.h b/src/components/timer/TimerController.h
index 5a0b293e..fa7bc90d 100644
--- a/src/components/timer/TimerController.h
+++ b/src/components/timer/TimerController.h
@@ -12,7 +12,7 @@ namespace Pinetime {
     
     class TimerController {
     public:
-      TimerController(Pinetime::System::SystemTask& systemTask);
+      TimerController() = default;
       
       void Init();
       
@@ -23,12 +23,13 @@ namespace Pinetime {
       uint32_t GetTimeRemaining();
       
       bool IsRunning();
-    
+
+      void OnTimerEnd();
+
+      void Register(System::SystemTask* systemTask);
+
     private:
-      System::SystemTask& systemTask;
-      
-      static void timerEnd(void* p_context);
-  
+      System::SystemTask* systemTask = nullptr;
       TickType_t endTicks;
       bool timerRunning = false;
     };
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index 7b03d569..ba6dfbd2 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -32,6 +32,7 @@
 #include "drivers/St7789.h"
 #include "drivers/Watchdog.h"
 #include "systemtask/SystemTask.h"
+#include "systemtask/Messages.h"
 
 #include "displayapp/screens/settings/QuickSettings.h"
 #include "displayapp/screens/settings/Settings.h"
@@ -51,7 +52,6 @@ DisplayApp::DisplayApp(Drivers::St7789& lcd,
                        Controllers::Ble& bleController,
                        Controllers::DateTime& dateTimeController,
                        Drivers::WatchdogView& watchdog,
-                       System::SystemTask& systemTask,
                        Pinetime::Controllers::NotificationManager& notificationManager,
                        Pinetime::Controllers::HeartRateController& heartRateController,
                        Controllers::Settings& settingsController,
@@ -65,7 +65,6 @@ DisplayApp::DisplayApp(Drivers::St7789& lcd,
     bleController {bleController},
     dateTimeController {dateTimeController},
     watchdog {watchdog},
-    systemTask {systemTask},
     notificationManager {notificationManager},
     heartRateController {heartRateController},
     settingsController {settingsController},
@@ -130,7 +129,7 @@ void DisplayApp::Refresh() {
           vTaskDelay(100);
         }
         lcd.DisplayOff();
-        systemTask.PushMessage(System::SystemTask::Messages::OnDisplayTaskSleeping);
+        PushMessageToSystemTask(Pinetime::System::Messages::OnDisplayTaskSleeping);
         state = States::Idle;
         break;
       case Messages::GoToRunning:
@@ -139,7 +138,7 @@ void DisplayApp::Refresh() {
         state = States::Running;
         break;
       case Messages::UpdateTimeOut:
-        systemTask.PushMessage(System::SystemTask::Messages::UpdateTimeOut);
+        PushMessageToSystemTask(System::Messages::UpdateTimeOut);
         break;
       case Messages::UpdateBleConnection:
         //        clockScreen.SetBleConnectionState(bleController.IsConnected() ? Screens::Clock::BleConnectionStates::Connected :
@@ -176,7 +175,7 @@ void DisplayApp::Refresh() {
                 LoadApp(Apps::QuickSettings, DisplayApp::FullRefreshDirections::RightAnim);
                 break;
               case TouchEvents::DoubleTap:
-                systemTask.PushMessage(System::SystemTask::Messages::GoToSleep);
+                PushMessageToSystemTask(System::Messages::GoToSleep);
                 break;
               default:
                 break;
@@ -188,7 +187,7 @@ void DisplayApp::Refresh() {
       } break;
       case Messages::ButtonPushed:
         if (currentApp == Apps::Clock) {
-          systemTask.PushMessage(System::SystemTask::Messages::GoToSleep);
+          PushMessageToSystemTask(System::Messages::GoToSleep);
         } else {
           if (!currentScreen->OnButtonPushed()) {
             LoadApp(returnToApp, returnDirection);
@@ -267,12 +266,12 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
 
     case Apps::Notifications:
       currentScreen = std::make_unique<Screens::Notifications>(
-        this, notificationManager, systemTask.nimble().alertService(), Screens::Notifications::Modes::Normal);
+        this, notificationManager, systemTask->nimble().alertService(), Screens::Notifications::Modes::Normal);
       ReturnApp(Apps::Clock, FullRefreshDirections::Up, TouchEvents::SwipeUp);
       break;
     case Apps::NotificationsPreview:
       currentScreen = std::make_unique<Screens::Notifications>(
-        this, notificationManager, systemTask.nimble().alertService(), Screens::Notifications::Modes::Preview);
+        this, notificationManager, systemTask->nimble().alertService(), Screens::Notifications::Modes::Preview);
       ReturnApp(Apps::Clock, FullRefreshDirections::Up, TouchEvents::SwipeUp);
       break;
     case Apps::Timer:
@@ -321,7 +320,7 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
       //
 
     case Apps::FlashLight:
-      currentScreen = std::make_unique<Screens::FlashLight>(this, systemTask, brightnessController);
+      currentScreen = std::make_unique<Screens::FlashLight>(this, *systemTask, brightnessController);
       ReturnApp(Apps::Clock, FullRefreshDirections::Down, TouchEvents::None);
       break;
     case Apps::StopWatch:
@@ -337,13 +336,13 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
       currentScreen = std::make_unique<Screens::Paddle>(this, lvgl);
       break;
     case Apps::Music:
-      currentScreen = std::make_unique<Screens::Music>(this, systemTask.nimble().music());
+      currentScreen = std::make_unique<Screens::Music>(this, systemTask->nimble().music());
       break;
     case Apps::Navigation:
-      currentScreen = std::make_unique<Screens::Navigation>(this, systemTask.nimble().navigation());
+      currentScreen = std::make_unique<Screens::Navigation>(this, systemTask->nimble().navigation());
       break;
     case Apps::HeartRate:
-      currentScreen = std::make_unique<Screens::HeartRate>(this, heartRateController, systemTask);
+      currentScreen = std::make_unique<Screens::HeartRate>(this, heartRateController, *systemTask);
       break;
     case Apps::Motion:
       currentScreen = std::make_unique<Screens::Motion>(this, motionController);
@@ -425,3 +424,12 @@ void DisplayApp::SetFullRefresh(DisplayApp::FullRefreshDirections direction) {
 void DisplayApp::SetTouchMode(DisplayApp::TouchModes mode) {
   touchMode = mode;
 }
+
+void DisplayApp::PushMessageToSystemTask(Pinetime::System::Messages message) {
+  if(systemTask != nullptr)
+    systemTask->PushMessage(message);
+}
+
+void DisplayApp::Register(Pinetime::System::SystemTask* systemTask) {
+  this->systemTask = systemTask;
+}
diff --git a/src/displayapp/DisplayApp.h b/src/displayapp/DisplayApp.h
index 0c7bd216..65abd41a 100644
--- a/src/displayapp/DisplayApp.h
+++ b/src/displayapp/DisplayApp.h
@@ -4,6 +4,7 @@
 #include <queue.h>
 #include <task.h>
 #include <memory>
+#include <systemtask/Messages.h>
 #include "Apps.h"
 #include "LittleVgl.h"
 #include "TouchEvents.h"
@@ -49,7 +50,6 @@ namespace Pinetime {
                  Controllers::Ble& bleController,
                  Controllers::DateTime& dateTimeController,
                  Drivers::WatchdogView& watchdog,
-                 System::SystemTask& systemTask,
                  Pinetime::Controllers::NotificationManager& notificationManager,
                  Pinetime::Controllers::HeartRateController& heartRateController,
                  Controllers::Settings& settingsController,
@@ -64,6 +64,8 @@ namespace Pinetime {
       void SetFullRefresh(FullRefreshDirections direction);
       void SetTouchMode(TouchModes mode);
 
+      void Register(Pinetime::System::SystemTask* systemTask);
+
     private:
       Pinetime::Drivers::St7789& lcd;
       Pinetime::Components::LittleVgl& lvgl;
@@ -72,7 +74,7 @@ namespace Pinetime {
       Pinetime::Controllers::Ble& bleController;
       Pinetime::Controllers::DateTime& dateTimeController;
       Pinetime::Drivers::WatchdogView& watchdog;
-      Pinetime::System::SystemTask& systemTask;
+      Pinetime::System::SystemTask* systemTask = nullptr;
       Pinetime::Controllers::NotificationManager& notificationManager;
       Pinetime::Controllers::HeartRateController& heartRateController;
       Pinetime::Controllers::Settings& settingsController;
@@ -108,6 +110,7 @@ namespace Pinetime {
       void Refresh();
       void ReturnApp(Apps app, DisplayApp::FullRefreshDirections direction, TouchEvents touchEvent);
       void LoadApp(Apps app, DisplayApp::FullRefreshDirections direction);
+      void PushMessageToSystemTask(Pinetime::System::Messages message);
     };
   }
 }
diff --git a/src/displayapp/screens/FlashLight.cpp b/src/displayapp/screens/FlashLight.cpp
index 4568db40..7db2c6c8 100644
--- a/src/displayapp/screens/FlashLight.cpp
+++ b/src/displayapp/screens/FlashLight.cpp
@@ -39,14 +39,14 @@ FlashLight::FlashLight(Pinetime::Applications::DisplayApp* app,
   backgroundAction->user_data = this;
   lv_obj_set_event_cb(backgroundAction, event_handler);
 
-  systemTask.PushMessage(Pinetime::System::SystemTask::Messages::DisableSleeping);
+  systemTask.PushMessage(Pinetime::System::Messages::DisableSleeping);
 }
 
 FlashLight::~FlashLight() {
   lv_obj_clean(lv_scr_act());
   lv_obj_set_style_local_bg_color(lv_scr_act(), LV_OBJ_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
   brightness.Restore();
-  systemTask.PushMessage(Pinetime::System::SystemTask::Messages::EnableSleeping);
+  systemTask.PushMessage(Pinetime::System::Messages::EnableSleeping);
 }
 
 void FlashLight::OnClickEvent(lv_obj_t* obj, lv_event_t event) {
diff --git a/src/displayapp/screens/HeartRate.cpp b/src/displayapp/screens/HeartRate.cpp
index 90f6bc26..5689b63e 100644
--- a/src/displayapp/screens/HeartRate.cpp
+++ b/src/displayapp/screens/HeartRate.cpp
@@ -63,12 +63,12 @@ HeartRate::HeartRate(Pinetime::Applications::DisplayApp* app,
   label_startStop = lv_label_create(btn_startStop, nullptr);
   UpdateStartStopButton(isHrRunning);
   if (isHrRunning)
-    systemTask.PushMessage(Pinetime::System::SystemTask::Messages::DisableSleeping);
+    systemTask.PushMessage(Pinetime::System::Messages::DisableSleeping);
 }
 
 HeartRate::~HeartRate() {
   lv_obj_clean(lv_scr_act());
-  systemTask.PushMessage(Pinetime::System::SystemTask::Messages::EnableSleeping);
+  systemTask.PushMessage(Pinetime::System::Messages::EnableSleeping);
 }
 
 bool HeartRate::Refresh() {
@@ -95,12 +95,12 @@ void HeartRate::OnStartStopEvent(lv_event_t event) {
     if (heartRateController.State() == Controllers::HeartRateController::States::Stopped) {
       heartRateController.Start();
       UpdateStartStopButton(heartRateController.State() != Controllers::HeartRateController::States::Stopped);
-      systemTask.PushMessage(Pinetime::System::SystemTask::Messages::DisableSleeping);
+      systemTask.PushMessage(Pinetime::System::Messages::DisableSleeping);
       lv_obj_set_style_local_text_color(label_hr, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GREEN);
     } else {
       heartRateController.Stop();
       UpdateStartStopButton(heartRateController.State() != Controllers::HeartRateController::States::Stopped);
-      systemTask.PushMessage(Pinetime::System::SystemTask::Messages::EnableSleeping);
+      systemTask.PushMessage(Pinetime::System::Messages::EnableSleeping);
       lv_obj_set_style_local_text_color(label_hr, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);
     }
   }
diff --git a/src/displayapp/screens/ScreenList.h b/src/displayapp/screens/ScreenList.h
index 73ea4610..ea66bfb2 100644
--- a/src/displayapp/screens/ScreenList.h
+++ b/src/displayapp/screens/ScreenList.h
@@ -15,12 +15,17 @@ namespace Pinetime {
       public:
         ScreenList(DisplayApp* app,
                    uint8_t initScreen,
-                   std::array<std::function<std::unique_ptr<Screen>()>, N>&& screens,
+                   const std::array<std::function<std::unique_ptr<Screen>()>, N>&& screens,
                    ScreenListModes mode)
-          : Screen(app), initScreen {initScreen}, screens {std::move(screens)}, mode {mode}, current {this->screens[initScreen]()} {
-          screenIndex = initScreen;
+          : Screen(app), initScreen {initScreen}, screens {std::move(screens)}, mode {mode}, screenIndex{initScreen}, current {this->screens[initScreen]()} {
+
         }
 
+        ScreenList(const ScreenList&) = delete;
+        ScreenList& operator=(const ScreenList&) = delete;
+        ScreenList(ScreenList&&) = delete;
+        ScreenList& operator=(ScreenList&&) = delete;
+
         ~ScreenList() override {
           lv_obj_clean(lv_scr_act());
         }
@@ -97,7 +102,7 @@ namespace Pinetime {
 
       private:
         uint8_t initScreen = 0;
-        std::array<std::function<std::unique_ptr<Screen>()>, N> screens;
+        const std::array<std::function<std::unique_ptr<Screen>()>, N> screens;
         ScreenListModes mode = ScreenListModes::UpDown;
 
         uint8_t screenIndex = 0;
diff --git a/src/displayapp/screens/settings/QuickSettings.cpp b/src/displayapp/screens/settings/QuickSettings.cpp
index 3994794d..5db7468c 100644
--- a/src/displayapp/screens/settings/QuickSettings.cpp
+++ b/src/displayapp/screens/settings/QuickSettings.cpp
@@ -7,12 +7,12 @@ using namespace Pinetime::Applications::Screens;
 
 namespace {
   static void ButtonEventHandler(lv_obj_t* obj, lv_event_t event) {
-    QuickSettings* screen = static_cast<QuickSettings*>(obj->user_data);
+    auto* screen = static_cast<QuickSettings*>(obj->user_data);
     screen->OnButtonEvent(obj, event);
   }
 
   static void lv_update_task(struct _lv_task_t* task) {
-    auto user_data = static_cast<QuickSettings*>(task->user_data);
+    auto* user_data = static_cast<QuickSettings*>(task->user_data);
     user_data->UpdateScreen();
   }
 }
diff --git a/src/drivers/Bma421.cpp b/src/drivers/Bma421.cpp
index 925b66c7..35b2c105 100644
--- a/src/drivers/Bma421.cpp
+++ b/src/drivers/Bma421.cpp
@@ -103,8 +103,6 @@ Bma421::Values Bma421::Process() {
   uint8_t activity = 0;
   bma423_activity_output(&activity, &bma);
 
-  NRF_LOG_INFO("MOTION : %d - %d/%d/%d", steps, data.x, data.y, data.z);
-
   // X and Y axis are swapped because of the way the sensor is mounted in the PineTime
   return {steps, data.y, data.x, data.z};
 }
diff --git a/src/drivers/SpiMaster.h b/src/drivers/SpiMaster.h
index dfc195b7..5045369a 100644
--- a/src/drivers/SpiMaster.h
+++ b/src/drivers/SpiMaster.h
@@ -10,7 +10,6 @@ namespace Pinetime {
   namespace Drivers {
     class SpiMaster {
     public:
-      ;
       enum class SpiModule : uint8_t { SPI0, SPI1 };
       enum class BitOrder : uint8_t { Msb_Lsb, Lsb_Msb };
       enum class Modes : uint8_t { Mode0, Mode1, Mode2, Mode3 };
diff --git a/src/heartratetask/HeartRateTask.cpp b/src/heartratetask/HeartRateTask.cpp
index 36c8cc18..1c21db71 100644
--- a/src/heartratetask/HeartRateTask.cpp
+++ b/src/heartratetask/HeartRateTask.cpp
@@ -6,7 +6,7 @@
 using namespace Pinetime::Applications;
 
 HeartRateTask::HeartRateTask(Drivers::Hrs3300& heartRateSensor, Controllers::HeartRateController& controller)
-  : heartRateSensor {heartRateSensor}, controller {controller}, ppg {static_cast<float>(heartRateSensor.ReadHrs())} {
+  : heartRateSensor {heartRateSensor}, controller {controller}, ppg{} {
   messageQueue = xQueueCreate(10, 1);
   controller.SetHeartRateTask(this);
 }
diff --git a/src/main.cpp b/src/main.cpp
index 61194b95..60ed058b 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -34,6 +34,7 @@
 #include "components/motor/MotorController.h"
 #include "components/datetime/DateTimeController.h"
 #include "components/settings/Settings.h"
+#include "components/heartrate/HeartRateController.h"
 #include "drivers/Spi.h"
 #include "drivers/SpiMaster.h"
 #include "drivers/SpiNorFlash.h"
@@ -50,8 +51,6 @@ Pinetime::Logging::NrfLogger logger;
 Pinetime::Logging::DummyLogger logger;
 #endif
 
-#include <memory>
-
 static constexpr uint8_t pinSpiSck = 2;
 static constexpr uint8_t pinSpiMosi = 3;
 static constexpr uint8_t pinSpiMiso = 4;
@@ -108,15 +107,59 @@ void ble_manager_set_ble_connection_callback(void (*connection)());
 void ble_manager_set_ble_disconnection_callback(void (*disconnection)());
 static constexpr uint8_t pinTouchIrq = 28;
 static constexpr uint8_t pinPowerPresentIrq = 19;
-std::unique_ptr<Pinetime::System::SystemTask> systemTask;
 
 Pinetime::Controllers::Settings settingsController {spiNorFlash};
 
 Pinetime::Controllers::MotorController motorController {settingsController};
 
+Pinetime::Controllers::HeartRateController heartRateController;
+Pinetime::Applications::HeartRateTask heartRateApp(heartRateSensor, heartRateController);
+
+Pinetime::Controllers::DateTime dateTimeController;
+Pinetime::Drivers::Watchdog watchdog;
+Pinetime::Drivers::WatchdogView watchdogView(watchdog);
+Pinetime::Controllers::NotificationManager notificationManager;
+Pinetime::Controllers::MotionController motionController;
+Pinetime::Controllers::TimerController timerController;
+
+Pinetime::Applications::DisplayApp displayApp(lcd,
+                                              lvgl,
+                                              touchPanel,
+                                              batteryController,
+                                              bleController,
+                                              dateTimeController,
+                                              watchdogView,
+                                              notificationManager,
+                                              heartRateController,
+                                              settingsController,
+                                              motorController,
+                                              motionController,
+                                              timerController);
+
+Pinetime::System::SystemTask systemTask(spi,
+                                        lcd,
+                                        spiNorFlash,
+                                        twiMaster,
+                                        touchPanel,
+                                        lvgl,
+                                        batteryController,
+                                        bleController,
+                                        dateTimeController,
+                                        timerController,
+                                        watchdog,
+                                        notificationManager,
+                                        motorController,
+                                        heartRateSensor,
+                                        motionController,
+                                        motionSensor,
+                                        settingsController,
+                                        heartRateController,
+                                        displayApp,
+                                        heartRateApp);
+
 void nrfx_gpiote_evt_handler(nrfx_gpiote_pin_t pin, nrf_gpiote_polarity_t action) {
   if (pin == pinTouchIrq) {
-    systemTask->OnTouchEvent();
+    systemTask.OnTouchEvent();
     return;
   }
 
@@ -141,12 +184,12 @@ void vApplicationIdleHook(void) {
 
 void DebounceTimerChargeCallback(TimerHandle_t xTimer) {
   xTimerStop(xTimer, 0);
-  systemTask->PushMessage(Pinetime::System::SystemTask::Messages::OnChargingEvent);
+  systemTask.PushMessage(Pinetime::System::Messages::OnChargingEvent);
 }
 
 void DebounceTimerCallback(TimerHandle_t xTimer) {
   xTimerStop(xTimer, 0);
-  systemTask->OnButtonPushed();
+  systemTask.OnButtonPushed();
 }
 
 void SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler(void) {
@@ -264,19 +307,7 @@ int main(void) {
   debounceTimer = xTimerCreate("debounceTimer", 200, pdFALSE, (void*) 0, DebounceTimerCallback);
   debounceChargeTimer = xTimerCreate("debounceTimerCharge", 200, pdFALSE, (void*) 0, DebounceTimerChargeCallback);
 
-  systemTask = std::make_unique<Pinetime::System::SystemTask>(spi,
-                                                              lcd,
-                                                              spiNorFlash,
-                                                              twiMaster,
-                                                              touchPanel,
-                                                              lvgl,
-                                                              batteryController,
-                                                              bleController,
-                                                              motorController,
-                                                              heartRateSensor,
-                                                              motionSensor,
-                                                              settingsController);
-  systemTask->Start();
+  systemTask.Start();
   nimble_port_init();
 
   vTaskStartScheduler();
diff --git a/src/systemtask/Messages.h b/src/systemtask/Messages.h
new file mode 100644
index 00000000..3a195e2d
--- /dev/null
+++ b/src/systemtask/Messages.h
@@ -0,0 +1,26 @@
+#pragma once
+
+namespace Pinetime {
+  namespace System {
+      enum class Messages {
+        GoToSleep,
+        GoToRunning,
+        TouchWakeUp,
+        OnNewTime,
+        OnNewNotification,
+        OnTimerDone,
+        OnNewCall,
+        BleConnected,
+        UpdateTimeOut,
+        BleFirmwareUpdateStarted,
+        BleFirmwareUpdateFinished,
+        OnTouchEvent,
+        OnButtonEvent,
+        OnDisplayTaskSleeping,
+        EnableSleeping,
+        DisableSleeping,
+        OnNewDay,
+        OnChargingEvent
+      };
+    }
+}
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 58377764..be484bb4 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -42,10 +42,18 @@ SystemTask::SystemTask(Drivers::SpiMaster& spi,
                        Components::LittleVgl& lvgl,
                        Controllers::Battery& batteryController,
                        Controllers::Ble& bleController,
+                       Controllers::DateTime& dateTimeController,
+                       Controllers::TimerController& timerController,
+                       Drivers::Watchdog& watchdog,
+                       Pinetime::Controllers::NotificationManager& notificationManager,
                        Pinetime::Controllers::MotorController& motorController,
                        Pinetime::Drivers::Hrs3300& heartRateSensor,
+                       Pinetime::Controllers::MotionController& motionController,
                        Pinetime::Drivers::Bma421& motionSensor,
-                       Controllers::Settings& settingsController)
+                       Controllers::Settings& settingsController,
+                       Pinetime::Controllers::HeartRateController& heartRateController,
+                       Pinetime::Applications::DisplayApp& displayApp,
+                       Pinetime::Applications::HeartRateTask& heartRateApp)
   : spi {spi},
     lcd {lcd},
     spiNorFlash {spiNorFlash},
@@ -53,17 +61,20 @@ SystemTask::SystemTask(Drivers::SpiMaster& spi,
     touchPanel {touchPanel},
     lvgl {lvgl},
     batteryController {batteryController},
-    heartRateController {*this},
     bleController {bleController},
-    dateTimeController {*this},
-    timerController {*this},
-    watchdog {},
-    watchdogView {watchdog},
+    dateTimeController {dateTimeController},
+    timerController {timerController},
+    watchdog {watchdog},
+    notificationManager{notificationManager},
     motorController {motorController},
     heartRateSensor {heartRateSensor},
     motionSensor {motionSensor},
     settingsController {settingsController},
-    nimbleController(*this, bleController, dateTimeController, notificationManager, batteryController, spiNorFlash, heartRateController) {
+    heartRateController{heartRateController},
+    nimbleController(*this, bleController, dateTimeController, notificationManager, batteryController, spiNorFlash, heartRateController),
+    motionController{motionController},
+    displayApp{displayApp},
+    heartRateApp(heartRateApp) {
   systemTasksMsgQueue = xQueueCreate(10, 1);
 }
 
@@ -96,9 +107,11 @@ void SystemTask::Work() {
 
   twiMaster.Init();
   touchPanel.Init();
+  dateTimeController.Register(this);
   batteryController.Init();
   motorController.Init();
   motionSensor.SoftReset();
+  timerController.Register(this);
   timerController.Init();
 
   // Reset the TWI device because the motion sensor chip most probably crashed it...
@@ -108,28 +121,14 @@ void SystemTask::Work() {
   motionSensor.Init();
   settingsController.Init();
 
-  displayApp = std::make_unique<Pinetime::Applications::DisplayApp>(lcd,
-                                                                    lvgl,
-                                                                    touchPanel,
-                                                                    batteryController,
-                                                                    bleController,
-                                                                    dateTimeController,
-                                                                    watchdogView,
-                                                                    *this,
-                                                                    notificationManager,
-                                                                    heartRateController,
-                                                                    settingsController,
-                                                                    motorController,
-                                                                    motionController,
-                                                                    timerController);
-  displayApp->Start();
+  displayApp.Register(this);
+  displayApp.Start();
 
-  displayApp->PushMessage(Pinetime::Applications::Display::Messages::UpdateBatteryLevel);
+  displayApp.PushMessage(Pinetime::Applications::Display::Messages::UpdateBatteryLevel);
 
   heartRateSensor.Init();
   heartRateSensor.Disable();
-  heartRateApp = std::make_unique<Pinetime::Applications::HeartRateTask>(heartRateSensor, heartRateController);
-  heartRateApp->Start();
+  heartRateApp.Start();
 
   nrf_gpio_cfg_sense_input(pinButton, (nrf_gpio_pin_pull_t) GPIO_PIN_CNF_PULL_Pulldown, (nrf_gpio_pin_sense_t) GPIO_PIN_CNF_SENSE_High);
   nrf_gpio_cfg_output(15);
@@ -208,9 +207,9 @@ void SystemTask::Work() {
           spiNorFlash.Wakeup();
           lcd.Wakeup();
 
-          displayApp->PushMessage(Pinetime::Applications::Display::Messages::GoToRunning);
-          displayApp->PushMessage(Pinetime::Applications::Display::Messages::UpdateBatteryLevel);
-          heartRateApp->PushMessage(Pinetime::Applications::HeartRateTask::Messages::WakeUp);
+          displayApp.PushMessage(Pinetime::Applications::Display::Messages::GoToRunning);
+          displayApp.PushMessage(Pinetime::Applications::Display::Messages::UpdateBatteryLevel);
+          heartRateApp.PushMessage(Pinetime::Applications::HeartRateTask::Messages::WakeUp);
 
           isSleeping = false;
           isWakingUp = false;
@@ -230,26 +229,26 @@ void SystemTask::Work() {
           isGoingToSleep = true;
           NRF_LOG_INFO("[systemtask] Going to sleep");
           xTimerStop(idleTimer, 0);
-          displayApp->PushMessage(Pinetime::Applications::Display::Messages::GoToSleep);
-          heartRateApp->PushMessage(Pinetime::Applications::HeartRateTask::Messages::GoToSleep);
+          displayApp.PushMessage(Pinetime::Applications::Display::Messages::GoToSleep);
+          heartRateApp.PushMessage(Pinetime::Applications::HeartRateTask::Messages::GoToSleep);
           break;
         case Messages::OnNewTime:
           ReloadIdleTimer();
-          displayApp->PushMessage(Pinetime::Applications::Display::Messages::UpdateDateTime);
+          displayApp.PushMessage(Pinetime::Applications::Display::Messages::UpdateDateTime);
           break;
         case Messages::OnNewNotification:
           if (isSleeping && !isWakingUp) {
             GoToRunning();
           }
           motorController.SetDuration(35);
-          displayApp->PushMessage(Pinetime::Applications::Display::Messages::NewNotification);
+          displayApp.PushMessage(Pinetime::Applications::Display::Messages::NewNotification);
           break;
         case Messages::OnTimerDone:
           if (isSleeping && !isWakingUp) {
             GoToRunning();
           }
           motorController.SetDuration(35);
-          displayApp->PushMessage(Pinetime::Applications::Display::Messages::TimerDone);
+          displayApp.PushMessage(Pinetime::Applications::Display::Messages::TimerDone);
           break;
         case Messages::BleConnected:
           ReloadIdleTimer();
@@ -260,7 +259,7 @@ void SystemTask::Work() {
           doNotGoToSleep = true;
           if (isSleeping && !isWakingUp)
             GoToRunning();
-          displayApp->PushMessage(Pinetime::Applications::Display::Messages::BleFirmwareUpdateStarted);
+          displayApp.PushMessage(Pinetime::Applications::Display::Messages::BleFirmwareUpdateStarted);
           break;
         case Messages::BleFirmwareUpdateFinished:
           doNotGoToSleep = false;
@@ -359,7 +358,7 @@ void SystemTask::OnButtonPushed() {
   if (!isSleeping) {
     NRF_LOG_INFO("[systemtask] Button pushed");
     PushMessage(Messages::OnButtonEvent);
-    displayApp->PushMessage(Pinetime::Applications::Display::Messages::ButtonPushed);
+    displayApp.PushMessage(Pinetime::Applications::Display::Messages::ButtonPushed);
   } else {
     if (!isWakingUp) {
       NRF_LOG_INFO("[systemtask] Button pushed, waking up");
@@ -380,7 +379,7 @@ void SystemTask::OnTouchEvent() {
     return;
   if (!isSleeping) {
     PushMessage(Messages::OnTouchEvent);
-    displayApp->PushMessage(Pinetime::Applications::Display::Messages::TouchEvent);
+    displayApp.PushMessage(Pinetime::Applications::Display::Messages::TouchEvent);
   } else if (!isWakingUp) {
     if (settingsController.getWakeUpMode() == Pinetime::Controllers::Settings::WakeUpMode::None or
         settingsController.getWakeUpMode() == Pinetime::Controllers::Settings::WakeUpMode::RaiseWrist)
@@ -389,7 +388,7 @@ void SystemTask::OnTouchEvent() {
   }
 }
 
-void SystemTask::PushMessage(SystemTask::Messages msg) {
+void SystemTask::PushMessage(System::Messages msg) {
   if (msg == Messages::GoToSleep) {
     isGoingToSleep = true;
   }
diff --git a/src/systemtask/SystemTask.h b/src/systemtask/SystemTask.h
index ea41a69d..fa6a949c 100644
--- a/src/systemtask/SystemTask.h
+++ b/src/systemtask/SystemTask.h
@@ -6,7 +6,6 @@
 #include <task.h>
 #include <timers.h>
 #include <heartratetask/HeartRateTask.h>
-#include <components/heartrate/HeartRateController.h>
 #include <components/settings/Settings.h>
 #include <drivers/Bma421.h>
 #include <components/motion/MotionController.h>
@@ -27,6 +26,7 @@
 #endif
 
 #include "drivers/Watchdog.h"
+#include "Messages.h"
 
 namespace Pinetime {
   namespace Drivers {
@@ -40,27 +40,6 @@ namespace Pinetime {
   namespace System {
     class SystemTask {
     public:
-      enum class Messages {
-        GoToSleep,
-        GoToRunning,
-        TouchWakeUp,
-        OnNewTime,
-        OnNewNotification,
-        OnTimerDone,
-        OnNewCall,
-        BleConnected,
-        UpdateTimeOut,
-        BleFirmwareUpdateStarted,
-        BleFirmwareUpdateFinished,
-        OnTouchEvent,
-        OnButtonEvent,
-        OnDisplayTaskSleeping,
-        EnableSleeping,
-        DisableSleeping,
-        OnNewDay,
-        OnChargingEvent
-      };
-
       SystemTask(Drivers::SpiMaster& spi,
                  Drivers::St7789& lcd,
                  Pinetime::Drivers::SpiNorFlash& spiNorFlash,
@@ -69,10 +48,18 @@ namespace Pinetime {
                  Components::LittleVgl& lvgl,
                  Controllers::Battery& batteryController,
                  Controllers::Ble& bleController,
+                 Controllers::DateTime& dateTimeController,
+                 Controllers::TimerController& timerController,
+                 Drivers::Watchdog& watchdog,
+                 Pinetime::Controllers::NotificationManager& notificationManager,
                  Pinetime::Controllers::MotorController& motorController,
                  Pinetime::Drivers::Hrs3300& heartRateSensor,
+                 Pinetime::Controllers::MotionController& motionController,
                  Pinetime::Drivers::Bma421& motionSensor,
-                 Controllers::Settings& settingsController);
+                 Controllers::Settings& settingsController,
+                 Pinetime::Controllers::HeartRateController& heartRateController,
+                 Pinetime::Applications::DisplayApp& displayApp,
+                 Pinetime::Applications::HeartRateTask& heartRateApp);
 
       void Start();
       void PushMessage(Messages msg);
@@ -96,27 +83,29 @@ namespace Pinetime {
       Pinetime::Drivers::Cst816S& touchPanel;
       Pinetime::Components::LittleVgl& lvgl;
       Pinetime::Controllers::Battery& batteryController;
-      std::unique_ptr<Pinetime::Applications::DisplayApp> displayApp;
-      Pinetime::Controllers::HeartRateController heartRateController;
-      std::unique_ptr<Pinetime::Applications::HeartRateTask> heartRateApp;
+
 
       Pinetime::Controllers::Ble& bleController;
-      Pinetime::Controllers::DateTime dateTimeController;
-      Pinetime::Controllers::TimerController timerController;
+      Pinetime::Controllers::DateTime& dateTimeController;
+      Pinetime::Controllers::TimerController& timerController;
       QueueHandle_t systemTasksMsgQueue;
       std::atomic<bool> isSleeping {false};
       std::atomic<bool> isGoingToSleep {false};
       std::atomic<bool> isWakingUp {false};
-      Pinetime::Drivers::Watchdog watchdog;
-      Pinetime::Drivers::WatchdogView watchdogView;
-      Pinetime::Controllers::NotificationManager notificationManager;
+      Pinetime::Drivers::Watchdog& watchdog;
+      Pinetime::Controllers::NotificationManager& notificationManager;
       Pinetime::Controllers::MotorController& motorController;
       Pinetime::Drivers::Hrs3300& heartRateSensor;
       Pinetime::Drivers::Bma421& motionSensor;
       Pinetime::Controllers::Settings& settingsController;
+      Pinetime::Controllers::HeartRateController& heartRateController;
       Pinetime::Controllers::NimbleController nimbleController;
       Controllers::BrightnessController brightnessController;
-      Pinetime::Controllers::MotionController motionController;
+      Pinetime::Controllers::MotionController& motionController;
+
+      Pinetime::Applications::DisplayApp& displayApp;
+      Pinetime::Applications::HeartRateTask& heartRateApp;
+
 
       static constexpr uint8_t pinSpiSck = 2;
       static constexpr uint8_t pinSpiMosi = 3;

From ff00873f974cb1400acf7721251167634e60107a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Sun, 6 Jun 2021 20:20:55 +0200
Subject: [PATCH 06/58] Fix build for recovery firmware.

---
 src/displayapp/DisplayAppRecovery.cpp | 7 +++++--
 src/displayapp/DisplayAppRecovery.h   | 2 +-
 src/main.cpp                          | 1 -
 3 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/displayapp/DisplayAppRecovery.cpp b/src/displayapp/DisplayAppRecovery.cpp
index 856eafd8..b73d0a85 100644
--- a/src/displayapp/DisplayAppRecovery.cpp
+++ b/src/displayapp/DisplayAppRecovery.cpp
@@ -14,7 +14,6 @@ DisplayApp::DisplayApp(Drivers::St7789& lcd,
                        Controllers::Ble& bleController,
                        Controllers::DateTime& dateTimeController,
                        Drivers::WatchdogView& watchdog,
-                       System::SystemTask& systemTask,
                        Pinetime::Controllers::NotificationManager& notificationManager,
                        Pinetime::Controllers::HeartRateController& heartRateController,
                        Controllers::Settings& settingsController,
@@ -113,4 +112,8 @@ void DisplayApp::PushMessage(Display::Messages msg) {
     /* Actual macro used here is port specific. */
     // TODO : should I do something here?
   }
-}
\ No newline at end of file
+}
+
+void DisplayApp::Register(Pinetime::System::SystemTask* systemTask) {
+
+}
diff --git a/src/displayapp/DisplayAppRecovery.h b/src/displayapp/DisplayAppRecovery.h
index 2c5a36fb..638c0071 100644
--- a/src/displayapp/DisplayAppRecovery.h
+++ b/src/displayapp/DisplayAppRecovery.h
@@ -39,7 +39,6 @@ namespace Pinetime {
                  Controllers::Ble& bleController,
                  Controllers::DateTime& dateTimeController,
                  Drivers::WatchdogView& watchdog,
-                 System::SystemTask& systemTask,
                  Pinetime::Controllers::NotificationManager& notificationManager,
                  Pinetime::Controllers::HeartRateController& heartRateController,
                  Controllers::Settings& settingsController,
@@ -48,6 +47,7 @@ namespace Pinetime {
                  Pinetime::Controllers::TimerController& timerController);
       void Start();
       void PushMessage(Pinetime::Applications::Display::Messages msg);
+      void Register(Pinetime::System::SystemTask* systemTask);
 
     private:
       TaskHandle_t taskHandle;
diff --git a/src/main.cpp b/src/main.cpp
index 60ed058b..52ec9580 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -33,7 +33,6 @@
 #include "components/ble/NotificationManager.h"
 #include "components/motor/MotorController.h"
 #include "components/datetime/DateTimeController.h"
-#include "components/settings/Settings.h"
 #include "components/heartrate/HeartRateController.h"
 #include "drivers/Spi.h"
 #include "drivers/SpiMaster.h"

From caca6a5cff0025df80241a09baab28e49720ddf8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Thu, 10 Jun 2021 21:19:11 +0200
Subject: [PATCH 07/58] Fix stack corruption when exiting an app (the app was
 destroyed while it was executing the button handler).

---
 src/displayapp/DisplayApp.cpp | 8 +++++++-
 src/displayapp/DisplayApp.h   | 3 +++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index ba6dfbd2..99758c92 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -205,6 +205,11 @@ void DisplayApp::Refresh() {
     }
   }
 
+  if(nextApp != Apps::None) {
+    LoadApp(nextApp, nextDirection);
+    nextApp = Apps::None;
+  }
+
   if (state != States::Idle && touchMode == TouchModes::Polling) {
     auto info = touchPanel.GetTouchInfo();
     if (info.action == 2) { // 2 = contact
@@ -223,7 +228,8 @@ void DisplayApp::RunningState() {
 }
 
 void DisplayApp::StartApp(Apps app, DisplayApp::FullRefreshDirections direction) {
-  LoadApp(app, direction);
+  nextApp = app;
+  nextDirection = direction;
 }
 
 void DisplayApp::ReturnApp(Apps app, DisplayApp::FullRefreshDirections direction, TouchEvents touchEvent) {
diff --git a/src/displayapp/DisplayApp.h b/src/displayapp/DisplayApp.h
index 65abd41a..73a7cc36 100644
--- a/src/displayapp/DisplayApp.h
+++ b/src/displayapp/DisplayApp.h
@@ -111,6 +111,9 @@ namespace Pinetime {
       void ReturnApp(Apps app, DisplayApp::FullRefreshDirections direction, TouchEvents touchEvent);
       void LoadApp(Apps app, DisplayApp::FullRefreshDirections direction);
       void PushMessageToSystemTask(Pinetime::System::Messages message);
+
+      Apps nextApp = Apps::None;
+      DisplayApp::FullRefreshDirections nextDirection;
     };
   }
 }

From b1925ff28638dd4b8400c4d0c49d796d8990b1af Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Thu, 10 Jun 2021 21:20:27 +0200
Subject: [PATCH 08/58] Minor improvements: use std::make_unique when creating
 unique_ptr, check the code is running from an IRQ before calling
 xQueueSendFromISR or xQueueSend)

---
 src/displayapp/DisplayApp.cpp                | 21 ++++++++++++-----
 src/displayapp/screens/SystemInfo.cpp        | 10 ++++----
 src/displayapp/screens/settings/Settings.cpp |  4 ++--
 src/displayapp/screens/settings/Settings.h   |  1 -
 src/drivers/SpiMaster.cpp                    |  8 +++----
 src/systemtask/SystemTask.cpp                | 24 +++++++++++++++-----
 6 files changed, 44 insertions(+), 24 deletions(-)

diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index 99758c92..3bfaf2a2 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -45,6 +45,12 @@
 using namespace Pinetime::Applications;
 using namespace Pinetime::Applications::Display;
 
+namespace {
+  static inline bool in_isr(void) {
+    return (SCB->ICSR & SCB_ICSR_VECTACTIVE_Msk) != 0;
+  }
+}
+
 DisplayApp::DisplayApp(Drivers::St7789& lcd,
                        Components::LittleVgl& lvgl,
                        Drivers::Cst816S& touchPanel,
@@ -364,12 +370,15 @@ void DisplayApp::IdleState() {
 }
 
 void DisplayApp::PushMessage(Messages msg) {
-  BaseType_t xHigherPriorityTaskWoken;
-  xHigherPriorityTaskWoken = pdFALSE;
-  xQueueSendFromISR(msgQueue, &msg, &xHigherPriorityTaskWoken);
-  if (xHigherPriorityTaskWoken) {
-    /* Actual macro used here is port specific. */
-    // TODO : should I do something here?
+  if(in_isr()) {
+    BaseType_t xHigherPriorityTaskWoken;
+    xHigherPriorityTaskWoken = pdFALSE;
+    xQueueSendFromISR(msgQueue, &msg, &xHigherPriorityTaskWoken);
+    if (xHigherPriorityTaskWoken) {
+      portYIELD_FROM_ISR(xHigherPriorityTaskWoken);
+    }
+  } else {
+    xQueueSend(msgQueue, &msg, portMAX_DELAY);
   }
 }
 
diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index f61d2ff1..a7387dac 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -81,7 +81,7 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen1() {
                         __TIME__);
   lv_label_set_align(label, LV_LABEL_ALIGN_CENTER);
   lv_obj_align(label, lv_scr_act(), LV_ALIGN_CENTER, 0, 0);
-  return std::unique_ptr<Screen>(new Screens::Label(0, 5, app, label));
+  return std::make_unique<Screens::Label>(0, 5, app, label);
 }
 
 std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
@@ -161,7 +161,7 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
                         brightnessController.ToString(),
                         resetReason);
   lv_obj_align(label, lv_scr_act(), LV_ALIGN_CENTER, 0, 0);
-  return std::unique_ptr<Screen>(new Screens::Label(1, 4, app, label));
+  return std::make_unique<Screens::Label>(1, 4, app, label);
 }
 
 std::unique_ptr<Screen> SystemInfo::CreateScreen3() {
@@ -195,7 +195,7 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen3() {
                         (int) mon.free_biggest_size,
                         0);
   lv_obj_align(label, lv_scr_act(), LV_ALIGN_CENTER, 0, 0);
-  return std::unique_ptr<Screen>(new Screens::Label(2, 5, app, label));
+  return std::make_unique<Screens::Label>(2, 5, app, label);
 }
 
 bool sortById(const TaskStatus_t& lhs, const TaskStatus_t& rhs) {
@@ -229,7 +229,7 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen4() {
       lv_table_set_cell_value(infoTask, i + 1, 2, std::to_string(tasksStatus[i].usStackHighWaterMark).c_str());
     }
   }
-  return std::unique_ptr<Screen>(new Screens::Label(3, 5, app, infoTask));
+  return std::make_unique<Screens::Label>(3, 5, app, infoTask);
 }
 
 std::unique_ptr<Screen> SystemInfo::CreateScreen5() {
@@ -245,5 +245,5 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen5() {
                            "#FFFF00 JF002/InfiniTime#");
   lv_label_set_align(label, LV_LABEL_ALIGN_CENTER);
   lv_obj_align(label, lv_scr_act(), LV_ALIGN_CENTER, 0, 0);
-  return std::unique_ptr<Screen>(new Screens::Label(4, 5, app, label));
+  return std::make_unique<Screens::Label>(4, 5, app, label);
 }
diff --git a/src/displayapp/screens/settings/Settings.cpp b/src/displayapp/screens/settings/Settings.cpp
index 2c72c832..e63a3584 100644
--- a/src/displayapp/screens/settings/Settings.cpp
+++ b/src/displayapp/screens/settings/Settings.cpp
@@ -46,7 +46,7 @@ std::unique_ptr<Screen> Settings::CreateScreen1() {
     {Symbols::clock, "Watch face", Apps::SettingWatchFace},
   }};
 
-  return std::unique_ptr<Screen>(new Screens::List(0, 2, app, settingsController, applications));
+  return std::make_unique<Screens::List>(0, 2, app, settingsController, applications);
 }
 
 std::unique_ptr<Screen> Settings::CreateScreen2() {
@@ -58,5 +58,5 @@ std::unique_ptr<Screen> Settings::CreateScreen2() {
     {Symbols::list, "About", Apps::SysInfo},
   }};
 
-  return std::unique_ptr<Screen>(new Screens::List(1, 2, app, settingsController, applications));
+  return std::make_unique<Screens::List>(1, 2, app, settingsController, applications);
 }
diff --git a/src/displayapp/screens/settings/Settings.h b/src/displayapp/screens/settings/Settings.h
index 7e332dfe..711a6be6 100644
--- a/src/displayapp/screens/settings/Settings.h
+++ b/src/displayapp/screens/settings/Settings.h
@@ -16,7 +16,6 @@ namespace Pinetime {
 
         bool Refresh() override;
 
-        void OnButtonEvent(lv_obj_t* object, lv_event_t event);
         bool OnTouchEvent(Pinetime::Applications::TouchEvents event) override;
 
       private:
diff --git a/src/drivers/SpiMaster.cpp b/src/drivers/SpiMaster.cpp
index 34fcc08a..e2be5027 100644
--- a/src/drivers/SpiMaster.cpp
+++ b/src/drivers/SpiMaster.cpp
@@ -132,17 +132,17 @@ void SpiMaster::OnEndEvent() {
 
     spiBaseAddress->TASKS_START = 1;
   } else {
+    BaseType_t xHigherPriorityTaskWoken = pdFALSE;
     if (taskToNotify != nullptr) {
-      BaseType_t xHigherPriorityTaskWoken = pdFALSE;
       vTaskNotifyGiveFromISR(taskToNotify, &xHigherPriorityTaskWoken);
       portYIELD_FROM_ISR(xHigherPriorityTaskWoken);
     }
 
     nrf_gpio_pin_set(this->pinCsn);
     currentBufferAddr = 0;
-    BaseType_t xHigherPriorityTaskWoken = pdFALSE;
-    xSemaphoreGiveFromISR(mutex, &xHigherPriorityTaskWoken);
-    portYIELD_FROM_ISR(xHigherPriorityTaskWoken);
+    BaseType_t xHigherPriorityTaskWoken2 = pdFALSE;
+    xSemaphoreGiveFromISR(mutex, &xHigherPriorityTaskWoken2);
+    portYIELD_FROM_ISR(xHigherPriorityTaskWoken | xHigherPriorityTaskWoken2);
   }
 }
 
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index be484bb4..4799624a 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -27,6 +27,12 @@
 
 using namespace Pinetime::System;
 
+namespace {
+  static inline bool in_isr(void) {
+    return (SCB->ICSR & SCB_ICSR_VECTACTIVE_Msk) != 0;
+  }
+}
+
 void IdleTimerCallback(TimerHandle_t xTimer) {
 
   NRF_LOG_INFO("IdleTimerCallback");
@@ -392,12 +398,18 @@ void SystemTask::PushMessage(System::Messages msg) {
   if (msg == Messages::GoToSleep) {
     isGoingToSleep = true;
   }
-  BaseType_t xHigherPriorityTaskWoken;
-  xHigherPriorityTaskWoken = pdFALSE;
-  xQueueSendFromISR(systemTasksMsgQueue, &msg, &xHigherPriorityTaskWoken);
-  if (xHigherPriorityTaskWoken) {
-    /* Actual macro used here is port specific. */
-    // TODO: should I do something here?
+
+  if(in_isr()) {
+    BaseType_t xHigherPriorityTaskWoken;
+    xHigherPriorityTaskWoken = pdFALSE;
+    xQueueSendFromISR(systemTasksMsgQueue, &msg, &xHigherPriorityTaskWoken);
+    if (xHigherPriorityTaskWoken) {
+      /* Actual macro used here is port specific. */
+      portYIELD_FROM_ISR(xHigherPriorityTaskWoken);
+
+    }
+  } else {
+    xQueueSend(systemTasksMsgQueue, &msg, portMAX_DELAY);
   }
 }
 

From 049174bd3535d980a2744cbf035e1e33d33b5e39 Mon Sep 17 00:00:00 2001
From: Florian <florian@florian-thinkpad.local>
Date: Fri, 11 Jun 2021 01:15:32 +0200
Subject: [PATCH 09/58] replace ScreenList with a single screen in Clock. This
 removes the tap to switch feature

---
 src/displayapp/screens/Clock.cpp | 39 +++++++++++++++++---------------
 src/displayapp/screens/Clock.h   |  4 ++--
 2 files changed, 23 insertions(+), 20 deletions(-)

diff --git a/src/displayapp/screens/Clock.cpp b/src/displayapp/screens/Clock.cpp
index 14299840..9962a9f4 100644
--- a/src/displayapp/screens/Clock.cpp
+++ b/src/displayapp/screens/Clock.cpp
@@ -32,22 +32,25 @@ Clock::Clock(DisplayApp* app,
     notificatioManager {notificatioManager},
     settingsController {settingsController},
     heartRateController {heartRateController},
-    motionController {motionController},
-    screens {app,
-             settingsController.GetClockFace(),
-             {
-               [this]() -> std::unique_ptr<Screen> {
-                 return WatchFaceDigitalScreen();
-               },
-               [this]() -> std::unique_ptr<Screen> {
-                 return WatchFaceAnalogScreen();
-               },
-               // Examples for more watch faces
-               //[this]() -> std::unique_ptr<Screen> { return WatchFaceMinimalScreen(); },
-               //[this]() -> std::unique_ptr<Screen> { return WatchFaceCustomScreen(); }
-             },
-             Screens::ScreenListModes::LongPress} {
-
+    motionController {motionController} {
+  
+  switch (settingsController.GetClockFace()) {
+    case 0:
+      screen = WatchFaceDigitalScreen();
+      break;
+    case 1:
+      screen = WatchFaceAnalogScreen();
+      break;
+    /*
+    // Examples for more watch faces
+    case 2:
+      screen = WatchFaceMinimalScreen();
+      break;
+    case 3:
+      screen = WatchFaceCustomScreen();
+      break;
+    */
+  }
   settingsController.SetAppMenu(0);
 }
 
@@ -56,12 +59,12 @@ Clock::~Clock() {
 }
 
 bool Clock::Refresh() {
-  screens.Refresh();
+  screen->Refresh();
   return running;
 }
 
 bool Clock::OnTouchEvent(Pinetime::Applications::TouchEvents event) {
-  return screens.OnTouchEvent(event);
+  return screen->OnTouchEvent(event);
 }
 
 std::unique_ptr<Screen> Clock::WatchFaceDigitalScreen() {
diff --git a/src/displayapp/screens/Clock.h b/src/displayapp/screens/Clock.h
index 9879985f..174c73b7 100644
--- a/src/displayapp/screens/Clock.h
+++ b/src/displayapp/screens/Clock.h
@@ -4,8 +4,8 @@
 #include <chrono>
 #include <cstdint>
 #include <memory>
+#include <components/heartrate/HeartRateController.h>
 #include "Screen.h"
-#include "ScreenList.h"
 #include "components/datetime/DateTimeController.h"
 
 namespace Pinetime {
@@ -47,7 +47,7 @@ namespace Pinetime {
         Controllers::HeartRateController& heartRateController;
         Controllers::MotionController& motionController;
 
-        ScreenList<2> screens;
+        std::unique_ptr<Screen> screen;
         std::unique_ptr<Screen> WatchFaceDigitalScreen();
         std::unique_ptr<Screen> WatchFaceAnalogScreen();
 

From 6d524ebea2c97e309633d5e01c3a1e37c182f27d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Sat, 12 Jun 2021 10:58:28 +0200
Subject: [PATCH 10/58] Move most of the code from the constructor of the
 objects statically initialized in main() into Start()/Init() functions to
 avoid Static Initialization Order Fiasco
 (https://en.cppreference.com/w/cpp/language/siof). See
 https://github.com/JF002/InfiniTime/pull/415#issuecomment-859004238.

---
 src/displayapp/DisplayApp.cpp         | 8 +++++---
 src/displayapp/DisplayAppRecovery.cpp | 3 ++-
 src/displayapp/LittleVgl.cpp          | 4 ++++
 src/displayapp/LittleVgl.h            | 2 ++
 src/drivers/SpiMaster.cpp             | 7 +++++--
 src/drivers/SpiMaster.h               | 2 +-
 src/drivers/TwiMaster.cpp             | 4 +++-
 src/drivers/TwiMaster.h               | 2 +-
 src/heartratetask/HeartRateTask.cpp   | 5 +++--
 src/main.cpp                          | 2 ++
 src/systemtask/SystemTask.cpp         | 3 ++-
 11 files changed, 30 insertions(+), 12 deletions(-)

diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index 3bfaf2a2..05f171be 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -77,12 +77,14 @@ DisplayApp::DisplayApp(Drivers::St7789& lcd,
     motorController {motorController},
     motionController {motionController},
     timerController {timerController} {
-  msgQueue = xQueueCreate(queueSize, itemSize);
-  // Start clock when smartwatch boots
-  LoadApp(Apps::Clock, DisplayApp::FullRefreshDirections::None);
 }
 
 void DisplayApp::Start() {
+  msgQueue = xQueueCreate(queueSize, itemSize);
+
+  // Start clock when smartwatch boots
+  LoadApp(Apps::Clock, DisplayApp::FullRefreshDirections::None);
+
   if (pdPASS != xTaskCreate(DisplayApp::Process, "displayapp", 800, this, 0, &taskHandle)) {
     APP_ERROR_HANDLER(NRF_ERROR_NO_MEM);
   }
diff --git a/src/displayapp/DisplayAppRecovery.cpp b/src/displayapp/DisplayAppRecovery.cpp
index b73d0a85..fd517b11 100644
--- a/src/displayapp/DisplayAppRecovery.cpp
+++ b/src/displayapp/DisplayAppRecovery.cpp
@@ -21,10 +21,11 @@ DisplayApp::DisplayApp(Drivers::St7789& lcd,
                        Pinetime::Controllers::MotionController& motionController,
                        Pinetime::Controllers::TimerController& timerController)
   : lcd {lcd}, bleController {bleController} {
-  msgQueue = xQueueCreate(queueSize, itemSize);
+
 }
 
 void DisplayApp::Start() {
+  msgQueue = xQueueCreate(queueSize, itemSize);
   if (pdPASS != xTaskCreate(DisplayApp::Process, "displayapp", 512, this, 0, &taskHandle))
     APP_ERROR_HANDLER(NRF_ERROR_NO_MEM);
 }
diff --git a/src/displayapp/LittleVgl.cpp b/src/displayapp/LittleVgl.cpp
index 36df51b4..c069afa2 100644
--- a/src/displayapp/LittleVgl.cpp
+++ b/src/displayapp/LittleVgl.cpp
@@ -23,6 +23,10 @@ bool touchpad_read(lv_indev_drv_t* indev_drv, lv_indev_data_t* data) {
 
 LittleVgl::LittleVgl(Pinetime::Drivers::St7789& lcd, Pinetime::Drivers::Cst816S& touchPanel)
   : lcd {lcd}, touchPanel {touchPanel}, previousClick {0, 0} {
+
+}
+
+void LittleVgl::Init() {
   lv_init();
   InitTheme();
   InitDisplay();
diff --git a/src/displayapp/LittleVgl.h b/src/displayapp/LittleVgl.h
index 7f7b76e0..41f934a7 100644
--- a/src/displayapp/LittleVgl.h
+++ b/src/displayapp/LittleVgl.h
@@ -19,6 +19,8 @@ namespace Pinetime {
       LittleVgl(LittleVgl&&) = delete;
       LittleVgl& operator=(LittleVgl&&) = delete;
 
+      void Init();
+
       void FlushDisplay(const lv_area_t* area, lv_color_t* color_p);
       bool GetTouchPadInfo(lv_indev_data_t* ptr);
       void SetFullRefresh(FullRefreshDirections direction);
diff --git a/src/drivers/SpiMaster.cpp b/src/drivers/SpiMaster.cpp
index e2be5027..0d5bb83c 100644
--- a/src/drivers/SpiMaster.cpp
+++ b/src/drivers/SpiMaster.cpp
@@ -7,11 +7,14 @@
 using namespace Pinetime::Drivers;
 
 SpiMaster::SpiMaster(const SpiMaster::SpiModule spi, const SpiMaster::Parameters& params) : spi {spi}, params {params} {
-  mutex = xSemaphoreCreateBinary();
-  ASSERT(mutex != NULL);
 }
 
 bool SpiMaster::Init() {
+  if(mutex == nullptr) {
+    mutex = xSemaphoreCreateBinary();
+    ASSERT(mutex != nullptr);
+  }
+
   /* Configure GPIO pins used for pselsck, pselmosi, pselmiso and pselss for SPI0 */
   nrf_gpio_pin_set(params.pinSCK);
   nrf_gpio_cfg_output(params.pinSCK);
diff --git a/src/drivers/SpiMaster.h b/src/drivers/SpiMaster.h
index 5045369a..5ea624f2 100644
--- a/src/drivers/SpiMaster.h
+++ b/src/drivers/SpiMaster.h
@@ -59,7 +59,7 @@ namespace Pinetime {
       volatile uint32_t currentBufferAddr = 0;
       volatile size_t currentBufferSize = 0;
       volatile TaskHandle_t taskToNotify;
-      SemaphoreHandle_t mutex;
+      SemaphoreHandle_t mutex = nullptr;
     };
   }
 }
diff --git a/src/drivers/TwiMaster.cpp b/src/drivers/TwiMaster.cpp
index 7b6582dd..fc9edf81 100644
--- a/src/drivers/TwiMaster.cpp
+++ b/src/drivers/TwiMaster.cpp
@@ -9,10 +9,12 @@ using namespace Pinetime::Drivers;
 // TODO use DMA/IRQ
 
 TwiMaster::TwiMaster(const Modules module, const Parameters& params) : module {module}, params {params} {
-  mutex = xSemaphoreCreateBinary();
 }
 
 void TwiMaster::Init() {
+  if(mutex == nullptr)
+    mutex = xSemaphoreCreateBinary();
+  
   NRF_GPIO->PIN_CNF[params.pinScl] =
     ((uint32_t) GPIO_PIN_CNF_DIR_Input << GPIO_PIN_CNF_DIR_Pos) | ((uint32_t) GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) |
     ((uint32_t) GPIO_PIN_CNF_PULL_Pullup << GPIO_PIN_CNF_PULL_Pos) | ((uint32_t) GPIO_PIN_CNF_DRIVE_S0D1 << GPIO_PIN_CNF_DRIVE_Pos) |
diff --git a/src/drivers/TwiMaster.h b/src/drivers/TwiMaster.h
index 1c0648a2..6175b99b 100644
--- a/src/drivers/TwiMaster.h
+++ b/src/drivers/TwiMaster.h
@@ -31,7 +31,7 @@ namespace Pinetime {
       ErrorCodes Write(uint8_t deviceAddress, const uint8_t* data, size_t size, bool stop);
       void FixHwFreezed();
       NRF_TWIM_Type* twiBaseAddress;
-      SemaphoreHandle_t mutex;
+      SemaphoreHandle_t mutex = nullptr;
       const Modules module;
       const Parameters params;
       static constexpr uint8_t maxDataSize {16};
diff --git a/src/heartratetask/HeartRateTask.cpp b/src/heartratetask/HeartRateTask.cpp
index 1c21db71..fddc05d7 100644
--- a/src/heartratetask/HeartRateTask.cpp
+++ b/src/heartratetask/HeartRateTask.cpp
@@ -7,11 +7,12 @@ using namespace Pinetime::Applications;
 
 HeartRateTask::HeartRateTask(Drivers::Hrs3300& heartRateSensor, Controllers::HeartRateController& controller)
   : heartRateSensor {heartRateSensor}, controller {controller}, ppg{} {
-  messageQueue = xQueueCreate(10, 1);
-  controller.SetHeartRateTask(this);
 }
 
 void HeartRateTask::Start() {
+  messageQueue = xQueueCreate(10, 1);
+  controller.SetHeartRateTask(this);
+
   if (pdPASS != xTaskCreate(HeartRateTask::Process, "Heartrate", 500, this, 0, &taskHandle))
     APP_ERROR_HANDLER(NRF_ERROR_NO_MEM);
 }
diff --git a/src/main.cpp b/src/main.cpp
index 52ec9580..4c2c5de8 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -306,6 +306,8 @@ int main(void) {
   debounceTimer = xTimerCreate("debounceTimer", 200, pdFALSE, (void*) 0, DebounceTimerCallback);
   debounceChargeTimer = xTimerCreate("debounceTimerCharge", 200, pdFALSE, (void*) 0, DebounceTimerChargeCallback);
 
+  lvgl.Init();
+
   systemTask.Start();
   nimble_port_init();
 
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 4799624a..38e9793c 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -81,10 +81,11 @@ SystemTask::SystemTask(Drivers::SpiMaster& spi,
     motionController{motionController},
     displayApp{displayApp},
     heartRateApp(heartRateApp) {
-  systemTasksMsgQueue = xQueueCreate(10, 1);
+
 }
 
 void SystemTask::Start() {
+  systemTasksMsgQueue = xQueueCreate(10, 1);
   if (pdPASS != xTaskCreate(SystemTask::Process, "MAIN", 350, this, 0, &taskHandle))
     APP_ERROR_HANDLER(NRF_ERROR_NO_MEM);
 }

From 346d20db52823eeed01d81cee4f413b753fbec9e Mon Sep 17 00:00:00 2001
From: JF002 <JF002@users.noreply.github.com>
Date: Sat, 12 Jun 2021 11:02:54 +0200
Subject: [PATCH 11/58] Rewrite MemoryAnalysis.md with up to date information.
 (#411)

Rewrite MemoryAnalysis.md with up to date information.
---
 doc/MemoryAnalysis.md                       | 325 ++++++++++++++++----
 doc/memoryAnalysis/linkermapviz.png         | Bin 0 -> 55661 bytes
 doc/memoryAnalysis/mapfile.png              | Bin 0 -> 111302 bytes
 doc/memoryAnalysis/puncover-all-symbols.png | Bin 0 -> 78193 bytes
 doc/memoryAnalysis/puncover.png             | Bin 0 -> 217193 bytes
 5 files changed, 268 insertions(+), 57 deletions(-)
 create mode 100644 doc/memoryAnalysis/linkermapviz.png
 create mode 100644 doc/memoryAnalysis/mapfile.png
 create mode 100644 doc/memoryAnalysis/puncover-all-symbols.png
 create mode 100644 doc/memoryAnalysis/puncover.png

diff --git a/doc/MemoryAnalysis.md b/doc/MemoryAnalysis.md
index 95bd611c..3251c98d 100644
--- a/doc/MemoryAnalysis.md
+++ b/doc/MemoryAnalysis.md
@@ -1,7 +1,274 @@
 # Memory analysis
+The PineTime is equipped with the following memories:
+ - The internal RAM : **64KB**
+ - The internal Flash : **512KB**
+ - The external (SPI) Flash : **4MB**
+
+Note that the NRF52832 cannot execute code stored in the external flash : we need to store the whole firmware in the internal flash memory, and use the external one to store graphicals assets, fonts...
+
+This document describes how the RAM and Flash memories are used in InfiniTime and how to analyze and monitor their usage. It was written in the context of [this memory analysis effort](https://github.com/JF002/InfiniTime/issues/313).
+
+## Code sections
+A binary is composed of multiple sections. Most of the time, these sections are : .text, .rodata, .data and .bss but more sections can be defined in the linker script.
+
+Here is a small description of these sections and where they end up in memory:
+
+ - **TEXT** = code (FLASH)
+ - **RODATA** = constants (FLASH)
+ - **DATA** = initialized variables (FLASH + RAM)
+ - **BSS** = uninitialized variables (RAM)
+
+
+## Internal FLASH
+The internal flash memory stores the whole firmware: code, variable that are not default-initialized, constants...
+
+The content of the flash memory can be easily analyzed thanks to the MAP file generated by the compiler. This file lists all the symbols from the program along with their size and location (section and addresses) in RAM and FLASH.
+
+![Map file](./memoryAnalysis/mapfile.png)
+
+As you can see on the picture above, this file contains a lot of information and is not easily readable by a human being. Fortunately, you can easily find tools that parse and display the content of the MAP file in a more understandable way.
+
+In this analysis, I used [Linkermapviz](https://github.com/PromyLOPh/linkermapviz).
+
+### Linkermapviz
+
+[Linkermapviz](https://github.com/PromyLOPh/linkermapviz) parses the MAP file and displays its content in a graphical way into an HTML page:
+
+![linkermapviz](./memoryAnalysis/linkermapviz.png)
+
+Using this tool, you can easily see the size of each symbol relative to the other one, and check what is using most of the space,...
+
+Also, as Linkermapviz is written in Python, you can easily modify it to adapt it to your firmware, export data in another format,... For example, [I modified it to parse the contents of the MAP file and export it in a CSV file](https://github.com/JF002/InfiniTime/issues/313#issuecomment-842338620). I could later on open this file in LibreOffice Calc and use sort/filter functionality to search for specific symbols in specific files...
+
+### Puncover
+[Puncover](https://github.com/HBehrens/puncover) is another useful tools that analyses the binary file generated by the compiler (the .out file that contains all debug information). It provides valuable information about the symbols (data and code): name, position, size, max stack of each functions, callers, callees...
+![Puncover](./memoryAnalysis/puncover.png)
+
+Puncover is really easy to install:
+
+ - clone the repo and cd into the cloned directory
+ - setup a venv
+    - `python -m virtualenv venv` 
+    - `source venv/bin/activate`
+ - Install : `pip install .`
+ - Run : `puncover --gcc_tools_base=/path/to/gcc-arm-none-eabi-9-2020-q2-update/bin/arm-none-eabi- --elf_file /path/to/build/directory/src/pinetime-app-1.1.0.out --src_root /path/to/sources --build_dir /path/to/build/directory`
+     - Replace
+         * `/path/to/gcc-arm-none-eabi-9-2020-q2-update/bin` with the path to your gcc-arm-none-eabi toolchain
+         * `/path/to/build/directory/src/pinetime-app-1.1.0.out` with the path to the binary generated by GCC (.out file)
+         * `/path/to/sources` with the path to the root folder of the sources (checkout directory)
+        * `/path/to/build/directory` with the path to the build directory
+ - Launch a browser at http://localhost:5000/
+
+### Analysis
+Using the MAP file and tools, we can easily see what symbols are using most of the FLASH memory space. In this case, with no surprise, fonts and graphics are the biggest flash space consumer.
+
+![Puncover](./memoryAnalysis/puncover-all-symbols.png)
+
+This way, you can easily check what needs to be optimized : we should find a way to store big static data (like fonts and graphics) in the external flash memory, for example.
+
+It's always a good idea to check the flash memory space when working on the project : this way, you can easily check that your developments are using a reasonable amount of space. 
+
+### Links
+ - Analysis with linkermapviz : https://github.com/JF002/InfiniTime/issues/313#issuecomment-842338620
+ - Analysis with Puncover : https://github.com/JF002/InfiniTime/issues/313#issuecomment-847311392
+
+## RAM
+RAM memory contains all the data that can be modified at run-time: variables, stack, heap...
+
+### Data
+RAM memory can be *statically* allocated, meaning that the size and position of the data are known at compile-time:
+
+You can easily analyze the memory used by variables declared in the global scope using the MAP. You'll find them in the .BSS or .DATA sections. Linkermapviz and Puncover can be used to analyze their memory usage.
+
+Variables declared in the scope of a function will be allocated on the stack. It means that the stack usage will vary according to the state of the program, and cannot be easily analyzed at compile time.
+```
+uint8_t buffer[1024] 
+
+int main() {
+ int a; 
+}
+```
+
+#### Analysis
+In Infinitime 1.1, the biggest buffers are the buffers allocated for LVGL (14KB) and the one for FreeRTOS (16KB). Nimble also allocated 9KB of RAM. 
+
+### Stack
+The stack will be used for everything except tasks, which have their own stack allocated by FreeRTOS. The stack is 8192B and is allocated in the [linker script](https://github.com/JF002/InfiniTime/blob/develop/nrf_common.ld#L148).
+An easy way to monitor its usage is by filling the section with a known pattern at boot time, then use the firmware and dump the memory. You can then check the maximum stack usage by checking the address from the beginning of the stack that were overwritten.
+
+#### Fill the stack section by a known pattern:
+Edit <NRFSDK>/modules/nrfx/mdk/gcc_startup_nrf52.S and add the following code after the copy of the data from read only memory to RAM at around line 243:
+
+```
+/* Loop to copy data from read only memory to RAM.
+ * The ranges of copy from/to are specified by following symbols:
+ *      __etext: LMA of start of the section to copy from. Usually end of text
+ *      __data_start__: VMA of start of the section to copy to.
+ *      __bss_start__: VMA of end of the section to copy to. Normally __data_end__ is used, but by using __bss_start__
+ *                    the user can add their own initialized data section before BSS section with the INTERT AFTER command.
+ *
+ * All addresses must be aligned to 4 bytes boundary.
+ */
+    ldr r1, =__etext
+    ldr r2, =__data_start__
+    ldr r3, =__bss_start__
+
+    subs r3, r3, r2
+    ble .L_loop1_done
+
+.L_loop1:
+    subs r3, r3, #4
+    ldr r0, [r1,r3]
+    str r0, [r2,r3]
+    bgt .L_loop1
+
+.L_loop1_done:
+
+
+/* Add this code to fill the stack section with 0xFFEEDDBB */
+ldr     r0, =__StackLimit
+    ldr     r1, =8192
+ldr     r2, =0xFFEEDDBB
+.L_fill:
+str     r2, [r0]
+adds    r0, 4
+subs    r1, 4
+bne     .L_fill
+/* -- */
+```
+
+#### Dump RAM memory and check usage
+Dumping the content of the ram is easy using JLink debugger and `nrfjprog`:
+
+```
+nrfjprog --readram ram.bin
+```
+
+You can then display the file using objdump:
+
+```
+hexdump ram.bin -v  | less
+```
+
+The stack is positionned at the end of the RAM -> 0xFFFF. Its size is 8192 bytes, so the end of the stack is at 0xE000.
+On the following dump, the maximum stack usage is 520 bytes (0xFFFF - 0xFDF8):
+
+```
+000fdb0 ddbb ffee ddbb ffee ddbb ffee ddbb ffee
+000fdc0 ddbb ffee ddbb ffee ddbb ffee ddbb ffee
+000fdd0 ddbb ffee ddbb ffee ddbb ffee ddbb ffee
+000fde0 ddbb ffee ddbb ffee ddbb ffee ddbb ffee
+000fdf0 ddbb ffee ddbb ffee ffff ffff c24b 0003
+000fe00 ffff ffff ffff ffff ffff ffff 0000 0000
+000fe10 0018 0000 0000 0000 0000 0000 fe58 2000
+000fe20 0000 0000 0000 00ff ddbb 00ff 0018 0000
+000fe30 929c 2000 0000 0000 0018 0000 0000 0000
+000fe40 92c4 2000 0458 2000 0000 0000 80e7 0003
+000fe50 0000 0000 8cd9 0003 ddbb ffee ddbb ffee
+000fe60 00dc 2000 92c4 2000 0005 0000 929c 2000
+000fe70 007f 0000 feb0 2000 92c4 2000 feb8 2000
+000fe80 ddbb ffee 0005 0000 929c 2000 0000 0000
+000fe90 aca0 2000 0000 0000 0028 0000 418b 0005
+000fea0 02f4 2000 001f 0000 0000 0000 0013 0000
+000feb0 b5a8 2000 2199 0005 b5a8 2000 2201 0005
+000fec0 b5a8 2000 001e 0000 0000 0000 0013 0000
+000fed0 b5b0 2000 0fe0 0006 b5a8 2000 0000 0000
+000fee0 0013 0000 2319 0005 0013 0000 0000 0000
+000fef0 0000 0000 3b1c 2000 3b1c 2000 d0e3 0000
+000ff00 4b70 2000 54ac 2000 4b70 2000 ffff ffff
+000ff10 0000 0000 1379 0003 6578 2000 0d75 0003
+000ff20 6578 2000 ffff ffff 0000 0000 1379 0003
+000ff30 000c 0000 cfeb 0002 39a1 2000 a824 2000
+000ff40 0015 0000 cfeb 0002 39a1 2000 a824 2000
+000ff50 39a1 2000 0015 0000 001b 0000 b4b9 0002
+000ff60 0000 0000 a9f4 2000 4b70 2000 0d75 0003
+000ff70 4b70 2000 ffff ffff 0000 0000 1379 0003
+000ff80 ed00 e000 a820 2000 1000 4001 7fc0 2000
+000ff90 7f64 2000 75a7 0001 a884 2000 7b04 2000
+000ffa0 a8c0 2000 0000 0000 0000 0000 0000 0000
+000ffb0 7fc0 2000 7f64 2000 8024 2000 a5a5 a5a5
+000ffc0 ed00 e000 3fd5 0001 0000 0000 72c0 2000
+000ffd0 0000 0000 72e4 2000 3f65 0001 7f64 2000
+000ffe0 0000 2001 0000 0000 ef30 e000 0010 0000
+000fff0 7fc0 2000 4217 0001 3f0a 0001 0000 6100
+```
+
+#### Analysis 
+According to my experimentations, we don't use the stack that much, and 8192 bytes is probably way too big for InfiniTime!
+
+#### Links
+ - https://github.com/JF002/InfiniTime/issues/313#issuecomment-851035070
+
+### Heap
+The heap is declared in the [linker script](https://github.com/JF002/InfiniTime/blob/develop/nrf_common.ld#L136) and its current size is 8192 bytes. The heap is used for dynamic memory allocation(`malloc()`, `new`...).
+
+Heap monitoring is not easy, but it seems that we can use the following code to know the current usage of the heap:
+
+```
+auto m = mallinfo();
+NRF_LOG_INFO("heap : %d", m.uordblks);
+```
+
+#### Analysis
+According to my experimentation, InfiniTime uses ~6000bytes of heap most of the time. Except when the Navigation app is launched, where the heap usage increases to... more than 9500 bytes (meaning that the heap overflows and could potentially corrupt the stack!!!). This is a bug that should be fixed in #362.
+
+To know exactly what's consuming heap memory, you can `wrap` functions like `malloc()` into your own functions. In this wrapper, you can add logging code or put breakpoints:
+
+- Add ` -Wl,-wrap,malloc` to the cmake variable `LINK_FLAGS` of the target you want to debug (pinetime-app, most probably)
+- Add the following code in `main.cpp`
+
+```
+extern "C" {
+void *__real_malloc (size_t);
+void* __wrap_malloc(size_t size) {
+  return __real_malloc(size);
+}
+}
+```
+Now, your function `__wrap_malloc()` will be called instead of `malloc()`. You can call the actual malloc from the stdlib by calling `__real_malloc()`.
+
+Using this technique, I was able to trace all malloc calls at boot (boot -> digital watchface):
+
+- system task = 3464 bytes (SystemTask could potentially be declared as a global variable to avoid heap allocation here)
+- string music = 31 (maybe we should not use std::string when not needed, as it does heap allocation)
+- ble_att_svr_start = 1720
+- ble gatts start = 40 + 88
+- ble ll task = 24
+- display app = 104
+- digital clock = 96 + 152
+- hr task = 304
+
+#### Links
+ - https://github.com/JF002/InfiniTime/issues/313#issuecomment-851035625
+ - https://www.embedded.com/mastering-stack-and-heap-for-system-reliability-part-1-calculating-stack-size/
+ - https://www.embedded.com/mastering-stack-and-heap-for-system-reliability-part-2-properly-allocating-stacks/
+ - https://www.embedded.com/mastering-stack-and-heap-for-system-reliability-part-3-avoiding-heap-errors/
+
+## LVGL
+I did a deep analysis of the usage of the buffer dedicated for lvgl (managed by lv_mem).
+This buffer is used by lvgl to allocated memory for drivers (display/touch), screens, themes, and all widgets created by the apps.
+
+The usage of this buffer can be monitored using this code :
+
+```
+lv_mem_monitor_t mon;
+lv_mem_monitor(&mon);
+NRF_LOG_INFO("\t Free %d / %d -- max %d", mon.free_size, mon.total_size, mon.max_used);
+```
+
+The most interesting metric is `mon.max_used` which specifies the maximum number of bytes that were used from this buffer since the initialization of lvgl.
+According to my measurements, initializing the theme, display/touch driver and screens cost **4752** bytes!
+Then, initializing the digital clock face costs **1541 bytes**.
+For example a simple lv_label needs **~140 bytes** of memory.
+
+I tried to monitor this max value while going through all the apps of InfiniTime 1.1 : the max value I've seen is **5660 bytes**. It means that we could probably **reduce the size of the buffer from 14KB to 6 - 10 KB** (we have to take the fragmentation of the memory into account).
+### Links
+ - https://github.com/JF002/InfiniTime/issues/313#issuecomment-850890064
+
+
 ## FreeRTOS heap and task stack
 FreeRTOS statically allocate its own heap buffer in a global variable named `ucHeap`. This is an array of *uint8_t*. Its size is specified by the definition `configTOTAL_HEAP_SIZE` in *FreeRTOSConfig.h*
-FreeRTOS uses this buffer to allocate memory for tasks stack and all the RTOS object created during runtime (timers, mutexes,...).
+FreeRTOS uses this buffer to allocate memory for tasks stack and all the RTOS object created during runtime (timers, mutexes...).
 
 The function `xPortGetFreeHeapSize()` returns the amount of memory available in this *ucHeap* buffer. If this value reaches 0, FreeRTOS runs out of memory.
 
@@ -20,59 +287,3 @@ for (int i = 0; i < nb; i++) {
 ```
 
 
-## Global heap
-Heap is used for **dynamic memory allocation (malloc() / new)**. NRF SDK defaults the heap size to 8KB. The size of the heap can be specified by defining `__HEAP_SIZE=8192` in *src/CMakeLists.txt*:
-
-```
-add_definitions(-D__HEAP_SIZE=8192)
-``` 
-
-You can trace the dynamic memory allocation by using the flag `--wrap` of the linker. When this flag is enabled, the linker will replace the calls to a specific function by a call to __wrap_the_function(). For example, if you specify `-Wl,-wrap,malloc` in the linker flags, the linker will replace all calls to `void* malloc(size_t)` by calls to `void* __wrap_malloc(size_t)`. This is a function you'll have to define in your code. In this function, you can call `__real_malloc()` to call the actual `malloc()' function.
-
-This technic allows you to wrap all calls to malloc() with you own code.
-
-In *src/CMakeLists.txt*:
-
-```
-set_target_properties(${EXECUTABLE_NAME} PROPERTIES
-        ...
-        LINK_FLAGS "-Wl,-wrap,malloc ..."
-        ...
-        )
-
-```
-
-In *main.cpp*:
-
-```
-uint32_t totalMalloc = 0;
-extern "C" {
-    extern void* __real_malloc(size_t s);
-    void *__wrap_malloc(size_t s) {
-      totalMalloc += s;
-      return __real_malloc(s);
-    }
-}
-```
-This function sums all the memory that is allocated during the runtime. You can monitor or log this value. You can also place breakpoints in this function to determine where the dynamic memory allocation occurs in your code.
-
-
-# Global stack
-The stack is used to allocate memory used by functions : **parameters and local variables**. NRF SDK defaults the heap size to 8KB. The size of the heap can be specified by defining `__STACK_SIZE=8192` in *src/CMakeLists.txt*:
-                                                                                             
-```
-add_definitions(-D__STACK_SIZE=8192)
-``` 
-
-*NOTE*: FreeRTOS uses its own stack buffer. Thus, the global stack is only used for main() and IRQ handlers. It should be possible to reduce its size to a much lower value.
-
-**NOTE**: [?] How to track the global stack usage? 
-
-#LittleVGL buffer
-*TODO*
-
-#NimBLE buffers
-*TODO*
-
-#Tools
- - https://github.com/eliotstock/memory : display the memory usage (FLASH/RAM) using the .map file from GCC.
diff --git a/doc/memoryAnalysis/linkermapviz.png b/doc/memoryAnalysis/linkermapviz.png
new file mode 100644
index 0000000000000000000000000000000000000000..8edfc8f9c9b6d4cebbb26319d0c58f527ac2d617
GIT binary patch
literal 55661
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
D9n(Ev

literal 0
HcmV?d00001

diff --git a/doc/memoryAnalysis/mapfile.png b/doc/memoryAnalysis/mapfile.png
new file mode 100644
index 0000000000000000000000000000000000000000..0badd1045c873e976609ad6279500c9c80f4c1bb
GIT binary patch
literal 111302
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
ZnYJxgOk|xa@D4-<22WQ%mvv4FO#qeIRtNw9

literal 0
HcmV?d00001

diff --git a/doc/memoryAnalysis/puncover-all-symbols.png b/doc/memoryAnalysis/puncover-all-symbols.png
new file mode 100644
index 0000000000000000000000000000000000000000..6a9842485dd9be2906520fe8fbff581137010b01
GIT binary patch
literal 78193
zcmc$`cT`hb*e34Pt6mEtO{8n2NEZQ-t`b1H^iC9{_Zm7XDxpiS0i{FeEkFo}^e(-G
z5PE<Bp$7tl3EuhUpIP6UZ|1jtGiNQ<J~?HdcfY$m`+1*D=o@uKikpl#FI~Dsq4XN4
zb?MUI8<#F!uKnjS`HI^@ybn3K;quzh{nDj7Z5MxkCGg&1x^(HmB_-fX9dEM@G}vEz
zjHz>nODV2)&FRPQ_6$orQVjCopHH{{G6cxI)O`8oDD)qIN}dDoy~dPZ;RXj&kJBxF
zezfEC5{dNMX!=d!Q^upla|xdTrRg+d@8vZ2t$H4L&A-VXzI4g>d#%8qlW)3I=6_wB
zJqx~j>mn^@_-t^Ie&~PDc46x!hieb-U8HY?|Eai0FQvVNT)jvqZ@=QZNPk-0{r{fD
zq#?c8z2KI+G&FJP=?>^WCVBIf=;0O?vPRa5C1)>@Z7;SL%xHNFfk1xa4h|0w#{(`t
z|DjV^Svf2^ny|m`f5m+RW~k0gLnHU;!o&|jowKuMWfPrkZ3f`Rzs%GiYU=8oEf>Z5
z*=*(Pd~RiyacuW*DK4E~{=ZSq|8Q07K*KlPc9Rp&na18VUdECEX#}V{%+oHZ8`^Z|
zqFCOhQ>qZrUc+3y@7W4KVEpIguJC+yypgb&NWC*6Y^p@zPwkk=KD%d*?A0$#P|G|l
ze|dIOyQ9CpE+A58BgSbo?y*9g%_t9U7naSQ+$O|(_Ua<%Z=zEMkeV#l?K1p)`NmdB
z7j0Y!)ORWwUs_+oFoSTJ{*YjyXgUrjW;tt8O-a7ne~AU7lIj~BQ1b;qdHlNO_xH>2
zb=`6ewP^6*d5sT#-Wa?E+c4dw<uNU@Rda^=jO$ZBDs@0NU{7nlwb3RZ;6e382QWGU
zUAu_;KA0+MteIHtG_4WQRJou3#k%*9dFI!kk`M=UvTAv*`_}xBQj}B17iGNy5Uf$W
zm{Y-tL3(FU02D~qWZeql8oal4?DL2+q?-OuBYEGmBIebQU_(2Ub9JawC2U3(yx4u2
z4p(h=ptqCmW_SMes^6<V(-><~GU;SRay?xaCt760iSO6;v(_+;DSixyr4I7xsFvpv
z=%nS<FL}4wGZooloHS_SBW0qq{`Cu*I{OeKbblnUEq8N5)TpdO#+S+xpH*monC>#5
zUum}J%duOZIl0#vUvI3cJZ(^4>A96*+%a6kNIzoFrt`<h=(h;r3guTDXYL`-&KRIM
zgu?8ghP!FZ;F5*w!KuscbTP3UDt||_(gf~?jqd2GhK5ftR}qS&z8hOWjW__gr`nu+
z;z(|(`OOVtRquoXqv+=KeSrlhK|n&0-s}_0-3p5Ew8V9+c79I!H1f<&HRRV8AnU$G
z?UxS3)!IsZ*n*Suj1NcAKH|zO_dGWMpxc8r6}3GE!OC>)p%d+=C(QL3gsMQbjf{2h
z^@~O_X#|lz*h|)C;EkI7GK)8nw%Cl>V0IJj$J#l;bQ)eDy`s70fz)_>z5SC!-~6xQ
zEnyJjADsPZSXVumyei7MP2!|Rgv)?Rv+$tCcu7)<(D$(*hsY`#;Bn%#*}(pV7xH?h
zg#QL-uJ4r~s(R#Ex&jt89Q#%tC>37gVH!Z3ZbHN|ng=lHbNt(1N2)6Bra6JlHElPL
zl~_KL$Acr-7m)&BVuh`JA&s0IFeiB;7^bDmn7_N+8xG+Xm*Qz((q~sRN`g#U^YXcI
zJ|BL-dWYf`f?o<DJYX=Zl-<yHPy}syAqu`ubtCl2eTo)L;GP<hD-0sT^Q>eOil&bE
zQ+FDz9j}VVw%RmuUN`W*kq27d_^C&m4FII(-)YU#3WX#Cf&T09Z`AQq_ZTsNd^`Ks
z{)dbQeS#MGTDAvQWxbpA8uCLS1){9Bj_8qd;DvL4+Lu?v(Q(Mx=)St0w;#>cE)<dv
zNsoS-qf6Uf9*Ay0p970FrA#+RHL-Z9`~0yU_$<iM_GlO++q#5VqCbH}Y(cKJjX}+m
z$0x1x$Q#8JhhN?%P`+NqCp`iH04)N04=66a<DE6Z(`Khr6hG;1EA(vr*Yx(%^^<F|
zUy=Hz^pXd%Fp|1bfLmWezhV?Cg?lYcLPJxt_RQu1z1E{rbLAPtN~ICbu(kgs5SVML
z^ILSQqc+@F0EN)yFNUi+VT(=M;+ZSfCrx{K!#+a|>g~pgcp0!?|Ml5mM<R`^S-1Z{
zzB*ebvM1O4A$}6^((e%JGF*_!DO@Bf0A;+Yjw-hvKJ5yVcZX5GI-d=inXR$eGZ_F-
zPabYU7lS|&mJ01WmW|92FY_rgC^Q~VRU%|O&nlde)E&Zp6X<VJB|JIEyji&Grj)f;
zS=uq~pz`WvH}<brS)Tj1h<{gTWsb77xbVZJ!KIp;6<251^akIZ4Y`NtLsjo;(ie<o
z`TrjG9M685lx?1tac9=}T&f9-lg)C!^H1?`fuZ#E8f9R$`WKn?k$1g`(p;2VN~)TE
zOWV$qd4V+xQ^Og!RYR09_yM2%2;c9s7T&O;!|MU*UQXivyM2d2>d))_5(}oXUiJ^0
zT>CS#o~J5zd(*A;QZX{F&+ohq%Ek^P)3P}a*FSI4qhh%*b2vOAqAx`_-}Ate;M*Y;
ziJW!g(!03v(|)ODdh*7_>9+5q|C{sjf6Q0^109rcw%OH8=j5>CcrMJDTVv<ou&pt|
ztuxJyeKw${PdYmCcKd@1PH!nGDedg+2nYy_vp8Q$$a*|pll1HDleV@tb}lYs@Wtzw
zSXE$S4Rv*^9ul}Hv7fxR{)HG)F#W3Z`xo~=1bzH}ic9{d^8cskXruU6nb9elLo_W)
z#m~TPd$-<kFAq1^)=gC+YZ7D%45Ku9)*R5pHJ<s=T#7J}=y-DH%zb5}<Tqq>(k8Cw
zC4OOx>F%5A_x0<ZjAM_ttk2^4xQWCGPh;nMR0RLUT0xj2`V0^-QLvKgw*%Pi?m)62
z5600KPTJ<HG=WHqIT{i}lCUIB$7XeqkFC>bja%DlH&^iD)5Jvzr5!?R@F1&fom-1Y
zCN;(Npfk(J(^7`ci`OriLHKIZC*wt&6kiix`5&d0#3-%t3U*e=%NY^Q9|nB#?B9yx
z0)3SFtBI9(y<2u^fBYqjQU4TMs@|X8-uT?mp7W5joGHk`9u85qr2ihrq{Iz)il5-6
zIJs^_84&X;T5U_*6;|(vH_TBfEA3y`-SY&$-W2<Sc@B5qo37uR_{^l57k?rwi@RU$
z6d>o^Ir=B(5A*>0{x;Us@{t*r?h!wmD<Jn1Vk&pubvd)kBVB`usm23;sRe=H-xYDb
zYt+S%f~sYn@mlORQTzNvkFih)_cAH@uf5?vgW;vdyM~Y3Qe#^KrC6Pu^qEJiZSaXJ
zwGWBE%f{*RnqKUHgU*GgD?j+m^$EI*+dMs#o%@FTRoBhZw^^X#KB2&Fwee?Wl(Hsg
z^Oc1p^t7EFU<W14?N05BOX|4{r69&trQ_bMhSLTdf2jX4M(=x~gjn;vcmDWInJ65d
z-ke#nCoaVCMIOkYMT?WTaD1ar<!{jnV@_5fF*hCJuMu^A09!NN?_~lnfV$G!B-XYN
zX_OFndW$-Uw`JyyDmR1Q(_AOriij1nPmm)f{#?ZM>tbi#`H<({&!(F_bsAb2OpZ%>
z{b)#3RMr?uuQHsqfPj;x_37q)s;Pk0av2Vf0YbL^mJ}^(CIBFDJwLtvG7dS`Xpi6|
zj=~ofGRAtJIUJv~9d8$SL$kv*nzF{$#qi^$KlT<eyzMS;TX$ujIZ3<ovr7TSyV1gm
zrN2b&CIYc&tJ#LmfU+1`*TBv7{*yztn>Xv37#Of~D>413W|IUv&$ODNZ=LPF``WMn
zk%l{M60az#o7LT;reT4(x*T@Rvl%oxw62uk5^t2VUewiGWRmVH2j$b0wF&dS&6UhV
zQL$aHtzdHy7l1qTWt^a5fLWKc<7xO}`h;6^dVJgW!p^M#lW|^)=9<LCJi~G6{2sj(
zZLa>U=h@ss=Dh<at+)o1^#<IaZZ51|GYbTZkOly{UFm({Yp#4Vu?6yN-|mAK7v_By
zDa+7q+Y^QuZ&dprv0+fqcrcIRb!cRR+d7^%pJaB@*@U5w*dMoIRg7C4h+HSEvE}pe
z!sXlUvNAHT`jRFyu2#_>Fp86c*HbX3UK1NJ*;ePSvdb-WJzpV+Au4e20Gn~eTdOfJ
zk+d!E*V!3@jqn;Ed9@Wsx^{RZNp;F|{SBqKBY_A&XHiGWrar4g2_qknJ@R3~Y(*Tq
zjHt1FRjEWp1yyO^s^@d}jWXlM<!u#I+yDAe-69z8H$+)o*kaq#$--GS$z<(Yo7-py
z)o4C-S~)!R6chF`VpnjOxf}BUU>7+uXCz*NkPqA#?@WJtFm;({yjZ_V**1Fg4Wp}-
z+~7RS%71tu{Vf#fu3Ku_?AyMe&e;2*AUy3PLOPwO%#f@FAWhUqi?<Yw5z|RN?#I43
zt>}rn0hT>KYi02_2ez51s0<~G_OQa^xf}-AjixVQ_Xd_1Z37FEZ(rAoaz=yAhqasa
zJM#`0r4}jOKj{{V%#wV<uU%UiOc)V3ND@c-_+n!aPo*xp+)pM!SYMk!s^`#5*GO#;
z@$K0=)Qn_M{R6-}R|i_95N}ENr41jb-vB!=pP8F}gCxhc(vzNS6S$kkaHB<9g|F(}
zmffv`e(6?PiJl~pe&7YD>TA7IJXp=q{BD->uiRT7xxD=#5QogJHH)lu?~``fPp%!i
zmCV~c^fKGe0|e$U0y;ULzl(xEWiWGWK@PgyaGw|ElWPyz{2K{QjgXm{=hM&MN3Q%Z
z>`P9|7UKz<9w<5J1bGF(OX1|z+wCDZye#=-vF|`gA<kUcNTeFvU&5;*Zd`gm7lT5P
z2+d=O+?e!bV}I###pPFtb1VV4jk1xzWcWcbWJY@5IMc8OyU!DM*rq7d#=I_ho?LIb
z3nhUFPHBU^yN+KT0&H691g)JYsAKGznk1xbK-0NHWXE0F{v|v=@;Yp$kyFYHsKay6
z$+DY^@7bFTS^3H>Za!0So%b!MpaC?98!3N1-MTb6XNn6tC*eMpq>Va^7A=0mca%+6
z6Q<Ffj>+jI8~H0fL!bR%lpXhr5$z(Ln-uP_acj}1UWNr@cjSVgnTcfdj!VUdGqmdP
zs65eyv3%uAO(S1yd*~M$)4VSNk5q!Iw{zut=4#T)=Z+s_*6xR^Q}o@?1A3GOsv#(h
zWzJ}>*BAjKzRpouM9X-GanHlf9Yx?s*uIgtqk+*UIx7A1pV7^rBedU_K1z*27H<xr
zgM~T8TWGP~w_3oqDfmeG59kPaB3PB$^E`KY$zTnIJPvau6+){2&>daW4-bc>de!ux
z{u27`{ZBTn@OlKOLt^(}D~(qU-q%&fF5d|wX!O+9JFe%Wujg0z>TKkm@dO_!aPlWO
zZQSliy_0Iunx%m{CGbOv5%$D2P>f2Gb~&j8UgEp>Do~o%;x3hB$V?{fLHRm)@gDGg
zFQitvl2D*6<N0Y6(Ie)JbsLxz93ZjyYhyj}_n$T+owgDeB@+9sOzFDy4$rz-_*0I@
zYn`(r6Th?&)FWh=GWh^@B@=BGrklbiake5Z3WoGhNOFWwwjKz+75I8zR&(X6{l_B8
z{(Irdo6ieS*P#-g>!XF*o+rhXe~6qHdfyBIK2xf3T7t~{XG)yL%r*E}%nYRA>9VcW
zaYoYRu~`x({tM#JDMR`=M8<SlPr&e}kj3}NI-kI^g%mcp{r>zm=oPDSL=7?FshGf^
zab|_$fU2p5)6pn%dhK9&!Y8zfaS{;79v#dvN{7=Gu!v6K84PAZSq1v6e`s1RQ7KgR
zVzX+J8INaf;_Iu-A6*7Tr!k511nPDP?Y%A>t_w_*_!8)N99L%M)ngxud8ZgCL-($p
z*V$KIg24FX?avQ?U71cAWOu$oZqnWsNa9^4cZ<UvgJ4L(rb%-_M)y5Ml5;?@ULg=D
z#Bmlsl_4h>-_cU#F-Ala?_@j$cW0cT?x~&>1`!CbB!OhFW;S^t=*&^?$!2pyTKdCI
zD?zc}QsGQN)<bLiynbp*vYR)A#EcJkcfM!Dz<YyLv_@3I8;_-*V)hNr-oEDa7_hW|
zpN>->R0mamNy@GdSk19y!PizLo?uq+_idcs_mrhrntGg~m&w!h{6s<cF@<WBEb6S}
zo?OSk%rT)5@;Qk>@rOcVN;qzt?)7lnWh+$cr$-}la6T{cwK#afAn7T!MydPc8a5o2
zfSc3V)4>d2Rj=LlOB`{DgCxtT$fNgEq4iDK1V{j^36|hg?u@xyY9TnQPdhS-{vn)d
zwB^g_>A9ZpnU<;o3>)gk#-M<?W<=s^Tf~tJjUPO9JU61~WHl+IJ^b~IXs>*85)B`r
zm!Ik_(pOyC56%dv0=6Z4JnGJoBIPwnOr-8LIgOkl=yo{cy6-l5P8FB*S{06Z$sC6z
zJ~nIgn7T>kAqJL7UFH8y-v?pV=5!W)ld||^R9<{nRrEKTN>#Ux5CI}DaXui{?5`47
z&`4CK0J^-~%kD0+<^VSr5gulLP*eQ4>509&(N33lZvxT>6%eoIZ#!z_jMGwx66f>d
z<4`o5#Ui*9Zwxy$be`1|)QI;{$ZNh5R#&zz`i%+}<4c>aH`LYe>m^#Z$5Z<s?<a~j
zM>EKjd$vxSUXK*_UUWrRUjR$*E7Agqjek>FcU))6ct=&3m7G`RyW8~g+~^mwCV;rV
zHj=M#{t;tLuvEZlZKoBQ_B+OLzq2*)C(dpx^YeyTI1h>rTBk-3f+Scu0Xzu}gML24
zl!4-^-QW@x1`c%9dwoTa%5y?()#pCH=*Yahct2amvQgt{nGBVTn`eruvyIlM#zKn|
zPkT_6zfkn(Enm90`TdOLv+3H?NOb6hjX8T^Ni=u{@Xr~S!_8Vh)657cLxi)Q`wrBb
z>ITuV)PsS%9+<gL$s$39p$D?Ad1dLW2+r}ospiNo9d}6)iwF9+Q<(ugaWVHKjN4}y
z1Lm68iF__fDs5p0sLMcMGQ{aodM<9?%-4!IJBbiyV@_G=o5qI<19%%Sr;H&`9TSnj
z9Bp#$069j@yumd>GZz9>vTNP>H4B|Wl|AKw@k>nf>THuppP^qh;M)q?%1fhvftuiZ
z^ayKjX>tiJl~v`Z3i-W^P@3S%fIBeKPUib`sN0vwRL_Kp2)Ut(TzWg|2cbw~mfpk0
zyrVVj(|YhgYpjJvPEEL^A-+Qg22yfg?Atd5RDwTotR-xmt4}8<b>DU0|Cv2u!9)|R
zm*b>7Q~3>1KlB}v>v{}#Us1?=Rcn~2BxxBWW--_r|4m0JFT(gSthzod-Vx*1RcZOC
zAK}Ab9_1LO+V|ud*~Fhr8@gX7e@n}Dq^Sb3v~V&d%NA&83@E#4MduMf#R}9jc|23F
zDb;{=6@^bwkc4`U>aJE><ztQW-feEUBh&gTYn&PJyP2u_w4EktuKdL5oLdBWV2LZS
zafK#|(4Hc)nC!_tCcD=plu6|`QB*U-N7H^)!qDvq+N^k8df}d87`M|e=3b>6HkMO)
zM?*SLjO|dP&)!OZnnnYI1)5COsgoja=FbjrZB+CoU$l%yO*2b~spvABdn<<q{!?__
zU$%@T+G_(c>MMsOYBUikm@5b3Hlmfm;{2VMsqwAs3Nbb+RG-rZbi{ec(jDOvaxN}Y
z9idlpYc+0A7pR)|`JwPvGMxlipnCpzt|E;c`9@#=wo&ZVmpnq0;F=`<Q@v^NV7{$l
zY{|y&U%n+5`06B};`g^H$!5n_WzE?XfUNQ7LFi{?o&>pdAA{QHX<5&p4%YC`2uT6X
z90)`?w{&Co=D6v__}!IiW*Gkzcz$LNS>Ej(K4Y@l=$k=F^YMmJxaM2Sm|w#;y9*9)
zhCGw++bp->ofh%O294Z1_c?v#k+rNY3{dv)-mXA0bq0)`p<fE$=9CBS&(`E04xBzK
zsyQ*TdMYS@uyGnCHWGuklGKGbBJpERr?Jvhg?`-mZC{)+&I8hB7im;Esa*TatY;*B
zhC5)R#39hLCvZG-@^s$$YW7RYLzgfLaal(L?8D|vF<HJTPyZiW0c;NeB`CTlVz0ac
z_PUQSWiu-9x0CT6R`?znmaj~7^1zv!hyRSq9$)=aLl4airRr+Ui<C5h7fqpffoAK(
zd_~*&1G-CqI}89w<H}eSCWZFuo#!@W4zk1_&1>KW!d@%;Z%@}RP7Kgd4T-ON+9@fk
zst(lk8Q@KAr(^MKHEEiMVVM#|gtWaMkV)|+QVvA1<Dp=*yV>9*j4E#l(!O|&KV@}+
z{+qUa#H}W}R4<xGWH8cd9fT|DcHyf}jbe6N>LK6+AYGfydWS^&+z@9cHo>H}0))Qv
zSMD%NxAFYl>m$AiYUgc=-I)2#o6R-PnPUnb_mJ9US&jleC4rorDe0A>DC-0HpB@ZU
zd)=vTf(~;pYX2$oklB>#hG2Mb9|hsp75_{p#}YkIF|4erJ^+hnvnV<I+c!#Q`mmLL
z-~@z!fxkUb$4I?kvA8h8Wl&=TszU!<wht5_t(JThZTJwqYve_wqslY_t+G*pL7&Vs
z2iVX!etpRrNV1l>lNplM<I!{emWJgr8L#eN*8&qQQEN4fB-|>inyF}_Fdc*c*~VJX
zC#M-vE`tOk{p?LFFDGG48XZ%(*~lr7q9f^ve=INb1=HYrxL;U>70l-_7zEUG@|)_Q
zM=H1f5Kl|G{cRl>)5?>;*m~2QxKsv7w)`nYdFz0H*B1cwhV`QmIzlz;&S|{OaKOuK
z^?XVPOwIY+nmfHS=1ypsimK+6xTHA3cjd7`-RlZ1I>u+En>YvLqn+0EeST5W2y(>>
z7uYWB)nvk>7R-tncQ}|`Pe?o5koD$Ya(W-p($8!BVt)8wUCa)hv!1P8(D1S>M$`xn
zLfVadl%>3OH3S_U1_vK>ZLz$mwLAFQZ=BF?c^o*;J>{3k1h-inG7WN=uE1{`hd-Rx
z+zIVIR3BiSCCOh=8Fl!bqnTjNfDOK=v==(I_Ahr9faxq_<$HD)P{HSIr#H@teCyKB
z5uYN@#-nJjXtagXk|Rdag7V_>9K&66&~uB0<r~&`GTW0&s&i!h?=NUSYHM=QPmFr%
zthTXq@-jgYfBq-j=$)lsRWV{e81GLAj7>uz*M?g>&#cmg=yCpIoQseDe5~qWThrZ&
zmN=%`+4QD`IYR<YS;JG(<j=kA^7JFia`(Q2gN^x_Kg0GV(jzN#&_8|?>$>3}sh~$D
znf-$0Zoy8bD7x)AyFa-1sH{%ozsD!b|K$?@|BYb&*O|iqdK}ej{7Vwx>C@qcf8D6S
z%E~&PI{{VJq{T5_c;=EJb?+ar@c%k|`=1uRyh@;v_T|f$;~W>}zPOht2$I1K!?x{S
z6+{01`)`9J^3@OYbL82sY$`+}>M_obKf0@7KkWaY$_zQ$7~@KD9uiRX3D<*zYI8{t
z7^+U_k6iV*LT>BZ9YUOKo$chK(|9b7hK3F{tc}xc)=Tgx(u0jHAf3VqSB<0n-qphG
zO>&hJGMzdNz*1bw%H}424&@F)SA2SM@q1G3W`<<tyDu*^^tr6X27lf>_^O6Uel}nu
zlB$}wADpRm3iXkI4)Egj$5{piIG!E#B=G8&nuI<x3M^}r6zfmeZ&z(MLG9Uw<oN_t
zN!EL>2paB<2&tH}N|N50o=SU2ptsWFhsgB!zgmC-c3jl?oZ+Bm*GG94M*V}{m95o{
zM3_s8Krq);CO)qA_fHujJ0e=yte!GP+U8e)1vH@QaPFr<t#^&Tk!iHl8fk=r5mb)s
z=*B7Pt*_UvlMjp%NHwg<Z*!%e>0!)T_+SrLIj~TRTx_0{LDbe(q`P*A2O?v?jr}c?
z7WJ>-KZivm<*$5h@s*APW3kc@M%JF!N%XbOlP3t|`RBv}Ex6Iz<q3^VHsSA<aYCK)
z?BZLWv$L~9oOxmSjqioTY6Z<2y>}Mc=@+#75)eV9!urGXZ1?=^EswR-@&quf)Eviq
z*oa0CoAvU6T%!p8Wou%}fTl@TY%E2CAjYSy<n@<pW4%h-$L%z-Wiu}E^@M;R4MoMy
zW{cZvndTfDI`-rrpZL9!+3pp*sW+;z%kVN3pq9~0Jc*3UI)p<5#~Uuh7&&p&VEhX7
zF_lo;S4`sxo_-5?(%Qx#Y}J=6v^PNq+moD5(aK8vY&b};>XEoSeYyR95UvCIUS5c!
zbGE@}!j98zWxE709Mm}_Z9MKg<-WR*C<t8oS@)9Rnx&A;!8Bog3|0)!R?c-BFDOQ6
zM>@@5?Oug}vIol)XT?1iHX?5shppGZYoi!FRx%EL>u(BSSNoFLvb0n`o;}MzH#?$N
zp!8*%1DkK@iP-a61yXPK{GguGOpU!h2R+nNF)?ZRm4lBy`ePXenQC)Z({;87!@%^P
zA=0YiVAd5qYStUK@5LOIbCBDhus(hW$|E_A^272RkNpx3S-HcvfLmUN!j#I`Zm(38
zviG0l8Sl)9r=yW7V>Z%Y=hqz*WK{ftUx;(InTk5*a7RXHU40vwubdJ6W4JESbvP8F
z&H<nf@WFnQVZn`+P91H6L)45M%!+*d{4#lTi>etaHeh%9i*#W-ULj4WQnazq%7}ue
zy{IpuUqeMB1;n#5y;Vl^aCn2TiZnWy_F^gDbxDTYH;>jMw?C&UstNeu)>LVV?zX|6
z8j75u|8rY7<nw8Lbx@L5<odYXXrpdsS)c^XSzUcietvT7r?L?C6h7xPA#S3Ai#PGU
zpBR~zUmxXu**uNmGpTbKA4EnfO+cl1!d|~>Q&7atT*Ui#dZQxU{QRD;o4V1J9<8<U
zujD`GCU6CeH$j@=Rel4*V@3iq7RYCkE5ss`fhhGY4)Bax`8p9?U7EqI@5PEpo72w?
z&_qH#;SdNr8gsnZ{yL$<b;udB^t({LO<cbO^VQ2{v>=8^9_H9PP4ACyZu*NO_XRRO
z>ZYn1fgf(xUk_w3;C=!RPYOaf>!%F|xKg?LS|WTcku&K5yR>UZQ=cK&>e&4q>|<^z
zC7_O-${V-sqH4RLUsrG4JDRfh#qOHWu?hl2k?Hv%ZK1K1Z;wLS_f|aIMy>Y*CmRMS
zskrkX;n1@l=esd!#;HquwJ)9uaH-!uM}Tk*O=eE4GCp>2(o&h^Aog$M14Dr}_0$ng
zj(O!YXHw4_QI6_@S)YEA`*LcnPqTcaJ(t&Q2hB&0W3CRXGdDUnar%PZviqk;8430W
zpp0fM-HD@emc6gwDH=Wi>bf3Y)K}B(?TCgiTr6X1CSSAScmgz9bHU_#4@F#S?{6J3
zv>-i(9q#W}>z_^J(9^hiSnFg>4`e%f<uBEZu=zjt$EPHJEt#Hpyip#|JqW$VufgPF
zzxNqd`X&5C{PR_ovs&%mLO*=MW6cN8P7iy!12oz=!ntkV5S$Ow>x`<6kR3J3Atq8%
z^Hr?2N%ovvCaXJ}jlvHr*7Ds1OONdO#?xjK{Q5RPlHyzM^IPJg%_7T&sx2cIGCIL!
zM>(ja>X`E{vF0u=?qK)vR5povzdDJ6+l4+#!0EAphX5Kz+Txjl1MAixgGMXsG0u|d
z8hhBdui(k1BGpiRym6C9B81Or%;vPxw1N6S0_?Eqf$bY@=?`jTcmxQS)Ft}w_H=FJ
zV(bltmyT94)RY~=yj_sFLOVTvV-09g@$+hXeQD>;YGM!-_+;>^q<|#0=<p@-bUdKY
zTn-xwagU;e)ypKi@sW-NaT8^17#{fJuNlj*Xv6BMZ-`+(XI)D13VWBd;d4n3ec-1=
zkJ1rvPhncov}X_NX<_T`6O~e7;JI#vQNCx$R`UcdZpHGTmorGSseQCspCrf{6t(MF
z$OEwE6dlxVGAsKC8a(yPEd(MDH&OH>sDl(_K_v_ci7=|J4h?Bdz@YYz<|p2I&L6UQ
z@Zo%e&Nk-xIWs(W&fd?~?E+$vecQ*f6IG|Lsi-s~gf@FbGU@|^29zT)rRxMN(N>MO
zF>~Ml)A6mC;|aR5H!tE+OfQe~r|)io<eYQp;uZ(#9FEPD2J>X29dnZxg5fJO_k8x=
zMEv*)f!G{;8OWGS=vP0Bibj3)yRkXWmagAP*pJrjp^)}{XAjXr|5y~vuTlS~NJ_?K
zX$H)&1Hi$#7!TCAWhbxM2pP?O2vWqZ&vQ^SG11x6Y8E0J8;cdCYBDjU1a~{sz(f5^
z&A2m<_3&GrUl=2Dzn-4T@0kFQ3#p?hPnTb$)kGh8U>kDo1IGx8qcgMAuq@wPCyzf<
zTc^x)xM4nLE?HVrsa+TDHs<u^cg-~R4EH#%tvopLjsixUCdq^x>oZqvB(=10Z1P?!
zkgpAgyk4rel;+xSJ#>BocA%F`04knRS&N8UmZ6&538%9ISMxP)h~B5*96H0+bJYyA
z_o~ENP-mIP$pi88YZ*J{T?%`L5xX0*X9S8)uM*i>d*lT{ilRIZm`$Qc6)oWaFgixT
zQ$=ZGa90@v?mnQgQU#9}BwojFmLH67-5ScYy0wKQrb6Xr<F1QgM+-IRVA_8B-8Xv6
z#_Y&6MA&?g^B9^caq?v15wiF6WY2PW_QxW3*uvU9#7?xVvWQJA%FIIgRhtW;2{O4B
zZUBZrUbh{$G@FLH?cn_9%M8`+#(pn5UXd(LnRaX`50W`IpEIIjsK9s44Nv{jI9)Y%
zEjZ@3=Ax*JN!D^)S+O;}6&ew7cwkcFILAhX#_W1@Z4VD_?O?mgNa>=ozJZdK^P$=&
zE6`~%4PdTTg6(m8ZTlnTXAbMI5y<OE&i>u!HtHtbsCswowQSDjB)K39ZJUqx(wvK%
zbI*!hTc^c=Z7m4p#RihCATMA(|GHBn4W91#?qr9ce2&3!qwL?CDJ+a9718d*cZQuo
zq>1gB!i^@-&|p0CP%eR3ojP8>u@r;8?17jq1tC9x1{`BT0kO}1IOFxi(x65_H=GDy
z_<J$}@_gBqnkud({%(ahU@D#&Jl;EGmOrxWRIURw7f3rFA&-ndnffa$v_s8j?|60O
z7%QsJ(#Fi0g5{T%2zcE;z|0P@#TC{Sb&{wgPcUx>0<-t%s3MU;nn*pM|E4G)HtVq$
z5s-P{D;aXw^-~6ov7KIhTm5plzroIw$E)D}H`1e{(s}n-)v#=5L%|Xw;J#VO*@md=
z4;9H;o8MV-c>6GWw3jr=?^6JyonzD>mmo!h-+52BY*40XlYP~2Ui@l1rm;q1#@BM~
z_YI65e`>ZLPJ!drk=LZJ3XnFAnyr?vJE!jGu(wb<{B`#rSRM#;*t86ds(3ikgkb{k
zAc{o&hnq)(ay)nXGNk=p*=&~>!_C<$P~`#$800<;+sqXX<eXXvkUeOkN!>01vg9aZ
z1T=Tzf5M42V#@eFM$cd(kp_9sd*;J!-3#0r(}e?<UX(46(SE-Bld?rq1`>$AS~fE8
zN}!a-+5q(XNDyC|aGk!2b<O(ZI@>JBKENh7Bog-qF<SbOg(peCWFN{807Rn=B;JqM
zQgstvy6?5ND3+47mhY$j<~4NT)B{!~9D5n88DdJ-W3y`bj?_bC^-FEe?73N?#K6&&
z>~{zmTllKFNrUzKBkPg@Z+W<~qaYwELyf+l_@ty@{8;8bdEN0rYz!f*>Mx5h11{i8
z3&|1fA-a*J?0UOMBOs4I$uVt%SRG?F#k`yafxJJewuK5thLVYnH5vyG$LU(nGq9}G
z?#OR7D#};iI|iiD22@m$7PG(H_D<*7lF-Ey&wjS6gWm5<V`|Ay`{6U>xHL*`NYn?e
zk*^5!dPME`Xx*08NZ|&cWw+?xRQtae+AWb?#l^{@2x8eun8+Yr@Yf2E4v+9!reBTZ
z{)vqNWr$;|FaIrSDorgQP$va@OJ3-no!0h3o=UKhS|Gj*>w;hr&LnR7O~3_=TzjUJ
z-upPLZn*C}8ZJ$f-Zex%;|;zEHWnW6|H_uG9SM1?9A+Lt&P@7wGdcEPCt^ocNZ9)%
z(?n@*HbBpIe5Wtdhp*#JvG!mC=?fE)-f6N@TV?R3u3~0m<4Rt2Ph8*<sMYQnqkC7r
zFG>d8eAMHtokkeX!v`dDlaU?|LUAi1Va(th)(em^+<_Vi&8Sv7#IXb{hVb6to?Q++
zw(Of=nH4x8RGFZ+=7xS7=PRk#y{S>EA}={7`0by&%>C@f4O-L5kUOCn<zZ<qkey>b
z7O;SN5CUPpe`~xzGg~2&v73G{L&|5k+wH~{P1_fNx`g-pd=l?%nkktk_;xi+Di0tL
zc9Cf!=5OTXh5A`V6sc}Z)xReV^J^U-+49dC0!DVfX53Mb+g?d>;nGNOYKJ@wzD7ZG
zIJ0zbiKh<ad}s)~tPL*Hr41(cgfcZEHUnv&Te25OTn&Ck7&NN=>b38yn61@*?VQ>C
zNoZH0>j4spOyjS6zcpqZL^$e^g(0Re(!_qaVryUf`9ShrCMb{iUZ{cVw#|%SSsFJ-
zWq;=gwHg563P1GB+#_tF;Ndm<1Y0dLU}+yTgB&|uB7QBq2%u&|n`{CV5leMdG^EhG
zF{`lVO*N#P!z|%4ko{Ti`wLoH%-QL=&(Y71S4ss*3Zn1A6)71-3NZAr5i8w65QLhF
zU{2Y@AOw0L8Pvi+l~QYdNFRWptFuKGmT(`8SK7Kg<KqLoyv4`+E~wb#HwxvaZbLL|
zEnfc8JaHbSQd&B~M9h`02E%v&;ON7RQ5blyhog)$k1Q8`bnmu-rme|J(Ea3Cms}6@
zp<MHZHo|1$MqD0Bzt>j!LO1RFG{N$wz(CHD(^(;0-Q7zIf3B8HLeFi<Sr20TjZWg-
ze;8q70o1NrC-azS*2$VP$6!rh-(TF?TeF9xNX10(Q2UID#NnG{C~1LA!*?7Wd2h6F
z%W6Qq9`t-4Iu;@LGtfK{ZgS=XRH5z(YQr>f;MAn<xFARGPu6eYf~Te;)66^xJlyL)
z%Qb044g-ByHe$0V#{-%bJMYmoN%?62wHCCh2XeVY4>i>5bQ-j(W~FDHkNQc;-Y0^_
zMk_9&4KqfP@F{J^(5|KNU_Qd#<3T59vnSkRp_7V%pzZ!drNBck`k<3ORN0G2yXC!m
zb}r8Zrr-nLTsayW!$^|?W%hlWK40vsSBH+FyDa)Jozy0GKS)8R*dPZ$4yI=_MnZ>K
z`sSVWeDTxRhQlRKeV~-r1JOv&gTqHb2B+}Sa*Gx1--DWHkU|}*P_Q4j0jeZQmS75X
zIlrTd?7gCnI|FnKfNnNpfZb;2W=Up?$7$MvfPmSx8JG$#6~szMWuX;ICaB-j$B-p1
zXCj;LiTZ~EVik$`az};lEN8bSOC0-ube1xiGJ(6-;saF^W98+FA=Spug*`jPU3b@N
z-mm(Jn=X279PxfX>&p!D4(rkwVRZ;R^FH9*$doECA@xLsj_9*5!w7q++QDHyMwDbR
z{7)v;?7bcM1f*+5o60C4^r~=ksnMuAcD?;%P=4GIWlf4_9oO*wyVIeh2|xa`mwSGD
zengy+;#eda205+$MJ#IH*RebM_Ha!8{bISMI$blVA_(z`Rg+1N)MU4Znf<8SoFUUm
z$TguguExen?<qce3_2R`mKAeC)2zkg&;F8SmUylUqplgSc8Vr$MRCiXpTY{NQGq9U
zKmojkBpB#hGxH>`5t2@{`T_9(?M!rK^qan-<TtA5Eqm4b1raso((6Jw+~^qSxU_bk
zsWGR@=j!g>_aR>-Iw#pv^wESAKJ$4)o?p1pRvzRLm%!Ry!rEDX@d#71W+<d5a3BVm
ziNw6{w8doUA{tf3S*tdVwt2*XIrHiKk9=$SmZ0UHdztOTKHD_(uI{IS+}$72RcZ0P
z6}w3{n4&({Y)P)qjXRH=RnxbN4qmrDBu)QNqT7U4rHMI+Gg*Pk)G{f!C{w_utWRnc
zOC1JItksa;z75-MZdm2+$+KbH7it4r2At)WW~WF$x;f#E7|&wE*K`Q*I-VgmetN)u
zbH~#(P3Ptm+^V0HCW^W}9q2u-9bml|RzSNf9ze0n_vzE8%a<<~!^r*kg+l1NhwnnU
zIptzoav%lF%p1CP&}Psbs!${=t@)F%p3=8}?bWtKdyq$@iH%n5VsuwBEvvuSOCg5X
z+niKG(~>qiMGk?1QFgj+eI@okZUADXodaR$P*6!Ho2Gx)07qIW1I;hFN3p;*bmxR&
zw(WKx*GLCLv#A^7DDQc4H-af>*YYZTZ@+Ejr%tw*$c$|N<6T32&=<b_JhFY4^fr)E
zI^8RO^8%F3vtHtNW}JTSHVjYtNfc@Kt-S`u#!-(&u}0~kGN)++1{i%jgf1Q>$bG8u
zDN3^*P~(nC1IujQ>@QwCkW>_;`Lp%JFiClHF0Hq7c6Z)vIYaoTuxGHLRH{Upv%th?
zxc8<h@~qMljbq9TQ#Qt)ZLO$C%d=Zgt+3!|pTOxj)>bwPu0L|@um?w(0sd@hsT8S!
z#sz(V>y@~5Z)Hk*=9@@;R9<AcJ6EiYOGjRIt1~1_KS-D^RGKK2M>1E^l@Q)l4cmG~
z4mA69R<2!}j+)qFMv9owkj2X%CT14P)T`y0HOC1?tW*>KDv-Aw{_9Nkf5>LNEeWAD
z0vDl&OO;QyF7hUK+^PyPOU!4;-bM}(&ehP<((b1Q9Ql)pV6=2*e!eH#3z>+$Acdd&
z`~3gL7NrP2MsqrOq5HQ9TQeG}sv;?><7f>oiPQIE=Pb3QGTkW@CrpF?RF%rSnmJR^
zRXDXZr3<|&X%;Yg!`)ajKImeX)}>1snJ5%?5Jl}^`lZB&Y<~c)yk=}%T&vS8MhZJw
zh}J*5X=y)$beO+MGAhw48OVw`d3Q%$M%o_Mx2b7StLXp6zA;*0@$N-lf*M+Fq|(;B
zdJ%z<nwT=(2`*3AX0*C8XvhydTao3Jkcu9rmuEjexs`Z_FOk;Op%2oHhz5yBc;ACf
zpN0z}uwK6nBHO~_zPxfE9{KKcZ7Q%O`hZ==zSI0@j-1(C#!bI7C~+V;k#TWu<>%Jo
zKC{d!cTt=<W1Oa@y~Er^u;s%<u(>ibDj+$WbI-6sBY$As$-ms!ZR%SzzIo#3z(d06
z@!m)nr`#%ifMT^H!vk~1*`2tmFDTM;_nZ(nKN92zo0rN|)6rsejQ3FG8;F{!>Z#+>
zmWpC<|IV06pS}e4o26rvQ@zx2_Q98)lN#nXQ@kO59c1R>{sKPw=xioa%v{>PiU5m~
zatk;#4c^T;xN{z8JZU_Zmoyp<>9(<XYOcRW@?^@8I5m7->ULv-aJ92=pV-5(7iF_*
zP0H2-K693lA-yrkQqZq5kHIr8srnVFUWGP1_g?J(Mys~dIGc$yuKteXA=mUsN)PEr
zZYQaFFZzD=Q+JL0n{@fQ_2>=y+@P4`iV!?%3MFRuCQtwHB(u1|P1-Ds_D=Fp={KY@
zZF`-^;u;56s~k;&1FL}Z1owDVbvPuRt-;4*Z$_K&^>aI~&zUr$hEG$>_@2atp8bWM
zmj_WXWY=Hh_f``3I9X*{AAT*bM()rb`~qWc9FoNov(O%%KL)2@+d{i);rvT)5cKf3
zRgMBI@t32#0QF7jGf1nd9qfW1-PqpoDM$Ay45GihpJ5LGm`kfL7>Is<D~<^cGN}t#
z%g{|CYuk3JLPMM__f9Nd)C~5B-#!-oW%u)hE?r=w(ZUHs*>tzWb!|D9F6Nv2dAjF8
z%BkjoQ2%9h)}wrUX2pt7ObZu$-Tz*Ine~b!$rzkDdDoik$dFw2&co@1Cv_IfSE1qJ
zU#<m-;M|C_Ey3$e%UOlvu<^3~86dmN$_is7rs2myp2*JWVsx<Svkre$cE|3PeDHwT
z87b-|@YA`t(Aw)$E*9Pr7K6<y<vUgStPxLmR+1Q-#Ea#^pY{^t%NCi%Jf`RU3Oz6S
zMl_YDZTC;Qr<)<;<3fuMIa@bBw$@TWr#pE#<w2%WyC3kQvzFwQ@4?zckjr14qg{4S
zi*)R)5nN5rGSZ6a%+GH6dY(1S#zZDr-JWz?1{TzNd-N_3ZR#~(T?F2Aa4ououa@5m
zxqW9O4a>7ySZ37J#U);&cg0Qr4g?84Rwu{huZxA8{C#hz2nZDM8mOA>XG%5&)!J-@
zM$V{jHQ2D0)exBV#q#0VwKi`*YTa4S4vj`7D`~2-f%(mbFoiElH_mZ-+kssP&D5;o
zW+k<0vwRQo&5RoyH09$v@bugZKlTWO0F)sObs_+8=$rY_v1fE(Ikwdlg!Gq*<6hPa
z<0!u8s8g%<j#AbcUh2q0Ov&n;6?yM%d*L5SA%<7YtI{>SOPQBFG@2X^R@*)*c`A$@
zxOEvkJCk~A)jHG)9pfQ$ka}A)g^~4-#8-AF|Jw7nyX})o-?<mNoYxp|)B7-W^!X}q
zH5N}erti7OX7MI;cP)K|Rov8ym9m1Byd<8d&t^^!I4JaK)OmPaJmKAkY?T+{==w}&
zCIuplb5^7g(;-^3g)gf0w~VbyhQDiV_l|==X2-<%XC$T9c<E{sP`}1@xo}G{z48Hp
z8jTeO9YVGuUcU4-5Qvc@7l1=M$Toj8Gl{?1`8e%eIANyY9&6B=LR~Ho05Eoi|2%P&
z(bQNUp^K&Fhz=nBnJS7MNVQ;{Y)!PXw-H#1yg>Vv1app>(i<vbbzRSobX`8w+a7o$
z%HYKhefn;_(!o>q^dJo`>@k0}*X`kWpFj6TCEKCjl84>w1aYt{Ola|!k*-x$uXMQh
z9rQh)W=(^L@$5LiY0Z3<0-hQ`EO`$V<EC&xbnL?wJDn`u!X=Erfi&X8W&-W%tbfR>
z+m-J#He;H93LQ@%b=m;yoG$|7+d$*<I|y3o^3%%E&X;V7AVCBr%QFpF9@w$nru#tC
z#~OzSI~B5XZz*lg!6c8loR5~vT!}7Jrc7-tay7&uqjs_^hwj?1#Ei5z#HTnML#e?b
zZE3q{Skd$PWE<&MId2^^{o(|+rfl{FwK@5hINN3-gqELaM9zwX6|r;6sfL#VrQ(Ll
zWu}j6VG3lj0Tc05nZ`O2XiVv+EQ?3z7h3fHxXKJ<7hek`mR`ZqAoSesQMJc6@^QA8
zJsBw{m*FQ(gh4H5_xlucA`FbE{}M7t6#2dOgN$6_u%<;KUd6gYcl|up$C3?8+;Vkk
zwSRphoXi%Ay0l{XJqKCYwlS6^U}+i7R&+{6EW-J%tEYdn8oU&(@!aF|SA0Qy2>h$t
zVONqd^a)Wx3t>e0sX|D+bYk5;2|%rGS|{W(a<(8Ep5xacoc#Q}uj1R0J^WWQ6fERN
z0(@+^Eo(~VX%o|TJx-p`dA+%wSx;~I<m*>?bp!ubKqn5P3~#HE9nqw$t(kDMx`jCk
zSJplwb8?a9lx8X|3F^yM`L*ub+lPmGp^wAn=URfTTlr|-D#fIohY5LbTOrqvwlb@#
zoeosi*&Glw0gk_B|Jls%zhzqQA`tn}GFDJ?JT-I-F*$g@d>L6*BqMbl;YjL6C2jc}
z8%&VZUgPRp`dg@6tW2^;h0Tu-nLOe_fy2JeT$+U^%N6IliT1on*HyllRwmdKQXH>h
z!^6x#g>G|QsVR*|G~x|Mlzeu~GT0aKM*2KKKhwu4n{tF;`h5Yvch5|nbTiDRinwUl
zylyn^pX6F)4;(MK;C|O>;XVgH;@Yq$IyzFV5dt$Pn4%&hMV5E=?jLK0raOGN5VxJ$
zEAK|JNM2^Xb<GNVH%9VAZ`H*9o-)e)`Pk60zLbiG3aB1@6wA#~WQ`qI3+KJV+-GsF
zI>Ekx(dO>a?!PMoB1i6zcbBVpQdK#FTU^`-W9^T?6aHo1XOzm0X+c`R9<c$q$9`s%
z!1SF~JA{uoYRd5ZT`s$Pi6jfEs4??+zUeB0t0CTKs^`(-;}kL1&e{dKdlT@Dbq`l;
zW`H^tBlAG9L(@>__(xhZ)A08Sn)4@QyE6>)*kl~1?R|h-TgOr**q0zaxqT4t*56H_
z-~A1XKHmI;n)k#3xEDt^3&-rPUk|A~xJmnXvC8Lg2#*pF!>jvyFSc_^_vkvAwUIY~
z=k~lOYUYlgR&Hg!MXC$}1m3}e6|ZyDtl`rGUub#EEdMS~ndi2ESrz;d7z=ZUy~E6=
zjWJ2RqcME{@?z5vd4rpVGaM`nGt1J;7^5Lk$B;(S{II*f?bwVSrYmQAnoSmVm8)?v
z@~ODFxY`ZZ`RkY64tCBICkzc7ef8`eQ$<ilLuOl%4yE}G#iQ><ZX5YeH;~7>_F0}W
z^rB^B2;H8aPcG)}g?#pB(046coQQqe)HRK+^~$>56VQKX0e-ug^D1Nyy?s)k!$amh
z^{h)M3dnD~mCIOZ&3E+Sk6v9C<O=*@*6SWGAGK=P2Ovo@Ms^Gh4gHCIU-AwXYW=f`
z@P7kA|Bp@n1+?-NrAY7pS<CU(+SJ>yvTNsm0p9;l6dfXMJYnWf?r)K2pX6klrzyn<
z;itLmWCV8ndV%JvbZ$ZU;+P_|yi|rlUWgo_=vb=Tl@kL!X-sC?&Lh!MrAT?5bS6;?
z?>7N8r26*pIa!YfvHKS;wrUUAI`Ub0hAZOtJB#Y#Y^*$KlL^au+}+*%P7Lpy;l44t
z1q=LADY|7=>vA=yL=UFd9MQEow=_~!+tWa#RWF^E<*S%%xRb#XS*sEJX-ahbN=A5f
zra5|NSbFElNON3vhePzy_i=AF(~gJaFP3#6+x*-I`=nU{jbao7A7#=N0CfSzp-$}$
zKH}bn1WReMP8!r1Wz@9i^7&;F{B`auC{XiJrixLSdBib@Ky^Kq=@2*e03B!cb;Ld|
zBBfd2v4~7s(5&yK49m8YA?&Zbcu0>fV@mw>pxYK;<^r5mre*XhMbdx1PMAO6KwF#8
z>eFAJ6E=REG%NY|pR5P+FLY=(q!Zb*6xx9srskm)@b5$S=^`u4@uGGcSrrNqS2slD
zbAn%kYWq*#{q>Gd6V%dvnyG=nX4DJQ8w9!^&ZeXc{c2MH$;k!3lgatz4^B0@cO_Lf
ztXw&99@(kxBNaK9=*gpCz@gH}BeMn0(<zrCDLzls4^iUl)jK+9B*tB6o!-#Q6Mkh^
zWz}mQv{Exc=~w~<{bLF2PHDvYr{Ld2`|+w*`t`{-)SaQiwm*L&sSu8$%3RU{0t~+L
zFW6y?YGb^rvqFzO2;an2?)glyW1c_tI()*PStVzO)9s5{F=fwCKl)0y9B1Vv!I)F}
z=&~q}IR|z3VLjHuIj5jUU-x&*i1~WPPbRL#Ukc2HI199e35|t&a1RPuEzD=0UvV-Y
z$XNte)Xy}|UiN+e!Em`)>x-bdWHApTo`<42DXsG+nx!v)-=mi1sgI#1bfP>d&u2xp
z8Dq(EHVl;5QEkw9P=I}ZX76nMNJb7Q_Q*odL?yg8HZ_@He{=FddDLTKH18v4`tH@t
zJI&K9Y{tFdaS+Pdvw-)FNUAGmaR_?!k&=9y{oF!bV-;z`5nP(5)ZZ6reP?%{dIz$4
zJhF7mMV+mE>u7qKB~>B_Q@no!(sdQ&YA#a*-t^gt?H8lupoMtWoOm4G^rE7PseTTg
z`ly&h?e4BLS@#h=DsXtspY#0qOu&As;$WBFH0a^)(T(4w^G`<T7b)Ag?rBO}qs9W(
z?VbY5n2eU?yp^~GOP}{`UV%1asN%R64UHK?_6h&|UQ9Y?r{@oSo?7;H;*@T*3v5px
z;G{^d-b-U!>f<a<1$G{{3`SDW!lw&{PFG^Gdk05KCh-HR^UoTyrlStet5;RsdPQ-l
z1_r9354KDMX3BrUyG>_)LLeE6&dFZW-tv%v$>o`nBBO<-R*7d1<s^=&V|20a&Vo>`
zB%SqdKN7+w7mAxj4~*-?Y~BdHUY7tAL|tvbZw-Jn$p1w|Qe$<&8n@)=xw)FXH0hwO
zEzgfyv+n3DDn;t>Sia*PK7`&D7pF_0%{xnckS_YYd*uPWW>3`*rc4)V_N&}gnKq88
zzt^MZS%)X{wVmjwG^d089!2MZ?Qpez{v$hP(<;wQr7~bH_$_#kc5hZjbWv@wO$Vk&
z^kK=J+n$ll^dpv2XNRUt(B$8f+=70jArnCCJ?jIrpozAzcV`CY?WUW6!I@-l<hK#I
zdVK<Qz+7TsS?>^=@#ngoiLK)h4uGC`fc%nLO!u#rez7|?57hl<oQ-37>L1Il-Ng{M
ztDo^oGO$SdZXzs>t3r<OEGDw^q{ZJJ+{kw}mXiOCytfQ%vkTKj`P#1vlm?0yD8Y&s
z4Gx9i?jDMJD6T<DaVzfb8r-E6EADQE;10ocr~PKmIkRWx%<TPRU+20`e(@*aeb-v=
z^R8Q-dp+PAo*T=O?0K0)r3<zs)KS$KjIX^YZ5vq!5l=nB{cW8rc)_73I-tlFu10(3
zHuLj7e7!3(C9o4n3ZRur`x?5)XChk=<n5lOhq-fl=h$zPssfK4t4@Bx%Igdb`vzl7
zG!7BF*grU&X8rvAXdgdXWp;-fr~n5}&Gou`GE4Rf?<ym8X1#YxqH{qQEqoEU!5naW
zORS|Px5;YnV3N~tgTw{LBojpsPm@4_Yt*XWv3U(X`F3;iIPS@8V%hb{g*GTFZJ&!s
z<$CCoi9dUcX>T9R!bvn6qy(IErJT&IQiosrtNG6{CQYSV^<fF7>)FzW!*3?-IVZ|1
zDt7WZP-@8Tr{dgvI4Hx1i&;|&Tmit+RE{qkWUwF(UQD&dcbbX_l~{8+Hpx4OKHeeT
z3SpoBo2$>*4`oY$Ol6~sW`*f-*Czy#Sjl)^PSH}Fe@sfD0+Pxfx#Mf2GiK(i!{TPb
zVY`#`yyX)z+$|3ybSFF8Qv*`c^76a|RS?N`bSN8YoW0$~N4J|BI^qaxtVLJVw0W!&
z*S9p5C|}oGp``guH$zXGDwdL~z4MLKjVt)Vh?}b*Jvwmg^(66<+5Mq4h`~|-p6tg6
z0I=K-k?UJe-7UD(bHg3Bx0`E;y=+m>{G66=ozu)t{_zQfTo`jxKWqaIZPM4QBGV?G
znqj_kC0h2pDXr2F0+&>pE&s@D;8}{^I}0+K&QZLD^t*AZB;A&9CgrJd#u;d~50bY(
z=Be9{TsBycm#vrPV1pY~$T&sxN}nG<Kp8;?l`ml7CT|M&1BJrkaEdi}h%mL6SXP|o
z%0@ys9c6=0axp5%i5rQuw#ph*%{>oQJu-*hQLJR{`uUWeWyu+9H8h|vUk^TypxH84
zxW*Y_EgxUu=hG}8&?5i%Zo+Pwp%m$tHP*`XhIUL&$J(*-v{aZHAAPy@bt`1ne~yo}
zK=pcADnqMTItE)kD*mouvYB8~J1(|=c{7>Q9%Ma<?yt`CZDEbiuelz1dqPFe&|k^I
zT1yVl%gF7g0InYY4PGl#<ze5igtIO=o8fZQy}xS}QaH!?y)`WO`0{0VsiZaAgsqIa
zG)W@6g{=o4&Bv1D3Tn5G5r2_Z^Y0~LkWDQw70b=<`?U0}mVE624Q;F4c=pAI*G<E+
zFaZX+{D+Y_h$&f#i%?nit|cCxt=sC(0o#%;;qmySYK?Ud#z`6>E(`6=GU;&U5H{1{
zgRAX~A%9!BZk6Me%t>M5ZaRlRYY90B?snYeC>BPV8uyuPZ+cz&(Jf6)P0`Fw)82P(
zpS-8(<XL4D_&ubUGxa>@A&I0#YG-dpy%OheE9i=(^)DEjjm$C^9jlq^t_J7orWQR;
z2<Q7;T@55Z{d9+M{CG|frCvrxxWOSvrb{~h2^`{@XOoP8IRnWJ5i5?rEDxgmohjeg
z(u?^7(u`H`fc%;=1ltmDT*4kq&5UtbP-7(|>$txZbzqXYczXG)tc=lMHjcB@1tVK!
zLr034JgYMSr_SCUvHsW+pR_)SFxD_}dSJqP7{1Poz1UX6K}Qpkexdzs@Q0Jw(-SSs
z+_9gs@)SWp*e<*C`ayumh^l(BKJW1HF1Qncy!0d@5~obxV+nr1Qqz1bV7cbsKjwqL
zhwtnZH^!Ttj3!^nk0;%bGW9oZBkT*NGwq|TAxj%|QY{j)k=x117TfM_S5fhBM}y8S
z;{fU!5>1u>IBn78K$uC5qkQLjbYu8)h;mLLmPp9OJ#Tq|o_giQ+@uk;$fq&&2R*TT
zl|HOBI=3BUP{Df;t$2Iw)Q0k3ps?&Jfd?U@zZ_{9c{}RBCRgq<wbLajXJsYC!BtFo
zfY@_9`}^~vxAVq&o|lXhXQeXIFA?c|I{RNS0PDuoGF&?K&~L<`Lq~yw5!7g+SrGZ`
zoGN}t02IIV3t{?4_8#g=3Ce)2X7|jl(1A+2sp{uOcuxQ<7%UhfDoM(ntujoo;Kv<T
z2YQg7m6{c7rUG(60~d@AwV50fZhrgk;V#3vUUF49Z458?H?0NKl-!bItI?Ik%4+z^
ztyAKH<XnYSLkJeV@-N0(l%?}kB_%sQr(<(lOO(&n>veOyhlQ?(<v*cL4VBat|9gi6
zrWT|31G9xDGw-7w?EbW+w}yz<b{^9Hy2@gFF}YAQsCU->hheByiicj}jE8CyDX0AX
zz3F7>K+M8wV2GmSY6y?k3lu*bwI;b1d~uU+xVfLDed(}Oku$Ry<&K3TE}k<Dy_~}O
z-nK6)4R>-DA$og%WFj>>9#b+)j6j#6XN+?R0lnIP=zfiB)Q9>B4cgyON@4I3pK$2b
z>{7~t9E9SGz+|NGua7joUxu01HdHed_*%7qg^01~$qc#TMnerXPtF_BxhfURFzSz-
z5C|ts+bnMASq@#ywZHX3*a8oClgfeb`P!P+oFhEjaC`}-=#u<|XXnJI`yx9gZ$Kb+
zLVpe4Pu_qu#+6#tVv9IAmSqg*h@c`dF>&aI@B7Kago70_Up#-m%>zV1j~L3m8^@yN
zBtm&=HPqbp=W1>ev4J}V$!(^$6ZX#7tjg&r3m;(0wOmF*BsC;}+kPEmj`6Wc9sUEO
zL$W(asxN;FEgd)K{7e+Fm+A#ts<k*o##+s-VoUqTZ>~Sdd}zsqN|yGsbGa7I*7rdd
z5`@;!ZWD_%v%rk4goTO82ggs!la5ttX(rWY&>Q0`)9zW@I#)Iy|NB~U%#F9wZ}HBB
zM8t1Gn8LcJJm&{YuOL8bF8ldD8PZva@`sgyuy}MAA^~XlE>GKT^Fgxz`GY0G;)DKS
z?qM3o>{LVd(r+0LO~BIasos<1q=kmMEwD)`Tq`_9XWIBW+kGKt`o)90X1RMCi@-Q#
z)Y{!B+e4g`D{b*`Lb#QZO^iFL14gNk1_0P^@cJ>Dd&ec;6L{&sTI%5Dv^`~K3jY|L
zJVeVBJnsQB_MGj64gy_mAw@<PUojSy$!FXSXGPD`FHeUnyB3~^;Fr9>)Qn<esVFA-
zU~t?CbpnG+_V#A0Y7J=cl@-UgiNzU{+dPCnH-a^KW?|?4sbLNr!K@Pw;P2(>t0Ga~
zzWw_3y_6tUDp!RrjOW3nX94+F3vu<`6yh}RJ@90EtK7XEx1y|kIW+FNo9D}zD(M6K
z2Y!WhT<!yZ6L;Mo0#kq)p62m16{F}<?aq3?yk>P?U0h|HijtCmfQuluY_pVlthxAR
zO!t~cRZ{U<^FDmS2uzm$?)JS4Uz!Bvi3MV7X5^&vnmDuNyy!sA<4!{+pL|KSacX>G
z!pLG{^|!Mfwc6<!=v!RK3tgKo>Vp_in>RWG)vv;tk%^weL4%8069V<8bbzqCmg2<J
zOodBwd{ex2fi$N}ZjclhY}lA|GsW^tY_j8^rS2gv2EqV|jI>@PWPE^qJQL4Rk)YYD
z?+C*NMDF5~`eIHV9RA5d`K9|Iv|KeFQXf-8t<(ejs!t#*D?6Q6liFNL;6FMt^6OaO
zs85Cwc9Z+@e8DWS{2eh=g8%f@>E2)%jEJwbd+ePJ^bP9DGyDw$^|x_!R4?=igmYDK
z2~^5CCZ6F1OnMJ*hIAQ3N}RU;*^r`wkQx%3#~(kR1P}6Pc^CO#{}I*h?Z4>yF3K)U
zdih6_cQ1DG&u}EnqaBguh5t);Oi@h5PnX~L@eP{Aqk(_aOEjS{AK;&4LsWIec=J#2
z5SoHv#y{zXXx>DRMgQ~<p`lF>VDx)_$>*b?r2H)MXQ<IKy5GKiTc0Vv63uTQF5CU5
zGb+91>({Ttduzz5w~;<RzL5YB#2yycMgiTzX}9~$MWQ|hEDHY{|K38Yvyy>6R;p@T
zPl6IVSE<*!Ooo>EJke>DthX(vMOP8(5j`7UuXxs8*(ZM_gyM@(o5~Bdm_(+I26~l5
z`SX++kiMoGb+j>c3s=R8$>~+kl%p)qt8+W35yhLAu6!Jf4aFZPe5BbZ%K~m-V)8>M
zKLy&QLnYNL3WpyWE$T~_hA{dQfN<(QO@A_sWU1SaZfr)xt2W8;55*)*+U;<k_S~0}
z^e1cN8vUH+_vEr|*Ok`5iz3sjGdoPAk6>LVWo%0lv@Va#(30Ofe5-YZ%<FhzE=tXL
zZhieVba%UJ&}A{uNOV;8@fU7$$7|>kYMCm<Rk$t5(>%0NjaQ&w+I7Zcn53{5C|Rg<
zsxjyp-b)^QD9|77^?Xq`UOUWhW0gB?BZiJc48z34^w+P~R>Q58=rvRA-7Ma5`%Q*=
zd*ORB^YPFp5v!u8n^DbC)Sc0|%CFYKcnGIA{J!3C*qtv-9ZVhLJ3V~Jg<EYV`Z%7(
zoNQtp@-=_{G@A|7?7H1r4j7ylN8&Tvjt%N^>#vqSA$2!pFH2C!eHrbH@p6&hXede)
z!r2Q74^8El>EGP@Hs^+G58=%^+#>;5&#9!L-V=8p+~nY-wO|J$yQ5ahLp?Ps93wHg
zq&Hb5_C`hNuCCN792|5xl-Rv-nx-9MZ!0c7BsbEGH2G2hxLvel7IC)53*}}4Ddsm)
z+|wfa7fZgR>H`*QO=H{m8?SYy83}Rc8tl@jB6RH=&i1Nc(@R`wTGx{O{jJ31TZ$(w
z2{w4Cv$4$ak|%gpO;gZ=!aVz-b1nB>l{^{Rc=lvZ1H-bEz_l^HbaNUvQn$>x^Ey$}
zR_^0&inY@Lx^>?B=0*2j?zRTN<JzT`M7TmO?z)lO@}=`lL;f5?WA!CUP!N5vHD24#
zst$N?xIEL(CH-Che)%r+Hg;gDhC%<bRJ*BL5eo|ZIl8_nYmIN04Og}nzX>m6zUps0
z`*O&0J*zosF==`N=1ui&;|FGCg<7M>m$jxSxM>ytpgZxLamwGdX{$bWsx95+wVwTT
z?Ep6rR+V0G*65)&lAzI}w=Wh;4LAc$@_5n3MkD6{EPSO;adXJDjHkS=reC?8tS0!y
zkGE-G`NmhJx+Bx1TgzY;D*|!>3b_*nfmB(%Ui{=h;DJtYNP1~>-DFL6M3i9_w=8ar
zRem}lS#cw~T49V|uEe}E>)KjOv^4T*NmH^Zw93L^{9E4BwnG=KB})1sQZHG7Oq*y(
z<CnmF(D3>$Bk}0%ceCZ8M%T<_GUVS`Hm84kEk?gq^qj&Wjfe+Ci-Aj&YH9QUBN|Q3
z>FTO`R}1&WyM~DsEgt7#N9Os-Ah)Zqw@->yB*fv(u|`G>b}<iQ%vRxP^%X$Xoux&a
z*!(zA{`BbOX~g++)NrF6$`7go><i{clb$`rx*KY^Elr{FN&6P)P|^*Ztu*dPBGb#m
z#x*|Zi$d?_CVovDf?EPf{mb6;^YoTlArH)J@kE<u(lVEQ-^6ENC{>%H*&MunLVB3s
zKD$%5f{EJb8p6MfZkv|nT2$_?YsR$7mqFUHhEs?bX{dpgGzh4n2NpcA*^{AcQ7D2Z
z4G-*qg7;+lk@r4j;h2mK#408mTLTiz`@`yg@0{2x8=hP>cF5A*9jl%)?0l>p*%G?Y
z688U@Gql=MNCA!G?9Fi%Jhxt@S_MQ_n5J&asg=2T0C(^*nxKXPfSR*09vA+ATZgE!
z&Dkp+{;*K@OoyqT?pg!S+a|r{BdVKCbA?&i8s8g5>9O$(0L~7VF2C=y6<4l{pda#o
zavXLnrZNZ&wPZeV1suzW#Stxp{~p0#*<+*Ix7t+#wh?)Za?U!$A3g|p9;DQBsYVO^
zs;n4{pbd(2n}SqEb!Jyg-|jk9VABCfnP$?W^2m$u_okLbmMg(g*nqn8&sx|3#37%+
zNOx}iFR`}~@-Kl|uGXMnHqSJII|XgaBZ~*Twsc~ZRs)5CmA89<358`PrMJ$P_eFsz
zpt3z>904C#zn(amCU%@mm3mtV8aE~3#buI{*F842=dG3+`EYx2N6ZKr5s|qavM4mK
zFcvei<k!Z}ivFlogHtX45=(>b-m5wQt$L{TxMw?rgj56^70T{YfY)ZVB>T=uf$oIO
zNQxfwEa}~CXiMqpH6;T{m_OrT!e?G<^)1olMrzS3CI6Xkn7WvZ4$}*(LpSzEemuUR
zUjxeUpVm%=@Wh(0Z!oP5ZMVkQwrLDc)bM4>Df2fb=DQ8zTNKi108fr98_qs(@UaTA
z6o25M4sq!Q8|_-FeP;RCJ_qrjJjSdYZNhD0Qy*RV=wDWWn1?$s9%^c(Fe+B+_YcDv
zEa~E^dbv+d6ND?E){3)=90v!Qu=qc|q1yo5H*dA0=S&I^31x9StmYG|mo9Q&G(d*3
zr~a9k0UqPtn#3(bHTMNmLq7A$Y97-rU$E@Gy22PY)Rxbj)03|~G*aXqGHY6f1T>Dl
zb;PHq85mYiJ0}-So10iy^NWiu=EDis_}S<Tl+N4u(?m$#@U_(LZHo4gTKF?8PmZb#
zSTj-3f9nlF+<$7r5UdxHPprAik3@X&Y&_c3fkJQ*A-kbO{5*^+CNuE<_`fgZEi6$l
zIwXp|Wad`ef@LadZueKhnapCV5`s$wEYv%T3Yh#BtB#^F{hX#pTNgG!mdjes$X-(`
z`pxwqDj)J#rs<6$58wCx4=3X7n=Q8{W~!HZ?shegS_YEc37&E4`&%nxN5=WI{6*}=
z)n=sUW7p*K%ctQpGSvX7En1U&*RPA{bKf}r3a&=>OsRd53IN=B6Zqdm{$BIm7N7r*
zLUwFuTvE`2fY)jt8>4UceMNP^wzlaz4vbE|w5c7*76%uM$o)FDZn*W0h|#@+-lBz;
z)g_QaG|vWFlzX_nE)8j&3Ib%ulO#<zQPS))Qt(`lzsUEo?9YdYnwXqKA^R$Y)yO5+
zj;k5iFPTB!ba{EACBd0~OrTR6hMnoyy%r~q#NO8lr?A~V2)erB(lMCOvM4E3Hi)i;
zTUk^|(#hqE(PSu^9v~vH5?dOcY)o+f&ak~z+m<!5A=X>}t~x!{wUtp_Ag8rp?A#`g
zoRbshLldjfvbOo_NF@lLhseZ;4XkuGDCCf`SA%|1QS{)>y)<L#ni-QT`8S;;g!{Tc
zj_e5^Dd0&1#>6Lr#M`CZ(++TF++cWI+dH5txiaUA{C7Zqa)13mDf{4=_}*Om_X~vR
zuH^kDT|+5XTtR^=EEwAQIA<}~EH-;PyqWV@bxtn3IRF5_T-(uL+pa8Sa`aQ61Z}@D
zL3cS3Sp^PD<AdB`u6w>)OshIJ%fc5VBSjS6!sWj0eItCYk3!3YU((jdOU*VTC?PP7
zBnUgvqwshGH{)njby;t?>3tvbivLoy!gvN;!0UQxO)D(5-a1yZVG<N$jKzDxe&A|5
z(Lsa5+-frYD6<wXA}DZ>IjR>ynlCe-R;m*7hBhdW2s9oP=3-)GDGTmCpSqfjP;zx6
zscA?L02y4`6K(I!e@3WyK)aE*nC@jgZ!B&CT{gm*oci!79%Q6`M)C!^UL#T$y2DUb
zl0RI*OUH+Z-<vxH`zJ162}Y}0xEoTN#dcT*GL#>Gk$d_i9X5~o6*ss?U7FHS=em(-
z!d%rEqrY$1q)oy-t|)Vq@@IE{f1VBc;FzCF;mh1sePU;dI=LaH*qaP~?uIz0#oeu$
zYG=JSOC~;YXZ(sMkFB*m=E`n9^+&BeGhS6*syERZ&)6@2dfkzK>+~RLp)?TIg-}m)
ziLl3Rv##AnSn$+djc1Ra>$N6F#@cR<-ETj`A;#PWgHcG$X@Blc=0%Gmm{5J{#o2tT
z#|C4hP``0j-F9P8F%IiV`Vv2{wYzY?WJ|wxCXveT2^jgW;Qx7T)89CeLLxT1@1`|-
zZ~_>--gB}heCV{EBRY6&<>E2gO?s{zzHH|H&9;_}gk!>eG>KU6KFz@{rqq?6c)k7Y
zO&$-Ja;&y;Z8>&+!WI4i63|TwH9ja2bU|nWxaX1s!V2WUd_FFV&m&yDC^0bI-%X4j
z9E)a?s}X^X*3HGV4{P<}$XHgw@CSb{@$b*Z*)Hj3Cf0^pL}^$pVUu=iYmH3fWG&;-
zpME?*@b;E$LWkLdC|$iy2ikI#AbmS*c@)VL#OsjH$Y7NnNif*`ApNt0x!}+^3s4|c
zhF;hA-@*UZMm^o$w4ungy(FUQUE`m%cXPg(5awld&ZCPOSGJ9aS92d5<1n>fEfAex
zg0kr}YZID2ZGGX$B$uwFqIRlzEXI&FGZ-Ei7@NxPKBcy|W>9n$2UwhWW3z^LTj>)R
z*a~UAMrC}q>(we-XjWssN}b)|P@fT=)Sr<*CYO|u`26|vufP8n=mFHYptfjhlhMN&
z(I0V_i`q&_YSlb$b^<LLzkdDu@#AL{6wqcVNo3i9wDb0E&am|*fk6LqWKyWa+;zpy
zzj^_}UJ8>&&|n8O&vEf^R`XTdi<!Y&ikfir1o6hr1D&JG&e%CP2y66o{tysoI}ygY
z_{@|XHW#Fz$R`|`VyIfE@SdG@{E)k%K|5sbSv-U)tD?=Bql)d#%jL_?>ALrQFuwgG
zduU8xAhjpLSodn^JDKR&A>hyDFX4AQ*LK|Q>ezP0%yANBKrxTmg@xO5)wR)exE&ve
zh=}->o-KJxNiTbvf8z&f#TI!*{QlxmD}jN=_224~Fam!CbJZtLajh`Ve7f{Gej%?6
zDl{muVV|G;dAT2HL8+k&--wDe#nBZe707-A((hh!<(B15K~2}gpIJNWlk1-~*&T+X
zAL;%71?Z!z(O#fHzuoaO=PtTsWJA+nUOJaz!7s68IuKF~nGUtj{xdsh4}bmMO!Q61
zd>tsQqS)|kV6(c6Y*HtUkBPapq%D4RQknHwIJ<r{LN>>myE>N&^oK!G&^<}lNdT}`
zE2BR!Kk{{kNU1)Ftt?>-p*i20Xms5j@}*&JNTy*7F)c~rE_1)}9@0D0t3NyGhZISR
zt+gtC<bQOV<g_(q?|ErEyK9mP;RR~0Wc%TKng9Fps&4!3Eo`f$5)jMR#_hb|T>AJ{
ztNOuUZI2@;>LNMj%R@8~ZUt`tbU8qLkAGl;ba(oIH)7v@n3>Fp>&#Y7Qu4)38Zu?l
zU$w73lP<f^m?a~T8+6UXk$Lo+it;8BBM%~b!+zB;j!*BjmvS4sKPI^>hTj*sb$j}e
zn91U{p4~(K65D3GLGcd1_#{H+)spk_r>S6T^tMA=sH((P?5WhEDvNo$Agr4K8-xX^
zvwT?XT?PjX6V{#!&}_<5%n5i5T-`pE2JJ64IO*S|APt|wX@J1>fqMiT>468It+AbD
zkABwl><PSVflP(*FVNAp1Z5QJ7J8N>w*TQOiZXojyC(R3KyuxFVO&bnJ&ir})ZH6T
zW9!__O*J~@3@<wFWK?V-$^`1f`p<r%RrP5yqae0FX>f#0pK@R|4`(r`P;=YgZ<tN|
z!0R)wv<X!I?btGfP=q{KF_NWCM=E?c(tJ1YmXE~5v3%t>7~iJx(f)vRnLR66%w}lS
zNK^x6dvoVw$=X<Un$qo;gvvzK87+69%iBG1Yurz2i0R4gYUqE(*BFzKEd8S!b1%=S
z0`!ZGp?C(idN8zABJ*NaGx@8>ct!=MATxatlIVPlT^`uyadO&2A%9>hy{NP2E|q3o
zx?e*jbg`5kZ_>L{Gw5EwqUfU`{pOdpjVEtN{2vPd+L4#U3^$Ez(|lUwV&Ko?WbO`x
z$&wtilk;oR#<ca@j-TCUR)J>UW1z&X8p%{Qqe7&0M|RhN9fB^JW|38kQSggUNWIO@
zisFJ?v5Z!yMImHf&)<;(Sb5{Nl92szmvgLq?2-0*4TXh5vCCj~3X6C^Q?fZg6DxgM
ze>grFcTZv)DF|c@aXuhBc#rpbR`vz)+mZF@XQCZDmW7JeXRgZGi5kF0<TMTtxEklh
z<XJ1Xq&6KcAQe8i!LB+{nd)icQDSkf`2XMol<9J^)t97LD|NX0yteT<#pM??BDEU%
zKK0h--#v!O%UJEmGjG_)(qu(ton{7*-PE1UfJVKp;?MD!m(kss)T#1&macp`t{uOo
zr%C!|XEU<b3@{H^T;#os3yiz<ypt(2I}mE4S|mA04UZ|xi_=^`#f=1sQlmcuEpwqX
z>|@(DYe{g71JYzhFpBINB*4{Ohl}*kx*QMIjeV1Qf#J2as_u1>&~44mme>6z9z-R&
z=wYP0xmC?+*;>u*cz@pRQS$kB4e^dZ?6gxRL-nvDD|5aEelZ;&`IR9KUQ9}$v6_wj
zru&|8fTwjO6k1x=EeuiYhCIn0AJ&nsDb-~j&N_viSm;0sjYl0%e|}uI(QJt7nJylY
zJM{+~yR7QEU%<?PYU?@RZp$ss4Yp2vt#Cr#Sw$VSN;+JOj&VTq@hzDE&)IeD_qpEs
zd4lB*dLW!E#1b@;9iIOLu*gMtA+C|*l~HWi;nnbZVqi2e5;B(#e?GCknb*CBbPPy-
z-XLjQnZD%yeJ5>KO}g_n;WT6o30zGK9pDK1$vZMQjOuH>o8Kjwd-(D*c;%Sp;^=m6
zF)*;?)VhU(jE`33TcmfO(UVo&)cqx$YBi;l^lCxrRu8wwWGoR9?jOH7HmL@IW8%-Y
zgd?{W)L$9+2X+d2>`oYr`m#6dhvZ<(GWK_?@p$+@^+YUwC{?nFkn6EXn!Z_@j|sGD
z<eY=;TDe9GeX7g}ql);s&^0Qa@;MuPmCN+79`~nqlkKEGqNQl$X}-X!!&c(JWNgAp
zV$G~01JtCo>?p*iweai#focA;aB<I1fs};ij}%K!s*HVRJ{JBQ{zhBMUS!TQ*jeYE
zUOCN;B`<q_7x{pNq@x~57VCU&IawqM9!0i3aPKJUy!1Lh-v{SpP8$g+;7s~g-qwpE
zIJK_jYbL+<I-M!Pfv6CR|2HOpuI2l+?4@w(N3kCw)98=2cSTeCs_pFYTN`R++O*$K
zl`_&vn=LF>u>gu=a1^~=&9~`C7_6sWCptI{+#xK4Jxo>*)eFU<eH*#+ks8xGB=j0U
zI=4vjiHQrGcu#|~K}#GeY(=PDnlNO+)zcNXuabe7!Vsp#wYAhb4mB6^j;^rLt#Wdt
zXUz2^&@<RkB+_^J@@no@+E~_rr1<3FW#a%Z8QJe4{odBAUVgknW8%lCw_%dzaJMz`
z?f7NBVRVa(TKFYrrYF1<#~r2hrOXPL_JI)RWOu3hv+D6)eZ_Zjpy1WDef_o)ZilA+
zpH#|CbGBN`>_An^{UzUS)O|Xb&1Ojo*3481h4j1z(B^JB!F8_ZNu#HHYln8!DnJDm
z{|!*T;P?oa7Ps@mLPT_M+0J3*mxT!$e$R;GqiRdFe#(r@mfqT8Ze!U;gBO>CtQe{~
z41-5f@g&c|e39Xk4YZhj$x=b3ujDwIKZ6k0h|OYW@v`!AUY;C?tD)rjuxA$)2A@Fd
z%isGaZ#sRT(c9~R{WW8Gu$*U0-t>IAk>g%{x(zg_5ArY_cs(Z!e2Jmibn&T56wBTu
zF|k*Ah`#@&rXOWw&v+#&6Q;i;*<IYTO=Y3_Vn-wsx{=%OOYgQHNL{v?Ya&rv%5b{V
z$XT{KR}j>5Z$hG;kLPJqN&y4#8?Ie|2!~(jKjU%Jv~BXGJHMurlO@pF3U**`7_F;B
zN$OGY4jkP7Nb1(>x#s+~ww_8?cQq6j_xzW?LZk?B7aov7aV?vb@SP`a+SfBXYwrb)
ziYY2u8%ox?mW_uq8C~vGCL>#8%_a4($1AgY`(+3!S6%_`?8%|a$`E?ER&*P*-r1mI
zpp)hyrnwnW9#ZoGsaUqdQLNH@h&1^}r4yRhYOG9&cQ)*0R(y`h5x4?~RMGTID^V%$
zG?nNtp`kswFpb?1<i)09y;Ab!HC6GGg6Q0uOhlO|b3!2>4r*{2TJ*tDDJTNWSw6Ov
z?@kT-n9v}$OZg^T?wH_ib4pL4-4lC9wG(eW{<FxTWP$mJdb%LY#;&wmZlShsfJApM
zhFR=BG3FbE>ucm`4{t*laXbWiPsdOH@uOOIw6H4#GTMp&mA#=4sg$<aQz6X$hL1}N
z@pR(uY~<7<LN~E$^x~~~f2=uGGAOT7)vD!I(?mS>>nH%E9GsSCG`K{d_sK#OEaTSK
z2fHYv#5dZ+eQ@LtVt&o5szI*Xrkwg?;u*b-X@1LlE|)#GwAD%Ne~$L@F!E$;l@_?}
zh+_kdvnnx>X*7PwyqvE%W5=BHP}R2C=rpcFq#09o?Q5`e`I!nX%_?N9vyRR?EOt)5
zAiR=4OiQih&s@)0S|BYR%U0D_LVQ23iNWgQ3zj7Z#>GOKoc2BQzAk+LGDgGiF#NJN
zZGv5s;?CJk#&1{nQvKUE=3M3DATCT8+ghM|Mb~&Nx|l|V^(9Vq&AVy`4)qA$*&A^|
z5p-R-@oibf-iq1oxP{B&#%Ehrye9@0Y}QZ_<Np}57FinTsls(TUL`8Fhfsj8d90JB
zbQe_w+#c3-Us*#0$O8fc!91MjS;>r>Df}$EVG%QlTw?*}0x6C6N|8bf#g;hhnPWZt
z^8Zd0C&r01#X2l&IvmjO%KdifgeS)KjDus9&DB`fd|Uf)hdI@0Z;12-+&KFB?lk*h
zObKrDCnE0`GF!W8IF7KvUR_2rmA1y#;s{~m-lT1bGrGpOTjP0cJhk=LtdeZcbr_z_
z%}2+JJa|0ZlM^O)6u%#%g=g(6Vp>}?HQQhBRf#_C^z_L-LquR0j~*XKyvFQom8o@?
z98+EvD9o%qP7i-TkELYU&F|+(Z;kCtnPj5}^@>}GQW~$rcklR{cXQ5HTGoRWx)gVM
z-Q|;>iW~rxUd_eD_4$ibt`c3WSgKdE;lY*n66T!euC1H$8^D!=!%WMsU=8&d8!>5^
zA&HMr%gaOg_aN>&;aWNMi!nRcDe53A5v@U{CVJf8g}I>le633ChC$ru)2~lPonh*<
z=1Y^XZ6;XiX#*x%hv^lsQZ%4Y@#9a#F&G%BPAuNzA4fB_{CvMg-O+h<x5t17^B6i-
zla`l9?Mu9`mSF_Bb@&w-B#P*!{*wH_SI>k`!l{<6_a|V|d(J>}y9-@%aK5ES*65>b
zf$ktm`3xI4b(ga`n94eD&s7gH+dI@9+{5tuftC1);eSHE#u1cDEf?p@QPT@1y+3OY
zLgOA<f!8F2THMU$*_V#}v1^a~{2JP^mN_`#m4H9x#6yliY^F#Wu1+fbh{GG@yaIQA
z2+hmOvmBp8?IbZe%*@P=T*zDs^W$3Y#@@L@t9Q;`otC8aPbObAu_HHi68`{Uw1?o2
zPqak}4FSbJHj!Pc)60)g=LG)#+$Rfs_Q(0>?~Lor|46rf|Ig!#lB<OP|NI&n$J5|H
z`I!G!i*7Gx=nqpx3D|!_|0qZ((L2G{_c7>{_IbU}P8K!d56BvZ2n+u(bvg+G6t)f9
zffq(-zN~lta{>Q}aQ<Ihz(jSRv8EbbtVw>`Hwj9q+^Bh-L?y@`+kU5Dl$WG?Q`W*I
zbrrL1Hkm3!EoQlScfsrl3qXAiKCmXXY<2%*+>k8(^FNSRfiZY&s7%8?iP(?syf+Q!
zhMJ+j&!}=B2cL#>AynXDrm;-2ryVjBX7yE=JR(1j3iSKBCm3d<_Kw_FoGTB?JMHEt
zUWkMy2Wg{7hKipF^XJ>;eNip_Cf2-89LhiH>>YNAS&N$j007!`Zf*R#YS8MneW5?B
zr5i>5{W{E$26qvH;{3~Q>31T9twsw((#;JYIl5rfjTglL8f=Dwt({lLyQrt``Jdi>
zD33mhz0+Gd?l02KCpDECu;4y>du{kI6<*|WI~&&ToEGkuV6i>MK<VISh@*H#T>|u4
z`o$e@yx)UisZRRUB16nL)8d?iirjv8FYrHy%>8PcUWBz<4@nDu^5!{k|486kgQ&fh
zK~UIG@T)fbA?wSW)w*ykCw9xdtg`?oo6GLvcMhF(g-TQa-9%oqJ3T6di2D9~Wo3)?
zkDR|AN9VjWz*W8uYs#E9Sl_s_#P@r1PsnL@%m|H8mDD<tPiG0~9Q2*upKEhD0gbNM
z`<J#1_x9FvGE?q>n<A^6_m_Ff0_<mET8R<Jz^$(AqkCl#=N7k9PZ=hO?4djnSKF!@
zemq7?mXrOLhZiWZUy3q{v1$lKW)!+VYT@O=j{FBg3#9IR4dbe`9%|SmY*-kin<2y-
zwRTs#n$IpCc3g~7%uJ=<)I6Eth}Rw#n0MX}Llm;Aeqg?Ve$Nu`y)bCibTCnG)uHay
zF5lN`YRFF-;-0tMFI7%t&D9yRx(*6!umeU(BR%p`w_LaUEasQ-Qm-~T=flf&RE%Us
z;G4H5DHaz<KTVo+)%S6;**(zOWcQ-|RcS#|cRI$KHa9j_lV8E;_f<n4SM!4I2rB0B
zKRWo`;(wuo%k2d@l5*CR#z!~Qz%EAnCF7hv6ek4YrAk7t`crCK%hYO8pUKRdmB_pd
z>5au*Y)PRYWN(d#PR$j0{4fgJQyxxVIoF6C1FA`%&E2z>Bv+-zx+CHE;e`)ohhlO=
zXH;IAb&w-naY5c<t<r0mG_!pBqdIZ0gV`MC?m>Tmla+xr;x#)WegoR~caU&RFLDcW
zT#lHTY)7Y%q5uyy9oVC(ZE3Fo0B5J=uHmWP`JK5@anu_(B`;X3c6>NALKXL`R4xO9
z=v-?wIZb|wP7>(T;v%1YvTAm+KRd@ItY`d$TGRIY((>d5EctW{7i`t$%A{vA8@TaI
z?8a$o5Pk7Bf#x+Vo91#i?Q7skRoanDb7%rP&>*&w|0>wKdv5)%SrTQE8tI6*n|Iqw
z-fFv*z6psx^y7~&PJ-l!@4sioAfEM5#7}mgCdJ^57YCbT9fa}4Efto|9~{f}xSKQ2
zIvl$|w*&rIm;}79hucv>^5XNRgH!2ElS(a25{(%~f48~`D@nDHa#prwLp0-lyWZ0j
zbe5N8EK#BU+@dGVp#k$)G_$o<nsLe`)eMc{q}&C!jP&X!m+Q|o`}jV%Y&kRcD{@Oe
z;wPugU6DtB)anQX7J}RHxxf1R^8{XkbKbjRvpOLYI5MdpLDwHm3bkysm8OO^g&p%Z
z15d6i>YX0*@3?5a9u14O_4+D${j3qi@~%M@5)-r8C|aro^#BF^!?Iz$o4c<-0K4cu
zz7V%>jO;ukEpgw-SqrN!ZFd5bb7fi0mm*-vE<r9}qdiU2#^~5$()7T_CtGFn3G!g;
zmg-lKVRFG#)Ugvzt#a}d2*~?Xj*~PzwjVZU4|n2yN0-s=E}r{PFj(!nb}0!f?G4>e
z2_Y2yKQ#y6b94by*Tg$Y?0TL5RRe8CN)$<N=C$lt;zX*BUq{39{nLjJCl<ZO8GqMV
zj}IiNLv0+pI2UGfs}4Oie?3MZHiv>jlsR7f%|twZn-E1%Xu3~DFUd#bKG+7ur_Thg
zu6)_2H7Ck)Ylq(PpE62Q(gJKPvGS>Yo7@qPt#yLYp`FK<Iq!f;(@xo3h|Qo;teTpq
z@N=8vn}(0;^iTbWhT2I#VxBQlb=d|S!h?Uh=EuU)zXgSn0F1@&c#h-S5TsP+sB?bA
z#eD-?@6NSV9~Cpq)qOTA3%{Urhpn<8r(~|OHus#gO#qR#ssR)@Fggddbs3MQ3tIP7
z<k7_1GTGI`2e`o_z}4U9j9w%#BS{U`LC8J>y{AHs%FE%horYbofr(F0Y0oz@uj`^n
zLco3!doU{Yk@;DRX|5NALg{_WYLQ7?xL8M=vrK(zE&XYhtZsCc2d#+JPyaH1yhclC
zu3Z&90^RW`;R`HXW(=!Rd`G(RzQMam`r3Zu1?DL>M@IRAag_+@Mj-_0r&WZai9DLE
zp!_nJ5d-oAbfMwBz%&-XtXnd!j*LQiEk2o~hp+W1wCi9%)xqUkrsZD2*(>{bB4G4T
zc!QUYY~V11M@pP~jl^toiKO(jTz<(jbahlR7>lb^qe6}ZuWij_@0g+L&ou-6?N!s?
z6MOmo|F9+gmBYS!C?SFvc@b$GLVa^}2sO?r45rapdO)t0_qciLH<|375W3nf9Ni;Z
zo(?7*8QVkdqX&`HXUXM=pOyEqyv26^4$~*24(R-~U1KcBj7olDGrB4Z&oeNGkOKDa
zlq;<Um)yE<>2HK-BDQzm*e-01HJ=R=k?Bo+YvNbIuc0?kRf+#`py|>(BHXlVrUykP
z*VvRcU9GXz#v)HTqrSgB;PH`4kb1(@;dPb$3n?Y&1FojKh4VLP`9L-X`9mKkf9R;C
z4U*{pzT_Pyn4(t+7iw4(I{L0te<fFORhl(7xU^kn+fXR)c1wy_F`q7plN1thkG58~
zucrlrJC6tq{suSl<+TUmA!U}iiZOoA%0rvwMVtc&eLt^9@Ux>epue`-yvvXvmvvLg
z?FE3UJEcA~8CBCYnvT9t4ivoYZ#Kz$>fy=g6}fd^TB^vcdE31F#R{*MjrH5K#rs$>
zs2h>wn{Dm<26|_~w_nN{=P>47!}Vx@r0G2u<0D)^#ZC8&_v!r7ER~g0WA;ZUjz=ff
zX>Pzz`?Z&9hPoQYA1_NHiJ7FIh3hpJ6*H%k1Eo+k`_Z!L{0I{moJWd?51pU(oJ!4F
zf@)1V+a){NAO1Xy4^BRZz}`;`>I_&@1G9eaBWcR`##znw$fVs9ERF&LX+Dr=!M*O5
z7PSHbwO(ncIK##rFYK<#S`r`FOB)VXDrIf1FW>GsZY>xQFP<!ANEMm`iVe(;m%N_g
zo$X4ULz<EXjGoI}w>lcb{fgfox@3iNsLFQdfn%3a3W0@`ynG)kEyTRxf#P7zpxo&}
zRt&Fi6`z(%xe|XaNPRE&oEskETaKeAQ+ik@sasyXPnWOW<Bx|K=eae>9-jaMR&R5F
zxuq67pgYgTytqWX2%cRe78p+<er(tMUpoT4G|m60q&@ExQUzYR@Bv@i5f-$6V7+RQ
z-VO)~WK1Su^!f-c(jJK67ZUjh#t^~icpba(rh++IdQ*X5sE_~OTLIX)j*7iY^YeLj
zikB+Eq2A<K<806N0xuTMHraVu+V~Pz02Ow|vx6=gYGU9o>d-IBj{m}8Fq>GDqE3hb
z=}QGAfSk@!NA?4>d7D$7;+Rbq7gG%|zSn+K7=uR_<23hZ*flvKHfAZ4djCgEq$MMk
z6>+|CmU1h(N{zF|tyWm@iFAGD1?2?$R`GCpE2u%ukOr!4tOh;9G@k7U=L>U(ygfVW
z?F>OlCPD?JU4}pdWQfs8eGlz;ttmY&Rng`FJ2Vf6_;}#wR8nB*ekrnwEcfJ;$D-}F
zzSS=+Hsc*VLNb$&8E&?GOspOpD>|DCa*C2f`rk(qTr_iC>#trSn49OPsIr{+t<rAq
zhKsZlX&br#_}NpP_>R>@t;}V=ACh~D|D-vfb^qy)mtBZrswf^Nm@ei{brG+>@w#c1
zUJk$X<cJxz5n|nVyw1;LyHlh{xX@;%d+}#!bd~hFfSJ5pS+4E{4-e=5BEDapW`?qB
zd&c#O?8|b#tGi)!GQM6Zd7e5%zOJU#!}mEU^S(W0NfI$n#Y@VKkBO#Axth_o)Knm`
z01^p_UI`Be*l~TV7^eT!wA;MZc+Z)cYQh9pIgHWxN|FEH&?bSki~`ovuySKbJ6Aam
zDFA@YvV8N{wrWVU$CR??P=}pMw}Yy)S4d=erX(~n&ATUXaA2V5s<-aJcJg8x$@G6Q
zC~fMSpX6<VQ33~N?OM0qB)^d9d?dc|Z`aV5Cq!=A&l-k!(zuMSL@FZNzmh}8r});^
zjxMvp`1kVPwvC>@Ls*&eSQK1jae!KH`M1~JYa`t_`+T|2WgP=0a;%Me+vw{Gk>Oqq
zXLB5T-w1J=xrB4z<9X(bld|jC7kW$UBi$iCr?P!)Y)`(G2MFt?=KTe&B0_B_Y#BGt
z787#u$@aJ?IoQ||c*+Z#^4wrIzh_Zle4Ee%*UG|fb14fav8L66+s;lmemmm8HX1^6
zduZH#aMyh)6D<*SAwGPoO}Cy~B4Ef<DcPcU@B{>x$V~%-t2ggoh{vBJ_(&*L$9t>C
zILzXqjLzpo><!x~t6BAf)9M@XvU^3PYRGA-ul_^C{O`o`^i2<0ZD$XL@>a7#eU+%1
zXpFYfUM7}ar0E*zdClitWlGn+5<ChK?*CD9Je}<MR);*duj?*aH=&m8y_u;i*lOZx
zwXmVHZzzr5lHSRVWs)zIqIZ^q!)&_0)M_5iPq4Gj_p2_bfi2Ec@Pl-w?(m}5<iTrY
z@}Ukve*e2SWKmzg{@M<j{#P%+->67`IfX(Msob#wWQ6koKiNpr$9WrmIU7`_O?vpN
zCVU;h?#r7&vqGB^iubzff9Q!LISBt11`naiaq0E^oW5mO9Xz}s?}m~hYD0H1{$Omn
z&_VaK=S)&eC3nIUY@zb{#Dy<XVr{Z}v?6mo=nN$6zOTBNdU;)uAScqC>`<CtSlC-|
z^Dn&!1%IJ>T8@R4kWPoTIGPGLDBw`^+)tQ-?Jf-`xv8cA_IX<sNOa?_&c-W}c_dQy
zi1B~oTb>M4m)-OKX06e_-xv_+7c;edrnQv)PrU|A{L^D~dPGLUVQRTM%M`!A*Uaos
z5GT;C>PY5a*zJCGAOE4?lVt%G!>i)I(ueUwx`2^ezVv^%5btR_Hd}=MgvS4ey9#h9
zl)Tc{15rH(fB#EY!+*`{{D%z=1?GVM$`Td2K{+q-NQoFJs=BKOdzbCm!?HJ@vsFL+
zE31;O1>Gp!5M104`?Ff^k!zx}+?5eJu<zm*{~dnCc@Q{O`*tpBMU1}5W4*nIzAys$
z#)R69f4=_Id2-$4_Y9#;ye5pi*(jNDq7l%wGT2`>9Km|b`(pVs&+X<`>t^e6Ly1r1
zPN`B_mE)+qJ4Kmbyv5A4C7(wh*8QtSuu6)pq4`!{TNWv8CteuOX(A`JLcoPTY39oU
zMa_aFn5^W_1s-0YRVTn5tE!>ry5?rc@MZzoA3!1pOHox)`ccW?T(tv?Y+c|ezWo`X
zSb+pxY3RK$x6s5eGZ_j~`v!0Zt${6?oS;p@x7{3LnDeg2hK-@gzXJ+T2?Y}9_uFhH
zk@c=ejk-7Z^7qs{9z*3d7Y&jntH;>|zAN@#jmTz$%f5w=yAO1PWQ`Wfak2Z>IMkQ~
z36!d@ixb9d7BE}z=s|~iP49D#hRZ*O*r+bNEJ`98{7rfMH*EtqpQT)ntIPW%EV&PF
z=i*{cQhN^Xk3Y~9esin_5ie)A#xv;^zCTWNJ($Vyuc{Md_>8<R{iqc0cq)yv-O0AC
z<dcyWeFkqy4ZFkuEQW?^+A=aSNn040jMN$We&+!m3_;qrJ*2%4komnxc}lT-yrY^L
zUUtX(*2EWp#T(>UsDXQ3Xo6uc6^|Q_;TI2CLo%lNZ*e`(=h^Mk$NLiIZ4wg#>2Z|z
zn?rDz^WLy(X~{0^Z&ufBpt>AI9U&c%qzy?hZ3MPyx`ziyx+ohy&iLKff#NZ+@!r(G
zrntwM6lE8lo-kgmnXt}BK0WtB{IO@FO{o3HihmcbeN5%4rXV9Z(02XBq^N0>cA4h#
z)L>xXQ<?etO&1{z8E64)Z2fKT!Z9o*6bz2bzL~*Va`*Q<Dyk<}q2)*l`oDVsn*VJN
z0GUi-3?sz(EUoZv3T{Q1Wq$)Ni!km!KbZyn$WMhXZLNds-sDzg+j9!+FSHv*!Z`tw
zFO^ILN9WixC&@bab5L1(3v|G&>Sq^Xq|%2IQ`Q%kd5D(kc&kPiK6OP~JsZWPhH9?j
zi|Z!pvRAu3*USeN_^un>ox6TTDLLBCVaaZ3iAxrNsRk>DUUzAh1Ol0=8qcx~P48Xl
z+~?mwcYK>J&KNqx*dH1~tS8o+vg!3+FwjcuR_$jd1|Vy{nN(>d?s0oqca38MS#4H7
zunWQYWQU@JN+4b|zn3)Hp+tYy?pCC4-*TlLRm8)Ij=EpIevNT|9HVw^y@hJRn({x4
zh@orce@=*8+0hrc?Wm?`@DgHSSR;okW+oAG-OF;yPi#^`wMR_bd>X<HMf&@;$-<3e
zck3VmidL=JdL-l`Qhr7z4x<IXo(@_$mdc!6JKI<>4Qs|Ss#94y+ur;b{Vv=|0nAlu
zEsx0d_3>|L=p`Ty+XK@A_W7cA#%7DvVIuS*`*^au@|^1d>BI2)rn>ise4MM~mOHF9
ziK5mb6-`z9KZdR&0YSOkPaV5C*(dNVJx7<mQk~Z^apGwS%fqi3DlT$uw2cPvw@P-+
z4-JaeRokX2UtKG18qn2tr-b7YOeQY>7;9H(N}PU}X*#T@9s;5L8a9sn`^S<r=krIb
ze?Mt&G2JbCTw1?F>Nu%cm!*~~SZ5&m)^W0>tJE>$OID>Q=T}T}qlLTs=kHQ}6$zQ8
zANB~^4c{zL9a6QspM+OwuYBjXr+$XU*TU#VP=V{1mDc)dDBxIkYuWzmYvJeQUz7gU
zg?kEmn3lSvJZ$tW?6Y_(i%pg&J$q_8QJ{Fvhli$+vvoOl>}Nr0&%oi`u32I4dD3pI
zd#mld$Gu9u-2|(pf$6EF$Cz<de2EM@|H`<ClWt0?3G11VQ&(Xi_fBf4i-^nov{{AW
zwhxbWd9cNPoRceR5UliASSgO4y6_hx=s{gGQ${Rzy<aHcFEr0?TtX7G@)-~O*x-Tm
z!O|_3R>mk(h}+1DU00qC9il?e8QXlaeH_srVrR%xQt*?FR*Kp;7^3z{UgX%j{Zple
zg_g`CG=fn1HfKJcLbvt6=OQ$)-YX5oniLSHWY%GZdd>E)E_{-~ryo?U;-32@54W~{
z8%p6Gt83z^DkAzlCa;BM!<!lQKOOm}=BHgGRoi|fvv)fdr&{8zfWkgUHOe1F>OGMW
zR>ON34~#u9jJv<p)fPLRzoXy4c(@vw9i-T5%5+0+g9{Yj=lvknbyx3Ks2P64>~<{J
zZL&*}wpQ-4I7m2+{-e=?g}@4p>sDIaP%SKSAgB2)+M6l}?(?iTHtJ8W8L4ZvGcN?D
z?>tnWZC1WeR=<dTTx}8eATpUG^5K0KL7-H%&(FU<3avM4MjW)Hz__bg((ks>lv|QE
z|Neas&olExFHdK3G?QJd{r9+P=4QRcnahYp<GwPaR$rtUora#xU%SwjEmR#?OBlKN
zhaEma%h=>GM4TdY<6B>2+HQEs@_4s?vBRXv8)bd-c~WI-)TVu*zt6ivlVyhMd}zGK
zAgW`0)D$3IN#7_hsX2R@>Lm#9vdV!v@^d7xL@ddJFkisloUYdeaM&VV;LwRFJQms;
z++@4I&d2fY4^|GQCyqSh3F(+rgrED*YksaY^ixe{LHU6lVQ3N&p4|Id?QrEe#zO;t
zLWV!{Vlmc-et?nMJnDSkdS{vErT7#bO+7x8?~RT9+HJcnjGk2k?HvJHObMN8#(P?{
zasiF0XOm>>QU;=3dMP(|I8V<RpIUZ|brcGHh_6xNZ3V4L3F|vSj+e3{45d~18`9nF
z8c#v6n~P}cVY@N({vU_n1DV&3aLz|pY>Dn%FQt~l+P-1O(}a6Q^HK5j|BwxXY@_$)
z=HlGD5yz|J;Ub|^U0?9-UrkEyH)=@RA-r0m&&ta86pa?Lwklii&i;D0r{mucP!n0b
z=cpCAswaHES*Gmw=Q;eQ6f}#+FiJR4LwMDwB%{NFrVz8X(h&f+>pUf)i;OzegXcIT
zPc)rcTTQkWVk@<sIV_$8(zes!j8{b)lETyP1^4j~$?AH5my>MkJkuUNec{{j0k^B!
z#_uz5b?+!x8JX030!beNJc*3m9T3GM4B6h0(tH5(`7LfF-6LXY-(Nw4+p4>H;{%@Z
zdIsaE(*bglr)M1ap-^QGn{#9Z7m+?fi=pWoANeJRxNMCxTy2~Ib<#z(&~$?!ui@%p
z#hdiQ#W~vsudu2f90D>z$o=m6w4hF8fkhGK&MtqK&J(n<xTq^E;A7HexcSEF+4Q$y
zUIB_fWoY7Sr(iGRAm7{9pX=#<j32me_St3ROvCj+h*_SUNl#}P+jiL(k|e3z_hvPp
zdJLz18Il9;D(ud>9}A`~yxSz^amBhs#8*rfWw?ne#E!osRx&WiijBo(l!(d!1B03q
z9n7v|AIKSbBJ5hO#VOHToa(Oa2VrU6{2sRMm?Ru{(hb-)xwyohUSsIHmgAUPPyW<_
z2bLO$2dDW=mW{B|=`WW!#E1D{Rh70<F>}Qhr8GQRMd6>HKGf@!xzi96gR-UFfofO+
zc^avg$9^-U2tKU~TLnc$^5<_Y!~e|j>+AgYQg)k8Qu9p9o&Zgi<(T(Ds-LQ6=dOt!
zo7Oo(O^>JZo}qoPb|-_`GjcYaYvyJB$ni5h*-}JPgs_N6E4bpMT+I9r(%w2Mu5arW
zJU|kXKp?@L1a}SY1lQp17TjF}!7aE$aCesig1Z;)?pnBY{gQk8-G1Y}*WcG&f7GZN
zqt4lNwyibSntM$ubpb!z<7+s1y4%|^1UKk;=TtXnsqee|owl-Vxb~p!<m2sU2Y#l%
zJK3|ui{Hm%<~Cc86mkmZvM~jB{O^B+goG&IB4{8R_<m%^L-Lc`K~rcA*vbPW-4sn3
z5>usN2q3%l7iZh<t6B*k{@kYs|2wt?YHpZ#32aRN=2@%78;ig8<GtXsmE)BS(Z9b9
zyoyo%_h;!>WR-uq@gF;bD5d}RR)VituoJufeSsMhL$L6_el%sMixT>`rvwZ7KT?Eb
z_3rEF>l5+(`-Wn{YHDiZU&6l&BY#FCHRb#B*Y0K{p#_5zv^?}fV^`X$gdtyvf3J1@
ze{Z*)1mn;4`RT{kn9Lk;8eut<U=p@sej1Dz5^?$`Zs88G4D`soae6f8dx0HVHQ*F7
zy5NbtJsx@xBSex~u_w~(IJ)=Jk+{FS@xc0;G@&zO6GHK?(O_hfvudr0Kl~CKL;9GE
zV5vwSOBbw^Q@$6>0q^xr=V@teHDjc;B|}kL`w3ilSg(I*!PpTe8abU`AE|F3UTt5k
zx%<-bqmhwzD1EQk>A~O40|$l@J)kUO2`UOuhwmPd)_i6ZmBW+{vh0U=X+64o@#!CZ
zcV}@ndp#E!A&azoax$5xvGSez3!N7UJ`bPKY*iwx`cERL+$+Rei>wqQT5GYE)5ZoW
zJi0_qyAVfizNxs?769#Yf{?5nc~cpQ-?<=JgNz(U+znQnGTHTuA-_TEeXL?+okf`$
zMZeCq_b&uiss*q(lacd!TVX1HtlODcN7ckC%7Nckm_LktO!z4kG4TlT`7_pI!@>qv
ztxj*}(e!(0xj?QXn;+ISOfX>E=NiBFDsZzt5cCYVel{7Anz%cJC4{>hxfGE<-wZ4i
zIQ|~$RDMq5eXYCoV1$}8EJ(&aT_DsSqp!o;=Ik~c%AH}RCm(;k-JP;P&ej`LWK;pj
zEs&S6BT>&-*Px?4o$Sn^PB#!}9BP4Ji&P|HyF$9xp%2m{oI^dKB0N@<yXKqiM?}{P
zFUxJdV>;pOW{wXxoP6&&zqWeX$w_Ata6rX6del%EbK>BX<29^)BFqyqck_`sGsv!L
z>UpGM-6XCL)fpo+Z3J;9J_MmY)x(~)QcS2qojtMaaYQ){<`Zri&#@_W<2h^VFHK2N
zkV!MfhSroB!6lEp_HpfIk3WZ18-a(y`XRwSeV=<m-MPG-qR1NsrCJT#d$rak+j;^S
z7gco`-UGZGXUj5;v8Lj4e!_MAsdt&<TWS~(V%VQmRaeEwu<eN~Gj6h`e6lHLJN}rW
zME*(o5-O5o^?s8#@vuOjthk0N@1AL1Q1_10sa5N*H0?{j*iB<Z1h2J)6_a$0G<t%+
z{)Bp(8%<3HTmQmuGyp2=-CTc7mkGg?R(qItS3?~gvS-`$1Ksw(h~}5@w5|>rLPv^>
z*&|R0bP@2z69yQ9FG+Kw)4k?RtY~$^mrt&B0E+;tjAjn>!Bw5pR&Ij*=0h#no5B|z
z+K@T-Mgx0VK()d3FyPBLkl4kFx3xd%ZhHXD{*Ael;d>5Q@PrYjhl+;|=AwH>Txor_
zLs>`brx2I$n<Uk8|2Dp_*e@B3Z%;PYD1G4<!*h=vlCVgXsl?v)yvGtXy`3>1@Up2-
zhjh3>MQ*KsjSWK^=|2Bf%Bp|G9<m(lp*H-u8xIwvsZKHfnNXA?#cnt%sYPDQGx;!m
z&FJkwtADj2zu>gY1yXX9S}GfMRG9L%Sr2X>H}3s5nH*Tyu6t%hXMq5?d+%}U1g1Tm
z-^P<?VH3B=j-IC-4KLZR>!qi{hNNPhR}GDDIs`m#dkv3hg}<itc=o5E@5gVu^fyqU
zAJYA^U5=^jF3f*qgox=|73L_q*q*QmRP%CL1W?>3rhdh>YFC+JBwUn_b<|Y8_F1-$
zu%0y;$YE4Ui48Mk02jx>0SxRtnSWj~4>)NaW<8UFU%p%)KjgZ7jkOn|Fp#dFdGT>@
zGq&lnZz~k8ScU&mI@nDgroBr!|3tBzxsA`w<5TP4H<g3<0N}kX$CJY;ahre)tCa`@
zpEt5Koaa-cdzLD%SUb&75UufBuL+|`YNaMeD)88dYh3~_@cH17;1)7}nT)Rg*04$Y
z4ylP7SZ*TZLB*yDX~@fb)F*@kDo*YDLr{+SR2V+~$~vi6E&`>xFWA6*ynDcv7`6Rg
z{t57jpPNrNCGL#LR2u$(1pL}&n5!1)-4iW14aY#7FtZ+k1Mp?3&pnKb!X^yG*GZ?k
zwwsKTEygVB%xkD5bJwq7O<mW*mSn|cXKGt@7RST?+8Ds$!EvEb8xG!?3l>0(c(OLx
z`2egRN@3JvS63y3bXOB?b<fF9G-T%W?YUjvXP(<WrBK_~_udR^$bmW%P)tObm4-&G
z6S3{iGAm;Bww5iQ_Fb*!(ZylRfPuI!SfBqlJT%&ASR6iXoZ+U)S&;3v8HZ<Jg2@Uh
zzXoaeGhJAn+?%?q7i-FvDkC!F#H{TpAj9|U*HuoRTUt%c=MWLH+Km?$P3DnWUxT=P
zB1tQu$cZbjHvx02$3gW&@oWx75~A6y<v_bQKQdT)W`35LbZ4w|s$NiTkt>s^PuFgT
z3&FQ;>25)$JT6zp-GrFSs(U3OyE%ga>j$?I<mvri3+fsCER7d8>v8&h?hB&QKsml9
ztM@Jhb*By$?Q-o@7F%g>%L){okc*GFTyZgVp&i3Yw`(9n|AaDuQdmOs^!ZY&Pse;p
zeC@YVOdfnmlcyI4h@glKG8z;8Rmy*>s8ZUZmds+W%;@Ijtww2+6Iu?pOfJQ3{N_1K
z+U^E?k->YG0Osljh{sIF<n8=uDV+K@G~?}|C0qA_IQ8S^FAT5W@>Yr@Ic=TDX|n3=
z@7o&Kl6SYINH#6$Oyn7B0YJn&W{X-mbiS_Ka~6iJ>6?5$fR8M?X(#lM4RgL^Qx1-h
z!Kqx^K6c&;X^79BtQ4mWS?)fRDpnOj`n&0ks-%09er9sMOb#9%epiDy1V6lJq=|tI
zA<HN(r>FMTa5SR9BxlC*_<~e@*Lo=pg<N9<er1@dhwP4e0zUMh8wA_Wu86O^dsBal
zBy%fSR?CH&1Xa;-Q}q<@23)*!mFt}R2VJ#Fx3%cmbJ@xb_|?o>#2+(+M_%&P&lrO4
z?;oq?ul1=XS|q0Gs4GVseZ5*)2Sr_;IW+J0I$eYXwnMMy4zqWNzAxWL%tb;2&u>tf
zidhY;c{9#tW~3fVkFU8Jmx)_2oa&E{N=|-heTa>HQ?DJ&%nC->-K;S3U6DZ8?jP(9
z$x6q6ce^iAtaYmguf4|O_SZUN5@P`$KNZuFigUb_g1xze6VUb$RLu*@OAp`N_fqLy
z;@B5<{hgK>!*(~aQtv(NVB%+OGbp9BL4YRqmU`zhdP30mV~wgrn(E^q#Y`gx`Xp12
zbwFtrhm>FAuBtk-wT7FTwB>!WagT_lTXc*v#oIRgOHsA(+CCs?D8Juamb7O(q}o1o
zgqv#1TsaJTWYnd4ThGZXbGPR)p)FTD@cMSKKX;oT!gs=XgFdHgD>!?FME1>S)eXEP
zHHbDwlA>aVX(HPmf%JSR^+7r?9ge>!QJ;ZB^q7RMH6}@2H9eJ#JAsn1ruYn3V8P2O
z*+}hzNTL}2ud{kbf<7#>qESGf1iE$gFmsZ4$oy5ghd79RrB2hjVSx-<s&*zZ#%yzU
z^<4Yib!8tg=3FMrxZq35>DR<ctfLYVEC~;UM00!GoGL{mwsz(hd~-@46WqwZ)zASA
ziv@?P@)@L*^*U%Q_ulo7)#qyNB-4MLV|+aSspG+m$LDbw*;mt`iBIhIaB+E|g21Iw
z(XJAw{WYd8X{k(mGta#|A}vZ)J>`&~i04r%{H=WtJ3S`>o0}x8f^hfmd7D911mVR-
zYe`qdMdTgHT1PM(d=0kp^}O6?nh25E28=;E64}>Y!*U8oOU2;Nq2+tt#uYA}LoSlj
zI)v=S8?t<yJ@^p^wfnVE-+NAvm*EBo=vEx^cgl~hJ*_XzZ;HRG<nF_2n<L-Xda;a<
zhZ4_DNxOG7=2OxxBv;~`UNio2+^04_*nhb`Rk2j%G%_p`>dtd5zSO%wD`tB)TSe?R
zUe$im^wXnr<a=>~14G`4dd7OjX1p;0(rb22^flA#7JDO(uM<#R(v&j`{L2P#k$3#~
zf-^d;HV5hI``2NM^O3v^_7tF3MY1ozt1(3|9~l|P2L?hgNW|rdqJ);EIBOpAo_}Jb
zi8g9K5~Bdz%^Hu5+q|;v1g#CAfC!w>T+QHm!M*@<Z|94-EzL>?_CKDwJi-4A{50OV
z{jMLQpe<4vm?R>Vc#VztDq+y^#L!^F*uhk`YyWpIS}`hL>-z<RRM7)oBq}PZ7vGos
z{%)d~-XU2e&Q|#~N9)4${1URk(W)<5Q%XzA8Eu?2cAPN0E!_ZMvhI4EZAQP^oG^`=
zN=n@&FaGj7jPBJ}=NQhOF0UnRLcIy81-a559P=E_^NUPOFtO5K;5WdW;lg)!{X_lL
zakWy7?<?x=6QaNEQu6ugI`6V1o^@kB6`WCy+vwvoYSKlCz4l$TVMh$GqvijLACiBL
zHr`mMR|pRvYbbiRR`FH9FeFJ4oZ!-Y|Cg;4+|_||XaDa3xc>xF-^Kq%aG+5sGPwUl
zhyrqGJj%}~sHl7Y0$uL~C5E8mM_`6X<Mu0)Lj3-(8`P$)ufN`QxQ?ok^Y9c$n-z%j
z28mqcUnuYY2^{}R?fxe+C6(5v42c#aX;gcuUztcE?q(~UQ!-?~mP@`at9Z{Yrzd!z
zb25>=q8P<6VbW~?Pz<?FJAv)p82^I00`U(<+RvUlN^WT2YLRAH3oVL}Xo*}7%9jaO
zyx~nrhWhyno+Ztm)C#OA!@3lv1CO~4MIsvusQ*HRW)zL<i$8aNVs>DneT6U?2?A>+
z2Y9<^1)bo`1Qvo28ooML(^-Fb4*k5w@QaEh$@@k#IG>u&#v9R&DuiuO6)cuo3r`OR
z7UYgl$vV>J2Cm)N+IvP0rkSgia!q#S6!0(1D=6}#zvnp=7Q~R9=_-Ftbj^0J;A_B=
zZA5R<AKhc??`AEt%%jm*Ei26mBG+80-#P{Nv0;luv@)yEpHFWo9|`t{s)T7d$<90O
z|DaP6m;!JhlNYuj%QKL!RJgW)e?Zb+QQJeuDIH%Efu@)J;16bO@s9IzyAZR!Hm2BJ
zLdWB2aer&}iJ4y_1$wvv|5z6YAtnkw3Tc@9IU)u?@hj_x+^6wR5MPlv8{PA5`wmk9
zcbUgV=K}Zs{orgS5)uIK!E}Fk9V6w5-N|KUe*2a!KVm7nfUwrHBZT-3@wO#*m3`x?
z`0NjsNOQchba9FF2L_g)8CIL?DAa=;r0}<Dta>xl>S;`C;7t2E^>>LMoOC6*yr#lF
z4CbH#`~p&aK`-ys5mTLZ`<9R0%D2O`)jZ3&aC=u&ns|RdzaW*+@7A~7oj3@AIQ||N
zAXu^h+W&$?Zg*Aa^W)YXifB81@~k&Qf)Bjrp(vT>uHO*J7&|oEa=0xtopf40xH-7g
zYbK&I7DNA?wV3cEz-T&N`NgjcpE6#&TiCpVz)8(3cev`n&zYw=nwZo`e?>Uq3Vi_J
zC!;*qbTM5mgzawC@GE-<f>f#$d?g7}L?q7>OWNs>WIPiGDQli-dt5eK%0laWqdT52
z=MK+1wp~<FFR?D(A1&XD{B>u%kNr<y@+k7%-JLA1%>)xbdEB_Yj@}O1l9AJSzqOA{
znjAilPzDBf|C<Zo)!{pGT=$AB{xQ!2#&lb!gGpYyhMCNJb09;rL`teu%S(N{l-;x~
z6;?v~GyS1(Mky|*+ic35EA1k89f#0lq-q9Jr?c1;mv!RU%<|%F?vYQeLP{^*f@m=+
z$P~BNWB%dEYkN2uzGU`Qhxvj+2(UWU!4Tu6(c^4wsc(i};qpbpgh@`*wUMCKc}*#e
zcH_t#?={P7=xD&Kc9+&e>z<q}IYSt$FB!aC=*Vd45|kCS?&)wi-asd(LUin_e95M(
zu`F;QQ4Cu6;$u}`yTd{(EAzrPD?UhBk(hcs*GA^yj$SD|g6bN4#xjNS3U}pEKczO$
zOX1>caz@p~%>5FLaeaUSqt%E3Ypya0;E$Tf?zV%97Z+`K<Q4Y%BlO&9rEF}#zoZsq
z2KeR4@Tzul%VNOkrd|j4iF{2MjQ6&bo@{?iA*4384Y`if$i0^Dkh`MHnz?%;I(C8N
z_qn_YGgb?6Z-jULphDLqA*s!aWhq!84$&V>(+=*^K$VnCp+=-;EBonV<v!s`#b~U!
zK@lq@cE4_s3N<{?a7HszlTp9U=w~pclW@Oj%=$C>r!(nOwgn77Q9N^_a<NKz-8vHt
zzxI>UcFm)LbJ?`fI5XxH5L^7b@Lzy>W)t<5<Rs3rXoK)?68*6&yQO~1Hd(mkN)$$w
z+t1CD-?JE?0!`BgF-&B<r4-Q;Azs+i^J#+skQP53Y7w3`l?05<=v27tFai!vJI|Nw
zgdS7!1ei(gbFJ=ZI{fqYA<J<e4&`ukJS3LjIqz}oVLtxKzbhnu3FO(XSyS-zzHAKu
z0Ci(?_q=dK*#PB;8vMUjp*|~b8d?h(`HT@^#$@jBoG|TYg@>9)OIA>~-Qvt%0%TKk
zpX_+zeAC_*`SH*VyLxNQdKyn^bkhbOHchm_3@a{lvU9^ZtzQb}<HMl|B9kKxb#Rag
zg8&jxk#)hVebqE4XRUZ^;CxfN;AJ2M4iaGP<sD;bm+lnP#PHq**PTAdMjo1LHsx&t
zKXGpt4&QnA_L5xdxU?&T!vVv|EO0&r=+)E0Jze?C-aIbvfv&l6DfEjAT;l*u4+<J1
z)kf!(Hn((*t+2^gzYf4Bfdjp_)@4IW1RHGD!k2G>_bOxx)$+yjHQQCkWbtBy+M#06
zo}LTs#0k;%5)Q+fy^mG<_sVyGjp2yl_Uf=->68LBFL8kYrHU*KfHn6`c6I`E@NI@q
zW#x^QgF!E3P?oN1ba5enFtQ9%M5tQ@?)g?N%R~3lr;nPWX9S6GWVS5&u}Dg5G^@zh
zG3C0gmtoFB7@A~BKhE>5Dfwy6C>hC(UtO=STAmc>C9a*7>dVEbU(T9GJ3F-|=(=5O
z@jc?*^Wf+=jm{9MlwA2rdp8ePIT@)y^cnPLuNGAbYL%-tqd!JlT3x)~KMk8>npNSx
z29G38s7zMum(uE+Drb=+qchsTx^JFq!^iMU+M@RYz-jjNXnIj27typ<p9zwK+Hy$e
z_yhsZa>t|T;&BZ2))Q66$n>4-h>e~|nOnt;P}!YWBq^t~A&bIyqvt|}d})I5CyTK~
zT-Pln+t5!2dD73WHn^{ot0jcw{{>UQWSixuDG3n{@}As0x=OX3pWnNxsqZ!=fkeyC
z5-V&S3GLM>g<%Ay`tT^Q#rs2n)mf<SL0a$eQWH~o+w^>4r*=?|sY?8z_~r6djK<|%
z!6#2!sFoEJ<nlCKmBnY8Wl(BE)|(uUC}zDm;`VjhNE<!Ir0&?i<Cu9#z1hB3_-)wo
ztWiz7IXy1;^wHU`u8h-99Tl}h3|KW+H<N#35;7Q>@DrXzt^D2Wy-qAPH>%o=*Km<7
z;Wp?G@b$9ePcz8;yDHeO8Qcu`9>JdAByz$-6gfrrNhCzykNpqLYFofhJoi0UJw0EG
z8sWWuc#f!B5#d(1WGQ22KDujgHC)uKpz-)LFj=cr!(ueNND?jT-Qxb@v~RGf6!p>d
zo2uuFq8DKMBw1wORm^Y5n$1W^H$+|HhZM9<D=X_-u|}i2TBCdIaKmOBHBIIcNoSZv
zaByX2Q(8=YnnLk(8M#OENgu_dTuiU-sq+waNzX@MNQ5@MviPD!v^%ur1>W8FgYeV6
zO7Uvevw6fhTeI3~fo`9jeG8Y8nf}~Wg~}w7_(HWpMpbSA>vVwz6O{${#>doWC7ZG|
zeoH*UL+h0=H+>+rwJgiSBm0im(V(pG7nARPLNr<BTlD~)2Mz`cD{|heQvsZ);R*b!
z@hDJ$%wkq(zr2L(ICctwS|z)JBZ{q+SeDCzzBfG`9Ppzb{lfT-FNa8=<AYjDthw$G
z5d|T5%G_1Yzsh!arM%%$HnHLChcgolRrKs^%4q#oisjR>Ig{bv{eDh0WKa~t4+emV
z$mV$QDNcB0m=g{_Q?uO&DS`)nVa=+#X1w75-v7vwEzgPwa?@$dLiYc4soN((DS=gQ
zC@%jN`2F#9(LCLN>EW-FM`TSc-R#WS9N;y^r;)aawv{~QYXU4=DjYFbhBseXjs<>$
z1hI3W3Nb#h7$`3?!9Mj+C5Q%Qhx49g$!pmY?HwX1{M6dAbk|p3N}<2mN*h7HwzBS9
zM>xDW?1&Dz)cGD8J0Nbaq&$dzPams7a}w+7{*<F7Lf)Bo;kXhhB63-}#><oOMe)H4
zuVY59_#4usE*)q5^w2`QwsK6Ry*;hz@sH}0^@{<bm6kNm{P=w1N~K#wBJMI(lDKa2
zTzc+A$$>%i>!q_RrBDP}Fe@_*fG-)dzL<y@;O4AEcJx}Ocd=9M>z&nue{2J{EhJ@=
za!n1x>ZX+cpIxI!=c$aj_S2=Rmmc!9`2GvV?SVd@L749|e04q*n(2^VnifawL*kQ7
zeoKlW(ORRleNw}#HtO(+P0cAt<|-Vi>|bQezB$^BJ00uE>g;ZQ^U92J<uhlQETa?n
zlr~)e#$zb(z_Nb`ryEtjUcJ=NQyvKaQXKKR@Pi-CO%t3)&8&j*(}#OH<_oPuLTYdQ
zg2tCP1x5c`MDLc;TAFD28zoIZD<!I&y1OeE4iFY6;Ptqn5=8`Py$FaU78?$n9BlP^
z=6)42Nv}|1zykVvv+<bu^q>!MKcS`g*}qv}^xEc?l8Js1ZHuns3>7$qTwa2)B%aD1
ziz!r41~Cf`6TLY2suQ&Vn|}ohvSqJ_uP#)mQ3hZ=`6?wCLbJVe!(z-t1{!Fcy&6+_
z3{sgvuK>UPrI{6`b$y{77H8$90bI7_&M>9Br7JXm!G?j<DAov<1z0V@!DXbRRXDJ|
z>^HLg+|g6Jnx7~2y7lp*acUW)K3s7Fv3UD;qJyVc+K{IvJs*t^a{CxwHQ#D-xfQ7;
z{A^?6qh?OsZ>*?CawRhBUqKN!zKej$z?9;XA+vy+=%Xl#@I4(1gT8TqjDAU2DG$T7
zFPUhh$6}9KR+r>|w0_=*>yE>3mMHEVSR&>YqRtCDWc~(;7*wlfd!AE>gn!{Ky=xue
z%0`Cx>~)%$bp1BXFVf-z!y5n#<f#I$JQeG6B08+9w99$de$u%sS|WQUYbVK!46n%S
zbPh#J5^j%omqCahfYWz(0kpV|?ww(DORxM%lS}z3)cpkjpU1w^YWFv+!#GRcU9rX3
zNDEJkdA-VIFZSDlf8lIMMniR^jEsa4qDd&D#E7iP@YTI0y~RRDvNg+}KD+_amr9>B
z?K8-Ap{X(LFQVZ}j013g{qWKAwQiI4Eua0AffN3EI4~QZg`C0+1#L7M4}1C+`%s;}
zCZrzxe+oB99XSYhNB3gtyN6wTTj~`M7WS|EhV>VczV>_>61~`%Hc>Z-NkbGG`vZlv
z@~s7{hK7#8>S5i;5zW&)RJSV6@+8~3tlN0TwRa}+JvtdJcZ_HxEYN<Kc}#X`W4#{W
zE%Ik@e~cv%y><%J_OqojSIBV?rvcu-$jr)GpX%wD?o9mn8Y!^zW<JH}jD?2nrRqfX
zW#L-Jhd)p0NeTP<Esmb@(#$7-x%7@-_tk=sr;*((kSIkK*}GxasFU{lZz5Qc+GI%`
z<5E#w`T$I%xWd3E^v6qh=J+o2ovw*)V5L(WSj##<*+mnh=ilX%!VX0J%N$TFcWB_W
z=iVO6hVoqi_y1;&`9DJi0$&x07q>VV8KVgP)rp^Sx=Kn)b~Ag%zSYmlMPL1CG1D8=
z)z#%a*G*n0cKb-JA%x6=f+rL9H>ChgTmR=R|F=<(|BOETXI@+)xl106G)l~_`fZm!
zqj)rAJy}fcAAl#@l~HhIo7M4Sx@|dE^pBZ;FQ_91%_8US3jAn|`>%u@{)Tdr<29l7
z&7lur4dHDp=Nyrb&9ozu!`rE~{jotDWZ`(ig_h5U9e#L>lZ!pBvqQO$nzhAoA-(T*
z`A#M*F?lsUP>#AcS*e{4n^fAB)y2qWxL)+KZZH+^v-uo~_9i?MToHW=%{O14@g8a!
z=b3#0k{Ku+LwA>H6Q`@QwPZG$gLSq<7k-#uM!z3flKybU<LUm~WK+W#10yk(^~_Ex
zfq)MBS2`Ry-DP@0$@|uSP0P!Hr{Q5c{*4J!^pCBrEi~{?ZzGCvzWv2VeKgA4z(2kJ
zmFIOZQZR}Lr7P59Mf)n(QSfv3y_-O`1UrN41;<*=FP{9TMXo83;boT`HVO(LrnX#c
za_vlqk4;?Ur6x&-&A7qXY5zDve9uZh<@vai*p3gDI7rLc>_=AcbFqYTCgiB}Ivy+d
zX@u$o$^uiOYU6X76oY-R_2BDjHbjT9Dy7C_QtiBsJAMYOU9jQLLJ-buo_FJ%fnVbq
zKcHL>^w921$#Uw6nU|vQt`5~OKyiEkLIl$Jp&mZ>nZ;}suIrpXWT}V)4{!PUSB2Td
zVg#<IV0Cfa<W_#3^nz>oM)^$OQAk6g+?h1>fae||S_}q0*XP~&DE%Zw%^I>py@V~5
zd75Tkmzip64taU9D=i08olHc)Fq&x8KjBq6)z`yjmfiU=NkVu3s7QS{ujaMt8;JzR
z`UGtmrOiIM{1YS&9hcjVi*#x$7=RMhnhWD>Y2Mt6+IoaDPIamx`13ytW6b+Ebndtn
zctI{#8avBTd7!o4SR)Rec3a{JN~Qfk^P>)X-%=lcyi8lNd?!V7FFgl4G1T_M2>3XF
zq|t2J3leg@958Ck@3bFaEq&_GZfuM*NV)xOfS`X3!ssuWDO5>X<09ElW0Tr7x3)T*
zaB80~95#qJ$_587*MuAJT6%f&T^J9;DO<p;)gDm_0~Pjzo`J!*?rvPH_7L?u_mx<L
zLAxBo?E2S~awrG@y%h)=<ZwG_&5lee4Ls|#XEe2KtjXG+cOLH(4^klUB%ypKli+Za
zDO{`|Oh$>*cyAQ-eXowv(ztGX(Q8*rDXNCXx#!E=Xs0?dMnwlQFG#MW)m48XMxn*+
zZHV%TtbRqqmw(8a-N08Gk3n6ADg$O1AEI2*(5<KCBBkC;N=&10zL?FKxyu`iHrf@n
z<wi{WRFyNe(GYjr<cTNCEMx%h-Q&F>tI3&I#u#B5N%=atW?A3Qe?!~{&k8W*Lh+;C
z&UZ)86iR}GoJF!X@d=!`z*Jbie?Y+T(yip>fK=W1l&QU?OWY)uIEMhklqv+_>8_LQ
zklAP=u}E4%geh?!JOBe&aSyT_?UcF<tzuoyZ1FZGNlW;voDVKIGs<^?hkB#Wv+P~h
zMXW!_mvK~*)p2^}yQSSej&C5GX^Awe*MEND6Et|1??-t1&aTR~_yzzAuk@t<T;!3X
zAtceoFz&)&e#y6|jM(-3)ok-Xv+k<jYk2mBPub;NPFS!kbx2NhmQFye(+(5BpPze4
zq+vkrNCrSIF%Oqj5P`I%TW_8bc*5G)Ug2%+x)XwK%%4}OS<Xf;++#)3@?&)wcCM^B
z+J$j}FqR>1MeR1)I6qbdAcwSN#XXt%&CmFq=lGA>Pode(IH*2thCgouc1VF_h{0cj
zYb_yNx}&^8xNd+^Hd-~e#mD(c@3!j3MfgMLRzvwD{a%0Ml=NcmR{zdA!QI>?lks5Z
zN(o0|djA^d3(iOzFas54eqiqjXG{_-|IOSemf^mtGRlWhU0*yvS9r&><<PM@d%57e
z_xRMj{;?;q=!2g{gy%1FpOk>82AZd#V#~E#LfpB0L<i|%n2&7d^>esS5s~7@ZKpo@
zIDy)QD59XtKA-83-ih^_Uwijq4;YEII99I;%T(G3sR(!4pgM)_VJj`@U}}J0Gf8S#
zqSS0Md9W!(l?Zhw8qG*6sf0;2dEP=qGbzkqtdCZ301Oqk7h#=8t#dfxoWC3eI}2hi
z%|a7PF$ibO*H?Sz+0>wY_(Y3Z#`!~qNJ*HF=MoW>)t!ONb;X8lR0=cI1x30`+m9!V
zQmi^rzhQmyn+reEQg5mcO%TiW9+qMiTWn|QL?=+>ugZkY7KfW6usSw;O~0km_+`*p
zejjGn(8OcekWWYg4LEgAX*pXfrq~XmVlhMILT$x48I+oel|0}fmiWG}l9ZLc{IT_y
zIXRmhBVl;vDTSWuNYN5RGvp*=RHrZIxU#RRZsNaa)U=)&U&CRSXFq-fZpQCTWWkI0
z9}eg?nc<sgth?8~nMM*=uRVRXy6z9N^NtI-{LY(|v4e<dyjcVvD!W+}2~o|O6jEkJ
zSG~&Mbe!M(a5VaA7!;)<L!bAFlnv>b^;d6@Gtw92k`qb#Qt$JsnlVRa_ekvxM!k)F
z-t8Ls5Ln-WD2}g8C=@8XeF>XN=8(@$p-+Rc5ZtW9w}VOsDYItMvlCi_U-`@B0?Y7U
zQbsCJO0+^@K0o>YfcXT9WE+nw$(En$jkTp{4Qv;hlFP9Q^IxB{(6UgTC9R)tkZ!(~
zp0<Iz^20P5B@CtU;Hxv!)azMDZ{ul+`ozdQjt|Z@${3JB2UMxhM`h$l1Ss}WeE+e3
zkdrGY?8n%>R>DjToh8jGxXQ!lOm?)eUeBYDjsQWpcdUG+l;!Qt1!Ojte2HFtiRri4
z?%g75;e4M&=>9mY?5pcIK3!Ac7$ZjTcy>JA>3mNhPQsG0`K5#xR_VLjs1Yx<XbLuC
z(j9Lqr#nj=TvBo}6%l1bQ(Uvk0%2Y$ZdO!1by)g^3OQv^GF#TpzWrW|uWSGfVg7H6
z-9fFjNrNx$h)vqMl^aw3FJW3C`T#CL@#n@GGiGrbXpqa`tmKWa7>bG%kh3Z5Dlb3I
zxUfrm7g=n7Sj=?uuvi-cO^%;c1|m-cL6hSZO`=z@KAEWXyZTkJ6ABJJd7{%ymx@Fq
z@5IrpH4aa@jQ}5pM*U?P0fye)iU_{Y1iN=(YA?33lig_POTMy}an$!bv4A+A<E`iH
zF0SuFh8bLG?Qt850_@c0kC-MhdI4Z<A%QQAJVMqfYv%6+T_KRPz3tOy06w<ceh&PY
zQ?=WyW&-#SQ3s4G@c@8u##f`AR6O9d;CQ}@oTw0}Tys27@TBr*oO~>URev-z#o#OO
zUa?jyc5+r=<({yisa@ntr8vxc$I;iheN`_z^9*ZK9KB?`Wehgmwq801$Slvg?>+4;
z9qk##ak86h@mwGVs6*}YAXggo@zV0o-^wSyGVM03oZ7FUH2r9T0o~Jk(+eDsuvp_r
zQ^AeG#(Q4>|0&PjGcsJ8(}+6K8ahfH>T%(8m8PDa+^xLD9CX^CAEk(q5!-sIOGins
z5(azqze4EX$anrKY{qe~t5@O&LPCUk=|vXliG>>>!b9xbptHQxxO*K@qxf8-?K0lz
z-}Q`{V1d7D`}c}t9%~N4ApPMQuXx(W9!+d)8;*~scfA<z;|F61Vna*u13669ohwo#
z<f;xDUnUh|<H;NV3eL`xdPh`&s3v{l?@DFp=0|uA@y!X~BDOJclCG<jnUD5S&?Zd7
z)rVpH1_Bv-S9Z@!9Feu#(2a8!*=zQLe&R6p`Dz!-k1t5qU(7P!&ysevlo6S>bMqK$
zR0x@ToiR29SNHyxaCzeA@yE;UZtq?rjJ#f}yW1Sw-tJd;B2X{Gv!uLg?d&BLSDp^R
zdFW`MXNAghkW}a(m@%uDZ)#MB_R!)t><XvK8)aSFDdaF)bvH)W#dtPu%i)Y(4*JF0
z0Oi2no5u&%9M4cN-uBwv9@M|V<Le~iQO~n=ZpaJ=uW(-OG018Lv@5Z&>bJ%wse3=1
zgnz-Tx8jKUe$d&7W0p2Qd-RPs#cqB1L$OQ^pMgP-TLPYUEybqQhu>!ol}pPnRUH3d
znj+`@<Q4e+z1AS4rr62D`>UAkc@Dae;5?Ng>AsZ|IIRHLOHB%l{InqT^Ln8Uu@zfs
zYkBj)emYXw6G;+U7+`g`SdukDE5E+xjcgw*2*-Zxn0G<{gxA<A#mFe@<}vbFMU&+~
zUd>Upk<0dSA6-FYTasftKH@K07cEz$ytc)oq{id3GrU|qb4R9C<eh%Jc-Q@ZV1L`*
zzVhshH=>ziASP)ZDiL0|gpV&`cnwrwRoo^(gsI682V$z0=HJaX*Pv1eguWMG=}92@
z?~wqC^<&}xV!n*6&d^b4ND0gqxANTzzR22ZHY=}8PMw6(&4zo>Hqo-XVb{7?PF=A)
zHeXmG_B|68B3;74a(_?H@a{x<5ZEs=X?`yxgfx=A>k4aUyeZNzB;>8-IKy8Y{r>JP
z8fl|FSFR-{y&H_Y8<cZORWWB_=^6gLdV#aP`o??`4oIv6MYc9#q-gEn>+lIGCf1xv
z5&Yw0R|htwO!2@x7PCAs|BF4{iY8FO1;H6=AG{zF+lz)Cet0b?EZkif?q3?nDDWN+
zDe$b8ZE)RO)#`0Uj_83xCm->j$Gnq&@gD7SM@dup7r<Ek@_RdCUGUw&=HIM;Wbc+;
z8>io2Qg(szNYe=9CyKdxIY#DP!0o5M*N?t&c<V6kDECAl1N$0ND}g_s-wj6aS#N+n
z73;6N<(AtCPTF7$BoKbh@^TjSf6%)B+xXZw3uldPG&ndI@(1Pp^G0e6jkzGR1c)?u
zM?}{U{%P^?fRv2vX^@V$Qh4A*XO76NAZpb{|6lzs`2UZJ{&j*RK8qq)C^|*yBSxrr
zbPlHX>R8V~Is!fAQ?0r~?m>@x%G1b8ps{8O${N7xS6M_zAfi6`b^n(c4yJkR(M|;&
zG@i<@u8=}}M=@O2Wkz`f|8F9}Sw6`6BpR$@VkBl3@8y15h>dWye9~|zkzzE{wsPfS
zZTJZkF!5771cafToTjOb-dI7qXx{(McB?leHqMo{<ui|rrqcHS627Z9VZ7e;_Yrt*
zXdhW0yukTQ`zv9w*Yq11)I%Oe&_A%V60`R*BOH1aT?<6$VUK>#gbGEZPTj#D0}-i-
zb@Kt!L(l_Lt4Wb6U$pr4hAWGIU=Ud=45x~B(d29k$=vGMgNj#LxpHQpRwbX*^9*;~
zvwy21OI-)O*63gf>y1+K^YMK)HbfBG^Se4iv96ETX)1f;0fJGvbFP<OaiKW;*-PYg
zbZEljxf7|ezLM@4B1=+Cm6J!j(@U*!lqti;47~AnxLi$7%hLG3Cd%FgW^nN+@Al^d
z_HiGc!q8HJ8137bkRNh9&hpNfbuRz|lh6+&P(LkY9-DIAjA6q%U(g)hZ4Pt22q)ZH
zb}TzX9t298Ul0SgJ;Zvx5l^x?Eu%o7Z+^aH9WxwQ=`x|=dUD3-^%l6e;~CWn?EX-*
z!@NNl{3{8%<i6fl<>sVvDpDX!8N&D!P$a#;`ZiG5sPj@@dAk-e{X2K*kVEI8)kf(Z
zazuS8!J6sx6O9h}xdf}Ea4rQG-4|o4uDkVw86nRRE<w3-$Ax3<cr%&f!%f4!;XztX
zCl2FHr+#o@1mQh1L}?;B`&ffrdgpyRBjLvuTXtFNg1U)EqkkwayzrEReD7=aRc|)9
z-}FxWhEkO;9!g#)<;J$Sbk7=H=V;~2?8;l_2gKOfUgZpCkG^ytM*xf+ARrCJ4NSAv
zr@jTuyeN6S+3i~L&WyK%jY#Qf#x%+Ef@yF-&S&@D5T%4?FES<O>u0O=2ViCYKI<+|
zC_w@|IWtRcT1NB;C0&06#DxSDmwFoBr5?oGa9^yRr*QV{cVgC0vVfsnq8D=aj^rtW
zmU+cRE*3_IPbBO6wF{&%f#2Zk>dVwVh`q(CCCqjTh}iZs7s(;1Xj_UaDcD_FG1~M6
zs#%(&GvXE+3m>w-6ra8meX6FH<06!FD?rk5BP-4k=}D-nb-t`qJhUvK9_t%QcBFF@
zxWIX%QQCzPqTzge#)u{izTCTwJsIY(kEsG`pztU<U8<_rRDmr$;bk2rz&~B=!792G
zc^$djpw5U@QY3rHCMtI>9lRd@2+~e-so`k!NMlJ*{!X%%&4>4xlFRMw#2M-S?RztN
z3IH%nd^764)IhJ4{>CMoAYJ}AYQYu5qvwXuy+Pm!3BVu4;#@8<Mu*P!0@H>zkD>HH
zGD#I{`zaGGo(hYRzVY6U=g%98kch=O_9tEhes%kdS5en=$HG%9DKp$JBgY|30Fc<|
zc&&PSA7vzpDMg1h@e;72!>PWmRT#^A&ulffH*8N9`F@47`aLi*@{T)wy>jiEL3t#b
z!`?W0+640kOYtaTKLr}#)vvsP4vX!Fy%31fhZ-}}hSl9)P_+IVb#&e}8IrNA-pgOT
z?NvLek0Q^g1R5k|-&G&^I@6LZ7kO@|u5QK$u|alNhw;fNvAO6^Z0`5>Z@;qAYyFi#
zO3c@E{me9&yV`cRUnrcWAhV=J<HX6V$#wUz)NK?$GFOQ?F#w(d=e=^->jtUWb5#fF
zI-fhLO$)#S6!K0t>w}Zl=L!;(xRQ_9k15RviGa;R{ecGM0WP1$7y%srdYZFl>u+b{
zE3U-C1?~8wtFJG8CVU&L7KE5nNj{DH3!^P`59mJeyW6vVfS%BD3TPBnJ5Phi`;J;4
z={J@Xi(d+5i(#pO^Y4z8CW<sn%bA67nv(gh?C^DSVF75Qi)~R_vM-^i$ktO`o%YCB
zoybEC1X`HZ8N>x2vk@Z!i%saD%abAJ+?>j&t3=)rkQ4{-btWmy1F!zfN?pHIQA6V~
zFuknvu;Hspr+5ensT$KjMb-6aqxm51F?yu%El05|DYpb=wEgXpC;s-$e)PFrIVl_6
zknR2DY6^<U^;hrTlcJSvd_!TF5)PLvfsWRUeaQ%psU9J*wdx*6tKaU`0`={45K)QK
zl87}Q!AWSO&leMeopK#`jEO0`BY5*28gWlDj+!2GHKDQvZS4apAD0uTi12R^`y!;3
zCTk84(_C)^SZgqW_7oE%SRQ!bXGkb3o;QBFs;VI4a9B;R*GyJ*e92=`Gr(XxT)V6=
zKRTnQ(|E=NX=KR!YP>L{yR9qArbGsO1rq3Z?vLam68q1t?NsNwzuHon3Co@H(YLUp
zP!6FfG^zWx;-~i1Ll2%&qMqDP-<b)ve(f;>cRb9rD({EQj|Q)^cXQYl%B#+4G7F}l
zJE^^nkwQP)y>L#Dz~{sS&EYC^Y}glTj|P?=6sZuWQB$LpaS*su=VHw+vRYwCx_{n)
zYJzZBuRPja9TjT^S7&eW+wQ|4Ksym;%C@MO@bt_7`rr(}PenKH@-Tc<?@!|>fT`14
zbazW>Iyg!$Y#0k0xS?y=@Xg1M@>3p&xYjE^LW{BjVx<HPZ2&%Rb?A4w$mNyM3%(vW
z=S*K`Nr+qZRIFmQK6-9976ykzTg%^3-=bTG#0P(IHFIein!4eeWQ3mS+g%~qRad`H
zbLZqThimWizmL#{AV<(@t_b1+=UG>DEkzgiQnjWUyY4JL*#ZLBp#yJ>)A&Z&%%7g_
zK5a}7xIcKQ1hT>VC`9^SU68qQCBnA%-FjYMEtAGRWl@IexYL`jC%GO6cvL{k@vrX2
z*7jniCTTjpP+ZyfAja(u)v$&Ee7r8VcMXgW^d3$%rPMX)N_W5HNZmoyhAN4YVlXq5
z9X28{mw9-~Xsw>B5$ty=dr5$=n^`M_JX`x^_zO-eeHbm9Ics{9`%SbX(u|60xQp8J
z!YOJS-8tOug_C((wZiy4NrN+1ZMC4U)SEj<zn5z0HQmo;Bw*UZQIW5@K1{xHC&<{H
z6aM<yNK&XZ6&5hzOF8pW5Ajp<Mg*GEgQXTrUcWNW;^jIPQCDhd`D|}a<i6K8eGiA%
zxL3Gw4N~f2)^792wL*jPu9~!sqpr1O8g=fa)a3;BkpnjlxsQ-XzHxz*8jmCIPjVC+
zDa;>|NZLlqdQI*vZ%58YK)b8lYFbCqu1_9TE;4PrR^)m01bTEjt@lqU19RPk>EgEH
z^9_^YT1~awSJfvDY}@gE$dY0{oH$nd#>JxXh^pS+ms?#L!NNo+>>dJ=_AJ21t!T<;
z_xLPJNL#;Gid#y0GuoN^){7;h`{m2SZJf>A<XcX+3I7s;w6y2capQpI{T{w!O`6y*
zOXP$=9swpD)`7ESL?j_v$?IWgmOWqAFC%Ct{PfAZNClqATCb05KJ<l;t=3V1Y7yX*
zXUiNN`=~?&?_+W;A+528!+{(8Hs<Xn8h|&NkW@bn_?-I5TB8+Pr_Ww(qLrunW`XZx
zuxOTt{Vid1Pw3Nj4k}^@L})--H(v<rQ59O$ne9xDgA};syxca?BjjdNk+|BJL3S6n
zw*$ASB$SfFs7jBL^s#XKcY`|`=|RR}r@TCa&UI|gqrri$c5i`*fG1C;lxmk8+1*H)
zXq7WmI?Q&_QSqrQn$`gSn7892vZWuH$?}<y0Lmy?1F4cx+QS?d9&hx)%(`hMFqG^b
zJN&dVnZW&M8S_y0teXHWAGIw=0K|q?y$Wctg_u6=D4xhr%^~Oy7C9AODtb@EbXwE2
z;9bdHBrQg_?d*b3Z<&DEhR3s7!Q=CBUg$|TVI5CJ76h-J)?Gn_&<gA$LDA-KWVs^<
z^jXlA>>W?BZx}o@?)L<r1Ikwu?Zk0)*IJ2EUqSFck6t{}&|!DFOy0?R1z^)pu!Kt&
zNxXS=z{S#&p4xL0jspb_cY$L4K5t?~W(!oT1_7U5XyB;j;b_S8KL1#=bV00b;tA5W
z1U*1ypWN04TaG{}o>F_W-%%QaW-7lj{VF(96vbYWG`Azvz5Gq`<+vWR&|L54k9ixv
z5XqMpziEZldZ`me_}>XMMysM~q>UGI@ie}#H@MsSv6B>{+qHGW!k0Ss`D?W;bCDV-
zU^5>XoqENE7R0+IRAr6Z3r2#xiJw;<Ax<$jvr*!_S?JHrlEPLZ32UTXKfYfckjpSJ
zD&n$^wRBoM7;574D@vZ8T&(%*LIrBxm*=-UGBWEksduoJfw`0rjJ7+ArWoIB$7nT%
zHQ>4Y@YwRs@OHt@2+&<An)^!su3MmpkB%C;@<gu8i(diD_+ZJ47;PnO9|eACyrqr>
z#o>8P>n*H>#m!mFEfRo1&8!(-opb+eDTQreQJVN%q$G=1dUNiDBXe(t#$J-?S##a>
zu4(?0m=p@)_Tm$5Z}T@?^HaPdXy87m-m%=<epNoglIwacVxElC_r$&Sd`pZ~C>Tu`
zx?Y3XBX#XK=S;CoPq}Iw=eRq>$HUZdN7nWT()M`DazzA(nmOE0oK-P+k6fe#IiRrX
zBuhuZH_bC;ZtqkRkJgv_orF9!-L8^5$93KK=S?Q0jA5I@J>G`K_{w;*X4c`Iea0_V
z7~Y$ka6b3^COQVKO-*L}vX|%4umFV^rOMiY8*VZ7Hv|#nOVuUGz$+pc-GU4wdS)cR
zrh$`=DojIsi(l@OpeZ~ifsU?K-_Mi51o1%x?bsMC%SPbW<b>O}4Hr32YgELq@;0bR
zQpU?4h%aum@?3IT_=a^*6p4ShnWaHR1Ov=c&Es<7>|e|d<6CMrh6N2cMt9{VJ+dvA
z-C<VH;{u8|A_%V<YuPZdzMU_)sYm6|D2a#<UU*BsA0^n@wHm7b4Ax-kTP(@hB;NUv
zwV8s_rR+rp=x%-!AIQ~^UoN+A*Wa@`G&F2CVRNoI+himf5Wi782&r1(j<Rt=taO^#
z;Znza`HoS{<ste-P$N#h{wl-Zmr*HEh5}jY3$tfOuv-zI_~e*ZW#o7NI(1CG1XGd2
z$DOwWAqq0DjRxT~T#^gsStoT+b+c{`<#I|?R03Jjq=#x7FnT!QhB>;EAQ4kdypmfa
zi5@)#m+EcAwXK*TcN6Cw*uVdt#X~2SsLJY|S7xblc7|d8^kF6yO7od|!N{I15?-}a
z35~4^_s&GnD_$fT6v6<a+fv3z%iOa?RBcMyA5u)>oK?Yc`TEI9y*l+Ah8Z}ErD?Lw
z#{xT&%7@9Kz(WS;KEizc=^1!xrHQV{w}{FNqVR37DQ~KkJgPtDF~ct{R>xGftSt?h
zmaA7PZZKPNTuW!S`S|5U6i5Yy>DbGg<fG8ngL1KNI-`N!BqyUgbhnyxE+-y6loJXs
z*XMJ!_+W#%iYdiZ9t{pOJ8-ebZ1id2Ws56|o4S`Im#R0T?X_^#zDIwu+TUJ|zskcs
zZnat(neb1;(x(|BH5LpAg2<4%>nuS831nwZTXH<Y)t5J#t4WpEBQ~;>G&iDm+=Nh;
zSlA+aF<(p3+#<%!rO2n}>NfsV(leLX9|UX4M<gFor3qahp4(^k)inDI$5ax*t3)uV
zhz`u$iU$YvqI#HRE>ur-fPY+XDn{iYM|Dljl^9YLdBSmRRerN1%Gpt`8mR0X)JefW
zG!qmOV&&n!K+*|yPnLtwu$&}^S!$_opqqruT7^q`zt-ig`|xzCD)7BWaXjjCWeKjK
z*IrC6reBL?ip#8nm7)3FJXA~^1EaG^1MxuS+&7Cls!&6g5C20sH(#mVd?!(GVM@bh
zq~JwscnWG|vOba7MgdnCrcv@#%nWDhgwjO86iTK9C4JG&>cZ>b0!MN9<X?sZl_p%y
zlkUh(C1TbGMoT4SS_w_oSb4mC+6@mP-&<rv-jY8IN%13wSD_y_eZpOa>WZ-4js1`n
z`VKSVoRMSEsP^-x8rp|6ac(XBlJ2U3K|7~_KstjD;uc>5=FJEthw&sM<870s#Lf0S
zY~!u!3@LGud)vFhmN2!uOa}DRP0aj4It<rw9ht|&C2B9uwYP;sI&wlHgVQRYMo^%8
z_yT3KUr{Jtx~pX&zv^2_c3pDU=GHwUZIbB2-Lz3RdQdq2p~O?FMiaZ4B4uRg9Jy?$
z<)cGy{Mwr)oD2H4#a%7-&u+I(w78P2+Wqlc7_Y;J{3NzXQfBOkC7@EB<Tszk=xB(}
z_|5bLjn`_i{F6-f@;K4cCAnLZd@^%Xlvz|Z2dg<Uvu_9aQqa9b(H!M<9%*U>*_OA@
zu%M-{BL#$FmHR?y2THTaYBw>BcF7l@b(vVi7USUfXpmivG0>_^zEft1-<dDxVGhfd
zKxWEKT&B(o)B;hw*&pq;@>w<ld%!2p3pFrTBHboVw5gYE{qPZG2JFY+R({9+G~QJn
zh6WO4NiK9&$o*jaRS$?<xx#0*cz_NnCh|nBMGea+Yq9R~6vzFkO^p6j*@gSlhsP)B
z-ujHux;>dFiGC+F&17MPsX4UsNu98epbrd+6JIoqcMu~dBfu{HA?(Z4=7>AFUEU3J
z^W~N1#q+F|j|a1dE%Dhpxv5pdt7k#f{qZ_H(cG=$qY7L?Lb+PO!%x&S`onMb^7d#w
zwF~nc4@cp}!}lX>nTeoN(00d|V3@}R-z%ai_uI$u_no`Xa${8Z`xXNR9=-J%ie7?w
z^6@h0_#P2Ts8NtOEeTqD<l(xO8-~Z}>cdNS>#{m$9?tpZht)H?{g+9b&u2s|@<#f5
zWoi3+EAuzK3jO^p9;l(5^8sZ`cAq}W&eQ)=Hs?F=qD`#i8hmbQw-r(}j^C2>SfeIX
z+9C+_M@FXJpX}%_FZ*)xYrb<vlbk5RK!?YwoZ}N=sswS?D!N|o2knU%&2T^eD`#x4
zmnS>#N{OkwTN#A9P|y>e-Jb?<UD0LTa|V<ZZ6W*pQbLH4Ye7a>R2pe(d)h+TRCu5V
zvviQBHDR&#C7yc_aeN!zV2Q$7qmU3t>IT_*u%P)^l)4ljx9q`m$J^ms<00tqe#%Rf
z>Vc+)#uLY4zwe;s@F{>Kzfy*Xs0xEw;;8Q)B?MMkUq{XyTE!2Mpclg`iBInWee0BR
zaOTP?4^$<=>6X9hYIb1k9Y58CighFU%r`P><JGB-b)xg|l)K5vJ0`@&S;D?kj(=Uv
zs)ePqqADiznD^9l^0nAV)^2-Yt}wK7Hd;tITWs|#=Zf?|<+uCSv$**06*X+=DJ|g7
zjn2l$-!wF1^U_8ngl@5Iv)TA4bhfPDi<ca|7)p0oI#p4oC9Gb%Gq=htr0}qn>p@Ce
z+`C%0n)klHSI02q3s<rg>Z;oJb8V_@t!nAQdp9!<tzCZZ+vOXrl_#7R+%;`96GjPM
zR8Pc<(z$~yfD__#C<qBd6Q)gD&J9kyr14<2q$Ki1l?!4R>4~x+MHyVNWmOmBI_-6e
zA{HGzl8s)=5vXprRw@4%XKx+X))uXc*1L<80>!O`;#S<D#fwwii@Up~Ek%Ns;$GZ>
zORzxE0KwfUF2P+A@<R7M@0|1QzQ23koqzG0S<JOE)|@l*8{ap^m>o%E)z`bCPz>r#
z2BaynQ>_x4fV?A0!IFmGwU56H5BN{XQ1}RBs+5EXi0y2^l7H!W%<G?nE)OUXb3~>W
zVw>)N6^g9lqx{DZTzD&vL|VGZp&&Rv<9hN98$ly?^@#Ltv;O*HpbYg|)UBpuuDY2$
zP>m(^#ii8EtijIQG}kpW0m^sGwPN5^M#fmoG`M%N8kD5fc(Z7AmIvAhOc~hT7%9n0
z2gkE9@YYQgt`n^{(wTLOAx;xz;wkZ?3`j~2ZN{ojJDa#m?w6<rs|Nsn^VJO&M-^o=
z2vn~{^eM`%V7?Kh&WMhEOC#qQt`#-We0yFh`R0eVGr4E+Z*v|^R?JvyJNVYE&<Fp+
z<NN`>gI)#uQreAL^{$2~`B}pxr2Y+E6<(&WG3!O76*nlzl?(?nXO!$FLG^BuKAcO1
zE_uB$*cemotFBuwdN`XLCtdjCKsG2d=-fFv>ii>D2yMV<dh7NE_OuV_dO{kWZsk>q
zZtaqd84tQXRhEE=W6!?!kO<Txaz6+530QcPy$6-IOP-Lmn>f2XTE!=aAroz0iPv>=
zXD*(ty9Uch_9cQ7EqTa~NPf)v%cXpMnA~XlnMh_o++MUe_uxsfq|}V^Sqy=C%DFmj
zQL>(qJZbHEZ@Ssc$y)zoy-dPc8yR&@(prUlZ|}htg5cJQqTbtqWq`<l{1DqTxes$=
z55G!3P4?E|W)|3;(R_Qg9`=lyCj7|U=Sv!5=Lm=m)O>*}(LZaCbCBDE_oIr?0a)j9
zZj+x*QqDx`%OFapM~QoeD8X-Nv1e|nwR>j-2Gxg@9GKB<!aCR%gwnhGEoiu1U%s@+
zhY}T?oS5Gze=~}&=3D@cV9W~Dhbx|5HTmYasJUXGgq?4)KXR8=-hSlE^UD6JXt^IE
z+N;Q}BJA~pxO6Q=_gUeOU@&4F^7i&<&2(u04T10w!(V_O+_tM~H$I{n)cFYo(afnr
z%i1RTQPiB*SA00fDST6a5jHA8s8K8A+(FtU12La>LzdCkD1c$)ddS?FOItpJ+Oqj*
ztl5HSFO_V0w?b=Hh#-3o!2_%Wv9-M*6RQ7<ky~b=SBuYYyl1*iPx9t?VgQ*d`Q`<w
zymx;?(t~6<iW?U1!7>(2HGRQRA;U6N7w(+WtAU3XN}@33A;$TD-vL>L2~$g`KrQ8d
z`GC0ig7I97HPEzwbf_T%e@v%GMD<qFUJP#0aqc*X*7sv>hEhC5ECMub$>iWRmx%I~
zRWK0za5bge(vNf2+~O{2W(aGlR1pY3RTnBqx%usYM64+l$uNkEmlkpuXk7*%pz-;3
z38>?`t>L+WrdMHCw^E0`r2OQ<Gyf!#bX6}tI``Xr_zX47QN&&B=UT3?jt>n|Dq|Nh
z5h6xk^yIwmdy*i)j5Vog?+Efzr#-y?YHn508w(dW5HZo$UQ&b+lznO8)xTSSVII?b
ziZvBLO^_)s=`ip>^esCjfs4?ogRYs+a(WMu+SEKxmB+QFXZfdej8+-~0HJvenpA$R
zoJwLSDLMG1ZswUaJB*)=+eoCwY)u#)HizBL6ibANpLQ27&%WI1!DEjD^~}$feTz^2
z43*v8-BnoJ6OBYMM4`)4JFhwii{I4nZ?4roSg&|OYw$=?nlN3|gDaKKejPGRv<<9m
zN{p1-m`MIO^zqeM@?@vSYR#GR_TwR{jPz>eGUVy~JiRvGPud;8ynJameJ1Il;`cnr
z?bg?^xqbRBGaaEVC<<kvV8z6LXtp@X93-szNn$8c1O$||ThW*CD?qka({FlCF8!{3
z;9Hl}DLn1QfC!2ZhL2;A7#Wd8*T1NaI@zMK(mX#(IHa~jS(rc7#)xF;*2eVAP|7pz
zBqA-hGq3pspHSBv?pbh_5c9OBP)iM_!cgljkJ`u`-C*_m%G|&VOfH=pRGyG$7kw@Q
zs;RBM^zd@^e4Vqsvc$7`8@j&Pxj~n%J87`=QRL`XyvTmKXjvhoOc9azQdr-U0b!Zk
zJ<{g0xb?Fy_$hu&t!<#AZZVj=9;wD*X=#1kDmoCXi-BHLsk7sYVjmAr8aBtkorDYm
zn6B0;tBv7ePIS~6@2Z@em$EyYO~t8$=(?%SZ3JgkbJOu}j%#hE=Eg&GoEcp%sN{r%
z!e=`4csW;8*PphEM~c~v`W^%}q?QrlE=?@jEcPVKF87%)9bU((4jO=(glwC-l3r`J
z)9Uo!t4=hP3KsgyQbY@fdlMfwntk!wI9-RnU5LtLr(rgLBfqx_dzq?KUid6X9vw#7
zylyFmEM7hJ7_eZZvJ>(Wst;|R-_?pN(`zgN^SLA`_aAVG5XlIRb5c#0UeO<uwK21u
zX%7di6>bFGPyw3OT|{Xx?AB__!XIn6C{QBfnRv<<D%a}R8W-v~Dg8u?zn6Ml)%59l
znt;lTQkI`-Dqv~*y|OvoA;tshT~Fx^cZ7xJZYcRaVcaAKyeR%%>!=F&>D?LhqjDjh
zV&_>-V860-5M{Ks>Q6jiSAaVO-}53p!MQr)%<h!Xq@gGRotdP_%iQ%%UUBLa-q+vH
zMUo-gRSK`Rmzo~mKnbWhtBb^P8cdGz<z2q0evXD+FFTlmMN^y>Objq%6EkILH}N{~
zSuQ!P=75DF1(dh?xrFkxiaSln$uWroGL;$6-1edDxOZla*(DP{b3F0Lz#es{PFfk!
z>ONCM9Fpou_*!O$1<R-dixKpxdqO;hEZ?kQxX4r-_DE=7s0pOhur2W9o7!EOaH*Ab
zQ)asC8u=S33wyX+--b+o1Vw6YI3P{TSvFy`r#fJ4UC2@}%uDjLxA=^`#ejb$hYd8|
zauP~=BDh6J_~jySx!4rLMPEOysfmr2xvL8Fv8b8q+|JWUd+vTqddPM9qDN-vgQkW9
z10M|&CUSl-q@fo0?vpmqlYp@=a=V6e@A?7KJu!R8ApP*yYQNdM0*Os<b8bzz4jqJS
zd!s}dvCp15LP0q01I_4W70YN?<k^}EzD_^k(LD`<ixFQrI2emd8Vj-O+b*n-fs518
zd7clc)X`B6k->yWnz*Z}^MWhCeGOV`kJ_3-ITEFCEQZ%>M_wkC{6Aw03R*jQ6_@3&
z55~%r{NP@07bA+gr{}z!oF;OFa*scgeld3;qKc@hbX=U5cG~n<W39bZwtaYAZTgq+
z9CzjAm6FGp1zq1RL6B0&olE~-GZA?~vl~aHdm>m@k`ODb%|H<&NSs;dM7f~WVR~?H
zILua(+uFcUNJ~EJkfO=KhN0!%Y=6$z)D~G*)(85|k(fNed8Uv|LF<4;XPzPzQzMwk
zM#V<$qDjz7AOA$%F=K=KK<kredVS7G@aItDH*o2ew2-^v3mRd@-za>}`9AkH9D?tB
z0wSc5(nac=STuM*FX8?dch`LOJmn?I<iXT6yBy9gHgyuI%)9h!k<8Y6LWutK?gFem
zLZQF^yjT9^%|E?1SZ^x-?o=^-1^iQi3tg!CAvzx8Pa7we{m=4jXyNmp#`C1ZIV}LR
z)790r9rAbAug?ulP4JN7z;|Nk^69cSclo$~8?m#o?HhR<0SQT30OsMR5)+R)fPXS|
z-=zir&(Y8#lRvGH<9p|yZ0h&kMgHpp5?kTHoYOuQ^~=FD7+$i#c8C%SR0$pr3XtUa
z&5<qk9cR>OJL!m_S$1?o8ItS8Wt5Ibi({+XUjR$7pw3M3Of(!9Ya2qi#zSd4vu<Pr
zD&<AhDhz8!OiB$TEl%P@?0PK$<bVEsF%_{XFBsrgaayFZ<G;6pMk`AGCaYEcmSxiB
zg~(X|Vj)dc^J^IUZi)H|&>CL}Ta0v6q4l$s98@#$BpfE4>mk8Lnb}$F8lYF_wbY<D
zBd1Dnu(4_}V7KZZCwY8&NFYC{Ur&`6GtIYmJ(I?MlYE#|l`0X>`SVSk-8HGdP!U`f
zrEK}=&hbM)Zn0;@>*OFrX6YIu+xhl-^Jz3a>BwS^e&}kw7F+{Ishe~3;)vGYk^S$?
z-(TiKEk|`FCU1vTZ{nb_R#cK8vL-7re=vfceXN<sNSUl@+;M4sgPpI$XJ*KhQc~Zj
z;q*BVNtuzfq@)^PhF|W)<<fF%m)+&5+w1I-HX6PKr<7K+(&+Txr;eBfI3z6x^M*vP
z2T1v^q+qJHb?nQV&@#kMY7E8@gzKT<{`2Cb`{?kXAQLSoZ3V9?UjK<F3uJRc&-aJ|
zn0U<)F^yl8sFWOx4Pe=T?zqkW&;lSlI*Zo_HjJiuT5S!!<ZsV&H3d)I*m$}Hhi$HX
z5^?`-q{k(SyWT9D0${l{4r^Z=S&6Od&YQCkQ@-9e6PJ{Gy)<2K3-d9mtpYZA_#X<4
z#0xZ5zdgDgxG&?S)q)LrOUs7dml`#B^S-#ia+>{=rh6chAZ2(1Mlu2v0^!93puvPt
z!mznr2=2yLOd?98i^!QbE_~|~+MU>uF-T2qG7)wbLYW?r5?e&bedca33|#>IU^!(q
zvZ`l92COVE(+dEl(kv;O7^x<4-mc@1AoV!J43xrPsyaH!{*xUCCygt8U;oUo1G*Er
zV8vM8mX;Rtz%)9*#^6&3U*?YX(vQ#$5c%2azKrAn4-ng+Zr3J&qoaK7V``y?f95EZ
zk*KAKde7JAlRvet2VD^|STUVU7kA{lfS!bM4K{F4?<4(@TokoepQWLu33UiCbAqJy
z0P8i-Kbi^os-!Cr^GH%MH}mcFqXsV?=VoVaCPq5>@+}Rc{h>6G;(_Gt_x22)BT+A@
zKQf<$*!d+H!Myi66V&u{L32obJvGK5@`~*&#fKM)v9l}(dp;)$mo<7)gOMU(=G(@c
z3+x;PLxkfFJ9((!J_a^9B&`xZI(BU@(7&^nz1uEws$1h2#K<>p1X#>&EqZmd2qD?z
zygok{d)v_UN=xyuyF@vT95-mcKH#kZx2NoIlreT(v?(;BkG08C#PLLY6GwmUWrxBJ
zRXxD(6VVs~SkmswotFL9`gGaSppkd+!o8&T7NODP@UlwX_{E)>f2T`HZ4eOc!k0?q
zRc;(Q==z%ysA;Hmx-%4NKe>otQfrni_X`I<8luQ*H76hgTdYP=2<1<K$JxCemndA@
z>~9OSD*VR9EkT&=etVx`K^tU4{Ug*{`~#BLV-zAZw9zwuwXN)dOx_x8@!zII`>sH5
zCVOE%mp_!i(NIvP-_ABf-To~?eRp)|x%N2c(Wxhc5ya$vCa>K(1G-WO<$MRI{%vBY
z;e2#Ip053_-rSt@Y)uyQ_+3$*MSlZ*TItZP=D9<{59u@gmILE}6aBBUCUdZFt*cpS
zq1?sUiZjK=rHXy~MmRF_m&+{!>59Vo_N`>w@$oN^Ka*&w<2g~OLy(8*ii%#RbG=yQ
z9`_&mgVI2XV*4{S@v>K@-xM^`PEORiYO+M{M~w;&)}358G`=L<Ie<j)wS13L>kt3#
z&(RK!4=>6oo%z`^U|ZxmX;Bm(W*5x9qdqm?raznIo)aHP>Lf|<<j>x|IFr|GqGTc9
zIB+h~%4W;bcyjjZgEy&W%x$RSn$Iq@XhEpPX0Gb&vvZqgHEckXhhdqym1)1CKBqPb
zT{4MO(9KE&_&JncvkrB`;Z3KQKgB_xVKox0^Q?)`!+I{;H2S@<U5WeHgR}F88hxLG
z@ofdXbR!KWSoaNgGH4Ui;Ilm#aahi3d>3^!=v|9Xs?|eEcMh`_=aF>dOA%z{e1F}S
zid><IoIH|+Ui$2{=@kU1@OgN4t#g!G36LgxD3vT45+^qx%(;?%NvC8GX#}=-8BKpV
zF78R3M_5MJOkWVjZ5nzhZv9#N;>qC4$^}w*{-YNhRC9j;yg(}BA81=t`S2G8_nMm%
zz2nu3ddQ4q8HYYr==T&?@X)6A+&S52JF6YOU*)0e1!Eo8*{>LnHN=!MMr*?`{@EFJ
zH}N;WNt=jDNJhmbl!}dStZED$Lthq;A5VA8%ji94<uT>*WX*W%eYg@1{d&g7d(Xyu
z93%l0OPe&hV%+chLX{9A%!P?DQ~fJ$sBpb<^@%^xTbJ7@s@e^LPDdkd|KC$h(IE0%
zFo8Nnpu9<KjheAUYpb2L<GgS7t@Wu70gHorKqP%|xoxd>5C6?$a)cy6|BJ0FxZM>8
zAFXe>?K`u%02`*`zRleT4ZRf3ad~V`dE(Vs+3C#E(R^*V^zku!=jt=y)`g>>AjWBk
z7)rQSLQ;J;etNgHoq96uyF<$2sEnDqstQ2jZjpWlzaebZHw~h9aWG?%Rg4b@y%9zi
zK|j5v6Atb%-<oG^^~mt9{yk@rpUs&{`t1@a-|O!8vlqtKT^Xdep*-y;CE(Y0TnkA(
zB0<+KU>55>dgvLo{Xx<U&bMCBdn1;FddK@SOMNQwiN;=fY~e-Q=%TvaM>YaKzH{u(
zE0Sl$KaQ$;FWl9X(-E}E%I<*)KnB6x#W)Ea$v3<nb~ITNM_0C7>i9@^(`e?7J4YYs
zo~e$ZNmMZWQf|ne-qcX?Tk{%;Cxe0cCJiCkobC8=xXXh2c>iTc=IwD|uF~VhOL1yo
zZTjb#*s@Vk^NC{)va%)33X;laWbEtL-a<-S>rM7HGDdYy_9o6jZB@Q^C%SuHzI|U)
zC4#YlaYePtIvUqB$+L3<ozs;<GJV4K7nryueWt|SRe}zcC(^I=OjDE(ba`ET7QZi4
zX81<!kuJz2w&CG+(5#H-!F!$3!a^UFv%nu}Kr03*b>7FXsYYSL^@^*yDZMFESzA$W
z0%mC!O6qx!I9Po|H@r*~>Q+W#zX3N#=MnB>Ml#p(<&@2^<fg>u&&sg=S6|Y3A6;P6
zv}9&$6CV>FPr>03KA4?JYK&A~3U7{MF#DiRMmo1I_G2|Vmqm<^;I_T?WU5i<GP|8k
z6~Oh<Ncm*68k09<F^rA#`OA}kbsRBaCCriC+2ofVe)5w>i!OkO>E7zM@wIv=d^2KX
z+W+lh?|4u4iMG*+b9I0>dFBsdiWa{<-Bh|*$eRhkdapA&8r?y7P{k^fa5Jr0^C$V_
zui}~qB?^XzS|(G^AYm&xH1f?VRUWK#b1y@bu>^<{(=uMT+g`2lXttQ{$d|NAp(ujg
zLI2g$P-Hl=ZGRDKQU#(oU3HXr#d%|I7I;OECtdDCU0HSM<JKWSmhmFyomq=(%|ZL>
zGgAp_DY|Zm4{!QfKK!zDY*xydw(7{T9L7|8DZUzC8bN3WN$JBNZ4h$U+AK2)?5PE!
zetZpqKMz8&jPVO<50O#iQq&8%sGqbWqgxkT1Tt|S^B(I?Nul=Nn?nXLAD`QC0KF@=
zRW30}yeEqYI9o(<b((lD^YeUQU*^OJTs;!<QSdRl!o1Hc%ou+T+RZeJ%?qs{?U%>v
zzeSiT6$88N0~UCsnwSO--CH+?kPa)q7tD5kF9lpWs-X&6t!sa)TMlKo$9P>$hXEP(
zMgwAW<{HhbY^5BMeyocZL_PCwz;>Va^w3Ga76SW&*9w-pDG;hOwT{DxSo@_2Cbh@K
z<Q>iv6-@SjKxM%5?*A#KeAl3<>Yz{%Z#_j+Gs%8g009%-eS^!3qQjMHX^HS#+&+Zu
z&6uC)1?Lp|CB3?QcyZivP0wdMamr|V!tjTJ-agktY4a~za#5mtJDuPt8BeN(Tq#FK
z8XB5>1fJsE+(K6u`MesJ$VOMUe+*7=ejNDe-3L&D3PVj57s^c+9=tdIytH0gGIsK;
z&b9U>Mu~kTyJil;=i(uf0T*`yofD^j)!p<nD&gW>{Lg48XDpiC;c77)e>0x%ZM1)C
zYsbW>1|~QdDw2}~;{qjxGj2bAIKYo)*X5`O2GopyB0}~w`TTQ;Kg@)_3M|dS;s8#p
zoLu1nCI107_fW<YGacxtx4U)-{-2|^f5TaAPUHntB|gs1&eyO19`Ws`{r&yxtescG
zIL+)&Mg#78FQ>x8!*9^}(6gn2?}YG36`nRHlfSS3KccpOeZVIvoi5}B>P*$6E(92l
zVO7^%>y<X%ztdvD1dfH8JpAXG^&@Oh>jZnqywBn`v=2P17qEf+DFsFsqOSntTmQLt
z@MqKT(dzi?5pYLwwPyLHfKedKH1Lzt2N18nVifGszOCVRbN~*C=i2gwB^s?dDwvl@
z1z1SV(O#V805Vw)W^TRC%5*52r6K}!c&-Xkp4<(K!Ub`<-~1?|az7v*FM|=COcs>L
zvHcb}0~#epY%P^&ggD?6-lmk6WnkWP;*UwQpkoqQRbK#{_s2OF=4!Vm96JvZ)lTJ5
zy4)5wWeY*HAMBjZ(|`AN2-acST)Z!ThROSefqT6~V&WgD$9XGDA=dPJ^<fj%$s7TB
zoy~40;}9p>;tf0dWNXu&fQO{!c}7|Z8W@*9W<S248CvBz`*YO78VDYd@aUQyG-$9N
z>NYPc0$`zRT6rle9d@%tl%EbDtcQX>jm-%`*-CeCgRZMGq5AySb8EDor<ih9FO_AU
zXT<DH*q-e#S^Di(nOqNtQfpXSU!Q5T5gCcnnrvdHxP%kc`*mcLGH*^x?o$Yu_$PlX
zba{Y$cc#klvgvDwNqcNl)G5kM`aAE|;&gzARqLTz<?GexacsA1Cl^e(F5x=Zcl+YI
zYpWjLwd>Ew^X-wdO+HyNauO4*mPz@lv<O;&FeEvt99O=n_Bdm)FF16~J6Zlh#z>as
zRaSjo>l|XgmKKY^Ol-d)CcrK$&4W&n@r9SK08;p8#;Z-$a-O0tCYz?iQ>rD8x)rT?
zVB>DcSPJg@eqiWH^7Dcg7g#{X=|b<f&^YmyO6RGBvlbh38d&6BgP>|&ZXKp_dHTfm
zWnZ;99DcA*aN#J8@)Fp#j_RA1Bp;vl57642?|do(eyN{9l<O}uvRNMW4E!ur6WpG^
zo;$zYWZ>qUQ10PqTry~HLtI}sassv{y_-It6RLi9Z^+DuWu_B;Vxx9J+H_SR_hf>I
z0*GI!_RnAayx35qfa~Fnq{Zh1%p*e!8*a}v7~N*7O0K%FT1THZ*Dn#}lU_Va9}Wo>
zMuDC5cbk2!kEQp;sXxM~=?8^{{r8B%L)a!X6D%o26JMi{zxb7bpL^UjdkX7B08w#~
zrR+RE=XaJ$M{%ljh3j7^OG;id#wvdg*TRRA$>jVnsX7hovsvmAUbT*>yZK?R@w&GU
zr%`Wbg0agc4u5K1vBpLFL@Jd4k`|qTWt5)1rhQh!<4GyEJE>$<y<gqPxU5POZD|W<
z#)u{Aln47SEFbcVnfIUQc$!=Aw#d-Wl6|l>NLyMzvtF!y2v+nLp2G3e?BjZB=VLYY
z%YQ7F7v|fvD2y+<rx`QeelnfNCQcI`e$sSFdek>LwKT#UW^QeI>o=KSy>x4Buj#M8
zIT|nXdd3D5+K8vvR_0e*H|RJO=GVyInr~h1bCdsPA-q7Jh2BtOe%T+5VFz`+@Z^_&
z4Vy+IbcHg@_nmz_Y01#<zZ+=!>~+q%OK0j$p;6ms%!=4$6mo9+C%CwkU0ssgCJu)$
zJkfl<3D{4d%VV5<fg)0#`6TGMky6SsBjX1h9qf)n1v%2^2Vab7E0qi<I}+U*{e>-%
zYih~|c{YK|1ty6B9>1~^fCa4*S3B3c!f=kh=7*0-sr%%CY`;^Zs&RL;m}1Tls&6bC
zvy}H5Cx1wbI=~*-611qS7l<{KzAUBsJ@QLwXLY&4?p<jCm@>hvYv(}h#0~snqS*W-
zubP2*`9J}K@936#xGpO1)y6#j;H0GovoD|gha4ZarHi-d8s+a>IU%5OD!}88)uGFZ
zqa<m~s13Z#MmEKWq)Te-Xh-hKgv04|YHFs0yo@+!wH<lGG44Ne7DZpV{*<*pk`Pfr
z&!hYrrZjtoOk{zsuNS@Cj=q#Gg9fC{LL^G+SoLs-iTwDQv;nI-9!)B}q2-Ze!v*H>
zNqe!ald;8;S+Cs|>#Spk*MU2Ur7WDb9A-{pd!`!icdL5!C}#UTaF1Y<UzpA|xVJ@I
z4{J!9iuL9p<0A5G0#mgy1PmlA`40Q`){c$KWw(!PMf|dQWto?$z+u<!+)XI0VABri
z_CCOi55C%OINb3Q)vXr6&aT<@C67%^pEmtyk&!2oiDX)L=Fm%(eHF*cIl7K$A01d!
zDt(ea`?R;R>q<wJf>6pf(<Mz;kwBq}wG<^yU8#sO)Z8((l40>uM1G)&&QuQ{SG9zV
zQ0xF8EkZ^=AIepGRLpF$vclw$qLvK#GufJHr0aLV>upPjL*vaCKeRo_uOs7~@?(JS
z;)_4ROmSSP>;-DZBL?Pcz1r8>!r3V?CzqOa39RZ1^ppm1bZV=NOFQ*spbF{PM}nd=
zdu{a-m9VIQA<M$u2yF^Y?|_38g4S=dZsb>U2+`|2m3S;R;KZm>5H|9*Di7j(030|C
zXTEqZGqzV?=tQwoD#x(Try=y@rwJ&SIKMq=tLhn(gyihLT(I|rDJ|y+<oiDeE_XBr
zOE>RqiGiK=w!?iSAksi@qRtv_1hv?#B}Yp!iqxXx4H_9tm5rEf5S9KP&caeP6RH{$
z2k*{VpGoC*h)<E{9d^#I={b$niv}hu@8^rhh_|nPm{LA)Y&Q+n4<1ZEw%ttT!)&p)
zU>aR&xt{)u<YMS+)6?<S)a5^KmwX&=t^NB8KZLlN_nHds5W-()i@qNa7F}w&D0$L1
zAKHN5(%8X$E4cOvd=Hu^^z~w80l)g<7do4T&>Q)gsq&I(&sAN#Shk8QG$tvnK1=AK
zdQ;3VWAC_!Ry_a+yin8a>ds68YOCfQmZ1!Mj6nA9m!V$A)R5ApnAp}gCm)$&*npAG
zo4~wK^L3fYbz3BMbaa<IoZIlK(&4B$owg+4B&a(F^bKAP?dnUG$S|R<DpqqI!wA(r
zUr+fBATaiKx?3z>M6E13Yy2zl=v~E7hSfHkFEMbLNjyA{%`Lf%6fRs2$<E?q;^0aa
zPqnC>sfN1kd~)yYv9BhP!-i(dki$#og`Ulo=8EWBupN9kM`?qXoH-MD)mh_VM3H)%
z)l)HhWMr%@W1xA6qM%~uuDYC0L+!QX&JI9MVSOd*+pB#WO8g1Li8-MW0k;Ez%^L%G
z8@0`3nDMI@V&Q%2lF)*|+1QPdnq^yhYpy@CfjP2+e+71mr_4wSi>R;d{im1I?g1@!
zDBxj<i)KQe-cXV2)3GGiO2YHAv`1LD8k5{KMN*Y4_KtR0p!&=Ct0v>B(Z!k8sXv>?
zW%Nm3ORYs;n9R^v_CeasHT>j$P6Fu>F-`cOss8|U;CkKJPtL^c@|e-qK1Jc2$$+5f
z+9~b0JCZD#>!svNZcpvekz}F4`45W9EiO)77tY67vCZBOT$}Lfcr7H&>}@U0se7W0
z&<mTt)^njiH73u=wf~~%dMKkR_dl55;S&Ff0`P)zSZ|fbaCB?2qh4&fjEg1Mr{S}9
zkk^CW?xTS4=g`P!z?Uh+fa#KLD;Zqe(j?-F%Xi~j6C7{wz^CQlpCR$L3Fe`SY4Fg4
z8Y8dsH3Ya3C-UF$n?<hC_QB!)|CYn$TAiD^SgTL{BI1@_gQcuuJeIq$zw~6ibjj7e
zLElspW?Wak_6iq?{PXkm3!uMA3(x4!<Z~aEk$%4TK9H!N+)$Z}s%3u)(XgaQ-khpH
zftbTV+3%qG9JLhrCuXWG4c-`v)|se*hdlZRFbzd){ewqmU>B)I=V$K4+^Ic{1RcdE
z-B=_adFxSq*nBjgz0-`h`tJQ-BErL6Jw2x|t5{0ZnGQlk<|xP~Jw7{bW(A<lN1y%6
zVc$2=Fg^+6>7c!%gFW>NV$Bu%iZGWIK~Sg|M{D5OT;5NY<d1J~AqMD52=_jx<hF+o
zkz%u6%P^dj?<t>L&BOFte`l(&vKD^~9;1FJ_m{VDhBnLdt+nm#11A@?%OAHlH6{2<
zf|LvXZn1<ANMu9=@e_ebJ)j({)rr4t5^}3&Q6c#zhIDuyoxmJ@2c|CPK6xU1J<lt$
z@Sd+<-u^^O0~ucG&Ljf_OWiv>96~hpX|g}SedZc;F@oY3kIs0^yoWXr$)!}Z)Y;Z3
z%wZ)$q|EMu=RsrkSK1hm{?4F1YUA}V!8NM+s))>ycutp{R7Jk^?q2uqg%V3oXITOk
z;blc_@BSC2twZ<oA8yI!JGkKzq%%z25kjaz5eNsec5R-};sFED@k@8@wqy7|@EOmO
ze?wjW%5MEDPC~O**OkRYL_`Htcl$89J>1yeFQY1c{s4(CI{a$yDZ1-308(FHf0sWD
z&HkY?nUCUV;A7GM0W<#tGVk9W(D>&E7O1ma9w#%aR+dTyONo)bAsT<fg0#+ZP%kvq
zny)Wo5q!--Hs77-t8TJegEL{46UV;<=yT!#Hvz4ne6REC@b@Rm%mR&o-ybs#W+dHE
zzw#(kInPS|e2sCZf5^EO3LWW`9Y-Sv35}w<n@-K(RsMLn_?RSLmy`6+3QHw-`^HF&
z!l`i`hL^`)6W?7>?pqt@O;VYDDnk*_7pl(2=QvMu+A|2OzGXi-OS3#bDr7Ya-D=z0
zqGD?fg^f*XlX%)}i=gvC-A3J7&nZC)#|paSjMRch6t-5(VN>OY(vOps+c`S{eq(Z-
z-~Atg-`fBKu<z{r84!*}cXVl_0o=LC0rzon2|A7R>ufgngkt=J%D==Cp~`C|tZ|`C
z(tzXT{#YWi4?(lCXrM<$82oJ^ax%1(^wC*{fUUay(NZgUh^Gd&wXt~(q`cReq?MJQ
z=zoj(1ojOA?iuqOR1x6jK_wr{B<y`#-$3F8gjX7h7EesRZsGm#jE1lCg{rCtqNn58
zp5V<Ms_|^z!^1afem*ISsd_>zkaa1P9NY4M1^0*~n4WlKu_J6KjyV96G*9;xXC?j#
zurL8E4>0<h_&sEgLke%Sk1Wx#H{=+pi060-x*SH>l^d3LqC{6s6A8vbq+b?=hH6-f
zwfMSsAYQ9hRV7~RHosSMIC_xiI9=_&PM+EWp^*Wxt6^vie)cgT!00ObU6FLSRz`yq
zOUKQ{Zse=Wq?lz#sN3~i(zriN7fqXQZ%mN7+H+f>&bB01R!}|hhfgcs)U+hxs(nY+
zZ<f!$IrwT0c6lr<ZP0WXT|1EOa%lZEq8Z)*LV?O~CCCeAd=YIKH_1g9gWaPw${|lo
zNmFe+3pF>C5y-AnTz8^!-`vO^Ov5zT6hd?Yo&Nd-$q?zzh{sH<Y#xy(O>gI@Z%rl-
zuE4eLb3qC!!q-#_A1;IjO0;WDkXbSXnHy%sj}`q5h)$jPR&j9+>JPUP;YCB?+A>c|
zVjyJaZiKk1Jyl#Js1w-p$ok~cx*F~)kngY1CqEisLk6+c{V5fflLLIU_`InA<0(Yh
znPkMrgr>ubo{}L<Rto#p-JckuCcd|};A8f(*i@hLgAIkClvy?fL9TN7wKjQI0_<CI
z?XrggH{PS3^!U^tF|NA14fG~&isKb$KK_}Sq_6)6cv0ti@IY&RgFB@veqASI$h-$2
z_I6N>`jtyM0cWxOP$rGJDO?_#0etOQavBIC#9`~i$BhXn$o}t8v1Yuuy>fG%>q+gj
zXzmwho8!yK%Gr9*t0SD2u}oLN(rpL#)2&EjC?;WqL$#wivK~5=kjn^UxLSs2fX&sO
z@Q5KaN~{OEQlHQFOuEmx=+y<yd05RZ9IrR@5XrXeZmcpgdHa$>UzoPjL~Gs`lIFKD
z1?dLJv^6${$$@<|wxZxq$D~|C9_<lNzPsZ0*e%khmTUHO>~4r?fgo`d95{M3@SBfz
zVt-hdZGuIt7IS)&8}?cqI+rRA2<2<6e4q(<hS9)1up1}y0xQ%yzqI+Ry?cAAw=|yz
zcj%V2sb))q@H`SHx+W&6Q9o@dujaiuS`GV<SER=JcZ>DM)OCn~W5%;gj}qBdyg$Zo
z`>!M+gY%wBwrgf|XecWiT{f<3U`Tx`ZVYfWmqN(HZt+lYrq3^{BQe&(OHOX|k!HtR
zVf^<}iQ_6fSj<58<0{IQ+_Ak?4zzg9$A?{m3`>ll>9qPGVXcBN(&)LuREP5}QHOu3
z0GV&&EF0-^eCqLON*XOSrE*1CK{!Nxn*XP$j6Qe>0%4UJ9E|c;xMU=;q2~M{*uTHI
zv^Y_d5LDy-QwUaUR470l265(7-+nQAZ5}3zE?znCowsZj$|TiRwdef&jI91IVj3=B
z^<$&F9!kivZgdwB=FXJfE-hP=u}<+yT4p9wKK9u&r?^Syy7Z}`iM)#Mp#eh4%M)y$
zen!W~)^0;ZQtR*-0TJJ=`6^u;`Ey%>8m0>+<{C-kSu_lewzd!vg{g8!jf-W5nxjA8
z9Wb89dpvH9OmbD`*UOwK-CbazjofMQTY|}smi>nopaZed@CYe)XYqSHOMBw9G%dUi
z?=llg^}xuVL(0BJU>i^msOx(hvL;&NaV3n-(cOw`PU@RL<w10tySLE)i4%NAX*4~h
z;JHYw*O+pgq5s|5k7NZiH(!_<ZQgg1k-3ez3-xcj!ADM53jNdm%Tj*%EE^3D8jCC0
zHO};y2?JLBmW5v%O38h1bx*@u@$5*w5a&QO>m+tgWVY?Xc+KwjRaLPGaH?VNOEoED
z&Lecuj;+Pg^u!BJw8EQ9$`0I}m-_Z^&hY0uQ|hV<o=NH2(n19bw~Xn|%3R=@mX-qU
zIunBR|BGDdhyJ#S?w4TS#`QJCcMWE;Nx5csxBhWP((+ZV2Zln)Q5qRbO%`43S-cc7
zx4f;<0gUQ-Q?ybOvi~)vqWQD7_j=>O71pz4@Xj!RoKRF4RH%$e-`e;b5@>^C<eDBD
zR%Nutv~JpRQ&OXwc~v0%Rd;{Sx-4#eaKUf$`Oq=k*uJS@+huTGzd??vj^G(tlTK`E
zt(wJbC%TaOjZeITAtAI9OU?PI*NkWXDy~*l?#tHpqn7gFIHT6$A4J}ICa+g_iJT5&
z<(}RhChy%t2>mN&j4)zWG>LD(b*1-n53xqL_p~|OZ}bj2Tto|kO3bax^-Q-TwIh#Z
zTk@kxGDFQ8fZn7#4($cvNSkt9f5wulpLMRnU6Q#>gA-3!$;l`(i&7y5Eb=#2?rW3f
za{?c_$P1Do*P6P>Yp9P<;sEoIJ><H{_g6~`?G>d=xe}a}_D;zj%hoqjhewHP-YrJ%
z88L&B3RLQD4*g4@b}H)r#`C<A-9~jmx(0Dx%I>g=mn874y$FBe(&6$WPyQ=;PWC*!
zZBhaX4@dhbSYI><HudKeRCpvf#k&wk!|t!E0>YiuYV5{__E`c%IZ79_p!ooXYt$K8
zTN4K;hmDzG5(iQnKS#OnA*QRfN56t+cCuq`bI*qz4)pGgt~!oO8IMRKXga_h!F&u|
z#oX)foCVb7qhUQSz8)|c5kXHB?xprnA(L)XhHm?oQNU(q;QT86=4rOe80JfyY`j*8
z#(0fs-k9gVGIqElzu9<4HV^hA`xFNl5htB{;c_E2-5-&WMzHn~Xd?a1acB6Y{?$N}
zs_pT3d2ikln!Jj(9y#HF;+s|xL}$EF5Ki3KaLhLPLtFf`Sm9rfB;%vBWC&%j+ONpX
z;qpvth)v1xTmKz)u(~Ee?+tfUp%x41>atrNUv$rumP+`T0AZ(B=jhl0#;1^$X8PIu
z;(K3y-j=cGA;w4tn|&`<M$6%TTijx?xWVi#9FrLW+fa6cu|r0Bj72$Gp{M%f+bS@>
zPvDKr9>+)J_2Z`ReUUzrl5uA>pC<~tK~0*x^?>(U;Ooc)55Jn_!}LrH9^T1rd!ZX;
z+w9aX-K?0L6rz0qVlM%96~RyuGu6mOD7iM<3HZ>~;U3ZsNU$cS0BuG-_kjsFqtyaf
zS5>`VAu$qKQd8ydV>Q><?TaOUd-^Xuew$WHK~VheV979r2;Vb1!QO#?eplXMcNGn0
zh`_0jjw=aL8~y7{9Sje5bl_ZZgN7|jh^q2(wY;el9dw}t_r;{w5`9lDj2f0LzSX8L
z;s>u58`oyk*YkUNdO}{os^s#H1E#AN+Kla=UV2dOc>2uwQ)BFIw0Lf70E?V{&!2Bh
z(mg=?F&Bd+4AL$(1KXn?y4xxm%u?2kjvxGjCXL^r9F#kOq2HvH)rgpQGQb{?GPG&9
zas3$e&Bj_ao->V*L`A%3^{CUt`5nEoG9V;2wLS54slXupa`I?vKPR<jYtP=yth0H+
zMG>Wl6^(*t;>70Vn>H(Q{rHjCO>mL=?f$R36@QQ5H~)HGIIy&-d4Rg=lQtFuZ~_k_
zNYi5@Q^|IrB7H84U@FvVv~kg+EJ1v^DLSH*(D!1Yscg9Pxkf^~{6fPXGv!Mps*@;X
zmv~p?q7%ZF)n%f#y1(!sL=SVdOjH+H^OYdun{)!~nymAH;m<7(s5<@<I^7+TpwhuM
zbNax7%YkKTW;XsaFI5X)CfHb#8aLWf8&d@mc^^rNGaRiUAXGj})@+j)S^tzr8&{q8
z&mi|CJO3Lyw=WI)yZ@dUI<xa1M<Lo(g#CY`uKZ6xMjW+zYN~;jQ7Vc3(e>TC_oRPe
z!9Yx%;?eb&i>`OGICu9%-O+cbs&M6+o<nr@=v=B|I$|ZPzn|v+3V(LIi`9-=jgvFi
z)GZUw`lO@TTHl;KpOk=Ez9R!X<~n%F+L%Y>k9mQkzf;Lry&KpHG-YnQVJk^^Iw;_+
zcNDy#UbG;VPI2-spX!gI^m4Oe2Q<MPFgT^|^g%z8zm7pfuZSv$v~YGGUymeeRh>yg
z+GM|Xz>~T?LtvtIo0sXQp_*luO3x~ZRbMH+7*{s*$^LO#_w}FAJ`q>F)X}4~_x^tM
znWjUo=JahRca1fFcH3XJm9+uM_it=RlJ=l@qE{wiB$=<NHRD?XMpo3O4vH1@=K{C`
zCVy*QlQk0o>GKu&c@S2zT*wF1n&}JK=2KM^s<1&rYnlj~84t;1T}esGOvj}gjfX4a
z^t^0yo*Opm!L#K^=+Xd*Ic*_HQD18yTH|OwHnlbP!9eC3AV|Z2mLQe=erqdJ{l#@|
zhCel2k~-M<6byRCEtha5L|-S~3zXui%Da0r!H%#TR@`LVYt@bpT%s6~%Jq?iZN+?e
zB1!QnyyPo;ai4TlKXIj4Wp8weCkCg3Ql@D989%2`q2>&R2J4M?e_$w_IdL(IuHy_A
z8Y-I%0D95s@s_heK6&!sJ|iBopR0?XG>$LgqG#JhWntn<{k#4%k0+~`L<O%zg~8)-
zNY^)d+c7QsVMrx%cQ^peXh?KZ6_IV7F0T<z*0S_D7T^=%imZB>grywlK^<lb&L9ze
z=AY%f7yANL6Y-CaWvAz-+&zW_2@wD~DFhtRL2<#ExlshMnM#>mf=W=%*ecpohRw1G
zBcb4QKBSj47j>uruCwUaa%V1|pO%iIbG7$owDN^f1^k0?$7kn;i%q)ejH@b2iMS)~
zs-eNOVF6ZyM+B{VTdrCKdG)+8^!jpaCb^@8kvlAiUqG2o=M)hrCAn8xyrT2~X}wP(
z0-YJ;$a;DDd}-z{psZ@#s826)F1#szjt2b(ezi^o_CLMODjq4=3#QcHs+YGs!wePn
z54fC+A@i_E2xwzooNGd&)czamCbc%QWb}aywb_5qmvO=sxg9$UTsp`^ZW677OLVhf
z2?hh~7MJnojJ;gtWXWLLHMpKA%NZ*^I%+Iq;ipDseX4T`B3X#)bkVQa)L))DrP^gY
zx`_%GEzbn}S9xZ^)qj&`%F35Ak^35onyQ5FNstm3&_yp1>y;&$wi@`KL``qpsFs4C
zAH}~BCadSF)DQAJ+m*gVgnMV6p@o%|I+%u&<7XWIm7MDe8+tMF|FUzFOZ9k|V9|q-
z2}d2SRYH-6wwrHQ{8%h``UINrZ~O>Vbe@#N<6RwACQI~OPKuqnH2~I^J4=Ej-7Y#K
zzY9r8h}u+{7M817%wLn&-dfyEZ<NRr(J*c00dMeb0(-%9)OB7{j<dCFLW^=o5*CPd
zLezb4Njss=2pK@e?J&@d21^R%jzvZ))NpA$XfIvBB3M!7CP1QluQ4~1Wle03!msNn
z(fL;L&Hqa4UFSq)$&siiv)~GN>s(w_&19B1E(%i4nb&8^nEFy<h!ObmuUVu9U<)HD
zPWc$x{>D_vN5BZ8$U~b8(>0z3nZO^Ti2lNG&ZDd71zIfJ4;IhQY``p>8ha+F*|bA@
zkYM`yQh__WG9zx}&eHD>Tdp%DFy3S@0Irq1B&cz|BCL=2!fqO-rXVS~a`3eAbio^J
zjlbUj*(^V+X_Gs8Oh+bGYT9kuQ+M81#uzvxqb84f%!e_HWi<zt7nj5r#Std<lLBzv
zS?(1l$M%tY$&g9T28;3uqIT~Po$H0Dd*@o}(Syv=^p+1w_0}6Ne=;fYle*?8E@VWB
z4>Zurd(sw!buQA7K0oI2WYBz*8IC*~8keNbSA;Mk)BM+hmMeuttwTcz-4~fYpp11p
z@lCf2&+KPQg~T`^Yk5K0J~W6YH>pAlYn1>|Lti%f^4#2D-~u13`r_XB&+Fp(Z=*k{
zMKoTO83_LM@s+bB&*N>TNma9V3)UoBTmsUU%MqC^wHpo;S3H;Sq5kNMee(kOX5jQh
zET3P6TjsOq*VIziG%YdkN~!_}0cV=(&`ru=_sJj0x0=%C=T9|YpOq;7Nps-;b{?I!
zP+q7-q&48UXbx&x;IO}7o|G9d!Rh5^Y{b=aURjw}!WiA~YAh~cgLWM)wWC~0->cZN
z3z4$)EeqS=XVX1HA(0{G@rmnpzBmh4=o&h~SoYNZ>!Fi2pNgq`N_nH&N1+~+XY~Ap
z?9Dm|<R@?<57TQ7ciz?QTj6QG3bnq`lb7DTHf4?!3qos{ih?Aq$G3N{=5t}i;bm|f
z7S0g6FW-K_$3>&t(;~yiK<n$^(18cm>8PtZ{#&zEp4wbfNPr|a=xXXqw+_4mz@O29
zs!?@Pi|HA)xg-XE7UCeo$$tsv@o{w+<8zXuxkYwOZBX`bl8u^WxMS-Ks4F|4UpbeU
zCYGYa0i%>qNQzq_b7P_mk4@e2?<@RNLB8`E&!Zg?<13WirQQ@YF2O<u;nrN(yPNMZ
zTTm<>uS@BhWZSSl+)xqgD@d}GBJAaCZSIAGRYG4E=fPyRb&<%r7wM}E`gFfiEAFQ3
zkOYrYVY>qJOA<Y=v#^-FW5f-L42m0bs0eAG#z(U6!L6UZhCAsON6<zJ=BtcpBf61s
zGvAk;CCi^vunoAtmJR6;cLqY~@KGYiryM>|aox7rw)XLtL0q3wcA%5it=E`P%Y}-1
zv$G!*`PA!;wAqqexRM|1&FCIp)y{=>MIYRHh|$MpqF|pk51O=f3T<zg<N3fMtsmT~
zlV#we%U|MOobvKm)Kg*xHsT*$3I}|bb(72*E;m06`+>9B_XFxS&T20q>Hjsw+pooc
z73#6G^0w|x%mf3Tmv9k8b_!+o>QZ{8%CRs$b-Q=^>u7-tQRXS>t?jl{W6%GV#AI4{
zR6I_0lD%VQ?a0LIed4Gk*=Z9ebL^g+#KOm+EU}<ym=UrORo5kDJtW^~c*2Fwa)0}j
z4tjDa9U$F|Ipofl`jKGs{OU+N;y4qb!6=H@k1<Jgrx?(3jPzTLLWfyDrVUIUqaKqq
zv9$#@gnt(xHv(Z-k#-ejCtej-t$luJ*4zPcx;sqX`ahbbq`V(3BN^x)jB`OE+Syc6
z7h&qIrJIKnD(fp?Fj`vpnmYJ(uyLrHyV*RfuQAnbYpF`ypwsz?<3u`*l4IrcFbjY!
zqWh3bo4V@I(5tyKYsvD($Yh7iRAdo-?M)o_<ENbKvo`Ee^F(ugW>%idNnAdi#UV3!
z${m?Rv)oe)W3oELx3KE3<)R*}tUMmOgE5@tW`^v4WT<%HY42z(I9kH&wmm7N-LN;3
z{!#}Kjt*eXu@`Cf@AKozwQ%rfwH{BP_xxc#6w5_q=dWu8*R~k*<olOs+r-e<Cfqj3
z3LPzsaKDEd&ih0%oKT#TXIsO$m1qtD9(2vqH&z(dO&J#5n;;`8g4&TRbJTOBws263
zmA~1i1f(RU#JAF(CN!@-yof)hBnM<rkLBiCJV9lsI>?}=7X7<<+>yrjPzws}l=tuB
z#=L$&&7=)p(FFM(giUG?JavGBataAL(fOyI?vF6B+DJ*Mf^<RkkFo3DC4Y^0@naqp
z{%Tdw=H}^#)2kM_fX%cyeY~6ASl9iAyM>UMt7)h<u-*Fww9AG~Pt4U{C>D$(#L<r$
zmvd<4R4?uf4|1WuXrs(mvbRw-(OEBwAR5ZZ4V6?3p5d{x;;TO^S?^?Iss-va`D|nu
z=r6#i0?#eY=cX^5IBVeA>{hl-1i_8oG9NO2b?y+z7jfX~XzM1EVLZCt|FW2n`hc(J
zqmgK%x6LA3@<GJ?`8JI&<^+js294=-^x0)RhWnYE7yZ~ex^kmH))TO~Z2oi4Q8)R>
znK#_lM#`<HVPcimH<j*+-2=C`9v}NwFQ+xs0>1k^t(UEF1HxrKG>L;+V!R}N0YR2|
zt{1dQ4(RMI-;Iq=HsJEK(jH^;(~tGou;!eZm+HC`mh)QUtoqZ23)7cjkHw6LTabi9
z3*KX!1g>DKsmaU%2a}4uLn9Fhb{S??i58Heq))I%?dh>UQD)yqq!EY5!C-69enueZ
z8<ujtRZ_>gsn!aH(GqWQT+DcN!CO;5tJCqE==qd-)No&DDCs57RdI_MJge0QfSNME
zFIa!xg(BM%X<raPS!WW&EKC{ITElhr-~D+-l%`{gw+W*{o~>e(MBVs}1E7J(6vyhb
zq2H~TAo{ERn|X2nt?RF11YwrFWYlV_spD5R-_vy>vb`o2Z|9({N!Rz!kX<B0Fsjdk
zD2ijPFMIv@;m8P1u+h~<UV;JpH42Vjl~uj2h%%%IR>CelX!ZM$8kVel4XBhVP)ZL|
zL<b+_p8#(AhPcfd0T=g;_7T;eMiN9K4NI}37S4aoS6eoGk)#34PfI)buT(73<g>ue
zNgKG_-WEJmX9_M21H9o(?jIS6QByCOzzCvdV{*RuQK<QFr;cjb-9?Wa_sY#<9!xE5
z@`n7lwj3Cg_0uc<X&gR4(4rl?pyxB7o`Cgfi6(?$B{{yefDLVuUosnK?3o=(Sj;!-
zH+#D^)w^R;L$XsEy(Ek-Y?OZcqSIa9=2UQt*CLqW&(mTEAETwU1qB6D73tNk4^vlD
zO%pG~K56Ntpgua&Qn$bo7Zn>PaKpPI9N5Z+b+Muy&kczv{^;8M)U`En{r8>2pC42M
zS*(ayF)B&LvxevUaveWm4oyC91wmvbV*$Gs=8kkP6WAomUsNUOW#KG3jWny+5stUc
z<6s>uo%k1Ogl#u1HJ8RgHw|+J7SE!ZSK}2tIP9&Wh5xX$hlXe}H{TY;x7hTsX1<A9
zO~aU2nuXAp+uiA?&YW2K4c-ycvV~66fbe93!@XO!yD<+hvuit=8zwGJ_O<ZFKkMCX
zy`T9^LXGA3p@nBj$Kcp+811jxb_&CALI{F}Hs#;oiHJb@WGn8b)FI<Z+|FosLgSgu
zeI~Nw*LQt>E(j3>`~%z?g+(u+AYv^7zyUZs{6()omWcny80t)zBH<*9T=g3Fh94*W
z6M=az{mYAgf-MCfzWygv)9s1)KT(-mSl|8$nH(m;f@!uHWSDc3fdBCj=-$l<y<!Xv
zk8lcB0l?iuTyFK6RYmW@=m%wQ{NpS;Sv7E3{-KBef86P>e*#5+a@BBmqU8fB44fIQ
z-(l-EwJCG@8M->ZxehLkjsaWUF&ETX+bhHlwc_YlZ>y>;Veqwb*}l+}zZM<%&zt#4
zGu{_5T)VVhsO=yTZ!+Osl#JnU#zW5+EN#};pfOCROJu@x#G{i?=Q^@Y3podo5e0D3
zRaR6SQswN*bWDyJ7bbqw`{N84CMEJHryPZtR_B-cJSQjcxE3uqi_SBxJD5$sVd^Bz
z?Pkm5tWrz0*hBgZJws!IvJ|JAOYNViY}<Jo@7{vMfth-d4Rhy74WhgQZG!1)`8h&+
zr1X%!D_22o#&yTn&y*B;S7(%sE}KE4M~CnKst+pesIpU4Rh?ZWf`auUQE=-5RqX3Q
zJG!QGyQv=xn0l+Pjlc=B$)R`Pzn(^nMbn`3@Y}piSEUE|V5k(5oI-0zfa17&FTZ1B
zeXO^~-7V=^bVut9&z^3c52T3HTPd%}(yy*eib*7-F*EHA6kFgt^BQ$Kz21Xe30wpg
z43N-zF7lNaTZi-|UNJ0ppNR!(>C+y>%-3<g6wrdQhw-i?4xUI2P}QzS$qdhy@|<Es
zJsP^SDMaj!cuT$%9Yg&#J($Qc{#pa$vQW?v3L3K4EIoav(p$sO*|&adAfJu*|8#cU
zK}~OMnyc3esB{ql1u0SmM0ya3AT`p3&^yuuq(})@r38>J9qAoHhtNasO(2Aj(0hxt
z&>>&&-ra9zXLojX|NqVJocGL}_kEtXJjXOzct=a)W09kjyDwsb>JSxrw`5DB(ds2t
z$orh7u9(RR+&)u?r+nZWVURE8!!n0Y`1YLkl2;6CJ(IN1yi;%#@eH(#jYQ}KWPwg`
z3p%O3Cyxrdo8Ok``gHmK*z^FR!jp~IxA(0mzm{Y%gC|nF(sasGBn^(dMh2*Bt6(;%
z+Sl3e{qi7$*u}P|BHv7NnuZ3-W*{4=`DEyhn74>}Z1m90_3<(=y00T%-YGBx5$pAk
z(Nq-}$B)&c+S{~wjBv3HPj*4AE88tNvb>|CPI%GH?Lxr!B`69BwS6{taN=dW{QGJF
zBDie_wH@o{Lk2^k-H_S-=C56CO$d?QdO2WLKSIc9Jd$48yUMQpw#rJzSrT3OqEZgo
zM*$RTd4g!^`0CZjeG}Qui?p=(<X1V$;yzckYav)=luc5U_Fb<0b5FJ@*Kxm2*G;JP
z(IyTIn29%h-lh4;cgcTcA$;(?H4IdIV0*HeTC+Qg%`}Q(y3K`_nCZTY>qI|cVVPIu
zuM;Vpo45B`gL{Ff1VvRWj@_Oqctxb?x)o{D!IZQ=Zkl$kX~dRux^E_YNsvvlW5$_m
z^L#qXIVFk(5WM?;w#RNY-nm{)wx-2>(h74;P*fqT+!6^ZU7iW$zcW#y!Q~v_SeKwN
zfC~&#$$cSw?sUkiVxSfQFy2$i4_sL8;ni`iKs=;p@L&svLS`Vsf-^iG`XSE<o&}g7
z4Zg)#smW0Wr)XBAZ>yu$L!A6bJcHVCK~#<q#^L$FUf9{ByQkCz=ti+O7dPzEo4zE~
z+*pxbCPhW%D#rfVndl$94vWrt7k1GUV!x&z_I7@JMA6r1BEQJnLUn!0K%N=3jpwyF
zf7S_`sU$Y;(mVVLz7DSjowR+Jg-hAS@VYswt5lnn@UVg+;~;iQS!x3gw66>y>wnOg
ziDo4dD?&bmljEVgT!ofF`y7fPmZm{@bs?`06;c_=8@<`)A%T&Gs(4rs=Rx~9>jocu
zb7c<O93YV<$!(=0=X5cwq$SM?aZ@}~YWgX<RzH4TUUX6z=_)O>OhwOwceiOg8SJ>i
z;mG7`IdtN)o<J1|Qy_QT`H>|_lRyg1BR;0NZZ)(bx2X=A$C=+8xO<rQ)Et_nT1ctU
zX~f2&DC!ee^)VHLO@wwAbt)oq+d$G;a=1f7&g@iOWTYbW$qZzUbs?ya$=)59C?A&t
z3A+w_ZkFfbF}xMU?jk=l=a2&&%h9q&qWgxv7r|z?_<skDwE3fb2L0V5&!a?Fkj>BQ
zIxKa*k3RUytWe2L1sh88Yz<KHp4%L(_|Umdltn<v>?HheoP4i-ABgRe=WrOnemEl?
z)LE|%fgDxY&RqOBprinq;|-2@0^X#YD5vREJfXh%B<wx1Z;Yi1_NJcwrnKoKjcHJK
zC)(TYjTO4e$}3JDgN$89Xg+IKof;YFpIpsFXw)?JEs&DSCy@F!MxjbzPFQA}>J+@+
zFJ(8$rqVzGqrHjd{%NTDp<Po!zW>;e*lG7`^w-LUb}Ka99+KA(A9o+!#M(lsw!U@6
zOes8ykf)(xR+lIX>^UTL5yVyLJ|Ir=7pW7I`Q+ACK8q+NpM`9dAN`5-=;!%{e9nZ}
z!u1vPhqn08LejkF?RqHQ3#X8-(K`3vGs1vtwc&i%d>N>nbR>n%9j%lUOqLUz(ht8v
zz&%!Z{WN7+JT=k|t0Ls`yvfsr*M3=y9ApaxD9<o5NmeSyadj5B(0wyRE?{JfPp~E9
z8(rZMwfGr&(PlmU`?a<^n=*d{LQW%1(8SRtE?wmgh$!|@LCKoWe+seNkWeK94@z}P
znkhB|XKrz%l-lddGSMC+>3KUHV`4(GyaW8mqJKn<?R9ySoE!|;DuRXc*vRYS@kFVG
zGmvlbZj!3N+5Cm)tIol~xj6v#8rdB{N~G!mhhuIBd(MDl(%TY?Og!U&l3vKW>i)U-
zaxc-H*T2X{FT)Q>%-U|T;}w+r$(<x`b9;~yML2XfD!ic^#57vH-&>Cx0JuD8IIs6i
z7i<De#1{jBv4$Gse?Hu-*_OK?0iC<^CY(ilcShHKyOOv_cTm8xF?x`U+>Wka--Px}
zc)K+ueU5;hs7!gx#x2XZSJ3L|J|)c@EBR8ScoESx3a6zR3T?Tu4azT4OweU;QX;fZ
z!m7`jvqL}$nx8-RaLnhEklce`z7bH`Bc1$1FZ<?@nybh%mD)u}7n*C`v>V|gs({cw
zpPlZ&$oQWpVZgdxt4j~P-nHw!XE%#pFtlDrGQ1hdOr@X+oH)v}l{QD-#93UlG2g<2
z#Sg6=Mlx$%dZ)O3?qGAnvV*2{QVEA&U+q%dQ)}rn??8C`hHoS>Y{&Z}Jq!*!Gp>~|
zv$d>9n;#t%6#j`_{%Ezv>(|b`7vbyd>c<u=+Paj-@2a81DNFk=8vcHia3~ZSmAl~S
z>P|K#Rc|S5%10TQu^;gAJ&lrgz&`9GitFsHr;K#IA2h|UYfZt+By3G~e(<Xf>@2P$
z^^~B@`GV1|HPv_4W}uS~TP<>H+HK>#B4i|b|Fv`%SRCm@C(v2_1-n0%C266mdeLH5
zCU9;2?Av_kkBdlHZj!EA=ft-Bp%Cdjj{TY(U20e(yk2cOQ-C6zN^l8|10;K#)XH9!
zWm!fe1G#-;I;^@igq*_+2S-JCr*(AA>~4gB5nVsLj|AE99g|Z*EOJQ~uuHhwoXcg0
zR5)eIw7;D?{b@<Y82~ai#Rq4P#Y1^`VEyFRv{kNT`Ik|l7-QLT0S)dJTFst&b!J#Y
zaLwslS<(DRwi0}FvHhl!VQoxI%wLbCNb|>9U)oI;!@ur)X`Zz`Ow9r`AtbCn3YLsh
z>j-^r@=Aj*<usF*kHv*Mq$I+XmL<$c4p-kM6kLpI#Qse~|8Plc1l;g)24hG4$VeF+
z&RwPS=mY!_@tB5>N|o@)`)Cyx4c-ao$4MN!&IM)J;ZhXHwc#`ky<|ecs3&{CR^s^d
zu%_6~uzzFN7PdBX=H(;7X|Z0jxw1f`0BlTrk}6@uWg6rj^yZP^t<!ScJT%Y@HAO-H
zz<avtr}+&5ih=t}Vg%#X?uZ-SWi?^ZuHDvw<?@B-yq59?hIB8!9z5A~2(Hae!ZsMw
zdRg~>Nn-}G?5Q{yWUPi)YGy8U8pR@xi^Z<^z)S6Cc#JAsuyaT*AKUOwpXvenfh|q8
zi42WgRb)g>4S3xtDOf<r-EQ2d+H<abj{bI81vpd7q~dwK2>up&+x)_m$Tr7L#<$Mn
z_^r+Q7;nb}nH0`bnkOhPuda4KEkM5ae?>tTQ{$zeS@?%5CVX4GmNyLQEiQorQ?Lq9
z-Z`E`wYR=~G+aDu@Cnx;rBYV5TSZA3`6>nNy%u9c>t5N$*G{y6gfPN@@LqqOtmglA
zQD5>1>r)zX3!cuR*+Z|zwI#;Nd)rTv2?PR_m`GTyTz}Ce(#7}7_hp5|P7L&j&&X3`
zO<SIaR%ppx^`wRdpsGh1vvrhR82a+l_93_vnH*t!2^2`U{_Nw*7?N`MIcH?YLaO&F
z<W*6?Th8Zj!8L}7){3e&ep`OZpNq`(y6B`^{sfED^0UqMPx3;wS}ZKLAC8rt`1bn6
zIQ5I{?w{HXN7n4LSQ&DDDy}MkF~Vr1y)G9Z@&5BSL-f@rwo_GFiwOiOW~*~jleH0{
zI}@n>McVHs4aQx75x|v{NS)@safOc$w8zd~PGkPVKS=%p-M19|y<d`-R*(MCulZ~6
zCG<BvA^AV>E3&?Ftlm;|k2&^tpBV{>wSc_5yhA=0k#pRAtu)Adxn+Q-V8SNr>28qF
z2!wfw-bqR8&%S>&b^c$=^OBeG^l?!Ke_P>SbgtEdEx(A%<?7u_a6e1Qxb5KaHwhL0
zthJJD$yI|yC1dYDh<v)DEt6zz07bT=%ylORU+2c{PgXeS9}UE}x3;#r19b!VlZRV6
zqK1CE43g#>nS6>fWn86Jan-z&C!r~|%a*E6raW&#4FDGAxi1DLPw^>K<<dF^!qK4c
z@M|ahb)B%-IB!pMawx{kFxGOan^!4te|@Y#qr^t3dND7Ul^CCqY=0P4+9QixyM{P;
zPS(=(wMLi$B*avL#llA2&RkVPQ7n*bZQCDJ%%=9(EIj8)4jnCR`6dHkM>3^*2Gx^1
z^gVWZqU1{+wPWZgfxM7!KKAl_Nj|EKovDE{Ub~DtOd(uD;q(1EvO2^Wu>!R071K~~
z$qdBWY<R3;1{JD@7jZXd>+}Bp;Q;>QkG>LThF*<DeMSW5B-H3ZBohJPGCe-=xB`XK
zmk6w_^jQ@7Nz`32eD<-ICS|A~_2A;6B*@chhLb?fCOdoe-Um`GdA_(`#Jg}W32USI
zwMi(+CO8ZaTfzOJ^P0c7G|8vnkj&atZJ_c@RGpg?0QPW0wW?NKE08mi$30jRw|Do}
zqbR8h?HEfp<R#DVntu}>*~I;@9SG!+u<lW)Z-Hsot~!Nfwv-q6P>39KW=ls`s0(G{
z>?J$LL|8J?96<$VNdjHPsS0p0fq}W7TkRHBL?<8X$Rd26QK-W#FL3zMqTL|O$me41
zYZ1#;*+xq|Bb{6M0)>IJGbEvTG*yADDGFj|;`Lg_ZF|mZh1t?7y41<wwAR2jVK)ID
z`Zr;JfiP5X{~?_2#3;e?08oD#J0wEX2^LVpHbk%)30kCu)G|d5w12LWV}@qwlGlFa
z9{nGw6*Z-X)tMWjQx#bGtkUaLCS-J3?!odyu^-x{E5o8z#HmQgLETSS9mJi(w<xKJ
z)}k;R^KWj&C6ucO1mXtX*LYwIPqwCs(L;4~gPl=1Rie&f@tY;@TE__EQ?hVoWBw*L
zL8Z~e)A^RGG`^h}A*<a1+sD33Ao|Ip?#kuQq4*cfb>H*3QpOuSR{2@oSIAknc8w(I
zYdF%Y!#9eb^0I&0MNHA|<*mXr5dOzQT@O|4(9;{n#(fcnRT)IO8kaxzTnbd<<R?sU
z@D?&f?#c2SA)|{QPR*~(xw74*3iOkL9R8j0fsHgO2&2Oq%fCs!Hascgjg%9v*S-1a
zRS;N-``pJQw|qB7EZ^Oo(MP`x6(><16$(b!bcHbrVf$;yEwGb-wYzPfXAX+A)Ya&+
z36WZ>m=?Lcv0+H1Ud$diCz-!8;rXYWibXARt-|{OR-ChP_wytt@wPIqbRoECfW!mO
zW5xFKJFJb#>tHIi&7f2HaRUe9E5@}lJ2zIR9vtB9917)uZD-$nr%u0g7t3(iEH59u
z8rSQ8+nPY_QZKG;fnti|7>6fdhWb&4uYk0Gu=SZ#DYfzr+Zgf<?<F$@Ae}qlS@9g8
zF_Mh}xs4C|MCqklTus+>T%aG&m5Q!_q<Ss`&281&z}_5BL9dsIY5U$7zZ3KxeXl~j
z3!l+1Wk>m2vcM=^R(-u2Q=f8*OfC-o&RgkaZ)Gq;wkF}exsAYfDqSBsK*(d36zerm
zh4iobytXiZpt&*TspN2=P-*WH03hyUyBx4!^qu^c;_+4CKJmueg_581Ya`;`rcrCz
z3VOezQYl+qI#2s6)n0E9_Sn;f_OISFSEv7#2F+yoSH0bP`G_yY>P1z)eFk99CDu8)
z*0>G!g_f09$qOO3ZoaW6YJZ64P*^*@6+Y7ULTm5Yh-6K?zBwjmKQQ^VY@-qrLN$v6
z?=lE*Ry%ma%fF+0(BbVGqN75|3RV#xgd}FF(;oS_tZR|>mD_n!U=(-9|2YJU^CJpD
z_=UvP8}C9$S&14lQk=8Hj?#L0<_iIk(GO#-YmIu_hV1r6;%43ZQ*$k{wO<SG6b>3Z
z^VAA=yj$x$ezoGgr~Ohvf%z}Ss`>sVye(pe-(KSVN-J(jT!wA5?p|SfEwvk=ch7SC
z`V>2aC@8^kj*5M=ca+gnow4<^mUVJjUt`_JihKTmbHPn>vpcT=r&8dBtX>;0TJFaC
z#y$@s3%P3m<oVU;`@Tn2Vg1;wLC5EGSvVW^U@R)YfX5K6{Nx@T;ryDXq?9a1sA8k(
z{nLZ6zs;M>e6|tJ=tQ416y`2;k5Ubh&v5r_L~_+(ymAcr-;<d6gj}xN?|p+7)Wc5@
zr8+dasnsh*0rHIW-OrRW^wF*FfWRUyj*2(1gm|rnnhU(2jZVVJD2fq>9j@Mgw=H9B
z14TZo;7d6^BM9Tnt4-lNYWi;nItFH|zJs-`Kgunn!<NN1DAd&ENF9VID1@u;r8K6<
zPG3*V-ILA4pT0=3-CMTvK0SPLu805X1-3~EXsm0k=Ai=jwKm)c50>2YC!<)(>d9dq
zz&!8W^XdGJNi?O1s=~n|n3X&&o*jBq4`7k{`Fq7^ixB9W?MZe~tv8%bAy6piC-Gt(
z_pafo3R~@kTjZ1R(4k}y<2dFs)H&LH+v7y4pRK6Q7&jX<1O}b@$bo)JL|@aS+&U>-
zLGUcbazS5{>wK29-^s=f{-{l2aH(0}iE^|s=hhq=DIdo*$pJx&*wu;BK-qvz%T?t5
zV)B=~Ra*|BiO(bOizstD?rs&3O0UN9;v%yoErUkd;LxnYV3y<NaN9RI$3`z<F@l=&
zNk%I3qTXcF%5UfP7Z=A1dlaU{L&kW!>J+5TJTt@iTs%R?Hn=cBE1JZ{WV78h(4r^*
z?k@vfn$qb8+<p6r?zsOfZOK_{1^mM({(`c9bM)Xi+K{G7vEb+``2m@z-a;XP4ar$m
zD}w$S^+?EvU#daDO{5$RN=RSN-VqT>$D5)8#;O&l6=Tpp6|FWHf+OYSZcNMv`&jd$
z4)ADBXC6P6>fp&o1Glc6#GZ)3&{JxCz48~6j**UNKxgb76Q3CF!KrCqpoxtIQG(Y@
zeh%!bTriq0lUpfD(8|RtlVOBmjp_N$^Xa5sjF{TEUoTu<v9_ewlR}yz`lyaQ#2t4l
zJh~=6cm8Tjq`!nCv$DpPxQQZ!9lkZFO^Djm3NBaJYKac^c;ZZoIT+X#mgr(MgpI%t
ztg%*@<e%7dtuMUduIrlQK_T@^Nsf&Qz&k!)R-OzQiB}t0MwZHKK)|%stQp_9Z@srT
zh@WfgJCO94i~4%s=%@6(0N&c?$5*3z%)`RMk~8#R+MLu*YC-jJz^Vst;paC?qA~N(
z?%axnCK>@s*13oh9~B<5Yge{zPhV~{ZE5;wNh6ntk^NX!=37>9Uk#LN$Z66Q2lLcz
zhUjh79ub8(Jv}|iF=7%TrD9EDZl4HO6Q_bofbH(bBlQY!anrJRlWFm}zlBY<Q~sky
zL~x+e9lowdZ7S^dD!n#FVWycj1;z-`^@@bD6D9_Fr<FO+0xg;e!92^_t5?O~ichGM
zuHgy%2tLiDKYj!AwB2XlN>xx7lKqiuk6@&~by(i<99XZ<&fE7r`}XF^{0^7LRjw{e
zCfg*Z5JLEE=|`6qk!Z4Czojj2V+KY37sUVW+R%sJ_mKDv)4xkG|1OYR+$aH5x|19`
R&RzaT;k7ET_?7XOe*x&=>bC#@

literal 0
HcmV?d00001

diff --git a/doc/memoryAnalysis/puncover.png b/doc/memoryAnalysis/puncover.png
new file mode 100644
index 0000000000000000000000000000000000000000..b32e1784de6eb500c7700679211c7e7511598b1f
GIT binary patch
literal 217193
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

literal 0
HcmV?d00001


From 8fb543f4c3174372f2f373b342a20d394cb58597 Mon Sep 17 00:00:00 2001
From: Joel Bradshaw <cincodenada@gmail.com>
Date: Sat, 12 Jun 2021 02:05:57 -0700
Subject: [PATCH 12/58] Add note about getting GadgetBridge from F-Droid (#358)

* Add note about getting GadgetBridge from F-Droid

Hopefully this is useful and will save folks some frustration

* Add note that GadgetBridge should be downloaded via F-Droid

There's an "unofficial" version on the Play Store that is outdated and doesn't have PineTime support

* Fix typo

* Add starting version, reword a bit

Initial support version is a little fuzzy, 0.47 states it's "not yet usable" but changelog doesn't specify when we've crossed the "usable" threshold.
---
 README.md                         | 2 +-
 doc/companionapps/Gadgetbridge.md | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index 396d7462..755f1905 100644
--- a/README.md
+++ b/README.md
@@ -62,7 +62,7 @@ As of now, here is the list of achievements of this project:
     * Firmware validation
     * System information
  - Supported by 3 companion apps (development is in progress):
-    * [Gadgetbridge](https://codeberg.org/Freeyourgadget/Gadgetbridge/) (on Android)
+    * [Gadgetbridge](https://codeberg.org/Freeyourgadget/Gadgetbridge/) (on Android via F-Droid)
     * [Amazfish](https://openrepos.net/content/piggz/amazfish) (on SailfishOS and Linux)
     * [Siglo](https://github.com/alexr4535/siglo) (on Linux)
     * **[Experimental]** [WebBLEWatch](https://hubmartin.github.io/WebBLEWatch/) Synchronize time directly from your web browser. [video](https://youtu.be/IakiuhVDdrY)
diff --git a/doc/companionapps/Gadgetbridge.md b/doc/companionapps/Gadgetbridge.md
index 1a25069c..974e2828 100644
--- a/doc/companionapps/Gadgetbridge.md
+++ b/doc/companionapps/Gadgetbridge.md
@@ -1,7 +1,7 @@
 # Integration with Gadgetbridge
 [Gadgetbridge](https://gadgetbridge.org/) is an Android application that supports many smartwatches and fitness trackers.
 
-The integration of InfiniTime (previously Pinetime-JF) is now merged into the master branch (https://codeberg.org/Freeyourgadget/Gadgetbridge/).
+The integration of InfiniTime (previously Pinetime-JF) is now merged into the master branch (https://codeberg.org/Freeyourgadget/Gadgetbridge/) and initial support is available [starting with version 0.47](https://codeberg.org/Freeyourgadget/Gadgetbridge/src/branch/master/CHANGELOG.md). Note that the official version is only available on F-Droid (as of May 2021), and the unofficial fork available on the Play Store is outdated and does not support Infinitime.
 
 ## Features
 The following features are implemented:

From 2c7ad783fc0d37c534050321a13759a28f9b83f0 Mon Sep 17 00:00:00 2001
From: Itai Nelken <70802936+Itai-Nelken@users.noreply.github.com>
Date: Sat, 12 Jun 2021 12:06:46 +0300
Subject: [PATCH 13/58] Improvements to /doc/filesInReleaseNotes.md (#357)

* Update filesInReleaseNotes.md
---
 doc/filesInReleaseNotes.md | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/doc/filesInReleaseNotes.md b/doc/filesInReleaseNotes.md
index f48a0c10..78c20b51 100644
--- a/doc/filesInReleaseNotes.md
+++ b/doc/filesInReleaseNotes.md
@@ -1,16 +1,16 @@
 # Using the releases
-For each new *stable* version of Pinetime, a [release note](https://github.com/JF002/InfiniTime/releases) is created. It contains a description of the main changes in the release and some files you can use to flash the firmware in your Pinetime.
+For each new *stable* version of IniniTime, a [release note](https://github.com/JF002/InfiniTime/releases) is created. It contains a description of the main changes in the release and some files you can use to flash the firmware to your Pinetime.
 
 This page describes the files from the release notes and how to use them.
 
-**NOTE :** the files included in different could be different. This page describes the release note of [version 0.7.1](https://github.com/JF002/InfiniTime/releases/tag/0.7.1), which is the version that'll probably be pre-programmed at the factory for the next batch of Pinetime devkits.
+**NOTE :** the files included in different Releases could be different. This page describes the release notes of [version 0.7.1](https://github.com/JF002/InfiniTime/releases/tag/0.7.1), which is the version that is pre-programmed for the last batches of pinetimes but will be replaced with [1.0.0](https://github.com/jF002/infiniTime/releases/tag/1.0.0) around june 2021.
 
-## Files included in the release note
+## Files included in the release notes
 
 ### Standalone firmware
-This firmware is standalone, meaning that it does not need a bootloader to actually run. It is intended to be flash at offset 0, meaning it will erase any bootloader that might be present in memory.
+This firmware is standalone, meaning that it does not need a bootloader to actually run. It is intended to be flashed at offset 0, meaning it will erase any bootloader that might be present in memory.
 
- - **pinetime-app.out** : Output file of GCC containing debug symbols, useful is you want to debug the firmware using GDB.
+ - **pinetime-app.out** : Output file of GCC containing debug symbols, useful if you want to debug the firmware using GDB.
  - **pinetime-app.hex** : Firmware in Intel HEX file format. Easier to use because it contains the offset in memory where it must be flashed, you don't need to specify it.
  - **pintime-app.bin** : Firmware in binary format. When programming it, you have to specify the offset (0x00) in memory where it must be flashed.
  - **pinetime-app.map** : Map file containing all the symbols, addresses in memory,...
@@ -38,7 +38,7 @@ This firmware is a small utility firmware that writes the boot graphic in the ex
 ### Firmware with bootloader
 This firmware is intended to be used with our [MCUBoot-based bootloader](../bootloader/README.md).
 
- - **pinetime-mcuboot-app-image.hex** : Firmware wrapped into an MCUBoot image. This is **the** file that must be flashed **@ 0x8000** into flash memory. If the [bootloader](../bootloader/README.md) has been successfully programmed, it should run this firmware after the next reset.
+ - **pinetime-mcuboot-app-image.hex**: Firmware wrapped into an MCUBoot image. This is **the** file that must be flashed at **0x8000** into the flash memory. If the [bootloader](../bootloader/README.md) has been successfully programmed, it should run this firmware after the next reset.
 
 The following files are not directly usable by the bootloader:
 

From 4d1626e3b6133e1b07c67749ac5037905e72270b Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jonathan@vandermey.ca>
Date: Sat, 12 Jun 2021 05:07:23 -0400
Subject: [PATCH 14/58] Fix fallthrough on case statement (#403)

---
 src/drivers/SpiMaster.cpp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/drivers/SpiMaster.cpp b/src/drivers/SpiMaster.cpp
index 0d5bb83c..c45e1294 100644
--- a/src/drivers/SpiMaster.cpp
+++ b/src/drivers/SpiMaster.cpp
@@ -56,6 +56,7 @@ bool SpiMaster::Init() {
       break;
     case BitOrder::Lsb_Msb:
       regConfig = 1;
+      break;
     default:
       return false;
   }

From 772ea0b5916903663ed6e01a7fb439dcc73d61a6 Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jonathan@vandermey.ca>
Date: Sat, 12 Jun 2021 05:10:10 -0400
Subject: [PATCH 15/58] Replace raw new expressions with make_unique (#406)

Using make_unique avoids needing to repeat type information making it
less verbose. Also fixes clang-tidy warning modernize-make-unique.

From bf906bd573b37e0bb592221dae6b5f156836a6b6 Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Sat, 12 Jun 2021 12:12:39 +0300
Subject: [PATCH 16/58] Fix scrollbar (#382)

---
 src/displayapp/screens/SystemInfo.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index a7387dac..a0b626e9 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -161,7 +161,7 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
                         brightnessController.ToString(),
                         resetReason);
   lv_obj_align(label, lv_scr_act(), LV_ALIGN_CENTER, 0, 0);
-  return std::make_unique<Screens::Label>(1, 4, app, label);
+  return std::make_unique<Screens::Label>(1, 5, app, label);
 }
 
 std::unique_ptr<Screen> SystemInfo::CreateScreen3() {

From 44d7c6d00f3ec919c6f70d32d084c26539aa58aa Mon Sep 17 00:00:00 2001
From: Roxxor91 <Roxxor91@users.noreply.github.com>
Date: Sat, 12 Jun 2021 11:15:39 +0200
Subject: [PATCH 17/58] Update Amazfish.md (#386)

Add Navigation feature.
---
 doc/companionapps/Amazfish.md | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/doc/companionapps/Amazfish.md b/doc/companionapps/Amazfish.md
index eb9daa04..90ad20c2 100644
--- a/doc/companionapps/Amazfish.md
+++ b/doc/companionapps/Amazfish.md
@@ -8,8 +8,9 @@ The following features are implemented:
  - Time synchronization
  - Notifications
  - Music control
+ - Navigation with Puremaps
  
 ## Demo
 [This video](https://seafile.codingfield.com/f/21c5d023452740279e36/) shows how to connect to the Pinetime and control the playback of the music on the phone.
 Amazfish and Sailfish OS are running on the [Pinephone](https://www.pine64.org/pinephone/), another awesome device from Pine64.
- 
\ No newline at end of file
+ 

From d4f4ed014cecb600a5fb8541cff1f01bf2c46d54 Mon Sep 17 00:00:00 2001
From: Pekka <85409219+pekkakr@users.noreply.github.com>
Date: Sat, 12 Jun 2021 12:16:54 +0300
Subject: [PATCH 18/58] Update buildWithDocker.md (#416)

Added a link to instructions for cloning the repo. The purpose was mainly to remind of the git submodule update.
---
 doc/buildWithDocker.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/doc/buildWithDocker.md b/doc/buildWithDocker.md
index 7a2f3727..17fb53d9 100644
--- a/doc/buildWithDocker.md
+++ b/doc/buildWithDocker.md
@@ -13,7 +13,7 @@ Based on Ubuntu 18.04 with the following build dependencies:
 
 The `infinitime-build` image contains all the dependencies you need. The default `CMD` will compile sources found in `/sources`, so you need only mount your code. 
 
-This example  will build the firmware, generate the MCUBoot image and generate the DFU file. Outputs will be written to **<project_root>/build/output**:
+This example  will build the firmware, generate the MCUBoot image and generate the DFU file. For cloning the repo, see [these instructions](../doc/buildAndProgram.md#clone-the-repo). Outputs will be written to **<project_root>/build/output**:
 
 ```bash
 cd <project_root> # e.g. cd ./work/Pinetime

From 314a8ebba070bd935c795cea2955d494f002797f Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Sat, 12 Jun 2021 12:18:19 +0300
Subject: [PATCH 19/58] Changed the namespace of SystemInfo::sortById to avoid
 a name conflict (#360)

---
 src/displayapp/DisplayApp.cpp         | 2 --
 src/displayapp/screens/SystemInfo.cpp | 2 +-
 src/displayapp/screens/SystemInfo.h   | 3 +++
 3 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index 05f171be..01e26e22 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -331,8 +331,6 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
         std::make_unique<Screens::SystemInfo>(this, dateTimeController, batteryController, brightnessController, bleController, watchdog);
       ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
       break;
-      //
-
     case Apps::FlashLight:
       currentScreen = std::make_unique<Screens::FlashLight>(this, *systemTask, brightnessController);
       ReturnApp(Apps::Clock, FullRefreshDirections::Down, TouchEvents::None);
diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index a0b626e9..9ff28288 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -198,7 +198,7 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen3() {
   return std::make_unique<Screens::Label>(2, 5, app, label);
 }
 
-bool sortById(const TaskStatus_t& lhs, const TaskStatus_t& rhs) {
+bool SystemInfo::sortById(const TaskStatus_t& lhs, const TaskStatus_t& rhs) {
   return lhs.xTaskNumber < rhs.xTaskNumber;
 }
 
diff --git a/src/displayapp/screens/SystemInfo.h b/src/displayapp/screens/SystemInfo.h
index c0c65554..c61a07a2 100644
--- a/src/displayapp/screens/SystemInfo.h
+++ b/src/displayapp/screens/SystemInfo.h
@@ -43,6 +43,9 @@ namespace Pinetime {
         Pinetime::Drivers::WatchdogView& watchdog;
 
         ScreenList<5> screens;
+
+        static bool sortById(const TaskStatus_t& lhs, const TaskStatus_t& rhs);
+
         std::unique_ptr<Screen> CreateScreen1();
         std::unique_ptr<Screen> CreateScreen2();
         std::unique_ptr<Screen> CreateScreen3();

From d7962617e47c221b6274af53b9488e5280c8d2d8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Sat, 12 Jun 2021 14:21:29 +0200
Subject: [PATCH 20/58] Clock : initialize the actual clockface in
 initialization list instead of in the core of the ctro().

---
 src/displayapp/screens/Clock.cpp | 31 ++++++++++++-------------------
 1 file changed, 12 insertions(+), 19 deletions(-)

diff --git a/src/displayapp/screens/Clock.cpp b/src/displayapp/screens/Clock.cpp
index 9962a9f4..05e47a39 100644
--- a/src/displayapp/screens/Clock.cpp
+++ b/src/displayapp/screens/Clock.cpp
@@ -32,25 +32,18 @@ Clock::Clock(DisplayApp* app,
     notificatioManager {notificatioManager},
     settingsController {settingsController},
     heartRateController {heartRateController},
-    motionController {motionController} {
-  
-  switch (settingsController.GetClockFace()) {
-    case 0:
-      screen = WatchFaceDigitalScreen();
-      break;
-    case 1:
-      screen = WatchFaceAnalogScreen();
-      break;
-    /*
-    // Examples for more watch faces
-    case 2:
-      screen = WatchFaceMinimalScreen();
-      break;
-    case 3:
-      screen = WatchFaceCustomScreen();
-      break;
-    */
-  }
+    motionController {motionController},
+    screen {[this, &settingsController]() {
+      switch (settingsController.GetClockFace()) {
+        case 0:
+          return WatchFaceDigitalScreen();
+          break;
+        case 1:
+          return WatchFaceAnalogScreen();
+          break;
+      }
+      return WatchFaceDigitalScreen();
+    }()} {
   settingsController.SetAppMenu(0);
 }
 

From c575754b4283ab1e8a2b1320a97992db6712ac58 Mon Sep 17 00:00:00 2001
From: Bryton Hall <email@bryton.io>
Date: Sat, 12 Jun 2021 09:06:58 -0400
Subject: [PATCH 21/58] add basic metronome app (#409)

* add basic metronome app

* add bpb, tap to bpm, update widgets

* use event pressed for bpm tap

* move case statement break to the right place

* narrow bpm selection range, override touch events

* fix arc knob style

* re-enable sleeping in destructor
---
 src/CMakeLists.txt                         |   2 +
 src/displayapp/Apps.h                      |   1 +
 src/displayapp/DisplayApp.cpp              |   8 +-
 src/displayapp/lv_pinetime_theme.c         |  13 ++
 src/displayapp/screens/ApplicationList.cpp |   2 +-
 src/displayapp/screens/Metronome.cpp       | 169 +++++++++++++++++++++
 src/displayapp/screens/Metronome.h         |  34 +++++
 7 files changed, 226 insertions(+), 3 deletions(-)
 create mode 100644 src/displayapp/screens/Metronome.cpp
 create mode 100644 src/displayapp/screens/Metronome.h

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index c72f7c9c..71909d7d 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -396,6 +396,7 @@ list(APPEND SOURCE_FILES
         displayapp/screens/FirmwareUpdate.cpp
         displayapp/screens/Music.cpp
         displayapp/screens/Navigation.cpp
+        displayapp/screens/Metronome.cpp
         displayapp/screens/Motion.cpp
         displayapp/screens/FirmwareValidation.cpp
         displayapp/screens/ApplicationList.cpp
@@ -592,6 +593,7 @@ set(INCLUDE_FILES
         displayapp/Apps.h
         displayapp/screens/Notifications.h
         displayapp/screens/HeartRate.h
+        displayapp/screens/Metronome.h
         displayapp/screens/Motion.h
         displayapp/screens/Timer.h
         drivers/St7789.h
diff --git a/src/displayapp/Apps.h b/src/displayapp/Apps.h
index 2df517f8..684e3a46 100644
--- a/src/displayapp/Apps.h
+++ b/src/displayapp/Apps.h
@@ -21,6 +21,7 @@ namespace Pinetime {
       HeartRate,
       Navigation,
       StopWatch,
+      Metronome,
       Motion,
       Steps,
       QuickSettings,
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index 01e26e22..cd25c979 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -18,6 +18,7 @@
 #include "displayapp/screens/Paddle.h"
 #include "displayapp/screens/StopWatch.h"
 #include "displayapp/screens/Meter.h"
+#include "displayapp/screens/Metronome.h"
 #include "displayapp/screens/Music.h"
 #include "displayapp/screens/Navigation.h"
 #include "displayapp/screens/Notifications.h"
@@ -318,7 +319,7 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
       currentScreen = std::make_unique<Screens::SettingDisplay>(this, settingsController);
       ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
       break;
-    case Apps::SettingSteps: 
+    case Apps::SettingSteps:
       currentScreen = std::make_unique<Screens::SettingSteps>(this, settingsController);
       ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
       break;
@@ -356,10 +357,13 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
     case Apps::HeartRate:
       currentScreen = std::make_unique<Screens::HeartRate>(this, heartRateController, *systemTask);
       break;
+    case Apps::Metronome:
+      currentScreen = std::make_unique<Screens::Metronome>(this, motorController, systemTask);
+      break;
     case Apps::Motion:
       currentScreen = std::make_unique<Screens::Motion>(this, motionController);
       break;
-    case Apps::Steps: 
+    case Apps::Steps:
       currentScreen = std::make_unique<Screens::Steps>(this, motionController, settingsController);
       break;
   }
diff --git a/src/displayapp/lv_pinetime_theme.c b/src/displayapp/lv_pinetime_theme.c
index b003a411..1b8b1980 100644
--- a/src/displayapp/lv_pinetime_theme.c
+++ b/src/displayapp/lv_pinetime_theme.c
@@ -48,6 +48,7 @@ static lv_style_t style_sw_bg;
 static lv_style_t style_sw_indic;
 static lv_style_t style_sw_knob;
 static lv_style_t style_arc_bg;
+static lv_style_t style_arc_knob;
 static lv_style_t style_arc_indic;
 static lv_style_t style_table_cell;
 static lv_style_t style_pad_small;
@@ -191,6 +192,7 @@ static void basic_init(void) {
   lv_style_set_text_line_space(&style_ddlist_list, LV_STATE_DEFAULT, LV_VER_RES / 25);
   lv_style_set_shadow_width(&style_ddlist_list, LV_STATE_DEFAULT, LV_VER_RES / 20);
   lv_style_set_shadow_color(&style_ddlist_list, LV_STATE_DEFAULT, LV_PINETIME_GRAY);
+  lv_style_set_bg_color(&style_ddlist_list, LV_STATE_DEFAULT, LV_PINETIME_GRAY);
 
   style_init_reset(&style_ddlist_selected);
   lv_style_set_bg_opa(&style_ddlist_selected, LV_STATE_DEFAULT, LV_OPA_COVER);
@@ -239,6 +241,13 @@ static void basic_init(void) {
   lv_style_set_line_color(&style_arc_bg, LV_STATE_DEFAULT, LV_PINETIME_GRAY);
   lv_style_set_line_width(&style_arc_bg, LV_STATE_DEFAULT, LV_DPX(25));
   lv_style_set_line_rounded(&style_arc_bg, LV_STATE_DEFAULT, true);
+  lv_style_set_pad_all(&style_arc_bg, LV_STATE_DEFAULT, LV_DPX(5));
+
+  lv_style_reset(&style_arc_knob);
+  lv_style_set_radius(&style_arc_knob, LV_STATE_DEFAULT, LV_RADIUS_CIRCLE);
+  lv_style_set_bg_opa(&style_arc_knob, LV_STATE_DEFAULT, LV_OPA_COVER);
+  lv_style_set_bg_color(&style_arc_knob, LV_STATE_DEFAULT, LV_PINETIME_LIGHT_GRAY);
+  lv_style_set_pad_all(&style_arc_knob, LV_STATE_DEFAULT, LV_DPX(5));
 
   style_init_reset(&style_table_cell);
   lv_style_set_border_color(&style_table_cell, LV_STATE_DEFAULT, LV_PINETIME_GRAY);
@@ -447,6 +456,10 @@ static void theme_apply(lv_obj_t* obj, lv_theme_style_t name) {
       lv_obj_clean_style_list(obj, LV_ARC_PART_INDIC);
       list = lv_obj_get_style_list(obj, LV_ARC_PART_INDIC);
       _lv_style_list_add_style(list, &style_arc_indic);
+
+      lv_obj_clean_style_list(obj, LV_ARC_PART_KNOB);
+      list = lv_obj_get_style_list(obj, LV_ARC_PART_KNOB);
+      _lv_style_list_add_style(list, &style_arc_knob);
       break;
 
     case LV_THEME_SWITCH:
diff --git a/src/displayapp/screens/ApplicationList.cpp b/src/displayapp/screens/ApplicationList.cpp
index d599f5cc..d434c177 100644
--- a/src/displayapp/screens/ApplicationList.cpp
+++ b/src/displayapp/screens/ApplicationList.cpp
@@ -63,7 +63,7 @@ std::unique_ptr<Screen> ApplicationList::CreateScreen2() {
     {Symbols::paddle, Apps::Paddle},
     {"2", Apps::Twos},
     {"M", Apps::Motion},
-    {"", Apps::None},
+    {"b", Apps::Metronome},
     {"", Apps::None},
   }};
 
diff --git a/src/displayapp/screens/Metronome.cpp b/src/displayapp/screens/Metronome.cpp
new file mode 100644
index 00000000..c536e301
--- /dev/null
+++ b/src/displayapp/screens/Metronome.cpp
@@ -0,0 +1,169 @@
+#include "Metronome.h"
+
+#include "Screen.h"
+#include "Symbols.h"
+#include "lvgl/lvgl.h"
+#include "FreeRTOSConfig.h"
+#include "task.h"
+
+#include <string>
+#include <tuple>
+
+using namespace Pinetime::Applications::Screens;
+
+namespace {
+  float calculateDelta(const TickType_t startTime, const TickType_t currentTime) {
+    TickType_t delta = 0;
+    // Take care of overflow
+    if (startTime > currentTime) {
+      delta = 0xffffffff - startTime;
+      delta += (currentTime + 1);
+    } else {
+      delta = currentTime - startTime;
+    }
+    return static_cast<float>(delta) / static_cast<float>(configTICK_RATE_HZ);
+  }
+
+  static void eventHandler(lv_obj_t* obj, lv_event_t event) {
+    Metronome* screen = static_cast<Metronome*>(obj->user_data);
+    screen->OnEvent(obj, event);
+  }
+
+  lv_obj_t* createLabel(const char* name, lv_obj_t* reference, lv_align_t align, lv_font_t* font, uint8_t x = 0, uint8_t y = 0) {
+    lv_obj_t* label = lv_label_create(lv_scr_act(), nullptr);
+    lv_obj_set_style_local_text_font(label, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, font);
+    lv_obj_set_style_local_text_color(label, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);
+    lv_label_set_text(label, name);
+    lv_obj_align(label, reference, align, x, y);
+
+    return label;
+  }
+}
+
+Metronome::Metronome(DisplayApp* app, Controllers::MotorController& motorController, System::SystemTask& systemTask)
+  : Screen(app), running {true}, currentState {States::Stopped}, startTime {}, motorController {motorController}, systemTask {systemTask} {
+
+  bpmArc = lv_arc_create(lv_scr_act(), nullptr);
+  bpmArc->user_data = this;
+  lv_obj_set_event_cb(bpmArc, eventHandler);
+  lv_arc_set_bg_angles(bpmArc, 0, 270);
+  lv_arc_set_rotation(bpmArc, 135);
+  lv_arc_set_range(bpmArc, 40, 220);
+  lv_arc_set_value(bpmArc, bpm);
+  lv_obj_set_size(bpmArc, 210, 210);
+  lv_arc_set_adjustable(bpmArc, true);
+  lv_obj_align(bpmArc, lv_scr_act(), LV_ALIGN_IN_TOP_MID, 0, 7);
+
+  bpmValue = createLabel(std::to_string(lv_arc_get_value(bpmArc)).c_str(), bpmArc, LV_ALIGN_IN_TOP_MID, &jetbrains_mono_76, 0, 55);
+  bpmLegend = createLabel("bpm", bpmValue, LV_ALIGN_OUT_BOTTOM_MID, &jetbrains_mono_bold_20, 0, 0);
+
+  bpmTap = lv_btn_create(lv_scr_act(), nullptr);
+  bpmTap->user_data = this;
+  lv_obj_set_event_cb(bpmTap, eventHandler);
+  lv_obj_set_style_local_bg_opa(bpmTap, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_OPA_TRANSP);
+  lv_obj_set_height(bpmTap, 80);
+  lv_obj_align(bpmTap, bpmValue, LV_ALIGN_IN_TOP_MID, 0, 0);
+
+  bpbDropdown = lv_dropdown_create(lv_scr_act(), nullptr);
+  bpbDropdown->user_data = this;
+  lv_obj_set_event_cb(bpbDropdown, eventHandler);
+  lv_obj_set_style_local_pad_left(bpbDropdown, LV_DROPDOWN_PART_MAIN, LV_STATE_DEFAULT, 20);
+  lv_obj_set_style_local_pad_left(bpbDropdown, LV_DROPDOWN_PART_LIST, LV_STATE_DEFAULT, 20);
+  lv_obj_align(bpbDropdown, lv_scr_act(), LV_ALIGN_IN_BOTTOM_LEFT, 15, -4);
+  lv_dropdown_set_options(bpbDropdown, "1\n2\n3\n4\n5\n6\n7\n8\n9");
+  lv_dropdown_set_selected(bpbDropdown, bpb - 1);
+  bpbLegend = lv_label_create(bpbDropdown, nullptr);
+  lv_label_set_text(bpbLegend, "bpb");
+  lv_obj_align(bpbLegend, bpbDropdown, LV_ALIGN_IN_RIGHT_MID, -15, 0);
+
+  playPause = lv_btn_create(lv_scr_act(), nullptr);
+  playPause->user_data = this;
+  lv_obj_set_event_cb(playPause, eventHandler);
+  lv_obj_align(playPause, lv_scr_act(), LV_ALIGN_IN_BOTTOM_RIGHT, -15, -10);
+  lv_obj_set_height(playPause, 39);
+  playPauseLabel = lv_label_create(playPause, nullptr);
+  lv_label_set_text(playPauseLabel, Symbols::play);
+
+  app->SetTouchMode(DisplayApp::TouchModes::Polling);
+}
+
+Metronome::~Metronome() {
+  app->SetTouchMode(DisplayApp::TouchModes::Gestures);
+  systemTask.PushMessage(Pinetime::System::SystemTask::Messages::EnableSleeping);
+  lv_obj_clean(lv_scr_act());
+}
+
+bool Metronome::OnTouchEvent(Pinetime::Applications::TouchEvents event) {
+  return true;
+}
+
+bool Metronome::Refresh() {
+  switch (currentState) {
+    case States::Stopped: {
+      break;
+    }
+    case States::Running: {
+      if (calculateDelta(startTime, xTaskGetTickCount()) >= (60.0 / bpm)) {
+        counter--;
+        startTime -= 60.0 / bpm;
+        startTime = xTaskGetTickCount();
+        if (counter == 0) {
+          counter = bpb;
+          motorController.SetDuration(90);
+        } else {
+          motorController.SetDuration(30);
+        }
+      }
+      break;
+    }
+  }
+  return running;
+}
+
+void Metronome::OnEvent(lv_obj_t* obj, lv_event_t event) {
+  switch (event) {
+    case LV_EVENT_VALUE_CHANGED: {
+      if (obj == bpmArc) {
+        bpm = lv_arc_get_value(bpmArc);
+        lv_label_set_text_fmt(bpmValue, "%03d", bpm);
+      } else if (obj == bpbDropdown) {
+        bpb = lv_dropdown_get_selected(obj) + 1;
+      }
+      break;
+    }
+    case LV_EVENT_PRESSED: {
+      if (obj == bpmTap) {
+        float timeDelta = calculateDelta(tappedTime, xTaskGetTickCount());
+        if (tappedTime == 0 || timeDelta > 3) {
+          tappedTime = xTaskGetTickCount();
+        } else {
+          bpm = ceil(60.0 / timeDelta);
+          lv_arc_set_value(bpmArc, bpm);
+          lv_label_set_text_fmt(bpmValue, "%03d", bpm);
+          tappedTime = xTaskGetTickCount();
+        }
+      }
+      break;
+    }
+    case LV_EVENT_CLICKED: {
+      if (obj == playPause) {
+        currentState = (currentState == States::Stopped ? States::Running : States::Stopped);
+        switch (currentState) {
+          case States::Stopped: {
+            lv_label_set_text(playPauseLabel, Symbols::play);
+            systemTask.PushMessage(Pinetime::System::SystemTask::Messages::EnableSleeping);
+            break;
+          }
+          case States::Running: {
+            lv_label_set_text(playPauseLabel, Symbols::pause);
+            systemTask.PushMessage(Pinetime::System::SystemTask::Messages::DisableSleeping);
+            startTime = xTaskGetTickCount();
+            counter = 1;
+            break;
+          }
+        }
+      }
+      break;
+    }
+  }
+}
diff --git a/src/displayapp/screens/Metronome.h b/src/displayapp/screens/Metronome.h
new file mode 100644
index 00000000..3a1f1084
--- /dev/null
+++ b/src/displayapp/screens/Metronome.h
@@ -0,0 +1,34 @@
+#pragma once
+
+#include "systemtask/SystemTask.h"
+#include "components/motor/MotorController.h"
+
+#include <array>
+
+namespace Pinetime::Applications::Screens {
+
+  class Metronome : public Screen {
+  public:
+    Metronome(DisplayApp* app, Controllers::MotorController& motorController, System::SystemTask& systemTask);
+    ~Metronome() override;
+    bool Refresh() override;
+    bool OnTouchEvent(TouchEvents event) override;
+    void OnEvent(lv_obj_t* obj, lv_event_t event);
+    enum class States { Running, Stopped };
+
+  private:
+    bool running;
+    States currentState;
+    TickType_t startTime;
+    TickType_t tappedTime = 0;
+    Controllers::MotorController& motorController;
+    System::SystemTask& systemTask;
+    uint16_t bpm = 120;
+    uint8_t bpb = 4;
+    uint8_t counter = 1;
+
+    lv_obj_t *bpmArc, *bpmTap, *bpmValue, *bpmLegend;
+    lv_obj_t *bpbDropdown, *bpbLegend;
+    lv_obj_t *playPause, *playPauseLabel;
+  };
+}

From d6fcbe960e595e53e3f24cbaae0cbb0505ad6dc2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Sat, 12 Jun 2021 15:14:14 +0200
Subject: [PATCH 22/58] Fix build issues since Metronome app has been merged.

---
 src/displayapp/DisplayApp.cpp        | 2 +-
 src/displayapp/screens/Metronome.cpp | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index cd25c979..ab73969d 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -358,7 +358,7 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
       currentScreen = std::make_unique<Screens::HeartRate>(this, heartRateController, *systemTask);
       break;
     case Apps::Metronome:
-      currentScreen = std::make_unique<Screens::Metronome>(this, motorController, systemTask);
+      currentScreen = std::make_unique<Screens::Metronome>(this, motorController, *systemTask);
       break;
     case Apps::Motion:
       currentScreen = std::make_unique<Screens::Motion>(this, motionController);
diff --git a/src/displayapp/screens/Metronome.cpp b/src/displayapp/screens/Metronome.cpp
index c536e301..7bfbccb7 100644
--- a/src/displayapp/screens/Metronome.cpp
+++ b/src/displayapp/screens/Metronome.cpp
@@ -89,7 +89,7 @@ Metronome::Metronome(DisplayApp* app, Controllers::MotorController& motorControl
 
 Metronome::~Metronome() {
   app->SetTouchMode(DisplayApp::TouchModes::Gestures);
-  systemTask.PushMessage(Pinetime::System::SystemTask::Messages::EnableSleeping);
+  systemTask.PushMessage(System::Messages::EnableSleeping);
   lv_obj_clean(lv_scr_act());
 }
 
@@ -151,12 +151,12 @@ void Metronome::OnEvent(lv_obj_t* obj, lv_event_t event) {
         switch (currentState) {
           case States::Stopped: {
             lv_label_set_text(playPauseLabel, Symbols::play);
-            systemTask.PushMessage(Pinetime::System::SystemTask::Messages::EnableSleeping);
+            systemTask.PushMessage(System::Messages::EnableSleeping);
             break;
           }
           case States::Running: {
             lv_label_set_text(playPauseLabel, Symbols::pause);
-            systemTask.PushMessage(Pinetime::System::SystemTask::Messages::DisableSleeping);
+            systemTask.PushMessage(System::Messages::DisableSleeping);
             startTime = xTaskGetTickCount();
             counter = 1;
             break;

From dbc2d234058226c42b79e35cb8f6576ac3bf709f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Sat, 12 Jun 2021 18:00:42 +0200
Subject: [PATCH 23/58] Add Init() in DummyuLittleVgl to fix recovery firmware

---
 src/displayapp/DummyLittleVgl.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/displayapp/DummyLittleVgl.h b/src/displayapp/DummyLittleVgl.h
index 96cf153f..016165b8 100644
--- a/src/displayapp/DummyLittleVgl.h
+++ b/src/displayapp/DummyLittleVgl.h
@@ -19,6 +19,10 @@ namespace Pinetime {
       LittleVgl(LittleVgl&&) = delete;
       LittleVgl& operator=(LittleVgl&&) = delete;
 
+      void Init() {
+
+      }
+
       void FlushDisplay(const lv_area_t* area, lv_color_t* color_p) {
       }
       bool GetTouchPadInfo(lv_indev_data_t* ptr) {

From 006771699fc5c1a0906920fd16998ec5295227ac Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jonathan@vandermey.ca>
Date: Mon, 24 May 2021 18:16:30 -0400
Subject: [PATCH 24/58] Remove infinitime-nb.c from source list

Was causing compiler warning for unused constant variable when being
compiled. This feel is directly included where it's needed so it doesn't
need to be separately compiled anyways.
---
 src/CMakeLists.txt | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 71909d7d..7721d6b8 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -532,7 +532,6 @@ list(APPEND RECOVERY_SOURCE_FILES
         systemtask/SystemTask.cpp
         drivers/TwiMaster.cpp
         components/gfx/Gfx.cpp
-        displayapp/icons/infinitime/infinitime-nb.c
         components/rle/RleDecoder.cpp
         components/heartrate/HeartRateController.cpp
         heartratetask/HeartRateTask.cpp
@@ -559,7 +558,6 @@ list(APPEND RECOVERYLOADER_SOURCE_FILES
         drivers/St7789.cpp
         components/brightness/BrightnessController.cpp
 
-        displayapp/icons/infinitime/infinitime-nb.c
         recoveryLoader.cpp
         )
 

From e90e8c7426f9a44e696b208a5b393a60476a3d43 Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jonathan@vandermey.ca>
Date: Mon, 24 May 2021 18:17:56 -0400
Subject: [PATCH 25/58] Fix signed/unsigned comparison warning

Changed type of encodedBufferIndex to size_t to eliminate warning. It is
fine as a size_t as its only ever compared to another size_t and used as
an array index.
---
 src/components/rle/RleDecoder.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/components/rle/RleDecoder.h b/src/components/rle/RleDecoder.h
index 0f607fb8..31c1ed10 100644
--- a/src/components/rle/RleDecoder.h
+++ b/src/components/rle/RleDecoder.h
@@ -21,7 +21,7 @@ namespace Pinetime {
       const uint8_t* buffer;
       size_t size;
 
-      int encodedBufferIndex = 0;
+      size_t encodedBufferIndex = 0;
       int y = 0;
       uint16_t bp = 0;
       uint16_t foregroundColor = 0xffff;

From c6dca25b9fa30af989baf748f6c32b38eaa95bac Mon Sep 17 00:00:00 2001
From: JF002 <JF002@users.noreply.github.com>
Date: Sat, 19 Jun 2021 20:27:59 +0200
Subject: [PATCH 26/58] Add support for BMA425 acceleration sensor. (#440)

* Add support for BMA425 acceleration sensor.
---
 src/components/motion/MotionController.cpp |   7 +
 src/components/motion/MotionController.h   |  14 +
 src/displayapp/DisplayApp.cpp              |   2 +-
 src/displayapp/screens/SystemInfo.cpp      |  27 +-
 src/displayapp/screens/SystemInfo.h        |   4 +-
 src/drivers/Bma421.cpp                     |   9 +
 src/drivers/Bma421.h                       |   7 +
 src/drivers/Bma421_C/bma423.c              | 560 ++++++++++++++++++++-
 src/drivers/Bma421_C/bma423.h              |   1 +
 src/systemtask/SystemTask.cpp              |   1 +
 10 files changed, 603 insertions(+), 29 deletions(-)

diff --git a/src/components/motion/MotionController.cpp b/src/components/motion/MotionController.cpp
index e9ee314b..b0dbada4 100644
--- a/src/components/motion/MotionController.cpp
+++ b/src/components/motion/MotionController.cpp
@@ -34,3 +34,10 @@ bool MotionController::ShouldWakeUp(bool isSleeping) {
 void MotionController::IsSensorOk(bool isOk) {
   isSensorOk = isOk;
 }
+void MotionController::Init(Pinetime::Drivers::Bma421::DeviceTypes types) {
+  switch(types){
+    case Drivers::Bma421::DeviceTypes::BMA421: this->deviceType = DeviceTypes::BMA421; break;
+    case Drivers::Bma421::DeviceTypes::BMA425: this->deviceType = DeviceTypes::BMA425; break;
+    default: this->deviceType = DeviceTypes::Unknown; break;
+  }
+}
diff --git a/src/components/motion/MotionController.h b/src/components/motion/MotionController.h
index 3a238262..ff715093 100644
--- a/src/components/motion/MotionController.h
+++ b/src/components/motion/MotionController.h
@@ -1,11 +1,18 @@
 #pragma once
 
 #include <cstdint>
+#include <drivers/Bma421.h>
 
 namespace Pinetime {
   namespace Controllers {
     class MotionController {
     public:
+      enum class DeviceTypes{
+        Unknown,
+        BMA421,
+        BMA425,
+      };
+
       void Update(int16_t x, int16_t y, int16_t z, uint32_t nbSteps);
 
       int16_t X() const {
@@ -27,6 +34,12 @@ namespace Pinetime {
         return isSensorOk;
       }
 
+      DeviceTypes DeviceType() const {
+        return deviceType;
+      }
+
+      void Init(Pinetime::Drivers::Bma421::DeviceTypes types);
+
     private:
       uint32_t nbSteps;
       int16_t x;
@@ -34,6 +47,7 @@ namespace Pinetime {
       int16_t z;
       int16_t lastYForWakeUp = 0;
       bool isSensorOk = false;
+      DeviceTypes deviceType = DeviceTypes::Unknown;
     };
   }
 }
\ No newline at end of file
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index ab73969d..de93428c 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -329,7 +329,7 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
       break;
     case Apps::SysInfo:
       currentScreen =
-        std::make_unique<Screens::SystemInfo>(this, dateTimeController, batteryController, brightnessController, bleController, watchdog);
+        std::make_unique<Screens::SystemInfo>(this, dateTimeController, batteryController, brightnessController, bleController, watchdog, motionController);
       ReturnApp(Apps::Settings, FullRefreshDirections::Down, TouchEvents::SwipeDown);
       break;
     case Apps::FlashLight:
diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index 9ff28288..0b16d633 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -7,22 +7,37 @@
 #include "components/ble/BleController.h"
 #include "components/brightness/BrightnessController.h"
 #include "components/datetime/DateTimeController.h"
+#include "components/motion/MotionController.h"
 #include "drivers/Watchdog.h"
 
 using namespace Pinetime::Applications::Screens;
 
+namespace {
+  const char* ToString(const Pinetime::Controllers::MotionController::DeviceTypes deviceType) {
+    switch (deviceType) {
+      case Pinetime::Controllers::MotionController::DeviceTypes::BMA421:
+        return "BMA421";
+      case Pinetime::Controllers::MotionController::DeviceTypes::BMA425:
+        return "BMA425";
+    }
+    return "???";
+  }
+}
+
 SystemInfo::SystemInfo(Pinetime::Applications::DisplayApp* app,
                        Pinetime::Controllers::DateTime& dateTimeController,
                        Pinetime::Controllers::Battery& batteryController,
                        Pinetime::Controllers::BrightnessController& brightnessController,
                        Pinetime::Controllers::Ble& bleController,
-                       Pinetime::Drivers::WatchdogView& watchdog)
+                       Pinetime::Drivers::WatchdogView& watchdog,
+                       Pinetime::Controllers::MotionController& motionController)
   : Screen(app),
     dateTimeController {dateTimeController},
     batteryController {batteryController},
     brightnessController {brightnessController},
     bleController {bleController},
     watchdog {watchdog},
+    motionController{motionController},
     screens {app,
              0,
              {[this]() -> std::unique_ptr<Screen> {
@@ -132,9 +147,7 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
   // hack to not use the flot functions from printf
   uint8_t batteryVoltageBytes[2];
   batteryVoltageBytes[1] = static_cast<uint8_t>(batteryVoltage); // truncate whole numbers
-  batteryVoltageBytes[0] =
-    static_cast<uint8_t>((batteryVoltage - batteryVoltageBytes[1]) * 100); // remove whole part of flt and shift 2 places over
-  //
+  batteryVoltageBytes[0] = static_cast<uint8_t>((batteryVoltage - batteryVoltageBytes[1]) * 100); // remove whole part of flt and shift 2 places over
 
   lv_obj_t* label = lv_label_create(lv_scr_act(), nullptr);
   lv_label_set_recolor(label, true);
@@ -144,7 +157,8 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
                         "#444444 Uptime#\n %02lud %02lu:%02lu:%02lu\n"
                         "#444444 Battery# %d%%/%1i.%02iv\n"
                         "#444444 Backlight# %s\n"
-                        "#444444 Last reset# %s\n",
+                        "#444444 Last reset# %s\n"
+                        "#444444 Accel.# %s\n",
                         dateTimeController.Day(),
                         static_cast<uint8_t>(dateTimeController.Month()),
                         dateTimeController.Year(),
@@ -159,7 +173,8 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
                         batteryVoltageBytes[1],
                         batteryVoltageBytes[0],
                         brightnessController.ToString(),
-                        resetReason);
+                        resetReason,
+                        ToString(motionController.DeviceType()));
   lv_obj_align(label, lv_scr_act(), LV_ALIGN_CENTER, 0, 0);
   return std::make_unique<Screens::Label>(1, 5, app, label);
 }
diff --git a/src/displayapp/screens/SystemInfo.h b/src/displayapp/screens/SystemInfo.h
index c61a07a2..9d471f61 100644
--- a/src/displayapp/screens/SystemInfo.h
+++ b/src/displayapp/screens/SystemInfo.h
@@ -27,7 +27,8 @@ namespace Pinetime {
                             Pinetime::Controllers::Battery& batteryController,
                             Pinetime::Controllers::BrightnessController& brightnessController,
                             Pinetime::Controllers::Ble& bleController,
-                            Pinetime::Drivers::WatchdogView& watchdog);
+                            Pinetime::Drivers::WatchdogView& watchdog,
+                            Pinetime::Controllers::MotionController& motionController);
         ~SystemInfo() override;
         bool Refresh() override;
         bool OnButtonPushed() override;
@@ -41,6 +42,7 @@ namespace Pinetime {
         Pinetime::Controllers::BrightnessController& brightnessController;
         Pinetime::Controllers::Ble& bleController;
         Pinetime::Drivers::WatchdogView& watchdog;
+        Pinetime::Controllers::MotionController& motionController;
 
         ScreenList<5> screens;
 
diff --git a/src/drivers/Bma421.cpp b/src/drivers/Bma421.cpp
index 35b2c105..dd284000 100644
--- a/src/drivers/Bma421.cpp
+++ b/src/drivers/Bma421.cpp
@@ -42,6 +42,12 @@ void Bma421::Init() {
   if (ret != BMA4_OK)
     return;
 
+  switch(bma.chip_id) {
+    case BMA423_CHIP_ID: deviceType = DeviceTypes::BMA421; break;
+    case BMA425_CHIP_ID: deviceType = DeviceTypes::BMA425; break;
+    default: deviceType = DeviceTypes::Unknown; break;
+  }
+
   ret = bma423_write_config_file(&bma);
   if (ret != BMA4_OK)
     return;
@@ -121,3 +127,6 @@ void Bma421::SoftReset() {
     nrf_delay_ms(1);
   }
 }
+Bma421::DeviceTypes Bma421::DeviceType() const {
+  return deviceType;
+}
diff --git a/src/drivers/Bma421.h b/src/drivers/Bma421.h
index e4d925f5..ace644bd 100644
--- a/src/drivers/Bma421.h
+++ b/src/drivers/Bma421.h
@@ -6,6 +6,11 @@ namespace Pinetime {
     class TwiMaster;
     class Bma421 {
     public:
+      enum class DeviceTypes : uint8_t {
+        Unknown,
+        BMA421,
+        BMA425
+      };
       struct Values {
         uint32_t steps;
         int16_t x;
@@ -29,6 +34,7 @@ namespace Pinetime {
       void Write(uint8_t registerAddress, const uint8_t* data, size_t size);
 
       bool IsOk() const;
+      DeviceTypes DeviceType() const;
 
     private:
       void Reset();
@@ -38,6 +44,7 @@ namespace Pinetime {
       struct bma4_dev bma;
       bool isOk = false;
       bool isResetOk = false;
+      DeviceTypes deviceType = DeviceTypes::Unknown;
     };
   }
 }
\ No newline at end of file
diff --git a/src/drivers/Bma421_C/bma423.c b/src/drivers/Bma421_C/bma423.c
index 1d782705..7d6c2e0a 100644
--- a/src/drivers/Bma421_C/bma423.c
+++ b/src/drivers/Bma421_C/bma423.c
@@ -43,6 +43,521 @@
 #include "bma423.h"
 
 /**\name Feature configuration file */
+const uint8_t bma425_config_file[] = {
+  0x80, 0x2e, 0xfd, 0x00, 0x80, 0x2e, 0xff, 0x00, 0xc8, 0x2e, 0x00, 0x2e,
+  0x80, 0x2e, 0xfb, 0x00, 0x80, 0x2e, 0xdd, 0xb0, 0x80, 0x2e, 0xfe, 0x00,
+  0x80, 0x2e, 0xfc, 0x00, 0x80, 0x2e, 0x0d, 0xb1, 0x50, 0x39, 0x21, 0x2e,
+  0xb0, 0xf0, 0x10, 0x30, 0x21, 0x2e, 0x16, 0xf0, 0x80, 0x2e, 0x34, 0xb1,
+  0x65, 0x50, 0x4f, 0x52, 0x01, 0x42, 0x3b, 0x80, 0x41, 0x30, 0x01, 0x42,
+  0x3c, 0x80, 0x00, 0x2e, 0x01, 0x40, 0x01, 0x42, 0x21, 0x2e, 0xff, 0xaf,
+  0xb8, 0x2e, 0x1f, 0x7f, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0xfd, 0x2d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
+  0x00, 0x00, 0x00, 0x08, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08,
+  0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x2e,
+  0x55, 0xf0, 0xc0, 0x2e, 0x21, 0x2e, 0x55, 0xf0, 0x30, 0x50, 0x00, 0x30,
+  0x51, 0x56, 0x05, 0x30, 0x05, 0x2c, 0xfb, 0x7f, 0x3e, 0xbe, 0xd2, 0xba,
+  0xb2, 0xb9, 0x6c, 0x0b, 0x53, 0x0e, 0xf9, 0x2f, 0x53, 0x1a, 0x01, 0x2f,
+  0x4d, 0x0e, 0xf5, 0x2f, 0xd2, 0x7f, 0x04, 0x30, 0x1f, 0x2c, 0xe1, 0x7f,
+  0xc5, 0x01, 0xa3, 0x03, 0x72, 0x0e, 0x03, 0x2f, 0x72, 0x1a, 0x0f, 0x2f,
+  0x79, 0x0f, 0x0d, 0x2f, 0xe1, 0x6f, 0x4f, 0x04, 0x5f, 0xb9, 0xb1, 0xbf,
+  0xfa, 0x0b, 0xd2, 0x6f, 0x96, 0x06, 0xb1, 0x25, 0x51, 0xbf, 0xeb, 0x7f,
+  0x06, 0x00, 0xb2, 0x25, 0x27, 0x03, 0xdb, 0x7f, 0xcf, 0xbf, 0x3e, 0xbf,
+  0x01, 0xb8, 0xd2, 0xba, 0x41, 0xba, 0xb2, 0xb9, 0x07, 0x0a, 0x6e, 0x0b,
+  0xc0, 0x90, 0xdf, 0x2f, 0x40, 0x91, 0xdd, 0x2f, 0xfb, 0x6f, 0xd0, 0x5f,
+  0xb8, 0x2e, 0x00, 0x31, 0xc0, 0x2e, 0x21, 0x2e, 0xba, 0xf0, 0xc8, 0x2e,
+  0xc8, 0x2e, 0xc8, 0x2e, 0xc8, 0x2e, 0xc8, 0x2e, 0xaa, 0x00, 0x05, 0x00,
+  0xaa, 0x00, 0x05, 0x00, 0x2d, 0x01, 0xd4, 0x7b, 0x3b, 0x01, 0xdb, 0x7a,
+  0x04, 0x00, 0x3f, 0x7b, 0xcd, 0x6c, 0xc3, 0x04, 0x85, 0x09, 0xc3, 0x04,
+  0xec, 0xe6, 0x0c, 0x46, 0x01, 0x00, 0x27, 0x00, 0x19, 0x00, 0x96, 0x00,
+  0xa0, 0x00, 0x01, 0x00, 0x0c, 0x00, 0xf0, 0x3c, 0x00, 0x01, 0x01, 0x00,
+  0x03, 0x00, 0x01, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x06, 0x00, 0x06, 0x00,
+  0x00, 0x00, 0x47, 0x28, 0x88, 0x00, 0x54, 0x00, 0x51, 0x00, 0x97, 0x00,
+  0xa0, 0x00, 0x80, 0x00, 0x00, 0x40, 0xff, 0x7f, 0x00, 0x80, 0xaf, 0x00,
+  0xff, 0x00, 0xff, 0xb7, 0x00, 0x02, 0x00, 0xb0, 0x05, 0x80, 0xb1, 0xf0,
+  0x5e, 0xf0, 0xc0, 0x00, 0x59, 0xf0, 0x39, 0xf0, 0x57, 0x00, 0x89, 0xf0,
+  0x54, 0x00, 0x00, 0x20, 0x82, 0x00, 0x59, 0x00, 0x5d, 0x00, 0x81, 0x00,
+  0xff, 0xfb, 0x52, 0xf0, 0x56, 0xf0, 0x33, 0x09, 0x33, 0x07, 0x00, 0x08,
+  0x90, 0x01, 0x00, 0xf8, 0x00, 0x01, 0x02, 0x01, 0x60, 0x00, 0x6a, 0x00,
+  0x4c, 0x04, 0xa0, 0x00, 0xe8, 0x03, 0x81, 0x00, 0x82, 0x00, 0xeb, 0x07,
+  0xae, 0x07, 0xaa, 0x00, 0x75, 0x00, 0xff, 0x0f, 0xdb, 0x00, 0xb6, 0x01,
+  0x70, 0x69, 0x26, 0xd3, 0x9c, 0x07, 0xbc, 0x02, 0x1f, 0x05, 0x9d, 0x00,
+  0xa8, 0x05, 0xee, 0x06, 0x01, 0xf0, 0xbc, 0x05, 0x37, 0x08, 0xbb, 0x06,
+  0x37, 0xfa, 0xb2, 0x00, 0xff, 0x03, 0x98, 0x2e, 0x15, 0xb0, 0x20, 0x26,
+  0x98, 0x2e, 0xf7, 0x00, 0x98, 0x2e, 0xc4, 0xb0, 0x10, 0x30, 0x21, 0x2e,
+  0x59, 0xf0, 0x98, 0x2e, 0xb9, 0x00, 0x98, 0x2e, 0x7a, 0xb4, 0x98, 0x2e,
+  0x89, 0xb4, 0x00, 0x2e, 0x00, 0x2e, 0xd0, 0x2e, 0x98, 0x2e, 0xa7, 0xb0,
+  0x01, 0x2e, 0x58, 0x00, 0x00, 0xb2, 0x1a, 0x2f, 0x00, 0x30, 0x21, 0x2e,
+  0x58, 0x00, 0x47, 0x50, 0x98, 0x2e, 0x65, 0xb0, 0x03, 0x2e, 0x1e, 0x01,
+  0x47, 0x50, 0x02, 0x30, 0x98, 0x2e, 0x28, 0xb5, 0x03, 0x2e, 0x1f, 0x01,
+  0x47, 0x50, 0x12, 0x30, 0x98, 0x2e, 0x28, 0xb5, 0x01, 0x2e, 0x03, 0xf0,
+  0x0d, 0xbc, 0x0f, 0xb8, 0x00, 0x90, 0x02, 0x2f, 0x4f, 0x50, 0x21, 0x2e,
+  0xbc, 0xf0, 0x01, 0x2e, 0x57, 0x00, 0x00, 0xb2, 0x25, 0x2f, 0x00, 0x30,
+  0x21, 0x2e, 0x57, 0x00, 0x49, 0x50, 0x98, 0x2e, 0x65, 0xb0, 0x49, 0x50,
+  0x98, 0x2e, 0xc1, 0xb1, 0x49, 0x50, 0x98, 0x2e, 0x34, 0xb6, 0x49, 0x50,
+  0x4b, 0x52, 0x98, 0x2e, 0xa4, 0xb4, 0x49, 0x50, 0x4d, 0x52, 0x98, 0x2e,
+  0xa4, 0xb4, 0x01, 0x2e, 0x1e, 0x01, 0x0f, 0xbc, 0x0f, 0xb8, 0x00, 0x90,
+  0x4f, 0x50, 0x08, 0x2f, 0x03, 0x2e, 0x1f, 0x01, 0x9f, 0xbc, 0x9f, 0xb8,
+  0x40, 0x90, 0x02, 0x2f, 0x21, 0x2e, 0xbc, 0xf0, 0x02, 0x2d, 0x21, 0x2e,
+  0xba, 0xf0, 0x98, 0x2e, 0xb9, 0x00, 0xaf, 0x2d, 0x10, 0x50, 0xfb, 0x7f,
+  0x21, 0x25, 0x98, 0x2e, 0xf4, 0x01, 0xfb, 0x6f, 0x21, 0x25, 0xf0, 0x5f,
+  0x10, 0x25, 0x80, 0x2e, 0xbe, 0x00, 0x94, 0x01, 0xdd, 0x03, 0xc0, 0xad,
+  0x0b, 0x2f, 0xc0, 0xa8, 0x03, 0x2f, 0xc0, 0x90, 0x07, 0x2f, 0x80, 0xa6,
+  0x05, 0x2f, 0x40, 0xa9, 0x12, 0x2f, 0x40, 0x91, 0x01, 0x2f, 0x00, 0xab,
+  0x0e, 0x2f, 0xc0, 0xac, 0x00, 0x30, 0x55, 0x52, 0x07, 0x2f, 0xc0, 0xa9,
+  0x03, 0x2f, 0xc0, 0x91, 0x03, 0x2f, 0x80, 0xa7, 0x01, 0x2f, 0x40, 0xa1,
+  0x05, 0x2f, 0xc0, 0x2e, 0x17, 0x25, 0x06, 0x25, 0xc0, 0x2e, 0xf0, 0x3f,
+  0x53, 0x52, 0xb8, 0x2e, 0x83, 0x86, 0x01, 0x30, 0x00, 0x30, 0x94, 0x40,
+  0x24, 0x18, 0x06, 0x00, 0x53, 0x0e, 0x4f, 0x02, 0xf9, 0x2f, 0xb8, 0x2e,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0xa8, 0x03, 0x25, 0x10, 0x2f, 0x80, 0x90,
+  0x01, 0x2f, 0x41, 0x0e, 0x0c, 0x2f, 0xf3, 0x3f, 0x18, 0x05, 0x05, 0x30,
+  0x5d, 0x07, 0x15, 0x0e, 0x03, 0x2f, 0x55, 0x1a, 0x02, 0x2f, 0xcc, 0x0f,
+  0x00, 0x2f, 0x58, 0x04, 0x01, 0x25, 0xb8, 0x2e, 0xb8, 0x2e, 0x63, 0x50,
+  0x41, 0x30, 0x02, 0x40, 0x51, 0x0a, 0x01, 0x42, 0x18, 0x82, 0x57, 0x50,
+  0x60, 0x42, 0x70, 0x3c, 0x59, 0x54, 0x42, 0x42, 0x69, 0x82, 0x82, 0x32,
+  0x43, 0x40, 0x18, 0x08, 0x02, 0x0a, 0x40, 0x42, 0x42, 0x80, 0x02, 0x3f,
+  0x01, 0x40, 0x10, 0x50, 0x4a, 0x08, 0xfb, 0x7f, 0x11, 0x42, 0x0b, 0x31,
+  0x0b, 0x42, 0x3e, 0x80, 0x31, 0x32, 0x01, 0x42, 0x00, 0x2e, 0x01, 0x2e,
+  0x40, 0xf0, 0x13, 0x90, 0x20, 0x2f, 0x03, 0x30, 0x5d, 0x50, 0x5b, 0x54,
+  0x14, 0x35, 0x06, 0x30, 0x61, 0x52, 0x55, 0x32, 0x1d, 0x1a, 0xe3, 0x22,
+  0x18, 0x1a, 0x5f, 0x58, 0xe3, 0x22, 0x04, 0x30, 0xd5, 0x40, 0xb5, 0x0d,
+  0xe1, 0xbe, 0x6f, 0xbb, 0x80, 0x91, 0xa9, 0x0d, 0x01, 0x89, 0xb5, 0x23,
+  0x10, 0xa1, 0xf7, 0x2f, 0xda, 0x0e, 0x14, 0x35, 0xeb, 0x2f, 0x01, 0x2e,
+  0x25, 0x00, 0x70, 0x1a, 0x00, 0x30, 0x21, 0x30, 0x02, 0x2c, 0x08, 0x22,
+  0x30, 0x30, 0x00, 0xb2, 0x06, 0x2f, 0x21, 0x2e, 0x59, 0xf0, 0x98, 0x2e,
+  0xb9, 0x00, 0x00, 0x2e, 0x00, 0x2e, 0xd0, 0x2e, 0xfb, 0x6f, 0xf0, 0x5f,
+  0xb8, 0x2e, 0x70, 0x50, 0x03, 0x2e, 0x22, 0x01, 0xf1, 0x7f, 0x2a, 0x25,
+  0xb9, 0x82, 0xe0, 0x7f, 0xdb, 0x7f, 0x00, 0x30, 0x45, 0x30, 0x32, 0x30,
+  0x03, 0x30, 0x04, 0x30, 0xf6, 0x6f, 0xf2, 0x09, 0xfc, 0x13, 0xc2, 0xab,
+  0xb5, 0x09, 0xc7, 0x23, 0x80, 0xb3, 0xe6, 0x6f, 0xb7, 0x01, 0x00, 0x2e,
+  0x8b, 0x41, 0x4b, 0x42, 0x05, 0x2f, 0xc5, 0x7f, 0x05, 0x30, 0x46, 0x40,
+  0xae, 0x05, 0xc5, 0x6f, 0x46, 0x42, 0x01, 0x80, 0x23, 0xbd, 0xd3, 0xbe,
+  0x03, 0x89, 0x41, 0x82, 0xdf, 0x0c, 0x03, 0xa2, 0xe4, 0x2f, 0xe0, 0x6f,
+  0x91, 0x6f, 0x11, 0x42, 0xc3, 0xb2, 0xa1, 0x6f, 0x11, 0x42, 0x00, 0x2e,
+  0xb1, 0x6f, 0x01, 0x42, 0x06, 0x2f, 0x00, 0x32, 0x03, 0x2e, 0x59, 0xf0,
+  0x08, 0x0a, 0x21, 0x2e, 0x59, 0xf0, 0x06, 0x2d, 0xf1, 0x3d, 0x01, 0x2e,
+  0x59, 0xf0, 0x01, 0x08, 0x21, 0x2e, 0x59, 0xf0, 0xdb, 0x6f, 0x90, 0x5f,
+  0xb8, 0x2e, 0x69, 0x50, 0x05, 0x2e, 0x00, 0xf0, 0x4f, 0x56, 0xd3, 0x0f,
+  0x01, 0x40, 0xf4, 0x33, 0xcc, 0x08, 0x0d, 0x2f, 0xf4, 0x30, 0x94, 0x08,
+  0xb9, 0x88, 0x02, 0xa3, 0x04, 0x2f, 0x67, 0x58, 0x4c, 0x0a, 0x87, 0xa2,
+  0x05, 0x2c, 0xcb, 0x22, 0x4f, 0x54, 0x4a, 0x0a, 0xf2, 0x3b, 0xca, 0x08,
+  0x3c, 0x80, 0x27, 0x2e, 0x59, 0xf0, 0x01, 0x40, 0x01, 0x42, 0xb8, 0x2e,
+  0x01, 0x2e, 0xb1, 0xf0, 0x67, 0x52, 0x01, 0x0a, 0x21, 0x2e, 0xb1, 0xf0,
+  0x01, 0x2e, 0x1e, 0x01, 0x0f, 0xbc, 0x0f, 0xb8, 0x00, 0x90, 0x4f, 0x50,
+  0x08, 0x2f, 0x03, 0x2e, 0x1f, 0x01, 0x9f, 0xbc, 0x9f, 0xb8, 0x40, 0x90,
+  0x02, 0x2f, 0xc0, 0x2e, 0x21, 0x2e, 0xbc, 0xf0, 0xc0, 0x2e, 0x21, 0x2e,
+  0xba, 0xf0, 0x70, 0x50, 0xf7, 0x7f, 0x00, 0x2e, 0x0f, 0x2e, 0xb8, 0xf0,
+  0xf8, 0xbf, 0xff, 0xbb, 0xc0, 0xb3, 0x23, 0x2f, 0xb2, 0x7f, 0x94, 0x7f,
+  0xc6, 0x7f, 0xe5, 0x7f, 0xd3, 0x7f, 0xa1, 0x7f, 0x35, 0x30, 0x05, 0x2e,
+  0x01, 0xf0, 0x2e, 0xbd, 0x2e, 0xbb, 0x6b, 0x58, 0x6e, 0x05, 0x47, 0x56,
+  0x6d, 0x54, 0x11, 0x30, 0x27, 0x41, 0x06, 0x41, 0xf8, 0xbf, 0xbe, 0x0b,
+  0xb5, 0x11, 0xd6, 0x42, 0x03, 0x89, 0x5a, 0x0e, 0xf6, 0x2f, 0x23, 0x2e,
+  0x58, 0x00, 0x4f, 0x52, 0x23, 0x2e, 0xb8, 0xf0, 0xb2, 0x6f, 0xe5, 0x6f,
+  0xd3, 0x6f, 0xa1, 0x6f, 0x94, 0x6f, 0xc6, 0x6f, 0xf7, 0x6f, 0x90, 0x5f,
+  0xc8, 0x2e, 0x60, 0x50, 0xc3, 0x7f, 0xd4, 0x7f, 0xe7, 0x7f, 0xf6, 0x7f,
+  0xb2, 0x7f, 0xa5, 0x7f, 0x36, 0x30, 0x07, 0x2e, 0x01, 0xf0, 0xbe, 0xbd,
+  0xbe, 0xbb, 0x6f, 0x58, 0x77, 0x05, 0x49, 0x56, 0x71, 0x54, 0x27, 0x41,
+  0x06, 0x41, 0xf8, 0xbf, 0xbe, 0x0b, 0xb5, 0x11, 0xd6, 0x42, 0x03, 0x89,
+  0x5a, 0x0e, 0xf6, 0x2f, 0x12, 0x30, 0x25, 0x2e, 0x57, 0x00, 0x02, 0x31,
+  0x25, 0x2e, 0xb8, 0xf0, 0xd4, 0x6f, 0xc3, 0x6f, 0xe7, 0x6f, 0xb2, 0x6f,
+  0xa5, 0x6f, 0xf6, 0x6f, 0xa0, 0x5f, 0xc8, 0x2e, 0x1a, 0x24, 0x26, 0x00,
+  0x80, 0x2e, 0x65, 0x01, 0x70, 0x50, 0x42, 0x8e, 0xd4, 0x7f, 0xf6, 0x7f,
+  0x47, 0x25, 0x1a, 0x18, 0x73, 0x52, 0xf1, 0x00, 0x64, 0x25, 0x01, 0x30,
+  0x39, 0x02, 0x94, 0x41, 0x81, 0x41, 0xe2, 0x7f, 0xbe, 0xbb, 0xbd, 0x8d,
+  0x02, 0xbd, 0xb5, 0x7f, 0x8e, 0xb5, 0xba, 0x0a, 0xc6, 0x7f, 0xab, 0x7f,
+  0x51, 0x25, 0x98, 0x2e, 0xd1, 0x01, 0xd5, 0x6f, 0xe2, 0x6f, 0x2a, 0x18,
+  0x73, 0x54, 0xb2, 0x01, 0x02, 0x30, 0xc4, 0x6f, 0x7a, 0x03, 0x12, 0x41,
+  0x74, 0x25, 0xd0, 0x7f, 0x52, 0xbc, 0xd3, 0x41, 0x6e, 0xba, 0xde, 0xb6,
+  0x20, 0x0b, 0xc7, 0x7f, 0x91, 0x7f, 0x98, 0x2e, 0xd1, 0x01, 0xf2, 0x6f,
+  0xd5, 0x6f, 0xca, 0x16, 0x55, 0x18, 0xdd, 0x18, 0x95, 0x6f, 0xea, 0x18,
+  0x73, 0x5a, 0x31, 0x25, 0x75, 0x01, 0x01, 0x30, 0x20, 0x25, 0x39, 0x02,
+  0x5e, 0xba, 0x82, 0xbc, 0x8e, 0xb6, 0x21, 0x0b, 0x98, 0x2e, 0xd1, 0x01,
+  0xe2, 0x6f, 0xb5, 0x6f, 0x2a, 0x18, 0xe0, 0x7f, 0xf1, 0x7f, 0x04, 0x30,
+  0x73, 0x54, 0xf2, 0x00, 0x7c, 0x02, 0x85, 0x6f, 0xd0, 0x6f, 0x0d, 0x17,
+  0x68, 0x18, 0xe0, 0x18, 0x90, 0x6f, 0xc4, 0x6f, 0xc5, 0x18, 0xeb, 0x6f,
+  0xb2, 0x01, 0x1b, 0x43, 0x02, 0x30, 0x7a, 0x03, 0xfb, 0x6f, 0x3d, 0x8f,
+  0x0b, 0x43, 0x3e, 0xba, 0x12, 0xbd, 0x52, 0xbc, 0x6e, 0xbb, 0xa2, 0x0a,
+  0x9e, 0xb5, 0xde, 0xb6, 0x30, 0x0b, 0xf7, 0x7f, 0x98, 0x2e, 0xd1, 0x01,
+  0xf5, 0x6f, 0x31, 0x25, 0xd1, 0x6f, 0x92, 0x6f, 0xab, 0x6f, 0x50, 0x43,
+  0x43, 0x43, 0x90, 0x5f, 0x53, 0x56, 0x80, 0x2e, 0x00, 0xb0, 0x10, 0x50,
+  0x03, 0x40, 0x19, 0x18, 0x55, 0x56, 0x19, 0x05, 0x36, 0x25, 0xf7, 0x7f,
+  0x4a, 0x17, 0x54, 0x18, 0xec, 0x18, 0x09, 0x17, 0x01, 0x30, 0x0c, 0x07,
+  0xe2, 0x18, 0xde, 0x00, 0xf2, 0x6f, 0x97, 0x02, 0x51, 0x58, 0xdc, 0x00,
+  0x91, 0x02, 0xbf, 0xb8, 0x21, 0xbd, 0x8a, 0x0a, 0xc0, 0x2e, 0x02, 0x42,
+  0xf0, 0x5f, 0x09, 0x2e, 0x1d, 0x01, 0x05, 0x2e, 0x1d, 0x01, 0xa3, 0xbc,
+  0x44, 0xbe, 0x90, 0x50, 0x4f, 0xb9, 0x07, 0x2e, 0x1d, 0x01, 0x4a, 0x25,
+  0x9f, 0xb8, 0x39, 0x8f, 0xb2, 0xbd, 0xf2, 0x7f, 0xbf, 0xb9, 0xeb, 0x7f,
+  0x8a, 0x0a, 0x37, 0x89, 0x0b, 0x30, 0x93, 0x0a, 0x8b, 0x7f, 0xcb, 0x43,
+  0x0b, 0x43, 0x80, 0xb2, 0xd3, 0x7f, 0xc1, 0x7f, 0x90, 0x2e, 0x6c, 0xb2,
+  0x20, 0x25, 0x01, 0x2e, 0x5f, 0x00, 0x01, 0x90, 0x0e, 0x2f, 0x75, 0x52,
+  0x01, 0x2e, 0x5c, 0x00, 0xb4, 0x7f, 0xa2, 0x7f, 0x98, 0x2e, 0x72, 0xb2,
+  0x00, 0x30, 0x21, 0x2e, 0x5f, 0x00, 0xc1, 0x6f, 0xd3, 0x6f, 0xa2, 0x6f,
+  0xb4, 0x6f, 0x0b, 0x30, 0x01, 0x2e, 0x1d, 0x01, 0x06, 0xbc, 0x06, 0xbb,
+  0x57, 0x25, 0x01, 0x2e, 0x1d, 0x01, 0x94, 0xb1, 0x05, 0xbc, 0xb6, 0x7f,
+  0x0f, 0xbb, 0x79, 0x50, 0x80, 0xb3, 0x0f, 0x2f, 0x0d, 0x2e, 0x1d, 0x01,
+  0x7d, 0x5e, 0xb7, 0x09, 0x2d, 0x2e, 0x1d, 0x01, 0x7f, 0x5c, 0x77, 0x5e,
+  0x9b, 0x43, 0x9b, 0x43, 0xdb, 0x43, 0x9b, 0x43, 0x1b, 0x42, 0xcb, 0x43,
+  0x0b, 0x42, 0x8b, 0x43, 0x40, 0xb2, 0x05, 0x2f, 0x77, 0x50, 0x00, 0x2e,
+  0x16, 0x40, 0x0b, 0x40, 0x76, 0x7f, 0x8b, 0x7f, 0xcb, 0x0a, 0x01, 0x2e,
+  0x5c, 0x00, 0x75, 0x52, 0x7b, 0x5c, 0x98, 0x2e, 0xbe, 0xb2, 0x90, 0x6f,
+  0x00, 0xb2, 0x0b, 0x2f, 0xf0, 0x6f, 0x00, 0xb2, 0x08, 0x2f, 0x77, 0x58,
+  0x79, 0x50, 0x12, 0x41, 0x12, 0x42, 0x21, 0x30, 0x04, 0x41, 0x04, 0x42,
+  0x23, 0x2e, 0x5e, 0xf0, 0xc0, 0x6f, 0x00, 0xb2, 0x26, 0x2f, 0x74, 0x6f,
+  0x80, 0x6f, 0x7f, 0x54, 0x88, 0xbd, 0xc8, 0xb8, 0x4b, 0x0a, 0x94, 0x42,
+  0x91, 0x42, 0x90, 0x42, 0x88, 0xba, 0x77, 0x52, 0xf3, 0x6f, 0x54, 0x42,
+  0x85, 0x42, 0xc0, 0x90, 0x40, 0x42, 0x15, 0x2f, 0x79, 0x52, 0x00, 0x2e,
+  0x52, 0x40, 0x41, 0x40, 0xa2, 0x04, 0x41, 0x06, 0x40, 0xaa, 0x04, 0x2f,
+  0x40, 0x90, 0x0b, 0x2f, 0xb1, 0x6f, 0x4a, 0x0f, 0x08, 0x2f, 0xb2, 0x6f,
+  0x80, 0xb2, 0x05, 0x2f, 0x79, 0x54, 0x21, 0x30, 0x94, 0x42, 0x80, 0x42,
+  0x23, 0x2e, 0x5e, 0xf0, 0xd0, 0x6f, 0x00, 0xb2, 0x13, 0x2f, 0x01, 0x2e,
+  0x5b, 0x00, 0x09, 0x2e, 0x81, 0x00, 0x04, 0x1a, 0x0d, 0x2f, 0x81, 0x50,
+  0x29, 0x2e, 0x5b, 0x00, 0x24, 0x42, 0x44, 0x30, 0x02, 0x40, 0x02, 0x42,
+  0x09, 0x80, 0x00, 0x2e, 0x04, 0x42, 0x03, 0x2d, 0x10, 0x30, 0x21, 0x2e,
+  0x5f, 0x00, 0xeb, 0x6f, 0x70, 0x5f, 0xb8, 0x2e, 0x09, 0x86, 0x51, 0x54,
+  0xe4, 0x40, 0xc3, 0x80, 0x94, 0x04, 0xc3, 0x40, 0x13, 0x05, 0x05, 0x40,
+  0x25, 0x05, 0x8a, 0x17, 0x73, 0x30, 0x73, 0x09, 0x8c, 0x17, 0xf3, 0x08,
+  0xe3, 0x00, 0x4c, 0x82, 0x15, 0x01, 0xb3, 0xb5, 0x53, 0x42, 0x8b, 0x16,
+  0x43, 0xb6, 0x52, 0x42, 0x4c, 0x17, 0x54, 0x42, 0x55, 0x42, 0x53, 0x42,
+  0x52, 0x42, 0x54, 0x42, 0x45, 0x42, 0x6d, 0x82, 0x83, 0x54, 0x52, 0x42,
+  0x10, 0x50, 0x85, 0x54, 0x52, 0x42, 0xfb, 0x7f, 0x22, 0x30, 0x87, 0x56,
+  0x43, 0x42, 0x44, 0x82, 0x0b, 0x30, 0x52, 0x42, 0x5b, 0x42, 0x7c, 0x84,
+  0x4b, 0x42, 0x35, 0x82, 0x90, 0x80, 0x8b, 0x42, 0x0b, 0x42, 0x35, 0x80,
+  0x04, 0x30, 0x0b, 0x42, 0x37, 0x80, 0x15, 0x30, 0x60, 0x25, 0x98, 0x2e,
+  0xb1, 0xb2, 0x8b, 0x83, 0xfb, 0x6f, 0x65, 0x42, 0xc0, 0x2e, 0x44, 0x42,
+  0xf0, 0x5f, 0x05, 0x80, 0x02, 0x30, 0x51, 0x82, 0x02, 0x42, 0x13, 0x30,
+  0x41, 0x40, 0x4b, 0x08, 0x89, 0x54, 0x3e, 0x80, 0x51, 0x14, 0xc0, 0x2e,
+  0x01, 0x42, 0x00, 0x2e, 0x40, 0x51, 0xd1, 0x7f, 0x12, 0x25, 0x02, 0x30,
+  0x42, 0x43, 0x32, 0x30, 0x82, 0x43, 0xc6, 0x7f, 0xe5, 0x7f, 0xb4, 0x7f,
+  0xa3, 0x7f, 0x90, 0x7f, 0x8b, 0x7f, 0x98, 0x2e, 0xc6, 0x01, 0xc0, 0x7e,
+  0x00, 0xac, 0x01, 0x2f, 0x53, 0x50, 0xc0, 0x7e, 0x00, 0x2e, 0x90, 0x6f,
+  0x09, 0x8a, 0xd1, 0x6f, 0x75, 0x7f, 0x4c, 0x82, 0x63, 0x41, 0x65, 0x7f,
+  0x11, 0x7f, 0x00, 0x2e, 0x64, 0x41, 0x44, 0x85, 0x52, 0x7f, 0x45, 0x7f,
+  0x00, 0x2e, 0xa6, 0x40, 0x80, 0x40, 0x32, 0x7f, 0x82, 0x8e, 0xc2, 0x6e,
+  0x45, 0x41, 0xf0, 0x7f, 0x27, 0x7f, 0x02, 0x7f, 0x98, 0x2e, 0x38, 0xb1,
+  0x23, 0x6f, 0xd1, 0x6f, 0xc2, 0x40, 0xf9, 0x86, 0x23, 0x7f, 0x80, 0xb2,
+  0xe0, 0x7e, 0x0f, 0x2f, 0x32, 0x6f, 0x64, 0x6f, 0x82, 0x40, 0xf2, 0x7f,
+  0x50, 0x82, 0x42, 0x6f, 0x50, 0x6f, 0x73, 0x6f, 0x85, 0x40, 0xc3, 0x40,
+  0x04, 0x41, 0x06, 0x40, 0xe2, 0x6e, 0x98, 0x2e, 0x38, 0xb1, 0xe0, 0x7e,
+  0xf3, 0x31, 0x10, 0x6f, 0x36, 0x80, 0xe1, 0x6e, 0x02, 0x40, 0x71, 0x7f,
+  0x51, 0x04, 0x02, 0x30, 0x40, 0xa8, 0x91, 0x04, 0x4a, 0x22, 0x89, 0x16,
+  0x93, 0x08, 0x4a, 0x00, 0x95, 0xb4, 0x09, 0x18, 0x8e, 0x16, 0x13, 0x30,
+  0x93, 0x08, 0x21, 0x6f, 0x60, 0x7f, 0x4d, 0x86, 0x02, 0x80, 0xb2, 0x00,
+  0x41, 0x40, 0x21, 0xb5, 0x50, 0x7f, 0x43, 0x7f, 0x98, 0x2e, 0xa7, 0xb1,
+  0x40, 0x6f, 0x62, 0x6f, 0x55, 0x6f, 0x13, 0x40, 0x84, 0x40, 0x01, 0x40,
+  0x45, 0x41, 0x42, 0xbe, 0x1d, 0x18, 0x4c, 0x04, 0x31, 0x0f, 0x04, 0x8a,
+  0xc0, 0x6f, 0x11, 0x30, 0x02, 0x2f, 0x00, 0x2e, 0x03, 0x2c, 0x01, 0x42,
+  0x23, 0x30, 0x03, 0x42, 0x00, 0x2e, 0xd6, 0x6f, 0x44, 0x41, 0x8a, 0x87,
+  0x76, 0x8b, 0x00, 0xb3, 0x53, 0x7f, 0x15, 0x2f, 0x04, 0x6f, 0x8b, 0x5e,
+  0x8b, 0x8d, 0xe7, 0x01, 0xc0, 0xa5, 0x84, 0x41, 0x01, 0x2f, 0x00, 0xa1,
+  0x03, 0x2f, 0xc0, 0xad, 0x08, 0x2f, 0x00, 0xa5, 0x06, 0x2f, 0xc6, 0x40,
+  0x81, 0x8d, 0x07, 0x30, 0x3c, 0x05, 0xd6, 0x42, 0x04, 0x2c, 0xc4, 0x42,
+  0x02, 0x2c, 0x07, 0x30, 0x07, 0x30, 0x86, 0x86, 0x94, 0x6f, 0xd7, 0x7e,
+  0x0e, 0x8d, 0x00, 0x40, 0x74, 0x89, 0xc7, 0x40, 0x02, 0xb2, 0xf9, 0x29,
+  0x45, 0x41, 0x86, 0x41, 0xbe, 0x80, 0x21, 0x41, 0x75, 0x23, 0x82, 0x40,
+  0xc7, 0x42, 0x45, 0x7f, 0x34, 0x7f, 0x20, 0x7f, 0x98, 0x2e, 0xa7, 0xb1,
+  0x31, 0x6f, 0x60, 0x6f, 0x24, 0x6f, 0x22, 0x40, 0x05, 0x41, 0x43, 0x40,
+  0x13, 0x01, 0x43, 0x86, 0xac, 0x0f, 0xd1, 0x6f, 0x30, 0x7f, 0x00, 0x2f,
+  0x44, 0x42, 0x48, 0x8a, 0x41, 0x88, 0xe1, 0x40, 0x13, 0x7f, 0x04, 0x7f,
+  0xf5, 0x7e, 0x98, 0x2e, 0xa7, 0xb1, 0x11, 0x6f, 0x60, 0x6f, 0x34, 0x6f,
+  0x42, 0x40, 0x03, 0x40, 0x9a, 0x04, 0x04, 0x41, 0x43, 0x82, 0xa2, 0x0e,
+  0x03, 0x6f, 0x00, 0x2f, 0xc2, 0x42, 0x00, 0x2e, 0x41, 0x40, 0x72, 0x6f,
+  0x98, 0x2e, 0xa7, 0xb1, 0x25, 0x6f, 0x72, 0x6f, 0x53, 0x41, 0x93, 0x0e,
+  0xd1, 0x6f, 0x46, 0x80, 0x1b, 0x30, 0x03, 0x30, 0x0c, 0x2f, 0x04, 0x40,
+  0x00, 0x91, 0x42, 0x42, 0x08, 0x2f, 0xf6, 0x6e, 0x44, 0x6f, 0x86, 0x41,
+  0xb4, 0x0e, 0x03, 0x2f, 0x02, 0x88, 0xdb, 0x7e, 0x03, 0x43, 0x0b, 0x42,
+  0x46, 0x8d, 0x44, 0x41, 0x47, 0x80, 0x05, 0x6f, 0x94, 0x0f, 0x76, 0x7f,
+  0x60, 0x7f, 0x02, 0x2f, 0x45, 0x89, 0x42, 0x43, 0x03, 0x43, 0x49, 0x88,
+  0xa5, 0x6f, 0x40, 0x91, 0xa4, 0x7f, 0x15, 0x30, 0xe2, 0x6f, 0xd3, 0x6e,
+  0x03, 0x2f, 0x04, 0x30, 0x83, 0x42, 0x80, 0x2e, 0x62, 0xb4, 0x04, 0x40,
+  0x25, 0x29, 0x04, 0x42, 0x83, 0x42, 0x45, 0x82, 0x94, 0x6f, 0x04, 0x85,
+  0xc0, 0xb2, 0x90, 0x2e, 0x4e, 0xb4, 0x15, 0x87, 0x3c, 0x8c, 0xc4, 0x40,
+  0x46, 0x7f, 0xc2, 0x86, 0x07, 0x40, 0x86, 0x41, 0xf4, 0xbf, 0x00, 0xb3,
+  0x0c, 0x2f, 0x90, 0x6f, 0x16, 0x80, 0x46, 0x25, 0x00, 0x40, 0x57, 0x25,
+  0x04, 0x18, 0xae, 0x0e, 0x10, 0x30, 0x06, 0x30, 0x75, 0x25, 0x46, 0x23,
+  0x60, 0x6f, 0x64, 0x25, 0xc4, 0x40, 0xfa, 0x86, 0x00, 0xb3, 0x33, 0x7f,
+  0x09, 0x2f, 0x93, 0x6f, 0xd8, 0x88, 0x53, 0x6f, 0x04, 0x41, 0xc3, 0x40,
+  0xdc, 0x0e, 0x13, 0x30, 0x04, 0x30, 0xdc, 0x22, 0xb3, 0x25, 0x40, 0xb3,
+  0x02, 0x2f, 0x3b, 0x25, 0xc0, 0x90, 0x05, 0x2f, 0x91, 0x6f, 0xd0, 0x6f,
+  0x98, 0x2e, 0xb1, 0xb2, 0x4d, 0x2c, 0x04, 0x30, 0x8d, 0x88, 0x43, 0x40,
+  0x82, 0x40, 0x54, 0x7f, 0xda, 0x0f, 0x04, 0x30, 0x08, 0x2f, 0xc1, 0x80,
+  0x40, 0x42, 0xc2, 0x0f, 0x02, 0x2f, 0x00, 0x30, 0xc0, 0x7e, 0x1b, 0x2d,
+  0xc0, 0x7e, 0x19, 0x2d, 0xe1, 0xbc, 0x92, 0x6f, 0x4f, 0x04, 0x90, 0x84,
+  0x40, 0xa8, 0x21, 0x05, 0x83, 0x40, 0x4c, 0x22, 0x4b, 0x0e, 0xb6, 0x84,
+  0x21, 0x30, 0x02, 0x2f, 0x11, 0x30, 0x04, 0x2c, 0xc1, 0x7e, 0xe3, 0x6f,
+  0xc1, 0x7e, 0xc1, 0x42, 0x00, 0x2e, 0x00, 0x40, 0x81, 0x40, 0x04, 0xbd,
+  0x40, 0x6f, 0x98, 0x2e, 0xa7, 0xb1, 0x50, 0x6f, 0x11, 0x30, 0x02, 0x40,
+  0x51, 0x08, 0xc3, 0x6e, 0x03, 0x80, 0x99, 0x15, 0x0b, 0x40, 0xb1, 0x6f,
+  0xd0, 0x6f, 0xb6, 0x7f, 0x5b, 0x7f, 0x04, 0x30, 0x59, 0x54, 0x03, 0x30,
+  0x11, 0x2c, 0x14, 0x80, 0x55, 0x6f, 0x06, 0x40, 0x75, 0x01, 0x58, 0xbb,
+  0x6a, 0x09, 0x05, 0x42, 0xc1, 0x86, 0x47, 0x40, 0x51, 0x25, 0xbe, 0x01,
+  0x56, 0x43, 0x00, 0x2e, 0x46, 0x41, 0xf4, 0x03, 0xb6, 0x6f, 0x47, 0x43,
+  0x5e, 0x0e, 0xed, 0x2f, 0x31, 0x6f, 0x60, 0x6f, 0x42, 0x40, 0x15, 0x30,
+  0x02, 0x82, 0x95, 0x08, 0x04, 0x42, 0x52, 0x42, 0x02, 0x2c, 0x44, 0x42,
+  0x04, 0x30, 0x3e, 0x8e, 0x91, 0x6f, 0x4f, 0x8c, 0x02, 0x40, 0x83, 0x41,
+  0xb5, 0x8d, 0x93, 0x0e, 0xd0, 0x6f, 0x01, 0x2f, 0x98, 0x2e, 0xb1, 0xb2,
+  0x00, 0x2e, 0xc0, 0x41, 0x81, 0x41, 0xc1, 0x0f, 0xc0, 0x6f, 0x01, 0x2f,
+  0x04, 0x42, 0x00, 0x2e, 0x70, 0x6f, 0x3c, 0x82, 0x00, 0x40, 0x41, 0x40,
+  0x89, 0x16, 0x95, 0x08, 0x4a, 0x00, 0x04, 0xbc, 0x91, 0xb4, 0x01, 0x0e,
+  0xe0, 0x6f, 0x07, 0x2f, 0xa1, 0x6f, 0x00, 0x2e, 0x41, 0x40, 0x40, 0xb2,
+  0x02, 0x2f, 0xa1, 0x6f, 0x05, 0x42, 0x44, 0x42, 0x00, 0x2e, 0x8b, 0x6f,
+  0xc0, 0x5e, 0xb8, 0x2e, 0x10, 0x50, 0x8d, 0x52, 0x4b, 0x50, 0xfb, 0x7f,
+  0x98, 0x2e, 0x98, 0xb4, 0x4b, 0x52, 0x45, 0x82, 0x10, 0x30, 0x50, 0x42,
+  0x60, 0x30, 0xfb, 0x6f, 0xc0, 0x2e, 0x40, 0x42, 0xf0, 0x5f, 0x10, 0x50,
+  0x8f, 0x52, 0x4d, 0x50, 0xfb, 0x7f, 0x98, 0x2e, 0x98, 0xb4, 0x4d, 0x52,
+  0x45, 0x82, 0x00, 0x30, 0x50, 0x42, 0x70, 0x30, 0xfb, 0x6f, 0xc0, 0x2e,
+  0x40, 0x42, 0xf0, 0x5f, 0x12, 0x30, 0x12, 0x42, 0x02, 0x30, 0x12, 0x42,
+  0x12, 0x42, 0x12, 0x42, 0x02, 0x42, 0x03, 0x80, 0x41, 0x84, 0x11, 0x42,
+  0x02, 0x42, 0xb8, 0x2e, 0x48, 0x86, 0x90, 0x50, 0xc4, 0x40, 0x42, 0x84,
+  0xf2, 0x7f, 0x5a, 0x25, 0x02, 0x41, 0xa2, 0xbf, 0x77, 0x85, 0x06, 0x41,
+  0xff, 0xbb, 0x87, 0x42, 0x61, 0xbf, 0x07, 0x41, 0x6f, 0xbb, 0x86, 0x7f,
+  0x7f, 0xbb, 0x96, 0x7f, 0xfe, 0x86, 0x86, 0x40, 0x80, 0x91, 0xc3, 0x40,
+  0xd3, 0x7f, 0xe0, 0x7f, 0x13, 0x30, 0x05, 0x2f, 0x86, 0x6f, 0x80, 0x91,
+  0x02, 0x2f, 0x96, 0x6f, 0x80, 0xb3, 0x60, 0x2f, 0x61, 0x25, 0x57, 0x40,
+  0xc1, 0x91, 0xc1, 0x7f, 0x0f, 0x2f, 0x01, 0x30, 0x81, 0x43, 0x00, 0x2e,
+  0xf2, 0x6f, 0x13, 0x40, 0x93, 0x42, 0x00, 0x2e, 0x13, 0x40, 0x93, 0x42,
+  0x00, 0x2e, 0x00, 0x40, 0x80, 0x42, 0xbd, 0x80, 0xc0, 0x2e, 0x01, 0x42,
+  0x70, 0x5f, 0x87, 0x83, 0x7a, 0x8d, 0x45, 0x40, 0x7b, 0x82, 0x45, 0x41,
+  0x04, 0x41, 0xd5, 0xbf, 0x43, 0xbe, 0xc3, 0xba, 0xa5, 0x7f, 0x75, 0xba,
+  0xb6, 0x7f, 0x05, 0x30, 0x97, 0x40, 0xc0, 0xb3, 0x09, 0x2f, 0x06, 0x40,
+  0x47, 0x40, 0xb7, 0x05, 0x07, 0x30, 0x80, 0xa9, 0xfe, 0x05, 0xb7, 0x23,
+  0x74, 0x0f, 0x5d, 0x23, 0xb6, 0x6f, 0x41, 0x82, 0x01, 0x80, 0x56, 0x0e,
+  0xee, 0x2f, 0x40, 0x40, 0x28, 0x1a, 0xc4, 0x6f, 0xe0, 0x6f, 0xf2, 0x6f,
+  0x02, 0x2f, 0x03, 0x30, 0x19, 0x2c, 0x03, 0x43, 0x05, 0x41, 0x6b, 0x29,
+  0xa6, 0x6f, 0x05, 0x43, 0x6e, 0x0e, 0x11, 0x2f, 0xd4, 0x6f, 0x00, 0xb3,
+  0x03, 0x2f, 0x3f, 0x89, 0xdc, 0x14, 0x27, 0x2e, 0x5e, 0xf0, 0x40, 0x25,
+  0x32, 0x25, 0x15, 0x41, 0xd5, 0x42, 0x00, 0x2e, 0x15, 0x41, 0xd5, 0x42,
+  0x00, 0x2e, 0x04, 0x41, 0xc4, 0x42, 0x00, 0x2e, 0x00, 0x2e, 0x41, 0x40,
+  0x40, 0x90, 0x09, 0x2f, 0x11, 0x40, 0x91, 0x42, 0x00, 0x2e, 0x11, 0x40,
+  0x91, 0x42, 0x00, 0x2e, 0x00, 0x40, 0x02, 0x2c, 0x80, 0x42, 0x43, 0x42,
+  0x70, 0x5f, 0xb8, 0x2e, 0xb0, 0x50, 0x3a, 0x25, 0xf5, 0x86, 0x91, 0x58,
+  0xc4, 0x42, 0x15, 0x30, 0x93, 0x58, 0x4d, 0x09, 0x81, 0x90, 0x64, 0x7f,
+  0xf2, 0x7f, 0xeb, 0x7f, 0x02, 0x2f, 0x40, 0xb3, 0x90, 0x2e, 0x05, 0xb6,
+  0x15, 0x0b, 0x00, 0xb3, 0x90, 0x2e, 0x05, 0xb6, 0x9a, 0x00, 0xe3, 0x30,
+  0xcb, 0x08, 0x81, 0x40, 0x44, 0x84, 0xb1, 0xba, 0x46, 0x86, 0x49, 0x8e,
+  0x97, 0x5c, 0xc2, 0x7f, 0x02, 0x84, 0x07, 0x25, 0xd3, 0x7f, 0x2b, 0x2e,
+  0xa9, 0x00, 0x84, 0x40, 0xe3, 0x41, 0xe3, 0x04, 0xc4, 0x41, 0xc3, 0x43,
+  0x2e, 0x18, 0x95, 0x5a, 0x8b, 0x40, 0x0b, 0x42, 0xb5, 0x00, 0x99, 0x5a,
+  0xb2, 0x7f, 0x3a, 0x80, 0x95, 0x00, 0x05, 0x40, 0x41, 0x8b, 0x05, 0x42,
+  0x03, 0x8a, 0xa2, 0x7f, 0x43, 0x84, 0x40, 0x41, 0x7b, 0x8b, 0x85, 0x7f,
+  0x00, 0xb2, 0xdc, 0x05, 0x91, 0x7f, 0x04, 0x2f, 0xc3, 0x6f, 0x00, 0x2e,
+  0xc4, 0x40, 0x01, 0x89, 0xc4, 0x42, 0x47, 0x86, 0x66, 0x41, 0x75, 0x7f,
+  0x45, 0x88, 0x42, 0x82, 0x3e, 0x0f, 0x45, 0x41, 0x34, 0x2f, 0x46, 0x40,
+  0x3e, 0x0e, 0x26, 0x2f, 0x85, 0x40, 0xc1, 0x33, 0xa9, 0x0e, 0x01, 0x30,
+  0x02, 0x2f, 0xc3, 0x40, 0xc0, 0xb2, 0x1b, 0x2f, 0x82, 0x34, 0xaa, 0x0e,
+  0x31, 0x2f, 0x01, 0x41, 0x7f, 0x82, 0x43, 0xa2, 0x02, 0x30, 0x02, 0x2f,
+  0x00, 0x2e, 0x0c, 0x2c, 0x01, 0x30, 0x00, 0xb2, 0xd0, 0x6f, 0x11, 0x30,
+  0x01, 0x2f, 0x02, 0x42, 0x02, 0x2d, 0x01, 0x42, 0x01, 0x30, 0xc0, 0x6f,
+  0x00, 0x2e, 0x02, 0x42, 0x3e, 0x81, 0x04, 0x86, 0x02, 0x42, 0x02, 0x43,
+  0xc2, 0x42, 0x19, 0x2d, 0xc0, 0x33, 0x80, 0x42, 0x16, 0x2d, 0xa0, 0x6f,
+  0x28, 0x04, 0x38, 0x1e, 0x40, 0x42, 0x11, 0x30, 0x90, 0x6f, 0x22, 0x30,
+  0x98, 0x2e, 0x08, 0xb6, 0x0c, 0x2c, 0x01, 0x30, 0xa1, 0x6f, 0xa9, 0x00,
+  0x90, 0x6f, 0x01, 0x82, 0xba, 0x1c, 0x42, 0x42, 0x21, 0x30, 0x12, 0x30,
+  0x98, 0x2e, 0x08, 0xb6, 0x01, 0x30, 0x72, 0x6f, 0xd4, 0xb1, 0xf5, 0xbd,
+  0x6b, 0xba, 0x9f, 0x5a, 0x80, 0x40, 0x05, 0x18, 0xf5, 0xbe, 0xe3, 0x0a,
+  0xeb, 0xbb, 0x3d, 0x0b, 0x80, 0x6f, 0xe3, 0x00, 0x04, 0x40, 0x63, 0x05,
+  0xa1, 0x58, 0x2c, 0x18, 0xf5, 0xbe, 0x83, 0x42, 0xeb, 0xbb, 0xfd, 0x0b,
+  0xb2, 0x6f, 0x5a, 0x01, 0xdf, 0x01, 0x7d, 0x1f, 0x15, 0x42, 0x9a, 0x04,
+  0x05, 0x40, 0x5d, 0x05, 0x2c, 0x18, 0x75, 0xbe, 0xeb, 0xba, 0x2c, 0x0b,
+  0xdc, 0x04, 0x9a, 0x1c, 0x02, 0x42, 0x04, 0x80, 0x00, 0x2e, 0x00, 0x40,
+  0x00, 0xb2, 0x10, 0x2f, 0xc2, 0x6f, 0xc0, 0x33, 0x82, 0x40, 0x90, 0x0e,
+  0x0b, 0x2f, 0xd1, 0x6f, 0x7e, 0x88, 0x03, 0x81, 0x3c, 0x84, 0x0b, 0x30,
+  0x82, 0x86, 0x4b, 0x42, 0x0b, 0x42, 0x0b, 0x43, 0x8b, 0x42, 0xcb, 0x42,
+  0x21, 0x30, 0x42, 0xb2, 0x02, 0x30, 0x9d, 0x50, 0x02, 0x22, 0x41, 0xb2,
+  0x9b, 0x52, 0x08, 0x22, 0xf1, 0x6f, 0x40, 0x90, 0x11, 0x30, 0x06, 0x2f,
+  0x22, 0x30, 0x02, 0x08, 0x00, 0xb2, 0x08, 0x2f, 0x23, 0x2e, 0x5e, 0xf0,
+  0x06, 0x2d, 0x01, 0x08, 0x00, 0xb2, 0x02, 0x2f, 0x00, 0x31, 0x21, 0x2e,
+  0x5e, 0xf0, 0xeb, 0x6f, 0x50, 0x5f, 0xb8, 0x2e, 0x07, 0x86, 0xfc, 0x88,
+  0xc6, 0x40, 0x05, 0x41, 0x31, 0x1a, 0x12, 0x2f, 0x80, 0x91, 0x22, 0x2f,
+  0xc1, 0x33, 0x29, 0x0f, 0x0a, 0x2f, 0x06, 0x80, 0x00, 0x2e, 0x00, 0x40,
+  0x00, 0xb2, 0x01, 0x2f, 0x44, 0xa9, 0x03, 0x2f, 0x00, 0x30, 0xc0, 0x42,
+  0x00, 0x43, 0xb8, 0x2e, 0xc2, 0x42, 0x01, 0x43, 0xb8, 0x2e, 0xc1, 0x33,
+  0xa9, 0x0e, 0x0e, 0x2f, 0x43, 0x3c, 0xeb, 0x00, 0xcc, 0xa8, 0x0a, 0x2f,
+  0x05, 0x86, 0xc2, 0x80, 0xc3, 0x40, 0x02, 0x42, 0x3c, 0x84, 0xc1, 0x80,
+  0x81, 0x42, 0x82, 0x84, 0xc0, 0x2e, 0x80, 0x42, 0x00, 0x2e, 0xb8, 0x2e,
+  0x05, 0x2e, 0x20, 0x01, 0x11, 0x30, 0x20, 0x50, 0x91, 0x08, 0xf0, 0x7f,
+  0x80, 0xb2, 0xeb, 0x7f, 0x13, 0x2f, 0x01, 0x2e, 0x74, 0x00, 0x01, 0x90,
+  0x02, 0x30, 0xa3, 0x50, 0x03, 0x2f, 0x25, 0x2e, 0x74, 0x00, 0x98, 0x2e,
+  0xad, 0xb7, 0xf2, 0x6f, 0xa3, 0x52, 0x98, 0x2e, 0x57, 0xb6, 0x00, 0xb2,
+  0x06, 0x2f, 0x80, 0x30, 0x21, 0x2e, 0x5e, 0xf0, 0x03, 0x2d, 0x10, 0x30,
+  0x21, 0x2e, 0x74, 0x00, 0xeb, 0x6f, 0xe0, 0x5f, 0xb8, 0x2e, 0x30, 0x51,
+  0x42, 0x8a, 0xe1, 0x7f, 0x83, 0x88, 0xdb, 0x7f, 0xc5, 0x7f, 0x1a, 0x25,
+  0x05, 0x25, 0x93, 0x40, 0x06, 0x40, 0xb3, 0x01, 0x16, 0x42, 0xcb, 0x16,
+  0x06, 0x40, 0xf3, 0x02, 0x13, 0x42, 0x54, 0x0e, 0xf5, 0x2f, 0x04, 0x40,
+  0x12, 0x30, 0xa2, 0x28, 0x02, 0x42, 0x88, 0xa0, 0x00, 0x30, 0x90, 0x2e,
+  0xa9, 0xb7, 0x6d, 0x84, 0x73, 0x88, 0x92, 0x7f, 0x70, 0x7f, 0x84, 0x7f,
+  0xa2, 0x7f, 0x70, 0x86, 0xb5, 0x7f, 0x63, 0x7f, 0x75, 0x30, 0xa5, 0x52,
+  0xa7, 0x54, 0xbd, 0x50, 0xaf, 0x58, 0xb7, 0x6f, 0xf4, 0x7f, 0x51, 0x7f,
+  0x00, 0x2e, 0xd6, 0x41, 0xd4, 0x41, 0xb7, 0x7f, 0xcc, 0x17, 0x7d, 0x09,
+  0x75, 0x01, 0x06, 0x30, 0x26, 0x03, 0x4d, 0xbe, 0xd3, 0xba, 0x6c, 0x0b,
+  0x28, 0x0e, 0x05, 0x22, 0x2a, 0x0f, 0x90, 0x22, 0xd2, 0x42, 0x43, 0x7f,
+  0x32, 0x7f, 0x00, 0x2e, 0xa9, 0x5a, 0xab, 0x58, 0xad, 0x5c, 0xa9, 0x56,
+  0x98, 0x2e, 0x38, 0xb1, 0x91, 0x6f, 0x32, 0x6f, 0x50, 0x42, 0x91, 0x7f,
+  0xb3, 0x30, 0x10, 0x25, 0x98, 0x2e, 0xdb, 0xb7, 0x71, 0x6f, 0x88, 0x28,
+  0x43, 0x6f, 0x80, 0x6f, 0x72, 0x7f, 0x58, 0x0e, 0x51, 0x6f, 0x44, 0x82,
+  0xa7, 0x54, 0xbd, 0x50, 0x75, 0x30, 0xaf, 0x58, 0xcd, 0x2f, 0xb1, 0x6f,
+  0x46, 0x84, 0xe1, 0x6f, 0x4e, 0x80, 0x81, 0x40, 0xb2, 0x7f, 0x90, 0x7f,
+  0x12, 0x30, 0x98, 0x2e, 0xcc, 0xb7, 0xb1, 0x6f, 0x7c, 0x8a, 0xa2, 0x6f,
+  0xb5, 0x7f, 0x40, 0x42, 0x98, 0x2e, 0xf4, 0x01, 0x95, 0xbc, 0x0b, 0xb9,
+  0x51, 0x0a, 0x62, 0x6f, 0xa1, 0x7f, 0x98, 0x2e, 0xf4, 0x01, 0x95, 0xbc,
+  0x0b, 0xb9, 0x11, 0x0a, 0xa1, 0x6f, 0x49, 0x17, 0x48, 0x18, 0x88, 0x16,
+  0xe8, 0x18, 0xd1, 0x18, 0x27, 0x25, 0x16, 0x25, 0x80, 0x7f, 0x98, 0x2e,
+  0xbe, 0x00, 0xb5, 0x6f, 0xe1, 0x6f, 0x43, 0x41, 0x4b, 0x84, 0x4c, 0x8c,
+  0xb0, 0x7f, 0x62, 0x7f, 0x4a, 0x88, 0x7e, 0x8b, 0xc0, 0x90, 0x56, 0x7f,
+  0x13, 0x2f, 0x45, 0x7f, 0x34, 0x7f, 0xb3, 0x30, 0xb1, 0x52, 0xb2, 0x6f,
+  0x98, 0x2e, 0xdb, 0xb7, 0x71, 0x6f, 0x88, 0x0e, 0x34, 0x6f, 0x45, 0x6f,
+  0xe1, 0x6f, 0x06, 0x2f, 0x34, 0x25, 0x1b, 0x30, 0x10, 0x6f, 0x22, 0x6f,
+  0xdb, 0x42, 0xd0, 0x42, 0xc2, 0x42, 0x02, 0x30, 0x00, 0x6f, 0x00, 0xa8,
+  0x90, 0x05, 0x13, 0x6f, 0x86, 0x23, 0xc0, 0xa8, 0xd3, 0x05, 0xdf, 0x23,
+  0xb7, 0x05, 0xb3, 0x5e, 0x37, 0x0f, 0x4d, 0x8c, 0x07, 0x30, 0x19, 0x2f,
+  0x44, 0x7f, 0x00, 0x2e, 0x24, 0x6f, 0xb3, 0x5e, 0xa7, 0x0e, 0x44, 0x6f,
+  0x07, 0x30, 0x11, 0x2f, 0xc7, 0x5e, 0xdf, 0x00, 0xc1, 0x5e, 0x5f, 0x0e,
+  0x02, 0x2f, 0x00, 0x2e, 0x0b, 0x2c, 0x07, 0x30, 0xc9, 0x56, 0x03, 0x00,
+  0xc3, 0x56, 0x43, 0x0e, 0x02, 0x2f, 0x00, 0x2e, 0x03, 0x2c, 0x07, 0x30,
+  0x82, 0x43, 0x17, 0x30, 0x41, 0x86, 0xc0, 0x91, 0x0e, 0x2f, 0xc0, 0x40,
+  0x01, 0x90, 0x09, 0x2f, 0x80, 0x41, 0x14, 0x30, 0x04, 0x28, 0x80, 0x43,
+  0x06, 0xa0, 0x03, 0x2f, 0xc8, 0x80, 0xbb, 0x58, 0xc2, 0x42, 0x04, 0x42,
+  0x66, 0x2c, 0x00, 0x30, 0x90, 0x6f, 0x00, 0x2e, 0x00, 0x40, 0x00, 0xa8,
+  0x00, 0x30, 0x5e, 0x2f, 0x00, 0x41, 0x00, 0xb2, 0x00, 0x30, 0x5a, 0x2f,
+  0x49, 0x82, 0xb2, 0x6f, 0x43, 0x7f, 0xb5, 0x7f, 0x94, 0x7f, 0xb3, 0x30,
+  0x41, 0x40, 0x98, 0x2e, 0xdb, 0xb7, 0x71, 0x6f, 0x88, 0x0f, 0xb5, 0x6f,
+  0xe1, 0x6f, 0x02, 0x30, 0x00, 0x30, 0x4a, 0x2f, 0x80, 0x6f, 0xc5, 0x58,
+  0x04, 0x00, 0xbf, 0x58, 0x44, 0x0e, 0x02, 0x2f, 0x00, 0x2e, 0x43, 0x2c,
+  0x00, 0x30, 0xa0, 0x6f, 0xb5, 0x58, 0x84, 0x0e, 0x00, 0x30, 0x3c, 0x2f,
+  0xb7, 0x54, 0x21, 0x6f, 0xb5, 0x7f, 0x98, 0x2e, 0xcc, 0xb7, 0x10, 0x25,
+  0xb3, 0x30, 0x21, 0x25, 0x98, 0x2e, 0xdb, 0xb7, 0x02, 0x6f, 0xa0, 0x7f,
+  0xb3, 0x30, 0x12, 0x25, 0x98, 0x2e, 0xdb, 0xb7, 0x12, 0x6f, 0x80, 0x7f,
+  0xb3, 0x30, 0x12, 0x25, 0x98, 0x2e, 0xdb, 0xb7, 0x81, 0x6f, 0x88, 0x28,
+  0x87, 0x52, 0x98, 0x2e, 0xcc, 0xb7, 0xa1, 0x6f, 0x88, 0x0f, 0xb5, 0x6f,
+  0xe1, 0x6f, 0x02, 0x30, 0x00, 0x30, 0x1a, 0x2f, 0x44, 0x6f, 0x00, 0x2e,
+  0x00, 0x41, 0x00, 0xb2, 0x0f, 0x2f, 0x64, 0x6f, 0x10, 0x6f, 0x04, 0x41,
+  0x84, 0x0e, 0x00, 0x30, 0x0f, 0x2f, 0x54, 0x6f, 0x20, 0x6f, 0x04, 0x41,
+  0x84, 0x0f, 0x00, 0x30, 0x09, 0x2f, 0x94, 0x6f, 0x10, 0x30, 0x07, 0x2c,
+  0x02, 0x43, 0x08, 0x87, 0xb9, 0x50, 0xd0, 0x42, 0x10, 0x30, 0x00, 0x43,
+  0xc2, 0x42, 0x0b, 0x30, 0x4b, 0x43, 0x7a, 0x8b, 0xc4, 0x6f, 0x06, 0x89,
+  0x52, 0x43, 0x52, 0x43, 0x6c, 0x0e, 0xfb, 0x2f, 0x78, 0x85, 0x00, 0x2e,
+  0x82, 0x40, 0x02, 0x1a, 0x02, 0x2f, 0x00, 0x2e, 0x02, 0x2c, 0x40, 0x42,
+  0x00, 0x30, 0x00, 0x2e, 0xdb, 0x6f, 0xd0, 0x5e, 0xb8, 0x2e, 0x08, 0x82,
+  0x02, 0x30, 0x12, 0x42, 0x08, 0x86, 0xc2, 0x88, 0x87, 0x5a, 0x12, 0x43,
+  0x05, 0x43, 0x02, 0x8b, 0x7c, 0x8d, 0x42, 0x43, 0x14, 0x30, 0xbe, 0x8b,
+  0x04, 0x42, 0x45, 0x81, 0x42, 0x43, 0x02, 0x42, 0x35, 0x80, 0xb9, 0x5e,
+  0xa5, 0x5a, 0xc7, 0x42, 0x84, 0x43, 0x52, 0x43, 0x12, 0x42, 0x52, 0x43,
+  0x12, 0x42, 0x52, 0x43, 0x52, 0x43, 0x41, 0x0e, 0xf7, 0x2f, 0xb8, 0x2e,
+  0x0a, 0x0c, 0x55, 0x56, 0x03, 0x09, 0x0a, 0x04, 0x00, 0xb3, 0x07, 0x2f,
+  0x88, 0x0c, 0x93, 0x08, 0x80, 0xb2, 0x03, 0x2f, 0x53, 0x50, 0xc0, 0x2e,
+  0x40, 0xac, 0x03, 0x22, 0xb8, 0x2e, 0xff, 0x88, 0x10, 0x30, 0x4a, 0x0d,
+  0x0a, 0x18, 0x04, 0x15, 0x4c, 0x16, 0x5f, 0xb9, 0x79, 0x08, 0x53, 0x5a,
+  0x95, 0x00, 0x34, 0x09, 0x40, 0x90, 0x02, 0x2f, 0x00, 0x91, 0x00, 0x2f,
+  0x00, 0x30, 0xd8, 0x00, 0xc0, 0xb2, 0x0b, 0x2f, 0xd0, 0xa0, 0x03, 0x2f,
+  0xf0, 0x86, 0xbb, 0x11, 0x07, 0x2c, 0xce, 0x17, 0x01, 0x31, 0x4b, 0x04,
+  0x79, 0x14, 0x33, 0x12, 0xfb, 0x11, 0x81, 0x0b, 0xce, 0x16, 0xc0, 0x2e,
+  0x7b, 0x1a, 0x16, 0x22, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00,
+  0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00, 0x80, 0x2e, 0x18, 0x00
+};
+
 const uint8_t bma423_config_file[] = {
   0x80, 0x2e, 0xfe, 0x00, 0x80, 0x2e, 0xf1, 0x01, 0xc8, 0x2e, 0x00, 0x2e, 0x80, 0x2e, 0xfc, 0x00, 0x80, 0x2e, 0xfb,
   0x00, 0x80, 0x2e, 0xff, 0x00, 0x80, 0x2e, 0xfd, 0x00, 0x80, 0x2e, 0x42, 0xb0, 0x50, 0x39, 0x21, 0x2e, 0xb0, 0xf0,
@@ -450,7 +965,7 @@ int8_t bma423_init(struct bma4_dev *dev)
     rslt = bma4_init(dev);
     if (rslt == BMA4_OK)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             /* Resolution of BMA423 sensor is 12 bit */
             dev->resolution = 12;
@@ -478,7 +993,7 @@ int8_t bma423_write_config_file(struct bma4_dev *dev)
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             /* Configuration stream read/write length boundary
              * check
@@ -492,7 +1007,10 @@ int8_t bma423_write_config_file(struct bma4_dev *dev)
                 }
 
                 /*Assign stream data */
-                dev->config_file_ptr = bma423_config_file;
+                if(dev->chip_id == BMA423_CHIP_ID)
+                  dev->config_file_ptr = bma423_config_file;
+                else if(dev->chip_id == BMA425_CHIP_ID)
+                  dev->config_file_ptr = bma425_config_file;
                 rslt = bma4_write_config_file(dev);
             }
             else
@@ -526,7 +1044,7 @@ int8_t bma423_get_config_id(uint16_t *config_id, struct bma4_dev *dev)
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -559,7 +1077,7 @@ int8_t bma423_map_interrupt(uint8_t int_line, uint16_t int_map, uint8_t enable,
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             if (int_line <= 1)
             {
@@ -593,7 +1111,7 @@ int8_t bma423_read_int_status(uint16_t *int_status, struct bma4_dev *dev)
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             /* Read the interrupt status */
             rslt = bma4_read_int_status(int_status, dev);
@@ -622,7 +1140,7 @@ int8_t bma423_feature_enable(uint8_t feature, uint8_t enable, struct bma4_dev *d
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             /* Read feature configuration data */
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, len, dev);
@@ -669,7 +1187,7 @@ int8_t bma423_set_remap_axes(const struct bma423_axes_remap *remap_data, struct
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -708,7 +1226,7 @@ int8_t bma423_get_remap_axes(struct bma423_axes_remap *remap_data, struct bma4_d
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -997,7 +1515,7 @@ int8_t bma423_step_detector_enable(uint8_t enable, struct bma4_dev *dev)
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -1034,7 +1552,7 @@ int8_t bma423_step_counter_set_watermark(uint16_t step_counter_wm, struct bma4_d
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -1088,7 +1606,7 @@ int8_t bma423_step_counter_get_watermark(uint16_t *step_counter_wm, struct bma4_
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -1125,7 +1643,7 @@ int8_t bma423_reset_step_counter(struct bma4_dev *dev)
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -1162,7 +1680,7 @@ int8_t bma423_step_counter_output(uint32_t *step_count, struct bma4_dev *dev)
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             /* Reads the step counter output data from the
              * gpio register
@@ -1200,7 +1718,7 @@ int8_t bma423_activity_output(uint8_t *activity, struct bma4_dev *dev)
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             /* Reads the activity output from the gpio register */
             rslt = bma4_read_regs(BMA4_ACTIVITY_OUT_ADDR, &data, 1, dev);
@@ -1234,7 +1752,7 @@ int8_t bma423_stepcounter_get_parameter(struct bma423_stepcounter_settings *sett
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -1269,7 +1787,7 @@ int8_t bma423_stepcounter_set_parameter(const struct bma423_stepcounter_settings
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -1306,7 +1824,7 @@ int8_t bma423_single_tap_set_sensitivity(uint8_t sensitivity, struct bma4_dev *d
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -1341,7 +1859,7 @@ int8_t bma423_double_tap_set_sensitivity(uint8_t sensitivity, struct bma4_dev *d
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -1376,7 +1894,7 @@ int8_t bma423_single_tap_get_sensitivity(uint8_t *sensitivity, struct bma4_dev *
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
@@ -1409,7 +1927,7 @@ int8_t bma423_double_tap_get_sensitivity(uint8_t *sensitivity, struct bma4_dev *
 
     if (dev != NULL)
     {
-        if (dev->chip_id == BMA423_CHIP_ID)
+        if (dev->chip_id == BMA423_CHIP_ID || dev->chip_id == BMA425_CHIP_ID)
         {
             rslt = bma4_read_regs(BMA4_FEATURE_CONFIG_ADDR, feature_config, BMA423_FEATURE_SIZE, dev);
             if (rslt == BMA4_OK)
diff --git a/src/drivers/Bma421_C/bma423.h b/src/drivers/Bma421_C/bma423.h
index 96e5d8e3..b58e0d21 100644
--- a/src/drivers/Bma421_C/bma423.h
+++ b/src/drivers/Bma421_C/bma423.h
@@ -52,6 +52,7 @@ extern "C" {
 
 /**\name Chip ID of BMA423 sensor */
 #define BMA423_CHIP_ID                 UINT8_C(0x11)
+#define BMA425_CHIP_ID                 UINT8_C(0x13)
 
 /**\ Configuration ID start position of BMA423 sensor */
 #define BMA423_CONFIG_ID_START_ADDR    UINT8_C(66)
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 38e9793c..13755f71 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -126,6 +126,7 @@ void SystemTask::Work() {
   twiMaster.Init();
 
   motionSensor.Init();
+  motionController.Init(motionSensor.DeviceType());
   settingsController.Init();
 
   displayApp.Register(this);

From 20a24f8cf56551eae1202f8dc5733bd0cf61adbf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Sat, 19 Jun 2021 20:59:18 +0200
Subject: [PATCH 27/58] Set version to 1.2.0

---
 CMakeLists.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1a488eaa..f2e467e9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,5 @@
 cmake_minimum_required(VERSION 3.10)
-project(pinetime VERSION 1.1.0 LANGUAGES C CXX ASM)
+project(pinetime VERSION 1.2.0 LANGUAGES C CXX ASM)
 
 set(CMAKE_C_STANDARD 99)
 set(CMAKE_CXX_STANDARD 14)

From 572be3e857f86047926f7ccae5a4197958580f98 Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Tue, 22 Jun 2021 21:31:31 +0300
Subject: [PATCH 28/58] Removed an illogical comparison from SystemInfo and
 St7789 driver (#449)

* Removed an illogical comparison
---
 src/displayapp/screens/SystemInfo.cpp | 3 ---
 src/drivers/St7789.cpp                | 3 ++-
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index 0b16d633..1cf895c7 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -141,9 +141,6 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
   uptimeSeconds = uptimeSeconds % secondsInAMinute;
   // TODO handle more than 100 days of uptime
 
-  if (batteryPercent == -1)
-    batteryPercent = 0;
-
   // hack to not use the flot functions from printf
   uint8_t batteryVoltageBytes[2];
   batteryVoltageBytes[1] = static_cast<uint8_t>(batteryVoltage); // truncate whole numbers
diff --git a/src/drivers/St7789.cpp b/src/drivers/St7789.cpp
index 39218e77..0f1dc02e 100644
--- a/src/drivers/St7789.cpp
+++ b/src/drivers/St7789.cpp
@@ -140,8 +140,9 @@ void St7789::Uninit() {
 }
 
 void St7789::DrawPixel(uint16_t x, uint16_t y, uint32_t color) {
-  if ((x < 0) || (x >= Width) || (y < 0) || (y >= Height))
+  if (x >= Width || y >= Height) {
     return;
+  }
 
   SetAddrWindow(x, y, x + 1, y + 1);
 

From ef999e8dd397ea2680e724ea0bd9987a1793a9c1 Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jonathan@vandermey.ca>
Date: Tue, 22 Jun 2021 14:34:46 -0400
Subject: [PATCH 29/58] Fix typo in variable names (#430)

---
 src/displayapp/screens/WatchFaceAnalog.cpp | 8 ++++----
 src/displayapp/screens/WatchFaceAnalog.h   | 6 +++---
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/displayapp/screens/WatchFaceAnalog.cpp b/src/displayapp/screens/WatchFaceAnalog.cpp
index 02f1fc2a..0051408c 100644
--- a/src/displayapp/screens/WatchFaceAnalog.cpp
+++ b/src/displayapp/screens/WatchFaceAnalog.cpp
@@ -30,14 +30,14 @@ WatchFaceAnalog::WatchFaceAnalog(Pinetime::Applications::DisplayApp* app,
                                  Controllers::DateTime& dateTimeController,
                                  Controllers::Battery& batteryController,
                                  Controllers::Ble& bleController,
-                                 Controllers::NotificationManager& notificatioManager,
+                                 Controllers::NotificationManager& notificationManager,
                                  Controllers::Settings& settingsController)
   : Screen(app),
     currentDateTime {{}},
     dateTimeController {dateTimeController},
     batteryController {batteryController},
     bleController {bleController},
-    notificatioManager {notificatioManager},
+    notificationManager {notificationManager},
     settingsController {settingsController} {
   settingsController.SetClockFace(1);
 
@@ -172,7 +172,7 @@ bool WatchFaceAnalog::Refresh() {
     lv_label_set_text(batteryIcon, BatteryIcon::GetBatteryIcon(batteryPercent));
   }
 
-  notificationState = notificatioManager.AreNewNotificationsAvailable();
+  notificationState = notificationManager.AreNewNotificationsAvailable();
 
   if (notificationState.IsUpdated()) {
     if (notificationState.Get() == true)
@@ -202,4 +202,4 @@ bool WatchFaceAnalog::Refresh() {
   }
 
   return true;
-}
\ No newline at end of file
+}
diff --git a/src/displayapp/screens/WatchFaceAnalog.h b/src/displayapp/screens/WatchFaceAnalog.h
index 667f6241..96225558 100644
--- a/src/displayapp/screens/WatchFaceAnalog.h
+++ b/src/displayapp/screens/WatchFaceAnalog.h
@@ -27,7 +27,7 @@ namespace Pinetime {
                         Controllers::DateTime& dateTimeController,
                         Controllers::Battery& batteryController,
                         Controllers::Ble& bleController,
-                        Controllers::NotificationManager& notificatioManager,
+                        Controllers::NotificationManager& notificationManager,
                         Controllers::Settings& settingsController);
 
         ~WatchFaceAnalog() override;
@@ -79,11 +79,11 @@ namespace Pinetime {
         Controllers::DateTime& dateTimeController;
         Controllers::Battery& batteryController;
         Controllers::Ble& bleController;
-        Controllers::NotificationManager& notificatioManager;
+        Controllers::NotificationManager& notificationManager;
         Controllers::Settings& settingsController;
 
         void UpdateClock();
       };
     }
   }
-}
\ No newline at end of file
+}

From 883700fca13a45b6cb0af4d74e3ef276a2d69283 Mon Sep 17 00:00:00 2001
From: Florian <fgrauper@gmail.com>
Date: Tue, 22 Jun 2021 20:56:49 +0200
Subject: [PATCH 30/58] update main font to keep diffs for future changes small
 (#420)

* update font with jetbrains mono v2.225 and the current converter
* added the tff file for JetBrains Mono to ensure everybody is using the same version

Co-authored-by: Florian <florian@florian-thinkpad.local>
---
 src/displayapp/fonts/JetBrainsMono-Bold.ttf   | Bin 0 -> 173264 bytes
 src/displayapp/fonts/README.md                |   2 +-
 src/displayapp/fonts/jetbrains_mono_bold_20.c | 390 +++++++++---------
 3 files changed, 204 insertions(+), 188 deletions(-)
 create mode 100644 src/displayapp/fonts/JetBrainsMono-Bold.ttf

diff --git a/src/displayapp/fonts/JetBrainsMono-Bold.ttf b/src/displayapp/fonts/JetBrainsMono-Bold.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..0cd1cb66bd193f2b178d0a69a7b0658d76b3a670
GIT binary patch
literal 173264
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
OwHaMwcmReuwf+ZCw$sx9

literal 0
HcmV?d00001

diff --git a/src/displayapp/fonts/README.md b/src/displayapp/fonts/README.md
index 183ad7e4..08427d51 100644
--- a/src/displayapp/fonts/README.md
+++ b/src/displayapp/fonts/README.md
@@ -10,7 +10,7 @@
 * Size : 20
 * Bpp : 1 bit-per-pixel
 * Do not enable font compression and horizontal subpixel hinting
-* Load the file `JetBrainsMono-Bold.tff` and specify the following range : `0x20-0x7f, 0x410-0x44f`
+* Load the file `JetBrainsMono-Bold.tff` (use the file in this repo to ensure the version matches) and specify the following range : `0x20-0x7f, 0x410-0x44f`
 * Add a 2nd font, load the file `FontAwesome5-Solid+Brands+Regular.woff` and specify the following
   range : `0xf293, 0xf294, 0xf244, 0xf240, 0xf242, 0xf243, 0xf241, 0xf54b, 0xf21e, 0xf1e6, 0xf54b, 0xf017, 0xf129, 0xf03a, 0xf185, 0xf560, 0xf001, 0xf3fd, 0xf069, 0xf1fc, 0xf45d, 0xf59f, 0xf5a0, 0xf029, 0xf027, 0xf028, 0xf6a9, 0xf04b, 0xf04c, 0xf048, 0xf051, 0xf095, 0xf3dd, 0xf04d, 0xf2f2, 0xf024, 0xf252`
 * Click on Convert, and download the file `jetbrains_mono_bold_20.c` and copy it in `src/DisplayApp/Fonts`
diff --git a/src/displayapp/fonts/jetbrains_mono_bold_20.c b/src/displayapp/fonts/jetbrains_mono_bold_20.c
index 9174ff48..b001bb7e 100644
--- a/src/displayapp/fonts/jetbrains_mono_bold_20.c
+++ b/src/displayapp/fonts/jetbrains_mono_bold_20.c
@@ -1,11 +1,15 @@
-#include "lvgl/lvgl.h"
-
 /*******************************************************************************
  * Size: 20 px
  * Bpp: 1
  * Opts: 
  ******************************************************************************/
 
+#ifdef LV_LVGL_H_INCLUDE_SIMPLE
+#include "lvgl.h"
+#else
+#include "lvgl/lvgl.h"
+#endif
+
 #ifndef JETBRAINS_MONO_BOLD_20
 #define JETBRAINS_MONO_BOLD_20 1
 #endif
@@ -17,707 +21,707 @@
  *----------------*/
 
 /*Store the image of the glyphs*/
-static LV_ATTRIBUTE_LARGE_CONST const uint8_t gylph_bitmap[] = {
-    /* U+20 " " */
+static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
+    /* U+0020 " " */
     0x0,
 
-    /* U+21 "!" */
+    /* U+0021 "!" */
     0xff, 0xff, 0xff, 0xfc, 0xf, 0xc0,
 
-    /* U+22 "\"" */
+    /* U+0022 "\"" */
     0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xc0,
 
-    /* U+23 "#" */
+    /* U+0023 "#" */
     0x8, 0xc3, 0x10, 0x66, 0x3f, 0xf7, 0xfe, 0x23,
     0x4, 0x61, 0x88, 0x31, 0x1f, 0xfb, 0xff, 0x19,
     0x82, 0x30, 0xc4, 0x0,
 
-    /* U+24 "$" */
-    0x8, 0x2, 0x0, 0x80, 0xfc, 0x7f, 0xba, 0x7e,
+    /* U+0024 "$" */
+    0x8, 0x2, 0x0, 0x81, 0xfc, 0x7f, 0xba, 0x7e,
     0x9f, 0xa0, 0xf8, 0x1f, 0x83, 0xf8, 0x3f, 0x9,
     0xfa, 0x7e, 0x9d, 0xfe, 0x7f, 0x2, 0x0, 0x80,
     0x20,
 
-    /* U+25 "%" */
+    /* U+0025 "%" */
     0x78, 0x3f, 0xc6, 0xcc, 0xcc, 0xcc, 0xfd, 0x87,
     0xb0, 0x6, 0x0, 0x7e, 0xf, 0xf1, 0xb3, 0x33,
     0x33, 0x33, 0x63, 0xfc, 0x1e,
 
-    /* U+26 "&" */
+    /* U+0026 "&" */
     0x1e, 0xf, 0xe1, 0x8e, 0x30, 0x6, 0x0, 0x60,
     0x1e, 0x7, 0xe6, 0xed, 0xdc, 0xf3, 0x9e, 0x73,
-    0xcf, 0xfc, 0x79, 0x80,
+    0xcf, 0xfc, 0xf9, 0x80,
 
-    /* U+27 "'" */
+    /* U+0027 "'" */
     0xff, 0xff, 0xc0,
 
-    /* U+28 "(" */
+    /* U+0028 "(" */
     0x2, 0x1c, 0x79, 0xc7, 0x1e, 0x38, 0x70, 0xe1,
     0xc3, 0x87, 0xe, 0x1c, 0x3c, 0x38, 0x3c, 0x3c,
     0x38,
 
-    /* U+29 ")" */
+    /* U+0029 ")" */
     0x1, 0xc3, 0xc3, 0xc1, 0xc3, 0xc3, 0x87, 0xe,
     0x1c, 0x38, 0x70, 0xe1, 0xc7, 0xe, 0x79, 0xe3,
     0x0,
 
-    /* U+2A "*" */
+    /* U+002A "*" */
     0xc, 0x3, 0x8, 0xc7, 0xb7, 0x7f, 0x83, 0x1,
     0xe0, 0xcc, 0x73, 0x80, 0x0,
 
-    /* U+2B "+" */
+    /* U+002B "+" */
     0x1c, 0x7, 0x1, 0xc3, 0xff, 0xff, 0xc7, 0x1,
     0xc0, 0x70, 0x1c, 0x0,
 
-    /* U+2C "," */
+    /* U+002C "," */
     0x7b, 0x9c, 0xce, 0x60,
 
-    /* U+2D "-" */
+    /* U+002D "-" */
     0xff, 0xf0,
 
-    /* U+2E "." */
+    /* U+002E "." */
     0xff, 0xf0,
 
-    /* U+2F "/" */
+    /* U+002F "/" */
     0x1, 0xc0, 0x60, 0x38, 0xe, 0x3, 0x1, 0xc0,
     0x70, 0x18, 0xe, 0x3, 0x1, 0xc0, 0x70, 0x18,
     0xe, 0x3, 0x80, 0xc0, 0x70, 0x18, 0xe, 0x0,
 
-    /* U+30 "0" */
+    /* U+0030 "0" */
     0x3f, 0x1f, 0xef, 0x3f, 0x87, 0xe1, 0xf8, 0x7f,
     0xdf, 0xf7, 0xe1, 0xf8, 0x7e, 0x1f, 0xcf, 0x7f,
     0x8f, 0xc0,
 
-    /* U+31 "1" */
+    /* U+0031 "1" */
     0x1e, 0x3f, 0x3b, 0x99, 0xc8, 0xe0, 0x70, 0x38,
     0x1c, 0xe, 0x7, 0x3, 0x81, 0xcf, 0xff, 0xfc,
 
-    /* U+32 "2" */
+    /* U+0032 "2" */
     0x3e, 0x3f, 0xbc, 0xfc, 0x70, 0x38, 0x1c, 0x1c,
     0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0xf, 0xff, 0xfc,
 
-    /* U+33 "3" */
+    /* U+0033 "3" */
     0x7f, 0x9f, 0xe0, 0x30, 0x18, 0xc, 0x7, 0xc1,
     0xf8, 0xf, 0x1, 0xc0, 0x7e, 0x1f, 0xcf, 0x7f,
     0x8f, 0xc0,
 
-    /* U+34 "4" */
+    /* U+0034 "4" */
     0x7, 0x7, 0x3, 0x83, 0x83, 0x83, 0xc1, 0xcf,
     0xe7, 0xe3, 0xff, 0xff, 0xe0, 0x70, 0x38, 0x1c,
 
-    /* U+35 "5" */
+    /* U+0035 "5" */
     0x7f, 0x9f, 0xe7, 0x1, 0xc0, 0x77, 0x1f, 0xe7,
     0x3c, 0x7, 0x1, 0xc0, 0x77, 0x1d, 0xcf, 0x7f,
     0x87, 0xc0,
 
-    /* U+36 "6" */
+    /* U+0036 "6" */
     0xe, 0x3, 0x1, 0xc0, 0x60, 0x38, 0x1d, 0xc7,
     0xfb, 0xcf, 0xe1, 0xf8, 0x7e, 0x1f, 0xcf, 0x7f,
-    0x87, 0x80,
+    0x8f, 0x80,
 
-    /* U+37 "7" */
+    /* U+0037 "7" */
     0xff, 0xff, 0xfe, 0x1f, 0x86, 0x3, 0x80, 0xe0,
     0x30, 0x1c, 0x6, 0x3, 0x80, 0xc0, 0x70, 0x1c,
     0x6, 0x0,
 
-    /* U+38 "8" */
+    /* U+0038 "8" */
     0x3f, 0x1f, 0xef, 0x3f, 0x87, 0xe1, 0xdc, 0xe3,
     0xf0, 0xfc, 0x73, 0xb8, 0x7e, 0x1f, 0xcf, 0x7f,
     0x8f, 0xc0,
 
-    /* U+39 "9" */
+    /* U+0039 "9" */
     0x1e, 0x1f, 0xef, 0x3f, 0x87, 0xe1, 0xf8, 0x7f,
     0x3d, 0xfe, 0x3b, 0x81, 0xc0, 0x60, 0x38, 0xc,
     0x7, 0x0,
 
-    /* U+3A ":" */
+    /* U+003A ":" */
     0xff, 0x80, 0x0, 0xff, 0x80,
 
-    /* U+3B ";" */
+    /* U+003B ";" */
     0x7b, 0xde, 0x0, 0x0, 0x0, 0x3, 0xdc, 0xe6,
     0x73, 0x0,
 
-    /* U+3C "<" */
+    /* U+003C "<" */
     0x0, 0x81, 0xc3, 0xe7, 0xcf, 0x6, 0x3, 0xc0,
     0x7c, 0xf, 0x81, 0xc0, 0x20,
 
-    /* U+3D "=" */
+    /* U+003D "=" */
     0xff, 0xff, 0xc0, 0x0, 0x0, 0x7, 0xff, 0xfe,
 
-    /* U+3E ">" */
+    /* U+003E ">" */
     0x80, 0x70, 0x3e, 0x7, 0xc0, 0xf8, 0xc, 0x1e,
     0x3c, 0xf8, 0x70, 0x20, 0x0,
 
-    /* U+3F "?" */
+    /* U+003F "?" */
     0xfc, 0xfe, 0xf, 0x7, 0x7, 0xf, 0x3e, 0x3c,
     0x30, 0x30, 0x0, 0x0, 0x70, 0x70,
 
-    /* U+40 "@" */
+    /* U+0040 "@" */
     0x1f, 0x7, 0xf9, 0xc3, 0x70, 0x3c, 0x7, 0x8f,
     0xf3, 0xfe, 0x63, 0xcc, 0x79, 0x8f, 0x31, 0xe6,
     0x3c, 0xff, 0x8e, 0xf8, 0x3, 0x80, 0x3e, 0x3,
     0xc0,
 
-    /* U+41 "A" */
+    /* U+0041 "A" */
     0x1e, 0x7, 0x81, 0xe0, 0xfc, 0x3f, 0xc, 0xc3,
     0x31, 0xce, 0x73, 0x9f, 0xe7, 0xfb, 0x87, 0xe1,
     0xf0, 0x30,
 
-    /* U+42 "B" */
+    /* U+0042 "B" */
     0xfe, 0x3f, 0xce, 0x3b, 0x8e, 0xe3, 0xb8, 0xcf,
     0xe3, 0xfc, 0xe3, 0xb8, 0x7e, 0x1f, 0x8f, 0xff,
     0xbf, 0xc0,
 
-    /* U+43 "C" */
+    /* U+0043 "C" */
     0x3f, 0x1f, 0xef, 0x3f, 0x87, 0xe0, 0x38, 0xe,
     0x3, 0x80, 0xe0, 0x38, 0xe, 0x1f, 0xcf, 0x7f,
     0x8f, 0xc0,
 
-    /* U+44 "D" */
+    /* U+0044 "D" */
     0xfe, 0x7f, 0xb9, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xfc, 0xff, 0xf7, 0xf0,
 
-    /* U+45 "E" */
+    /* U+0045 "E" */
     0xff, 0xff, 0xf8, 0x1c, 0xe, 0x7, 0x3, 0xfd,
     0xfe, 0xe0, 0x70, 0x38, 0x1c, 0xf, 0xff, 0xfc,
 
-    /* U+46 "F" */
+    /* U+0046 "F" */
     0xff, 0xff, 0xf8, 0x1c, 0xe, 0x7, 0x3, 0xff,
     0xff, 0xe0, 0x70, 0x38, 0x1c, 0xe, 0x7, 0x0,
 
-    /* U+47 "G" */
-    0x3f, 0x1f, 0xef, 0x1f, 0x87, 0xe0, 0x38, 0xe,
+    /* U+0047 "G" */
+    0x3f, 0x1f, 0xef, 0x3f, 0x87, 0xe0, 0x38, 0xe,
     0x7f, 0x9f, 0xe1, 0xf8, 0x7e, 0x1f, 0xcf, 0x7f,
     0x8f, 0xc0,
 
-    /* U+48 "H" */
+    /* U+0048 "H" */
     0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0xff,
     0xff, 0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0x1c,
 
-    /* U+49 "I" */
+    /* U+0049 "I" */
     0xff, 0xff, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c,
     0x1c, 0x1c, 0x1c, 0x1c, 0xff, 0xff,
 
-    /* U+4A "J" */
+    /* U+004A "J" */
     0x1f, 0xc7, 0xf0, 0x1c, 0x7, 0x1, 0xc0, 0x70,
     0x1c, 0x7, 0x1, 0xc0, 0x7e, 0x1f, 0xcf, 0x7f,
     0x8f, 0xc0,
 
-    /* U+4B "K" */
+    /* U+004B "K" */
     0xe1, 0xf8, 0x7e, 0x3b, 0x8e, 0xe7, 0x39, 0xcf,
     0xe3, 0xf8, 0xe7, 0x39, 0xce, 0x3b, 0x8e, 0xe1,
     0xf8, 0x70,
 
-    /* U+4C "L" */
+    /* U+004C "L" */
     0xe0, 0x70, 0x38, 0x1c, 0xe, 0x7, 0x3, 0x81,
     0xc0, 0xe0, 0x70, 0x38, 0x1c, 0xf, 0xff, 0xfc,
 
-    /* U+4D "M" */
+    /* U+004D "M" */
     0xe1, 0xf8, 0x7f, 0x3f, 0xcf, 0xd2, 0xf7, 0xbd,
     0xef, 0x33, 0xc0, 0xf0, 0x3c, 0xf, 0x3, 0xc0,
     0xf0, 0x30,
 
-    /* U+4E "N" */
-    0xe1, 0xf0, 0xfc, 0x7e, 0x3d, 0x9e, 0xcf, 0x67,
-    0x9b, 0xcd, 0xe6, 0xf1, 0xf8, 0xfc, 0x3e, 0x1c,
+    /* U+004E "N" */
+    0xe1, 0xf0, 0xfc, 0x7e, 0x3f, 0x9e, 0xcf, 0x67,
+    0x9b, 0xcd, 0xe6, 0xf1, 0xf8, 0xfc, 0x7e, 0x1c,
 
-    /* U+4F "O" */
+    /* U+004F "O" */
     0x3e, 0x3f, 0xb8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xfc, 0x77, 0xf1, 0xf0,
 
-    /* U+50 "P" */
+    /* U+0050 "P" */
     0xff, 0x3f, 0xee, 0x3f, 0x87, 0xe1, 0xf8, 0xff,
     0xfb, 0xfc, 0xe0, 0x38, 0xe, 0x3, 0x80, 0xe0,
     0x38, 0x0,
 
-    /* U+51 "Q" */
+    /* U+0051 "Q" */
     0x3f, 0x1f, 0xef, 0x3f, 0x87, 0xe1, 0xf8, 0x7e,
     0x1f, 0x87, 0xe1, 0xf8, 0x7e, 0x1f, 0xcf, 0x7f,
     0x8f, 0x80, 0x70, 0xe, 0x3, 0x80, 0x70,
 
-    /* U+52 "R" */
+    /* U+0052 "R" */
     0xff, 0x3f, 0xee, 0x3f, 0x87, 0xe1, 0xf8, 0xff,
     0xfb, 0xf8, 0xe6, 0x39, 0xce, 0x33, 0x8e, 0xe3,
     0xb8, 0x70,
 
-    /* U+53 "S" */
+    /* U+0053 "S" */
     0x3f, 0x1f, 0xee, 0x3f, 0x87, 0xe0, 0x3c, 0x7,
     0xf0, 0xfe, 0x3, 0xc0, 0x7e, 0x1f, 0xcf, 0x7f,
     0x8f, 0xc0,
 
-    /* U+54 "T" */
+    /* U+0054 "T" */
     0xff, 0xff, 0xf0, 0xe0, 0x38, 0xe, 0x3, 0x80,
     0xe0, 0x38, 0xe, 0x3, 0x80, 0xe0, 0x38, 0xe,
     0x3, 0x80,
 
-    /* U+55 "U" */
+    /* U+0055 "U" */
     0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xfc, 0x77, 0xf1, 0xf0,
 
-    /* U+56 "V" */
+    /* U+0056 "V" */
     0xc0, 0xf8, 0x7e, 0x1d, 0x86, 0x61, 0x9c, 0xe7,
     0x38, 0xcc, 0x33, 0xf, 0xc3, 0xf0, 0x78, 0x1e,
     0x7, 0x80,
 
-    /* U+57 "W" */
+    /* U+0057 "W" */
     0xce, 0x79, 0xcf, 0x29, 0xe5, 0x3c, 0xa7, 0xd5,
     0xda, 0xb3, 0x56, 0x7b, 0xcf, 0x79, 0xef, 0x38,
     0xe7, 0x1c, 0xe3, 0x80,
 
-    /* U+58 "X" */
+    /* U+0058 "X" */
     0xe1, 0xd8, 0x67, 0x38, 0xcc, 0x3f, 0x7, 0x81,
     0xe0, 0x78, 0x1e, 0xf, 0xc3, 0x31, 0xce, 0xe1,
     0xf8, 0x70,
 
-    /* U+59 "Y" */
+    /* U+0059 "Y" */
     0xe0, 0xfc, 0x1d, 0xc7, 0x38, 0xe3, 0xb8, 0x77,
     0x6, 0xc0, 0xf8, 0xe, 0x1, 0xc0, 0x38, 0x7,
     0x0, 0xe0, 0x1c, 0x0,
 
-    /* U+5A "Z" */
+    /* U+005A "Z" */
     0xff, 0xff, 0xc0, 0xe0, 0xe0, 0x70, 0x70, 0x70,
     0x38, 0x38, 0x38, 0x1c, 0x1c, 0xf, 0xff, 0xfc,
 
-    /* U+5B "[" */
+    /* U+005B "[" */
     0xff, 0xfe, 0x38, 0xe3, 0x8e, 0x38, 0xe3, 0x8e,
     0x38, 0xe3, 0x8e, 0x38, 0xff, 0xf0,
 
-    /* U+5C "\\" */
+    /* U+005C "\\" */
     0xe0, 0x18, 0x7, 0x1, 0xc0, 0x30, 0xe, 0x3,
     0x80, 0x60, 0x1c, 0x3, 0x0, 0xe0, 0x38, 0x6,
     0x1, 0xc0, 0x70, 0xc, 0x3, 0x80, 0x60, 0x1c,
 
-    /* U+5D "]" */
+    /* U+005D "]" */
     0xff, 0xf1, 0xc7, 0x1c, 0x71, 0xc7, 0x1c, 0x71,
     0xc7, 0x1c, 0x71, 0xc7, 0xff, 0xf0,
 
-    /* U+5E "^" */
+    /* U+005E "^" */
     0xc, 0x7, 0x81, 0xe0, 0xfc, 0x33, 0x1c, 0xe6,
     0x19, 0x86,
 
-    /* U+5F "_" */
+    /* U+005F "_" */
     0xff, 0xff, 0xf0,
 
-    /* U+60 "`" */
+    /* U+0060 "`" */
     0xe3, 0x8c,
 
-    /* U+61 "a" */
+    /* U+0061 "a" */
     0x1f, 0x1f, 0xe7, 0x1c, 0x7, 0x3f, 0xdf, 0xfe,
     0x1f, 0x87, 0xe3, 0xff, 0xf3, 0xdc,
 
-    /* U+62 "b" */
+    /* U+0062 "b" */
     0xe0, 0x70, 0x38, 0x1d, 0xcf, 0xf7, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xfc, 0x7f, 0xf7, 0x70,
 
-    /* U+63 "c" */
+    /* U+0063 "c" */
     0x3e, 0x3f, 0xb8, 0xfc, 0x7e, 0x7, 0x3, 0x81,
     0xc7, 0xe3, 0xbf, 0x8f, 0x80,
 
-    /* U+64 "d" */
+    /* U+0064 "d" */
     0x3, 0x81, 0xc0, 0xe7, 0x77, 0xff, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xfc, 0x77, 0xf9, 0xdc,
 
-    /* U+65 "e" */
+    /* U+0065 "e" */
     0x3e, 0x3f, 0xb8, 0xfc, 0x7f, 0xff, 0xff, 0x81,
     0xc0, 0xe3, 0xbf, 0x8f, 0x80,
 
-    /* U+66 "f" */
+    /* U+0066 "f" */
     0xf, 0xc7, 0xf1, 0xc0, 0x70, 0xff, 0xff, 0xf1,
     0xc0, 0x70, 0x1c, 0x7, 0x1, 0xc0, 0x70, 0x1c,
     0x7, 0x0,
 
-    /* U+67 "g" */
+    /* U+0067 "g" */
     0x3b, 0xbf, 0xfd, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xf7, 0xbf, 0xce, 0xe0, 0x70, 0x39, 0xf8,
     0xf8,
 
-    /* U+68 "h" */
+    /* U+0068 "h" */
     0xe0, 0x70, 0x38, 0x1d, 0xcf, 0xf7, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0x1c,
 
-    /* U+69 "i" */
+    /* U+0069 "i" */
     0x1c, 0x7, 0x1, 0xc0, 0x0, 0x0, 0x3f, 0xf,
     0xc0, 0x70, 0x1c, 0x7, 0x1, 0xc0, 0x70, 0x1c,
     0x7, 0xf, 0xff, 0xff,
 
-    /* U+6A "j" */
+    /* U+006A "j" */
     0x7, 0x7, 0x7, 0x0, 0xff, 0xff, 0x7, 0x7,
     0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
     0xf, 0xfe, 0xfc,
 
-    /* U+6B "k" */
+    /* U+006B "k" */
     0xe0, 0x38, 0xe, 0x3, 0x87, 0xe3, 0xb8, 0xee,
     0x73, 0xf8, 0xfe, 0x39, 0xce, 0x33, 0x8e, 0xe1,
     0xb8, 0x70,
 
-    /* U+6C "l" */
+    /* U+006C "l" */
     0xfe, 0x1f, 0xc0, 0x38, 0x7, 0x0, 0xe0, 0x1c,
     0x3, 0x80, 0x70, 0xe, 0x1, 0xc0, 0x38, 0x7,
     0x0, 0x7e, 0x7, 0xc0,
 
-    /* U+6D "m" */
+    /* U+006D "m" */
     0xd9, 0xbf, 0xfc, 0xcf, 0x33, 0xcc, 0xf3, 0x3c,
     0xcf, 0x33, 0xcc, 0xf3, 0x3c, 0xcc,
 
-    /* U+6E "n" */
+    /* U+006E "n" */
     0xee, 0x7f, 0xb8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xe0,
 
-    /* U+6F "o" */
+    /* U+006F "o" */
     0x3e, 0x3f, 0xb8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xbf, 0x8f, 0x80,
 
-    /* U+70 "p" */
+    /* U+0070 "p" */
     0xee, 0x7f, 0xb8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xff, 0xbb, 0x9c, 0xe, 0x7, 0x3,
     0x80,
 
-    /* U+71 "q" */
+    /* U+0071 "q" */
     0x3b, 0xbf, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xbf, 0xce, 0xe0, 0x70, 0x38, 0x1c,
     0xe,
 
-    /* U+72 "r" */
-    0xee, 0x7f, 0xb8, 0xfc, 0x7e, 0x3f, 0x3, 0x81,
+    /* U+0072 "r" */
+    0xee, 0x7f, 0xb9, 0xfc, 0x7e, 0x3f, 0x3, 0x81,
     0xc0, 0xe0, 0x70, 0x38, 0x0,
 
-    /* U+73 "s" */
+    /* U+0073 "s" */
     0x1f, 0x1f, 0xf7, 0x1d, 0xc0, 0x7c, 0xf, 0xe0,
     0x3c, 0x7, 0x71, 0xdf, 0xe3, 0xf0,
 
-    /* U+74 "t" */
+    /* U+0074 "t" */
     0x1c, 0x7, 0x1, 0xc3, 0xff, 0xff, 0xc7, 0x1,
     0xc0, 0x70, 0x1c, 0x7, 0x1, 0xc0, 0x70, 0x1f,
     0xc3, 0xf0,
 
-    /* U+75 "u" */
+    /* U+0075 "u" */
     0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xbf, 0x8f, 0x80,
 
-    /* U+76 "v" */
+    /* U+0076 "v" */
     0xe0, 0xf8, 0x76, 0x19, 0x86, 0x73, 0x8c, 0xc3,
     0x30, 0xfc, 0x1e, 0x7, 0x81, 0xe0,
 
-    /* U+77 "w" */
+    /* U+0077 "w" */
     0xe6, 0x36, 0x66, 0x66, 0x66, 0xf6, 0x6f, 0x66,
     0x96, 0x69, 0x62, 0x94, 0x39, 0xc3, 0x9c, 0x39,
     0xc0,
 
-    /* U+78 "x" */
+    /* U+0078 "x" */
     0xe1, 0xdc, 0xe3, 0x30, 0xfc, 0x1e, 0x7, 0x81,
-    0xe0, 0xfc, 0x73, 0x9c, 0x6e, 0x1c,
+    0xe0, 0xfc, 0x73, 0x9c, 0xee, 0x1c,
 
-    /* U+79 "y" */
+    /* U+0079 "y" */
     0xe1, 0xf8, 0x76, 0x19, 0xce, 0x73, 0x8c, 0xc3,
     0xf0, 0x7c, 0x1e, 0x7, 0x80, 0xe0, 0x30, 0x1c,
     0x6, 0x3, 0x80,
 
-    /* U+7A "z" */
+    /* U+007A "z" */
     0xff, 0xff, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
     0xe0, 0xe0, 0x7f, 0xff, 0xe0,
 
-    /* U+7B "{" */
+    /* U+007B "{" */
     0x3, 0x87, 0xc3, 0x81, 0xc0, 0xe0, 0x70, 0x38,
     0x1c, 0xfc, 0x7e, 0x3, 0x81, 0xc0, 0xe0, 0x70,
     0x38, 0x1c, 0xf, 0x81, 0xc0,
 
-    /* U+7C "|" */
+    /* U+007C "|" */
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
 
-    /* U+7D "}" */
+    /* U+007D "}" */
     0xf0, 0x3e, 0x1, 0xc0, 0x70, 0x1c, 0x7, 0x1,
     0xc0, 0x70, 0xf, 0xc3, 0xf1, 0xc0, 0x70, 0x1c,
     0x7, 0x1, 0xc0, 0x70, 0xf8, 0x3c, 0x0,
 
-    /* U+7E "~" */
+    /* U+007E "~" */
     0x78, 0xff, 0x3c, 0xcf, 0x3f, 0xc7, 0x80,
 
-    /* U+410 "А" */
+    /* U+0410 "А" */
     0x1e, 0x7, 0x81, 0xe0, 0xfc, 0x3f, 0xc, 0xc3,
     0x31, 0xce, 0x73, 0x9f, 0xe7, 0xfb, 0x87, 0xe1,
     0xf0, 0x30,
 
-    /* U+411 "Б" */
+    /* U+0411 "Б" */
     0xff, 0xbf, 0xee, 0x3, 0x80, 0xe0, 0x3f, 0xcf,
     0xfb, 0x8f, 0xe1, 0xf8, 0x7e, 0x1f, 0x8f, 0xff,
-    0xbf, 0x80,
+    0xbf, 0xc0,
 
-    /* U+412 "В" */
+    /* U+0412 "В" */
     0xfe, 0x3f, 0xce, 0x3b, 0x8e, 0xe3, 0xb8, 0xcf,
     0xe3, 0xfc, 0xe3, 0xb8, 0x7e, 0x1f, 0x8f, 0xff,
     0xbf, 0xc0,
 
-    /* U+413 "Г" */
+    /* U+0413 "Г" */
     0xff, 0xff, 0xf8, 0x1c, 0xe, 0x7, 0x3, 0x81,
     0xc0, 0xe0, 0x70, 0x38, 0x1c, 0xe, 0x7, 0x0,
 
-    /* U+414 "Д" */
+    /* U+0414 "Д" */
     0x3f, 0xc7, 0xf8, 0xe7, 0x1c, 0xe3, 0x9c, 0x73,
     0x8e, 0x71, 0xce, 0x39, 0xc7, 0x38, 0xe7, 0x38,
     0xef, 0xff, 0xff, 0xf8, 0x3f, 0x7, 0xe0, 0xe0,
 
-    /* U+415 "Е" */
+    /* U+0415 "Е" */
     0xff, 0xff, 0xf8, 0x1c, 0xe, 0x7, 0x3, 0xfd,
     0xfe, 0xe0, 0x70, 0x38, 0x1c, 0xf, 0xff, 0xfc,
 
-    /* U+416 "Ж" */
+    /* U+0416 "Ж" */
     0xe6, 0x76, 0x66, 0x66, 0x67, 0x66, 0x36, 0xc3,
     0x6c, 0x3f, 0xc3, 0x6c, 0x36, 0xc7, 0x6e, 0x66,
     0x66, 0x66, 0x66, 0x6c, 0x63,
 
-    /* U+417 "З" */
+    /* U+0417 "З" */
     0x1f, 0xf, 0xf3, 0xc7, 0x0, 0x60, 0x1c, 0x1e,
     0x3, 0xf0, 0xe, 0x0, 0xe0, 0x1f, 0x83, 0xf8,
     0xf7, 0xfc, 0x3e, 0x0,
 
-    /* U+418 "И" */
+    /* U+0418 "И" */
     0xc3, 0xe3, 0xf1, 0xf8, 0xfc, 0xde, 0x6f, 0x37,
     0xb3, 0xd9, 0xfc, 0xfc, 0x7e, 0x3e, 0x1f, 0xc,
 
-    /* U+419 "Й" */
+    /* U+0419 "Й" */
     0x63, 0x31, 0x8f, 0x83, 0x80, 0x6, 0x1f, 0x1f,
     0x8f, 0xc7, 0xe7, 0xf3, 0x79, 0xbd, 0x9e, 0xcf,
     0xe7, 0xe3, 0xf1, 0xf8, 0xf8, 0x60,
 
-    /* U+41A "К" */
+    /* U+041A "К" */
     0xe1, 0xf8, 0x7e, 0x3b, 0x8e, 0xe7, 0x39, 0xcf,
     0xe3, 0xf8, 0xe7, 0x39, 0xce, 0x3b, 0x8e, 0xe1,
     0xf8, 0x70,
 
-    /* U+41B "Л" */
+    /* U+041B "Л" */
     0x3f, 0xcf, 0xf3, 0x9c, 0xe7, 0x39, 0xce, 0x73,
     0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9d, 0xe7, 0xf1,
     0xf8, 0x70,
 
-    /* U+41C "М" */
+    /* U+041C "М" */
     0xe1, 0xf8, 0x7f, 0x3f, 0xcf, 0xd2, 0xf7, 0xbd,
     0xef, 0x33, 0xc0, 0xf0, 0x3c, 0xf, 0x3, 0xc0,
     0xf0, 0x30,
 
-    /* U+41D "Н" */
+    /* U+041D "Н" */
     0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0xff,
     0xff, 0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0x1c,
 
-    /* U+41E "О" */
+    /* U+041E "О" */
     0x3e, 0x3f, 0xb8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xfc, 0x77, 0xf1, 0xf0,
 
-    /* U+41F "П" */
+    /* U+041F "П" */
     0xff, 0xff, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0x1c,
 
-    /* U+420 "Р" */
+    /* U+0420 "Р" */
     0xff, 0x3f, 0xee, 0x3f, 0x87, 0xe1, 0xf8, 0xff,
     0xfb, 0xfc, 0xe0, 0x38, 0xe, 0x3, 0x80, 0xe0,
     0x38, 0x0,
 
-    /* U+421 "С" */
+    /* U+0421 "С" */
     0x3f, 0x1f, 0xef, 0x3f, 0x87, 0xe0, 0x38, 0xe,
     0x3, 0x80, 0xe0, 0x38, 0xe, 0x1f, 0xcf, 0x7f,
     0x8f, 0xc0,
 
-    /* U+422 "Т" */
+    /* U+0422 "Т" */
     0xff, 0xff, 0xf0, 0xe0, 0x38, 0xe, 0x3, 0x80,
     0xe0, 0x38, 0xe, 0x3, 0x80, 0xe0, 0x38, 0xe,
     0x3, 0x80,
 
-    /* U+423 "У" */
+    /* U+0423 "У" */
     0xe1, 0xf8, 0x76, 0x19, 0xce, 0x33, 0x8c, 0xc3,
     0xb0, 0x7c, 0x1e, 0x3, 0x80, 0xc0, 0x70, 0x1c,
     0x6, 0x0,
 
-    /* U+424 "Ф" */
+    /* U+0424 "Ф" */
     0xc, 0xf, 0xc7, 0xfb, 0xb7, 0xcc, 0xf3, 0x3c,
     0xcf, 0x33, 0xcc, 0xf3, 0x3c, 0xcf, 0xb7, 0x7f,
     0x8f, 0xc0, 0xc0, 0x30,
 
-    /* U+425 "Х" */
+    /* U+0425 "Х" */
     0xe1, 0xd8, 0x67, 0x38, 0xcc, 0x3f, 0x7, 0x81,
     0xe0, 0x78, 0x1e, 0xf, 0xc3, 0x31, 0xce, 0xe1,
     0xf8, 0x70,
 
-    /* U+426 "Ц" */
+    /* U+0426 "Ц" */
     0xe3, 0xb8, 0xee, 0x3b, 0x8e, 0xe3, 0xb8, 0xee,
     0x3b, 0x8e, 0xe3, 0xb8, 0xee, 0x3b, 0x8e, 0xff,
     0xff, 0xf0, 0x1c, 0x7, 0x1, 0xc0,
 
-    /* U+427 "Ч" */
+    /* U+0427 "Ч" */
     0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0xce,
     0xff, 0x3f, 0x81, 0xc0, 0xe0, 0x70, 0x38, 0x1c,
 
-    /* U+428 "Ш" */
+    /* U+0428 "Ш" */
     0xcc, 0xf3, 0x3c, 0xcf, 0x33, 0xcc, 0xf3, 0x3c,
     0xcf, 0x33, 0xcc, 0xf3, 0x3c, 0xcf, 0x33, 0xff,
     0xff, 0xf0,
 
-    /* U+429 "Щ" */
+    /* U+0429 "Щ" */
     0xcc, 0xd9, 0x9b, 0x33, 0x66, 0x6c, 0xcd, 0x99,
     0xb3, 0x36, 0x66, 0xcc, 0xd9, 0x9b, 0x33, 0x66,
     0x6f, 0xff, 0xff, 0xc0, 0x18, 0x3,
 
-    /* U+42A "Ъ" */
+    /* U+042A "Ъ" */
     0xfc, 0xf, 0xc0, 0x1c, 0x1, 0xc0, 0x1c, 0x1,
     0xfc, 0x1f, 0xe1, 0xcf, 0x1c, 0x71, 0xc7, 0x1c,
-    0x71, 0xcf, 0x1f, 0xe1, 0xf8,
+    0x71, 0xcf, 0x1f, 0xe1, 0xfc,
 
-    /* U+42B "Ы" */
+    /* U+042B "Ы" */
     0xc0, 0xf0, 0x3c, 0xf, 0x3, 0xc0, 0xfe, 0x3f,
     0xcf, 0x3b, 0xc6, 0xf1, 0xbc, 0x6f, 0x3b, 0xfc,
     0xfe, 0x30,
 
-    /* U+42C "Ь" */
+    /* U+042C "Ь" */
     0xe0, 0x38, 0xe, 0x3, 0x80, 0xe0, 0x3f, 0xcf,
     0xfb, 0x8f, 0xe1, 0xf8, 0x7e, 0x1f, 0x8f, 0xff,
     0xbf, 0x80,
 
-    /* U+42D "Э" */
+    /* U+042D "Э" */
     0x3e, 0x3f, 0xb8, 0xfc, 0x70, 0x38, 0x1c, 0x7e,
     0x3f, 0x3, 0x81, 0xf8, 0xfc, 0x77, 0xf1, 0xf0,
 
-    /* U+42E "Ю" */
+    /* U+042E "Ю" */
     0xc7, 0xb3, 0xfc, 0xcf, 0x33, 0xcc, 0xff, 0x3f,
     0xcf, 0x33, 0xcc, 0xf3, 0x3c, 0xcf, 0x33, 0xcf,
     0xf1, 0xe0,
 
-    /* U+42F "Я" */
+    /* U+042F "Я" */
     0x3f, 0xdf, 0xff, 0x1f, 0x87, 0xe1, 0xfc, 0x77,
     0xfc, 0x7f, 0x19, 0xce, 0x73, 0x1d, 0xc7, 0x71,
     0xf8, 0x70,
 
-    /* U+430 "а" */
+    /* U+0430 "а" */
     0x1f, 0x1f, 0xe7, 0x1c, 0x7, 0x3f, 0xdf, 0xfe,
     0x1f, 0x87, 0xe3, 0xff, 0xf3, 0xdc,
 
-    /* U+431 "б" */
+    /* U+0431 "б" */
     0x1f, 0x3f, 0x9c, 0x1c, 0xe, 0xe7, 0xfb, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xfc, 0x77, 0xf1, 0xf0,
 
-    /* U+432 "в" */
+    /* U+0432 "в" */
     0xff, 0x3f, 0xee, 0x3b, 0x8e, 0xfe, 0x3f, 0xee,
     0x1f, 0x87, 0xe1, 0xff, 0xef, 0xf0,
 
-    /* U+433 "г" */
+    /* U+0433 "г" */
     0xff, 0xff, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
     0xe0, 0xe0, 0xe0,
 
-    /* U+434 "д" */
+    /* U+0434 "д" */
     0x3f, 0xc7, 0xf8, 0xe7, 0x1c, 0xe3, 0x9c, 0x73,
     0x8e, 0x71, 0xce, 0x71, 0xdf, 0xff, 0xff, 0xf0,
     0x7e, 0xf, 0xc1, 0xc0,
 
-    /* U+435 "е" */
+    /* U+0435 "е" */
     0x3e, 0x3f, 0xb8, 0xfc, 0x7f, 0xff, 0xff, 0x81,
     0xc0, 0xe3, 0xbf, 0x8f, 0x80,
 
-    /* U+436 "ж" */
+    /* U+0436 "ж" */
     0xe6, 0x76, 0x66, 0x66, 0x63, 0x6c, 0x36, 0xc3,
-    0xfc, 0x36, 0xc3, 0x6c, 0x66, 0x66, 0x66, 0xe6,
+    0xfc, 0x36, 0xc3, 0x6e, 0x66, 0x66, 0x66, 0xe6,
     0x70,
 
-    /* U+437 "з" */
+    /* U+0437 "з" */
     0x3f, 0x1f, 0xfe, 0x1c, 0x7, 0x1f, 0x87, 0xe0,
     0x1c, 0x7, 0xe1, 0xdf, 0xe3, 0xf0,
 
-    /* U+438 "и" */
+    /* U+0438 "и" */
     0xc3, 0xe3, 0xf1, 0xf9, 0xfc, 0xde, 0xef, 0x67,
     0xb3, 0xf1, 0xf8, 0xf8, 0x60,
 
-    /* U+439 "й" */
+    /* U+0439 "й" */
     0x63, 0x31, 0x8f, 0x83, 0x80, 0x6, 0x1f, 0x1f,
     0x8f, 0xcf, 0xe6, 0xf7, 0x7b, 0x3f, 0x9f, 0x8f,
     0xc7, 0xc3,
 
-    /* U+43A "к" */
+    /* U+043A "к" */
     0xe1, 0xf8, 0xee, 0x33, 0x9c, 0xfe, 0x3f, 0x8e,
     0x73, 0x9c, 0xe3, 0xb8, 0x6e, 0x1c,
 
-    /* U+43B "л" */
+    /* U+043B "л" */
     0x3f, 0xcf, 0xf3, 0x9c, 0xe7, 0x39, 0xce, 0x73,
     0x9c, 0xe7, 0x39, 0xfc, 0x7e, 0x1c,
 
-    /* U+43C "м" */
+    /* U+043C "м" */
     0xe1, 0xf8, 0x7f, 0x3f, 0xcf, 0xda, 0xf7, 0xbd,
     0xef, 0x33, 0xc0, 0xf0, 0x3c, 0xc,
 
-    /* U+43D "н" */
+    /* U+043D "н" */
     0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3f, 0xff, 0xff,
     0xc7, 0xe3, 0xf1, 0xf8, 0xe0,
 
-    /* U+43E "о" */
+    /* U+043E "о" */
     0x3e, 0x3f, 0xb8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xbf, 0x8f, 0x80,
 
-    /* U+43F "п" */
+    /* U+043F "п" */
     0xff, 0xff, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xf1, 0xf8, 0xe0,
 
-    /* U+440 "р" */
+    /* U+0440 "р" */
     0xee, 0x7f, 0xb8, 0xfc, 0x7e, 0x3f, 0x1f, 0x8f,
     0xc7, 0xe3, 0xff, 0xbb, 0x9c, 0xe, 0x7, 0x3,
     0x80,
 
-    /* U+441 "с" */
+    /* U+0441 "с" */
     0x3e, 0x3f, 0xb8, 0xfc, 0x7e, 0x7, 0x3, 0x81,
     0xc7, 0xe3, 0xbf, 0x8f, 0x80,
 
-    /* U+442 "т" */
+    /* U+0442 "т" */
     0xff, 0xff, 0xf0, 0xe0, 0x38, 0xe, 0x3, 0x80,
     0xe0, 0x38, 0xe, 0x3, 0x80, 0xe0,
 
-    /* U+443 "у" */
+    /* U+0443 "у" */
     0xe1, 0xf8, 0x76, 0x19, 0xce, 0x73, 0x8c, 0xc3,
     0xf0, 0x7c, 0x1e, 0x7, 0x80, 0xe0, 0x30, 0x1c,
     0x6, 0x3, 0x80,
 
-    /* U+444 "ф" */
+    /* U+0444 "ф" */
     0xc, 0x3, 0x0, 0xc0, 0xfc, 0x7f, 0xbb, 0x7c,
     0xcf, 0x33, 0xcc, 0xf3, 0x3c, 0xcf, 0xb7, 0x7f,
     0x8f, 0xc0, 0xc0, 0x30, 0xc, 0x3, 0x0,
 
-    /* U+445 "х" */
+    /* U+0445 "х" */
     0xe1, 0xdc, 0xe3, 0x30, 0xfc, 0x1e, 0x7, 0x81,
-    0xe0, 0xfc, 0x73, 0x9c, 0x6e, 0x1c,
+    0xe0, 0xfc, 0x73, 0x9c, 0xee, 0x1c,
 
-    /* U+446 "ц" */
+    /* U+0446 "ц" */
     0xe3, 0xb8, 0xee, 0x3b, 0x8e, 0xe3, 0xb8, 0xee,
     0x3b, 0x8e, 0xe3, 0xbf, 0xff, 0xfc, 0x7, 0x1,
     0xc0, 0x70,
 
-    /* U+447 "ч" */
+    /* U+0447 "ч" */
     0xe3, 0xf1, 0xf8, 0xfc, 0x7e, 0x3b, 0xfc, 0xfe,
     0x7, 0x3, 0x81, 0xc0, 0xe0,
 
-    /* U+448 "ш" */
+    /* U+0448 "ш" */
     0xcc, 0xf3, 0x3c, 0xcf, 0x33, 0xcc, 0xf3, 0x3c,
     0xcf, 0x33, 0xcc, 0xff, 0xff, 0xfc,
 
-    /* U+449 "щ" */
+    /* U+0449 "щ" */
     0xcc, 0xd9, 0x9b, 0x33, 0x66, 0x6c, 0xcd, 0x99,
     0xb3, 0x36, 0x66, 0xcc, 0xdf, 0xff, 0xff, 0x80,
     0x30, 0x6,
 
-    /* U+44A "ъ" */
+    /* U+044A "ъ" */
     0xfc, 0xf, 0xc0, 0x1c, 0x1, 0xc0, 0x1f, 0xc1,
     0xfe, 0x1c, 0x71, 0xc7, 0x1c, 0x71, 0xfe, 0x1f,
     0xc0,
 
-    /* U+44B "ы" */
+    /* U+044B "ы" */
     0xc0, 0xf0, 0x3c, 0xf, 0x3, 0xf8, 0xff, 0x3c,
-    0x6f, 0x1b, 0xc6, 0xff, 0x3f, 0x8c,
+    0xef, 0x1b, 0xc6, 0xff, 0x3f, 0x8c,
 
-    /* U+44C "ь" */
+    /* U+044C "ь" */
     0xe0, 0x38, 0xe, 0x3, 0x80, 0xff, 0x3f, 0xee,
     0x1f, 0x87, 0xe1, 0xff, 0xef, 0xf0,
 
-    /* U+44D "э" */
+    /* U+044D "э" */
     0x3e, 0x3f, 0xb8, 0xe0, 0x70, 0xf8, 0x7c, 0xf,
     0xc7, 0xe7, 0xbf, 0x8f, 0x80,
 
-    /* U+44E "ю" */
+    /* U+044E "ю" */
     0xc7, 0xb3, 0xfc, 0xcf, 0x33, 0xfc, 0xff, 0x3c,
     0xcf, 0x33, 0xcc, 0xf3, 0xfc, 0x78,
 
-    /* U+44F "я" */
+    /* U+044F "я" */
     0x3f, 0xbf, 0xf8, 0xfc, 0x7e, 0x3b, 0xfc, 0xfe,
     0x77, 0x33, 0xb9, 0xf8, 0xe0,
 
@@ -727,7 +731,7 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t gylph_bitmap[] = {
     0xfc, 0x70, 0x7e, 0x7, 0x7, 0x0, 0x70, 0x70,
     0x7, 0x7, 0x0, 0x70, 0x70, 0x7, 0x7, 0x0,
     0x70, 0x70, 0x7f, 0x7, 0xf, 0xf7, 0xf0, 0xff,
-    0xff, 0x7, 0xef, 0xf0, 0x0, 0xff, 0x0, 0x3,
+    0xff, 0x7, 0xef, 0xf0, 0x10, 0xff, 0x0, 0x3,
     0xc0, 0x0,
 
     /* U+F017 "" */
@@ -739,11 +743,11 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t gylph_bitmap[] = {
     0x1, 0xff, 0xc0, 0x1f, 0xf0, 0x0, 0x70, 0x0,
 
     /* U+F024 "" */
-    0x70, 0x0, 0xf, 0x80, 0x0, 0xf8, 0x0, 0xf,
+    0x70, 0x0, 0xf, 0x80, 0x0, 0xf9, 0x0, 0xf,
     0xff, 0xf, 0x7f, 0xff, 0xf7, 0xff, 0xff, 0x7f,
     0xff, 0xf7, 0xff, 0xff, 0x7f, 0xff, 0xf7, 0xff,
     0xff, 0x7f, 0xff, 0xf7, 0xff, 0xff, 0x7f, 0xff,
-    0xf7, 0xff, 0xff, 0x7f, 0x7f, 0xe7, 0x0, 0x78,
+    0xf7, 0xff, 0xff, 0x7f, 0xff, 0xe7, 0x0, 0xf8,
     0x70, 0x0, 0x7, 0x0, 0x0, 0x70, 0x0, 0x7,
     0x0, 0x0,
 
@@ -869,35 +873,35 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t gylph_bitmap[] = {
     0x7f, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xb8, 0x0,
     0x1, 0xfd, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0x7f,
     0x7f, 0xff, 0x9f, 0xbf, 0xff, 0xcf, 0xdf, 0xff,
-    0xe7, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
+    0xef, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
     0xff, 0xff, 0xcf, 0xff, 0xff, 0xe0,
 
     /* U+F241 "" */
     0x7f, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xb8, 0x0,
     0x1, 0xfd, 0xff, 0xe0, 0xfe, 0xff, 0xf0, 0x7f,
     0x7f, 0xf8, 0x1f, 0xbf, 0xfc, 0xf, 0xdf, 0xfe,
-    0x7, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
+    0xf, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
     0xff, 0xff, 0xcf, 0xff, 0xff, 0xe0,
 
     /* U+F242 "" */
     0x7f, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xb8, 0x0,
     0x1, 0xfd, 0xfe, 0x0, 0xfe, 0xff, 0x0, 0x7f,
     0x7f, 0x80, 0x1f, 0xbf, 0xc0, 0xf, 0xdf, 0xe0,
-    0x7, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
+    0xf, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
     0xff, 0xff, 0xcf, 0xff, 0xff, 0xe0,
 
     /* U+F243 "" */
     0x7f, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xb8, 0x0,
     0x1, 0xfd, 0xf0, 0x0, 0xfe, 0xf8, 0x0, 0x7f,
     0x7c, 0x0, 0x1f, 0xbe, 0x0, 0xf, 0xdf, 0x0,
-    0x7, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
+    0xf, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
     0xff, 0xff, 0xcf, 0xff, 0xff, 0xe0,
 
     /* U+F244 "" */
     0x7f, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xb8, 0x0,
     0x1, 0xfc, 0x0, 0x0, 0xfe, 0x0, 0x0, 0x7f,
     0x0, 0x0, 0x1f, 0x80, 0x0, 0xf, 0xc0, 0x0,
-    0x7, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
+    0xf, 0xe0, 0x0, 0x7, 0xf0, 0x0, 0x3, 0xff,
     0xff, 0xff, 0xcf, 0xff, 0xff, 0xe0,
 
     /* U+F252 "" */
@@ -933,9 +937,9 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t gylph_bitmap[] = {
     0x78, 0xf, 0xe0, 0x1e, 0x7, 0xf0, 0x3, 0xc1,
     0xf8, 0x0, 0xf0, 0x78, 0x0, 0x3c, 0x3c, 0x0,
     0xf, 0xbe, 0x0, 0x1, 0xfe, 0x0, 0x0, 0x7e,
-    0x0, 0x1c, 0x1f, 0x0, 0x7f, 0x3, 0xc0, 0x7f,
+    0x0, 0x1c, 0x1f, 0x0, 0x7f, 0x3, 0xc0, 0x3f,
     0xf0, 0xf0, 0x1f, 0xfc, 0x3c, 0xf, 0xfe, 0x7,
-    0x87, 0xfe, 0x1, 0xe3, 0xf8, 0x0, 0x70, 0x0,
+    0x87, 0xfe, 0x1, 0xe3, 0xf8, 0x0, 0x70, 0x80,
     0x0, 0x10,
 
     /* U+F3FD "" */
@@ -1240,9 +1244,14 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
  *  ALL CUSTOM DATA
  *--------------------*/
 
+#if LV_VERSION_CHECK(8, 0, 0)
 /*Store all the custom data of the font*/
+static  lv_font_fmt_txt_glyph_cache_t cache;
+static const lv_font_fmt_txt_dsc_t font_dsc = {
+#else
 static lv_font_fmt_txt_dsc_t font_dsc = {
-    .glyph_bitmap = gylph_bitmap,
+#endif
+    .glyph_bitmap = glyph_bitmap,
     .glyph_dsc = glyph_dsc,
     .cmaps = cmaps,
     .kern_dsc = NULL,
@@ -1250,7 +1259,10 @@ static lv_font_fmt_txt_dsc_t font_dsc = {
     .cmap_num = 3,
     .bpp = 1,
     .kern_classes = 0,
-    .bitmap_format = 0
+    .bitmap_format = 0,
+#if LV_VERSION_CHECK(8, 0, 0)
+    .cache = &cache
+#endif
 };
 
 
@@ -1259,7 +1271,11 @@ static lv_font_fmt_txt_dsc_t font_dsc = {
  *----------------*/
 
 /*Initialize a public general font descriptor*/
+#if LV_VERSION_CHECK(8, 0, 0)
+const lv_font_t jetbrains_mono_bold_20 = {
+#else
 lv_font_t jetbrains_mono_bold_20 = {
+#endif
     .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt,    /*Function pointer to get glyph's data*/
     .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt,    /*Function pointer to get glyph's bitmap*/
     .line_height = 23,          /*The maximum line height required by the font*/

From 0045fb16b66b008c13888312b92688dcb7535a0c Mon Sep 17 00:00:00 2001
From: Neil O'Fix <69880003+nlfx@users.noreply.github.com>
Date: Sat, 26 Jun 2021 18:53:32 +0000
Subject: [PATCH 31/58] SPI flash sleep if bootloader >= 1.0.0 (#322)

* Retrieve and display bootloader version
- Display bootloader version on System Info screen
- Enable SPI flash sleep mode if bootloader version >= 1.0.0
* Wait for SPI flash to wakeup before starting OTA DFU
---
 src/BootloaderVersion.cpp             | 30 ++++++++++++++++++---------
 src/BootloaderVersion.h               | 15 +++++++++-----
 src/components/ble/DfuService.cpp     |  5 +++++
 src/displayapp/screens/SystemInfo.cpp | 11 ++++++----
 src/main.cpp                          |  4 ++++
 src/systemtask/SystemTask.h           |  4 ++++
 6 files changed, 50 insertions(+), 19 deletions(-)

diff --git a/src/BootloaderVersion.cpp b/src/BootloaderVersion.cpp
index 5eba7a1d..07a1da4e 100644
--- a/src/BootloaderVersion.cpp
+++ b/src/BootloaderVersion.cpp
@@ -1,26 +1,36 @@
 #include <cstdint>
+#include <cstdio>
 #include "BootloaderVersion.h"
 
 using namespace Pinetime;
 
-// NOTE : current bootloader does not export its version to the application firmware.
+// NOTE : version < 1.0.0 of bootloader does not export its version to the application firmware.
 
-uint32_t BootloaderVersion::Major() {
-  return 0;
+uint32_t BootloaderVersion::version = 0;
+char BootloaderVersion::versionString[BootloaderVersion::VERSION_STR_LEN] = "0.0.0";
+
+const uint32_t BootloaderVersion::Major() {
+  return (BootloaderVersion::version >> 16u) & 0xff;
 }
 
-uint32_t BootloaderVersion::Minor() {
-  return 0;
+const uint32_t BootloaderVersion::Minor() {
+  return (BootloaderVersion::version >> 8u) & 0xff;
 }
 
-uint32_t BootloaderVersion::Patch() {
-  return 0;
+const uint32_t BootloaderVersion::Patch() {
+  return BootloaderVersion::version & 0xff;
 }
 
 const char* BootloaderVersion::VersionString() {
-  return "0.0.0";
+  return BootloaderVersion::versionString;
 }
 
-bool BootloaderVersion::IsValid() {
-  return false;
+const bool BootloaderVersion::IsValid() {
+  return BootloaderVersion::version >= 0x00010000;
+}
+
+void BootloaderVersion::SetVersion(uint32_t v) {
+  BootloaderVersion::version = v;
+  snprintf(BootloaderVersion::versionString, BootloaderVersion::VERSION_STR_LEN, "%ld.%ld.%ld",
+           BootloaderVersion::Major(), BootloaderVersion::Minor(), BootloaderVersion::Patch());
 }
diff --git a/src/BootloaderVersion.h b/src/BootloaderVersion.h
index c1ede0f5..f8127414 100644
--- a/src/BootloaderVersion.h
+++ b/src/BootloaderVersion.h
@@ -3,10 +3,15 @@
 namespace Pinetime {
   class BootloaderVersion {
   public:
-    static uint32_t Major();
-    static uint32_t Minor();
-    static uint32_t Patch();
+    static const uint32_t Major();
+    static const uint32_t Minor();
+    static const uint32_t Patch();
     static const char* VersionString();
-    static bool IsValid();
+    static const bool IsValid();
+    static void SetVersion(uint32_t v);
+  private:
+    static uint32_t version;
+    static constexpr size_t VERSION_STR_LEN = 12;
+    static char versionString[VERSION_STR_LEN];
   };
-}
\ No newline at end of file
+}
diff --git a/src/components/ble/DfuService.cpp b/src/components/ble/DfuService.cpp
index cec194cc..e6bcea81 100644
--- a/src/components/ble/DfuService.cpp
+++ b/src/components/ble/DfuService.cpp
@@ -121,6 +121,11 @@ int DfuService::WritePacketHandler(uint16_t connectionHandle, os_mbuf* om) {
       NRF_LOG_INFO(
         "[DFU] -> Start data received : SD size : %d, BT size : %d, app size : %d", softdeviceSize, bootloaderSize, applicationSize);
 
+      // wait until SystemTask has finished waking up all devices
+      while (systemTask.IsSleeping()) {
+        vTaskDelay(50); // 50ms
+      }
+
       dfuImage.Erase();
 
       uint8_t data[] {16, 1, 1};
diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index 1cf895c7..60e53ad6 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -3,6 +3,7 @@
 #include "../DisplayApp.h"
 #include "Label.h"
 #include "Version.h"
+#include "BootloaderVersion.h"
 #include "components/battery/BatteryController.h"
 #include "components/ble/BleController.h"
 #include "components/brightness/BrightnessController.h"
@@ -83,17 +84,19 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen1() {
   lv_label_set_recolor(label, true);
   lv_label_set_text_fmt(label,
                         "#FFFF00 InfiniTime#\n\n"
-                        "#444444 Version# %ld.%ld.%ld\n\n"
-                        "#444444 Short Ref# %s\n\n"
+                        "#444444 Version# %ld.%ld.%ld\n"
+                        "#444444 Short Ref# %s\n"
                         "#444444 Build date#\n"
                         "%s\n"
-                        "%s\n",
+                        "%s\n\n"
+                        "#444444 Bootloader# %s",
                         Version::Major(),
                         Version::Minor(),
                         Version::Patch(),
                         Version::GitCommitHash(),
                         __DATE__,
-                        __TIME__);
+                        __TIME__,
+                        BootloaderVersion::VersionString());
   lv_label_set_align(label, LV_LABEL_ALIGN_CENTER);
   lv_obj_align(label, lv_scr_act(), LV_ALIGN_CENTER, 0, 0);
   return std::make_unique<Screens::Label>(0, 5, app, label);
diff --git a/src/main.cpp b/src/main.cpp
index 4c2c5de8..5832a78f 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -28,6 +28,7 @@
 #include <drivers/Hrs3300.h>
 #include <drivers/Bma421.h>
 
+#include "BootloaderVersion.h"
 #include "components/battery/BatteryController.h"
 #include "components/ble/BleController.h"
 #include "components/ble/NotificationManager.h"
@@ -306,6 +307,9 @@ int main(void) {
   debounceTimer = xTimerCreate("debounceTimer", 200, pdFALSE, (void*) 0, DebounceTimerCallback);
   debounceChargeTimer = xTimerCreate("debounceTimerCharge", 200, pdFALSE, (void*) 0, DebounceTimerChargeCallback);
 
+  // retrieve version stored by bootloader
+  Pinetime::BootloaderVersion::SetVersion(NRF_TIMER2->CC[0]);
+
   lvgl.Init();
 
   systemTask.Start();
diff --git a/src/systemtask/SystemTask.h b/src/systemtask/SystemTask.h
index fa6a949c..f563640c 100644
--- a/src/systemtask/SystemTask.h
+++ b/src/systemtask/SystemTask.h
@@ -73,6 +73,10 @@ namespace Pinetime {
         return nimbleController;
       };
 
+      bool IsSleeping() const {
+        return isSleeping;
+      }
+
     private:
       TaskHandle_t taskHandle;
 

From f317d54218659af437d840d00fd349e7919a243f Mon Sep 17 00:00:00 2001
From: kieranc <kieranc@gmail.com>
Date: Tue, 29 Jun 2021 20:20:27 +0200
Subject: [PATCH 32/58] Add PineTimeStyle watchface (#334)

* PineTimeStyle
* Move GPL license header
* Add step count gauge - replaces heartrate in sidebar
* Enable 12/24h functionality
* Set step gauge outer to be white when step goal is reached
* Add font source file
* Move static needle_colors array to member variable
* Add documentation on generating a font
* Replace .ttf with Google version, add link to font page

Co-authored-by: JF002 <JF002@users.noreply.github.com>
---
 src/CMakeLists.txt                            |    4 +
 src/displayapp/fonts/README.md                |   18 +
 src/displayapp/fonts/open_sans_light.c        | 1261 +++++++++++++++++
 src/displayapp/fonts/open_sans_light.ttf      |  Bin 0 -> 101696 bytes
 src/displayapp/screens/Clock.cpp              |   14 +
 src/displayapp/screens/Clock.h                |    1 +
 src/displayapp/screens/PineTimeStyle.cpp      |  340 +++++
 src/displayapp/screens/PineTimeStyle.h        |   86 ++
 .../screens/settings/SettingWatchFace.cpp     |    9 +
 src/libs/lv_conf.h                            |    1 +
 10 files changed, 1734 insertions(+)
 create mode 100644 src/displayapp/fonts/open_sans_light.c
 create mode 100644 src/displayapp/fonts/open_sans_light.ttf
 create mode 100644 src/displayapp/screens/PineTimeStyle.cpp
 create mode 100644 src/displayapp/screens/PineTimeStyle.h

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 7721d6b8..aca86543 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -235,6 +235,7 @@ set(LVGL_SRC
         libs/lvgl/src/lv_widgets/lv_cont.h
         libs/lvgl/src/lv_widgets/lv_cpicker.h
         libs/lvgl/src/lv_widgets/lv_dropdown.h
+        libs/lvgl/src/lv_widgets/lv_gauge.h
         libs/lvgl/src/lv_widgets/lv_img.h
         libs/lvgl/src/lv_widgets/lv_imgbtn.h
         libs/lvgl/src/lv_widgets/lv_keyboard.h
@@ -321,6 +322,7 @@ set(LVGL_SRC
         libs/lvgl/src/lv_widgets/lv_cont.c
         libs/lvgl/src/lv_widgets/lv_cpicker.c
         libs/lvgl/src/lv_widgets/lv_dropdown.c
+        libs/lvgl/src/lv_widgets/lv_gauge.c
         libs/lvgl/src/lv_widgets/lv_img.c
         libs/lvgl/src/lv_widgets/lv_imgbtn.c
         libs/lvgl/src/lv_widgets/lv_keyboard.c
@@ -423,6 +425,7 @@ list(APPEND SOURCE_FILES
         displayapp/icons/bg_clock.c
         displayapp/screens/WatchFaceAnalog.cpp
         displayapp/screens/WatchFaceDigital.cpp
+        displayapp/screens/PineTimeStyle.cpp
 
         ##
 
@@ -473,6 +476,7 @@ list(APPEND SOURCE_FILES
         displayapp/fonts/jetbrains_mono_76.c
         displayapp/fonts/jetbrains_mono_42.c
         displayapp/fonts/lv_font_sys_48.c
+        displayapp/fonts/open_sans_light.c
         displayapp/lv_pinetime_theme.c
 
         systemtask/SystemTask.cpp
diff --git a/src/displayapp/fonts/README.md b/src/displayapp/fonts/README.md
index 08427d51..13b61b8e 100644
--- a/src/displayapp/fonts/README.md
+++ b/src/displayapp/fonts/README.md
@@ -2,6 +2,7 @@
 
 * [Jetbrains Mono](https://www.jetbrains.com/fr-fr/lp/mono/)
 * [Awesome font from LVGL](https://lvgl.io/assets/others/FontAwesome5-Solid+Brands+Regular.woff)
+* [Open Sans Light from Google](https://fonts.google.com/specimen/Open+Sans)
 
 ## Generate the fonts:
 
@@ -14,6 +15,8 @@
 * Add a 2nd font, load the file `FontAwesome5-Solid+Brands+Regular.woff` and specify the following
   range : `0xf293, 0xf294, 0xf244, 0xf240, 0xf242, 0xf243, 0xf241, 0xf54b, 0xf21e, 0xf1e6, 0xf54b, 0xf017, 0xf129, 0xf03a, 0xf185, 0xf560, 0xf001, 0xf3fd, 0xf069, 0xf1fc, 0xf45d, 0xf59f, 0xf5a0, 0xf029, 0xf027, 0xf028, 0xf6a9, 0xf04b, 0xf04c, 0xf048, 0xf051, 0xf095, 0xf3dd, 0xf04d, 0xf2f2, 0xf024, 0xf252`
 * Click on Convert, and download the file `jetbrains_mono_bold_20.c` and copy it in `src/DisplayApp/Fonts`
+* Add the font .c file path to src/CMakeLists.txt
+* Add an LV_FONT_DECLARE line in src/libs/lv_conf.h
 
 Add new symbols:
 
@@ -28,6 +31,21 @@ Add new symbols:
 static constexpr const char* newSymbol = "\xEF\x86\x85";
 ```
 
+## Simple method to generate a font
+
+If you want to generate a basic font containing only numbers and letters, you can use the above settings but instead of specifying a range, simply list the characters you need in the Symbols field and leave the range blank. This is the approach used for the PineTimeStyle watchface.
+This works well for fonts which will only be used to display numbers, but will fail if you try to add a colon or other punctuation.
+
+* Open the [LVGL font converter](https://lvgl.io/tools/fontconverter)
+* Name : open_sans_light
+* Size : 150
+* Bpp : 1 bit-per-pixel
+* Do not enable font compression and horizontal subpixel hinting
+* Load the file `open_sans_light.tff` (use the file in this repo to ensure the version matches) and specify the following symbols : `0123456789`
+* Click on Convert, and download the file `open_sans_light.c` and copy it in `src/DisplayApp/Fonts`
+* Add the font .c file path to src/CMakeLists.txt (search for jetbrains to find the appropriate location/format)
+* Add an LV_FONT_DECLARE line in src/libs/lv_conf.h (as above)
+
 #### Navigation font
 
 To create the navigtion.ttf I use the web app [icomoon](https://icomoon.io/app)
diff --git a/src/displayapp/fonts/open_sans_light.c b/src/displayapp/fonts/open_sans_light.c
new file mode 100644
index 00000000..15f0ddf6
--- /dev/null
+++ b/src/displayapp/fonts/open_sans_light.c
@@ -0,0 +1,1261 @@
+/*******************************************************************************
+ * Size: 150 px
+ * Bpp: 1
+ * Opts: 
+ ******************************************************************************/
+
+#ifdef LV_LVGL_H_INCLUDE_SIMPLE
+#include "lvgl.h"
+#else
+#include "lvgl/lvgl.h"
+#endif
+
+#ifndef OPEN_SANS_LIGHT
+#define OPEN_SANS_LIGHT 1
+#endif
+
+#if OPEN_SANS_LIGHT
+
+/*-----------------
+ *    BITMAPS
+ *----------------*/
+
+/*Store the image of the glyphs*/
+static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
+    /* U+0030 "0" */
+    0x0, 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xff, 0xff, 0xc0, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xff, 0xff, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xff, 0xff, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xff, 0xff, 0xff,
+    0xfe, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xff, 0xff,
+    0xff, 0xf8, 0x0, 0x0, 0x0, 0xf, 0xff, 0xe0,
+    0x3, 0xff, 0xf0, 0x0, 0x0, 0x0, 0xff, 0xf8,
+    0x0, 0x3, 0xff, 0xc0, 0x0, 0x0, 0xf, 0xfe,
+    0x0, 0x0, 0x7, 0xff, 0x0, 0x0, 0x0, 0xff,
+    0xe0, 0x0, 0x0, 0xf, 0xfc, 0x0, 0x0, 0x7,
+    0xfe, 0x0, 0x0, 0x0, 0x3f, 0xf0, 0x0, 0x0,
+    0x7f, 0xc0, 0x0, 0x0, 0x0, 0xff, 0x80, 0x0,
+    0x7, 0xfc, 0x0, 0x0, 0x0, 0x1, 0xfe, 0x0,
+    0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0, 0xf, 0xf8,
+    0x0, 0x3, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xc0, 0x0, 0x3f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0x0, 0x1, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xfc, 0x0, 0x1f, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xe0, 0x0, 0xff, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0x80, 0xf, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfc, 0x0, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xe0, 0x3, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7f, 0x80, 0x3f, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xfc, 0x1, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0xf,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfc,
+    0x7, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xf0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0x81, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xfc, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xe0, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0x87, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfc, 0x3f, 0xc0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xe1, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x1f, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xf8, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xe7, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x3f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf9,
+    0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xcf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xfe, 0x7f, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xf3, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7f, 0xbf, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xfd, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xff, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0xff, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xff, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xff, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xff,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff,
+    0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xff, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xff, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xff, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xff, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xff, 0xc0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xff, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xff, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0xfc,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xff,
+    0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7,
+    0xff, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xfe, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xe7, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x3f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xf9, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xcf, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xfe, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xf3, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x9f, 0xe0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfc, 0x7f,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xe3,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe,
+    0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xf0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0x87, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xfc, 0x1f, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xe0, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1, 0xfe, 0x7, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xf0, 0x3f, 0xc0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0x80, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xfc, 0x7, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xc0, 0x3f, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0x0, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xf0, 0x7,
+    0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0,
+    0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0x80, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0xe0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xfe, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xf0, 0x0, 0x1f, 0xf0, 0x0, 0x0,
+    0x0, 0x1, 0xff, 0x0, 0x0, 0x7f, 0xc0, 0x0,
+    0x0, 0x0, 0x1f, 0xf0, 0x0, 0x1, 0xfe, 0x0,
+    0x0, 0x0, 0x0, 0xff, 0x80, 0x0, 0xf, 0xf8,
+    0x0, 0x0, 0x0, 0xf, 0xf8, 0x0, 0x0, 0x3f,
+    0xf0, 0x0, 0x0, 0x1, 0xff, 0x80, 0x0, 0x0,
+    0xff, 0xc0, 0x0, 0x0, 0x1f, 0xf8, 0x0, 0x0,
+    0x3, 0xff, 0x80, 0x0, 0x3, 0xff, 0x80, 0x0,
+    0x0, 0xf, 0xff, 0x0, 0x0, 0x7f, 0xf8, 0x0,
+    0x0, 0x0, 0x3f, 0xff, 0x0, 0x1f, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xf8,
+    0x0, 0x0, 0x0, 0x1, 0xff, 0xff, 0xff, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xff, 0xff, 0xff,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xff, 0xff,
+    0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xff,
+    0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7,
+    0xff, 0xc0, 0x0, 0x0, 0x0,
+
+    /* U+0031 "1" */
+    0x0, 0x0, 0x0, 0xf, 0xe0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x0, 0x1, 0xff, 0x80, 0x0, 0x0,
+    0x7f, 0xf0, 0x0, 0x0, 0x1f, 0xfe, 0x0, 0x0,
+    0xf, 0xff, 0xc0, 0x0, 0x3, 0xff, 0xf8, 0x0,
+    0x0, 0xff, 0xbf, 0x0, 0x0, 0x7f, 0xe7, 0xe0,
+    0x0, 0x1f, 0xf8, 0xfc, 0x0, 0x7, 0xfe, 0x1f,
+    0x80, 0x3, 0xff, 0x83, 0xf0, 0x0, 0xff, 0xc0,
+    0xfe, 0x0, 0x3f, 0xf0, 0x1f, 0xc0, 0x1f, 0xfc,
+    0x3, 0xf8, 0x7, 0xff, 0x0, 0x7f, 0x1, 0xff,
+    0x80, 0xf, 0xe0, 0xff, 0xe0, 0x1, 0xfc, 0x3f,
+    0xf8, 0x0, 0x3f, 0x8f, 0xfc, 0x0, 0x7, 0xf7,
+    0xff, 0x0, 0x0, 0xff, 0xff, 0xc0, 0x0, 0x1f,
+    0xff, 0xf0, 0x0, 0x3, 0xfb, 0xf8, 0x0, 0x0,
+    0x7f, 0x3e, 0x0, 0x0, 0xf, 0xe3, 0x80, 0x0,
+    0x1, 0xfc, 0x20, 0x0, 0x0, 0x3f, 0x80, 0x0,
+    0x0, 0x7, 0xf0, 0x0, 0x0, 0x0, 0xfe, 0x0,
+    0x0, 0x0, 0x1f, 0xc0, 0x0, 0x0, 0x3, 0xf8,
+    0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0xf,
+    0xe0, 0x0, 0x0, 0x1, 0xfc, 0x0, 0x0, 0x0,
+    0x3f, 0x80, 0x0, 0x0, 0x7, 0xf0, 0x0, 0x0,
+    0x0, 0xfe, 0x0, 0x0, 0x0, 0x1f, 0xc0, 0x0,
+    0x0, 0x3, 0xf8, 0x0, 0x0, 0x0, 0x7f, 0x0,
+    0x0, 0x0, 0xf, 0xe0, 0x0, 0x0, 0x1, 0xfc,
+    0x0, 0x0, 0x0, 0x3f, 0x80, 0x0, 0x0, 0x7,
+    0xf0, 0x0, 0x0, 0x0, 0xfe, 0x0, 0x0, 0x0,
+    0x1f, 0xc0, 0x0, 0x0, 0x3, 0xf8, 0x0, 0x0,
+    0x0, 0x7f, 0x0, 0x0, 0x0, 0xf, 0xe0, 0x0,
+    0x0, 0x1, 0xfc, 0x0, 0x0, 0x0, 0x3f, 0x80,
+    0x0, 0x0, 0x7, 0xf0, 0x0, 0x0, 0x0, 0xfe,
+    0x0, 0x0, 0x0, 0x1f, 0xc0, 0x0, 0x0, 0x3,
+    0xf8, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0,
+    0xf, 0xe0, 0x0, 0x0, 0x1, 0xfc, 0x0, 0x0,
+    0x0, 0x3f, 0x80, 0x0, 0x0, 0x7, 0xf0, 0x0,
+    0x0, 0x0, 0xfe, 0x0, 0x0, 0x0, 0x1f, 0xc0,
+    0x0, 0x0, 0x3, 0xf8, 0x0, 0x0, 0x0, 0x7f,
+    0x0, 0x0, 0x0, 0xf, 0xe0, 0x0, 0x0, 0x1,
+    0xfc, 0x0, 0x0, 0x0, 0x3f, 0x80, 0x0, 0x0,
+    0x7, 0xf0, 0x0, 0x0, 0x0, 0xfe, 0x0, 0x0,
+    0x0, 0x1f, 0xc0, 0x0, 0x0, 0x3, 0xf8, 0x0,
+    0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0xf, 0xe0,
+    0x0, 0x0, 0x1, 0xfc, 0x0, 0x0, 0x0, 0x3f,
+    0x80, 0x0, 0x0, 0x7, 0xf0, 0x0, 0x0, 0x0,
+    0xfe, 0x0, 0x0, 0x0, 0x1f, 0xc0, 0x0, 0x0,
+    0x3, 0xf8, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0,
+    0x0, 0xf, 0xe0, 0x0, 0x0, 0x1, 0xfc, 0x0,
+    0x0, 0x0, 0x3f, 0x80, 0x0, 0x0, 0x7, 0xf0,
+    0x0, 0x0, 0x0, 0xfe, 0x0, 0x0, 0x0, 0x1f,
+    0xc0, 0x0, 0x0, 0x3, 0xf8, 0x0, 0x0, 0x0,
+    0x7f, 0x0, 0x0, 0x0, 0xf, 0xe0, 0x0, 0x0,
+    0x1, 0xfc, 0x0, 0x0, 0x0, 0x3f, 0x80, 0x0,
+    0x0, 0x7, 0xf0, 0x0, 0x0, 0x0, 0xfe, 0x0,
+    0x0, 0x0, 0x1f, 0xc0, 0x0, 0x0, 0x3, 0xf8,
+    0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0xf,
+    0xe0, 0x0, 0x0, 0x1, 0xfc, 0x0, 0x0, 0x0,
+    0x3f, 0x80, 0x0, 0x0, 0x7, 0xf0, 0x0, 0x0,
+    0x0, 0xfe, 0x0, 0x0, 0x0, 0x1f, 0xc0, 0x0,
+    0x0, 0x3, 0xf8, 0x0, 0x0, 0x0, 0x7f, 0x0,
+    0x0, 0x0, 0xf, 0xe0, 0x0, 0x0, 0x1, 0xfc,
+    0x0, 0x0, 0x0, 0x3f, 0x80,
+
+    /* U+0032 "2" */
+    0x0, 0x0, 0x0, 0x7f, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xff, 0xff, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xff, 0xff, 0xff, 0xf0, 0x0,
+    0x0, 0x0, 0x1, 0xff, 0xff, 0xff, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xfc,
+    0x0, 0x0, 0x0, 0x7f, 0xff, 0xff, 0xff, 0xff,
+    0xe0, 0x0, 0x0, 0x1f, 0xff, 0xf0, 0x1, 0xff,
+    0xfe, 0x0, 0x0, 0xf, 0xff, 0xc0, 0x0, 0x3,
+    0xff, 0xe0, 0x0, 0x7, 0xff, 0xe0, 0x0, 0x0,
+    0x1f, 0xfe, 0x0, 0x1, 0xff, 0xe0, 0x0, 0x0,
+    0x0, 0xff, 0xe0, 0x0, 0x7f, 0xf0, 0x0, 0x0,
+    0x0, 0xf, 0xfe, 0x0, 0xf, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0xc0, 0x0, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xfc, 0x0, 0xf, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0xff, 0xc0, 0x1, 0xc0, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xf8, 0x0, 0x10, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0x80, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7f, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfe, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0xf0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xff, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xc0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xfc,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1f, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xff, 0x80, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0xe0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfe, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xf0,
+
+    /* U+0033 "3" */
+    0x0, 0x0, 0x0, 0x1f, 0xff, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0xff, 0xff, 0xc0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xff, 0xff, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x1f, 0xff, 0xff, 0xff, 0xff,
+    0x0, 0x0, 0x0, 0xf, 0xff, 0xff, 0xff, 0xff,
+    0xf8, 0x0, 0x0, 0x3, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xe0, 0x0, 0x0, 0xff, 0xff, 0xe0, 0x0,
+    0xff, 0xff, 0x0, 0x0, 0x3f, 0xff, 0xc0, 0x0,
+    0x0, 0xff, 0xf8, 0x0, 0x7, 0xff, 0xe0, 0x0,
+    0x0, 0x3, 0xff, 0xc0, 0x1, 0xff, 0xf0, 0x0,
+    0x0, 0x0, 0xf, 0xfe, 0x0, 0x3f, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0xf0, 0x7, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xff, 0x80, 0x3f, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xfc, 0x1, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xc0, 0xe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xfe, 0x0,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xe0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0x80, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7f, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0xc0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0xc0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0xfe, 0x0,
+    0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xff, 0xff, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xff, 0xff, 0xff,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff,
+    0xff, 0xc0, 0x0, 0x0, 0x0, 0xf, 0xff, 0xff,
+    0xff, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xff, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xff, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xff, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0xc0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xfe, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xe0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7f, 0xc0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xe0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xfe,
+    0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0xc0, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xf8, 0xf, 0x80, 0x0, 0x0, 0x0, 0x0, 0x7,
+    0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xff, 0xe0, 0xf, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0xfc, 0x0, 0xff, 0xfe, 0x0, 0x0, 0x0,
+    0x7f, 0xff, 0x80, 0xf, 0xff, 0xff, 0x80, 0x0,
+    0xff, 0xff, 0xe0, 0x0, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xfc, 0x0, 0x1, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0x0, 0x0, 0x7, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xc0, 0x0, 0x0, 0xf, 0xff,
+    0xff, 0xff, 0xff, 0xe0, 0x0, 0x0, 0x0, 0x7,
+    0xff, 0xff, 0xff, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xff, 0xff, 0x80, 0x0, 0x0, 0x0,
+
+    /* U+0034 "4" */
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xfc,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xff, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfb, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xfd, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfc,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xfc, 0x7e, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xfe, 0x3f, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xfe, 0x1f, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfe,
+    0xf, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7f, 0x7, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0x3, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x1, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0x80, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3f, 0x80, 0x7e, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xc0, 0x3f, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xc0, 0x1f,
+    0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xc0, 0xf, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xc0, 0x7, 0xe0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xe0, 0x3, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0, 0x1,
+    0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xe0, 0x0, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x0, 0x7e, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xf0, 0x0, 0x3f, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf0, 0x0,
+    0x1f, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7,
+    0xf8, 0x0, 0xf, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7, 0xf8, 0x0, 0x7, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xf8, 0x0, 0x3, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xf8, 0x0,
+    0x1, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x0, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xfc, 0x0, 0x0, 0x7e, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xfc, 0x0, 0x0, 0x3f,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0x0,
+    0x0, 0x1f, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xfe, 0x0, 0x0, 0xf, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xfe, 0x0, 0x0, 0x7, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x3,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0,
+    0x0, 0x1, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x7e, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7f, 0x80, 0x0, 0x0,
+    0x3f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0x0, 0x0, 0x1f, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0x80, 0x0, 0x0, 0xf, 0xc0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x7, 0xe0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0,
+    0x3, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xc0,
+    0x0, 0x0, 0x1, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xe0, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x7e,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0,
+    0x0, 0x3f, 0x0, 0x0, 0x0, 0x0, 0xf, 0xe0,
+    0x0, 0x0, 0x0, 0x1f, 0x80, 0x0, 0x0, 0x0,
+    0xf, 0xf0, 0x0, 0x0, 0x0, 0xf, 0xc0, 0x0,
+    0x0, 0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x7,
+    0xe0, 0x0, 0x0, 0x0, 0x7, 0xf0, 0x0, 0x0,
+    0x0, 0x3, 0xf0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0x0, 0x0, 0x1, 0xf8, 0x0, 0x0, 0x0,
+    0x7, 0xf8, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x0,
+    0x0, 0x0, 0x3, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x7e, 0x0, 0x0, 0x0, 0x3, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0x0, 0x0, 0x0, 0x3, 0xfc,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0x80, 0x0, 0x0,
+    0x3, 0xfc, 0x0, 0x0, 0x0, 0x0, 0xf, 0xc0,
+    0x0, 0x0, 0x1, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xe0, 0x0, 0x0, 0x1, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xf0, 0x0, 0x0, 0x1, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xf8, 0x0, 0x0,
+    0x0, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc,
+    0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7e, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0x0, 0x0, 0x0, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0x80, 0x0,
+    0x0, 0x7f, 0x80, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xc0, 0x0, 0x0, 0x7f, 0x80, 0x0, 0x0, 0x0,
+    0x0, 0x7, 0xe0, 0x0, 0x0, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xf0, 0x0, 0x0, 0x3f,
+    0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0xf8, 0x0,
+    0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xfc, 0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7e, 0x0, 0x0, 0x1f, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xe0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1f, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3f, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfe, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0x80, 0x0, 0x0,
+
+    /* U+0035 "5" */
+    0x1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0,
+    0x0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8,
+    0x0, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe,
+    0x0, 0x7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0x80, 0x1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xe0, 0x0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xf8, 0x0, 0x1f, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xf0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xfe, 0x0, 0x7f, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x3f, 0x8f, 0xff, 0xff, 0xff,
+    0x0, 0x0, 0x0, 0x1f, 0xff, 0xff, 0xff, 0xff,
+    0xfc, 0x0, 0x0, 0x7, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xc0, 0x0, 0x1, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xfc, 0x0, 0x0, 0x7f, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xc0, 0x0, 0xf, 0xff, 0xf0, 0x0,
+    0x3f, 0xff, 0xfc, 0x0, 0x1, 0xfe, 0x0, 0x0,
+    0x0, 0x7f, 0xff, 0x80, 0x0, 0x18, 0x0, 0x0,
+    0x0, 0x3, 0xff, 0xf0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xff, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xff, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7,
+    0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0x80, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xc0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff, 0x3,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0x80,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0xc0,
+    0x3f, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0xe0,
+    0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xf0,
+    0x3, 0xff, 0x80, 0x0, 0x0, 0x1, 0xff, 0xf8,
+    0x0, 0xff, 0xfc, 0x0, 0x0, 0x3, 0xff, 0xfc,
+    0x0, 0x3f, 0xff, 0xfc, 0x0, 0xf, 0xff, 0xfc,
+    0x0, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe,
+    0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe,
+    0x0, 0x0, 0x7, 0xff, 0xff, 0xff, 0xff, 0xfe,
+    0x0, 0x0, 0x0, 0x3f, 0xff, 0xff, 0xff, 0xfc,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xc0,
+    0x0, 0x0, 0x0,
+
+    /* U+0036 "6" */
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xfe, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff,
+    0x80, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xff, 0xff,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0xf, 0xff, 0xff,
+    0xff, 0xe0, 0x0, 0x0, 0x0, 0x3, 0xff, 0xff,
+    0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xff,
+    0xff, 0xff, 0xf8, 0x0, 0x0, 0x0, 0x7, 0xff,
+    0xfc, 0x0, 0xf, 0xc0, 0x0, 0x0, 0x0, 0xff,
+    0xfe, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0xf,
+    0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xff, 0x80, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7f, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xc0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7f, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x3, 0xff,
+    0xe0, 0x0, 0x0, 0x3, 0xf8, 0x0, 0x1, 0xff,
+    0xff, 0xf0, 0x0, 0x0, 0x1f, 0xc0, 0x0, 0x7f,
+    0xff, 0xff, 0xf0, 0x0, 0x0, 0xfe, 0x0, 0xf,
+    0xff, 0xff, 0xff, 0xf0, 0x0, 0xf, 0xf0, 0x1,
+    0xff, 0xff, 0xff, 0xff, 0xc0, 0x0, 0x7f, 0x0,
+    0x3f, 0xff, 0xff, 0xff, 0xff, 0x80, 0x3, 0xf8,
+    0x3, 0xff, 0xf0, 0x1, 0xff, 0xfe, 0x0, 0x1f,
+    0xc0, 0x7f, 0xf8, 0x0, 0x0, 0xff, 0xf8, 0x0,
+    0xfe, 0x7, 0xfe, 0x0, 0x0, 0x1, 0xff, 0xe0,
+    0x7, 0xf0, 0x7f, 0xc0, 0x0, 0x0, 0x3, 0xff,
+    0x80, 0x3f, 0x87, 0xf8, 0x0, 0x0, 0x0, 0x7,
+    0xfe, 0x1, 0xfc, 0x7f, 0x80, 0x0, 0x0, 0x0,
+    0x1f, 0xf8, 0xf, 0xe7, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x7f, 0xe0, 0x7f, 0x7f, 0x0, 0x0, 0x0,
+    0x0, 0x1, 0xff, 0x3, 0xff, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xfc, 0x1f, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xf0, 0xff, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x8f, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xfc, 0x7f, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xf3, 0xff,
+    0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x9f,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfc,
+    0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xf3, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0x9f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3, 0xfc, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xe7, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0xbf, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfd, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xef, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xfb, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xdf, 0xe0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf7,
+    0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0x9f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xe7, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7, 0xf8, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0xc7, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfc, 0x3f, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xe1, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x7, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xf8, 0x3f, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xc1, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfc, 0x7,
+    0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0,
+    0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xf0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0x80, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xfc, 0x0, 0xff, 0x80, 0x0, 0x0, 0x0,
+    0x0, 0x3f, 0xc0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x3, 0xfe, 0x0, 0x1f, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0xe0, 0x0, 0x7f, 0xc0, 0x0,
+    0x0, 0x0, 0x3, 0xfe, 0x0, 0x1, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xf0, 0x0, 0x7, 0xfc,
+    0x0, 0x0, 0x0, 0x3, 0xff, 0x0, 0x0, 0x3f,
+    0xf8, 0x0, 0x0, 0x0, 0x3f, 0xf0, 0x0, 0x0,
+    0xff, 0xe0, 0x0, 0x0, 0x3, 0xff, 0x0, 0x0,
+    0x3, 0xff, 0xc0, 0x0, 0x0, 0x7f, 0xf0, 0x0,
+    0x0, 0xf, 0xff, 0x80, 0x0, 0x1f, 0xff, 0x0,
+    0x0, 0x0, 0x1f, 0xff, 0xc0, 0xf, 0xff, 0xf0,
+    0x0, 0x0, 0x0, 0x7f, 0xff, 0xff, 0xff, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff,
+    0xe0, 0x0, 0x0, 0x0, 0x3, 0xff, 0xff, 0xff,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff, 0xff,
+    0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff,
+    0xff, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xff, 0xe0, 0x0, 0x0, 0x0,
+
+    /* U+0037 "7" */
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xfc,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0,
+
+    /* U+0038 "8" */
+    0x0, 0x0, 0x0, 0x1f, 0xff, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xff, 0xff, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xff, 0xff, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xff, 0xff, 0xff, 0xfc,
+    0x0, 0x0, 0x0, 0x1, 0xff, 0xff, 0xff, 0xff,
+    0xf0, 0x0, 0x0, 0x0, 0x3f, 0xff, 0xff, 0xff,
+    0xff, 0xc0, 0x0, 0x0, 0xf, 0xff, 0xf0, 0x1,
+    0xff, 0xfe, 0x0, 0x0, 0x1, 0xff, 0xf0, 0x0,
+    0x1, 0xff, 0xf0, 0x0, 0x0, 0x3f, 0xf8, 0x0,
+    0x0, 0x3, 0xff, 0x80, 0x0, 0x7, 0xfe, 0x0,
+    0x0, 0x0, 0xf, 0xfc, 0x0, 0x0, 0xff, 0xc0,
+    0x0, 0x0, 0x0, 0x7f, 0xe0, 0x0, 0x1f, 0xf8,
+    0x0, 0x0, 0x0, 0x3, 0xff, 0x0, 0x1, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xf8, 0x0, 0x3f,
+    0xe0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x80, 0x7,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x7, 0xfc, 0x0,
+    0x7f, 0x80, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xc0,
+    0x7, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x3, 0xfc,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xe0, 0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xfe, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xe0, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xff, 0x1, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x1f, 0xe0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x1, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xf0, 0x1f, 0xe0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xff, 0x1, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xf0, 0x1f, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x1, 0xfe, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x1f, 0xe0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x1, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x1f,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0x0,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xe0,
+    0xf, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe,
+    0x0, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xe0, 0x7, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0xc0, 0x7, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xf8, 0x0, 0x3f, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0x80, 0x1, 0xff, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xf0, 0x0, 0x1f, 0xf8, 0x0, 0x0,
+    0x0, 0x3, 0xfe, 0x0, 0x0, 0xff, 0xe0, 0x0,
+    0x0, 0x0, 0x7f, 0xc0, 0x0, 0x7, 0xff, 0x0,
+    0x0, 0x0, 0xf, 0xf8, 0x0, 0x0, 0x3f, 0xf8,
+    0x0, 0x0, 0x1, 0xff, 0x80, 0x0, 0x1, 0xff,
+    0xe0, 0x0, 0x0, 0x7f, 0xe0, 0x0, 0x0, 0xf,
+    0xff, 0x80, 0x0, 0x1f, 0xfc, 0x0, 0x0, 0x0,
+    0x7f, 0xfe, 0x0, 0x3, 0xff, 0x80, 0x0, 0x0,
+    0x1, 0xff, 0xf8, 0x0, 0xff, 0xe0, 0x0, 0x0,
+    0x0, 0xf, 0xff, 0xe0, 0x3f, 0xfc, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0xff, 0x9f, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xc0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xff, 0xff, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xf, 0xff, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xff, 0xff,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xff, 0xff,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff, 0xe7,
+    0xff, 0xfc, 0x0, 0x0, 0x0, 0x0, 0xff, 0xf8,
+    0xf, 0xff, 0xf0, 0x0, 0x0, 0x0, 0x3f, 0xfe,
+    0x0, 0x3f, 0xff, 0xc0, 0x0, 0x0, 0x7, 0xff,
+    0x80, 0x0, 0xff, 0xfe, 0x0, 0x0, 0x1, 0xff,
+    0xe0, 0x0, 0x3, 0xff, 0xf8, 0x0, 0x0, 0x3f,
+    0xf8, 0x0, 0x0, 0x7, 0xff, 0xc0, 0x0, 0x7,
+    0xfe, 0x0, 0x0, 0x0, 0x3f, 0xfe, 0x0, 0x0,
+    0xff, 0xc0, 0x0, 0x0, 0x0, 0xff, 0xf0, 0x0,
+    0x1f, 0xf8, 0x0, 0x0, 0x0, 0x3, 0xff, 0x80,
+    0x3, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xfc,
+    0x0, 0x7f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0xe0, 0xf, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xff, 0x0, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xf0, 0x1f, 0xf0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0x81, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf8, 0x3f, 0xe0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0xc3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfc, 0x7f, 0xc0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xe7, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xfe, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xe7, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xff, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xff,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xff, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xff, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xff, 0xf0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xff, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1, 0xfe, 0x7f, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1f, 0xe7, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x1, 0xfe, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xe7, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xfc, 0x3f, 0xc0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xc3, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8, 0x1f,
+    0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x81,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xf0,
+    0xf, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff,
+    0x0, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0xe0, 0x7, 0xfe, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xfc, 0x0, 0x3f, 0xf0, 0x0, 0x0, 0x0, 0x1,
+    0xff, 0x80, 0x3, 0xff, 0xc0, 0x0, 0x0, 0x0,
+    0x7f, 0xf0, 0x0, 0x1f, 0xff, 0x0, 0x0, 0x0,
+    0x1f, 0xfe, 0x0, 0x0, 0x7f, 0xfe, 0x0, 0x0,
+    0xf, 0xff, 0xc0, 0x0, 0x3, 0xff, 0xfe, 0x0,
+    0xf, 0xff, 0xf8, 0x0, 0x0, 0x1f, 0xff, 0xff,
+    0xff, 0xff, 0xfe, 0x0, 0x0, 0x0, 0x7f, 0xff,
+    0xff, 0xff, 0xff, 0xc0, 0x0, 0x0, 0x1, 0xff,
+    0xff, 0xff, 0xff, 0xf0, 0x0, 0x0, 0x0, 0x7,
+    0xff, 0xff, 0xff, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xff, 0xff, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7, 0xff, 0xf8, 0x0, 0x0, 0x0,
+
+    /* U+0039 "9" */
+    0x0, 0x0, 0x0, 0x1f, 0xfe, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xff, 0xfe, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xff, 0xff, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xff, 0xff, 0xff, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff,
+    0xc0, 0x0, 0x0, 0x0, 0x3f, 0xff, 0xff, 0xff,
+    0xfe, 0x0, 0x0, 0x0, 0x7, 0xff, 0xf0, 0x3,
+    0xff, 0xf8, 0x0, 0x0, 0x0, 0xff, 0xf0, 0x0,
+    0x3, 0xff, 0xc0, 0x0, 0x0, 0x1f, 0xfc, 0x0,
+    0x0, 0xf, 0xfe, 0x0, 0x0, 0x3, 0xff, 0x0,
+    0x0, 0x0, 0x3f, 0xf0, 0x0, 0x0, 0x7f, 0xc0,
+    0x0, 0x0, 0x0, 0xff, 0x80, 0x0, 0xf, 0xf8,
+    0x0, 0x0, 0x0, 0x7, 0xfc, 0x0, 0x1, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0xe0, 0x0, 0x3f,
+    0xe0, 0x0, 0x0, 0x0, 0x1, 0xfe, 0x0, 0x3,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x7f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x80,
+    0xf, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x7, 0xf8,
+    0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f,
+    0xc0, 0x1f, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xfc, 0x1, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1f, 0xe0, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xfe, 0x3, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf0, 0x3f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7f, 0x3, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x7, 0xf0, 0x7f, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0x87, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xf8, 0x7f, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3f, 0x87, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xfc, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xcf, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfc, 0xff,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xcf,
+    0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe,
+    0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xef, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xfe, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0xf, 0xef, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xfe, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xef, 0xf0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xfe, 0xff, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xf, 0xff, 0xf0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xff, 0xff, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0xf, 0xff, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0x80, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xf7, 0xf8, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x7f, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xf7, 0xf8,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0x7f,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xf3,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff,
+    0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f,
+    0xf3, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf,
+    0xff, 0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x1,
+    0xff, 0xf1, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0xff, 0xf, 0xf8, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xf7, 0xf0, 0xff, 0x80, 0x0, 0x0, 0x0,
+    0x0, 0xfe, 0x7f, 0x7, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xc7, 0xf0, 0x7f, 0xe0, 0x0, 0x0,
+    0x0, 0x3, 0xf8, 0x7f, 0x3, 0xff, 0x80, 0x0,
+    0x0, 0x0, 0xff, 0xf, 0xf0, 0x1f, 0xfc, 0x0,
+    0x0, 0x0, 0x1f, 0xe0, 0xff, 0x0, 0xff, 0xf0,
+    0x0, 0x0, 0x7, 0xfc, 0xf, 0xf0, 0x7, 0xff,
+    0xc0, 0x0, 0x3, 0xff, 0x80, 0xfe, 0x0, 0x3f,
+    0xff, 0xc0, 0x3, 0xff, 0xf0, 0xf, 0xe0, 0x1,
+    0xff, 0xff, 0xff, 0xff, 0xfc, 0x0, 0xfe, 0x0,
+    0x7, 0xff, 0xff, 0xff, 0xff, 0x0, 0xf, 0xe0,
+    0x0, 0x1f, 0xff, 0xff, 0xff, 0xe0, 0x0, 0xfe,
+    0x0, 0x0, 0x7f, 0xff, 0xff, 0xf0, 0x0, 0xf,
+    0xe0, 0x0, 0x0, 0xff, 0xff, 0xf8, 0x0, 0x1,
+    0xfe, 0x0, 0x0, 0x0, 0xff, 0xf8, 0x0, 0x0,
+    0x1f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x1, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x1, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfc, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0x80, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3, 0xf8, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7f, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x7, 0xf8, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xe0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f,
+    0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
+    0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x3f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x7f, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0xf, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x1f, 0xf0, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x3, 0xfe, 0x0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x3f, 0xc0, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x7, 0xfc, 0x0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0xff, 0x80, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x1f, 0xf0, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0x0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xe0, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xfc, 0x0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x80,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xf0,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xfe,
+    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff,
+    0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff,
+    0xf8, 0x0, 0x0, 0x1, 0x80, 0x0, 0x0, 0xff,
+    0xff, 0x0, 0x0, 0x0, 0x1f, 0xe0, 0x0, 0xff,
+    0xff, 0xc0, 0x0, 0x0, 0x1, 0xff, 0xff, 0xff,
+    0xff, 0xf0, 0x0, 0x0, 0x0, 0x1f, 0xff, 0xff,
+    0xff, 0xfc, 0x0, 0x0, 0x0, 0x1, 0xff, 0xff,
+    0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xff,
+    0xff, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0xff,
+    0xff, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0,
+    0x7f, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0
+};
+
+
+/*---------------------
+ *  GLYPH DESCRIPTION
+ *--------------------*/
+
+static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
+    {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */,
+    {.bitmap_index = 0, .adv_w = 1370, .box_w = 69, .box_h = 110, .ofs_x = 8, .ofs_y = -1},
+    {.bitmap_index = 949, .adv_w = 1370, .box_w = 35, .box_h = 107, .ofs_x = 15, .ofs_y = 0},
+    {.bitmap_index = 1418, .adv_w = 1370, .box_w = 67, .box_h = 108, .ofs_x = 8, .ofs_y = 0},
+    {.bitmap_index = 2323, .adv_w = 1370, .box_w = 68, .box_h = 110, .ofs_x = 7, .ofs_y = -1},
+    {.bitmap_index = 3258, .adv_w = 1370, .box_w = 81, .box_h = 108, .ofs_x = 3, .ofs_y = -1},
+    {.bitmap_index = 4352, .adv_w = 1370, .box_w = 66, .box_h = 108, .ofs_x = 10, .ofs_y = -1},
+    {.bitmap_index = 5243, .adv_w = 1370, .box_w = 69, .box_h = 110, .ofs_x = 9, .ofs_y = -1},
+    {.bitmap_index = 6192, .adv_w = 1370, .box_w = 69, .box_h = 106, .ofs_x = 8, .ofs_y = 0},
+    {.bitmap_index = 7107, .adv_w = 1370, .box_w = 68, .box_h = 110, .ofs_x = 9, .ofs_y = -1},
+    {.bitmap_index = 8042, .adv_w = 1370, .box_w = 68, .box_h = 110, .ofs_x = 8, .ofs_y = -1}
+};
+
+/*---------------------
+ *  CHARACTER MAPPING
+ *--------------------*/
+
+
+
+/*Collect the unicode lists and glyph_id offsets*/
+static const lv_font_fmt_txt_cmap_t cmaps[] =
+{
+    {
+        .range_start = 48, .range_length = 10, .glyph_id_start = 1,
+        .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
+    }
+};
+
+
+
+/*--------------------
+ *  ALL CUSTOM DATA
+ *--------------------*/
+
+#if LV_VERSION_CHECK(8, 0, 0)
+/*Store all the custom data of the font*/
+static  lv_font_fmt_txt_glyph_cache_t cache;
+static const lv_font_fmt_txt_dsc_t font_dsc = {
+#else
+static lv_font_fmt_txt_dsc_t font_dsc = {
+#endif
+    .glyph_bitmap = glyph_bitmap,
+    .glyph_dsc = glyph_dsc,
+    .cmaps = cmaps,
+    .kern_dsc = NULL,
+    .kern_scale = 0,
+    .cmap_num = 1,
+    .bpp = 1,
+    .kern_classes = 0,
+    .bitmap_format = 0,
+#if LV_VERSION_CHECK(8, 0, 0)
+    .cache = &cache
+#endif
+};
+
+
+/*-----------------
+ *  PUBLIC FONT
+ *----------------*/
+
+/*Initialize a public general font descriptor*/
+#if LV_VERSION_CHECK(8, 0, 0)
+const lv_font_t open_sans_light = {
+#else
+lv_font_t open_sans_light = {
+#endif
+    .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt,    /*Function pointer to get glyph's data*/
+    .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt,    /*Function pointer to get glyph's bitmap*/
+    .line_height = 110,          /*The maximum line height required by the font*/
+    .base_line = 1,             /*Baseline measured from the bottom of the line*/
+#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0)
+    .subpx = LV_FONT_SUBPX_NONE,
+#endif
+#if LV_VERSION_CHECK(7, 4, 0)
+    .underline_position = -11,
+    .underline_thickness = 7,
+#endif
+    .dsc = &font_dsc           /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */
+};
+
+
+
+#endif /*#if OPEN_SANS_LIGHT*/
+
diff --git a/src/displayapp/fonts/open_sans_light.ttf b/src/displayapp/fonts/open_sans_light.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..6580d3a169e895d914f159c060b947e36746f275
GIT binary patch
literal 101696
zcmbTf2Yggj`agWmZPR<pq)#S=5Fn632rUC5gmglTnMe-=q=V8_1VuzZL{w}bA|fgx
zAR;0niUljOu8S@<#O^NZx~_`~nVa`}&YhVgtnTmsdC|0)Gp9V~>Fp9q2yx(>MC>Dm
zT{_%!jrq@nuCe3QUL)#iM-x9W<L?muwvQNn+0ZW^$h{wb*AXK8P&+!mVC(Ts8wd>_
z#QPIkW=)*C`=S5*gV5##Ld08I7G9n1{JZOMLR)Xg`#W3bPMvlA!~+gO$8IG=w}0xy
ztLBna62yFXo7kt$T+&)Lbc%}*noQ`>zSE{moGdIG{wkprZ{YpD)9`}jCPN0+y9<A3
zPMdZ0;sN2xBZOAsPwO2s=d?_`|DB3NLNB=*^ViRsxOlESjsA+i8!#Y!_QY9J#yz_F
z7ec2F#QwgUJLjsazuP^30iiQ82}%8U?))ipKf7()SVE^@Jnc^eauk3u$_I!@bR;!o
zmIX-^M1x)ub(G{6<`+7gw6xSw=qT*d+ZAvGO7L}59NG5lG+{|(m3-iQ#Wd*~fQoEy
zKTC)6c}yfX<kE|nN3fVFH436p85K6VNLe09D07zPvnd^gd`cP=3&o<s0*^bGLEVE=
z7OktRudky^q(SHJoiu3@=3Oc75Ne|POAA?a62Z&{y&~vDk(3o4FX*&EDh9;>zNi!!
z6rgY7n|vVhqhM!WY>y>4>(7`giKLN-L*w;n$sWmVaG1>or_E}Tj4qeko06)N6rV(i
zUrLZ=#jO|vVxmt>Feao2^pe?Pt`8?uOB%5|?Db*4$5CdfwJfuout;T&TE}{aXmMB^
zvd<+NWq_}&&{<lVpFegij+^Ho?99=h9I8G*mjl=7D|N6h{Ov0(DA0cP=}pCe2j_9|
zui}6!fUiQ4e|aeW6ko5R`RYrJ%}wgPjZKZ}*EFw6{g9S4UJ<6Vni`vEO53Y+Mvb~r
z+^Wv6RR_^m*jFvRt&Sd3`?Ie)bw0ffcfY-TwRl=_l5~<odXZ~GITlYsYF3^iNpgU6
za}wF;Oq6@)XIfM9@~k!CEQ_cpmg=x_u>GZ{z5a6cGvu?_%X_4FQmVrV9*dIa@#HBM
z$tU|rem+i>kADt+_`Ey@3hj4xQpyjG7cdHEb}KqhusAzAr`YQ)bo3I6i~5!n7ka!t
zU3QMc>(v$EN8i5G?e#enMLd0M&!{n{LY41@H{2R}Ve6>Z?hmYc>g3kh*RQ^2UF6{W
z>lZDd2UkAkJ^P)In>sbKfVTB$THJWu<L;M^7|NOl8`Z?2o3FWSPB%5za-HyE<Lqqu
zntd^m$-MUO6-j=Z7>O4!=|Osv%1}=4p1tyu1HK&DL>wkZAg5=(QqU*0d-vX=)tcX1
z$xqO`b%~jNU?u)zh+gPmUmXWzWW)){?JX>D6lDi96xpo=GqQ2U!U8YOgqQ6Xze<Dj
z{pJZrTgFXjrk~!uZsk3<-@5i*x(F{FWv|?|?v}gnT)X;SwXN;s1Tjw%4n0p79DMG%
zgJ1mpU!R=*+rQdAdG0wnpU!*s&=-II_eW>G`%%m}UjZV(tzX-IR$e6^#|iU58>2!!
z{RwVQfu)Bo7t941AeZ*@B|0)CcUHb=m)u6b(^y;;HcF|1s&HzQo;8~Gl`{10dQvb9
zTwP9f^mHCvEbZI3q!2%XIaUG3mJ9lpP^;i^dqrGl-@e5hB-h^gX64Y(iw|vj=GJHF
ztAiTTCzRbmjjN81x&4V*@BNd$zWn4=HRYBiC5O7z&3*8?>!#0NL9bf#^33`Xw^Xcu
zY}@)P_smdB%6DFUZom5TYt5s3ynFTKQ|Z^`Qx?{)-zL@9-aO;7yT*@O0QN~4Z=n+B
zE$(NDD9Vz+c*=3cQP?#xcEVYS#zojC>ea*aM|{Fe(n3}pF*06cAXbZ!eULM@QU|D-
zF-yA>M-?1)8q5~zH{CJst}V3poICFq`cMOXclQCcu$`zW>dc+=80H;>c|VTLD;hAb
z0(oV%NQRDi3o$b`Wfyco;;;)jg<dE9c+(woXzwj|&0`a*zp4Enqj%9SDW%7s*`xMh
zJDw(N6WbIwv67^a4M(Ipi_u^**z9^MA!V=fJ7Y)9^2si+)Erk<i7X0>vgk&Sy5N`V
zUfjR*C-oW^-H@ZW)fv-P<fyww&}-F|BWOd;ifMEsR+vN1OF?NjF_C_upn-s8$QHAx
z)9dQP#HP>Jm+8mrm+9B*_vl~LpVk}nB!4XD0~(mY0I@vyoFnJ}e{&QH^XNXcre3Y1
zd+UWZ?I+!bb%v?G(n9hBQHbLiiRvK<z**QNm>|mss5nb#j=8dBNOj-`kNV4Bsq0I8
zYK%aH5}_X0?g;^y000>shG@%+e$rJO@Qk4!3#7gtqqjkd4I_IY3ll;nEWiZKsIbCt
zUE6M--X&3SwT(%t8YZOhIX}e9HjYWjA+t!RAYdg?6r7~2j4z}SJ_Ric+ajl@3F%C9
z;scOMSGAv&(m;hK;v?NcZYMD-3h^fxJk?=?PPA2rMX(e`X4;mcGuc5vz%FNDfs^v@
zKnc7erTzVfuYdUV?6*I)y|nL{7oL3bg%@@Tr`2WZZFDJJNUx`J)fMV`b(i`)t)nC9
zFj}YX#r|K%Ms{L5Mv@+~;)*CWn{)=6AQ=?K&YX<4nal<P27->F5=D`7XrZuklG&E7
zeq2h|HA=Y~HrtZF9znr7D47RI%lKykDF`L%oIa=m&IBpZFZig<SRJ<MsIMkW6XNG0
z9n1qO1d8ck@O|({T@GW69=D*Qo`58^&7v!}-!ypF>SrJA`|Rl#Kfd!7b+u@1qId7y
zzrA_I_LZ03|IX7J)PKFMF2mhXG7gX>*hM$+wmiv~OkBF4ndr<use7*IOGv;TYzfpP
zCL|cMv(u`>**c@WI&AC!Hz`fXA3ts^0N-hY5L7Wa<;B*dKn5381)O~aiwm`1G8F8c
zZC-r;iQD%cRKHixpWe~%-k486`|^`5TMwLk^43}V=k~em$7|pEL>hO?p+v>I|K8(g
zMz{1Rc>3WDn<qSZ*EM$zs<>pt=of(@d4T2u`3P>uNkXB3$)J;{Q&A`p-7bY1M5in}
ztHZLa6BDd9n~q(XgIyX!a?*(}^ZTPgPH7ZF0uFmg5bRi5&^9h&7fvo|Q+HVP?x~SB
zx<Fk^7hEDKZ5FzX_Bx(*Pb7^&bUh$y2c9I8{-HFxnB)}=UcZ!@LR{5hLKL4bu_o-(
zRD-TiWVoxzc~E<S1h9escY+&k+QpQezJmX6)S`ZOZq}<qXFfLmrSHCY`NrD@_7`4?
zZ0WgKob$!8Gw1WVO)bfL`^kq7<>UwtOo+6l075IUuOMhBfn<}KQ1@h4&}@bbbBWz@
zEOxIwtu}14FS83q(QfxjlA$&%>Ae2xu(#_bf9I+>BhM@>@OglZL@eZ23Vg&LkY1X=
zQXs&*D>l)TH^<eCocfFU4~M1d)mg{C{r9_{sqOUi_5=GjweFeL^0+XErqGp#eN9Q~
zW_8!3$$xwIb2UOoUwHS$#|}4dteJCsF(5n(cbx_ZD<m)EQ3#cZAd7nNBN@U;s0oX>
zU5<|ljIqQ(8ld2v9!hJ3=C;?weUa^Q<Ajmt?*!Ld0?4@K6M#%6=|e6L<)<0)#cm$I
zO*Gg%89kK30>$af=+PqsAnE~H=+Og!%ffBy%*oYZ^B(}Ht5(CV6qKOo7(GPwnG!Dd
z`$Dj51d#)L&ESyI1idi)(3k7BytFxT^3$_Bc0Y8}^cR16{;}<EJn;F!`{|T*Pn0dX
z_2JtdmroqoHh0&^+QT<L^VheIt~fTl>hXnFKG=BSzBTtgwC1`^myOsZu3fui_>9Z@
zm)$#K@vV%T&cS)jz=T9lJuo55Vj-z+qH~MgbFDsyBTySAj=2tCg2N&Cd`Z<|pH4CY
zAO7H=F%WZoz%Br5HKZl3prV}=92kO_9}OpED3L9h?@>=5pVpMOB>fkfU^kC^Yxdh;
z{`UIqe_fykw;bNRZOWdhV;>bO)X&xH4kb2PZFCB4oG|tCcR!)_d(=;8%gN_<?{D5%
zz2Kdz*onAIl6pcWIY?<J!>pIU++0qhZB*E1%s18==NOk6*Bccp?5vouA~C+jxHcED
zF|p;~;)`va3$VKS{9r~eCdS0mlO`4S>cv*9f}|Z5T`@nDY}QjrFS?un6xJM%)gCmy
zXgpy&ZB&d9<`7L>4l`VgO5(oG63wb(>(G2Alv9S<612s*aGpqWX9}N2SA-5hjnE;E
z0_)R54w(`vF`T!FW#V`ds#X5jV^L%Ws?lN!OqYUfRpS1(H^mZaq+18kkH)Jr)CV{Q
z&`+hH_&RW3N6JFEk`5Ll3|hH9{7(pf$u0>7QKHc0!Zw;u=g>X$MS7ZooARUBkAVv?
zjt|-b@iVHz*BmT`<-`T`_3AXPDRkK}l?7SBj+Nitu}j<X9I*u3#XNL6ZJ`^-tJ#Cp
z34nHK`&rQqDU}A>Ye*=d_hhDn*V;VkQf@aXG0{m#w$o{<3p=Ikj8Wn2nBL7~QbIl?
zb7xuvc$mFZ64RxlGRWh$3OXp-p17@@RXOE~^1+YZQoE)uYxc(4XaAfzWK6%%rD<1b
z_IK8`o5Qt(7S}AhJD5|~JN>m?!&)yNmESi!X`)p<$#ot9HqroPhrEjvlMrbL^-LrK
zodXniUrR<WVsW~=^-_io(HRHZ?Rmb^Qn9x&WL$0(jmCnkywn0HwQwy!K#gT4F|(4m
zhM{pY?i%3q#@K9jPA5Y1iD0#yp9q=33`y|VNdPv4M+v4wC3b>OOHOV@xm?*Wqm&)b
zYzogYNO{|4-nH#tFR!`FJABmC6<gGg4}YUR^a8D+g=1g5<?Z*?ht+FN(RJrPq?J!!
zcz^bycBj2|{>Ht+$*<J2GsjMza&-4wl;*0vQ>R_|{qrx=%m-dq?>eg<Q6I`IYN?|e
zK)r<C_r*T-8TG;Sx6@`COghf+5dWm(@?l`1l?)7}OR`y~fQOr@-ar(c-DVagJ*^7s
znX5!6LQ{;3><(oJu)vkV{-=dd9Rp%^j-nISM|Qt6PpBFqgszI{1=H*PU{bmuMcU-U
z=Z6Us1l!=*6Ka6{C$RnoND>=(e;U((QcU*5M4MYONj9AXZ-(D)_g6tMg6rGuHeyS}
zA5M}`6~>2S3g;haK-|I!q;sb4;aX4-{s>JV2Eb+09rnNpfX1e7+PLQt_2+YHsFe<V
z_xbnVQ%_OoYifgh;NYQUk0&UJkKgmwM`GUUJMOqCvLLdWR?wc1f;WJR9|TQ!Np{FB
zTHSgp^ff1`0uh*$im<7J2)GCYj2Hp{8KSsQ#Bc!~1F=l~hx#h*PCW<j-*8HON8R!`
z9rWi99?#t>&r!Fk@2an>JMx<g>1}k%Y1;5y-IzLdbAX(j1<2`%ooVD&304hpIAu#!
zSQaH~RanAp{kKL=0&tF{6A}A>9g{9+sn@G()NOPv9Y<%)QID!`tN;E<STB69-mb!R
zrrx1GK>O1{=T)XzVNLM|tZ5>bhO!i+k%GzVsc11PhKjIF!5u+>3W8h_7DQ^S2-A)&
zblg!?A7Hn`_5!1de~CY|oe|R_BZNC5vxVp61LGnej*F~|t;+0K128n8;1x+nMWabu
zvrG}XtjdfTP4$Q>#U1JgY&UH&THGoIB9{txMP{;f?i$Zl!EMU9TqZ+nbm<ac4J7KM
zq-2s<39V5wne0_zlO%Zo*p7>3r|P0L1{?~Y>xf+~CwX?`j(}(tlK!IpqV7=FKT9wB
z^q)s^kG!LvR-dFpX}`DDsnx=n$dqQfingAn;loX1n$%6|d+Gu8=~9?!9P-jn9P%Zh
zWC&N;0O24Lvqdjfg!A=Oua}LANM%l;oN2LbX--ki7=uZ~%-2GEFO+_o+P1T`RcxFp
zoQU*+=U|brn!%tMh~<v0B18Ysn@sSunk@!Nk*dOqXcVbfrClrBW6auvldQA)0kf#Y
zkpp3*bNB?eI(+9&dT8g)p>Eme88XCk{+yf8_HuPSE#|AhKOq`*I(7;Iq#+p^#<HDr
zrXn&$2JR;8+8!7)pk~BRt?K%uCO6f~FP*PY*GI8K+JV{3q&SpJiP6NMBNLNgmaP`E
zUJ#`&kOBMd*e}PyAk}fWlz@FnJC;UHywcjbO&D}z<Z)5j6?qKM(QgwPBX@Vgf0=n!
zL|_H%5|M~NkSL-@Vcw@VlNbTdiB^Wm=XXxfKCAe#PZt>+f?vv@hvU{{wOT9&MRa?d
z(Dnqyq!X<K9?r5t%`3~KOy}Klpaf{p>tQ>_ehcxls3b_m`p9X$e$o~}Q3U1wsb+oT
zQ+fDxH(of1)z8by`3kAw>g&!Qj=}33_F*HvLLLgu)1W9isBL!9q_gTps*9lzH>a88
z=KnF9x?|z&Vj$7Escl>I=1HyMM8(h|JHK1lR)yt$+`mmc1pdV6X*1|4>M=0mSPDt-
z8$6X^gCyE2!(s;+#l80wY)NC1>7?`T@@92A7~u(ZI~`A<$kXNv4KxAzke>RO)v8`l
zzZO2lm>F~<7};35L7fGOc}#trHqb$IARVRd(s-s+hO--RUqzurD>32{6ykOnf!#(U
z;NYwZ>qK?~F(%TPjKINRNpsUQokmUQpi~AG`PVO6X{%stJNM=<pZw{gpCspBzJPgi
zpiO=F*~cGd-1-J}JBNlHR%vM{6@C}R2L~-M$OOyO3LayXL|LzQSA_K%T<pgR*&gED
zk}DhVt3kx-qHN`27`2_I)jQO00%`vzpgvNU^#v>|g#Q7qD7@|jyez~^>O;MZ7PHBz
zvr@2loyj64_>9mRAdjtS)-r1?BoKVeqFHc?V3N$&$fOVBMcicV!YCL{0h++xKsxMf
z=53`}QPCU(d!}Qkol2Xw&~?|StJICu_uM;geDRa8G_pcI@a9{0zSSerDlBb!<e^9J
z1!cjS63;;nXW~wiQk*72d`?-)$~L8l9uM>d5A^hk&ge$K7h{0scN$FRe1_Xa+!w3~
zW@u;3YWAfH;yLx-r`4a=Z~4#u_lIw}@AD@pee2z4vJULn_R@fxAAVw2EnV{L2LoC!
zdF1BNvzm*lpWe9rL`_rG-8YPyHoE_SIb4bv!7g$DOC8AyIpMn!6-0=rQwPPWGAuD@
zagG|@7<XYYb2%VXO;xj`6g3OhGUFphKvx3habO-eZoxjO%jtlA2EiYbOpI&90%FwR
zCV>nBf^}$WsY4djPe3s0ms9`t!F%5TOKaNHuV_lUxVx?9{l9;ET;zO$V82_ij*)bS
zb|b*u2Dc<kEVBvB8g4^IBNu7JfF;ua3n~2MB~t#J$fwPb)3fN@h7|Vz&6U`ea%NuT
z7M!9Gju<A>lgO}81|>ed&hB<eiAhF-WU%{^<dkH|;IrHHi7tak^%_fJt3eNsUmfF)
z{D01ypmi#I@l?^**X81y=t~RbF%9aA-Q4y8>c@@h>=_gqq{pF4s5w86W)*rZxio#M
zG;MA8@-Hs@1CXdMop@Pow_B)3T-2uQomsw3>cMy>g9VH4nKT(=FzOUhB7!6<ddM4#
zS<u4=2{(La))})CqA~_s17PsKRI@;>Q_JVkv+9tmpmuGTr4A5wMjD0l!r{nm!u-ha
z*oviCQBQh=JaGF%t<viR=+#C8k*Q8(g8m}#bB7-m08zo~nMQZbR{dA1z6HYFVtU)M
z$lF3saW&3TkFzkRt^uC#6nMY|LDCr{lTin$DOEyu6!etpE2Bc5*>4&vjDwx2ZN-`^
zCm>a{>BXkD6XKz^9pbzy**Kx<{5iJ&-RfbX8LQ|ZDJ_ytp*jjTHB3;=s_KlNQT<P7
zRvYLp^#H9<4=d-#{q_oG>Ef{#;7Wvs^E)1E7l6A=2u_WBrePUAS%_H0>Dc;I5g~iv
zF=oWZt-4O@`>;M-`hh|$d;lA0_*xk>?l(BKNR!Y<DwUbNpA&KlY-K2)B6D=f1W_0S
zVG6n+BP?-%ANSlu-y25XnXE2Q=L>zr+uP=fzP9fHmG(CEoLJLd4%3DC`4Pqz=;*M(
z{QS(*3G%^C#G1C<V!e6}o_@MoIwk6r0PZRwWI&vgn2gGD_y7`l_y^R0j|5p1vJhNK
z)L%N`xxj6S8-`1#YM;w@^gdk0B+n#p$2+BZz%mo|RS#-TN%3ds^?sL_oh1;DIdx>%
zW==Chi#D4*#N)A-hdp*Vad=qvM(qbJApSdkN2bBYE#J(NlFr_6M-~jNVx7V`s953G
z*FU*%>pp6@aN_z~@7b31^q!}mQge2{dF1O?mhQUp^6eWQ+$$^Po3=DGHXM2_(sTIh
zPtDMqmMm|Di(ViHU}se!I^-b%=uT<rqS0@&nayG_!{}5Xo3L%~@G!9}Ddl0M)288j
z<cwb9gc^VgoIC^pgI&jTVYf~PZ>bM_K5Dbug&V&5_TQgeeW<S?d2kDC-obm8ytL!V
zXZP)w8q_oDS@mD)M-!U1BhIv>sp7IpW12sSIL>|W+c)$>hV_d8>y=Uib_$EoDvElS
z=<_P3;bFy29N1!Pb5UCA(_7A979qC+HDOc8j6-4C_i%1Ge^_@z(z<DHy!-BRcP*Rd
zrrDq&EA82*DgT%6KKZS93|OeZR+P+ujSJQ@U}H*A6azenhCsSxwu1VM9^z)OvHHuy
z*4Xm6(5|rIdL`VWzCxzhIfA%UEpWpiV`p+1S1Sx#xNDfAOd8_XU-#XaAI_fH_cWb)
zaM$BfL*umTm(W$eo!xN=I+>X!((cXYe^3iPIOk~lRNJHY1EAstw;vJ8@f#9gRfq<M
zn39}eDo1o9Edkh<kU)SexIsIyb^+DzT8=TmIX#{LLh#(bqKJrR1hCOr|4@IS<kU-_
zwf##t{^HnmGskSc_JJdIVe57`%>)!BTB`p1P2J~b6Z4w8rAYP@ue@*)x0eEdo>bCs
zdxJu07Png`fXG4bKCkF8fh<gn^Sa%%JnXh<;@ZJXAV4#EpFB^3Q88F>uo&dfH-58_
z;}z|s<*m2we6+dQS66%WL~yh3+kE2p{j(b0cs{Aozxw_u;0rxfH%zStk_!o0MwW+0
znA7@8MVY-^-ThQ@`O`9$At5P8mt0^A7<9Ulk#K=e(A};REuv26&9xPb2-|Gl+?+up
z!#Va`VPrVh=It>u>`m$*W$2Vqt2GW-mh-`UTb;QX(139lk52QJL%1>u;c+emlUTT%
zJI^%_I*v)*@TVXe7EDKeN>n$_P$cC{^Lu+MQU?sK9ed=d!%)@L<7d_`>N8;N_~|G1
z&KM9mORMRwoA2JIo*aGO@>@1+y!pnBQrV@}xi>%XijvllU(|d3t-GGzvTp8ONuKJ0
zS)+3vo%!%<o(qQ0sbf-;@Z9xl*Q{8(mc@4wq?D|n12-uQ`H35bpWfg$cs&*aT<F8Y
z4m;E@gNM1V;?k@WTL@@*4&178Fpf}|?r?~^)@*p?nU)q=H|WqBI$t=tedBANMjiv{
zJJwEWQm=}X0=FLn*)y+!2tEY8j`?6HwOJ>asacT(8^w}kWyi-ddBb%TuGjHwA`Pz8
z-_kO#EG-yJE0fA-uL%XcdKLi<+qbB0KCc-(1D1-@XkmtOf{%EpP4t9plHNvSkV*7n
z%My=+KSx*LH|Nq!XRh`sF8I^6^|I<pE**GJ%QCCBrt0=Ly7$WI=YLprhb|mlokJ6u
zHg24$AG1}cz`zMhS~18rtEeEs$v};S+T<umd0tRVqmE(@L?L9MW?GBXC*&=Le1C6|
z+On^uMMpmsCaJw68-%QF>Qcqs_Op7D@lV_$^<!O;ctZvN63GsPgHSt}20R8bjNzk|
zR;dAAgYr;jA{>?(xO2PRVQ^%KnZYEtBf)7S28Ty7CzywaQxojCeoe`Sc^#Dv9a<V*
z!2BJEz*1Z|Lijj7@b3VkLy@jq{^-^zZBJ}&srM*7cTA>qq*VO${C)d`Hy^y?;A@c;
z!nf4*`p1#Sq_T~p!bitWK5_!662npK*Gc+>5*S2@)8KTu%?6tdC~C7CvD@E6QLaID
zY^)Gl0j<UGv%#fIr?w9K#Hu?vaz>>?DONPYy9ytnMdyM@@FyA}E{%54K0GYOL;?da
zxAj5ub^?#KP|W0#=BSQ_5T#Ps4C_C-nhIw=Z*SZ2+W!5oy}p0{D?&g$r=DCxg~t)(
z$W`B0&wqa5!slmx{e{bJ@UtrHfXOGs4N^=B7?s}V&^yutqKR0o{^4P(-C)xv5qEi9
zKt_p_@gr?lpdIF9mNRmKKF#?7AYgke#RSsH9?&GXu<F89(D7OTley<U`S#y`dGuLz
z$B}(cxDPi}G^vx6yiI%IayzU3te$H6^)x;G-r4l_j~JY=OEbS2E=9cti^ZHGn#Dl6
z!9f(G&61=*A%bLbb?lMx{TLR-H_5iBB|P{FOQOyh1v_+TL0GU*q4a~ZXFoZ+Kyfxq
zQj~?i9eaG|p}o&O?WW0)oG#jP_kF*eq+71J{z%hD$Zz=1N5B5~_4gX?2<NavJF^EY
z27}QkI2{%vG1(yD86yC4$95El8t#($mpdb}FzM1-*RYXm_q8+_b(h>LHCV?x&hBTp
z`s(6|Sf>FROcT}#GF#e2Qjk^W^hsHnnk_vXs-dXwf;Jc1(oh`Ywsa0pjEl=aq))+;
zZu;z<kCtyg@X(_x?|t~DOO7AhyCrMu>Xn<9?7j2mOK8#^4_q>%enz-{Zr=fy&8WWS
zwxP{Kn`$m=Ei1lkCU)m<KPxPeheJXS2&LN0E|*@=8xbP)TCHXq@*|zlCTub(@6cU&
z5?^5gOTl5J&ZCT3OveI>7c(J^TVh^ex0jwAH@tk@?W-SpsGyLRsYjcJ+3OPSe?&Oa
zzvnsix5h}_QWp8%34KeD%0R=tLq4-kXQU2?(e1LB^iG?}!|6CmQc>$Hh8nnwnEkCO
zSd4_JdCi8GpPkg;RHj3*Tql)9LfbdK`l--#;pp8v={kXBUE!a&3oDvH!7ivE2BQGR
zXoS<<00s<DlocS8qJ#M|r5wB$x*YP>z=OA|V_K=dU$T;$NBynp7%Y-<+w@!J3ui7I
zWn2kiJb5SPPa;*&%@U0Ur$b629=#6!9IGc0mbi#y1h2;`S}c0M!(bzN&ZG*NIgT_k
z#x=CnA$PR@Im1F2D5%r1ppc92#ijjZmbsMlgD+F@^!#a(`sVcAgIvmhq|cjAmfID5
z`HsozDdEG4^%WZ;dD!Wizs>$zwQx^l#^0-k&?I3lwoF-utoRy-NMR@uDOR#TjV8D!
z6rD){R78_RZF-ZoNzDT2;PSWz1{5xvAfAq@E9WD>Xvi#NlH7ikx>J2@mXI&l)xPwt
z$d8ft=+|lzgAq~P{0>;AkY8`0BmtSTvcZ95At^ymY*rVzSX2~i>BwwF0E0ooQRs5w
zGT6acLLsM)!9q#vH&-Sr-N%2^s`>}i&8R9J-v5%qnzGSmoO+A;?W7wh5yo6_+&{Cg
zr_tVf%Etk=57_QvGfw`ywmY!i#%=fVFq4^@o)_14G!Otc;<mfk-1e)mGO|<n5bpoA
zW#VH^Wo=Dt73BE|YhgR5kdjbhq7m*qWZ~&Vol#6n^&5>QlS7o84$Y8e38Znok?X(g
z$TCRX!w9S>rx;OQhds*!{n5d)W)X*@D;KSQ<&kf$nMtRuxvpu_#BfsU6!D6?H`7ta
zr8;3!3mmw4O0ztDntI~K<sQ9z*|pdeZBrGYN%3pC0Ya2AVozc+)GNmB*rLoCPTR(e
zQT)Fk_nnmE6nEnksq7S@+mvL}r>6Scz9ca{O>(<kE^|_%32AWAAn)&-g0iGuWQaiY
z<`gs0&rZdU5oD*LHQ|X9!`H6eeQ4H_ZytGN-4dE}?J~FCy?h1jGj)dCyy<Rr+vJHt
zopfB?v+15Igeg<8t2x3n#Qg_>Y<q+f5HIwKPOHheoXk;{DGw^55;9oI6*vUO7A77q
zc-78QA9?N}ESq8oJg<-G)?i<Z&1Tb@J`4NJTsmmxl<UX!n=!ceypdPmf1U9CpaJ7%
zC-vw*C^Vr@s2rMyKz69BX*sw$(^6U9I~)(9Xv3{ClgWhK!Kn1WZEDcuhzp7hc4SC=
zh{SidmK-6xe&J>L%6MMH`;ZyO;eSmb<3j`Vy5wYtPG5?YmTEv=Ap9<S4KEq~WRRT5
zLQT<;Bxv$sds2E*?<8?T(%huwNn%n`icXh;<QA3=Hg=vCRMN8Aps;o3+)zu3oGjD2
zlThI%b1>)$3eAU(A3s!YU2%Kb%~PL$`_26;Zkhdnx&BBh&G`FwG%v7wM@d8Bf6kuy
zt^b&Q@8B+KU^DcQ-vox#hPq4oWE&x7S#P#@QkC>HVzF9k!^u{w&gDv|4!d-ENvD%)
z!a9}@$W5r|kNjAkXjHy%RAi_QvBHrb*>;XjmLS9p-8{TT%xz1VeeL`2zxwQ+O~D7&
ztXoYt3ESJr)mwW{Xz=V?MTL5r`_5;>8i#J%rM_Q}J6wkB6T7qpd^!i23`uDu%ZjWk
zgV}0#`4Ww}-4dK3v%B2sk&G<QJpsQPU3Ooh*&qx0WL?G_&w9^kkLY2Et$!)-l^)A0
zu;VKVUA}3z&Zo;^h^5OZfq_?&Q{n^4`AU2`FNKoDQXRQB=XCSh0jp=<ecy~V1J*X<
z_cc==*mUJ;{H|Vk^9x5--hAW*;r)BATsQExv14x=xNiF0cg~6ZK1a=ZarG@PzkJIr
zF9H56V{kGk)Js}I{fQ0%D3h6=$mxNlqc~ko<UxrxSDFjSFrZhD(Q32ShIPwq>unF(
zMEHQHM=|3*c#t8MuN%diF1NyS_QCXVCG0;Ib|~im!BJYl9Hn(MN!?BB)!kRBdk`zy
zL%nMK0^xo!x$SKI@p|<H?Smhp8?@Ak59uJ0ouUA@DN=VtQ70jbhv+y<0v*LjiK`qu
zP#5J-j6+4F$k!2gkP#(o6IX$&^(KQ!U8rYqQuow;{(+)XL0+_|nEXkpS^7}fK+z)>
zC-oEq27_&6*gyg~Bf|m4<Dr8xWb~B+`8repCU@A4vefoyW;@it==Fhxz!Z#U!Nrxe
zYy>_^ShNGI4e4Pp_%}>xYOHyC_nwD>SFEbOd41vH<uBcSsIl>jV`H{79=Lnk&Vpsj
z-ne~A*<E|<n?m<(9n~WC9KAL>fA**aD?@b|iQ&q=mk!Pgt!{mCO81%dt2U%&jjw6B
zqGZU>UL#k}8&XqVmODQ*xUQnWH<v-RPWFja@+<InJ6MH}!73xP<Z_xtyACBPT?=R!
zF|k^ltk^HKE-gJ2Dx*vJ4|!IvZjFtN>>FT6CbyqehJibINERtZwq3qx?UkDC)mvTO
zRJo)t)^pe$pF4hZAQWdarJ4R|YBxzJoiJq-Bud>g5R8jg$T$j7Bhv}akU5+pG!7K4
zkN~795C2O}q+lW!FH<OSJEg*cOlNVCmJuZ0aN9#0?`W9cI{o>#KRdK&X4a&(Rd3L7
zZ?UhJ)op(|p>BI+>{GP&zI`-*-xKQbXZETm_DRED*m-DQUQ^F+{`#liibnTT@8KU&
zx4re6y5mnLX!Egs>U;axr*_j`2cJ^k0e01h0b!W@Iw&jvDVS`eDJfo`qBy+pou(R%
zu0#OHjsU;am4;*fW$devf?bM1m{?^jf%|(p`FA~zEX~WqJiG$&H!K`Kck4srtA<@Z
zE3jbxSL)>9gPN~wy80TiXL-Y<=E+m_QeJgspOO7OR0r+vJ9zS#kgN>C{_4q6v8VVL
zJnR<IGvpN&qeYNR27_c#B&!X~cs!~E7{_|GgHc6MoBBkTj%H~;>S^&{RUNFpO{dYm
zgH&~p`W6BptMk;2>fL#CRZ_>VOuv~!t&&w}L;6HvC|!UzP|-0WMyj2hFPF*V<z@1E
zd5`>}d|Ec3K#JuKMg_6P+Zp$eto3bA3vH^CZmuWo?Xe7gL4hF#wid@aT@>$HLVZnE
z385ka2L;DJv(@2ERZ9ArY>+!ni^Jwfa|j5&JMB)v;dD6v0R8v{bw)ys*!j-5+btMG
zxsDE!o5iW2G5lZ1D7-fJifOOSrkkqE|FPuHk4<@h{gyWA|HMY&<FVmgkJc{9P#4i@
z>b>IJ>(p2OFMOo!=M{K2l~zzC;vev){$Bh;QZD?=T-r?LtrZstXF$6whaecTI~6lf
z#h+j+Gf;yE5xBC#SI2g)tpmf0Il34xi@PD$K6(B1Pd<75jgL29b9v*ni^I)}q^&nS
z`shtJJ-TD%71v)kcFfY{xWhTfEMhexIRYe8<Z>(p4GH*CEK~>!unQma@PT*)!R+u!
zD1NY}30|6xU4TQx*#amAIWU}wc9aHK1sV_*L|*!7>A11gGiUW#bkB9SCiWez{)fIO
zRMh-q$?er6M%NFSx@=B<!{uYuHnwW6P%7MjRfEV6&9cjWVoGx(OGe4c6y5Gx&v?%q
zk7)8Fd5|!vPY$G6^noa+LM2~^GOG!8Bt7$-=Qy(uc9Z~U)eFM3rjdu9dhqtex7>Ku
zqD6~Vth#dgxVq&F^KX23*#_xs%?xkP9XGBY*fe<3<)dpFF0a01RL$^lu!p-wsF1>n
zK%%tV&^1EE>Zzcy>VkCj$n}ZqGM}6_T>8HDx!#VVU6-?y9)S173abW^Je0<5YDgiU
zG12czFk4_*C&04yCE4L4v&U>}Zd_}z;Fy7}(WZ9kpa~YkV2mq=yNjrQ&Fz|@UGT<&
zmeqxFOBY+adTdGQm>T9FV*8n=wn_Dh8yPY^ks(7Qn0h7=p?0KaSY<2nt*lVckx$ID
z<u3QmC@$#W?9$%1Fd)@W{%Ufl{;zL;^qr8Vwkd~x8!i?)&tIUD3T)ekO#5MCAsliJ
z2*4FsHxE8vq+#K2#2Zb-ZXt>V8O;{tJ?h0I8_DN-PL~x~B75vob4m)KsI6YLWLRSA
z;F|iQV<!xKO#O876jPJ2U(vXv-3zj?Mium(L(sVlkg^tmh_IH8dNEyr5)3~=%;6Tb
zrdSP)E{BdAGs&EIA|K)LyM$oN&Aw}@nN2YqvSkZoi-~c#kkgKeAk<dCROAxHWndDe
zD|Mo3Qj;X0QQ3~PF0N4uTehxWfB)tUw>_W=@4Yv9)~w0Wf`^{o_1Lz(ySF0>reCpa
z8CENYqzFbOMQ+GrGQcw|>I9=fvDy%?HjkH4gunzveutz0CDI%ha<66WhZt1fW@3UC
ztM{mHGciGn1w~zyhg|0wdFqm+j$d&<1K<~#3rJ;?YyU~W6MRA$kV7X76i!E;C5ER(
z!2yIVE@s>xDJSx^+SnKQSo$*?ORg3bjMeQEY-}hSnTwGhf~vF00^Bs4^+Rn|ad>pr
zJZ)B-xk6naX2EJpMU_BVC_R`)QuQ92Cp8U~L6YB}n(7P$vPXpjcAj_*J`qy~p#pb!
zWi)w7S&|K8H4k%^lt2m4uA*-VikON!tURH#c4G6$!Q0m^of*oSv$5vjd)=y6hAvIb
zk6C_MOCP+fcF>~Q>+bE9RNFiK*v{cIC(J3nV&X&_&C@JGoD%<}<GQPaY{Z-y94={p
zgVq!M(}G>jCV9obGh!j6G9Quf2P0@DNzq0mcO8)wTLte*+6aHw5uVrxGM%JhgmJ$p
zr12pgJ4uO+p>^<x-Oukg70v<NFQPF>ewBa4{o3Hio)sFPxLol1S*=tL<{%SlwmW5y
z+h{=!tPwe|$ct6%NRzbNsUkZKF2z-W)JbaXoDa*AClPVr#ZQ{Wq8YkebLW0a?cP|1
zEPQCpXyIQhwkZD^DO9t*oFl9gXGQK4LXnq*sTXdb`zG`J>S*GuAPBz#&NqO!B1ajg
z%f_YX$TiSV7#^O0=Jx}?p>EL|dWyr2T4J!fc*H_7TpQu}gAuqPyEY;Ye{Bv1e{GfN
z#L3|=Q0)>K{8_lm&3D35ZGbE46Bq4-Wu=bqG-6@<<rnS5gArGBjG&e3-!9roe~jp>
zV>{7Sna)QT_s4evddtTxvy5sMEx97p*Fv0nuUA5fo*RBXkD^0Px6`I8(~Z~7(XH1#
zsC!YTGa;HG84Ql9Fv>MpYB17rI#D5Fa$W3DCab`ekmQJKgj*nx9!<n%ciWMSy>)As
zbZlgzPmiZ$3p>UM`(jzyk;leG_G`B(ozpQ&fZ2!ucRg94oj);lS3Db&L#RN5GMU9k
z2=TkRc*H^|*PJ2)e=rB``=~Y|tLq51555ZC-Kveq=sJSkgSL<9d=5sD-T07V$f!kB
zkdmbB;Hs%12ePb?WCg$Oc*8QoX@h7W{(Khb)J%FG#c62{r6oc+y|2GIjo#f~y;7ZC
zN;j%kmZFT|UiRm-QhG1{M(^nl-BZg<Jqub+f_8OTs1M>2a0w>6NwSg1dZWz=B?~Wk
zrGVe&)Fbc5Zc#)_pfYTcM1SYRRn{SZ*OYfQzqJklxMR(c!ZZH46GgP=P;X&65?g&V
z8!4PxQtR0V8!MU*v$WRlw$3b{^WvPfk;Ik9Sz_yjSJnz&u6(m2w{`L20n6T?^H_T8
zl6wc<cLIr#1D?3>@98YZRej?L$=Isy0ygjrL4Mc$qIX@&Z-KgEw{Y=@h2%$VMA9FO
zz+G?9Mre#Pz6!fZZI$VK1fwYJvSYlpl<x$cK0w<GNv<}Fldl7s1Bc)lxh6#JQ8fxJ
z!oX8<y&i)bL}gHPW~AokBb;tlqKUcSnp&}|mU^%0f85^@%g$wl^<Vk9t#GKv6Ldx6
zU%pUxp}gVOXo@bhP(*fyA^W2UamoxiJ)0z2dZI`uy_Z|=Tb!6}FX-hd$Sn^S5WBBD
zu81;P|F1|gDBP`yS{CrqiVdNpMa>boSy=K!)Ii`NW^T2JN7s%TkWw*Z`V~F*ZW;ez
z{*Xs6oxh}J_Ob~>Dk_HDdeeq&Ehk<${E95Cof8_F)1&v$o|P>#F4_D<R_cuG-m|8U
zzNYf>#f<|e_b;8;f9&Kn%PtI+4m^2y1MZ3Ee<=an(=ZJi+806+Ko(~^qO!Q_2!$*}
zA`IT|^#||M%0Kb<3%a~7zZqRYq4iJl_w&2H|4QtAGW{*WWpFVc!0<%d!HU=jTK8vd
zL^o{&Xci+B7Dr|ru7une8d;non0={IQBhvLUhhf?=CM8yg6uKpb;@UxJw>Sq2^OUl
zA;GAqNcI%iS$><}>9MEh$T<j`vLrXoqLHZ_Wz}(U9M6wI!c2#IjnO-pxSWn!m;Z8%
zq%)5x%SmEMQ_M}@DGQFKi%3qAK2}e)4twL?&AZOGy?O2GyB^4T@<}R(=A1qFex#U=
zx$MSSWA12M_V~-se|-2F@jCUZRAI~}H@ZMv`^fG0@6$(f<laB2{`>1XwJ4!yb8d2T
zJXuaWpw2%00pN*vHp@c;JdsSwq&}_SQlI6g{lIad9Jrv6OCI4jl@hzDi{D=eB^a2H
z^#||MO2qi_er}idWp>lr{L?RJ_t-<b$M*L2&#>-TzJq^j*r;B{v60HLIcDJXzjYe1
zQ2jz1VTq1tKL%ND?ic}SzeyY6h>iF==J=NHLtAA!AHjH&TiXdZ&jQeU8mzoz=qB+0
zTT)U;5EhKXogjD5b=rK1Qi9#?F(YV^J{*ilOh6iLc1P%&dCGVkzzKZeG9aF*&m=qo
zeJoVLA~q!gP^~08rv$&kmF`4y7|oFm_k@)8>zNNOME*MS!AqskarLJ@KR3?ndFPZf
zecrnNzAIne`P}{&c0c{RkdKsw_o(#kS5zEYCQ$1O4^-bVxOCK|RjV78+@sF?_Krv1
zeCN=Kb4;&00Dfxav^WYd04+ip*FQ}=->_85VOP)ICzk-2xWU92^jSV(=l2&*=kI6y
z!TYq*$ls6i68?F<KA)e~|AW6D?DBbjGuryo@p&fwH54iarO%;ucwz3wZx(o5#)Jmx
zC8rZsrB(DNc+k%1PcX?nc2Aw>b`J^;Jc_A498#!)GIUlcTLwY8jINK?%OX<Csy7R@
z`d?^ch%I#rC-K7Bc&Twm(J=~XBPTV3Cu;WWtgol5TUv^G^@>~_jeCj6z5G-vm8M;!
zM<lzGiMvCONP`TJ`~g{Sb22@`f_xW?T@l4V6qVv-RDY;P!~!xrPn2Ph>}L7{+VT`J
zeF8|t@^YSB*jPSx2~u;OzGgzjw7G3NYJ{{&cOg6Hr}D^|akuY(O-s|6G_U{S`+j4I
zI@7KzS$*fvZ(JiBZT{tpBa0$K>n{L*czy%N4;Bgremu(VFG@DQ^ZvqC{(f@oelPkw
zt%M5=pHJ`dKEHo${^@w1(WQnUTxVdhcD{o#d<P3Z=QC&+2)bq7qAJj>o20Xh*91A$
zX|vhwaz?;N^n!!flLX}I2zEVkN%gVxrvJ*-(ewqzta(0gJgvx~W1+5CJ`wfLSCK~a
zXDzD;X=_&@p=kTjC!Y}SJ`zhL(o&1`L|yVr+isRr^ylB4NGbxXc-8<vt9Fv<H*05&
z;yN3_>||vX_$9ZKX*KD?^&>&kk1&EuM!6UxnDka?wMI{xV2sV6W71ulp@v(yplDl6
zlhbB65uc$3EVwgIC+bk?jC@#|f#~QcaRs)8ym57?_!9EQbD<GU4-F(nTVk(XIR#$H
z=ndpRB@&1(q^r}3FoCSLoM2)v$lb)WL<ri%#9)pm2*De)ySfh#yE<J0m}V@GTobb$
z-mGYPr0nj9rj(#Fljg-MF1k3qyo+cRrRjYF-9im5-Lk{J-$^wuAE6%5lFfgeZEmoS
zzkK+mmyCGuzw^$^=ADZRQ+9)}6r_V(f6WH;p}#^cXEqT{k3pA7%#|Elhilkc$gwpo
zhVK{606iLEMm9s{AIuPysZoN6?;#EM!}maIg(Pi;xF*i`ARosFwg(-prJyagM(Q8!
zqKfR)=7`&e7oCGvamh~ou^FJJ%UK)}Ied*OQpaaNxoA|2#0)Y@>#>UwSY0Rd6HalR
zBWhK{?{EjlD~ywnM9bsYlS2KB7FQ-B>y9+P-sbS5n}A#L5<5CDjSM5r4K|?DLz1DW
zA+7>r8O@RG-avWS8^tMxOpLaHS269ai>3xqtYx+Ha4*sZJn+!|uk3a;hn||WdGqh*
zxX-A6>#h0=`rl1+$4vo7(5@IYb8iQzS@T#SO{)V&sGnxk%=IH$jbIUIF^(;K22Rb|
z3^l~4-IKZN42+t!8ET+mVTL&W)n*Xld#I(eXfeZu&i8~pFl=EnFl?#e*dk=c?;4bk
zDsOEL#u0=%O?y<QvOIq6ll=7>k`+5Q#|>@QRj3K)INtT#oJzD^SN*H&xtT?t%V+4$
z_f$zvYBOj~0j$CE;`s~}7@^S0=h+Nmb!^Yt42%zIGt|Uph+DLL2AM%lo1x}eK0~PM
z42;gS8ES<xZ4bd1?6nyf<k$=haxj$GF3RI`r~_CHxi$xApp>R@$X&F1p??|w+_2c^
zaBI>}{QN8cq3f`=<K7vr*Xed*=E~>@D`Ew>*9^RrR}6lQfAUdyuUycYCWMM4bdxce
ziRcq;cC*Q5H<;{B#H@^7q*YX)#?|GrQy*NC`9A9N*<~uii5U+dam6+vzoQQ%vw2vo
zgZVjl%MttmkClVd6Mh3#6;u2?!D`A+oM6@EC#1D)JEg~{RsD&5jk|Dw)tXBc<J6Tj
zMg0<fo+PHLat%BjDzMmHA~K?r^#+5<nT(oPug7EXyG&-&$gtgP_CrrFc>IU~5x?D^
z?ic+i!Qiyd8&brGpY1WGhx3hgO6Z2e4T(eWw0Syb_`mja%ce~&^pu(t%k$rc6wJ>e
zuS>r&YX3<~^>2bSX#W;s@geSI<32>Bi@c*@h&PHM?He(omTSM<?!bs^IEGMb?4}{5
zg<8%dv^lELe5nhqwEqS7+s=7}Hb=F(N1H>}d5&t%CA2we)PHDm#JB{XBf@cAo1=y`
zonhD_#pY;Mhq6k4AP?ps3LVwT<Xw(B6#Y>d{#I$Pe#c&A{#Un-QHHi&ZOjv_@f6%7
zu#@@`!RwT_ua!RFHn_EnqUl1Gw=b2k`PB6yilZUV*xEYMQ<%f4<T2GP{EAu%ZFL=~
zrl1SJ9sL4?Oimp=HQZO9*3KKF4puFpS%gAKbVSr5jN3IQ)B&tZ0M5{httpg}8~B<B
z)B&v00k1PIs0gJ9(D3t!r*R$&vL;ggp#FgxW91J~x`^SOrdnz#rvESH4=5miQ#}c|
z;IvVnd_Fq`S=b)#iW}q>+=NcI3%jk=MgV)(vU|1QB_3D7IitKAbFlLaWj8oc9YDMB
zQ{r>%^y&xv^e5Pg^0W9bMkBV>kLueWM!X8`+M@9)+^kR@|D+=H`-aV@eU3pBpMxZ*
z6@<tPyv{~@LD77F>~->Gq#xi3KFM|kc%t@Qhh7@^+hCDwR<!akN<v7lC$dOP9eora
z&l8WwovJ*As?dS7G|)GCKq3@!Vs-AmRyr(ST_-#z<TO^y74ssV<5k~8&QHL4dYtA{
z?8Aggu1u}lBN{=lHYK87qG>wHocMd-z=!4`!&XBom6m#V(V7(I7I+(9nELO_d$r|;
zp1WJbK2wLUi1ZQGHI`o`W<=ou|2vC!asNB~oM*aXsAiXQ`Ni#WvTy>Y#}2s-{6tp<
zZ3d2?Z^!Txv2iAI@i}&%b-%M7ts-}7>%~31xC!u9CJ*^~v<mzac;b!GKgIj3J{RwU
z)X}K;D}aogP}j3vApS8hlxl>M#Y`(A+r>n`*=_eB=hukr6dl^TL_2lF`c%Z3E=PWN
zzqF{dqxj;M5$evd18U0u)v0krw4sObq6QL-3VB{Y1F#2n9s(^%ZtNz>o|cNdMu*Mr
z@u9HNhwVWobgFM-{#eF#G>N4VqqZBC$jdx0xKUO^1LKe7^eSRfZRw>0@7-|k3s17b
zk-mrKzWMS}tuRW2EQnU}Tt52P>us$!-w7;dy2fVC!wVSIK+n^(6(O!`Fdes)^Ki`z
zQVlhrvzEqZ;2d0=p@zJ|?@x$FKeZW{wxZ2YW9Bo&^>J+mhH=^qqp2G+a8C*sM$D4t
zb8sBc<`~_e`C7VjBw#wj4edWF`w+u-Bj!0SRAh6xd=`?z;`nwckZyybV6!2h$-bGO
zE0{!zP$qR6(5?bKJkZG_-ot|>BC;>7xKOk4x-i5*K<j^nW;i|`$z%~t8I5sRBm^-M
zWnaWxHJLZA7)uLkt`z<rnI}w(+$*ea8#8Oj;MwT$@eTFc>FsdvTtU}4wDv$&r}UFu
zeM)^peNEjBrozswOOqO4EA&7G<<wA#UCin2^X2sM28>2;N{&=qWJdv8Z}{+Sz0-Qb
zTJ7CivGnY2fuV{_i^NPN6X?XMh+|&i&e_QPcpU}?Q-C;cl96Y^y}?@5l-K7Ba4&GY
zGL`rHil)$JX;rH7md&4*3^;b5R#0`%8>O>p;HA$ZityS#Ua@-q%h&erK5%H){#T@J
zn|9lTb=%#mRxDo=tFyXwEjpi|i1nLqcoC~m{P~6deDnElzx?*6mr=~B@o4Ez&XbB6
zmVzfu(r_$pyE1Nlj^hV>uoQm(w>XdJA~Vtb12~2mI>}7dumH74cpabP(gYsb|6UPX
z$*Qdww=!8Pl#Ug3w5okEW&mH(+_IR1_wwMo?i<~8R15DF)53X$65n;Bw(Af03_W9<
z?V=fIWqVXRD)@sLXytu;hCcBb;DJIv5u6Wu;NElC)!17DUPo;dUdPJpb#j)!e({P`
z?a}CS+<Lia&$Q}hzG6;nMI*RBdV^qQ=r4@R>)CpKz!}v}c=d9&o>1C;9beA~-krl?
zq-i@<?NL3{6gwfSliI<hHv1%`_Ar17ojkM-B+#5g0WK8<S!c4!X#Imm$Y{T$*PCUO
zF_|HVSz&}$E7@UMb9&a&nHdH1Bx;sO&3cs3N$QrV>ix7;>s2E9$47<>hsFzoc+Zkp
z-Bt>^$n-=Wm07acl0~D{lboWYrP@*mD)+(Q63|a0B$)Il3fJ2bP-~YEa~;7;nwVfe
z&eKyhg48y{Z4o4U#p}4(##jzmyuvGYL#&_+X+Li_jnj&}HVAuZsaDvfzTT*wUb>hU
zd(nIbcP%=~qS*Zy4g!bgaXgMDEno!qa&kSNdogMKzxaK|z3hAjE+MoTs>u#*hIsCT
zHUsknXfsp?`3!OStnGoxZ*7K}n1qje2DKTOgwSTF;l2dwis6(t!^!vzb$kZqYt=Tv
zB!uRzWpOucjylZ2Mrhk$BeYqVoYD3%nw-K(xW_gwXS7+^UbR_9;|Cj|ITZLT>QL6R
zMw^9u4t&5%RMWxtm=8TWNU9Nm@g=i*x(uVkmw}2y8*zu+bueN@cT#e4Fv;lA2W@FE
z0MnvK!PBxGh0LMY$?DSten+VtOL>Z;Ly_iDWcBN@+Pm@*G1p;Ejf0ip9eS>FYGB#C
z@|ef)(t&sEJodV93{ZiSPx+BkAo5C>y^gp8x8ibR6bOMY@8nzx))Tkrx8lU$bn#dj
z{**e!#=)olq|FhtCN=*tpM(34X(iNu%n*;YXft>K)q!jcGM&%BAg>ul4DyitQU%}X
zAU<XxY0_4SYl;{lHuF`+Vg#fBOh&8{$0Kb9X8rLQ;Pn`z%@D^#J_ENJ*$hnU|5ZDy
zGlq*7?E;b^>eq^A8(p*uS_K0RyU=2OOc#XY*pBGDg#<!29hO0nJrLQ5qBnGi*TV43
z)MTMq7@I7jjzoN>?ZNEa_(-(pg0%VVgS^!OW;_CJ{*(MRvg?M0GHrs(l|u9me~O%*
zhJXS(RSRgOpm@=H*PEo6P{)Kmt(`QSsKcQXOT4(>17k!=G&>X6mVe^D?e$aq;SpD%
z8dLrDwp%VMsTsOgY#fkv$D4=J8dFwn-qv)XZPUZ9X6Gr%N~CsV5K15FcB0bMkIIE!
zWNE0PTlaKiB^Xh(t>`Q+ufKaQgF%+`2C26pzgNiSD(__%y(ywGXh*+HgXjlOxB02j
zX!rZ=Mx#{QZG5*m-NbIPfq8mf9jiU>0!|cA5FqC(Oh82t??l5D8|L!?JT;iICtlz=
zC@dE(T2bOf0~yxnvva!#ke8O}D-Nq4CgfiAM&zFNW(&o`8WvBSw7AcSgiK$z_f}O6
z8eCN~aA0-a)TVVkHkA#RSB#qGzEDArfEgTcOl!b%586uUv7*-D&1y)THng&GXsEL4
zuX7%<588@kF<Fa=05YtjO)t_PUhkV2Y=-0yDDLQPQ=H$cyRLjhuU`FZIJVGjn5`c*
zi~R-{ctZbwy52zgd{*!(09EknSgo`t>JsY!(f?B`99Ks&bmwf?PPyv;yIIcK-ZKJg
zf}4g7qrt@!CoX1R>H}4S2Upe%7+CW^JLxFX3-0J^?Rj^xdS>F)S5F+bVBuH|w3U!~
zT81O%6JRnt((x0gav>$g(Rc<1=M#@bM=a%3E)I!Nd52AMe{_VFK_>Q$&A}t4e2zmH
z0bVnmQMuTmyTN<Wp?N_M3NU%xfLA;8F1!lgFQs|tjWiFvku0nV3su0P5y|349m*Pw
z(sBzP;J_*<<K93`EHL1shBL?zH%Rjaug#q_Z1?bMT4v5eM*1cDE?NANeaiItc=Awu
zb~BsZM09A2g@Oe%xU(2cy5(s0jLBn$K#W8%CvU~%!z$vuo#m6Nb_}0C19L0(!`Ci<
z)-i4#rpDY^(wAbL%wpYmeuKaYS;Yi{xg3+`F+mo4)&$KG@**eYVz5T!x8bxC<P-2{
zq=zhc^ai>`vQp>e3Z5@fkoZpLA_$s+r*1$6!Y&k{BI2#Lj%{ihYpY9@PMy2FvhwnC
zn2+p}&FGDG9C_fb1K^-0qX3A-A1cz(FJxaREh8f>B+rU<CZShJAB$Pa3hczk_7Zy%
zgvaob4JRnPXfJ<+<XLg--BQW1cW|Y=w<})4FF{EeJd)#pXLf>)N)|M1l#Esp%`(%`
z_GT_>l97s!2!H&V`}Fp8lJ*P&%C@L{uPbjZ9}x@xt?5@b4^U0QSx%w?)Q{QiUZ26}
zGbSZ^El4+9?&5&$sKJf0K^S_xkWLrm{sYv~X@FKlb7sxp^g-!82RcU@r#JMj>z)xx
z={49<WuGp6oK>9I?b6HVEGx)J?lE%o)z?6nA;<BQcrWmmRlK3L#cV;Dz24%GQ1m7(
zcU+9W2xMuTLl?}7{X&Jb^2=^nwFr5+(O;zR1M?qoyfw?N{lFtWoYE=bta26Z86Cv_
zulfwZnbOa?$k|-fU;4iCqbZK+ub|0^=+){Irz!ifQ#(9EeL_Bm2hKDDY92jEjCGkz
zHnfLc?n8kBZlBjgbX*9}cf~#M`i~&bwP1yNS^=M6t?ahIGqs@qsZd#2i0)_K<)z#2
zbQT>NfeJqMkI_H=Axdt91_JLn^os_yfBQWwtKJFG&$H?;s-*xw`zt<Ej?V9h#WnNK
zM2_*#Aoo`L3>zU=@ez4lN7y=z5RPF)4txpww3YvR7Wjf5<Fgdt0d3e@bcBH52HzWB
zCzsDMko?$n7MMI8WB$Wtp$pxx^t4%Uig#hh)hYXhYzl)BvtOpdR3+wTL?NmL7Bd}>
z!v_(3g~11Z!#m4*YUA%Lyrp$*X1x}9*ILv#QMBW8YE7CuRHvAm9tKpjJu+G&v)QmA
zX(^jc=oXuudzcj#<;447PpqFHR)c;RT^*f@@pm3pk7e7k4oNn+>B>Xhy^<Y|Ta%1Z
zN-{w)4XjZzp3FgqWf4b5f(%Qu)wwFeXjao%<Lcs50y$u#SxB<w&LezhN!9V+j|%ri
zrivf`-#uetrw0Fb*I1kg8a$7cC@fwPJt2!FC_I(`Pbwh5dZ@=bWrCrj^*`^FNx|MJ
zkE_L-Brrw-CAE<C$%HZmNi=Vs(9lOHze=t0Wu>ID2I<m-fpaHUMAu?ngRxfc_}a`*
ztT0bAV2W@B9$%(C8P7z9hB6hs4l+e=l2B^Mp$q>V%rVp^SD?$N(NqyO{#TBAEGdc+
zD}TTVLjqK<Zx?=z=<CJJZIi{<+MHtkIN|GY7nE`100S=Tq4O)u|ES@Z^ey(mx|`xT
zhO8_C-A!eug65{^zQ`|96K)zKg^tcW2-3H$ZTnmC6uZXr?9o0^=%Pn2W`>o8nSoWj
zU!@s6$1?>m9k?+>#lX5d3rG-vLtoM(@gDugaZETd*y%de=L7Ctxlv&;o^*f%B56F}
z86<cjzlyI$mK;C?;|FndgRotgSwBvQY>!Of*pErMXGUS38SD=K;MrxngUto_!}lZa
zgcXs13ft~vQm8~o@OPKYW=o2a?NTf*u}5AY=nGb%%cIZkOGh+T^ufoP*xlM4?ZoS>
z6dj<6WC5y|L9L8c3q*5cI(a%6)ObLXB8efLAgNelEf0!OUd+;oGYbn{s4zz1cAm&e
zlBL2z;Z$oLYbdl<{pYKuR_9Um-)nBA%F|h`wzHJ}cqXqk_v2qF{kvU$d%yb4h284v
zGiPo&_r&H4Yub#zef9C*et!Q;RzJedi_WJw?*RNt$+h5`>u^y?$kt9rg&Lu5p8@H2
zJ~Z=7676Qu%v%3ak5wl!yhl<k{73v8oo|6Vk$?is^^221`{g<mGOzF#2stR0v?i(F
zsh_s~?Vr9@-#`D>ijKA4C(+kX%4MKms(~*)5btTb@`EqvX*{0n7xe;m20kR8fkqP`
zu;&tzjY^tFv?^#}<4=YemaG`iMV7VZPcZ1wtUihNl+`?3zvI;fe?ezPx6=nI2(T_j
zXw{Fs;t@~4oZ`MtG{+MC7u3H#^I7Cgde6!YRa<G^>$HT9!4n(qjJ*BfA@vh^9{RUm
z_(FaBaQV1}CogPxgZA16R&(q<b=%Hy<$LJ3Z;-~&o8eS{@R$Etn-ar2Ucd6kwm$Rs
zZ&u)|q1WSH6xsmxkElaoOg|roT%`v7{*BuEPjMSNp6AWuE&TnPwD;5a`|&KI9b6i*
z`88?Oz@-ta^n}<77$FVf^6Cyg!)1`RTv}-wK8mTdj+L9?p~n+A(G4=wpO~2K6~z>z
z&6W}n^SXO;%qY6h!5eQ+LnTgmIMdwWjAsToa3`+r;ddYop63G0iT0;JBB0iQi!~i$
z3ZTOg(+F8EnJ{$!&L<8${w!_z;`@Jnv3ze|MM^PN<Ths|r4--c)R*lXcIrRDfBf~A
zZ`7P7no1p@pzL`|idH4wthTF;+f3!o!;_kE3I?l1@JG0Dib<g&T}F<WX2i299HP;Y
zA?0=VC)-fInGp<TAkYv54-N(`#DTs_Xdp%`$w+RBxi)bmRtTnvH}(Xt(k`NcMHqM%
z6D#10KE)y<2hP_b-nJAEn}h<2gvD4vudw=^Z#JykyAv(RpM9a_r_%=x&f0m!^Y5#R
z7f#>4bGMTA&NH_@m#8GX@%)=-CPxk{1)u-c^z!p<6Z-c$u$|6qdia60n?XxP_(qPy
zFJ~j@a)p{+LQQ4`6_#d{!J_q_Nw(1>M%<n6A{q*zK{RNAXmb^^?}|X*ZW)-T4wy>K
zOO-}ypQ_I6F-Ucfp;?Qh!pODi>puv8y71%G>brm`%gD|LOw&kD=m}XaxCPV2bYHg=
zJGzCUp-g@+ycA5tle^F*lqBYrhZAE!WDK8qD>}s?+1`K}ad!pWLEImNCO)hv0}0w-
zmwhRE`&gq7Y!L=+x$gOm6Q8-Z=iCQJ&ssM9xgB?ph<tuZZTnbQwC>TnHje4@_O7R1
z7I%dontaWs+<}dy-KR7(Ts3q2x*hYsR?q)-{FPtTnX6vDEVK5?bz^qC@gCsFDGs=v
zN$Ns9TqMIQJBZogMe$pfTgc25fE$@<nFvB<W?KFJG*l+ot!S?nZ`9g3n#NEg8d2jI
z;bG1#?l*|~x{J`P2q$7G=bGos9T2wO`uO(U4^%Cmz3Tb5zWDXScb}f{z~xzYZMtnO
z9WG37Tsrs4#mPlutG8|Ve4wFh@5;?-Sq-7-6JN*97pZf^6^Ni`ve>KB<??uJ86tX{
zh_+-YJIjv<J~|9w9C}SbiPiY%MWU98Ea(%EwP<vLokojcU^(&rBFv36SS(Qj2ZZBz
z%H*dv^uOt*`<C@DD4Q_9XyNqt4i=7Cx#!(0)rfqgvGT0?xcb$mdCO{30{t5=8F+o;
zrm1~OdbqRyba?W?J$nwns>4oV(PB4pHj-ffyQ2+2@!(u^Rzzb(t%5w(Cy$4TJ2VoG
zD!&&W7I$?C41?^S>=F~cPz^1Bab7=)$MKX+R6~yp<+$)<H>bq{Ey(9}0$pv+d?&8i
z=@j*P8=@O{eo1-f=8GMrCS3#9s3S;c&reLJ>8=1C;3c5wT9Eu_zgG+Y`4v5(_M{VS
zk)WB5-@C^wd~7}-TGe^#EHRzlLhm{67xqW0<n`*ac(_bC9RwJ04i37u5<I^G&wfzs
zHml7jm4}T{LIR3K$tD&>f$U_?a{bupLqhKQtb12UWo_qgo?~y&S++imr^rAy!8gmY
zWuPORXF5Xr&wz#k%N98Tq4XrXJ%j4g(0Is`NrE&j4fWzCWn|by6I>%Z0z90t17lbp
zY?fkH$cZ;d(LxYi6p9&EdwrBKI}O`&M1iq$^i2G;Bv>%CcaQ#Mg~OVL<<kwe%#^f*
z)ZRsxB<`A!B&CPdQ_`?UW{mD`u5|R8anpr$d3mM^duSy6o+iv1|3QRz@6d3EonR3^
zfr=Bo4mfe|j~V^s2--j4S)>*`?n^?uX|#kXz*aenVQBvUarPwuQP%n2&+j?rzE5Bn
z1{h#KL_`EcQ^p$wFEkQ0L{Pj_^UBo7%&e@;GCQ;~*UYun%*@IzE$ucdYs*@<+HyO$
zd)rdx@%?;%&kTpU|Nr~G77h&K%<uf(-_Hl<9G(2oID)g-A?m|oGt2Dd)v@)H|Mo*O
z7VMYJ6>NdH1Y|z!Q>+lbT?=u$3en#H2<?E7X0_QI4s+Ku*)N#=X;~3nQFjmE22xnJ
zZfsaxw{F?Ca3m``tFjI{z3sYb4JaKD_-HKrKT;x)eVT}fBmQ)_cN(r4y3lk0g2;d*
zks(Slilw|wuYTA6+U>hnE@-&CWbv$H2exilws6<h!H<s@?{jQcPv68=Y?3U8?!R<t
zRXC@4%F;XUZR*jxiznyh2W~yq#gui+ywxw{8*4|^|EZY}4tV_m@})Ym%`j_Z0cAom
z^ioxo!2|F$i_PUx{634<ZL&FRXsbI9ypgv_$HgA$`9xk%D>*E~*qt7^Z<mzpf{D{(
z-!`6nQ2PGlAe4A7S|BBHbmi3A*55Y6z!LW0>Xtwj178T}kwLF16<je0r-gjU2pR$&
z&P5ok5^%B+U)LN@O*M0MoG2&3qEc@UunqlwC}B=&iiEy5u7}azRr1Hr;~we{e6_|e
zJ~??xEqVOGL3d1f>G_AnFwl=bEh(vgM*Tnz<KQ~gFJ3(Pjk>OH-*12Y>WBELAoTEb
zp(F}uIty4b1)ts*kTNq|vK+F6lS4zGA+*7rCu|{VNyZYm6Jc%e{z3xajKhng%;J+F
z_pN*2+T`rwhO$0OHs1T^5zO-2jn@PQU)M#QC5kuS+7Qf~F}ds5;X{XC-=qJKVCc$M
z*1!bnT{PaGg!QA{T!r1UB3cG4As-qtLD-905wjFXvG|Rss4&_kpq#fYA7O8{t1K>I
zN$t{*GO%$Pl{9RZ2#%>-boL*AKg04_h#gdSx9)!N@y8B7G3vJ;Mcp6jCoK2}K*htg
zud1KD^X*r!v%FWor}N~2Jv$mBatU3dehJ<9Ht;{YMTZM5en?~MfY_bb$@ZaO1J6kj
z1Fc0Gt=7!FqH1XQyt_B6A8eB=YGV^uw|K_+c0C~O?VXCx;+8ExyZKQM+D$BOokZa7
zb{U|(?Vzyj3I+F&z+iLY{tfy}U}+#O>vf3YgpW@&KKR6Q2U0Q`LutQwPQy$Z8{78U
zd+083wEXS*MPJ^kzK9Av4VRWsUz1=84Ugsk!NHVn1yFi22x|n{EoEov5L9uXKHlL-
zw=yUi$jG+R6|$D0=Hj=9+h-&kuma93l-v*q1k|!0)JiB;@rXLT6V?!k3}-)4TnU|g
z`qk0R!{2(F1s;6*+Ml+u-Rl;NpK$e&nSd$z(8)5GnPvW`*NuN$e)2b$xC@#8FaNzy
z{bQq9&6T^q`OUhP*f{el^qR1<-{Iz&<dGbwIS<TLK7T-GPse2J=~7lwa@e1O9_wVC
zJsENkfaVUDby%GX_9aiZ(Hx);AZ>d%dCG-*!R{VuB9Se))5L^E$cadZr$}VvL0_!T
z?bS8+2pd07opq?RN6)M-IoW-Bj~Uo&m)ba=o%|xuGaStBCXWpEZcyzA7D;OEb>nl4
z)%K#9H?v1#1yXOZcwleCP$!+U9jZsE04Goi`73&Z!IaEwcEq9WKDWv4mQn*LpzgHW
z11L}8-CgZF06o!R{duEsd;{P@^78<1SAiVCeqd{8GbGQaU;48eD%8(az@wg3|K0ev
zw{))4y_`(>=BktT`~%+ZH|im$n!`S_;Idf6l-L(1f3PaA(nxVfl^HmtdFW`2fR@o8
z&dQ2_V#<^rahgp22>dG<=SLs5+JhcF5d-Mk2TPuMCw7&%F5wOcRXFih91+}RlvvPA
z&vsUso}B9&r&~5HxH@c#te&~^K=1y|1In&jG5hkS#h0zPx@^Goiaz^2(<e`#Ow>&e
zFw6D#sQ=mY@u@p*W`opcufON35ASBm=4;howyUc81z8pnd7RWirFopfEcJ0{63TFE
zEfW;|<TsPQhWng?)=}6NAWi5Y@@q*Ckzb7B1Ng;lJ&l^zN`9^8wQ9eQe}wk$l^NVG
z-h_XT=&Y~}qk!Mr=2`Q4Sni!8CW`FYc{mr?8x!Q`cZi$>5ueC51OQnK2t%hQpoG$V
zKo0TwkahL~_^YbU1(+w4!nTD!2`hw0QQEIEiIzC-5Ba_EVjKvz4AeA20Z3cxyZ0V9
zcgec@)aldJJ<>B^OWyzdlaF{@Q(f!VY`yKu)*p#ZNKM}J<klyTV2(5cUeUm&@EI%-
zCTLlHt%n2SN5qe_9VSzhQ38mZYz7KeAVmT!hFyY(D@iu57a<m}Y(s#>);4@jH*jwB
zHeHYqNpW3>3=x9o6^~?S{Z+@hGW!K65#LgOtVhZ8-g7t+F$-Rag~}}*Rc_(ub0fF^
z7m=0(J00Ew)#i}F!r8BNpJCrpAcN5-91{G20L&#p_Db0{TNcIk{C?Rh2MGPctE;L5
zESIAL`y&LH7LSCrh7&`wOtaBQ5F<T?Jp=Pw0>;VZa-**TsBPrcV`sy<&stBRxbd=~
zH6xZZ_ABe#ebC53llqAxUpoCqZ20r9AAI(2d)UsSA1k%05<9D^^O7g|nweQF27vMM
zXJe-x_{#&g&@8aO`Y>kULgcPCTIiPrfM?qQxG5Vf6uL9nDRz3${<a-;54_~l;Iv8>
zm%$D4&v?L?!%tx&6H&@G#S+&lR8Ol-2of#c9}=I1Jom*v&R`;kV};Gl;ycryf9>G2
zAMcTho;~{J-^Amw0+8%27uTHLe*dEwu2!i=cf}1$Eu;g@p~b3L(Ln1(NjHWGsu!!v
zZFhh~&e2w<M&heIkj>Q`T?UGjbhsew5PR{tM`m8JNd>Le9_jtqKcsoPo{Rl1+BPiE
z?gX71%AoMtNwzP38#Ek~_AV;A&HMC&ATyq$SBRxThIU`H3SP{CYN;tAZbl3xNd#_*
zK_M~`s|7rbQl>%-OGM&S%(Zm8p+o~GbQpxk`4Y-ss@aWdcC%Cs>O-~w1V_7+_N-VU
z>!a<kT!YWEz`m}Ec5#BW(aJ%a$-b_xJ7{^^A_6g$Xnvr>P~vBh^q>qQx<9UH+hPrI
zUSaK&;*7TKD#Q!q3qO__pzv<}<14jZDv1@b{3FjF{6PI$Dth6q*FRGBH^e@U<=y}A
zgSW(2vMm>-{VX9DCF)4dVAM9OQY%Jn#a<)6?=aacOmG9!TTt{S3s9Aql4){O)tMx+
zxNy598ZXQ_$V3`;$Aya@LoKsVtlcF1Ac}gqweidcO*1!sY85Zrq^dPZZ?2}r#Me6@
zV)L_pr+3M}sYhbDpT~E<J;Q~a#2;N>jL`{%^juT{$X2Tjyjjd_a=<Y**_?{oWwb~-
zI4^<|toM@5jK$=rfH;(dk=`!2X^a%L?16=a{emCyH|!Q{I17slVtZP|>SnRJCAM3<
zd~Iw?b8Pck@oVvD>>}|n|LPrch^Jx!`ohR+a0+$EK4cS%xadt0oLD!LH$#c!h!iWV
zs<ZpB<367u91aez3&V$P;}=XwrS`yM$LNwn@yhV5cpX2FFp?}Pi3=qZFh@#pxumZF
zOHi$zQq`Xyocv+Kt6zTh>50$Yd;RG<<{g;R`*o%q{g>RJ{$qe{sQUS9pViLj*5fZ*
z?%L9@_4bvUDn^XH=P)h~ziHHQz}YAftp`gOv)c_$2f9OaXc7U}FL$<i&^O_P(H(IU
zc~d(9X82g6K_@j#Z?YO%?`;ND-Js?l71!zE(*AAFp8hUzr+?!&c5nQ~#(O3-OtSb`
zi0#lMlmb^C*a4^}0mvj!1}tV#j{+)#(t+cxW4MtEbSgZfedJpz-@YzZ08#hC+E`!l
z>ljjW+7{BBp;2V&e{u_j(Ih6|M4Md*K{7;#NckJFN5+Kq#1U^hJ-o7wltsI?aA(Nd
zr^mj}n^ZBlv1(wCzCACQvann{25s<{*j80t*$3+2L-9@adVB@W%O$pDYH>F^<@Dlr
z7ZMD2^)jwaNh-Ew=Cs#yY%v|O?DYPfa%Gq&mywvKA6-AGZm^t~oGvrywOv4Rz)ynH
z)XC7HyV8DD=m%_b!pz}Z1_-cFP}wFi&(dMF4VBZ!SHuo1V=shL<z%+~ay7r8X6kjG
zwCUMJbFY@GTXzi}-dEarrnTvzD+bZ{;<-A^XCWUi?scc!79_T^8sjw!K>3#$m)NXL
zVncpIW|PR)qMe;Y4?+{DLT;DYTN=;oCXwBs7PiT3tOz1yGG))4;MEC;L{(#O8r&{X
zwp$Fc1vHQ{bAW;spTTu4w;Qk!?cFT=2mn(UAvvPNMU4-5SZ{7t&%FBPhtt{MhJz0_
zi_51!aX>7Ny{7&a?jus4CFy>WUuM*9B+;x8&x+3rnPQMSCdmHC(CidM$H&Fh5KT?r
z_mA6}#rx=gO$~8X#5JA%1m54Sv2qy9D8|A>VOuyIMs$|iGQn%x#*(Ya?#`b>7n<%+
z;=^by!JW%LYD;7Lhn?O<>q&Zp&f0N&W<uK;6)@QfzzO&J6w-Fe+X^5MAo~!4l_U{*
z19&1J4X5pEx5&tt>1;E=8Y|JPXjn1{M$!y6LEXciWGP(d9b@TS-~9>;I<}lt-UL#1
zFraCrmHil%gb1sjw6NQNTsVNr1z1_hNwOa!livm}l#G$dvPHCFvn}@OI!k<9Z6;R7
zQE`)i8Ys!0;RY5~Dz1l>{msp1T3Fyr?DucfnawQY%_pBfq5eYll%|YNZ{M-~Pq)VH
z0}z^H<=n{KhV38|G#d<LQo+PKD7-C*cBFZ*aRxNWncJ;CEjPuNDItHMyDl&kR>C5!
zt-pUwd?N*Xg}x+<;0+uN7<PPxm@otyYXLM?3V9JpXz`VecAuOY@cZCJ`0@G3j)RdG
zT+^}@?MIXt@4R2_3xiQ`MO4fav$z!G5Ty%lY#>;p_Kv<|eBSmqLGH0&hx*FV?>9Vj
z1nhaGw${@C>Qj#?^TPQ+e7#zI{0DW*3&r)ttcDfWGao~V2drgu5j}-mvJ0`oQPKQl
z!EM!X!X`8jrURlDW7RAvRN@(3j#Sv8vgGUB4n;0oC$EPT2F|%ws3MVxhi!xhluorP
z#XYDADx4|kpHla!AE_U!`$V;|xtVQsvufr67GKqw8=2|!X=YOY^T+S%&vCZn^{5r%
z1m3I{aF~hn_!V_0yBLheeb9YOoX1GwN}tDX3OIZPaM_tnOmyl*z-@y%M?wx09KN2A
zr@}MJ17+v&7|f!}00wywy=q2QVk#X1dKkPm9T+c2<v6&_>Wt^4G5|KSY&qL}_fFBq
zCN=+j@|DBSF)z{giW|~izng78JzQKVp1gb4)@_i>9HB(6fyXrnB3Trc<BWuL0YtsB
zi8CtIZOP1p3Fej}IhhuV&*4BA)Zy^KFYqDWl7NDU+y9gYY}1(BP;g|IW}%N0B&4Fm
zyZ$KHg)k%my}+u$8S=P%%h~#y7;AD}p?)xV?cHYG?AK?%`rfZ6Km8B;<l!eC*s|!v
zn7Uo!&EnyvaFM&#-zzPmeyE;pnX9Vb$JA4-UTyv2uWuaNaP{Nr&)4AglbrV>4r3R5
zSpNypBH7~?9Qss`2c@KDDI;BSr>44x);Us{JvEey%us470=|Kvbr!qXGqjG#YdRl$
z0xs&10i?C(5&lF{nER2i$a-QQ@b=v0fsBxTZ(g{1@v&Fb5_a^!GsD%R>V0fJ%MM+C
zJ$iK}+;y!~K7FxYZ(p|H-apF~*TvSqs*V(oPadP*RIh0(sRXm&bz=x<3wj+Y{y=|-
zm?s}zTrrV2Ams;N;EN`)g=h`&uS6jawtWG<1CS=!_BMz+hY5to2v4I{SMj*HZ4W9k
zy9ISZx}kMQ68+!V_NClQCfi<;3mRJwHdbE0Q5MY`epPoTeIK{%kG;TtXI)xD(wf-k
z>RqJ&5gp_B6*@w`!2EPn0f_N&yB>ulMwFLII3^Ce#VP}e-VVE7F*rrDf+8K1uh~s{
zE9HLBctW<yd3HVBZ@S=}Y<jZt#idi(@nvcrYi&_&Q&n3FJFVs~W5>~G@}uY=q9HL7
zJHfy5MNjNUjBOCcT87AP4rPv=*`h7OW3+ivvX$J3BReN28!5${P!0}GPLAJfRuJlT
z_|wo1+ZOQd5OwKrZupr=k01L8Wz|3h!K(^jQ=)iTt0v&KK3mNq*IzaI#!=b3x9@%G
z#buYBJUr{s^68r{-uU2s_uVPZdSgm+cDQEb#?{aD)TOPPbLZ~7%%-C7%0&z2)M{sk
z-vBdW^B(NDVnp1|q<}!&AlY>yNXxW!>|on);RyUCQvPKO{*Xr}uDN!y99xdGL+kfP
zrBBWrlC1BxW?;*(oBWO`Kf?om7n`XQOOts_&cbU^;-?ppe9f8{m@FA#IP00Dhc&O5
z;1mi5yR4^ikkY+?HQ(l#6@%|+xtc7R*2L6l)39kj$Bxlv(e}|f@|^um+JR4U#O--I
zu#!-t%)E99DJ8oe<b(7%{6e2^&x>ur9~^3FN2A)3cF7HMBSCj~!MZH*BI$F`2v2#*
zFhK{-L`QsO_u$h!$jqmK4O&FYo+6`7TSoJTS8(c(Nfe!Slj4Z4F-`8gxGv6VHf(7u
zHIk?#!KtJKtYPAweyse4dS8+H?s)aMJHs<!HS3){>rp8Oi~mZ+wXLmUYq#b;t&j_?
zpTdRLY+AbI)N7xKC8mqScbXY0>oh>Nd8j#MCdq8q@qOn;PA7vx+j_G8$cDz&CyRR<
z8)GAZ7ompP$uoyUOYB#U9dT|>kxl_2Pw=`!D!hc<Zcw0W^h43Xqb)k=1I={NJSh4Q
zbOlLGO)-1`=JgprPsmaLVG>$sEcXsbS`db!P8h<a1u88iimh}0b`kch0{(W%%M=}M
zpN>8XmTjB2mXL|ybDp7YYE*BQDm1!REp~(Y8e~H8-stS2`T>0QDWub!(0L))jky-P
zHz><8Q2#+GinfD{bgQ5QkaPocqut^Nf`$r-wsYH*&q?=ih+L0A2nJ~3?I{p?f=?iB
zE^NAj^n<gsR6eEt^zX)B)$f?&_r~9t?ab*DuN*xt-S^j*Uwu!^K!ux2&1E0jSnk;~
zEXRf1T-2q0bmskk+oe6uUyi@?Z)fXh=V{zVR7Vmg8)h_-uhxFZ{!RQ;z?TxudJ1}(
z%!qy&WII~?I*EG>yR*v1<!|!@<V{VjtDD3d8gC=Hj#C$sK5Gr(+-=7veveOZlP{$w
zo5tlbL7K@HyPNay+06zwm;?R?Un<VXN9#iOfV)*pcip<iy$wxGQxDC5=wY0{jW=F7
zWCTBh@`wSuw=-e^#HrH-`0U_O2}TtAD#&Y5Y)`~VfTK9HjxZ&(6LF45m7SOx9;JK4
zw5HRWoA7tN1U^1(di++Y>vfbX=ROq<v@D?A1D|1qPh}HLc73J{s9ej?I${is$HUI|
zsrYAUmx?=A{PQ+6o}Lr`#MY2nlvq@<yr`OZAD@>8c5gS}J@6Q!kpv4qi@bzSQ38ZB
z3e5wr(quyJ6N9l1ZI^KWHIA5(P7QIIgO%`K*!!%3wfyxJbrNx}vzlA)xb8u5v3h*-
zU!<>VV;`zRS6n^|QifYpiVGtHXDVzejLj~2-0)x!;dD!&#Wh`EbY6qq<JFtn$M#>n
zE0!2raa)8FXAp=rYyw92stQiJs+;e^(DpSpYQux<$LN+UnKLE!HHL+?OW1rg!a>mp
znqe?HJ&p20V>8%04(z}9Sn&nxFsNjJThf5~HnI7)+?iM_Z7^3XnllAwlPrg&upCk_
ziX4m4m?W89N${}Ds5l~iBkUZ?9#GFkWS)W!Ilv3q3~ePBl=y>Rg-8SZDxO@8Q0EJI
zE3A3aeYq|79{xs*Z4_rXk3K$YYp~bO!N0;qIps<7PAd81`1m7lTvX@JQ9o7xP=5g>
z5v>z)l;2@|<XZuI`#j$YqXZp&g=Lfl9RVobqS`Gj!!1GhwG|gYk^XlNi_H5-+`}pb
z2x})ATjjeS-ah<;q;6|!Vhy&hUwZRjt-n0>zypu%-S)tv8b~I~IZf(D4S&n@8lP?J
zCxBLn-w<d8vT1!-->_A5LGpmCiZM|!$w_|E>cnMmIt^w9=E9-qV~^_~Y%yKa4z3BL
z4uw4u4VB!4CY%V|kWAf<m8^2pnpbwRgN^V9zua&e8=!7oaRYll^{%BGA3k%4y~g^?
zpUVy`NZ7R;XA*WTy6VnB-Nl&*K)(>uRyLT{dP#bH*yB$Ds)xhjN)F4BoK#183Shy8
z)%o4-bg$s>rUO|;NOz>Crvq^>y%W<kxwP@MZv)-Z!rSr87Bt^^a4Y9SZ?(a$+;H1@
z2wVy9mDQYZyAu#s>l%*0g1aV_P#+;X%4fXfCvN-M6Sg1e?t5^?0(1u)Za3;jUCHP-
zaR5`m?g%+>2OK#2Ix8pj#j*O|?f@Nk7|Zb*QYr$Em!j#!h5u52V#z=Cd!To)&+Xlx
ze$R<0{yOoar|xa(w#kEn77-QeJyQJRy(#ZLKmNooC6oNA*fWj@!L5s0Zf)$uJP0`s
zp%41`?6>&&e?&0GYvLT?_%|b<b49X4b%@YnF6qeebx)NAr236sS?}=5nHho~-0*FZ
z8<7{>f4e@3q@xw3PvqGoEL84mCY>9-;6@t7eaP2GRwWUICSNQr&vU|3JqsRv3gUdL
z`bzMUo91N)Jn5I;n8SW$_Ioz;TD(S_yZ#>aSs1lT)cQkY)V?K#V#n0c3zrVRIHE~W
z9a&i};4+Vk79=Tf13X3mz*(XDq_m*h?0`ULZJTIx+3Z$e#m5yPolFV@;FNak(59=F
zs0YSS&q-6d+eiNjiyYqn&a3JjF%Z9tRZT4EmfL$Rz7n#a+bx?P_>*Xh{Y>ApcWKOX
zmseeqgS`wuYvOicAHL>$NvCrgKb`Msr!&Y;XB)<eh6@YNg{(jFT(0N8*RXxax`6FO
zHZ9K_Dgec!c&&lpt3<mwlgXGX!*2bT%pq6wWJQZ*YD<%NZ<D$TRxX)MXAY_B@qrYj
zlz!BG4oen1L$G6YI#{x33UldYLI%{%f#c;4Rx`r_l6;bGZi)>?@Rt>+i%;)VFi~y`
zNhQh++Pf(N#R-fC9ngU~MhZH=8y9u3et5hf)Sv|n08x&$M9)u0WCdZM(5mHC+xn0Z
z&+34z0EA-nD54gl4SVC<cUZ#W*c)vu6`kLKP+cv!KX{KeoOA6x2w4FY160q!@g1n{
zq$_V_rn(dUE?nxO%7E8=Y{R?o*KjeE=*;VY@c<s2tF+me5*^X}EbxwKItzNd0s%-G
zi-y93^{oNX(QdH@HV`<|kTAhv7>lB7p6jMoVJfh$ktTsmuSR>d{(pV7p1&G%z<blH
z(c1@W4icqRog<Ardt8VJ12Bqp7!Mx77m)Orz`!c{cy>-DfAj?^nc&O^?j*3?q(jVt
zqhJvHQ6n=L6!@fw|5xy4Vz{0dVWgCo4C(VM=}r0l(*~QRL!SA}H*uQ!>i7=tpy%&E
zgeu@##XBTUAT){}MYVVnCRnPP`Uj&<Wxq%L&xZ{xd^u(@Nd1Eq3*RFPj}v{Smr(o|
zqNo^cFj&bS-EQsCX44)m7VXh!tOWU1KK&txq|P(ZW5G>Ebn$hXiO=N^=ZKNA`^<yW
z`sX%<G4V^(SDVK%=L!#`7uG^VFC_2j&5SxsNDnIp8};-G;55WrX-t+{2?(Z@SeT5&
zH>}x`+1O=3+5o#cvcqCs!E6&7)#J_WtJeNmdc+;@Sw;s#h|}r-GqY88(DD_(+}{4)
zzJwWmfW38EOSadV)tF14*}kfttJU8wX=DW)6%y+!F5v5H=IdLs7xmEpuM5mq7~NwM
z)jd<EVg%TK2BS$QYQD79q9+n>q_g3hj^mK-I>|uEQ4N}pbQ0FB&D6k*vfW{~Qld!3
zQns{Ey*sd&bGYJxO_xKSGe_lO&-_&OfI2yqb~o|aUSVc*AaxL$%r?8j>G4|NX9Eby
z;zlL14xP1v5j~W8!?-%To>?WE)8+P<bttB=U{qG7x9Y75EFx`O<>)@wMy7@O&l{pQ
zG04P7@q}n$)7ysYbQ19_AGCV6lO0W(pQJ8iH{*c~X4&*`ui8XUevCPMDVB)=X)D$*
zE$Tq{5<a0FfrS?72MJfM@X`(q{90^}eA+L^3>!A4rn0g|{H|_deeJ~!)W5k6R=8i-
zgZLs!9C6>B47v+4+$kOBj|<LzZJ@qJ6SpS1qWhF^Hl{?2OZyb{PtEX0x)*dSRLla1
zQZph2g?;)PDu?z;OB>XsOLxg;E9|Z-Ofq=%JyTNpWr5e3BBO}2k-?5o6mVssPde8`
zkcQ^6f;w8XJ`B)Ul1I)vS~z~1(}7@pr)Lqly6|s~PiQ#QRNpXxo!oTunmcd3Y296H
zDV{n+&uqN;`c1d5yWuXiwe|f5DPJsT|Haz7Zolb<yJYdeGi>owPe1+CKfe9xZ=Zbg
zQ|sTJewtm*7Cd?2AK(7+(Pv-%C`C@=nzst=Pyh5cJdJf-Bkf=^@0Ub|Qu|rd`X^Bw
zf*l0oDLcY>>{6pvNe6Nx$)H!_G^fP&O|k(Z^Bi8&j%=oQ7qH>618wgD+fT;3us8=^
z`@6*H@7RG0vE9+=wxhn1I>U3oSW3Guvt2Yw6;)3nWsD^uB??DhVQ4x*7M0FC)v)0|
zUcVA%V&B&H>!o~T_(<$wWDBGM@h%_=x`b{~KU!c62BXX9am#k7OQXXm8Z9O;4Hh50
zv<Hv*bjT=nZoUCPfK%*y@x^l{O{g;KhTQzSRKV`Lbj)Qd)ceHs6Q-S38|c$!!14l$
zEzU6PUBPHWPL*F}2O{@`X$JmiC?uQBIkL`ftFXcBx7kcelF2%<&ZN`q9L-paTf7}@
zMqX!3UFNWR;J;|}Yv_w!%@(WcnxA+={7-D2I6HO+TUn#N&+=>J^7`0)fU0Qc70(go
zM*A7SY~;^EEYE@Xm&54|<`{A#g4gFARhQ)>ws)U1%3MxRUCU0VIS@!6Q5Vo#49Lxn
ztTTfOP#anNK?6Al7R_7vJvw-k-1CA!^kTF~5NkcE=!hh@i@xXz#e2f=0=9*1R;RTy
zkayxBmqH)Z)FepA$JKmLvpY^gzLzWzAblxRA>%<6YmP80+6&zEE`6pqEjc+w)Egb%
z6kTq_YKxj}2B*zAqRwVZ38aBNJuNMek`&0n)R43rQHQW*o3FwBVxFwv6XGy$on!;-
z_O`~45)J8%!?=5V3|)`d95hEIiY1ju?;hR9e!g{Ur0+N13{f}4-Y;l=iJgh<?ETq0
zhu^IoV5xD$M0=n7myXw}rdhSp+iEnn8yET4T?Zc7ik%yd%;R|EeY*&&qNA;nJ~LUL
zrkGuUwDeqk*L+=iM*65aDT8(`BP9x`kie)qYeh;+%A+Y#OUn9`V<|tRoJ~=L6h{gw
z5mHio+1Z$Fw%+Feid16G?eVb%{J5RBn<O0}0w}qS{nUFsgqN9cH<2Nhu%$UAW%%0_
z_erJj?l1D#Z>os;kwfa>v~Qo<xNgk4p<k$9ciH!dEI;y8gr$Ep{<f;fwaVf%Kh(@f
z>hG&L@k{^u%w!Z|TWWHunroPY^~lVvMF2q-)}Q@dIjJ0imhqzowg|nLITn<^7j-M_
zo)bXeGd;gscYSe>yriTeuhH1ONY_0noTjr&IIW$ee5Y;X-eU)ejxcmvH5rSG`9$9$
zeuF+ADvMK2-h0bUn;*F8rn^<=^eK~@r!_Q9i~VcsBhTDF_0r(Q)yq~bSvmFMT5%7T
zLTu#L{ZHP%ZQqmkuej#gD_2}|4I931>-`5p<I}ELvHHsNaoOTFE~Z3b;o0w{xzKK@
zIK`u)d7>2bW!Y0wz%FO;$+?j%d%88*WVP7EkO;EhtSpNNpi^Bs3bu+1sSUpnYTsE5
z;YChm+$7ON89%B(o#C-$9U2kJI2IW^PEn8gem74zdl7gSCp?@oQrX<H{<<0UvnH)v
zxagXfpBsO4%+O(j?z*}1)NOxxa61d;d&i~bu+z8RdG}4vs-M@Y$FEx<PntQaVWC<y
z;vckA@Z|JBqCk{5fSGg==12QwI#PWA6@U=~#4^3Zmz$^SnlG6nhU9Ey`GE!|CA-}r
zeCrOmaY)_nhz%7-dRHX3x-Js0Lg5)P?*0?=b=<OPo2jO%HFcd4?hNot1<eVa-C>6%
z_$cyIGg?m?ERD@lSZ8PyzrX*+wOj66cjMivZ|ao#X-y4B^4ST+@ztW%YG{++zM3H&
zXnkbIu3bB}@7=d;`O21ME3RqXN{sHP{Si+ogn6Mywxl{5ae6%NBm<JR7OTJ{rUR0^
zE(JYZlE;BIP!NdwoHn4<k`+=+jI{VeDy*aZ!BrZr97%d~CNU{Y&0WQAH^t7&!V)X5
zJt3Mt7RR5|$u%oae!8+&)_*RZ5?7BL8Cxk%c}<-mz7yLf*2fCjEyrSif@ZDJ&<Id#
zwgehg6q>;mv`((XjS8U}E(l`dPzVJ;UJ03<P+_PdB%%N#WN-oi9}&ai!X7wT{E&4R
zC+{Z$76C^dazQciY%R6%0IV+uZ7)u7*}Xrlx$)OK?)qhI>ye@zHLIT-Q`vap_8xy4
z|CcMnw=?D5htJ-0iyC`S-BL1S=Bm8SE5vooTQXp=`ZZYtK1lbaSl5Uc6;H<=$D>~)
zb3i97e;p7}@O}j|q*#f@d7F+`zkxf1S4$(~uU^Any%>?wb6;J8R}=4Wj@TEmI(p}2
zc&#4)wlDszd7mtaD6>ht_XNC}&NaPvUi`h`qa#*QfmlkX_r}^%PS6Ia4HPFj4?&~Z
z?8}lQu-xZHf+^`nL9YjemtGIfAlr~Sk6r*jkkC2k&9y9UbBEQ22uAE1$Pc7E6O|%p
zL`?@_kR0jZa?_IYJ{WfF!N+g-$A+T~hTAsxy|(D;tJ#`+)U(^}|DkK-rpZg5o_Dq9
z=>A7p>3#pG8vNa<jO3=`*vIN`YVoN_sO-@#Uv;zk+pXxjNBj;~8b~{+w=hu$pvVZW
z93B&}rC@{^kXe=5N)Qp~!e~3)Neq~(BVnTGScc#cjiW`!nLEYqCF%-knYyfxvi$Vw
zawUBCnZL?u&~?XDQL*9Ec;-~lqwoQKw;-n~D3${lJ6F(jOA>O8@d!|cQ{LHnGkRK8
zQ9thYNA&xCuf}`TLiNz@nyJo1H0UKG%Bn%ziG05ZY<Ec?ho3=BrGVZL$lXqM4bM=w
z-$#mRXc#RF_E)WVSL_Pe+1es5iY=8+sNxXmb!qb8`qr0P2UC^GJaLyC7F%JR<V91p
z_()CNf1v`yHe)_o%mgG~B51wv4%uga1|!WXc<rcFKv{?amlPo}y#duAvO&jy#RaKP
zu1i}J8ZS+S>?=X>cCpxanfm4a)66CY>upln_?VzWErKL0XIqqzY{H!nqtkalG&{o>
z@uH;J8z?|~uT&5~4PIK8E|zo`b0uYE=_&+bx`rFqqlc3VDoCj|mzV2LM4&a;axP{y
z$Z5y}1*Srxas#=8I4VF+4%<3$L;s3f>sxj_bXEPW6$3U*z<1(@qZgKyEgU_5#?08L
zOJ>cwWcb3q7cG)av#-2j?qk=j-81)!<+JFqVb1K?bCxztS+ZoxlqHRe7d2s}WbiB;
zfd39ko~Xs_Rh(YbTe@v}aOXlX#xD=#C@NF^Ub-HHuO4r0aiStEyL*>zU8hW0f7^hv
zp2H5v8`x^g1k3eX&WJBR58O+ZPLgsSI{^MS0eRhAVP@1O*?<PyCC{Io9jd9zM${pS
zLYT_zXl6=^r=~7N7j=LDPIAyMy!eG9O67w%0J@N_Lf4{`by!ctwH=33PUauZ7hr9@
zsr`5~pFi?JYt|MnHx^hkJ}~GU3Cr5{9I-jllWb)7g%{1fDth^(6%CgyoO9Kpdsa*-
zTGDII%D!`^T~*&}c0c}<^hocD`gv(x%2zfls4Q34_w7@ES)gn0zES!Sf(&?9doj!3
zG0W-E0TK?KQ|~ZY%_iIz*^USSHW3jv8ENI3x*rholN~a&wG0*)D;QD?n4q!HIM4W~
z@dc3L>Wnl=GAzpp!xIWS@sqYCnkyqks5Fv)`KkE|U!u6Kdb#=<tG`<{ifOkFTgiH>
zTkm0~*-7>NY^JMWLuy!2ME$KsJ;3|q=OI87mJcB=3U?0D8wg*qOTd+lco0knO)s>+
zCgZ}dA&Cu1SD?HENoRzlOBI=3k&P7Yfv5o7hzYehxPUrQ5oMv`9Ck&`I;Q4N7B)&t
z*^5Q&CADu6yH&kGy@4$iKM}u(rN%PwI5&2C>>lVfs0?X6a7A*2VNhp!p;~O_zBxVL
z(&710^gIj(2ax%0R(?ipG4KsdW*HE~Hmga#T7My|Mc&j)>Cs|Q9C^nU>v;RDd6&($
zjQ7eX)@;0NV*PCOOS~t~)lf{|LdXjyq~L5;DEbc61tgic-S19h&(PqY%N|`e_@X<T
zS~NNWCH?gGYj48{x5!7uM%+V?AxBN9Y?90-<JGt`6)Eje*En7vTEW>CZ>f2{eMCu#
ze6rxV5w?qVkHUMb1G;$4+0}RtAOpg?2L>d)2Y@YUC_D<$;VsrB_b@N;kI5@lt4sG+
z*=io{ODlC3&;{#(^bmiK#5g*=2kg*r2_f-_^??%Ie9zb}B|1m%*Nbf<_TW84p-3zj
zTVO|+p_0?1HXVR7T$Uui(G!yF8Qi0YkEbm>6j#RaNDyR=@AiqaW?Xvdj9C-ecN;d|
zv!3PMajPsp|K$D`p4q?uxqp8C*;nkfPwBIg#o^)xg^=2u0<yPyvk{`+iDDF!<aXI4
zy$)TriqY;2IYp;a(x*x3@#rJ@WMmz*8wjw^$Vnp%u8b0jiG)jfmg#g%+^}kb+QjZ`
zSoN_%7gE2H`uz0MMdIMt(UaFswG^sLaQ6pc#-!&1LP6ALmr^`l$>dE!deVjDN3t&s
z+@^fqT;*tL5$}%=(-K#Sggmd})8kU(DwncB8+Pu#tN-;~u2?yH>EZ>$#}|j#$Lexd
zFS&93@@qGzr_>La-f;1hqzKzQUj5C6waCXP)+)yksYyeu#%E3S390DjH=)4U3LqoN
z7;;N|95jsfd3W^VTx5HKObKGMt(X?dM_l{R)weu!S`EMWc359`<I+3S6XWMjoj7Uv
zB5Bs@-A~_toTZK$UH;hG1$U|sT{(GT^R%kDD{-2HzStdF7ah(4ntvFQNebdxLb@nX
z%&21{jGIA}c^M#!)B-W8-XRW`JmUwpegLgo%vbjfoF>w`rO{x};I|b>5ww)rJQ-b}
zdAnpd71^96gi_3Wg1oW3-TY`<YUordx99#$8Am;q5>9Iby4TG$Efg{~f{kCc;gP9L
z_g{bg=DJI2``=MDv+mNyi|2SQ9d)p(ZrG)@qbDeDtZ2S|NX`}2^KMwRpz6xJ!ifW>
zt%@}ay?E@fKI8L@;Rew#qJQbgjI=SmDv-_<g>1}Y6|hN@fWgxvnq)=|G!BU3l5(;w
z-jLlcC3`~#ZHKsV(&23K84yfGymBL~`J+6N>Lav@#5BZJ$BtK*l#bZ=kkOER<-lt;
zZd*NZ{Rs7?i8C&pGPwm+B<erav(5?LC!Xrrchjo1TkCc`I<J1>oT)>auf_U~Q&;H^
zDc?hiBMuBJCjhMwMl3lW>t2kCus%R`94HJ$J>5iMwy;Q8A>1JRJvwoI!<EzLELk#p
zeC4>2MpIUHZr-552Co;DY2Ax1>KpBEplVz4;(W;|!L;;nLARb|z4}y+Y?wZ~<=W(R
zH(s-H!kF5s#iQo1Iddj0nZ0Puq?J{($4r_(o6ROGpu}veoIPq1n<SXL**SS#ihA_z
z*MGp^A(Li1naiD&oEq#}U_eWTPM@C9v!qu!@B;zH0TT~5oPw|Ti#+^G3-d2^9CjQ&
zOqHRuzzgue|I<!N;<fQ7`LAGDB1{<eW}}6K_|S-NFoRgfG?oN9vGfJclDx~r_w-mC
zf4+pC$5+QFH!)(C^aN@uuhxx&fa$_v0RC}F81{Pkcj30W3(_3pSm8nCE!KVRAHuwY
zitVMjv0==4<};0sO@4AN{+xM{Ia<5Vn<pM*j-||bdgna+(W&^w{cBrV)~;>2>UwqI
zTKr+3Ju-KGx2}D<&#gbUd_cFXE`@!D7iCXi^*vMblWSMbl%Hqa=N&pUPksB)A0jJ!
zaqip~)pzI<bn3i$r$GTHip+kx&)m64#oFZI^f9f4%(0BwV>6gz*oG}zHr%%Pp4*Qc
zIXq?H*rGuO**d7#m^#*&nVuQ^{GR;m;p%Bqv!RyVrd~d|i7e}J>LL9u=syXvs|)J?
zQvK#^IV7hs$?Qy1y5{Gmd2E?!Hd|VzL<V&skJxnBy!dVzB?Z=V8Nb0WR`q_8WE4OJ
zFow77uH!e7Dm~IVuC-SBwrl_C!=8C?)PbQjTPIZXE2<pVCopu#fMJybD+lX5t+lO}
zNPj+4*rR_@%~j*q-qWkg-qF1aOR7o-%^%)J{Z~chuzt~Dm0IOSC%&@k1cSAMr;f>H
z(Xy(@%);t`G@xF(dw?+2RVWdfqooC*E+Mfv%Wnx7M1#eZm9Hx+E$E(~5$W1Be@I=|
zu1dsXA6Dn_D3M6_A$1X^1c%fq7jSu#D2+_@;T;7$Kk-mEsPquH^efXeE}B01`sg7*
zP%zgsl0^t=sIGDsd(m)8=DtUkU5eWJ^Wz5`_JVMvEYNS*=<#SM7ug0Gbxij>eA_d>
z=HBvq`U}_3S;`8f`u-7EZF3)ewBHp=v&)KnRiVk3_MA0)lq&A-)l+)+rS;p@=hU|+
zOlW1n%ckA?5Of6o$UuaEuUr}pptcS@bOxsz^@(T{74VJIrJ#`=g}~f@B_A2rH-2L^
zo2JagJ$mk*V0Cd5;lYJ^+;mg(z)&b9xy!JnH;<dC`WK6v7O*HwX*5sJUGgvW)z@O5
zi3QRPv=_jgQBVc~$=nrr2dI`vPO>l69khl_CacZm_T}ii73Acg?#3OA!y4sh>N62^
z=zzAtYc?r<m{b@aUqX^ljXqV~C8V|sm3II-%J89YMdt?2Muy12xe(wl=8{|v&$=O3
z&c62YhaVf;sJ^>XDOLYHX6R$X`j3r;9$C41?&XckX1978FPlB>)F-zvX=m@$+VyJd
zj+0-q!<$*kwdgha?&-(wy7uJB>o(!!A*QHH)-Q&Q55!qi04!mvfOtU_7Kxe#Bzkns
zyk=o^{1wk)Tkr~v<{j@Lpg10gxOk5&{6;TML`x$@m>Odzq}$Qy!`Y1Kc>$RwfX~OU
zqMssy12(Hc<X22mN8#TYAD6@wL?Yl<VAYqSL!#j9Djt<ii=tu90!J@7$u4=}{S+VW
zgn*vV+BmKqqL4bV;C$3^b@zFw<D#%zo+0i~o<~H0kilJ&Xg7)mqt&AXQv3#s;UN6o
zls8{?Br<JW-@?M>AlKQDC@9bN5Xc}I5A3N+vKEGB74=kqo8H_K%nIhFcPo`!9>3N#
zaL<4%#x)1aat0;&TuI5H>>;#9@Jf{5+Psp8FpPU8@LFWly2XG0&kOv16#X9Sgf3oP
zGGwDiNQaG^={5^Gn*+d;u<aZ`l5)eDF-DDPoWU!pW6K&PB5)o%o<{r#IRLn(bSi+$
zNGD^bm~1}eUfP}%lr5crmWS^eGirv_v~c$9Gvf&81*k@TKwq6!&#0&3U2Au+dUh$>
z@K5h8H@a@$72dD@q`s{FnT=z8(YQ7SZEKhZMfIMNzeKEo5M47o7C~=!I#Yp&rH54V
zSR}hCYC<QN37B0S>q6V7p+&9`OQCDV=Yj2r17eXw!Y9)4d~hOljgRZ&Rh2`fsTOl{
zLrv?BBm4Fpd1W8C)H4vbdq2Uzb$inF*ST)pmUF}LPtTnB^t0a)^#rR3RzHl@PZ6Tg
z5K!<CaCbW#rqqCpG@r4$jxlSBQ?mN1+gcmRw%~Dzx7z$1WWdSX_a;``=@BwAg?6kR
zry|ykooTV$ehpx8&w%`W`Zs@l=by^{WA2-7aXs{Ca%@4X`UMM~m3Fs|JpS#MN2O;m
zGRobB<)2}rjfm!$ynvhY>-Aoimgdb!Px9G9QIls_9XQeqA-m5T0MAY!t}l2&oi;+Q
zCbVTm3YY{Ih8Y(|uy*>1I2|^UsR`i)mL0$+?rt0~B4e7x7+pGLoJ-g9$tAD7h?3>#
z_B&oiNc~FlfXgp)FTZY*vvvKZn(>EUBZi&Uo8%L!8GaBdqR#Nzq}WAx<{AFXk~5Ff
zO=uk>e|**q3mFVeXG(GQS<E9prB2nYhfibLYj(hyeUtLk9u&NyXj$`@ctA&;y3;h;
zR5xbe$nFI_%jPUoKD#Mv*<O3EuHCyEMp`D~oo1=e#=bkd5}vK$F$1pqQOIPV)@u$y
zY*sWB4u_(jb5aD{Nvf#(p0j7<a)~(b>|>1c0k!el;1wD}B-^XKLa5eW;Y>(Xs#*P>
zOVvue0(ET<l1vrb>e?W6Wk3C1>vs|czRG288$%B6y?y{>XbI{j^FxXvnv#mMld?ru
zzEW1Ih@nufBxUB>3UdnqQIjj{g-oHUE|7@^Tb_nQ=eL$oCWX{NYtkl@MgsI6zV$)d
zJ9~;bWG(SJa2M}djVmh%2^3o=s$@kkxFWYbIKBC@#}9ur_MYh#lMC|)EgbsZ*Xqyz
znRo9<xq9=w)9TN^pBT2Ne}3hp!r2eho~j;=&NxF2o5}hgV!=(B$@N*O>S}eTx<PHq
zFDc1qo7n<LiB-XHeU^Wt`uR)hv+6yXRiHctjT`_%SGG+Eq_`B&)cYNFJ$bZtmtPl5
zwFyGNXV=+XCPfOMeA16B7iLD%p#zW&W~-fQ*nr@=DR%qZ=oxiOlnW|##nByqPRn*Z
zI$d2h<DJM9UFMkEcQn7VQMY$b{mUOr6K(x#a#Zw<#9o-CzB}SU7GQ72UQj3O1>R&e
zreQomvJKHQ`DaK8LgSej?cui&Ts#<=bs%9z900*I7tn;TzoG%KLQz0s7|<GRFgQfP
zfo^R_JWmJ7fmol`8Va`N^D6=fOGqnR=z&IWnVK)qxy^4vMu?4WW}m4c7HVbUS>Zc%
zCVJfWvy7t$5C2{LRsMkWRbLvX?tba@S5C^S&%D2L`+c{^N8YHQUI-GdA&RzIw6|mA
zz{fCK(PZGT$*!Ti$Nf`Tvcn`t$%QPNZIaanP&dJ5H>2w{(cRj9;CRFmL0YQ#i~C?)
zw7}{?H>=h*LWK++Iw7XAThz;WH^eJy-_Jj9WD9P&^TvndiZSY1-ahjEn6FxYREP4W
z2%He==r$qB6cWZqyGyzxofEb09@*mb1eJ_*oy(7Ab1B|{j(Cg*_;b~DfzC))?JWl#
zmzpk!c4X4e!L;ho<4xrk%7z58)h{~Kg*$<4^^y9vdcUmodHdO7*5$8%&fBWYQ#r!b
z8|ofHxVnyA8t?G#$!3k7L?##Sp;#-A!xf%@)02{dE_6jf7|W3yQnJD+vJsH3e!DSb
z#PS=BI=x-zwF2$U>JZ=uz;kb_zKFL_TyQ=LN)4#^1t+NVzZAdAGyZi}5Y??sO>C;0
zSx)qQpl7i3#*)3qoML5cpZNCE8&?+G?qNZukNt?0QRFM83;0k8|K7pz@AFD{oGAQ3
z3*ED@>s-ji7XT^A;4qtzyp{+7$m%e7+zvgc1T4z%y2+Ln%X+|u0>KDDS&BKM85g$z
z;cjZJ=xDoWTSE0ANYfx#9A@ZVLDWWC`cmTy>fh#x3yZ|Yg|P^O&Ivj)#l5kS^hN9o
zlH=v~8heh%*igeIp%H|SZD2IZEI35;`x#9<xuuN__*sTwbry@6npz!ZO5Sq0a(=f5
z=}J&&@gYI90LhoMq=@kKw0G7w-tyLTc4Qvww<uSa3`#t7c>Jnb=nLznXQ3;{T#NCL
zZT>md%8lFC6fJS0#nY{z%Slesqe8)@)7wmFveTpCM@bDNnJwtWBrG<M&1MEPKebAk
zv1X8bFH;p>!UgFh07)L=3YM4mAk~>zzxX-O){%I>(De9Z<6iaHJXQ>Fs%BAUeyr!^
zv0}DzS!TK;gSg%kUjU<6Dz3-67O?D#rxjm95)j&qBNft2rbYX@g(PidoxoP&t7`@{
ztT)M=8UQeg(^6UI8SQLv-s;@yJm^%MPMh0q7ZIzpd6V3H$uTGFf1E&}vq<L`wA0!{
zEb?QG04LuAX$O08>dDoOEq`x5sXm9p+<asTN{fT>oj^<Wcl-;j+H{JEES@Ddj9!g-
zAkn8RRQ4kdk%4NjJ|UJKOcgUS0Pbhd1F%?c_Xm}5W=3k7)tTxf7KqgJ)b6R07Y+Yu
zc7xx=g6U~#>BH;NDC5dAI0V6>3HF41?65zYKdYT>*lwZ=DBQ?H^KHt6T`q;){lqdb
z_GB>mJ9XHy`)5pQoOye}ZTE(!XU<(wlYaY*b%iq?xI!H+9cu+{oU*?*_K7s)M)j}i
z^X&7D^JB^4mxXg@s6qDHeK%K1Vn%I!>}TyB$j5LGg77KkMlVWZq11qwo=%gr*}XnY
z6PV_i8CGY&Sy`7Z0+KY49vB^v{Zb$hv>SY0mKq8Mfo~q9cBpfwd9L)Ki%cR_GlDTo
zf2Ub?nq(gkO0TRdT{Uw}*OiO2n=+TK%wIcmRrd)k4eCym4vb(E<%+TDI(@I%Yt*OM
z_=V%(#)rl&P<OD(6_@wXvBhI+)%eZQ16&RMYDBmyIyhkWXERtiVkDwX(&x_z2GeLi
z)55yET&FcPBNa5*5g`L-9qF`;EQ8%IrMbc^B;{mf<qWUOitnhuJP9{0zN3jd*TLeT
z3zwKLzQaMKjqN;TzOisw64#LSSNF9#{Hh10cfD!m?OoSDfc;&(d}I*&n>wIG6`Gr+
zY;}P2R_kNz5!&Q;<Uu!WRLj`sw>HNj;)#Np4YbGg*L96Wa64CtdD!Sv@q4M8fSnG*
z7r#8(H^uJDV%eFnI&=7u_WIIOQz6dnzF;Ow{hU_pb7h^Flb#+n*nLvao5|9o>~I+P
z1mXBrx6Qx!f|EaQ?gaFG-hQ7mcjXoJ-l=QqidW58(`C`}{Kothi}KbsuSzQIqTYzU
zoh9mB*!z(T6B(<nD4BT;ZT;LT0$Zq>O<Uh@T6X*@U&r?!b-C&ccx!JULwHNHW@za}
zVx+5(rL&|7I!{`pxYtDkj8(&pxYv==i-wk0R1B)FtB8WLtzu|YjO6A<s_F`JD{@6U
z{<=RGswp=&Fmz~Pb=^=o05q>aoGqQ7eBM{3*=#%+t!1GpO4ZpG<qLz;03<e^hd^CC
zXEH^=4Y_r)z~h+-csA|y4{^i1EKWqHy_lZ#akRES{kc{B<lc2J*UX(eqGfp3IhCWI
zoVe-!BOiSCq&lP>x^4LDP5pOO&AEEw%8T;CDZ%2IL!NkDLvjo4y!+5oPUDd3+l+?r
z%oLAv+0rE~R_mJES$+c7t@jvX)h_3Vs}|H+$C-!MI}gHM39I)><w_-T0k=iR2F<RF
zp<-x2cK$_1n=2`lU3}3{<FLxy3VQ{r(<;g{h727#1buo#LqlP{3>{i-F7Gz9PACVX
zWx3t!O{uIyBaEfeYmT~tap(&YDu4uRU(a~&T05*hVw~l$GU>9l-Mz#Lx8q?T%M&R9
zLm(AdXax*<*v)Z(42lX<;-svM|4!dw{m%i+*wB)E(e>2}mtDG|PdG0aC~h9W<QJFE
zdHJ0!%Pwh%zB_J6)xf4PAN08XmOV!vy}kpOMt^fKdcAYp(nVvjbVDX|Jq2iu)T?G}
zxZCIG)32<%RSY#pL~B#S>{%Z7teJBfIF<nV8i<hxm1c{1d?=1qjGym-Y1PiZMfO!P
zeE)nupw|GRgXkH!?toNk_f_~N`{w!3Zi_==G=h2y`Cy=twUN7%z;0^?Ot}ACI(LWy
zF@j!l35={p@!XhD4>looIl9>VhBGfA9K_(}ePff$t?JjEBSPxjRu`hK-PHHh=ae+S
z)%=5{vm(rbqCw@bcrD!a!7P#-0ImkyqFw-a6ts@rAM#iDNBJ=ezh5$$VD2I^ga*&H
zj^Y1l7Hxqc7ZRCesJ2CNPY;8!LqzD)vubGf5naqCzx<a6U$lweJC1aY2dT$np?`gF
z{3mJO2Zs*77xzjnh*kS2zv?yUbqYGdll*2#bDc{gBhoB!3R7!2cj!DayGWIDs})DF
z3>uxEM)^Qdzdpt4ef6===d$LDv$~Gi6CFKyc=s+{lo>sjZ#?rc3YmL-vuykKqUYdk
zQTqfqyo{`CNyWPPP}>A>W}t&B3QO`cyVX?*e?UQat)d5a2Re-)1C|~U=(K$}i4exN
z6SkLsm|vGYa%I-w>ON_~U~0jjhzheP7Jg>zHQ%yDb61oa#v7(AY5f>+5&Tgs6c-V%
z#$fc)5_u=09@Hb3$-^G;9yv*+xQ4hY{u+dPwby8UbaaMQk1>SU22~_?7sf`rc27-B
zO3z46qA0MSOUlSouxzRM=?Dh{6jpK@0exwdbMmX}P_f+R?LgF0Fsq}RK*5dkPBKUJ
zN0}e=e>QMLiAV_RVQWjMmX?(%7WGv`Ex%LW2Jn^xD!bd6FMjyvS3muD>Z_mR)y;q2
z?a`SoVb<wtQc2C6k>x{r4=f(hFRu)zeVaO$-NdGYMfo;$KH6koQXc`Q@&KIr5$fKs
z+D|PR9sWgp<&5)|CB3}0j>0LkDJl<y5JLg>kz-gRDmF>RYQZvFb#|w60yPs<Ej2ot
z4@g%h(A6_Ca?%8kNigL|UGkCxe!U+#5t#p3898=X*f~V87nhl^w8-L&`vUE<k%NZ-
zoE%avLTK?qHpxT)tT<ehCi5d0;t=5n;Mb_rIibF;e&ekg<^^fj>#Ur4y~C=!KvOF{
z<NxhT=crN6Z+`jpOJiwxl=F)}um*?J%hQGr53=>FKkLVC4h|lirY=$s0`vSY!O<gw
zSdS2x2daZzaz+Q$Cup8a&pskI%J*QN5pACSKt?vWovhkCtx{etpC{5>lHM22$fkK_
zbC*}s4gcdjQJhT^L2wx0<}^E>3vpp>o)j&K@M-Gg#uG2PhY#{RfAYgaw(1eCm;Tzi
za_a{7(BbZl_iw$!J7l2uj{C%n@72EtD~AMG?l=Ep;b3)jQ2pqe!#@WrE7N{Gbm-@_
z0RvJ|0n6pGet@As=z$!0ov<Q0)aWZO9yPjqI6OM9te=!x?5OjZCr+pvG^oEY$}uW^
zlw=$=s<dicnNaE|6`fLPj-?={psFsIE(z`&)VZZ2o|l~7A)ZGhAhfSqNmvi0NXiS*
z7u{Z|M<zBMe$Z!?`JmZoOXCIv|ADf9S|qnqWRLi@Q0R@?xRRd4jfMsDWn=j?W>haK
zV)#?2q!YK*-#L8T1CtMbxPQz468_u%?C0Xz=IMz92@6{0w+tLNFuPa9gqh7f8m?Kq
zu==9D6}?$A5dBbu_dkaQk!t)<J)myU-7$80uous-_)|hzLk1Nkr`vm184NQPrt~bN
zU4ULeH}UVNS?DX&2-ihN7I&>27KjjzuGxolYWH5lYRu!t*7WPwr?PTHccBoK0*=BT
z3ngRWAo~dBkVa59$OynN`HY@48!8a%!bV4uM}+?AA|lelZ&rJ7)me^G#C%vHJzhrS
zj&|fi`+?&|IQw)G^*PuP&F;Vs@z7nSmWXvho`*Btd?U`;32q*C+z83ixa_ZAT=L*$
z%WE=fs@B}JZ^ztOmtD4F&ox($tO?aDpRsxDKi|9BKE1hoNIXHsg4P9BZ5kYIU;gZJ
z#Bm(^n6S2>Hvd20eE0RhfnR_3_3!z$1=p$S<La;KC(1#}W}#j_$>-$htU*QPSZ$**
zzS=xDr5~UNmJQDQf@r^_oc_fHE|(J}&UzC9*~R6i!GqimTS2MQ*}YUT8m&>Iy%H$a
z=F(_t-_pKSb>ULkYwK>Ss>|!%;h@tYhwb<G9zBlcYw4a&A#9THT*iBm2MEW%O5Fcn
z0c~aZXiMqqy)0#KlvqYj_<ss+>*c^Bi}B}?z#o<WUvX|NR`!&#9qX4T%!&2^ey%mu
zmKV&+O?SJJv$A!lSPKHs)9OhMrf2K(yWp3ej?0)8^w`tg$x>b-{@r28+O#5Y?eHJ}
zpX*AVJL|M`zzX=U!Et%ZXluzEWwb!n(d@?m9w}G0Czhji*8d(eXJi9#{sBLstPzTw
z!R`g7swv<`q}DB4fDLX*poK!ux7qnHr?l)P_8V~$d{1PKbg`rg^<SXI>djII_nw}i
z?p8Pbne}})9)jJ9AnalFVN>jR_90@hb3b9@o{mRfp^FI_3^rAM)Q4hm^c^OF3BdyH
z8w<K}ht?4;7ug#06(5I|K*8sORx-}Wqupz9dG*k#`F{XI#P$8ns{%LAc=fIKD?PEN
zfQ%GkPC%9x6pb(Z&sU%PO4i&$K_^c|BdHr1(Jq43;gl^1mg!A0P<<>6O_~NUDnVMf
z1ynWK6^GtxGFr?KSw}n6k@NT-VtiN_lmus&Dg4WiaBDWc*sn)wj;QbCvBH0;NAp?H
zOQVmlk^=SE*C+&Llhj=Wtak74eeBLBhV5e`3)DUML7lm8IF0UO`5x&mWh+L9x>@j}
zAbjfeIBj|x@q*K#(rjG1if(9#4DzygLM?;Lh@6j$irCY-Y`D{1%hXC;PEKyF{9{qL
zI4`@XTUK#?7V1r9`IK}F89%R(6?K|TUK8*Rfn=m38LTrS-Iw1(({ALXV1CeR+J}%%
zB0&l@A7*mjE9aLtmrk8Mp`usLuv@QMU{R`53jCo3vy8^7-p;Zje9|fT6LGJu1ikg>
zfHfoRY6YU7bP#moDQ~uIDdT$1>#-r#Pd+(2Ra%%Hfdp-7p04aKACeVH@w<FUgK~NW
zr{g`p!+SoJcuyTtKp=#3+74oMI=<&QidB57x%sNNP*(PLR%fVB$U`O6A!P&nq7+zw
zr9e=v0h{t%;frW5n8y0DL4Es;om@8|keiWdO>ukjN(;L;%x#`NxTdOFZ}FsL=5{ab
zH>kR1!sO|59rG^B%M3`}sff-Fx!b)st!vlp;<*#XO3jJqnrGEEHBFi|xL=u6P0t1K
zy6READ=YhtDxNiJ)U0C3=l~3az0z+5@El(81inW*2o3;5Gye-M4QQX^0>*JP-w%0>
zqk*FQ#CQC;b|;-=(S`rR{&GDBGy|L?KWF~Y;RpUx+pqXf@Z@Oo|6hJbZ`t{u$@BEp
z#eMthtIS6(U7#No|3R5LebPc5`&Cz6+^@f`TA4;ao+<3~qg>SK$8&%CqrM9N7VrBq
z{^=jjD}(#Azmt5dytw;CFHXDkkDuwAx|z+Bn6JEN(M7O|E=@d2A1A&`JgUk3pUs$1
zT;Bbn2{W1jE<$IeMZZ!xj`~_Fb#NfY*9G03<-*ixZ>BQ<^3-f~gDp2b9O;r@*rUwR
zr+0?GwESwj*Pj~270kU_msajg?Ut+8=XOi=mZ#~!GL1_|_4(LQ{wKw8)N!=!FREyu
zbROMB#ZT*BCPh$q0ap_CCT>hb(G$9upZO_i9AS~1NSV){T~><1Vm)aYSUP2Lfhl)v
zRhgr&DStE`#6nx`bAA7L#hDqlhadds6>`3NL}kf}VXd3!@y0&lxAJw*m%Kf(^?P~P
z6GQM#*tTUKUUrvl+wOl}p;}D-%2awYL)Yr+GKV@}UVX6im8p`O9{)Zf-!*Dz>8gRP
zcR0F?4d5Gi9)t?NSU-rQnlLlkJ1vytHyMp)gMus+uoGN*gUcU6@H=g*e~(|JFa)8H
z2Ru=SWKrCpd^BYeV00V8H}^nO{@&wFN_w^<bZBQhe$;Wa<Lm~-i0FgCqzp+cXEv;H
zFo?klL@_-p;(P}!w=7z%aUO`SJGNNH+h)$6Kg%*6?U8W?gq?)&r?DU?`xmd-ICoOR
zOtd5rgY9~GlkziqM^n**Ql5fpI)fff7=+y^2sQ=DBzHiU7EIad-s2V%?V^5%6g6bp
zsrp6%!luavO9I{_Io8D$DKNn<I4x~*G%JF4)#gMHubpSa@m^bQS*&5cvOOK<;{}2d
zA;4;Yg>e+vdpgVp#=K1E=9E#tG}_Z|<2C(m7f9hKqi#e6A~3~8(IlIYQ9o#U+a%ge
z$f=u5E?IIRr;dOO*VkI0UhAK^a88{kqP;vd9ampviJbbety`PfPIWxXKYcn5g#Pk#
zhyJR5DX$*)$tTFB6C66w;<v9SpO$c={5nGYOc7>B`<<IhkLSz<8?ykm01ZIMtbZ!A
zkj(6Ih5RVBr69HL5IUyRwb3s~3?D~~`ycUp$ZM9d3+JTOu{&`DtS}G{8`P}{kipHH
zIn3aV4=I+K*fW$?mk-o1L#vd?tMiN`aY6v^J{9ZU17K1}+v#L?l3+(F5-QFur@`p7
zC}v4#F?wC8b~~z|P=0N8SyF*}Pe~FS9*kQ{3n2>5`H$PIQMwVDu>!^D*GHhhVa8>o
zqZO|#Qbq-76nvE{=FeU>`1)xZ|Iy5vMN{i<M^}wsJY;pv=(j)mS$19hT-nZ&XES0T
z-Dp+4+l!x$+;aJ!|HSVA$9zRpDT1onGPl>4k{Z-`0wHI%1rRU>&~wRoxo)3L2&SZF
zBq7}hI0u{2ZV1>iK-23GlG>^NXd0A*MDYv;Urte`4w0s|X@Jlo?B}#Z#fU3$H=9o@
zqD=>+4siG2?}=;AEJRag(>S+o{%?Q#@{wgjmQPqVe#ol9tCp)fp5Obh=h<<?$E%IH
z{LOpRPY{PXblc97M~cR0K3TkfIcn}cdFQ+IvmcRFMs6-)d{|*KW&@f@L&%WrXm>F{
zE(vx+g#mGP(Ap_36Nt#*R3x_K+~dPN0XjU`0u2!ZnEy|z!<x5ll`>+3CAmH}LEKR<
z?xns=RD5#ua4YZw^2~(2EXZi?vfC6Rp@!o6g-oMNlTES>m(Zg3S^z9=p`4L+94`FX
zyqG2a=>#9fE>mx7+P<AY$JObzs*atmWk1lYkEw#Z1+z{?MNq^;U<?6fv<Gk)6_7B*
znITdGu2gY&U8-bpLO@efDn7gY^Kl~E;$gTom^bzd9A8uw%{wco_$dQz*I}nD$BGut
zd4px&rT+Urw_d)w<<Pq*tNne>WPqjB$M*T}Q$IR__|}f1X}wrC#0&K-%O4w!@e$ga
zNqQd{H^eEUnJ&GUl$0#!t%O!61LIegQ<A+YSeg{O35cB_E$ukSb4JJq2>+rjP|1y6
z8efJqBzFALX}>e^ttW51Wd7poZh!mD#@Z(FR;=5y0Mftz1h3#ny{8WP{ga>m6UN$A
zU}OR?Xwi%hTVYbPhu&Z}*~~`d-etihGLIL`M`rMy`F%!*TLP?yU?=J$m)B*@BrY)`
z?%`J=US`z^EnV|2xw6B;BDRW4j=wn`^#!?*!u9Byz7QMIWu)FZFe2%ot*2u2e9V$;
z)|vDQv$_PU4P_)w8A{FR#+VfVECV>(g}!RH-RATfGtI!CPZTD_OE@|symub+dE=#7
zwBfw(xU8|{f=KUbAs=riw0A^zYt#Y6<AmD2#}L)kOD(9lrdr=Y$l(G79?!p{Jum!-
zM>^f><xj9P4)j~+*uXo578W4wplr}+cj#~|brw))q0i9h0@av+;BR6#V10CS1>;-5
z$!o%lPD(Mb*Nd6l(9$?AcI>6*=51o%Yhr({=T?OLNDL(dF~c^oHnxez0UJVk9;<B=
zhD70?fl*AhijeyZD=$0jMl^mH1W+1yb(sbUV5l$__?aLZi0uBv{o=#m9$Uvl5XW6-
zdlxlUB#_tDg2VzM<$%S&T0n~uR)9-Dg^tTEStQxv1X2Oyw;&swV1$*e&_6CwZ*UkT
zMr3w`Z*kr#U<@!*Gx+g~FNAg~<sB<kxpo_tqLzJ$wGf|Gm$N<V<4eJs)PFM-%b_75
z65>2DndJb(PC?+xELdCsT2%}d2QrD!<N}4d+(w7&v;!~a0%M_Z;DgD1MM*980u4h9
zG{+IXIc!TUb1er#*q$}&`?ag4O%o5Wi#}nw>bMs{jWggw*7JrqFg=59udNJWId??|
ztC^|{olcj|Yyp{`NAL4m>;{+>A|WFTr+Pz|NtA443DFA0D}=Og0T+baexQ-LQHqD&
zCc^2bHe7yi!bSHrpFXV}7jgPZIz0Eur=NYcUd`m^rFEY~=SSXxm4f9XeFDqJi&%bv
z-G<l&0RLPrH(=Im4!2kD_kk$_uz6<S=6k_60n7(cFx%~JzF=f6#Lb$vUF<wG(oqt~
z!P>?afF-jE?vEnoU!jg;?<`fD_BL%+s$YGzR&}ZGi;Zgc*ak6so4Qi|4dX-Imx96w
zoa=tkOp6syKy9KMQE#;oWx5Dp0L3DKzt5m29zE?;qY|xcIJAMZP&iIp{FY?!rBWh%
zUDN~Yk!@nXRk2-sNfhu1wcn{cvSe|JECRSs09yhwN9a!Q78qrlRk47$zyuO<y;p<Y
zPJA>O9_L;toFKjeB>yo0X@47ufqIB-$Nh=(7!cGpaZZq@GXt}>14ScGX2f2vNfo2y
zbaWuS`EP>dJiZ%k4K(56jMuJ!uj=O|jmukip+u#2I+rU{C&p{U&|Sl2ij2Ww6gAO8
z^nk-30aHEv5gSIqPzh#7V5|ZuB7{$fRlshCRhCKK2$2i4iI;c<K$`+jTq&xErS?05
zn2!?;ENxucMm3;07#iI`T)ODWuqIa65jo&E6-{Kwh+qr{kQlU_=0gCm3)OWl3quUD
z?KEIZ&L0H!gg!U17#X@U^_l6~VxUr|_Vlg}i@_y|G8b!MMc%$EkTmoRjGcfg#HTZY
z^X|A37RhQi08j?B*HYY!(rV&hNp-XnG|7UxTHKNLMPS?1gYAS1wXOd65^zgO50*Go
zxK%~-l5Iq2h2)6MBd3Q<u;Ak>pu=U*fxb=$*p=aRXwzsjQ%I0>8bbVH@HM!gNd+Vu
zdF%An)@JFQ1(&_ZQtwcI{B6VK*R2G{<Ts}mO{P`Carr;2y$4`a#r8iwGxzRp$|k$%
zjU<~aNk~FSZxl%<^biOn)Krqt0x87M1f&K5k&Xzch>FS!h=|y*SH!M7Mc|3;spzwy
z0@?gNGxzSzChGV5{=feZy_viB&OPVMnRe#PnR6!k?YI5&MccEs`?*jR2VJR-M*1l&
z$VJb6bob#if*Hr&d;$V>u0DYf{un$RGZy3<=o19b$3Z417zjA^BDR}Zf>H{huZK(p
z30?GQ&OPb;v~kxcIsIt+q{i8+HrT4C46p3mS0zQU${?K0xM=&;_9>*Q-!9UxgF1ib
zkqbZ<-v@bE_YC&4V_~fitHETq$o?cTGT4h4y!<0!uAgijV3FLSvBrixZpw-tfN;Rk
z=4dDuqN7c|zCk0)d}Wgb(H-py?{3=$#lwX#vFot_;Tzpt<%_LOXb^-m3$d-)SA=61
z`%D%t&O*5$wn4EnF>rs2K4xt7>h|8Xrfl|z^q7i@ErY6ey=ePrFD;<aE5`<nY_MTT
zN_CMlg6f-}zW0%nv#&L+zPM@=JM@I@iPAiuseVIZ`#nL&pNCEV=Ad%_&U!@d?QnIj
zqzT7=r6${Nf6xP;ykfiOxk4JE?DM{XxDgXD0;hp9A#PHnzCVc!@d97^r|2@$rM}ML
z@!(7}+*e0)4P+oxznm$qNr-`C%JL0DL@2WfhwV(75?+`EDIAJL<-$wGUvq}r{RoK}
z2Wh!N8d0rqoI%@x<7`viQSvjQToD5{vLj<hjwv5ra+oe%);MwFmVYk%_xr_JKKX<1
z>6r1@@-c}I-@bDBnpqY8rTuP->ra1N^l*0aQ_D7NzVYO!*o|0eyU=9MDPDj4d&B#U
zzI$#Qd-?S7RiEU02D_KKbNO!t<ie9&F2ugSkPDer$c3$t3wdmkNK&B6i?IFS^A_Yn
zK5w~_l&l~s!&xwFsAV^!ga~}fROKiPioId`1_d7$>?1V}BZsk3tyPO{5pu9CLJZQF
zq{@K-F`Yyd6oEm~<8-PX6O)@!7f!{p4#6N;cff@|VZh+04!%lYl-8<+YG{-eAz^+q
z5v9gIIaB!194tyDd?breFh0u<j=*Inc-v?2r)zSDZz1?^H8CungwSqRbl8=Se27;q
zS#ZizU&-xP0y6sOqho2nOxflSo&3<w;7zmEHL^=6or)Q9^@yx~L~_Tf7@8w9OpTpg
zO*(8;y2Fz^A~zTjg;+*x0&0SU%~Ah_M8fA82n6VIpg^dLFkT2>5pd@D@H|@p9b|i{
z-u42{S@6TAlI6xNxierJvUSEF95dysFA*aK(qtCag<h^M+`pwH>7lB1@j_r+PZyIe
zh_B%b%iIZ<tQ8{;hhQq2OcbV$^{HVF%y5F`_8XP9H)v`PrcAWWqB|z`<O*6<i;xQn
zvZDA}!_6HoTHsm@lo;I&kPY-EcuID2k(~ZNEjJ)IasdUa4RcLZrme_UxPX3V%Wk3@
z=$5&*L5gf}xN{=A#-8fj#2P!%*eOXz3*>QMOjvV7@inP|2ef4HfeLb5K@ATZD>DOH
zg%4kf!t1?*T+mBG6O*Avhr0f}VS8XMZMUs%gsDOHT-ydZYHn2~{lXT+;+ff&hRE7K
zD(g5<gC3_}EO>)j0%wR3u^`atbO_TTb$2^FhCy9-@KB{=boV{2_hDY<y$_RPvhD(p
zB5KQ(6FYy>LW!amUUxwNXwegO#exsO%v`w-cSxeHZaOS;P0rz{Bsa7S#M*L2hZHMY
zZVDodVT7VelZ=E&Vi$`9erdX`m94MZQhDQ6+X*QZ{@Gjj)TQ=N;KsTSLkrgo6lO(u
zK~9vZJDfMe^v;(bV!}Zsh{aAi9MbHy{Nx=)48gquQfXrk!Z`MfZQ5G7*fF}P(kOa`
zI0Z!q(MI{Y-;Yy-Hi2Mm)Yrw;7dylT*^IM3IMC?j1&e!AuQu`b6gfl(QpPN?OPT6n
zj}Wx5vb9%?AXRwm5hqB*dkw%`HWb0+bb6RR60l0|Dg_0W>*wp2>ksHV^r!WD?yw5;
zyB^17J-z)rB{-S0^O5>vtzjQ#)Cmk$)i^gUB&%uKGFl8de3lPGI3q5jXw2j?FKnnq
zu-GHVCi;nJv8IW`x35IJ*g}6SNQT;j#?nUH9frQ~B693OtkZa33m_F)sR$6@>E+_?
z?neFH{JlWGmzTTA!w1KT^}Hl9B49fquv37}2X2jgeB50FAepO!Bd3~^3_%b_OF;LZ
zX%_4jbgJ=~4A`_41>g*46E|(Ds=EEQiB@}1CYo+L8_=u-W||Xl<0lcC2`#~{5AY^&
zS-#Fr49C2@aRNbh<KcDTGQ!zgtZ!j?1EN&#cD(y}C40auz#cF@TpVLPJCk}odFG?q
zL;DNb=FUupGOu%W!&6Uoo?+?j>pfxH&>75o1LiBPG4tXWi5Fip!2r=)2||VVHH61#
z66ch9VhmGU9`lOgwIh&A`_^oj_E=?Am1tUYZu_FVA{*4(oi|439yw@R%Vne?uvz*7
z(j)h1Ri2gB*K9?+nP6z(%znY}UdpV&fQUHXChJh^3~PgRvlZHRt2NMQgve-=1HDI<
z1^!8JRP2--j<oZt;A~03ejT?zN`ut|j3<0x<I9Cactf)g?732I?`vj5e5yUi6g%Hb
zLmq=S72oS`c;Sef|MY(}K6(*`SofP&tdUlHZ~M_hdgY?DF()o5GiT^Kbm$|tO}3pm
zwwG)lg+!F+!nSKVTfj!(EchohhQbV#5%`Ui4?rFaLF}5zSqWC}a33Ex38Njf^m0_B
zQ@G?44h?~uDLfQ|pads52oG9_@Sw!s;iQ`){Ml8?u)xxqpIS<O){T4k5oLwI3+dNK
zak|S(s+X{N9F`I(g??-MjV)V<vTpIc_R{IkZv2Oxd3M^yIaBv8KJb(~+keoTTA<2U
zSdkr<lyQsx64l#&`LgKZcY(2!`vuG951xMd173d^J$e0wVaI+>){sbZU~mL#FqGGz
ze{iTSCYnWH2SQX~#L$Qt5e*TWBT$7A5rM`&;l^-YiNSDxr&gmftV46Hjt75TlmAOy
zqQ&(6uWGZZ^PN8bO=a5dr4=dcwm;P;#%W%kyzJO<iSUc`#rYYN&drJGoP2{(c9#g9
zUxXhPx2A~D2vliAM3^TH_Y5yA^EBgR6?}JwamoI_FE#cV5whWbs9meQdV{N;e)q4d
zw>(IxU&NrR38uc^{LfVk85S`?n75E&5zj-BY4t-4MbPASK!`E0H1ZCe&V6Qh+RuN(
zAVfDx#It-GIS>^FAozP>1kJ}aXywmf&h3MBcoZfQXn2v2>W!XQ*Y*j--imV|jGmpT
zj$yViL7`_-7q&t?<qYGEy@$$G%oIYE4Zo(`FsbLp22I7uz7JM(jz}8-1Lb1dk6mjU
z*EGHUA+|QY+&l$?VKn=wbCeP0yl=oy%Y%F!9z(sc`(%U?i%SVE(hZD@efXRVid|HS
zT@c5I6Kudy4ub*ony8OE>?PfM)BE@2f>>{1d)ytdG~9rgj#bQQu`PsJXn5s`Ma!nd
z*A{Hr_3h_Vi!gxV@Q*Fj_O0#5qt|a8Sly@Jf4;o*??6zAT@D@hb?*m#TVILEa61M!
zE!5=8bOHX#a!CsJg`Uq>>JgEeZ};)>91^7%L=+KDY}bb&3?LSeiuWyqN0JZj-r92O
z;?674Q-|hPj?7IOk}|2HDU+R5S5~%1IuF=vO9ur^_5GN=NnZz5-smSo!8>m|RYYg-
zLX0stFP*QC4mM^wA1U0+0HMa@YA(=rE`<8)@2FyqA)BN_oTi1nqKyiIdW9TS+aA{e
z`9iZD;cbMuIdt0aE)BakFPv{Oc|r8U@pT^$$?PfNz^UX|lRcC_%A^v3o~*jD^Tgh>
zm;fPx%0FGT-59m7aLuB(&!`H*t+vN(Cw)Q?pWBOuvzt2O(dydRTG6_^MRZ{wzQf1N
zW*x;$uXFW=3`%jff$PRFdLTZ8<byDPLeZlh1rYt=FQ}qi>UP{c6O@Tqr1u<OHmPFH
zs+$!(VFdl;`eoZswyw0wA?H4!-}0bPf=ioq8^9$K8JE@HO{cUaMT5$m5x4RGR)y-=
zvbtF%n$+K@QH6vqzXGaEWKvd=lYwhdo%M<y)!+_V{{JabIYkP$6k85ngMv?cwzaHM
zm8oG=wbo!RomT~axWx%hDs`_KBnD9!mDFR^K*g$oA`}&ud6g~1zg;yz(B;C@pH>Zv
zD_b2`4H&l1vfx^~h-)3BNVn=rQmh&Hiop$%i;J<>n!#198C=~Rw+H{09)~r9LRqgh
zLu*y<H3JXIMbFYhT5M5h;q}MBB|q%i#CW)yO@71~Q5M{suzJutyJ5EvMz6k1@<i-Q
zqW3h1dt%exZoTriTU)%w!n%F6YgRbivPdfKyx`<ixetRD)9(@O%IMU2URSVW<@J+r
z#(qtwzb4Fx<O$77u5n*7eEl~9b?T3^II#x3la4v_-3j80E(rCo-dh(KKzv+0J)N14
z$sIvB!<~85GW$AQ>@K0&9F08GF;uj59++5ZSXd76_=r)wmhHib_iSsvwdpSc6srr=
zKLsiN>)BX7W5|R4tS=@iJ{t!MZ!FAYpN&OKdOjP&qEgJp@AKK1X%WJ>rs#~p#}0wa
zBBA1Blf*)`lT8YY7wj;|tk?OuCW)mg=bGRL&W1VvcOfOL6H)@c&?_;B9}vH>mVsXx
zPG>)rPNsN`G1}=AUSkBEg$kX&3Of5JQUfEmV66}aS(Bf$AChJ9LzVb@FlP^`PmqT{
z6!jk5T{6`6vKz!nx1Os4$9V+(Jsbx<gqYyXWNt>C8pdc6&iuj4%PmiTzWj+=I-Hj6
zuw8x*R@Il~)Nq^SbL!!KW8hc1S;MPigKcfLtru+%KS7)5oFT08+P`Qv4Yr-Ly#|R`
zlmb#Aw@L(+0Y;+~h%lv|5ENV?B;eQ_%nKmTn+?7Y8SIK(Ri*1N2ZKuJ>Jf<#=O<E?
zaHag1N}3lIEMW*3^85GHdEv*mJ^PvD&fYj(wsqFzoh$Bo#@tzcFI-)IYWw41+aK-J
z^~<6QSNg<Ejtag0<J-@j`UveuaFN$Gw1j9csO?>9ZO3Z0t<(f+oBfN|1ex`vQrmI%
z+UD9t$bf*N$bf+Ij)3BL8cvY{0fh=Fkj#P<D9+1iP>Qi4f)hyOfUN+hrRz%-N}5KC
zh#t>l({Z~2k*5*JIh=F_4*D>M!~MVeL)RJQ?GGbuFUiTv#~)o6;mU|7wj6M>j-Nf|
zqL1Dcjl{8ecw#k=2I3G~UQ7xW?q?=U6@7$hR;uEv^%M?trP(gqe*1m@%OAh>uV22{
z#Zo)Hq(&+J!xzqeGJbCP;X8NUJ&~mgEpsSzpR+K&1oF5(2x}flxQkrBKzOyl@dg4}
zkw>x|N?-y9wRoVPzdsfX{)j^iH~;qYew;Q=q%zU>rc(x;y#z>j?Bu#P>@8ZU(~?V@
z-q}3)fys}(d;aSsh#<3Aa-+wke}1&>QfuDK*uEb>@$iu%Hl%bom+iU6;i`TuxP6Rs
zn~o;@lp|z!FMBT)zMFKZ$nh?38+3G>knNRtrFICSP6Y(CjIC;&TC_S<VDLH>Fvu*p
zp5QgAbaj4`5+0y*dpQ)GDN|bMa{`LQ`e{(mN}*c^6xfN2R*J1|J|;zL?Mp!6kx1Dx
zWv_vMfxQMjyG8ugu<-YyFDO`KDdx{u_&2;S2rRM`t6?bs)CHo%uP9Ku{!mNY-J?V#
zW6_GgQlP9+O56>Fd&N91IR7+<0?x-NoDZ^dUWv5{&MUDt>FB!z=M|=bX99wtLqGuM
z`Aoq1+RZZs2Im>fsCj8rI=XqLK*2dzs?af>%vGU8YdjH9_&HaVlJTfUjweRr39sRe
zf|lnLo{$MDl<w2ALL(=5!bc*|a$SMaSL@f1AB4RhZ0@uC;Z+@W)XoS!Wq^hQ)_zcp
zk0|4N7F@96mo|Dr)x#CfLe+VeoAXswapSe?dam|W=6qq#_ZM(s1c?oR?g{>H;htc(
zbY8BkL_E@oH^hdI()M*HM5$j=OZ}rLwJdel063%b6s7(`&9g&{XR;Kfl{;Q7cObX_
z)gjP5T#+)Pho^UdzE6<k?Slm|G5HMjfxPMC<LT!YIHJr?@&q?9C1MTZZ1>T?`O;Hg
zq_T*cb8@*?a7p-f6bn3r+3INx**bM{W=vdE)#7fe$dkX+HTg{ST(YCvIug{TiV<!`
zR=U9pq89`wcQ0>W5Uca`!!##M$;bN5@PmP*pPzR?0E_?wOx`e4^Y(EyLmK^G2}WHC
zdc{^hT!q?~q#DI`3(AF4Cl88>i>hqxwxq1KQ><B3Vx26n7xTp!tZt|~@%7^-byz8T
zc=`A_Il)fR<nJlF`*J6&?yxy?S6s0=kcoxYU+lj`^dybj?5Nv9o?xXQY|NiGhwSvR
zo*P8n`$PT&bb34azz~j6KYzqdfeE9pKj@Tv5hfYoX-)n<K89gXRU18ql^Oq6I#sIZ
zpUHi$$6nFYDT3xq+hOb@Ic^!*N#<KgXvSO~kjH?d9%Oh{w9!?E;FIoRtI<t1c~HcI
zFnW2qxp)xx4T8HqVuE7F$jvHM<1C@)>sII}we1zA@D7cX^U+Gf;F`nMpzf*7r17@L
z=qD`-JI`ZtXDDkGTWjklcLoVo@(u>y-9&l`t<wW*kO3NHGIl}TOdd`uRl`A5JSO28
zqyhSGPM!%?m3H!Q&R9`7_0*93nZCu;YI{K4YCA%su_4*kBv?nAZ11pgdV%k_*}{rD
ze-c}8@M?e<A)xOUaLxsC?ZB)M7cU%8z~aTn+t~<<6lZ87oDnKllHf&8QpY-FuY`-V
zyc?@s1Fp@KXjNdBa>_PL+E{Cw`pxe*uG1*n*XN#n{7o9iqZ^)k<E>{WZ$5bN5JoIM
zhZ^-f-t#b2AtMVQwTFqG5f1Niad0>2;$jHz1N7liU#lN+GMlYV`an>o2W5~toFro?
zK@2W<?}GOQMU|=1$6akeldFx(*r4LwSjP$N8^$R|#Dg^943u|hy_XdZ@?eXQmddPW
zKc`{T>6w|-qq(*A(fhue-iEV$qaM0@(|+%FUwHR3w)#4b_U+h;$N-@y-#BrCePcVe
z_r85=6bT&hQoJEm#X@@#ZSw5r4|5}Hu)#A}it7(`x}U%79|*?-1fi6O*%%QB7e79M
z5XBXBvpSau-a72=*vCv9rb5g*(5_I*Z#eN*E~w))xgWPP;iZDa$nxeNNZ0GD7Ok7R
zyt3ngKXUYQf4+3(yGzF&rPzl-RQKuS%i8GL>+MG$+`5krvpxFs%NH*2ICeCU#!S9;
z#g_Eh6_203LMw)ZtB;4zzgT`UAuK#P(2wc8n44E%xGt`LSXiXl7iI)7*)p-A46_1b
zC?}LxW;rr=WLc!6u<IyAit16!Aw@&Ni~wVJ(5@UX6kaif6LE;ne&V!_y{;mmgr>)y
zfBuy-hu75}o1Z!V{bkR8x_8S%J6w$m*R-|H>^Su7QD?*J?3MEU+m>w~GPbC=@WuN#
z9uL(={Nvt#th-}7qOycO^~wwHKD>wb(IQBD<ybSt@-=v9cyxd-(__N(4B(}+SRzb5
zymXjHSbv<kfI`e15nNan@u$U;@cykiq2`TE%o^QgQXGA1MGAp85)ZWku`)-IR&Soa
zaoft97vB|8bZ6;(C#%XA)SKPXCr|sX^6<gt4WqqHtC;u1x~gfj3X83=+tyB5?5Fo%
z*jPC~fhH>Tm$Pw0!wg=gV$3n+sIhQTmX(MFiP7232_{|GPYZ!xL!8s`!m`BVHPj2$
z<>lpOaSgX%8n?)9P9w@-<n18T*lo^w$o=S6s4dv;@Kp_pz*RK-^hl5DLpTxXlReuX
zx&u4UmoC3`>HXKA*gpTs*_p3X-I?#@@{NyL^wvXn!utorBD(d?-NNrt)~KRAFY^*i
z#JqkFYQ@5}H)eNB08Gso+ycOH7S4#7LoF8UPFXC0uKwY!I;?EXfj+~^0#(I`A~)H0
z$Q=ewL3g*CBED0ocqQ_2C<G#tMy*>`)IK)i$iZVLpI=k~<C?wuwz64oRLqR97LVC>
zE8Gc%E}!>_pnT}uI&MWky1vmL$JiAPTRCe$AMbGL>Fn7jT!t6PK!azf-^j91FM|<b
z;c=8|WSOUG+$e-cMM%=dDMi+RNsy*xPD{gvahT}xT7yZIuGsSXhKwn0sme(ol9Zg6
zP%wS~YhASF+RP{KI|U0!8$367*xp?TUHH%iv=Fv3ldivZ|7|o{8MI!0gL9dCU_XcX
ziCg$tbxy?16y)UQ%TIS8EJsifR0TmMR|fX_dSM%oTMY|}yG6U6R67i)7O11UO91kv
zwFuU<qVkdZZ2N5cLMCl&2n+TOY1$CUg6RU=dz<&rv9?E_dWCLbGvUpp@>!?JdipNR
zk+5F_kE79IRv4ZY1)EWKADCVn+&v`-O5E#`51$L*DBRPJ9};whaPF!OIb1)D6P16Z
zq2|M9H!mGD=dZP`y*Bgl2T%Uv#(OZVjjN?CyYHYD`XwLeUwf4n_pq?VxL6ME`J;`-
zxwz@PC`KwbFF#O5v6sp<=c;|JD|JO6Vt<pLj~Ql0W_9fNALvsw=zKJ^j}TD9pqD{8
zytUG{a7pDq?(692oQnm3%}URArrFN!yn}P_>6c%AV{<2WwF%Dg6=oeqfndz-p?#<?
zERCGtOE!dHSjIxYXvA?nqpS-URi^7XNOvo&gqRL%MyRR8X@A8hvDo4YOY(%>W+l@@
z;d9OgM{<wR;?HJYDv2t3t=#q*eBkz@&Od)`o5{|X+K$>z(A#On7j(j7F@2|7<KXA~
zb=WW7!#5*1rCbtNf!-d-DGi|BPB?Ce5PCrbN-IIBa0#IE`>Ws!>c)|v6qBKyQekcg
z<%Dmt1ugL)J^#xOwi~wd8>!o=v-etdocg!z#@FZQEw<Inns>F6Mp36nsI)$>H0QU=
zmw%;eIaPc$3a@|IJ3^#MUcW?g^OAjiTwTqu38YZ>QOS%E)2wk%I8W8)0N#_mgcVY+
z=H?=Y*}|4?{Bh>-d!9VO4FYdO-@Og{{17LeeD$R_rE?s6G_V(-BB6fC3f4O_gd%k}
z;}nL$VDzA74|8Fehsg;4v_@?v`ZIQz38GJ`4V`yMSPM?K?V#j`Ds;rV;NA~LNu4`v
zFDWyK=znu2a_mjOo{F{;3F$w^YBmxd3k*~OEjmPX#X$@{eVEYkOr~I2##}GU!O()j
z@KzZhv~^!k%@!Yi;jsY9Pt6!K8K)l<i7^QV0$~;&2_ro<GIC$zyQ`?jGs%yAwdeWH
zPY=EL%^#n>eWhck?GO0B|MzRh4?QeTnDfZ=hRL({tlqq<{K5S@_f4!B`_7AZykgM@
zAAxK+9bUjEaBT}+3E2|kGc@f%s7vn4KQhz{p#sg$W>2p`OePk%EVg)>F)W)UWr+5J
zOG-b7b&NVpYg?4Ot@YZP#1Rw6b)h`u&zqF3Q>SELJzKdLgLAKq%4-kU*EF0~zGoSX
znh(aP9MQ)dY@%)kH<Q^<7a9_58detU<3{0-$)s~Zckm9tI#wYS-tQGvM0fX9=8_)c
za4$loyk0w(b}AS4+`YUJs!<5;65CTf;!@Pgr-V+c()Lu3xD>TA8WYbiwEUN#vr+a5
zX3CeKo4`JRrr8rZe*I?T;QIsyHdAiJN64Wlhcp=P*kMSm@@qoBAu)eVH^iZQslUYz
z1$mkPh3n-8Xxbr#mTovV{{@^vz}e~m=jOkI<1|8}r%i*?t$E}0e69aoqo+-SliiaZ
z1oBmRBQ4V44Cqm=tp>9OXORXcuNw}p6X81_JSI_0)CqKXBh@__DZ;MH6SX8XXy7%8
zq$A(v92a%PIi4s$+BxpzrBSw6KBID6+1}y0Ql;LW(<oakZ%{d|Z1Jd`>EtsGaF%Fr
z0(zEE-wkJp1}DC|guE3wm1^`X)!>Bngk#Wa^eoljs2Y2%T-|V%X>fX#%K^?Z4UR*(
z1jo51QgED(;d@ttljseclij;uykF?fDpY~vV?OJ_acwv3Eb?8!K9<<0LR^<x85%oK
z+{&K|J9X?%iRaMU;kmM}#ru`AuQgLXCHfVdoko&a&U>+&BKj5I*W&%^h(epiUdsxM
zAUh0NEcQX5b@%N7L-!hTh`ljd{Gljaqyq#w&cJ(=paQ*)Q^9qzK3cu-8Qxj+C_xAE
zpai04cJp(K*rn@+bF=)^pWw_!kGkRj=jOkF!}k#qMbA{|Y180zYeG3auA*lu^t5Sk
zGPL$4I3s$d0%ws1r@My>{)(Qdz*!_8P|G!_8xF5MdsGY2Gf}IeXPQNAu@H^ZJg4ZH
zfW~{~Z%RAiyh3~GXXiLJvzWJm*E_7Dc&$o@de!@UJU=b!{bw}?bnbvboirG>r-Wsd
zfWh08gr18QbD!-g8jXDm#DK;Z{P`g9e1+{P-Cpq=yCVF#uF~E%#lD8>Q4wtxVP^nG
z+27zaB0r~5H%lpPAFZ^ggG@nVv64eRu9Q=Y)uF)PEkeMMT6M~P06c2<Xjz$}MF=Qp
zS>Uc{S>aj@^oDcue*x#_zk?%MmO@XP1}CK#J$%ep=xNj7X#3R)Z$!&d;4ISMr1yj)
zT9yK5kp`!`g^D^6EemjX%i?t+S{C0+a(Yx!rVu_3V64g%Eep^@8$>N(2W=#Fl#ovu
zWR+S&)GF?2lq(W=)T#)j)|5>t4hgk(l0#zU90FN5OSDa8GwClN<cd8Uv|eTN<u4%Q
zV#Sa5FfUZbEYucgK+92R=x#aM45rWkX+hAyM>VzOXd|ft1EZP(17$d%ltbydb}IO&
zrj&yge=n#|8VxUp?I|ArNrBL-y(6BI@*RJ!w)bbyKbRQ1Gr(cqKaxd1I1J7+c_`XL
zsq$PtD4rw2k&cNzjQpa1qzekW$KAu=G!y*;U-BICGk}0T>}Thch>|2~t3s(Q!uNcT
zqp!V>0fx>hYKylF)YeP^K^sYWL&$}HXaPa%rM)5K-Y+18^`wE<mY@N(rItf6-~cBT
z2)wpL>+CLvR^tj4ytV`kP_RIuLaT8BL)4Zi2QB`OphBC)z<oX9MJW(^a-T<QQgDmf
zQn=40SbjDtlJK)pycQRTT2W66;W-~Kc`Z)p`T=FYKRHv>7V?X_SglZ~MJ7`ACAkEP
zFGY?-e1y8tMl%HlpJ@dQ%(QBBBTWicc1Zb5D_|f;y#hnyRIBYOVyvT_<UPDGkQ~C>
z1iN8GRHu6o)yWyEaQEXT{c`TDE;;aw2tJ{B<M#E_S?zbWdkQkQC#)Si#$r1n?naFb
zm(L|VG0J1ll5jImw=IWI!)~mW&viBFZ^0>QAA%UkdZQ2i^EmB{m{7@qZ*ujDSYyBm
zl@-Szd4%G09S%q!gqy+Id9G%8?((v-<#`*YQ4$kBVCm%AT-}wm%gocpkDq2<w=^fM
zu*BTPC$sAxfc|G3@wgk^jh_D_9s@AK$+)kdBc2_(O=FhEBXFYwn&RpP^TgbNYH3>Z
zzhg}uO2V=b<pq&-LS4;SE^dY9(|zC(5oL-^vX@HwbHFQXDRvih!>w|j%g~z!#)tL`
zPnj^?R^44({es!S<8E~gkBSJ?7djO_-(6-<(Sov`H<-cEa55yzwNJR&30_i7;gs-$
zm_9D%!f*nI2jNnvS3GpIlGo|bKtb9x;UFv)-q+19D%$1n0Su>ng+Df~Plnk&4pcgj
zXp4>-mNhW2C}6nz)G<-{Lk9+r^c&?mV~+!+L;A({TT#&%6(4m=&AhP=go4ubp!Asj
zIpPXhty!MVCPtYL^U;H22oZl;uLSar#Zi=agbcy5I9zkArSA@U-MP2Zx7dAJY3Vdm
zQHbsJ@Z_YW5%Xj7<a1XijT|}YD)osOHO(WnErPc<J4R;(qnF8u4GAMP>p4dKX|sz`
zN8K2;CM`MO?tCXNrm^qR<j4W34ybkKBNiunOwSx_`&Pkh$A{=v9$0P1X9bnZ^JNy~
zZStnFx9sij5^9P!4TUf4)9{eZ8wVVXiL!bmPeW<7_JKM`<>yWuX|ToKqAzf{X=r6s
zRCq?w^vw>0=$Fp+kDcsljU0-`F~SzCQKPgBJ@_3?1|e3TGXuxH`xxgNsRvGy`}rA}
zqz|>kTZURBi=F+`?4AJ8E|PJ@_pAr0R~td+)a!dx$?V>3Bre7kjYO-T$yy63$gG)%
z!Ho>E<xq56Sj9$WdBe8?j*%GQRlwciT<$#I8MYDdW;d;SOEodU55Aw1g^x<br0Mrz
z!>8<=IWZ$PJYn|lg$sr*+%&1mJi*9e4@EPuLQ~^H5XIaXI!kJFH8@jlf}x!L;aiU=
zDViIsR(Y&&T@=owS}Tnvi|vzvbkjsRddpr@pD%_{SkEi*4}-8?b|t=~UzWFrh<C~3
zqK__fj*?8H%cKBJYo+dKf`P(mxd_7s7tLIUD0Zdfpx-Zi{Oj+Zd~)^1i;o|pvrZmA
zdV(dwYt&gN(7fScB+mA(?Ykdt&~JbK^%s-{5&-j)r~gG+BLAi=23{7wDz~U{ms05+
z#q6C`4@TtfEu?)EXwos1#Gee#f_FTGZDMYo@M|Q)b*Hb%WptS-iuqFNJEn~Kqewyt
zrzB7!+jl|0HN;s*gh5^)#Q`!jR|e`ACLO!6g0A1aEPe0lr|wC8?B~O;Eq>g#jX{4)
zW1DViE}XMuO~IZ=wl92QgY8?!YbwUJU3yb)#;R{zR;=vThj<yRh%RaLlVhS~e?Nb}
zF=ZxyC<*=jT_PhxN0&uLxtK?nxkPB}?v94gV|&SQcS$vZ6Z^7%+F}x2ZvR8Kcbw#L
zF)tjN@XplppMC!6z5^#dc;vRZ$LA-O{J8k_PbI^;Q-ONl<GapW8ei2v>Ct<)>@9y}
z+oG*QM&u3~|14UFpX~v;T-1^$I2+>X3<pe}u$U#1x0l`%4jFW4DxRK_$q*^^bv&i)
zxVy~TV+7v_Q=-^I@tST0TjlZ_(>p!b2RGla9ddW_tM0rJVY`(s&6Td+2&P+T%)9+>
z?~Dg8SK7AAk~{-DG0=dUr66AyUw;YvFvM##G~jxe*^DXki`2V~F4OnqU$?RktyYOn
zCr$*|Ifgn`BHJ_Lzp0z;>#K8L%$f7RjMHEL>-m+N1`lMXJNL!yW&Zzq`O>x6ezobb
zZ#;7Esi-J+S9#}+V8}hULI$;RD>fdX33SHW9+WPDPCf5Sh~WkH@!0Y(sbFKuB(4eJ
zr#ZMLx?3-=m;<6qO}_Dxbgc8B?Lp|ghhN*uSBZ-O-&c1Q@Pg2$7-<3@%<@9)1oVS7
zN52R+65{QR7-lii9${n4-28~gd=I#df%hywzo5}&eo?Z^*fO~%OR(X?9k$yk;PVnr
zfnu9n9C9IER>hb+g~wRLktoG0xNunzDVulNE}W?=jcv31M*Ypk;jhno<MTgWx&7l7
zn|0q)NA9WlNA0xx>CbRTvE)?XM0XRdp%cq%FTV9D#fP8Lst=wxa(wdk(JgN_p=`m}
zx)`KIm^G*oXc?Kx&g&-Yp2OL#B=nq^*Z~9LlEP!6A)C1%;*%cUjG|)V3@OR}Ui}8d
zgh%0QK9v$;`}UJDW+W%SKMfw}lakCLQg8R68H|YN<-DxjdT0!~{J0jniKcJ&3t?2U
z`k|fjNQ_9*tuUnCzIek;RdvS)Etp@jrf$)s(4y)269>(kJ~EshIIowBm!7|{bfT>P
zTsk~;LFkyUwm}2?MU{;mQxi5SEG<4MBf4)&fz8IsU$xb-cRKH3(>vqo#<QIVdHuS;
z+cZ2WKwgC{4CK{C6w^GO2iUw>o2~%QCn?X#OGq(VBfk+lL4Dwv8=hjKoGfmA`gnNw
zIY}|G-iS}@=N*KIWp0Q7(if+7%sOnv!!b$st^<NZaZ3uV?m0(vFwR#EB*2N}bQn!Q
zYEn)WrNU>whhlPoy&~zbUcd1Ahu?ko>31!9&k4W0d4BJqa|ce^w!Hk{;Zq%tKgt%S
zJwy9I9`T}aM|NL-<U^aSV0P)N$EW-gv(&Hu{Qbu-zCqbU8Tgt@+KeuPHTEBT9l#U?
zr2ReD2CDDJD7NN`0i*UF8W{2302e();0+)o+1FgXFtCA3#d}4`ja~}P6=Ij2fM0%(
z6F5geB}ly7sUpP&3~wf9VUc)k1nQydIpoaZD@bV@?hGW?mZ7X`boLeGv#6Gv9C9q|
zO6$4u>AHv<k=;4yNZ3Y+HKZ1kRfimu+a{`5W{DhJL+EYScXS;?o;e1rj+8t&Cbv_8
z;;vHC^#gJQaw}Ce$7qDe5O@ss99NLT&%ik^N<+uk9#?Y6_R?fSaw+HSk>?<KI*#$y
z_&my<YY5f88%q?;9M#STaBEPk7m4znfy6PHx8tsl@#O}+3x5tX00W)S`Eu7zVmL;f
z2m)?%*lJxcJ;#XO{{=7ppM29B?`lx`0bju?yn)V8U1K}hd2<??zZ{J>So=y7!6SSI
zz3c;|9r9Bts7L5j_`>At(^PU9Eevll>MQ>hL0=@n?SzdjV>{Uk>_;g~Dv{<(Yo&Xo
z=P<v;%JbxRb$+@k-K)AE^>zAp3@(OTL%m_I;W?*Zr$?N=cOL27?);*2mrIh%3YX(9
zU%9%w=DAk79&-Jsv9Gbh_>`N;t<r6c+bOqi+_T)<+z+{*bH8B<Fby(Qo0gdNnYzpq
z%p1)Y(860hJv>Kywt1fP{Kd=FtIBJy*Lm**?-kyU`N%%`KFfTL_!@k(d{_BC?#KKB
z{c8LU;J>r}vHmOlzYQn|m>ck)z>vVbf!_s11&s?T3%VS1qfc_5p?wzhIn(Ed;Pl{G
z!A-&U1-~9bLk5Nvh17&B4*59bn~-avuAzNG2ZUyY-WB>_=&8^*LO%_?653@kTf!{K
zmfJ0NTaH;?u)J^i!tz^KRM^h22g05Rdp+#au<yf@!uN&$BmCL$v*8!Qe}s$TUDkuv
z<JK3g?_0mHUhQk>>)$t~@Akg;^?j`GOMO4+`$gZY5hEiWi+CyGgNQF8u14x3r$o+)
zTpGDCa$n?;$Wu{+qee$fi<%d;ENXMqfvBTV&qci(^;y)H{l@pJ?$_LJb-(TX4)uGy
z-wXZD_Pf~c$7mYu5gi_#6rCGAA-X(ze)NjyJEFgh$&Hy1Qxmf=W^K%_m<MBy$2=SJ
zcFb2XKgV>%nq$La<6<*nn_^eRZjU_>`*7^jv9HFyAA7OCfB&NX75x|VU)q0N|K0r`
z?0>xf^|)birEzs}ZE@@4?u>hQfX{$E10EXi<bYQOyf@(TfM4VF@xJj<@#*oo@nhr5
z<LAdOj$a$UEB@a2iwWrog$bnz^$BeW?FoAl9!_{V;cUXigzpjy6U!23B`!|fka$<(
zk;G>b&n8|>{7({1ib-0OY)C$u{Cx6z$(NIVN$yH<Ny$v9O<9rhV9LuWovHm(XQkei
z`fO?!g1!W##iR{N8=W>iZGPI4w9RQd)Apx5llF4jTWKGreU?5neOUU~^rh*m(>JES
zmi|uq)pT3Nkc|9{(HT!?yo8ew4Vf!4w`Sg(`Do?~neS(QIdJ&ElLLPqG<DDugFOcq
z4L&&d?BI`vBn-(IQa9w2A)ntAepAy;&kuDSnmu&M&<j~Zv$kd3$ac>T&5q9=nq8D#
znSC_-`5f<@J~@4J(sFLfxjX0g+>G4exs!9-bMMGKpZi7b_j&1gL-TIS`#wKBKRLfP
z|K9wE@*mBAGXI7AH}c=h|D?cL5L=L3P+hRU;OsExVH1YkGwh4PjKY0|KNS8pyma`J
z!#^2e9T7XCZN#~eE+Yd+jvcvX<XfY3qufR%jT$&AXH?y&`J>($b#AoF=)%!$qmPfF
zV~WS@81v=W{IQ$I9w>4u@-M0{T2Rzhw4rEg(XZpij+->Dc3kVY`^UXC?$=^{v2Sry
zaYpfo;;F@Ri<cE|FMhcAc=21sKa4kxPaZ#EeEaxk$6uZhK4H~_2PZsHQc^Olq^4wD
z$-^ZlOFo!roH%LXi<43&Jzm<c^tLiXSy@>{*`sBzmt89ReX?nC)8xaG-=5+=C4S13
zDKAdBI<<c4i&H<G`t`KXX|dDNr&UZ_H|_AWH>X{h-gkQK^uyDCp5Z%V(Tq3#{=W*R
zin@xniWQZ*%3+l!DqpGmxbkx4k5#NHqiSK*nyMXD*Q!gZ@2UQyhSj*%c-Lgs6xCGJ
zG}f%FxnrhzX5Gw}YQt*R)n2I^T(_$3oBGl9r)MS3dTe&$?2B_Y&Dk+$-&{I(%G|r=
zemeKcJTh;^yp0XCVb=V(`Ii^0YGjSW8do*G*CaP(HdQrkY`(YUrk2ACJr>Shc&4>~
z>%P{1-W+iAyqlkF^J$ykwxn%c+nbBr7mZ(Z=c2C{XDnX0_|e5zmke35WXUs2{g&1(
z{dL)rW$Tu0TlUhj-<EaVl5)$UTb^C6Up{(y`|?*;c&wPZ;;EIsE61)}yR!4v+FQR^
zRko^PRpY9at3FvhV0GK-(`#JTj9;^R&F5=l*DhT9>N?B1e(N&V4PQ59-JEsJ>z1tB
zxbCiXKd#SOU%b9*earea>vyd`y#Dw0vF+vU^V?UpZ*9M?{Y3jS?Ju`~-2P4b^$o@i
z!5iW>4Bb$)p>jjhhSeK(Y<PadmD|W|p10NC_WVZQjk7nN+~l-r*ru_Yj&2Ux+`jpj
z+e>bLWQ)_5$y@H<^4lGw?$~+9hg*HNwrpLx^}TI<w<T;FylwQh>D%USTe)r9wnN)a
zZhL*(r`xV<m$v(DkKR6L`{?a6wlCOz>-O#2@8AB^_P4ixy8Y|zf9!DC5ws(A$B-Rk
zcU0_X+Oc}a&K(c#cyh<vJ1+0|b*Fx(=gyFwF+0<C4%=C}bJor!J2&k-u=Ci?7k7TR
z^Xr|RyF7M<?@HR0yKDTe>Rm0n*6iA`>z-XlcAeVw@~)3|eZA|C-OjrMcgO4=w0qR<
zX}jm{Zri<j_m<sv?LM;m+1+pNzO?)MJpp@0?^(X*g**N49CzpXJKx^hcW?3DMSD-~
zy>M65T^sH?voBy@*uLTW#_fB2-wXRQ_vh~)xBt=oFYJGB|K<I^9B@7mcp&z`-~(e0
z%s4Rrz={L69k}bjg9lC>c>ciq2R=P;<-pYgw!2Mt!>C=%sx;t}@5W`Y8K%L%5-39W
zzt?iSKjG;Iv2T8G{e#YP&Y@1whePX&#S{N0pCORwka|NB!bQI$2ibdMwJw&V%Uj4n
zeG6HjJ5CnU^<*`RBgMFe$aSO+?;7YylE=1^sq`yy4?9Hy@T>{fE4UWmnvN?L*JfO|
z;+l)A4Oautk82daw_nn9l4<b6cW1B$lF3>5cd|lv2<a?b_>I^jE3g7O%NodJdabKa
z=I?^YS^Zad_Y%@zvI0BRN{W2)RKQLoF8Jmdc^?)MR+21_;W~L-dr^*!<Oru3X)<Ui
zl}2>kkoVE`@(@xfzd%k%XGkm3R=JwAvY8}Ujwf;QNpgao#Tm1+UHha9;{F7*vM2a+
zxkKbX!M~A$@%<?>fgJ%)PLjhCcFsV5sC0v*^LwcS_}>E`C(s*63po!|-XFsKd$`8n
zx&>D(&m)JSZ2M@D{sB@Am}8_CQjB*EocH{hOuDW~bIAtrtb?So4iYWO@)9|r8-kq?
z&hLXH7SBiF{B;4oFVuZU2H|qW6%F2x;C%n9OW)FE<8>kGf!Bq4p&n9rUEuP;HBfho
z#M|qE*M;K+x?1^fUKfs+s0-AYd>H)WeE*9}{{pELb%A=|bz#3y2cMxXW+QzW*SGQx
z(xTM^uM5YEw=@15b>VpNx)62EQ(k_KzjunV3;chRiZ+Tm=j9jeh4Y8g`M;#RJ@Yp8
zw<&MKXjkADK^nvwy1qg=w}aPxk-qPcP6i*M@SCS6&^ISb`_M+wN04tH?<c&i@{9Ku
z<XNYt6>6$HKQG<~<GmBFM}fO{3L8fIJJH|3)845eo~$tJK>0yG?+0o+S55Eb{gU^M
zzfI9+MZf8lihhjx`)^a;-+7<oZA{d&+V6Sa<Ne<;Wlf-S3&x2vUBB=)z}q};clNSr
zwC<y^=vT3F3ynaEpw8qN(k5C>h9V8Z#pHd=6KN`MN4($3FLiya59<0@3PT#*^|20@
zzOd_K*3$JB&m+b<KHhC1-lENbHk46}W4unqIEQ@paZVmeqD5aifp2)<slzw|Uh#73
z1JKSf#^L>9eKN)v^h?plPGU?tfbkgZiM5bJXs3s8-zuZdrH}CKA=1L%OHYYDazfsW
zF%S7fo6&<O7)RuwE*to$^s6s0u02dTM87x&*qnC2)Xl~FVC)~ig!>Buh9q$DzQ^C=
z880KECc&*UXy@Y!+5;~qr<J!^1FQ`UTajl6@*u@Ny$e>+XGOn!0nhn&d_Kq|?i`kW
z2>M4Gc!str+9v<DN#&QyNAW%9701VU1(<eTabD}Dk`qowauz2Z&g$~;ZZ+}(m;4hc
zaLPn_4DE=I4ZFx<c`bN09sHP%F&6z?SB$-keIyU`o!}REbOL4a*3CrvIWAsy-Y?ZT
z1-y#p?GZRz`FtS1f_Dco&%Q%W=usb-ccam6Pskeq>k7%!SK@w<f{Tv>9Jh1{-=Ytp
zukyL*Ti(z0t;Ac;`#8@78aNJt7rf%%*!x58RO=sv6hmSV7oQ8U6%s727f2pY`5eeE
z9Q)1#U5mxV$X6Km?r{#n9K+=U$PLVhc4s7o(hhQvT(uo%HX#ded0~w1JjUNGWQ2Y$
zWCB8(oC3h_GvGJcs{9L?iMhxZmjzcUuF1&Tipv|{@w%Ic`v&klLbr!3X5ZkLDgW(w
z9Yp?A%+>tbN6ljVBXlo@tqr(#Vg5_R6@V)b7oQJ@;7Z070eTRq2|QC%b{O&y?kO}H
zXkUbR;(iYvpfB40A^!w^aXg$y;Ju3s%^S+&&HJl?%Ld3V#*}hfCtxm?lF1SMUJ@)W
zF0-J0=+0s6xk7;P#%+XjVz2+kIHZuqI%kRg!pC7gr=WcqUclUHMEj{kn><HC4I{uq
zv@a;u5pNj0{2aeAp6NEAkDenghV|$p)u01?1ntzy#|GX%wXy9KzT-5isdFe<f!L_6
z`pKZ}9BCE!!qgOac^?w}{v*hGEr>j~53%9)A!^$``kmn$5^Xqy_RHzz{ow`7i5p3f
z7^l$w(Qo6?7Cm+7YjObEI}Cwzw<5BhLR+3}LtEwZ5TCPnKRQGbF$M+cqQF=5H&~aS
z<$X$@gEH<wpRGjM&{srRJ_3L2w4smlex|i;`y8+p^czXK9`yvg(Y)XDzNe*yfWH~=
zs>u+YA4#>Re0<{L4DaiZr_N#wKEcNr(a$k{aGLlyB2pEm7_Tt~@NeyHz@FOY7hbnw
z47mrg9v@58)Q(Hz%L>%p5fW<Wt39>XVegcWTYT)`<D3`=dZqUA@^O@p4Sc*4V~$!s
z@&gK=_*^2!s29-BAmd<sS)l(0=@n884Q7#i0CassCK~v7dn@ra@HX!PUR*%iK|b9q
z)Z34!hqa`M&o6eK+4=A{Y2n{I|FdkS_N_nVSNUq^?_Z=_!0*|A@m$mguQQCT^VRge
z-u(T4{rgWcjXECK$A!O3|J1(i?HqN5F$BH!26VXBKTy&eElA<$U%Oi9J!BBZ(V-Ya
zTiF?sEM3D|D44{^>xm!uvl7p5mE+Kdw_x7mYr8WTx6Fuujs7KMG~nUw!tsKZ`z({Y
zo<sU9(u+uSNRQ$A0oN7$&c^jT#;UVyGUOoShmKge&XU#SG)7m7v3O%ATA_33^$%=M
zU`)aj$A8k@M3UFi{#-Y%+oMayC!tCzy+dZw@0|FtQoW>;;jQ{2VLxOM%M^UykHbjJ
z9-m9_psQ04Zzp7x(?(WmA#^`~Cn9PQVu6;LQ=#apjYO7~;P=a9Id&ZjVADLDEF&0;
za0V!eR?sR$?Ye{BO*`n1w2K9?boLZ`g}uhkv!AgK2fx*lNwP}orFQ8yX_vHHx?6fs
zIxM{<y(@hvyUAnaB6+GjLtZ0qmbb{y%BSVG<g+?2Xo`o1tPXi4<n@sMg!~-xN9bsa
ztHs9>VhOiIS`wfg9%vbC$+OJ2v{`Pk9JJhTc{ofL<`w1}W(f-qiwqkOHa(n$>%&d(
z-xwGk5*`~~7+xM;6Y=_W+1Az7iCqO=%Hd=LIY8bdZ{z4yGOeW5D8~W%50v8?^B3iK
z8RhsG<-n0{wH&KNIX0mjd!VB~EIlN>gL1%y0?IK?o`!w#b@J`<9Vo|h@>%)q5E61z
z$nuZ_A+LtK5%N>WFDM7Gcv<``7Ez8QOQu?mW|ZSzl;fdZ<(Q(D!^5E*)hGu+Ic{J-
z<#TCd*XLc&v)8(w$8O2<EVk?Ut`71nIYuhFhNG0EYlm&MZIx|dS6x?CS7p~UQrnf+
z`8M(CJlpveF?7Dwd8X^P&NH@^wp%dY?y&`S?#5{qqs_Im&gKlaInIdD<b1jGvj69c
zE@RW|^3u=UFE9Sw?O!>Uez<hy()XACed*Gri<dsR^v_H0U3%lvtCx0PT6n3MkW2oT
zTrWBQYtBX6#p@S;x%leEh>PJD11|<#^t@=gC|&sK!rK?ld<t7VX)GI$mge{mGjXqf
z++y#)|F=uc`taX=V$bon8PpdG|F;b4du}0&f6{L9t+a=HFWpIgkoJ=QNOzH+rG0Qt
zHG=k~5v-2xrFYSNbU!^H-6P#g@1+Onee@8$pVhP3^eX*LIwTcH_e(9TkF<fMuv9jU
zP0t#JNbIF02n0T^XzZBLqehMxUO22EKQA{YJ8S4oLk15Tn3<8DmYSFlKOnAuzo^KF
zzSi)tP=9X^M2m5Ab#Znw=ykHhDCuwMpyl};QiR2$pu(DOttiA{?R@{bytw}P)`Id5
zONFHai5zJy#2Y-aR&-d(Egg|aDjXh{cVr>w%w9ROl$=>wPHMIcCWAQ&tEJ;ip4D=a
zP99f^`;B?lGE2wz;(oNamm|dwH~a_-<0r^DRh(K&en-K=y7v5X&`6KEy5w4OYh2>`
zlcO%KxOK%{M?dTQqqN^mRNSzB`2&wK;^fBBqNMp1)g49SO7ruA!otep`Va4Lw*nGg
zkz4_?L!aAW5Fjn}C{+j9U^&|Vbo*^5&7`tC)>v(=u9#ZdAywepb}7HTeQk$FY)7;;
zuOoWVWq<IfrlY?#FTW#}LmgSH;ThSDl6L4K%vMYLuLQ-he*YcH;qatFeWH&r|4R7F
z4wl<Ni%Y}!zaZ>Xl()ARSS<z6D_5NCT3%_jn62$cjmGx*`CvCGD(#?neriKdN5O4n
z9p>^nIuN9aq8Aj8?C=^lrL==Z6j<sizzqC9)Ebr%6y~Aj0f4`LO~4i~2OJIy<80V)
zGK*B=N5}GUrOIy$sSG+svf^XQI#@Y>bK3sKr-Z**ZhxbFUT#I*jvQaw-XTW}ueRoc
z;~OeE;Ap{8F^gA>)!gBJH7Ly5?&)F4j0cU#YXQ;2tLrTty2uVa|H|<Lv`PL+JN}?b
z+^;Ih_d!4q>EUU~v;qu=lW)y0SN~sF=MRh)FuE{SX$TWaJF@b?v8)QUk>npuh{qQd
z<*2ZFUa#XyJL0YLJG`wqN-M$xPF8;X_)_tS@-)B0JGX<BSE*lh#OLE%H2wT`-qJV;
z9F}!l=@TTm>*CQAOVFdqB!!ga;c<s=E?QY+etT*4%#P6VplbBHnU>O^u#T)U)Nq-#
zw5E(VJ8&raBGBO<iiNf^p>*VU>&S7FOHr#~W#SEg!NJK9`MtncOM?_JXn-9~5l)s;
z79^D+qZtn@1-P;1494FMLxdA9GZ-$O@`jr;*iuS^h&?yR=!mxD*W{`B`0pM-@k5Hp
zEwn?^^Phl|TNo6EE-wDX^=Ei(Q4!;FC(hJD{*J%GFooAnXrH<KnZiqd-sml*)*5S>
zwa(I!RaDAZ#MvXbtTIFJT&b0j6G|O_IWP-sB4KzfIHxkRqaaq}A!lyKF!9^YYqXi3
zuZP=TTiTthBgeP%ny{(>2`C@lL3k6+%J4w3(ertSwqoqHn9-$0hi*TbmBl-A-9WU)
zcI)u!cI)`k!6G-tlchn6IBriel8&5^6W1R@Th37{T{rG%7F{=fa_JLh$S~_BlpceP
zac+4|+0njuSNep7kSy_(@u&PD&tl;}IHY3ya1!~0p2#9(xp*s!2jX|tNlL^sB@>=e
zQgxCk&&(p<(MW+P3krg&ld|$A%ML-tGbiQQa`6m%m1Si|3Fl~*i!RG4%Q?%)+*r_2
zPz}oP<P_$AXG$J5Qa2iO6kmZxJU&U6A9c<OQgSRuj;u0;;u0h(>XON&j~WR+6Mumy
zhyO!!@vlSAz<iT$spbu3Nm*Tcc^U6)#1~bA{~@kgZ$dR$Zvr8DV~2~iCa1&In!}$D
z<<EyI&-MJd!J5-SeJMU)j(%6vLGgFOl+rMCNlV~sLG9-6c}<mJP-!=R5tnt^c|t*0
z==kEU(Bgv9(4vA{L&FL!B^D}`gceFAAyQZ9*wLk-V@4N;jxHD%8kHPb5@|{bjY#fW
z5|Hd)Vn~)s^vE-6#Msc0BW?~IQ7|ynE7`LIR!Jo?-i1nt{xVehha~BT1AJk@%Ftm2
z+d^Fnf(lsrlLge89A45VIjF=p*{8&Vno7*crV^8Btciu1ZZYjQoi)iO(`HkbNzy|s
zD51%uq=DQ*{y}~qvYF83z6fV^lHPuF!uZ(OktYpZm`R+ArgYGC9TDUC->h+yJM`;1
zNXg_WrAH~<RJMBKMv@aevLk7HX-7hE*~pG++*pE-`jVWorl#1~=}pZovHV~2bo}B!
z#jijA@t=-$v^V_Ea^F;bghze}AU*y;^Wa1FK&JhUKkoi(^X~cyD<R~+v90S#+vcu|
zwg+J+IRjAsul_-+#s5tv(_w8_jK39R3MnJyxSvQ~#NT3q^Md$iBB%H&Np{A4BQE8h
zk`Vk-?iphF-LBqCB!TQx?`4NPI#?*br9Rh_KIBXF-armgrrtY|e)N!f?@BVLJ--pw
zk$UyH8}2LBdw1-=J)_>6iKpbL-g`hN(wF3sdQyw48P_6GL#nYFszxcBaal+e{9Mf^
zZ72iJRfne*@*u7x(4UAaPQ6RSX-W%xQ8nPdS~3T4EF>5Ajrf}X<?!lpH;)V;WAUs8
zcNQ`p&*zaQ+>O%U7vo(mX#tE1e3yv)9M2&9%|`xQ+}Xdke;w!W^+bH#2#5+Ui}wBh
z^o{+UBR%zkD$apsL47sg&J`5R#<K=86MuV_mY0O{j^}DaT8S?#_?DN3Lu(e4Dg3P$
zrLPiCIG>f@vruZz=O)0Z2j}e^YXT3l@s#K1ICu&Fj=Q{un!(?JBp&~@ivI=xL(i{y
zt@4@~AnJE6a{k|b*Nn3A+T>JmuGfM>r3MBFm~&B&ylxfRn?z0v%Gq6xX5{0X$_AVY
z<Wqk2{D!x!-Zh&9>J$E!?rvBEL|JQ5#yLIcXu^|GSoi0Wd@=?tD_^u_4)f3Lp}Tc*
zML7O-%|r|Mi+`~7Bj~5Rr$XBU9f<*|bZ4AlKnzwyP;|#AVJ051DD{G86d&S?QOO@8
zTOgv5_JPfF2nj_=!$>%>!YVL=M3N|IYNAODiKP<g8vvSlze~dDh!n)_OM_)_2FXNi
z55l>)A><~U0LcO;b5N>0l&Ao0l<R0lkdY|sXq0m-DI()AW{oEkNC|j433iEP7~Q78
zDsdV{w;34OD#*j+Ua|@rsHe#e@-<mQHjxeFF7*3@R3`0IM{Xrs$xq~GvXSg0>&Oe_
zGx8sdW{1hI<QH<4+(RBAuaQ^C5%hs7jCj@15Y>=Z$?LG^HBcw&Ouhm4-Xm|5cQDt~
zk{`(y@*#Pje1O{gmV8gv!vktPnT?(_2kqnl>Tdzs2Jh7^Xxj_XrvFWD##q%x7L%o9
z2{}pb#;mmrI;j=pJ934bLPR@P7#hPtBsGyvV#EH22lb?0q>B=9)C4Czs2}{b1;Afh
z5R8(8;TSlSTHv@YocvDyfXhOx(rF~LTK(YkDF*Ik`XjpI02)uZzpx}slpoO)#2rt=
z&SwVAqyy<7I+zZjH^FI97JN$QkbjZSX)a=S<<kN>j24QO|42HDj;3R{O)?!vItWfM
z((!ZxEuj<XBw9+#=wv#DTqifkW%31`N~h83bOtSlUab<EwQAVQ&!n}qj@HvzbT*ws
z=hAt!fzF3#)F){p_FkK53+9Wj=t6Rcw$htv8(l;f(<O8%T}D18m&iZKC*)Ido?Im7
z$OUNXmeUn<B|LVmqO0i|x|Xh^>uEbIP;a9f=_b0F-i|{SchIeL8{JNK(4BM_-A(t<
zJG*rk(DdEYt-GKP&<E*Z`Vf7XK0=Q`ch*6V(qr^ddYnE+PteE7oe(CTpr`1Q^eOr@
zeTF_uPt)h<^YjJ!B7KRzOkbg|(%0zg^bPtZJwxAuNBXzvJM>-p9(|vFKtH4((U0jl
z`cL`^{gj@kpV15SBE3ZaML(yP=@;}%`W5|}enbCFzop;N@97o#1GIPlp+C`|=`ZwG
zu2rGG(?94ndY#^&ozw;mC4s!maQs4MI`|egKpJ*tE(lh}rBZjCA2Tx#=E=O6H%{*P
zGCybn16UyRntfO>3t^!UrNdY_v$DP{0;go7SU(ocVpuFRZjZA5EDlkb9w#rd0pvJ&
z3^w{JVJp3sJVah*@hkynPoHIp<SCX!eq+f($CCy<V+Og6>}Q#5AREL6vms;`c>q$*
zZb)SJkvqs<azEKjwvp}R33d}a24=Brmcw#c9?NG1Y#1wK!`TQnl8s`c*%&sK6|r%w
zn2l!>SP7fRCb3dh#wN2VY%13$u^FtKRj^7{#j05io5^Zf9rRDL*lae3&1Lgg1DlV~
zIgPA|HM17BkhQX#SsPo#7PBR6DXf%lVawSHwvye-R<YG=4O`3BvGuH-Z9vGKjcgO!
z%x-5}*d1&u+s3xD9k6QN#dfnj>`u0q-Np8?{p<j{o880iWe3@P>=3)3J-{AhhuK5y
zVfF|+!v4WJ*im+jJ<5)=$Jhz>I6KLnV5iuV&?-O8o?*|j)9g9+JZz<3WG}Iop=o{<
zI@;IS8|+PXhP}nkvbWhg>|ORAd!K#4K4c$3e|wJolYPQIg+}@_c7a`Fm)O79=j<~3
zf_=%pVqddw*uUAg>^t^7yTX28KeGR@pV-gr7xpW=%6?<Nvp*0B@H)G}I+=}iK^IIV
z27RzB>7ZjbNKViUyTBnh;@~21qe(JL9+IczB_aNY<SY3}{!)MxC<RG<q+lsT3Y9EU
zm=rEqrM^;x6e&eX{iJ9qMv9gCOL5WwDPBsD5~U<5SxSMgsWd5F%8)Xpfzlvpurx%v
z34(u?lr7~*xl*2#4}IY<sZbg&jgUr4qomQ&7-_6jB#o1brSZ}PSdveaCP}4InKW6N
zB2AU1Nz<hnQn^$iRZ3M-wNxX`lxn3qsa~2T&6eg!bESDwgEU`S0PpBcQnS<|EtFcN
zo252sk+fJ^A}y7cNw-MLr4`aj=~ii#v|3sNOZ9a^x4!|}{f*KlX|r^@v_-l@+A3|6
zwo5ytokHioN4itm3w>yR>~y?|J><8febRpE0QNDiab2i%P`VG=&-<kZ#NNO|^1PNg
zb9BQ8RLp5Mw9KndNXX7}Zdh2;*i_ZfSmQFhwy|Pi4S(q}yrQb5S=^e2SJgLGwalG4
zr{-q<$_<Jm7^ODVHwh@&b1SME8|E1*lvJNx*;uo%MqeQkLv}-L!@Qc=h6*Kh&FzNe
zTGf3o=T<i~%T@TJ&#S5cIDNH}<N<a?vmswaQllctSCG_*#3di!Ra8~g%xiY3(QXa-
zD(V^~)#ob^YeeEYtQ)y&ZTG!Aj1y9eKgMBI4RhyKC~%Fn4nJHAyYsu&b>GW{l@*P0
z9salsZ?2zHEx4zz7q_m%70Lz6>Xmz!;everNMA2*U56{QD!G(<_u*QRM9$$Oc*5#u
zxsK>Y?K-Rb-Z;{MR^#j*KWZCmYUa(Um{(n2r5`0~SU*Q3#!-&><~aP&k5c$HM<ntn
z&YwB>qaUMuKTr97jKe3!c@97HW0ddbDSV$-F~6ayxv^n>U5%7KuU4v=S8Eun)^3AZ
zyJMBwZ4imu*t(W^wH1vmbLUjFG`lr8{?ZpKG&CwS6g!|bHah&!7b`S0D#>`|t0s}S
zj_+ojYg6~Vae@N?W3$5#{R9O}vq<C#yw;oXM_(eUTHhiPLy20d7PV9*N~u~zqAO{v
zpI57E;eXvq9Lwa^;`qx@qPF4|C3T(DO`&V6!+n{<eOvdvezH>5MIv#TthFVVMcS=y
zPQ$#~CYNkZi;}HEyESCzi${iv8j-q=ZJJZjRHxiGbl)4tJ21$I(M0Pyy5@#?4NY$L
zF+==v$(}R6u0q^8SIlc@u9;I)Ut!Fj-&7A$#AB!YX63!xaP)2Qh&OxV*tzw5v=I-C
zB@Q3BjGbFkt7P=3$0t4T=>$GGr>40=H>?7riLoy^GsU3dlqchr1f04Fb+~ilNI5>;
z$cp*%E6`QuR#sQA(JgFD3oEThgB4V;qI#*gu0c1xzIJYfG@+u!pi(3i)zwS6xQd$U
z6;#=oW)9O%6^Ct7GuxlJRA@{w);N^R2?Qyu;^h)|-Yv>|`={cePJAy{BD=1Z7gASU
zGpD)2pu&<D;f2IsHuECN9GGslDBc`VJcZDlTsE(T-CS>IP|7GZ)-~vxcmWf2B9WR=
zP8Gj2A7!k<1#)x^yaJ3Iteq@VFEWiPOr`eJm*R(u_*mRJSIn%hPfSQiO19snCTe#{
z+FkeC6gTyY)Ktz^?N=KArR7i8?lQEyO#5A0f_A6jO0(liOi8uBP1K+yYETk2C`lTW
zBn?WE9ZEt{iXBRl1}`a1d!|87(jX^kkdrmY$r|Kj4RW%^i)0N)vW6pB!;!4vNY-#9
zYdBIg94Q)(6b(m;h9gD8(ao0>4M&QGBSpiJqTxu>s7lkmNYlPZ)4oX4zDU=oO4n#f
z*Jw%CXi3)~r)!YYHOT22<a7;kh6Xu9D{qE|BSXWHq2b8TaAasWGBg|+8jcJNN2Z1&
zQ^S#|;mFi*WNJ7vH5{25j!X?ldN&k14)heY4J9Vn-zFy5ao~)t_STLgF~N=_F~N=_
zF~N=_F~MGr!~_jTqK2cJ=2ZK$gv<>6Bq2EJTa{#zm>%@4B5|H%9}b*b?RWYzC1aaN
z1cm7E2^nrJ^Qu)@w7PPR+kzHM4P2URY^tf&&#j*aiB#WIQ`Io9+PUWDDhyl5<vg#c
zWqwU#eM6%HCnGZ@Q9r+?iH~vlEsYK0X<A~E+8%MI)=yeua%z%uO;a<(vF4g;XUM5F
z^|f`)b;jm8h)K$Qlk3d-h4y=66KI*IzTm@UK~6%VnkKnbwKdkynNwdS=65H|u5)Ud
znr4}Wkl-*Mx;or@INUe#!M(<~sHU;OULfPlhL*<eA0Wj3!?mgYX8XOHpi28C$g}@4
z&a0oNeZ(nEN=QghQ$aa?C#k=a)igy-Q`Iz0P1DshLrpW)G+Rw`cv_HOP$1HRf?PGt
z<7q--fxw%Plp~%eB<BhINCkeR0#7227V`W^1)Riug<hm0e_}z30xzi`*}1x+slKA&
z=6W%mqb@`Vkf!Ly)-^QF(=~{{CE{-j|0^g-Rv;!MD-e+;%XJM6vw4+O*34;W6}eK>
zTqy|(zLZpj{*+YpcbfV;O({o8no<t9I8eS%6MRfaNfUfTD$0jc@DZutBT~Ufq=Jt~
z1s{<rd`d~P;}d+rbHSH{lynt;x{5zt#h<R?Pgn7$tN7DZ{OKzGbQOQPia%Y&pRVFh
zSMjH-_|sMV=_>vV6@P|`KSRZzq2kX_@n@*`GgSN;D&7ngZ-$CDL&ck+;>}R;W~g{G
zRJ@rgo=g=FggD;5QZiLMnJS)4wVatMzDyNgriw39#h0n#%T)1Ys`xTheA#L_v(<8D
ztN623{Mjo0Y!!dDia%S$pRMB0R`F-6__I~~*(&~Q6@RvhKU>A0qvFp|@#m=cb5#5}
zD*hZ5e~yYjN5!9`;?Gg>=cxE|RQzgxOvzF4=cxE|3S0$Wa}&56rSLdcr6E_PAy=g#
zSEV6Wr6E_PAy=g#SEV6Wr6E_PAy=g#SLH#jN<(hGio2j2cb>`zb=*i%$BmRcm4-Z(
zhCG!9Wjskp$x~^_Q)$RkX~<J)$Wv*^Q)$RkX~<Lgkf+u|zKTCz<w3s6gM1Z#zKTCz
z#h<V8AYa9wuj0>F@#m}f^Hu!$D*k*Gf4+)8U&XJEpD6_@{sI+$fr`IC#b2P}FHrFp
zsQ3$1`~@oh0u_IOieDM86H*FP`~@n0Wjs$vRma0rb<|8%<_$bo@TVpy_)`-U{HX~F
z{?r5oe`<n)KQ%$YpPHcHPfbwprzR-nPgTd;)C2{8YJyUJ7~+XGn3|}RKQ&P)e`=z@
zpO~-oQ>5ZOQt=+C{k@>?|CDw9K2Zcw9G@MyAD#$AwD3oPRuqQp9$e5!gO}4_FlUUN
z!32@JkgSIZr?zToV>J8^wpLbFmR6QlYNEEr!jeQk@5dc`2;sebZ)a!T%-e66oA2x%
zw#J9n_|O_3TH`}&d}xgit?{8XKD3SxTH`}&d|AtIiuU#mr`X=U;S}53H=JU7`-W3&
zZ{Ki=?d=;*vAuo6DYm!Y)bYt$hEcTl-!O{p{Wpwad;gnDf;H@m1FUg;$$cvYpT}WX
zrHseX^l@l<9EQ`ZWjIB99EMYDkHc_^?Qs}Ru{{rlQ*6(J;S}5RU^vD0_6?_5%W#VJ
zJQz-~Jr9OcY|n$?6x;J)IK}on7*4Uh|Atd+@4w*`+xu@g&02<2wD;F=iS7M0Tw;5F
z4VU%Q|1T`0S7#2EadallWbt0Xr*miV9X}{1^O!@$bTLYNlR7aS)@0_el4E*yaJ`)z
zUOGLP+sgTTtJAMCS)PB`d-R|p^VRvC-Lg1P{U>5obq38rMP{(7nY_w*=B;vGr>t_I
zvsEb|6IFEVbOh%0te#eHZ*JXZM!iw(`$4HIx8qb{xmN62S3{S>sw~{f!E|xGRvcwp
zk*)YLY}uAxE56<uSFazD<r!Uo7?-075rdB_{t+r|3_due4NYRYXrMz6K<LSAt^{^>
zjloveV5KYUil5TG*gQF*KfJ0egxG-GUW!Y|%kd6!ee7{aU;*A}*@Ticc<xER#_S$%
zJ52J8evi7RL%h*mn+<cf+H8Km0+0R|c3fIL$~BWP<Fe=HwEAl>=w;4MQ1=v!`AL}a
zGk&H7uU>;skJLCryr+ac&$qi9;q8bd-{D<elslVwc%Q4>5&wsxl=~xmEXrLn5k8H`
z-8929D(m4ho}yd`U+@fNUuynQl=L^DcOok)WuuYp91x#8d?$MiWDMm`q-e=QS#z`u
z^SuXy@-6&IBHZ*%FI&}7DIKsc_)F{n_zDC3J^U<`nrE~x!0o?;qkjdbF5LNVc>O={
z&|Mg0*j;(%0dDCUbtbSlyuNsNeZte8J@J!)vju-7e>Hfa!>rJA%JOwu{04H#I~loe
z*vdCjUyj9hcoclg`>zXDd4EqzaGi~d^p)25*5IfA?WT~3pN+j3iHtAC5oRixP0mrn
zxU&50$=A_NxC;|@REREd*PS57^I<ODCF<4Cj_az|c+-32ZFCJ}J1!#ExFVrM_y;;4
B=BEGv

literal 0
HcmV?d00001

diff --git a/src/displayapp/screens/Clock.cpp b/src/displayapp/screens/Clock.cpp
index 05e47a39..e0684976 100644
--- a/src/displayapp/screens/Clock.cpp
+++ b/src/displayapp/screens/Clock.cpp
@@ -14,6 +14,7 @@
 #include "../DisplayApp.h"
 #include "WatchFaceDigital.h"
 #include "WatchFaceAnalog.h"
+#include "PineTimeStyle.h"
 
 using namespace Pinetime::Applications::Screens;
 
@@ -41,6 +42,9 @@ Clock::Clock(DisplayApp* app,
         case 1:
           return WatchFaceAnalogScreen();
           break;
+        case 2:
+          return PineTimeStyleScreen();
+          break;
       }
       return WatchFaceDigitalScreen();
     }()} {
@@ -76,6 +80,16 @@ std::unique_ptr<Screen> Clock::WatchFaceAnalogScreen() {
     app, dateTimeController, batteryController, bleController, notificatioManager, settingsController);
 }
 
+std::unique_ptr<Screen> Clock::PineTimeStyleScreen() {
+  return std::make_unique<Screens::PineTimeStyle>(app,
+                                                     dateTimeController,
+                                                     batteryController,
+                                                     bleController,
+                                                     notificatioManager,
+                                                     settingsController,
+                                                     motionController);
+}
+
 /*
 // Examples for more watch faces
 std::unique_ptr<Screen> Clock::WatchFaceMinimalScreen() {
diff --git a/src/displayapp/screens/Clock.h b/src/displayapp/screens/Clock.h
index 174c73b7..a48feea1 100644
--- a/src/displayapp/screens/Clock.h
+++ b/src/displayapp/screens/Clock.h
@@ -50,6 +50,7 @@ namespace Pinetime {
         std::unique_ptr<Screen> screen;
         std::unique_ptr<Screen> WatchFaceDigitalScreen();
         std::unique_ptr<Screen> WatchFaceAnalogScreen();
+        std::unique_ptr<Screen> PineTimeStyleScreen();
 
         // Examples for more watch faces
         // std::unique_ptr<Screen> WatchFaceMinimalScreen();
diff --git a/src/displayapp/screens/PineTimeStyle.cpp b/src/displayapp/screens/PineTimeStyle.cpp
new file mode 100644
index 00000000..678099c0
--- /dev/null
+++ b/src/displayapp/screens/PineTimeStyle.cpp
@@ -0,0 +1,340 @@
+/*
+ * This file is part of the Infinitime distribution (https://github.com/JF002/Infinitime).
+ * Copyright (c) 2021 Kieran Cawthray.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, version 3.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * PineTimeStyle watchface for Infinitime created by Kieran Cawthray
+ * Based on WatchFaceDigital
+ * Style/layout copied from TimeStyle for Pebble by Dan Tilden (github.com/tilden)
+ */
+
+#include "PineTimeStyle.h"
+#include <date/date.h>
+#include <lvgl/lvgl.h>
+#include <cstdio>
+#include "BatteryIcon.h"
+#include "BleIcon.h"
+#include "NotificationIcon.h"
+#include "Symbols.h"
+#include "components/battery/BatteryController.h"
+#include "components/ble/BleController.h"
+#include "components/ble/NotificationManager.h"
+#include "components/motion/MotionController.h"
+#include "components/settings/Settings.h"
+#include "../DisplayApp.h"
+
+using namespace Pinetime::Applications::Screens;
+
+PineTimeStyle::PineTimeStyle(DisplayApp* app,
+                             Controllers::DateTime& dateTimeController,
+                             Controllers::Battery& batteryController,
+                             Controllers::Ble& bleController,
+                             Controllers::NotificationManager& notificatioManager,
+                             Controllers::Settings& settingsController,
+                             Controllers::MotionController& motionController)
+  : Screen(app),
+    currentDateTime {{}},
+    dateTimeController {dateTimeController},
+    batteryController {batteryController},
+    bleController {bleController},
+    notificatioManager {notificatioManager},
+    settingsController {settingsController},
+    motionController {motionController} {
+
+  /* This sets the watchface number to return to after leaving the menu */
+  settingsController.SetClockFace(2);
+
+  displayedChar[0] = 0;
+  displayedChar[1] = 0;
+  displayedChar[2] = 0;
+  displayedChar[3] = 0;
+  displayedChar[4] = 0;
+
+  /* Create a 200px wide background rectangle */
+
+  timebar = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(timebar, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_obj_set_style_local_radius(timebar, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_size(timebar, 200, 240);
+  lv_obj_align(timebar, lv_scr_act(), LV_ALIGN_IN_TOP_LEFT, 5, 0);
+
+  /* Display the time */
+
+  timeDD1 = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_font(timeDD1, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &open_sans_light);
+  lv_obj_set_style_local_text_color(timeDD1, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x008080));
+  lv_label_set_text(timeDD1, "12");
+  lv_obj_align(timeDD1, timebar, LV_ALIGN_IN_TOP_MID, 5, 5);
+
+  timeDD2 = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_font(timeDD2, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &open_sans_light);
+  lv_obj_set_style_local_text_color(timeDD2, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x008080));
+  lv_label_set_text(timeDD2, "34");
+  lv_obj_align(timeDD2, timebar, LV_ALIGN_IN_BOTTOM_MID, 5, -5);
+
+  timeAMPM = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_color(timeAMPM, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x008080));
+  lv_obj_set_style_local_text_line_space(timeAMPM, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, -3);
+  lv_label_set_text(timeAMPM, "");
+  lv_obj_align(timeAMPM, timebar, LV_ALIGN_IN_BOTTOM_LEFT, 2, -20);
+
+  /* Create a 40px wide bar down the right side of the screen */
+
+  sidebar = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(sidebar, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x008080));
+  lv_obj_set_style_local_radius(sidebar, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_size(sidebar, 40, 240);
+  lv_obj_align(sidebar, lv_scr_act(), LV_ALIGN_IN_TOP_RIGHT, 0, 0);
+
+  /* Display icons */
+
+  batteryIcon = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_color(batteryIcon, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_label_set_text(batteryIcon, Symbols::batteryFull);
+  lv_obj_align(batteryIcon, sidebar, LV_ALIGN_IN_TOP_MID, 0, 2);
+
+  batteryPlug = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_color(batteryPlug, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_obj_align(batteryPlug, sidebar, LV_ALIGN_IN_TOP_MID, 0, 2);
+
+  bleIcon = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_color(bleIcon, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_obj_align(bleIcon, sidebar, LV_ALIGN_IN_TOP_MID, 0, 25);
+
+  notificationIcon = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_color(notificationIcon, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_obj_align(notificationIcon, sidebar, LV_ALIGN_IN_TOP_MID, 0, 40);
+
+  /* Calendar icon */
+
+  calendarOuter = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(calendarOuter, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_obj_set_style_local_radius(calendarOuter, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_size(calendarOuter, 34, 34);
+  lv_obj_align(calendarOuter, sidebar, LV_ALIGN_CENTER, 0, 0);
+
+  calendarInner = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(calendarInner, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0xffffff));
+  lv_obj_set_style_local_radius(calendarInner, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_size(calendarInner, 27, 27);
+  lv_obj_align(calendarInner, calendarOuter, LV_ALIGN_CENTER, 0, 0);
+
+  calendarBar1 = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(calendarBar1, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_obj_set_style_local_radius(calendarBar1, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_size(calendarBar1, 3, 12);
+  lv_obj_align(calendarBar1, calendarOuter, LV_ALIGN_IN_TOP_MID, -6, -3);
+
+  calendarBar2 = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(calendarBar2, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_obj_set_style_local_radius(calendarBar2, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_size(calendarBar2, 3, 12);
+  lv_obj_align(calendarBar2, calendarOuter, LV_ALIGN_IN_TOP_MID, 6, -3);
+
+  calendarCrossBar1 = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(calendarCrossBar1, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_obj_set_style_local_radius(calendarCrossBar1, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_size(calendarCrossBar1, 8, 3);
+  lv_obj_align(calendarCrossBar1, calendarBar1, LV_ALIGN_IN_BOTTOM_MID, 0, 0);
+
+  calendarCrossBar2 = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(calendarCrossBar2, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_obj_set_style_local_radius(calendarCrossBar2, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_size(calendarCrossBar2, 8, 3);
+  lv_obj_align(calendarCrossBar2, calendarBar2, LV_ALIGN_IN_BOTTOM_MID, 0, 0);
+
+  /* Display date */
+
+  dateDayOfWeek = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_color(dateDayOfWeek, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_label_set_text(dateDayOfWeek, "THU");
+  lv_obj_align(dateDayOfWeek, sidebar, LV_ALIGN_CENTER, 0, -34);
+
+  dateDay = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_color(dateDay, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_label_set_text(dateDay, "25");
+  lv_obj_align(dateDay, sidebar, LV_ALIGN_CENTER, 0, 3);
+
+  dateMonth = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_color(dateMonth, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x000000));
+  lv_label_set_text(dateMonth, "MAR");
+  lv_obj_align(dateMonth, sidebar, LV_ALIGN_CENTER, 0, 32);
+
+  // Step count gauge
+  needle_colors[0] = LV_COLOR_WHITE;
+  stepGauge = lv_gauge_create(lv_scr_act(), nullptr);
+  lv_gauge_set_needle_count(stepGauge, 1, needle_colors);
+  lv_obj_set_size(stepGauge, 40, 40);
+  lv_obj_align(stepGauge, sidebar, LV_ALIGN_IN_BOTTOM_MID, 0, 0);
+  lv_gauge_set_scale(stepGauge, 360, 11, 0);
+  lv_gauge_set_angle_offset(stepGauge, 180);
+  lv_gauge_set_critical_value(stepGauge, (settingsController.GetStepsGoal() / 100));
+  lv_gauge_set_range(stepGauge, 0, (settingsController.GetStepsGoal() / 100));
+  lv_gauge_set_value(stepGauge, 0, 0);
+
+  lv_obj_set_style_local_pad_right(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, 3);
+  lv_obj_set_style_local_pad_left(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, 3);
+  lv_obj_set_style_local_pad_bottom(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, 3);
+  lv_obj_set_style_local_line_opa(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, LV_OPA_COVER);
+  lv_obj_set_style_local_scale_width(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, 4);
+  lv_obj_set_style_local_line_width(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, 4);
+  lv_obj_set_style_local_line_color(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK);
+  lv_obj_set_style_local_line_opa(stepGauge, LV_GAUGE_PART_NEEDLE, LV_STATE_DEFAULT, LV_OPA_COVER);
+  lv_obj_set_style_local_line_width(stepGauge, LV_GAUGE_PART_NEEDLE, LV_STATE_DEFAULT, 4);
+  lv_obj_set_style_local_pad_inner(stepGauge, LV_GAUGE_PART_NEEDLE, LV_STATE_DEFAULT, 4);
+
+  backgroundLabel = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_click(backgroundLabel, true);
+  lv_label_set_long_mode(backgroundLabel, LV_LABEL_LONG_CROP);
+  lv_obj_set_size(backgroundLabel, 240, 240);
+  lv_obj_set_pos(backgroundLabel, 0, 0);
+  lv_label_set_text(backgroundLabel, "");
+}
+
+PineTimeStyle::~PineTimeStyle() {
+  lv_obj_clean(lv_scr_act());
+}
+
+bool PineTimeStyle::Refresh() {
+  batteryPercentRemaining = batteryController.PercentRemaining();
+  if (batteryPercentRemaining.IsUpdated()) {
+    auto batteryPercent = batteryPercentRemaining.Get();
+    if (batteryController.IsCharging()) {
+      auto isCharging = batteryController.IsCharging() || batteryController.IsPowerPresent();
+      lv_label_set_text(batteryPlug, BatteryIcon::GetPlugIcon(isCharging));
+      lv_obj_realign(batteryPlug);
+      lv_label_set_text(batteryIcon, "");
+    } else {
+      lv_label_set_text(batteryIcon, BatteryIcon::GetBatteryIcon(batteryPercent));
+      lv_label_set_text(batteryPlug, "");
+    }
+  }
+
+  bleState = bleController.IsConnected();
+  if (bleState.IsUpdated()) {
+    if (bleState.Get() == true) {
+      lv_label_set_text(bleIcon, BleIcon::GetIcon(true));
+      lv_obj_realign(bleIcon);
+    } else {
+      lv_label_set_text(bleIcon, BleIcon::GetIcon(false));
+    }
+  }
+
+  notificationState = notificatioManager.AreNewNotificationsAvailable();
+  if (notificationState.IsUpdated()) {
+    if (notificationState.Get() == true) {
+      lv_label_set_text(notificationIcon, NotificationIcon::GetIcon(true));
+      lv_obj_realign(notificationIcon);
+    } else {
+      lv_label_set_text(notificationIcon, NotificationIcon::GetIcon(false));
+    }
+  }
+
+  currentDateTime = dateTimeController.CurrentDateTime();
+
+  if (currentDateTime.IsUpdated()) {
+    auto newDateTime = currentDateTime.Get();
+
+    auto dp = date::floor<date::days>(newDateTime);
+    auto time = date::make_time(newDateTime - dp);
+    auto yearMonthDay = date::year_month_day(dp);
+
+    auto year = (int) yearMonthDay.year();
+    auto month = static_cast<Pinetime::Controllers::DateTime::Months>((unsigned) yearMonthDay.month());
+    auto day = (unsigned) yearMonthDay.day();
+    auto dayOfWeek = static_cast<Pinetime::Controllers::DateTime::Days>(date::weekday(yearMonthDay).iso_encoding());
+
+    int hour = time.hours().count();
+    auto minute = time.minutes().count();
+
+    char minutesChar[3];
+    sprintf(minutesChar, "%02d", static_cast<int>(minute));
+
+    char hoursChar[3];
+    char ampmChar[5];
+
+      if (settingsController.GetClockType() == Controllers::Settings::ClockType::H24) {
+        sprintf(hoursChar, "%02d", hour);
+      } else {
+        if (hour == 0 && hour != 12) {
+          hour = 12;
+          sprintf(ampmChar, "A\nM");
+        } else if (hour == 12 && hour != 0) {
+          hour = 12;
+          sprintf(ampmChar, "P\nM");
+        } else if (hour < 12 && hour != 0) {
+          sprintf(ampmChar, "A\nM");
+        } else if (hour > 12 && hour != 0) {
+          hour = hour - 12;
+          sprintf(ampmChar, "P\nM");
+        }
+        sprintf(hoursChar, "%02d", hour);
+      }
+
+    if (hoursChar[0] != displayedChar[0] || hoursChar[1] != displayedChar[1] || minutesChar[0] != displayedChar[2] ||
+        minutesChar[1] != displayedChar[3]) {
+      displayedChar[0] = hoursChar[0];
+      displayedChar[1] = hoursChar[1];
+      displayedChar[2] = minutesChar[0];
+      displayedChar[3] = minutesChar[1];
+
+      char hourStr[3];
+      char minStr[3];
+
+    if (settingsController.GetClockType() == Controllers::Settings::ClockType::H12) {
+        lv_label_set_text(timeAMPM, ampmChar);
+    }
+
+      /* Display the time as 2 pairs of digits */
+      sprintf(hourStr, "%c%c", hoursChar[0], hoursChar[1]);
+      lv_label_set_text(timeDD1, hourStr);
+
+      sprintf(minStr, "%c%c", minutesChar[0], minutesChar[1]);
+      lv_label_set_text(timeDD2, minStr);
+    }
+
+    if ((year != currentYear) || (month != currentMonth) || (dayOfWeek != currentDayOfWeek) || (day != currentDay)) {
+      char dayOfWeekStr[4];
+      char dayStr[3];
+      char monthStr[4];
+
+      sprintf(dayOfWeekStr, "%s", dateTimeController.DayOfWeekShortToString());
+      sprintf(dayStr, "%d", day);
+      sprintf(monthStr, "%s", dateTimeController.MonthShortToString());
+
+      lv_label_set_text(dateDayOfWeek, dayOfWeekStr);
+      lv_label_set_text(dateDay, dayStr);
+      lv_obj_realign(dateDay);
+      lv_label_set_text(dateMonth, monthStr);
+
+      currentYear = year;
+      currentMonth = month;
+      currentDayOfWeek = dayOfWeek;
+      currentDay = day;
+    }
+  }
+
+  stepCount = motionController.NbSteps();
+  motionSensorOk = motionController.IsSensorOk();
+  if (stepCount.IsUpdated() || motionSensorOk.IsUpdated()) {
+    lv_gauge_set_value(stepGauge, 0, (stepCount.Get() / 100));
+    lv_obj_realign(stepGauge);
+    if (stepCount.Get() > settingsController.GetStepsGoal()) {
+      lv_obj_set_style_local_line_color(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_WHITE);
+      lv_obj_set_style_local_scale_grad_color(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_WHITE);
+    }
+  }
+
+  return running;
+}
\ No newline at end of file
diff --git a/src/displayapp/screens/PineTimeStyle.h b/src/displayapp/screens/PineTimeStyle.h
new file mode 100644
index 00000000..70794cc5
--- /dev/null
+++ b/src/displayapp/screens/PineTimeStyle.h
@@ -0,0 +1,86 @@
+#pragma once
+
+#include <lvgl/src/lv_core/lv_obj.h>
+#include <chrono>
+#include <cstdint>
+#include <memory>
+#include "Screen.h"
+#include "ScreenList.h"
+#include "components/datetime/DateTimeController.h"
+
+namespace Pinetime {
+  namespace Controllers {
+    class Settings;
+    class Battery;
+    class Ble;
+    class NotificationManager;
+    class HeartRateController;
+  }
+
+  namespace Applications {
+    namespace Screens {
+      class PineTimeStyle : public Screen {
+      public:
+        PineTimeStyle(DisplayApp* app,
+                      Controllers::DateTime& dateTimeController,
+                      Controllers::Battery& batteryController,
+                      Controllers::Ble& bleController,
+                      Controllers::NotificationManager& notificatioManager,
+                      Controllers::Settings& settingsController,
+                      Controllers::MotionController& motionController);
+        ~PineTimeStyle() override;
+
+        bool Refresh() override;
+
+        void OnObjectEvent(lv_obj_t* pObj, lv_event_t i);
+
+      private:
+        char displayedChar[5];
+
+        uint16_t currentYear = 1970;
+        Pinetime::Controllers::DateTime::Months currentMonth = Pinetime::Controllers::DateTime::Months::Unknown;
+        Pinetime::Controllers::DateTime::Days currentDayOfWeek = Pinetime::Controllers::DateTime::Days::Unknown;
+        uint8_t currentDay = 0;
+
+        DirtyValue<int> batteryPercentRemaining {};
+        DirtyValue<bool> bleState {};
+        DirtyValue<std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds>> currentDateTime {};
+        DirtyValue<bool> motionSensorOk {};
+        DirtyValue<uint32_t> stepCount {};
+        DirtyValue<bool> notificationState {};
+
+        lv_obj_t* timebar;
+        lv_obj_t* sidebar;
+        lv_obj_t* timeDD1;
+        lv_obj_t* timeDD2;
+        lv_obj_t* timeAMPM;
+        lv_obj_t* dateDayOfWeek;
+        lv_obj_t* dateDay;
+        lv_obj_t* dateMonth;
+        lv_obj_t* backgroundLabel;
+        lv_obj_t* batteryIcon;
+        lv_obj_t* bleIcon;
+        lv_obj_t* batteryPlug;
+        lv_obj_t* calendarOuter;
+        lv_obj_t* calendarInner;
+        lv_obj_t* calendarBar1;
+        lv_obj_t* calendarBar2;
+        lv_obj_t* calendarCrossBar1;
+        lv_obj_t* calendarCrossBar2;
+        lv_obj_t* heartbeatIcon;
+        lv_obj_t* heartbeatValue;
+        lv_obj_t* heartbeatBpm;
+        lv_obj_t* notificationIcon;
+        lv_obj_t* stepGauge;
+        lv_color_t needle_colors[1];
+
+        Controllers::DateTime& dateTimeController;
+        Controllers::Battery& batteryController;
+        Controllers::Ble& bleController;
+        Controllers::NotificationManager& notificatioManager;
+        Controllers::Settings& settingsController;
+        Controllers::MotionController& motionController;
+      };
+    }
+  }
+}
diff --git a/src/displayapp/screens/settings/SettingWatchFace.cpp b/src/displayapp/screens/settings/SettingWatchFace.cpp
index 457cebf6..3e73489d 100644
--- a/src/displayapp/screens/settings/SettingWatchFace.cpp
+++ b/src/displayapp/screens/settings/SettingWatchFace.cpp
@@ -58,6 +58,15 @@ SettingWatchFace::SettingWatchFace(Pinetime::Applications::DisplayApp* app, Pine
     lv_checkbox_set_checked(cbOption[optionsTotal], true);
   }
 
+  optionsTotal++;
+  cbOption[optionsTotal] = lv_checkbox_create(container1, nullptr);
+  lv_checkbox_set_text_static(cbOption[optionsTotal], " PineTimeStyle");
+  cbOption[optionsTotal]->user_data = this;
+  lv_obj_set_event_cb(cbOption[optionsTotal], event_handler);
+  if (settingsController.GetClockFace() == 2) {
+    lv_checkbox_set_checked(cbOption[optionsTotal], true);
+  }
+
   optionsTotal++;
 }
 
diff --git a/src/libs/lv_conf.h b/src/libs/lv_conf.h
index 761baba2..a03a4833 100644
--- a/src/libs/lv_conf.h
+++ b/src/libs/lv_conf.h
@@ -417,6 +417,7 @@ typedef void* lv_indev_drv_user_data_t;            /*Type of user data in the in
                                LV_FONT_DECLARE(jetbrains_mono_extrabold_compressed) \
                                LV_FONT_DECLARE(jetbrains_mono_42) \
                                LV_FONT_DECLARE(jetbrains_mono_76) \
+                               LV_FONT_DECLARE(open_sans_light) \
                                LV_FONT_DECLARE(lv_font_sys_48)
 
 /* Enable it if you have fonts with a lot of characters.

From 2f479e5fc7688ae47e99c0f4aead87c9cdc29123 Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Fri, 25 Jun 2021 01:07:40 +0300
Subject: [PATCH 33/58] Fixed a bunch of format specifiers

---
 src/displayapp/screens/Steps.cpp                 | 6 +++---
 src/displayapp/screens/SystemInfo.cpp            | 4 ++--
 src/displayapp/screens/Timer.cpp                 | 6 +++---
 src/displayapp/screens/settings/SettingSteps.cpp | 6 +++---
 4 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/src/displayapp/screens/Steps.cpp b/src/displayapp/screens/Steps.cpp
index b485c975..cc78813f 100644
--- a/src/displayapp/screens/Steps.cpp
+++ b/src/displayapp/screens/Steps.cpp
@@ -30,8 +30,8 @@ Steps::Steps(
 
   lSteps = lv_label_create(lv_scr_act(), nullptr);
   lv_obj_set_style_local_text_color(lSteps, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x00FF00));
-  lv_obj_set_style_local_text_font(lSteps, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_42);   
-  lv_label_set_text_fmt(lSteps, "%li", stepsCount); 
+  lv_obj_set_style_local_text_font(lSteps, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_42);
+  lv_label_set_text_fmt(lSteps, "%li", stepsCount);
   lv_obj_align(lSteps, nullptr, LV_ALIGN_CENTER, 0, -20);
 
   lv_obj_t * lstepsL = lv_label_create(lv_scr_act(), nullptr);
@@ -41,7 +41,7 @@ Steps::Steps(
 
   lv_obj_t * lstepsGoal = lv_label_create(lv_scr_act(), nullptr);
   lv_obj_set_style_local_text_color(lstepsGoal, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_CYAN);
-  lv_label_set_text_fmt(lstepsGoal,"Goal\n%i", settingsController.GetStepsGoal()); 
+  lv_label_set_text_fmt(lstepsGoal, "Goal\n%lu", settingsController.GetStepsGoal());
   lv_label_set_align(lstepsGoal, LV_LABEL_ALIGN_CENTER);
   lv_obj_align(lstepsGoal, lSteps, LV_ALIGN_OUT_BOTTOM_MID, 0, 60);
 
diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index 60e53ad6..f70b67fd 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -192,11 +192,11 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen3() {
                         "\n"
                         "#444444 LVGL Memory#\n"
                         " #444444 used# %d (%d%%)\n"
-                        " #444444 max used# %d\n"
+                        " #444444 max used# %lu\n"
                         " #444444 frag# %d%%\n"
                         " #444444 free# %d"
                         "\n"
-                        "#444444 Steps# %li",
+                        "#444444 Steps# %i",
                         bleAddr[5],
                         bleAddr[4],
                         bleAddr[3],
diff --git a/src/displayapp/screens/Timer.cpp b/src/displayapp/screens/Timer.cpp
index 260a17ef..99e979ba 100644
--- a/src/displayapp/screens/Timer.cpp
+++ b/src/displayapp/screens/Timer.cpp
@@ -63,8 +63,8 @@ Timer::Timer(DisplayApp* app, Controllers::TimerController& timerController)
   lv_obj_set_style_local_text_color(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);
   
   uint32_t seconds = timerController.GetTimeRemaining() / 1000;
-  lv_label_set_text_fmt(time, "%02d:%02d", seconds / 60, seconds % 60);
-  
+  lv_label_set_text_fmt(time, "%02lu:%02lu", seconds / 60, seconds % 60);
+
   lv_obj_align(time, lv_scr_act(), LV_ALIGN_IN_LEFT_MID, 0, -20);
   
   btnPlayPause = lv_btn_create(lv_scr_act(), nullptr);
@@ -90,7 +90,7 @@ Timer::~Timer() {
 bool Timer::Refresh() {
   if (timerController.IsRunning()) {
     uint32_t seconds = timerController.GetTimeRemaining() / 1000;
-    lv_label_set_text_fmt(time, "%02d:%02d", seconds / 60, seconds % 60);
+    lv_label_set_text_fmt(time, "%02lu:%02lu", seconds / 60, seconds % 60);
   }
   return running;
 }
diff --git a/src/displayapp/screens/settings/SettingSteps.cpp b/src/displayapp/screens/settings/SettingSteps.cpp
index b7c024f1..faa843e6 100644
--- a/src/displayapp/screens/settings/SettingSteps.cpp
+++ b/src/displayapp/screens/settings/SettingSteps.cpp
@@ -45,7 +45,7 @@ SettingSteps::SettingSteps(
 
   stepValue = lv_label_create(lv_scr_act(), NULL);
   lv_obj_set_style_local_text_font(stepValue, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_42);
-  lv_label_set_text_fmt(stepValue,"%i", settingsController.GetStepsGoal());
+  lv_label_set_text_fmt(stepValue, "%lu", settingsController.GetStepsGoal());
   lv_label_set_align(stepValue, LV_LABEL_ALIGN_CENTER);
   lv_obj_align(stepValue, lv_scr_act(), LV_ALIGN_CENTER, 0, -10);
 
@@ -81,7 +81,7 @@ void SettingSteps::UpdateSelected(lv_obj_t *object, lv_event_t event) {
     value += 1000;
     if ( value <= 500000 ) {
       settingsController.SetStepsGoal(value);
-      lv_label_set_text_fmt(stepValue,"%i", settingsController.GetStepsGoal());
+      lv_label_set_text_fmt(stepValue, "%lu", settingsController.GetStepsGoal());
       lv_obj_align(stepValue, lv_scr_act(), LV_ALIGN_CENTER, 0, -10);
     }
   }
@@ -90,7 +90,7 @@ void SettingSteps::UpdateSelected(lv_obj_t *object, lv_event_t event) {
     value -= 1000;
     if ( value >= 1000 ) {
       settingsController.SetStepsGoal(value);
-      lv_label_set_text_fmt(stepValue,"%i", settingsController.GetStepsGoal());
+      lv_label_set_text_fmt(stepValue, "%lu", settingsController.GetStepsGoal());
       lv_obj_align(stepValue, lv_scr_act(), LV_ALIGN_CENTER, 0, -10);
     }
   }

From bdb5965f1a3432a4f24b5fc566973bf4ab811b08 Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Fri, 25 Jun 2021 00:40:55 +0300
Subject: [PATCH 34/58] static_cast cleanup

---
 src/components/battery/BatteryController.cpp | 2 +-
 src/displayapp/screens/SystemInfo.cpp        | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/components/battery/BatteryController.cpp b/src/components/battery/BatteryController.cpp
index bc146457..b153b980 100644
--- a/src/components/battery/BatteryController.cpp
+++ b/src/components/battery/BatteryController.cpp
@@ -14,7 +14,7 @@ Battery::Battery() {
 }
 
 void Battery::Init() {
-  nrf_gpio_cfg_input(chargingPin, (nrf_gpio_pin_pull_t) GPIO_PIN_CNF_PULL_Pullup);
+  nrf_gpio_cfg_input(chargingPin, static_cast<nrf_gpio_pin_pull_t> GPIO_PIN_CNF_PULL_Pullup);
 }
 
 void Battery::Update() {
diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index f70b67fd..1e90bf40 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -203,11 +203,11 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen3() {
                         bleAddr[2],
                         bleAddr[1],
                         bleAddr[0],
-                        (int) mon.total_size - mon.free_size,
+                        static_cast<int>(mon.total_size - mon.free_size),
                         mon.used_pct,
                         mon.max_used,
                         mon.frag_pct,
-                        (int) mon.free_biggest_size,
+                        static_cast<int>(mon.free_biggest_size),
                         0);
   lv_obj_align(label, lv_scr_act(), LV_ALIGN_CENTER, 0, 0);
   return std::make_unique<Screens::Label>(2, 5, app, label);

From 69894853acdbae83f3a04da976af0a5794046742 Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Fri, 25 Jun 2021 00:39:15 +0300
Subject: [PATCH 35/58] Improved CLion configuration

---
 .idea/codeStyles/Project.xml | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
index 7bdfbcb1..9c99b664 100644
--- a/.idea/codeStyles/Project.xml
+++ b/.idea/codeStyles/Project.xml
@@ -12,6 +12,29 @@
       <option name="SPACE_BEFORE_REFERENCE_IN_DECLARATION" value="false" />
       <option name="SPACE_AFTER_REFERENCE_IN_DECLARATION" value="true" />
     </Objective-C>
+    <Objective-C-extensions>
+      <rules>
+        <rule entity="NAMESPACE" visibility="ANY" specifier="ANY" prefix="" style="PASCAL_CASE" suffix="" />
+        <rule entity="MACRO" visibility="ANY" specifier="ANY" prefix="" style="SCREAMING_SNAKE_CASE" suffix="" />
+        <rule entity="CLASS" visibility="ANY" specifier="ANY" prefix="" style="PASCAL_CASE" suffix="" />
+        <rule entity="STRUCT" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+        <rule entity="ENUM" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+        <rule entity="ENUMERATOR" visibility="ANY" specifier="ANY" prefix="" style="PASCAL_CASE" suffix="" />
+        <rule entity="TYPEDEF" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+        <rule entity="UNION" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+        <rule entity="CLASS_MEMBER_FUNCTION" visibility="ANY" specifier="ANY" prefix="" style="PASCAL_CASE" suffix="" />
+        <rule entity="STRUCT_MEMBER_FUNCTION" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+        <rule entity="CLASS_MEMBER_FIELD" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+        <rule entity="STRUCT_MEMBER_FIELD" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+        <rule entity="GLOBAL_FUNCTION" visibility="ANY" specifier="ANY" prefix="" style="PASCAL_CASE" suffix="" />
+        <rule entity="GLOBAL_VARIABLE" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+        <rule entity="PARAMETER" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+        <rule entity="LOCAL_VARIABLE" visibility="ANY" specifier="ANY" prefix="" style="CAMEL_CASE" suffix="" />
+      </rules>
+    </Objective-C-extensions>
+    <clangFormatSettings>
+      <option name="ENABLED" value="true" />
+    </clangFormatSettings>
     <codeStyleSettings language="ObjectiveC">
       <option name="RIGHT_MARGIN" value="140" />
       <option name="IF_BRACE_FORCE" value="3" />

From dea4beba13b539cc6a8660b35922d703ea794a47 Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Thu, 10 Jun 2021 00:46:25 +0300
Subject: [PATCH 36/58] Disabled new Clang-Tidy checks that are too noisy

---
 .clang-tidy | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/.clang-tidy b/.clang-tidy
index 8a7d38f0..e6acf447 100644
--- a/.clang-tidy
+++ b/.clang-tidy
@@ -1,4 +1,5 @@
 Checks: '*,
+  -altera-unroll-loops,
   -llvmlibc-callee-namespace,
   -llvm-header-guard,
   -llvm-namespace-comment,
@@ -23,6 +24,7 @@ Checks: '*,
   -hicpp-avoid-c-arrays,
   -hicpp-uppercase-literal-suffix,
   -hicpp-no-array-decay,
+  -hicpp-vararg,
   -cert-err58-cpp,
   -cert-err60-cpp'
 CheckOptions:

From d1842a36861d1b0f0bd19a8b6d3efa633e419c61 Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Sat, 26 Jun 2021 21:55:26 +0300
Subject: [PATCH 37/58] Disabled a few more unnecessary warnings, sorted a bit

---
 .clang-tidy | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/.clang-tidy b/.clang-tidy
index e6acf447..8b9e7c0c 100644
--- a/.clang-tidy
+++ b/.clang-tidy
@@ -15,18 +15,20 @@ Checks: '*,
   -cppcoreguidelines-avoid-magic-numbers,
   -cppcoreguidelines-avoid-non-const-global-variables,
   -cppcoreguidelines-avoid-c-arrays,
+  -cppcoreguidelines-special-member-functions,
   -readability-magic-numbers,
   -readability-uppercase-literal-suffix,
   -modernize-use-trailing-return-type,
   -modernize-avoid-c-arrays,
-  -hicpp-signed-bitwise,
-  -hicpp-no-assembler,
   -hicpp-avoid-c-arrays,
   -hicpp-uppercase-literal-suffix,
-  -hicpp-no-array-decay,
   -hicpp-vararg,
+  -hicpp-no-assembler,
+  -hicpp-no-array-decay,
+  -hicpp-signed-bitwise,
+  -hicpp-special-member-functions,
   -cert-err58-cpp,
   -cert-err60-cpp'
 CheckOptions:
   - key: readability-function-cognitive-complexity.Threshold
-    value: 100
\ No newline at end of file
+    value: 100

From 7075b7f264d1c5ae3a2b7d2fc26e1d0ad36b2616 Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Wed, 23 Jun 2021 13:08:51 +0300
Subject: [PATCH 38/58] Fix call notification button alignment

---
 src/displayapp/screens/Notifications.cpp | 32 +++++++++---------------
 1 file changed, 12 insertions(+), 20 deletions(-)

diff --git a/src/displayapp/screens/Notifications.cpp b/src/displayapp/screens/Notifications.cpp
index 1a1729ea..38b12420 100644
--- a/src/displayapp/screens/Notifications.cpp
+++ b/src/displayapp/screens/Notifications.cpp
@@ -163,10 +163,10 @@ Notifications::NotificationItem::NotificationItem(const char* title,
   lv_obj_set_style_local_border_width(container1, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, 0);
 
   lv_obj_set_pos(container1, 0, 50);
-  lv_obj_set_width(container1, 240);
-  lv_obj_set_height(container1, 190);
+  lv_obj_set_size(container1, LV_HOR_RES, 190);
 
   lv_cont_set_layout(container1, LV_LAYOUT_COLUMN_LEFT);
+  lv_cont_set_fit(container1, LV_FIT_NONE);
 
   lv_obj_t* alert_count = lv_label_create(lv_scr_act(), nullptr);
   lv_label_set_text_fmt(alert_count, "%i/%i", notifNr, notifNb);
@@ -198,6 +198,7 @@ Notifications::NotificationItem::NotificationItem(const char* title,
       lv_label_set_text(alert_subject, msg);
     } break;
     case Controllers::NotificationManager::Categories::IncomingCall: {
+      lv_obj_set_height(container1, 108);
       lv_obj_t* alert_subject = lv_label_create(container1, nullptr);
       lv_obj_set_style_local_text_color(alert_subject, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_ORANGE);
       lv_label_set_long_mode(alert_subject, LV_LABEL_LONG_BREAK);
@@ -210,38 +211,29 @@ Notifications::NotificationItem::NotificationItem(const char* title,
       lv_obj_set_width(alert_caller, LV_HOR_RES - 20);
       lv_label_set_text(alert_caller, msg);
 
-      lv_obj_t* callBtnContainer = lv_cont_create(container1, NULL);
-      lv_obj_set_width(callBtnContainer, 240);
-      lv_obj_set_height(callBtnContainer, 90);
-      lv_cont_set_layout(callBtnContainer, LV_LAYOUT_ROW_MID);
-
-      lv_obj_set_style_local_bg_color(callBtnContainer, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x222222));
-      lv_obj_set_style_local_pad_all(callBtnContainer, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, 0);
-      lv_obj_set_style_local_margin_top(callBtnContainer, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, 40);
-      lv_obj_set_style_local_margin_left(callBtnContainer, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, -8);
-      lv_obj_set_style_local_pad_inner(callBtnContainer, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, 5);
-      lv_obj_set_style_local_border_width(callBtnContainer, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, 0);
-
-      bt_accept = lv_btn_create(callBtnContainer, nullptr);
+      bt_accept = lv_btn_create(lv_scr_act(), nullptr);
       bt_accept->user_data = this;
       lv_obj_set_event_cb(bt_accept, AcceptIncomingCallEventHandler);
-      lv_obj_set_size(bt_accept, (LV_HOR_RES / 3) - 5, 80);
+      lv_obj_set_size(bt_accept, 76, 76);
+      lv_obj_align(bt_accept, NULL, LV_ALIGN_IN_BOTTOM_LEFT, 0, 0);
       label_accept = lv_label_create(bt_accept, nullptr);
       lv_label_set_text(label_accept, Symbols::phone);
       lv_obj_set_style_local_bg_color(bt_accept, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GREEN);
 
-      bt_reject = lv_btn_create(callBtnContainer, nullptr);
+      bt_reject = lv_btn_create(lv_scr_act(), nullptr);
       bt_reject->user_data = this;
       lv_obj_set_event_cb(bt_reject, RejectIncomingCallEventHandler);
-      lv_obj_set_size(bt_reject, (LV_HOR_RES / 3) - 5, 80);
+      lv_obj_set_size(bt_reject, 76, 76);
+      lv_obj_align(bt_reject, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, 0);
       label_reject = lv_label_create(bt_reject, nullptr);
       lv_label_set_text(label_reject, Symbols::phoneSlash);
       lv_obj_set_style_local_bg_color(bt_reject, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_RED);
 
-      bt_mute = lv_btn_create(callBtnContainer, nullptr);
+      bt_mute = lv_btn_create(lv_scr_act(), nullptr);
       bt_mute->user_data = this;
       lv_obj_set_event_cb(bt_mute, MuteIncomingCallEventHandler);
-      lv_obj_set_size(bt_mute, (LV_HOR_RES / 3) - 5, 80);
+      lv_obj_set_size(bt_mute, 76, 76);
+      lv_obj_align(bt_mute, NULL, LV_ALIGN_IN_BOTTOM_RIGHT, 0, 0);
       label_mute = lv_label_create(bt_mute, nullptr);
       lv_label_set_text(label_mute, Symbols::volumMute);
       lv_obj_set_style_local_bg_color(bt_mute, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);

From 38f40034b0a200586429a3d8329479ad13d84d94 Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Fri, 2 Jul 2021 18:30:32 +0300
Subject: [PATCH 39/58] Float voltage to int (#444)

* Change voltage float to millivolt integer
* Explain the ADC to milliVolts conversion
---
 src/components/battery/BatteryController.cpp | 14 +++++++++-----
 src/components/battery/BatteryController.h   |  6 +++---
 src/displayapp/screens/BatteryInfo.cpp       | 17 ++---------------
 src/displayapp/screens/BatteryInfo.h         |  2 +-
 src/displayapp/screens/SystemInfo.cpp        | 12 ++----------
 5 files changed, 17 insertions(+), 34 deletions(-)

diff --git a/src/components/battery/BatteryController.cpp b/src/components/battery/BatteryController.cpp
index b153b980..02901dd8 100644
--- a/src/components/battery/BatteryController.cpp
+++ b/src/components/battery/BatteryController.cpp
@@ -55,17 +55,21 @@ void Battery::SaadcInit() {
 
 void Battery::SaadcEventHandler(nrfx_saadc_evt_t const* p_event) {
 
-  const float battery_max = 4.18; // maximum voltage of battery ( max charging voltage is 4.21 )
-  const float battery_min = 3.20; // minimum voltage of battery before shutdown ( depends on the battery )
+  const uint16_t battery_max = 4180; // maximum voltage of battery ( max charging voltage is 4.21 )
+  const uint16_t battery_min = 3200; // minimum voltage of battery before shutdown ( depends on the battery )
 
   if (p_event->type == NRFX_SAADC_EVT_DONE) {
 
     APP_ERROR_CHECK(nrfx_saadc_buffer_convert(&saadc_value, 1));
 
-    voltage = (static_cast<float>(p_event->data.done.p_buffer[0]) * 2.04f) / (1024 / 3.0f);
-    voltage = roundf(voltage * 100) / 100;
+    // A hardware voltage divider divides the battery voltage by 2
+    // ADC gain is 1/5
+    // thus adc_voltage = battery_voltage / 2 * gain = battery_voltage / 10
+    // reference_voltage is 0.6V
+    // p_event->data.done.p_buffer[0] = (adc_voltage / reference_voltage) * 1024
+    voltage = p_event->data.done.p_buffer[0] * 6000 / 1024;
 
-    percentRemaining = static_cast<int>(((voltage - battery_min) / (battery_max - battery_min)) * 100);
+    percentRemaining = (voltage - battery_min) * 100 / (battery_max - battery_min);
 
     percentRemaining = std::max(percentRemaining, 0);
     percentRemaining = std::min(percentRemaining, 100);
diff --git a/src/components/battery/BatteryController.h b/src/components/battery/BatteryController.h
index 04bcf6b8..26e24938 100644
--- a/src/components/battery/BatteryController.h
+++ b/src/components/battery/BatteryController.h
@@ -50,7 +50,7 @@ namespace Pinetime {
         return percentRemainingBuffer.GetAverage();
       }
 
-      float Voltage() const {
+      uint16_t Voltage() const {
         return voltage;
       }
 
@@ -71,7 +71,7 @@ namespace Pinetime {
       static constexpr uint32_t chargingPin = 12;
       static constexpr uint32_t powerPresentPin = 19;
       static constexpr nrf_saadc_input_t batteryVoltageAdcInput = NRF_SAADC_INPUT_AIN7;
-      float voltage = 0.0f;
+      uint16_t voltage = 0;
       int percentRemaining = -1;
 
       bool isCharging = false;
@@ -86,4 +86,4 @@ namespace Pinetime {
       uint8_t samples = 0;
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/displayapp/screens/BatteryInfo.cpp b/src/displayapp/screens/BatteryInfo.cpp
index 1ab8b0ad..87c8b4bb 100644
--- a/src/displayapp/screens/BatteryInfo.cpp
+++ b/src/displayapp/screens/BatteryInfo.cpp
@@ -46,16 +46,9 @@ BatteryInfo::BatteryInfo(Pinetime::Applications::DisplayApp* app, Pinetime::Cont
   lv_label_set_align(percent, LV_LABEL_ALIGN_LEFT);
   lv_obj_align(percent, nullptr, LV_ALIGN_CENTER, 0, -60);
 
-  // hack to not use the flot functions from printf
-  uint8_t batteryVoltageBytes[2];
-  batteryVoltageBytes[1] = static_cast<uint8_t>(batteryVoltage); // truncate whole numbers
-  batteryVoltageBytes[0] =
-    static_cast<uint8_t>((batteryVoltage - batteryVoltageBytes[1]) * 100); // remove whole part of flt and shift 2 places over
-  //
-
   voltage = lv_label_create(lv_scr_act(), nullptr);
   lv_obj_set_style_local_text_color(voltage, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0xC6A600));
-  lv_label_set_text_fmt(voltage, "%1i.%02i volts", batteryVoltageBytes[1], batteryVoltageBytes[0]);
+  lv_label_set_text_fmt(voltage, "%1i.%02i volts", batteryVoltage / 1000, batteryVoltage % 1000 / 10);
   lv_label_set_align(voltage, LV_LABEL_ALIGN_CENTER);
   lv_obj_align(voltage, nullptr, LV_ALIGN_CENTER, 0, 95);
 
@@ -129,13 +122,7 @@ void BatteryInfo::UpdateScreen() {
   }
 
   lv_obj_align(status, charging_bar, LV_ALIGN_OUT_BOTTOM_MID, 0, 20);
-  // hack to not use the flot functions from printf
-  uint8_t batteryVoltageBytes[2];
-  batteryVoltageBytes[1] = static_cast<uint8_t>(batteryVoltage); // truncate whole numbers
-  batteryVoltageBytes[0] =
-    static_cast<uint8_t>((batteryVoltage - batteryVoltageBytes[1]) * 100); // remove whole part of flt and shift 2 places over
-  //
-  lv_label_set_text_fmt(voltage, "%1i.%02i volts", batteryVoltageBytes[1], batteryVoltageBytes[0]);
+  lv_label_set_text_fmt(voltage, "%1i.%02i volts", batteryVoltage / 1000, batteryVoltage % 1000 / 10);
 }
 
 bool BatteryInfo::Refresh() {
diff --git a/src/displayapp/screens/BatteryInfo.h b/src/displayapp/screens/BatteryInfo.h
index 8805db58..346dc571 100644
--- a/src/displayapp/screens/BatteryInfo.h
+++ b/src/displayapp/screens/BatteryInfo.h
@@ -37,7 +37,7 @@ namespace Pinetime {
 
         int8_t animation = 0;
         int8_t batteryPercent = -1;
-        float batteryVoltage = 0.0f;
+        uint16_t batteryVoltage = 0;
       };
     }
   }
diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index 1e90bf40..5ae3a595 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -104,8 +104,6 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen1() {
 
 std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
   auto batteryPercent = static_cast<uint8_t>(batteryController.PercentRemaining());
-  float batteryVoltage = batteryController.Voltage();
-
   auto resetReason = [this]() {
     switch (watchdog.ResetReason()) {
       case Drivers::Watchdog::ResetReasons::Watchdog:
@@ -144,18 +142,13 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
   uptimeSeconds = uptimeSeconds % secondsInAMinute;
   // TODO handle more than 100 days of uptime
 
-  // hack to not use the flot functions from printf
-  uint8_t batteryVoltageBytes[2];
-  batteryVoltageBytes[1] = static_cast<uint8_t>(batteryVoltage); // truncate whole numbers
-  batteryVoltageBytes[0] = static_cast<uint8_t>((batteryVoltage - batteryVoltageBytes[1]) * 100); // remove whole part of flt and shift 2 places over
-
   lv_obj_t* label = lv_label_create(lv_scr_act(), nullptr);
   lv_label_set_recolor(label, true);
   lv_label_set_text_fmt(label,
                         "#444444 Date# %02d/%02d/%04d\n"
                         "#444444 Time# %02d:%02d:%02d\n"
                         "#444444 Uptime#\n %02lud %02lu:%02lu:%02lu\n"
-                        "#444444 Battery# %d%%/%1i.%02iv\n"
+                        "#444444 Battery# %d%%/%03imV\n"
                         "#444444 Backlight# %s\n"
                         "#444444 Last reset# %s\n"
                         "#444444 Accel.# %s\n",
@@ -170,8 +163,7 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
                         uptimeMinutes,
                         uptimeSeconds,
                         batteryPercent,
-                        batteryVoltageBytes[1],
-                        batteryVoltageBytes[0],
+                        batteryController.Voltage(),
                         brightnessController.ToString(),
                         resetReason,
                         ToString(motionController.DeviceType()));

From 4e435e93e0b4db101f9232661ee4147a90084df0 Mon Sep 17 00:00:00 2001
From: Bryton Hall <email@bryton.io>
Date: Fri, 2 Jul 2021 11:34:32 -0400
Subject: [PATCH 40/58] and metronome icon (#439)

* add drum icon for metronome app
---
 src/displayapp/fonts/README.md                |  2 +-
 src/displayapp/fonts/jetbrains_mono_bold_20.c | 21 ++++++++++++++-----
 src/displayapp/screens/ApplicationList.cpp    |  2 +-
 src/displayapp/screens/Symbols.h              |  1 +
 4 files changed, 19 insertions(+), 7 deletions(-)

diff --git a/src/displayapp/fonts/README.md b/src/displayapp/fonts/README.md
index 13b61b8e..ec4beb88 100644
--- a/src/displayapp/fonts/README.md
+++ b/src/displayapp/fonts/README.md
@@ -13,7 +13,7 @@
 * Do not enable font compression and horizontal subpixel hinting
 * Load the file `JetBrainsMono-Bold.tff` (use the file in this repo to ensure the version matches) and specify the following range : `0x20-0x7f, 0x410-0x44f`
 * Add a 2nd font, load the file `FontAwesome5-Solid+Brands+Regular.woff` and specify the following
-  range : `0xf293, 0xf294, 0xf244, 0xf240, 0xf242, 0xf243, 0xf241, 0xf54b, 0xf21e, 0xf1e6, 0xf54b, 0xf017, 0xf129, 0xf03a, 0xf185, 0xf560, 0xf001, 0xf3fd, 0xf069, 0xf1fc, 0xf45d, 0xf59f, 0xf5a0, 0xf029, 0xf027, 0xf028, 0xf6a9, 0xf04b, 0xf04c, 0xf048, 0xf051, 0xf095, 0xf3dd, 0xf04d, 0xf2f2, 0xf024, 0xf252`
+  range : `0xf293, 0xf294, 0xf244, 0xf240, 0xf242, 0xf243, 0xf241, 0xf54b, 0xf21e, 0xf1e6, 0xf54b, 0xf017, 0xf129, 0xf03a, 0xf185, 0xf560, 0xf001, 0xf3fd, 0xf069, 0xf1fc, 0xf45d, 0xf59f, 0xf5a0, 0xf029, 0xf027, 0xf028, 0xf6a9, 0xf04b, 0xf04c, 0xf048, 0xf051, 0xf095, 0xf3dd, 0xf04d, 0xf2f2, 0xf024, 0xf252, 0xf569`
 * Click on Convert, and download the file `jetbrains_mono_bold_20.c` and copy it in `src/DisplayApp/Fonts`
 * Add the font .c file path to src/CMakeLists.txt
 * Add an LV_FONT_DECLARE line in src/libs/lv_conf.h
diff --git a/src/displayapp/fonts/jetbrains_mono_bold_20.c b/src/displayapp/fonts/jetbrains_mono_bold_20.c
index b001bb7e..98243bb4 100644
--- a/src/displayapp/fonts/jetbrains_mono_bold_20.c
+++ b/src/displayapp/fonts/jetbrains_mono_bold_20.c
@@ -979,6 +979,16 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
     0x1f, 0xf0, 0x0, 0xfe, 0x0, 0x7, 0xc0, 0x0,
     0x38, 0x0, 0x1, 0x0, 0x0,
 
+    /* U+F569 "" */
+    0x0, 0x0, 0x4, 0x0, 0x0, 0x3c, 0x0, 0x0,
+    0xf0, 0x0, 0x7, 0xc0, 0x1f, 0xfe, 0x3, 0xff,
+    0xfe, 0xf, 0x87, 0xfe, 0x38, 0x3e, 0xe, 0xc0,
+    0xf8, 0x7, 0x81, 0xc0, 0xf, 0x0, 0x0, 0x1f,
+    0x80, 0x0, 0xff, 0xe0, 0xf, 0xff, 0xff, 0xff,
+    0xf9, 0xff, 0xf3, 0xf3, 0xe3, 0xe7, 0xe7, 0xc7,
+    0xce, 0xcf, 0x8f, 0x98, 0x9f, 0x1f, 0x20, 0x3e,
+    0x3e, 0x0, 0x4, 0x60, 0x0,
+
     /* U+F59F "" */
     0x0, 0x78, 0x0, 0x7, 0xf8, 0x0, 0x1f, 0xe0,
     0x0, 0xff, 0xc0, 0x3, 0xff, 0x0, 0xf, 0xfc,
@@ -1204,9 +1214,10 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
     {.bitmap_index = 3750, .adv_w = 320, .box_w = 20, .box_h = 20, .ofs_x = 0, .ofs_y = -2},
     {.bitmap_index = 3800, .adv_w = 400, .box_w = 25, .box_h = 19, .ofs_x = 0, .ofs_y = -2},
     {.bitmap_index = 3860, .adv_w = 320, .box_w = 20, .box_h = 21, .ofs_x = 0, .ofs_y = -3},
-    {.bitmap_index = 3913, .adv_w = 360, .box_w = 22, .box_h = 20, .ofs_x = 0, .ofs_y = -2},
-    {.bitmap_index = 3968, .adv_w = 360, .box_w = 22, .box_h = 19, .ofs_x = 0, .ofs_y = -2},
-    {.bitmap_index = 4021, .adv_w = 320, .box_w = 20, .box_h = 15, .ofs_x = 0, .ofs_y = 0}
+    {.bitmap_index = 3913, .adv_w = 360, .box_w = 23, .box_h = 21, .ofs_x = 0, .ofs_y = -3},
+    {.bitmap_index = 3974, .adv_w = 360, .box_w = 22, .box_h = 20, .ofs_x = 0, .ofs_y = -2},
+    {.bitmap_index = 4029, .adv_w = 360, .box_w = 22, .box_h = 19, .ofs_x = 0, .ofs_y = -2},
+    {.bitmap_index = 4082, .adv_w = 320, .box_w = 20, .box_h = 15, .ofs_x = 0, .ofs_y = 0}
 };
 
 /*---------------------
@@ -1218,7 +1229,7 @@ static const uint16_t unicode_list_2[] = {
     0x4a, 0x4b, 0x4c, 0x50, 0x68, 0x94, 0x128, 0x184,
     0x1e5, 0x1fb, 0x21d, 0x23f, 0x240, 0x241, 0x242, 0x243,
     0x251, 0x292, 0x293, 0x2f1, 0x3dc, 0x3fc, 0x45c, 0x54a,
-    0x55f, 0x59e, 0x59f, 0x6a8
+    0x55f, 0x568, 0x59e, 0x59f, 0x6a8
 };
 
 /*Collect the unicode lists and glyph_id offsets*/
@@ -1234,7 +1245,7 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
     },
     {
         .range_start = 61441, .range_length = 1705, .glyph_id_start = 160,
-        .unicode_list = unicode_list_2, .glyph_id_ofs_list = NULL, .list_length = 36, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
+        .unicode_list = unicode_list_2, .glyph_id_ofs_list = NULL, .list_length = 37, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
     }
 };
 
diff --git a/src/displayapp/screens/ApplicationList.cpp b/src/displayapp/screens/ApplicationList.cpp
index d434c177..78c7cd9a 100644
--- a/src/displayapp/screens/ApplicationList.cpp
+++ b/src/displayapp/screens/ApplicationList.cpp
@@ -63,7 +63,7 @@ std::unique_ptr<Screen> ApplicationList::CreateScreen2() {
     {Symbols::paddle, Apps::Paddle},
     {"2", Apps::Twos},
     {"M", Apps::Motion},
-    {"b", Apps::Metronome},
+    {Symbols::drum, Apps::Metronome},
     {"", Apps::None},
   }};
 
diff --git a/src/displayapp/screens/Symbols.h b/src/displayapp/screens/Symbols.h
index 8d55f693..c9d61541 100644
--- a/src/displayapp/screens/Symbols.h
+++ b/src/displayapp/screens/Symbols.h
@@ -40,6 +40,7 @@ namespace Pinetime {
         static constexpr const char* stopWatch = "\xEF\x8B\xB2";
         static constexpr const char* hourGlass = "\xEF\x89\x92";
         static constexpr const char* lapsFlag = "\xEF\x80\xA4";
+        static constexpr const char* drum = "\xEF\x95\xA9";
 
         // lv_font_sys_48.c
         static constexpr const char* settings = "\xEE\xA4\x82"; // e902

From e28516002b831a8e6f252f6aa08b8a390b9b7c68 Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jonathan@vandermey.ca>
Date: Mon, 7 Jun 2021 18:52:27 -0400
Subject: [PATCH 41/58] Eliminate reinterpret_casting

---
 src/components/ble/MusicService.cpp | 52 ++++++++++++++---------------
 1 file changed, 26 insertions(+), 26 deletions(-)

diff --git a/src/components/ble/MusicService.cpp b/src/components/ble/MusicService.cpp
index c420a576..1c7d93a6 100644
--- a/src/components/ble/MusicService.cpp
+++ b/src/components/ble/MusicService.cpp
@@ -23,63 +23,63 @@ int MusicCallback(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_ac
 }
 
 Pinetime::Controllers::MusicService::MusicService(Pinetime::System::SystemTask& system) : m_system(system) {
-  characteristicDefinition[0] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msEventCharUuid),
+  characteristicDefinition[0] = {.uuid = &msEventCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_NOTIFY,
                                  .val_handle = &eventHandle};
-  characteristicDefinition[1] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msStatusCharUuid),
+  characteristicDefinition[1] = {.uuid = &msStatusCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[2] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTrackCharUuid),
+  characteristicDefinition[2] = {.uuid = &msTrackCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[3] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msArtistCharUuid),
+  characteristicDefinition[3] = {.uuid = &msArtistCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[4] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msAlbumCharUuid),
+  characteristicDefinition[4] = {.uuid = &msAlbumCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[5] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msPositionCharUuid),
+  characteristicDefinition[5] = {.uuid = &msPositionCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[6] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTotalLengthCharUuid),
+  characteristicDefinition[6] = {.uuid = &msTotalLengthCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[7] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTotalLengthCharUuid),
+  characteristicDefinition[7] = {.uuid = &msTotalLengthCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[8] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTrackNumberCharUuid),
+  characteristicDefinition[8] = {.uuid = &msTrackNumberCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[9] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msTrackTotalCharUuid),
+  characteristicDefinition[9] = {.uuid = &msTrackTotalCharUuid.u,
                                  .access_cb = MusicCallback,
                                  .arg = this,
                                  .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[10] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msPlaybackSpeedCharUuid),
+  characteristicDefinition[10] = {.uuid = &msPlaybackSpeedCharUuid.u,
                                   .access_cb = MusicCallback,
                                   .arg = this,
                                   .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[11] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msRepeatCharUuid),
+  characteristicDefinition[11] = {.uuid = &msRepeatCharUuid.u,
                                   .access_cb = MusicCallback,
                                   .arg = this,
                                   .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
-  characteristicDefinition[12] = {.uuid = reinterpret_cast<ble_uuid_t*>(&msShuffleCharUuid),
+  characteristicDefinition[12] = {.uuid = &msShuffleCharUuid.u,
                                   .access_cb = MusicCallback,
                                   .arg = this,
                                   .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};
   characteristicDefinition[13] = {0};
 
   serviceDefinition[0] = {
-    .type = BLE_GATT_SVC_TYPE_PRIMARY, .uuid = reinterpret_cast<ble_uuid_t*>(&msUuid), .characteristics = characteristicDefinition};
+    .type = BLE_GATT_SVC_TYPE_PRIMARY, .uuid = &msUuid.u, .characteristics = characteristicDefinition};
   serviceDefinition[1] = {0};
 
   artistName = "Waiting for";
@@ -109,27 +109,27 @@ int Pinetime::Controllers::MusicService::OnCommand(uint16_t conn_handle, uint16_
     data[notifSize] = '\0';
     os_mbuf_copydata(ctxt->om, 0, notifSize, data);
     char* s = &data[0];
-    if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msArtistCharUuid)) == 0) {
+    if (ble_uuid_cmp(ctxt->chr->uuid, &msArtistCharUuid.u) == 0) {
       artistName = s;
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msTrackCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msTrackCharUuid.u) == 0) {
       trackName = s;
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msAlbumCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msAlbumCharUuid.u) == 0) {
       albumName = s;
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msStatusCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msStatusCharUuid.u) == 0) {
       playing = s[0];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msRepeatCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msRepeatCharUuid.u) == 0) {
       repeat = s[0];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msShuffleCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msShuffleCharUuid.u) == 0) {
       shuffle = s[0];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msPositionCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msPositionCharUuid.u) == 0) {
       trackProgress = (s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msTotalLengthCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msTotalLengthCharUuid.u) == 0) {
       trackLength = (s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msTrackNumberCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msTrackNumberCharUuid.u) == 0) {
       trackNumber = (s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msTrackTotalCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msTrackTotalCharUuid.u) == 0) {
       tracksTotal = (s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3];
-    } else if (ble_uuid_cmp(ctxt->chr->uuid, reinterpret_cast<ble_uuid_t*>(&msPlaybackSpeedCharUuid)) == 0) {
+    } else if (ble_uuid_cmp(ctxt->chr->uuid, &msPlaybackSpeedCharUuid.u) == 0) {
       playbackSpeed = static_cast<float>(((s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3])) / 100.0f;
     }
   }
@@ -174,4 +174,4 @@ void Pinetime::Controllers::MusicService::event(char event) {
   }
 
   ble_gattc_notify_custom(connectionHandle, eventHandle, om);
-}
\ No newline at end of file
+}

From 4217a8cb650048252b6d294c9358a0c8de3b16f0 Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jonathan@vandermey.ca>
Date: Sat, 12 Jun 2021 18:58:53 -0400
Subject: [PATCH 42/58] Make MusicService UUID objects static constexpr

---
 src/components/ble/MusicService.cpp | 31 +++++++++++++++++++++++++++++
 src/components/ble/MusicService.h   | 22 --------------------
 2 files changed, 31 insertions(+), 22 deletions(-)

diff --git a/src/components/ble/MusicService.cpp b/src/components/ble/MusicService.cpp
index 1c7d93a6..5dfea503 100644
--- a/src/components/ble/MusicService.cpp
+++ b/src/components/ble/MusicService.cpp
@@ -18,6 +18,37 @@
 #include "MusicService.h"
 #include "systemtask/SystemTask.h"
 
+namespace {
+  // 0000yyxx-78fc-48fe-8e23-433b3a1942d0
+  constexpr ble_uuid128_t CharUuid(uint8_t x, uint8_t y) {
+    return ble_uuid128_t{
+      .u = {.type = BLE_UUID_TYPE_128},
+      .value =  { 0xd0, 0x42, 0x19, 0x3a, 0x3b, 0x43, 0x23, 0x8e, 0xfe, 0x48, 0xfc, 0x78, x, y, 0x00, 0x00 }
+    };
+  }
+
+  // 00000000-78fc-48fe-8e23-433b3a1942d0
+  constexpr ble_uuid128_t BaseUuid() {
+    return CharUuid(0x00, 0x00);
+  }
+
+  constexpr ble_uuid128_t msUuid {BaseUuid()};
+
+  constexpr ble_uuid128_t msEventCharUuid {CharUuid(0x01, 0x00)};
+  constexpr ble_uuid128_t msStatusCharUuid {CharUuid(0x02, 0x00)};
+  constexpr ble_uuid128_t msArtistCharUuid {CharUuid(0x03, 0x00)};
+  constexpr ble_uuid128_t msTrackCharUuid {CharUuid(0x04, 0x00)};
+  constexpr ble_uuid128_t msAlbumCharUuid {CharUuid(0x05, 0x00)};
+  constexpr ble_uuid128_t msPositionCharUuid {CharUuid(0x06, 0x00)};
+  constexpr ble_uuid128_t msTotalLengthCharUuid {CharUuid(0x07, 0x00)};
+  constexpr ble_uuid128_t msTrackNumberCharUuid {CharUuid(0x08, 0x00)};
+  constexpr ble_uuid128_t msTrackTotalCharUuid {CharUuid(0x09, 0x00)};
+  constexpr ble_uuid128_t msPlaybackSpeedCharUuid {CharUuid(0x0a, 0x00)};
+  constexpr ble_uuid128_t msRepeatCharUuid {CharUuid(0x0b, 0x00)};
+  constexpr ble_uuid128_t msShuffleCharUuid {CharUuid(0x0c, 0x00)};
+
+}
+
 int MusicCallback(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_access_ctxt* ctxt, void* arg) {
   return static_cast<Pinetime::Controllers::MusicService*>(arg)->OnCommand(conn_handle, attr_handle, ctxt);
 }
diff --git a/src/components/ble/MusicService.h b/src/components/ble/MusicService.h
index 0b5a7464..a611c51d 100644
--- a/src/components/ble/MusicService.h
+++ b/src/components/ble/MusicService.h
@@ -26,18 +26,11 @@
 #undef max
 #undef min
 
-// 00000000-78fc-48fe-8e23-433b3a1942d0
-#define MUSIC_SERVICE_UUID_BASE                                                                                                            \
-  { 0xd0, 0x42, 0x19, 0x3a, 0x3b, 0x43, 0x23, 0x8e, 0xfe, 0x48, 0xfc, 0x78, 0x00, 0x00, 0x00, 0x00 }
-#define MUSIC_SERVICE_CHAR_UUID(x, y)                                                                                                      \
-  { 0xd0, 0x42, 0x19, 0x3a, 0x3b, 0x43, 0x23, 0x8e, 0xfe, 0x48, 0xfc, 0x78, x, y, 0x00, 0x00 }
-
 namespace Pinetime {
   namespace System {
     class SystemTask;
   }
   namespace Controllers {
-
     class MusicService {
     public:
       explicit MusicService(Pinetime::System::SystemTask& system);
@@ -73,21 +66,6 @@ namespace Pinetime {
       enum MusicStatus { NotPlaying = 0x00, Playing = 0x01 };
 
     private:
-      ble_uuid128_t msUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_UUID_BASE};
-
-      ble_uuid128_t msEventCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x01, 0x00)};
-      ble_uuid128_t msStatusCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x02, 0x00)};
-      ble_uuid128_t msArtistCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x03, 0x00)};
-      ble_uuid128_t msTrackCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x04, 0x00)};
-      ble_uuid128_t msAlbumCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x05, 0x00)};
-      ble_uuid128_t msPositionCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x06, 0x00)};
-      ble_uuid128_t msTotalLengthCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x07, 0x00)};
-      ble_uuid128_t msTrackNumberCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x08, 0x00)};
-      ble_uuid128_t msTrackTotalCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x09, 0x00)};
-      ble_uuid128_t msPlaybackSpeedCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x0a, 0x00)};
-      ble_uuid128_t msRepeatCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x0b, 0x00)};
-      ble_uuid128_t msShuffleCharUuid {.u = {.type = BLE_UUID_TYPE_128}, .value = MUSIC_SERVICE_CHAR_UUID(0x0c, 0x00)};
-
       struct ble_gatt_chr_def characteristicDefinition[14];
       struct ble_gatt_svc_def serviceDefinition[2];
 

From d13b0a7ec54e9149b353563bef70f4ecee92cc3f Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jonathan@vandermey.ca>
Date: Sat, 12 Jun 2021 18:59:14 -0400
Subject: [PATCH 43/58] Move local-only function into anonymous namespace

---
 src/components/ble/MusicService.cpp | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/components/ble/MusicService.cpp b/src/components/ble/MusicService.cpp
index 5dfea503..4d7e950f 100644
--- a/src/components/ble/MusicService.cpp
+++ b/src/components/ble/MusicService.cpp
@@ -47,10 +47,9 @@ namespace {
   constexpr ble_uuid128_t msRepeatCharUuid {CharUuid(0x0b, 0x00)};
   constexpr ble_uuid128_t msShuffleCharUuid {CharUuid(0x0c, 0x00)};
 
-}
-
-int MusicCallback(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_access_ctxt* ctxt, void* arg) {
-  return static_cast<Pinetime::Controllers::MusicService*>(arg)->OnCommand(conn_handle, attr_handle, ctxt);
+  int MusicCallback(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_access_ctxt* ctxt, void* arg) {
+    return static_cast<Pinetime::Controllers::MusicService*>(arg)->OnCommand(conn_handle, attr_handle, ctxt);
+  }
 }
 
 Pinetime::Controllers::MusicService::MusicService(Pinetime::System::SystemTask& system) : m_system(system) {

From 8031cd1b4044823fb243b7ba2b2785de2a877fad Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jonathan@vandermey.ca>
Date: Sat, 12 Jun 2021 19:04:13 -0400
Subject: [PATCH 44/58] Inititialize members in class declaration

Also added initializers for previously unintialized members.
---
 src/components/ble/MusicService.cpp | 10 ----------
 src/components/ble/MusicService.h   | 24 ++++++++++++------------
 2 files changed, 12 insertions(+), 22 deletions(-)

diff --git a/src/components/ble/MusicService.cpp b/src/components/ble/MusicService.cpp
index 4d7e950f..74fe9522 100644
--- a/src/components/ble/MusicService.cpp
+++ b/src/components/ble/MusicService.cpp
@@ -111,16 +111,6 @@ Pinetime::Controllers::MusicService::MusicService(Pinetime::System::SystemTask&
   serviceDefinition[0] = {
     .type = BLE_GATT_SVC_TYPE_PRIMARY, .uuid = &msUuid.u, .characteristics = characteristicDefinition};
   serviceDefinition[1] = {0};
-
-  artistName = "Waiting for";
-  albumName = "";
-  trackName = "track information..";
-  playing = false;
-  repeat = false;
-  shuffle = false;
-  playbackSpeed = 1.0f;
-  trackProgress = 0;
-  trackLength = 0;
 }
 
 void Pinetime::Controllers::MusicService::Init() {
diff --git a/src/components/ble/MusicService.h b/src/components/ble/MusicService.h
index a611c51d..1ad9a420 100644
--- a/src/components/ble/MusicService.h
+++ b/src/components/ble/MusicService.h
@@ -69,23 +69,23 @@ namespace Pinetime {
       struct ble_gatt_chr_def characteristicDefinition[14];
       struct ble_gatt_svc_def serviceDefinition[2];
 
-      uint16_t eventHandle;
+      uint16_t eventHandle {};
 
-      std::string artistName;
-      std::string albumName;
-      std::string trackName;
+      std::string artistName {"Waiting for"};
+      std::string albumName {};
+      std::string trackName {"track information.."};
 
-      bool playing;
+      bool playing {false};
 
-      int trackProgress;
-      int trackLength;
-      int trackNumber;
-      int tracksTotal;
+      int trackProgress {0};
+      int trackLength {0};
+      int trackNumber {};
+      int tracksTotal {};
 
-      float playbackSpeed;
+      float playbackSpeed {1.0f};
 
-      bool repeat;
-      bool shuffle;
+      bool repeat {false};
+      bool shuffle {false};
 
       Pinetime::System::SystemTask& m_system;
     };

From 217f16d18976a6304e411c00f2ccd72f4bd831a7 Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Thu, 24 Jun 2021 13:33:15 +0300
Subject: [PATCH 45/58] Improve paddle game

---
 src/displayapp/screens/Paddle.cpp | 154 ++++++++----------------------
 src/displayapp/screens/Paddle.h   |  22 ++---
 2 files changed, 50 insertions(+), 126 deletions(-)

diff --git a/src/displayapp/screens/Paddle.cpp b/src/displayapp/screens/Paddle.cpp
index 161f175b..5a939ac7 100644
--- a/src/displayapp/screens/Paddle.cpp
+++ b/src/displayapp/screens/Paddle.cpp
@@ -4,98 +4,31 @@
 
 using namespace Pinetime::Applications::Screens;
 
-namespace {
-  const uint8_t paddle_map[] = {
-    0xfc, 0xfe, 0xfc, 0xff, /*Color of index 0*/
-    0xff, 0xff, 0xff, 0xff, /*Color of index 1*/
-
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  };
-
-  const uint8_t ball_map[] = {
-    0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-    0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed,
-    0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-    0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed,
-    0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-    0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-    0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-    0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-    0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed, 0x6f, 0xed,
-  };
-}
-
 Paddle::Paddle(Pinetime::Applications::DisplayApp* app, Pinetime::Components::LittleVgl& lvgl) : Screen(app), lvgl {lvgl} {
   app->SetTouchMode(DisplayApp::TouchModes::Polling);
 
+  background = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_size(background, LV_HOR_RES + 1, LV_VER_RES);
+  lv_obj_set_pos(background, -1, 0);
+  lv_obj_set_style_local_radius(background, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_style_local_bg_color(background, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK);
+  lv_obj_set_style_local_border_color(background, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_WHITE);
+  lv_obj_set_style_local_border_width(background, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 1);
+
   points = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_text_font(points, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_42);
   lv_label_set_text(points, "0000");
-  lv_obj_set_style_local_text_color(points, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x444444));
-  lv_obj_align(points, lv_scr_act(), LV_ALIGN_IN_TOP_MID, 0, 0);
+  lv_obj_align(points, lv_scr_act(), LV_ALIGN_IN_TOP_MID, 0, 10);
 
-  paddle.header.always_zero = 0;
-  paddle.header.w = 4;
-  paddle.header.h = 60;
-  paddle.data_size = 68;
-  paddle.header.cf = LV_IMG_CF_INDEXED_1BIT;
-  paddle.data = paddle_map;
-  paddle_image = lv_img_create(lv_scr_act(), nullptr);
-  lv_img_set_src(paddle_image, &paddle);
+  paddle = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(paddle, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_WHITE);
+  lv_obj_set_style_local_radius(paddle, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 0);
+  lv_obj_set_size(paddle, 4, 60);
 
-  ball.header.always_zero = 0;
-  ball.header.w = 24;
-  ball.header.h = 24;
-  ball.data_size = 24 * 24 * LV_COLOR_SIZE / 8;
-  ball.header.cf = LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED;
-  ball.data = ball_map;
-  ball_image = lv_img_create(lv_scr_act(), nullptr);
-  lv_img_set_src(ball_image, &ball);
+  ball = lv_obj_create(lv_scr_act(), nullptr);
+  lv_obj_set_style_local_bg_color(ball, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_WHITE);
+  lv_obj_set_style_local_radius(ball, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_RADIUS_CIRCLE);
+  lv_obj_set_size(ball, ballSize, ballSize);
 }
 
 Paddle::~Paddle() {
@@ -105,41 +38,37 @@ Paddle::~Paddle() {
 }
 
 bool Paddle::Refresh() {
-  if ((counter++ % 5) == 0) {
-    counter = 0;
+  ballX += dx;
+  ballY += dy;
 
-    ballX += dx;
-    ballY += dy;
+  lv_obj_set_pos(ball, ballX, ballY);
 
-    lv_obj_set_pos(ball_image, ballX, ballY);
+  // checks if it has touched the sides (floor and ceiling)
+  if (ballY <= 1 || ballY >= LV_VER_RES - ballSize - 2) {
+    dy *= -1;
+  }
 
-    // checks if it has touched the sides (floor and ceiling)
-    if (ballY <= 0 || ballY >= 215) {
-      dy *= -1;
-    }
+  // checks if it has touched the side (left side)
+  if (ballX >= LV_VER_RES - ballSize - 1) {
+    dx *= -1;
+  }
 
-    // checks if it has touched the side (left side)
-    if (ballX >= 215) {
-      dx *= -1;
-    }
-
-    // checks if it is in the position of the paddle
-    if (ballY <= (paddleBottomY + 16) && ballY >= (paddleTopY - 8)) {
-      if (ballX >= 0 && ballX < 4) {
-        lv_obj_set_pos(ball_image, 5, ballY);
+  // checks if it is in the position of the paddle
+  if (dx < 0 && ballX <= 4) {
+    if (ballX >= -ballSize / 4) {
+      if (ballY <= (paddlePos + 30 - ballSize / 4) && ballY >= (paddlePos - 30 - ballSize + ballSize / 4)) {
         dx *= -1;
         score++;
       }
     }
-
     // checks if it has gone behind the paddle
-    else if (ballX <= -40) {
-      ballX = 107;
-      ballY = 107;
+    else if (ballX <= -ballSize * 2) {
+      ballX = (LV_HOR_RES - ballSize) / 2;
+      ballY = (LV_VER_RES - ballSize) / 2;
       score = 0;
     }
-    lv_label_set_text_fmt(points, "%04d", score);
   }
+  lv_label_set_text_fmt(points, "%04d", score);
   return running;
 }
 
@@ -148,11 +77,8 @@ bool Paddle::OnTouchEvent(Pinetime::Applications::TouchEvents event) {
 }
 
 bool Paddle::OnTouchEvent(uint16_t x, uint16_t y) {
-  lv_obj_set_pos(
-    paddle_image,
-    0,
-    y - 30); // sets the center paddle pos. (30px offset) with the the y_coordinate of the finger and defaults the x_coordinate to 0
-  paddleTopY = y - 30;    // refreshes the upper extreme of the paddle
-  paddleBottomY = y + 30; // refreshes the lower extreme of the paddle
+  // sets the center paddle pos. (30px offset) with the the y_coordinate of the finger
+  lv_obj_set_pos(paddle, 0, y - 30);
+  paddlePos = y;
   return true;
 }
diff --git a/src/displayapp/screens/Paddle.h b/src/displayapp/screens/Paddle.h
index e133244f..30ab8f94 100644
--- a/src/displayapp/screens/Paddle.h
+++ b/src/displayapp/screens/Paddle.h
@@ -24,24 +24,22 @@ namespace Pinetime {
       private:
         Pinetime::Components::LittleVgl& lvgl;
 
-        int paddleBottomY = 90; // bottom extreme of the paddle
-        int paddleTopY = 150;   // top extreme of the paddle
+        const uint8_t ballSize = 16;
 
-        int ballX = 107; // Initial x_coordinate for the ball (12px offset from the center to counteract the ball's 24px size)
-        int ballY = 107; // Initial y_coordinate for the ball
+        uint16_t paddlePos = 30; // Paddle center
 
-        int dx = 2; // Velocity of the ball in the x_coordinate
-        int dy = 3; // Velocity of the ball in the y_coordinate
+        int16_t ballX = (LV_HOR_RES - ballSize) / 2;
+        int16_t ballY = (LV_VER_RES - ballSize) / 2;
 
-        int counter = 0; // init Frame refresh limit counter
-        int score = 0;
+        int8_t dx = 2; // Velocity of the ball in the x_coordinate
+        int8_t dy = 3; // Velocity of the ball in the y_coordinate
 
-        lv_img_dsc_t paddle;
-        lv_img_dsc_t ball;
+        uint16_t score = 0;
 
         lv_obj_t* points;
-        lv_obj_t* paddle_image; // pointer to paddle image
-        lv_obj_t* ball_image;   // pointer to ball image
+        lv_obj_t* paddle;
+        lv_obj_t* ball;
+        lv_obj_t* background;
       };
     }
   }

From 94aefed98f1c7a70776863ce235db255affd1640 Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Sat, 3 Jul 2021 13:32:35 +0300
Subject: [PATCH 46/58] Condense firmware validation code

---
 src/displayapp/screens/FirmwareValidation.cpp | 31 ++++++-------------
 src/displayapp/screens/FirmwareValidation.h   |  7 +----
 2 files changed, 10 insertions(+), 28 deletions(-)

diff --git a/src/displayapp/screens/FirmwareValidation.cpp b/src/displayapp/screens/FirmwareValidation.cpp
index ad37a3df..d9f162d4 100644
--- a/src/displayapp/screens/FirmwareValidation.cpp
+++ b/src/displayapp/screens/FirmwareValidation.cpp
@@ -16,30 +16,17 @@ namespace {
 
 FirmwareValidation::FirmwareValidation(Pinetime::Applications::DisplayApp* app, Pinetime::Controllers::FirmwareValidator& validator)
   : Screen {app}, validator {validator} {
-  labelVersionInfo = lv_label_create(lv_scr_act(), nullptr);
-  lv_obj_align(labelVersionInfo, nullptr, LV_ALIGN_IN_TOP_LEFT, 0, 0);
-  lv_label_set_text(labelVersionInfo, "Version : ");
-  lv_label_set_align(labelVersionInfo, LV_LABEL_ALIGN_LEFT);
-
-  labelVersionValue = lv_label_create(lv_scr_act(), nullptr);
-  lv_obj_align(labelVersionValue, labelVersionInfo, LV_ALIGN_OUT_RIGHT_MID, 0, 0);
-  lv_label_set_recolor(labelVersionValue, true);
-  sprintf(version, "%ld.%ld.%ld", Version::Major(), Version::Minor(), Version::Patch());
-  lv_label_set_text(labelVersionValue, version);
-
-  labelShortRefInfo = lv_label_create(lv_scr_act(), nullptr);
-  lv_obj_align(labelShortRefInfo, nullptr, LV_ALIGN_IN_TOP_LEFT, 0, 25);
-  lv_label_set_text(labelShortRefInfo, "ShortRef : ");
-  lv_label_set_align(labelShortRefInfo, LV_LABEL_ALIGN_LEFT);
-
-  labelShortRefValue = lv_label_create(lv_scr_act(), nullptr);
-  lv_obj_align(labelShortRefValue, labelShortRefInfo, LV_ALIGN_OUT_RIGHT_MID, 0, 0);
-  lv_label_set_recolor(labelShortRefValue, true);
-  sprintf(shortref, "%s", Version::GitCommitHash());
-  lv_label_set_text(labelShortRefValue, shortref);
+  labelVersion = lv_label_create(lv_scr_act(), nullptr);
+  lv_label_set_text_fmt(labelVersion, "Version : %d.%d.%d\n"
+                                      "ShortRef : %s",
+                                      Version::Major(),
+                                      Version::Minor(),
+                                      Version::Patch(),
+                                      Version::GitCommitHash());
+  lv_obj_align(labelVersion, nullptr, LV_ALIGN_IN_TOP_LEFT, 0, 0);
 
   labelIsValidated = lv_label_create(lv_scr_act(), nullptr);
-  lv_obj_align(labelIsValidated, nullptr, LV_ALIGN_IN_TOP_LEFT, 0, 50);
+  lv_obj_align(labelIsValidated, labelVersion, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 0);
   lv_label_set_recolor(labelIsValidated, true);
   lv_label_set_long_mode(labelIsValidated, LV_LABEL_LONG_BREAK);
   lv_obj_set_width(labelIsValidated, 240);
diff --git a/src/displayapp/screens/FirmwareValidation.h b/src/displayapp/screens/FirmwareValidation.h
index 303c2154..1ef5ba0a 100644
--- a/src/displayapp/screens/FirmwareValidation.h
+++ b/src/displayapp/screens/FirmwareValidation.h
@@ -23,12 +23,7 @@ namespace Pinetime {
       private:
         Pinetime::Controllers::FirmwareValidator& validator;
 
-        lv_obj_t* labelVersionInfo;
-        lv_obj_t* labelVersionValue;
-        lv_obj_t* labelShortRefInfo;
-        lv_obj_t* labelShortRefValue;
-        char version[9];
-        char shortref[9];
+        lv_obj_t* labelVersion;
         lv_obj_t* labelIsValidated;
         lv_obj_t* buttonValidate;
         lv_obj_t* labelButtonValidate;

From 3b0fcc2a73c81bc5e0da301fbbe95fdfd09339de Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Sat, 3 Jul 2021 13:44:12 +0300
Subject: [PATCH 47/58] clang-format

---
 src/displayapp/screens/FirmwareValidation.cpp | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/displayapp/screens/FirmwareValidation.cpp b/src/displayapp/screens/FirmwareValidation.cpp
index d9f162d4..1d05be8d 100644
--- a/src/displayapp/screens/FirmwareValidation.cpp
+++ b/src/displayapp/screens/FirmwareValidation.cpp
@@ -17,12 +17,13 @@ namespace {
 FirmwareValidation::FirmwareValidation(Pinetime::Applications::DisplayApp* app, Pinetime::Controllers::FirmwareValidator& validator)
   : Screen {app}, validator {validator} {
   labelVersion = lv_label_create(lv_scr_act(), nullptr);
-  lv_label_set_text_fmt(labelVersion, "Version : %d.%d.%d\n"
-                                      "ShortRef : %s",
-                                      Version::Major(),
-                                      Version::Minor(),
-                                      Version::Patch(),
-                                      Version::GitCommitHash());
+  lv_label_set_text_fmt(labelVersion,
+                        "Version : %d.%d.%d\n"
+                        "ShortRef : %s",
+                        Version::Major(),
+                        Version::Minor(),
+                        Version::Patch(),
+                        Version::GitCommitHash());
   lv_obj_align(labelVersion, nullptr, LV_ALIGN_IN_TOP_LEFT, 0, 0);
 
   labelIsValidated = lv_label_create(lv_scr_act(), nullptr);

From ab59b9b8301d95206a2f77a4e32e4f6552361a2e Mon Sep 17 00:00:00 2001
From: Avamander <avamander@gmail.com>
Date: Sun, 4 Jul 2021 21:06:50 +0300
Subject: [PATCH 48/58] Whitespace and brace fixes (#456)

* Brace style and whitespace fixes

* Additional whitespace fixes
---
 src/components/battery/BatteryController.cpp |  3 +-
 src/displayapp/screens/Steps.cpp             | 29 +++++++++-----------
 2 files changed, 15 insertions(+), 17 deletions(-)

diff --git a/src/components/battery/BatteryController.cpp b/src/components/battery/BatteryController.cpp
index 02901dd8..76ad8cb3 100644
--- a/src/components/battery/BatteryController.cpp
+++ b/src/components/battery/BatteryController.cpp
@@ -22,8 +22,9 @@ void Battery::Update() {
   isCharging = !nrf_gpio_pin_read(chargingPin);
   isPowerPresent = !nrf_gpio_pin_read(powerPresentPin);
 
-  if (isReading)
+  if (isReading) {
     return;
+  }
   // Non blocking read
   samples = 0;
   isReading = true;
diff --git a/src/displayapp/screens/Steps.cpp b/src/displayapp/screens/Steps.cpp
index cc78813f..6aabd30e 100644
--- a/src/displayapp/screens/Steps.cpp
+++ b/src/displayapp/screens/Steps.cpp
@@ -6,19 +6,19 @@
 using namespace Pinetime::Applications::Screens;
 
 Steps::Steps(
-    Pinetime::Applications::DisplayApp *app, 
+    Pinetime::Applications::DisplayApp *app,
     Controllers::MotionController& motionController,
-    Controllers::Settings &settingsController) 
-      : Screen(app), 
+    Controllers::Settings &settingsController)
+      : Screen(app),
       motionController{motionController},
       settingsController{settingsController} {
 
   stepsArc = lv_arc_create(lv_scr_act(), nullptr);
 
-  lv_obj_set_style_local_bg_opa(stepsArc, LV_ARC_PART_BG, LV_STATE_DEFAULT, LV_OPA_0);  
-  lv_obj_set_style_local_border_width(stepsArc, LV_ARC_PART_BG, LV_STATE_DEFAULT, 2);  
-  lv_obj_set_style_local_radius(stepsArc, LV_ARC_PART_BG, LV_STATE_DEFAULT, 0);  
-  lv_obj_set_style_local_line_color(stepsArc, LV_ARC_PART_INDIC, LV_STATE_DEFAULT, lv_color_hex(0x0000FF));  
+  lv_obj_set_style_local_bg_opa(stepsArc, LV_ARC_PART_BG, LV_STATE_DEFAULT, LV_OPA_0);
+  lv_obj_set_style_local_border_width(stepsArc, LV_ARC_PART_BG, LV_STATE_DEFAULT, 2);
+  lv_obj_set_style_local_radius(stepsArc, LV_ARC_PART_BG, LV_STATE_DEFAULT, 0);
+  lv_obj_set_style_local_line_color(stepsArc, LV_ARC_PART_INDIC, LV_STATE_DEFAULT, lv_color_hex(0x0000FF));
   lv_arc_set_end_angle(stepsArc, 200);
   lv_obj_set_size(stepsArc, 220, 220);
   lv_arc_set_range(stepsArc, 0, 500);
@@ -36,7 +36,7 @@ Steps::Steps(
 
   lv_obj_t * lstepsL = lv_label_create(lv_scr_act(), nullptr);
   lv_obj_set_style_local_text_color(lstepsL, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x111111));
-  lv_label_set_text_static(lstepsL, "Steps"); 
+  lv_label_set_text_static(lstepsL, "Steps");
   lv_obj_align(lstepsL, lSteps, LV_ALIGN_OUT_BOTTOM_MID, 0, 10);
 
   lv_obj_t * lstepsGoal = lv_label_create(lv_scr_act(), nullptr);
@@ -45,12 +45,11 @@ Steps::Steps(
   lv_label_set_align(lstepsGoal, LV_LABEL_ALIGN_CENTER);
   lv_obj_align(lstepsGoal, lSteps, LV_ALIGN_OUT_BOTTOM_MID, 0, 60);
 
-  lv_obj_t * backgroundLabel = lv_label_create(lv_scr_act(), nullptr);
+  lv_obj_t* backgroundLabel = lv_label_create(lv_scr_act(), nullptr);
   lv_label_set_long_mode(backgroundLabel, LV_LABEL_LONG_CROP);
   lv_obj_set_size(backgroundLabel, 240, 240);
   lv_obj_set_pos(backgroundLabel, 0, 0);
   lv_label_set_text_static(backgroundLabel, "");
-
 }
 
 Steps::~Steps() {
@@ -58,15 +57,13 @@ Steps::~Steps() {
 }
 
 bool Steps::Refresh() {
-  
-  stepsCount = motionController.NbSteps();
 
-  lv_label_set_text_fmt(lSteps,"%li", stepsCount);
+  stepsCount = motionController.NbSteps();
+  
+  lv_label_set_text_fmt(lSteps, "%li", stepsCount);
   lv_obj_align(lSteps, nullptr, LV_ALIGN_CENTER, 0, -20);
-     
+  
   lv_arc_set_value(stepsArc, int16_t(500 * stepsCount / settingsController.GetStepsGoal()));
 
   return running;
 }
-
-

From 61a4642221fc9fcab6889221e7bf9c29778589f2 Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Sun, 4 Jul 2021 21:23:03 +0300
Subject: [PATCH 49/58] Improve stopwatch (#432)

* Improve stopwatch more

* Make sure sleep gets reenabled

* Cleanup and clang-format
---
 src/displayapp/DisplayApp.cpp        |   2 +-
 src/displayapp/screens/StopWatch.cpp | 195 ++++++++++++---------------
 src/displayapp/screens/StopWatch.h   |  16 ++-
 3 files changed, 94 insertions(+), 119 deletions(-)

diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index de93428c..04ebd2d3 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -337,7 +337,7 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction)
       ReturnApp(Apps::Clock, FullRefreshDirections::Down, TouchEvents::None);
       break;
     case Apps::StopWatch:
-      currentScreen = std::make_unique<Screens::StopWatch>(this);
+      currentScreen = std::make_unique<Screens::StopWatch>(this, *systemTask);
       break;
     case Apps::Twos:
       currentScreen = std::make_unique<Screens::Twos>(this);
diff --git a/src/displayapp/screens/StopWatch.cpp b/src/displayapp/screens/StopWatch.cpp
index 7c128d1b..f4db5d6e 100644
--- a/src/displayapp/screens/StopWatch.cpp
+++ b/src/displayapp/screens/StopWatch.cpp
@@ -45,17 +45,16 @@ static void stop_lap_event_handler(lv_obj_t* obj, lv_event_t event) {
   stopWatch->stopLapBtnEventHandler(event);
 }
 
-StopWatch::StopWatch(DisplayApp* app)
+StopWatch::StopWatch(DisplayApp* app, System::SystemTask& systemTask)
   : Screen(app),
+    systemTask {systemTask},
     running {true},
     currentState {States::Init},
-    currentEvent {Events::Stop},
     startTime {},
     oldTimeElapsed {},
     currentTimeSeparated {},
     lapBuffer {},
-    lapNr {},
-    lapPressed {false} {
+    lapNr {} {
 
   time = lv_label_create(lv_scr_act(), nullptr);
   lv_obj_set_style_local_text_font(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_76);
@@ -105,128 +104,100 @@ StopWatch::StopWatch(DisplayApp* app)
 }
 
 StopWatch::~StopWatch() {
+  systemTask.PushMessage(Pinetime::System::Messages::EnableSleeping);
   lv_obj_clean(lv_scr_act());
 }
 
+void StopWatch::reset() {
+  currentState = States::Init;
+  oldTimeElapsed = 0;
+  lv_obj_set_style_local_text_color(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);
+  lv_obj_set_style_local_text_color(msecTime, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);
+
+  lv_label_set_text(time, "00:00");
+  lv_label_set_text(msecTime, "00");
+
+  lv_label_set_text(lapOneText, "");
+  lv_label_set_text(lapTwoText, "");
+  lapBuffer.clearBuffer();
+  lapNr = 0;
+  lv_obj_set_state(btnStopLap, LV_STATE_DISABLED);
+  lv_obj_set_state(txtStopLap, LV_STATE_DISABLED);
+}
+
+void StopWatch::start() {
+  lv_obj_set_state(btnStopLap, LV_STATE_DEFAULT);
+  lv_obj_set_state(txtStopLap, LV_STATE_DEFAULT);
+  lv_obj_set_style_local_text_color(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GREEN);
+  lv_obj_set_style_local_text_color(msecTime, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GREEN);
+  lv_label_set_text(txtPlayPause, Symbols::pause);
+  lv_label_set_text(txtStopLap, Symbols::lapsFlag);
+  startTime = xTaskGetTickCount();
+  currentState = States::Running;
+  systemTask.PushMessage(Pinetime::System::Messages::DisableSleeping);
+}
+
+void StopWatch::pause() {
+  startTime = 0;
+  // Store the current time elapsed in cache
+  oldTimeElapsed += timeElapsed;
+  currentState = States::Halted;
+  lv_label_set_text(txtPlayPause, Symbols::play);
+  lv_label_set_text(txtStopLap, Symbols::stop);
+  lv_obj_set_style_local_text_color(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_YELLOW);
+  lv_obj_set_style_local_text_color(msecTime, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_YELLOW);
+  systemTask.PushMessage(Pinetime::System::Messages::EnableSleeping);
+}
+
 bool StopWatch::Refresh() {
-  // @startuml CHIP8_state
-  // State "Init" as init
-  // State "Running" as run
-  // State "Halted" as halt
+  if (currentState == States::Running) {
+    timeElapsed = calculateDelta(startTime, xTaskGetTickCount());
+    currentTimeSeparated = convertTicksToTimeSegments((oldTimeElapsed + timeElapsed));
 
-  // [*] --> init
-  // init -> run : press play
-  // run -> run : press lap
-  // run --> halt : press pause
-  // halt --> run : press play
-  // halt --> init : press stop
-  // @enduml
-  // Copy paste the above plantuml text to visualize the state diagram
-  switch (currentState) {
-    // Init state when an user first opens the app
-    // and when a stop/reset button is pressed
-    case States::Init: {
-      // The initial default value
-      lv_label_set_text(time, "00:00");
-      lv_label_set_text(msecTime, "00");
-
-      lv_label_set_text(lapOneText, "");
-      lv_label_set_text(lapTwoText, "");
-      lapBuffer.clearBuffer();
-      lapNr = 0;
-
-      if (currentEvent == Events::Play) {
-        lv_obj_set_state(btnStopLap, LV_STATE_DEFAULT);
-        lv_obj_set_state(txtStopLap, LV_STATE_DEFAULT);
-
-        startTime = xTaskGetTickCount();
-        currentState = States::Running;
-      } else {
-        lv_obj_set_state(btnStopLap, LV_STATE_DISABLED);
-        lv_obj_set_state(txtStopLap, LV_STATE_DISABLED);
-      }
-      break;
-    }
-    case States::Running: {
-      lv_label_set_text(txtPlayPause, Symbols::pause);
-      lv_label_set_text(txtStopLap, Symbols::lapsFlag);
-
-      const auto timeElapsed = calculateDelta(startTime, xTaskGetTickCount());
-      currentTimeSeparated = convertTicksToTimeSegments((oldTimeElapsed + timeElapsed));
-
-      lv_label_set_text_fmt(time, "%02d:%02d", currentTimeSeparated.mins, currentTimeSeparated.secs);
-      lv_label_set_text_fmt(msecTime, "%02d", currentTimeSeparated.hundredths);
-
-      if (lapPressed == true) {
-        if (lapBuffer[1]) {
-          lv_label_set_text_fmt(
-            lapOneText, "#%2d   %2d:%02d.%02d", (lapNr - 1), lapBuffer[1]->mins, lapBuffer[1]->secs, lapBuffer[1]->hundredths);
-        }
-        if (lapBuffer[0]) {
-          lv_label_set_text_fmt(
-            lapTwoText, "#%2d   %2d:%02d.%02d", lapNr, lapBuffer[0]->mins, lapBuffer[0]->secs, lapBuffer[0]->hundredths);
-        }
-        // Reset the bool to avoid setting the text in each cycle until there is a change
-        lapPressed = false;
-      }
-
-      if (currentEvent == Events::Pause) {
-        // Reset the start time
-        startTime = 0;
-        // Store the current time elapsed in cache
-        oldTimeElapsed += timeElapsed;
-        currentState = States::Halted;
-        lv_obj_set_style_local_text_color(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_YELLOW);
-        lv_obj_set_style_local_text_color(msecTime, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_YELLOW);
-      } else {
-        lv_obj_set_style_local_text_color(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GREEN);
-        lv_obj_set_style_local_text_color(msecTime, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GREEN);
-      }
-      break;
-    }
-    case States::Halted: {
-      lv_label_set_text(txtPlayPause, Symbols::play);
-      lv_label_set_text(txtStopLap, Symbols::stop);
-
-      if (currentEvent == Events::Play) {
-        startTime = xTaskGetTickCount();
-        currentState = States::Running;
-      }
-      if (currentEvent == Events::Stop) {
-        currentState = States::Init;
-        oldTimeElapsed = 0;
-        lv_obj_set_style_local_text_color(time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);
-        lv_obj_set_style_local_text_color(msecTime, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_GRAY);
-      }
-      break;
-    }
+    lv_label_set_text_fmt(time, "%02d:%02d", currentTimeSeparated.mins, currentTimeSeparated.secs);
+    lv_label_set_text_fmt(msecTime, "%02d", currentTimeSeparated.hundredths);
   }
   return running;
 }
 
 void StopWatch::playPauseBtnEventHandler(lv_event_t event) {
-  if (event == LV_EVENT_CLICKED) {
-    if (currentState == States::Init) {
-      currentEvent = Events::Play;
-    } else {
-      // Simple Toggle for play/pause
-      currentEvent = (currentEvent == Events::Play ? Events::Pause : Events::Play);
-    }
+  if (event != LV_EVENT_PRESSED) {
+    return;
+  }
+  if (currentState == States::Init) {
+    start();
+  } else if (currentState == States::Running) {
+    pause();
+  } else if (currentState == States::Halted) {
+    start();
   }
 }
 
 void StopWatch::stopLapBtnEventHandler(lv_event_t event) {
-  if (event == LV_EVENT_CLICKED) {
-    // If running, then this button is used to save laps
-    if (currentState == States::Running) {
-      lapBuffer.addLaps(currentTimeSeparated);
-      lapNr++;
-      lapPressed = true;
-
-    } else if (currentState == States::Halted) {
-      currentEvent = Events::Stop;
-    } else {
-      // Not possible to reach here. Do nothing.
+  if (event != LV_EVENT_PRESSED) {
+    return;
+  }
+  // If running, then this button is used to save laps
+  if (currentState == States::Running) {
+    lapBuffer.addLaps(currentTimeSeparated);
+    lapNr++;
+    if (lapBuffer[1]) {
+      lv_label_set_text_fmt(
+        lapOneText, "#%2d   %2d:%02d.%02d", (lapNr - 1), lapBuffer[1]->mins, lapBuffer[1]->secs, lapBuffer[1]->hundredths);
     }
+    if (lapBuffer[0]) {
+      lv_label_set_text_fmt(lapTwoText, "#%2d   %2d:%02d.%02d", lapNr, lapBuffer[0]->mins, lapBuffer[0]->secs, lapBuffer[0]->hundredths);
+    }
+  } else if (currentState == States::Halted) {
+    reset();
   }
 }
+
+bool StopWatch::OnButtonPushed() {
+  if (currentState == States::Running) {
+    pause();
+  } else {
+    running = false;
+  }
+  return true;
+}
diff --git a/src/displayapp/screens/StopWatch.h b/src/displayapp/screens/StopWatch.h
index ff604361..e132f158 100644
--- a/src/displayapp/screens/StopWatch.h
+++ b/src/displayapp/screens/StopWatch.h
@@ -8,13 +8,12 @@
 #include "portmacro_cmsis.h"
 
 #include <array>
+#include "systemtask/SystemTask.h"
 
 namespace Pinetime::Applications::Screens {
 
   enum class States { Init, Running, Halted };
 
-  enum class Events { Play, Pause, Stop };
-
   struct TimeSeparated_t {
     int mins;
     int secs;
@@ -63,23 +62,28 @@ namespace Pinetime::Applications::Screens {
 
   class StopWatch : public Screen {
   public:
-    StopWatch(DisplayApp* app);
+    StopWatch(DisplayApp* app, System::SystemTask& systemTask);
     ~StopWatch() override;
     bool Refresh() override;
 
     void playPauseBtnEventHandler(lv_event_t event);
     void stopLapBtnEventHandler(lv_event_t event);
+    bool OnButtonPushed() override;
+
+    void reset();
+    void start();
+    void pause();
 
   private:
+    Pinetime::System::SystemTask& systemTask;
+    TickType_t timeElapsed;
     bool running;
     States currentState;
-    Events currentEvent;
     TickType_t startTime;
     TickType_t oldTimeElapsed;
     TimeSeparated_t currentTimeSeparated; // Holds Mins, Secs, millisecs
     LapTextBuffer_t<2> lapBuffer;
-    int lapNr;
-    bool lapPressed;
+    int lapNr = 0;
     lv_obj_t *time, *msecTime, *btnPlayPause, *btnStopLap, *txtPlayPause, *txtStopLap;
     lv_obj_t *lapOneText, *lapTwoText;
   };

From 99e26bdd4cbafcdeec815ce6435f1830f1d74816 Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Wed, 7 Jul 2021 15:47:47 +0300
Subject: [PATCH 50/58] LVGL use system tick

---
 src/FreeRTOSConfig.h                          |  2 +-
 src/displayapp/screens/BatteryInfo.cpp        | 38 ++-----------------
 src/displayapp/screens/BatteryInfo.h          |  3 --
 src/displayapp/screens/Tile.cpp               |  2 +-
 .../screens/settings/QuickSettings.cpp        |  2 +-
 src/libs/lv_conf.h                            |  8 ++--
 src/main.cpp                                  |  7 ----
 7 files changed, 11 insertions(+), 51 deletions(-)

diff --git a/src/FreeRTOSConfig.h b/src/FreeRTOSConfig.h
index 07c152dc..adbbc8f0 100644
--- a/src/FreeRTOSConfig.h
+++ b/src/FreeRTOSConfig.h
@@ -77,7 +77,7 @@
 #define configENABLE_BACKWARD_COMPATIBILITY     1
 
 /* Hook function related definitions. */
-#define configUSE_IDLE_HOOK            1
+#define configUSE_IDLE_HOOK            0
 #define configUSE_TICK_HOOK            0
 #define configCHECK_FOR_STACK_OVERFLOW 0
 #define configUSE_MALLOC_FAILED_HOOK   0
diff --git a/src/displayapp/screens/BatteryInfo.cpp b/src/displayapp/screens/BatteryInfo.cpp
index 87c8b4bb..5ea0b6ff 100644
--- a/src/displayapp/screens/BatteryInfo.cpp
+++ b/src/displayapp/screens/BatteryInfo.cpp
@@ -9,11 +9,6 @@ static void lv_update_task(struct _lv_task_t* task) {
   user_data->UpdateScreen();
 }
 
-static void lv_anim_task(struct _lv_task_t* task) {
-  auto user_data = static_cast<BatteryInfo*>(task->user_data);
-  user_data->UpdateAnim();
-}
-
 BatteryInfo::BatteryInfo(Pinetime::Applications::DisplayApp* app, Pinetime::Controllers::Battery& batteryController)
   : Screen(app), batteryController {batteryController} {
 
@@ -24,12 +19,12 @@ BatteryInfo::BatteryInfo(Pinetime::Applications::DisplayApp* app, Pinetime::Cont
   lv_obj_set_size(charging_bar, 200, 15);
   lv_bar_set_range(charging_bar, 0, 100);
   lv_obj_align(charging_bar, nullptr, LV_ALIGN_CENTER, 0, 10);
-  lv_bar_set_anim_time(charging_bar, 2000);
+  lv_bar_set_anim_time(charging_bar, 1000);
   lv_obj_set_style_local_radius(charging_bar, LV_BAR_PART_BG, LV_STATE_DEFAULT, LV_RADIUS_CIRCLE);
   lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_BG, LV_STATE_DEFAULT, lv_color_hex(0x222222));
   lv_obj_set_style_local_bg_opa(charging_bar, LV_BAR_PART_BG, LV_STATE_DEFAULT, LV_OPA_100);
   lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, lv_color_hex(0xFF0000));
-  lv_bar_set_value(charging_bar, batteryPercent, LV_ANIM_OFF);
+  lv_bar_set_value(charging_bar, batteryPercent, LV_ANIM_ON);
 
   status = lv_label_create(lv_scr_act(), nullptr);
   lv_label_set_text_static(status, "Reading Battery status");
@@ -58,40 +53,15 @@ BatteryInfo::BatteryInfo(Pinetime::Applications::DisplayApp* app, Pinetime::Cont
   lv_obj_set_pos(backgroundLabel, 0, 0);
   lv_label_set_text_static(backgroundLabel, "");
 
-  taskUpdate = lv_task_create(lv_update_task, 500000, LV_TASK_PRIO_LOW, this);
-  taskAnim = lv_task_create(lv_anim_task, 1000, LV_TASK_PRIO_LOW, this);
+  taskUpdate = lv_task_create(lv_update_task, 5000, LV_TASK_PRIO_LOW, this);
   UpdateScreen();
 }
 
 BatteryInfo::~BatteryInfo() {
   lv_task_del(taskUpdate);
-  lv_task_del(taskAnim);
   lv_obj_clean(lv_scr_act());
 }
 
-void BatteryInfo::UpdateAnim() {
-  batteryPercent = batteryController.PercentRemaining();
-
-  if (batteryPercent >= 0) {
-    if (batteryController.IsCharging() and batteryPercent < 100) {
-      animation += 1;
-      if (animation >= 100) {
-        animation = 0;
-      }
-
-    } else {
-      if (animation > batteryPercent) {
-        animation--;
-      }
-      if (animation < batteryPercent) {
-        animation++;
-      }
-    }
-
-    lv_bar_set_value(charging_bar, animation, LV_ANIM_OFF);
-  }
-}
-
 void BatteryInfo::UpdateScreen() {
 
   batteryController.Update();
@@ -123,9 +93,9 @@ void BatteryInfo::UpdateScreen() {
 
   lv_obj_align(status, charging_bar, LV_ALIGN_OUT_BOTTOM_MID, 0, 20);
   lv_label_set_text_fmt(voltage, "%1i.%02i volts", batteryVoltage / 1000, batteryVoltage % 1000 / 10);
+  lv_bar_set_value(charging_bar, batteryPercent, LV_ANIM_ON);
 }
 
 bool BatteryInfo::Refresh() {
-
   return running;
 }
diff --git a/src/displayapp/screens/BatteryInfo.h b/src/displayapp/screens/BatteryInfo.h
index 346dc571..32115938 100644
--- a/src/displayapp/screens/BatteryInfo.h
+++ b/src/displayapp/screens/BatteryInfo.h
@@ -22,7 +22,6 @@ namespace Pinetime {
         bool Refresh() override;
 
         void UpdateScreen();
-        void UpdateAnim();
 
       private:
         Pinetime::Controllers::Battery& batteryController;
@@ -33,9 +32,7 @@ namespace Pinetime {
         lv_obj_t* status;
 
         lv_task_t* taskUpdate;
-        lv_task_t* taskAnim;
 
-        int8_t animation = 0;
         int8_t batteryPercent = -1;
         uint16_t batteryVoltage = 0;
       };
diff --git a/src/displayapp/screens/Tile.cpp b/src/displayapp/screens/Tile.cpp
index ec36af38..3eb127cc 100644
--- a/src/displayapp/screens/Tile.cpp
+++ b/src/displayapp/screens/Tile.cpp
@@ -107,7 +107,7 @@ Tile::Tile(uint8_t screenID,
   lv_obj_set_pos(backgroundLabel, 0, 0);
   lv_label_set_text_static(backgroundLabel, "");
 
-  taskUpdate = lv_task_create(lv_update_task, 500000, LV_TASK_PRIO_MID, this);
+  taskUpdate = lv_task_create(lv_update_task, 5000, LV_TASK_PRIO_MID, this);
 }
 
 Tile::~Tile() {
diff --git a/src/displayapp/screens/settings/QuickSettings.cpp b/src/displayapp/screens/settings/QuickSettings.cpp
index 5db7468c..acc2a27a 100644
--- a/src/displayapp/screens/settings/QuickSettings.cpp
+++ b/src/displayapp/screens/settings/QuickSettings.cpp
@@ -110,7 +110,7 @@ QuickSettings::QuickSettings(Pinetime::Applications::DisplayApp* app,
   lv_obj_set_pos(backgroundLabel, 0, 0);
   lv_label_set_text_static(backgroundLabel, "");
 
-  taskUpdate = lv_task_create(lv_update_task, 500000, LV_TASK_PRIO_MID, this);
+  taskUpdate = lv_task_create(lv_update_task, 5000, LV_TASK_PRIO_MID, this);
 }
 
 QuickSettings::~QuickSettings() {
diff --git a/src/libs/lv_conf.h b/src/libs/lv_conf.h
index a03a4833..37824bbd 100644
--- a/src/libs/lv_conf.h
+++ b/src/libs/lv_conf.h
@@ -293,10 +293,10 @@ typedef void* lv_img_decoder_user_data_t;
 
 /* 1: use a custom tick source.
  * It removes the need to manually update the tick with `lv_tick_inc`) */
-#define LV_TICK_CUSTOM     0
+#define LV_TICK_CUSTOM     1
 #if LV_TICK_CUSTOM == 1
-#define LV_TICK_CUSTOM_INCLUDE  "Arduino.h"         /*Header for the system time function*/
-#define LV_TICK_CUSTOM_SYS_TIME_EXPR (millis())     /*Expression evaluating to current system time in ms*/
+#define LV_TICK_CUSTOM_INCLUDE  "FreeRTOS.h"       /*Header for the system time function*/
+#define LV_TICK_CUSTOM_SYS_TIME_EXPR (xTaskGetTickCount()) /*Expression evaluating to current system time in ms*/
 #endif   /*LV_TICK_CUSTOM*/
 
 typedef void* lv_disp_drv_user_data_t;             /*Type of user data in the display driver*/
@@ -759,4 +759,4 @@ typedef void* lv_obj_user_data_t;
 
 /*--END OF LV_CONF_H--*/
 
-#endif /*LV_CONF_H*/
\ No newline at end of file
+#endif /*LV_CONF_H*/
diff --git a/src/main.cpp b/src/main.cpp
index 5832a78f..ebdf0175 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -175,13 +175,6 @@ void nrfx_gpiote_evt_handler(nrfx_gpiote_pin_t pin, nrf_gpiote_polarity_t action
   portYIELD_FROM_ISR(xHigherPriorityTaskWoken);
 }
 
-extern "C" {
-void vApplicationIdleHook(void) {
-  if (!isFactory)
-    lv_tick_inc(1);
-}
-}
-
 void DebounceTimerChargeCallback(TimerHandle_t xTimer) {
   xTimerStop(xTimer, 0);
   systemTask.PushMessage(Pinetime::System::Messages::OnChargingEvent);

From 084123b752c74f7b8a6da23cb9bce0ac4efa3715 Mon Sep 17 00:00:00 2001
From: "joaquim.org" <joaquim.org@gmail.com>
Date: Sun, 11 Jul 2021 14:06:06 +0100
Subject: [PATCH 51/58] Using littlefs (#438)

* add submodule littlefs
* base fs
* Save settings using littlefs
* Small fixes and suggestions from PR
* More small fixes from PR suggestions
* Code clean up
* Change SpiNorFlash functions to be private in FS
---
 .gitmodules                          |   3 +
 src/CMakeLists.txt                   |  29 +++-
 src/components/fs/FS.cpp             | 197 +++++++++++++++++++++++++++
 src/components/fs/FS.h               |  71 ++++++++++
 src/components/settings/Settings.cpp | 100 +++-----------
 src/components/settings/Settings.h   |  58 ++++----
 src/libs/littlefs                    |   1 +
 src/libs/lv_conf.h                   |   4 +-
 src/main.cpp                         |  13 +-
 src/systemtask/SystemTask.cpp        |  11 +-
 src/systemtask/SystemTask.h          |  12 +-
 11 files changed, 369 insertions(+), 130 deletions(-)
 create mode 100644 src/components/fs/FS.cpp
 create mode 100644 src/components/fs/FS.h
 create mode 160000 src/libs/littlefs

diff --git a/.gitmodules b/.gitmodules
index 6f6d0e10..815fc022 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,6 @@
 [submodule "src/libs/lvgl"]
 	path = src/libs/lvgl
 	url = https://github.com/joaquimorg/lvgl.git
+[submodule "src/libs/littlefs"]
+	path = src/libs/littlefs
+	url = https://github.com/littlefs-project/littlefs.git
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index aca86543..40e1f2a5 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -166,6 +166,13 @@ set(NIMBLE_SRC
         libs/mynewt-nimble/nimble/host/util/src/addr.c
         )
 
+set(LITTLEFS_SRC
+        libs/littlefs/lfs_util.h
+        libs/littlefs/lfs.h
+        libs/littlefs/lfs_util.c
+        libs/littlefs/lfs.c
+        )
+
 set(LVGL_SRC
         libs/lv_conf.h
         libs/lvgl/lvgl.h
@@ -465,6 +472,7 @@ list(APPEND SOURCE_FILES
         components/motor/MotorController.cpp
         components/settings/Settings.cpp
         components/timer/TimerController.cpp
+        components/fs/FS.cpp
         drivers/Cst816s.cpp
         FreeRTOS/port.c
         FreeRTOS/port_cmsis_systick.c
@@ -543,6 +551,7 @@ list(APPEND RECOVERY_SOURCE_FILES
         components/heartrate/Biquad.cpp
         components/heartrate/Ptagc.cpp
         components/motor/MotorController.cpp
+        components/fs/FS.cpp
         )
 
 list(APPEND RECOVERYLOADER_SOURCE_FILES
@@ -801,13 +810,25 @@ target_compile_options(lvgl PRIVATE
         $<$<COMPILE_LANGUAGE:ASM>: -MP -MD -x assembler-with-cpp>
         )
 
+# LITTLEFS_SRC
+add_library(littlefs STATIC ${LITTLEFS_SRC})
+target_include_directories(littlefs SYSTEM PUBLIC . ../)
+target_include_directories(littlefs SYSTEM PUBLIC ${INCLUDES_FROM_LIBS})
+target_compile_options(littlefs PRIVATE
+        $<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -Wno-unused-function -Og -g3>
+        $<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -Wno-unused-function -Os>
+        $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -Wno-unused-function -Og -g3 -fno-rtti>
+        $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -Wno-unused-function -Os -fno-rtti>
+        $<$<COMPILE_LANGUAGE:ASM>: -MP -MD -x assembler-with-cpp>
+        )
+
 # Build autonomous binary (without support for bootloader)
 set(EXECUTABLE_NAME "pinetime-app")
 set(EXECUTABLE_FILE_NAME ${EXECUTABLE_NAME}-${pinetime_VERSION_MAJOR}.${pinetime_VERSION_MINOR}.${pinetime_VERSION_PATCH})
 set(NRF5_LINKER_SCRIPT "${CMAKE_SOURCE_DIR}/gcc_nrf52.ld")
 add_executable(${EXECUTABLE_NAME} ${SOURCE_FILES})
 set_target_properties(${EXECUTABLE_NAME} PROPERTIES OUTPUT_NAME ${EXECUTABLE_FILE_NAME})
-target_link_libraries(${EXECUTABLE_NAME} nimble nrf-sdk lvgl)
+target_link_libraries(${EXECUTABLE_NAME} nimble nrf-sdk lvgl littlefs)
 target_compile_options(${EXECUTABLE_NAME} PUBLIC
         $<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -Og -g3>
         $<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -Os>
@@ -836,7 +857,7 @@ set(IMAGE_MCUBOOT_FILE_NAME ${EXECUTABLE_MCUBOOT_NAME}-image-${pinetime_VERSION_
 set(DFU_MCUBOOT_FILE_NAME ${EXECUTABLE_MCUBOOT_NAME}-dfu-${pinetime_VERSION_MAJOR}.${pinetime_VERSION_MINOR}.${pinetime_VERSION_PATCH}.zip)
 set(NRF5_LINKER_SCRIPT_MCUBOOT "${CMAKE_SOURCE_DIR}/gcc_nrf52-mcuboot.ld")
 add_executable(${EXECUTABLE_MCUBOOT_NAME} ${SOURCE_FILES})
-target_link_libraries(${EXECUTABLE_MCUBOOT_NAME} nimble nrf-sdk lvgl)
+target_link_libraries(${EXECUTABLE_MCUBOOT_NAME} nimble nrf-sdk lvgl littlefs)
 set_target_properties(${EXECUTABLE_MCUBOOT_NAME} PROPERTIES OUTPUT_NAME ${EXECUTABLE_MCUBOOT_FILE_NAME})
 target_compile_options(${EXECUTABLE_MCUBOOT_NAME} PUBLIC
         $<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -Og -g3>
@@ -872,7 +893,7 @@ endif()
 set(EXECUTABLE_RECOVERY_NAME "pinetime-recovery")
 set(EXECUTABLE_RECOVERY_FILE_NAME ${EXECUTABLE_RECOVERY_NAME}-${pinetime_VERSION_MAJOR}.${pinetime_VERSION_MINOR}.${pinetime_VERSION_PATCH})
 add_executable(${EXECUTABLE_RECOVERY_NAME} ${RECOVERY_SOURCE_FILES})
-target_link_libraries(${EXECUTABLE_RECOVERY_NAME} nimble nrf-sdk)
+target_link_libraries(${EXECUTABLE_RECOVERY_NAME} nimble nrf-sdk littlefs)
 set_target_properties(${EXECUTABLE_RECOVERY_NAME} PROPERTIES OUTPUT_NAME ${EXECUTABLE_RECOVERY_FILE_NAME})
 target_compile_definitions(${EXECUTABLE_RECOVERY_NAME} PUBLIC "PINETIME_IS_RECOVERY")
 target_compile_options(${EXECUTABLE_RECOVERY_NAME} PUBLIC
@@ -902,7 +923,7 @@ set(EXECUTABLE_RECOVERY_MCUBOOT_FILE_NAME ${EXECUTABLE_RECOVERY_MCUBOOT_NAME}-${
 set(IMAGE_RECOVERY_MCUBOOT_FILE_NAME ${EXECUTABLE_RECOVERY_MCUBOOT_NAME}-image-${pinetime_VERSION_MAJOR}.${pinetime_VERSION_MINOR}.${pinetime_VERSION_PATCH}.bin)
 set(DFU_RECOVERY_MCUBOOT_FILE_NAME ${EXECUTABLE_RECOVERY_MCUBOOT_NAME}-dfu-${pinetime_VERSION_MAJOR}.${pinetime_VERSION_MINOR}.${pinetime_VERSION_PATCH}.zip)
 add_executable(${EXECUTABLE_RECOVERY_MCUBOOT_NAME} ${RECOVERY_SOURCE_FILES})
-target_link_libraries(${EXECUTABLE_RECOVERY_MCUBOOT_NAME} nimble nrf-sdk)
+target_link_libraries(${EXECUTABLE_RECOVERY_MCUBOOT_NAME} nimble nrf-sdk littlefs)
 set_target_properties(${EXECUTABLE_RECOVERY_MCUBOOT_NAME} PROPERTIES OUTPUT_NAME ${EXECUTABLE_RECOVERY_MCUBOOT_FILE_NAME})
 target_compile_definitions(${EXECUTABLE_RECOVERY_MCUBOOT_NAME} PUBLIC "PINETIME_IS_RECOVERY")
 target_compile_options(${EXECUTABLE_RECOVERY_MCUBOOT_NAME} PUBLIC
diff --git a/src/components/fs/FS.cpp b/src/components/fs/FS.cpp
new file mode 100644
index 00000000..857e6bf9
--- /dev/null
+++ b/src/components/fs/FS.cpp
@@ -0,0 +1,197 @@
+#include "FS.h"
+#include <cstring>
+#include <littlefs/lfs.h>
+#include <lvgl/lvgl.h>
+
+using namespace Pinetime::Controllers;
+
+FS::FS(Pinetime::Drivers::SpiNorFlash& driver) :
+  flashDriver{ driver },
+  lfsConfig{
+    .context = this,
+    .read = SectorRead,
+    .prog = SectorProg,
+    .erase = SectorErase,
+    .sync = SectorSync,
+
+    .read_size = 16,
+    .prog_size = 8,
+    .block_size = blockSize,
+    .block_count = size / blockSize,
+    .block_cycles = 1000u,
+
+    .cache_size = 16,
+    .lookahead_size = 16,
+
+    .name_max = 50,
+    .attr_max = 50,
+  }
+{ }
+
+
+void FS::Init() {
+
+  // try mount
+  int err = lfs_mount(&lfs, &lfsConfig);
+
+  // reformat if we can't mount the filesystem
+  // this should only happen on the first boot
+  if (err != LFS_ERR_OK) {
+    lfs_format(&lfs, &lfsConfig);
+    err = lfs_mount(&lfs, &lfsConfig);
+    if (err != LFS_ERR_OK) {
+      return;
+    }
+  }
+
+#ifndef PINETIME_IS_RECOVERY
+  VerifyResource();
+  LVGLFileSystemInit();
+#endif
+
+}
+
+void FS::VerifyResource() {
+  // validate the resource metadata
+  resourcesValid = true;
+}
+
+int  FS::FileOpen(lfs_file_t* file_p, const char* fileName, const int flags) {
+  return lfs_file_open(&lfs, file_p, fileName, flags);
+}
+
+int FS::FileClose(lfs_file_t* file_p) {
+  return lfs_file_close(&lfs, file_p);
+}
+
+int FS::FileRead(lfs_file_t* file_p, uint8_t* buff, uint32_t size) {
+  return lfs_file_read(&lfs, file_p, buff, size);
+}
+
+int FS::FileWrite(lfs_file_t* file_p, const uint8_t* buff, uint32_t size) {
+  return lfs_file_write(&lfs, file_p, buff, size);
+}
+
+int FS::FileSeek(lfs_file_t* file_p, uint32_t pos) {
+  return lfs_file_seek(&lfs, file_p, pos, LFS_SEEK_SET);
+}
+
+int FS::FileDelete(const char* fileName) {
+  return lfs_remove(&lfs, fileName);
+}
+
+
+int FS::DirCreate(const char* path) {
+  return lfs_mkdir(&lfs, path);
+}
+
+// Delete directory and all files inside
+int FS::DirDelete(const char* path) {
+
+  lfs_dir_t lfs_dir;
+  lfs_info entryInfo;
+
+  int err;
+  err = lfs_dir_open(&lfs, &lfs_dir, path);
+  if (err) {
+    return err;
+  }
+  while (lfs_dir_read(&lfs, &lfs_dir, &entryInfo)) {
+    lfs_remove(&lfs, entryInfo.name);
+  }
+  lfs_dir_close(&lfs, &lfs_dir);
+  return LFS_ERR_OK;
+}
+
+/*
+
+    ----------- Interface between littlefs and SpiNorFlash -----------
+
+*/
+int FS::SectorSync(const struct lfs_config* c) {
+  return 0;
+}
+
+int FS::SectorErase(const struct lfs_config* c, lfs_block_t block) {
+  Pinetime::Controllers::FS& lfs = *(static_cast<Pinetime::Controllers::FS*>(c->context));
+  const size_t address = startAddress + (block * blockSize);
+  lfs.flashDriver.SectorErase(address);
+  return lfs.flashDriver.EraseFailed() ? -1 : 0;
+}
+
+int FS::SectorProg(const struct lfs_config* c, lfs_block_t block, lfs_off_t off, const void* buffer, lfs_size_t size) {
+  Pinetime::Controllers::FS& lfs = *(static_cast<Pinetime::Controllers::FS*>(c->context));
+  const size_t address = startAddress + (block * blockSize) + off;
+  lfs.flashDriver.Write(address, (uint8_t*) buffer, size);
+  return lfs.flashDriver.ProgramFailed() ? -1 : 0;
+}
+
+int FS::SectorRead(const struct lfs_config* c, lfs_block_t block, lfs_off_t off, void* buffer, lfs_size_t size) {
+  Pinetime::Controllers::FS& lfs = *(static_cast<Pinetime::Controllers::FS*>(c->context));
+  const size_t address = startAddress + (block * blockSize) + off;
+  lfs.flashDriver.Read(address, static_cast<uint8_t*>(buffer), size);
+  return 0;
+}
+
+/*
+
+    ----------- LVGL filesystem integration -----------
+
+*/
+
+namespace {
+  lv_fs_res_t lvglOpen(lv_fs_drv_t* drv, void* file_p, const char* path, lv_fs_mode_t mode) {
+
+    lfs_file_t* file = static_cast<lfs_file_t*>(file_p);
+    FS* filesys = static_cast<FS*>(drv->user_data);
+    filesys->FileOpen(file, path, LFS_O_RDONLY);
+
+    if (file->type == 0) {
+      return LV_FS_RES_FS_ERR;
+    }
+    else {
+      return LV_FS_RES_OK;
+    }
+  }
+
+  lv_fs_res_t lvglClose(lv_fs_drv_t* drv, void* file_p) {
+    FS* filesys = static_cast<FS*>(drv->user_data);
+    lfs_file_t* file = static_cast<lfs_file_t*>(file_p);
+    filesys->FileClose(file);
+
+    return LV_FS_RES_OK;
+  }
+
+  lv_fs_res_t lvglRead(lv_fs_drv_t* drv, void* file_p, void* buf, uint32_t btr, uint32_t* br) {
+    FS* filesys = static_cast<FS*>(drv->user_data);
+    lfs_file_t* file = static_cast<lfs_file_t*>(file_p);
+    filesys->FileRead(file, static_cast<uint8_t*>(buf), btr);
+    *br = btr;
+    return LV_FS_RES_OK;
+  }
+
+  lv_fs_res_t lvglSeek(lv_fs_drv_t* drv, void* file_p, uint32_t pos) {
+    FS* filesys = static_cast<FS*>(drv->user_data);
+    lfs_file_t* file = static_cast<lfs_file_t*>(file_p);
+    filesys->FileSeek(file, pos);
+    return LV_FS_RES_OK;
+  }
+}
+
+void FS::LVGLFileSystemInit() {
+
+  lv_fs_drv_t fs_drv;
+  lv_fs_drv_init(&fs_drv);
+
+  fs_drv.file_size = sizeof(lfs_file_t);
+  fs_drv.letter = 'F';
+  fs_drv.open_cb = lvglOpen;
+  fs_drv.close_cb = lvglClose;
+  fs_drv.read_cb = lvglRead;
+  fs_drv.seek_cb = lvglSeek;
+
+  fs_drv.user_data = this;
+
+  lv_fs_drv_register(&fs_drv);
+
+}
\ No newline at end of file
diff --git a/src/components/fs/FS.h b/src/components/fs/FS.h
new file mode 100644
index 00000000..1f2eb7e0
--- /dev/null
+++ b/src/components/fs/FS.h
@@ -0,0 +1,71 @@
+#pragma once
+
+#include <cstdint>
+#include "drivers/SpiNorFlash.h"
+#include <littlefs/lfs.h>
+
+namespace Pinetime {
+  namespace Controllers {
+    class FS {
+    public:
+      FS(Pinetime::Drivers::SpiNorFlash&);
+
+      void Init();
+      void LVGLFileSystemInit();
+
+      int FileOpen(lfs_file_t* file_p, const char* fileName, const int flags);
+      int FileClose(lfs_file_t* file_p);
+      int FileRead(lfs_file_t* file_p, uint8_t* buff, uint32_t size);
+      int FileWrite(lfs_file_t* file_p, const uint8_t* buff, uint32_t size);
+      int FileSeek(lfs_file_t* file_p, uint32_t pos);
+
+      int FileDelete(const char* fileName);
+
+      int DirCreate(const char* path);
+      int DirDelete(const char* path);
+
+      void VerifyResource();
+
+    private:
+
+      Pinetime::Drivers::SpiNorFlash& flashDriver;
+
+      /*
+      * External Flash MAP (4 MBytes)
+      *
+      * 0x000000 +---------------------------------------+
+      *          |  Bootloader Assets                    |
+      *          |  256 KBytes                           |
+      *          |                                       |
+      * 0x040000 +---------------------------------------+
+      *          |  OTA                                  |
+      *          |  464 KBytes                           |
+      *          |                                       |
+      *          |                                       |
+      *          |                                       |
+      * 0x0B4000 +---------------------------------------+
+      *          |  File System                          |
+      *          |                                       |
+      *          |                                       |
+      *          |                                       |
+      *          |                                       |
+      * 0x400000 +---------------------------------------+
+      *
+      */
+      static constexpr size_t startAddress = 0x0B4000;
+      static constexpr size_t size = 0x3C0000;
+      static constexpr size_t blockSize = 4096;
+
+      bool resourcesValid = false;
+      const struct lfs_config lfsConfig;
+
+      lfs_t lfs;
+
+      static int SectorSync(const struct lfs_config* c);
+      static int SectorErase(const struct lfs_config* c, lfs_block_t block);
+      static int SectorProg(const struct lfs_config* c, lfs_block_t block, lfs_off_t off, const void* buffer, lfs_size_t size);
+      static int SectorRead(const struct lfs_config* c, lfs_block_t block, lfs_off_t off, void* buffer, lfs_size_t size);
+
+    };
+  }
+}
diff --git a/src/components/settings/Settings.cpp b/src/components/settings/Settings.cpp
index 071940b8..37c09f91 100644
--- a/src/components/settings/Settings.cpp
+++ b/src/components/settings/Settings.cpp
@@ -4,108 +4,44 @@
 
 using namespace Pinetime::Controllers;
 
-struct SettingsHeader {
-  uint8_t isActive; // 0xF1 = Block is active, 0xF0 = Block is inactive
-  uint16_t version; // Current version, to verify if the saved data is for the current Version
-};
-
-#define HEADER_SIZE sizeof(SettingsHeader)
-
-Settings::Settings(Pinetime::Drivers::SpiNorFlash& spiNorFlash) : spiNorFlash {spiNorFlash} {
+Settings::Settings(Pinetime::Controllers::FS& fs) : fs {fs} {
 }
 
 void Settings::Init() {
 
   // Load default settings from Flash
-  LoadSettingsFromFlash();
+  LoadSettingsFromFile();
 }
 
 void Settings::SaveSettings() {
 
   // verify if is necessary to save
   if (settingsChanged) {
-    SaveSettingsToFlash();
+    SaveSettingsToFile();
   }
   settingsChanged = false;
 }
 
-bool Settings::FindHeader() {
-  SettingsHeader settingsHeader;
-  uint8_t bufferHead[sizeof(settingsHeader)];
+void Settings::LoadSettingsFromFile() {
+  SettingsData bufferSettings;
+  lfs_file_t settingsFile;
 
-  for (uint8_t block = 0; block < 10; block++) {
-
-    spiNorFlash.Read(settingsBaseAddr + (block * 0x1000), bufferHead, sizeof(settingsHeader));
-    std::memcpy(&settingsHeader, bufferHead, sizeof(settingsHeader));
-    if (settingsHeader.isActive == 0xF1 && settingsHeader.version == settingsVersion) {
-      settingsFlashBlock = block;
-      return true;
-    }
+  if ( fs.FileOpen(&settingsFile, "/settings.dat", LFS_O_RDWR | LFS_O_CREAT) != LFS_ERR_OK) {
+    return;
   }
-  return false;
-}
-
-void Settings::ReadSettingsData() {
-  uint8_t bufferSettings[sizeof(settings)];
-  spiNorFlash.Read(settingsBaseAddr + (settingsFlashBlock * 0x1000) + HEADER_SIZE, bufferSettings, sizeof(settings));
-  std::memcpy(&settings, bufferSettings, sizeof(settings));
-}
-
-void Settings::EraseBlock() {
-
-  spiNorFlash.SectorErase(settingsBaseAddr + (settingsFlashBlock * 0x1000));
-}
-
-void Settings::SetHeader(bool state) {
-  SettingsHeader settingsHeader;
-  uint8_t bufferHead[sizeof(settingsHeader)];
-  settingsHeader.isActive = state ? 0xF1 : 0xF0;
-  settingsHeader.version = settingsVersion;
-
-  std::memcpy(bufferHead, &settingsHeader, sizeof(settingsHeader));
-  spiNorFlash.Write(settingsBaseAddr + (settingsFlashBlock * 0x1000), bufferHead, sizeof(settingsHeader));
-}
-
-void Settings::SaveSettingsData() {
-  uint8_t bufferSettings[sizeof(settings)];
-  std::memcpy(bufferSettings, &settings, sizeof(settings));
-  spiNorFlash.Write(settingsBaseAddr + (settingsFlashBlock * 0x1000) + HEADER_SIZE, bufferSettings, sizeof(settings));
-}
-
-void Settings::LoadSettingsFromFlash() {
-
-  if (settingsFlashBlock == 99) {
-    // Find current Block, if can't find use default settings and set block to 0 ans save !
-    if (FindHeader()) {
-      ReadSettingsData();
-    } else {
-      SaveSettingsToFlash();
-    }
-  } else {
-    // Read Settings from flash...
-    // never used :)
-    ReadSettingsData();
+  fs.FileRead(&settingsFile, reinterpret_cast<uint8_t*>(&bufferSettings), sizeof(settings));
+  fs.FileClose(&settingsFile);
+  if ( bufferSettings.version == settingsVersion ) {
+    settings = bufferSettings;
   }
 }
 
-void Settings::SaveSettingsToFlash() {
+void Settings::SaveSettingsToFile() {
+  lfs_file_t settingsFile;
 
-  // calculate where to save...
-  // mark current to inactive
-  // erase the new location and save
-  // set settingsFlashBlock
-
-  // if first time hever, only saves to block 0 and set settingsFlashBlock
-
-  if (settingsFlashBlock != 99) {
-    SetHeader(false);
+  if ( fs.FileOpen(&settingsFile, "/settings.dat", LFS_O_RDWR | LFS_O_CREAT) != LFS_ERR_OK) {
+    return;
   }
-
-  settingsFlashBlock++;
-  if (settingsFlashBlock > 9)
-    settingsFlashBlock = 0;
-
-  EraseBlock();
-  SetHeader(true);
-  SaveSettingsData();
+  fs.FileWrite(&settingsFile, reinterpret_cast<uint8_t*>(&settings), sizeof(settings));
+  fs.FileClose(&settingsFile);
 }
diff --git a/src/components/settings/Settings.h b/src/components/settings/Settings.h
index 4409425b..577455eb 100644
--- a/src/components/settings/Settings.h
+++ b/src/components/settings/Settings.h
@@ -2,25 +2,26 @@
 #include <cstdint>
 #include "components/datetime/DateTimeController.h"
 #include "components/brightness/BrightnessController.h"
-#include "drivers/SpiNorFlash.h"
+#include "components/fs/FS.h"
 #include "drivers/Cst816s.h"
 
 namespace Pinetime {
   namespace Controllers {
     class Settings {
     public:
-      enum class ClockType { H24, H12 };
-      enum class Vibration { ON, OFF };
-      enum class WakeUpMode { None, SingleTap, DoubleTap, RaiseWrist };
+      enum class ClockType : uint8_t { H24, H12 };
+      enum class Vibration : uint8_t { ON, OFF };
+      enum class WakeUpMode : uint8_t { None, SingleTap, DoubleTap, RaiseWrist };
 
-      Settings(Pinetime::Drivers::SpiNorFlash& spiNorFlash);
+      Settings(Pinetime::Controllers::FS& fs);
 
       void Init();
       void SaveSettings();
 
       void SetClockFace(uint8_t face) {
-        if (face != settings.clockFace)
+        if (face != settings.clockFace) {
           settingsChanged = true;
+        }
         settings.clockFace = face;
       };
       uint8_t GetClockFace() const {
@@ -42,8 +43,9 @@ namespace Pinetime {
       };
 
       void SetClockType(ClockType clocktype) {
-        if (clocktype != settings.clockType)
+        if (clocktype != settings.clockType) {
           settingsChanged = true;
+        }
         settings.clockType = clocktype;
       };
       ClockType GetClockType() const {
@@ -51,8 +53,9 @@ namespace Pinetime {
       };
 
       void SetVibrationStatus(Vibration status) {
-        if (status != settings.vibrationStatus)
+        if (status != settings.vibrationStatus) {
           settingsChanged = true;
+        }
         settings.vibrationStatus = status;
       };
       Vibration GetVibrationStatus() const {
@@ -60,8 +63,9 @@ namespace Pinetime {
       };
 
       void SetScreenTimeOut(uint32_t timeout) {
-        if (timeout != settings.screenTimeOut)
+        if (timeout != settings.screenTimeOut) {
           settingsChanged = true;
+        }
         settings.screenTimeOut = timeout;
       };
       uint32_t GetScreenTimeOut() const {
@@ -69,8 +73,9 @@ namespace Pinetime {
       };
 
       void setWakeUpMode(WakeUpMode wakeUp) {
-        if (wakeUp != settings.wakeUpMode)
+        if (wakeUp != settings.wakeUpMode) {
           settingsChanged = true;
+        }
         settings.wakeUpMode = wakeUp;
       };
       WakeUpMode getWakeUpMode() const {
@@ -78,8 +83,9 @@ namespace Pinetime {
       };
 
       void SetBrightness(Controllers::BrightnessController::Levels level) {
-        if (level != settings.brightLevel)
+        if (level != settings.brightLevel) {
           settingsChanged = true;
+        }
         settings.brightLevel = level;
       };
       Controllers::BrightnessController::Levels GetBrightness() const {
@@ -87,25 +93,29 @@ namespace Pinetime {
       };
 
       void SetStepsGoal( uint32_t goal ) { 
-        if ( goal != settings.stepsGoal ) 
+        if ( goal != settings.stepsGoal ) {
           settingsChanged = true;
+        }
         settings.stepsGoal = goal; 
       };
       
       uint32_t GetStepsGoal() const { return settings.stepsGoal; };
 
     private:
-      Pinetime::Drivers::SpiNorFlash& spiNorFlash;
+      Pinetime::Controllers::FS& fs;
+
+      static constexpr uint32_t settingsVersion = 0x0001;
       struct SettingsData {
 
+        uint32_t version = settingsVersion;
+        uint32_t stepsGoal = 10000;
+        uint32_t screenTimeOut = 15000;
+
         ClockType clockType = ClockType::H24;
         Vibration vibrationStatus = Vibration::ON;
 
         uint8_t clockFace = 0;
 
-        uint32_t stepsGoal = 10000;
-        uint32_t screenTimeOut = 15000;
-
         WakeUpMode wakeUpMode = WakeUpMode::None;
 
         Controllers::BrightnessController::Levels brightLevel = Controllers::BrightnessController::Levels::Medium;
@@ -117,20 +127,8 @@ namespace Pinetime {
       uint8_t appMenu = 0;
       uint8_t settingsMenu = 0;
 
-      // There are 10 blocks of reserved flash to save settings
-      // to minimize wear, the recording is done in a rotating way by the 10 blocks
-      uint8_t settingsFlashBlock = 99; // default to indicate it needs to find the active block
-
-      static constexpr uint32_t settingsBaseAddr = 0x3F6000; // Flash Settings Location
-      static constexpr uint16_t settingsVersion = 0x0100;    // Flash Settings Version
-
-      bool FindHeader();
-      void ReadSettingsData();
-      void EraseBlock();
-      void SetHeader(bool state);
-      void SaveSettingsData();
-      void LoadSettingsFromFlash();
-      void SaveSettingsToFlash();
+      void LoadSettingsFromFile();
+      void SaveSettingsToFile();
     };
   }
 }
\ No newline at end of file
diff --git a/src/libs/littlefs b/src/libs/littlefs
new file mode 160000
index 00000000..ead50807
--- /dev/null
+++ b/src/libs/littlefs
@@ -0,0 +1 @@
+Subproject commit ead50807f1ca3fdf2da00b77a0ce02651ded2d13
diff --git a/src/libs/lv_conf.h b/src/libs/lv_conf.h
index a03a4833..e85eeb1f 100644
--- a/src/libs/lv_conf.h
+++ b/src/libs/lv_conf.h
@@ -204,7 +204,7 @@ e.g. "stm32f769xx.h" or "stm32f429xx.h" */
 
 /* 1: Enable file system (might be required for images */
 // TODO: Enable FS
-#define LV_USE_FILESYSTEM       0
+#define LV_USE_FILESYSTEM       1
 #if LV_USE_FILESYSTEM
 /*Declare the type of the user data of file system drivers (can be e.g. `void *`, `int`, `struct`)*/
 typedef void * lv_fs_drv_user_data_t;
@@ -236,7 +236,7 @@ typedef void * lv_fs_drv_user_data_t;
  * With complex image decoders (e.g. PNG or JPG) caching can save the continuous open/decode of images.
  * However the opened images might consume additional RAM.
  * LV_IMG_CACHE_DEF_SIZE must be >= 1 */
-#define LV_IMG_CACHE_DEF_SIZE       1
+#define LV_IMG_CACHE_DEF_SIZE       6
 
 /*Declare the type of the user data of image decoder (can be e.g. `void *`, `int`, `struct`)*/
 typedef void* lv_img_decoder_user_data_t;
diff --git a/src/main.cpp b/src/main.cpp
index 5832a78f..1b7015aa 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -35,6 +35,7 @@
 #include "components/motor/MotorController.h"
 #include "components/datetime/DateTimeController.h"
 #include "components/heartrate/HeartRateController.h"
+#include "components/fs/FS.h"
 #include "drivers/Spi.h"
 #include "drivers/SpiMaster.h"
 #include "drivers/SpiNorFlash.h"
@@ -108,10 +109,6 @@ void ble_manager_set_ble_disconnection_callback(void (*disconnection)());
 static constexpr uint8_t pinTouchIrq = 28;
 static constexpr uint8_t pinPowerPresentIrq = 19;
 
-Pinetime::Controllers::Settings settingsController {spiNorFlash};
-
-Pinetime::Controllers::MotorController motorController {settingsController};
-
 Pinetime::Controllers::HeartRateController heartRateController;
 Pinetime::Applications::HeartRateTask heartRateApp(heartRateSensor, heartRateController);
 
@@ -122,6 +119,11 @@ Pinetime::Controllers::NotificationManager notificationManager;
 Pinetime::Controllers::MotionController motionController;
 Pinetime::Controllers::TimerController timerController;
 
+Pinetime::Controllers::FS fs {spiNorFlash};
+Pinetime::Controllers::Settings settingsController {fs};
+Pinetime::Controllers::MotorController motorController {settingsController};
+
+
 Pinetime::Applications::DisplayApp displayApp(lcd,
                                               lvgl,
                                               touchPanel,
@@ -155,7 +157,8 @@ Pinetime::System::SystemTask systemTask(spi,
                                         settingsController,
                                         heartRateController,
                                         displayApp,
-                                        heartRateApp);
+                                        heartRateApp,
+                                        fs);
 
 void nrfx_gpiote_evt_handler(nrfx_gpiote_pin_t pin, nrf_gpiote_polarity_t action) {
   if (pin == pinTouchIrq) {
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 13755f71..17e78230 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -59,7 +59,8 @@ SystemTask::SystemTask(Drivers::SpiMaster& spi,
                        Controllers::Settings& settingsController,
                        Pinetime::Controllers::HeartRateController& heartRateController,
                        Pinetime::Applications::DisplayApp& displayApp,
-                       Pinetime::Applications::HeartRateTask& heartRateApp)
+                       Pinetime::Applications::HeartRateTask& heartRateApp,
+                       Pinetime::Controllers::FS& fs)
   : spi {spi},
     lcd {lcd},
     spiNorFlash {spiNorFlash},
@@ -77,10 +78,11 @@ SystemTask::SystemTask(Drivers::SpiMaster& spi,
     motionSensor {motionSensor},
     settingsController {settingsController},
     heartRateController{heartRateController},
-    nimbleController(*this, bleController, dateTimeController, notificationManager, batteryController, spiNorFlash, heartRateController),
     motionController{motionController},
     displayApp{displayApp},
-    heartRateApp(heartRateApp) {
+    heartRateApp(heartRateApp),
+    fs{fs},
+    nimbleController(*this, bleController, dateTimeController, notificationManager, batteryController, spiNorFlash, heartRateController) {
 
 }
 
@@ -107,6 +109,9 @@ void SystemTask::Work() {
   spi.Init();
   spiNorFlash.Init();
   spiNorFlash.Wakeup();
+  
+  fs.Init();
+
   nimbleController.Init();
   nimbleController.StartAdvertising();
   brightnessController.Init();
diff --git a/src/systemtask/SystemTask.h b/src/systemtask/SystemTask.h
index f563640c..bfb97264 100644
--- a/src/systemtask/SystemTask.h
+++ b/src/systemtask/SystemTask.h
@@ -16,13 +16,15 @@
 #include "components/ble/NotificationManager.h"
 #include "components/motor/MotorController.h"
 #include "components/timer/TimerController.h"
+#include "components/fs/FS.h"
+
 #ifdef PINETIME_IS_RECOVERY
   #include "displayapp/DisplayAppRecovery.h"
   #include "displayapp/DummyLittleVgl.h"
 #else
   #include "components/settings/Settings.h"
   #include "displayapp/DisplayApp.h"
-  #include "displayapp/LittleVgl.h"
+  #include "displayapp/LittleVgl.h"  
 #endif
 
 #include "drivers/Watchdog.h"
@@ -59,7 +61,8 @@ namespace Pinetime {
                  Controllers::Settings& settingsController,
                  Pinetime::Controllers::HeartRateController& heartRateController,
                  Pinetime::Applications::DisplayApp& displayApp,
-                 Pinetime::Applications::HeartRateTask& heartRateApp);
+                 Pinetime::Applications::HeartRateTask& heartRateApp,
+                 Pinetime::Controllers::FS& fs);
 
       void Start();
       void PushMessage(Messages msg);
@@ -103,13 +106,14 @@ namespace Pinetime {
       Pinetime::Drivers::Bma421& motionSensor;
       Pinetime::Controllers::Settings& settingsController;
       Pinetime::Controllers::HeartRateController& heartRateController;
-      Pinetime::Controllers::NimbleController nimbleController;
+            
       Controllers::BrightnessController brightnessController;
       Pinetime::Controllers::MotionController& motionController;
 
       Pinetime::Applications::DisplayApp& displayApp;
       Pinetime::Applications::HeartRateTask& heartRateApp;
-
+      Pinetime::Controllers::FS& fs;
+      Pinetime::Controllers::NimbleController nimbleController;
 
       static constexpr uint8_t pinSpiSck = 2;
       static constexpr uint8_t pinSpiMosi = 3;

From 6a91b83b12ef849f68d54f490153b02f0ecf58dc Mon Sep 17 00:00:00 2001
From: kieranc <kieranc@gmail.com>
Date: Sun, 11 Jul 2021 15:08:23 +0200
Subject: [PATCH 52/58] Change step gauge range to 100 and calculate progress
 as percantage (#468)

---
 src/displayapp/screens/PineTimeStyle.cpp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/displayapp/screens/PineTimeStyle.cpp b/src/displayapp/screens/PineTimeStyle.cpp
index 678099c0..591f3a49 100644
--- a/src/displayapp/screens/PineTimeStyle.cpp
+++ b/src/displayapp/screens/PineTimeStyle.cpp
@@ -179,8 +179,8 @@ PineTimeStyle::PineTimeStyle(DisplayApp* app,
   lv_obj_align(stepGauge, sidebar, LV_ALIGN_IN_BOTTOM_MID, 0, 0);
   lv_gauge_set_scale(stepGauge, 360, 11, 0);
   lv_gauge_set_angle_offset(stepGauge, 180);
-  lv_gauge_set_critical_value(stepGauge, (settingsController.GetStepsGoal() / 100));
-  lv_gauge_set_range(stepGauge, 0, (settingsController.GetStepsGoal() / 100));
+  lv_gauge_set_critical_value(stepGauge, 100);
+  lv_gauge_set_range(stepGauge, 0, 100);
   lv_gauge_set_value(stepGauge, 0, 0);
 
   lv_obj_set_style_local_pad_right(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, 3);
@@ -328,7 +328,7 @@ bool PineTimeStyle::Refresh() {
   stepCount = motionController.NbSteps();
   motionSensorOk = motionController.IsSensorOk();
   if (stepCount.IsUpdated() || motionSensorOk.IsUpdated()) {
-    lv_gauge_set_value(stepGauge, 0, (stepCount.Get() / 100));
+    lv_gauge_set_value(stepGauge, 0, (stepCount.Get() / (settingsController.GetStepsGoal() / 100)));
     lv_obj_realign(stepGauge);
     if (stepCount.Get() > settingsController.GetStepsGoal()) {
       lv_obj_set_style_local_line_color(stepGauge, LV_GAUGE_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_WHITE);

From e21f6a7f414d1f832e8fddfeaab3b9de05aa3459 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Milants?= <jf@codingfield.com>
Date: Sun, 11 Jul 2021 16:55:06 +0200
Subject: [PATCH 53/58] Notify battery level every 10 minutes when connected to
 a BLE host. Refactor battery percent : only use uint8_t to store the battery
 % remaining.

---
 src/components/battery/BatteryController.cpp  | 13 +---
 src/components/battery/BatteryController.h    | 18 +++--
 .../ble/BatteryInformationService.cpp         |  8 ++-
 .../ble/BatteryInformationService.h           |  2 +-
 src/components/ble/NimbleController.cpp       |  6 ++
 src/components/ble/NimbleController.h         |  3 +-
 src/displayapp/screens/BatteryIcon.cpp        |  3 +-
 src/displayapp/screens/BatteryIcon.h          |  2 +-
 src/displayapp/screens/BatteryInfo.cpp        | 66 ++++++++-----------
 src/displayapp/screens/BatteryInfo.h          |  2 +-
 src/displayapp/screens/PineTimeStyle.h        |  2 +-
 src/displayapp/screens/SystemInfo.cpp         |  2 +-
 src/displayapp/screens/WatchFaceAnalog.cpp    |  1 -
 src/displayapp/screens/WatchFaceAnalog.h      |  2 +-
 src/displayapp/screens/WatchFaceDigital.h     |  2 +-
 src/systemtask/SystemTask.cpp                 |  5 ++
 src/systemtask/SystemTask.h                   |  2 +
 17 files changed, 71 insertions(+), 68 deletions(-)

diff --git a/src/components/battery/BatteryController.cpp b/src/components/battery/BatteryController.cpp
index 76ad8cb3..fa476ea3 100644
--- a/src/components/battery/BatteryController.cpp
+++ b/src/components/battery/BatteryController.cpp
@@ -1,9 +1,7 @@
 #include "BatteryController.h"
 #include <hal/nrf_gpio.h>
 #include <nrfx_saadc.h>
-#include <libraries/log/nrf_log.h>
 #include <algorithm>
-#include <math.h>
 
 using namespace Pinetime::Controllers;
 
@@ -18,7 +16,6 @@ void Battery::Init() {
 }
 
 void Battery::Update() {
-
   isCharging = !nrf_gpio_pin_read(chargingPin);
   isPowerPresent = !nrf_gpio_pin_read(powerPresentPin);
 
@@ -33,13 +30,13 @@ void Battery::Update() {
   nrfx_saadc_sample();
 }
 
-void Battery::adcCallbackStatic(nrfx_saadc_evt_t const* event) {
+void Battery::AdcCallbackStatic(nrfx_saadc_evt_t const* event) {
   instance->SaadcEventHandler(event);
 }
 
 void Battery::SaadcInit() {
   nrfx_saadc_config_t adcConfig = NRFX_SAADC_DEFAULT_CONFIG;
-  APP_ERROR_CHECK(nrfx_saadc_init(&adcConfig, adcCallbackStatic));
+  APP_ERROR_CHECK(nrfx_saadc_init(&adcConfig, AdcCallbackStatic));
 
   nrf_saadc_channel_config_t adcChannelConfig = {.resistor_p = NRF_SAADC_RESISTOR_DISABLED,
                                                  .resistor_n = NRF_SAADC_RESISTOR_DISABLED,
@@ -55,7 +52,6 @@ void Battery::SaadcInit() {
 }
 
 void Battery::SaadcEventHandler(nrfx_saadc_evt_t const* p_event) {
-
   const uint16_t battery_max = 4180; // maximum voltage of battery ( max charging voltage is 4.21 )
   const uint16_t battery_min = 3200; // minimum voltage of battery before shutdown ( depends on the battery )
 
@@ -69,13 +65,10 @@ void Battery::SaadcEventHandler(nrfx_saadc_evt_t const* p_event) {
     // reference_voltage is 0.6V
     // p_event->data.done.p_buffer[0] = (adc_voltage / reference_voltage) * 1024
     voltage = p_event->data.done.p_buffer[0] * 6000 / 1024;
-
     percentRemaining = (voltage - battery_min) * 100 / (battery_max - battery_min);
-
     percentRemaining = std::max(percentRemaining, 0);
     percentRemaining = std::min(percentRemaining, 100);
-
-    percentRemainingBuffer.insert(percentRemaining);
+    percentRemainingBuffer.Insert(percentRemaining);
 
     samples++;
     if (samples > percentRemainingSamples) {
diff --git a/src/components/battery/BatteryController.h b/src/components/battery/BatteryController.h
index 26e24938..1333ad0e 100644
--- a/src/components/battery/BatteryController.h
+++ b/src/components/battery/BatteryController.h
@@ -19,7 +19,7 @@ namespace Pinetime {
      insert member function overwrites the next data to the current
     HEAD and moves the HEAD to the newly inserted value.
     */
-      void insert(const int num) {
+      void Insert(const uint8_t num) {
         head %= cap;
         arr[head++] = num;
         if (sz != cap) {
@@ -27,13 +27,13 @@ namespace Pinetime {
         }
       }
 
-      int GetAverage() const {
+      uint8_t GetAverage() const {
         int sum = std::accumulate(arr.begin(), arr.end(), 0);
-        return (sum / sz);
+        return static_cast<uint8_t>(sum / sz);
       }
 
     private:
-      std::array<int, N> arr; /**< internal array used to store the values*/
+      std::array<uint8_t, N> arr; /**< internal array used to store the values*/
       uint8_t sz;             /**< The current size of the array.*/
       uint8_t cap;            /**< Total capacity of the CircBuffer.*/
       uint8_t head;           /**< The current head of the CircBuffer*/
@@ -46,8 +46,11 @@ namespace Pinetime {
       void Init();
       void Update();
 
-      int PercentRemaining() const {
-        return percentRemainingBuffer.GetAverage();
+      uint8_t PercentRemaining() const {
+        auto avg = percentRemainingBuffer.GetAverage();
+        avg = std::min(avg, static_cast<uint8_t>(100));
+        avg = std::max(avg, static_cast<uint8_t>(0));
+        return avg;
       }
 
       uint16_t Voltage() const {
@@ -57,6 +60,7 @@ namespace Pinetime {
       bool IsCharging() const {
         return isCharging;
       }
+
       bool IsPowerPresent() const {
         return isPowerPresent;
       }
@@ -80,7 +84,7 @@ namespace Pinetime {
       void SaadcInit();
 
       void SaadcEventHandler(nrfx_saadc_evt_t const* p_event);
-      static void adcCallbackStatic(nrfx_saadc_evt_t const* event);
+      static void AdcCallbackStatic(nrfx_saadc_evt_t const* event);
 
       bool isReading = false;
       uint8_t samples = 0;
diff --git a/src/components/ble/BatteryInformationService.cpp b/src/components/ble/BatteryInformationService.cpp
index 10a78d67..7f176904 100644
--- a/src/components/ble/BatteryInformationService.cpp
+++ b/src/components/ble/BatteryInformationService.cpp
@@ -17,7 +17,7 @@ BatteryInformationService::BatteryInformationService(Controllers::Battery& batte
     characteristicDefinition {{.uuid = (ble_uuid_t*) &batteryLevelUuid,
                                .access_cb = BatteryInformationServiceCallback,
                                .arg = this,
-                               .flags = BLE_GATT_CHR_F_READ,
+                               .flags = BLE_GATT_CHR_F_READ | BLE_GATT_CHR_F_NOTIFY,
                                .val_handle = &batteryLevelHandle},
                               {0}},
     serviceDefinition {
@@ -48,4 +48,8 @@ int BatteryInformationService::OnBatteryServiceRequested(uint16_t connectionHand
     return (res == 0) ? 0 : BLE_ATT_ERR_INSUFFICIENT_RES;
   }
   return 0;
-}
\ No newline at end of file
+}
+void BatteryInformationService::NotifyBatteryLevel(uint16_t connectionHandle, uint8_t level) {
+  auto* om = ble_hs_mbuf_from_flat(&level, 1);
+  ble_gattc_notify_custom(connectionHandle, batteryLevelHandle, om);
+}
diff --git a/src/components/ble/BatteryInformationService.h b/src/components/ble/BatteryInformationService.h
index 7d060909..1303fd6c 100644
--- a/src/components/ble/BatteryInformationService.h
+++ b/src/components/ble/BatteryInformationService.h
@@ -17,7 +17,7 @@ namespace Pinetime {
       void Init();
 
       int OnBatteryServiceRequested(uint16_t connectionHandle, uint16_t attributeHandle, ble_gatt_access_ctxt* context);
-
+      void NotifyBatteryLevel(uint16_t connectionHandle, uint8_t level);
     private:
       Controllers::Battery& batteryController;
       static constexpr uint16_t batteryInformationServiceId {0x180F};
diff --git a/src/components/ble/NimbleController.cpp b/src/components/ble/NimbleController.cpp
index 2c1d0f99..5eb227bf 100644
--- a/src/components/ble/NimbleController.cpp
+++ b/src/components/ble/NimbleController.cpp
@@ -235,3 +235,9 @@ void NimbleController::StartDiscovery() {
 uint16_t NimbleController::connHandle() {
   return connectionHandle;
 }
+
+void NimbleController::NotifyBatteryLevel(uint8_t level) {
+  if(connectionHandle != BLE_HS_CONN_HANDLE_NONE) {
+    batteryInformationService.NotifyBatteryLevel(connectionHandle, level);
+  }
+}
diff --git a/src/components/ble/NimbleController.h b/src/components/ble/NimbleController.h
index 5dd01e42..0cfe983c 100644
--- a/src/components/ble/NimbleController.h
+++ b/src/components/ble/NimbleController.h
@@ -70,6 +70,7 @@ namespace Pinetime {
       };
 
       uint16_t connHandle();
+      void NotifyBatteryLevel(uint8_t level);
 
     private:
       static constexpr const char* deviceName = "InfiniTime";
@@ -92,7 +93,7 @@ namespace Pinetime {
       HeartRateService heartRateService;
 
       uint8_t addrType; // 1 = Random, 0 = PUBLIC
-      uint16_t connectionHandle = 0;
+      uint16_t connectionHandle = BLE_HS_CONN_HANDLE_NONE;
 
       ble_uuid128_t dfuServiceUuid {
         .u {.type = BLE_UUID_TYPE_128},
diff --git a/src/displayapp/screens/BatteryIcon.cpp b/src/displayapp/screens/BatteryIcon.cpp
index 6b54a305..bb6626a5 100644
--- a/src/displayapp/screens/BatteryIcon.cpp
+++ b/src/displayapp/screens/BatteryIcon.cpp
@@ -1,9 +1,10 @@
+#include <cstdint>
 #include "BatteryIcon.h"
 #include "Symbols.h"
 
 using namespace Pinetime::Applications::Screens;
 
-const char* BatteryIcon::GetBatteryIcon(int batteryPercent) {
+const char* BatteryIcon::GetBatteryIcon(uint8_t batteryPercent) {
   if (batteryPercent > 90)
     return Symbols::batteryFull;
   if (batteryPercent > 75)
diff --git a/src/displayapp/screens/BatteryIcon.h b/src/displayapp/screens/BatteryIcon.h
index 9c192ff7..b370b331 100644
--- a/src/displayapp/screens/BatteryIcon.h
+++ b/src/displayapp/screens/BatteryIcon.h
@@ -6,7 +6,7 @@ namespace Pinetime {
       class BatteryIcon {
       public:
         static const char* GetUnknownIcon();
-        static const char* GetBatteryIcon(int batteryPercent);
+        static const char* GetBatteryIcon(uint8_t batteryPercent);
         static const char* GetPlugIcon(bool isCharging);
       };
     }
diff --git a/src/displayapp/screens/BatteryInfo.cpp b/src/displayapp/screens/BatteryInfo.cpp
index 87c8b4bb..2af024e7 100644
--- a/src/displayapp/screens/BatteryInfo.cpp
+++ b/src/displayapp/screens/BatteryInfo.cpp
@@ -38,11 +38,7 @@ BatteryInfo::BatteryInfo(Pinetime::Applications::DisplayApp* app, Pinetime::Cont
 
   percent = lv_label_create(lv_scr_act(), nullptr);
   lv_obj_set_style_local_text_font(percent, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_76);
-  if (batteryPercent >= 0) {
-    lv_label_set_text_fmt(percent, "%02i%%", batteryPercent);
-  } else {
-    lv_label_set_text(percent, "--%");
-  }
+  lv_label_set_text_fmt(percent, "%02i%%", batteryPercent);
   lv_label_set_align(percent, LV_LABEL_ALIGN_LEFT);
   lv_obj_align(percent, nullptr, LV_ALIGN_CENTER, 0, -60);
 
@@ -72,24 +68,22 @@ BatteryInfo::~BatteryInfo() {
 void BatteryInfo::UpdateAnim() {
   batteryPercent = batteryController.PercentRemaining();
 
-  if (batteryPercent >= 0) {
-    if (batteryController.IsCharging() and batteryPercent < 100) {
-      animation += 1;
-      if (animation >= 100) {
-        animation = 0;
-      }
-
-    } else {
-      if (animation > batteryPercent) {
-        animation--;
-      }
-      if (animation < batteryPercent) {
-        animation++;
-      }
+  if (batteryController.IsCharging() and batteryPercent < 100) {
+    animation += 1;
+    if (animation >= 100) {
+      animation = 0;
     }
 
-    lv_bar_set_value(charging_bar, animation, LV_ANIM_OFF);
+  } else {
+    if (animation > batteryPercent) {
+      animation--;
+    }
+    if (animation < batteryPercent) {
+      animation++;
+    }
   }
+
+  lv_bar_set_value(charging_bar, animation, LV_ANIM_OFF);
 }
 
 void BatteryInfo::UpdateScreen() {
@@ -99,28 +93,22 @@ void BatteryInfo::UpdateScreen() {
   batteryPercent = batteryController.PercentRemaining();
   batteryVoltage = batteryController.Voltage();
 
-  if (batteryPercent >= 0) {
-    if (batteryController.IsCharging() and batteryPercent < 100) {
-      lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_RED);
-      lv_label_set_text_static(status, "Battery charging");
-    } else if (batteryPercent == 100) {
-      lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_BLUE);
-      lv_label_set_text_static(status, "Battery is fully charged");
-    } else if (batteryPercent < 10) {
-      lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_YELLOW);
-      lv_label_set_text_static(status, "Battery is low");
-    } else {
-      lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_GREEN);
-      lv_label_set_text_static(status, "Battery discharging");
-    }
-
-    lv_label_set_text_fmt(percent, "%02i%%", batteryPercent);
-
+  if (batteryController.IsCharging() and batteryPercent < 100) {
+    lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_RED);
+    lv_label_set_text_static(status, "Battery charging");
+  } else if (batteryPercent == 100) {
+    lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_BLUE);
+    lv_label_set_text_static(status, "Battery is fully charged");
+  } else if (batteryPercent < 10) {
+    lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_YELLOW);
+    lv_label_set_text_static(status, "Battery is low");
   } else {
-    lv_label_set_text_static(status, "Reading Battery status");
-    lv_label_set_text(percent, "--%");
+    lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_GREEN);
+    lv_label_set_text_static(status, "Battery discharging");
   }
 
+  lv_label_set_text_fmt(percent, "%02i%%", batteryPercent);
+
   lv_obj_align(status, charging_bar, LV_ALIGN_OUT_BOTTOM_MID, 0, 20);
   lv_label_set_text_fmt(voltage, "%1i.%02i volts", batteryVoltage / 1000, batteryVoltage % 1000 / 10);
 }
diff --git a/src/displayapp/screens/BatteryInfo.h b/src/displayapp/screens/BatteryInfo.h
index 346dc571..da85c6dd 100644
--- a/src/displayapp/screens/BatteryInfo.h
+++ b/src/displayapp/screens/BatteryInfo.h
@@ -36,7 +36,7 @@ namespace Pinetime {
         lv_task_t* taskAnim;
 
         int8_t animation = 0;
-        int8_t batteryPercent = -1;
+        uint8_t batteryPercent = 0;
         uint16_t batteryVoltage = 0;
       };
     }
diff --git a/src/displayapp/screens/PineTimeStyle.h b/src/displayapp/screens/PineTimeStyle.h
index 70794cc5..3b4ded1e 100644
--- a/src/displayapp/screens/PineTimeStyle.h
+++ b/src/displayapp/screens/PineTimeStyle.h
@@ -42,7 +42,7 @@ namespace Pinetime {
         Pinetime::Controllers::DateTime::Days currentDayOfWeek = Pinetime::Controllers::DateTime::Days::Unknown;
         uint8_t currentDay = 0;
 
-        DirtyValue<int> batteryPercentRemaining {};
+        DirtyValue<uint8_t> batteryPercentRemaining {};
         DirtyValue<bool> bleState {};
         DirtyValue<std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds>> currentDateTime {};
         DirtyValue<bool> motionSensorOk {};
diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp
index 5ae3a595..f5bf0cc9 100644
--- a/src/displayapp/screens/SystemInfo.cpp
+++ b/src/displayapp/screens/SystemInfo.cpp
@@ -103,7 +103,7 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen1() {
 }
 
 std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
-  auto batteryPercent = static_cast<uint8_t>(batteryController.PercentRemaining());
+  auto batteryPercent = batteryController.PercentRemaining();
   auto resetReason = [this]() {
     switch (watchdog.ResetReason()) {
       case Drivers::Watchdog::ResetReasons::Watchdog:
diff --git a/src/displayapp/screens/WatchFaceAnalog.cpp b/src/displayapp/screens/WatchFaceAnalog.cpp
index 0051408c..b0eb65bc 100644
--- a/src/displayapp/screens/WatchFaceAnalog.cpp
+++ b/src/displayapp/screens/WatchFaceAnalog.cpp
@@ -165,7 +165,6 @@ void WatchFaceAnalog::UpdateClock() {
 }
 
 bool WatchFaceAnalog::Refresh() {
-
   batteryPercentRemaining = batteryController.PercentRemaining();
   if (batteryPercentRemaining.IsUpdated()) {
     auto batteryPercent = batteryPercentRemaining.Get();
diff --git a/src/displayapp/screens/WatchFaceAnalog.h b/src/displayapp/screens/WatchFaceAnalog.h
index 96225558..ac7f0ac5 100644
--- a/src/displayapp/screens/WatchFaceAnalog.h
+++ b/src/displayapp/screens/WatchFaceAnalog.h
@@ -48,7 +48,7 @@ namespace Pinetime {
         Pinetime::Controllers::DateTime::Days currentDayOfWeek = Pinetime::Controllers::DateTime::Days::Unknown;
         uint8_t currentDay = 0;
 
-        DirtyValue<float> batteryPercentRemaining {0};
+        DirtyValue<uint8_t> batteryPercentRemaining {0};
         DirtyValue<std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds>> currentDateTime;
         DirtyValue<bool> notificationState {false};
 
diff --git a/src/displayapp/screens/WatchFaceDigital.h b/src/displayapp/screens/WatchFaceDigital.h
index 246efc95..76c8d3dc 100644
--- a/src/displayapp/screens/WatchFaceDigital.h
+++ b/src/displayapp/screens/WatchFaceDigital.h
@@ -45,7 +45,7 @@ namespace Pinetime {
         Pinetime::Controllers::DateTime::Days currentDayOfWeek = Pinetime::Controllers::DateTime::Days::Unknown;
         uint8_t currentDay = 0;
 
-        DirtyValue<int> batteryPercentRemaining {};
+        DirtyValue<uint8_t> batteryPercentRemaining {};
         DirtyValue<bool> bleState {};
         DirtyValue<std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds>> currentDateTime {};
         DirtyValue<bool> motionSensorOk {};
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 17e78230..eb29638a 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -330,6 +330,11 @@ void SystemTask::Work() {
       }
     }
 
+    if (xTaskGetTickCount() - batteryNotificationTick > batteryNotificationPeriod) {
+      nimbleController.NotifyBatteryLevel(batteryController.PercentRemaining());
+      batteryNotificationTick = xTaskGetTickCount();
+    }
+
     monitor.Process();
     uint32_t systick_counter = nrf_rtc_counter_get(portNRF_RTC_REG);
     dateTimeController.UpdateTime(systick_counter);
diff --git a/src/systemtask/SystemTask.h b/src/systemtask/SystemTask.h
index bfb97264..f8cf6370 100644
--- a/src/systemtask/SystemTask.h
+++ b/src/systemtask/SystemTask.h
@@ -135,6 +135,8 @@ namespace Pinetime {
       void GoToRunning();
       void UpdateMotion();
       bool stepCounterMustBeReset = false;
+      static constexpr TickType_t batteryNotificationPeriod = 1000 * 60 * 10; // 1 tick ~= 1ms. 1ms * 60 * 10 = 10 minutes
+      TickType_t batteryNotificationTick = 0;
 
 #if configUSE_TRACE_FACILITY == 1
       SystemMonitor<FreeRtosMonitor> monitor;

From 748e31421dddf509339dd01ece80e3a7ac76e04d Mon Sep 17 00:00:00 2001
From: kieranc <kieranc@gmail.com>
Date: Sun, 11 Jul 2021 17:48:16 +0200
Subject: [PATCH 54/58] Modify status text in BatteryInfo so it fits on screen
 (#437)

* Modify status text in BatteryInfo so it fits on screen
---
 src/displayapp/screens/BatteryInfo.cpp | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/displayapp/screens/BatteryInfo.cpp b/src/displayapp/screens/BatteryInfo.cpp
index 87c8b4bb..7e055762 100644
--- a/src/displayapp/screens/BatteryInfo.cpp
+++ b/src/displayapp/screens/BatteryInfo.cpp
@@ -102,16 +102,16 @@ void BatteryInfo::UpdateScreen() {
   if (batteryPercent >= 0) {
     if (batteryController.IsCharging() and batteryPercent < 100) {
       lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_RED);
-      lv_label_set_text_static(status, "Battery charging");
+      lv_label_set_text_static(status, "Charging");
     } else if (batteryPercent == 100) {
       lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_BLUE);
-      lv_label_set_text_static(status, "Battery is fully charged");
+      lv_label_set_text_static(status, "Fully charged");
     } else if (batteryPercent < 10) {
       lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_YELLOW);
-      lv_label_set_text_static(status, "Battery is low");
+      lv_label_set_text_static(status, "Battery low");
     } else {
       lv_obj_set_style_local_bg_color(charging_bar, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_GREEN);
-      lv_label_set_text_static(status, "Battery discharging");
+      lv_label_set_text_static(status, "Discharging");
     }
 
     lv_label_set_text_fmt(percent, "%02i%%", batteryPercent);

From 829b16a303fdf1d143e15ad53aa3a39251671fe0 Mon Sep 17 00:00:00 2001
From: Cameron Radmore <radmorecameron@gmail.com>
Date: Sun, 11 Jul 2021 13:46:15 -0400
Subject: [PATCH 55/58] Add "metronome" to apps in readme (#479)

---
 README.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/README.md b/README.md
index 755f1905..bd23c867 100644
--- a/README.md
+++ b/README.md
@@ -53,6 +53,7 @@ As of now, here is the list of achievements of this project:
     * Two (2048 clone game)
     * Stopwatch (with all the necessary functions such as play, pause, lap, stop)
     * Motion sensor and step counter (displays the number of steps and the state of the motion sensor in real-time)
+    * Metronome (vibrates to a given bpm with a customizable beats per bar)
  - User settings:
     * Display timeout
     * Wake-up condition

From 7fee2c25894a3113a580d98c947048152af977d9 Mon Sep 17 00:00:00 2001
From: wilsonjwco <87050999+wilsonjwco@users.noreply.github.com>
Date: Sun, 11 Jul 2021 11:47:24 -0600
Subject: [PATCH 56/58] Update buildAndProgram.md (#477)

Corrected typo in example usage of cmake BUILD_DFU option. Changed from -BUILD_DFU=1 to -DBUILD_DFU=1
---
 doc/buildAndProgram.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/doc/buildAndProgram.md b/doc/buildAndProgram.md
index afd526e0..5fe593ae 100644
--- a/doc/buildAndProgram.md
+++ b/doc/buildAndProgram.md
@@ -27,7 +27,7 @@ CMake configures the project according to variables you specify the command line
 **NRFJPROG**|Path to the NRFJProg executable. Used only if `USE_JLINK` is 1.|`-DNRFJPROG=/opt/nrfjprog/nrfjprog`
 **GDB_CLIENT_BIN_PATH**|Path to arm-none-eabi-gdb executable. Used only if `USE_GDB_CLIENT` is 1.|`-DGDB_CLIENT_BIN_PATH=/home/jf/nrf52/gcc-arm-none-eabi-9-2019-q4-major/bin/arm-none-eabi-gdb`
 **GDB_CLIENT_TARGET_REMOTE**|Target remote connection string. Used only if `USE_GDB_CLIENT` is 1.|`-DGDB_CLIENT_TARGET_REMOTE=/dev/ttyACM0`
-**BUILD_DFU (\*\*)**|Build DFU files while building (needs [adafruit-nrfutil](https://github.com/adafruit/Adafruit_nRF52_nrfutil)).|`-BUILD_DFU=1`
+**BUILD_DFU (\*\*)**|Build DFU files while building (needs [adafruit-nrfutil](https://github.com/adafruit/Adafruit_nRF52_nrfutil)).|`-DBUILD_DFU=1`
 
 ####(**) Note about **CMAKE_BUILD_TYPE**:
 By default, this variable is set to *Release*. It compiles the code with size and speed optimizations. We use this value for all the binaries we publish when we [release](https://github.com/JF002/InfiniTime/releases) new versions of InfiniTime.

From 4f378e8726fdcff72598aa6ed12eeaa6b3e61355 Mon Sep 17 00:00:00 2001
From: Jonathan Vander Mey <jvandermey@evertz.com>
Date: Sun, 11 Jul 2021 14:18:07 -0400
Subject: [PATCH 57/58] Refactor trig functions into LUT (#476)

Replaced the use of the standard library trig functions with a LUT-based
implementation instead. The standard library implementations produce
more accurate results but the usage here doesn't need that. This ends up
saving nearly 7kB of binary size.
---
 src/displayapp/screens/WatchFaceAnalog.cpp | 76 +++++++++++++---------
 1 file changed, 44 insertions(+), 32 deletions(-)

diff --git a/src/displayapp/screens/WatchFaceAnalog.cpp b/src/displayapp/screens/WatchFaceAnalog.cpp
index 0051408c..c589c320 100644
--- a/src/displayapp/screens/WatchFaceAnalog.cpp
+++ b/src/displayapp/screens/WatchFaceAnalog.cpp
@@ -5,27 +5,44 @@
 #include "Symbols.h"
 #include "NotificationIcon.h"
 
-#include <cmath>
-
 LV_IMG_DECLARE(bg_clock);
 
 using namespace Pinetime::Applications::Screens;
 
-#define HOUR_LENGTH   70
-#define MINUTE_LENGTH 90
-#define SECOND_LENGTH 110
-#define PI            3.14159265358979323846
+namespace {
 
-// ##
-static int16_t coordinate_x_relocate(int16_t x) {
-  return ((x) + LV_HOR_RES / 2);
+constexpr auto HOUR_LENGTH = 70;
+constexpr auto MINUTE_LENGTH = 90;
+constexpr auto SECOND_LENGTH = 110;
+
+// sin(90) = 1 so the value of _lv_trigo_sin(90) is the scaling factor
+const auto LV_TRIG_SCALE = _lv_trigo_sin(90);
+
+int16_t cosine(int16_t angle) {
+  return _lv_trigo_sin(angle + 90);
 }
 
-// ##
-static int16_t coordinate_y_relocate(int16_t y) {
-  return (((y) -LV_HOR_RES / 2) < 0) ? (0 - ((y) -LV_HOR_RES / 2)) : ((y) -LV_HOR_RES / 2);
+int16_t sine(int16_t angle) {
+  return _lv_trigo_sin(angle);
 }
 
+int16_t coordinate_x_relocate(int16_t x) {
+  return (x + LV_HOR_RES / 2);
+}
+
+int16_t coordinate_y_relocate(int16_t y) {
+  return std::abs(y - LV_HOR_RES / 2);
+}
+
+lv_point_t coordinate_relocate(int16_t radius, int16_t angle) {
+  return lv_point_t{
+    .x = coordinate_x_relocate(radius * static_cast<int32_t>(sine(angle)) / LV_TRIG_SCALE),
+    .y = coordinate_y_relocate(radius * static_cast<int32_t>(cosine(angle)) / LV_TRIG_SCALE)
+  };
+}
+
+} // namespace
+
 WatchFaceAnalog::WatchFaceAnalog(Pinetime::Applications::DisplayApp* app,
                                  Controllers::DateTime& dateTimeController,
                                  Controllers::Battery& batteryController,
@@ -123,15 +140,12 @@ void WatchFaceAnalog::UpdateClock() {
   second = dateTimeController.Seconds();
 
   if (sMinute != minute) {
-    minute_point[0].x = coordinate_x_relocate(30 * sin(minute * 6 * PI / 180));
-    minute_point[0].y = coordinate_y_relocate(30 * cos(minute * 6 * PI / 180));
-    minute_point[1].x = coordinate_x_relocate(MINUTE_LENGTH * sin(minute * 6 * PI / 180));
-    minute_point[1].y = coordinate_y_relocate(MINUTE_LENGTH * cos(minute * 6 * PI / 180));
+    auto const angle = minute * 6;
+    minute_point[0] = coordinate_relocate(30, angle);
+    minute_point[1] = coordinate_relocate(MINUTE_LENGTH, angle);
 
-    minute_point_trace[0].x = coordinate_x_relocate(5 * sin(minute * 6 * PI / 180));
-    minute_point_trace[0].y = coordinate_y_relocate(5 * cos(minute * 6 * PI / 180));
-    minute_point_trace[1].x = coordinate_x_relocate(31 * sin(minute * 6 * PI / 180));
-    minute_point_trace[1].y = coordinate_y_relocate(31 * cos(minute * 6 * PI / 180));
+    minute_point_trace[0] = coordinate_relocate(5, angle);
+    minute_point_trace[1] = coordinate_relocate(31, angle);
 
     lv_line_set_points(minute_body, minute_point, 2);
     lv_line_set_points(minute_body_trace, minute_point_trace, 2);
@@ -140,15 +154,13 @@ void WatchFaceAnalog::UpdateClock() {
   if (sHour != hour || sMinute != minute) {
     sHour = hour;
     sMinute = minute;
-    hour_point[0].x = coordinate_x_relocate(30 * sin((((hour > 12 ? hour - 12 : hour) * 30) + (minute * 0.5)) * PI / 180));
-    hour_point[0].y = coordinate_y_relocate(30 * cos((((hour > 12 ? hour - 12 : hour) * 30) + (minute * 0.5)) * PI / 180));
-    hour_point[1].x = coordinate_x_relocate(HOUR_LENGTH * sin((((hour > 12 ? hour - 12 : hour) * 30) + (minute * 0.5)) * PI / 180));
-    hour_point[1].y = coordinate_y_relocate(HOUR_LENGTH * cos((((hour > 12 ? hour - 12 : hour) * 30) + (minute * 0.5)) * PI / 180));
+    auto const angle = (hour * 30 + minute / 2);
 
-    hour_point_trace[0].x = coordinate_x_relocate(5 * sin((((hour > 12 ? hour - 12 : hour) * 30) + (minute * 0.5)) * PI / 180));
-    hour_point_trace[0].y = coordinate_y_relocate(5 * cos((((hour > 12 ? hour - 12 : hour) * 30) + (minute * 0.5)) * PI / 180));
-    hour_point_trace[1].x = coordinate_x_relocate(31 * sin((((hour > 12 ? hour - 12 : hour) * 30) + (minute * 0.5)) * PI / 180));
-    hour_point_trace[1].y = coordinate_y_relocate(31 * cos((((hour > 12 ? hour - 12 : hour) * 30) + (minute * 0.5)) * PI / 180));
+    hour_point[0] = coordinate_relocate(30, angle);
+    hour_point[1] = coordinate_relocate(HOUR_LENGTH, angle);
+
+    hour_point_trace[0] = coordinate_relocate(5, angle);
+    hour_point_trace[1] = coordinate_relocate(31, angle);
 
     lv_line_set_points(hour_body, hour_point, 2);
     lv_line_set_points(hour_body_trace, hour_point_trace, 2);
@@ -156,10 +168,10 @@ void WatchFaceAnalog::UpdateClock() {
 
   if (sSecond != second) {
     sSecond = second;
-    second_point[0].x = coordinate_x_relocate(20 * sin((180 + second * 6) * PI / 180));
-    second_point[0].y = coordinate_y_relocate(20 * cos((180 + second * 6) * PI / 180));
-    second_point[1].x = coordinate_x_relocate(SECOND_LENGTH * sin(second * 6 * PI / 180));
-    second_point[1].y = coordinate_y_relocate(SECOND_LENGTH * cos(second * 6 * PI / 180));
+    auto const angle = second * 6;
+
+    second_point[0] = coordinate_relocate(-20, angle);
+    second_point[1] = coordinate_relocate(SECOND_LENGTH, angle);
     lv_line_set_points(second_body, second_point, 2);
   }
 }

From a5616b0bc8ea385c3c70ae700498c8abe07f647b Mon Sep 17 00:00:00 2001
From: Riku Isokoski <riksu9000@gmail.com>
Date: Tue, 13 Jul 2021 21:42:59 +0300
Subject: [PATCH 58/58] Adjust displayapp delay to compensate time spent (#482)

---
 src/displayapp/DisplayApp.cpp | 11 +++++++++--
 src/displayapp/DisplayApp.h   |  1 +
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index 04ebd2d3..6d66afe5 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -114,6 +114,7 @@ uint32_t count = 0;
 bool toggle = true;
 void DisplayApp::Refresh() {
   TickType_t queueTimeout;
+  TickType_t delta;
   switch (state) {
     case States::Idle:
       IdleState();
@@ -121,7 +122,11 @@ void DisplayApp::Refresh() {
       break;
     case States::Running:
       RunningState();
-      queueTimeout = 20;
+      delta = xTaskGetTickCount() - lastWakeTime;
+      if (delta > 20) {
+        delta = 20;
+      }
+      queueTimeout = 20 - delta;
       break;
     default:
       queueTimeout = portMAX_DELAY;
@@ -129,7 +134,9 @@ void DisplayApp::Refresh() {
   }
 
   Messages msg;
-  if (xQueueReceive(msgQueue, &msg, queueTimeout)) {
+  bool messageReceived = xQueueReceive(msgQueue, &msg, queueTimeout);
+  lastWakeTime = xTaskGetTickCount();
+  if (messageReceived) {
     switch (msg) {
       case Messages::GoToSleep:
         brightnessController.Backup();
diff --git a/src/displayapp/DisplayApp.h b/src/displayapp/DisplayApp.h
index 73a7cc36..f4573ab7 100644
--- a/src/displayapp/DisplayApp.h
+++ b/src/displayapp/DisplayApp.h
@@ -114,6 +114,7 @@ namespace Pinetime {
 
       Apps nextApp = Apps::None;
       DisplayApp::FullRefreshDirections nextDirection;
+      TickType_t lastWakeTime;
     };
   }
 }