From 79f8528a1861b0863436fc6c2c917e69bf947472 Mon Sep 17 00:00:00 2001 From: Rarder44 Date: Wed, 23 Nov 2022 17:24:19 +0100 Subject: [PATCH 0001/1725] First step to music implementation - proxy now handles music messages - added TODO in the app - implemented a settings for the app --- apps/messages_light/messages_light.app.js | 148 +++++++++++------- apps/messages_light/messages_light.boot.js | 4 +- .../messages_light.messagesProxy.js | 43 ++++- apps/messages_light/messages_light.music.js | 2 + .../messages_light/messages_light.settings.js | 31 +++- 5 files changed, 162 insertions(+), 66 deletions(-) create mode 100644 apps/messages_light/messages_light.music.js diff --git a/apps/messages_light/messages_light.app.js b/apps/messages_light/messages_light.app.js index 5d5363d38..daf173ab8 100644 --- a/apps/messages_light/messages_light.app.js +++ b/apps/messages_light/messages_light.app.js @@ -10,6 +10,11 @@ } */ + + +//TODO: quando apro l'app dal menu principale ( quindi non c'è niente nella queue) +//visualizzo l'interfaccia per la musica ( o un settings che mi sceglie di aprire la musica? ) + let LOG=function(){ //print.apply(null, arguments); } @@ -38,6 +43,15 @@ let settings= (()=>{ let EventQueue=[]; //in posizione 0, c'è quello attualmente visualizzato let callInProgress=false; +//TODO: implemento il resto ( nel template ) +var music=undefined; +//se definita, vuol dire che è arrivata una richiesta di musica -> dopo aver fino la queue di messaggi, ri-visualizza la schermata di musica +//se premo "back" in quella di musica -> esco dall'app +//template qua sotto +/*{ + artist:"", + track:"", +}*/ @@ -46,68 +60,89 @@ var manageEvent = function(event) { event.new=true; - LOG("manageEvent"); - if( event.id=="call") - { - showCall(event); - return; + LOG(event); + + + if( event.id=="call"){ + showCall(event); } - switch(event.t) - { - case "add": - EventQueue.unshift(event); + else if( event.id=="music"){ + //TODO: + //se c'è qualcosa nella queue, quindi app già aperta, + //se musicRunngin==true, vuol dire che c'è già della musica in ascolto prima + // quindi non mostro nulla - if(!callInProgress) - showMessage(event); - break; + //se prima era musicRunngin == false + //NON DOVREBBE NEANCHE ARRIVA QUA ( da codice nel proxy ) - case "modify": - //cerco l'evento nella lista, se lo trovo, lo modifico, altrimenti lo pusho - let find=false; - EventQueue.forEach(element => { - if(element.id == event.id) - { - find=true; - Object.assign(element,event); - } - }); - if(!find) //se non l'ho trovato, lo aggiungo in fondo + + + //LOGICA DA QUA-> + //aggiorno i dati della musica + //quindi se mi arriva la notifica vuol dire che: + //l'app l'ho appena aperta -> visualizzo la schermata di musica + //oppure + //l'app era già stata aperta in modalità musica -> non faccio nulla ( avendo già aggiornato i dati della musica ) + //POI + //se c'è roba nella queue -> NON visualizzo la schermata di musica ( quando finirà la queue, la next visualizzerà la musica ) + //se non c'è roba nella queue -> aggiorno la visualizzazione + + + } + else{ + + //----------------- + //notification + //----------------- + if(event.t=="add"){ EventQueue.unshift(event); - - if(!callInProgress) - showMessage(event); - break; - - case "remove": - - //se non c'è niente nella queue e non c'è una chiamata in corso - if( EventQueue.length==0 && !callInProgress) - next(); - - //se l'id è uguale a quello attualmente visualizzato ( e non siamo in chiamata ) - if(!callInProgress && EventQueue[0] !== undefined && EventQueue[0].id == event.id) - next(); //passo al messaggio successivo ( per la rimozione ci penserà la next ) - - else{ - //altrimenti rimuovo tutti gli elementi con quell'id( creando un nuovo array ) - let newEventQueue=[]; + + if(!callInProgress) + showMessage(event); + } + else if(event.t=="modify"){ + //cerco l'evento nella lista, se lo trovo, lo modifico, altrimenti lo pusho + let find=false; EventQueue.forEach(element => { - if(element.id != event.id) - newEventQueue.push(element); + if(element.id == event.id) + { + find=true; + Object.assign(element,event); + } }); - EventQueue=newEventQueue; - } - - + if(!find) //se non l'ho trovato, lo aggiungo in fondo + EventQueue.unshift(event); + + if(!callInProgress) + showMessage(event); + } + else if(event.t=="remove"){ + //se non c'è niente nella queue e non c'è una chiamata in corso + if( EventQueue.length==0 && !callInProgress) + next(); + + //se l'id è uguale a quello attualmente visualizzato ( e non siamo in chiamata ) + if(!callInProgress && EventQueue[0] !== undefined && EventQueue[0].id == event.id) + next(); //passo al messaggio successivo ( per la rimozione ci penserà la next ) + + else{ + //altrimenti rimuovo tutti gli elementi con quell'id( creando un nuovo array ) + let newEventQueue=[]; + EventQueue.forEach(element => { + if(element.id != event.id) + newEventQueue.push(element); + }); + EventQueue=newEventQueue; + } + } + //----------------- + //notification + //----------------- + - - break; - case "musicstate": - case "musicinfo": - - break; } + }; @@ -296,7 +331,7 @@ let next=function(){ -let showMapMessage=function(msg) { +let showMap=function(msg) { g.clearRect(Bangle.appRect); PrintMessageStrings({body:"Not implemented!"}); @@ -304,6 +339,11 @@ let showMapMessage=function(msg) { } +let showMusic=function(msg){ + + + //TODO: implementa tutte le funzionalità per visualizza la track in corso e gestire la musica +} diff --git a/apps/messages_light/messages_light.boot.js b/apps/messages_light/messages_light.boot.js index 741d08b96..db93615ac 100644 --- a/apps/messages_light/messages_light.boot.js +++ b/apps/messages_light/messages_light.boot.js @@ -25,9 +25,7 @@ Bangle.on("call", messageBootManager);*/ //override require to filter require("message") global.require_real=global.require; global.require = (_require => file => { - if (file==="messages") file = "messagesProxy"; - //else if (file==="messages_REAL") file = "messages"; //backdoor to real message - + if (file==="messages") file = "messagesProxy"; return _require(file); })(require); diff --git a/apps/messages_light/messages_light.messagesProxy.js b/apps/messages_light/messages_light.messagesProxy.js index 723397057..8d159bfad 100644 --- a/apps/messages_light/messages_light.messagesProxy.js +++ b/apps/messages_light/messages_light.messagesProxy.js @@ -1,24 +1,51 @@ + +let openMusic = function() { + // only read settings file for first music message + if ("undefined"==typeof exports._openMusic) { + const SETTINGS_FILE_NAME="messages_light.settings.json"; + exports._openMusic = !!((require('Storage').readJSON(SETTINGS_FILE_NAME, true) || {}).openMusic); + } + return exports._openMusic; +} + //gestisco il messaggio a modo mio exports.pushMessage = function(event) { - //TODO: now i can't handle the music, so i call the real message app - if( event.id=="music") return require_real("messages").pushMessage(event); + //TODO: rimuovere questa riga per far funzionare la musica tramite l'app "message_light" + if( event.id=="music") return require_real("messages").pushMessage(event); + - //se l'app non è aperta + let callApp; + //se l'app non è aperta if ("undefined"==typeof manageEvent) { if(event.t=="remove") return; //l'app non è aperta, non c'è nessun messaggio da rimuovere dalla queue -> non lancio l'app - //la apro - require_real("Storage").writeJSON("messages_light.NewEvent.json",event); - load("messages_light.app.js"); + //chiamo la load dell'app + callApp=function(event){ + require_real("Storage").writeJSON("messages_light.NewEvent.json",event); + load("messages_light.app.js"); + } } else { - //altrimenti gli dico di gestire il messaggio - manageEvent(event); + //dico all'app di gestire l'evento + callApp=function(event){ + manageEvent(event); + } } + + + //se il messaggio è una notifica -> gestisco l'evento + //oppure + //se music è definita ( vuol dire che l'app è aperta e mi è arrivata prima una richiesta di apertura in modalità "musica" via notifica o via launcher ) -> gestisco l'evento + //oppure + //se se è una notifica di musica ( definito dal primo controllo ) e nei settings ho salvato di aprire l'app in musica -> gestisco l'evento + + if( event.id!="music" || typeof music !== "undefined" || openMusic()) + callApp(event); + } diff --git a/apps/messages_light/messages_light.music.js b/apps/messages_light/messages_light.music.js new file mode 100644 index 000000000..86a2b8f68 --- /dev/null +++ b/apps/messages_light/messages_light.music.js @@ -0,0 +1,2 @@ +//TODO: +//codice che verrà evalutato dall'app per caricare l'interfaccia della musica \ No newline at end of file diff --git a/apps/messages_light/messages_light.settings.js b/apps/messages_light/messages_light.settings.js index b7197c70a..057a38a3f 100644 --- a/apps/messages_light/messages_light.settings.js +++ b/apps/messages_light/messages_light.settings.js @@ -1 +1,30 @@ -eval(require("Storage").read("messages.settings.js")); +//eval(require("Storage").read("messages.settings.js")); +(function(back) { + const SETTINGS_FILE_NAME="messages_light.settings.json"; + let settings = function() { + let settings = require('Storage').readJSON(SETTINGS_FILE_NAME, true) || {}; + settings.openMusic=!!settings.openMusic; + //settings.unlockWatch=!!settings.unlockWatch; + return settings; + } + function updateSetting(setting, value) { + let settings = require('Storage').readJSON(SETTINGS_FILE_NAME, true) || {}; + settings[setting] = value; + require('Storage').writeJSON(SETTINGS_FILE_NAME, settings); + } + + var mainmenu = { + "" : { "title" : /*LANG*/"Messages Light" }, + "< Back" : back, + /*LANG*/'Auto-Open Music': { + value: !!settings().openMusic, + onchange: v => updateSetting("openMusic", v) + } + /*,/LANG/'Unlock Watch': { + value: !!settings().unlockWatch, + onchange: v => updateSetting("unlockWatch", v) + },*/ + }; + E.showMenu(mainmenu); + }); + \ No newline at end of file From 1d22ea404bd76fb6dadb728905eeba6bef3baf94 Mon Sep 17 00:00:00 2001 From: Rarder44 Date: Wed, 23 Nov 2022 18:50:30 +0100 Subject: [PATCH 0002/1725] music implementation progress --- apps/messages_light/messages_light.app.js | 99 ++++++++++++++++----- apps/messages_light/messages_light.music.js | 7 +- apps/messages_light/metadata.json | 3 +- 3 files changed, 83 insertions(+), 26 deletions(-) diff --git a/apps/messages_light/messages_light.app.js b/apps/messages_light/messages_light.app.js index daf173ab8..5b55ab762 100644 --- a/apps/messages_light/messages_light.app.js +++ b/apps/messages_light/messages_light.app.js @@ -53,6 +53,8 @@ var music=undefined; track:"", }*/ +let justOpen=true; + //TODO: RICORDARSI DI FARE IL DELETE @@ -63,32 +65,64 @@ var manageEvent = function(event) { LOG("manageEvent"); LOG(event); - if( event.id=="call"){ showCall(event); } else if( event.id=="music"){ - //TODO: - //se c'è qualcosa nella queue, quindi app già aperta, - //se musicRunngin==true, vuol dire che c'è già della musica in ascolto prima - // quindi non mostro nulla - //se prima era musicRunngin == false - //NON DOVREBBE NEANCHE ARRIVA QUA ( da codice nel proxy ) + + /* + //DEBUG -> save the event into file + let musicLogFile="music_log"; + let logMusic = require('Storage').readJSON(musicLogFile, true) || []; + logMusic.push(event); + require('Storage').writeJSON(musicLogFile, logMusic); + */ + + + //se c'è qualcosa nella queue, quindi app già aperta, + //se musicRunngin==true, vuol dire che c'è già della musica in ascolto prima + // quindi non mostro nulla + + //se prima era musicRunngin == false + //NON DOVREBBE NEANCHE ARRIVA QUA ( da codice nel proxy ) - //LOGICA DA QUA-> - //aggiorno i dati della musica - //quindi se mi arriva la notifica vuol dire che: - //l'app l'ho appena aperta -> visualizzo la schermata di musica - //oppure - //l'app era già stata aperta in modalità musica -> non faccio nulla ( avendo già aggiornato i dati della musica ) - //POI - //se c'è roba nella queue -> NON visualizzo la schermata di musica ( quando finirà la queue, la next visualizzerà la musica ) - //se non c'è roba nella queue -> aggiorno la visualizzazione + //LOGICA DA QUA-> + //aggiorno i dati della musica - + + + LOG("old music",music) + LOG("music event",event) + if( music==undefined) music={}; + Object.assign(music,event); + //tolgo tutto quello che non mi serve salvare ( non lo faccio prima perchè non so se l'event verrà usato da altri) + delete music.t; + delete music.id; + delete music.title; + delete music.new; + LOG("joined",music) + + + + //quindi se mi arriva la notifica vuol dire che: + //l'app l'ho appena aperta -> visualizzo la schermata di musica + //oppure + //l'app era già stata aperta in modalità musica -> non faccio nulla ( avendo già aggiornato i dati della musica ) + + //POI + //se c'è roba nella queue -> NON visualizzo la schermata di musica ( quando finirà la queue, la next visualizzerà la musica ) + //se non c'è roba nella queue -> aggiorno la visualizzazione + + + // ho unito le due condizioni di prima + + if( justOpen || EventQueue.length==0) + showMusic(); + + } else{ @@ -293,7 +327,17 @@ let showCall = function(msg) +let musicCode=undefined; +//visualizza cioè che c'è nella variabile music ( se undefined, richiama la next) +let showMusic=function(){ + if( music===undefined) next(); //TOCHECK: controllo rimuovibile? + //carico dinamicamente il codice per la musica ( non mi serve sempre ) + if(musicCode===undefined) musicCode = require("messages_light.music.js") //eval(require("Storage").read("messages_light.music.js")); + + musicCode.show(); + +} @@ -312,7 +356,16 @@ let next=function(){ if( EventQueue.length == 0) { LOG("no element in queue - closing") - setTimeout(_ => load()); + if( music!==undefined) + { + LOG("opened/received music -> show music"); + showMusic(); + } + else + { + LOG("no music -> close") + setTimeout(_ => load()); + } return; } @@ -339,12 +392,8 @@ let showMap=function(msg) { } -let showMusic=function(msg){ - //TODO: implementa tutte le funzionalità per visualizza la track in corso e gestire la musica -} - let CallBuzzTimer=null; @@ -525,9 +574,11 @@ let main = function(){ manageEvent(eventToShow); else { - LOG("file not found!"); - setTimeout(_ => load(), 0); + LOG("file event not found! -> Open in music mode"); + music={}; //imposto un oggetto nella variabile music, cosi non viene chiuso il programma dalla showMusic + setTimeout(_ => showMusic(), 0); } + justOpen=false; }; diff --git a/apps/messages_light/messages_light.music.js b/apps/messages_light/messages_light.music.js index 86a2b8f68..a9599784e 100644 --- a/apps/messages_light/messages_light.music.js +++ b/apps/messages_light/messages_light.music.js @@ -1,2 +1,7 @@ //TODO: -//codice che verrà evalutato dall'app per caricare l'interfaccia della musica \ No newline at end of file +//codice che verrà evalutato dall'app per caricare l'interfaccia della musica + + +exports.show = function() { + g.drawString("music",20,20); +} \ No newline at end of file diff --git a/apps/messages_light/metadata.json b/apps/messages_light/metadata.json index 3515a75c2..30b6cb288 100644 --- a/apps/messages_light/metadata.json +++ b/apps/messages_light/metadata.json @@ -14,7 +14,8 @@ {"name":"messages_light.settings.js","url":"messages_light.settings.js"}, {"name":"messages_light.img","url":"app-icon.js","evaluate":true}, {"name":"messagesProxy","url":"messages_light.messagesProxy.js"}, - {"name":"messages_light.boot.js","url":"messages_light.boot.js"} + {"name":"messages_light.boot.js","url":"messages_light.boot.js"}, + {"name":"messages_light.music.js","url":"messages_light.music.js"} ], "data": [{"name":"messages_light.settings.json"},{"name":"messages_light.NewMessage.json"}], "screenshots": [{"url":"screenshot-notify.png"} ,{"url":"screenshot-long-text1.png"},{"url":"screenshot-long-text2.png"}, {"url":"screenshot-call.png"} ] From 08cac4a389e8473854889e3fefc5f8b0071470ec Mon Sep 17 00:00:00 2001 From: Rarder44 Date: Wed, 23 Nov 2022 23:10:49 +0100 Subject: [PATCH 0003/1725] added timeout --- apps/messages_light/messages_light.app.js | 52 ++++++++++++++++--- .../messages_light/messages_light.settings.js | 16 +++--- 2 files changed, 55 insertions(+), 13 deletions(-) diff --git a/apps/messages_light/messages_light.app.js b/apps/messages_light/messages_light.app.js index 5b55ab762..6dcde08b1 100644 --- a/apps/messages_light/messages_light.app.js +++ b/apps/messages_light/messages_light.app.js @@ -20,8 +20,6 @@ let LOG=function(){ } - - let settings= (()=>{ let tmp={}; tmp.NewEventFileName="messages_light.NewEvent.json"; @@ -36,10 +34,15 @@ let settings= (()=>{ tmp.colBg = g.theme.dark ? "#000":"#fff"; tmp.colLock = g.theme.dark ? "#ff0000":"#ff0000"; - tmp.quiet=((require('Storage').readJSON('setting.json', 1) || {}).quiet) + tmp.quiet=!!((require('Storage').readJSON("setting.json", true) || {}).quiet); + tmp.timeOut=(require('Storage').readJSON("messages_light.settings.json", true) || {}).timeOut || "Off"; return tmp; })(); + + + + let EventQueue=[]; //in posizione 0, c'è quello attualmente visualizzato let callInProgress=false; @@ -53,7 +56,7 @@ var music=undefined; track:"", }*/ -let justOpen=true; +let justOpened=true; @@ -119,7 +122,7 @@ var manageEvent = function(event) { // ho unito le due condizioni di prima - if( justOpen || EventQueue.length==0) + if( justOpened || EventQueue.length==0) showMusic(); @@ -187,6 +190,10 @@ var manageEvent = function(event) { let showMessage = function(msg){ LOG("showMessage"); LOG(msg); + + updateTimeout(); + + g.setBgColor(settings.colBg); @@ -277,7 +284,7 @@ let showCall = function(msg) } callInProgress=true; - + updateTimeout(); //se è una chiamata ( o una nuova chiamata, diversa dalla precedente ) @@ -532,6 +539,7 @@ let PrintMessageStrings=function(msg) let doubleTapUnlock=function(data) { + updateTimeout(); if( data.double) //solo se in double { Bangle.setLocked(false); @@ -539,6 +547,8 @@ let doubleTapUnlock=function(data) { } } let toushScroll=function(button, xy) { + updateTimeout(); + let height=176; //g.getHeight(); -> 176 B2 height/=2; @@ -553,6 +563,33 @@ let toushScroll=function(button, xy) { } + +let timeout; +const updateTimeout = function(){ +if (settings.timeOut!="Off"){ + removeTimeout(); + if( callInProgress) return; //c'è una chiamata in corso -> no timeout + if( music!=undefined && EventQueue.length==0 ) return; //ho aperto l'interfaccia della musica e non ho messaggi davanti -> no timeout + + + let time=parseInt(settings.timeOut); //the "s" will be trimmed by the parseInt + timeout = setTimeout(next,time*1000); //next or Bangle.showClock/load()??? + } +}; +const removeTimeout=function(){ + if (timeout) clearTimeout(timeout); +} + + +//not currently used -> for fast load? +let unsetApp=function(){ + delete(music); + delete(manageEvent); + removeTimeout(); +} + + + let main = function(){ LOG("Main"); @@ -578,7 +615,8 @@ let main = function(){ music={}; //imposto un oggetto nella variabile music, cosi non viene chiuso il programma dalla showMusic setTimeout(_ => showMusic(), 0); } - justOpen=false; + justOpened=false; + }; diff --git a/apps/messages_light/messages_light.settings.js b/apps/messages_light/messages_light.settings.js index 057a38a3f..2143dee80 100644 --- a/apps/messages_light/messages_light.settings.js +++ b/apps/messages_light/messages_light.settings.js @@ -12,18 +12,22 @@ settings[setting] = value; require('Storage').writeJSON(SETTINGS_FILE_NAME, settings); } - + const timeOutChoices = [/*LANG*/"Off", "10s", "15s", "20s", "30s"]; var mainmenu = { "" : { "title" : /*LANG*/"Messages Light" }, "< Back" : back, /*LANG*/'Auto-Open Music': { value: !!settings().openMusic, onchange: v => updateSetting("openMusic", v) - } - /*,/LANG/'Unlock Watch': { - value: !!settings().unlockWatch, - onchange: v => updateSetting("unlockWatch", v) - },*/ + }, + /*LANG*/'Time Out': { + value: timeOutChoices.indexOf(settings.timeOut), + min: 0, max: timeOutChoices.length-1, + format: v => timeOutChoices[v], + onchange: m => { + updateSetting("timeOut", timeOutChoices[m]); + } + }, }; E.showMenu(mainmenu); }); From a1097a3eea26442cbcbc1bf2ce20a46bec7bb746 Mon Sep 17 00:00:00 2001 From: lauzonhomeschool <85599144+lauzonhomeschool@users.noreply.github.com> Date: Sun, 8 Jan 2023 23:04:13 -0500 Subject: [PATCH 0004/1725] [sched, alarm] allow dated Event repeat --- apps/alarm/ChangeLog | 1 + apps/alarm/README.md | 1 + apps/alarm/app.js | 101 +++++++++++++++++++++++++-------------- apps/alarm/metadata.json | 2 +- apps/sched/ChangeLog | 1 + apps/sched/README.md | 4 +- apps/sched/metadata.json | 2 +- apps/sched/sched.js | 28 ++++++++++- 8 files changed, 100 insertions(+), 40 deletions(-) diff --git a/apps/alarm/ChangeLog b/apps/alarm/ChangeLog index bb8a292a0..89fb08a6f 100644 --- a/apps/alarm/ChangeLog +++ b/apps/alarm/ChangeLog @@ -38,3 +38,4 @@ 0.35: Add automatic translation of more strings 0.36: alarm widget moved out of app 0.37: add message input and dated Events +0.38: Dated event repeat option diff --git a/apps/alarm/README.md b/apps/alarm/README.md index 0298e0836..9da142dab 100644 --- a/apps/alarm/README.md +++ b/apps/alarm/README.md @@ -13,6 +13,7 @@ It uses the [`sched` library](https://github.com/espruino/BangleApps/blob/master - `Repeat` → Select when the alarm will fire. You can select a predefined option (_Once_, _Every Day_, _Workdays_ or _Weekends_ or you can configure the days freely) - `New Timer` → Configure a new timer (triggered based on amount of time elapsed in hours/minutes/seconds) - `New Event` → Configure a new event (triggered based on time and date) + - `Repeat` → Alarm can be be fired only once or repeated (every X number of _days_, _weeks_, _months_ or _years_) - `Advanced` - `Scheduler settings` → Open the [Scheduler](https://github.com/espruino/BangleApps/tree/master/apps/sched) settings page, see its [README](https://github.com/espruino/BangleApps/blob/master/apps/sched/README.md) for details - `Enable All` → Enable _all_ disabled alarms & timers diff --git a/apps/alarm/app.js b/apps/alarm/app.js index 74007d04b..972080872 100644 --- a/apps/alarm/app.js +++ b/apps/alarm/app.js @@ -6,6 +6,8 @@ const firstDayOfWeek = (require("Storage").readJSON("setting.json", true) || {}) const WORKDAYS = 62 const WEEKEND = firstDayOfWeek ? 192 : 65; const EVERY_DAY = firstDayOfWeek ? 254 : 127; +const INTERVALS = ["day", "week", "month", "year"]; +const INTERVAL_LABELS = [/*LANG*/"Day", /*LANG*/"Week", /*LANG*/"Month", /*LANG*/"Year"]; const iconAlarmOn = "\0" + atob("GBiBAAAAAAAAAAYAYA4AcBx+ODn/nAP/wAf/4A/n8A/n8B/n+B/n+B/n+B/n+B/h+B/4+A/+8A//8Af/4AP/wAH/gAB+AAAAAAAAAA=="); const iconAlarmOff = "\0" + (g.theme.dark @@ -50,8 +52,9 @@ function showMainMenu() { alarms.forEach((e, index) => { var label = (e.timer ? require("time_utils").formatDuration(e.timer) - : (e.date ? `${e.date.substring(5,10)} ${require("time_utils").formatTime(e.t)}` : require("time_utils").formatTime(e.t) + (e.rp ? ` ${decodeDOW(e)}` : "")) - ) + (e.msg ? " " + e.msg : ""); + : (e.date ? `${e.date.substring(5,10)}${e.rp?"*":""} ${require("time_utils").formatTime(e.t)}` : require("time_utils").formatTime(e.t) + (e.rp ? ` ${decodeRepeat(e)}` : "")) + ) + (e.msg ? ` ${e.msg}` : ""); + menu[label] = { value: e.on ? (e.timer ? iconTimerOn : iconAlarmOn) : (e.timer ? iconTimerOff : iconAlarmOff), onchange: () => setTimeout(e.timer ? showEditTimerMenu : showEditAlarmMenu, 10, e, index) @@ -148,8 +151,8 @@ function showEditAlarmMenu(selectedAlarm, alarmIndex, withDate) { onchange: v => alarm.on = v }, /*LANG*/"Repeat": { - value: decodeDOW(alarm), - onchange: () => setTimeout(showEditRepeatMenu, 100, alarm.rp, alarm.dow, (repeat, dow) => { + value: decodeRepeat(alarm), + onchange: () => setTimeout(showEditRepeatMenu, 100, alarm.rp, date || alarm.dow, (repeat, dow) => { alarm.rp = repeat; alarm.dow = dow; prepareAlarmForSave(alarm, alarmIndex, time, date, true); @@ -174,9 +177,7 @@ function showEditAlarmMenu(selectedAlarm, alarmIndex, withDate) { }; if (!keyboard) delete menu[/*LANG*/"Message"]; - if (alarm.date || withDate) { - delete menu[/*LANG*/"Repeat"]; - } else { + if (!alarm.date) { delete menu[/*LANG*/"Day"]; delete menu[/*LANG*/"Month"]; delete menu[/*LANG*/"Year"]; @@ -225,49 +226,77 @@ function saveAndReload() { alarms.filter(e => e.timer === undefined).forEach(a => a.dow = handleFirstDayOfWeek(a.dow)); } -function decodeDOW(alarm) { +function decodeRepeat(alarm) { return alarm.rp - ? require("date_utils") - .dows(firstDayOfWeek, 2) - .map((day, index) => alarm.dow & (1 << (index + firstDayOfWeek)) ? day : "_") - .join("") - .toLowerCase() + ? (alarm.date + ? `${alarm.rp.num}*${INTERVAL_LABELS[INTERVALS.indexOf(alarm.rp.interval)]}` + : require("date_utils") + .dows(firstDayOfWeek, 2) + .map((day, index) => alarm.dow & (1 << (index + firstDayOfWeek)) ? day : "_") + .join("") + .toLowerCase()) : /*LANG*/"Once" } -function showEditRepeatMenu(repeat, dow, dowChangeCallback) { +function showEditRepeatMenu(repeat, day, dowChangeCallback) { var originalRepeat = repeat; - var originalDow = dow; - var isCustom = repeat && dow != WORKDAYS && dow != WEEKEND && dow != EVERY_DAY; + var dow; const menu = { "": { "title": /*LANG*/"Repeat Alarm" }, "< Back": () => dowChangeCallback(repeat, dow), - /*LANG*/"Once": { + /*LANG*/"Only Once": () => dowChangeCallback(false, EVERY_DAY) // The alarm will fire once. Internally it will be saved // as "fire every days" BUT the repeat flag is false so // we avoid messing up with the scheduler. - value: !repeat, - onchange: () => dowChangeCallback(false, EVERY_DAY) - }, - /*LANG*/"Workdays": { - value: repeat && dow == WORKDAYS, - onchange: () => dowChangeCallback(true, WORKDAYS) - }, - /*LANG*/"Weekends": { - value: repeat && dow == WEEKEND, - onchange: () => dowChangeCallback(true, WEEKEND) - }, - /*LANG*/"Every Day": { - value: repeat && dow == EVERY_DAY, - onchange: () => dowChangeCallback(true, EVERY_DAY) - }, - /*LANG*/"Custom": { - value: isCustom ? decodeDOW({ rp: true, dow: dow }) : false, - onchange: () => setTimeout(showCustomDaysMenu, 10, isCustom ? dow : EVERY_DAY, dowChangeCallback, originalRepeat, originalDow) - } }; + let restOfMenu; + if (typeof day === "number") { + dow = day; + var originalDow = dow; + var isCustom = repeat && dow != WORKDAYS && dow != WEEKEND && dow != EVERY_DAY; + + restOfMenu = { + /*LANG*/"Workdays": { + value: repeat && dow == WORKDAYS, + onchange: () => dowChangeCallback(true, WORKDAYS) + }, + /*LANG*/"Weekends": { + value: repeat && dow == WEEKEND, + onchange: () => dowChangeCallback(true, WEEKEND) + }, + /*LANG*/"Every Day": { + value: repeat && dow == EVERY_DAY, + onchange: () => dowChangeCallback(true, EVERY_DAY) + }, + /*LANG*/"Custom": { + value: isCustom ? decodeRepeat({ rp: true, dow: dow }) : false, + onchange: () => setTimeout(showCustomDaysMenu, 10, isCustom ? dow : EVERY_DAY, dowChangeCallback, originalRepeat, originalDow) + } + }; + } else { + var date = day; // eventually: detect day of date and configure a repeat e.g. 3rd Monday of Month + dow = EVERY_DAY; + repeat = repeat || {interval: "month", num: 1}; + + restOfMenu = { + /*LANG*/"Every": { + value: repeat.num, + min: 1, + onchange: v => repeat.num = v + }, + /*LANG*/"Interval": { + value: INTERVALS.indexOf(repeat.interval), + format: v => INTERVAL_LABELS[v], + min: 0, + max: INTERVALS.length - 1, + onchange: v => repeat.interval = INTERVALS[v] + } + }; + } + + Object.assign(menu, restOfMenu); E.showMenu(menu); } diff --git a/apps/alarm/metadata.json b/apps/alarm/metadata.json index 29e71b3d9..28d48daab 100644 --- a/apps/alarm/metadata.json +++ b/apps/alarm/metadata.json @@ -2,7 +2,7 @@ "id": "alarm", "name": "Alarms & Timers", "shortName": "Alarms", - "version": "0.37", + "version": "0.38", "description": "Set alarms and timers on your Bangle", "icon": "app.png", "tags": "tool,alarm", diff --git a/apps/sched/ChangeLog b/apps/sched/ChangeLog index 634250d48..92b04fb32 100644 --- a/apps/sched/ChangeLog +++ b/apps/sched/ChangeLog @@ -22,3 +22,4 @@ 0.19: Update clock_info to refresh periodically on active alarms/timers 0.20: Alarm dismiss and snooze events 0.21: Fix crash in clock_info +0.22: Dated event repeat option diff --git a/apps/sched/README.md b/apps/sched/README.md index c874b5577..2fb201cee 100644 --- a/apps/sched/README.md +++ b/apps/sched/README.md @@ -45,7 +45,9 @@ Alarms are stored in an array in `sched.json`, and take the form: // eg (new Date()).toISOString().substr(0,10) msg : "Eat food", // message to display. last : 0, // last day of the month we alarmed on - so we don't alarm twice in one day! (No change from 0 on timers) - rp : true, // repeat the alarm every day? + rp : true, // repeat the alarm every day? If date is given, pass an object instead of a boolean, + // e.g. repeat every 2 months: { interval: "month", num: 2 }. + // Supported intervals: day, week, month, year vibrate : "...", // OPTIONAL pattern of '.', '-' and ' ' to use for when buzzing out this alarm (defaults to '..' if not set) hidden : false, // OPTIONAL if false, the widget should not show an icon for this alarm as : false, // auto snooze diff --git a/apps/sched/metadata.json b/apps/sched/metadata.json index 2a1b0f8ca..98602318d 100644 --- a/apps/sched/metadata.json +++ b/apps/sched/metadata.json @@ -1,7 +1,7 @@ { "id": "sched", "name": "Scheduler", - "version": "0.21", + "version": "0.22", "description": "Scheduling library for alarms and timers", "icon": "app.png", "type": "scheduler", diff --git a/apps/sched/sched.js b/apps/sched/sched.js index f2f2644f9..57876ff69 100644 --- a/apps/sched/sched.js +++ b/apps/sched/sched.js @@ -42,7 +42,9 @@ function showAlarm(alarm) { if (del) { alarms.splice(alarmIndex, 1); } else { - if (!alarm.timer) { + if (alarm.date && alarm.rp) { + setNextRepeatDate(alarm); + } else if (!alarm.timer) { alarm.last = new Date().getDate(); } if (alarm.ot !== undefined) { @@ -78,6 +80,30 @@ function showAlarm(alarm) { }); } + function setNextRepeatDate(alarm) { + let date = new Date(alarm.date); + let rp = alarm.rp; + switch(rp.interval) { + case "day": + date.setDate(date.getDate() + rp.num); + break; + case "week": + date.setDate(date.getDate() + (rp.num * 7)); + break; + case "month": + if (!alarm.od) alarm.od = date.getDate(); + date = new Date(date.getFullYear(), date.getMonth() + rp.num, alarm.od); + if (date.getDate() != alarm.od) date.setDate(0); + break; + case "year": + if (!alarm.od) alarm.od = date.getDate(); + date = new Date(date.getFullYear() + rp.num, date.getMonth(), alarm.od); + if (date.getDate() != alarm.od) date.setDate(0); + break; + } + alarm.date = date.toLocalISOString().slice(0,10); + } + if ((require("Storage").readJSON("setting.json", 1) || {}).quiet > 1) return; From de40f314c7037b5ff5cf01078c17d98552d31adf Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 27 Jan 2023 13:33:46 +0000 Subject: [PATCH 0005/1725] Moved clock_info to a module --- apps/aiclock/ChangeLog | 3 +- apps/aiclock/metadata.json | 3 +- apps/bwclk/ChangeLog | 3 +- apps/bwclk/app.js | 1 + apps/bwclk/metadata.json | 3 +- apps/circlesclock/ChangeLog | 1 + apps/circlesclock/app.js | 1 + apps/circlesclock/metadata.json | 4 +- apps/clock_info/ChangeLog | 1 + apps/clock_info/README.md | 99 ++++++++++++ apps/clock_info/app-icon.js | 1 + apps/clock_info/app.png | Bin 0 -> 390 bytes .../clock_info.js => apps/clock_info/lib.js | 153 +++++++++--------- apps/clock_info/metadata.json | 18 +++ apps/clock_info/settings.js | 30 ++++ apps/lato/ChangeLog | 2 + apps/lato/metadata.json | 3 +- apps/lcdclock/ChangeLog | 1 + apps/lcdclock/metadata.json | 3 +- apps/linuxclock/ChangeLog | 3 +- apps/linuxclock/metadata.json | 4 +- apps/simplestpp/ChangeLog | 1 + apps/simplestpp/metadata.json | 3 +- apps/slopeclockpp/ChangeLog | 1 + apps/slopeclockpp/app.js | 4 +- apps/slopeclockpp/metadata.json | 3 +- 26 files changed, 257 insertions(+), 92 deletions(-) create mode 100644 apps/clock_info/ChangeLog create mode 100644 apps/clock_info/README.md create mode 100644 apps/clock_info/app-icon.js create mode 100644 apps/clock_info/app.png rename modules/clock_info.js => apps/clock_info/lib.js (76%) create mode 100644 apps/clock_info/metadata.json create mode 100644 apps/clock_info/settings.js create mode 100644 apps/lato/ChangeLog diff --git a/apps/aiclock/ChangeLog b/apps/aiclock/ChangeLog index 6d6eeb55e..43236015e 100644 --- a/apps/aiclock/ChangeLog +++ b/apps/aiclock/ChangeLog @@ -4,4 +4,5 @@ 0.04: Use widget_utils module. 0.05: Support for clkinfo. 0.06: ClockInfo Fix: Use .get instead of .show as .show is not implemented for weather etc. -0.07: Use clock_info.addInteractive instead of a custom implementation \ No newline at end of file +0.07: Use clock_info.addInteractive instead of a custom implementation +0.08: Use clock_info module as an app diff --git a/apps/aiclock/metadata.json b/apps/aiclock/metadata.json index 4c01ecaa9..d8d1e9d68 100644 --- a/apps/aiclock/metadata.json +++ b/apps/aiclock/metadata.json @@ -3,9 +3,10 @@ "name": "AI Clock", "shortName":"AI Clock", "icon": "aiclock.png", - "version":"0.07", + "version":"0.08", "readme": "README.md", "supports": ["BANGLEJS2"], + "dependencies" : { "clock_info":"module" }, "description": "A watch face that was designed by an AI (stable diffusion) and implemented by a human.", "type": "clock", "tags": "clock", diff --git a/apps/bwclk/ChangeLog b/apps/bwclk/ChangeLog index 8b82f6843..06f94854e 100644 --- a/apps/bwclk/ChangeLog +++ b/apps/bwclk/ChangeLog @@ -29,4 +29,5 @@ clkinfo.addInteractive that would cause ReferenceError. 0.28: Option to show (1) time only and (2) week of year. 0.29: use setItem of clockInfoMenu to change the active item -0.30: Use widget_utils. +0.30: Use widget_utils +0.31: Use clock_info module as an app diff --git a/apps/bwclk/app.js b/apps/bwclk/app.js index de7c7d510..770c053c2 100644 --- a/apps/bwclk/app.js +++ b/apps/bwclk/app.js @@ -132,6 +132,7 @@ clockInfoItems[0].items.unshift({ name : "nop", let clockInfoMenu = clock_info.addInteractive(clockInfoItems, { + app: "bwclk", x : 0, y: 135, w: W, diff --git a/apps/bwclk/metadata.json b/apps/bwclk/metadata.json index 39106c827..430f466b2 100644 --- a/apps/bwclk/metadata.json +++ b/apps/bwclk/metadata.json @@ -1,7 +1,7 @@ { "id": "bwclk", "name": "BW Clock", - "version": "0.30", + "version": "0.31", "description": "A very minimalistic clock.", "readme": "README.md", "icon": "app.png", @@ -9,6 +9,7 @@ "type": "clock", "tags": "clock,clkinfo", "supports": ["BANGLEJS2"], + "dependencies" : { "clock_info":"module" }, "allow_emulator": true, "storage": [ {"name":"bwclk.app.js","url":"app.js"}, diff --git a/apps/circlesclock/ChangeLog b/apps/circlesclock/ChangeLog index 01a51e094..9838ae409 100644 --- a/apps/circlesclock/ChangeLog +++ b/apps/circlesclock/ChangeLog @@ -41,3 +41,4 @@ 0.22: Fixed crash if item has no image and cutting long overflowing text 0.23: Setting circles colours per clkinfo and not position 0.24: Using suggested color from clock_info if set as default and available +0.25: Use clock_info module as an app diff --git a/apps/circlesclock/app.js b/apps/circlesclock/app.js index 583763af1..6f76ff013 100644 --- a/apps/circlesclock/app.js +++ b/apps/circlesclock/app.js @@ -356,6 +356,7 @@ for(var i=0;i Apps -> Clock Info` + +* `Defocus on Lock` - (default=on) when the watch screen auto-locks, defocus +and previously focussed Clock Infos +* `HRM` - (default=always) when does the HRM stay on? + * `Always` - When a HRM ClockInfo is shown, keep the HRM on + * `Tap` - When a HRM ClockInfo is shown, turn HRM on for 1 minute. Turn on again when tapped. +* `Max Altitude` - on clocks like [Circles Clock](https://banglejs.com/apps/?id=circlesclock) a + progress/percent indicator may be shown. The percentage for altitude will be how far towards + the Max Altitude you are. If you go higher than `Max Altitude` the correct altitude will still + be shown - the percent indicator will just read 100% + +## API (Software development) + +See http://www.espruino.com/Bangle.js+Clock+Info for details on using +this module inside your apps (or generating your own Clock Info +extensions). + +`load()` returns an array of menu objects, where each object contains a list of menu items: +* `name` : text to display and identify menu object (e.g. weather) +* `img` : a 24x24px image +* `dynamic` : if `true`, items are not constant but are sorted (e.g. calendar events sorted by date) +* `items` : menu items such as temperature, humidity, wind etc. + +Note that each item is an object with: + +* `item.name` : friendly name to identify an item (e.g. temperature) +* `item.hasRange` : if `true`, `.get` returns `v/min/max` values (for progress bar/guage) +* `item.get` : function that returns an object: + +```JS +{ + 'text' // the text to display for this item + 'short' // optional: a shorter text to display for this item (at most 6 characters) + 'img' // optional: a 24x24px image to display for this item + 'color' // optional: a color string (like "#f00") to color the icon in compatible clocks + 'v' // (if hasRange==true) a numerical value + 'min','max' // (if hasRange==true) a minimum and maximum numerical value (if this were to be displayed as a guage) +} +``` + +* `item.show` : called when item should be shown. Enables updates. Call BEFORE 'get' +* `item.hide` : called when item should be hidden. Disables updates. +* `.on('redraw', ...)` : event that is called when 'get' should be called again (only after 'item.show') +* `item.run` : (optional) called if the info screen is tapped - can perform some action. Return true if the caller should feedback the user. + +See the bottom of `lib.js` for example usage... + +example.clkinfo.js : + +```JS +(function() { + return { + name: "Bangle", + img: atob("GBiBAAD+AAH+AAH+AAH+AAH/AAOHAAYBgAwAwBgwYBgwYBgwIBAwOBAwOBgYIBgMYBgAYAwAwAYBgAOHAAH/AAH+AAH+AAH+AAD+AA==") }), + items: [ + { name : "Item1", + get : () => ({ text : "TextOfItem1", v : 10, min : 0, max : 100, + img : atob("GBiBAAD+AAH+AAH+AAH+AAH/AAOHAAYBgAwAwBgwYBgwYBgwIBAwOBAwOBgYIBgMYBgAYAwAwAYBgAOHAAH/AAH+AAH+AAH+AAD+AA==") + }), + show : () => {}, + hide : () => {} + // run : () => {} optional (called when tapped) + } + ] + }; +}) // must not have a semi-colon! +``` diff --git a/apps/clock_info/app-icon.js b/apps/clock_info/app-icon.js new file mode 100644 index 000000000..49232b838 --- /dev/null +++ b/apps/clock_info/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwJC/AH4A/AH4AgA==")) diff --git a/apps/clock_info/app.png b/apps/clock_info/app.png new file mode 100644 index 0000000000000000000000000000000000000000..4013f353f4f119645e6bb68fdfb4240fd410ece7 GIT binary patch literal 390 zcmV;10eSw3P)@B~%TF zv2@8pwxyl=3`8bj2?>9Sh)wkSq#MApeIIuq8Os6y0000O&uf+~{78PVDE(ovEKLkQ zmIaH`T;kpkL3qcpOG zj1!<627`c&3Y3$ykY62`Wp!-R{gkQeNExNyvp&@Ok$i6ms9zOIqOQd3eyg10aZ#ES z)=*|I;0EDWpM~8(>|glqVd(m5jvI)5uRXZ<94z4R?Q@%i%f+9^!({NnjeWx8xYqUL kowsl^b{_x$0KhVl131S^@fGTWKL7v#07*qoM6N<$f{1sfZ2$lO literal 0 HcmV?d00001 diff --git a/modules/clock_info.js b/apps/clock_info/lib.js similarity index 76% rename from modules/clock_info.js rename to apps/clock_info/lib.js index 0e4e2a8b6..7251f1b00 100644 --- a/modules/clock_info.js +++ b/apps/clock_info/lib.js @@ -1,54 +1,4 @@ -/* Module that allows for loading of clock 'info' displays -that can be scrolled through on the clock face. - -`load()` returns an array of menu objects, where each object contains a list of menu items: -* `name` : text to display and identify menu object (e.g. weather) -* `img` : a 24x24px image -* `dynamic` : if `true`, items are not constant but are sorted (e.g. calendar events sorted by date) -* `items` : menu items such as temperature, humidity, wind etc. - -Note that each item is an object with: - -* `item.name` : friendly name to identify an item (e.g. temperature) -* `item.hasRange` : if `true`, `.get` returns `v/min/max` values (for progress bar/guage) -* `item.get` : function that returns an object: - -{ - 'text' // the text to display for this item - 'short' // optional: a shorter text to display for this item (at most 6 characters) - 'img' // optional: a 24x24px image to display for this item - 'color' // optional: a color string (like "#ffffff") to color the icon in compatible clocks - 'v' // (if hasRange==true) a numerical value - 'min','max' // (if hasRange==true) a minimum and maximum numerical value (if this were to be displayed as a guage) -} - -* `item.show` : called when item should be shown. Enables updates. Call BEFORE 'get' -* `item.hide` : called when item should be hidden. Disables updates. -* `.on('redraw', ...)` : event that is called when 'get' should be called again (only after 'item.show') -* `item.run` : (optional) called if the info screen is tapped - can perform some action. Return true if the caller should feedback the user. - -See the bottom of this file for example usage... - -example.clkinfo.js : - -(function() { - return { - name: "Bangle", - img: atob("GBiBAAD+AAH+AAH+AAH+AAH/AAOHAAYBgAwAwBgwYBgwYBgwIBAwOBAwOBgYIBgMYBgAYAwAwAYBgAOHAAH/AAH+AAH+AAH+AAD+AA==") }), - items: [ - { name : "Item1", - get : () => ({ text : "TextOfItem1", v : 10, min : 0, max : 100, - img : atob("GBiBAAD+AAH+AAH+AAH+AAH/AAOHAAYBgAwAwBgwYBgwYBgwIBAwOBAwOBgYIBgMYBgAYAwAwAYBgAOHAAH/AAH+AAH+AAH+AAD+AA==") - }), - show : () => {}, - hide : () => {} - // run : () => {} optional (called when tapped) - } - ] - }; -}) // must not have a semi-colon! - -*/ +/* See the README for more info... */ let storage = require("Storage"); let stepGoal = undefined; @@ -60,7 +10,21 @@ if (stepGoal == undefined) { stepGoal = d != undefined && d.settings != undefined ? d.settings.goal : 10000; } +// Load the settings, with defaults +exports.loadSettings = function() { + return Object.assign({ + hrmOn : 0, // 0(Always), 1(Tap) + defocusOnLock : true, + maxAltitude : 3000, + apps : {} + }, + require("Storage").readJSON("clock_info.json",1)||{} + ); +}; + exports.load = function() { + var settings = exports.loadSettings(); + delete settings.apps; // keep just the basic settings in memory // info used for drawing... var hrm = 0; var alt = "--"; @@ -111,8 +75,31 @@ exports.load = function() { text : (hrm||"--") + " bpm", v : hrm, min : 40, max : 200, img : atob("GBiBAAAAAAAAAAAAAAAAAAAAAADAAADAAAHAAAHjAAHjgAPngH9n/n82/gA+AAA8AAA8AAAcAAAYAAAYAAAAAAAAAAAAAAAAAAAAAA==") }}, - show : function() { Bangle.setHRMPower(1,"clkinfo"); Bangle.on("HRM", hrmUpdateHandler); hrm = Math.round(Bangle.getHealthStatus().bpm||Bangle.getHealthStatus("last").bpm); hrmUpdateHandler(); }, - hide : function() { Bangle.setHRMPower(0,"clkinfo"); Bangle.removeListener("HRM", hrmUpdateHandler); hrm = 0; }, + run : function() { + Bangle.setHRMPower(1,"clkinfo"); + if (settings.hrmOn==1/*Tap*/) { + /* turn off after 1 minute. If Health HRM monitoring is + enabled we will still get HRM events every so often */ + this.timeout = setTimeout(function() { + this.timeout = undefined; + Bangle.setHRMPower(0,"clkinfo"); + }, 60000); + } + }, + show : function() { + Bangle.on("HRM", hrmUpdateHandler); + hrm = Math.round(Bangle.getHealthStatus().bpm||Bangle.getHealthStatus("last").bpm); hrmUpdateHandler(); + this.run(); // start HRM + }, + hide : function() { + Bangle.setHRMPower(0,"clkinfo"); + Bangle.removeListener("HRM", hrmUpdateHandler); + if (this.timeout) { + clearTimeout(this.timeout); + this.timeout = undefined; + } + hrm = 0; + }, } ], }]; @@ -123,7 +110,7 @@ exports.load = function() { hasRange : true, get : () => ({ text : alt, v : parseInt(alt), - min : 0, max : 3000, + min : 0, max : settings.maxAltitude, img : atob("GBiBAAAAAAAAAAAAAAAAAAAAAAACAAAGAAAPAAEZgAOwwAPwQAZgYAwAMBgAGBAACDAADGAABv///////wAAAAAAAAAAAAAAAAAAAA==") }), show : function() { this.interval = setInterval(altUpdateHandler, 60000); alt = "--"; altUpdateHandler(); }, @@ -148,9 +135,18 @@ exports.load = function() { return menu; }; + /** Adds an interactive menu that could be used on a clock face by swiping. Simply supply the menu data (from .load) and a function to draw the clock info. +options = { + app : "str", // optional: app ID used when saving clock_info positions + // if defined, your app will remember its own positions, + // otherwise all apps share the same ones + x : 20, y: 20, w: 80, h:80, // dimensions of area used for clock_info + draw : (itm, info, options) // draw function +} + For example: let clockInfoItems = require("clock_info").load(); @@ -181,7 +177,7 @@ clockInfoMenu is the 'options' parameter, with the following added: * `redraw` : function - force a redraw * `focus` : function - bool to show if menu is focused or not -You can have more than one clock_info at once as well, sfor instance: +You can have more than one clock_info at once as well, for instance: let clockInfoDraw = (itm, info, options) => { g.reset().setBgColor(options.bg).setColor(options.fg).clearRect(options.x, options.y, options.x+options.w-2, options.y+options.h-1); @@ -201,19 +197,19 @@ exports.addInteractive = function(menu, options) { options.index = 0|exports.loadCount; exports.loadCount = options.index+1; options.focus = options.index==0 && options.x===undefined; // focus if we're the first one loaded and no position has been defined - const appName = "default:"+options.index; + const appName = (options.app||"default")+":"+options.index; - { // load the currently showing clock_infos - let settings = require("Storage").readJSON("clock_info.json",1)||{}; - if (settings[appName]) { - let a = settings[appName].a|0; - let b = settings[appName].b|0; - if (menu[a] && menu[a].items[b]) { // all ok - options.menuA = a; - options.menuB = b; - } + // load the currently showing clock_infos + let settings = exports.loadSettings() + if (settings.apps[appName]) { + let a = settings.apps[appName].a|0; + let b = settings.apps[appName].b|0; + if (menu[a] && menu[a].items[b]) { // all ok + options.menuA = a; + options.menuB = b; } } + if (options.menuA===undefined) options.menuA = 0; if (options.menuB===undefined) options.menuB = Math.min(exports.loadCount, menu[options.menuA].items.length)-1; function drawItem(itm) { @@ -262,21 +258,13 @@ exports.addInteractive = function(menu, options) { menuShowItem(menu[options.menuA].items[options.menuB]); } // save the currently showing clock_info - let settings = require("Storage").readJSON("clock_info.json",1)||{}; - settings[appName] = {a:options.menuA,b:options.menuB}; + let settings = exports.loadSettings(); + settings.apps[appName] = {a:options.menuA,b:options.menuB}; require("Storage").writeJSON("clock_info.json",settings); } Bangle.on("swipe",swipeHandler); - var touchHandler; - var lockHandler; + let touchHandler, lockHandler; if (options.x!==undefined && options.y!==undefined && options.w && options.h) { - lockHandler = function() { - if(options.focus) { - options.focus=false; - delete Bangle.CLKINFO_FOCUS; - options.redraw(); - } - }; touchHandler = function(_,e) { if (e.x(options.x+options.w) || e.y>(options.y+options.h)) { @@ -300,7 +288,16 @@ exports.addInteractive = function(menu, options) { } }; Bangle.on("touch",touchHandler); - Bangle.on("lock", lockHandler); + if (settings.defocusOnLock) { + lockHandler = function() { + if(options.focus) { + options.focus=false; + delete Bangle.CLKINFO_FOCUS; + options.redraw(); + } + }; + Bangle.on("lock", lockHandler); + } } // draw the first item menuShowItem(menu[options.menuA].items[options.menuB]); @@ -333,6 +330,8 @@ exports.addInteractive = function(menu, options) { return true; } + + delete settings; // don't keep settings in RAM - save space return options; }; diff --git a/apps/clock_info/metadata.json b/apps/clock_info/metadata.json new file mode 100644 index 000000000..457180588 --- /dev/null +++ b/apps/clock_info/metadata.json @@ -0,0 +1,18 @@ +{ "id": "clock_info", + "name": "Clock Info Module", + "shortName": "Clock Info", + "version":"0.01", + "description": "A library used by clocks to provide extra information on the clock face (Altitude, BPM, etc)", + "icon": "app.png", + "type": "module", + "tags": "clkinfo", + "supports" : ["BANGLEJS2"], + "provides_modules" : ["clock_info"], + "readme": "README.md", + "storage": [ + {"name":"clock_info","url":"lib.js"}, + {"name":"clock_info.settings.js","url":"settings.js"} + ], "data": [ + {"name":"clock_info.json","url":"lib.js"} + ] +} diff --git a/apps/clock_info/settings.js b/apps/clock_info/settings.js new file mode 100644 index 000000000..5844e812a --- /dev/null +++ b/apps/clock_info/settings.js @@ -0,0 +1,30 @@ +(function(back) { + let settings = require("clock_info").loadSettings(); + + function save(key, value) { + settings[key] = value; + require('Storage').write("clock_info.json", settings); + } + + let menu ={ + '': { 'title': 'Clock Info' }, + /*LANG*/'< Back': back, + /*LANG*/'Defocus on Lock': { + value: !!settings.defocusOnLock, + onchange: x => save('defocusOnLock', x), + }, + /*LANG*/'HRM': { + value: settings.hrmOn, + min: 0, max: 1, step: 1, + format: v => ["Always","Tap"][v], + onchange: x => save('hrmOn', x), + }, + /*LANG*/'Max Altitude': { + value: settings.maxAltitude, + min: 500, max: 10000, step: 500, + format: v => v+"m", + onchange: x => save('maxAltitude', x), + } + }; + E.showMenu(menu); +})() diff --git a/apps/lato/ChangeLog b/apps/lato/ChangeLog new file mode 100644 index 000000000..7e6c3b0d5 --- /dev/null +++ b/apps/lato/ChangeLog @@ -0,0 +1,2 @@ +0.01: first release +0.02: Use clock_info module as an app diff --git a/apps/lato/metadata.json b/apps/lato/metadata.json index 0b5e4a0f3..e4def2df9 100644 --- a/apps/lato/metadata.json +++ b/apps/lato/metadata.json @@ -1,7 +1,7 @@ { "id": "lato", "name": "Lato", - "version": "0.01", + "version": "0.02", "description": "A Lato Font clock with fast load and clock_info", "readme": "README.md", "icon": "app.png", @@ -9,6 +9,7 @@ "type": "clock", "tags": "clock", "supports": ["BANGLEJS2"], + "dependencies" : { "clock_info":"module" }, "storage": [ {"name":"lato.app.js","url":"app.js"}, {"name":"lato.img","url":"icon.js","evaluate":true} diff --git a/apps/lcdclock/ChangeLog b/apps/lcdclock/ChangeLog index 5560f00bc..220369925 100644 --- a/apps/lcdclock/ChangeLog +++ b/apps/lcdclock/ChangeLog @@ -1 +1,2 @@ 0.01: New App! +0.02: Use clock_info module as an app diff --git a/apps/lcdclock/metadata.json b/apps/lcdclock/metadata.json index d7d09b106..e286dc017 100644 --- a/apps/lcdclock/metadata.json +++ b/apps/lcdclock/metadata.json @@ -1,12 +1,13 @@ { "id": "lcdclock", "name": "LCD Clock", - "version":"0.01", + "version":"0.02", "description": "A Casio-style clock, with ClockInfo areas at the top and bottom. Tap them and swipe up/down to toggle between different information", "icon": "app.png", "screenshots": [{"url":"screenshot.png"}], "type": "clock", "tags": "clock,clkinfo", "supports" : ["BANGLEJS2"], + "dependencies" : { "clock_info":"module" }, "storage": [ {"name":"lcdclock.app.js","url":"app.js"}, {"name":"lcdclock.img","url":"app-icon.js","evaluate":true} diff --git a/apps/linuxclock/ChangeLog b/apps/linuxclock/ChangeLog index 71ca3afbb..5529034be 100644 --- a/apps/linuxclock/ChangeLog +++ b/apps/linuxclock/ChangeLog @@ -1,4 +1,5 @@ 0.01: New App. 0.02: Performance improvements. 0.03: Update clock_info to avoid a redraw -0.04: Fix clkinfo -- use .get instead of .show \ No newline at end of file +0.04: Fix clkinfo -- use .get instead of .show +0.05: Use clock_info module as an app diff --git a/apps/linuxclock/metadata.json b/apps/linuxclock/metadata.json index 68915b832..412fd53b4 100644 --- a/apps/linuxclock/metadata.json +++ b/apps/linuxclock/metadata.json @@ -1,7 +1,7 @@ { "id": "linuxclock", "name": "Linux Clock", - "version": "0.04", + "version": "0.05", "description": "A Linux inspired clock.", "readme": "README.md", "icon": "app.png", @@ -9,7 +9,7 @@ "type": "clock", "tags": "clock", "supports": ["BANGLEJS2"], - "allow_emulator": true, + "dependencies" : { "clock_info":"module" }, "storage": [ {"name":"linuxclock.app.js","url":"app.js"}, {"name":"linuxclock.img","url":"app-icon.js","evaluate":true}, diff --git a/apps/simplestpp/ChangeLog b/apps/simplestpp/ChangeLog index 4db8559c8..51186fbdb 100644 --- a/apps/simplestpp/ChangeLog +++ b/apps/simplestpp/ChangeLog @@ -1,2 +1,3 @@ 0.01: first release 0.02: removed fast load, minimalism is useful for narrowing down on issues +0.03: Use clock_info module as an app diff --git a/apps/simplestpp/metadata.json b/apps/simplestpp/metadata.json index 145bf7309..93ae72bbe 100644 --- a/apps/simplestpp/metadata.json +++ b/apps/simplestpp/metadata.json @@ -2,7 +2,7 @@ "id": "simplestpp", "name": "Simplest++ Clock", "shortName": "Simplest++", - "version": "0.02", + "version": "0.03", "description": "The simplest working clock, with clock_info, acts as a tutorial piece", "readme": "README.md", "icon": "app.png", @@ -10,6 +10,7 @@ "type": "clock", "tags": "clock", "supports": ["BANGLEJS2"], + "dependencies" : { "clock_info":"module" }, "storage": [ {"name":"simplestpp.app.js","url":"app.js"}, {"name":"simplestpp.img","url":"icon.js","evaluate":true} diff --git a/apps/slopeclockpp/ChangeLog b/apps/slopeclockpp/ChangeLog index 58299b236..c9fb0de7a 100644 --- a/apps/slopeclockpp/ChangeLog +++ b/apps/slopeclockpp/ChangeLog @@ -9,3 +9,4 @@ 0.07: README file update as UI interaction was not easy to understand 0.08: Stability improvements - ensure we continue even if a flat string can't be allocated Stop ClockInfo text drawing outside the allocated area +0.09: Use clock_info module as an app diff --git a/apps/slopeclockpp/app.js b/apps/slopeclockpp/app.js index dca4a84e4..b57650f9e 100644 --- a/apps/slopeclockpp/app.js +++ b/apps/slopeclockpp/app.js @@ -141,8 +141,8 @@ let clockInfoDraw = (itm, info, options) => { g.setClipRect(0,0,g.getWidth()-1, g.getHeight()-1); }; let clockInfoItems = require("clock_info").load(); -let clockInfoMenu = require("clock_info").addInteractive(clockInfoItems, { x:126, y:24, w:50, h:40, draw : clockInfoDraw, bg : g.theme.bg, fg : g.theme.fg, hl : "#f00"/*red*/ }); -let clockInfoMenu2 = require("clock_info").addInteractive(clockInfoItems, { x:0, y:115, w:50, h:40, draw : clockInfoDraw, bg : bgColor, fg : g.theme.bg, hl : (bgColor=="#000")?"#f00"/*red*/:g.theme.fg }); +let clockInfoMenu = require("clock_info").addInteractive(clockInfoItems, { app:"slopeclockpp",x:126, y:24, w:50, h:40, draw : clockInfoDraw, bg : g.theme.bg, fg : g.theme.fg, hl : "#f00"/*red*/ }); +let clockInfoMenu2 = require("clock_info").addInteractive(clockInfoItems, { app:"slopeclockpp",x:0, y:115, w:50, h:40, draw : clockInfoDraw, bg : bgColor, fg : g.theme.bg, hl : (bgColor=="#000")?"#f00"/*red*/:g.theme.fg }); // Show launcher when middle button pressed Bangle.setUI({ diff --git a/apps/slopeclockpp/metadata.json b/apps/slopeclockpp/metadata.json index fbab02fca..30bc2ea3e 100644 --- a/apps/slopeclockpp/metadata.json +++ b/apps/slopeclockpp/metadata.json @@ -1,12 +1,13 @@ { "id": "slopeclockpp", "name": "Slope Clock ++", - "version":"0.08", + "version":"0.09", "description": "A clock where hours and minutes are divided by a sloping line. When the minute changes, the numbers slide off the screen. This is a clone of the original Slope Clock which shows extra information and allows the colors to be selected.", "icon": "app.png", "screenshots": [{"url":"screenshot.png"}], "type": "clock", "tags": "clock", "supports" : ["BANGLEJS2"], + "dependencies" : { "clock_info":"module" }, "readme": "README.md", "storage": [ {"name":"slopeclockpp.app.js","url":"app.js"}, From bddef2ef0f87a2e4e2e3a6da8f7fccd24969b50c Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 27 Jan 2023 15:26:40 +0000 Subject: [PATCH 0006/1725] oops --- apps/clock_info/settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/clock_info/settings.js b/apps/clock_info/settings.js index 5844e812a..a86fae473 100644 --- a/apps/clock_info/settings.js +++ b/apps/clock_info/settings.js @@ -27,4 +27,4 @@ } }; E.showMenu(menu); -})() +}) From 1abb3c84e56398ec1628d7ca6b63c441c09e7bbb Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 27 Jan 2023 17:57:45 +0100 Subject: [PATCH 0007/1725] widalarmeta fixes Fix Bell not appearing on alarms > 24h and redrawing interval --- apps/widalarmeta/ChangeLog | 1 + apps/widalarmeta/metadata.json | 2 +- apps/widalarmeta/widget.js | 13 +++++++++---- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/apps/widalarmeta/ChangeLog b/apps/widalarmeta/ChangeLog index 37b619f7f..19a19c006 100644 --- a/apps/widalarmeta/ChangeLog +++ b/apps/widalarmeta/ChangeLog @@ -2,3 +2,4 @@ 0.02: Change font to 5x9 7 segment-style Add settings page Add option to show seconds +0.03: Fix Bell not appearing on alarms > 24h and redrawing interval diff --git a/apps/widalarmeta/metadata.json b/apps/widalarmeta/metadata.json index 79387c1c5..89e35c090 100644 --- a/apps/widalarmeta/metadata.json +++ b/apps/widalarmeta/metadata.json @@ -2,7 +2,7 @@ "id": "widalarmeta", "name": "Alarm & Timer ETA", "shortName": "Alarm ETA", - "version": "0.02", + "version": "0.03", "description": "A widget that displays the time to the next Alarm or Timer in hours and minutes, maximum 24h (configurable).", "icon": "widget.png", "type": "widget", diff --git a/apps/widalarmeta/widget.js b/apps/widalarmeta/widget.js index ff3390d89..8a7933358 100644 --- a/apps/widalarmeta/widget.js +++ b/apps/widalarmeta/widget.js @@ -9,7 +9,7 @@ function draw() { const times = alarms.map(alarm => require("sched").getTimeToAlarm(alarm)).filter(a => a !== undefined); - const next = Math.min.apply(null, times); + const next = times.length > 0 ? Math.min.apply(null, times) : 0; let calcWidth = 0; let drawSeconds = false; @@ -34,7 +34,7 @@ if (drawSeconds) { calcWidth += 3*5; } - } else if (times.length > 0 && config.drawBell) { + } else if (config.drawBell && alarms.some(alarm=>alarm.on&&(alarm.hidden!==true))) { // next alarm too far in future, draw only widalarm bell g.reset().drawImage(atob("GBgBAAAAAAAAABgADhhwDDwwGP8YGf+YMf+MM//MM//MA//AA//AA//AA//AA//AA//AB//gD//wD//wAAAAADwAABgAAAAAAAAA"),this.x,this.y); calcWidth = 24; @@ -52,8 +52,13 @@ if (timeout === 0) { timeout += period; } - setTimeout(()=>{ - WIDGETS["widalarmeta"].draw(WIDGETS["widalarmeta"]); + + if (this.timeoutId !== undefined) { + clearTimeout(this.timeoutId); + } + this.timeoutId = setTimeout(()=>{ + this.timeoutId = undefined; + this.draw(); }, timeout); } /* draw */ From 5f11e6dec11d2d60688a3ecd48129cee2f8906ab Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 27 Jan 2023 17:59:07 +0100 Subject: [PATCH 0008/1725] sleepphasealarm fixes Fix dated events alarm on wrong date --- apps/sleepphasealarm/ChangeLog | 1 + apps/sleepphasealarm/app.js | 2 +- apps/sleepphasealarm/metadata.json | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/sleepphasealarm/ChangeLog b/apps/sleepphasealarm/ChangeLog index 795c62fa2..4815e5e75 100644 --- a/apps/sleepphasealarm/ChangeLog +++ b/apps/sleepphasealarm/ChangeLog @@ -13,3 +13,4 @@ 0.10: Fix: Do not wake when falling asleep 0.11: Minor tweaks 0.12: Support javascript command to execute as defined in scheduler 'js' configuration +0.13: Fix dated events alarm on wrong date diff --git a/apps/sleepphasealarm/app.js b/apps/sleepphasealarm/app.js index ba8bff9b2..0aef07760 100644 --- a/apps/sleepphasealarm/app.js +++ b/apps/sleepphasealarm/app.js @@ -10,7 +10,7 @@ const config = Object.assign({ disableAlarm: false, } }, require("Storage").readJSON(CONFIGFILE,1) || {}); -const active = alarms.filter(a=>a.on); +const active = alarms.filter(alarm => require("sched").getTimeToAlarm(alarm)); const schedSettings = require("sched").getSettings(); let buzzCount = schedSettings.buzzCount; let logs = []; diff --git a/apps/sleepphasealarm/metadata.json b/apps/sleepphasealarm/metadata.json index ced99062f..5382160c0 100644 --- a/apps/sleepphasealarm/metadata.json +++ b/apps/sleepphasealarm/metadata.json @@ -2,7 +2,7 @@ "id": "sleepphasealarm", "name": "SleepPhaseAlarm", "shortName": "SleepPhaseAlarm", - "version": "0.12", + "version": "0.13", "description": "Uses the accelerometer to estimate sleep and wake states with the principle of Estimation of Stationary Sleep-segments (ESS, see https://ubicomp.eti.uni-siegen.de/home/datasets/ichi14/index.html.en). This app will read the next alarm from the alarm application and will wake you up to 30 minutes early at the best guessed time when you are almost already awake.", "icon": "app.png", "tags": "alarm", @@ -14,6 +14,6 @@ {"name":"sleepphasealarm.settings.js","url":"settings.js"}, {"name":"sleepphasealarm.img","url":"app-icon.js","evaluate":true} ], - "data": [{"name":"sleepphasealarm.json","storageFile":true}], + "data": [{"name":"sleepphasealarm.json"}], "interface": "interface.html" } From 3287106ed7aade5fce85a9b52a41345e03ed771d Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sat, 28 Jan 2023 10:06:01 +0100 Subject: [PATCH 0009/1725] widbatpc remove jitter option Add option 'Remove Jitter'='Drop only' to prevent percentage from getting up again when not charging --- apps/hwid_a_battery_widget/metadata.json | 1 + apps/wid_a_battery_widget/metadata.json | 1 + apps/widbatpc/ChangeLog | 1 + apps/widbatpc/metadata.json | 2 +- apps/widbatpc/settings.js | 24 +++++++++++++++++------- apps/widbatpc/widget.js | 17 +++++++++++++++-- 6 files changed, 36 insertions(+), 10 deletions(-) diff --git a/apps/hwid_a_battery_widget/metadata.json b/apps/hwid_a_battery_widget/metadata.json index 29b0540c2..981b81079 100644 --- a/apps/hwid_a_battery_widget/metadata.json +++ b/apps/hwid_a_battery_widget/metadata.json @@ -9,6 +9,7 @@ "readme": "README.md", "description": "Simple and slim battery widget with charge status and percentage", "tags": "widget,battery", + "provides_widgets" : ["battery"], "storage": [ {"name":"hwid_a_battery_widget.wid.js","url":"widget.js"} ] diff --git a/apps/wid_a_battery_widget/metadata.json b/apps/wid_a_battery_widget/metadata.json index 6c507b7b3..017550b1e 100644 --- a/apps/wid_a_battery_widget/metadata.json +++ b/apps/wid_a_battery_widget/metadata.json @@ -9,6 +9,7 @@ "readme": "README.md", "description": "Simple and slim battery widget with charge status and percentage", "tags": "widget,battery", + "provides_widgets" : ["battery"], "storage": [ {"name":"wid_a_battery_widget.wid.js","url":"widget.js"} ] diff --git a/apps/widbatpc/ChangeLog b/apps/widbatpc/ChangeLog index e70093659..782446cb4 100644 --- a/apps/widbatpc/ChangeLog +++ b/apps/widbatpc/ChangeLog @@ -13,3 +13,4 @@ 0.14: Fix drawing the bar when charging 0.15: Added option to always display the icon when charging (useful if 'hide if charge greater than' is enabled) 0.16: Increase screen update rate when charging +0.17: Add option 'Remove Jitter'='Drop only' to prevent percentage from getting up again when not charging diff --git a/apps/widbatpc/metadata.json b/apps/widbatpc/metadata.json index 953f8d345..cb47475cb 100644 --- a/apps/widbatpc/metadata.json +++ b/apps/widbatpc/metadata.json @@ -2,7 +2,7 @@ "id": "widbatpc", "name": "Battery Level Widget (with percentage)", "shortName": "Battery Widget", - "version": "0.16", + "version": "0.17", "description": "Show the current battery level and charging status in the top right of the clock, with charge percentage", "icon": "widget.png", "type": "widget", diff --git a/apps/widbatpc/settings.js b/apps/widbatpc/settings.js index b45fc6749..5cafbf1cf 100644 --- a/apps/widbatpc/settings.js +++ b/apps/widbatpc/settings.js @@ -5,6 +5,7 @@ (function(back) { const SETTINGS_FILE = 'widbatpc.json' const COLORS = ['By Level', 'Green', 'Monochrome'] + const RM_JITTER_OPTIONS = [/*LANG*/'Off', /*LANG*/'Drop only']; // initialize with default settings... let s = { @@ -14,6 +15,7 @@ 'charger': true, 'hideifmorethan': 100, 'alwaysoncharge': false, + 'removejitter': 0, } // ...and overwrite them with any saved values // This way saved values are preserved if a new version adds more settings @@ -28,7 +30,9 @@ return function (value) { s[key] = value; storage.write(SETTINGS_FILE, s); - WIDGETS["batpc"].reload(); + if ("WIDGETS" in global && WIDGETS["batpc"] !== undefined) { + WIDGETS["batpc"].reload(); + } } } @@ -36,17 +40,17 @@ const menu = { '': { 'title': 'Battery Widget' }, '< Back': back, - 'Percentage': { + /*LANG*/'Percentage': { value: s.percentage, format: onOffFormat, onchange: save('percentage'), }, - 'Charging Icon': { + /*LANG*/'Charging Icon': { value: s.charger, format: onOffFormat, onchange: save('charger'), }, - 'Color': { + /*LANG*/'Color': { format: () => s.color, onchange: function () { // cycles through options @@ -56,12 +60,12 @@ save('color')(s.color) } }, - 'Fill Bar': { + /*LANG*/'Fill Bar': { value: s.fillbar, format: onOffFormat, onchange: save('fillbar'), }, - 'Hide if >': { + /*LANG*/'Hide if >': { value: s.hideifmorethan||100, min: 10, max : 100, @@ -69,11 +73,17 @@ format: x => x+"%", onchange: save('hideifmorethan'), }, - 'Show on charge': { // Not sure if this is readable enough in the 'big' menu + /*LANG*/'Show on charge': { // Not sure if this is readable enough in the 'big' menu value: s.alwaysoncharge, format: onOffFormat, onchange: save('alwaysoncharge'), }, + /*LANG*/'Remove Jitter': { + value: s.removejitter, + min: 0, max: 1, + format: v => RM_JITTER_OPTIONS[v], + onchange: save('removejitter'), + }, } E.showMenu(menu) }) diff --git a/apps/widbatpc/widget.js b/apps/widbatpc/widget.js index 529923386..a204a1f9e 100644 --- a/apps/widbatpc/widget.js +++ b/apps/widbatpc/widget.js @@ -2,6 +2,8 @@ const intervalLow = 60000; // update time when not charging const intervalHigh = 2000; // update time when charging + let prevMin = 100; + let COLORS = {}; if (process.env.HWVERSION == 1) { @@ -33,6 +35,7 @@ 'charger': true, 'hideifmorethan': 100, 'alwaysoncharge': false, + 'removejitter': 0, // 0 == off, 1 == downwards only }; Object.keys(DEFAULTS).forEach(k=>{ if (settings[k]===undefined) settings[k]=DEFAULTS[k]; @@ -88,8 +91,18 @@ // else... var s = 39; var x = this.x, y = this.y; - const l = E.getBattery(), - c = levelColor(l); + let l = E.getBattery(); + if (setting('removejitter') === 1) { + // if we have seen a battery percentage that was lower than current, use lower + if (Bangle.isCharging()) { + prevMin = l; // charging is the only way to increase percentage + } else if (prevMin >= l) { + prevMin = l; + } else { + l = prevMin; + } + } + const c = levelColor(l); if (Bangle.isCharging() && setting('charger')) { g.setColor(chargerColor()).drawImage(atob( From d3c2c5a47dc8d029d827407f37d65fe934921db0 Mon Sep 17 00:00:00 2001 From: Stiralbios Date: Sun, 29 Jan 2023 10:13:29 +0100 Subject: [PATCH 0010/1725] [TerminalClock] Reapply changes for fast loading --- apps/terminalclock/ChangeLog | 1 + apps/terminalclock/app.js | 415 ++++++++++++++++--------------- apps/terminalclock/metadata.json | 2 +- 3 files changed, 222 insertions(+), 196 deletions(-) diff --git a/apps/terminalclock/ChangeLog b/apps/terminalclock/ChangeLog index 268e0427c..59cabf01c 100644 --- a/apps/terminalclock/ChangeLog +++ b/apps/terminalclock/ChangeLog @@ -7,3 +7,4 @@ 0.07: Use ClockFace module and rework the settings to be able to personnalize the order of the lines 0.08: Hide widgets instead of not loading them at all Use Clockface_menu for widgets and power saving settings +0.09: Add, fastload compatibility, default HRM value, default altitude value diff --git a/apps/terminalclock/app.js b/apps/terminalclock/app.js index 515ad8f66..392d16227 100644 --- a/apps/terminalclock/app.js +++ b/apps/terminalclock/app.js @@ -1,211 +1,236 @@ -const locale = require("locale"); -var heartRate = 0; -var altitude = -9001; +{ + const locale = require("locale"); + let heartRate = 0; + let altitude = -9001; -const fontColor = g.theme.dark ? "#0f0" : "#000"; -// handling the differents versions of the Banglejs smartwatch screen sizes -if (process.env.HWVERSION == 1){ - var paddingY = 3; - var font6x8At4Size = 48; - var font6x8At2Size = 27; - var font6x8FirstTextSize = 6; - var font6x8DefaultTextSize = 3; -} else{ - var paddingY = 2; - var font6x8At4Size = 32; - var font6x8At2Size = 18; - var font6x8FirstTextSize = 4; - var font6x8DefaultTextSize = 2; -} + const fontColor = g.theme.dark ? "#0f0" : "#000"; + // handling the differents versions of the Banglejs smartwatch screen sizes + // default BJS2 + let paddingY = 2; + let font6x8At4Size = 32; + let font6x8At2Size = 18; + let font6x8FirstTextSize = 4; + let font6x8DefaultTextSize = 2; + if (process.env.HWVERSION == 1){ + paddingY = 3; + font6x8At4Size = 48; + font6x8At2Size = 27; + font6x8FirstTextSize = 6; + font6x8DefaultTextSize = 3; + } + // initialising the clockface + const ClockFace = require("ClockFace"); + const clock = new ClockFace({ + precision: 60, + settingsFile: "terminalclock.json", -// initialising the clockface -const ClockFace = require("ClockFace"); -const clock = new ClockFace({ - precision: 60, - settingsFile: "terminalclock.json", + init: function () { + // check settings and set default if needed + this.showHRM = false; + this.showAltitude = false; + this.lock_precision = this.precision; + this.unlock_precision = 1; + if (this.HRMinConfidence === undefined) this.HRMinConfidence = 50; + if (this.PowerOnInterval === undefined) this.PowerOnInterval = 15; + if (this.powerSave===undefined) this.powerSave = this.powerSaving; // migrate old setting + if (this.powerSave===undefined) this.powerSave = true; - init: function () { - // check settings and set default if needed - this.showHRM = false; - this.showAltitude = false; - this.lock_precision = this.precision; - this.unlock_precision = 1; - if (this.HRMinConfidence === undefined) this.HRMinConfidence = 50; - if (this.PowerOnInterval === undefined) this.PowerOnInterval = 15; - if (this.powerSave===undefined) this.powerSave = this.powerSaving; // migrate old setting - if (this.powerSave===undefined) this.powerSave = true; - ["L2", "L3", "L4", "L5", "L6", "L7", "L8", "L9"].forEach(k => { - if (this[k]===undefined){ - if(k == "L2") this[k] = "Date"; - else if(k == "L3") { - this[k] = "HR"; - this.showHRM = true; - }else if(k == "L4") this[k] = "Motion"; - else if(k == "L5") this[k] = "Steps"; - else if(k == "L6") this[k] = ">"; - else this[k] = "Empty"; - } - else if (this[k]==="HR") this.showHRM = true; - else if (this[k]==="Alt") this.showAltitude = true && process.env.HWVERSION == 2; - }); + ["L2", "L3", "L4", "L5", "L6", "L7", "L8", "L9"].forEach(k => { + if (this[k]===undefined){ + if(k == "L2") this[k] = "Date"; + else if(k == "L3") { + this[k] = "HR"; + this.showHRM = true; + }else if(k == "L4") this[k] = "Motion"; + else if(k == "L5") this[k] = "Steps"; + else if(k == "L6") this[k] = ">"; + else this[k] = "Empty"; + } + else if (this[k]==="HR") this.showHRM = true; + else if (this[k]==="Alt") this.showAltitude = true && process.env.HWVERSION == 2; + }); - // set the lock and unlock actions - Bangle.on("lock", on => { - if (on) lock(); - else unlock(); - }); + // set the services (HRM, pressure sensor, etc....) + if(!this.powerSave){ + turnOnServices(); + } else{ + this.turnOnInterval = setInterval(turnOnServices, this.PowerOnInterval*60000); // every PowerOnInterval min + } + // start the clock unlocked + unlock(); + }, - // set the services (HRM, pressure sensor, etc....) - if(!this.powerSave){ - turnOnServices(); - } else{ - setInterval(turnOnServices, this.PowerOnInterval*60000); // every PowerOnInterval min - } - // start the clock unlocked - unlock(); - }, - - draw: function (date) { - var curPos = 1; - g.setFontAlign(-1, -1); - g.setColor(fontColor); - drawTime(date, curPos); - curPos++; - - ["L2", "L3", "L4", "L5", "L6", "L7", "L8", "L9"].forEach(line => { - if (this[line]==='Date') drawDate(date, curPos); - else if (this[line]==='HR') drawHRM(curPos); - else if (this[line]==='Motion') drawMotion(curPos); - else if (this[line]==='Alt') drawAltitude(curPos); - else if (this[line]==='Steps') drawStepCount(curPos); - else if (this[line]==='>') drawInput(curPos); + draw: function (date) { + let curPos = 1; + g.setFontAlign(-1, -1); + g.setColor(fontColor); + drawTime(date, curPos); curPos++; - }); - }, -}); + ["L2", "L3", "L4", "L5", "L6", "L7", "L8", "L9"].forEach(line => { + if (this[line]==='Date') drawDate(date, curPos); + else if (this[line]==='HR') drawHRM(curPos); + else if (this[line]==='Motion') drawMotion(curPos); + else if (this[line]==='Alt') drawAltitude(curPos); + else if (this[line]==='Steps') drawStepCount(curPos); + else if (this[line]==='>') drawInput(curPos); + curPos++; + }); + }, -/* ---------------------------- -Draw related of specific lines --------------------------------- */ - -function drawLine(line, pos){ - if(pos == 1) - g.setFont("6x8", font6x8FirstTextSize); - else - g.setFont("6x8", font6x8DefaultTextSize); - - var yPos = Bangle.appRect.y + - paddingY * (pos - 1) + - font6x8At4Size * Math.min(1, pos-1) + - font6x8At2Size * Math.max(0, pos-2); - g.drawString(line, 5, yPos, true); -} - -function drawTime(now, pos){ - var h = now.getHours(); - var m = now.getMinutes(); - var time = ">" + (""+h).substr(-2) + ":" + ("0"+m).substr(-2); - drawLine(time, pos); -} - -function drawDate(now, pos){ - var dow = locale.dow(now, 1); - var date = locale.date(now, 1).substr(0,6) + locale.date(now, 1).substr(-2); - var locale_date = ">" + dow + " " + date; - drawLine(locale_date, pos); -} - -function drawInput(pos){ - drawLine(">", pos); -} - -function drawStepCount(pos){ - var health = Bangle.getHealthStatus("day"); - var steps_formated = ">Steps: " + health.steps; - drawLine(steps_formated, pos); -} - -function drawHRM(pos){ - if(heartRate != 0) - drawLine(">HR: " + parseInt(heartRate), pos); - else - drawLine(">HR: unknown", pos); -} - -function drawAltitude(pos){ - if(altitude > 0) - drawLine(">Alt: " + altitude.toFixed(1) + "m", pos); - else - drawLine(">Alt: unknown", pos); -} - -function drawMotion(pos){ - var health = Bangle.getHealthStatus('last'); - var steps_formated = ">Motion: " + parseInt(health.movement); - drawLine(steps_formated, pos); -} - -/* ----------------------------------------------- -Services functions (HRM, pressure, etc...) --------------------------------------------------- */ - -function turnOnServices(){ - if(clock.showHRM){ - Bangle.setHRMPower(true, "terminalclock"); - } - if(clock.showAltitude){ - Bangle.setBarometerPower(true, "terminalclock"); - } - if(clock.powerSave){ - setTimeout(function () { + remove: function() { + if (this.turnOnInterval){ + clearInterval(this.turnOnInterval); + delete this.turnOnInterval; + } + if (this.turnOffServiceTimeout){ + clearTimeout(this.turnOffServiceTimeout) + } turnOffServices(); - }, 45000); - } -} + if (this.onLock) Bangle.removeListener('lock', this.onLock); + if (this.onHRM) Bangle.removeListener('HRM', this.onHRM); + if (this.onPressure) Bangle.removeListener('onPressure', this.onPressure); + } -function turnOffServices(){ - if(clock.showHRM){ - Bangle.setHRMPower(false, "terminalclock"); - } - if(clock.showAltitude){ - Bangle.setBarometerPower(false, "terminalclock"); - } -} + }); -Bangle.on('HRM',function(hrmInfo) { - if(hrmInfo.confidence >= clock.HRMinConfidence) - heartRate = hrmInfo.bpm; -}); -const MEDIANLENGTH = 20; // technical -var avr = [], median; // technical -Bangle.on('pressure', function(e) { - while (avr.length>MEDIANLENGTH) avr.pop(); - avr.unshift(e.altitude); - median = avr.slice().sort(); - if (median.length>10) { - var mid = median.length>>1; - altitude = E.sum(median.slice(mid-4,mid+5)) / 9; - } -}); + /* ---------------------------- + Draw related of specific lines + -------------------------------- */ -/* ------------------------------------------------- -Clock related functions but not in the ClockFace module ----------------------------------------------------- */ + let drawLine = function(line, pos){ + if(pos == 1) + g.setFont("6x8", font6x8FirstTextSize); + else + g.setFont("6x8", font6x8DefaultTextSize); -function unlock(){ - if(clock.powerSave){ - turnOnServices(); - } - clock.precision = clock.unlock_precision; - clock.tick(); -} + let yPos = Bangle.appRect.y + + paddingY * (pos - 1) + + font6x8At4Size * Math.min(1, pos-1) + + font6x8At2Size * Math.max(0, pos-2); + g.drawString(line, 5, yPos, true); + }; -function lock(){ - clock.precision = clock.lock_precision; - clock.tick(); -} + let drawTime = function(now, pos){ + let h = now.getHours(); + let m = now.getMinutes(); + let time = ">" + (""+h).substr(-2) + ":" + ("0"+m).substr(-2); + drawLine(time, pos); + }; -// starting the clock -clock.start(); + let drawDate = function(now, pos){ + let dow = locale.dow(now, 1); + let date = locale.date(now, 1).substr(0,6) + locale.date(now, 1).substr(-2); + let locale_date = ">" + dow + " " + date; + drawLine(locale_date, pos); + }; + + let drawInput = function(pos){ + drawLine(">", pos); + }; + + let drawStepCount = function(pos){ + let health = Bangle.getHealthStatus("day"); + let steps_formated = ">Steps: " + health.steps; + drawLine(steps_formated, pos); + }; + + let drawHRM = function(pos){ + if(heartRate != 0) + drawLine(">HR: " + parseInt(heartRate), pos); + else + drawLine( + ">HR: " + parseInt(Math.round(Bangle.getHealthStatus().bpm||Bangle.getHealthStatus("last").bpm)), + pos); + }; + + let drawAltitude = function(pos){ + if(altitude > 0) + drawLine(">Alt: " + altitude.toFixed(1) + "m", pos); + else + drawLine(">Alt: unknown", pos); + }; + + let drawMotion = function(pos){ + let health = Bangle.getHealthStatus('last'); + let steps_formated = ">Motion: " + parseInt(health.movement); + drawLine(steps_formated, pos); + }; + + /* ----------------------------------------------- + Services functions (HRM, pressure, etc...) + -------------------------------------------------- */ + + let turnOnServices = function(){ + if(clock.showHRM){ + Bangle.setHRMPower(true, "terminalclock"); + } + if(clock.showAltitude){ + Bangle.setBarometerPower(true, "terminalclock"); + } + if(clock.powerSave){ + clock.turnOffServiceTimeout = setTimeout(function () { + turnOffServices(); + }, 45000); + } + }; + + let turnOffServices = function(){ + if(clock.showHRM){ + Bangle.setHRMPower(false, "terminalclock"); + } + if(clock.showAltitude){ + Bangle.setBarometerPower(false, "terminalclock"); + } + }; + + // set the lock and unlock actions + clock.onLock = lock_event => { + if (lock_event) lock(); + else unlock(); + }; + Bangle.on("lock", clock.onLock); + + clock.onHRM = hrmInfo => { + if(hrmInfo.confidence >= clock.HRMinConfidence) + heartRate = hrmInfo.bpm; + }; + Bangle.on('HRM', clock.onHRM); + + const MEDIANLENGTH = 20; // technical + let avr = [], median; // technical + clock.onPressure = pressureInfo => { + while (avr.length>MEDIANLENGTH) avr.pop(); + avr.unshift(pressureInfo.altitude); + median = avr.slice().sort(); + if (median.length>10) { + let mid = median.length>>1; + altitude = E.sum(median.slice(mid-4,mid+5)) / 9; + } + else + altitude = pressureInfo.altitude; + }; + Bangle.on('pressure', clock.onPressure); + + + /* ------------------------------------------------- + Clock related functions but not in the ClockFace module + ---------------------------------------------------- */ + + let unlock = function(){ + if(clock.powerSave){ + turnOnServices(); + } + clock.precision = clock.unlock_precision; + clock.tick(); + }; + + let lock = function(){ + clock.precision = clock.lock_precision; + clock.tick(); + }; + + // starting the clock + clock.start(); +} \ No newline at end of file diff --git a/apps/terminalclock/metadata.json b/apps/terminalclock/metadata.json index 8403a3b4d..809bbc952 100644 --- a/apps/terminalclock/metadata.json +++ b/apps/terminalclock/metadata.json @@ -8,7 +8,7 @@ "type": "clock", "tags": "clock", "supports": ["BANGLEJS", "BANGLEJS2"], - "allow_emulator": true, + "allow_emulator": false, "readme": "README.md", "storage": [ {"name": "terminalclock.app.js","url": "app.js"}, From 9f9eb2ba81d225047c9079b50345afbe342e6ee8 Mon Sep 17 00:00:00 2001 From: Stiralbios Date: Sun, 29 Jan 2023 10:15:20 +0100 Subject: [PATCH 0011/1725] [TerminalClock] Version 0.0.9 --- apps/terminalclock/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/terminalclock/metadata.json b/apps/terminalclock/metadata.json index 809bbc952..fcdafd017 100644 --- a/apps/terminalclock/metadata.json +++ b/apps/terminalclock/metadata.json @@ -3,7 +3,7 @@ "name": "Terminal Clock", "shortName":"Terminal Clock", "description": "A terminal cli like clock displaying multiple sensor data", - "version":"0.08", + "version":"0.09", "icon": "app.png", "type": "clock", "tags": "clock", From c9e28caf10a79fea3908112337481397ea0887bc Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sun, 29 Jan 2023 11:00:28 +0100 Subject: [PATCH 0012/1725] widbatpc Add option to disable vibration when charger connects --- apps/widbatpc/ChangeLog | 1 + apps/widbatpc/settings.js | 6 ++++++ apps/widbatpc/widget.js | 5 ++++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/widbatpc/ChangeLog b/apps/widbatpc/ChangeLog index 782446cb4..97da2cba6 100644 --- a/apps/widbatpc/ChangeLog +++ b/apps/widbatpc/ChangeLog @@ -14,3 +14,4 @@ 0.15: Added option to always display the icon when charging (useful if 'hide if charge greater than' is enabled) 0.16: Increase screen update rate when charging 0.17: Add option 'Remove Jitter'='Drop only' to prevent percentage from getting up again when not charging + Add option to disable vibration when charger connects diff --git a/apps/widbatpc/settings.js b/apps/widbatpc/settings.js index 5cafbf1cf..c988d23bf 100644 --- a/apps/widbatpc/settings.js +++ b/apps/widbatpc/settings.js @@ -16,6 +16,7 @@ 'hideifmorethan': 100, 'alwaysoncharge': false, 'removejitter': 0, + 'buzzoncharge': true, } // ...and overwrite them with any saved values // This way saved values are preserved if a new version adds more settings @@ -78,6 +79,11 @@ format: onOffFormat, onchange: save('alwaysoncharge'), }, + /*LANG*/'Buzz on charge': { + value: s.buzzoncharge, + format: onOffFormat, + onchange: save('buzzoncharge'), + }, /*LANG*/'Remove Jitter': { value: s.removejitter, min: 0, max: 1, diff --git a/apps/widbatpc/widget.js b/apps/widbatpc/widget.js index a204a1f9e..7f483c960 100644 --- a/apps/widbatpc/widget.js +++ b/apps/widbatpc/widget.js @@ -36,6 +36,7 @@ 'hideifmorethan': 100, 'alwaysoncharge': false, 'removejitter': 0, // 0 == off, 1 == downwards only + 'buzzoncharge': true, }; Object.keys(DEFAULTS).forEach(k=>{ if (settings[k]===undefined) settings[k]=DEFAULTS[k]; @@ -161,7 +162,9 @@ } Bangle.on('charging',function(charging) { - if(charging) Bangle.buzz(); + if (setting('buzzoncharge')) { + if(charging) Bangle.buzz(); + } update(); g.flip(); }); From c0d301c1e7c59a1d8e1714cdd5b51deeb7a7ae6b Mon Sep 17 00:00:00 2001 From: Stiralbios Date: Sun, 29 Jan 2023 11:04:35 +0100 Subject: [PATCH 0013/1725] [TerminalClock] Remove fastloading It still have memory leak and I am unable to find why --- apps/terminalclock/ChangeLog | 2 +- apps/terminalclock/app.js | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/terminalclock/ChangeLog b/apps/terminalclock/ChangeLog index 59cabf01c..2df526734 100644 --- a/apps/terminalclock/ChangeLog +++ b/apps/terminalclock/ChangeLog @@ -7,4 +7,4 @@ 0.07: Use ClockFace module and rework the settings to be able to personnalize the order of the lines 0.08: Hide widgets instead of not loading them at all Use Clockface_menu for widgets and power saving settings -0.09: Add, fastload compatibility, default HRM value, default altitude value +0.09: Add default HRM value, default altitude value diff --git a/apps/terminalclock/app.js b/apps/terminalclock/app.js index 392d16227..04e4fb5c8 100644 --- a/apps/terminalclock/app.js +++ b/apps/terminalclock/app.js @@ -78,6 +78,8 @@ }); }, + /* + // todo add fastloading when the memory leak is fixed remove: function() { if (this.turnOnInterval){ clearInterval(this.turnOnInterval); @@ -91,6 +93,7 @@ if (this.onHRM) Bangle.removeListener('HRM', this.onHRM); if (this.onPressure) Bangle.removeListener('onPressure', this.onPressure); } + */ }); From 298df7b877e33e98877448dac9aff99ec30408fb Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 15:55:49 +0100 Subject: [PATCH 0014/1725] Added happy clock --- apps/happyclk/ChangeLog | 1 + apps/happyclk/README.md | 10 ++ apps/happyclk/happyclk.app.js | 170 +++++++++++++++++++++++++++++++++ apps/happyclk/happyclk.icon.js | 1 + apps/happyclk/happyclk.png | Bin 0 -> 469 bytes apps/happyclk/metadata.json | 20 ++++ apps/happyclk/screenshot_1.png | Bin 0 -> 2547 bytes apps/happyclk/screenshot_2.png | Bin 0 -> 2554 bytes 8 files changed, 202 insertions(+) create mode 100644 apps/happyclk/ChangeLog create mode 100644 apps/happyclk/README.md create mode 100644 apps/happyclk/happyclk.app.js create mode 100644 apps/happyclk/happyclk.icon.js create mode 100644 apps/happyclk/happyclk.png create mode 100644 apps/happyclk/metadata.json create mode 100644 apps/happyclk/screenshot_1.png create mode 100644 apps/happyclk/screenshot_2.png diff --git a/apps/happyclk/ChangeLog b/apps/happyclk/ChangeLog new file mode 100644 index 000000000..759f68777 --- /dev/null +++ b/apps/happyclk/ChangeLog @@ -0,0 +1 @@ +0.01: New app! \ No newline at end of file diff --git a/apps/happyclk/README.md b/apps/happyclk/README.md new file mode 100644 index 000000000..e7f0cefa9 --- /dev/null +++ b/apps/happyclk/README.md @@ -0,0 +1,10 @@ +# Happy Clock + +A really happy clock. + +The left eye shows the hour, the right hour the minutes. +The mouth the battery percentage, each eyebrow shows 5k steps. +The left mouthline shows whether your bangle is locked or not and the right whether its connected via bluetooth or not. + +## Creator +- [David Peer](https://github.com/peerdavid). \ No newline at end of file diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js new file mode 100644 index 000000000..aeefa499e --- /dev/null +++ b/apps/happyclk/happyclk.app.js @@ -0,0 +1,170 @@ +/************************************************ + * Happy Clock + */ +var W = g.getWidth(),R=W/2; +var H = g.getHeight(); +var drawTimeout; + + +/* + * Based on the great multi clock from https://github.com/jeffmer/BangleApps/ + */ +Graphics.prototype.drawRotRect = function(cx, cy, r1, r2, angle) { + angle = angle % 360; + var theta=angle*Math.PI/180; + var x = parseInt(cx+r1*Math.sin(theta)*1.2); + var y = parseInt(cy-r1*Math.cos(theta)*1.2); + + g.setColor(g.theme.fg); + g.fillCircle(cx, cy, 32); + g.setColor(g.theme.bg); + g.fillCircle(cx, cy, 28); + + g.setColor(g.theme.fg); + g.fillCircle(x, y, 12); +}; + +let drawEyes = function(){ + // And now the analog time + var drawHourHand = g.drawRotRect.bind(g,55,70,12,R-38); + var drawMinuteHand = g.drawRotRect.bind(g,125,70,12,R-12); + + g.setFontAlign(0,0); + + // Compute angles + var date = new Date(); + var m = parseInt(date.getMinutes() * 360 / 60); + var h = date.getHours(); + h = h > 12 ? h-12 : h; + h += date.getMinutes()/60.0; + h = parseInt(h*360/12); + + // Draw minute and hour fg + g.setColor(g.theme.fg); + drawHourHand(h); + drawMinuteHand(m); +} + +function quadraticCurve(t, p0x, p0y, p1x, p1y, p2x, p2y){ + var t2 = t * t; + var oneMinT = 1 - t; + var oneMinT2 = oneMinT * oneMinT; + return { + x: p0x * oneMinT2 + 2 * p1x * t * oneMinT + p2x *t2, + y: p0y * oneMinT2 + 2 * p1y * t * oneMinT + p2y *t2 + }; +} + +let drawSmile = function(isLocked){ + var w = 8; + var y = 120; + var o = parseInt(E.getBattery()*0.8); + + var isConnected = NRF.getSecurityStatus().connected; + for(var i = 0; i < w; i++){ + drawCurve(30, y+i, W/2+10, y+i+o, W-40, y+i); + } + + for(var i=0; i < w-2; i++){ + if(isLocked) g.drawLine(25, y+5+i, 35, y-5+i); + if(isConnected) g.drawLine(W-35, y+5+i, W-45, y-5+i); + } +} + +let drawEyeBrow = function(){ + var w = 4; + var steps = Bangle.getHealthStatus("day").steps; + var reached = steps / 10000.0; + reached = 1.1; + for(var i = 0; i < w; i++){ + if(reached > 0.5) g.drawLine(25, 25+i, 70, 15+i); + if(reached > 1.0) g.drawLine(W-25, 25+i, W-70, 15+i); + } +} + +// Thanks to user stephaneAG from the Espruino forum! +// https://forum.espruino.com/conversations/330154/#comment14593349 +let drawCurve = function(x1, y1, x2, y2, x3, y3){ + var p0 = { x: x1, y: y1}; + var p1 = { x: x2, y: y2}; + var p2 = { x: x3, y: y3}; + var time = 0; + //var stepping = 0.005; // seems the nicest + //var stepping = 0.05; // a little less neat, yet faster + var stepping = 0.1; // quick enough ? + var pathPts = []; + for(time = 0; time <= 1; time+= stepping){ + var pos = quadraticCurve(time, p0.x, p0.y, p1.x, p1.y, p2.x, p2.y); + pathPts.push(pos.x, pos.y); + } + g.drawPoly(pathPts, false); + g.flip(); +} + + +let draw = function(){ + // Queue draw in one minute + queueDraw(); + + var isLocked = Bangle.isLocked(); + drawHelper(isLocked); +} + +let drawHelper = function(isLocked){ + g.setColor(g.theme.fg); + g.reset().clear(); + + drawEyes(); + drawSmile(isLocked); + drawEyeBrow(); +} + + +/* + * Listeners + */ +Bangle.on('lcdPower',on=>{ + if (on) { + draw(); + } else { // stop draw timer + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + } +}); + +Bangle.on('lock', function(isLocked) { + draw(isLocked); +}); + + +/* + * Some helpers + */ +let queueDraw = function() { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(function() { + drawTimeout = undefined; + draw(); + }, 60000 - (Date.now() % 60000)); +} + + +/* + * Lets start widgets, listen for btn etc. + */ +// Show launcher when middle button pressed +Bangle.setUI("clock"); +Bangle.loadWidgets(); +/* + * we are not drawing the widgets as we are taking over the whole screen + * so we will blank out the draw() functions of each widget and change the + * area to the top bar doesn't get cleared. + */ +require('widget_utils').hide(); + +// Clear the screen once, at startup and draw clock +// g.setTheme({bg:"#fff",fg:"#000",dark:false}); +draw(); + +// After drawing the watch face, we can draw the widgets +// Bangle.drawWidgets(); diff --git a/apps/happyclk/happyclk.icon.js b/apps/happyclk/happyclk.icon.js new file mode 100644 index 000000000..d59fc0668 --- /dev/null +++ b/apps/happyclk/happyclk.icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwgP/ADEP/AEC+E//kH//+gYIB8F//1/B4U/ERgdB/wdB//AFIJGCx/n+P8EIM/+fnE4IBB/PAv4aBv/84E/z/8//8wAFDwwFB74FBgQFD/wFGyF/AoUAz//z/+AoPfAoV/gPP/+/IIP585lCj/z8ZvCw+H/HwPQUf/iACACIrBAAaRCGAP+AoXzAonxAoJRB//lAQJLBC4X/44IE8KeCVoQCBj4CB/iYBEwX+h6sCAAOB8BCD4C+CDwTKCACI=")) \ No newline at end of file diff --git a/apps/happyclk/happyclk.png b/apps/happyclk/happyclk.png new file mode 100644 index 0000000000000000000000000000000000000000..53fbe152ef305866412f0523c6088c97183854bb GIT binary patch literal 469 zcmV;`0V@89P)D=yD>gz z8<52-;B0)e1S0bH-xE^%cd{WU(I6fTMh($;qFhS>tV!I)0M2o3p{kR1Hjjuj5m9Xj zZ=tKg=;Tx`j{xtv-N$*xu*R7&us6!m+MjD4Mz~D-Jb3_3Qv3JN zoMPE<$SGv4#0ZZ#ZHy`a_5O-6K6dA|;^GPz|M}gtiqj z+b!MDXs9STT3f6@RS;(3&criBvuP$~;C=u(7PWVnTpjKpj%HPFp_b-~R--e*=*`5c z(hPG&T1v}v$kxbmy*=^Sc!q#0)I1teiHwbXIqt<$K(*(iom^`djsdR-Qvl)>6iBJD z6wrw(MT~P>2ydaIM4-L2Tflh7!xWO?3atRMzMpYG-5Od8A>YPU9B4@fAEUF?h^z?f zLm#CY^)~RcaphkrRU#lB7*o@(RU)~9*@DpTg{u3b%hp0(++M&BTNMyXm!1(>00000 LNkvXXu0mjf7L3kJ literal 0 HcmV?d00001 diff --git a/apps/happyclk/metadata.json b/apps/happyclk/metadata.json new file mode 100644 index 000000000..51028df4b --- /dev/null +++ b/apps/happyclk/metadata.json @@ -0,0 +1,20 @@ +{ + "id": "happyclk", + "name": "Happy Clock", + "shortName":"Happy Clock", + "icon": "happyclk.png", + "version":"0.01", + "readme": "README.md", + "supports": ["BANGLEJS2"], + "description": ":)", + "type": "clock", + "tags": "clock", + "screenshots": [ + {"url":"screenshot_1.png"}, + {"url":"screenshot_2.png"}, + ], + "storage": [ + {"name":"happyclk.app.js","url":"happyclk.app.js"}, + {"name":"happyclk.img","url":"happyclk.icon.js","evaluate":true} + ] +} diff --git a/apps/happyclk/screenshot_1.png b/apps/happyclk/screenshot_1.png new file mode 100644 index 0000000000000000000000000000000000000000..879b01cbf34ada7ef948777cfa587ab2b27c29d5 GIT binary patch literal 2547 zcmZ`*c{mh$7yivmBQusu3?hRpg|Z}!HCeJN%UGj{vS;5)WhmMCxRE7^A(}CREZL2c z8i}}eVzOjQGmMa2KKFUPKfimP=bZPS_xy3*bI$X;Nms0lxsbw0005V%iJ{FQR{xXi zY=^b#^}O35KtgSd^#P^t#4-Q~vZ>)kyC}D{!tsbX45#7b!NEYD$7Ol)>5^(5c_$V| zM)vs%66#aW+WjXU96Z;vg}Z^qm!a&x2>`IMlTm<5UNc|CP&V1xZT`L4&z>d)Q18MDBAv@$kDzF>b1qWd6Nl^{pWo=auB zqlGWRlQ|zr{U{`E4gzz_3xHyGn<1AkQ?;VuBfo6}7`~M<3@kCs1s|!FW=oD3DCeRI z8`$6T4*~7z152aDW>1bpVQWMI|H{uy=w1BJ7Y5g~)@JQRM~`iUBd&Q*zP=Id=)wL#NO9#Hfg z*p4^vG3=f2(ri9@EVm+Gr@Er(_iJtKYK(!_EMR-m7hm@9W1|e}ub-?`Ar*@3Kp8(3 z)kWknfCtHU2OW(#j#oKw>LDw|#1wD*P{}w&W%4>nrAxMl=wf#~W+bgoUd)8@^NNHO z7bI;WuZ~L*SEBSeUA?3Jx-6lY`xv4e_O-JB$t*N|hDuYUu}m0^ZKJOTV{2(COqH_u zCEr0?)dnSw<`032;LPav3_)+VRXH0wOIqTE6ZBLmYyi)nl`MLtaiMjGK||EB-lcam z56{1^ka%3=QERY4OkyHfn^T=q-3Pymcr54c<5KP6B@f zgRct+f&MV|w@qLt#^*DPgE?y_*%`7@jAo`2l};^|D`(aa;aH3Lr4q-849lxh{3i&Y z`pciVU+6Ku=@vO{4(6iw($~?b^H{msaG}C|$NF=?(Y(uNdYluaT0Vu?9ON)7JTEW4 z5dba@*GazW9-PL4pLQ##!ov!omGaD`8WN%&+8U`|ioFUP4UBlGD&j5>ckzBNgdMId z%he^ZB}}8q4)*$|OdqRnZlhPZuw}%13X)dZW76H%{X}O*#bHzc3Szj%*UzhpjII9E z358SH0tnCxDeU-D5-fko(o;OsI$ule6#jC7wcZgae%Y>d@jHT%Ku#3fW?9AAs%aCe z8+M_%bdOeLSsQ$>uP3nBk4C{0+blMm)sf#)cOcbo zTonneBiPc4{4CxWB(;!K{n~VTmGt3;MNhI87rk7PoUF6%UAxHZH(xL0uggtKS4Ghk zc)W5S2V2VaqTDTxHfna|$=q}+h-)(Qmj?IaFsqe2%Xh~Jw}c?J(%gN5dYR34-}9}j z35TnPb|pdccHJf4NzEo$opdKwd@N^Tp%}h-B3ohL{y+asI~#Qq^1?aUFD@Txcs#WI zk>|Z6L{`moaCDU-EnB7G20X`3)GBL2Ih)${O&nrbaNzAG?b-wDy(NFfl6ZqB+d=9B zD%=NF9f_rQbHf7-u@s8AIsR-aDIk@9x@A3oWy|aC)jY1nDrZK|pe0jO(J}eF?d94yd9Y$kZ~Aj+kl@J75}(w!k(NGER#bu23{J zIVii*#!>JW`xf%fN!pDs70=1tUl2noEncpFwniHCT980R-$c?Q&kwupAYeO)OLcrT z&!=6}U<~D|LBA&wAoM$=>qPcmw+Yxv(Qgkqj_=PXZ#ncgjnz9l3hAL`p9SAGyAsyCWtT*7(ovIuGtoy$ zL(*QmaWGh*&`i4hB&a8SDsh)cwW8fJ&>1mp%_chQVV^w(=V*WYV4xK`!T?Etww+SAgj zEL?7LL3BP+XMPdi;ycNl6AE7taBmQH*i*~k_`%H#7|=Hn|K<-=?wBI#P=T6#wl-Rx zG+Xv`A-h#-Y`2J~6=!7Ao%ins)O~v!fbH-WUJp8O29xEt#{I*-07DeMLifh$UbEdT z2(oL%Zx=yb9Oz;#mfgmbWo8dKoNUhO$o-gbmqmJOrUUHZ;jJA9n_ zs%#(4j$g=6@~Yh0ec=e+BfyyT)iY~V0Bns4IRqU(lU8y{+24njX;|M0N}S@sys#x;6>lP8{9vn#iRwpjp6$+7s^NH4kL+#Ll*~3 MjjRkQ`nb6N0>e(3S^xk5 literal 0 HcmV?d00001 diff --git a/apps/happyclk/screenshot_2.png b/apps/happyclk/screenshot_2.png new file mode 100644 index 0000000000000000000000000000000000000000..d561c3175c23a53563b29773c14a9e39dd73b689 GIT binary patch literal 2554 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 Date: Sun, 29 Jan 2023 15:56:40 +0100 Subject: [PATCH 0015/1725] Added rebble link --- apps/happyclk/README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/happyclk/README.md b/apps/happyclk/README.md index e7f0cefa9..d8680c54f 100644 --- a/apps/happyclk/README.md +++ b/apps/happyclk/README.md @@ -7,4 +7,7 @@ The mouth the battery percentage, each eyebrow shows 5k steps. The left mouthline shows whether your bangle is locked or not and the right whether its connected via bluetooth or not. ## Creator -- [David Peer](https://github.com/peerdavid). \ No newline at end of file +- [David Peer](https://github.com/peerdavid). + +Thanks for this great idea: +http://apps.rebble.io/de_DE/application/55014a037ed24ae745000004?section=watchfaces From c0596a48c79214b2018ae0d649799929d2f63d92 Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 15:57:43 +0100 Subject: [PATCH 0016/1725] Minor fix --- apps/happyclk/happyclk.app.js | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index aeefa499e..136111c82 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -75,7 +75,6 @@ let drawEyeBrow = function(){ var w = 4; var steps = Bangle.getHealthStatus("day").steps; var reached = steps / 10000.0; - reached = 1.1; for(var i = 0; i < w; i++){ if(reached > 0.5) g.drawLine(25, 25+i, 70, 15+i); if(reached > 1.0) g.drawLine(W-25, 25+i, W-70, 15+i); From 549ee39069bdf534068326f5c4f79509074cf3fc Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 15:58:19 +0100 Subject: [PATCH 0017/1725] Fixed metadata --- apps/happyclk/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/happyclk/metadata.json b/apps/happyclk/metadata.json index 51028df4b..ca1f27e69 100644 --- a/apps/happyclk/metadata.json +++ b/apps/happyclk/metadata.json @@ -11,7 +11,7 @@ "tags": "clock", "screenshots": [ {"url":"screenshot_1.png"}, - {"url":"screenshot_2.png"}, + {"url":"screenshot_2.png"} ], "storage": [ {"name":"happyclk.app.js","url":"happyclk.app.js"}, From 60242a500821d3b1559c3fa4819e78a004d5431b Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 16:01:34 +0100 Subject: [PATCH 0018/1725] Minor changes --- apps/happyclk/README.md | 3 +-- apps/happyclk/happyclk.app.js | 11 ++++------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/apps/happyclk/README.md b/apps/happyclk/README.md index d8680c54f..997400eef 100644 --- a/apps/happyclk/README.md +++ b/apps/happyclk/README.md @@ -3,8 +3,7 @@ A really happy clock. The left eye shows the hour, the right hour the minutes. -The mouth the battery percentage, each eyebrow shows 5k steps. -The left mouthline shows whether your bangle is locked or not and the right whether its connected via bluetooth or not. +The mouth the battery percentage, each eyebrow the left mouthline shows whether your bangle is locked or not and the right whether you reached 10k steps. ## Creator - [David Peer](https://github.com/peerdavid). diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index 136111c82..6c443e1a0 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -59,25 +59,22 @@ let drawSmile = function(isLocked){ var w = 8; var y = 120; var o = parseInt(E.getBattery()*0.8); - - var isConnected = NRF.getSecurityStatus().connected; for(var i = 0; i < w; i++){ drawCurve(30, y+i, W/2+10, y+i+o, W-40, y+i); } + var reachedSteps = Bangle.getHealthStatus("day").steps >= 10000; for(var i=0; i < w-2; i++){ if(isLocked) g.drawLine(25, y+5+i, 35, y-5+i); - if(isConnected) g.drawLine(W-35, y+5+i, W-45, y-5+i); + if(reachedSteps) g.drawLine(W-35, y+5+i, W-45, y-5+i); } } let drawEyeBrow = function(){ var w = 4; - var steps = Bangle.getHealthStatus("day").steps; - var reached = steps / 10000.0; for(var i = 0; i < w; i++){ - if(reached > 0.5) g.drawLine(25, 25+i, 70, 15+i); - if(reached > 1.0) g.drawLine(W-25, 25+i, W-70, 15+i); + g.drawLine(25, 25+i, 70, 15+i); + g.drawLine(W-25, 25+i, W-70, 15+i); } } From 1cfb4c1eb22d0f6a6ec871d0dbbc6f2871314bcf Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 17:53:37 +0100 Subject: [PATCH 0019/1725] Minor design imrpvements --- apps/happyclk/README.md | 4 +++- apps/happyclk/happyclk.app.js | 24 +++++++++++++----------- apps/happyclk/metadata.json | 2 +- apps/happyclk/screenshot_1.png | Bin 2547 -> 2530 bytes apps/happyclk/screenshot_2.png | Bin 2554 -> 2550 bytes 5 files changed, 17 insertions(+), 13 deletions(-) diff --git a/apps/happyclk/README.md b/apps/happyclk/README.md index 997400eef..140645fa4 100644 --- a/apps/happyclk/README.md +++ b/apps/happyclk/README.md @@ -1,6 +1,8 @@ # Happy Clock -A really happy clock. +A happy clock. + +![](screenshot_1.png) The left eye shows the hour, the right hour the minutes. The mouth the battery percentage, each eyebrow the left mouthline shows whether your bangle is locked or not and the right whether you reached 10k steps. diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index 6c443e1a0..e6dec0795 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -9,7 +9,7 @@ var drawTimeout; /* * Based on the great multi clock from https://github.com/jeffmer/BangleApps/ */ -Graphics.prototype.drawRotRect = function(cx, cy, r1, r2, angle) { +Graphics.prototype.drawPupils = function(cx, cy, r1, dx, dy, angle) { angle = angle % 360; var theta=angle*Math.PI/180; var x = parseInt(cx+r1*Math.sin(theta)*1.2); @@ -18,16 +18,18 @@ Graphics.prototype.drawRotRect = function(cx, cy, r1, r2, angle) { g.setColor(g.theme.fg); g.fillCircle(cx, cy, 32); g.setColor(g.theme.bg); - g.fillCircle(cx, cy, 28); + g.fillCircle(cx, cy, 27); + g.fillCircle(cx+dx, cy+dy, 28); g.setColor(g.theme.fg); - g.fillCircle(x, y, 12); + g.fillCircle(x, y, 8); + g.fillCircle(x+1, y, 8); }; let drawEyes = function(){ // And now the analog time - var drawHourHand = g.drawRotRect.bind(g,55,70,12,R-38); - var drawMinuteHand = g.drawRotRect.bind(g,125,70,12,R-12); + var drawHour = g.drawPupils.bind(g,55,70,12,1,0,R-38); + var drawMinute = g.drawPupils.bind(g,125,70,12,0,1,R-12); g.setFontAlign(0,0); @@ -41,8 +43,8 @@ let drawEyes = function(){ // Draw minute and hour fg g.setColor(g.theme.fg); - drawHourHand(h); - drawMinuteHand(m); + drawHour(h); + drawMinute(m); } function quadraticCurve(t, p0x, p0y, p1x, p1y, p2x, p2y){ @@ -65,16 +67,16 @@ let drawSmile = function(isLocked){ var reachedSteps = Bangle.getHealthStatus("day").steps >= 10000; for(var i=0; i < w-2; i++){ - if(isLocked) g.drawLine(25, y+5+i, 35, y-5+i); + if(isLocked) g.drawLine(25, y+6+i, 35, y-5+i); if(reachedSteps) g.drawLine(W-35, y+5+i, W-45, y-5+i); } } let drawEyeBrow = function(){ - var w = 4; + var w = 6; for(var i = 0; i < w; i++){ - g.drawLine(25, 25+i, 70, 15+i); - g.drawLine(W-25, 25+i, W-70, 15+i); + g.drawLine(25, 25+i, 70, 15+i%3); + g.drawLine(W-25, 28+i%3, W-68, 19+i); } } diff --git a/apps/happyclk/metadata.json b/apps/happyclk/metadata.json index ca1f27e69..48d05842c 100644 --- a/apps/happyclk/metadata.json +++ b/apps/happyclk/metadata.json @@ -6,7 +6,7 @@ "version":"0.01", "readme": "README.md", "supports": ["BANGLEJS2"], - "description": ":)", + "description": "A happy clock :)", "type": "clock", "tags": "clock", "screenshots": [ diff --git a/apps/happyclk/screenshot_1.png b/apps/happyclk/screenshot_1.png index 879b01cbf34ada7ef948777cfa587ab2b27c29d5..c3e372608e8534e3600be6ede5269c4bf61d59d7 100644 GIT binary patch literal 2530 zcmbVO`8(7L7yo|83^Rjkjmh2}LuI`&crDp7s*$aPi{TcPq|C)NNXDd6jJe3ZO^r3% zAZwGpb*|AF_1_dL%zpL3q)Jf9yvKb+5b=pU!ahd^OvJ?&x*z8?!LOVRjXJE z7uxYFRt{YFW`4ywC-QK6XJDHOqiarLp9Ql!wEZJwmw$O&4}sLTK3WBUy1}Z6nvg&9 zISk(XJVv_!NQ)apOY#OcYbh`X;j>y+RN`dUEK2|I|5z5!=`aM?3?LFnzwmvS~n1E`LVO>f=2tPYxiQYb3at3Q$JjN zGQ4%&IrEHPk4c|x&D|CiWz#P)^Lpx#O4`M7JIs@Fn#@um^EbbzlOV#<#%T5N;YEO9 z#C*1zld|wn7I(*I#Kn42mTI3!vi8tpj)t=u(yJLIF(@kcRGI_ftGTEkdk=z{pO=*d zSW5|T^Il5~wO%3l{?p#C_OF$fmo89Qxl1sapH=0WSr(26lh(tAEcYtS^{x-cfST*- zyUFfUpeyJvE%1{& z>A*$SS_q5#({%@Su+Ot2gXy>Q0iumv78VtD@%$B?R9zRIpuxI)j-?xKxk=BUD6F4Q z%V74DS+hDev-mkBn);@kTcOFHk_<(CXUDlOzK zomlnu)2&%O-%0wc2gC3JE>qnE-vAZkRGy^pvv$(3Dk*WFT z06{6#Xv@5W(A; zf!Z`;XvjzGh=X7Y1`{*ipZajT4yqV`s0Ph74rUPjdK*&?d9R4^UnUy|Ge&=k6UD8b zp2J}b^~mtCmF__lKXW-MpyTj%|L*G%xry-~-j?NN03yx~R7*R0&MrzH+$*L=$Yn^U z10qzp@IRlSZf`bchNbfUKFKap8(SCwM`@K{rhz^tFXz`*pmNbITFf3<?Ht3iL^R}p;Df|ksvS*lcxcejx&s?q8veE(Oqmb4!V2pi~4GPeE%^As)(&z zq$w=Vc)zV+mHSGjX%O?|o^h0J635zNq4CqD7Gbcl45t)?KmM6(%C7P%eIy_&Kp*B$ zGF%GqP1kbRCaqnvRCf%vaxvPFuv*eM{mXe!aA_?6aZCN^%?QDxq^UtbkoRWl%W~eE z!>c9BHhG6P_V&}atn4xPS*4co`id~JUxYhQ z=ZSYhG)uR8u9B9=)C8mcOLecfB|_fdtfxj_Yqb$w>eF4ogGL!WP4;*GO$YhA5=eKI z7lRZM>UsYWGG5wIW%Tq-GbisDT`sa}E^kt>0&nB@m(S7lCB(hef9FEqf5FX(E>C2C zdY2!bYI=3yGZ2H|^NY+r7`49bV8wkD|8|a!X5;8M8BU=+FjHlh+Zl1oyzd;nNc1D} zNlYLHVcSWOcB>F>c6mpD$=``@mbQ3fcq+7#S5-#LhO3B&iTL3l3oG}bVg!_$@{Ln- z;0HBL#4rLilihMF?f)Ny5v%LHnj>uvb#NSX?hWv5Z(bG@E3}hNA z^E~&Tin2Ae`@z5c$Z`@>ktHI2lDe>nmMwQrs zbJaYJf5kXL$8H7t%!#GjKWMUb#54hl+cy^LZyoUr?lR{M2??PGRAZr=ZR(JlRU^%8ZoV~_8Szd}e02$D zwH6(rlA^;{alw03FD|0UeV+lw*}3fbYNX)Aj+Jcu)Pj;E?^{Am9InZ%}D literal 2547 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 MjjRkQ`nb6N0>e(3S^xk5 diff --git a/apps/happyclk/screenshot_2.png b/apps/happyclk/screenshot_2.png index d561c3175c23a53563b29773c14a9e39dd73b689..d290f835050d7a8e475efdb6c55a1c164d5a724c 100644 GIT binary patch literal 2550 zcmbW3dpy$%AIE>cZDt#0k+~L&bYbqvwPWsDhZP~q?1W7&Gxyb~O~^?d_r%F`Lh_KU zIy}qx{>+>_k+d~PXg#iFS z$;;FA*mo8EGbrTuEo^y5`z~O@F%M^;;hD}H0H8%)t|UJWZLxgu?2H{MV`8)8qhQaX z-Q%Qic!3kV?CZ&Scvb+a|FrD$%*@RE1>OC5etaL;b*p%*O)3aGf;(p9#PhwF+p9{q z$O{5t*X>fR1VADG1qLU6FR#Cch3PfH5H?Bc5e}dsyjD#Qs_pie zL7QoM-T^>XhGc$zR{K^(h3T1fl0TixQx2q(c0qj~zl}BTfP5fYw;K;FJtk)?5-9C% zC3iE*9{3@bBn2?kS3&=6U?~L3n)uQ5{KHyRX5t~5#nIDSI5@(yT55AAU)(zqRLjC@emNUAT(#P{dj== zrGel63-eU~s>z75S4wN)6se>LSVOo!kyGPM9WAi}xQJQorz2*P1_cKwA8dnNQM5?f z_!(~ujR33At@27{bZyvNT0_(CDXHWi5W#xj2%_KRLCqP*4~@`rWZm$42S)DGZ3%%} z=OUHmMD7m+Hv;8c;3p~v){;L-Lo+As&dp@17au(>j~bZ z_2-X)4IqQ}?6uRnUoOK2}1Y4S4(ThLT8kV^5>`yV9-UuB7X3>InN1 z@G>PNva`5(xU^IQ#N?RNEe6Bb436aRB~2W2B)oVLF;>9xjuC>NVVvI9a+9)lx8lGK z?3LjbT%CWUkyd5R*HWDR+$qDgkc(=EG8kettc{yv&?@C`6BG7qd;|vN?yC+1%`QRHcvF|1Z!U5*MBNa$EI})U^gMRvP!6}Vt zUC?@oZaI)GsE@H~srwz#Ad6-Pzu1{1vWK?SQB-$FQO>gTjZbK}sXv`2S4t+kWU@ja z>SjV@=qu}{SL6DYnv-8xhuZp@aAd8Z=sgg=X?p-^+)m?esve}I@t_4qJYU&4tn=3W zaCYelue$!<%WDn^a$X*QS3;YKcS6z4c#C}sm2(!Ashl9O;F}5^-bn+Z9v`?C$@)~v zcZ}6rl1$ydX3hyhB4ioEcFlO2q-`j&C52mOg6E<{Zp7d29H0oO^R6vfS6*F^|_gTT;giqI3_YCSi)gku|w76B7P6Gk_ zF@4XSpM$ z9t^Vgcs}NMDC&!=>AjB|R$5iSSizM$-cb|!{JN*TmF-20qxy5O6V4IJNk=0U{bjOloZ;Y$wY8+%tn(6fYB?9c)>O?vFqfh7wqK0W-7;>*Mdq2-h=)hCJNB; zD79d5z<^4DEf^?5j}O+M%*=?qTO=U$+qf=>tU`=cy$6I}+|fiB?SmlRuJhhiUFM1z@;<&7zldIF>r9%%P2eJz~0{7j>a zU)@pQhTkur{JDNGzDW})LP!XX1cCfd63@~GYZqXoi=55P|8>-KVgsQbVXkXAF;LVd}?E0f8sycfAA zs}ns7`NUG2DE#ou!I9-!gTke`#|+tg`7XHX+c;oGx2HGsI|7*o76JH%~}r_t|4 O4)AjGc5QH`r~e0Gc!Zh& literal 2554 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 Date: Sun, 29 Jan 2023 17:56:49 +0100 Subject: [PATCH 0020/1725] Fix --- apps/happyclk/happyclk.app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index e6dec0795..9400c5119 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -28,8 +28,8 @@ Graphics.prototype.drawPupils = function(cx, cy, r1, dx, dy, angle) { let drawEyes = function(){ // And now the analog time - var drawHour = g.drawPupils.bind(g,55,70,12,1,0,R-38); - var drawMinute = g.drawPupils.bind(g,125,70,12,0,1,R-12); + var drawHour = g.drawPupils.bind(g,55,70,12,1,0); + var drawMinute = g.drawPupils.bind(g,125,70,12,0,1); g.setFontAlign(0,0); From e7a1928b33815cf1ed8eea362046d6bd5e61bdf2 Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 17:59:33 +0100 Subject: [PATCH 0021/1725] Minor improvements --- apps/happyclk/happyclk.app.js | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index 9400c5119..b51019ffc 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -62,7 +62,7 @@ let drawSmile = function(isLocked){ var y = 120; var o = parseInt(E.getBattery()*0.8); for(var i = 0; i < w; i++){ - drawCurve(30, y+i, W/2+10, y+i+o, W-40, y+i); + drawCurve(30, y+i, W/2+12, y+i+o, W-40, y+i); } var reachedSteps = Bangle.getHealthStatus("day").steps >= 10000; @@ -87,9 +87,7 @@ let drawCurve = function(x1, y1, x2, y2, x3, y3){ var p1 = { x: x2, y: y2}; var p2 = { x: x3, y: y3}; var time = 0; - //var stepping = 0.005; // seems the nicest - //var stepping = 0.05; // a little less neat, yet faster - var stepping = 0.1; // quick enough ? + var stepping = 0.1; // Stepping defines the speed. var pathPts = []; for(time = 0; time <= 1; time+= stepping){ var pos = quadraticCurve(time, p0.x, p0.y, p1.x, p1.y, p2.x, p2.y); @@ -113,8 +111,8 @@ let drawHelper = function(isLocked){ g.reset().clear(); drawEyes(); - drawSmile(isLocked); drawEyeBrow(); + drawSmile(isLocked); } From 1a49342ccf15bc73fb13b643345fc5752a89abba Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 29 Jan 2023 17:00:47 +0000 Subject: [PATCH 0022/1725] chargent: support BangleJS2 --- apps/chargent/ChangeLog | 1 + apps/chargent/boot.js | 8 +++++--- apps/chargent/boot.min.js | 1 - apps/chargent/metadata.json | 6 +++--- 4 files changed, 9 insertions(+), 7 deletions(-) delete mode 100644 apps/chargent/boot.min.js diff --git a/apps/chargent/ChangeLog b/apps/chargent/ChangeLog index 7f837e50e..ae4aa0e36 100644 --- a/apps/chargent/ChangeLog +++ b/apps/chargent/ChangeLog @@ -1 +1,2 @@ 0.01: First version +0.02: Support BangleJS2 diff --git a/apps/chargent/boot.js b/apps/chargent/boot.js index 802c3f55a..b02d00a8e 100644 --- a/apps/chargent/boot.js +++ b/apps/chargent/boot.js @@ -1,4 +1,6 @@ (() => { + const pin = process.env.HWVERSION === 2 ? D3 : D30; + var id; Bangle.on('charging', (charging) => { if (charging) { @@ -6,9 +8,9 @@ var max = 0; var count = 0; id = setInterval(() => { - var d30 = analogRead(D30); - if (max < d30) { - max = d30; + var battlvl = analogRead(pin); + if (max < battlvl) { + max = battlvl; count = 0; } else { count++; diff --git a/apps/chargent/boot.min.js b/apps/chargent/boot.min.js deleted file mode 100644 index 700198146..000000000 --- a/apps/chargent/boot.min.js +++ /dev/null @@ -1 +0,0 @@ -(function(){var a;Bangle.on("charging",function(e){if(e){if(!a){var c=0,b=0;a=setInterval(function(){var d=analogRead(D30);c Date: Sun, 29 Jan 2023 18:04:40 +0100 Subject: [PATCH 0023/1725] Updated screenshots --- apps/happyclk/screenshot_1.png | Bin 2530 -> 2500 bytes apps/happyclk/screenshot_2.png | Bin 2550 -> 2501 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/apps/happyclk/screenshot_1.png b/apps/happyclk/screenshot_1.png index c3e372608e8534e3600be6ede5269c4bf61d59d7..20bf2d2942e7947bcf540d670e534b87a1a756f1 100644 GIT binary patch delta 2477 zcmV;e2~zgr6T}mcF@JtZL_t(|UhSRHcH=k-&H8O;dihw+Hxu^~x#%EP&}0cmnpbSOH9D->-s7CvXp}XJrH~Ke$JQr2zHqls_a&C)nGyu1RLYUJM=&q*7 zT3WiG!2Q&QrH)^9G5oP_w#2iT7Xfh#nur=KTAZ(mu4#D!v%`Csb5$qOEOuR3>RSph ziwLb&A{ycdU1p?vM4c^fmI2JrU$(@#d;PQanSV))hN1;-?^!sy-j+v80L~2WT^i4T z7_Cb$yvJHCYeUz58zw8>#I0IvYd812j!0o-pY4Tr6k-efJ-RPHg{S~8B8AbqtO6K) z%oo~1piLUt$=R7jD&bO!01Pe7tEebwmPuH=joriw9u< zqkmJzvRKqLBPooAcLl(a5HAH7wJTAeKHb-w!UA~Atq_1Kr|-xcx(IkzC2&*`da&723=Y$#SC!oju_wnKkNR`1ZFU5a=@By*GggJBh^&kf{RdV z7Qg^A1@LcC1uy_K)GY`kNfQtb9UPi?CAzI*m$~o(c zBv%l(;627zuXF8W!a=C@Lca?U0dOz8hqow*twy1~8$ihJuMnH5eQJQc@FF1=z;W%v zcR*(Ti3|bEn773MMzs;6@FG&!nt#5#^})Tm^lVFb0t?`KJ9g-U(Q8}=@Y~jrW}Yp9 zJw|!P^rRERwdgg50E|dsW`KJ(CfeYY5J#+SDZnEs%mna=Q6pnl!fBa1Vr^jn&rV@h zfP2#S>doB9rnW#8bxj1kA;)NE!S0}&VY=5C&)iRI^4u@VY_CS1aZzguO@H9K6!xah zXbO8^n+ z-VZ4}CR*q4+}pEpEn}iLS@e7s4SsOKn7|_-_X_ZIJrlUrL>zreS${S)lP@jQ> zyi5kQ)?@*$br0+7jJl)&7@f+D=2*dMy}|0e&uEH|%-1_MCBQS%xdN~)vpwmYO_ve? zw~W;5brlf6b-mqUWde8$o9ix80N3?)i9x=DLd%z;(UdVt-`Zy3^>&MuQ33q^@=3NYlWai=@giveKE636fQe}# zER6!-^Vj|aFd-$xB`pVd)o*km_C%$1D6kY@mftPVp_eWtQ(zguOuy@Z%oD0|*xy)F z0j&O)irv3|B9_^gB><~+-~#oonhYmH;Q*_3$OZ4aS|#uw&wpA!CCe;S4(#StndN9R zEP-3_9?}cqc@TQ!U%U?s5)(AHG~ zxTO&IbtSQ1;A-%u>485jvp}qt;-_jA;Y|y$wVe>e|9?UJwBfTKMW*V3mBhaGp=$c3 zPT(K!MD_9WE!mafEdy}tF?n`3`y;a_gR8?^3g8}ytM|sOH@THIaq1rUDves^eU7PQ zrezbCTQBpMd3qj~y*+WowxYFptHE2Yh47wI9OJSY+yb|9%T%s~7=<{S*%o-St*Ph9 zTOMFbUw?Qf7<(e`4sZDuVx%u-?vbtFR!-i-pDhx27RalC=mB?itvzkP$hF%6{CDRX zKD~PqHnP1Cxc5$M3vdRId%@i$b$>ijE1m=QK9W43Smx+S=@~Wj%x9@T!!_F{@XY>r zmEk*ryX~7e3uH6W&@#`AYj%crt79||EbJif4u7uzHd4(7vcUb{IQ76rh-aNzbWZo< za)J9>Jpt?_Dl(M?uFip-n6`%@K^C|M{dEr97Rh@>58Q&)r?OfIpKcmOqJRJ6gv#(KAb@?kX%vY90+_@ImEluB0Q+>)C=vw(Fo_W=!>51%_UWck rBqj<7U=kx#hED+j?9)x7NEG-NVnJnEXsjgR00000NkvXXu0mjf+l!5` literal 2530 zcmbVO`8(7L7yo|83^Rjkjmh2}LuI`&crDp7s*$aPi{TcPq|C)NNXDd6jJe3ZO^r3% zAZwGpb*|AF_1_dL%zpL3q)Jf9yvKb+5b=pU!ahd^OvJ?&x*z8?!LOVRjXJE z7uxYFRt{YFW`4ywC-QK6XJDHOqiarLp9Ql!wEZJwmw$O&4}sLTK3WBUy1}Z6nvg&9 zISk(XJVv_!NQ)apOY#OcYbh`X;j>y+RN`dUEK2|I|5z5!=`aM?3?LFnzwmvS~n1E`LVO>f=2tPYxiQYb3at3Q$JjN zGQ4%&IrEHPk4c|x&D|CiWz#P)^Lpx#O4`M7JIs@Fn#@um^EbbzlOV#<#%T5N;YEO9 z#C*1zld|wn7I(*I#Kn42mTI3!vi8tpj)t=u(yJLIF(@kcRGI_ftGTEkdk=z{pO=*d zSW5|T^Il5~wO%3l{?p#C_OF$fmo89Qxl1sapH=0WSr(26lh(tAEcYtS^{x-cfST*- zyUFfUpeyJvE%1{& z>A*$SS_q5#({%@Su+Ot2gXy>Q0iumv78VtD@%$B?R9zRIpuxI)j-?xKxk=BUD6F4Q z%V74DS+hDev-mkBn);@kTcOFHk_<(CXUDlOzK zomlnu)2&%O-%0wc2gC3JE>qnE-vAZkRGy^pvv$(3Dk*WFT z06{6#Xv@5W(A; zf!Z`;XvjzGh=X7Y1`{*ipZajT4yqV`s0Ph74rUPjdK*&?d9R4^UnUy|Ge&=k6UD8b zp2J}b^~mtCmF__lKXW-MpyTj%|L*G%xry-~-j?NN03yx~R7*R0&MrzH+$*L=$Yn^U z10qzp@IRlSZf`bchNbfUKFKap8(SCwM`@K{rhz^tFXz`*pmNbITFf3<?Ht3iL^R}p;Df|ksvS*lcxcejx&s?q8veE(Oqmb4!V2pi~4GPeE%^As)(&z zq$w=Vc)zV+mHSGjX%O?|o^h0J635zNq4CqD7Gbcl45t)?KmM6(%C7P%eIy_&Kp*B$ zGF%GqP1kbRCaqnvRCf%vaxvPFuv*eM{mXe!aA_?6aZCN^%?QDxq^UtbkoRWl%W~eE z!>c9BHhG6P_V&}atn4xPS*4co`id~JUxYhQ z=ZSYhG)uR8u9B9=)C8mcOLecfB|_fdtfxj_Yqb$w>eF4ogGL!WP4;*GO$YhA5=eKI z7lRZM>UsYWGG5wIW%Tq-GbisDT`sa}E^kt>0&nB@m(S7lCB(hef9FEqf5FX(E>C2C zdY2!bYI=3yGZ2H|^NY+r7`49bV8wkD|8|a!X5;8M8BU=+FjHlh+Zl1oyzd;nNc1D} zNlYLHVcSWOcB>F>c6mpD$=``@mbQ3fcq+7#S5-#LhO3B&iTL3l3oG}bVg!_$@{Ln- z;0HBL#4rLilihMF?f)Ny5v%LHnj>uvb#NSX?hWv5Z(bG@E3}hNA z^E~&Tin2Ae`@z5c$Z`@>ktHI2lDe>nmMwQrs zbJaYJf5kXL$8H7t%!#GjKWMUb#54hl+cy^LZyoUr?lR{M2??PGRAZr=ZR(JlRU^%8ZoV~_8Szd}e02$D zwH6(rlA^;{alw03FD|0UeV+lw*}3fbYNX)Aj+Jcu)Pj;E?^{Am9InZ%}D diff --git a/apps/happyclk/screenshot_2.png b/apps/happyclk/screenshot_2.png index d290f835050d7a8e475efdb6c55a1c164d5a724c..5bb00bc38de160a0e8d86053d4e1299a93da59f3 100644 GIT binary patch delta 2478 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 literal 2550 zcmbW3dpy$%AIE>cZDt#0k+~L&bYbqvwPWsDhZP~q?1W7&Gxyb~O~^?d_r%F`Lh_KU zIy}qx{>+>_k+d~PXg#iFS z$;;FA*mo8EGbrTuEo^y5`z~O@F%M^;;hD}H0H8%)t|UJWZLxgu?2H{MV`8)8qhQaX z-Q%Qic!3kV?CZ&Scvb+a|FrD$%*@RE1>OC5etaL;b*p%*O)3aGf;(p9#PhwF+p9{q z$O{5t*X>fR1VADG1qLU6FR#Cch3PfH5H?Bc5e}dsyjD#Qs_pie zL7QoM-T^>XhGc$zR{K^(h3T1fl0TixQx2q(c0qj~zl}BTfP5fYw;K;FJtk)?5-9C% zC3iE*9{3@bBn2?kS3&=6U?~L3n)uQ5{KHyRX5t~5#nIDSI5@(yT55AAU)(zqRLjC@emNUAT(#P{dj== zrGel63-eU~s>z75S4wN)6se>LSVOo!kyGPM9WAi}xQJQorz2*P1_cKwA8dnNQM5?f z_!(~ujR33At@27{bZyvNT0_(CDXHWi5W#xj2%_KRLCqP*4~@`rWZm$42S)DGZ3%%} z=OUHmMD7m+Hv;8c;3p~v){;L-Lo+As&dp@17au(>j~bZ z_2-X)4IqQ}?6uRnUoOK2}1Y4S4(ThLT8kV^5>`yV9-UuB7X3>InN1 z@G>PNva`5(xU^IQ#N?RNEe6Bb436aRB~2W2B)oVLF;>9xjuC>NVVvI9a+9)lx8lGK z?3LjbT%CWUkyd5R*HWDR+$qDgkc(=EG8kettc{yv&?@C`6BG7qd;|vN?yC+1%`QRHcvF|1Z!U5*MBNa$EI})U^gMRvP!6}Vt zUC?@oZaI)GsE@H~srwz#Ad6-Pzu1{1vWK?SQB-$FQO>gTjZbK}sXv`2S4t+kWU@ja z>SjV@=qu}{SL6DYnv-8xhuZp@aAd8Z=sgg=X?p-^+)m?esve}I@t_4qJYU&4tn=3W zaCYelue$!<%WDn^a$X*QS3;YKcS6z4c#C}sm2(!Ashl9O;F}5^-bn+Z9v`?C$@)~v zcZ}6rl1$ydX3hyhB4ioEcFlO2q-`j&C52mOg6E<{Zp7d29H0oO^R6vfS6*F^|_gTT;giqI3_YCSi)gku|w76B7P6Gk_ zF@4XSpM$ z9t^Vgcs}NMDC&!=>AjB|R$5iSSizM$-cb|!{JN*TmF-20qxy5O6V4IJNk=0U{bjOloZ;Y$wY8+%tn(6fYB?9c)>O?vFqfh7wqK0W-7;>*Mdq2-h=)hCJNB; zD79d5z<^4DEf^?5j}O+M%*=?qTO=U$+qf=>tU`=cy$6I}+|fiB?SmlRuJhhiUFM1z@;<&7zldIF>r9%%P2eJz~0{7j>a zU)@pQhTkur{JDNGzDW})LP!XX1cCfd63@~GYZqXoi=55P|8>-KVgsQbVXkXAF;LVd}?E0f8sycfAA zs}ns7`NUG2DE#ou!I9-!gTke`#|+tg`7XHX+c;oGx2HGsI|7*o76JH%~}r_t|4 O4)AjGc5QH`r~e0Gc!Zh& From 9f648c1e1e8d14ff88fcaf3f5996483600e6437c Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 19:56:31 +0100 Subject: [PATCH 0024/1725] Performance improvements --- apps/happyclk/happyclk.app.js | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index b51019ffc..5c8f55997 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -58,15 +58,15 @@ function quadraticCurve(t, p0x, p0y, p1x, p1y, p2x, p2y){ } let drawSmile = function(isLocked){ - var w = 8; var y = 120; var o = parseInt(E.getBattery()*0.8); - for(var i = 0; i < w; i++){ - drawCurve(30, y+i, W/2+12, y+i+o, W-40, y+i); - } + // Draw smile + drawCurve(30, y, W/2+12, y+o, W-40, y); + + // And the two "mouth lines" var reachedSteps = Bangle.getHealthStatus("day").steps >= 10000; - for(var i=0; i < w-2; i++){ + for(var i=0; i < 6; i++){ if(isLocked) g.drawLine(25, y+6+i, 35, y-5+i); if(reachedSteps) g.drawLine(W-35, y+5+i, W-45, y-5+i); } @@ -88,12 +88,15 @@ let drawCurve = function(x1, y1, x2, y2, x3, y3){ var p2 = { x: x3, y: y3}; var time = 0; var stepping = 0.1; // Stepping defines the speed. - var pathPts = []; - for(time = 0; time <= 1; time+= stepping){ - var pos = quadraticCurve(time, p0.x, p0.y, p1.x, p1.y, p2.x, p2.y); - pathPts.push(pos.x, pos.y); + + for(var y = 0; y < 8; y++){ + var pathPts = []; + for(time = 0; time <= 1; time+= stepping){ + var pos = quadraticCurve(time, p0.x, p0.y, p1.x, p1.y, p2.x, p2.y); + pathPts.push(pos.x, pos.y+y); + } + g.drawPoly(pathPts, false); } - g.drawPoly(pathPts, false); g.flip(); } From 916a7c30a8a7930ff24b7b58204e9f2e9e1de53e Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 19:58:41 +0100 Subject: [PATCH 0025/1725] Minor changes --- apps/happyclk/happyclk.app.js | 66 ++++++++++++++++++++--------------- 1 file changed, 37 insertions(+), 29 deletions(-) diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index 5c8f55997..ad8f80cbf 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -7,8 +7,10 @@ var drawTimeout; /* - * Based on the great multi clock from https://github.com/jeffmer/BangleApps/ + * HELPER */ + +// Based on the great multi clock from https://github.com/jeffmer/BangleApps/ Graphics.prototype.drawPupils = function(cx, cy, r1, dx, dy, angle) { angle = angle % 360; var theta=angle*Math.PI/180; @@ -26,6 +28,40 @@ Graphics.prototype.drawPupils = function(cx, cy, r1, dx, dy, angle) { g.fillCircle(x+1, y, 8); }; +let quadraticCurve = function(t, p0x, p0y, p1x, p1y, p2x, p2y){ + var t2 = t * t; + var oneMinT = 1 - t; + var oneMinT2 = oneMinT * oneMinT; + return { + x: p0x * oneMinT2 + 2 * p1x * t * oneMinT + p2x *t2, + y: p0y * oneMinT2 + 2 * p1y * t * oneMinT + p2y *t2 + }; +} + +// Thanks to user stephaneAG from the Espruino forum! +// https://forum.espruino.com/conversations/330154/#comment14593349 +let drawCurve = function(x1, y1, x2, y2, x3, y3){ + var p0 = { x: x1, y: y1}; + var p1 = { x: x2, y: y2}; + var p2 = { x: x3, y: y3}; + var time = 0; + var stepping = 0.1; // Stepping defines the speed. + + for(var y = 0; y < 8; y++){ + var pathPts = []; + for(time = 0; time <= 1; time+= stepping){ + var pos = quadraticCurve(time, p0.x, p0.y, p1.x, p1.y, p2.x, p2.y); + pathPts.push(pos.x, pos.y+y); + } + g.drawPoly(pathPts, false); + } + g.flip(); +} + + +/* + * Draw the clock + */ let drawEyes = function(){ // And now the analog time var drawHour = g.drawPupils.bind(g,55,70,12,1,0); @@ -47,15 +83,6 @@ let drawEyes = function(){ drawMinute(m); } -function quadraticCurve(t, p0x, p0y, p1x, p1y, p2x, p2y){ - var t2 = t * t; - var oneMinT = 1 - t; - var oneMinT2 = oneMinT * oneMinT; - return { - x: p0x * oneMinT2 + 2 * p1x * t * oneMinT + p2x *t2, - y: p0y * oneMinT2 + 2 * p1y * t * oneMinT + p2y *t2 - }; -} let drawSmile = function(isLocked){ var y = 120; @@ -80,25 +107,6 @@ let drawEyeBrow = function(){ } } -// Thanks to user stephaneAG from the Espruino forum! -// https://forum.espruino.com/conversations/330154/#comment14593349 -let drawCurve = function(x1, y1, x2, y2, x3, y3){ - var p0 = { x: x1, y: y1}; - var p1 = { x: x2, y: y2}; - var p2 = { x: x3, y: y3}; - var time = 0; - var stepping = 0.1; // Stepping defines the speed. - - for(var y = 0; y < 8; y++){ - var pathPts = []; - for(time = 0; time <= 1; time+= stepping){ - var pos = quadraticCurve(time, p0.x, p0.y, p1.x, p1.y, p2.x, p2.y); - pathPts.push(pos.x, pos.y+y); - } - g.drawPoly(pathPts, false); - } - g.flip(); -} let draw = function(){ From c958c52c49554fa71fdc3f2dfc0079f03c530319 Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 20:01:15 +0100 Subject: [PATCH 0026/1725] Updated readme --- apps/happyclk/README.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/happyclk/README.md b/apps/happyclk/README.md index 140645fa4..91ad892cb 100644 --- a/apps/happyclk/README.md +++ b/apps/happyclk/README.md @@ -4,8 +4,11 @@ A happy clock. ![](screenshot_1.png) -The left eye shows the hour, the right hour the minutes. -The mouth the battery percentage, each eyebrow the left mouthline shows whether your bangle is locked or not and the right whether you reached 10k steps. +## How to read? +- The left eye shows the hour, the right hour the minutes. +- The happiness decreases as the battery level decreases. +- The left mouthline shows whether your bangle is locked or not +- The right mouthline whether you reached 10k steps or not. ## Creator - [David Peer](https://github.com/peerdavid). From c8b41bf4e985062f178cc183867fa85ce6934e19 Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 20:01:30 +0100 Subject: [PATCH 0027/1725] Minor changes --- apps/happyclk/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/happyclk/README.md b/apps/happyclk/README.md index 91ad892cb..eec6104ed 100644 --- a/apps/happyclk/README.md +++ b/apps/happyclk/README.md @@ -4,7 +4,7 @@ A happy clock. ![](screenshot_1.png) -## How to read? +## How to read this happy clock? - The left eye shows the hour, the right hour the minutes. - The happiness decreases as the battery level decreases. - The left mouthline shows whether your bangle is locked or not From 135fa048b7cc7aba0d2f8f73331d197144cf6b28 Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 20:04:33 +0100 Subject: [PATCH 0028/1725] Added low battery example --- apps/happyclk/README.md | 4 ++++ apps/happyclk/metadata.json | 3 ++- apps/happyclk/screenshot_3.png | Bin 0 -> 2391 bytes 3 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 apps/happyclk/screenshot_3.png diff --git a/apps/happyclk/README.md b/apps/happyclk/README.md index eec6104ed..3540b5aca 100644 --- a/apps/happyclk/README.md +++ b/apps/happyclk/README.md @@ -10,6 +10,10 @@ A happy clock. - The left mouthline shows whether your bangle is locked or not - The right mouthline whether you reached 10k steps or not. +Here you can see an example of a locked bangle with a low battery: + +![](screenshot_3.png) + ## Creator - [David Peer](https://github.com/peerdavid). diff --git a/apps/happyclk/metadata.json b/apps/happyclk/metadata.json index 48d05842c..ef5f9836f 100644 --- a/apps/happyclk/metadata.json +++ b/apps/happyclk/metadata.json @@ -11,7 +11,8 @@ "tags": "clock", "screenshots": [ {"url":"screenshot_1.png"}, - {"url":"screenshot_2.png"} + {"url":"screenshot_2png"}, + {"url":"screenshot_3.png"} ], "storage": [ {"name":"happyclk.app.js","url":"happyclk.app.js"}, diff --git a/apps/happyclk/screenshot_3.png b/apps/happyclk/screenshot_3.png new file mode 100644 index 0000000000000000000000000000000000000000..404bd7918f450afa46832c36f37214a92b78e835 GIT binary patch literal 2391 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 Date: Wed, 16 Nov 2022 21:59:58 +0100 Subject: [PATCH 0029/1725] iconlaunch - Use E.showScroller --- apps/iconlaunch/app.js | 135 ++++++++++------------------------------- 1 file changed, 33 insertions(+), 102 deletions(-) diff --git a/apps/iconlaunch/app.js b/apps/iconlaunch/app.js index acf695ddb..8d155c73e 100644 --- a/apps/iconlaunch/app.js +++ b/apps/iconlaunch/app.js @@ -32,13 +32,14 @@ }) }; s.writeJSON("iconlaunch.cache.json", launchCache); } - let scroll = 0; + let selectedItem = -1; const R = Bangle.appRect; const iconSize = 48; const appsN = Math.floor(R.w / iconSize); const whitespace = (R.w - appsN * iconSize) / (appsN + 1); const itemSize = iconSize + whitespace; + let drawItem = function(itemI, r) { g.clearRect(r.x, r.y, r.x + r.w - 1, r.y + r.h - 1); let x = 0; @@ -61,36 +62,26 @@ } x += iconSize; } - drawText(itemI); + drawText(itemI, r.y); }; - let drawItemAuto = function(i) { - let y = idxToY(i); - g.reset().setClipRect(R.x, y, R.x2, y + itemSize); - drawItem(i, { - x: R.x, - y: y, - w: R.w, - h: itemSize - }); - g.setClipRect(0, 0, g.getWidth() - 1, g.getHeight() - 1); - }; - let lastIsDown = false; - let drawText = function(i) { + + let drawText = function(i, appY) { const selectedApp = launchCache.apps[selectedItem]; const idy = (selectedItem - (selectedItem % 3)) / 3; if (!selectedApp || i != idy) return; - const appY = idxToY(idy) + iconSize / 2; + appY = appY + itemSize/2; g.setFontAlign(0, 0, 0); g.setFont("12x20"); const rect = g.stringMetrics(selectedApp.name); g.clearRect( - R.w / 2 - rect.width / 2, - appY - rect.height / 2, - R.w / 2 + rect.width / 2, - appY + rect.height / 2 + R.w / 2 - rect.width / 2 - 2, + appY - rect.height / 2 - 2, + R.w / 2 + rect.width / 2 + 1, + appY + rect.height / 2 + 1 ); g.drawString(selectedApp.name, R.w / 2, appY); }; + let selectItem = function(id, e) { const iconN = E.clip(Math.floor((e.x - R.x) / itemSize), 0, appsN - 1); const appId = id * appsN + iconN; @@ -108,96 +99,32 @@ } } selectedItem = appId; - drawItems(); + if (scroller) scroller.draw(); }; - let idxToY = function(i) { - return i * itemSize + R.y - (scroll & ~1); - }; - let YtoIdx = function(y) { - return Math.floor((y + (scroll & ~1) - R.y) / itemSize); - }; - let drawItems = function() { - g.reset().clearRect(R.x, R.y, R.x2, R.y2); - g.setClipRect(R.x, R.y, R.x2, R.y2); - let a = YtoIdx(R.y); - let b = Math.min(YtoIdx(R.y2), 99); - for (let i = a; i <= b; i++) - drawItem(i, { - x: R.x, - y: idxToY(i), - w: R.w, - h: itemSize, - }); - g.setClipRect(0, 0, g.getWidth() - 1, g.getHeight() - 1); - }; - drawItems(); - g.flip(); const itemsN = Math.ceil(launchCache.apps.length / appsN); - let onDrag = function(e) { - updateTimeout(); - g.setColor(g.theme.fg); - g.setBgColor(g.theme.bg); - let dy = e.dy; - if (scroll + R.h - dy > itemsN * itemSize) { - dy = scroll + R.h - itemsN * itemSize; - } - if (scroll - dy < 0) { - dy = scroll; - } - scroll -= dy; - scroll = E.clip(scroll, 0, itemSize * (itemsN - 1)); - g.setClipRect(R.x, R.y, R.x2, R.y2); - g.scroll(0, dy); - if (dy < 0) { - g.setClipRect(R.x, R.y2 - (1 - dy), R.x2, R.y2); - let i = YtoIdx(R.y2 - (1 - dy)); - let y = idxToY(i); - while (y < R.y2) { - drawItem(i, { - x: R.x, - y: y, - w: R.w, - h: itemSize, - }); - i++; - y += itemSize; - } - } else { - g.setClipRect(R.x, R.y, R.x2, R.y + dy); - let i = YtoIdx(R.y + dy); - let y = idxToY(i); - while (y > R.y - itemSize) { - drawItem(i, { - x: R.x, - y: y, - w: R.w, - h: itemSize, - }); - y -= itemSize; - i--; - } - } - g.setClipRect(0, 0, g.getWidth() - 1, g.getHeight() - 1); - }; - let mode = { - mode: "custom", - drag: onDrag, - touch: (_, e) => { - if (e.y < R.y - 4) return; - updateTimeout(); - let i = YtoIdx(e.y); - selectItem(i, e); - }, - swipe: (h,_) => { if(settings.swipeExit && h==1) { Bangle.showClock(); } }, - btn: _=> { if (settings.oneClickExit) Bangle.showClock(); }, + + let back = ()=>{}; + if (settings.oneClickExit) back = Bangle.showClock; + + let options = { + h: itemSize, + c: itemsN, + draw: drawItem, + select: selectItem, + back: back, remove: function() { if (timeout) clearTimeout(timeout); + Bangle.removeListener("drag", updateTimeout); + Bangle.removeListener("touch", updateTimeout); + Bangle.removeListener("swipe", swipeHandler); if (settings.fullscreen) { // for fast-load, if we hid widgets then we should show them again require("widget_utils").show(); } } }; + let scroller = E.showScroller(options); + let timeout; const updateTimeout = function(){ if (settings.timeOut!="Off"){ @@ -207,7 +134,11 @@ } }; - updateTimeout(); + let swipeHandler = (h,_) => { if(settings.swipeExit && h==1) { Bangle.showClock(); } }; + + Bangle.on("swipe", swipeHandler) + Bangle.on("drag", updateTimeout); + Bangle.on("touch", updateTimeout); - Bangle.setUI(mode); + updateTimeout(); } From 84f048f058409bf5b6bb9d56983cb2289e0a5db4 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 29 Jan 2023 22:09:15 +0100 Subject: [PATCH 0030/1725] iconlaunch - Adapt README --- apps/iconlaunch/README.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/apps/iconlaunch/README.md b/apps/iconlaunch/README.md index 0d36fdeb4..49d01d3fd 100644 --- a/apps/iconlaunch/README.md +++ b/apps/iconlaunch/README.md @@ -6,7 +6,3 @@ This launcher shows 9 apps per screen, making it much faster to navigate versus ![A screenshot](screenshot1.png) ![Another screenshot](screenshot2.png) - -## Technical note - -The app uses `E.showScroller`'s code in the app but not the function itself because `E.showScroller` doesn't report the position of a press to the select function. From 2bc311bcf7a9b375aa94f7abbc13409ead474dd3 Mon Sep 17 00:00:00 2001 From: David Peer Date: Sun, 29 Jan 2023 22:21:57 +0100 Subject: [PATCH 0031/1725] Fixed metadata --- apps/happyclk/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/happyclk/metadata.json b/apps/happyclk/metadata.json index ef5f9836f..2388db667 100644 --- a/apps/happyclk/metadata.json +++ b/apps/happyclk/metadata.json @@ -11,7 +11,7 @@ "tags": "clock", "screenshots": [ {"url":"screenshot_1.png"}, - {"url":"screenshot_2png"}, + {"url":"screenshot_2.png"}, {"url":"screenshot_3.png"} ], "storage": [ From 1a97f2bf41b1facf85e64a39cd31729822657676 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 29 Jan 2023 22:48:14 +0000 Subject: [PATCH 0032/1725] lightswitch: whitespace --- apps/lightswitch/README.md | 60 +++++++++++++++++++------------------- apps/lightswitch/widget.js | 2 +- 2 files changed, 31 insertions(+), 31 deletions(-) diff --git a/apps/lightswitch/README.md b/apps/lightswitch/README.md index 67d070f5c..46c383a92 100644 --- a/apps/lightswitch/README.md +++ b/apps/lightswitch/README.md @@ -1,6 +1,6 @@ # Light Switch Widget -With this widget I wanted to create a solution to quickly en-/disable the LCD backlight and even change the brightness. +With this widget I wanted to create a solution to quickly en-/disable the LCD backlight and even change the brightness. In addition it shows the lock status with the option to personalize the lock icon with a tiny image. All touch and drag inputs related to this widget are cached/masked to prevent actions in the active app. @@ -9,32 +9,32 @@ All touch and drag inputs related to this widget are cached/masked to prevent ac --- ### Control --- -* __On / off__ +* __On / off__ Single touch the widget to en-/disable the backlight. -* __Change brightness__ _(can be disabled)_ +* __Change brightness__ _(can be disabled)_ First touch the widget, then quickly touch the screen again and drag up/down until you reach your wished brigthness. -* __Double tap to flash backlight__ _(can be disabled)_ - By defaut you can double tap on the right side of your bangle to flash the backlight for a short duration. +* __Double tap to flash backlight__ _(can be disabled)_ + By defaut you can double tap on the right side of your bangle to flash the backlight for a short duration. (While the backlight is active your bangle will be unlocked.) -* __Double tap to unlock__ _(disabled by default)_ +* __Double tap to unlock__ _(disabled by default)_ If a side is defined in the app settings, your bangle will be unlocked if you double tap on that side. --- ### Settings --- #### Widget - Change the apperance of the widget: -* __Bulb col__ - _red_ / _yellow_ / _green_ / __cyan__ / _blue_ / _magenta_ - Define the color used for the lightbulbs inner circle. +* __Bulb col__ + _red_ / _yellow_ / _green_ / __cyan__ / _blue_ / _magenta_ + Define the color used for the lightbulbs inner circle. The selected color will be dimmed depending on the actual brightness value. -* __Image__ - __default__ / _random_ / _..._ +* __Image__ + __default__ / _random_ / _..._ Set your favourite lock icon image. (If no image file is found _no image_ will be displayed.) * _random_ -> Select a random image on each time the widget is drawn. #### Control - Change when and how to use the widget: -* __Touch__ - _on def clk_ / _on all clk_ / _clk+setting_ / _clk+launch_ / _except apps_ / __always on__ +* __Touch__ + _on def clk_ / _on all clk_ / _clk+setting_ / _clk+launch_ / _except apps_ / __always on__ Select when touching the widget is active to en-/disable the backlight. * _on def clk_ -> only on your selected main clock face * _on all clk_ -> on all apps of the type _clock_ @@ -42,32 +42,32 @@ All touch and drag inputs related to this widget are cached/masked to prevent ac * _clk+launch_ -> on all apps of the types _clock_ and _launch_ * _except apps_ -> on all apps of the types _clock_ and _launch_ and in the settings * _always on_ -> always enabled when the widget is displayed -* __Oversize__ - _0px_ / _1px_ / _..._ / __20px__ / _..._ / _50px_ +* __Oversize__ + _0px_ / _1px_ / _..._ / __20px__ / _..._ / _50px_ To make it easier to hit the widget, this value extends the touch area of the widget in all directions. -* __Drag Delay__ - _off_ / _50ms_ / _100ms_ / _..._ / __500ms__ / _..._ / _1000ms_ +* __Drag Delay__ + _off_ / _50ms_ / _100ms_ / _..._ / __500ms__ / _..._ / _1000ms_ Change the maximum delay between first touch and re-touch/drag to change the brightness or disable changing the brightness completely. -* __Min Value__ - _1%_ / _2%_ / _..._ / __10%__ / _..._ / _100%_ - Set the minimal level of brightness you can change to. +* __Min Value__ + _1%_ / _2%_ / _..._ / __10%__ / _..._ / _100%_ + Set the minimal level of brightness you can change to. #### Unlock - Set double tap side to unlock: -* __TapSide__ +* __TapSide__ __off__ / _left_ / _right_ / _top_ / _bottom_ / _front_ / _back_ #### Flash - Change if and how to flash the backlight: -* __TapSide__ - _off_ / _left_ / __right__ / _top_ / _bottom_ / _front_ / _back_ +* __TapSide__ + _off_ / _left_ / __right__ / _top_ / _bottom_ / _front_ / _back_ Set double tap side to flash the backlight or disable completely. -* __Tap__ - _on locked_ / _on unlocked_ / __always on__ +* __Tap__ + _on locked_ / _on unlocked_ / __always on__ Select when a double tap is recognised. -* __Timeout__ - _0.5s_ / _1s_ / _..._ / __2s__ / _..._ / _10s_ +* __Timeout__ + _0.5s_ / _1s_ / _..._ / __2s__ / _..._ / _10s_ Change how long the backlight will be activated on a flash. -* __Min Value__ - _1%_ / _2%_ / _..._ / __20%__ / _..._ / _100%_ +* __Min Value__ + _1%_ / _2%_ / _..._ / __20%__ / _..._ / _100%_ Set the minimal level of brightness for the backlight on a flash. --- @@ -81,7 +81,7 @@ All touch and drag inputs related to this widget are cached/masked to prevent ac Examples in default light and dark theme. -| Lock | Heart | Invader | JS | Smiley | Skull | Storm | +| Lock | Heart | Invader | JS | Smiley | Skull | Storm | |:----:|:-----:|:-------:|:--:|:------:|:-----:|:-----:| | ![](images/image_lock.png) | ![](images/image_heart.png) | ![](images/image_invader.png) | ![](images/image_js.png) | ![](images/image_smiley.png) | ![](images/image_skull.png) | ![](images/image_storm.png) | diff --git a/apps/lightswitch/widget.js b/apps/lightswitch/widget.js index 9eb488aca..8ba139d4a 100644 --- a/apps/lightswitch/widget.js +++ b/apps/lightswitch/widget.js @@ -251,7 +251,7 @@ w = undefined; } }); - + Bangle.on("lock", locked => { var w = WIDGETS.lightswitch; // set lcd brightness on unlocking From fe9572bdbe115284df7299f30207a17b846cf2b1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 29 Jan 2023 22:48:23 +0000 Subject: [PATCH 0033/1725] lightswitch: tap-to-lock setting --- apps/lightswitch/README.md | 2 ++ apps/lightswitch/settings.js | 7 +++++++ apps/lightswitch/widget.js | 9 +++++++-- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/apps/lightswitch/README.md b/apps/lightswitch/README.md index 46c383a92..c17a6a4ed 100644 --- a/apps/lightswitch/README.md +++ b/apps/lightswitch/README.md @@ -51,6 +51,8 @@ All touch and drag inputs related to this widget are cached/masked to prevent ac * __Min Value__ _1%_ / _2%_ / _..._ / __10%__ / _..._ / _100%_ Set the minimal level of brightness you can change to. +* __Tap to lock__ + Tapping the widget locks the screen, rather than toggling brightness. #### Unlock - Set double tap side to unlock: * __TapSide__ diff --git a/apps/lightswitch/settings.js b/apps/lightswitch/settings.js index 5ac70bc28..aff45a444 100644 --- a/apps/lightswitch/settings.js +++ b/apps/lightswitch/settings.js @@ -10,6 +10,7 @@ oversize: 20, dragDelay: 500, minValue: 0.1, + tapToLock: false, unlockSide: "", tapSide: "right", tapOn: "always", @@ -119,6 +120,11 @@ max: 100, step: 1 }, + tapToLock: { + title: ["on", "off"], + value: [true, false], + drawWidgets: false + }, unlockSide: { title: ["off", "left", "right", "top", "bottom", "front", "back"], value: ["", "left", "right", "top", "bottom", "front", "back"] @@ -154,6 +160,7 @@ "Oversize": getEntry("oversize"), "Drag Delay": getEntry("dragDelay"), "Min Value": getEntry("minValue"), + "Tap to lock": getEntry("tapToLock"), "-- Unlock": 0, "TapSide": getEntry("unlockSide"), "-- Flash": 0, diff --git a/apps/lightswitch/widget.js b/apps/lightswitch/widget.js index 8ba139d4a..922875216 100644 --- a/apps/lightswitch/widget.js +++ b/apps/lightswitch/widget.js @@ -7,6 +7,7 @@ oversize: 20, dragDelay: 500, minValue: 0.1, + tapToLock: false, unlockSide: "", tapSide: "right", tapOn: "always", @@ -208,8 +209,12 @@ w.dragStatus = "off"; }, w.dragDelay, w); } - // switch backlight - w.changeValue(); + if (w.tapToLock) { + Bangle.setLocked(true); + } else { + // switch backlight + w.changeValue(); + } // masks this touch event by messing up the event handler // see https://github.com/espruino/Espruino/issues/2151 Bangle.removeListener("touch", w.touchListener); From 70a4371cf4398e33e0b9af93ab40e438980dfece Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 29 Jan 2023 23:02:50 +0000 Subject: [PATCH 0034/1725] widalarmeta: don't show for hidden alarms --- apps/widalarmeta/widget.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/widalarmeta/widget.js b/apps/widalarmeta/widget.js index ff3390d89..5d6a8bc9c 100644 --- a/apps/widalarmeta/widget.js +++ b/apps/widalarmeta/widget.js @@ -8,7 +8,12 @@ }, require("Storage").readJSON("widalarmeta.json",1) || {}); function draw() { - const times = alarms.map(alarm => require("sched").getTimeToAlarm(alarm)).filter(a => a !== undefined); + const times = alarms + .map(alarm => { + alarm.hidden !== true + && require("sched").getTimeToAlarm(alarm) + }) + .filter(a => a !== undefined); const next = Math.min.apply(null, times); let calcWidth = 0; let drawSeconds = false; From a8d6423cfb99930cafdd128fd74b6785611afb86 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 30 Jan 2023 09:38:51 +0000 Subject: [PATCH 0035/1725] Changelog for #2542 --- apps/widalarmeta/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/widalarmeta/ChangeLog b/apps/widalarmeta/ChangeLog index 19a19c006..8bdf1156f 100644 --- a/apps/widalarmeta/ChangeLog +++ b/apps/widalarmeta/ChangeLog @@ -3,3 +3,4 @@ Add settings page Add option to show seconds 0.03: Fix Bell not appearing on alarms > 24h and redrawing interval + Update to match the default alarm widget, and not show itself when an alarm is hidden. From 9d9a20b9f5d42fa5d439be56e310d9752cd33db3 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 30 Jan 2023 10:29:31 +0000 Subject: [PATCH 0036/1725] fix settings page --- apps/clock_info/ChangeLog | 1 + apps/clock_info/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/clock_info/ChangeLog b/apps/clock_info/ChangeLog index 66c49cbb1..7d51e0da5 100644 --- a/apps/clock_info/ChangeLog +++ b/apps/clock_info/ChangeLog @@ -1 +1,2 @@ 0.01: Moved from modules/clock_info.js +0.02: Fix settings page diff --git a/apps/clock_info/metadata.json b/apps/clock_info/metadata.json index 457180588..6cc3e1233 100644 --- a/apps/clock_info/metadata.json +++ b/apps/clock_info/metadata.json @@ -1,7 +1,7 @@ { "id": "clock_info", "name": "Clock Info Module", "shortName": "Clock Info", - "version":"0.01", + "version":"0.02", "description": "A library used by clocks to provide extra information on the clock face (Altitude, BPM, etc)", "icon": "app.png", "type": "module", From 5e1dc79bb560fd322501e79259a9f914a1cb7c58 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 30 Jan 2023 11:55:11 +0100 Subject: [PATCH 0037/1725] iconlaunch - Bump version --- apps/iconlaunch/ChangeLog | 1 + apps/iconlaunch/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/iconlaunch/ChangeLog b/apps/iconlaunch/ChangeLog index 0c33a4871..6f0e8194c 100644 --- a/apps/iconlaunch/ChangeLog +++ b/apps/iconlaunch/ChangeLog @@ -20,3 +20,4 @@ still be loaded when they weren't supposed to. 0.15: Ensure that we hide widgets if in fullscreen mode (So that widgets are still hidden if launcher is fast-loaded) +0.16: Use firmware provided E.showScroller method diff --git a/apps/iconlaunch/metadata.json b/apps/iconlaunch/metadata.json index 27f6386d3..435a29b39 100644 --- a/apps/iconlaunch/metadata.json +++ b/apps/iconlaunch/metadata.json @@ -2,7 +2,7 @@ "id": "iconlaunch", "name": "Icon Launcher", "shortName" : "Icon launcher", - "version": "0.15", + "version": "0.16", "icon": "app.png", "description": "A launcher inspired by smartphones, with an icon-only scrollable menu.", "tags": "tool,system,launcher", From 9645b287b522a9d5cc0fb35ec62a032d60cc6815 Mon Sep 17 00:00:00 2001 From: David Peer Date: Mon, 30 Jan 2023 17:38:18 +0100 Subject: [PATCH 0038/1725] Added styles --- apps/bwclk/README.md | 1 + apps/happyclk/happyclk.app.js | 81 +++++++++++++++++++++++++++-- apps/happyclk/happyclk.settings.js | 32 ++++++++++++ apps/happyclk/metadata.json | 9 ++-- apps/happyclk/screenshot_2.png | Bin 2501 -> 2297 bytes apps/happyclk/screenshot_4.png | Bin 0 -> 2494 bytes apps/happyclk/screenshot_5.png | Bin 0 -> 2508 bytes 7 files changed, 117 insertions(+), 6 deletions(-) create mode 100644 apps/happyclk/happyclk.settings.js create mode 100644 apps/happyclk/screenshot_4.png create mode 100644 apps/happyclk/screenshot_5.png diff --git a/apps/bwclk/README.md b/apps/bwclk/README.md index 5e2a7b55f..882d525f6 100644 --- a/apps/bwclk/README.md +++ b/apps/bwclk/README.md @@ -11,6 +11,7 @@ sub-items simply swipe up/down. To run an action (e.g. trigger home assistant), ![](screenshot_3.png) +Note: Check out the settings to change different themes. ## Settings - Screen: Normal (widgets shown), Dynamic (widgets shown if unlocked) or Full (widgets are hidden). diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index ad8f80cbf..5eac225e9 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -1,6 +1,78 @@ /************************************************ * Happy Clock */ + + +/************************************************ + * Settings + */ +const storage = require('Storage'); +const SETTINGS_FILE = "happyclk.setting.json"; + +let settings = { + color: "Dark" +}; + +let saved_settings = storage.readJSON(SETTINGS_FILE, 1) || settings; +for (const key in saved_settings) { + settings[key] = saved_settings[key]; +} + +var color_map = { + "Dark":{ + fg: "#fff", + bg: "#000", + eye: "#fff", + eyePupils: "#000" + }, + "Black":{ + fg: "#fff", + bg: "#000", + eye: "#000", + eyePupils: "#fff" + }, + "White":{ + fg: "#000", + bg: "#fff", + eye: "#fff", + eyePupils: "#000" + }, + "Blue":{ + fg: "#fff", + bg: "#00f", + eye: "#fff", + eyePupils: "#000" + }, + "Green":{ + fg: "#000", + bg: "#0f0", + eye: "#fff", + eyePupils: "#000" + }, + "Red":{ + fg: "#fff", + bg: "#f00", + eye: "#fff", + eyePupils: "#000" + }, + "Purple":{ + fg: "#fff", + bg: "#f0f", + eye: "#fff", + eyePupils: "#000" + }, + "Yellow":{ + fg: "#000", + bg: "#ff0", + eye: "#fff", + eyePupils: "#000" + } +}; +var colors = color_map[settings.color]; + +/************************************************ + * Globals + */ var W = g.getWidth(),R=W/2; var H = g.getHeight(); var drawTimeout; @@ -19,11 +91,12 @@ Graphics.prototype.drawPupils = function(cx, cy, r1, dx, dy, angle) { g.setColor(g.theme.fg); g.fillCircle(cx, cy, 32); - g.setColor(g.theme.bg); + + g.setColor(colors.eye); g.fillCircle(cx, cy, 27); g.fillCircle(cx+dx, cy+dy, 28); - g.setColor(g.theme.fg); + g.setColor(colors.eyePupils); g.fillCircle(x, y, 8); g.fillCircle(x+1, y, 8); }; @@ -85,6 +158,7 @@ let drawEyes = function(){ let drawSmile = function(isLocked){ + g.setColor(colors.fg); var y = 120; var o = parseInt(E.getBattery()*0.8); @@ -100,6 +174,7 @@ let drawSmile = function(isLocked){ } let drawEyeBrow = function(){ + g.setColor(colors.fg); var w = 6; for(var i = 0; i < w; i++){ g.drawLine(25, 25+i, 70, 15+i%3); @@ -170,7 +245,7 @@ Bangle.loadWidgets(); require('widget_utils').hide(); // Clear the screen once, at startup and draw clock -// g.setTheme({bg:"#fff",fg:"#000",dark:false}); +g.setTheme({bg:colors.bg,fg:colors.fg,dark:false}); draw(); // After drawing the watch face, we can draw the widgets diff --git a/apps/happyclk/happyclk.settings.js b/apps/happyclk/happyclk.settings.js new file mode 100644 index 000000000..2cbadc9ca --- /dev/null +++ b/apps/happyclk/happyclk.settings.js @@ -0,0 +1,32 @@ +(function(back) { + const SETTINGS_FILE = "happyclk.setting.json"; + + // initialize with default settings... + const storage = require('Storage') + let settings = { + color: "Dark" + }; + let saved_settings = storage.readJSON(SETTINGS_FILE, 1) || settings; + for (const key in saved_settings) { + settings[key] = saved_settings[key] + } + + function save() { + storage.write(SETTINGS_FILE, settings) + } + + var colorOptions = ["Dark", "Black", "White", "Blue", "Green", "Red", "Purple", "Yellow"]; + E.showMenu({ + '': { 'title': 'Happy Clock' }, + '< Back': back, + 'Theme': { + value: 0 | colorOptions.indexOf(settings.color), + min: 0, max: colorOptions.length, + format: v => colorOptions[v], + onchange: v => { + settings.color = colorOptions[v]; + save(); + }, + } + }); +}) diff --git a/apps/happyclk/metadata.json b/apps/happyclk/metadata.json index 2388db667..e5129b0f0 100644 --- a/apps/happyclk/metadata.json +++ b/apps/happyclk/metadata.json @@ -3,7 +3,7 @@ "name": "Happy Clock", "shortName":"Happy Clock", "icon": "happyclk.png", - "version":"0.01", + "version":"0.02", "readme": "README.md", "supports": ["BANGLEJS2"], "description": "A happy clock :)", @@ -12,10 +12,13 @@ "screenshots": [ {"url":"screenshot_1.png"}, {"url":"screenshot_2.png"}, - {"url":"screenshot_3.png"} + {"url":"screenshot_3.png"}, + {"url":"screenshot_4.png"}, + {"url":"screenshot_5.png"} ], "storage": [ {"name":"happyclk.app.js","url":"happyclk.app.js"}, - {"name":"happyclk.img","url":"happyclk.icon.js","evaluate":true} + {"name":"happyclk.img","url":"happyclk.icon.js","evaluate":true}, + {"name":"happyclk.settings.js","url":"happyclk.settings.js"} ] } diff --git a/apps/happyclk/screenshot_2.png b/apps/happyclk/screenshot_2.png index 5bb00bc38de160a0e8d86053d4e1299a93da59f3..49c09ee31d132eb8327ccada14e3948fc5c5c9e6 100644 GIT binary patch literal 2297 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 diff --git a/apps/happyclk/screenshot_4.png b/apps/happyclk/screenshot_4.png new file mode 100644 index 0000000000000000000000000000000000000000..b84e41ab128e8eb0214140d11da5665ddd43271c GIT binary patch literal 2494 zcmb7GYc!M#7k=NlnQJ5>LBQ=nli z$^T8StZ3lt>rMHjF&&m?P6_Gg&eBnwXY^RJbHSG%0TizKopsL#KgPi&1#L<8O$hi% zjS)|B=k7NyM+xIt9E`pNLTitbuU6R=(7>*~PJ zm%oXE?C*osS)%Wc_~C0RnsnI5bPONDEAffZacq>8%)7Mv{3Wf+Z9Khj>q|&JWRyc7 zGOpZcW$);JXN^*eZ6h5lk~jeNJ_}ZNkza0~{WTIJx!mu8__^G|a?uJ9S`%6faGmOr z5k+EN(8X0CqxJFX&qbsXY=$g-FtQh^GmiI*p8*pzs92*C1v$qHP0VP%t%FI>V8-9@ zVb8W1uyCy@QR8SXPG%GR%$r3?NcpsSA(RZznOl4*TYXl|EE1mErbrFBN*`@ZIAORZ zmX`%qd(c!*It|dz?F%`hAAjeV{|Z9V)4VV4$96E-JR<83!q^hRWG}Sl?@i9UU-q3BB8OW+fRYbLq}t-eo95lbm*=#*MtWJ=RMZ{ zGuWZIDo?>%t;2o4Zf*$fx4&-&Gic;^u#$stw093E3CuZ!>PeGBhLzH#*^e21?e`^t z-&4|ya)h~`}Y4kEZNa7C`N}}^QRYy2XihoVEYJ;V`7V2X61|*Jdf7E-z-}6MW*~PMK>^Jb;#=g zH>E=#WFQ1}#LO_oWxdfMxSI6=jJ)=0d+I!zc~JJiC&opw!_3O6O)KmI6g|TsVkzzB zw2xDHWzDvVT!j(LiRdlIhF*#AZW`XCT$sJh+4c8NmIJ%!J3FV7~Lz?rXT0{ZV{l^8Q?i_;iyckY zj7i}@9<*f z=skYUN6WX7wSU+OTAZ5M*183%bfBL89no~Ju2MPYzmT$#@~PPS;g&qjcUyY-3}7Mz ziHD*jF6NqW$=@ke2px8gtzD18%8JG=kPKIIElUKQ)>L4yOOSh!-h1$u&oWDdj*_9A zW2XgWYO76nxqVWMVn(-FV84Has6mlfSH0SDP8qh>Pt5nbGQa+Jji92=9ZI~f@LrJBrY1?h(@* zVrIL)Yn5N+`bgWf{%=rFA*L?CdhAoz8xeBlSmDeCBFE?Mlpj(eLKR@gpsOYBtlJ09 z7m5i=sRcL~OG@Mu{vjJsXg5 zJFIuN@cP}jUPOb1+{SF7MLtZHgm4G6&-pV3ItGG=#L> zk2ww*j3bI3aG_CCS}|?-6=AP&7h+?g4V%IPbl-}eMZg**d(Y>>c0Nl@%*t^fc0SNb zMJ$U6uo#fJq-~OHhYg;CFWa1QIzE(yJ;Lkpq48oIG43Gjk`y7cB9K_Ve|*AgBGFbC zaaFD50Jy8Gop(sn2r?)0Re2kBjn_Zuy0P-N9G>m=*>Lm!hrAAuoK!ErebGI#@sI&t M?&N(nuC(-j0LR~dGXMYp literal 0 HcmV?d00001 diff --git a/apps/happyclk/screenshot_5.png b/apps/happyclk/screenshot_5.png new file mode 100644 index 0000000000000000000000000000000000000000..1a711096e59d0bd0d8d342d4b59e400d23b88ade GIT binary patch literal 2508 zcmV;-2{ZPIP)Px;hDk(0RCr$Po!NHdAP_|3|Nm&uaS~-@S2d=kx3Ng?~_> zr~(fFT+}%<`&$733=m2y0Dw!|hsFb7Fi=_n09@KWG#&thfzk>9;L`S?@cJU006$R@A3Hg&nI3qO%M0>03Wd4 zIR${z^Sj^cls#atb^%}j9IAi>)^kGvZm4adn=e&DXo0O%@1FaJfmZl0GDcvn1nf1A zsDAGTb(sXFjN{BZE10X%VTFFT{7nh4#-v?#5oTz!642oQ&oE@C1=wu84(+N!?GEs4 z1F8zoDS7UWnXO;19Tl{70eH6P6@=9SDm`zuw$%NzXaaBwt6YB;+}6H^0&Ly6Rba~24+-4X9=if;-I;7g@7f;E$K5Uf z?`kCaZLa_Tw$~VUFjN2l8;Xld+baNo?KQ?73>5&thT`JV_6h)CdyR1iLj?e^p}4rT zy#h-BEZJB;B;8?8dIw!f0<1BH%7PVu-cgq_09%;Tg1QpSyX%r3U{8atKxYOSy8O76 z7GSACPX%oc=1mlrrYaWo=gcOnuP-?}eLIixs$%K^>XKDFE)7 z6ag;BJP(K|cq6o-N(>KO&i;f0oE_dntUKc@&C0GzmNF|8;Or(vC2l|1N|~7{yc)dT z^>8S_l~bk%u_T27uyPfBET*5&FZnA=!h5cqz9ZXetHSG0wAaZ-47T|8=G z04$tMdWTCFb60>@Dyc?hCW$5H0I!}h+FE!QU93|W0855D<5+GA?~uM8DGY!aP)ZH~ zz@KVaJa+#Z9M-!KyG)hRg&Y!C5)18PO%r%Gc)1Yori*1A41nhZ!P`}+GGeFnwXTB! zFaS1Cz^@Jlzy|gqfdQ}qR(_WRzyR2fHiJ6>U;u1@mER=+FaY+W&EQS|7yuh!<#$O> zfa!0_F@IZ@C9KucIP5~O>?BO z6wU-N=R47^mU%(ETKc+{5SF!YB)}u-d$$|Got310_JsGx>-Qga)(mV;HoGQpW{5Qg z&ooJz!vEp#{{pzCUmS3H$IR4)YKuF-RuD@QX>b?{04O zh1Xh$H7R9bl=q8Iv%$X8->P)@n}H$#wo2i<+KVzN3%n!sFx5w|&n*Tu)%K7QqGi^( zu^O<>=Tm8{xxQDzR4gST;C0`HkdzbL)i^amXMOGkZ*OpG2HmXwx31%@%e5V$3G9)? zGYpI}DSJ&ErOVq)8&v~;jHLc<(6sj^BtW;y5bK4>dnxqU;tWZg0p1iP1ZCFMJ`eMH z^|L3u)C}dJ#b?mmCryMd=>Vn-o4LrlugBZdK$Jn80qy~EhS})Wvn(Zqw4|7k%+yZB zagPk}at5~r$k}G2l#94tUD|r+A*p4x$7TXoGr%=Ka|U%LT~h2qZ~*fJIg>$@HoNOm z24GGtNSWRHyb`pneptYqU6+yoYo^oBnt25G8s}<&&JJw38n^~3Xl0ZFOC)fVc(`x8 z0suJP1GHd30RTK89!`x{0075(fEElW0DuR?!>REK0N{8J(1HO40Pui#I5l1Y037cD zS}>ph03Hwzr^YJ)fa5(t3kDPbzyspp)OZC_0sMOTq}t0Q@fPmgf;0dhZ%zT=y@8bW zJ_W$EVfpCC7zlCOJJJ5Hj0-*rke{qMj3pjpf1;PMse?#TYcI4}O_JwsS zfU$tf1#pFhbqK&H9dd!%Y7GFsQKt8YhDhK%U{~20a!p{)Uì!(?Q47mZ!f%mWu z5XV9cfG_$>;046F;C;0wbD+2+um<4l!o^}{bN7l{n;`%nBbozt=FxA1QQTE4?hd&F zdWb<6QpFYER+<80dq8`4s0yzuz?@Qm12X42u{hMbd&Sb>P}wDcC6)qW ziCW{wR!(2H1eVGSh^30@j;{`HT7bVBM*Qp+_KS7U{!P6NeXEsd=}L&REr56o(p493 zZ;WL9l_DxBuI5xr4m&jIE3Z&Gq+P_dxs(cS2=(sI~1>DE1NS9-}bIfb$v<#42WfDuU7Y#+J&I3LS5WfXvMmBDS(m2 zdo9|oy)9cpd~}5QtymjPJ%;A2HIIkVAf19v%qIVN7yYZX(e^}s6q zT&@Nl*)KkyTh(9++*N0ra!=x@9f=)5-WlF40M?Wg6%vaJ?&=S7maKtiC2_{`LIUpU z@NSd9Z$-awyX|f;MAXVsaCd-rOMtc8ZLRv-8fJjoU-@iPLbPPi0K#2NO5mQ=4#_>a z{m6XW_5hD8^0FDb8@yYW5Ecu)D4=%)_pcPp{x@+EP|TXnJ=(rAyhvbzu*@Lu4lWW{ z7>`+C2DtCWVG$<;Icm`daPN%*zzTq8KN#sX0pMaEco0$j>5{Sopz3r+0_$|cSxFQC zz)6fiGjs|7V4ZF_D~SRCIEfKxhE4$htkVr=B~btXCouxe&?x|bb-LlKBnklFBu1ba zIt2i*PB)yDL;(Pt#0WG)rvL!f>4vkCC;)(y7=dQ!6ac_F-EdYC1psgoBhU<;0{;NN WzOd{f>~Vbn0000 Date: Mon, 30 Jan 2023 17:38:47 +0100 Subject: [PATCH 0039/1725] Updated changelog --- apps/happyclk/ChangeLog | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/happyclk/ChangeLog b/apps/happyclk/ChangeLog index 759f68777..768ae2c2f 100644 --- a/apps/happyclk/ChangeLog +++ b/apps/happyclk/ChangeLog @@ -1 +1,2 @@ -0.01: New app! \ No newline at end of file +0.01: New app! +0.02: Added settings for different styles. \ No newline at end of file From bad6569d424139cab6ca1de0bdf6a01309c7e256 Mon Sep 17 00:00:00 2001 From: David Peer Date: Mon, 30 Jan 2023 17:46:46 +0100 Subject: [PATCH 0040/1725] Minor fix --- apps/happyclk/happyclk.settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/happyclk/happyclk.settings.js b/apps/happyclk/happyclk.settings.js index 2cbadc9ca..d4843514c 100644 --- a/apps/happyclk/happyclk.settings.js +++ b/apps/happyclk/happyclk.settings.js @@ -21,7 +21,7 @@ '< Back': back, 'Theme': { value: 0 | colorOptions.indexOf(settings.color), - min: 0, max: colorOptions.length, + min: 0, max: colorOptions.length-1, format: v => colorOptions[v], onchange: v => { settings.color = colorOptions[v]; From 2e27562c340951484f3e3a2c0a44030aabd72ec3 Mon Sep 17 00:00:00 2001 From: David Peer Date: Mon, 30 Jan 2023 17:56:24 +0100 Subject: [PATCH 0041/1725] Minor changes --- apps/happyclk/ChangeLog | 2 +- apps/happyclk/README.md | 4 ++++ apps/happyclk/happyclk.app.js | 22 +++++++++++++++------- apps/happyclk/happyclk.settings.js | 15 +++++++++++++-- apps/happyclk/screenshot_5.png | Bin 2508 -> 2498 bytes 5 files changed, 33 insertions(+), 10 deletions(-) diff --git a/apps/happyclk/ChangeLog b/apps/happyclk/ChangeLog index 768ae2c2f..e87114779 100644 --- a/apps/happyclk/ChangeLog +++ b/apps/happyclk/ChangeLog @@ -1,2 +1,2 @@ 0.01: New app! -0.02: Added settings for different styles. \ No newline at end of file +0.02: Added settings to show/hide widgets and settings for different styles. \ No newline at end of file diff --git a/apps/happyclk/README.md b/apps/happyclk/README.md index 3540b5aca..2311add6a 100644 --- a/apps/happyclk/README.md +++ b/apps/happyclk/README.md @@ -14,6 +14,10 @@ Here you can see an example of a locked bangle with a low battery: ![](screenshot_3.png) +## Settings +- Screen: Normal (widgets shown), Full (widgets are hidden). +- Theme: Select your custom theme, independent of system settings. + ## Creator - [David Peer](https://github.com/peerdavid). diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index 5eac225e9..b43ce2efa 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -10,7 +10,8 @@ const storage = require('Storage'); const SETTINGS_FILE = "happyclk.setting.json"; let settings = { - color: "Dark" + color: "Dark", + screen: "Full" }; let saved_settings = storage.readJSON(SETTINGS_FILE, 1) || settings; @@ -174,6 +175,8 @@ let drawSmile = function(isLocked){ } let drawEyeBrow = function(){ + if(settings.screen != "Full") return; + g.setColor(colors.fg); var w = 6; for(var i = 0; i < w; i++){ @@ -183,6 +186,15 @@ let drawEyeBrow = function(){ } +let drawWidgets = function(){ + if (settings.screen == "Full") { + require('widget_utils').hide(); + } else { + Bangle.drawWidgets(); + } +} + + let draw = function(){ // Queue draw in one minute @@ -199,6 +211,8 @@ let drawHelper = function(isLocked){ drawEyes(); drawEyeBrow(); drawSmile(isLocked); + + drawWidgets(); } @@ -237,12 +251,6 @@ let queueDraw = function() { // Show launcher when middle button pressed Bangle.setUI("clock"); Bangle.loadWidgets(); -/* - * we are not drawing the widgets as we are taking over the whole screen - * so we will blank out the draw() functions of each widget and change the - * area to the top bar doesn't get cleared. - */ -require('widget_utils').hide(); // Clear the screen once, at startup and draw clock g.setTheme({bg:colors.bg,fg:colors.fg,dark:false}); diff --git a/apps/happyclk/happyclk.settings.js b/apps/happyclk/happyclk.settings.js index d4843514c..d047a8d4a 100644 --- a/apps/happyclk/happyclk.settings.js +++ b/apps/happyclk/happyclk.settings.js @@ -4,7 +4,8 @@ // initialize with default settings... const storage = require('Storage') let settings = { - color: "Dark" + color: "Dark", + screen: "Full" }; let saved_settings = storage.readJSON(SETTINGS_FILE, 1) || settings; for (const key in saved_settings) { @@ -16,9 +17,19 @@ } var colorOptions = ["Dark", "Black", "White", "Blue", "Green", "Red", "Purple", "Yellow"]; + var screenOptions = ["Normal", "Full"]; E.showMenu({ '': { 'title': 'Happy Clock' }, '< Back': back, + 'Screen': { + value: 0 | screenOptions.indexOf(settings.screen), + min: 0, max: screenOptions.length-1, + format: v => screenOptions[v], + onchange: v => { + settings.screen = screenOptions[v]; + save(); + }, + }, 'Theme': { value: 0 | colorOptions.indexOf(settings.color), min: 0, max: colorOptions.length-1, @@ -27,6 +38,6 @@ settings.color = colorOptions[v]; save(); }, - } + }, }); }) diff --git a/apps/happyclk/screenshot_5.png b/apps/happyclk/screenshot_5.png index 1a711096e59d0bd0d8d342d4b59e400d23b88ade..401bb0c515e83c2fe3145b609d0d9497a4d8220f 100644 GIT binary patch delta 2475 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 delta 2485 zcmV;m2}<_D6U-BkF@J_hL_t(|UhSRPcH-mL$P@t#+4**=$IW+rQ0RRjTN-F?>OWTLW17I*vS^)rD+CDTM0E2@|+4e(wf#nFOYcaaBwt6YB;+}6H^0&Ly6Rba~24+-4X9=if; z-I;7g@7f;E$K5Uf?`kCaZLa_Tw$~VUFjN2l8;Xld+kYznfbBKL9Sju!z=q=D()J1f zV0(>m2SWt_u%WoPw7mjL04&*9KP25@PkIMkN&>7ghRT8!fZkD;G5}kc(}KDZ%)9H7 z9$-&{u0Ur78M^$ql@?&BK~Dv359Uo2m!>Kf_2VL=og{u6^-ME7~%VIbcz)|2{fyf3jN0(P0ya)AJx2OT024Ko03v;L>Yk}-( z7Nv_7xROB~nZ_vq?wJ$;F2_6%h$(m@w4q824_(gwgae!%-b1WA<1Ed}u1l6OD-_`D zCPgK26EaD>IKY*r$X2y+HceAX+yPu! z7tbw6H-J}4nVBiP8ob{1a45i)Q>F*8B!vO6aut0nrk~F*`72Apd#;?mBim}L!t0sB zE`JHUx>0wAaZ-47T|8=G04$tMdWTCFb60>@Dyc?hCW$5H0I!}h+FE!QU93|W0855D z<5+GA?~uM8DGY!aP)ZH~z@KVaJa+#Z9M-!KyG)hRg&Y!C5)18PO%r%Gc)1Yori*1A z41nhZ!P`}+GGeFnwXTB!FaS1Cz^@Jlz<&nzA%Ov~0akvO1i%2;k2Zrl0bl@ZfR*1R z0Wbjeqs`z>02lxpVC8p7Pk`xf$}xXimL;s!(>Uxxu;iB=ra-+Zm|KJciy zvmge*e&quIK4}ersT|dRUOIt2%81eQowY*ermwaR&eBgQ%2Hh<*EcUA0C3w5X&qb< zV9WG%DIr<_zy9B1+LnyonTs2ZQGWn<#I2umT@u(jg)=0RcAE5tcvfg|(9;ZR&UMen zgaSM(g`)u;F$w@nk$pej4PeU@&IB;$JJGI|c|p8d`nr}7mbGvsz$58b?{04Oh1Xh$H7R9bl=q8Iv%$X8->P)@n}H$#wo2i<+KVzN z3%n!sFx5w|&n*Tu)%K7QqGi^(u^O<>=Tm8{xxQDzR4gST;C0`HkdzbL)i^amXMOGk zZ*OpG2HmXwx31%@%e5V$34iR7#4`+xGAVma9Hq? z$$KgE+2RaIoB`exB?M*G)jkjNdiAp>ywnWkp~Yv=+$T+hF6jWK44b*gyRXOF(?FC# zoB{3ua)#OH*0U@ngtVlXk<8Ri#c_`e@Nx#X1<2WEqm+xdUR~OH=zk%pWwpm<0#`G@ zH9&I)btYX>>_Tt=^8`7QL6kPT>rw__PAy28-TS-}w5@(vz?@x|k^pO_)6bfD1os-} zYJkoTY`Ge^1}bP}lmbg6aFlqsZ@dBkINk%aU_b!?JRlxUjaL8w$9sSl3@8AA2gJjv z@d^Oocn{Em0R;f?fPZ*6HC_P#9Pa^IFrWYc9uN1;FpWnI`Q5j^9~qP@=`v4G13aD|0+2*4;Ea({u^Y7GFsQKt8YhDhK% zU{~20a!p{)Uì!(?Q47mZ!f%mWu5XV9cfG_$>;046F;C;0wbD+2+um<4l!o^}{ zbN7l{n;`%nBbozt=FxA1QQTE4?hd&FdWb<6QpFYER+<80dq8`4s0yzu zz?@Qm12X42v41$!yL-jb;ZWHnfhCp#Vu@Pg$5u{Xw*;2T42Y$Q>5i`sZ(4xA8%F%> z7WRvE(Ed%m4SlPXXz5Cbvn_yl4ANB>Zf}fa{gomrDX!*JOAb3U=_{{LI;361wd6+{ z(_nIrSP9fF(N=uVX8lGY{YPu1pd9D*arp1|HcjKA&6FU<%w-XPa_Q;;0>o9YNk1 z-Yo#ulz$Wz5{nD&>JM|4tbu1GamMmO0`BVYZj-=oMZa*n?QSqc)XGwDcYt?GfVJCg zt@_&5{Sopz3r+0_$|cSxFQCz)6fiGjs|7V4ZF_D~SRCIEfKxhE4$h ztkVr=B~btXCouxe&?x|bb-LlKBnklFBu1baIt2i*PB)yDL;(Pt#0WG)rvL!f>4vkC zC@uhilNf Date: Mon, 30 Jan 2023 18:07:02 +0100 Subject: [PATCH 0042/1725] Added dynamic screen --- apps/happyclk/README.md | 2 +- apps/happyclk/happyclk.app.js | 32 +++++++++++++++++++++++++----- apps/happyclk/happyclk.settings.js | 4 ++-- 3 files changed, 30 insertions(+), 8 deletions(-) diff --git a/apps/happyclk/README.md b/apps/happyclk/README.md index 2311add6a..d5b8752fb 100644 --- a/apps/happyclk/README.md +++ b/apps/happyclk/README.md @@ -15,7 +15,7 @@ Here you can see an example of a locked bangle with a low battery: ![](screenshot_3.png) ## Settings -- Screen: Normal (widgets shown), Full (widgets are hidden). +- Screen: Normal (widgets shown), Dynamic (widgets shown if unlocked) or Full (widgets are hidden). - Theme: Select your custom theme, independent of system settings. ## Creator diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index b43ce2efa..2ba84e1b5 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -3,15 +3,18 @@ */ +const storage = require('Storage'); +const widget_utils = require("widget_utils"); + + /************************************************ * Settings */ -const storage = require('Storage'); const SETTINGS_FILE = "happyclk.setting.json"; let settings = { color: "Dark", - screen: "Full" + screen: "Dynamic" }; let saved_settings = storage.readJSON(SETTINGS_FILE, 1) || settings; @@ -83,6 +86,16 @@ var drawTimeout; * HELPER */ +let isFullscreen = function() { + var s = settings.screen.toLowerCase(); + if(s == "dynamic"){ + return Bangle.isLocked(); + } else { + return s == "full"; + } + }; + + // Based on the great multi clock from https://github.com/jeffmer/BangleApps/ Graphics.prototype.drawPupils = function(cx, cy, r1, dx, dy, angle) { angle = angle % 360; @@ -175,7 +188,7 @@ let drawSmile = function(isLocked){ } let drawEyeBrow = function(){ - if(settings.screen != "Full") return; + if(!isFullscreen()) return; g.setColor(colors.fg); var w = 6; @@ -187,8 +200,8 @@ let drawEyeBrow = function(){ let drawWidgets = function(){ - if (settings.screen == "Full") { - require('widget_utils').hide(); + if (isFullscreen()) { + widget_utils.hide(); } else { Bangle.drawWidgets(); } @@ -229,6 +242,15 @@ Bangle.on('lcdPower',on=>{ }); Bangle.on('lock', function(isLocked) { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + + if(!isLocked && settings.screen.toLowerCase() == "dynamic"){ + // If we have to show the widgets again, we load it from our + // cache and not through Bangle.loadWidgets as its much faster! + widget_utils.show(); + } + draw(isLocked); }); diff --git a/apps/happyclk/happyclk.settings.js b/apps/happyclk/happyclk.settings.js index d047a8d4a..dd9f2f675 100644 --- a/apps/happyclk/happyclk.settings.js +++ b/apps/happyclk/happyclk.settings.js @@ -5,7 +5,7 @@ const storage = require('Storage') let settings = { color: "Dark", - screen: "Full" + screen: "Dynamic" }; let saved_settings = storage.readJSON(SETTINGS_FILE, 1) || settings; for (const key in saved_settings) { @@ -17,7 +17,7 @@ } var colorOptions = ["Dark", "Black", "White", "Blue", "Green", "Red", "Purple", "Yellow"]; - var screenOptions = ["Normal", "Full"]; + var screenOptions = ["Normal", "Dynamic", "Full"]; E.showMenu({ '': { 'title': 'Happy Clock' }, '< Back': back, From c9d3c2317b11eb49131b9d98648592fa451499c4 Mon Sep 17 00:00:00 2001 From: David Peer Date: Mon, 30 Jan 2023 18:10:25 +0100 Subject: [PATCH 0043/1725] Avoid multiple draws. --- apps/happyclk/happyclk.app.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index 2ba84e1b5..2c43a266e 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -199,10 +199,11 @@ let drawEyeBrow = function(){ } -let drawWidgets = function(){ +let drawWidgets = function(isLocked){ if (isFullscreen()) { widget_utils.hide(); } else { + if (isLocked) return; Bangle.drawWidgets(); } } @@ -225,7 +226,7 @@ let drawHelper = function(isLocked){ drawEyeBrow(); drawSmile(isLocked); - drawWidgets(); + drawWidgets(isLocked); } From 33a6c65ea04710958d49628ce57150a20865d95b Mon Sep 17 00:00:00 2001 From: David Peer Date: Mon, 30 Jan 2023 18:14:54 +0100 Subject: [PATCH 0044/1725] Clear screen only where necessary --- apps/happyclk/happyclk.app.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/apps/happyclk/happyclk.app.js b/apps/happyclk/happyclk.app.js index 2c43a266e..8e22b6e1e 100644 --- a/apps/happyclk/happyclk.app.js +++ b/apps/happyclk/happyclk.app.js @@ -199,11 +199,10 @@ let drawEyeBrow = function(){ } -let drawWidgets = function(isLocked){ +let drawWidgets = function(){ if (isFullscreen()) { widget_utils.hide(); } else { - if (isLocked) return; Bangle.drawWidgets(); } } @@ -219,14 +218,16 @@ let draw = function(){ } let drawHelper = function(isLocked){ + g.setColor(g.theme.bg); + + g.fillRect(0, isFullscreen() ? 0 : 24, W, H); g.setColor(g.theme.fg); - g.reset().clear(); drawEyes(); drawEyeBrow(); drawSmile(isLocked); - drawWidgets(isLocked); + drawWidgets(); } From 6cc8ef8918a6fff210b8a232448fcf33b31f6c50 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 30 Jan 2023 18:27:21 +0100 Subject: [PATCH 0045/1725] qcenter - Add setting for a timeout --- apps/qcenter/app.js | 12 ++++++++++++ apps/qcenter/settings.js | 22 ++++++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/apps/qcenter/app.js b/apps/qcenter/app.js index be28db3b6..f012fdda8 100644 --- a/apps/qcenter/app.js +++ b/apps/qcenter/app.js @@ -110,6 +110,7 @@ let layout = new Layout({ }, { remove: ()=>{ Bangle.removeListener("swipe", onSwipe); + Bangle.removeListener("touch", updateTimeout); delete Graphics.prototype.setFont8x12; } }); @@ -117,6 +118,16 @@ g.clear(); layout.render(); Bangle.drawWidgets(); +let timeout; +const updateTimeout = function(){ +if (settings.timeout){ + if (timeout) clearTimeout(timeout); + timeout = setTimeout(Bangle.showClock,settings.timeout*1000); + } +}; + +updateTimeout(); + // swipe event listener for exit gesture let onSwipe = function (lr, ud) { if(exitGesture == "swipeup" && ud == -1) Bangle.showClock(); @@ -126,4 +137,5 @@ let onSwipe = function (lr, ud) { } Bangle.on("swipe", onSwipe); +Bangle.on("touch", updateTimeout); } diff --git a/apps/qcenter/settings.js b/apps/qcenter/settings.js index 2c97f8a5f..5d38b079e 100644 --- a/apps/qcenter/settings.js +++ b/apps/qcenter/settings.js @@ -49,6 +49,11 @@ E.showMenu(exitGestureMenu); }; + // Set Timeout + mainmenu["Timeout: " + (settings.timeout ? (settings.timeout+"s") : "Off")] = function () { + E.showMenu(timeoutMenu); + }; + //List all pinned apps, redirecting to menu with options to unpin and reorder pinnedApps.forEach((app, i) => { mainmenu[app.name] = function () { @@ -129,5 +134,22 @@ showMainMenu(); }; + // menu for setting timeout + var timeoutMenu = { + "": { title: "Timeout", back: showMainMenu } + }; + timeoutMenu["Off"] = function () { + save("timeout", 0); + showMainMenu(); + }; + let timeoutvalues = [10,20,30,60]; + for (c in timeoutvalues){ + let v = timeoutvalues[c]; + timeoutMenu[v+"s"] = function () { + save("timeout", v); + showMainMenu(); + }; + } + showMainMenu(); }); From 46790eb67fc8b3092930f2c5d2e53d3dc15c92af Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 30 Jan 2023 18:27:37 +0100 Subject: [PATCH 0046/1725] qcenter - Bump version --- apps/qcenter/ChangeLog | 1 + apps/qcenter/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/qcenter/ChangeLog b/apps/qcenter/ChangeLog index 900b9017c..366b0ff86 100644 --- a/apps/qcenter/ChangeLog +++ b/apps/qcenter/ChangeLog @@ -1,2 +1,3 @@ 0.01: New App! 0.02: Fix fast loading on swipe to clock +0.03: Adds a setting for going back to clock on a timeout diff --git a/apps/qcenter/metadata.json b/apps/qcenter/metadata.json index a325de10f..630fd2bef 100644 --- a/apps/qcenter/metadata.json +++ b/apps/qcenter/metadata.json @@ -2,7 +2,7 @@ "id": "qcenter", "name": "Quick Center", "shortName": "QCenter", - "version": "0.02", + "version": "0.03", "description": "An app for quickly launching your favourite apps, inspired by the control centres of other watches.", "icon": "app.png", "tags": "", From bf2004fc925e19135d35d715b40a85172df4b85a Mon Sep 17 00:00:00 2001 From: sir-indy <53864146+sir-indy@users.noreply.github.com> Date: Mon, 30 Jan 2023 19:46:17 +0000 Subject: [PATCH 0047/1725] Adding animation to fuzzyw --- apps/fuzzyw/ChangeLog | 3 +- apps/fuzzyw/README.md | 1 - apps/fuzzyw/fuzzyw.app.js | 63 +++++++++++++++++++++++++++++---------- apps/fuzzyw/metadata.json | 2 +- 4 files changed, 51 insertions(+), 18 deletions(-) diff --git a/apps/fuzzyw/ChangeLog b/apps/fuzzyw/ChangeLog index 206efb10f..dd73475f9 100644 --- a/apps/fuzzyw/ChangeLog +++ b/apps/fuzzyw/ChangeLog @@ -1,3 +1,4 @@ 0.01: First release 0.02: Move translations to locale module (removed watch settings, now pick language in Bangle App Loader, More..., Settings) -0.03: Change for fast loading, use widget_utils to hide widgets \ No newline at end of file +0.03: Change for fast loading, use widget_utils to hide widgets +0.04: Add animation when display changes \ No newline at end of file diff --git a/apps/fuzzyw/README.md b/apps/fuzzyw/README.md index 49d0fe0d5..062c9ac25 100644 --- a/apps/fuzzyw/README.md +++ b/apps/fuzzyw/README.md @@ -16,7 +16,6 @@ Most translations are taken from the original Fuzzy Text International code. ## TODO * Bold hour word (as the pebble version has) -* Animation when changing time? ## References Based on Pebble app Fuzzy Text International: https://github.com/hallettj/Fuzzy-Text-International diff --git a/apps/fuzzyw/fuzzyw.app.js b/apps/fuzzyw/fuzzyw.app.js index e185e2ccf..8bc51710f 100644 --- a/apps/fuzzyw/fuzzyw.app.js +++ b/apps/fuzzyw/fuzzyw.app.js @@ -33,13 +33,17 @@ ] }; -let text_scale = 3.5; +let text_scale = 4; let timeout = 2.5*60; let drawTimeout; +let animInterval; +let time_string = ""; +let time_string_old = ""; +let time_string_old_wrapped = ""; let loadSettings = function() { settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'showWidgets': false}; -} +}; let queueDraw = function(seconds) { let millisecs = seconds * 1000; @@ -48,10 +52,7 @@ let queueDraw = function(seconds) { drawTimeout = undefined; draw(); }, millisecs - (Date.now() % millisecs)); -} - -const h = g.getHeight(); -const w = g.getWidth(); +}; let getTimeString = function(date) { let segment = Math.round((date.getMinutes()*60 + date.getSeconds() + 1)/300); @@ -63,18 +64,47 @@ let getTimeString = function(date) { f_string = f_string.replace('$2', fuzzy_string.hours[(hour + 1) % 12]); } return f_string; -} +}; let draw = function() { - let time_string = getTimeString(new Date()).replace('*', ''); - // print(time_string); - g.setFont('Vector', (h-24*2)/text_scale); - g.setFontAlign(0, 0); - g.clearRect(0, 24, w, h-24); - g.setColor(g.theme.fg); - g.drawString(g.wrapString(time_string, w).join("\n"), w/2, h/2); + time_string = getTimeString(new Date()).replace('*', ''); + //print(time_string); + if (time_string != time_string_old) { + g.setFont('Vector', R.h/text_scale).setFontAlign(0, 0); + animate(3); + } queueDraw(timeout); -} +}; + +let animate = function(step) { + if (animInterval) clearInterval(animInterval); + let time_string_new_wrapped = g.wrapString(time_string, R.w).join("\n"); + slideX = 0; + animInterval = setInterval(function() { + let time_start = getTime() + //blank old time + g.setColor(g.theme.bg); + g.drawString(time_string_old_wrapped, R.x + R.w/2 + slideX, R.y + R.h/2); + g.drawString(time_string_new_wrapped, R.x - R.w/2 + slideX, R.y + R.h/2); + g.setColor(g.theme.fg); + slideX += step; + let stop = false; + if (slideX>=R.w) { + slideX=R.w; + stop = true; + } + //draw shifted new time + g.drawString(time_string_old_wrapped, R.x + R.w/2 + slideX, R.y + R.h/2); + g.drawString(time_string_new_wrapped, R.x - R.w/2 + slideX, R.y + R.h/2); + if (stop) { + time_string_old = time_string; + clearInterval(animInterval); + animInterval=undefined; + time_string_old_wrapped = time_string_new_wrapped; + } + print(Math.round((getTime() - time_start)*1000)) + }, 30); +}; g.clear(); loadSettings(); @@ -95,6 +125,8 @@ Bangle.setUI({ // Called to unload all of the clock app if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; + if (animInterval) clearInterval(animInterval); + animInterval = undefined; require('widget_utils').show(); // re-show widgets } }); @@ -106,5 +138,6 @@ if (settings.showWidgets) { require("widget_utils").swipeOn(); // hide widgets, make them visible with a swipe } +R = Bangle.appRect; draw(); } \ No newline at end of file diff --git a/apps/fuzzyw/metadata.json b/apps/fuzzyw/metadata.json index d1040fda3..97f060866 100644 --- a/apps/fuzzyw/metadata.json +++ b/apps/fuzzyw/metadata.json @@ -2,7 +2,7 @@ "id":"fuzzyw", "name":"Fuzzy Text Clock", "shortName": "Fuzzy Text", - "version": "0.03", + "version": "0.04", "description": "An imprecise clock for when you're not in a rush", "readme": "README.md", "icon":"fuzzyw.png", From c3ac80374d792801aa5ca7b8d07752f726adeb8f Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Tue, 31 Jan 2023 19:04:06 +0100 Subject: [PATCH 0048/1725] alarm: menu changes - Display date in locale - When switching 'repeat' from 'Workdays', 'Weekends' to 'Custom' preset Custom menu with previous selection - Display alarm label in delete prompt --- apps/alarm/ChangeLog | 3 +++ apps/alarm/app.js | 20 ++++++++++++-------- apps/alarm/metadata.json | 2 +- 3 files changed, 16 insertions(+), 9 deletions(-) diff --git a/apps/alarm/ChangeLog b/apps/alarm/ChangeLog index bb8a292a0..398396c96 100644 --- a/apps/alarm/ChangeLog +++ b/apps/alarm/ChangeLog @@ -38,3 +38,6 @@ 0.35: Add automatic translation of more strings 0.36: alarm widget moved out of app 0.37: add message input and dated Events +0.38: Display date in locale + When switching 'repeat' from 'Workdays', 'Weekends' to 'Custom' preset Custom menu with previous selection + Display alarm label in delete prompt diff --git a/apps/alarm/app.js b/apps/alarm/app.js index 74007d04b..e97b61917 100644 --- a/apps/alarm/app.js +++ b/apps/alarm/app.js @@ -40,6 +40,14 @@ function handleFirstDayOfWeek(dow) { // Check the first day of week and update the dow field accordingly (alarms only!) alarms.filter(e => e.timer === undefined).forEach(a => a.dow = handleFirstDayOfWeek(a.dow)); +function getLabel(e) { + const dateStr = e.date && require("locale").date(new Date(e.date), 1); + return (e.timer + ? require("time_utils").formatDuration(e.timer) + : (dateStr ? `${dateStr} ${require("time_utils").formatTime(e.t)}` : require("time_utils").formatTime(e.t) + (e.rp ? ` ${decodeDOW(e)}` : "")) + ) + (e.msg ? " " + e.msg : ""); +} + function showMainMenu() { const menu = { "": { "title": /*LANG*/"Alarms & Timers" }, @@ -48,11 +56,7 @@ function showMainMenu() { }; alarms.forEach((e, index) => { - var label = (e.timer - ? require("time_utils").formatDuration(e.timer) - : (e.date ? `${e.date.substring(5,10)} ${require("time_utils").formatTime(e.t)}` : require("time_utils").formatTime(e.t) + (e.rp ? ` ${decodeDOW(e)}` : "")) - ) + (e.msg ? " " + e.msg : ""); - menu[label] = { + menu[getLabel(e)] = { value: e.on ? (e.timer ? iconTimerOn : iconAlarmOn) : (e.timer ? iconTimerOff : iconAlarmOff), onchange: () => setTimeout(e.timer ? showEditTimerMenu : showEditAlarmMenu, 10, e, index) }; @@ -184,7 +188,7 @@ function showEditAlarmMenu(selectedAlarm, alarmIndex, withDate) { if (!isNew) { menu[/*LANG*/"Delete"] = () => { - E.showPrompt(/*LANG*/"Are you sure?", { title: /*LANG*/"Delete Alarm" }).then((confirm) => { + E.showPrompt(getLabel(alarm) + "\n" + /*LANG*/"Are you sure?", { title: /*LANG*/"Delete Alarm" }).then((confirm) => { if (confirm) { alarms.splice(alarmIndex, 1); saveAndReload(); @@ -264,7 +268,7 @@ function showEditRepeatMenu(repeat, dow, dowChangeCallback) { }, /*LANG*/"Custom": { value: isCustom ? decodeDOW({ rp: true, dow: dow }) : false, - onchange: () => setTimeout(showCustomDaysMenu, 10, isCustom ? dow : EVERY_DAY, dowChangeCallback, originalRepeat, originalDow) + onchange: () => setTimeout(showCustomDaysMenu, 10, dow, dowChangeCallback, originalRepeat, originalDow) } }; @@ -372,7 +376,7 @@ function showEditTimerMenu(selectedTimer, timerIndex) { if (!keyboard) delete menu[/*LANG*/"Message"]; if (!isNew) { menu[/*LANG*/"Delete"] = () => { - E.showPrompt(/*LANG*/"Are you sure?", { title: /*LANG*/"Delete Timer" }).then((confirm) => { + E.showPrompt(getLabel(timer) + "\n" + /*LANG*/"Are you sure?", { title: /*LANG*/"Delete Timer" }).then((confirm) => { if (confirm) { alarms.splice(timerIndex, 1); saveAndReload(); diff --git a/apps/alarm/metadata.json b/apps/alarm/metadata.json index 29e71b3d9..28d48daab 100644 --- a/apps/alarm/metadata.json +++ b/apps/alarm/metadata.json @@ -2,7 +2,7 @@ "id": "alarm", "name": "Alarms & Timers", "shortName": "Alarms", - "version": "0.37", + "version": "0.38", "description": "Set alarms and timers on your Bangle", "icon": "app.png", "tags": "tool,alarm", From 0140cb91509aab8a08b10435f924bdf123d15ff4 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Tue, 31 Jan 2023 22:18:15 +0000 Subject: [PATCH 0049/1725] Settings.log, off,display,log, both --- apps/boot/ChangeLog | 1 + apps/boot/bootupdate.js | 11 ++++++----- apps/boot/metadata.json | 2 +- apps/setting/ChangeLog | 1 + apps/setting/README.md | 5 +++-- apps/setting/settings.js | 8 ++++---- apps/simplest/simplest.app.js | 1 + 7 files changed, 17 insertions(+), 12 deletions(-) diff --git a/apps/boot/ChangeLog b/apps/boot/ChangeLog index 780d9cc7d..a63a54eaf 100644 --- a/apps/boot/ChangeLog +++ b/apps/boot/ChangeLog @@ -64,3 +64,4 @@ 0.55: Add toLocalISOString polyfill for pre-2v15 firmwares Only add boot info comments if settings.bootDebug was set If settings.bootDebug is set, output timing for each section of .boot0 +0.56: Settings.log = 0,1,2,3 for off,display, log, both diff --git a/apps/boot/bootupdate.js b/apps/boot/bootupdate.js index 112dfeba8..72eb4afab 100644 --- a/apps/boot/bootupdate.js +++ b/apps/boot/bootupdate.js @@ -32,14 +32,15 @@ if (s.ble!==false) { boot += `bleServiceOptions.hid=Bangle.HID;\n`; } } -if (s.log==2) { // logging to file +// settings.log 0-off, 1-display, 2-log, 3-both +if (s.log>=2) { // logging to file boot += `_DBGLOG=require("Storage").open("log.txt","a"); `; } if (s.blerepl===false) { // If not programmable, force terminal off Bluetooth - if (s.log==2) boot += `_DBGLOG=require("Storage").open("log.txt","a"); + if (s.log>=2) boot += `_DBGLOG=require("Storage").open("log.txt","a"); LoopbackB.on('data',function(d) {_DBGLOG.write(d);Terminal.write(d);}); LoopbackA.setConsole(true);\n`; - else if (s.log) boot += `Terminal.setConsole(true);\n`; // if showing debug, force REPL onto terminal + else if (s.log==1||s.log==3) boot += `Terminal.setConsole(true);\n`; // if showing debug, force REPL onto terminal else boot += `E.setConsole(null,{force:true});\n`; // on new (2v05+) firmware we have E.setConsole which allows a 'null' console /* If not programmable add our own handler for Bluetooth data to allow Gadgetbridge commands to be received*/ @@ -56,10 +57,10 @@ Bluetooth.on('line',function(l) { try { global.GB(JSON.parse(l.slice(3,-1))); } catch(e) {} });\n`; } else { - if (s.log==2) boot += `_DBGLOG=require("Storage").open("log.txt","a"); + if (s.log>=2) boot += `_DBGLOG=require("Storage").open("log.txt","a"); LoopbackB.on('data',function(d) {_DBGLOG.write(d);Terminal.write(d);}); if (!NRF.getSecurityStatus().connected) LoopbackA.setConsole();\n`; - else if (s.log) boot += `if (!NRF.getSecurityStatus().connected) Terminal.setConsole();\n`; // if showing debug, put REPL on terminal (until connection) + else if (s.log==1||s.log==3) boot += `if (!NRF.getSecurityStatus().connected) Terminal.setConsole();\n`; // if showing debug, put REPL on terminal (until connection) else boot += `Bluetooth.setConsole(true);\n`; // else if no debug, force REPL to Bluetooth } // we just reset, so BLE should be on. diff --git a/apps/boot/metadata.json b/apps/boot/metadata.json index 455563a16..9f64b672b 100644 --- a/apps/boot/metadata.json +++ b/apps/boot/metadata.json @@ -1,7 +1,7 @@ { "id": "boot", "name": "Bootloader", - "version": "0.55", + "version": "0.56", "description": "This is needed by Bangle.js to automatically load the clock, menu, widgets and settings", "icon": "bootloader.png", "type": "bootloader", diff --git a/apps/setting/ChangeLog b/apps/setting/ChangeLog index 85ccfa1a7..9a5579f07 100644 --- a/apps/setting/ChangeLog +++ b/apps/setting/ChangeLog @@ -62,3 +62,4 @@ 0.55: More strings tagged for automatic translation. 0.56: make System menu items shorter and more consistant, Eg 'Clock', intead of 'Select Clock' +0.57: Settings.log = 0,1,2,3 for off,display,log,both diff --git a/apps/setting/README.md b/apps/setting/README.md index e5ea2b43d..2a7f7ee9c 100644 --- a/apps/setting/README.md +++ b/apps/setting/README.md @@ -56,9 +56,10 @@ The exact effects depend on the app. In general the watch will not wake up by i * **Debug Info** should debug info be shown on the watch's screen or not? - * `Hide` (default) do not show debug information - * `Show` Show on the Bangle's screen (when not connected to Bluetooth or `Programmable:off`) + * `Off` (default) do not show debug information + * `Display` Show on the Bangle's screen (when not connected to Bluetooth or `Programmable:off`) * `Log` Show on the Bangle's screen **and** write to a file called `log.txt` on Storage (when not connected to Bluetooth or `Programmable:off`). Warning - this file is appended to so may grow to be large if this is left enabled. + * `Both` Log and display on Bangle's screen * **Compact Storage** Removes deleted/old files from Storage - this will speed up your Bangle.js * **Rewrite Settings** Should not normally be required, but if `.boot0` has been deleted/corrupted (and so no settings are being loaded) this will fix it. * **Flatten Battery** Turns on all devices and draws as much power as possible, attempting to flatten the Bangle.js battery. This can still take 5+ hours. diff --git a/apps/setting/settings.js b/apps/setting/settings.js index a877ec79c..bc5f2a74a 100644 --- a/apps/setting/settings.js +++ b/apps/setting/settings.js @@ -557,11 +557,11 @@ function showUtilMenu() { var menu = { '': { 'title': /*LANG*/'Utilities' }, '< Back': ()=>showMainMenu(), - /*LANG*/'Debug Info': { - value: E.clip(0|settings.log,0,2), + /*LANG*/'Debug': { + value: E.clip(0|settings.log,0,3), min: 0, - max: 2, - format: v => [/*LANG*/"Hide",/*LANG*/"Show",/*LANG*/"Log"][E.clip(0|v,0,2)], + max: 3, + format: v => [/*LANG*/"Off",/*LANG*/"Display",/*LANG*/"Log", /*LANG*/"Both"][E.clip(0|v,0,3)], onchange: v => { settings.log = v; updateSettings(); diff --git a/apps/simplest/simplest.app.js b/apps/simplest/simplest.app.js index 4038212d0..b1e22743d 100644 --- a/apps/simplest/simplest.app.js +++ b/apps/simplest/simplest.app.js @@ -13,6 +13,7 @@ function draw() { g.setFontAlign(0, 0); g.setColor(g.theme.fg); g.drawString(timeStr, w/2, h/2); + console.log(timeStr + ", simplest"); queueDraw(); } From 8aabecd53c232fccab57670456b8fd4d7a02b703 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Tue, 31 Jan 2023 23:46:58 +0000 Subject: [PATCH 0050/1725] fixed setting version --- apps/setting/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/setting/metadata.json b/apps/setting/metadata.json index 92fc75915..6d5739d03 100644 --- a/apps/setting/metadata.json +++ b/apps/setting/metadata.json @@ -1,7 +1,7 @@ { "id": "setting", "name": "Settings", - "version": "0.56", + "version": "0.57", "description": "A menu for setting up Bangle.js", "icon": "settings.png", "tags": "tool,system", From e0929fb90e2d2b27d98aceea5e1b86b038359159 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 1 Feb 2023 08:47:48 +0000 Subject: [PATCH 0051/1725] Tweaks to maybe make this work --- apps/boot/bootupdate.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/boot/bootupdate.js b/apps/boot/bootupdate.js index 72eb4afab..f8fab16a1 100644 --- a/apps/boot/bootupdate.js +++ b/apps/boot/bootupdate.js @@ -37,10 +37,10 @@ if (s.log>=2) { // logging to file boot += `_DBGLOG=require("Storage").open("log.txt","a"); `; } if (s.blerepl===false) { // If not programmable, force terminal off Bluetooth - if (s.log>=2) boot += `_DBGLOG=require("Storage").open("log.txt","a"); -LoopbackB.on('data',function(d) {_DBGLOG.write(d);Terminal.write(d);}); + if (s.log>=2) { boot += `_DBGLOG=require("Storage").open("log.txt","a");`; +LoopbackB.on('data',function(d) {_DBGLOG.write(d);${(s.log==3)?"Terminal.write(d);":""}}); LoopbackA.setConsole(true);\n`; - else if (s.log==1||s.log==3) boot += `Terminal.setConsole(true);\n`; // if showing debug, force REPL onto terminal + } else if (s.log==1) boot += `Terminal.setConsole(true);\n`; // if showing debug, force REPL onto terminal else boot += `E.setConsole(null,{force:true});\n`; // on new (2v05+) firmware we have E.setConsole which allows a 'null' console /* If not programmable add our own handler for Bluetooth data to allow Gadgetbridge commands to be received*/ From 07f83d50df9d24d1d1da07693d7853e20987ea33 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 1 Feb 2023 08:48:56 +0000 Subject: [PATCH 0052/1725] one more tweak --- apps/boot/bootupdate.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boot/bootupdate.js b/apps/boot/bootupdate.js index f8fab16a1..4e4af928d 100644 --- a/apps/boot/bootupdate.js +++ b/apps/boot/bootupdate.js @@ -58,7 +58,7 @@ Bluetooth.on('line',function(l) { });\n`; } else { if (s.log>=2) boot += `_DBGLOG=require("Storage").open("log.txt","a"); -LoopbackB.on('data',function(d) {_DBGLOG.write(d);Terminal.write(d);}); +LoopbackB.on('data',function(d) {_DBGLOG.write(d);${(s.log==3)?"Terminal.write(d);":""}}); if (!NRF.getSecurityStatus().connected) LoopbackA.setConsole();\n`; else if (s.log==1||s.log==3) boot += `if (!NRF.getSecurityStatus().connected) Terminal.setConsole();\n`; // if showing debug, put REPL on terminal (until connection) else boot += `Bluetooth.setConsole(true);\n`; // else if no debug, force REPL to Bluetooth From 6befce43e50ec5853b7759985496072862827a4c Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 1 Feb 2023 08:56:42 +0000 Subject: [PATCH 0053/1725] oops --- apps/boot/bootupdate.js | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/apps/boot/bootupdate.js b/apps/boot/bootupdate.js index 4e4af928d..d929b26a0 100644 --- a/apps/boot/bootupdate.js +++ b/apps/boot/bootupdate.js @@ -33,11 +33,8 @@ if (s.ble!==false) { } } // settings.log 0-off, 1-display, 2-log, 3-both -if (s.log>=2) { // logging to file - boot += `_DBGLOG=require("Storage").open("log.txt","a"); -`; -} if (s.blerepl===false) { // If not programmable, force terminal off Bluetooth - if (s.log>=2) { boot += `_DBGLOG=require("Storage").open("log.txt","a");`; +if (s.blerepl===false) { // If not programmable, force terminal off Bluetooth + if (s.log>=2) { boot += `_DBGLOG=require("Storage").open("log.txt","a"); LoopbackB.on('data',function(d) {_DBGLOG.write(d);${(s.log==3)?"Terminal.write(d);":""}}); LoopbackA.setConsole(true);\n`; } else if (s.log==1) boot += `Terminal.setConsole(true);\n`; // if showing debug, force REPL onto terminal @@ -60,7 +57,7 @@ Bluetooth.on('line',function(l) { if (s.log>=2) boot += `_DBGLOG=require("Storage").open("log.txt","a"); LoopbackB.on('data',function(d) {_DBGLOG.write(d);${(s.log==3)?"Terminal.write(d);":""}}); if (!NRF.getSecurityStatus().connected) LoopbackA.setConsole();\n`; - else if (s.log==1||s.log==3) boot += `if (!NRF.getSecurityStatus().connected) Terminal.setConsole();\n`; // if showing debug, put REPL on terminal (until connection) + else if (s.log==1) boot += `if (!NRF.getSecurityStatus().connected) Terminal.setConsole();\n`; // if showing debug, put REPL on terminal (until connection) else boot += `Bluetooth.setConsole(true);\n`; // else if no debug, force REPL to Bluetooth } // we just reset, so BLE should be on. From c7cb16ec94382454beaf1e326002c2a66b7e7ef9 Mon Sep 17 00:00:00 2001 From: notEvil Date: Wed, 1 Feb 2023 15:08:39 +0100 Subject: [PATCH 0054/1725] - apps/chargent: added threshold --- apps/chargent/ChangeLog | 1 + apps/chargent/README.md | 2 ++ apps/chargent/boot.js | 28 ++++++++++++++++++---------- apps/chargent/metadata.json | 5 ++++- 4 files changed, 25 insertions(+), 11 deletions(-) diff --git a/apps/chargent/ChangeLog b/apps/chargent/ChangeLog index ae4aa0e36..3003cd07d 100644 --- a/apps/chargent/ChangeLog +++ b/apps/chargent/ChangeLog @@ -1,2 +1,3 @@ 0.01: First version 0.02: Support BangleJS2 +0.03: Added threshold diff --git a/apps/chargent/README.md b/apps/chargent/README.md index 56bc763b4..db93615a6 100644 --- a/apps/chargent/README.md +++ b/apps/chargent/README.md @@ -6,6 +6,8 @@ The first stage of charging Li-ion ends at ~80% capacity when the charge voltage This app has no UI and no configuration. To disable the app, you have to uninstall it. +New in v0.03: before the very first buzz, the average value after the peak is written to chargent.json and used as threshold for future charges. This reduces the time spent in the second charge stage. + Side notes - Full capacity is reached after charge current drops to an insignificant level. This is quite some time after charge voltage reached its peak / `E.getBattery()` returns 100. - This app starts buzzing some time after `E.getBattery()` returns 100 (~15min on my watch), and at least 5min after the peak to account for noise. diff --git a/apps/chargent/boot.js b/apps/chargent/boot.js index b02d00a8e..c62003a21 100644 --- a/apps/chargent/boot.js +++ b/apps/chargent/boot.js @@ -6,19 +6,27 @@ if (charging) { if (!id) { var max = 0; - var count = 0; + var cnt = 0; + var sum = 0; + var lim = (require('Storage').readJSON('chargent.json', true) || {}).limit || 0; id = setInterval(() => { - var battlvl = analogRead(pin); - if (max < battlvl) { - max = battlvl; - count = 0; + var val = analogRead(pin); + if (max < val) { + max = val; + cnt = 1; + sum = val; } else { - count++; - if (10 <= count) { // 10 * 30s == 5 min // TODO ? customizable - // TODO ? customizable - Bangle.buzz(500); - setTimeout(() => Bangle.buzz(500), 1000); + cnt++; + sum += val; + } + if (10 < cnt || (lim && lim <= max)) { // 10 * 30s == 5 min // TODO ? customizable + if (!lim) { + lim = sum / cnt; + require('Storage').writeJSON('chargent.json', {limit: lim}); } + // TODO ? customizable + Bangle.buzz(500); + setTimeout(() => Bangle.buzz(500), 1000); } }, 30*1000); } diff --git a/apps/chargent/metadata.json b/apps/chargent/metadata.json index e2e6f5a61..653cb7d74 100644 --- a/apps/chargent/metadata.json +++ b/apps/chargent/metadata.json @@ -1,6 +1,6 @@ { "id": "chargent", "name": "Charge Gently", - "version": "0.02", + "version": "0.03", "description": "When charging, reminds you to disconnect the watch to prolong battery life.", "icon": "icon.png", "type": "bootloader", @@ -9,5 +9,8 @@ "readme": "README.md", "storage": [ {"name": "chargent.boot.js", "url": "boot.js"} + ], + "data": [ + {"name": "chargent.json"} ] } From 999f4abdb8f04b0d13debcb82b4abd7443e94e24 Mon Sep 17 00:00:00 2001 From: pancake Date: Wed, 1 Feb 2023 15:38:46 +0100 Subject: [PATCH 0055/1725] inspire: Disable autolock when breathing --- apps/inspire/ChangeLog | 1 + apps/inspire/README.md | 3 +- apps/inspire/app.js | 88 ++++++++++++++++++++------------------ apps/inspire/metadata.json | 2 +- 4 files changed, 50 insertions(+), 44 deletions(-) diff --git a/apps/inspire/ChangeLog b/apps/inspire/ChangeLog index 267ee22c2..e8e154f2f 100644 --- a/apps/inspire/ChangeLog +++ b/apps/inspire/ChangeLog @@ -1 +1,2 @@ 0.01: First public version +0.02: Disable screen lock when breathing diff --git a/apps/inspire/README.md b/apps/inspire/README.md index f5f8e3aa9..43df1b760 100644 --- a/apps/inspire/README.md +++ b/apps/inspire/README.md @@ -2,7 +2,7 @@ A minimalistic app that will help you practive breathing. -Author: Written by pancake in 2022, powered by insomnia +Author: Written by pancake in 2022, updated in 2023, powered by insomnia ## Features @@ -10,6 +10,7 @@ Author: Written by pancake in 2022, powered by insomnia * [x] Tap to start * [x] Subtle vibrations * [x] Drag to pause breathing +* [x] Dont lock screen while breathing * [ ] Automatic buzz every hour during day ## Screenshots diff --git a/apps/inspire/app.js b/apps/inspire/app.js index 92b2c4ef2..818a6af76 100644 --- a/apps/inspire/app.js +++ b/apps/inspire/app.js @@ -14,6 +14,7 @@ var mode = 0; var sin = 0; var dragged = 0; var lastTime = Date.now(); + function breath(t) { var r = Math.abs(Math.sin(t / 100)) * w2; g.fillCircle(w/2,h/2, r); @@ -26,7 +27,7 @@ setTimeout(()=>{Bangle.buzz(60);}, 500); function showTouchScreen() { g.setColor(1,1,1); - g.fillCircle (w2, h2, h2-5); + g.fillCircle(w2, h2, h2-5); g.setColor(0,0,0); g.setFont("Vector", 32); g.drawString("Tap to", w/6, h2-fs); @@ -40,7 +41,7 @@ g.clear(); function animateCircle() { g.clear(); g.setColor(1,1,1); - g.fillCircle (w2, h2, radius); + g.fillCircle(w2, h2, radius); radius-=2; if (radius < 40) { breathing = true; @@ -68,6 +69,9 @@ function main() { return; } started = true; + Bangle.setLCDPower(1); + Bangle.setLocked(0); + Bangle.setLCDTimeout(0); animateCircle(); Bangle.buzz(40); } @@ -78,48 +82,48 @@ function main() { main(); function startBreathing() { -var cicles = 3; -g.setFont("Vector", fs); - -var interval = setInterval(function() { -if (lastTime + 10 > Date.now()) { - return; -} - lastTime = Date.now(); - g.setColor(0, 0, 0); - g.clear(); - - g.setColor(0, 0.5, 1); - var b = breath(count); - g.setColor(0.5, 0.5, 1); - var c = breath(count + 50); - count++; - g.setColor(1, 1, 1); - if (b < c) { - g.drawString("inspire",8,ty); - if (mode) { - mode = 0; - Bangle.buzz(20); - if (!dragged ) { - cicles--; + var cicles = 3; + g.setFont("Vector", fs); + + function breathTime() { + if (lastTime + 10 > Date.now()) { + return; + } + lastTime = Date.now(); + g.setColor(0, 0, 0); + g.clear(); + + g.setColor(0, 0.5, 1); + var b = breath(count); + g.setColor(0.5, 0.5, 1); + var c = breath(count + 50); + count++; + g.setColor(1, 1, 1); + if (b < c) { + g.drawString("inspire",8,ty); + if (mode) { + mode = 0; + Bangle.buzz(20); + if (!dragged ) { + cicles--; + } + } + } else { + g.drawString("expire",8,ty); + if (!mode) { + mode = 1; + Bangle.buzz(20); } } - } else { - g.drawString("expire",8,ty); - if (!mode) { - mode = 1; - Bangle.buzz(20); + g.drawString(cicles, w-fs, ty); + if (cicles < 1) { + clearInterval(interval); + g.clear(); + g.drawString("Thanks for",20,h/3); + g.drawString(" breathing!",20,(h/3) + 16); + Bangle.showClock(); } - } - g.drawString(cicles, w-fs, ty); - if (cicles < 1) { - clearInterval(interval); - g.clear(); - g.drawString("Thanks for",20,h/3); - g.drawString(" breathing!",20,(h/3) + 16); - Bangle.showClock(); - } dragged = 0; - -}, 4); + } + var interval = setInterval(breathTime, 4); } diff --git a/apps/inspire/metadata.json b/apps/inspire/metadata.json index 85b7365be..3ffbc40e7 100644 --- a/apps/inspire/metadata.json +++ b/apps/inspire/metadata.json @@ -2,7 +2,7 @@ "id": "inspire", "name": "Inspire Breathing", "shortName": "Inspire", - "version": "0.01", + "version": "0.02", "description": "exercise breathing every now and then", "icon": "app-icon.png", "tags": "tools,health", From c3f11f90d5ff5acab328b1a88214b1ad2a94c756 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Thu, 2 Feb 2023 18:39:08 +0100 Subject: [PATCH 0056/1725] sched: add interface.html - Edit or delete existing events, add new - Add events from iCalendar file --- apps/sched/interface.html | 223 ++++++++++++++++++++++++++++++++++++++ apps/sched/metadata.json | 1 + 2 files changed, 224 insertions(+) create mode 100644 apps/sched/interface.html diff --git a/apps/sched/interface.html b/apps/sched/interface.html new file mode 100644 index 000000000..366e597a2 --- /dev/null +++ b/apps/sched/interface.html @@ -0,0 +1,223 @@ + + + + + + + + + +

Manage dated events

+ +
+ +
+ + + + + + + + + + + +
DateSummary
+ +
+
+
+
+ +
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+ + + + + diff --git a/apps/sched/metadata.json b/apps/sched/metadata.json index 2a1b0f8ca..42c3aaa12 100644 --- a/apps/sched/metadata.json +++ b/apps/sched/metadata.json @@ -10,6 +10,7 @@ "provides_modules" : ["sched"], "default" : true, "readme": "README.md", + "interface": "interface.html", "storage": [ {"name":"sched.boot.js","url":"boot.js"}, {"name":"sched.js","url":"sched.js"}, From 6b5fee29aff57101bc8ba8997d2274c3ed62d42c Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Thu, 2 Feb 2023 21:40:34 +0100 Subject: [PATCH 0057/1725] back button for settings main menu --- apps/powermanager/ChangeLog | 1 + apps/powermanager/metadata.json | 2 +- apps/powermanager/settings.js | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/powermanager/ChangeLog b/apps/powermanager/ChangeLog index a83e8c676..06f38d399 100644 --- a/apps/powermanager/ChangeLog +++ b/apps/powermanager/ChangeLog @@ -3,3 +3,4 @@ 0.03: Use default Bangle formatter for booleans 0.04: Remove calibration with current voltage (Calibrate->Auto) as it is now handled by settings app Allow automatic calibration on every charge longer than 3 hours +0.05: Add back button to settings menu. diff --git a/apps/powermanager/metadata.json b/apps/powermanager/metadata.json index 0777feee3..456831aa9 100644 --- a/apps/powermanager/metadata.json +++ b/apps/powermanager/metadata.json @@ -2,7 +2,7 @@ "id": "powermanager", "name": "Power Manager", "shortName": "Power Manager", - "version": "0.04", + "version": "0.05", "description": "Allow configuration of warnings and thresholds for battery charging and display.", "icon": "app.png", "type": "bootloader", diff --git a/apps/powermanager/settings.js b/apps/powermanager/settings.js index 9eeb29e00..fe4719275 100644 --- a/apps/powermanager/settings.js +++ b/apps/powermanager/settings.js @@ -23,6 +23,7 @@ '': { 'title': 'Power Manager' }, + "< Back" : back, 'Monotonic percentage': { value: !!settings.forceMonoPercentage, onchange: v => { From 6c8eb8e11d01526974a87fc21eb8228d21d7caf8 Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 10:48:15 +1300 Subject: [PATCH 0058/1725] Create app.js --- tempgraph/app.js | 395 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 395 insertions(+) create mode 100644 tempgraph/app.js diff --git a/tempgraph/app.js b/tempgraph/app.js new file mode 100644 index 000000000..a0bb3016b --- /dev/null +++ b/tempgraph/app.js @@ -0,0 +1,395 @@ +// Temperature Graph +// BangleJS Script + +Bangle.setBarometerPower(true,"tempgraph"); +Bangle.loadWidgets(); +var wids=WIDGETS; +var widsOn=true; +var rm=null; +var gt=null; +var dg=null; +var Layout=require("Layout"); +var C=true; +var temp,tempMode,readErrCnt,watchButton2; + +var graph=require("Storage").readJSON("tempgraph.json",true); +if(graph==undefined) { + graph=[]; +} + +var timesData=[ + // dur=duration, u=time units, d=divisions on graph, s=seconds per unit. + {dur:10,u:"Mins",d:5,s:60}, + {dur:20,u:"Mins",d:4,s:60}, + {dur:30,u:"Mins",d:3,s:60}, + {dur:40,u:"Mins",d:4,s:60}, + {dur:1,u:"Hr",d:4,s:3600}, + {dur:2,u:"Hrs",d:4,s:3600}, + {dur:3,u:"Hrs",d:3,s:3600}, + {dur:4,u:"Hrs",d:4,s:3600}, + {dur:6,u:"Hrs",d:6,s:3600}, + {dur:8,u:"Hrs",d:4,s:3600}, + {dur:12,u:"Hrs",d:6,s:3600}, + {dur:16,u:"Hrs",d:4,s:3600}, + {dur:20,u:"Hrs",d:5,s:3600}, + {dur:1,u:"Day",d:4,s:3600}, + {dur:2,u:"Days",d:4,s:86400}, + {dur:3,u:"Days",d:3,s:86400}, + {dur:4,u:"Days",d:4,s:86400}, + {dur:5,u:"Days",d:5,s:86400}, + {dur:6,u:"Days",d:6,s:86400}, + {dur:7,u:"Days",d:7,s:86400} +]; +var times=[]; +for(n=0;n{ + temp=p.temperature; + if(tempMode=="drawGraph"&&graph.length>0&&Math.abs(graph[graph.length-1].temp-temp)>10&&readErrCnt<2){ + // A large change in temperature may be a reading error. ie. A 0C or less reading after + // a 20C reading. So if this happens, the reading is repeated up to 2 times to hopefully + // skip such errors. + readErrCnt++; + print("readErrCnt "+readErrCnt); + return; + } + clearInterval(gt); + readErrCnt=0; + switch (tempMode){ + case "showTemp": + showT(); + break; + case "drawGraph": + var date=new Date(); + var dateStr=require("locale").date(date).trim(); + var hrs=date.getHours(); + var mins=date.getMinutes(); + var secs=date.getSeconds(); + graph.push({ + temp:temp, + date:dateStr, + hrs:hrs, + mins:mins, + secs:secs + }); + if(graph.length==1){ + graph[0].dur=durInd; + } + require("Storage").writeJSON("tempgraph.json", graph); + if(graph.length==150){ + clearInterval(dg); + } + drawG(); + } + }); +} + +function getTemp(){ + readErrCnt=0; + gt = setInterval(getT,800); +} + +function setButton(){ + var watchButton=setWatch(function(){ + clearInterval(gt); + clearInterval(dg); + clearWatch(watchButton); + Bangle.removeListener("touch",screenTouch); + openMenu(); + },BTN); + Bangle.on('touch',screenTouch); +} + +function setButton2(){ + watchButton2=setWatch(function(){ + clearWatch(watchButton2); + openMenu(); + },BTN); +} + +function zPad(n){ + return n.toString().padStart(2,0); +} + +function screenTouch(n,ev){ + if(ev.y>23&&ev.y<152){ + C=C==false; + drawG(false); + } +} + +function drawG(){ + function cf(t){ + if(C){ + return t; + } + return getF(t); + } + drawWids(); + var top=1; + var bar=21; + var barBot=175-22; + if(widsOn){ + top=25; + bar=bar+24; + barBot=barBot-24; + } + var low=graph[0].temp; + var hi=low; + for(n=0;nt){ + low=t; + } + if(hi10){ + div=5; + } + if(C){ + g.setColor(1,0,0); + }else{ + g.setColor(0,0,1); + } + var step=(barBot-bar)/((tempHi-tempLow)/div); + for(n=0;nexit()}, + ],lazy:true + }); + drawWids(); + messageLO.render(); +} + +function showT(){ + tempLO.lab1.label=tempLO.lab3.label; + tempLO.lab2.label=tempLO.lab4.label; + tempLO.lab3.label=tempLO.lab5.label; + tempLO.lab4.label=tempLO.lab6.label; + tempLO.lab5.label=temp.toFixed(2)+"C"; + tempLO.lab6.label=getF(temp).toFixed(2)+"F"; + tempLO.render(); +} + +function exit(){ + clearWatch(watchButton2); + openMenu(); +} + +function showTemp(){ + tempMode="showTemp"; + setButton2(); + tempLO=new Layout({ + type:"v",c:[ + {type:"h",c:[ + {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab1"}, + {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab2"} + ]}, + {type:"h",c:[ + {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab3"}, + {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab4"} + ]}, + {type:"h",c:[ + {type:"txt",pad:5,col:"#f00",font:"6x8:2",label:" ",id:"lab5"}, + {type:"txt",pad:5,col:"#00f",font:"6x8:2",label:" ",id:"lab6"} + ]}, + {type:"h",c:[ + {type:"btn",pad:2,font:"6x8:2",label:"Temp",cb:l=>getTemp()}, + {type:"btn",pad:2,font:"6x8:2",label:"Exit",cb:l=>exit()} + ]} + ] + },{lazy:true}); + tempLO.render(); + getTemp(); +} + +var menu={ + "":{ + "title":" Temp. Graph" + }, + + "Widgets":{ + value:widsOn, + format:vis=>vis?"Hide":"Show", + onchange:vis=>{ + widsOn=vis; + refreshMenu(); + } + }, + + "Duration":{ + value:times.indexOf(duration), + min:0,max:times.length-1,step:1,wrap:true, + format:tim=>times[tim], + onchange:(dur)=>{ + duration=times[dur]; + } + }, + + "Draw Graph":function(){ + E.showMenu(); + drawGraph(); + }, + + "Show Graph" : function(){ + E.showMenu(); + if(graph.length>0){ + showGraph(); + }else{ + message("No graph to\nshow as no\ngraph has been\ndrawn yet."); + } + }, + + "Save Graph" : function(){ + E.showMenu(); + if(graph.length>0){ + saveGraph(); + }else{ + message("No graph to\nsave as no\ngraph has been\ndrawn yet."); + } + }, + + "Save Data" : function(){ + E.showMenu(); + if(graph.length>0){ + saveData(); + }else{ + message("No data to\nsave as no\ngraph has been\ndrawn yet."); + } + }, + + "Show Temp":function(){ + E.showMenu(); + showTemp(); + } +}; + +openMenu(); From a77b4cf233e4c8f879c005e32efbeaf05263e5db Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 10:54:02 +1300 Subject: [PATCH 0059/1725] Add files via upload --- tempgraph/ChangeLog | 2 ++ tempgraph/README.md | 35 +++++++++++++++++++++++++++++++++++ tempgraph/metadata.json | 18 ++++++++++++++++++ tempgraph/screenshot_1.png | Bin 0 -> 3320 bytes tempgraph/screenshot_2.png | Bin 0 -> 4186 bytes tempgraph/screenshot_3.png | Bin 0 -> 3480 bytes 6 files changed, 55 insertions(+) create mode 100644 tempgraph/ChangeLog create mode 100644 tempgraph/README.md create mode 100644 tempgraph/metadata.json create mode 100644 tempgraph/screenshot_1.png create mode 100644 tempgraph/screenshot_2.png create mode 100644 tempgraph/screenshot_3.png diff --git a/tempgraph/ChangeLog b/tempgraph/ChangeLog new file mode 100644 index 000000000..58dd75a19 --- /dev/null +++ b/tempgraph/ChangeLog @@ -0,0 +1,2 @@ +0.01: 3/Feb/2023 Added 'Temperature Graph' app to depository. + diff --git a/tempgraph/README.md b/tempgraph/README.md new file mode 100644 index 000000000..e104c41e0 --- /dev/null +++ b/tempgraph/README.md @@ -0,0 +1,35 @@ +# Temperature Graph + +**Temperature Graph** (tempgraph) is a Bangle.js 2 app for recording graphs of the temperature for various time periods from 10 minutes to 7 days long. It samples the watch's temperature sensor 150 times while creating a graph, regardless of the time period selected. + +### Menu Options +* **Widgets** Toggles the watch's widgets on and off. With them off gives you a bigger graph when viewing it. + +* **Duration** Select the time period for drawing the graph, from 10 minutes to 7 days long. + +* **Draw Graph** Draws the graph. + * Tapping the screen toggles the graph between Celsius (red) and Fahrenheit (blue). + * Pressing the watch button takes you back to the menu. **Note:** While the graph can still be viewed after returning to the menu, you can't continue recording it if you had returned to the menu before the time period was up. The graph is saved in the watch though so it's still there the next time you start the app. + +![](screenshot_1.png) +![](screenshot_2.png) +![](screenshot_3.png) + +* **Show Graph** Shows the last drawn graph. + * Tapping the screen toggles the graph between Celsius (red) and Fahrenheit (blue). + * Pressing the watch button takes you back to the menu. + +* **Save Graph** Sends a screengrab of the graph to the Espruino Web IDE from where you can save it as you would any image on a webpage. + +* **Save Data** Sends a CSV file of the graph's temperature data to the Espruino Web IDE where you can save it for further use. I suggest you use the Espruino Web IDE's Terminal Logger (selected in the IDE's Settings/General) to record the data as it's sent. This is the easiest way to save it as a text file. + +* **Show Temp** Shows the current temperature. + +### Note +Using the watch in a normal fashion can raise the temperature it's sensing to quite a few degrees above the surrounding temperature and it may take half an hour or so to drop to close to the surrounding temperature. After that it seems to give quite accurate readings, assuming the thermometer I've been comparing it to is itself reasonably accurate. So best to load the app then not touch the watch for half an hour before starting a recording. This is assuming you're not wearing the app and are just using it to record the temperature where you've put the watch. You could of course wear it and it'll still draw a graph, which might also be useful. + +### Creator +Carl Read ([mail](mailto:cread98@orcon.net.nz), [github](https://github.com/CarlR9)) + +#### License +[MIT License](LICENSE) diff --git a/tempgraph/metadata.json b/tempgraph/metadata.json new file mode 100644 index 000000000..f714c1eef --- /dev/null +++ b/tempgraph/metadata.json @@ -0,0 +1,18 @@ +{ "id": "tempgraph", + "name": "Temperature Graph", + "shortName":"Temp Graph", + "version":"0.01", + "description": "An app for recording the temperature for time periods ranging from 10 minutes to 7 days.", + "icon": "app.png", + "type": "tool", + "tags": "temperature,tempgraph,graph", + "supports" : ["BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"tempgraph.app.js","url":"app.js"} + ], + "data": [ + {"name":"tempgraph.json"} + ], + "screenshots": [{"url":"screenshot_1.png"},{"url":"screenshot_2.png"},{"url":"screenshot_3.png"}] +} diff --git a/tempgraph/screenshot_1.png b/tempgraph/screenshot_1.png new file mode 100644 index 0000000000000000000000000000000000000000..7395f289695fd5be8a03d97b8644f55cc29072db GIT binary patch literal 3320 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 literal 0 HcmV?d00001 diff --git a/tempgraph/screenshot_2.png b/tempgraph/screenshot_2.png new file mode 100644 index 0000000000000000000000000000000000000000..68d0ea236c6a513868c69eae8a5e51f995fad9f4 GIT binary patch literal 4186 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 Di-xj= literal 0 HcmV?d00001 From 7b68a37391be112b364caa3da7f793c283898848 Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 11:05:06 +1300 Subject: [PATCH 0060/1725] Update README.md --- tempgraph/README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tempgraph/README.md b/tempgraph/README.md index e104c41e0..de4a0af59 100644 --- a/tempgraph/README.md +++ b/tempgraph/README.md @@ -11,10 +11,6 @@ * Tapping the screen toggles the graph between Celsius (red) and Fahrenheit (blue). * Pressing the watch button takes you back to the menu. **Note:** While the graph can still be viewed after returning to the menu, you can't continue recording it if you had returned to the menu before the time period was up. The graph is saved in the watch though so it's still there the next time you start the app. -![](screenshot_1.png) -![](screenshot_2.png) -![](screenshot_3.png) - * **Show Graph** Shows the last drawn graph. * Tapping the screen toggles the graph between Celsius (red) and Fahrenheit (blue). * Pressing the watch button takes you back to the menu. @@ -25,6 +21,11 @@ * **Show Temp** Shows the current temperature. +### Screenshots +![](screenshot_1.png) +![](screenshot_2.png) +![](screenshot_3.png) + ### Note Using the watch in a normal fashion can raise the temperature it's sensing to quite a few degrees above the surrounding temperature and it may take half an hour or so to drop to close to the surrounding temperature. After that it seems to give quite accurate readings, assuming the thermometer I've been comparing it to is itself reasonably accurate. So best to load the app then not touch the watch for half an hour before starting a recording. This is assuming you're not wearing the app and are just using it to record the temperature where you've put the watch. You could of course wear it and it'll still draw a graph, which might also be useful. From ff40b61747f8894710d85bf41e36e9f29282b74c Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 11:16:05 +1300 Subject: [PATCH 0061/1725] Delete tempgraph directory --- tempgraph/ChangeLog | 2 - tempgraph/README.md | 36 ---- tempgraph/app.js | 395 ------------------------------------- tempgraph/metadata.json | 18 -- tempgraph/screenshot_1.png | Bin 3320 -> 0 bytes tempgraph/screenshot_2.png | Bin 4186 -> 0 bytes tempgraph/screenshot_3.png | Bin 3480 -> 0 bytes 7 files changed, 451 deletions(-) delete mode 100644 tempgraph/ChangeLog delete mode 100644 tempgraph/README.md delete mode 100644 tempgraph/app.js delete mode 100644 tempgraph/metadata.json delete mode 100644 tempgraph/screenshot_1.png delete mode 100644 tempgraph/screenshot_2.png delete mode 100644 tempgraph/screenshot_3.png diff --git a/tempgraph/ChangeLog b/tempgraph/ChangeLog deleted file mode 100644 index 58dd75a19..000000000 --- a/tempgraph/ChangeLog +++ /dev/null @@ -1,2 +0,0 @@ -0.01: 3/Feb/2023 Added 'Temperature Graph' app to depository. - diff --git a/tempgraph/README.md b/tempgraph/README.md deleted file mode 100644 index de4a0af59..000000000 --- a/tempgraph/README.md +++ /dev/null @@ -1,36 +0,0 @@ -# Temperature Graph - -**Temperature Graph** (tempgraph) is a Bangle.js 2 app for recording graphs of the temperature for various time periods from 10 minutes to 7 days long. It samples the watch's temperature sensor 150 times while creating a graph, regardless of the time period selected. - -### Menu Options -* **Widgets** Toggles the watch's widgets on and off. With them off gives you a bigger graph when viewing it. - -* **Duration** Select the time period for drawing the graph, from 10 minutes to 7 days long. - -* **Draw Graph** Draws the graph. - * Tapping the screen toggles the graph between Celsius (red) and Fahrenheit (blue). - * Pressing the watch button takes you back to the menu. **Note:** While the graph can still be viewed after returning to the menu, you can't continue recording it if you had returned to the menu before the time period was up. The graph is saved in the watch though so it's still there the next time you start the app. - -* **Show Graph** Shows the last drawn graph. - * Tapping the screen toggles the graph between Celsius (red) and Fahrenheit (blue). - * Pressing the watch button takes you back to the menu. - -* **Save Graph** Sends a screengrab of the graph to the Espruino Web IDE from where you can save it as you would any image on a webpage. - -* **Save Data** Sends a CSV file of the graph's temperature data to the Espruino Web IDE where you can save it for further use. I suggest you use the Espruino Web IDE's Terminal Logger (selected in the IDE's Settings/General) to record the data as it's sent. This is the easiest way to save it as a text file. - -* **Show Temp** Shows the current temperature. - -### Screenshots -![](screenshot_1.png) -![](screenshot_2.png) -![](screenshot_3.png) - -### Note -Using the watch in a normal fashion can raise the temperature it's sensing to quite a few degrees above the surrounding temperature and it may take half an hour or so to drop to close to the surrounding temperature. After that it seems to give quite accurate readings, assuming the thermometer I've been comparing it to is itself reasonably accurate. So best to load the app then not touch the watch for half an hour before starting a recording. This is assuming you're not wearing the app and are just using it to record the temperature where you've put the watch. You could of course wear it and it'll still draw a graph, which might also be useful. - -### Creator -Carl Read ([mail](mailto:cread98@orcon.net.nz), [github](https://github.com/CarlR9)) - -#### License -[MIT License](LICENSE) diff --git a/tempgraph/app.js b/tempgraph/app.js deleted file mode 100644 index a0bb3016b..000000000 --- a/tempgraph/app.js +++ /dev/null @@ -1,395 +0,0 @@ -// Temperature Graph -// BangleJS Script - -Bangle.setBarometerPower(true,"tempgraph"); -Bangle.loadWidgets(); -var wids=WIDGETS; -var widsOn=true; -var rm=null; -var gt=null; -var dg=null; -var Layout=require("Layout"); -var C=true; -var temp,tempMode,readErrCnt,watchButton2; - -var graph=require("Storage").readJSON("tempgraph.json",true); -if(graph==undefined) { - graph=[]; -} - -var timesData=[ - // dur=duration, u=time units, d=divisions on graph, s=seconds per unit. - {dur:10,u:"Mins",d:5,s:60}, - {dur:20,u:"Mins",d:4,s:60}, - {dur:30,u:"Mins",d:3,s:60}, - {dur:40,u:"Mins",d:4,s:60}, - {dur:1,u:"Hr",d:4,s:3600}, - {dur:2,u:"Hrs",d:4,s:3600}, - {dur:3,u:"Hrs",d:3,s:3600}, - {dur:4,u:"Hrs",d:4,s:3600}, - {dur:6,u:"Hrs",d:6,s:3600}, - {dur:8,u:"Hrs",d:4,s:3600}, - {dur:12,u:"Hrs",d:6,s:3600}, - {dur:16,u:"Hrs",d:4,s:3600}, - {dur:20,u:"Hrs",d:5,s:3600}, - {dur:1,u:"Day",d:4,s:3600}, - {dur:2,u:"Days",d:4,s:86400}, - {dur:3,u:"Days",d:3,s:86400}, - {dur:4,u:"Days",d:4,s:86400}, - {dur:5,u:"Days",d:5,s:86400}, - {dur:6,u:"Days",d:6,s:86400}, - {dur:7,u:"Days",d:7,s:86400} -]; -var times=[]; -for(n=0;n{ - temp=p.temperature; - if(tempMode=="drawGraph"&&graph.length>0&&Math.abs(graph[graph.length-1].temp-temp)>10&&readErrCnt<2){ - // A large change in temperature may be a reading error. ie. A 0C or less reading after - // a 20C reading. So if this happens, the reading is repeated up to 2 times to hopefully - // skip such errors. - readErrCnt++; - print("readErrCnt "+readErrCnt); - return; - } - clearInterval(gt); - readErrCnt=0; - switch (tempMode){ - case "showTemp": - showT(); - break; - case "drawGraph": - var date=new Date(); - var dateStr=require("locale").date(date).trim(); - var hrs=date.getHours(); - var mins=date.getMinutes(); - var secs=date.getSeconds(); - graph.push({ - temp:temp, - date:dateStr, - hrs:hrs, - mins:mins, - secs:secs - }); - if(graph.length==1){ - graph[0].dur=durInd; - } - require("Storage").writeJSON("tempgraph.json", graph); - if(graph.length==150){ - clearInterval(dg); - } - drawG(); - } - }); -} - -function getTemp(){ - readErrCnt=0; - gt = setInterval(getT,800); -} - -function setButton(){ - var watchButton=setWatch(function(){ - clearInterval(gt); - clearInterval(dg); - clearWatch(watchButton); - Bangle.removeListener("touch",screenTouch); - openMenu(); - },BTN); - Bangle.on('touch',screenTouch); -} - -function setButton2(){ - watchButton2=setWatch(function(){ - clearWatch(watchButton2); - openMenu(); - },BTN); -} - -function zPad(n){ - return n.toString().padStart(2,0); -} - -function screenTouch(n,ev){ - if(ev.y>23&&ev.y<152){ - C=C==false; - drawG(false); - } -} - -function drawG(){ - function cf(t){ - if(C){ - return t; - } - return getF(t); - } - drawWids(); - var top=1; - var bar=21; - var barBot=175-22; - if(widsOn){ - top=25; - bar=bar+24; - barBot=barBot-24; - } - var low=graph[0].temp; - var hi=low; - for(n=0;nt){ - low=t; - } - if(hi10){ - div=5; - } - if(C){ - g.setColor(1,0,0); - }else{ - g.setColor(0,0,1); - } - var step=(barBot-bar)/((tempHi-tempLow)/div); - for(n=0;nexit()}, - ],lazy:true - }); - drawWids(); - messageLO.render(); -} - -function showT(){ - tempLO.lab1.label=tempLO.lab3.label; - tempLO.lab2.label=tempLO.lab4.label; - tempLO.lab3.label=tempLO.lab5.label; - tempLO.lab4.label=tempLO.lab6.label; - tempLO.lab5.label=temp.toFixed(2)+"C"; - tempLO.lab6.label=getF(temp).toFixed(2)+"F"; - tempLO.render(); -} - -function exit(){ - clearWatch(watchButton2); - openMenu(); -} - -function showTemp(){ - tempMode="showTemp"; - setButton2(); - tempLO=new Layout({ - type:"v",c:[ - {type:"h",c:[ - {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab1"}, - {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab2"} - ]}, - {type:"h",c:[ - {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab3"}, - {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab4"} - ]}, - {type:"h",c:[ - {type:"txt",pad:5,col:"#f00",font:"6x8:2",label:" ",id:"lab5"}, - {type:"txt",pad:5,col:"#00f",font:"6x8:2",label:" ",id:"lab6"} - ]}, - {type:"h",c:[ - {type:"btn",pad:2,font:"6x8:2",label:"Temp",cb:l=>getTemp()}, - {type:"btn",pad:2,font:"6x8:2",label:"Exit",cb:l=>exit()} - ]} - ] - },{lazy:true}); - tempLO.render(); - getTemp(); -} - -var menu={ - "":{ - "title":" Temp. Graph" - }, - - "Widgets":{ - value:widsOn, - format:vis=>vis?"Hide":"Show", - onchange:vis=>{ - widsOn=vis; - refreshMenu(); - } - }, - - "Duration":{ - value:times.indexOf(duration), - min:0,max:times.length-1,step:1,wrap:true, - format:tim=>times[tim], - onchange:(dur)=>{ - duration=times[dur]; - } - }, - - "Draw Graph":function(){ - E.showMenu(); - drawGraph(); - }, - - "Show Graph" : function(){ - E.showMenu(); - if(graph.length>0){ - showGraph(); - }else{ - message("No graph to\nshow as no\ngraph has been\ndrawn yet."); - } - }, - - "Save Graph" : function(){ - E.showMenu(); - if(graph.length>0){ - saveGraph(); - }else{ - message("No graph to\nsave as no\ngraph has been\ndrawn yet."); - } - }, - - "Save Data" : function(){ - E.showMenu(); - if(graph.length>0){ - saveData(); - }else{ - message("No data to\nsave as no\ngraph has been\ndrawn yet."); - } - }, - - "Show Temp":function(){ - E.showMenu(); - showTemp(); - } -}; - -openMenu(); diff --git a/tempgraph/metadata.json b/tempgraph/metadata.json deleted file mode 100644 index f714c1eef..000000000 --- a/tempgraph/metadata.json +++ /dev/null @@ -1,18 +0,0 @@ -{ "id": "tempgraph", - "name": "Temperature Graph", - "shortName":"Temp Graph", - "version":"0.01", - "description": "An app for recording the temperature for time periods ranging from 10 minutes to 7 days.", - "icon": "app.png", - "type": "tool", - "tags": "temperature,tempgraph,graph", - "supports" : ["BANGLEJS2"], - "readme": "README.md", - "storage": [ - {"name":"tempgraph.app.js","url":"app.js"} - ], - "data": [ - {"name":"tempgraph.json"} - ], - "screenshots": [{"url":"screenshot_1.png"},{"url":"screenshot_2.png"},{"url":"screenshot_3.png"}] -} diff --git a/tempgraph/screenshot_1.png b/tempgraph/screenshot_1.png deleted file mode 100644 index 7395f289695fd5be8a03d97b8644f55cc29072db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3320 zcmc&%c|4Tu8h*_pJ0(S9`$$TK>`RF3Ya+5w(IETUSevn=P$GL-Bg7!fjD+4g*~@OM zGqeZ^qm1U831`&#zVpZV`}>_g-uL27D5p%~=j{Mo|6#qT;hC6L3H=B#aSZ=-rYbK6xno$72nqPjb;DfH3MrYnLP#894q}Y@ugiEoZdW|BYZ9Lv|iQ< zwaI6^acXnYOx!eL%5GcT@umv_K6y&aiJFQk!#VSU?H$6)_WBO0P$x-3cpE&q>4BL5 zd$y;}fnr>$3aB)1jfwi=`)B2Nh|*9y@PiiI6wuh81kCm&907aYS&L+n0dK0L%~Rh- z*pUKy`>Weqx(|bt_?jG^5D|ILYeVHWO;N!J3;yPXmaIECbEk=Ni){s{DI=ZBm*p$= z{X6Z`xBHYmA`}t%LeRD)XV1l{sSv{$J`l%6gvw{IbR|OJ4@FzEs63Ai2tnp#|M{^L=yN-GEnwnd+I!20t zq{Vc^c;PuCMzA+#rTId;=ok1@bwzVw6EU5tVN*L*gOx1F3G0bHNK={{)}Dy*9uM(g zFQJYenODA#Q)$(46$>WGV zc@AUJSuP+B=J1GV&i&MuUnqez9z53}D?dWynXfc7)KGCmWg(ti`dLZ%dOsK6(O0b9 zi?j0JL+XDJey9nVjYLY-WgVA?E>b2*eI$S=de(urKb+Ug(ep#=B~KO^i@T8Jv_5Bt&1w`_eio?uO}^Xh(~P2VJmm_NX&Vc1Lxm&RnGH!8h@Z{GV#zLT}b(Bjru-Dzg(*OguVl%8Tw z&4bIFECctBO}csvy^=Lo+yk}Z9Gy*;h}R}m#QHH)k#4(1m-Sh-W=f3R*aE|qUTsOl z^Mqf?cVH4iJLZ12J1DgIT#M?nm&%~;zL8K^n&L5_H|#@y|N7_Kt$^!M=~pdQD{ZD^ zVtxG$nKTuvzIvThSP~)SUQMPoOl9g&HzZfSUuAGpIveFBh?$iz`-WsOW7h1B?A?i? z!}k}aG$6uUAH1kHAT&3X?f%!)s!!ii3aE3QGL5h z^a6!IANCE`;SSY9Y?L&lu=kcFa9C}T^u~o|=${4Feb^Vwuc`pfyx@b;Za=Z* z^%ptuZD8cR+3ggM_rGx2Kn1r$b1OB@o}Z@+D>9@l88v-&;JdP}6pQeB8J(TU9IV{^ zMEhRnY8uu9*>CUTeFcT2;k=|>f5V<*!TS@Nm=hk2eZFG}h_M^(9w==JANkE1+6%s9 zp_Q%t#)7qkplg3|RRyKrzOIJF3g`^*QhLQ*r6|?3Aa0BmY(oa?)|s{fL}!rh{NgtO zrFDxl8!Vz*YY|DL^ZhuRe#=>Oz{}Y8TBd7l_Pd_i9lWXd+%~tLqu}FwuW-mM`=PY4 z8>I~stZM3#ZU>N35B4K{VO^fcYBAkBbpd1`N2lJiy&b#$5<0muCqB;yBG8W8*mIF< zeJe0Qo3Cwv`}UlZR?)f`B)vbIAA6^jd6bkBA!vrwLj(U{cf*%m*nGt;8XfnT z>tZyAf3<*x_{Icjedb&(xNt51*RGrc@b`Gena)fTsUAEURFC_Q=x&SfEO>XQZG6lk_Nqv zx0FMrF^tS9C;oZKFYs(BFt_Dz3;yjeOU#*qkv*TP|F2K~v7j}!`tTMTj=}Q<%g662 zqg64@Hr+iwuXC~8G!D5iX$;P$o2ol#5%|N{8f`lX`Uy}hr2<}~g>sTK*h9=v`H}tUCE-rgYZ^XTgcwXczGu999aQsplzp>}I{fd-9D zx(p&&k@2TfZ~A`rT85=ii?MfmUd7IoLr0#pV4K7E96Pemw6@Y=Pl0ENU7B_`J%-lt z!}o08G}soG0}ZUA))X;NGST4{hq-m}^vdeffSHox0iU07M6OrsAs$`gofch{Ed#kQ zID6V#NPwMIopRRq(9d2=jxh$?Uds-2d#md9t^!MMqD93l|-vfgx7KT z!po_VW)_slIscF{@=m1)W11u4>{xd~p&0FPj3WtIzO*?Xo@yCgW|208<3=kTQWCS_RGAxU__kBhfvWde&TDtAT?(@o@b#xrdOz-Zo-}o-2U}D%e!ImGa$1zcOHr zTZ}eC`{5~&1+4EiQ8}m+dkGw9IHjk&i2|BLeGKbSY;v)mnYd9%w2k(M3ua2T7v$s> zpCHv2Oa-smUB9LmVIgaEmW1K~HR7YF_)!0Gex7>Y;sNGWt=Q$fLZQGpb&*ma%B-NZ zeOT%Z!H|LAD66}O5DN9Xj-NJAXjG;~tzK75wL2W#sLr*nS-Jj!e4rFgDdDM?7f>q& z^8iDIvHfo84djD&#&jR*!|y@P^0yYYHeKuCnu?^$Kh|o#M?Xd&Pc&&y$PBM_HG31M zRky1{E-JgdaJfbd80TG1f%vZKp;a#jzuR)fM~hLH;3F?0^k=fRhl#O7jat0lxJ~UJ zntXM}W?qC{ry?io?5!gBQ&%1R{tAROiRHz{nG{&dTI!97SpknTY)3=25G&*imiBwo z+;HRmj6=oBm0|8-ticWb>$&J|e;rv55#sk-g(jT^I8#R>R9OQj7KJ?B=q<$6cd>6h zZXBw=^^$5^cestb+TxGo?=!7QxnysZNTxJji289(|y5(K>LD z&JQ>7sTkOD)rqPlWb4)kEREHbtNAVek;Bs-@-p2;i_(UA4HzmK7GR?k$+0K~`Q-Ld zF-DDID=S{%=K3Ph-H+3pH`>N?rMBzE%(6*(LDgvWbpEMNrUpJl1eK~$xyvqFelldzHm>5{<*XkkT{tZ@2JSzYI diff --git a/tempgraph/screenshot_2.png b/tempgraph/screenshot_2.png deleted file mode 100644 index 68d0ea236c6a513868c69eae8a5e51f995fad9f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4186 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 Di-xj= From 230625ae7830acc595f43f8e6e87b792f59e3e4e Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 11:18:27 +1300 Subject: [PATCH 0062/1725] Create app.js --- apps/tempgraph/app.js | 395 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 395 insertions(+) create mode 100644 apps/tempgraph/app.js diff --git a/apps/tempgraph/app.js b/apps/tempgraph/app.js new file mode 100644 index 000000000..a0bb3016b --- /dev/null +++ b/apps/tempgraph/app.js @@ -0,0 +1,395 @@ +// Temperature Graph +// BangleJS Script + +Bangle.setBarometerPower(true,"tempgraph"); +Bangle.loadWidgets(); +var wids=WIDGETS; +var widsOn=true; +var rm=null; +var gt=null; +var dg=null; +var Layout=require("Layout"); +var C=true; +var temp,tempMode,readErrCnt,watchButton2; + +var graph=require("Storage").readJSON("tempgraph.json",true); +if(graph==undefined) { + graph=[]; +} + +var timesData=[ + // dur=duration, u=time units, d=divisions on graph, s=seconds per unit. + {dur:10,u:"Mins",d:5,s:60}, + {dur:20,u:"Mins",d:4,s:60}, + {dur:30,u:"Mins",d:3,s:60}, + {dur:40,u:"Mins",d:4,s:60}, + {dur:1,u:"Hr",d:4,s:3600}, + {dur:2,u:"Hrs",d:4,s:3600}, + {dur:3,u:"Hrs",d:3,s:3600}, + {dur:4,u:"Hrs",d:4,s:3600}, + {dur:6,u:"Hrs",d:6,s:3600}, + {dur:8,u:"Hrs",d:4,s:3600}, + {dur:12,u:"Hrs",d:6,s:3600}, + {dur:16,u:"Hrs",d:4,s:3600}, + {dur:20,u:"Hrs",d:5,s:3600}, + {dur:1,u:"Day",d:4,s:3600}, + {dur:2,u:"Days",d:4,s:86400}, + {dur:3,u:"Days",d:3,s:86400}, + {dur:4,u:"Days",d:4,s:86400}, + {dur:5,u:"Days",d:5,s:86400}, + {dur:6,u:"Days",d:6,s:86400}, + {dur:7,u:"Days",d:7,s:86400} +]; +var times=[]; +for(n=0;n{ + temp=p.temperature; + if(tempMode=="drawGraph"&&graph.length>0&&Math.abs(graph[graph.length-1].temp-temp)>10&&readErrCnt<2){ + // A large change in temperature may be a reading error. ie. A 0C or less reading after + // a 20C reading. So if this happens, the reading is repeated up to 2 times to hopefully + // skip such errors. + readErrCnt++; + print("readErrCnt "+readErrCnt); + return; + } + clearInterval(gt); + readErrCnt=0; + switch (tempMode){ + case "showTemp": + showT(); + break; + case "drawGraph": + var date=new Date(); + var dateStr=require("locale").date(date).trim(); + var hrs=date.getHours(); + var mins=date.getMinutes(); + var secs=date.getSeconds(); + graph.push({ + temp:temp, + date:dateStr, + hrs:hrs, + mins:mins, + secs:secs + }); + if(graph.length==1){ + graph[0].dur=durInd; + } + require("Storage").writeJSON("tempgraph.json", graph); + if(graph.length==150){ + clearInterval(dg); + } + drawG(); + } + }); +} + +function getTemp(){ + readErrCnt=0; + gt = setInterval(getT,800); +} + +function setButton(){ + var watchButton=setWatch(function(){ + clearInterval(gt); + clearInterval(dg); + clearWatch(watchButton); + Bangle.removeListener("touch",screenTouch); + openMenu(); + },BTN); + Bangle.on('touch',screenTouch); +} + +function setButton2(){ + watchButton2=setWatch(function(){ + clearWatch(watchButton2); + openMenu(); + },BTN); +} + +function zPad(n){ + return n.toString().padStart(2,0); +} + +function screenTouch(n,ev){ + if(ev.y>23&&ev.y<152){ + C=C==false; + drawG(false); + } +} + +function drawG(){ + function cf(t){ + if(C){ + return t; + } + return getF(t); + } + drawWids(); + var top=1; + var bar=21; + var barBot=175-22; + if(widsOn){ + top=25; + bar=bar+24; + barBot=barBot-24; + } + var low=graph[0].temp; + var hi=low; + for(n=0;nt){ + low=t; + } + if(hi10){ + div=5; + } + if(C){ + g.setColor(1,0,0); + }else{ + g.setColor(0,0,1); + } + var step=(barBot-bar)/((tempHi-tempLow)/div); + for(n=0;nexit()}, + ],lazy:true + }); + drawWids(); + messageLO.render(); +} + +function showT(){ + tempLO.lab1.label=tempLO.lab3.label; + tempLO.lab2.label=tempLO.lab4.label; + tempLO.lab3.label=tempLO.lab5.label; + tempLO.lab4.label=tempLO.lab6.label; + tempLO.lab5.label=temp.toFixed(2)+"C"; + tempLO.lab6.label=getF(temp).toFixed(2)+"F"; + tempLO.render(); +} + +function exit(){ + clearWatch(watchButton2); + openMenu(); +} + +function showTemp(){ + tempMode="showTemp"; + setButton2(); + tempLO=new Layout({ + type:"v",c:[ + {type:"h",c:[ + {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab1"}, + {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab2"} + ]}, + {type:"h",c:[ + {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab3"}, + {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab4"} + ]}, + {type:"h",c:[ + {type:"txt",pad:5,col:"#f00",font:"6x8:2",label:" ",id:"lab5"}, + {type:"txt",pad:5,col:"#00f",font:"6x8:2",label:" ",id:"lab6"} + ]}, + {type:"h",c:[ + {type:"btn",pad:2,font:"6x8:2",label:"Temp",cb:l=>getTemp()}, + {type:"btn",pad:2,font:"6x8:2",label:"Exit",cb:l=>exit()} + ]} + ] + },{lazy:true}); + tempLO.render(); + getTemp(); +} + +var menu={ + "":{ + "title":" Temp. Graph" + }, + + "Widgets":{ + value:widsOn, + format:vis=>vis?"Hide":"Show", + onchange:vis=>{ + widsOn=vis; + refreshMenu(); + } + }, + + "Duration":{ + value:times.indexOf(duration), + min:0,max:times.length-1,step:1,wrap:true, + format:tim=>times[tim], + onchange:(dur)=>{ + duration=times[dur]; + } + }, + + "Draw Graph":function(){ + E.showMenu(); + drawGraph(); + }, + + "Show Graph" : function(){ + E.showMenu(); + if(graph.length>0){ + showGraph(); + }else{ + message("No graph to\nshow as no\ngraph has been\ndrawn yet."); + } + }, + + "Save Graph" : function(){ + E.showMenu(); + if(graph.length>0){ + saveGraph(); + }else{ + message("No graph to\nsave as no\ngraph has been\ndrawn yet."); + } + }, + + "Save Data" : function(){ + E.showMenu(); + if(graph.length>0){ + saveData(); + }else{ + message("No data to\nsave as no\ngraph has been\ndrawn yet."); + } + }, + + "Show Temp":function(){ + E.showMenu(); + showTemp(); + } +}; + +openMenu(); From 862494a0d7d2967643cd59c766c0dbb58d3c9dca Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 11:19:47 +1300 Subject: [PATCH 0063/1725] Add files via upload --- apps/tempgraph/ChangeLog | 2 ++ apps/tempgraph/README.md | 36 ++++++++++++++++++++++++++++++++ apps/tempgraph/app.png | Bin 0 -> 6941 bytes apps/tempgraph/metadata.json | 18 ++++++++++++++++ apps/tempgraph/screenshot_1.png | Bin 0 -> 3320 bytes apps/tempgraph/screenshot_2.png | Bin 0 -> 4186 bytes apps/tempgraph/screenshot_3.png | Bin 0 -> 3480 bytes 7 files changed, 56 insertions(+) create mode 100644 apps/tempgraph/ChangeLog create mode 100644 apps/tempgraph/README.md create mode 100644 apps/tempgraph/app.png create mode 100644 apps/tempgraph/metadata.json create mode 100644 apps/tempgraph/screenshot_1.png create mode 100644 apps/tempgraph/screenshot_2.png create mode 100644 apps/tempgraph/screenshot_3.png diff --git a/apps/tempgraph/ChangeLog b/apps/tempgraph/ChangeLog new file mode 100644 index 000000000..58dd75a19 --- /dev/null +++ b/apps/tempgraph/ChangeLog @@ -0,0 +1,2 @@ +0.01: 3/Feb/2023 Added 'Temperature Graph' app to depository. + diff --git a/apps/tempgraph/README.md b/apps/tempgraph/README.md new file mode 100644 index 000000000..de4a0af59 --- /dev/null +++ b/apps/tempgraph/README.md @@ -0,0 +1,36 @@ +# Temperature Graph + +**Temperature Graph** (tempgraph) is a Bangle.js 2 app for recording graphs of the temperature for various time periods from 10 minutes to 7 days long. It samples the watch's temperature sensor 150 times while creating a graph, regardless of the time period selected. + +### Menu Options +* **Widgets** Toggles the watch's widgets on and off. With them off gives you a bigger graph when viewing it. + +* **Duration** Select the time period for drawing the graph, from 10 minutes to 7 days long. + +* **Draw Graph** Draws the graph. + * Tapping the screen toggles the graph between Celsius (red) and Fahrenheit (blue). + * Pressing the watch button takes you back to the menu. **Note:** While the graph can still be viewed after returning to the menu, you can't continue recording it if you had returned to the menu before the time period was up. The graph is saved in the watch though so it's still there the next time you start the app. + +* **Show Graph** Shows the last drawn graph. + * Tapping the screen toggles the graph between Celsius (red) and Fahrenheit (blue). + * Pressing the watch button takes you back to the menu. + +* **Save Graph** Sends a screengrab of the graph to the Espruino Web IDE from where you can save it as you would any image on a webpage. + +* **Save Data** Sends a CSV file of the graph's temperature data to the Espruino Web IDE where you can save it for further use. I suggest you use the Espruino Web IDE's Terminal Logger (selected in the IDE's Settings/General) to record the data as it's sent. This is the easiest way to save it as a text file. + +* **Show Temp** Shows the current temperature. + +### Screenshots +![](screenshot_1.png) +![](screenshot_2.png) +![](screenshot_3.png) + +### Note +Using the watch in a normal fashion can raise the temperature it's sensing to quite a few degrees above the surrounding temperature and it may take half an hour or so to drop to close to the surrounding temperature. After that it seems to give quite accurate readings, assuming the thermometer I've been comparing it to is itself reasonably accurate. So best to load the app then not touch the watch for half an hour before starting a recording. This is assuming you're not wearing the app and are just using it to record the temperature where you've put the watch. You could of course wear it and it'll still draw a graph, which might also be useful. + +### Creator +Carl Read ([mail](mailto:cread98@orcon.net.nz), [github](https://github.com/CarlR9)) + +#### License +[MIT License](LICENSE) diff --git a/apps/tempgraph/app.png b/apps/tempgraph/app.png new file mode 100644 index 0000000000000000000000000000000000000000..1ae347ac837d8366797f532b8d304dc77802fd02 GIT binary patch literal 6941 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 V5(kw?=U-<5P+3(-m9%N_e*t{e8WjKl literal 0 HcmV?d00001 diff --git a/apps/tempgraph/metadata.json b/apps/tempgraph/metadata.json new file mode 100644 index 000000000..f714c1eef --- /dev/null +++ b/apps/tempgraph/metadata.json @@ -0,0 +1,18 @@ +{ "id": "tempgraph", + "name": "Temperature Graph", + "shortName":"Temp Graph", + "version":"0.01", + "description": "An app for recording the temperature for time periods ranging from 10 minutes to 7 days.", + "icon": "app.png", + "type": "tool", + "tags": "temperature,tempgraph,graph", + "supports" : ["BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"tempgraph.app.js","url":"app.js"} + ], + "data": [ + {"name":"tempgraph.json"} + ], + "screenshots": [{"url":"screenshot_1.png"},{"url":"screenshot_2.png"},{"url":"screenshot_3.png"}] +} diff --git a/apps/tempgraph/screenshot_1.png b/apps/tempgraph/screenshot_1.png new file mode 100644 index 0000000000000000000000000000000000000000..7395f289695fd5be8a03d97b8644f55cc29072db GIT binary patch literal 3320 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 literal 0 HcmV?d00001 diff --git a/apps/tempgraph/screenshot_2.png b/apps/tempgraph/screenshot_2.png new file mode 100644 index 0000000000000000000000000000000000000000..68d0ea236c6a513868c69eae8a5e51f995fad9f4 GIT binary patch literal 4186 zcmd6rS5p%Vu!fV+f)JXZhNg&sNC!cs_by5mLW>eWdhZYux<~}1DFTruDuf<-2}Pv| z3PPw!K%_Tm0R%aGGw0&`gmbaGGdsJp&)&QpMmMm zePzRf!+8J(nCWQ(Du#Gh001^l18oh9P=}4Y7d2~*7qnf^&h)UNUroiG*dSRPqATVN ztK;j|SMC^rRpw7l|5CTe&rY(((3}YF|A@ zZS1Y>yX%UeliP$JCO&SG^179^sbMz`eBv(CT^1<;eLPvWBdiYy+c414quD0H%u32Dsil0v3AFGNU<_1QeXdw6sB!!gVKk>FY^p)d7tb;dYJ>&d#IN)+ zdj@gWDYRD!xvv^6c|6a6{?m>+2msgyT##7%4Mdtu?<#tzODoG=Eq1|T~{@w z>5!mdP*--l`jnauD1sLfH=yw=DB~)WbO~q98g)e%sAR zwuX7Htc*=1>qiAcNOIR)ctLNUT0Yv=$k|S}WvEz|2kOB1NArn`VP#l1u-`BVr<_SR?%vH9rm& zJXpx4GEA%SR%-bZXjQ932FP-?^tMS(gY32_YD*3CUSh03$!9re^B_bj@iPX=5BHF; ze^6yPN6}q(1EQ#zD`odFY14f-GnRusa5kh^-nw(0fWahBvoTQYxt?5c@Gwie$+Ie~ z29f?WYf$C10`zQO8qt5(ajfKLn#wl^mQE~?cbz^%sw|kO>QWeQ3X#$$-{4eDt` z1C1Njr2Uk89cDBQCo@w|`HX4!>Fz$M-A~TR6K~B@m?Ep>wKX>MXDa>En`QwvW-`j7 z()!XKbr(e2c17eB#t{ z&Lljg%3PHlwg#(4s#~Z-=m*|gYW^e^O=`7NWDlF(|4zXh-gMI%DCbaLDW!ipY$~{$ zo4xdkVG5_76+iCjK-2Qm95y@o$@TaCxa^z7^zu2_n~$`{$D*B8`Swhx@i2F<)rkFA zU>{-Uo^qaT9=T?Wrauw0=_;TsAUG5?fG=~ei6+w?LfQ~?Y%rm(JU0xOZ|wcsq2%(ln~)?IaRF;h<42m>inoEn1loyJ8Q!d~;`edI zVn*PSkYq6BoHDxMRb|m_I7D3Wi{Zoa1u>utefv#y6sy7A=f7^eOuuU~zaEEWpY)IY zmZqgLUm3h=>@DS^>Of-X>Q+{YOzchD?<3xDBDf40wqKtLPY8oG*T%vbWpo(P2>3q4 zG>Co(aizWhlnBB(U9h6h3dW};Kwm=-e?hNE2!MSBEz2z)RV;{^(PVoVhK6!Opregx z)hEY0G?5jWzFbchk{EN)7w@?`s$3_~z6S8jx|YB&?G^Y-|5gJ#a?xv8e<1>GXp=$b z1%O9KcB`4I6Qn#tqzz+GmUJn1KwW=1eIY7@}tXW9;bQ=8_L$4?+=%2z0T| zhg^s%4t=L!-xN?9+Z&vmz(IS6FFZs&scf2mHQo|lYO{lp3gUpPv6zF(y|C>}Nnpa# zY;|{cGtCS%P8lWGetdJVg{R4mv6_RB)krrlPEcsoW7I&2hzkrcc<#+9GksPyl_~r6 zh!GwABRUyyRgwHW`;Nb{rRG!h-tfSVMJYT>l8Zbor5;!G%Q<>!@*KD40V~R(#KwSS z>O`OjxJumv5Ls)m+yld1WJcf2XI*0S?5HhuaU*=oJDU=+eTxqcy~X=?7Zkz(9}dnN zOM>IZz+{JN4#%AxuPp_3HRo;Hq8a<|H2~t5pRMc~245`dIG^+OKD0eU-m%#t#w zO7xrzz^ixHiV$$(xnuYP8^;74rP&`ctvx7bQVfk0O%Z?pn&cWG|H@54cDRj#S8 zei0zzkoY}$)bLGoJF+IW%A{x`{e;l+<9HFGDMO!>8Ti={ye2L!;^&)U$C#8E`56%3 zeM8bSUw43;PYDf`pS1ojD?~6<<7OwYD@;xvP(Ek0`)XD2| zK2KEE7t**NZb?y=PBAAL-?po@qT6eDg)?_m#?W7E8tHi|PL~A_UwlNn`r-(dap0w#lmgthyK4F4Yc2whAxQQD~1d@+jhp_iFZ~YLV zce*-l@^PE@Bgd^M6-B0ySr$gx5q8{$vDX_0K73u=;j!w@k)Wfya*S^zRs5J&;#qjt zr^#l>w#%Lgy*GLq)~yttaaN*s+PNPb0$ff*%U7kw9dR&8ctr4huiXmbgz9lk zS0qFSxvgCk_SxbZjoN-+MoU~z9lPCRm}{rnhcn)4cS z=exxrw=gvgh=AK6?MzzXUHzfs+b)bND&^T42wkdrau#4Y@iAIBA?QKFhqJ7x0iT~& zD}ROh?W$4@!D50~Szj?4>&fEa!2v?ZK!zfC>buq7*WU;uy49mQv)o<_mQ)AjL`>OE6hVrQ;5S-Z8@Kf=4A^*J|a`UBqz=^<)Z z#n~~$%ehhipjK8I2C}XVt&9qk{{@D7w;j_4#`1@G72|+@khg=m4$npi>2H+Xi}t9^ zY6(QN%C%vw!9U#tR`IblKLd7)gHk73eEL#t;6ktS^By)m#^8f=_X}sCa4GX}EV0Uf z(yHf{((|{}zv|B(QliKPPz1zPzHosrv{hNrujio?GTHX8h!>gZk;LT7nVC~d?dL78 zla{R9=FqO0Y(IiUP?gONa$b3V>ej7e-a9Xq{aO;R38uYG(?FE>i*Fy!3k933yuCCk&H)8bwwyfo^b>Ii3yCos8jgI-h}*wK$ixU_elA z)=P-%Llj_`jqW(r3I!-Faq5P0UL(k9qg9K!t`Xc;CVc7Xz}w8G?^xaFz`ig=g=C;I`&_c{HO>87oN?Pt)j8(2& zQ)Id4D$AMk>;CE6_m9u#^>}3OC~M;o)5OPm8B@;AfW&kdr0h z^%yZ_prpThy_9ZqQ&W@f`ZdTm8}>XH^D4%|O;1gNoh0d3jJwORx4mt4?rwX>>*^Xm zU(K0r8T%gPFW{haGZvi-;V!;nUf)_c)M~WuUF=p(5XSP#%6+^ zjF`^DP;1Y}yn45+%!P&qGq2{3h$!UP!u>9{G6~TY+WpQ=^Pc#&t*H zdHno_V9D(=Tf2&hC2bp)XTALcuHac++K1c(&EZ%CJhLE|>T;L3kPdDLRo#{2aauo6j3+_oK<_%EzUQ z0u(qgl4Y%7lzPiYTBUJjIyaq?BMZ>5+Y=w|e>TX{V7MVrF;Ze&#VINN#BMkvbx`?B zfI5@-Nt<3F65G}*%I=)}T2Kkj(gZ74JThB^F>Bnsz^^<;%|xh6#Cr1=Lm4f(Vkbbs-i@3JAEq9=Alhj3N{j!{^s?98NPJhP z;HOrUKEST1dA5N7?5?ZbdC9mBRAft{vBqrJ#_ialWxzcbfM*oRe*UBOmTMY>zcr~X z(WDIpwoAD%UutOgY2qF}CY+g{(8jRu57z4yxW)YeM9W(@BA6i3Ke7JwDJ>Op&EM!V2EPAKnIMa;70|qn{S$6dHPJ!XnZ_T%xx_2CmnXp01 z{zl0UB~Rz5?tvDM9ntBC-L^Y20jdb*+7(jdwpyWaPK{&qMk9gtH+`AsJ^$m3X+Zau zfiB|wfUZjD1<Xrz*4 z(U%F@z24vU3SgYO`GwGd_PLM}0nN|QkXiMR49XIaFP=)j31gw(A3WU@bkSPVg5!4Zn63Pm7Ksc{iU+VOES>?wkbzpqOrJCbP zH%O(1)TTKXJY1j)@{vle%TN`|>Z(vOweNNz-FDb4-(9-ZYj75dXPGp*- zTM`)bdxEW@@E?QU7~Zr4>GP5*eIu~!ILqcpc@=*%!oq_VO8J1nX^NKK4iMcp3t>IFsb@d-XahloDtGqTwR{DL6Blg@~-XsLt|}_$KP(| zTyum|pfCkCvP*#$tY(G~J81sYk12R`D6l+bxdGTpOT-DVH--^?cKGxsuS@(Y9XRJI``WtG0FSwyrHopVn?iy|SW1q;ff>SNaY4 zKnp*!^{BF^Z81VDaCIK=p0IUw?waduibFUj4%CxL8GA*BWk9oh@IS8Zj(7c-1vVe@ z5S=3PCqPaY7g&PC4a^!{GIsKi{O&EQv^sEh^zRdJ0n5C#CvUGq>D+a<#3>zpAVWEqusj=o(Xp#5K~6%-~0IYsGW^x?RF1nnBokk(Ov=%H;9XTF&LL5QW*8U)-{=LqWE19-lM6#yh--PYZRd1wD)WR+V9l zopf38>nT+i?B#Hk6MXSMk7W-#P9ZiLByo8UKiSPFt=GlU{EQ5i#{w&Trw`=c6w2YJ zzK=(+U0+a68IKxaQn$fL zp!*e|1l0O-k>nhZ8AfDX=l!QML?Ya(!FHl@*TgD}6KCRF8jHwwVyC;)omR%r|!MK_-;peZojjW)feT2 z$yu;KA|8o@K*WgHL%)WiP!{X9izB_e>moe{Rqn}6(cCOIqX_=+ zea8euZgN5{H7D`wa>4TZZfj8i)Tbk`gijiRq-foZ)CxruA9rc1#yPV{fDoL!Ebzzm{w$S zosE2A59t#FLs#qo5A)Jy`@hgEAj)LYus1qw;{fvL_(XJSAl2YcZ=V=$t*#q@Sc*IR z27gB<$S2oSzmeN~mwFswRUzdvq)i?je-`yOiFRtn|r2W9ITbLB0 zJl(StGn1neJ@5~MVGMsH5i$#|;vQ(a7}_h7irKek7*{@`UB8ruHzS@Z+}FY~6)bAx zX=Iz#aSY={_7eW%Xl*--{Tvz8L zUHT}6clZ?X@}eQY^UcFT9;1A_WJ<);p!HYy2#Si-!{J4gL7e%(g?IgIt*abUCS#b_ z5mSPr1NcV8qxXh36%7Z4eSOp4e|k7yaS?U>Y z)xMHw8F3Cj%jNP4H@%x}I~wUr+CiRy>3++vanXZfU@p_n_voXq)-f|93q*+l^1=TB Di-xj= literal 0 HcmV?d00001 From 364c25f26a076c1707e03a7ffe1f07788543c78a Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 11:29:15 +1300 Subject: [PATCH 0064/1725] Update README.md --- apps/tempgraph/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/tempgraph/README.md b/apps/tempgraph/README.md index de4a0af59..919c20267 100644 --- a/apps/tempgraph/README.md +++ b/apps/tempgraph/README.md @@ -21,14 +21,14 @@ * **Show Temp** Shows the current temperature. +### Note +Using the watch in a normal fashion can raise the temperature it's sensing to quite a few degrees above the surrounding temperature and it may take half an hour or so to drop to close to the surrounding temperature. After that it seems to give quite accurate readings, assuming the thermometer I've been comparing it to is itself reasonably accurate. So best to load the app then not touch the watch for half an hour before starting a recording. This is assuming you're not wearing the app and are just using it to record the temperature where you've put the watch. You could of course wear it and it'll still draw a graph, which might also be useful. + ### Screenshots ![](screenshot_1.png) ![](screenshot_2.png) ![](screenshot_3.png) -### Note -Using the watch in a normal fashion can raise the temperature it's sensing to quite a few degrees above the surrounding temperature and it may take half an hour or so to drop to close to the surrounding temperature. After that it seems to give quite accurate readings, assuming the thermometer I've been comparing it to is itself reasonably accurate. So best to load the app then not touch the watch for half an hour before starting a recording. This is assuming you're not wearing the app and are just using it to record the temperature where you've put the watch. You could of course wear it and it'll still draw a graph, which might also be useful. - ### Creator Carl Read ([mail](mailto:cread98@orcon.net.nz), [github](https://github.com/CarlR9)) From 25cf6125fe2ea13c7ab4e39e9c8e7aec6a89e592 Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 19:10:09 +1300 Subject: [PATCH 0066/1725] Delete app.png --- apps/tempgraph/app.png | Bin 6941 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 apps/tempgraph/app.png diff --git a/apps/tempgraph/app.png b/apps/tempgraph/app.png deleted file mode 100644 index 1ae347ac837d8366797f532b8d304dc77802fd02..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6941 zcmZ9RRZtvIv#keba0~7X1PksyFv#G+Eod0rC3t|~4ud-h1b26L4-g3M?j8u?x zJT{>|_-nX!K3m*tw5UTwcLV5{EX(@&#mfN`cHS=i>-zX)%??Q z+B6xZCFe5Y)Rx^la^L6LUm8c$woNwumnB2C@<*(j^jbB`-JjkoHG#lh zoNvTUE*$3B_C-!z@QJQPR9^{H11^YjBJHSNi8=cP(qFjWP`IsgZ#kYc7R#=>bS%dc zsd)?whTOt#k{aD$vW6<7Heli)!9rE|Ajz(F5W%cqAW3VqDB0ks;fMR)N{XnhLsRR% zp>=Ihs-aEej>Ou-jD?!`!;h1ie(b)_1Bvq^-(o~22U5Q0nGI#YaxH&`R=;chgTYqS zaLrmSQR!LvRK74FI_~el?^ek~eDmCO3*(niJ(>-{7Xq5|vco!ix1sETGKRGoQ$xON zsf1Za^Z;UZ9bRw@Z;T!m=97)R-o8z{;JCky;F~}3r!dL-Y=XHLl2lFeHoMl1v-_Y0 zxizvu2P7!bShj65pvlswv30pA$))q;1x@I&UbpD=I{Ne63?-1yu&q5X?WcZr4o`~3 z0Ad}%GOz6$8MeWg8Rv4m=VSio!$%E@=XSpL8MMpSu>-`#A=Ve*PcfoKgG5t5i5KR1 z1)1s|SHF$2{Y<&7nI!x=ciSWGt-UDHvg$KTK~>sGpeeVho-5(fT-zQ0EFfS>%fTbXj0rZ;!s|#GWl~xkMH9xD zZy-$@duK@|{JELz$8n-$&8<7PWu{wAqS;yl1X&YiSXsXJi>lLLG|{j2Qg*%2c&}P) zw|`Cm$HSo5;m*FJ4T$&D0J9)p>roT!eHu)^_YKn&HPI+VHb#4>h!p<8C4o)jrdl4S zeyxZgPxWV%DD-f5ylQbYUH4afoJ`BSb_svzsNa>|y9#rxu!P(8KwlY|7Rca4YZF#k zvSTXb@7M$;8N*1+(K|L&b60yaTP&h8S~(ln7HCL#aA>V${gP33)BSsAqVG)PSkmr4 z!%Su~t1+Bv9p^pKXKe_xe9o%T6Z!+zU(XP&973k8=31 zW4;P|D|Jof0)QcIA;i~aJ1!DbF-WJ9hw{9~2se_}Lgrcb;`*lDt++@bk@irDW#YlU zP#B{W+#;)n`-qevL`;X#Cf5h&i2hL^NM^9qz_mgwB7yjwFs@uHE0c}scuYA-*A_L? z?qUrK3Uc404J{ff?0HcS#PG{;pTV9^1Ic-sqyl^Cd|Ey*9@*NzPJ>0*eq;z*sxtZ? z!LC8%M{G`d1La0mq#xtO+s)2fv3Z(7V<}%BVxrLoYwPsQ8+q$JC8^yELDp*XyzMQT zyt@J)5P&<*2BQJv8C<-)Ts!9;1@x)5FWunJDUDg;91J}Pk=SI>Sl3=kpt|O}?v5_| za}3sAx5fa(9^PAc=f|^hj)D_jkY!E=UM%oo=uK@ zBSrXfN_tdi)vQ+ofco*@sF{x&+Oh{QTBQ4zrYPF4?yvN{cz4ybbkO)#EVZh$Ez6uMiqnEf@IHQxla0Tp&F0#4_VX+ZjWaLc5u{zd)UEX*wY>u3P*xYz@~4@wnCshDuB5h(GL_5i*I@0yo5Y24|zh zhZH4PM5`4_ttK$vP5RgsF-waz+KW4`Q_YXW4^;9E`Ab`o-u3W@Q){BgeHcd`w&1LB z)opw`LZ?{LgIMjUzSoPM6W_08U0(?{MSFFB6rabFkNbfA$h$o`J|Hae=@E96GvAfZ zPt8fJErqv*eaNSPaM5^#ghsZxx_L9Ns1rD}$l}Vg(PxZ8pbk<3n7w5TLQYTtAmnMT zL4qj$5JR|-N?W$VO3|uWtrPd~xhe7>ZJvSXAqIu$r8I3xE%-;pK90mYr+?y$0^icV zfuesYuR+Iiv8jboy@}Qxci%t0%0884q=4z5OX+4@N?#~THc=HS<-33hw)7)9k8ae3==vIuqj=&J!h7^rsREQ)# z!EeR~r#v+L!D*2Qp+R8zqZJ5SE|OG%C&0P_jIenLpyx`(rx5d41}61JO(*4&jL6~1 zxShoLlsp$Afl%q>4^Jj*Lz!G!&q3QNLPU!GKHhx6STTnd3^as6-`>&Sr=1@n=vk06 zye9wtT!sGiBXXiXHC3hnGcWxb#0%ri)E(Te2O1*sQ7Kg^oUl*s(r3|%zFRfcI2CJT z=Ut?bhQcygmoO(;fM)?7ea@(*f>A>W`1%Mrj$GDH5Zh%$uhl(}0sJW)cX-&Vt;Dd) z7Ki8ug<{mYbiz6g!4Qbd1iK9$lGi>%hlrP7*dEYs7<(=yee^C~8Hc@-lyi5CjAc-1 ze#knERo@Gp-XhX-rqH0&C=hymIRT_a-(j03Rk&5_=)HfBaRxoCxgHA0vIA$&veJ_@FZ-fK{NL~@Be|}e}j*i3cLVbvC70l@ssNN zOuvNb8ps7};jY(1pB!V?q1S^2`FmaD#FTY97CpSkbeBR(Udy2myFaC9K$*f>VM8$? z231C3mx+Z9=rpJ5WvI}%a_O!?&hs5Ys@}XlJ*sV_-NPyj#%+wGShBXX4QZybSC&0g zuxhxK({KPuH^hI;PAcH%rnTHp2%ZHs`e-z<+cW0lFo8LidFk{OE+0_8Yw@5fZ#Wul zn-ipHmZ^g0-%D?@;4z{kMGc7MEF0T;$}{!$@G;YhK*Od(AH6*_QwGRfOGYnz5=?q~ z({vDfQQy;o>1FYQ$3ch!R6t({lRFN@{5zgE2!xi@eeW~)%$mn2b^E&JhUKXw8*2GF z7T7{w8tj)LUB(WSJI0)=%PoY7h7|GfjaTo7M$DHY!h}9TpDTe9h%eSMMnoD&6rPtN zrC4FBbQ(ZdHgZHrMW9`+o}Z(aMT+A#STpqyodA=!p^rJKzK_m;1}$P8{VDV-n&fA6 zArJJYps#JfCrl!TV2%J40#oFqvN#h$=0}#e+LyLBpCSSx0X+D?nZK_}P%?qI4 zd~Ep|R!W8UQ=c?Kf)-1VB~)KCxG&bd%TwDdHDf>%bH?N+(Qcof7Y4!@AFl`JpTB8h zB_O4MM3CWtqlTI55x)}sWq1uaFs!ZzTphAEQufl_`Mu!!@vFk42asDOVIBRPd~EZ&U^2xDd>r{M%h12zvY`Fp#WS=ea)SS;bleYT^tre)mQ zwrctgwyu}>)pqH>b2j>urK-n`SZ{vSzK}^D{g}YOi#lX2&^31DGC5?ceI!AWD1bhs zoDv0wctu;gti6QA1bb!=KiVdZLkBJ0KfxuAGXkWbjou`WuNvsQ%h4Qf!{`%^GS`za zTe0aecgQxgE11tw&^kQgjS4D5Ky8M2Sp|?13*wM26mHVpaD;>n1qHd}ATlbqrc;kdMRNwug9CHwgrybg;K#2ZH+01A^-6 z3b85}kY{7+lHZjJ%I;_cN@mX_I8kRiBMiPvlV_|)h*ct`|DCI4BDZ z&_5liUR*#E)cVwD@h8<&j6nUR-BaxPKT33@r=H*w!Fsbxe~UNbp+%PK!H$|a2gh`8inxoO6w1A4klW23_e2@z*d_s!8JCSWcsqRm)QK@lK(XOJj zLTWY2;{Zu!MMS?z1H3L%{e{+&Ge^>$}^6WqCR*4iBQjRPRA(lvox&^dhQ#o)o)pKp2bAC}jZ&ZdqVN45M=gc@_ha z5Vej?ZExjr6U51m-lOj@yf4))-2XFl7=rs?h*a*hLp<}|YIB-(iOh=x^^bZ@olG&hwR6aEN9tY6WoOj$cro2?y_OsN~UF;5x?=sM^!dvDD$8= zcbbz|#;!(O_QzVY9OM$^)+E?!Zzd`E#ANxv{YYWO5lkIgBVmZz)C2QIO)g$XmK0fO zNhTro`PK(ej1jHiStEhrI=N=s)Ps)&6N31j^O zD^3GaALe6ZS%pRwEVZia6n;NiO2?Lmi5J!_nh;cdJ}AzxMyBt<1Uck@#wg_Yk5eNE z>f=Ue446%TaP-9@nne@pG0;-Zr?zDzi%v*!)?s?8ZlI$8-RB?Kbw)Hy4c5#Eq|^bI zoZn};tiwT@opV2Nrkr8GJex)N`w;N@|JSNf;cJxa5i+_ zKsVydW)X}fFIy%vOU)Lk&iA78W@Y5k@_hwqzFV{c-6>G@WIpaAq+>3_g|k-Et1*mg;<$h9OKOxCzY!7N>uAxhjnJ3rkDaM=f;Q`$>f;bC5F`I?w*~q4BI!XKg@qiP|wVyGO+;6Ynh-!_Ubq*M^&{4yeCecEDKH zyw$)_@&AXvuM4&`|AYV6=X|$)xYwS_v8Lm#%z7b*%e7VGeWK90?HPlMn2w#=worMa zXZd-%!O4i-TPsEFabxI1iR}lduB!G4bDQRZ&wKawve5V1-Rh4M86+5LV-slq#Luu; zf<^P#yZP2GSOlfhPpP{&|C3U8dw!bQ5sCJ);>LnzcWV;>MPbgf1Hp?`Ra%_hZd9j_ z=r85#RuzTfpYQ_?ZpOaRaYWg*E2q&t(Z6Sc+cch9PLWgwaQoCw|gc%@l@BQ@C1E8Lr&VQT+oW3cdP6ZJ^nnlO3y=VHKy!U_rCu8l_L zr9W)hMDpB#2*FE2JC8sre%NMA8Zk-1?Z9uIx+ds)|sJk+aE2 z9Xn4~xdSE}s&bXVD9;_t0mJ$FEJi%~aCfCFUAa_E?F4?EfXoT3*Je2xh9gNIgh~^= ze~oti2Izjl!fQrW1rv+|5$X`RM6KnK5jwt-^PPQA#z?fztGgNz!zj115zh_{e!#rA zs4n;Ihfa;BeUt6l3c4^}F!9}N&snzhHAqxMATlVcMB;&D#<(I|jPw$(G!V8br{i!A zyQJFlVp++w+2g_AIe`&ud>Kz1gEtN+(P0)AF7ykw^e75lJa1Mjzmo`4L;I3Z;0`T( zw$ZY}zqWIm%;^Nwhjnn=MXurwACBvVAR85K%1F@^eHo#B`X+Kq!#3FVkf}@JI{o#^ ze&S7U>s{898xI*PBs~%`K;YO?myi+vIJlbi4r{k?+9IjW`(VFjG_7veJuDlGq4c6_ zgoBvNGO!MTe8N`d?Ulm@N!N#v<)mHTQ%!8c-1y+;Q+b4Ux^a(`wMzZ1j6=%HQu*HJ zbJz1Q&sP3>Q_~zeHrf_swTZE7DmWFt+1TqYhm{haDv7=#r;>n+C{M9(b`R;H^}*en zzT=xWsKVXO0tBaXbanX55~|@KrqZAOLJ(Jiz@mIuPaNB`5Kff}$BA2V`PbgH@~>`v zrGG(j-JPdgrtz*3f|Jq^?NaMc!a+J6nqqFBh$CxoQAfSPE3(?tVKLiYy}b=wvDFL^ z{ar&V8Oz+dF5*x%gfcLGRGlx-6xl8&?bgbZswcA%2-hDy)*k_+*S>bA_o zJ}o#YB}M63OC1l08|j~m;mXyCKF<5KItTU91qCza&6Wl=7mMMWrpdhnjRa_z3VLwH z3uRTGge$QMj;^q9X~z8)YhDs%m59}Be$_*Ro>1{%R5o#Y@eFB?z#D=~C!A&KoH zcS|nZS{>t;essR5DlLWm4NG$A%AL2%oO?vygDkTXq4QjX$*K-(;`8QSc^;f8h(I`XRyiE3X)YYdeSj zeL^NkMt>^DdyBV@k(Ao$UKmPaImZW;!}%u1)1@wM%0C_?9i3g{DnOix>5GL|*{g}) zwZzXM>?m;VEx+^NGU5zI(xdr{iBfXA2`z@yE?l|G%pXs=1Op z1n~Nwm)}_o|K|Xm74+Qz01k%#1cFzQq~|{q%^j*Di*|s32IR!YGpYXq03e7$Az&@* z^)rL5v3@S}4mRI|+pTNI0Ldl|UE=G?O!i=D=FkSO+~Oa}f#`@UVVkJ{9JV59gtVZ zKu)R`x^KN{`VoM%!iC)s7;=h49>W_UOpdPkZ+F)9U86+;uL`5_Nh+N+xqhaMd_cP)mQb=HxEs*r#B=GwKQdCYjthwR2G9@(^Bl6{1% V5(kw?=U-<5P+3(-m9%N_e*t{e8WjKl From 2c479ff715a5fdab7df5cdf2fbbec5c5ac2078ff Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 19:11:26 +1300 Subject: [PATCH 0067/1725] Add files via upload --- apps/tempgraph/app.png | Bin 0 -> 6941 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/tempgraph/app.png diff --git a/apps/tempgraph/app.png b/apps/tempgraph/app.png new file mode 100644 index 0000000000000000000000000000000000000000..1ae347ac837d8366797f532b8d304dc77802fd02 GIT binary patch literal 6941 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 V5(kw?=U-<5P+3(-m9%N_e*t{e8WjKl literal 0 HcmV?d00001 From c7209882eed0c65bafb654614bf98a066ca070d5 Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 19:38:06 +1300 Subject: [PATCH 0068/1725] Delete metadata.json --- apps/tempgraph/metadata.json | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 apps/tempgraph/metadata.json diff --git a/apps/tempgraph/metadata.json b/apps/tempgraph/metadata.json deleted file mode 100644 index f714c1eef..000000000 --- a/apps/tempgraph/metadata.json +++ /dev/null @@ -1,18 +0,0 @@ -{ "id": "tempgraph", - "name": "Temperature Graph", - "shortName":"Temp Graph", - "version":"0.01", - "description": "An app for recording the temperature for time periods ranging from 10 minutes to 7 days.", - "icon": "app.png", - "type": "tool", - "tags": "temperature,tempgraph,graph", - "supports" : ["BANGLEJS2"], - "readme": "README.md", - "storage": [ - {"name":"tempgraph.app.js","url":"app.js"} - ], - "data": [ - {"name":"tempgraph.json"} - ], - "screenshots": [{"url":"screenshot_1.png"},{"url":"screenshot_2.png"},{"url":"screenshot_3.png"}] -} From cfde5ea465080948271b1e0e6d58ca968a164a62 Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 19:39:07 +1300 Subject: [PATCH 0069/1725] Add files via upload --- apps/tempgraph/app-icon.js | 1 + apps/tempgraph/metadata.json | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 apps/tempgraph/app-icon.js create mode 100644 apps/tempgraph/metadata.json diff --git a/apps/tempgraph/app-icon.js b/apps/tempgraph/app-icon.js new file mode 100644 index 000000000..50aae4c01 --- /dev/null +++ b/apps/tempgraph/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwxH+goA/AH4AgrHXABFYF0XXkYAK64utGENYFxoABSTxeHXYJglF+UAAIQvEBApfhE4UAF4IDBFwZf/X7hfsR4K/tL96/vRwpf/X/5fJGYK/tL9u02i/tF4KOFL/6/XF4ZftR4K/tL96/vRwpf/X/5fJGYK/tL96/vRwpf/X7gADF8ouBGA4v/F/6/urAmGABFYF7pgIL0owPF0KSC64AIRj4A/AH4ACA=")) \ No newline at end of file diff --git a/apps/tempgraph/metadata.json b/apps/tempgraph/metadata.json new file mode 100644 index 000000000..ea41d67ae --- /dev/null +++ b/apps/tempgraph/metadata.json @@ -0,0 +1,19 @@ +{ "id": "tempgraph", + "name": "Temperature Graph", + "shortName":"Temp Graph", + "version":"0.01", + "description": "An app for recording the temperature for time periods ranging from 10 minutes to 7 days.", + "icon": "app.png", + "type": "tool", + "tags": "temperature,tempgraph,graph", + "supports" : ["BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"tempgraph.app.js","url":"app.js"}, + {"name":"tempgraph.img","url":"app-icon.js","evaluate":true} + ], + "data": [ + {"name":"tempgraph.json"} + ], + "screenshots": [{"url":"screenshot_1.png"},{"url":"screenshot_2.png"},{"url":"screenshot_3.png"}] +} From f050b75e5b4892fbbac23cf836a2c04e0ea6c12d Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 3 Feb 2023 07:45:22 +0100 Subject: [PATCH 0070/1725] widalarmeta: fix #2542 Fix check for active alarm, either remove brackets or add return for filter in map --- apps/widalarmeta/ChangeLog | 1 + apps/widalarmeta/metadata.json | 2 +- apps/widalarmeta/widget.js | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/widalarmeta/ChangeLog b/apps/widalarmeta/ChangeLog index 8bdf1156f..1012ee386 100644 --- a/apps/widalarmeta/ChangeLog +++ b/apps/widalarmeta/ChangeLog @@ -4,3 +4,4 @@ Add option to show seconds 0.03: Fix Bell not appearing on alarms > 24h and redrawing interval Update to match the default alarm widget, and not show itself when an alarm is hidden. +0.04: Fix check for active alarm diff --git a/apps/widalarmeta/metadata.json b/apps/widalarmeta/metadata.json index 89e35c090..aad3c4321 100644 --- a/apps/widalarmeta/metadata.json +++ b/apps/widalarmeta/metadata.json @@ -2,7 +2,7 @@ "id": "widalarmeta", "name": "Alarm & Timer ETA", "shortName": "Alarm ETA", - "version": "0.03", + "version": "0.04", "description": "A widget that displays the time to the next Alarm or Timer in hours and minutes, maximum 24h (configurable).", "icon": "widget.png", "type": "widget", diff --git a/apps/widalarmeta/widget.js b/apps/widalarmeta/widget.js index 8615aa1d2..3ad2e6ad2 100644 --- a/apps/widalarmeta/widget.js +++ b/apps/widalarmeta/widget.js @@ -9,10 +9,10 @@ function draw() { const times = alarms - .map(alarm => { + .map(alarm => alarm.hidden !== true && require("sched").getTimeToAlarm(alarm) - }) + ) .filter(a => a !== undefined); const next = times.length > 0 ? Math.min.apply(null, times) : 0; let calcWidth = 0; From 4a3e5bb5a3086a4e315c0654778b2937b2957c8f Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 19:52:25 +1300 Subject: [PATCH 0071/1725] Delete metadata.json --- apps/tempgraph/metadata.json | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100644 apps/tempgraph/metadata.json diff --git a/apps/tempgraph/metadata.json b/apps/tempgraph/metadata.json deleted file mode 100644 index ea41d67ae..000000000 --- a/apps/tempgraph/metadata.json +++ /dev/null @@ -1,19 +0,0 @@ -{ "id": "tempgraph", - "name": "Temperature Graph", - "shortName":"Temp Graph", - "version":"0.01", - "description": "An app for recording the temperature for time periods ranging from 10 minutes to 7 days.", - "icon": "app.png", - "type": "tool", - "tags": "temperature,tempgraph,graph", - "supports" : ["BANGLEJS2"], - "readme": "README.md", - "storage": [ - {"name":"tempgraph.app.js","url":"app.js"}, - {"name":"tempgraph.img","url":"app-icon.js","evaluate":true} - ], - "data": [ - {"name":"tempgraph.json"} - ], - "screenshots": [{"url":"screenshot_1.png"},{"url":"screenshot_2.png"},{"url":"screenshot_3.png"}] -} From 230baf7b24fa0be212a32e440471b7c14933b639 Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Fri, 3 Feb 2023 19:54:23 +1300 Subject: [PATCH 0072/1725] Add files via upload --- apps/tempgraph/metadata.json | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 apps/tempgraph/metadata.json diff --git a/apps/tempgraph/metadata.json b/apps/tempgraph/metadata.json new file mode 100644 index 000000000..6772429a5 --- /dev/null +++ b/apps/tempgraph/metadata.json @@ -0,0 +1,19 @@ +{ "id": "tempgraph", + "name": "Temperature Graph", + "shortName":"Temp Graph", + "version":"0.01", + "description": "An app for recording the temperature for time periods ranging from 10 minutes to 7 days.", + "icon": "app.png", + "type": "app", + "tags": "temperature,tempgraph,graph", + "supports" : ["BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"tempgraph.app.js","url":"app.js"}, + {"name":"tempgraph.img","url":"app-icon.js","evaluate":true} + ], + "data": [ + {"name":"tempgraph.json"} + ], + "screenshots": [{"url":"screenshot_1.png"},{"url":"screenshot_2.png"},{"url":"screenshot_3.png"}] +} From aa91d43fa9a37e97653355c2880b308d93c4fa38 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 3 Feb 2023 12:49:54 +0100 Subject: [PATCH 0073/1725] qcenter - Cleanup timeout --- apps/qcenter/ChangeLog | 1 + apps/qcenter/app.js | 1 + apps/qcenter/metadata.json | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/qcenter/ChangeLog b/apps/qcenter/ChangeLog index 366b0ff86..436949dc9 100644 --- a/apps/qcenter/ChangeLog +++ b/apps/qcenter/ChangeLog @@ -1,3 +1,4 @@ 0.01: New App! 0.02: Fix fast loading on swipe to clock 0.03: Adds a setting for going back to clock on a timeout +0.04: Fix timeouts closing fast loaded apps \ No newline at end of file diff --git a/apps/qcenter/app.js b/apps/qcenter/app.js index f012fdda8..bd22c87e1 100644 --- a/apps/qcenter/app.js +++ b/apps/qcenter/app.js @@ -111,6 +111,7 @@ let layout = new Layout({ remove: ()=>{ Bangle.removeListener("swipe", onSwipe); Bangle.removeListener("touch", updateTimeout); + if (timeout) clearTimeout(timeout); delete Graphics.prototype.setFont8x12; } }); diff --git a/apps/qcenter/metadata.json b/apps/qcenter/metadata.json index 630fd2bef..cd3e350a4 100644 --- a/apps/qcenter/metadata.json +++ b/apps/qcenter/metadata.json @@ -2,7 +2,7 @@ "id": "qcenter", "name": "Quick Center", "shortName": "QCenter", - "version": "0.03", + "version": "0.04", "description": "An app for quickly launching your favourite apps, inspired by the control centres of other watches.", "icon": "app.png", "tags": "", From 1174faafbf2db3c4397ff4ed3158045109b2f8fe Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 3 Feb 2023 18:03:44 +0100 Subject: [PATCH 0074/1725] sleepphasealarm 0.14 Reduce update interval of current time when seconds are not shown --- apps/sleepphasealarm/ChangeLog | 1 + apps/sleepphasealarm/app.js | 26 ++++++++++++++++++++------ apps/sleepphasealarm/metadata.json | 2 +- 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/apps/sleepphasealarm/ChangeLog b/apps/sleepphasealarm/ChangeLog index 4815e5e75..5a7be5b20 100644 --- a/apps/sleepphasealarm/ChangeLog +++ b/apps/sleepphasealarm/ChangeLog @@ -14,3 +14,4 @@ 0.11: Minor tweaks 0.12: Support javascript command to execute as defined in scheduler 'js' configuration 0.13: Fix dated events alarm on wrong date +0.14: Reduce update interval of current time when seconds are not shown diff --git a/apps/sleepphasealarm/app.js b/apps/sleepphasealarm/app.js index 0aef07760..c74303b76 100644 --- a/apps/sleepphasealarm/app.js +++ b/apps/sleepphasealarm/app.js @@ -14,6 +14,7 @@ const active = alarms.filter(alarm => require("sched").getTimeToAlarm(alarm)); const schedSettings = require("sched").getSettings(); let buzzCount = schedSettings.buzzCount; let logs = []; +let drawTimeTimeout; // Sleep/Wake detection with Estimation of Stationary Sleep-segments (ESS): // Marko Borazio, Eugen Berlin, Nagihan Kücükyildiz, Philipp M. Scholl and Kristof Van Laerhoven, "Towards a Benchmark for Wearable Sleep Analysis with Inertial Wrist-worn Sensing Units", ICHI 2014, Verona, Italy, IEEE Press, 2014. @@ -26,7 +27,7 @@ const nomothresh=0.023; // Original implementation: 6, resolution 11 bit, scale const sleepthresh=600; var ess_values = []; var slsnds = 0; -function calc_ess(acc_magn) { +function calc_ess(acc_magn) {"ram" ess_values.push(acc_magn); if (ess_values.length == winwidth) { @@ -90,10 +91,12 @@ function drawApp() { layout.alarm_date.label = `${LABEL_WAKEUP_TIME}: ${alarmHour}:${alarmMinute}`; layout.render(); - function drawTime() { + function drawTime() {"ram" + const drawSeconds = !Bangle.isLocked(); + if (Bangle.isLCDOn()) { const now = new Date(); - layout.date.label = locale.time(now, BANGLEJS2 && Bangle.isLocked() ? 1 : 0); // hide seconds on bangle 2 + layout.date.label = locale.time(now, !drawSeconds); // hide seconds on bangle 2 const diff = nextAlarmDate - now; const diffHour = Math.floor((diff % 86400000) / 3600000).toString(); const diffMinutes = Math.floor(((diff % 86400000) % 3600000) / 60000).toString(); @@ -101,11 +104,22 @@ function drawApp() { layout.render(); } - setTimeout(()=>{ + const period = drawSeconds ? 1000 : 60000; + if (this.drawTimeTimeout !== undefined) { + clearTimeout(this.drawTimeTimeout); + } + drawTimeTimeout = setTimeout(()=>{ + drawTimeTimeout = undefined; drawTime(); - }, 1000 - (Date.now() % 1000)); + }, period - (Date.now() % period)); } + Bangle.on('lock', function(on) { + if (on === false) { + drawTime(); + } + }); + drawTime(); } @@ -146,7 +160,7 @@ if (nextAlarmDate !== undefined) { layout.render(); Bangle.setOptions({powerSave: false}); // do not dynamically change accelerometer poll interval Bangle.setPollInterval(80); // 12.5Hz - Bangle.on('accel', (accelData) => { + Bangle.on('accel', (accelData) => {"ram" const now = new Date(); const acc = accelData.mag; const swest = calc_ess(acc); diff --git a/apps/sleepphasealarm/metadata.json b/apps/sleepphasealarm/metadata.json index 5382160c0..7e8d2b1a0 100644 --- a/apps/sleepphasealarm/metadata.json +++ b/apps/sleepphasealarm/metadata.json @@ -2,7 +2,7 @@ "id": "sleepphasealarm", "name": "SleepPhaseAlarm", "shortName": "SleepPhaseAlarm", - "version": "0.13", + "version": "0.14", "description": "Uses the accelerometer to estimate sleep and wake states with the principle of Estimation of Stationary Sleep-segments (ESS, see https://ubicomp.eti.uni-siegen.de/home/datasets/ichi14/index.html.en). This app will read the next alarm from the alarm application and will wake you up to 30 minutes early at the best guessed time when you are almost already awake.", "icon": "app.png", "tags": "alarm", From aedac6a4293b8a48c5e06dbd108dbab82895a96c Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Sat, 4 Feb 2023 16:05:00 +1300 Subject: [PATCH 0075/1725] Add files via upload --- apps/tempgraph/ChangeLog | 2 +- apps/tempgraph/app.js | 789 +++++++++++++++++++-------------------- 2 files changed, 395 insertions(+), 396 deletions(-) diff --git a/apps/tempgraph/ChangeLog b/apps/tempgraph/ChangeLog index 58dd75a19..d21f32e9a 100644 --- a/apps/tempgraph/ChangeLog +++ b/apps/tempgraph/ChangeLog @@ -1,2 +1,2 @@ 0.01: 3/Feb/2023 Added 'Temperature Graph' app to depository. - +0.02: 4/Feb/2023 Rewrote the widget handling after discovering there's a 'widget_utils' module to properly hide and show them. diff --git a/apps/tempgraph/app.js b/apps/tempgraph/app.js index a0bb3016b..d88222112 100644 --- a/apps/tempgraph/app.js +++ b/apps/tempgraph/app.js @@ -1,395 +1,394 @@ -// Temperature Graph -// BangleJS Script - -Bangle.setBarometerPower(true,"tempgraph"); -Bangle.loadWidgets(); -var wids=WIDGETS; -var widsOn=true; -var rm=null; -var gt=null; -var dg=null; -var Layout=require("Layout"); -var C=true; -var temp,tempMode,readErrCnt,watchButton2; - -var graph=require("Storage").readJSON("tempgraph.json",true); -if(graph==undefined) { - graph=[]; -} - -var timesData=[ - // dur=duration, u=time units, d=divisions on graph, s=seconds per unit. - {dur:10,u:"Mins",d:5,s:60}, - {dur:20,u:"Mins",d:4,s:60}, - {dur:30,u:"Mins",d:3,s:60}, - {dur:40,u:"Mins",d:4,s:60}, - {dur:1,u:"Hr",d:4,s:3600}, - {dur:2,u:"Hrs",d:4,s:3600}, - {dur:3,u:"Hrs",d:3,s:3600}, - {dur:4,u:"Hrs",d:4,s:3600}, - {dur:6,u:"Hrs",d:6,s:3600}, - {dur:8,u:"Hrs",d:4,s:3600}, - {dur:12,u:"Hrs",d:6,s:3600}, - {dur:16,u:"Hrs",d:4,s:3600}, - {dur:20,u:"Hrs",d:5,s:3600}, - {dur:1,u:"Day",d:4,s:3600}, - {dur:2,u:"Days",d:4,s:86400}, - {dur:3,u:"Days",d:3,s:86400}, - {dur:4,u:"Days",d:4,s:86400}, - {dur:5,u:"Days",d:5,s:86400}, - {dur:6,u:"Days",d:6,s:86400}, - {dur:7,u:"Days",d:7,s:86400} -]; -var times=[]; -for(n=0;n{ - temp=p.temperature; - if(tempMode=="drawGraph"&&graph.length>0&&Math.abs(graph[graph.length-1].temp-temp)>10&&readErrCnt<2){ - // A large change in temperature may be a reading error. ie. A 0C or less reading after - // a 20C reading. So if this happens, the reading is repeated up to 2 times to hopefully - // skip such errors. - readErrCnt++; - print("readErrCnt "+readErrCnt); - return; - } - clearInterval(gt); - readErrCnt=0; - switch (tempMode){ - case "showTemp": - showT(); - break; - case "drawGraph": - var date=new Date(); - var dateStr=require("locale").date(date).trim(); - var hrs=date.getHours(); - var mins=date.getMinutes(); - var secs=date.getSeconds(); - graph.push({ - temp:temp, - date:dateStr, - hrs:hrs, - mins:mins, - secs:secs - }); - if(graph.length==1){ - graph[0].dur=durInd; - } - require("Storage").writeJSON("tempgraph.json", graph); - if(graph.length==150){ - clearInterval(dg); - } - drawG(); - } - }); -} - -function getTemp(){ - readErrCnt=0; - gt = setInterval(getT,800); -} - -function setButton(){ - var watchButton=setWatch(function(){ - clearInterval(gt); - clearInterval(dg); - clearWatch(watchButton); - Bangle.removeListener("touch",screenTouch); - openMenu(); - },BTN); - Bangle.on('touch',screenTouch); -} - -function setButton2(){ - watchButton2=setWatch(function(){ - clearWatch(watchButton2); - openMenu(); - },BTN); -} - -function zPad(n){ - return n.toString().padStart(2,0); -} - -function screenTouch(n,ev){ - if(ev.y>23&&ev.y<152){ - C=C==false; - drawG(false); - } -} - -function drawG(){ - function cf(t){ - if(C){ - return t; - } - return getF(t); - } - drawWids(); - var top=1; - var bar=21; - var barBot=175-22; - if(widsOn){ - top=25; - bar=bar+24; - barBot=barBot-24; - } - var low=graph[0].temp; - var hi=low; - for(n=0;nt){ - low=t; - } - if(hi10){ - div=5; - } - if(C){ - g.setColor(1,0,0); - }else{ - g.setColor(0,0,1); - } - var step=(barBot-bar)/((tempHi-tempLow)/div); - for(n=0;nexit()}, - ],lazy:true - }); - drawWids(); - messageLO.render(); -} - -function showT(){ - tempLO.lab1.label=tempLO.lab3.label; - tempLO.lab2.label=tempLO.lab4.label; - tempLO.lab3.label=tempLO.lab5.label; - tempLO.lab4.label=tempLO.lab6.label; - tempLO.lab5.label=temp.toFixed(2)+"C"; - tempLO.lab6.label=getF(temp).toFixed(2)+"F"; - tempLO.render(); -} - -function exit(){ - clearWatch(watchButton2); - openMenu(); -} - -function showTemp(){ - tempMode="showTemp"; - setButton2(); - tempLO=new Layout({ - type:"v",c:[ - {type:"h",c:[ - {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab1"}, - {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab2"} - ]}, - {type:"h",c:[ - {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab3"}, - {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab4"} - ]}, - {type:"h",c:[ - {type:"txt",pad:5,col:"#f00",font:"6x8:2",label:" ",id:"lab5"}, - {type:"txt",pad:5,col:"#00f",font:"6x8:2",label:" ",id:"lab6"} - ]}, - {type:"h",c:[ - {type:"btn",pad:2,font:"6x8:2",label:"Temp",cb:l=>getTemp()}, - {type:"btn",pad:2,font:"6x8:2",label:"Exit",cb:l=>exit()} - ]} - ] - },{lazy:true}); - tempLO.render(); - getTemp(); -} - -var menu={ - "":{ - "title":" Temp. Graph" - }, - - "Widgets":{ - value:widsOn, - format:vis=>vis?"Hide":"Show", - onchange:vis=>{ - widsOn=vis; - refreshMenu(); - } - }, - - "Duration":{ - value:times.indexOf(duration), - min:0,max:times.length-1,step:1,wrap:true, - format:tim=>times[tim], - onchange:(dur)=>{ - duration=times[dur]; - } - }, - - "Draw Graph":function(){ - E.showMenu(); - drawGraph(); - }, - - "Show Graph" : function(){ - E.showMenu(); - if(graph.length>0){ - showGraph(); - }else{ - message("No graph to\nshow as no\ngraph has been\ndrawn yet."); - } - }, - - "Save Graph" : function(){ - E.showMenu(); - if(graph.length>0){ - saveGraph(); - }else{ - message("No graph to\nsave as no\ngraph has been\ndrawn yet."); - } - }, - - "Save Data" : function(){ - E.showMenu(); - if(graph.length>0){ - saveData(); - }else{ - message("No data to\nsave as no\ngraph has been\ndrawn yet."); - } - }, - - "Show Temp":function(){ - E.showMenu(); - showTemp(); - } -}; - -openMenu(); +// Temperature Graph +// BangleJS Script + +Bangle.setBarometerPower(true,"tempgraph"); +Bangle.loadWidgets(); +var widsOn=true; +var rm=null; +var gt=null; +var dg=null; +var Layout=require("Layout"); +var C=true; +var temp,tempMode,readErrCnt,watchButton2; + +var graph=require("Storage").readJSON("tempgraph.json",true); +if(graph==undefined) { + graph=[]; +} + +var timesData=[ + // dur=duration, u=time units, d=divisions on graph, s=seconds per unit. + {dur:10,u:"Mins",d:5,s:60}, + {dur:20,u:"Mins",d:4,s:60}, + {dur:30,u:"Mins",d:3,s:60}, + {dur:40,u:"Mins",d:4,s:60}, + {dur:1,u:"Hr",d:4,s:3600}, + {dur:2,u:"Hrs",d:4,s:3600}, + {dur:3,u:"Hrs",d:3,s:3600}, + {dur:4,u:"Hrs",d:4,s:3600}, + {dur:6,u:"Hrs",d:6,s:3600}, + {dur:8,u:"Hrs",d:4,s:3600}, + {dur:12,u:"Hrs",d:6,s:3600}, + {dur:16,u:"Hrs",d:4,s:3600}, + {dur:20,u:"Hrs",d:5,s:3600}, + {dur:1,u:"Day",d:4,s:3600}, + {dur:2,u:"Days",d:4,s:86400}, + {dur:3,u:"Days",d:3,s:86400}, + {dur:4,u:"Days",d:4,s:86400}, + {dur:5,u:"Days",d:5,s:86400}, + {dur:6,u:"Days",d:6,s:86400}, + {dur:7,u:"Days",d:7,s:86400} +]; +var times=[]; +for(n=0;n{ + temp=p.temperature; + if(tempMode=="drawGraph"&&graph.length>0&&Math.abs(graph[graph.length-1].temp-temp)>10&&readErrCnt<2){ + // A large change in temperature may be a reading error. ie. A 0C or less reading after + // a 20C reading. So if this happens, the reading is repeated up to 2 times to hopefully + // skip such errors. + readErrCnt++; + print("readErrCnt "+readErrCnt); + return; + } + clearInterval(gt); + readErrCnt=0; + switch (tempMode){ + case "showTemp": + showT(); + break; + case "drawGraph": + var date=new Date(); + var dateStr=require("locale").date(date).trim(); + var hrs=date.getHours(); + var mins=date.getMinutes(); + var secs=date.getSeconds(); + graph.push({ + temp:temp, + date:dateStr, + hrs:hrs, + mins:mins, + secs:secs + }); + if(graph.length==1){ + graph[0].dur=durInd; + } + require("Storage").writeJSON("tempgraph.json", graph); + if(graph.length==150){ + clearInterval(dg); + } + drawG(); + } + }); +} + +function getTemp(){ + readErrCnt=0; + gt = setInterval(getT,800); +} + +function setButton(){ + var watchButton=setWatch(function(){ + clearInterval(gt); + clearInterval(dg); + clearWatch(watchButton); + Bangle.removeListener("touch",screenTouch); + openMenu(); + },BTN); + Bangle.on('touch',screenTouch); +} + +function setButton2(){ + watchButton2=setWatch(function(){ + clearWatch(watchButton2); + openMenu(); + },BTN); +} + +function zPad(n){ + return n.toString().padStart(2,0); +} + +function screenTouch(n,ev){ + if(ev.y>23&&ev.y<152){ + C=C==false; + drawG(false); + } +} + +function drawG(){ + function cf(t){ + if(C){ + return t; + } + return getF(t); + } + drawWids(); + var top=1; + var bar=21; + var barBot=175-22; + if(widsOn){ + top=25; + bar=bar+24; + barBot=barBot-24; + } + var low=graph[0].temp; + var hi=low; + for(n=0;nt){ + low=t; + } + if(hi10){ + div=5; + } + if(C){ + g.setColor(1,0,0); + }else{ + g.setColor(0,0,1); + } + var step=(barBot-bar)/((tempHi-tempLow)/div); + for(n=0;nexit()}, + ],lazy:true + }); + drawWids(); + messageLO.render(); +} + +function showT(){ + tempLO.lab1.label=tempLO.lab3.label; + tempLO.lab2.label=tempLO.lab4.label; + tempLO.lab3.label=tempLO.lab5.label; + tempLO.lab4.label=tempLO.lab6.label; + tempLO.lab5.label=temp.toFixed(2)+"C"; + tempLO.lab6.label=getF(temp).toFixed(2)+"F"; + tempLO.render(); +} + +function exit(){ + clearWatch(watchButton2); + openMenu(); +} + +function showTemp(){ + tempMode="showTemp"; + setButton2(); + tempLO=new Layout({ + type:"v",c:[ + {type:"h",c:[ + {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab1"}, + {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab2"} + ]}, + {type:"h",c:[ + {type:"txt",pad:5,col:"#f77",font:"6x8:2",label:" ",id:"lab3"}, + {type:"txt",pad:5,col:"#77f",font:"6x8:2",label:" ",id:"lab4"} + ]}, + {type:"h",c:[ + {type:"txt",pad:5,col:"#f00",font:"6x8:2",label:" ",id:"lab5"}, + {type:"txt",pad:5,col:"#00f",font:"6x8:2",label:" ",id:"lab6"} + ]}, + {type:"h",c:[ + {type:"btn",pad:2,font:"6x8:2",label:"Temp",cb:l=>getTemp()}, + {type:"btn",pad:2,font:"6x8:2",label:"Exit",cb:l=>exit()} + ]} + ] + },{lazy:true}); + tempLO.render(); + getTemp(); +} + +var menu={ + "":{ + "title":" Temp. Graph" + }, + + "Widgets":{ + value:widsOn, + format:vis=>vis?"Hide":"Show", + onchange:vis=>{ + widsOn=vis; + refreshMenu(); + } + }, + + "Duration":{ + value:times.indexOf(duration), + min:0,max:times.length-1,step:1,wrap:true, + format:tim=>times[tim], + onchange:(dur)=>{ + duration=times[dur]; + } + }, + + "Draw Graph":function(){ + E.showMenu(); + drawGraph(); + }, + + "Show Graph" : function(){ + E.showMenu(); + if(graph.length>0){ + showGraph(); + }else{ + message("No graph to\nshow as no\ngraph has been\ndrawn yet."); + } + }, + + "Save Graph" : function(){ + E.showMenu(); + if(graph.length>0){ + saveGraph(); + }else{ + message("No graph to\nsave as no\ngraph has been\ndrawn yet."); + } + }, + + "Save Data" : function(){ + E.showMenu(); + if(graph.length>0){ + saveData(); + }else{ + message("No data to\nsave as no\ngraph has been\ndrawn yet."); + } + }, + + "Show Temp":function(){ + E.showMenu(); + showTemp(); + } +}; + +openMenu(); From 46c1ffa89311bbbb1aab22c85eec30d0b6be3cd9 Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Sat, 4 Feb 2023 19:05:16 +1300 Subject: [PATCH 0076/1725] Add files via upload --- apps/tempgraph/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/tempgraph/metadata.json b/apps/tempgraph/metadata.json index 6772429a5..ceb6e565f 100644 --- a/apps/tempgraph/metadata.json +++ b/apps/tempgraph/metadata.json @@ -1,7 +1,7 @@ { "id": "tempgraph", "name": "Temperature Graph", "shortName":"Temp Graph", - "version":"0.01", + "version":"0.02", "description": "An app for recording the temperature for time periods ranging from 10 minutes to 7 days.", "icon": "app.png", "type": "app", From 3ada5934776d2058926b62f5c87e836f4c428e6f Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sat, 4 Feb 2023 09:53:05 +0100 Subject: [PATCH 0077/1725] sleepphasealarm: loggin on Bangle 1 Limit logging on Bangle.js 1 to one day due to low memory --- apps/sleepphasealarm/ChangeLog | 1 + apps/sleepphasealarm/README.md | 1 + apps/sleepphasealarm/app.js | 5 +++-- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/sleepphasealarm/ChangeLog b/apps/sleepphasealarm/ChangeLog index 5a7be5b20..1d4331042 100644 --- a/apps/sleepphasealarm/ChangeLog +++ b/apps/sleepphasealarm/ChangeLog @@ -15,3 +15,4 @@ 0.12: Support javascript command to execute as defined in scheduler 'js' configuration 0.13: Fix dated events alarm on wrong date 0.14: Reduce update interval of current time when seconds are not shown + Limit logging on Bangle.js 1 to one day due to low memory diff --git a/apps/sleepphasealarm/README.md b/apps/sleepphasealarm/README.md index 574e84e1e..bbf1d84ab 100644 --- a/apps/sleepphasealarm/README.md +++ b/apps/sleepphasealarm/README.md @@ -23,6 +23,7 @@ Replacing the watch strap with a more comfortable one (e.g. made of nylon) is re ## Logging For each day of month (1..31) the ESS states are logged. An entry will be overwritten in the next month, e.g. an entry on the 4th May will overwrite an entry on the 4th April. +On Bangle.js 1 only one day is logged due to low memory. The logs can be viewed with the download button: ![](screenshot.jpg) diff --git a/apps/sleepphasealarm/app.js b/apps/sleepphasealarm/app.js index c74303b76..25ca7e781 100644 --- a/apps/sleepphasealarm/app.js +++ b/apps/sleepphasealarm/app.js @@ -146,8 +146,9 @@ function addLog(time, type) { var minAlarm = new Date(); var measure = true; if (nextAlarmDate !== undefined) { - config.logs[nextAlarmDate.getDate()] = []; // overwrite log on each day of month - logs = config.logs[nextAlarmDate.getDate()]; + const logday = BANGLEJS2 ? nextAlarmDate.getDate() : 0; + config.logs[logday] = []; // overwrite log on each day of month + logs = config.logs[logday]; g.clear(); Bangle.loadWidgets(); Bangle.drawWidgets(); From de20a40100ecd75c94f557b7df91cc6fc0007a17 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sat, 4 Feb 2023 22:36:16 +0100 Subject: [PATCH 0078/1725] check for existing swipe handlers --- apps/backswipe/ChangeLog | 1 + apps/backswipe/boot.js | 4 ++-- apps/backswipe/metadata.json | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/backswipe/ChangeLog b/apps/backswipe/ChangeLog index 5560f00bc..1e5479d6e 100644 --- a/apps/backswipe/ChangeLog +++ b/apps/backswipe/ChangeLog @@ -1 +1,2 @@ 0.01: New App! +0.02: Don't fire if the app uses swipes already. diff --git a/apps/backswipe/boot.js b/apps/backswipe/boot.js index 523149e8c..31b277620 100644 --- a/apps/backswipe/boot.js +++ b/apps/backswipe/boot.js @@ -15,8 +15,8 @@ var currentFile = global.__FILE__ || ""; - if(global.BACK) delete global.BACK; - if (options && options.back && enabledForApp(currentFile)) { + if (global.BACK) delete global.BACK; + if (options && options.back && enabledForApp(currentFile) && (Bangle["#onswipe"] instanceof Array)&&Bangle["#onswipe"].length>1 ) { global.BACK = options.back; } setUI(mode, cb); diff --git a/apps/backswipe/metadata.json b/apps/backswipe/metadata.json index 7aa9f6247..0274ec8d7 100644 --- a/apps/backswipe/metadata.json +++ b/apps/backswipe/metadata.json @@ -1,7 +1,7 @@ { "id": "backswipe", "name": "Back Swipe", "shortName":"BackSwipe", - "version":"0.01", + "version":"0.02", "description": "Service that allows you to use an app's back button using left to right swipe gesture", "icon": "app.png", "tags": "back,gesture,swipe", From 12c75117820f164d9670e1afff3b162ce1e50e02 Mon Sep 17 00:00:00 2001 From: CarlR9 <108166078+CarlR9@users.noreply.github.com> Date: Sun, 5 Feb 2023 16:07:35 +1300 Subject: [PATCH 0079/1725] Add files via upload --- apps/tempgraph/ChangeLog | 1 + apps/tempgraph/app.js | 2 +- apps/tempgraph/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/tempgraph/ChangeLog b/apps/tempgraph/ChangeLog index d21f32e9a..74f2d7255 100644 --- a/apps/tempgraph/ChangeLog +++ b/apps/tempgraph/ChangeLog @@ -1,2 +1,3 @@ 0.01: 3/Feb/2023 Added 'Temperature Graph' app to depository. 0.02: 4/Feb/2023 Rewrote the widget handling after discovering there's a 'widget_utils' module to properly hide and show them. +0.03: 4/Feb/2023 Fixed number error in timesData array. diff --git a/apps/tempgraph/app.js b/apps/tempgraph/app.js index d88222112..b8dd231ae 100644 --- a/apps/tempgraph/app.js +++ b/apps/tempgraph/app.js @@ -31,7 +31,7 @@ var timesData=[ {dur:12,u:"Hrs",d:6,s:3600}, {dur:16,u:"Hrs",d:4,s:3600}, {dur:20,u:"Hrs",d:5,s:3600}, - {dur:1,u:"Day",d:4,s:3600}, + {dur:1,u:"Day",d:4,s:86400}, {dur:2,u:"Days",d:4,s:86400}, {dur:3,u:"Days",d:3,s:86400}, {dur:4,u:"Days",d:4,s:86400}, diff --git a/apps/tempgraph/metadata.json b/apps/tempgraph/metadata.json index ceb6e565f..63d4feddd 100644 --- a/apps/tempgraph/metadata.json +++ b/apps/tempgraph/metadata.json @@ -1,7 +1,7 @@ { "id": "tempgraph", "name": "Temperature Graph", "shortName":"Temp Graph", - "version":"0.02", + "version":"0.03", "description": "An app for recording the temperature for time periods ranging from 10 minutes to 7 days.", "icon": "app.png", "type": "app", From b0b1eefb01ba600e8bda0e3848498e7dd932bfcf Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sun, 5 Feb 2023 11:38:22 +0100 Subject: [PATCH 0080/1725] sleepphasealarm Add plot logged data to settings --- apps/sleepphasealarm/ChangeLog | 1 + apps/sleepphasealarm/settings.js | 117 +++++++++++++++++++++++++------ 2 files changed, 98 insertions(+), 20 deletions(-) diff --git a/apps/sleepphasealarm/ChangeLog b/apps/sleepphasealarm/ChangeLog index 1d4331042..4b119b571 100644 --- a/apps/sleepphasealarm/ChangeLog +++ b/apps/sleepphasealarm/ChangeLog @@ -16,3 +16,4 @@ 0.13: Fix dated events alarm on wrong date 0.14: Reduce update interval of current time when seconds are not shown Limit logging on Bangle.js 1 to one day due to low memory + Add plot logged data to settings diff --git a/apps/sleepphasealarm/settings.js b/apps/sleepphasealarm/settings.js index a79abb598..b6fbdf60b 100644 --- a/apps/sleepphasealarm/settings.js +++ b/apps/sleepphasealarm/settings.js @@ -13,25 +13,102 @@ require('Storage').writeJSON(CONFIGFILE, config); } - // Show the menu - E.showMenu({ - "" : { "title" : "SleepPhaseAlarm" }, - 'Keep alarm enabled': { - value: !!config.settings.disableAlarm, - format: v => v?"No":"Yes", - onchange: v => { - config.settings.disableAlarm = v; - writeSettings(); + function draw(log) { + const step = 10*60*1000; // resolution 10min + const yTicks = ["sleep", "awake", "alarm"]; + const starttime = new Date(log[0].time); + const endtime = new Date(log[log.length-1].time); + + let logidx = 0; + let curtime = starttime; + const data = new Uint8Array(Math.ceil((endtime-curtime)/step) + 1); + let curval; + let logtime; + let i=0; + while(curtime < endtime) { + if (logtime === undefined || curtime > logtime) { + curval = yTicks.indexOf(log[logidx].type); + logidx++; + logtime = new Date(log[logidx].time); } - }, "< Back" : () => back(), - 'Run before alarm': { - format: v => v === 0 ? 'disabled' : v+'h', - value: config.settings.startBeforeAlarm, - min: 0, max: 23, - onchange: v => { - config.settings.startBeforeAlarm = v; - writeSettings(); - } - }, - }); + + data[i++] = curval; + curtime = new Date(curtime + step); + } + data[i] = 1; // always end with awake + + Bangle.setUI({ + mode: "custom", + back: () => selectday(), + }); + g.reset().setFont("6x8",1); + + require("graph").drawLine(g, data, { + axes: true, + x: 4, + y: Bangle.appRect.y+8, + height: Bangle.appRect.h-20, + gridx: 1, + gridy: 1, + miny: -1, + maxy: 2, + title: /*LANG*/"Wakeup " + require("locale").date(endtime, 1), + ylabel: y => y >= 0 && y <= 1 ? yTicks[y] : "", + xlabel: x => { + if (x === Math.round(data.length/10)) { + return require("locale").time(starttime, 1); + } else if (x === (data.length-2)-Math.round(data.length/10)) { + return require("locale").time(endtime, 1); + } + return ""; + }, + }); + } + + function selectday() { + E.showMessage(/*LANG*/"Loading..."); + + const logs = config.logs.filter(log => log != null && log.filter(entry => entry.type === "alarm").length > 0); + logs.sort(function(a, b) { // sort by alarm date desc + const adate = new Date(a.filter(entry => entry.type === "alarm")[0].time); + const bdate = new Date(b.filter(entry => entry.type === "alarm")[0].time); + return bdate - adate; + }); + + const menu = {}; + menu[""] = { title: /*LANG*/"Select day" }; + menu["< Back"] = () => settingsmenu(); + logs.forEach((log, i) => { + const date = new Date(log.filter(entry => entry.type === "alarm")[0].time); + menu[require("locale").date(date, 1)] = () => { E.showMenu(); draw(log); }; + }); + E.showMenu(menu); + } + + function settingsmenu() { + // Show the menu + E.showMenu({ + "" : { "title" : "SleepPhaseAlarm" }, + 'Keep alarm enabled': { + value: !!config.settings.disableAlarm, + format: v => v?"No":"Yes", + onchange: v => { + config.settings.disableAlarm = v; + writeSettings(); + } + }, "< Back" : () => back(), + 'Run before alarm': { + format: v => v === 0 ? 'disabled' : v+'h', + value: config.settings.startBeforeAlarm, + min: 0, max: 23, + onchange: v => { + config.settings.startBeforeAlarm = v; + writeSettings(); + } + }, + /*LANG*/'Select day': () => selectday(), + }); + } + + settingsmenu(); }) From 853c99e8891c0ad1ca93f4d963ecf04dbc246489 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 5 Feb 2023 14:25:37 +0100 Subject: [PATCH 0081/1725] check for NOT more than one swipe handler --- apps/backswipe/boot.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/backswipe/boot.js b/apps/backswipe/boot.js index 31b277620..12910fbb5 100644 --- a/apps/backswipe/boot.js +++ b/apps/backswipe/boot.js @@ -16,7 +16,7 @@ var currentFile = global.__FILE__ || ""; if (global.BACK) delete global.BACK; - if (options && options.back && enabledForApp(currentFile) && (Bangle["#onswipe"] instanceof Array)&&Bangle["#onswipe"].length>1 ) { + if (options && options.back && enabledForApp(currentFile) && !((Bangle["#onswipe"] instanceof Array)&&Bangle["#onswipe"].length>1 )) { global.BACK = options.back; } setUI(mode, cb); From 0c29640dfdc96e1e2fd3c20e8a0c3399825c1621 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 5 Feb 2023 14:43:43 +0100 Subject: [PATCH 0082/1725] ud is not used --- apps/backswipe/boot.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/backswipe/boot.js b/apps/backswipe/boot.js index 12910fbb5..1369c1949 100644 --- a/apps/backswipe/boot.js +++ b/apps/backswipe/boot.js @@ -22,7 +22,7 @@ setUI(mode, cb); }; - function goBack(lr, ud) { + function goBack(lr, _) { // if it is a left to right swipe if (lr === 1) { // if we're in an app that has a back button, run the callback for it From 6653ffa76259f869c53eb3e3e616b5e700420b9d Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 5 Feb 2023 10:32:33 +0100 Subject: [PATCH 0083/1725] powermanager - Allow recording timeouts and power changes for later analysis --- apps/powermanager/boot.js | 86 +++++++++- apps/powermanager/default.json | 3 +- apps/powermanager/interface.html | 273 +++++++++++++++++++++++++++++++ apps/powermanager/metadata.json | 1 + apps/powermanager/settings.js | 6 + 5 files changed, 364 insertions(+), 5 deletions(-) create mode 100644 apps/powermanager/interface.html diff --git a/apps/powermanager/boot.js b/apps/powermanager/boot.js index 2bc2aaa35..801c1f48a 100644 --- a/apps/powermanager/boot.js +++ b/apps/powermanager/boot.js @@ -3,11 +3,89 @@ require('Storage').readJSON("powermanager.default.json", true) || {}, require('Storage').readJSON("powermanager.json", true) || {} ); - + + if (settings.log) { + let logFile = require('Storage').open("powermanager.log","a"); + let def = require('Storage').readJSON("powermanager.def.json", true) || {}; + if (!def.start) def.start = Date.now(); + if (!def.deferred) def.deferred = {}; + let sen = require('Storage').readJSON("powermanager.sen.json", true) || {}; + if (!sen.start) sen.start = Date.now(); + if (!sen.power) sen.power = {}; + + E.on("kill", ()=>{ + let defExists = require("Storage").read("powermanager.def.json")!==undefined; + if (!(!defExists && def.saved)){ + def.saved = Date.now(); + require('Storage').writeJSON("powermanager.def.json", def); + } + let senExists = require("Storage").read("powermanager.sen.json")!==undefined; + if (!(!senExists && sen.saved)){ + sen.saved = Date.now(); + require('Storage').writeJSON("powermanager.sen.json", sen); + } + }); + + + let logPower = (type, oldstate, state, app) => { + logFile.write("p," + type + ',' + (oldstate?1:0) + ',' + (state?1:0) + ',' + app + "\n"); + }; + let logDeferred = (type, duration, source) => { + logFile.write(type + ',' + duration + ',' + source + "\n"); + }; + + let lastPowerOn = {}; + + const TO_WRAP = ["GPS","Compass","Barometer","HRM","LCD"]; + for (let c of TO_WRAP){ + let functionName = "set" + c + "Power"; + let checkName = "is" + c + "On"; + let type = c + ""; + if (!sen.power[type]) sen.power[type] = 0; + + lastPowerOn[type] = Date.now(); + + Bangle[functionName] = ((o) => (a,b) => { + let oldstate = Bangle[checkName](); + let result = o(a,b); + if (!(oldstate && result)) { + if (result) { + //switched on, store time + lastPowerOn[type] = Date.now(); + } else { + //switched off + sen.power[type] += Date.now() - lastPowerOn[type]; + } + } + if (settings.logDetails) logPower(type, oldstate, result, b); + return result; + })(Bangle[functionName]); + } + + let functions = {}; + + let wrapDeferred = ((o,t) => (a,b,c,d) => { + let wrapped = (q,w,e,r)=>{ + let start = Date.now(); + let result = a(q,w,e,r); + let end = Date.now()-start; + let f = a.toString().substring(0,100); + if (settings.logDetails) logDeferred(t, end, f); + if (!def.deferred[f]) def.deferred[f] = 0; + def.deferred[f] += end; + return result; + }; + return o(wrapped,b,c,d); + }); + + global.setTimeout = wrapDeferred(global.setTimeout, "t"); + global.setInterval = wrapDeferred(global.setInterval, "i"); + } + if (settings.warnEnabled){ var chargingInterval; - function handleCharging(charging){ + let handleCharging = (charging) => { if (charging){ if (chargingInterval) clearInterval(chargingInterval); chargingInterval = setInterval(()=>{ @@ -20,12 +98,12 @@ clearInterval(chargingInterval); chargingInterval = undefined; } - } + }; Bangle.on("charging",handleCharging); handleCharging(Bangle.isCharging()); } - + if (settings.forceMonoPercentage){ var p = (E.getBattery()+E.getBattery()+E.getBattery()+E.getBattery())/4; var op = E.getBattery; diff --git a/apps/powermanager/default.json b/apps/powermanager/default.json index 6c929dc38..457f79610 100644 --- a/apps/powermanager/default.json +++ b/apps/powermanager/default.json @@ -2,5 +2,6 @@ "warnEnabled": false, "warn": 96, "forceMonoVoltage": false, - "forceMonoPercentage": false + "forceMonoPercentage": false, + "log": false } diff --git a/apps/powermanager/interface.html b/apps/powermanager/interface.html new file mode 100644 index 000000000..9434ac16f --- /dev/null +++ b/apps/powermanager/interface.html @@ -0,0 +1,273 @@ + + + + + +
+ + + + + diff --git a/apps/powermanager/metadata.json b/apps/powermanager/metadata.json index 456831aa9..3bfa47d88 100644 --- a/apps/powermanager/metadata.json +++ b/apps/powermanager/metadata.json @@ -9,6 +9,7 @@ "tags": "tool", "supports": ["BANGLEJS2"], "readme": "README.md", + "interface": "interface.html", "storage": [ {"name":"powermanager.boot.js","url":"boot.js"}, {"name":"powermanager.settings.js","url":"settings.js"}, diff --git a/apps/powermanager/settings.js b/apps/powermanager/settings.js index fe4719275..9df8b3534 100644 --- a/apps/powermanager/settings.js +++ b/apps/powermanager/settings.js @@ -36,6 +36,12 @@ writeSettings("forceMonoVoltage", v); } }, + 'Log': { + value: !!settings.log, + onchange: v => { + writeSettings("log", v); + } + }, 'Charge warning': function() { E.showMenu(submenu_chargewarn); }, From 4a3e3dd8257c2dd6c364ec3217505eb7ca94b9fc Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 5 Feb 2023 21:06:32 +0100 Subject: [PATCH 0084/1725] powermanager - Add data files to metadata --- apps/powermanager/metadata.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/powermanager/metadata.json b/apps/powermanager/metadata.json index 3bfa47d88..834f5f0af 100644 --- a/apps/powermanager/metadata.json +++ b/apps/powermanager/metadata.json @@ -15,5 +15,10 @@ {"name":"powermanager.settings.js","url":"settings.js"}, {"name":"powermanager","url":"lib.js"}, {"name":"powermanager.default.json","url":"default.json"} + ], + "data": [ + {"name":"powermanager.sen.json"}, + {"name":"powermanager.def.json"}, + {"name":"powermanager.log"} ] } From 72be2a72dbc3d11003a528daf8ca2b7839a1a45f Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 5 Feb 2023 21:07:50 +0100 Subject: [PATCH 0085/1725] powermanager - Bump version --- apps/powermanager/ChangeLog | 1 + apps/powermanager/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/powermanager/ChangeLog b/apps/powermanager/ChangeLog index 06f38d399..00784aa5d 100644 --- a/apps/powermanager/ChangeLog +++ b/apps/powermanager/ChangeLog @@ -4,3 +4,4 @@ 0.04: Remove calibration with current voltage (Calibrate->Auto) as it is now handled by settings app Allow automatic calibration on every charge longer than 3 hours 0.05: Add back button to settings menu. +0.06: Allow logging of some things using power \ No newline at end of file diff --git a/apps/powermanager/metadata.json b/apps/powermanager/metadata.json index 834f5f0af..509dff040 100644 --- a/apps/powermanager/metadata.json +++ b/apps/powermanager/metadata.json @@ -2,7 +2,7 @@ "id": "powermanager", "name": "Power Manager", "shortName": "Power Manager", - "version": "0.05", + "version": "0.06", "description": "Allow configuration of warnings and thresholds for battery charging and display.", "icon": "app.png", "type": "bootloader", From ab445bcbbd696591234d74509705dcdc474be3c8 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 5 Feb 2023 21:44:28 +0100 Subject: [PATCH 0086/1725] powermanager - Add detail setting --- apps/powermanager/settings.js | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/apps/powermanager/settings.js b/apps/powermanager/settings.js index 9df8b3534..41f5aa471 100644 --- a/apps/powermanager/settings.js +++ b/apps/powermanager/settings.js @@ -36,17 +36,23 @@ writeSettings("forceMonoVoltage", v); } }, - 'Log': { - value: !!settings.log, - onchange: v => { - writeSettings("log", v); - } - }, 'Charge warning': function() { E.showMenu(submenu_chargewarn); }, 'Calibrate': function() { E.showMenu(submenu_calibrate); + }, + 'Logging': { + value: !!settings.log, + onchange: v => { + writeSettings("log", v); + } + }, + 'Detail logging': { + value: !!settings.logDetails, + onchange: v => { + writeSettings("logDetails", v); + } } }; From f4f07806a66cbd48d65857786de9944967f18161 Mon Sep 17 00:00:00 2001 From: Sam Sorensen <825813+sabrsorensen@users.noreply.github.com> Date: Sun, 5 Feb 2023 19:14:35 -0700 Subject: [PATCH 0087/1725] Added mtnclock support for reading weather.json This allows the use of owmweather or weather to provide weather updates to mtnclock. --- apps/mtnclock/app.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/apps/mtnclock/app.js b/apps/mtnclock/app.js index 28ba25882..dedf60cfd 100644 --- a/apps/mtnclock/app.js +++ b/apps/mtnclock/app.js @@ -323,6 +323,11 @@ function setWeather() { draw(a); } +function readWeather() { + data = require("Storage").readJSON('weather.json').weather; + require("Storage").write('mtnclock.json', data); +} + const _GB = global.GB; global.GB = (event) => { if (event.t==="weather") { @@ -340,6 +345,7 @@ function queueDraw() { if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { drawTimeout = undefined; + readWeather(); setWeather(); queueDraw(); }, 60000 - (Date.now() % 60000)); From 5c3b742a4275361656b734cda6037e2d68a4be25 Mon Sep 17 00:00:00 2001 From: Sam Sorensen <825813+sabrsorensen@users.noreply.github.com> Date: Sun, 5 Feb 2023 20:18:37 -0700 Subject: [PATCH 0088/1725] Prevent exceptions if weather.json doesn't exist. --- apps/mtnclock/app.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/apps/mtnclock/app.js b/apps/mtnclock/app.js index dedf60cfd..82d06e03b 100644 --- a/apps/mtnclock/app.js +++ b/apps/mtnclock/app.js @@ -324,8 +324,13 @@ function setWeather() { } function readWeather() { - data = require("Storage").readJSON('weather.json').weather; - require("Storage").write('mtnclock.json', data); + var weatherData = require("Storage").readJSON('weather.json', true); + if (weatherData !== undefined) { + if (weatherData.weather.time > data.time) { + data = weatherData.weather; + require("Storage").write('mtnclock.json', data); + } + } } const _GB = global.GB; From 3371f86bb5b8335d4d312ce7ca1d8ce967fc818b Mon Sep 17 00:00:00 2001 From: Sam Sorensen <825813+sabrsorensen@users.noreply.github.com> Date: Sun, 5 Feb 2023 21:39:43 -0700 Subject: [PATCH 0089/1725] Save minimal weather data and limit weather update frequency --- apps/mtnclock/app.js | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/apps/mtnclock/app.js b/apps/mtnclock/app.js index 82d06e03b..996fe2cee 100644 --- a/apps/mtnclock/app.js +++ b/apps/mtnclock/app.js @@ -324,19 +324,26 @@ function setWeather() { } function readWeather() { - var weatherData = require("Storage").readJSON('weather.json', true); - if (weatherData !== undefined) { - if (weatherData.weather.time > data.time) { - data = weatherData.weather; - require("Storage").write('mtnclock.json', data); - } + var weatherJson = require("Storage").readJSON('weather.json', 1); + // save updated weather data if available and it has been an hour since last updated + if (weatherJson !== undefined && (data.time === undefined || (data.time + 3600000) < weatherJson.weather.time)) { + data = { + time: weatherJson.weather.time, + temp: weatherJson.weather.temp, + code: weatherJson.weather.code + }; + require("Storage").writeJSON('mtnclock.json', data); } } const _GB = global.GB; global.GB = (event) => { if (event.t==="weather") { - data = event; + data = { + temp: event.temp, + code: event.code, + time: Date.now() + }; require("Storage").write('mtnclock.json', event); setWeather(); } @@ -357,5 +364,6 @@ function queueDraw() { } queueDraw(); +readWeather(); setWeather(); Bangle.setUI("clock"); From 653756c9172976d10a8098e780db694c1a231f49 Mon Sep 17 00:00:00 2001 From: Sam Sorensen <825813+sabrsorensen@users.noreply.github.com> Date: Sun, 5 Feb 2023 21:48:53 -0700 Subject: [PATCH 0090/1725] Updated version and README --- apps/mtnclock/README.md | 2 +- apps/mtnclock/metadata.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/mtnclock/README.md b/apps/mtnclock/README.md index 58538509d..066230d4e 100644 --- a/apps/mtnclock/README.md +++ b/apps/mtnclock/README.md @@ -4,7 +4,7 @@ Based on the Pebble watchface Weather Land. Mountain Pass Clock changes depending on time (day/night) and weather conditions. -This clock requires Gadgetbridge and an app that Gadgetbridge can use to get the current weather from OpenWeatherMap (e.g. Weather Notification). To set up Gadgetbridge and weather, see https://codeberg.org/Freeyourgadget/Gadgetbridge/wiki/Weather. +This clock requires Gadgetbridge and an app that Gadgetbridge can use to get the current weather from OpenWeatherMap (e.g. Weather Notification), or a Bangle app that will update weather.kson such as OWM Weather. To set up Gadgetbridge and weather, see https://codeberg.org/Freeyourgadget/Gadgetbridge/wiki/Weather. The scene will change according to the following OpenWeatherMap conditions: clear, cloudy, overcast, lightning, drizzle, rain, fog and snow. Each weather condition has night/day scenes. diff --git a/apps/mtnclock/metadata.json b/apps/mtnclock/metadata.json index a3a173069..82a0cccab 100644 --- a/apps/mtnclock/metadata.json +++ b/apps/mtnclock/metadata.json @@ -2,7 +2,7 @@ "id": "mtnclock", "name": "Mountain Pass Clock", "shortName": "Mtn Clock", - "version": "0.01", + "version": "0.02", "description": "A clock that changes scenery based on time and weather.", "readme":"README.md", "icon": "app.png", From 959e376f099fce0dedca47b43ff97c970c2f5637 Mon Sep 17 00:00:00 2001 From: Sam Sorensen <825813+sabrsorensen@users.noreply.github.com> Date: Sun, 5 Feb 2023 21:57:52 -0700 Subject: [PATCH 0091/1725] Fixed typo --- apps/mtnclock/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/mtnclock/README.md b/apps/mtnclock/README.md index 066230d4e..441754b83 100644 --- a/apps/mtnclock/README.md +++ b/apps/mtnclock/README.md @@ -4,7 +4,7 @@ Based on the Pebble watchface Weather Land. Mountain Pass Clock changes depending on time (day/night) and weather conditions. -This clock requires Gadgetbridge and an app that Gadgetbridge can use to get the current weather from OpenWeatherMap (e.g. Weather Notification), or a Bangle app that will update weather.kson such as OWM Weather. To set up Gadgetbridge and weather, see https://codeberg.org/Freeyourgadget/Gadgetbridge/wiki/Weather. +This clock requires Gadgetbridge and an app that Gadgetbridge can use to get the current weather from OpenWeatherMap (e.g. Weather Notification), or a Bangle app that will update weather.json such as OWM Weather. To set up Gadgetbridge and weather, see https://codeberg.org/Freeyourgadget/Gadgetbridge/wiki/Weather. The scene will change according to the following OpenWeatherMap conditions: clear, cloudy, overcast, lightning, drizzle, rain, fog and snow. Each weather condition has night/day scenes. From b2b299efc35e80ef23e07e22df62ed3e6abc38ee Mon Sep 17 00:00:00 2001 From: Sam Sorensen <825813+sabrsorensen@users.noreply.github.com> Date: Sun, 5 Feb 2023 21:59:29 -0700 Subject: [PATCH 0092/1725] Updated minimal weather data save from GB --- apps/mtnclock/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/mtnclock/app.js b/apps/mtnclock/app.js index 996fe2cee..c6adc7706 100644 --- a/apps/mtnclock/app.js +++ b/apps/mtnclock/app.js @@ -344,7 +344,7 @@ global.GB = (event) => { code: event.code, time: Date.now() }; - require("Storage").write('mtnclock.json', event); + require("Storage").writeJSON('mtnclock.json', data); setWeather(); } if (_GB) setTimeout(_GB, 0, event); From d426ca3656591417fa82b07c6229d53c9770d843 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 6 Feb 2023 11:20:36 +0000 Subject: [PATCH 0093/1725] assistedgps 0.05: Fix regression in 0.04 that caused AGPS data not to get loaded --- apps/assistedgps/ChangeLog | 1 + apps/assistedgps/custom.html | 2 +- apps/assistedgps/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/assistedgps/ChangeLog b/apps/assistedgps/ChangeLog index ff2de6f67..92f04dc6d 100644 --- a/apps/assistedgps/ChangeLog +++ b/apps/assistedgps/ChangeLog @@ -2,3 +2,4 @@ 0.02: Update to work with Bangle.js 2 0.03: Select GNSS systems to use for Bangle.js 2 0.04: Now turns GPS off after upload +0.05: Fix regression in 0.04 that caused AGPS data not to get loaded diff --git a/apps/assistedgps/custom.html b/apps/assistedgps/custom.html index 75a4ecf32..716865983 100644 --- a/apps/assistedgps/custom.html +++ b/apps/assistedgps/custom.html @@ -158,7 +158,7 @@ var chunk = bin.substr(i,chunkSize); js += `\x10Serial1.write(atob("${btoa(chunk)}"))\n`; } - js = "\x10setTimeout(() => Bangle.setGPSPower(0,'agps'), 1000);\n"; // turn GPS off after a delay + js += "\x10setTimeout(() => Bangle.setGPSPower(0,'agps'), 1000);\n"; // turn GPS off after a delay return js; } diff --git a/apps/assistedgps/metadata.json b/apps/assistedgps/metadata.json index ac9fe5725..d2e7334c4 100644 --- a/apps/assistedgps/metadata.json +++ b/apps/assistedgps/metadata.json @@ -1,7 +1,7 @@ { "id": "assistedgps", "name": "Assisted GPS Updater (AGPS)", - "version": "0.04", + "version": "0.05", "description": "Downloads assisted GPS (AGPS) data to Bangle.js for faster GPS startup and more accurate fixes. **No app will be installed**, this just uploads new data to the GPS chip.", "sortorder": -1, "icon": "app.png", From aa7fdc3966c5ead721f0002746215cf6806524ae Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Mon, 6 Feb 2023 19:19:38 +0100 Subject: [PATCH 0094/1725] sleepphasealarm Added screenshot_log.png --- apps/sleepphasealarm/README.md | 8 ++++++-- .../{screenshot.jpg => interface.jpg} | Bin apps/sleepphasealarm/metadata.json | 3 ++- apps/sleepphasealarm/screenshot.png | Bin 0 -> 3404 bytes apps/sleepphasealarm/screenshot_log.png | Bin 0 -> 3179 bytes 5 files changed, 8 insertions(+), 3 deletions(-) rename apps/sleepphasealarm/{screenshot.jpg => interface.jpg} (100%) create mode 100644 apps/sleepphasealarm/screenshot.png create mode 100644 apps/sleepphasealarm/screenshot_log.png diff --git a/apps/sleepphasealarm/README.md b/apps/sleepphasealarm/README.md index bbf1d84ab..5aded316e 100644 --- a/apps/sleepphasealarm/README.md +++ b/apps/sleepphasealarm/README.md @@ -24,6 +24,10 @@ Replacing the watch strap with a more comfortable one (e.g. made of nylon) is re For each day of month (1..31) the ESS states are logged. An entry will be overwritten in the next month, e.g. an entry on the 4th May will overwrite an entry on the 4th April. On Bangle.js 1 only one day is logged due to low memory. -The logs can be viewed with the download button: +The logs can be plotted from the settings menu: -![](screenshot.jpg) +![](screenshot_log.png) + +The logs can also be viewed with the download button in the App Loader: + +![](interface.jpg) diff --git a/apps/sleepphasealarm/screenshot.jpg b/apps/sleepphasealarm/interface.jpg similarity index 100% rename from apps/sleepphasealarm/screenshot.jpg rename to apps/sleepphasealarm/interface.jpg diff --git a/apps/sleepphasealarm/metadata.json b/apps/sleepphasealarm/metadata.json index 7e8d2b1a0..fabd9f135 100644 --- a/apps/sleepphasealarm/metadata.json +++ b/apps/sleepphasealarm/metadata.json @@ -15,5 +15,6 @@ {"name":"sleepphasealarm.img","url":"app-icon.js","evaluate":true} ], "data": [{"name":"sleepphasealarm.json"}], - "interface": "interface.html" + "interface": "interface.html", + "screenshots": [ {"url":"screenshot.png"}, {"url":"screenshot_log.png"} ] } diff --git a/apps/sleepphasealarm/screenshot.png b/apps/sleepphasealarm/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..769ebbbbc85b4147cced277ba7bc4afdc49f3db2 GIT binary patch literal 3404 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 literal 0 HcmV?d00001 diff --git a/apps/sleepphasealarm/screenshot_log.png b/apps/sleepphasealarm/screenshot_log.png new file mode 100644 index 0000000000000000000000000000000000000000..3442e36ca1a2c33e0e7d21f91d638893aa012386 GIT binary patch literal 3179 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 m(K#%(59R+l3H<|acMdS1z8d8 Date: Mon, 6 Feb 2023 21:18:44 +0100 Subject: [PATCH 0095/1725] powermanager - Move settings to Logging submenu --- apps/powermanager/settings.js | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/apps/powermanager/settings.js b/apps/powermanager/settings.js index 41f5aa471..b0d8ac8b5 100644 --- a/apps/powermanager/settings.js +++ b/apps/powermanager/settings.js @@ -42,17 +42,8 @@ 'Calibrate': function() { E.showMenu(submenu_calibrate); }, - 'Logging': { - value: !!settings.log, - onchange: v => { - writeSettings("log", v); - } - }, - 'Detail logging': { - value: !!settings.logDetails, - onchange: v => { - writeSettings("logDetails", v); - } + 'Logging': function() { + E.showMenu(submenu_logging); } }; @@ -129,5 +120,26 @@ } }; + var submenu_logging = { + '': { + title: "Logging", + back: function() { + E.showMenu(mainmenu); + }, + }, + 'Enabled': { + value: !!settings.log, + onchange: v => { + writeSettings("log", v); + } + }, + 'Trace': { + value: !!settings.logDetails, + onchange: v => { + writeSettings("logDetails", v); + } + } + } + E.showMenu(mainmenu); }) From bb9d9a7b5156913189e3f3594594a5aacc5aae03 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 6 Feb 2023 22:40:58 +0100 Subject: [PATCH 0096/1725] powermanager - Try to preserve this during wrapping and do not wrap eval --- apps/powermanager/boot.js | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/apps/powermanager/boot.js b/apps/powermanager/boot.js index 801c1f48a..a01750029 100644 --- a/apps/powermanager/boot.js +++ b/apps/powermanager/boot.js @@ -64,18 +64,27 @@ let functions = {}; - let wrapDeferred = ((o,t) => (a,b,c,d) => { - let wrapped = (q,w,e,r)=>{ - let start = Date.now(); - let result = a(q,w,e,r); - let end = Date.now()-start; - let f = a.toString().substring(0,100); - if (settings.logDetails) logDeferred(t, end, f); - if (!def.deferred[f]) def.deferred[f] = 0; - def.deferred[f] += end; - return result; - }; - return o(wrapped,b,c,d); + let wrapDeferred = ((o,t) => (a) => { + if (a == eval){ + return o.apply(this, arguments); + } else { + let wrapped = ()=>{ + let start = Date.now(); + let result = a.apply(undefined, arguments.slice(1)); + let end = Date.now()-start; + let f = a.toString().substring(0,100); + if (settings.logDetails) logDeferred(t, end, f); + if (!def.deferred[f]) def.deferred[f] = 0; + def.deferred[f] += end; + return result; + }; + for (let p in a){ + wrapped[p] = a[p]; + } + let newArgs = arguments.slice(); + newArgs[0] = wrapped; + return o.apply(this, newArgs); + } }); global.setTimeout = wrapDeferred(global.setTimeout, "t"); From ecf029deff3db61a8ce7dd5fa8e16087145631de Mon Sep 17 00:00:00 2001 From: Gabriele Monaco Date: Mon, 6 Feb 2023 18:01:04 +0100 Subject: [PATCH 0097/1725] agenda: show day of the week in date --- apps/agenda/ChangeLog | 1 + apps/agenda/agenda.js | 29 +++++++++++++++++------------ apps/agenda/metadata.json | 2 +- lang/it_IT.json | 10 +++++++++- 4 files changed, 28 insertions(+), 14 deletions(-) diff --git a/apps/agenda/ChangeLog b/apps/agenda/ChangeLog index 99c44a2b1..9e7151e1e 100644 --- a/apps/agenda/ChangeLog +++ b/apps/agenda/ChangeLog @@ -12,3 +12,4 @@ 0.11: Setting to use "Today" and "Yesterday" instead of dates Added dynamic, short and range fields to clkinfo 0.12: Added color field and updating clkinfo periodically (running events) +0.13: Show day of the week in date diff --git a/apps/agenda/agenda.js b/apps/agenda/agenda.js index 8afca95a9..6d2b783fd 100644 --- a/apps/agenda/agenda.js +++ b/apps/agenda/agenda.js @@ -34,8 +34,9 @@ function getDate(timestamp) { return new Date(timestamp*1000); } function formatDay(date) { + let formattedDate = Locale.dow(date,1) + " " + Locale.date(date).replace(/\d\d\d\d/,""); if (!settings.useToday) { - return Locale.date(date); + return formattedDate; } const dateformatted = date.toISOString().split('T')[0]; // yyyy-mm-dd const today = new Date(Date.now()).toISOString().split('T')[0]; // yyyy-mm-dd @@ -46,7 +47,7 @@ function formatDay(date) { if (dateformatted == tomorrow) { return /*LANG*/"Tomorrow "; } - return Locale.date(date); + return formattedDate; } } function formatDateLong(date, includeDay, allDay) { @@ -58,7 +59,7 @@ function formatDateLong(date, includeDay, allDay) { return shortTime; } function formatDateShort(date, allDay) { - return formatDay(date).replace(/\d\d\d\d/,"")+(allDay?"":Locale.time(date,1)+Locale.meridian(date)); + return formatDay(date)+(allDay?"":Locale.time(date,1)+Locale.meridian(date)); } var lines = []; @@ -75,25 +76,29 @@ function showEvent(ev) { if (titleCnt) lines.push(""); // add blank line after title if(start.getDay() == end.getDay() && start.getMonth() == end.getMonth()) includeDay = false; - if(includeDay || ev.allDay) { + if(includeDay && ev.allDay) { + //single day all day (average to avoid getting previous day) lines = lines.concat( - /*LANG*/"Start:", + g.wrapString(formatDateLong(new Date((start+end)/2), includeDay, ev.allDay), g.getWidth()-10)); + } else if(includeDay || ev.allDay) { + lines = lines.concat( + /*LANG*/"Start"+":", g.wrapString(formatDateLong(start, includeDay, ev.allDay), g.getWidth()-10), - /*LANG*/"End:", + /*LANG*/"End"+":", g.wrapString(formatDateLong(end, includeDay, ev.allDay), g.getWidth()-10)); } else { lines = lines.concat( - g.wrapString(Locale.date(start), g.getWidth()-10), + g.wrapString(formatDateShort(start,true), g.getWidth()-10), g.wrapString(/*LANG*/"Start"+": "+formatDateLong(start, includeDay, ev.allDay), g.getWidth()-10), g.wrapString(/*LANG*/"End"+": "+formatDateLong(end, includeDay, ev.allDay), g.getWidth()-10)); } if(ev.location) - lines = lines.concat(/*LANG*/"Location"+": ", g.wrapString(ev.location, g.getWidth()-10)); - if(ev.description) + lines = lines.concat("",/*LANG*/"Location"+": ", g.wrapString(ev.location, g.getWidth()-10)); + if(ev.description && ev.description.trim()) lines = lines.concat("",g.wrapString(ev.description, g.getWidth()-10)); if(ev.calName) - lines = lines.concat(/*LANG*/"Calendar"+": ", g.wrapString(ev.calName, g.getWidth()-10)); - lines = lines.concat(["",/*LANG*/"< Back"]); + lines = lines.concat("",/*LANG*/"Calendar"+": ", g.wrapString(ev.calName, g.getWidth()-10)); + lines = lines.concat("",/*LANG*/"< Back"); E.showScroller({ h : g.getFontHeight(), // height of each menu item in pixels c : lines.length, // number of menu items @@ -120,7 +125,7 @@ function showList() { CALENDAR = CALENDAR.filter(ev=>ev.timestamp + ev.durationInSeconds > now/1000); } if(CALENDAR.length == 0) { - E.showMessage("No events"); + E.showMessage(/*LANG*/"No events"); return; } E.showScroller({ diff --git a/apps/agenda/metadata.json b/apps/agenda/metadata.json index 88dd2c1bc..737568cb5 100644 --- a/apps/agenda/metadata.json +++ b/apps/agenda/metadata.json @@ -1,7 +1,7 @@ { "id": "agenda", "name": "Agenda", - "version": "0.12", + "version": "0.13", "description": "Simple agenda", "icon": "agenda.png", "screenshots": [{"url":"screenshot_agenda_overview.png"}, {"url":"screenshot_agenda_event1.png"}, {"url":"screenshot_agenda_event2.png"}], diff --git a/lang/it_IT.json b/lang/it_IT.json index 310af8580..72d7dbb51 100644 --- a/lang/it_IT.json +++ b/lang/it_IT.json @@ -200,7 +200,15 @@ "Green": "Verde", "Blue": "Blu", "Black": "Nero", - "Show Week Number": "Mostra numero settimana" + "Show Week Number": "Mostra numero settimana", + "Calendar": "Calendario", + "Start": "Inizio", + "End": "Fine", + "Location": "Posizione", + "No location": "Nessuna posizione", + "No events": "Nessun evento", + "Today": "Oggi", + "Tomorrow": "Domani" }, "//2": "App-specific overrides", "alarm": { From 61b71360c2b8960feb0be0a2f2432173b1469ab2 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Tue, 7 Feb 2023 19:33:57 +0100 Subject: [PATCH 0098/1725] count # of handlers when deciding whether to go back --- apps/backswipe/boot.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/backswipe/boot.js b/apps/backswipe/boot.js index 1369c1949..8acd5244c 100644 --- a/apps/backswipe/boot.js +++ b/apps/backswipe/boot.js @@ -22,11 +22,21 @@ setUI(mode, cb); }; + function countHandlers(eventType) { + if (Bangle["#on"+eventType] === undefined) { + return 0; + } else if (Bangle["#on"+eventType] instanceof Array) { + return Bangle["#on"+eventType].length; + } else if (Bangle["#on"+eventType] !== undefiened) { + return 1; + } + } + function goBack(lr, _) { // if it is a left to right swipe if (lr === 1) { // if we're in an app that has a back button, run the callback for it - if (global.BACK) { + if (global.BACK && countHandlers("swipe")<4 && countHandlers("drag")<1) { // # of allowed handlers should be user configurable in settings global.BACK(); } } From 23e345202aedf2e85556efd2e98ff54c22aadc74 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Tue, 7 Feb 2023 19:40:07 +0100 Subject: [PATCH 0099/1725] remove some bool --- apps/backswipe/boot.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/backswipe/boot.js b/apps/backswipe/boot.js index 8acd5244c..337718dec 100644 --- a/apps/backswipe/boot.js +++ b/apps/backswipe/boot.js @@ -16,7 +16,7 @@ var currentFile = global.__FILE__ || ""; if (global.BACK) delete global.BACK; - if (options && options.back && enabledForApp(currentFile) && !((Bangle["#onswipe"] instanceof Array)&&Bangle["#onswipe"].length>1 )) { + if (options && options.back && enabledForApp(currentFile)) { global.BACK = options.back; } setUI(mode, cb); From 4649f908d075f9a5ac09311d49d2b2560a5f07d4 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Tue, 7 Feb 2023 20:28:22 +0100 Subject: [PATCH 0100/1725] add settings for standard # of swipe and drag handlers --- apps/backswipe/boot.js | 4 ++-- apps/backswipe/settings.js | 46 ++++++++++++++++++++++++++++---------- 2 files changed, 36 insertions(+), 14 deletions(-) diff --git a/apps/backswipe/boot.js b/apps/backswipe/boot.js index 337718dec..e46f902eb 100644 --- a/apps/backswipe/boot.js +++ b/apps/backswipe/boot.js @@ -27,7 +27,7 @@ return 0; } else if (Bangle["#on"+eventType] instanceof Array) { return Bangle["#on"+eventType].length; - } else if (Bangle["#on"+eventType] !== undefiened) { + } else if (Bangle["#on"+eventType] !== undefined) { return 1; } } @@ -36,7 +36,7 @@ // if it is a left to right swipe if (lr === 1) { // if we're in an app that has a back button, run the callback for it - if (global.BACK && countHandlers("swipe")<4 && countHandlers("drag")<1) { // # of allowed handlers should be user configurable in settings + if (global.BACK && countHandlers("swipe")<=settings.standardNumSwipeHandlers && countHandlers("drag")<=settings.standardNumDragHandlers) { global.BACK(); } } diff --git a/apps/backswipe/settings.js b/apps/backswipe/settings.js index 2c29e86f8..3eb1fb377 100644 --- a/apps/backswipe/settings.js +++ b/apps/backswipe/settings.js @@ -4,19 +4,21 @@ // Apps is an array of app info objects, where all the apps that are there are either blocked or allowed, depending on the mode var DEFAULTS = { 'mode': 0, - 'apps': [] + 'apps': [], + 'standardNumSwipeHandlers': 0, + 'standardNumDragHandlers': 0 }; - + var settings = {}; - + var loadSettings = function() { settings = require('Storage').readJSON(FILE, 1) || DEFAULTS; - } - + }; + var saveSettings = function(settings) { require('Storage').write(FILE, settings); - } - + }; + // Get all app info files var getApps = function() { var apps = require('Storage').list(/\.info$/).map(appInfoFileName => { @@ -35,8 +37,8 @@ return 0; }); return apps; - } - + }; + var showMenu = function() { var menu = { '': { 'title': 'Backswipe' }, @@ -55,11 +57,31 @@ }, 'App List': () => { showAppSubMenu(); + }, + 'standard # of swipe handlers' : { // If more than this many handlers are present backswipe will not go back + value: 0|settings.standardNumSwipeHandlers, + min: 0, + max: 10, + format: v=>v, + onchange: v => { + settings.standardNumSwipeHandlers = v; + saveSettings(settings); + }, + }, + 'standard # of drag handlers' : { // If more than this many handlers are present backswipe will not go back + value: 0|settings.standardNumDragHandlers, + min: 0, + max: 10, + format: v=>v, + onchange: v => { + settings.standardNumDragHandlers = v; + saveSettings(settings); + }, } }; - + E.showMenu(menu); - } + }; var showAppSubMenu = function() { var menu = { @@ -101,4 +123,4 @@ loadSettings(); showMenu(); -}) \ No newline at end of file +}) From 920919cf45b5c245728d24224b3241104be53068 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Tue, 7 Feb 2023 19:27:41 +0100 Subject: [PATCH 0101/1725] powermanager - Save state every 5 minutes --- apps/powermanager/boot.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/apps/powermanager/boot.js b/apps/powermanager/boot.js index a01750029..9cf54110d 100644 --- a/apps/powermanager/boot.js +++ b/apps/powermanager/boot.js @@ -13,7 +13,9 @@ if (!sen.start) sen.start = Date.now(); if (!sen.power) sen.power = {}; - E.on("kill", ()=>{ + const saveEvery = 1000 * 60 * 5; + + let save = ()=>{ let defExists = require("Storage").read("powermanager.def.json")!==undefined; if (!(!defExists && def.saved)){ def.saved = Date.now(); @@ -24,7 +26,11 @@ sen.saved = Date.now(); require('Storage').writeJSON("powermanager.sen.json", sen); } - }); + } + + setInterval(save, saveEvery); + + E.on("kill", save); let logPower = (type, oldstate, state, app) => { From e4fd6d4a88602064e99300a3fda8b09514db7262 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Tue, 7 Feb 2023 19:29:22 +0100 Subject: [PATCH 0102/1725] powermanager - Fix recording of sensor state --- apps/powermanager/boot.js | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/apps/powermanager/boot.js b/apps/powermanager/boot.js index 9cf54110d..abc45c21b 100644 --- a/apps/powermanager/boot.js +++ b/apps/powermanager/boot.js @@ -14,6 +14,7 @@ if (!sen.power) sen.power = {}; const saveEvery = 1000 * 60 * 5; + const TO_WRAP = ["GPS","Compass","Barometer","HRM","LCD"]; let save = ()=>{ let defExists = require("Storage").read("powermanager.def.json")!==undefined; @@ -30,7 +31,14 @@ setInterval(save, saveEvery); - E.on("kill", save); + E.on("kill", ()=>{ + for (let c of TO_WRAP){ + if (lastPowerOn[c] && Bangle["is"+c+"On"]()){ + sen.power[c] += Date.now() - lastPowerOn[c]; + } + } + save(); + }); let logPower = (type, oldstate, state, app) => { @@ -42,27 +50,26 @@ let lastPowerOn = {}; - const TO_WRAP = ["GPS","Compass","Barometer","HRM","LCD"]; for (let c of TO_WRAP){ let functionName = "set" + c + "Power"; let checkName = "is" + c + "On"; let type = c + ""; - if (!sen.power[type]) sen.power[type] = 0; + lastPowerOn[type] = (!lastPowerOn[type] && Bangle[checkName]()) ? Date.now() : undefined; lastPowerOn[type] = Date.now(); Bangle[functionName] = ((o) => (a,b) => { let oldstate = Bangle[checkName](); let result = o(a,b); - if (!(oldstate && result)) { - if (result) { - //switched on, store time - lastPowerOn[type] = Date.now(); - } else { - //switched off - sen.power[type] += Date.now() - lastPowerOn[type]; - } + if (!lastPowerOn[type] && result) { + //switched on, store time + lastPowerOn[type] = Date.now(); + } else if (lastPowerOn[type] && !result){ + //switched off + sen.power[type] += Date.now() - lastPowerOn[type]; + lastPowerOn[type] = undefined; } + if (settings.logDetails) logPower(type, oldstate, result, b); return result; })(Bangle[functionName]); From db9bc005104523e8acfc8dbc7b168fce218094e5 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 8 Feb 2023 09:29:40 +0000 Subject: [PATCH 0103/1725] fix sanity check warning --- apps/mtnclock/ChangeLog | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 apps/mtnclock/ChangeLog diff --git a/apps/mtnclock/ChangeLog b/apps/mtnclock/ChangeLog new file mode 100644 index 000000000..cbf5c7f40 --- /dev/null +++ b/apps/mtnclock/ChangeLog @@ -0,0 +1,2 @@ +0.01: New App! +0.02: Get weather from weather.json From 489c96d9baaf2a85dd7f2185f9e6bf1a6aebb85a Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 8 Feb 2023 09:30:07 +0000 Subject: [PATCH 0104/1725] Add LEGO remote control --- apps/legoremote/ChangeLog | 1 + apps/legoremote/README.md | 28 ++++++++++++++ apps/legoremote/app-icon.js | 1 + apps/legoremote/app.js | 70 ++++++++++++++++++++++++++++++++++ apps/legoremote/app.png | Bin 0 -> 14820 bytes apps/legoremote/metadata.json | 14 +++++++ 6 files changed, 114 insertions(+) create mode 100644 apps/legoremote/ChangeLog create mode 100644 apps/legoremote/README.md create mode 100644 apps/legoremote/app-icon.js create mode 100644 apps/legoremote/app.js create mode 100644 apps/legoremote/app.png create mode 100644 apps/legoremote/metadata.json diff --git a/apps/legoremote/ChangeLog b/apps/legoremote/ChangeLog new file mode 100644 index 000000000..5560f00bc --- /dev/null +++ b/apps/legoremote/ChangeLog @@ -0,0 +1 @@ +0.01: New App! diff --git a/apps/legoremote/README.md b/apps/legoremote/README.md new file mode 100644 index 000000000..a95b7b154 --- /dev/null +++ b/apps/legoremote/README.md @@ -0,0 +1,28 @@ +# LEGO Remote control + +This app allows you to control LEGO models from Bangle.js + +Right now the only supported control device is the Mould King M-0006 +Bluetooth remote for LEGO Power Functions: http://www.espruino.com/LEGO+Power+Functions+Clone + +LEGO Power Functions does not have an official Bluetooth remote controller. Hopefully +in the future this app will be able to support other types of remote (see below). + +## Usage + +Run the app, and ensure you're not connected to your watch via Bluetooth +(a warning will pop up if so). + +Now press the arrow keys on the screen to control the robot. + +It is expected that the robot is controlled by two motors, one on the left +side (connected to the `A` output) and one on the right (connected to the `B` output). + +## Future additions + +In the future it would be great to add: + +* Recording a series of movements and playing them back +* Support for official LEGO bluetooth remotes (via [Pybricks](https://pybricks.com/)) +* Support for different robot styles and configurations +* Using the Bangle's compass (or even GPS) to allow better robot control. diff --git a/apps/legoremote/app-icon.js b/apps/legoremote/app-icon.js new file mode 100644 index 000000000..850e0eda6 --- /dev/null +++ b/apps/legoremote/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEw4X/8H5A4NH/4ABJf4A/AFMC1Uq1QABhWqBYYJDAAegBYWqxWogWohQBCBYWpqsVqoABytVBYUC0u5rf5rf1q/xtQLBhWW/t//2/AYVKBYWX/u//z3B3//rRGCr/1/+H/v9/1/BYn2/lT+v6/oXDlF/4//9/78/5F4epv/X//f7/3+v9I4Wp38b/9v7//+4LD0P/HgN/7f/EgMoBYOlJ4IACDAP1O4QLH6ibCBYI7Br/+qf/iwLC1NIquhq2lquprWAWQVVoNVgtU0NVlQLCZQ7XDbgLWJEgOCdgLZBdwgA/AH4AaA")) diff --git a/apps/legoremote/app.js b/apps/legoremote/app.js new file mode 100644 index 000000000..1c76a54a8 --- /dev/null +++ b/apps/legoremote/app.js @@ -0,0 +1,70 @@ +var lego = require("mouldking"); +lego.start(); +E.on('kill', () => { + // return to normal Bluetooth advertising + NRF.setAdvertising({},{showName:true}); +}); +// You must leave one second after 'start' to allow the remote to be paired + +var arrowIcon = atob("IiiBAAAAwAAAAPwAAAB/gAAAP/AAAB/+AAAP/8AAB//4AAP//wAA///gAH///AA///8AH///4A////wH////gf////D////8f////5/////n////+f////4AP/8AAA//wAAD//AAAP/8AAA//wAAD//AAAH/8AAAf/wAAB//AAAH/8AAAf/gAAB/+AAAH/4AAAf/gAAB/+AAAH/4AAAP/gAAA/+AAAD/wAAAD8AA"); +var controlState = ""; + +Bangle.loadWidgets(); +Bangle.drawWidgets(); +var R = Bangle.appRect; +// we'll divide up into 3x3 +function getBoxCoords(x,y) { + return { + x : R.x + R.w*x/3, + y : R.y + R.h*y/3 + }; +} + +function draw() { + g.reset().clearRect(R); + var c, ninety = Math.PI/2; + var colOn = "#f00", colOff = g.theme.fg; + c = getBoxCoords(1.5, 0.5); + g.setColor(controlState=="up"?colOn:colOff).drawImage(arrowIcon,c.x,c.y,{rotate:0}); + c = getBoxCoords(2.5, 1.5); + g.setColor(controlState=="right"?colOn:colOff).drawImage(arrowIcon,c.x,c.y,{rotate:ninety}); + c = getBoxCoords(0.5, 1.5); + g.setColor(controlState=="left"?colOn:colOff).drawImage(arrowIcon,c.x,c.y,{rotate:-ninety}); + c = getBoxCoords(1.5, 1.5); + g.setColor(controlState=="down"?colOn:colOff).drawImage(arrowIcon,c.x,c.y,{rotate:ninety*2}); + if (NRF.getSecurityStatus().connected) { + c = getBoxCoords(1.5, 2.5); + g.setFontAlign(0,0).setFont("6x8").drawString("WARNING:\nBluetooth Connected\nYou must disconnect\nbefore LEGO will work",c.x,c.y); + } +} +draw(); +NRF.on('connect', draw); +NRF.on('disconnect', draw); + +function setControlState(s) { + controlState = s; + var c = {}; + var speed = 3; + if (s=="up") c={a:-speed,b:-speed}; + if (s=="down") c={a:speed,b:speed}; + if (s=="left") c={a:speed,b:-speed}; + if (s=="right") c={a:-speed,b:speed}; + draw(); + lego.set(c); +} + +Bangle.on('drag',e => { + var x = Math.floor(E.clip((e.x - R.x) * 3 / R.w,0,2.99)); + var y = Math.floor(E.clip((e.y - R.y) * 3 / R.h,0,2.99)); + if (!e.b) { + setControlState(""); + return; + } + if (y==0) { // top row + if (x==1) setControlState("up"); + } else if (y==1) { + if (x==0) setControlState("left"); + if (x==1) setControlState("down"); + if (x==2) setControlState("right"); + } +}); diff --git a/apps/legoremote/app.png b/apps/legoremote/app.png new file mode 100644 index 0000000000000000000000000000000000000000..727049e2ba713fe02ab9bcf97e8a9c52e0168b96 GIT binary patch literal 14820 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

3Dbt{R;TUJo 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 Date: Wed, 8 Feb 2023 12:29:49 +0100 Subject: [PATCH 0105/1725] add readme --- apps/backswipe/README.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 apps/backswipe/README.md diff --git a/apps/backswipe/README.md b/apps/backswipe/README.md new file mode 100644 index 000000000..7f0e2f6be --- /dev/null +++ b/apps/backswipe/README.md @@ -0,0 +1,16 @@ +Service that allows you to use an app's back button using left to right swipe gesture. + +## Settings + +Mode: Blacklist/Whitelist/Always On/Disabled +App List: Black-/whitelisted apps +standard # of swipe handlers: 0-10 +standard # of drag handlers: 0-10 + +Standard # of handlers settings are used to fine tune when backswipe should trigger the back function. E.g. when using a keyboard that works on drags, we don't want the backswipe to trigger when we just wanted to select a letter. This might not be able to cover all cases however. + +## Creator +Kedlub + +## Contributors +thyttan From c9dabdf680b8da0f5da3b93899db84337aabd9ff Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 8 Feb 2023 12:39:27 +0100 Subject: [PATCH 0106/1725] Capitalization --- apps/backswipe/README.md | 4 ++-- apps/backswipe/settings.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/backswipe/README.md b/apps/backswipe/README.md index 7f0e2f6be..fd6dd29b6 100644 --- a/apps/backswipe/README.md +++ b/apps/backswipe/README.md @@ -4,8 +4,8 @@ Service that allows you to use an app's back button using left to right swipe ge Mode: Blacklist/Whitelist/Always On/Disabled App List: Black-/whitelisted apps -standard # of swipe handlers: 0-10 -standard # of drag handlers: 0-10 +Standard # of swipe handlers: 0-10 +Standard # of drag handlers: 0-10 Standard # of handlers settings are used to fine tune when backswipe should trigger the back function. E.g. when using a keyboard that works on drags, we don't want the backswipe to trigger when we just wanted to select a letter. This might not be able to cover all cases however. diff --git a/apps/backswipe/settings.js b/apps/backswipe/settings.js index 3eb1fb377..42ca7ae7d 100644 --- a/apps/backswipe/settings.js +++ b/apps/backswipe/settings.js @@ -58,7 +58,7 @@ 'App List': () => { showAppSubMenu(); }, - 'standard # of swipe handlers' : { // If more than this many handlers are present backswipe will not go back + 'Standard # of swipe handlers' : { // If more than this many handlers are present backswipe will not go back value: 0|settings.standardNumSwipeHandlers, min: 0, max: 10, @@ -68,7 +68,7 @@ saveSettings(settings); }, }, - 'standard # of drag handlers' : { // If more than this many handlers are present backswipe will not go back + 'Standard # of drag handlers' : { // If more than this many handlers are present backswipe will not go back value: 0|settings.standardNumDragHandlers, min: 0, max: 10, From 8b7e152c83933b56c626d271439354478071fea5 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 8 Feb 2023 12:42:02 +0100 Subject: [PATCH 0107/1725] add to readme --- apps/backswipe/README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/backswipe/README.md b/apps/backswipe/README.md index fd6dd29b6..1611263bb 100644 --- a/apps/backswipe/README.md +++ b/apps/backswipe/README.md @@ -4,8 +4,9 @@ Service that allows you to use an app's back button using left to right swipe ge Mode: Blacklist/Whitelist/Always On/Disabled App List: Black-/whitelisted apps -Standard # of swipe handlers: 0-10 -Standard # of drag handlers: 0-10 +Standard # of swipe handlers: 0-10 (Default: 0, must be changed for backswipe to work at all) +Standard # of drag handlers: 0-10 (Default: 0, must be changed for backswipe to work at all) + Standard # of handlers settings are used to fine tune when backswipe should trigger the back function. E.g. when using a keyboard that works on drags, we don't want the backswipe to trigger when we just wanted to select a letter. This might not be able to cover all cases however. From 2538d417ad9336f22410628e2c4e0dd1f3545036 Mon Sep 17 00:00:00 2001 From: KungPhoo Date: Wed, 8 Feb 2023 13:59:38 +0100 Subject: [PATCH 0108/1725] Change colour Changes the to yellow on < 50% and red on < 20% battery percentage. --- apps/widbat/widget.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/widbat/widget.js b/apps/widbat/widget.js index a8a0c5382..7fce16335 100644 --- a/apps/widbat/widget.js +++ b/apps/widbat/widget.js @@ -31,7 +31,11 @@ x+=16; } g.setColor(g.theme.fg).fillRect(x,y+2,x+s-4,y+21).clearRect(x+2,y+4,x+s-6,y+19).fillRect(x+s-3,y+10,x+s,y+14); - g.setColor("#0f0").fillRect(x+4,y+6,x+4+E.getBattery()*(s-12)/100,y+17); + var battery = E.getBattery(); + if(battery < 20) {g.setColor("#f00");} + else if (battery < 50) {g.setColor("#ff0");} + else {g.setColor("#0f0");} + g.fillRect(x+4,y+6,x+4+battery*(s-12)/100,y+17); }}; setWidth(); })() From 26589fa779c0a3a34679c36a214dbb4c14ffa1cb Mon Sep 17 00:00:00 2001 From: KungPhoo Date: Wed, 8 Feb 2023 14:06:46 +0100 Subject: [PATCH 0109/1725] Update ChangeLog --- apps/widbat/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/widbat/ChangeLog b/apps/widbat/ChangeLog index 5986ecf3f..59c58af32 100644 --- a/apps/widbat/ChangeLog +++ b/apps/widbat/ChangeLog @@ -6,3 +6,4 @@ 0.07: Move CHARGING variable to more readable string 0.08: Ensure battery updates every 60s even if LCD was on at boot and stays on 0.09: Misc speed/memory tweaks +0.10: Color changes due to the battery level From 50a66490909fd7bbc2cb20c57e2e7a5196f81dd3 Mon Sep 17 00:00:00 2001 From: KungPhoo Date: Wed, 8 Feb 2023 14:10:10 +0100 Subject: [PATCH 0110/1725] Update version --- apps/widbat/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/widbat/metadata.json b/apps/widbat/metadata.json index 993310eb2..5f0d1b7d1 100644 --- a/apps/widbat/metadata.json +++ b/apps/widbat/metadata.json @@ -1,7 +1,7 @@ { "id": "widbat", "name": "Battery Level Widget", - "version": "0.09", + "version": "0.10", "description": "Show the current battery level and charging status in the top right of the clock", "icon": "widget.png", "type": "widget", From 6439062d922cea0fdedcecef3a6480c4ea3ff652 Mon Sep 17 00:00:00 2001 From: Sam Sorensen <825813+sabrsorensen@users.noreply.github.com> Date: Wed, 8 Feb 2023 22:37:39 -0700 Subject: [PATCH 0111/1725] Addressed undefined weather timestamp --- apps/mtnclock/ChangeLog | 1 + apps/mtnclock/app.js | 2 +- apps/mtnclock/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/mtnclock/ChangeLog b/apps/mtnclock/ChangeLog index cbf5c7f40..98cd0cc94 100644 --- a/apps/mtnclock/ChangeLog +++ b/apps/mtnclock/ChangeLog @@ -1,2 +1,3 @@ 0.01: New App! 0.02: Get weather from weather.json +0.03: Address unexpected undefined when reading weather.json \ No newline at end of file diff --git a/apps/mtnclock/app.js b/apps/mtnclock/app.js index c6adc7706..a65382dec 100644 --- a/apps/mtnclock/app.js +++ b/apps/mtnclock/app.js @@ -326,7 +326,7 @@ function setWeather() { function readWeather() { var weatherJson = require("Storage").readJSON('weather.json', 1); // save updated weather data if available and it has been an hour since last updated - if (weatherJson !== undefined && (data.time === undefined || (data.time + 3600000) < weatherJson.weather.time)) { + if (weatherJson && weatherJson.weather && weatherJson.weather.time && (data.time === undefined || (data.time + 3600000) < weatherJson.weather.time)) { data = { time: weatherJson.weather.time, temp: weatherJson.weather.temp, diff --git a/apps/mtnclock/metadata.json b/apps/mtnclock/metadata.json index 82a0cccab..2d3d0a02f 100644 --- a/apps/mtnclock/metadata.json +++ b/apps/mtnclock/metadata.json @@ -2,7 +2,7 @@ "id": "mtnclock", "name": "Mountain Pass Clock", "shortName": "Mtn Clock", - "version": "0.02", + "version": "0.03", "description": "A clock that changes scenery based on time and weather.", "readme":"README.md", "icon": "app.png", From 65d369f049668c618379da550f416b08e188e6e1 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 9 Feb 2023 10:43:47 +0000 Subject: [PATCH 0112/1725] added textinput dependency --- apps/mitherm/metadata.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/mitherm/metadata.json b/apps/mitherm/metadata.json index a8da6fd26..e44d4ff52 100644 --- a/apps/mitherm/metadata.json +++ b/apps/mitherm/metadata.json @@ -8,6 +8,7 @@ "tags": "xiaomi,mi,ble,bluetooth,thermometer,humidity", "readme": "README.md", "supports": ["BANGLEJS", "BANGLEJS2"], + "dependencies": {"textinput":"type"}, "storage": [ {"name":"mitherm.app.js","url":"app.js"}, {"name":"mitherm.img","url":"app-icon.js","evaluate":true} From 486ca23c4c2cc2e7881b1a2658290647c4564730 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 9 Feb 2023 18:10:56 +0000 Subject: [PATCH 0113/1725] Regenerate typescript / main.d.ts This regenerates `main.d.ts` from [`build_types.js`] in the espruino repo, after [updates to optionals and other changes]. The main changes are new modules, and some older typings that might have not been regenerated since their jsdoc/comments changed. New module typings: - CC3000 - ESP8266 - Flash - NetworkJS - Storage - TelnetServer - WIZnet - Wifi - crypto - dgram - fs - heatshrink - http - neopixel - net - tensorflow - tls - tv [`build_types.js`]: https://github.com/espruino/Espruino/blob/149a7f6bace3a56c1892de47bd8baacfb3f496a5/scripts/build_types.js [updates to optionals and other changes]: https://github.com/espruino/Espruino/pull/2322 --- typescript/types/main.d.ts | 17882 ++++++++++++++++++----------------- 1 file changed, 9086 insertions(+), 8796 deletions(-) diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index 89921972c..cd7b364a6 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -1,4 +1,5 @@ -// NOTE: This file has been automatically generated. +// Type definitions for Espruino latest +// Project: http://www.espruino.com/, https://github.com/espruino/espruinotools// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// @@ -34,6 +35,7 @@ type MenuOptions = { back?: () => void; selected?: number; fontHeight?: number; + scroll?: number; x?: number; y?: number; x2?: number; @@ -69,67 +71,6 @@ type MenuInstance = { select: () => void; }; -type ImageObject = { - width: number; - height: number; - bpp?: number; - buffer: ArrayBuffer | string; - transparent?: number; - palette?: Uint16Array; -}; - -type Image = string | ImageObject | ArrayBuffer | Graphics; - -type ColorResolvable = number | `#${string}`; - -type FontName = - | "4x4" - | "4x4Numeric" - | "4x5" - | "4x5Numeric" - | "4x8Numeric" - | "5x7Numeric7Seg" - | "5x9Numeric7Seg" - | "6x8" - | "6x12" - | "7x11Numeric7Seg" - | "8x12" - | "8x16" - | "Dennis8" - | "Cherry6x10" - | "Copasectic40x58Numeric" - | "Dylex7x13" - | "HaxorNarrow7x17" - | "Sinclair" - | "Teletext10x18Mode7" - | "Teletext5x9Ascii" - | "Teletext5x9Mode7" - | "Vector"; - -type FontNameWithScaleFactor = - | FontName - | `${FontName}:${number}` - | `${FontName}:${number}x${number}`; - -type Theme = { - fg: number; - bg: number; - fg2: number; - bg2: number; - fgH: number; - bgH: number; - dark: boolean; -}; - -type NRFFilters = { - services?: string[]; - name?: string; - namePrefix?: string; - id?: string; - serviceData?: object; - manufacturerData?: object; -}; - declare const BTN1: Pin; declare const BTN2: Pin; declare const BTN3: Pin; @@ -227,12 +168,69 @@ type BangleOptions = { lockTimeout: number; lcdPowerTimeout: number; backlightTimeout: number; + btnLoadTimeout: number; }; -interface ArrayLike { - readonly length: number; - readonly [n: number]: T; -} +type NRFFilters = { + services?: string[]; + name?: string; + namePrefix?: string; + id?: string; + serviceData?: object; + manufacturerData?: object; +}; + +type ImageObject = { + width: number; + height: number; + bpp?: number; + buffer: ArrayBuffer | string; + transparent?: number; + palette?: Uint16Array; +}; + +type Image = string | ImageObject | ArrayBuffer | Graphics; + +type ColorResolvable = number | `#${string}`; + +type FontName = + | "4x4" + | "4x4Numeric" + | "4x5" + | "4x5Numeric" + | "4x8Numeric" + | "5x7Numeric7Seg" + | "5x9Numeric7Seg" + | "6x8" + | "6x12" + | "7x11Numeric7Seg" + | "8x12" + | "8x16" + | "Dennis8" + | "Cherry6x10" + | "Copasectic40x58Numeric" + | "Dylex7x13" + | "HaxorNarrow7x17" + | "Sinclair" + | "Teletext10x18Mode7" + | "Teletext5x9Ascii" + | "Teletext5x9Mode7" + | "Vector"; + +type FontNameWithScaleFactor = + | FontName + | `${FontName}:${number}` + | `${FontName}:${number}x${number}`; + +type Theme = { + fg: number; + bg: number; + fg2: number; + bg2: number; + fgH: number; + bgH: number; + dark: boolean; +}; type PinMode = | "analog" @@ -244,6 +242,11 @@ type PinMode = | "af_output" | "af_opendrain"; +interface ArrayLike { + readonly length: number; + readonly [n: number]: T; +} + type ErrorFlag = | "FIFO_FULL" | "BUFFER_FULL" @@ -276,6 +279,2513 @@ type VariableSizeInformation = { // CLASSES +/** + * A class to support some simple Queue handling for RTOS queues + * @url http://www.espruino.com/Reference#Queue + */ +declare class Queue { + /** + * Creates a Queue Object + * @constructor + * + * @param {any} queueName - Name of the queue + * @returns {any} A Queue object + * @url http://www.espruino.com/Reference#l_Queue_Queue + */ + static new(queueName: any): any; + + /** + * reads one character from queue, if available + * @url http://www.espruino.com/Reference#l_Queue_read + */ + read(): void; + + /** + * Writes one character to queue + * + * @param {any} char - char to be send + * @url http://www.espruino.com/Reference#l_Queue_writeChar + */ + writeChar(char: any): void; + + /** + * logs list of queues + * @url http://www.espruino.com/Reference#l_Queue_log + */ + log(): void; +} + +/** + * A class to support some simple Task handling for RTOS tasks + * @url http://www.espruino.com/Reference#Task + */ +declare class Task { + /** + * Creates a Task Object + * @constructor + * + * @param {any} taskName - Name of the task + * @returns {any} A Task object + * @url http://www.espruino.com/Reference#l_Task_Task + */ + static new(taskName: any): any; + + /** + * Suspend task, be careful not to suspend Espruino task itself + * @url http://www.espruino.com/Reference#l_Task_suspend + */ + suspend(): void; + + /** + * Resumes a suspended task + * @url http://www.espruino.com/Reference#l_Task_resume + */ + resume(): void; + + /** + * returns name of actual task + * @returns {any} Name of current task + * @url http://www.espruino.com/Reference#l_Task_getCurrent + */ + getCurrent(): any; + + /** + * Sends a binary notify to task + * @url http://www.espruino.com/Reference#l_Task_notify + */ + notify(): void; + + /** + * logs list of tasks + * @url http://www.espruino.com/Reference#l_Task_log + */ + log(): void; +} + +/** + * A class to handle Timer on base of ESP32 Timer + * @url http://www.espruino.com/Reference#Timer + */ +declare class Timer { + /** + * Creates a Timer Object + * @constructor + * + * @param {any} timerName - Timer Name + * @param {number} group - Timer group + * @param {number} index - Timer index + * @param {number} isrIndex - isr (0 = Espruino, 1 = test) + * @returns {any} A Timer Object + * @url http://www.espruino.com/Reference#l_Timer_Timer + */ + static new(timerName: any, group: number, index: number, isrIndex: number): any; + + /** + * Starts a timer + * + * @param {number} duration - duration of timmer in micro secs + * @url http://www.espruino.com/Reference#l_Timer_start + */ + start(duration: number): void; + + /** + * Reschedules a timer, needs to be started at least once + * + * @param {number} duration - duration of timmer in micro secs + * @url http://www.espruino.com/Reference#l_Timer_reschedule + */ + reschedule(duration: number): void; + + /** + * logs list of timers + * @url http://www.espruino.com/Reference#l_Timer_log + */ + log(): void; +} + +/** + * Class containing utility functions for the + * [ESP32](http://www.espruino.com/ESP32) + * @url http://www.espruino.com/Reference#ESP32 + */ +declare class ESP32 { + /** + * + * @param {Pin} pin - Pin for Analog read + * @param {number} atten - Attenuate factor + * @url http://www.espruino.com/Reference#l_ESP32_setAtten + */ + static setAtten(pin: Pin, atten: number): void; + + /** + * Perform a hardware reset/reboot of the ESP32. + * @url http://www.espruino.com/Reference#l_ESP32_reboot + */ + static reboot(): void; + + /** + * Put device in deepsleep state for "us" microseconds. + * + * @param {number} us - Sleeptime in us + * @url http://www.espruino.com/Reference#l_ESP32_deepSleep + */ + static deepSleep(us: number): void; + + /** + * Returns an object that contains details about the state of the ESP32 with the + * following fields: + * * `sdkVersion` - Version of the SDK. + * * `freeHeap` - Amount of free heap in bytes. + * * `BLE` - Status of BLE, enabled if true. + * * `Wifi` - Status of Wifi, enabled if true. + * * `minHeap` - Minimum heap, calculated by heap_caps_get_minimum_free_size + * @returns {any} The state of the ESP32 + * @url http://www.espruino.com/Reference#l_ESP32_getState + */ + static getState(): any; + + /** + * + * @param {number} level - which events should be shown (GAP=1, GATTS=2, GATTC=4). Use 255 for everything + * @url http://www.espruino.com/Reference#l_ESP32_setBLE_Debug + */ + static setBLE_Debug(level: number): void; + + /** + * Switches Bluetooth off/on, removes saved code from Flash, resets the board, and + * on restart creates jsVars depending on available heap (actual additional 1800) + * + * @param {boolean} enable - switches Bluetooth on or off + * @url http://www.espruino.com/Reference#l_ESP32_enableBLE + */ + static enableBLE(enable: boolean): void; + + /** + * Switches Wifi off/on, removes saved code from Flash, resets the board, and on + * restart creates jsVars depending on available heap (actual additional 3900) + * + * @param {boolean} enable - switches Wifi on or off + * @url http://www.espruino.com/Reference#l_ESP32_enableWifi + */ + static enableWifi(enable: boolean): void; + + /** + * This function is useful for ESP32 [OTA Updates](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/ota.html) + * Normally Espruino is uploaded to the `factory` partition so this isn't so useful, + * but it is possible to upload Espruino to the `ota_0` partition (or ota_1 if a different table has been added). + * If this is the case, you can use this function to mark the currently running version of Espruino as good or bad. + * * If set as valid, Espruino will continue running, and the fact that everything is ok is written to flash + * * If set as invalid (false) Espruino will mark itself as not working properly and will reboot. The ESP32 bootloader + * will then start and will load any other partition it can find that is marked as ok. + * + * @param {boolean} isValid - Set whether this app is valid or not. If `isValid==false` the device will reboot. + * @url http://www.espruino.com/Reference#l_ESP32_setOTAValid + */ + static setOTAValid(isValid: boolean): void; + + +} + +/** + * This is a built-in class to allow you to use the ESP8266 NodeMCU boards' pin + * namings to access pins. It is only available on ESP8266-based boards. + * @url http://www.espruino.com/Reference#NodeMCU + */ +declare class NodeMCU { + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_A0 + */ + static A0: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D0 + */ + static D0: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D1 + */ + static D1: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D2 + */ + static D2: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D3 + */ + static D3: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D4 + */ + static D4: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D5 + */ + static D5: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D6 + */ + static D6: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D7 + */ + static D7: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D8 + */ + static D8: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D9 + */ + static D9: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_NodeMCU_D10 + */ + static D10: Pin; + + +} + +/** + * This is the built-in class for the Arduino-style pin namings on ST Nucleo boards + * @url http://www.espruino.com/Reference#Nucleo + */ +declare class Nucleo { + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_A0 + */ + static A0: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_A1 + */ + static A1: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_A2 + */ + static A2: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_A3 + */ + static A3: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_A4 + */ + static A4: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_A5 + */ + static A5: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D0 + */ + static D0: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D1 + */ + static D1: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D2 + */ + static D2: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D3 + */ + static D3: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D4 + */ + static D4: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D5 + */ + static D5: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D6 + */ + static D6: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D7 + */ + static D7: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D8 + */ + static D8: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D9 + */ + static D9: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D10 + */ + static D10: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D11 + */ + static D11: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D12 + */ + static D12: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D13 + */ + static D13: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D14 + */ + static D14: Pin; + + /** + * @returns {Pin} A Pin + * @url http://www.espruino.com/Reference#l_Nucleo_D15 + */ + static D15: Pin; + + +} + +/** + * The NRF class is for controlling functionality of the Nordic nRF51/nRF52 chips. + * Most functionality is related to Bluetooth Low Energy, however there are also + * some functions related to NFC that apply to NRF52-based devices. + * @url http://www.espruino.com/Reference#NRF + */ +declare class NRF { + /** + * @returns {any} An object + * @url http://www.espruino.com/Reference#l_NRF_getSecurityStatus + */ + static getSecurityStatus(): any; + + /** + * @returns {any} An object + * @url http://www.espruino.com/Reference#l_NRF_getAddress + */ + static getAddress(): any; + + /** + * + * @param {any} data - The service (and characteristics) to advertise + * @param {any} options - Optional object containing options + * @url http://www.espruino.com/Reference#l_NRF_setServices + */ + static setServices(data: any, options: any): void; + + /** + * + * @param {any} data - The data to advertise as an object - see below for more info + * @param {any} [options] - [optional] An object of options + * @url http://www.espruino.com/Reference#l_NRF_setAdvertising + */ + static setAdvertising(data: any, options?: any): void; + + /** + * Called when a host device connects to Espruino. The first argument contains the + * address. + * @param {string} event - The event to listen to. + * @param {(addr: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `addr` The address of the device that has connected + * @url http://www.espruino.com/Reference#l_NRF_connect + */ + static on(event: "connect", callback: (addr: any) => void): void; + + /** + * Called when a host device disconnects from Espruino. + * The most common reason is: + * * 19 - `REMOTE_USER_TERMINATED_CONNECTION` + * * 22 - `LOCAL_HOST_TERMINATED_CONNECTION` + * @param {string} event - The event to listen to. + * @param {(reason: number) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `reason` The reason code reported back by the BLE stack - see Nordic's [`ble_hci.h` file](https://github.com/espruino/Espruino/blob/master/targetlibs/nrf5x_12/components/softdevice/s132/headers/ble_hci.h#L71) for more information + * @url http://www.espruino.com/Reference#l_NRF_disconnect + */ + static on(event: "disconnect", callback: (reason: number) => void): void; + + /** + * Contains updates on the security of the current Bluetooth link. + * See Nordic's `ble_gap_evt_auth_status_t` structure for more information. + * @param {string} event - The event to listen to. + * @param {(status: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `status` An object containing `{auth_status,bonded,lv4,kdist_own,kdist_peer} + * @url http://www.espruino.com/Reference#l_NRF_security + */ + static on(event: "security", callback: (status: any) => void): void; + + /** + * Called with a single byte value when Espruino is set up as a HID device and the + * computer it is connected to sends a HID report back to Espruino. This is usually + * used for handling indications such as the Caps Lock LED. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_NRF_HID + */ + static on(event: "HID", callback: () => void): void; + + /** + * Called with discovered services when discovery is finished + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_NRF_servicesDiscover + */ + static on(event: "servicesDiscover", callback: () => void): void; + + /** + * Called with discovered characteristics when discovery is finished + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_NRF_characteristicsDiscover + */ + static on(event: "characteristicsDiscover", callback: () => void): void; + + /** + * Called when an NFC field is detected + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_NRF_NFCon + */ + static on(event: "NFCon", callback: () => void): void; + + /** + * Called when an NFC field is no longer detected + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_NRF_NFCoff + */ + static on(event: "NFCoff", callback: () => void): void; + + /** + * When NFC is started with `NRF.nfcStart`, this is fired when NFC data is + * received. It doesn't get called if NFC is started with `NRF.nfcURL` or + * `NRF.nfcRaw` + * @param {string} event - The event to listen to. + * @param {(arr: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `arr` An ArrayBuffer containign the received data + * @url http://www.espruino.com/Reference#l_NRF_NFCrx + */ + static on(event: "NFCrx", callback: (arr: any) => void): void; + + /** + * If a device is connected to Espruino, disconnect from it. + * @url http://www.espruino.com/Reference#l_NRF_disconnect + */ + static disconnect(): void; + + /** + * Disable Bluetooth advertising and disconnect from any device that connected to + * Puck.js as a peripheral (this won't affect any devices that Puck.js initiated + * connections to). + * This makes Puck.js undiscoverable, so it can't be connected to. + * Use `NRF.wake()` to wake up and make Puck.js connectable again. + * @url http://www.espruino.com/Reference#l_NRF_sleep + */ + static sleep(): void; + + /** + * Enable Bluetooth advertising (this is enabled by default), which allows other + * devices to discover and connect to Puck.js. + * Use `NRF.sleep()` to disable advertising. + * @url http://www.espruino.com/Reference#l_NRF_wake + */ + static wake(): void; + + /** + * Restart the Bluetooth softdevice (if there is currently a BLE connection, it + * will queue a restart to be done when the connection closes). + * You shouldn't need to call this function in normal usage. However, Nordic's BLE + * softdevice has some settings that cannot be reset. For example there are only a + * certain number of unique UUIDs. Once these are all used the only option is to + * restart the softdevice to clear them all out. + * + * @param {any} [callback] - [optional] A function to be called while the softdevice is uninitialised. Use with caution - accessing console/bluetooth will almost certainly result in a crash. + * @url http://www.espruino.com/Reference#l_NRF_restart + */ + static restart(callback?: any): void; + + /** + * Get this device's default Bluetooth MAC address. + * For Puck.js, the last 5 characters of this (e.g. `ee:ff`) are used in the + * device's advertised Bluetooth name. + * @returns {any} MAC address - a string of the form 'aa:bb:cc:dd:ee:ff' + * @url http://www.espruino.com/Reference#l_NRF_getAddress + */ + static getAddress(): any; + + /** + * Set this device's default Bluetooth MAC address: + * ``` + * NRF.setAddress("ff:ee:dd:cc:bb:aa random"); + * ``` + * Addresses take the form: + * * `"ff:ee:dd:cc:bb:aa"` or `"ff:ee:dd:cc:bb:aa public"` for a public address + * * `"ff:ee:dd:cc:bb:aa random"` for a random static address (the default for + * Espruino) + * This may throw a `INVALID_BLE_ADDR` error if the upper two bits of the address + * don't match the address type. + * To change the address, Espruino must restart the softdevice. It will only do so + * when it is disconnected from other devices. + * + * @param {any} addr - The address to use (as a string) + * @url http://www.espruino.com/Reference#l_NRF_setAddress + */ + static setAddress(addr: any): void; + + /** + * Get the battery level in volts (the voltage that the NRF chip is running off + * of). + * This is the battery level of the device itself - it has nothing to with any + * device that might be connected. + * @returns {number} Battery level in volts + * @url http://www.espruino.com/Reference#l_NRF_getBattery + */ + static getBattery(): number; + + /** + * Change the data that Espruino advertises. + * Data can be of the form `{ UUID : data_as_byte_array }`. The UUID should be a + * [Bluetooth Service + * ID](https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx). + * For example to return battery level at 95%, do: + * ``` + * NRF.setAdvertising({ + * 0x180F : [95] // Service data 0x180F = 95 + * }); + * ``` + * Or you could report the current temperature: + * ``` + * setInterval(function() { + * NRF.setAdvertising({ + * 0x1809 : [Math.round(E.getTemperature())] + * }); + * }, 30000); + * ``` + * If you specify a value for the object key, Service Data is advertised. However + * if you specify `undefined`, the Service UUID is advertised: + * ``` + * NRF.setAdvertising({ + * 0x180D : undefined // Advertise service UUID 0x180D (HRM) + * }); + * ``` + * Service UUIDs can also be supplied in the second argument of `NRF.setServices`, + * but those go in the scan response packet. + * You can also supply the raw advertising data in an array. For example to + * advertise as an Eddystone beacon: + * ``` + * NRF.setAdvertising([0x03, // Length of Service List + * 0x03, // Param: Service List + * 0xAA, 0xFE, // Eddystone ID + * 0x13, // Length of Service Data + * 0x16, // Service Data + * 0xAA, 0xFE, // Eddystone ID + * 0x10, // Frame type: URL + * 0xF8, // Power + * 0x03, // https:// + * 'g','o','o','.','g','l','/','B','3','J','0','O','c'], + * {interval:100}); + * ``` + * (However for Eddystone we'd advise that you use the [Espruino Eddystone + * library](/Puck.js+Eddystone)) + * **Note:** When specifying data as an array, certain advertising options such as + * `discoverable` and `showName` won't have any effect. + * **Note:** The size of Bluetooth LE advertising packets is limited to 31 bytes. + * If you want to advertise more data, consider using an array for `data` (See + * below), or `NRF.setScanResponse`. + * You can even specify an array of arrays or objects, in which case each + * advertising packet will be used in turn - for instance to make your device + * advertise battery level and its name as well as both Eddystone and iBeacon : + * ``` + * NRF.setAdvertising([ + * {0x180F : [Puck.getBatteryPercentage()]}, // normal advertising, with battery % + * require("ble_ibeacon").get(...), // iBeacon + * require("ble_eddystone").get(...), // eddystone + * ], {interval:300}); + * ``` + * `options` is an object, which can contain: + * ``` + * { + * name: "Hello" // The name of the device + * showName: true/false // include full name, or nothing + * discoverable: true/false // general discoverable, or limited - default is limited + * connectable: true/false // whether device is connectable - default is true + * scannable : true/false // whether device can be scanned for scan response packets - default is true + * interval: 600 // Advertising interval in msec, between 20 and 10000 (default is 375ms) + * manufacturer: 0x0590 // IF sending manufacturer data, this is the manufacturer ID + * manufacturerData: [...] // IF sending manufacturer data, this is an array of data + * phy: "1mbps/2mbps/coded" // (NRF52840 only) use the long-range coded phy for transmission (1mbps default) + * } + * ``` + * Setting `connectable` and `scannable` to false gives the lowest power + * consumption as the BLE radio doesn't have to listen after sending advertising. + * **NOTE:** Non-`connectable` advertising can't have an advertising interval less + * than 100ms according to the BLE spec. + * So for instance to set the name of Puck.js without advertising any other data + * you can just use the command: + * ``` + * NRF.setAdvertising({},{name:"Hello"}); + * ``` + * You can also specify 'manufacturer data', which is another form of advertising + * data. We've registered the Manufacturer ID 0x0590 (as Pur3 Ltd) for use with + * *Official Espruino devices* - use it to advertise whatever data you'd like, but + * we'd recommend using JSON. + * For example by not advertising a device name you can send up to 24 bytes of JSON + * on Espruino's manufacturer ID: + * ``` + * var data = {a:1,b:2}; + * NRF.setAdvertising({},{ + * showName:false, + * manufacturer:0x0590, + * manufacturerData:JSON.stringify(data) + * }); + * ``` + * If you're using [EspruinoHub](https://github.com/espruino/EspruinoHub) then it + * will automatically decode this into the following MQTT topics: + * * `/ble/advertise/ma:c_:_a:dd:re:ss/espruino` -> `{"a":10,"b":15}` + * * `/ble/advertise/ma:c_:_a:dd:re:ss/a` -> `1` + * * `/ble/advertise/ma:c_:_a:dd:re:ss/b` -> `2` + * Note that **you only have 24 characters available for JSON**, so try to use the + * shortest field names possible and avoid floating point values that can be very + * long when converted to a String. + * + * @param {any} data - The service data to advertise as an object - see below for more info + * @param {any} [options] - [optional] Object of options + * @url http://www.espruino.com/Reference#l_NRF_setAdvertising + */ + static setAdvertising(data: any, options?: any): void; + + /** + * This is just like `NRF.setAdvertising`, except instead of advertising the data, + * it returns the packet that would be advertised as an array. + * + * @param {any} data - The data to advertise as an object + * @param {any} [options] - [optional] An object of options + * @returns {any} An array containing the advertising data + * @url http://www.espruino.com/Reference#l_NRF_getAdvertisingData + */ + static getAdvertisingData(data: any, options?: any): any; + + /** + * The raw scan response data should be supplied as an array. For example to return + * "Sample" for the device name: + * ``` + * NRF.setScanResponse([0x07, // Length of Data + * 0x09, // Param: Complete Local Name + * 'S', 'a', 'm', 'p', 'l', 'e']); + * ``` + * **Note:** `NRF.setServices(..., {advertise:[ ... ]})` writes advertised services + * into the scan response - so you can't use both `advertise` and `NRF.setServices` + * or one will overwrite the other. + * + * @param {any} data - The data to for the scan response + * @url http://www.espruino.com/Reference#l_NRF_setScanResponse + */ + static setScanResponse(data: any): void; + + /** + * Change the services and characteristics Espruino advertises. + * If you want to **change** the value of a characteristic, you need to use + * `NRF.updateServices()` instead + * To expose some information on Characteristic `ABCD` on service `BCDE` you could + * do: + * ``` + * NRF.setServices({ + * 0xBCDE : { + * 0xABCD : { + * value : "Hello", + * readable : true + * } + * } + * }); + * ``` + * Or to allow the 3 LEDs to be controlled by writing numbers 0 to 7 to a + * characteristic, you can do the following. `evt.data` is an ArrayBuffer. + * ``` + * NRF.setServices({ + * 0xBCDE : { + * 0xABCD : { + * writable : true, + * onWrite : function(evt) { + * digitalWrite([LED3,LED2,LED1], evt.data[0]); + * } + * } + * } + * }); + * ``` + * You can supply many different options: + * ``` + * NRF.setServices({ + * 0xBCDE : { + * 0xABCD : { + * value : "Hello", // optional + * maxLen : 5, // optional (otherwise is length of initial value) + * broadcast : false, // optional, default is false + * readable : true, // optional, default is false + * writable : true, // optional, default is false + * notify : true, // optional, default is false + * indicate : true, // optional, default is false + * description: "My Characteristic", // optional, default is null, + * security: { // optional - see NRF.setSecurity + * read: { // optional + * encrypted: false, // optional, default is false + * mitm: false, // optional, default is false + * lesc: false, // optional, default is false + * signed: false // optional, default is false + * }, + * write: { // optional + * encrypted: true, // optional, default is false + * mitm: false, // optional, default is false + * lesc: false, // optional, default is false + * signed: false // optional, default is false + * } + * }, + * onWrite : function(evt) { // optional + * console.log("Got ", evt.data); // an ArrayBuffer + * }, + * onWriteDesc : function(evt) { // optional - called when the 'cccd' descriptor is written + * // for example this is called when notifications are requested by the client: + * console.log("Notifications enabled = ", evt.data[0]&1); + * } + * } + * // more characteristics allowed + * } + * // more services allowed + * }); + * ``` + * **Note:** UUIDs can be integers between `0` and `0xFFFF`, strings of the form + * `"ABCD"`, or strings of the form `"ABCDABCD-ABCD-ABCD-ABCD-ABCDABCDABCD"` + * `options` can be of the form: + * ``` + * NRF.setServices(undefined, { + * hid : new Uint8Array(...), // optional, default is undefined. Enable BLE HID support + * uart : true, // optional, default is true. Enable BLE UART support + * advertise: [ '180D' ] // optional, list of service UUIDs to advertise + * ancs : true, // optional, Bangle.js-only, enable Apple ANCS support for notifications + * ams : true // optional, Bangle.js-only, enable Apple AMS support for media control + * }); + * ``` + * To enable BLE HID, you must set `hid` to an array which is the BLE report + * descriptor. The easiest way to do this is to use the `ble_hid_controls` or + * `ble_hid_keyboard` modules. + * **Note:** Just creating a service doesn't mean that the service will be + * advertised. It will only be available after a device connects. To advertise, + * specify the UUIDs you wish to advertise in the `advertise` field of the second + * `options` argument. For example this will create and advertise a heart rate + * service: + * ``` + * NRF.setServices({ + * 0x180D: { // heart_rate + * 0x2A37: { // heart_rate_measurement + * notify: true, + * value : [0x06, heartrate], + * } + * } + * }, { advertise: [ '180D' ] }); + * ``` + * You may specify 128 bit UUIDs to advertise, however you may get a `DATA_SIZE` + * exception because there is insufficient space in the Bluetooth LE advertising + * packet for the 128 bit UART UUID as well as the UUID you specified. In this case + * you can add `uart:false` after the `advertise` element to disable the UART, + * however you then be unable to connect to Puck.js's console via Bluetooth. + * If you absolutely require two or more 128 bit UUIDs then you will have to + * specify your own raw advertising data packets with `NRF.setAdvertising` + * **Note:** The services on Espruino can only be modified when there is no device + * connected to it as it requires a restart of the Bluetooth stack. **iOS devices + * will 'cache' the list of services** so apps like NRF Connect may incorrectly + * display the old services even after you have modified them. To fix this, disable + * and re-enable Bluetooth on your iOS device, or use an Android device to run NRF + * Connect. + * **Note:** Not all combinations of security configuration values are valid, the + * valid combinations are: encrypted, encrypted + mitm, lesc, signed, signed + + * mitm. See `NRF.setSecurity` for more information. + * + * @param {any} data - The service (and characteristics) to advertise + * @param {any} [options] - [optional] Object containing options + * @url http://www.espruino.com/Reference#l_NRF_setServices + */ + static setServices(data: { [key: number]: { [key: number]: { value?: string, maxLen?: number, broadcast?: boolean, readable?: boolean, writable?: boolean, notify?: boolean, indicate?: boolean, description?: string, security?: { read?: { encrypted?: boolean, mitm?: boolean, lesc?: boolean, signed?: boolean }, write?: { encrypted?: boolean, mitm?: boolean, lesc?: boolean, signed?: boolean } }, onWrite?: (evt: { data: ArrayBuffer }) => void } } }, options?: any): void; + + /** + * Update values for the services and characteristics Espruino advertises. Only + * services and characteristics previously declared using `NRF.setServices` are + * affected. + * To update the '0xABCD' characteristic in the '0xBCDE' service: + * ``` + * NRF.updateServices({ + * 0xBCDE : { + * 0xABCD : { + * value : "World" + * } + * } + * }); + * ``` + * You can also use 128 bit UUIDs, for example + * `"b7920001-3c1b-4b40-869f-3c0db9be80c6"`. + * To define a service and characteristic and then notify connected clients of a + * change to it when a button is pressed: + * ``` + * NRF.setServices({ + * 0xBCDE : { + * 0xABCD : { + * value : "Hello", + * maxLen : 20, + * notify: true + * } + * } + * }); + * setWatch(function() { + * NRF.updateServices({ + * 0xBCDE : { + * 0xABCD : { + * value : "World!", + * notify: true + * } + * } + * }); + * }, BTN, { repeat:true, edge:"rising", debounce: 50 }); + * ``` + * This only works if the characteristic was created with `notify: true` using + * `NRF.setServices`, otherwise the characteristic will be updated but no + * notification will be sent. + * Also note that `maxLen` was specified. If it wasn't then the maximum length of + * the characteristic would have been 5 - the length of `"Hello"`. + * To indicate (i.e. notify with ACK) connected clients of a change to the '0xABCD' + * characteristic in the '0xBCDE' service: + * ``` + * NRF.updateServices({ + * 0xBCDE : { + * 0xABCD : { + * value : "World", + * indicate: true + * } + * } + * }); + * ``` + * This only works if the characteristic was created with `indicate: true` using + * `NRF.setServices`, otherwise the characteristic will be updated but no + * notification will be sent. + * **Note:** See `NRF.setServices` for more information + * + * @param {any} data - The service (and characteristics) to update + * @url http://www.espruino.com/Reference#l_NRF_updateServices + */ + static updateServices(data: any): void; + + /** + * Start/stop listening for BLE advertising packets within range. Returns a + * `BluetoothDevice` for each advertising packet. **By default this is not an active + * scan, so Scan Response advertising data is not included (see below)** + * ``` + * // Start scanning + * packets=10; + * NRF.setScan(function(d) { + * packets--; + * if (packets<=0) + * NRF.setScan(); // stop scanning + * else + * console.log(d); // print packet info + * }); + * ``` + * Each `BluetoothDevice` will look a bit like: + * ``` + * BluetoothDevice { + * "id": "aa:bb:cc:dd:ee:ff", // address + * "rssi": -89, // signal strength + * "services": [ "128bit-uuid", ... ], // zero or more service UUIDs + * "data": new Uint8Array([ ... ]).buffer, // ArrayBuffer of returned data + * "serviceData" : { "0123" : [ 1 ] }, // if service data is in 'data', it's extracted here + * "manufacturer" : 0x1234, // if manufacturer data is in 'data', the 16 bit manufacturer ID is extracted here + * "manufacturerData" : new Uint8Array([...]).buffer, // if manufacturer data is in 'data', the data is extracted here as an ArrayBuffer + * "name": "DeviceName" // the advertised device name + * } + * ``` + * You can also supply a set of filters (as described in `NRF.requestDevice`) as a + * second argument, which will allow you to filter the devices you get a callback + * for. This helps to cut down on the time spent processing JavaScript code in + * areas with a lot of Bluetooth advertisements. For example to find only devices + * with the manufacturer data `0x0590` (Espruino's ID) you could do: + * ``` + * NRF.setScan(function(d) { + * console.log(d.manufacturerData); + * }, { filters: [{ manufacturerData:{0x0590:{}} }] }); + * ``` + * You can also specify `active:true` in the second argument to perform active + * scanning (this requests scan response packets) from any devices it finds. + * **Note:** Using a filter in `setScan` filters each advertising packet + * individually. As a result, if you filter based on a service UUID and a device + * advertises with multiple packets (or a scan response when `active:true`) only + * the packets matching the filter are returned. To aggregate multiple packets you + * can use `NRF.findDevices`. + * **Note:** BLE advertising packets can arrive quickly - faster than you'll be + * able to print them to the console. It's best only to print a few, or to use a + * function like `NRF.findDevices(..)` which will collate a list of available + * devices. + * **Note:** Using setScan turns the radio's receive mode on constantly. This can + * draw a *lot* of power (12mA or so), so you should use it sparingly or you can + * run your battery down quickly. + * + * @param {any} callback - The callback to call with received advertising packets, or undefined to stop + * @param {any} [options] - [optional] An object `{filters: ...}` (as would be passed to `NRF.requestDevice`) to filter devices by + * @url http://www.espruino.com/Reference#l_NRF_setScan + */ + static setScan(callback: any, options?: any): void; + + /** + * This function can be used to quickly filter through Bluetooth devices. + * For instance if you wish to scan for multiple different types of device at the + * same time then you could use `NRF.findDevices` with all the filters you're + * interested in. When scanning is finished you can then use `NRF.filterDevices` to + * pick out just the devices of interest. + * ``` + * // the two types of device we're interested in + * var filter1 = [{serviceData:{"fe95":{}}}]; + * var filter2 = [{namePrefix:"Pixl.js"}]; + * // the following filter will return both types of device + * var allFilters = filter1.concat(filter2); + * // now scan for both types of device, and filter them out afterwards + * NRF.findDevices(function(devices) { + * var devices1 = NRF.filterDevices(devices, filter1); + * var devices2 = NRF.filterDevices(devices, filter2); + * // ... + * }, {filters : allFilters}); + * ``` + * + * @param {any} devices - An array of `BluetoothDevice` objects, from `NRF.findDevices` or similar + * @param {any} filters - A list of filters (as would be passed to `NRF.requestDevice`) to filter devices by + * @returns {any} An array of `BluetoothDevice` objects that match the given filters + * @url http://www.espruino.com/Reference#l_NRF_filterDevices + */ + static filterDevices(devices: any, filters: any): any; + + /** + * Utility function to return a list of BLE devices detected in range. Behind the + * scenes, this uses `NRF.setScan(...)` and collates the results. + * ``` + * NRF.findDevices(function(devices) { + * console.log(devices); + * }, 1000); + * ``` + * prints something like: + * ``` + * [ + * BluetoothDevice { + * "id" : "e7:e0:57:ad:36:a2 random", + * "rssi": -45, + * "services": [ "4567" ], + * "serviceData" : { "0123" : [ 1 ] }, + * "manufacturer" : 1424, + * "manufacturerData" : new Uint8Array([ ... ]).buffer, + * "data": new ArrayBuffer([ ... ]).buffer, + * "name": "Puck.js 36a2" + * }, + * BluetoothDevice { + * "id": "c0:52:3f:50:42:c9 random", + * "rssi": -65, + * "data": new ArrayBuffer([ ... ]), + * "name": "Puck.js 8f57" + * } + * ] + * ``` + * For more information on the structure returned, see `NRF.setScan`. + * If you want to scan only for specific devices you can replace the timeout with + * an object of the form `{filters: ..., timeout : ..., active: bool}` using the + * filters described in `NRF.requestDevice`. For example to search for devices with + * Espruino's `manufacturerData`: + * ``` + * NRF.findDevices(function(devices) { + * ... + * }, {timeout : 2000, filters : [{ manufacturerData:{0x0590:{}} }] }); + * ``` + * You could then use + * [`BluetoothDevice.gatt.connect(...)`](/Reference#l_BluetoothRemoteGATTServer_connect) + * on the device returned to make a connection. + * You can also use [`NRF.connect(...)`](/Reference#l_NRF_connect) on just the `id` + * string returned, which may be useful if you always want to connect to a specific + * device. + * **Note:** Using findDevices turns the radio's receive mode on for 2000ms (or + * however long you specify). This can draw a *lot* of power (12mA or so), so you + * should use it sparingly or you can run your battery down quickly. + * **Note:** The 'data' field contains the data of *the last packet received*. + * There may have been more packets. To get data for each packet individually use + * `NRF.setScan` instead. + * + * @param {any} callback - The callback to call with received advertising packets (as `BluetoothDevice`), or undefined to stop + * @param {any} [options] - [optional] A time in milliseconds to scan for (defaults to 2000), Or an optional object `{filters: ..., timeout : ..., active: bool}` (as would be passed to `NRF.requestDevice`) to filter devices by + * @url http://www.espruino.com/Reference#l_NRF_findDevices + */ + static findDevices(callback: (devices: BluetoothDevice[]) => void, options?: number | { filters?: NRFFilters[], timeout?: number, active?: boolean }): void; + + /** + * Start/stop listening for RSSI values on the currently active connection (where + * This device is a peripheral and is being connected to by a 'central' device) + * ``` + * // Start scanning + * NRF.setRSSIHandler(function(rssi) { + * console.log(rssi); // prints -85 (or similar) + * }); + * // Stop Scanning + * NRF.setRSSIHandler(); + * ``` + * RSSI is the 'Received Signal Strength Indication' in dBm + * + * @param {any} callback - The callback to call with the RSSI value, or undefined to stop + * @url http://www.espruino.com/Reference#l_NRF_setRSSIHandler + */ + static setRSSIHandler(callback: any): void; + + /** + * Set the BLE radio transmit power. The default TX power is 0 dBm, and + * + * @param {number} power - Transmit power. Accepted values are -40(nRF52 only), -30(nRF51 only), -20, -16, -12, -8, -4, 0, and 4 dBm. On nRF52840 (eg Bangle.js 2) 5/6/7/8 dBm are available too. Others will give an error code. + * @url http://www.espruino.com/Reference#l_NRF_setTxPower + */ + static setTxPower(power: number): void; + + /** + * **THIS IS DEPRECATED** - please use `NRF.setConnectionInterval` for peripheral + * and `NRF.connect(addr, options)`/`BluetoothRemoteGATTServer.connect(options)` + * for central connections. + * This sets the connection parameters - these affect the transfer speed and power + * usage when the device is connected. + * * When not low power, the connection interval is between 7.5 and 20ms + * * When low power, the connection interval is between 500 and 1000ms + * When low power connection is enabled, transfers of data over Bluetooth will be + * very slow, however power usage while connected will be drastically decreased. + * This will only take effect after the connection is disconnected and + * re-established. + * + * @param {boolean} lowPower - Whether the connection is low power or not + * @url http://www.espruino.com/Reference#l_NRF_setLowPowerConnection + */ + static setLowPowerConnection(lowPower: boolean): void; + + /** + * Enables NFC and starts advertising the given URL. For example: + * ``` + * NRF.nfcURL("http://espruino.com"); + * ``` + * + * @param {any} url - The URL string to expose on NFC, or `undefined` to disable NFC + * @url http://www.espruino.com/Reference#l_NRF_nfcURL + */ + static nfcURL(url: any): void; + + /** + * Enables NFC and with an out of band 16 byte pairing key. + * For example the following will enable out of band pairing on BLE such that the + * device will pair when you tap the phone against it: + * ``` + * var bleKey = [0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, 0x99, 0x88, 0x77, 0x66, 0x55, 0x44, 0x33, 0x22, 0x11, 0x00]; + * NRF.on('security',s=>print("security",JSON.stringify(s))); + * NRF.nfcPair(bleKey); + * NRF.setSecurity({oob:bleKey, mitm:true}); + * ``` + * + * @param {any} key - 16 byte out of band key + * @url http://www.espruino.com/Reference#l_NRF_nfcPair + */ + static nfcPair(key: any): void; + + /** + * Enables NFC with a record that will launch the given android app. + * For example: + * ``` + * NRF.nfcAndroidApp("no.nordicsemi.android.nrftoolbox") + * ``` + * + * @param {any} app - The unique identifier of the given Android App + * @url http://www.espruino.com/Reference#l_NRF_nfcAndroidApp + */ + static nfcAndroidApp(app: any): void; + + /** + * Enables NFC and starts advertising with Raw data. For example: + * ``` + * NRF.nfcRaw(new Uint8Array([193, 1, 0, 0, 0, 13, 85, 3, 101, 115, 112, 114, 117, 105, 110, 111, 46, 99, 111, 109])); + * // same as NRF.nfcURL("http://espruino.com"); + * ``` + * + * @param {any} payload - The NFC NDEF message to deliver to the reader + * @url http://www.espruino.com/Reference#l_NRF_nfcRaw + */ + static nfcRaw(payload: any): void; + + /** + * **Advanced NFC Functionality.** If you just want to advertise a URL, use + * `NRF.nfcURL` instead. + * Enables NFC and starts advertising. `NFCrx` events will be fired when data is + * received. + * ``` + * NRF.nfcStart(); + * ``` + * + * @param {any} payload - Optional 7 byte UID + * @returns {any} Internal tag memory (first 10 bytes of tag data) + * @url http://www.espruino.com/Reference#l_NRF_nfcStart + */ + static nfcStart(payload: any): any; + + /** + * **Advanced NFC Functionality.** If you just want to advertise a URL, use + * `NRF.nfcURL` instead. + * Disables NFC. + * ``` + * NRF.nfcStop(); + * ``` + * + * @url http://www.espruino.com/Reference#l_NRF_nfcStop + */ + static nfcStop(): void; + + /** + * **Advanced NFC Functionality.** If you just want to advertise a URL, use + * `NRF.nfcURL` instead. + * Acknowledges the last frame and optionally transmits a response. If payload is + * an array, then a array.length byte nfc frame is sent. If payload is a int, then + * a 4bit ACK/NACK is sent. **Note:** ```nfcSend``` should always be called after + * an ```NFCrx``` event. + * ``` + * NRF.nfcSend(new Uint8Array([0x01, 0x02, ...])); + * // or + * NRF.nfcSend(0x0A); + * // or + * NRF.nfcSend(); + * ``` + * + * @param {any} payload - Optional tx data + * @url http://www.espruino.com/Reference#l_NRF_nfcSend + */ + static nfcSend(payload: any): void; + + /** + * Send a USB HID report. HID must first be enabled with `NRF.setServices({}, {hid: + * hid_report})` + * + * @param {any} data - Input report data as an array + * @param {any} callback - A callback function to be called when the data is sent + * @url http://www.espruino.com/Reference#l_NRF_sendHIDReport + */ + static sendHIDReport(data: any, callback: any): void; + + /** + * Check if Apple Notification Center Service (ANCS) is currently active on the BLE + * connection + * + * @returns {boolean} True if Apple Notification Center Service (ANCS) has been initialised and is active + * @url http://www.espruino.com/Reference#l_NRF_ancsIsActive + */ + static ancsIsActive(): boolean; + + /** + * Send an ANCS action for a specific Notification UID. Corresponds to + * posaction/negaction in the 'ANCS' event that was received + * + * @param {number} uid - The UID of the notification to respond to + * @param {boolean} positive - `true` for positive action, `false` for negative + * @url http://www.espruino.com/Reference#l_NRF_ancsAction + */ + static ancsAction(uid: number, positive: boolean): void; + + /** + * Get ANCS info for a notification event received via `E.ANCS`, e.g.: + * ``` + * E.on('ANCS', event => { + * NRF.ancsGetNotificationInfo( event.uid ).then(a=>print("Notify",E.toJS(a))); + * }); + * ``` + * Returns: + * ``` + * { + * "uid" : integer, + * "appId": string, + * "title": string, + * "subtitle": string, + * "message": string, + * "messageSize": string, + * "date": string, + * "posAction": string, + * "negAction": string + * } + * ``` + * + * @param {number} uid - The UID of the notification to get information for + * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete + * @url http://www.espruino.com/Reference#l_NRF_ancsGetNotificationInfo + */ + static ancsGetNotificationInfo(uid: number): Promise; + + /** + * Get ANCS info for an app (app id is available via `NRF.ancsGetNotificationInfo`) + * Promise returns: + * ``` + * { + * "uid" : int, + * "appId" : string, + * "title" : string, + * "subtitle" : string, + * "message" : string, + * "messageSize" : string, + * "date" : string, + * "posAction" : string, + * "negAction" : string, + * "name" : string, + * } + * ``` + * + * @param {any} id - The app ID to get information for + * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete + * @url http://www.espruino.com/Reference#l_NRF_ancsGetAppInfo + */ + static ancsGetAppInfo(id: any): Promise; + + /** + * Check if Apple Media Service (AMS) is currently active on the BLE connection + * + * @returns {boolean} True if Apple Media Service (AMS) has been initialised and is active + * @url http://www.espruino.com/Reference#l_NRF_amsIsActive + */ + static amsIsActive(): boolean; + + /** + * Get Apple Media Service (AMS) info for the current media player. "playbackinfo" + * returns a concatenation of three comma-separated values: + * - PlaybackState: a string that represents the integer value of the playback + * state: + * - PlaybackStatePaused = 0 + * - PlaybackStatePlaying = 1 + * - PlaybackStateRewinding = 2 + * - PlaybackStateFastForwarding = 3 + * - PlaybackRate: a string that represents the floating point value of the + * playback rate. + * - ElapsedTime: a string that represents the floating point value of the elapsed + * time of the current track, in seconds + * + * @param {any} id - Either 'name', 'playbackinfo' or 'volume' + * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete + * @url http://www.espruino.com/Reference#l_NRF_amsGetPlayerInfo + */ + static amsGetPlayerInfo(id: any): Promise; + + /** + * Get Apple Media Service (AMS) info for the currently-playing track + * + * @param {any} id - Either 'artist', 'album', 'title' or 'duration' + * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete + * @url http://www.espruino.com/Reference#l_NRF_amsGetTrackInfo + */ + static amsGetTrackInfo(id: any): Promise; + + /** + * Send an AMS command to an Apple Media Service device to control music playback + * Command is one of play, pause, playpause, next, prev, volup, voldown, repeat, + * shuffle, skipforward, skipback, like, dislike, bookmark + * + * @param {any} id - For example, 'play', 'pause', 'volup' or 'voldown' + * @url http://www.espruino.com/Reference#l_NRF_amsCommand + */ + static amsCommand(id: any): void; + + /** + * Search for available devices matching the given filters. Since we have no UI + * here, Espruino will pick the FIRST device it finds, or it'll call `catch`. + * `options` can have the following fields: + * * `filters` - a list of filters that a device must match before it is returned + * (see below) + * * `timeout` - the maximum time to scan for in milliseconds (scanning stops when + * a match is found. e.g. `NRF.requestDevice({ timeout:2000, filters: [ ... ] })` + * * `active` - whether to perform active scanning (requesting 'scan response' + * packets from any devices that are found). e.g. `NRF.requestDevice({ active:true, + * filters: [ ... ] })` + * * `phy` - (NRF52840 only) use the long-range coded phy (`"1mbps"` default, can + * be `"1mbps/2mbps/both/coded"`) + * * `extended` - (NRF52840 only) support receiving extended-length advertising + * packets (default=true if phy isn't `"1mbps"`) + * **NOTE:** `timeout` and `active` are not part of the Web Bluetooth standard. + * The following filter types are implemented: + * * `services` - list of services as strings (all of which must match). 128 bit + * services must be in the form '01230123-0123-0123-0123-012301230123' + * * `name` - exact device name + * * `namePrefix` - starting characters of device name + * * `id` - exact device address (`id:"e9:53:86:09:89:99 random"`) (this is + * Espruino-specific, and is not part of the Web Bluetooth spec) + * * `serviceData` - an object containing service characteristics which must all + * match (`serviceData:{"1809":{}}`). Matching of actual service data is not + * supported yet. + * * `manufacturerData` - an object containing manufacturer UUIDs which must all + * match (`manufacturerData:{0x0590:{}}`). Matching of actual manufacturer data + * is not supported yet. + * ``` + * NRF.requestDevice({ filters: [{ namePrefix: 'Puck.js' }] }).then(function(device) { ... }); + * // or + * NRF.requestDevice({ filters: [{ services: ['1823'] }] }).then(function(device) { ... }); + * // or + * NRF.requestDevice({ filters: [{ manufacturerData:{0x0590:{}} }] }).then(function(device) { ... }); + * ``` + * As a full example, to send data to another Puck.js to turn an LED on: + * ``` + * var gatt; + * NRF.requestDevice({ filters: [{ namePrefix: 'Puck.js' }] }).then(function(device) { + * return device.gatt.connect(); + * }).then(function(g) { + * gatt = g; + * return gatt.getPrimaryService("6e400001-b5a3-f393-e0a9-e50e24dcca9e"); + * }).then(function(service) { + * return service.getCharacteristic("6e400002-b5a3-f393-e0a9-e50e24dcca9e"); + * }).then(function(characteristic) { + * return characteristic.writeValue("LED1.set()\n"); + * }).then(function() { + * gatt.disconnect(); + * console.log("Done!"); + * }); + * ``` + * Or slightly more concisely, using ES6 arrow functions: + * ``` + * var gatt; + * NRF.requestDevice({ filters: [{ namePrefix: 'Puck.js' }]}).then( + * device => device.gatt.connect()).then( + * g => (gatt=g).getPrimaryService("6e400001-b5a3-f393-e0a9-e50e24dcca9e")).then( + * service => service.getCharacteristic("6e400002-b5a3-f393-e0a9-e50e24dcca9e")).then( + * characteristic => characteristic.writeValue("LED1.reset()\n")).then( + * () => { gatt.disconnect(); console.log("Done!"); } ); + * ``` + * Note that you have to keep track of the `gatt` variable so that you can + * disconnect the Bluetooth connection when you're done. + * **Note:** Using a filter in `NRF.requestDevice` filters each advertising packet + * individually. As soon as a matching advertisement is received, + * `NRF.requestDevice` resolves the promise and stops scanning. This means that if + * you filter based on a service UUID and a device advertises with multiple packets + * (or a scan response when `active:true`) only the packet matching the filter is + * returned - you may not get the device's name is that was in a separate packet. + * To aggregate multiple packets you can use `NRF.findDevices`. + * + * @param {any} options - Options used to filter the device to use + * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete + * @url http://www.espruino.com/Reference#l_NRF_requestDevice + */ + static requestDevice(options?: { filters?: NRFFilters[], timeout?: number, active?: boolean, phy?: string, extended?: boolean }): Promise; + + /** + * Connect to a BLE device by MAC address. Returns a promise, the argument of which + * is the `BluetoothRemoteGATTServer` connection. + * ``` + * NRF.connect("aa:bb:cc:dd:ee").then(function(server) { + * // ... + * }); + * ``` + * This has the same effect as calling `BluetoothDevice.gatt.connect` on a + * `BluetoothDevice` requested using `NRF.requestDevice`. It just allows you to + * specify the address directly (without having to scan). + * You can use it as follows - this would connect to another Puck device and turn + * its LED on: + * ``` + * var gatt; + * NRF.connect("aa:bb:cc:dd:ee random").then(function(g) { + * gatt = g; + * return gatt.getPrimaryService("6e400001-b5a3-f393-e0a9-e50e24dcca9e"); + * }).then(function(service) { + * return service.getCharacteristic("6e400002-b5a3-f393-e0a9-e50e24dcca9e"); + * }).then(function(characteristic) { + * return characteristic.writeValue("LED1.set()\n"); + * }).then(function() { + * gatt.disconnect(); + * console.log("Done!"); + * }); + * ``` + * **Note:** Espruino Bluetooth devices use a type of BLE address known as 'random + * static', which is different to a 'public' address. To connect to an Espruino + * device you'll need to use an address string of the form `"aa:bb:cc:dd:ee + * random"` rather than just `"aa:bb:cc:dd:ee"`. If you scan for devices with + * `NRF.findDevices`/`NRF.setScan` then addresses are already reported in the + * correct format. + * + * @param {any} mac - The MAC address to connect to + * @param {any} options - (Espruino-specific) An object of connection options (see `BluetoothRemoteGATTServer.connect` for full details) + * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete + * @url http://www.espruino.com/Reference#l_NRF_connect + */ + static connect(mac: any, options: any): Promise; + + /** + * If set to true, whenever a device bonds it will be added to the whitelist. + * When set to false, the whitelist is cleared and newly bonded devices will not be + * added to the whitelist. + * **Note:** This is remembered between `reset()`s but isn't remembered after + * power-on (you'll have to add it to `onInit()`. + * + * @param {boolean} whitelisting - Are we using a whitelist? (default false) + * @url http://www.espruino.com/Reference#l_NRF_setWhitelist + */ + static setWhitelist(whitelisting: boolean): void; + + /** + * When connected, Bluetooth LE devices communicate at a set interval. Lowering the + * interval (e.g. more packets/second) means a lower delay when sending data, higher + * bandwidth, but also more power consumption. + * By default, when connected as a peripheral Espruino automatically adjusts the + * connection interval. When connected it's as fast as possible (7.5ms) but when + * idle for over a minute it drops to 200ms. On continued activity (>1 BLE + * operation) the interval is raised to 7.5ms again. + * The options for `interval` are: + * * `undefined` / `"auto"` : (default) automatically adjust connection interval + * * `100` : set min and max connection interval to the same number (between 7.5ms + * and 4000ms) + * * `{minInterval:20, maxInterval:100}` : set min and max connection interval as a + * range + * This configuration is not remembered during a `save()` - you will have to re-set + * it via `onInit`. + * **Note:** If connecting to another device (as Central), you can use an extra + * argument to `NRF.connect` or `BluetoothRemoteGATTServer.connect` to specify a + * connection interval. + * **Note:** This overwrites any changes imposed by the deprecated + * `NRF.setLowPowerConnection` + * + * @param {any} interval - The connection interval to use (see below) + * @url http://www.espruino.com/Reference#l_NRF_setConnectionInterval + */ + static setConnectionInterval(interval: any): void; + + /** + * Sets the security options used when connecting/pairing. This applies to both + * central *and* peripheral mode. + * ``` + * NRF.setSecurity({ + * display : bool // default false, can this device display a passkey + * // - sent via the `BluetoothDevice.passkey` event + * keyboard : bool // default false, can this device enter a passkey + * // - request sent via the `BluetoothDevice.passkeyRequest` event + * bond : bool // default true, Perform bonding + * mitm : bool // default false, Man In The Middle protection + * lesc : bool // default false, LE Secure Connections + * passkey : // default "", or a 6 digit passkey to use + * oob : [0..15] // if specified, Out Of Band pairing is enabled and + * // the 16 byte pairing code supplied here is used + * encryptUart : bool // default false (unless oob or passkey specified) + * // This sets the BLE UART service such that it + * // is encrypted and can only be used from a bonded connection + * }); + * ``` + * **NOTE:** Some combinations of arguments will cause an error. For example + * supplying a passkey without `display:1` is not allowed. If `display:1` is set + * you do not require a physical display, the user just needs to know the passkey + * you supplied. + * For instance, to require pairing and to specify a passkey, use: + * ``` + * NRF.setSecurity({passkey:"123456", mitm:1, display:1}); + * ``` + * However, while most devices will request a passkey for pairing at this point it + * is still possible for a device to connect without requiring one (e.g. using the + * 'NRF Connect' app). + * To force a passkey you need to protect each characteristic you define with + * `NRF.setSecurity`. For instance the following code will *require* that the + * passkey `123456` is entered before the characteristic + * `9d020002-bf5f-1d1a-b52a-fe52091d5b12` can be read. + * ``` + * NRF.setSecurity({passkey:"123456", mitm:1, display:1}); + * NRF.setServices({ + * "9d020001-bf5f-1d1a-b52a-fe52091d5b12" : { + * "9d020002-bf5f-1d1a-b52a-fe52091d5b12" : { + * // readable always + * value : "Not Secret" + * }, + * "9d020003-bf5f-1d1a-b52a-fe52091d5b12" : { + * // readable only once bonded + * value : "Secret", + * readable : true, + * security: { + * read: { + * mitm: true, + * encrypted: true + * } + * } + * }, + * "9d020004-bf5f-1d1a-b52a-fe52091d5b12" : { + * // readable always + * // writable only once bonded + * value : "Readable", + * readable : true, + * writable : true, + * onWrite : function(evt) { + * console.log("Wrote ", evt.data); + * }, + * security: { + * write: { + * mitm: true, + * encrypted: true + * } + * } + * } + * } + * }); + * ``` + * **Note:** If `passkey` or `oob` is specified, the Nordic UART service (if + * enabled) will automatically be set to require encryption, but otherwise it is + * open. + * + * @param {any} options - An object containing security-related options (see below) + * @url http://www.espruino.com/Reference#l_NRF_setSecurity + */ + static setSecurity(options: any): void; + + /** + * Return an object with information about the security state of the current + * peripheral connection: + * ``` + * { + * connected // The connection is active (not disconnected). + * encrypted // Communication on this link is encrypted. + * mitm_protected // The encrypted communication is also protected against man-in-the-middle attacks. + * bonded // The peer is bonded with us + * connected_addr // If connected=true, the MAC address of the currently connected device + * } + * ``` + * If there is no active connection, `{connected:false}` will be returned. + * See `NRF.setSecurity` for information about negotiating a secure connection. + * @returns {any} An object + * @url http://www.espruino.com/Reference#l_NRF_getSecurityStatus + */ + static getSecurityStatus(): any; + + /** + * + * @param {boolean} forceRepair - True if we should force repairing even if there is already valid pairing info + * @returns {any} A promise + * @url http://www.espruino.com/Reference#l_NRF_startBonding + */ + static startBonding(forceRepair: boolean): any; + + +} + +/** + * This class provides functionality to recognise gestures drawn on a touchscreen. + * It is only built into Bangle.js 2. + * Usage: + * ``` + * var strokes = { + * stroke1 : Unistroke.new(new Uint8Array([x1, y1, x2, y2, x3, y3, ...])), + * stroke2 : Unistroke.new(new Uint8Array([x1, y1, x2, y2, x3, y3, ...])), + * stroke3 : Unistroke.new(new Uint8Array([x1, y1, x2, y2, x3, y3, ...])) + * }; + * var r = Unistroke.recognise(strokes,new Uint8Array([x1, y1, x2, y2, x3, y3, ...])) + * print(r); // stroke1/stroke2/stroke3 + * ``` + * @url http://www.espruino.com/Reference#Unistroke + */ +declare class Unistroke { + /** + * Create a new Unistroke based on XY coordinates + * + * @param {any} xy - An array of interleaved XY coordinates + * @returns {any} A string of data representing this unistroke + * @url http://www.espruino.com/Reference#l_Unistroke_new + */ + static new(xy: any): any; + + /** + * Recognise based on an object of named strokes, and a list of XY coordinates + * + * @param {any} strokes - An object of named strokes : `{arrow:..., circle:...}` + * @param {any} xy - An array of interleaved XY coordinates + * @returns {any} The key name of the matched stroke + * @url http://www.espruino.com/Reference#l_Unistroke_recognise + */ + static recognise(strokes: any, xy: any): any; + + +} + +/** + * Class containing AES encryption/decryption + * **Note:** This library is currently only included in builds for boards where + * there is space. For other boards there is `crypto.js` which implements SHA1 in + * JS. + * @url http://www.espruino.com/Reference#AES + */ +declare class AES { + /** + * + * @param {any} passphrase - Message to encrypt + * @param {any} key - Key to encrypt message - must be an ArrayBuffer of 128, 192, or 256 BITS + * @param {any} [options] - [optional] An object, may specify `{ iv : new Uint8Array(16), mode : 'CBC|CFB|CTR|OFB|ECB' }` + * @returns {any} Returns an ArrayBuffer + * @url http://www.espruino.com/Reference#l_AES_encrypt + */ + static encrypt(passphrase: any, key: any, options?: any): ArrayBuffer; + + /** + * + * @param {any} passphrase - Message to decrypt + * @param {any} key - Key to encrypt message - must be an ArrayBuffer of 128, 192, or 256 BITS + * @param {any} [options] - [optional] An object, may specify `{ iv : new Uint8Array(16), mode : 'CBC|CFB|CTR|OFB|ECB' }` + * @returns {any} Returns an ArrayBuffer + * @url http://www.espruino.com/Reference#l_AES_decrypt + */ + static decrypt(passphrase: any, key: any, options?: any): ArrayBuffer; + + +} + +/** + * Class containing utility functions for + * [Pixl.js](http://www.espruino.com/Pixl.js) + * @url http://www.espruino.com/Reference#Pixl + */ +declare class Pixl { + /** + * DEPRECATED - Please use `E.getBattery()` instead. + * Return an approximate battery percentage remaining based on a normal CR2032 + * battery (2.8 - 2.2v) + * @returns {number} A percentage between 0 and 100 + * @url http://www.espruino.com/Reference#l_Pixl_getBatteryPercentage + */ + static getBatteryPercentage(): number; + + /** + * Set the LCD's contrast + * + * @param {number} c - Contrast between 0 and 1 + * @url http://www.espruino.com/Reference#l_Pixl_setContrast + */ + static setContrast(c: number): void; + + /** + * This function can be used to turn Pixl.js's LCD off or on. + * * With the LCD off, Pixl.js draws around 0.1mA + * * With the LCD on, Pixl.js draws around 0.25mA + * + * @param {boolean} isOn - True if the LCD should be on, false if not + * @url http://www.espruino.com/Reference#l_Pixl_setLCDPower + */ + static setLCDPower(isOn: boolean): void; + + /** + * Writes a command directly to the ST7567 LCD controller + * + * @param {number} c + * @url http://www.espruino.com/Reference#l_Pixl_lcdw + */ + static lcdw(c: number): void; + + /** + * Display a menu on Pixl.js's screen, and set up the buttons to navigate through + * it. + * DEPRECATED: Use `E.showMenu` + * + * @param {any} menu - An object containing name->function mappings to to be used in a menu + * @returns {any} A menu object with `draw`, `move` and `select` functions + * @url http://www.espruino.com/Reference#l_Pixl_menu + */ + static menu(menu: Menu): MenuInstance; + + +} + +/** + * This class exists in order to interface Espruino with fast-moving trigger + * wheels. Trigger wheels are physical discs with evenly spaced teeth cut into + * them, and often with one or two teeth next to each other missing. A sensor sends + * a signal whenever a tooth passed by, and this allows a device to measure not + * only RPM, but absolute position. + * This class is currently in testing - it is NOT AVAILABLE on normal boards. + * @url http://www.espruino.com/Reference#Trig + */ +declare class Trig { + /** + * Get the position of the trigger wheel at the given time (from getTime) + * + * @param {number} time - The time at which to find the position + * @returns {number} The position of the trigger wheel in degrees - as a floating point number + * @url http://www.espruino.com/Reference#l_Trig_getPosAtTime + */ + static getPosAtTime(time: number): number; + + /** + * Initialise the trigger class + * + * @param {Pin} pin - The pin to use for triggering + * @param {any} options - Additional options as an object. defaults are: ```{teethTotal:60,teethMissing:2,minRPM:30,keyPosition:0}``` + * @url http://www.espruino.com/Reference#l_Trig_setup + */ + static setup(pin: Pin, options: any): void; + + /** + * Set a trigger for a certain point in the cycle + * + * @param {number} num - The trigger number (0..7) + * @param {number} pos - The position (in degrees) to fire the trigger at + * @param {any} pins - An array of pins to pulse (max 4) + * @param {number} pulseLength - The time (in msec) to pulse for + * @url http://www.espruino.com/Reference#l_Trig_setTrigger + */ + static setTrigger(num: number, pos: number, pins: any, pulseLength: number): void; + + /** + * Disable a trigger + * + * @param {number} num - The trigger number (0..7) + * @url http://www.espruino.com/Reference#l_Trig_killTrigger + */ + static killTrigger(num: number): void; + + /** + * Get the current state of a trigger + * + * @param {number} num - The trigger number (0..7) + * @returns {any} A structure containing all information about the trigger + * @url http://www.espruino.com/Reference#l_Trig_getTrigger + */ + static getTrigger(num: number): any; + + /** + * Get the RPM of the trigger wheel + * @returns {number} The current RPM of the trigger wheel + * @url http://www.espruino.com/Reference#l_Trig_getRPM + */ + static getRPM(): number; + + /** + * Get the current error flags from the trigger wheel - and zero them + * @returns {number} The error flags + * @url http://www.espruino.com/Reference#l_Trig_getErrors + */ + static getErrors(): number; + + /** + * Get the current error flags from the trigger wheel - and zero them + * @returns {any} An array of error strings + * @url http://www.espruino.com/Reference#l_Trig_getErrorArray + */ + static getErrorArray(): any; + + +} + +/** + * This class helps to convert URLs into Objects of information ready for + * http.request/get + * @url http://www.espruino.com/Reference#url + */ +declare class url { + /** + * A utility function to split a URL into parts + * This is useful in web servers for instance when handling a request. + * For instance `url.parse("/a?b=c&d=e",true)` returns + * `{"method":"GET","host":"","path":"/a?b=c&d=e","pathname":"/a","search":"?b=c&d=e","port":80,"query":{"b":"c","d":"e"}}` + * + * @param {any} urlStr - A URL to be parsed + * @param {boolean} parseQuery - Whether to parse the query string into an object not (default = false) + * @returns {any} An object containing options for ```http.request``` or ```http.get```. Contains `method`, `host`, `path`, `pathname`, `search`, `port` and `query` + * @url http://www.espruino.com/Reference#l_url_parse + */ + static parse(urlStr: any, parseQuery: boolean): any; + + +} + +/** + * The socket server created by `require('net').createServer` + * @url http://www.espruino.com/Reference#Server + */ +declare class Server { + + + /** + * Start listening for new connections on the given port + * + * @param {number} port - The port to listen on + * @returns {any} The HTTP server instance that 'listen' was called on + * @url http://www.espruino.com/Reference#l_Server_listen + */ + listen(port: number): any; + + /** + * Stop listening for new connections + * @url http://www.espruino.com/Reference#l_Server_close + */ + close(): void; +} + +/** + * An actual socket connection - allowing transmit/receive of TCP data + * @url http://www.espruino.com/Reference#Socket + */ +declare class Socket { + /** + * The 'data' event is called when data is received. If a handler is defined with + * `X.on('data', function(data) { ... })` then it will be called, otherwise data + * will be stored in an internal buffer, where it can be retrieved with `X.read()` + * @param {string} event - The event to listen to. + * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `data` A string containing one or more characters of received data + * @url http://www.espruino.com/Reference#l_Socket_data + */ + static on(event: "data", callback: (data: any) => void): void; + + /** + * Called when the connection closes. + * @param {string} event - The event to listen to. + * @param {(had_error: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `had_error` A boolean indicating whether the connection had an error (use an error event handler to get error details). + * @url http://www.espruino.com/Reference#l_Socket_close + */ + static on(event: "close", callback: (had_error: any) => void): void; + + /** + * There was an error on this socket and it is closing (or wasn't opened in the + * first place). If a "connected" event was issued on this socket then the error + * event is always followed by a close event. The error codes are: + * * -1: socket closed (this is not really an error and will not cause an error + * callback) + * * -2: out of memory (typically while allocating a buffer to hold data) + * * -3: timeout + * * -4: no route + * * -5: busy + * * -6: not found (DNS resolution) + * * -7: max sockets (... exceeded) + * * -8: unsent data (some data could not be sent) + * * -9: connection reset (or refused) + * * -10: unknown error + * * -11: no connection + * * -12: bad argument + * * -13: SSL handshake failed + * * -14: invalid SSL data + * @param {string} event - The event to listen to. + * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `details` An error object with an error code (a negative integer) and a message. + * @url http://www.espruino.com/Reference#l_Socket_error + */ + static on(event: "error", callback: (details: any) => void): void; + + /** + * An event that is fired when the buffer is empty and it can accept more data to + * send. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_Socket_drain + */ + static on(event: "drain", callback: () => void): void; + + /** + * Return how many bytes are available to read. If there is already a listener for + * data, this will always return 0. + * @returns {number} How many bytes are available + * @url http://www.espruino.com/Reference#l_Socket_available + */ + available(): number; + + /** + * Return a string containing characters that have been received + * + * @param {number} chars - The number of characters to read, or undefined/0 for all available + * @returns {any} A string containing the required bytes. + * @url http://www.espruino.com/Reference#l_Socket_read + */ + read(chars: number): any; + + /** + * Pipe this to a stream (an object with a 'write' method) + * + * @param {any} destination - The destination file/stream that will receive content from the source. + * @param {any} [options] + * [optional] An object `{ chunkSize : int=32, end : bool=true, complete : function }` + * chunkSize : The amount of data to pipe from source to destination at a time + * complete : a function to call when the pipe activity is complete + * end : call the 'end' function on the destination when the source is finished + * @url http://www.espruino.com/Reference#l_Socket_pipe + */ + pipe(destination: any, options?: any): void; + + /** + * This function writes the `data` argument as a string. Data that is passed in + * (including arrays) will be converted to a string with the normal JavaScript + * `toString` method. + * If you wish to send binary data then you need to convert that data directly to a + * String. This can be done with `String.fromCharCode`, however it's often easier + * and faster to use the Espruino-specific `E.toString`, which will read its + * arguments as an array of bytes and convert that to a String: + * ``` + * socket.write(E.toString([0,1,2,3,4,5])); + * ``` + * If you need to send something other than bytes, you can use 'Typed Arrays', or + * even `DataView`: + * ``` + * var d = new DataView(new ArrayBuffer(8)); // 8 byte array buffer + * d.setFloat32(0, 765.3532564); // write float at bytes 0-3 + * d.setInt8(4, 42); // write int8 at byte 4 + * socket.write(E.toString(d.buffer)) + * ``` + * + * @param {any} data - A string containing data to send + * @returns {boolean} For node.js compatibility, returns the boolean false. When the send buffer is empty, a `drain` event will be sent + * @url http://www.espruino.com/Reference#l_Socket_write + */ + write(data: any): boolean; + + /** + * Close this socket - optional data to append as an argument. + * See `Socket.write` for more information about the data argument + * + * @param {any} data - A string containing data to send + * @url http://www.espruino.com/Reference#l_Socket_end + */ + end(data: any): void; +} + +/** + * An actual socket connection - allowing transmit/receive of TCP data + * @url http://www.espruino.com/Reference#dgramSocket + */ +declare class dgramSocket { + /** + * The 'message' event is called when a datagram message is received. If a handler + * is defined with `X.on('message', function(msg) { ... })` then it will be called` + * @param {string} event - The event to listen to. + * @param {(msg: any, rinfo: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `msg` A string containing the received message + * * `rinfo` Sender address,port containing information + * @url http://www.espruino.com/Reference#l_dgramSocket_message + */ + static on(event: "message", callback: (msg: any, rinfo: any) => void): void; + + /** + * Called when the connection closes. + * @param {string} event - The event to listen to. + * @param {(had_error: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `had_error` A boolean indicating whether the connection had an error (use an error event handler to get error details). + * @url http://www.espruino.com/Reference#l_dgramSocket_close + */ + static on(event: "close", callback: (had_error: any) => void): void; + + /** + * + * @param {any} buffer - A string containing message to send + * @param {any} offset - Offset in the passed string where the message starts [optional] + * @param {any} length - Number of bytes in the message [optional] + * @param {any} args - Destination port number, Destination IP address string + * @url http://www.espruino.com/Reference#l_dgramSocket_send + */ + send(buffer: any, offset: any, length: any, ...args: any[]): void; + + /** + * + * @param {number} port - The port to bind at + * @param {any} callback - A function(res) that will be called when the socket is bound. You can then call `res.on('message', function(message, info) { ... })` and `res.on('close', function() { ... })` to deal with the response. + * @returns {any} The dgramSocket instance that 'bind' was called on + * @url http://www.espruino.com/Reference#l_dgramSocket_bind + */ + bind(port: number, callback: any): any; + + /** + * Close the socket + * @url http://www.espruino.com/Reference#l_dgramSocket_close + */ + close(): void; + + /** + * + * @param {any} group - A string containing the group ip to join + * @param {any} ip - A string containing the ip to join with + * @url http://www.espruino.com/Reference#l_dgramSocket_addMembership + */ + addMembership(group: any, ip: any): void; +} + +/** + * The HTTP server created by `require('http').createServer` + * @url http://www.espruino.com/Reference#httpSrv + */ +declare class httpSrv { + + + /** + * Start listening for new HTTP connections on the given port + * + * @param {number} port - The port to listen on + * @returns {any} The HTTP server instance that 'listen' was called on + * @url http://www.espruino.com/Reference#l_httpSrv_listen + */ + listen(port: number): any; + + /** + * Stop listening for new HTTP connections + * @url http://www.espruino.com/Reference#l_httpSrv_close + */ + close(): void; +} + +/** + * The HTTP server request + * @url http://www.espruino.com/Reference#httpSRq + */ +declare class httpSRq { + /** + * The 'data' event is called when data is received. If a handler is defined with + * `X.on('data', function(data) { ... })` then it will be called, otherwise data + * will be stored in an internal buffer, where it can be retrieved with `X.read()` + * @param {string} event - The event to listen to. + * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `data` A string containing one or more characters of received data + * @url http://www.espruino.com/Reference#l_httpSRq_data + */ + static on(event: "data", callback: (data: any) => void): void; + + /** + * Called when the connection closes. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_httpSRq_close + */ + static on(event: "close", callback: () => void): void; + + /** + * The headers to sent to the server with this HTTP request. + * @returns {any} An object mapping header name to value + * @url http://www.espruino.com/Reference#l_httpSRq_headers + */ + headers: any; + + /** + * The HTTP method used with this request. Often `"GET"`. + * @returns {any} A string + * @url http://www.espruino.com/Reference#l_httpSRq_method + */ + method: any; + + /** + * The URL requested in this HTTP request, for instance: + * * `"/"` - the main page + * * `"/favicon.ico"` - the web page's icon + * @returns {any} A string representing the URL + * @url http://www.espruino.com/Reference#l_httpSRq_url + */ + url: any; + + /** + * Return how many bytes are available to read. If there is already a listener for + * data, this will always return 0. + * @returns {number} How many bytes are available + * @url http://www.espruino.com/Reference#l_httpSRq_available + */ + available(): number; + + /** + * Return a string containing characters that have been received + * + * @param {number} chars - The number of characters to read, or undefined/0 for all available + * @returns {any} A string containing the required bytes. + * @url http://www.espruino.com/Reference#l_httpSRq_read + */ + read(chars: number): any; + + /** + * Pipe this to a stream (an object with a 'write' method) + * + * @param {any} destination - The destination file/stream that will receive content from the source. + * @param {any} [options] + * [optional] An object `{ chunkSize : int=32, end : bool=true, complete : function }` + * chunkSize : The amount of data to pipe from source to destination at a time + * complete : a function to call when the pipe activity is complete + * end : call the 'end' function on the destination when the source is finished + * @url http://www.espruino.com/Reference#l_httpSRq_pipe + */ + pipe(destination: any, options?: any): void; +} + +/** + * The HTTP server response + * @url http://www.espruino.com/Reference#httpSRs + */ +declare class httpSRs { + /** + * An event that is fired when the buffer is empty and it can accept more data to + * send. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_httpSRs_drain + */ + static on(event: "drain", callback: () => void): void; + + /** + * Called when the connection closes. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_httpSRs_close + */ + static on(event: "close", callback: () => void): void; + + /** + * The headers to send back along with the HTTP response. + * The default contents are: + * ``` + * { + * "Connection": "close" + * } + * ``` + * @returns {any} An object mapping header name to value + * @url http://www.espruino.com/Reference#l_httpSRs_headers + */ + headers: any; + + /** + * This function writes the `data` argument as a string. Data that is passed in + * (including arrays) will be converted to a string with the normal JavaScript + * `toString` method. For more information about sending binary data see + * `Socket.write` + * + * @param {any} data - A string containing data to send + * @returns {boolean} For node.js compatibility, returns the boolean false. When the send buffer is empty, a `drain` event will be sent + * @url http://www.espruino.com/Reference#l_httpSRs_write + */ + write(data: any): boolean; + + /** + * See `Socket.write` for more information about the data argument + * + * @param {any} data - A string containing data to send + * @url http://www.espruino.com/Reference#l_httpSRs_end + */ + end(data: any): void; + + /** + * Send the given status code and headers. If not explicitly called this will be + * done automatically the first time data is written to the response. + * This cannot be called twice, or after data has already been sent in the + * response. + * + * @param {number} statusCode - The HTTP status code + * @param {any} headers - An object containing the headers + * @url http://www.espruino.com/Reference#l_httpSRs_writeHead + */ + writeHead(statusCode: number, headers: any): void; + + /** + * Set a value to send in the header of this HTTP response. This updates the + * `httpSRs.headers` property. + * Any headers supplied to `writeHead` will overwrite any headers with the same + * name. + * + * @param {any} name - The name of the header as a String + * @param {any} value - The value of the header as a String + * @url http://www.espruino.com/Reference#l_httpSRs_setHeader + */ + setHeader(name: any, value: any): void; +} + +/** + * The HTTP client request, returned by `http.request()` and `http.get()`. + * @url http://www.espruino.com/Reference#httpCRq + */ +declare class httpCRq { + /** + * An event that is fired when the buffer is empty and it can accept more data to + * send. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_httpCRq_drain + */ + static on(event: "drain", callback: () => void): void; + + /** + * An event that is fired if there is an error making the request and the response + * callback has not been invoked. In this case the error event concludes the + * request attempt. The error event function receives an error object as parameter + * with a `code` field and a `message` field. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_httpCRq_error + */ + static on(event: "error", callback: () => void): void; + + /** + * This function writes the `data` argument as a string. Data that is passed in + * (including arrays) will be converted to a string with the normal JavaScript + * `toString` method. For more information about sending binary data see + * `Socket.write` + * + * @param {any} data - A string containing data to send + * @returns {boolean} For node.js compatibility, returns the boolean false. When the send buffer is empty, a `drain` event will be sent + * @url http://www.espruino.com/Reference#l_httpCRq_write + */ + write(data: any): boolean; + + /** + * Finish this HTTP request - optional data to append as an argument + * See `Socket.write` for more information about the data argument + * + * @param {any} data - A string containing data to send + * @url http://www.espruino.com/Reference#l_httpCRq_end + */ + end(data: any): void; +} + +/** + * The HTTP client response, passed to the callback of `http.request()` an + * `http.get()`. + * @url http://www.espruino.com/Reference#httpCRs + */ +declare class httpCRs { + /** + * The 'data' event is called when data is received. If a handler is defined with + * `X.on('data', function(data) { ... })` then it will be called, otherwise data + * will be stored in an internal buffer, where it can be retrieved with `X.read()` + * @param {string} event - The event to listen to. + * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `data` A string containing one or more characters of received data + * @url http://www.espruino.com/Reference#l_httpCRs_data + */ + static on(event: "data", callback: (data: any) => void): void; + + /** + * Called when the connection closes with one `hadError` boolean parameter, which + * indicates whether an error occurred. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_httpCRs_close + */ + static on(event: "close", callback: () => void): void; + + /** + * An event that is fired if there is an error receiving the response. The error + * event function receives an error object as parameter with a `code` field and a + * `message` field. After the error event the close even will also be triggered to + * conclude the HTTP request/response. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_httpCRs_error + */ + static on(event: "error", callback: () => void): void; + + /** + * The headers received along with the HTTP response + * @returns {any} An object mapping header name to value + * @url http://www.espruino.com/Reference#l_httpCRs_headers + */ + headers: any; + + /** + * The HTTP response's status code - usually `"200"` if all went well + * @returns {any} The status code as a String + * @url http://www.espruino.com/Reference#l_httpCRs_statusCode + */ + statusCode: any; + + /** + * The HTTP response's status message - Usually `"OK"` if all went well + * @returns {any} An String Status Message + * @url http://www.espruino.com/Reference#l_httpCRs_statusMessage + */ + statusMessage: any; + + /** + * The HTTP version reported back by the server - usually `"1.1"` + * @returns {any} Th + * @url http://www.espruino.com/Reference#l_httpCRs_httpVersion + */ + httpVersion: any; + + /** + * Return how many bytes are available to read. If there is a 'data' event handler, + * this will always return 0. + * @returns {number} How many bytes are available + * @url http://www.espruino.com/Reference#l_httpCRs_available + */ + available(): number; + + /** + * Return a string containing characters that have been received + * + * @param {number} chars - The number of characters to read, or undefined/0 for all available + * @returns {any} A string containing the required bytes. + * @url http://www.espruino.com/Reference#l_httpCRs_read + */ + read(chars: number): any; + + /** + * Pipe this to a stream (an object with a 'write' method) + * + * @param {any} destination - The destination file/stream that will receive content from the source. + * @param {any} [options] + * [optional] An object `{ chunkSize : int=32, end : bool=true, complete : function }` + * chunkSize : The amount of data to pipe from source to destination at a time + * complete : a function to call when the pipe activity is complete + * end : call the 'end' function on the destination when the source is finished + * @url http://www.espruino.com/Reference#l_httpCRs_pipe + */ + pipe(destination: any, options?: any): void; +} + +/** + * An instantiation of an Ethernet network adaptor + * @url http://www.espruino.com/Reference#Ethernet + */ +declare class Ethernet { + + + /** + * Get the current IP address, subnet, gateway and mac address. + * + * @param {any} [options] - [optional] An `callback(err, ipinfo)` function to be called back with the IP information. + * @returns {any} + * @url http://www.espruino.com/Reference#l_Ethernet_getIP + */ + getIP(options?: any): any; + + /** + * Set the current IP address or get an IP from DHCP (if no options object is + * specified) + * If 'mac' is specified as an option, it must be a string of the form + * `"00:01:02:03:04:05"` The default mac is 00:08:DC:01:02:03. + * + * @param {any} options - Object containing IP address options `{ ip : '1.2.3.4', subnet : '...', gateway: '...', dns:'...', mac:':::::' }`, or do not supply an object in order to force DHCP. + * @param {any} [callback] - [optional] An `callback(err)` function to invoke when ip is set. `err==null` on success, or a string on failure. + * @returns {boolean} True on success + * @url http://www.espruino.com/Reference#l_Ethernet_setIP + */ + setIP(options: any, callback?: any): boolean; + + /** + * Set hostname used during the DHCP request. Minimum 8 and maximum 12 characters, + * best set before calling `eth.setIP()`. Default is WIZnet010203, 010203 is the + * default nic as part of the mac. + * + * @param {any} hostname - hostname as string + * @param {any} [callback] - [optional] An `callback(err)` function to be called back with null or error text. + * @returns {boolean} True on success + * @url http://www.espruino.com/Reference#l_Ethernet_setHostname + */ + setHostname(hostname: any, callback?: any): boolean; + + /** + * Returns the hostname + * + * @param {any} [callback] - [optional] An `callback(err,hostname)` function to be called back with the status information. + * @returns {any} + * @url http://www.espruino.com/Reference#l_Ethernet_getHostname + */ + getHostname(callback?: any): any; + + /** + * Get the current status of the ethernet device + * + * @param {any} [options] - [optional] An `callback(err, status)` function to be called back with the status information. + * @returns {any} + * @url http://www.espruino.com/Reference#l_Ethernet_getStatus + */ + getStatus(options?: any): any; +} + +/** + * An instantiation of a WiFi network adaptor + * @url http://www.espruino.com/Reference#WLAN + */ +declare class WLAN { + + + /** + * Connect to a wireless network + * + * @param {any} ap - Access point name + * @param {any} key - WPA2 key (or undefined for unsecured connection) + * @param {any} callback - Function to call back with connection status. It has one argument which is one of 'connect'/'disconnect'/'dhcp' + * @returns {boolean} True if connection succeeded, false if it didn't. + * @url http://www.espruino.com/Reference#l_WLAN_connect + */ + connect(ap: any, key: any, callback: any): boolean; + + /** + * Completely uninitialise and power down the CC3000. After this you'll have to use + * ```require("CC3000").connect()``` again. + * @url http://www.espruino.com/Reference#l_WLAN_disconnect + */ + disconnect(): void; + + /** + * Completely uninitialise and power down the CC3000, then reconnect to the old + * access point. + * @url http://www.espruino.com/Reference#l_WLAN_reconnect + */ + reconnect(): void; + + /** + * Get the current IP address + * @returns {any} + * @url http://www.espruino.com/Reference#l_WLAN_getIP + */ + getIP(): any; + + /** + * Set the current IP address for get an IP from DHCP (if no options object is + * specified). + * **Note:** Changes are written to non-volatile memory, but will only take effect + * after calling `wlan.reconnect()` + * + * @param {any} options - Object containing IP address options `{ ip : '1,2,3,4', subnet, gateway, dns }`, or do not supply an object in otder to force DHCP. + * @returns {boolean} True on success + * @url http://www.espruino.com/Reference#l_WLAN_setIP + */ + setIP(options: any): boolean; +} + /** * Class containing [micro:bit's](https://www.espruino.com/MicroBit) utility * functions. @@ -373,296 +2883,79 @@ declare class Microbit { static record(samplesPerSecond: any, callback: any, samples?: any): void; -} - -interface MathConstructor { - /** - * @returns {number} The value of E - 2.718281828459045 - * @url http://www.espruino.com/Reference#l_Math_E - */ - E: number; - - /** - * @returns {number} The value of PI - 3.141592653589793 - * @url http://www.espruino.com/Reference#l_Math_PI - */ - PI: number; - - /** - * @returns {number} The natural logarithm of 2 - 0.6931471805599453 - * @url http://www.espruino.com/Reference#l_Math_LN2 - */ - LN2: number; - - /** - * @returns {number} The natural logarithm of 10 - 2.302585092994046 - * @url http://www.espruino.com/Reference#l_Math_LN10 - */ - LN10: number; - - /** - * @returns {number} The base 2 logarithm of e - 1.4426950408889634 - * @url http://www.espruino.com/Reference#l_Math_LOG2E - */ - LOG2E: number; - - /** - * @returns {number} The base 10 logarithm of e - 0.4342944819032518 - * @url http://www.espruino.com/Reference#l_Math_LOG10E - */ - LOG10E: number; - - /** - * @returns {number} The square root of 2 - 1.4142135623730951 - * @url http://www.espruino.com/Reference#l_Math_SQRT2 - */ - SQRT2: number; - - /** - * @returns {number} The square root of 1/2 - 0.7071067811865476 - * @url http://www.espruino.com/Reference#l_Math_SQRT1_2 - */ - SQRT1_2: number; - - /** - * - * @param {number} x - A floating point value - * @returns {number} The absolute value of x (eg, ```Math.abs(2)==2```, but also ```Math.abs(-2)==2```) - * @url http://www.espruino.com/Reference#l_Math_abs - */ - abs(x: number): number; - - /** - * - * @param {number} x - The value to get the arc cosine of - * @returns {number} The arc cosine of x, between 0 and PI - * @url http://www.espruino.com/Reference#l_Math_acos - */ - acos(x: number): number; - - /** - * - * @param {number} x - The value to get the arc sine of - * @returns {number} The arc sine of x, between -PI/2 and PI/2 - * @url http://www.espruino.com/Reference#l_Math_asin - */ - asin(x: number): number; - - /** - * - * @param {number} x - The value to get the arc tangent of - * @returns {number} The arc tangent of x, between -PI/2 and PI/2 - * @url http://www.espruino.com/Reference#l_Math_atan - */ - atan(x: number): number; - - /** - * - * @param {number} y - The Y-part of the angle to get the arc tangent of - * @param {number} x - The X-part of the angle to get the arc tangent of - * @returns {number} The arctangent of Y/X, between -PI and PI - * @url http://www.espruino.com/Reference#l_Math_atan2 - */ - atan2(y: number, x: number): number; - - /** - * - * @param {number} theta - The angle to get the cosine of - * @returns {number} The cosine of theta - * @url http://www.espruino.com/Reference#l_Math_cos - */ - cos(theta: number): number; - - /** - * - * @param {number} x - The value to raise to the power - * @param {number} y - The power x should be raised to - * @returns {number} x raised to the power y (x^y) - * @url http://www.espruino.com/Reference#l_Math_pow - */ - pow(x: number, y: number): number; - - /** - * @returns {number} A random number between 0 and 1 - * @url http://www.espruino.com/Reference#l_Math_random - */ - random(): number; - - /** - * - * @param {number} x - The value to round - * @returns {any} x, rounded to the nearest integer - * @url http://www.espruino.com/Reference#l_Math_round - */ - round(x: number): any; - - /** - * - * @param {number} theta - The angle to get the sine of - * @returns {number} The sine of theta - * @url http://www.espruino.com/Reference#l_Math_sin - */ - sin(theta: number): number; - - /** - * - * @param {number} theta - The angle to get the tangent of - * @returns {number} The tangent of theta - * @url http://www.espruino.com/Reference#l_Math_tan - */ - tan(theta: number): number; - - /** - * - * @param {number} x - The value to take the square root of - * @returns {number} The square root of x - * @url http://www.espruino.com/Reference#l_Math_sqrt - */ - sqrt(x: number): number; - - /** - * - * @param {number} x - The value to round up - * @returns {number} x, rounded upwards to the nearest integer - * @url http://www.espruino.com/Reference#l_Math_ceil - */ - ceil(x: number): number; - - /** - * - * @param {number} x - The value to round down - * @returns {number} x, rounded downwards to the nearest integer - * @url http://www.espruino.com/Reference#l_Math_floor - */ - floor(x: number): number; - - /** - * - * @param {number} x - The value raise E to the power of - * @returns {number} E^x - * @url http://www.espruino.com/Reference#l_Math_exp - */ - exp(x: number): number; - - /** - * - * @param {number} x - The value to take the logarithm (base E) root of - * @returns {number} The log (base E) of x - * @url http://www.espruino.com/Reference#l_Math_log - */ - log(x: number): number; - - /** - * DEPRECATED - Please use `E.clip()` instead. Clip a number to be between min and - * max (inclusive) - * - * @param {number} x - A floating point value to clip - * @param {number} min - The smallest the value should be - * @param {number} max - The largest the value should be - * @returns {number} The value of x, clipped so as not to be below min or above max. - * @url http://www.espruino.com/Reference#l_Math_clip - */ - clip(x: number, min: number, max: number): number; - - /** - * DEPRECATED - This is not part of standard JavaScript libraries - * Wrap a number around if it is less than 0 or greater than or equal to max. For - * instance you might do: ```Math.wrap(angleInDegrees, 360)``` - * - * @param {number} x - A floating point value to wrap - * @param {number} max - The largest the value should be - * @returns {number} The value of x, wrapped so as not to be below min or above max. - * @url http://www.espruino.com/Reference#l_Math_wrap - */ - wrap(x: number, max: number): number; - - /** - * Find the minimum of a series of numbers - * - * @param {any} args - Floating point values to clip - * @returns {number} The minimum of the supplied values - * @url http://www.espruino.com/Reference#l_Math_min - */ - min(...args: any[]): number; - - /** - * Find the maximum of a series of numbers - * - * @param {any} args - Floating point values to clip - * @returns {number} The maximum of the supplied values - * @url http://www.espruino.com/Reference#l_Math_max - */ - max(...args: any[]): number; -} - -interface Math { - } /** - * This is a standard JavaScript class that contains useful Maths routines - * @url http://www.espruino.com/Reference#Math + * This is the File object - it allows you to stream data to and from files (As + * opposed to the `require('fs').readFile(..)` style functions that read an entire + * file). + * To create a File object, you must type ```var fd = + * E.openFile('filepath','mode')``` - see [E.openFile](#l_E_openFile) for more + * information. + * **Note:** If you want to remove an SD card after you have started using it, you + * *must* call `E.unmountSD()` or you may cause damage to the card. + * @url http://www.espruino.com/Reference#File */ -declare const Math: MathConstructor - -/** - * Class containing an instance of TFMicroInterpreter - * @url http://www.espruino.com/Reference#TFMicroInterpreter - */ -declare class TFMicroInterpreter { +declare class File { /** - * @returns {any} An arraybuffer referencing the input data - * @url http://www.espruino.com/Reference#l_TFMicroInterpreter_getInput + * Close an open file. + * @url http://www.espruino.com/Reference#l_File_close */ - getInput(): ArrayBufferView; + close(): void; /** - * @returns {any} An arraybuffer referencing the output data - * @url http://www.espruino.com/Reference#l_TFMicroInterpreter_getOutput - */ - getOutput(): ArrayBufferView; - - /** - * @url http://www.espruino.com/Reference#l_TFMicroInterpreter_invoke - */ - invoke(): void; -} - -/** - * Class containing utility functions for accessing IO on the hexagonal badge - * @url http://www.espruino.com/Reference#Badge - */ -declare class Badge { - /** - * Capacitive sense - the higher the capacitance, the higher the number returned. - * Supply a corner number between 1 and 6, and an integer value will be returned - * that is proportional to the capacitance + * Write data to a file. + * **Note:** By default this function flushes all changes to the SD card, which + * makes it slow (but also safe!). You can use `E.setFlags({unsyncFiles:1})` to + * disable this behaviour and really speed up writes - but then you must be sure to + * close all files you are writing before power is lost or you will cause damage to + * your SD card's filesystem. * - * @param {number} corner - The corner to use - * @returns {number} Capacitive sense counter - * @url http://www.espruino.com/Reference#l_Badge_capSense + * @param {any} buffer - A string containing the bytes to write + * @returns {number} the number of bytes written + * @url http://www.espruino.com/Reference#l_File_write */ - static capSense(corner: number): number; + write(buffer: any): number; /** - * Return an approximate battery percentage remaining based on a normal CR2032 - * battery (2.8 - 2.2v) - * @returns {number} A percentage between 0 and 100 - * @url http://www.espruino.com/Reference#l_Badge_getBatteryPercentage - */ - static getBatteryPercentage(): number; - - /** - * Set the LCD's contrast + * Read data in a file in byte size chunks * - * @param {number} c - Contrast between 0 and 1 - * @url http://www.espruino.com/Reference#l_Badge_setContrast + * @param {number} length - is an integer specifying the number of bytes to read. + * @returns {any} A string containing the characters that were read + * @url http://www.espruino.com/Reference#l_File_read */ - static setContrast(c: number): void; + read(length: number): any; + /** + * Skip the specified number of bytes forward in the file + * + * @param {number} nBytes - is a positive integer specifying the number of bytes to skip forwards. + * @url http://www.espruino.com/Reference#l_File_skip + */ + skip(nBytes: number): void; + /** + * Seek to a certain position in the file + * + * @param {number} nBytes - is an integer specifying the number of bytes to skip forwards. + * @url http://www.espruino.com/Reference#l_File_seek + */ + seek(nBytes: number): void; + + /** + * Pipe this file to a stream (an object with a 'write' method) + * + * @param {any} destination - The destination file/stream that will receive content from the source. + * @param {any} [options] + * [optional] An object `{ chunkSize : int=32, end : bool=true, complete : function }` + * chunkSize : The amount of data to pipe from source to destination at a time + * complete : a function to call when the pipe activity is complete + * end : call the 'end' function on the destination when the source is finished + * @url http://www.espruino.com/Reference#l_File_pipe + */ + pipe(destination: any, options?: any): void; } /** @@ -897,11 +3190,11 @@ declare class Puck { * `Puck.IR(pulseTimes, led_anode)` (on 2v05 and above). * * @param {any} data - An array of pulse lengths, in milliseconds - * @param {Pin} cathode - (optional) pin to use for IR LED cathode - if not defined, the built-in IR LED is used - * @param {Pin} anode - (optional) pin to use for IR LED anode - if not defined, the built-in IR LED is used + * @param {Pin} [cathode] - [optional] pin to use for IR LED cathode - if not defined, the built-in IR LED is used + * @param {Pin} [anode] - [optional] pin to use for IR LED anode - if not defined, the built-in IR LED is used * @url http://www.espruino.com/Reference#l_Puck_IR */ - static IR(data: any, cathode: Pin, anode: Pin): void; + static IR(data: any, cathode?: Pin, anode?: Pin): void; /** * Capacitive sense - the higher the capacitance, the higher the number returned. @@ -957,163 +3250,1076 @@ declare class Puck { } /** - * This is the File object - it allows you to stream data to and from files (As - * opposed to the `require('fs').readFile(..)` style functions that read an entire - * file). - * To create a File object, you must type ```var fd = - * E.openFile('filepath','mode')``` - see [E.openFile](#l_E_openFile) for more - * information. - * **Note:** If you want to remove an SD card after you have started using it, you - * *must* call `E.unmountSD()` or you may cause damage to the card. - * @url http://www.espruino.com/Reference#File + * Class containing utility functions for the [Bangle.js Smart + * Watch](http://www.espruino.com/Bangle.js) + * @url http://www.espruino.com/Reference#Bangle */ -declare class File { - - +declare class Bangle { /** - * Close an open file. - * @url http://www.espruino.com/Reference#l_File_close + * Accelerometer data available with `{x,y,z,diff,mag}` object as a parameter. + * * `x` is X axis (left-right) in `g` + * * `y` is Y axis (up-down) in `g` + * * `z` is Z axis (in-out) in `g` + * * `diff` is difference between this and the last reading in `g` + * * `mag` is the magnitude of the acceleration in `g` + * You can also retrieve the most recent reading with `Bangle.getAccel()`. + * @param {string} event - The event to listen to. + * @param {(xyz: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `xyz` + * @url http://www.espruino.com/Reference#l_Bangle_accel */ - close(): void; + static on(event: "accel", callback: (xyz: AccelData) => void): void; /** - * Write data to a file. - * **Note:** By default this function flushes all changes to the SD card, which - * makes it slow (but also safe!). You can use `E.setFlags({unsyncFiles:1})` to - * disable this behaviour and really speed up writes - but then you must be sure to - * close all files you are writing before power is lost or you will cause damage to - * your SD card's filesystem. - * - * @param {any} buffer - A string containing the bytes to write - * @returns {number} the number of bytes written - * @url http://www.espruino.com/Reference#l_File_write + * Called whenever a step is detected by Bangle.js's pedometer. + * @param {string} event - The event to listen to. + * @param {(up: number) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `up` The number of steps since Bangle.js was last reset + * @url http://www.espruino.com/Reference#l_Bangle_step */ - write(buffer: any): number; + static on(event: "step", callback: (up: number) => void): void; /** - * Read data in a file in byte size chunks - * - * @param {number} length - is an integer specifying the number of bytes to read. - * @returns {any} A string containing the characters that were read - * @url http://www.espruino.com/Reference#l_File_read + * See `Bangle.getHealthStatus()` for more information. This is used for health + * tracking to allow Bangle.js to record historical exercise data. + * @param {string} event - The event to listen to. + * @param {(info: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `info` An object containing the last 10 minutes health data + * @url http://www.espruino.com/Reference#l_Bangle_health */ - read(length: number): any; + static on(event: "health", callback: (info: HealthStatus) => void): void; /** - * Skip the specified number of bytes forward in the file - * - * @param {number} nBytes - is a positive integer specifying the number of bytes to skip forwards. - * @url http://www.espruino.com/Reference#l_File_skip + * Has the watch been moved so that it is face-up, or not face up? + * @param {string} event - The event to listen to. + * @param {(up: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `up` `true` if face-up + * @url http://www.espruino.com/Reference#l_Bangle_faceUp */ - skip(nBytes: number): void; + static on(event: "faceUp", callback: (up: boolean) => void): void; /** - * Seek to a certain position in the file - * - * @param {number} nBytes - is an integer specifying the number of bytes to skip forwards. - * @url http://www.espruino.com/Reference#l_File_seek + * This event happens when the watch has been twisted around it's axis - for + * instance as if it was rotated so someone could look at the time. + * To tweak when this happens, see the `twist*` options in `Bangle.setOptions()` + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_Bangle_twist */ - seek(nBytes: number): void; + static on(event: "twist", callback: () => void): void; /** - * Pipe this file to a stream (an object with a 'write' method) + * Is the battery charging or not? + * @param {string} event - The event to listen to. + * @param {(charging: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `charging` `true` if charging + * @url http://www.espruino.com/Reference#l_Bangle_charging + */ + static on(event: "charging", callback: (charging: boolean) => void): void; + + /** + * Magnetometer/Compass data available with `{x,y,z,dx,dy,dz,heading}` object as a + * parameter + * * `x/y/z` raw x,y,z magnetometer readings + * * `dx/dy/dz` readings based on calibration since magnetometer turned on + * * `heading` in degrees based on calibrated readings (will be NaN if magnetometer + * hasn't been rotated around 360 degrees). + * **Note:** In 2v15 firmware and earlier the heading is inverted (360-heading). There's + * a fix in the bootloader which will apply a fix for those headings, but old apps may + * still expect an inverted value. + * To get this event you must turn the compass on with `Bangle.setCompassPower(1)`. + * You can also retrieve the most recent reading with `Bangle.getCompass()`. + * @param {string} event - The event to listen to. + * @param {(xyz: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `xyz` + * @url http://www.espruino.com/Reference#l_Bangle_mag + */ + static on(event: "mag", callback: (xyz: CompassData) => void): void; + + /** + * Raw NMEA GPS / u-blox data messages received as a string + * To get this event you must turn the GPS on with `Bangle.setGPSPower(1)`. + * @param {string} event - The event to listen to. + * @param {(nmea: any, dataLoss: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `nmea` A string containing the raw NMEA data from the GPS + * * `dataLoss` This is set to true if some lines of GPS data have previously been lost (eg because system was too busy to queue up a GPS-raw event) + * @url http://www.espruino.com/Reference#l_Bangle_GPS-raw + */ + static on(event: "GPS-raw", callback: (nmea: string, dataLoss: boolean) => void): void; + + /** + * GPS data, as an object. Contains: + * ``` + * { "lat": number, // Latitude in degrees + * "lon": number, // Longitude in degrees + * "alt": number, // altitude in M + * "speed": number, // Speed in kph + * "course": number, // Course in degrees + * "time": Date, // Current Time (or undefined if not known) + * "satellites": 7, // Number of satellites + * "fix": 1 // NMEA Fix state - 0 is no fix + * "hdop": number, // Horizontal Dilution of Precision + * } + * ``` + * If a value such as `lat` is not known because there is no fix, it'll be `NaN`. + * `hdop` is a value from the GPS receiver that gives a rough idea of accuracy of + * lat/lon based on the geometry of the satellites in range. Multiply by 5 to get a + * value in meters. This is just a ballpark estimation and should not be considered + * remotely accurate. + * To get this event you must turn the GPS on with `Bangle.setGPSPower(1)`. + * @param {string} event - The event to listen to. + * @param {(fix: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `fix` An object with fix info (see below) + * @url http://www.espruino.com/Reference#l_Bangle_GPS + */ + static on(event: "GPS", callback: (fix: GPSFix) => void): void; + + /** + * Heat rate data, as an object. Contains: + * ``` + * { "bpm": number, // Beats per minute + * "confidence": number, // 0-100 percentage confidence in the heart rate + * "raw": Uint8Array, // raw samples from heart rate monitor + * } + * ``` + * To get this event you must turn the heart rate monitor on with + * `Bangle.setHRMPower(1)`. + * @param {string} event - The event to listen to. + * @param {(hrm: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `hrm` An object with heart rate info (see below) + * @url http://www.espruino.com/Reference#l_Bangle_HRM + */ + static on(event: "HRM", callback: (hrm: { bpm: number, confidence: number, raw: Uint8Array }) => void): void; + + /** + * Called when heart rate sensor data is available - see `Bangle.setHRMPower(1)`. + * `hrm` is of the form: + * ``` + * { "raw": -1, // raw value from sensor + * "filt": -1, // bandpass-filtered raw value from sensor + * "bpm": 88.9, // last BPM value measured + * "confidence": 0 // confidence in the BPM value + * } + * ``` + * @param {string} event - The event to listen to. + * @param {(hrm: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `hrm` A object containing instant readings from the heart rate sensor + * @url http://www.espruino.com/Reference#l_Bangle_HRM-raw + */ + static on(event: "HRM-raw", callback: (hrm: { raw: number, filt: number, bpm: number, confidence: number }) => void): void; + + /** + * When `Bangle.setBarometerPower(true)` is called, this event is fired containing + * barometer readings. + * Same format as `Bangle.getPressure()` + * @param {string} event - The event to listen to. + * @param {(e: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `e` An object containing `{temperature,pressure,altitude}` + * @url http://www.espruino.com/Reference#l_Bangle_pressure + */ + static on(event: "pressure", callback: (e: PressureData) => void): void; + + /** + * Has the screen been turned on or off? Can be used to stop tasks that are no + * longer useful if nothing is displayed. Also see `Bangle.isLCDOn()` + * @param {string} event - The event to listen to. + * @param {(on: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `on` `true` if screen is on + * @url http://www.espruino.com/Reference#l_Bangle_lcdPower + */ + static on(event: "lcdPower", callback: (on: boolean) => void): void; + + /** + * Has the screen been locked? Also see `Bangle.isLocked()` + * @param {string} event - The event to listen to. + * @param {(on: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `on` `true` if screen is locked, `false` if it is unlocked and touchscreen/buttons will work + * @url http://www.espruino.com/Reference#l_Bangle_lock + */ + static on(event: "lock", callback: (on: boolean) => void): void; + + /** + * If the watch is tapped, this event contains information on the way it was + * tapped. + * `dir` reports the side of the watch that was tapped (not the direction it was + * tapped in). + * ``` + * { + * dir : "left/right/top/bottom/front/back", + * double : true/false // was this a double-tap? + * x : -2 .. 2, // the axis of the tap + * y : -2 .. 2, // the axis of the tap + * z : -2 .. 2 // the axis of the tap + * ``` + * @param {string} event - The event to listen to. + * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `data` `{dir, double, x, y, z}` + * @url http://www.espruino.com/Reference#l_Bangle_tap + */ + static on(event: "tap", callback: (data: { dir: "left" | "right" | "top" | "bottom" | "front" | "back", double: boolean, x: TapAxis, y: TapAxis, z: TapAxis }) => void): void; + + /** + * Emitted when a 'gesture' (fast movement) is detected + * @param {string} event - The event to listen to. + * @param {(xyz: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `xyz` An Int8Array of XYZXYZXYZ data + * @url http://www.espruino.com/Reference#l_Bangle_gesture + */ + static on(event: "gesture", callback: (xyz: Int8Array) => void): void; + + /** + * Emitted when a 'gesture' (fast movement) is detected, and a Tensorflow model is + * in storage in the `".tfmodel"` file. + * If a `".tfnames"` file is specified as a comma-separated list of names, it will + * be used to decode `gesture` from a number into a string. + * @param {string} event - The event to listen to. + * @param {(gesture: any, weights: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `gesture` The name of the gesture (if '.tfnames' exists, or the index. 'undefined' if not matching + * * `weights` An array of floating point values output by the model + * @url http://www.espruino.com/Reference#l_Bangle_aiGesture + */ + static on(event: "aiGesture", callback: (gesture: string | undefined, weights: number[]) => void): void; + + /** + * Emitted when a swipe on the touchscreen is detected (a movement from + * left->right, right->left, down->up or up->down) + * Bangle.js 1 is only capable of detecting left/right swipes as it only contains a + * 2 zone touchscreen. + * @param {string} event - The event to listen to. + * @param {(directionLR: number, directionUD: number) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `directionLR` `-1` for left, `1` for right, `0` for up/down + * * `directionUD` `-1` for up, `1` for down, `0` for left/right (Bangle.js 2 only) + * @url http://www.espruino.com/Reference#l_Bangle_swipe + */ + static on(event: "swipe", callback: SwipeCallback): void; + + /** + * Emitted when the touchscreen is pressed + * @param {string} event - The event to listen to. + * @param {(button: number, xy: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `button` `1` for left, `2` for right + * * `xy` Object of form `{x,y}` containing touch coordinates (if the device supports full touch). Clipped to 0..175 (LCD pixel coordinates) on firmware 2v13 and later. + * @url http://www.espruino.com/Reference#l_Bangle_touch + */ + static on(event: "touch", callback: TouchCallback): void; + + /** + * Emitted when the touchscreen is dragged or released + * The touchscreen extends past the edge of the screen and while `x` and `y` + * coordinates are arranged such that they align with the LCD's pixels, if your + * finger goes towards the edge of the screen, `x` and `y` could end up larger than + * 175 (the screen's maximum pixel coordinates) or smaller than 0. Coordinates from + * the `touch` event are clipped. + * @param {string} event - The event to listen to. + * @param {(event: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `event` Object of form `{x,y,dx,dy,b}` containing touch coordinates, difference in touch coordinates, and an integer `b` containing number of touch points (currently 1 or 0) + * @url http://www.espruino.com/Reference#l_Bangle_drag + */ + static on(event: "drag", callback: DragCallback): void; + + /** + * Emitted when the touchscreen is dragged for a large enough distance to count as + * a gesture. + * If Bangle.strokes is defined and populated with data from `Unistroke.new`, the + * `event` argument will also contain a `stroke` field containing the most closely + * matching stroke name. + * For example: + * ``` + * Bangle.strokes = { + * up : Unistroke.new(new Uint8Array([57, 151, ... 158, 137])), + * alpha : Unistroke.new(new Uint8Array([161, 55, ... 159, 161])), + * }; + * Bangle.on('stroke',o=>{ + * print(o.stroke); + * g.clear(1).drawPoly(o.xy); + * }); + * // Might print something like + * { + * "xy": new Uint8Array([149, 50, ... 107, 136]), + * "stroke": "alpha" + * } + * ``` + * @param {string} event - The event to listen to. + * @param {(event: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `event` Object of form `{xy:Uint8Array([x1,y1,x2,y2...])}` containing touch coordinates + * @url http://www.espruino.com/Reference#l_Bangle_stroke + */ + static on(event: "stroke", callback: (event: { xy: Uint8Array, stroke?: string }) => void): void; + + /** + * Emitted at midnight (at the point the `day` health info is reset to 0). + * Can be used for housekeeping tasks that don't want to be run during the day. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_Bangle_midnight + */ + static on(event: "midnight", callback: () => void): void; + + /** + * This function can be used to turn Bangle.js's LCD off or on. + * This function resets the Bangle's 'activity timer' (like pressing a button or + * the screen would) so after a time period of inactivity set by + * `Bangle.setLCDTimeout` the screen will turn off. + * If you want to keep the screen on permanently (until apps are changed) you can + * do: + * ``` + * Bangle.setLCDTimeout(0); // turn off the timeout + * Bangle.setLCDPower(1); // keep screen on + * ``` + * **When on full, the LCD draws roughly 40mA.** You can adjust When brightness + * using `Bangle.setLCDBrightness`. + * + * @param {boolean} isOn - True if the LCD should be on, false if not + * @url http://www.espruino.com/Reference#l_Bangle_setLCDPower + */ + static setLCDPower(isOn: boolean): void; + + /** + * This function can be used to adjust the brightness of Bangle.js's display, and + * hence prolong its battery life. + * Due to hardware design constraints, software PWM has to be used which means that + * the display may flicker slightly when Bluetooth is active and the display is not + * at full power. + * **Power consumption** + * * 0 = 7mA + * * 0.1 = 12mA + * * 0.2 = 18mA + * * 0.5 = 28mA + * * 0.9 = 40mA (switching overhead) + * * 1 = 40mA + * + * @param {number} brightness - The brightness of Bangle.js's display - from 0(off) to 1(on full) + * @url http://www.espruino.com/Reference#l_Bangle_setLCDBrightness + */ + static setLCDBrightness(brightness: number): void; + + /** + * This function can be used to change the way graphics is handled on Bangle.js. + * Available options for `Bangle.setLCDMode` are: + * * `Bangle.setLCDMode()` or `Bangle.setLCDMode("direct")` (the default) - The + * drawable area is 240x240 16 bit. Unbuffered, so draw calls take effect + * immediately. Terminal and vertical scrolling work (horizontal scrolling + * doesn't). + * * `Bangle.setLCDMode("doublebuffered")` - The drawable area is 240x160 16 bit, + * terminal and scrolling will not work. `g.flip()` must be called for draw + * operations to take effect. + * * `Bangle.setLCDMode("120x120")` - The drawable area is 120x120 8 bit, + * `g.getPixel`, terminal, and full scrolling work. Uses an offscreen buffer + * stored on Bangle.js, `g.flip()` must be called for draw operations to take + * effect. + * * `Bangle.setLCDMode("80x80")` - The drawable area is 80x80 8 bit, `g.getPixel`, + * terminal, and full scrolling work. Uses an offscreen buffer stored on + * Bangle.js, `g.flip()` must be called for draw operations to take effect. + * You can also call `Bangle.setLCDMode()` to return to normal, unbuffered + * `"direct"` mode. + * + * @param {any} mode - The LCD mode (See below) + * @url http://www.espruino.com/Reference#l_Bangle_setLCDMode + */ + static setLCDMode(mode?: LCDMode): void; + + /** + * The current LCD mode. + * See `Bangle.setLCDMode` for examples. + * @returns {any} The LCD mode as a String + * @url http://www.espruino.com/Reference#l_Bangle_getLCDMode + */ + static getLCDMode(): LCDMode; + + /** + * This can be used to move the displayed memory area up or down temporarily. It's + * used for displaying notifications while keeping the main display contents + * intact. + * + * @param {number} y - The amount of pixels to shift the LCD up or down + * @url http://www.espruino.com/Reference#l_Bangle_setLCDOffset + */ + static setLCDOffset(y: number): void; + + /** + * Overlay an image or graphics instance on top of the contents of the graphics buffer. + * This only works on Bangle.js 2 because Bangle.js 1 doesn't have an offscreen buffer accessible from the CPU. + * ``` + * // display an alarm clock icon on the screen + * var img = require("heatshrink").decompress(atob(`lss4UBvvv///ovBlMyqoADv/VAwlV//1qtfAQX/BINXDoPVq/9DAP + * /AYIKDrWq0oREAYPW1QAB1IWCBQXaBQWq04WCAQP6BQeqA4P1AQPq1WggEK1WrBAIkBBQJsCBYO///fBQOoPAcqCwP3BQnwgECCwP9 + * GwIKCngWC14sB7QKCh4CBCwN/64KDgfACwWn6vWGwYsBCwOputWJgYsCgGqytVBQYsCLYOlqtqwAsFEINVrR4BFgghBBQosDEINWIQ + * YsDEIQ3DFgYhCG4msSYeVFgnrFhMvOAgsEkE/FhEggYWCFgIhDkEACwQKBEIYKBCwSGFBQJxCQwYhBBQTKDqohCBQhCCEIJlDXwrKE + * BQoWHBQdaCwuqJoI4CCwgKECwJ9CJgIKDq+qBYUq1WtBQf+BYIAC3/VBQX/tQKDz/9BQY5BAAVV/4WCBQJcBKwVf+oHBv4wCAAYhB`)); + * Bangle.setLCDOverlay(img,66,66); + * ``` + * Or use a `Graphics` instance: + * ``` + * var ovr = Graphics.createArrayBuffer(100,100,1,{msb:true}); // 1bpp + * ovr.drawLine(0,0,100,100); + * ovr.drawRect(0,0,99,99); + * Bangle.setLCDOverlay(ovr,38,38); + * ``` + * Although `Graphics` can be specified directly, it can often make more sense to + * create an Image from the `Graphics` instance, as this gives you access + * to color palettes and transparent colors. For instance this will draw a colored + * overlay with rounded corners: + * ``` + * var ovr = Graphics.createArrayBuffer(100,100,2,{msb:true}); + * ovr.setColor(1).fillRect({x:0,y:0,w:99,h:99,r:8}); + * ovr.setColor(3).fillRect({x:2,y:2,w:95,h:95,r:7}); + * ovr.setColor(2).setFont("Vector:30").setFontAlign(0,0).drawString("Hi",50,50); + * Bangle.setLCDOverlay({ + * width:ovr.getWidth(), height:ovr.getHeight(), + * bpp:2, transparent:0, + * palette:new Uint16Array([0,0,g.toColor("#F00"),g.toColor("#FFF")]), + * buffer:ovr.buffer + * },38,38); + * ``` + * + * @param {any} img - An image + * @param {number} x - The X offset the graphics instance should be overlaid on the screen with + * @param {number} y - The Y offset the graphics instance should be overlaid on the screen with + * @url http://www.espruino.com/Reference#l_Bangle_setLCDOverlay + */ + static setLCDOverlay(img: any, x: number, y: number): void; + + /** + * This function can be used to turn Bangle.js's LCD power saving on or off. + * With power saving off, the display will remain in the state you set it with + * `Bangle.setLCDPower`. + * With power saving on, the display will turn on if a button is pressed, the watch + * is turned face up, or the screen is updated (see `Bangle.setOptions` for + * configuration). It'll turn off automatically after the given timeout. + * **Note:** This function also sets the Backlight and Lock timeout (the time at + * which the touchscreen/buttons start being ignored). To set both separately, use + * `Bangle.setOptions` + * + * @param {number} isOn - The timeout of the display in seconds, or `0`/`undefined` to turn power saving off. Default is 10 seconds. + * @url http://www.espruino.com/Reference#l_Bangle_setLCDTimeout + */ + static setLCDTimeout(isOn: number): void; + + /** + * Set how often the watch should poll for new acceleration/gyro data and kick the + * Watchdog timer. It isn't recommended that you make this interval much larger + * than 1000ms, but values up to 4000ms are allowed. + * Calling this will set `Bangle.setOptions({powerSave: false})` - disabling the + * dynamic adjustment of poll interval to save battery power when Bangle.js is + * stationary. + * + * @param {number} interval - Polling interval in milliseconds (Default is 80ms - 12.5Hz to match accelerometer) + * @url http://www.espruino.com/Reference#l_Bangle_setPollInterval + */ + static setPollInterval(interval: number): void; + + /** + * Set internal options used for gestures, etc... + * * `wakeOnBTN1` should the LCD turn on when BTN1 is pressed? default = `true` + * * `wakeOnBTN2` (Bangle.js 1) should the LCD turn on when BTN2 is pressed? + * default = `true` + * * `wakeOnBTN3` (Bangle.js 1) should the LCD turn on when BTN3 is pressed? + * default = `true` + * * `wakeOnFaceUp` should the LCD turn on when the watch is turned face up? + * default = `false` + * * `wakeOnTouch` should the LCD turn on when the touchscreen is pressed? default + * = `false` + * * `wakeOnTwist` should the LCD turn on when the watch is twisted? default = + * `true` + * * `twistThreshold` How much acceleration to register a twist of the watch strap? + * Can be negative for opposite direction. default = `800` + * * `twistMaxY` Maximum acceleration in Y to trigger a twist (low Y means watch is + * facing the right way up). default = `-800` + * * `twistTimeout` How little time (in ms) must a twist take from low->high + * acceleration? default = `1000` + * * `gestureStartThresh` how big a difference before we consider a gesture + * started? default = `sqr(800)` + * * `gestureEndThresh` how small a difference before we consider a gesture ended? + * default = `sqr(2000)` + * * `gestureInactiveCount` how many samples do we keep after a gesture has ended? + * default = `4` + * * `gestureMinLength` how many samples must a gesture have before we notify about + * it? default = `10` + * * `powerSave` after a minute of not being moved, Bangle.js will change the + * accelerometer poll interval down to 800ms (10x accelerometer samples). On + * movement it'll be raised to the default 80ms. If `Bangle.setPollInterval` is + * used this is disabled, and for it to work the poll interval must be either + * 80ms or 800ms. default = `true`. Setting `powerSave:false` will disable this + * automatic power saving, but will **not** change the poll interval from its + * current value. If you desire a specific interval (e.g. the default 80ms) you + * must set it manually with `Bangle.setPollInterval(80)` after setting + * `powerSave:false`. + * * `lockTimeout` how many milliseconds before the screen locks + * * `lcdPowerTimeout` how many milliseconds before the screen turns off + * * `backlightTimeout` how many milliseconds before the screen's backlight turns + * off + * * `btnLoadTimeout` how many milliseconds does the home button have to be pressed + * for before the clock is reloaded? 1500ms default, or 0 means never. + * * `hrmPollInterval` set the requested poll interval (in milliseconds) for the + * heart rate monitor. On Bangle.js 2 only 10,20,40,80,160,200 ms are supported, + * and polling rate may not be exact. The algorithm's filtering is tuned for + * 20-40ms poll intervals, so higher/lower intervals may effect the reliability + * of the BPM reading. + * * `seaLevelPressure` (Bangle.js 2) Normally 1013.25 millibars - this is used for + * calculating altitude with the pressure sensor + * Where accelerations are used they are in internal units, where `8192 = 1g` * - * @param {any} destination - The destination file/stream that will receive content from the source. * @param {any} options - * An optional object `{ chunkSize : int=32, end : bool=true, complete : function }` - * chunkSize : The amount of data to pipe from source to destination at a time - * complete : a function to call when the pipe activity is complete - * end : call the 'end' function on the destination when the source is finished - * @url http://www.espruino.com/Reference#l_File_pipe + * @url http://www.espruino.com/Reference#l_Bangle_setOptions */ - pipe(destination: any, options: any): void; + static setOptions(options: { [key in keyof BangleOptions]?: BangleOptions[key] }): void; + + /** + * Return the current state of options as set by `Bangle.setOptions` + * @returns {any} The current state of all options + * @url http://www.espruino.com/Reference#l_Bangle_getOptions + */ + static getOptions(): BangleOptions; + + /** + * Also see the `Bangle.lcdPower` event + * @returns {boolean} Is the display on or not? + * @url http://www.espruino.com/Reference#l_Bangle_isLCDOn + */ + static isLCDOn(): boolean; + + /** + * This function can be used to lock or unlock Bangle.js (e.g. whether buttons and + * touchscreen work or not) + * + * @param {boolean} isLocked - `true` if the Bangle is locked (no user input allowed) + * @url http://www.espruino.com/Reference#l_Bangle_setLocked + */ + static setLocked(isLocked: boolean): void; + + /** + * Also see the `Bangle.lock` event + * @returns {boolean} Is the screen locked or not? + * @url http://www.espruino.com/Reference#l_Bangle_isLocked + */ + static isLocked(): boolean; + + /** + * @returns {boolean} Is the battery charging or not? + * @url http://www.espruino.com/Reference#l_Bangle_isCharging + */ + static isCharging(): boolean; + + /** + * Writes a command directly to the ST7735 LCD controller + * + * @param {number} cmd + * @param {any} data + * @url http://www.espruino.com/Reference#l_Bangle_lcdWr + */ + static lcdWr(cmd: number, data: any): void; + + /** + * Set the power to the Heart rate monitor + * When on, data is output via the `HRM` event on `Bangle`: + * ``` + * Bangle.setHRMPower(true, "myapp"); + * Bangle.on('HRM',print); + * ``` + * *When on, the Heart rate monitor draws roughly 5mA* + * + * @param {boolean} isOn - True if the heart rate monitor should be on, false if not + * @param {any} appID - A string with the app's name in, used to ensure one app can't turn off something another app is using + * @returns {boolean} Is HRM on? + * @url http://www.espruino.com/Reference#l_Bangle_setHRMPower + */ + static setHRMPower(isOn: boolean, appID: string): boolean; + + /** + * Is the Heart rate monitor powered? + * Set power with `Bangle.setHRMPower(...);` + * @returns {boolean} Is HRM on? + * @url http://www.espruino.com/Reference#l_Bangle_isHRMOn + */ + static isHRMOn(): boolean; + + /** + * Set the power to the GPS. + * When on, data is output via the `GPS` event on `Bangle`: + * ``` + * Bangle.setGPSPower(true, "myapp"); + * Bangle.on('GPS',print); + * ``` + * *When on, the GPS draws roughly 20mA* + * + * @param {boolean} isOn - True if the GPS should be on, false if not + * @param {any} appID - A string with the app's name in, used to ensure one app can't turn off something another app is using + * @returns {boolean} Is the GPS on? + * @url http://www.espruino.com/Reference#l_Bangle_setGPSPower + */ + static setGPSPower(isOn: boolean, appID: string): boolean; + + /** + * Is the GPS powered? + * Set power with `Bangle.setGPSPower(...);` + * @returns {boolean} Is the GPS on? + * @url http://www.espruino.com/Reference#l_Bangle_isGPSOn + */ + static isGPSOn(): boolean; + + /** + * Get the last available GPS fix info (or `undefined` if GPS is off). + * The fix info received is the same as you'd get from the `Bangle.GPS` event. + * @returns {any} A GPS fix object with `{lat,lon,...}` + * @url http://www.espruino.com/Reference#l_Bangle_getGPSFix + */ + static getGPSFix(): GPSFix; + + /** + * Set the power to the Compass + * When on, data is output via the `mag` event on `Bangle`: + * ``` + * Bangle.setCompassPower(true, "myapp"); + * Bangle.on('mag',print); + * ``` + * *When on, the compass draws roughly 2mA* + * + * @param {boolean} isOn - True if the Compass should be on, false if not + * @param {any} appID - A string with the app's name in, used to ensure one app can't turn off something another app is using + * @returns {boolean} Is the Compass on? + * @url http://www.espruino.com/Reference#l_Bangle_setCompassPower + */ + static setCompassPower(isOn: boolean, appID: string): boolean; + + /** + * Is the compass powered? + * Set power with `Bangle.setCompassPower(...);` + * @returns {boolean} Is the Compass on? + * @url http://www.espruino.com/Reference#l_Bangle_isCompassOn + */ + static isCompassOn(): boolean; + + /** + * Resets the compass minimum/maximum values. Can be used if the compass isn't + * providing a reliable heading any more. + * + * @url http://www.espruino.com/Reference#l_Bangle_resetCompass + */ + static resetCompass(): void; + + /** + * Set the power to the barometer IC. Once enabled, `Bangle.pressure` events are + * fired each time a new barometer reading is available. + * When on, the barometer draws roughly 50uA + * + * @param {boolean} isOn - True if the barometer IC should be on, false if not + * @param {any} appID - A string with the app's name in, used to ensure one app can't turn off something another app is using + * @returns {boolean} Is the Barometer on? + * @url http://www.espruino.com/Reference#l_Bangle_setBarometerPower + */ + static setBarometerPower(isOn: boolean, appID: string): boolean; + + /** + * Is the Barometer powered? + * Set power with `Bangle.setBarometerPower(...);` + * @returns {boolean} Is the Barometer on? + * @url http://www.espruino.com/Reference#l_Bangle_isBarometerOn + */ + static isBarometerOn(): boolean; + + /** + * Returns the current amount of steps recorded by the step counter + * @returns {number} The number of steps recorded by the step counter + * @url http://www.espruino.com/Reference#l_Bangle_getStepCount + */ + static getStepCount(): number; + + /** + * Sets the current value of the step counter + * + * @param {number} count - The value with which to reload the step counter + * @url http://www.espruino.com/Reference#l_Bangle_setStepCount + */ + static setStepCount(count: number): void; + + /** + * Get the most recent Magnetometer/Compass reading. Data is in the same format as + * the `Bangle.on('mag',` event. + * Returns an `{x,y,z,dx,dy,dz,heading}` object + * * `x/y/z` raw x,y,z magnetometer readings + * * `dx/dy/dz` readings based on calibration since magnetometer turned on + * * `heading` in degrees based on calibrated readings (will be NaN if magnetometer + * hasn't been rotated around 360 degrees). + * **Note:** In 2v15 firmware and earlier the heading is inverted (360-heading). There's + * a fix in the bootloader which will apply a fix for those headings, but old apps may + * still expect an inverted value. + * To get this event you must turn the compass on with `Bangle.setCompassPower(1)`. + * @returns {any} An object containing magnetometer readings (as below) + * @url http://www.espruino.com/Reference#l_Bangle_getCompass + */ + static getCompass(): CompassData; + + /** + * Get the most recent accelerometer reading. Data is in the same format as the + * `Bangle.on('accel',` event. + * * `x` is X axis (left-right) in `g` + * * `y` is Y axis (up-down) in `g` + * * `z` is Z axis (in-out) in `g` + * * `diff` is difference between this and the last reading in `g` (calculated by + * comparing vectors, not magnitudes) + * * `td` is the elapsed + * * `mag` is the magnitude of the acceleration in `g` + * @returns {any} An object containing accelerometer readings (as below) + * @url http://www.espruino.com/Reference#l_Bangle_getAccel + */ + static getAccel(): AccelData & { td: number }; + + /** + * `range` is one of: + * * `undefined` or `'10min'` - health data so far in this 10 minute block (eg. 9:00.00 - 9:09.59) + * * `'last'` - health data during the last 10 minute block + * * `'day'` - the health data so far for the day + * `getHealthStatus` returns an object containing: + * * `movement` is the 32 bit sum of all `acc.diff` readings since power on (and + * rolls over). It is the difference in accelerometer values as `g*8192` + * * `steps` is the number of steps during this period + * * `bpm` the best BPM reading from HRM sensor during this period + * * `bpmConfidence` best BPM confidence (0-100%) during this period + * + * @param {any} range - What time period to return data for, see below: + * @returns {any} Returns an object containing various health info + * @url http://www.espruino.com/Reference#l_Bangle_getHealthStatus + */ + static getHealthStatus(range?: "current" | "last" | "day"): HealthStatus; + + /** + * Reads debug info. Exposes the current values of `accHistoryIdx`, `accGestureCount`, `accIdleCount` and `pollInterval`. + * @returns {any} + * @url http://www.espruino.com/Reference#l_Bangle_dbg + */ + static dbg(): any; + + /** + * Writes a register on the accelerometer + * + * @param {number} reg + * @param {number} data + * @url http://www.espruino.com/Reference#l_Bangle_accelWr + */ + static accelWr(reg: number, data: number): void; + + /** + * Reads a register from the accelerometer + * **Note:** On Espruino 2v06 and before this function only returns a number (`cnt` + * is ignored). + * + * @param {number} reg + * @param {number} cnt - If specified, returns an array of the given length (max 128). If not (or 0) it returns a number + * @returns {any} + * @url http://www.espruino.com/Reference#l_Bangle_accelRd + */ + static accelRd(reg: number, cnt?: 0): number; + static accelRd(reg: number, cnt: number): number[]; + + /** + * Writes a register on the barometer IC + * + * @param {number} reg + * @param {number} data + * @url http://www.espruino.com/Reference#l_Bangle_barometerWr + */ + static barometerWr(reg: number, data: number): void; + + /** + * Reads a register from the barometer IC + * + * @param {number} reg + * @param {number} cnt - If specified, returns an array of the given length (max 128). If not (or 0) it returns a number + * @returns {any} + * @url http://www.espruino.com/Reference#l_Bangle_barometerRd + */ + static barometerRd(reg: number, cnt?: 0): number; + static barometerRd(reg: number, cnt: number): number[]; + + /** + * Writes a register on the Magnetometer/Compass + * + * @param {number} reg + * @param {number} data + * @url http://www.espruino.com/Reference#l_Bangle_compassWr + */ + static compassWr(reg: number, data: number): void; + + /** + * Read a register on the Magnetometer/Compass + * + * @param {number} reg + * @param {number} cnt - If specified, returns an array of the given length (max 128). If not (or 0) it returns a number + * @returns {any} + * @url http://www.espruino.com/Reference#l_Bangle_compassRd + */ + static compassRd(reg: number, cnt?: 0): number; + static compassRd(reg: number, cnt: number): number[]; + + /** + * Writes a register on the Heart rate monitor + * + * @param {number} reg + * @param {number} data + * @url http://www.espruino.com/Reference#l_Bangle_hrmWr + */ + static hrmWr(reg: number, data: number): void; + + /** + * Read a register on the Heart rate monitor + * + * @param {number} reg + * @param {number} cnt - If specified, returns an array of the given length (max 128). If not (or 0) it returns a number + * @returns {any} + * @url http://www.espruino.com/Reference#l_Bangle_hrmRd + */ + static hrmRd(reg: number, cnt?: 0): number; + static hrmRd(reg: number, cnt: number): number[]; + + /** + * Changes a pin state on the IO expander + * + * @param {number} mask + * @param {number} isOn + * @url http://www.espruino.com/Reference#l_Bangle_ioWr + */ + static ioWr(mask: number, isOn: number): void; + + /** + * Read temperature, pressure and altitude data. A promise is returned which will + * be resolved with `{temperature, pressure, altitude}`. + * If the Barometer has been turned on with `Bangle.setBarometerPower` then this + * will return almost immediately with the reading. If the Barometer is off, + * conversions take between 500-750ms. + * Altitude assumes a sea-level pressure of 1013.25 hPa + * ``` + * Bangle.getPressure().then(d=>{ + * console.log(d); + * // {temperature, pressure, altitude} + * }); + * ``` + * @returns {any} A promise that will be resolved with `{temperature, pressure, altitude}` + * @url http://www.espruino.com/Reference#l_Bangle_getPressure + */ + static getPressure(): PressureData; + + /** + * Perform a Spherical [Web Mercator + * projection](https://en.wikipedia.org/wiki/Web_Mercator_projection) of latitude + * and longitude into `x` and `y` coordinates, which are roughly equivalent to + * meters from `{lat:0,lon:0}`. + * This is the formula used for most online mapping and is a good way to compare + * GPS coordinates to work out the distance between them. + * + * @param {any} latlong - `{lat:..., lon:...}` + * @returns {any} {x:..., y:...} + * @url http://www.espruino.com/Reference#l_Bangle_project + */ + static project(latlong: { lat: number, lon: number }): { x: number, y: number }; + + /** + * Use the piezo speaker to Beep for a certain time period and frequency + * + * @param {number} [time] - [optional] Time in ms (default 200) + * @param {number} [freq] - [optional] Frequency in hz (default 4000) + * @returns {any} A promise, completed when beep is finished + * @url http://www.espruino.com/Reference#l_Bangle_beep + */ + static beep(time?: number, freq?: number): Promise; + + /** + * Use the vibration motor to buzz for a certain time period + * + * @param {number} [time] - [optional] Time in ms (default 200) + * @param {number} [strength] - [optional] Power of vibration from 0 to 1 (Default 1) + * @returns {any} A promise, completed when vibration is finished + * @url http://www.espruino.com/Reference#l_Bangle_buzz + */ + static buzz(time?: number, strength?: number): Promise; + + /** + * Turn Bangle.js off. It can only be woken by pressing BTN1. + * @url http://www.espruino.com/Reference#l_Bangle_off + */ + static off(): void; + + /** + * Turn Bangle.js (mostly) off, but keep the CPU in sleep mode until BTN1 is + * pressed to preserve the RTC (current time). + * @url http://www.espruino.com/Reference#l_Bangle_softOff + */ + static softOff(): void; + + /** + * * On platforms with an LCD of >=8bpp this is 222 x 104 x 2 bits + * * Otherwise it's 119 x 56 x 1 bits + * @returns {any} An image to be used with `g.drawImage` (as a String) + * @url http://www.espruino.com/Reference#l_Bangle_getLogo + */ + static getLogo(): string; + + /** + * Load all widgets from flash Storage. Call this once at the beginning of your + * application if you want any on-screen widgets to be loaded. + * They will be loaded into a global `WIDGETS` array, and can be rendered with + * `Bangle.drawWidgets`. + * @url http://www.espruino.com/Reference#l_Bangle_loadWidgets + */ + static loadWidgets(): void; + + /** + * Draw any onscreen widgets that were loaded with `Bangle.loadWidgets()`. + * Widgets should redraw themselves when something changes - you'll only need to + * call drawWidgets if you decide to clear the entire screen with `g.clear()`. + * @url http://www.espruino.com/Reference#l_Bangle_drawWidgets + */ + static drawWidgets(): void; + + /** + * @url http://www.espruino.com/Reference#l_Bangle_drawWidgets + */ + static drawWidgets(): void; + + /** + * Load the Bangle.js app launcher, which will allow the user to select an + * application to launch. + * @url http://www.espruino.com/Reference#l_Bangle_showLauncher + */ + static showLauncher(): void; + + /** + * Load the Bangle.js clock - this has the same effect as calling `Bangle.load()`. + * @url http://www.espruino.com/Reference#l_Bangle_showClock + */ + static showClock(): void; + + /** + * This behaves the same as the global `load()` function, but if fast + * loading is possible (`Bangle.setUI` was called with a `remove` handler) + * then instead of a complete reload, the `remove` handler will be + * called and the new app will be loaded straight after with `eval`. + * **This should only be used if the app being loaded also uses widgets** + * (eg it contains a `Bangle.loadWidgets()` call). + * `load()` is slower, but safer. As such, care should be taken + * when using `Bangle.load()` with `Bangle.setUI({..., remove:...})` + * as if your remove handler doesn't completely clean up after your app, + * memory leaks or other issues could occur - see `Bangle.setUI` for more + * information. + * + * @param {any} [file] - [optional] A string containing the file name for the app to be loaded + * @url http://www.espruino.com/Reference#l_Bangle_load + */ + static load(file: string): void; + static load(): void; + + /** + * This puts Bangle.js into the specified UI input mode, and calls the callback + * provided when there is user input. + * Currently supported interface types are: + * * 'updown' - UI input with upwards motion `cb(-1)`, downwards motion `cb(1)`, + * and select `cb()` + * * Bangle.js 1 uses BTN1/3 for up/down and BTN2 for select + * * Bangle.js 2 uses touchscreen swipe up/down and tap + * * 'leftright' - UI input with left motion `cb(-1)`, right motion `cb(1)`, and + * select `cb()` + * * Bangle.js 1 uses BTN1/3 for left/right and BTN2 for select + * * Bangle.js 2 uses touchscreen swipe left/right and tap/BTN1 for select + * * 'clock' - called for clocks. Sets `Bangle.CLOCK=1` and allows a button to + * start the launcher + * * Bangle.js 1 BTN2 starts the launcher + * * Bangle.js 2 BTN1 starts the launcher + * * 'clockupdown' - called for clocks. Sets `Bangle.CLOCK=1`, allows a button to + * start the launcher, but also provides up/down functionality + * * Bangle.js 1 BTN2 starts the launcher, BTN1/BTN3 call `cb(-1)` and `cb(1)` + * * Bangle.js 2 BTN1 starts the launcher, touchscreen tap in top/bottom right + * hand side calls `cb(-1)` and `cb(1)` + * * `{mode:"custom", ...}` allows you to specify custom handlers for different + * interactions. See below. + * * `undefined` removes all user interaction code + * While you could use setWatch/etc manually, the benefit here is that you don't + * end up with multiple `setWatch` instances, and the actual input method (touch, + * or buttons) is implemented dependent on the watch (Bangle.js 1 or 2) + * **Note:** You can override this function in boot code to change the interaction + * mode with the watch. For instance you could make all clocks start the launcher + * with a swipe by using: + * ``` + * (function() { + * var sui = Bangle.setUI; + * Bangle.setUI = function(mode, cb) { + * if (mode!="clock") return sui(mode,cb); + * sui(); // clear + * Bangle.CLOCK=1; + * Bangle.swipeHandler = Bangle.showLauncher; + * Bangle.on("swipe", Bangle.swipeHandler); + * }; + * })(); + * ``` + * The first argument can also be an object, in which case more options can be + * specified: + * ``` + * Bangle.setUI({ + * mode : "custom", + * back : function() {}, // optional - add a 'back' icon in top-left widget area and call this function when it is pressed , also call it when the hardware button is clicked (does not override btn if defined) + * remove : function() {}, // optional - add a handler for when the UI should be removed (eg stop any intervals/timers here) + * touch : function(n,e) {}, // optional - handler for 'touch' events + * swipe : function(dir) {}, // optional - handler for 'swipe' events + * drag : function(e) {}, // optional - handler for 'drag' events (Bangle.js 2 only) + * btn : function(n) {}, // optional - handler for 'button' events (n==1 on Bangle.js 2, n==1/2/3 depending on button for Bangle.js 1) + * clock : 0 // optional - if set the behavior of 'clock' mode is added (does not override btn if defined) + * }); + * ``` + * If `remove` is specified, `Bangle.showLauncher`, `Bangle.showClock`, `Bangle.load` and some apps + * may choose to just call the `remove` function and then load a new app without resetting Bangle.js. + * As a result, **if you specify 'remove' you should make sure you test that after calling `Bangle.setUI()` + * without arguments your app is completely unloaded**, otherwise you may end up with memory leaks or + * other issues when switching apps. + * + * @param {any} type - The type of UI input: 'updown', 'leftright', 'clock', 'clockupdown' or undefined to cancel. Can also be an object (see below) + * @param {any} callback - A function with one argument which is the direction + * @url http://www.espruino.com/Reference#l_Bangle_setUI + */ + static setUI(type?: "updown" | "leftright" | "clock" | "clockupdown" | { mode: "custom"; back?: () => void; touch?: TouchCallback; swipe?: SwipeCallback; drag?: DragCallback; btn?: (n: number) => void, remove?: () => void, clock?: boolean }, callback?: (direction?: -1 | 1) => void): void; + + /** + * @url http://www.espruino.com/Reference#l_Bangle_setUI + */ + static setUI(): void; + + /** + * Erase all storage and reload it with the default contents. + * This is only available on Bangle.js 2.0. On Bangle.js 1.0 you need to use + * `Install Default Apps` under the `More...` tab of http://banglejs.com/apps + * @url http://www.espruino.com/Reference#l_Bangle_factoryReset + */ + static factoryReset(): void; + + /** + * Returns the rectangle on the screen that is currently reserved for the app. + * @returns {any} An object of the form `{x,y,w,h,x2,y2}` + * @url http://www.espruino.com/Reference#l_Bangle_appRect + */ + static appRect: { x: number, y: number, w: number, h: number, x2: number, y2: number }; + + static CLOCK: boolean; + static strokes: undefined | { [key: string]: Unistroke }; } /** - * Class containing utility functions for the Seeed WIO LTE board - * @url http://www.espruino.com/Reference#WioLTE + * Class containing utility functions for accessing IO on the hexagonal badge + * @url http://www.espruino.com/Reference#Badge */ -declare class WioLTE { +declare class Badge { /** - * Set the WIO's LED + * Capacitive sense - the higher the capacitance, the higher the number returned. + * Supply a corner number between 1 and 6, and an integer value will be returned + * that is proportional to the capacitance * - * @param {number} red - 0-255, red LED intensity - * @param {number} green - 0-255, green LED intensity - * @param {number} blue - 0-255, blue LED intensity - * @url http://www.espruino.com/Reference#l_WioLTE_LED + * @param {number} corner - The corner to use + * @returns {number} Capacitive sense counter + * @url http://www.espruino.com/Reference#l_Badge_capSense */ - static LED(red: number, green: number, blue: number): void; + static capSense(corner: number): number; /** - * Set the power of Grove connectors, except for `D38` and `D39` which are always - * on. - * - * @param {boolean} onoff - Whether to turn the Grove connectors power on or off (D38/D39 are always powered) - * @url http://www.espruino.com/Reference#l_WioLTE_setGrovePower - */ - static setGrovePower(onoff: boolean): void; - - /** - * Turn power to the WIO's LED on or off. - * Turning the LED on won't immediately display a color - that must be done with - * `WioLTE.LED(r,g,b)` - * - * @param {boolean} onoff - true = on, false = off - * @url http://www.espruino.com/Reference#l_WioLTE_setLEDPower - */ - static setLEDPower(onoff: boolean): void; - - /** - * @returns {any} - * @url http://www.espruino.com/Reference#l_WioLTE_D38 - */ - static D38: any; - - /** - * @returns {any} - * @url http://www.espruino.com/Reference#l_WioLTE_D20 - */ - static D20: any; - - /** - * @returns {any} - * @url http://www.espruino.com/Reference#l_WioLTE_A6 - */ - static A6: any; - - /** - * @returns {any} - * @url http://www.espruino.com/Reference#l_WioLTE_I2C - */ - static I2C: any; - - /** - * @returns {any} - * @url http://www.espruino.com/Reference#l_WioLTE_UART - */ - static UART: any; - - /** - * @returns {any} - * @url http://www.espruino.com/Reference#l_WioLTE_A4 - */ - static A4: any; - - -} - -/** - * Class containing utility functions for - * [Pixl.js](http://www.espruino.com/Pixl.js) - * @url http://www.espruino.com/Reference#Pixl - */ -declare class Pixl { - /** - * DEPRECATED - Please use `E.getBattery()` instead. * Return an approximate battery percentage remaining based on a normal CR2032 * battery (2.8 - 2.2v) * @returns {number} A percentage between 0 and 100 - * @url http://www.espruino.com/Reference#l_Pixl_getBatteryPercentage + * @url http://www.espruino.com/Reference#l_Badge_getBatteryPercentage */ static getBatteryPercentage(): number; @@ -1121,151 +4327,458 @@ declare class Pixl { * Set the LCD's contrast * * @param {number} c - Contrast between 0 and 1 - * @url http://www.espruino.com/Reference#l_Pixl_setContrast + * @url http://www.espruino.com/Reference#l_Badge_setContrast */ static setContrast(c: number): void; - /** - * This function can be used to turn Pixl.js's LCD off or on. - * * With the LCD off, Pixl.js draws around 0.1mA - * * With the LCD on, Pixl.js draws around 0.25mA - * - * @param {boolean} isOn - True if the LCD should be on, false if not - * @url http://www.espruino.com/Reference#l_Pixl_setLCDPower - */ - static setLCDPower(isOn: boolean): void; - - /** - * Writes a command directly to the ST7567 LCD controller - * - * @param {number} c - * @url http://www.espruino.com/Reference#l_Pixl_lcdw - */ - static lcdw(c: number): void; - - /** - * Display a menu on Pixl.js's screen, and set up the buttons to navigate through - * it. - * DEPRECATED: Use `E.showMenu` - * - * @param {any} menu - An object containing name->function mappings to to be used in a menu - * @returns {any} A menu object with `draw`, `move` and `select` functions - * @url http://www.espruino.com/Reference#l_Pixl_menu - */ - static menu(menu: Menu): MenuInstance; - } /** - * This class exists in order to interface Espruino with fast-moving trigger - * wheels. Trigger wheels are physical discs with evenly spaced teeth cut into - * them, and often with one or two teeth next to each other missing. A sensor sends - * a signal whenever a tooth passed by, and this allows a device to measure not - * only RPM, but absolute position. - * This class is currently in testing - it is NOT AVAILABLE on normal boards. - * @url http://www.espruino.com/Reference#Trig + * A Web Bluetooth-style device - you can request one using + * `NRF.requestDevice(address)` + * For example: + * ``` + * var gatt; + * NRF.requestDevice({ filters: [{ name: 'Puck.js abcd' }] }).then(function(device) { + * console.log("found device"); + * return device.gatt.connect(); + * }).then(function(g) { + * gatt = g; + * console.log("connected"); + * return gatt.startBonding(); + * }).then(function() { + * console.log("bonded", gatt.getSecurityStatus()); + * gatt.disconnect(); + * }).catch(function(e) { + * console.log("ERROR",e); + * }); + * ``` + * @url http://www.espruino.com/Reference#BluetoothDevice */ -declare class Trig { +declare class BluetoothDevice { /** - * Get the position of the trigger wheel at the given time (from getTime) + * Called when the device gets disconnected. + * To connect and then print `Disconnected` when the device is disconnected, just + * do the following: + * ``` + * var gatt; + * NRF.connect("aa:bb:cc:dd:ee:ff").then(function(gatt) { + * gatt.device.on('gattserverdisconnected', function(reason) { + * console.log("Disconnected ",reason); + * }); + * }); + * ``` + * Or: + * ``` + * var gatt; + * NRF.requestDevice(...).then(function(device) { + * device.on('gattserverdisconnected', function(reason) { + * console.log("Disconnected ",reason); + * }); + * }); + * ``` + * @param {string} event - The event to listen to. + * @param {(reason: number) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `reason` The reason code reported back by the BLE stack - see Nordic's `ble_hci.h` file for more information + * @url http://www.espruino.com/Reference#l_BluetoothDevice_gattserverdisconnected + */ + static on(event: "gattserverdisconnected", callback: (reason: number) => void): void; + + /** + * Called when the device pairs and sends a passkey that Espruino should display. + * For this to be used, you'll have to specify that there's a display using + * `NRF.setSecurity` + * **This is not part of the Web Bluetooth Specification.** It has been added + * specifically for Espruino. + * @param {string} event - The event to listen to. + * @param {(passkey: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `passkey` A 6 character numeric String to be displayed + * @url http://www.espruino.com/Reference#l_BluetoothDevice_passkey + */ + static on(event: "passkey", callback: (passkey: any) => void): void; + + /** + * Called when the device pairs, displays a passkey, and wants Espruino to tell it + * what the passkey was. + * Respond with `BluetoothDevice.sendPasskey()` with a 6 character string + * containing only `0..9`. + * For this to be used, you'll have to specify that there's a keyboard using + * `NRF.setSecurity` + * **This is not part of the Web Bluetooth Specification.** It has been added + * specifically for Espruino. + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_BluetoothDevice_passkeyRequest + */ + static on(event: "passkeyRequest", callback: () => void): void; + + /** + * @returns {any} A `BluetoothRemoteGATTServer` for this device + * @url http://www.espruino.com/Reference#l_BluetoothDevice_gatt + */ + gatt: any; + + /** + * @returns {boolean} The last received RSSI (signal strength) for this device + * @url http://www.espruino.com/Reference#l_BluetoothDevice_rssi + */ + rssi: boolean; + + /** + * To be used as a response when the event `BluetoothDevice.sendPasskey` has been + * received. + * **This is not part of the Web Bluetooth Specification.** It has been added + * specifically for Espruino. * - * @param {number} time - The time at which to find the position - * @returns {number} The position of the trigger wheel in degrees - as a floating point number - * @url http://www.espruino.com/Reference#l_Trig_getPosAtTime + * @param {any} passkey - A 6 character numeric String to be returned to the device + * @url http://www.espruino.com/Reference#l_BluetoothDevice_sendPasskey */ - static getPosAtTime(time: number): number; - - /** - * Initialise the trigger class - * - * @param {Pin} pin - The pin to use for triggering - * @param {any} options - Additional options as an object. defaults are: ```{teethTotal:60,teethMissing:2,minRPM:30,keyPosition:0}``` - * @url http://www.espruino.com/Reference#l_Trig_setup - */ - static setup(pin: Pin, options: any): void; - - /** - * Set a trigger for a certain point in the cycle - * - * @param {number} num - The trigger number (0..7) - * @param {number} pos - The position (in degrees) to fire the trigger at - * @param {any} pins - An array of pins to pulse (max 4) - * @param {number} pulseLength - The time (in msec) to pulse for - * @url http://www.espruino.com/Reference#l_Trig_setTrigger - */ - static setTrigger(num: number, pos: number, pins: any, pulseLength: number): void; - - /** - * Disable a trigger - * - * @param {number} num - The trigger number (0..7) - * @url http://www.espruino.com/Reference#l_Trig_killTrigger - */ - static killTrigger(num: number): void; - - /** - * Get the current state of a trigger - * - * @param {number} num - The trigger number (0..7) - * @returns {any} A structure containing all information about the trigger - * @url http://www.espruino.com/Reference#l_Trig_getTrigger - */ - static getTrigger(num: number): any; - - /** - * Get the RPM of the trigger wheel - * @returns {number} The current RPM of the trigger wheel - * @url http://www.espruino.com/Reference#l_Trig_getRPM - */ - static getRPM(): number; - - /** - * Get the current error flags from the trigger wheel - and zero them - * @returns {number} The error flags - * @url http://www.espruino.com/Reference#l_Trig_getErrors - */ - static getErrors(): number; - - /** - * Get the current error flags from the trigger wheel - and zero them - * @returns {any} An array of error strings - * @url http://www.espruino.com/Reference#l_Trig_getErrorArray - */ - static getErrorArray(): any; - - + sendPasskey(passkey: any): void; } /** - * Class containing AES encryption/decryption - * **Note:** This library is currently only included in builds for boards where - * there is space. For other boards there is `crypto.js` which implements SHA1 in - * JS. - * @url http://www.espruino.com/Reference#AES + * Web Bluetooth-style GATT server - get this using `NRF.connect(address)` or + * `NRF.requestDevice(options)` and `response.gatt.connect` + * https://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattserver + * @url http://www.espruino.com/Reference#BluetoothRemoteGATTServer */ -declare class AES { - /** - * - * @param {any} passphrase - Message to encrypt - * @param {any} key - Key to encrypt message - must be an ArrayBuffer of 128, 192, or 256 BITS - * @param {any} options - An optional object, may specify `{ iv : new Uint8Array(16), mode : 'CBC|CFB|CTR|OFB|ECB' }` - * @returns {any} Returns an ArrayBuffer - * @url http://www.espruino.com/Reference#l_AES_encrypt - */ - static encrypt(passphrase: any, key: any, options: any): ArrayBuffer; +declare class BluetoothRemoteGATTServer { + /** + * Connect to a BLE device - returns a promise, the argument of which is the + * `BluetoothRemoteGATTServer` connection. + * See [`NRF.requestDevice`](/Reference#l_NRF_requestDevice) for usage examples. + * `options` is an optional object containing: + * ``` + * { + * minInterval // min connection interval in milliseconds, 7.5 ms to 4 s + * maxInterval // max connection interval in milliseconds, 7.5 ms to 4 s + * } + * ``` + * By default the interval is 20-200ms (or 500-1000ms if + * `NRF.setLowPowerConnection(true)` was called. During connection Espruino + * negotiates with the other device to find a common interval that can be used. + * For instance calling: + * ``` + * NRF.requestDevice({ filters: [{ namePrefix: 'Pixl.js' }] }).then(function(device) { + * return device.gatt.connect({minInterval:7.5, maxInterval:7.5}); + * }).then(function(g) { + * ``` + * will force the connection to use the fastest connection interval possible (as + * long as the device at the other end supports it). + * **Note:** The Web Bluetooth spec states that if a device hasn't advertised its + * name, when connected to a device the central (in this case Espruino) should + * automatically retrieve the name from the corresponding characteristic (`0x2a00` + * on service `0x1800`). Espruino does not automatically do this. * - * @param {any} passphrase - Message to decrypt - * @param {any} key - Key to encrypt message - must be an ArrayBuffer of 128, 192, or 256 BITS - * @param {any} options - An optional object, may specify `{ iv : new Uint8Array(16), mode : 'CBC|CFB|CTR|OFB|ECB' }` - * @returns {any} Returns an ArrayBuffer - * @url http://www.espruino.com/Reference#l_AES_decrypt + * @param {any} [options] - [optional] (Espruino-specific) An object of connection options (see below) + * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_connect */ - static decrypt(passphrase: any, key: any, options: any): ArrayBuffer; + connect(options?: any): Promise; + + /** + * @returns {boolean} Whether the device is connected or not + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_connected + */ + connected: boolean; + + /** + * @returns {number} The handle to this device (if it is currently connected) - the handle is an internal value used by the Bluetooth Stack + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_handle + */ + handle: number; + + /** + * Disconnect from a previously connected BLE device connected with + * `BluetoothRemoteGATTServer.connect` - this does not disconnect from something + * that has connected to the Espruino. + * **Note:** While `.disconnect` is standard Web Bluetooth, in the spec it returns + * undefined not a `Promise` for implementation reasons. In Espruino we return a + * `Promise` to make it easier to detect when Espruino is free to connect to + * something else. + * @returns {any} A `Promise` that is resolved (or rejected) when the disconnection is complete (non-standard) + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_disconnect + */ + disconnect(): Promise; + + /** + * Start negotiating bonding (secure communications) with the connected device, and + * return a Promise that is completed on success or failure. + * ``` + * var gatt; + * NRF.requestDevice({ filters: [{ name: 'Puck.js abcd' }] }).then(function(device) { + * console.log("found device"); + * return device.gatt.connect(); + * }).then(function(g) { + * gatt = g; + * console.log("connected"); + * return gatt.startBonding(); + * }).then(function() { + * console.log("bonded", gatt.getSecurityStatus()); + * gatt.disconnect(); + * }).catch(function(e) { + * console.log("ERROR",e); + * }); + * ``` + * **This is not part of the Web Bluetooth Specification.** It has been added + * specifically for Espruino. + * + * @param {boolean} forceRePair - If the device is already bonded, re-pair it + * @returns {any} A `Promise` that is resolved (or rejected) when the bonding is complete + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_startBonding + */ + startBonding(forceRePair: boolean): Promise; + + /** + * Return an object with information about the security state of the current + * connection: + * ``` + * { + * connected // The connection is active (not disconnected). + * encrypted // Communication on this link is encrypted. + * mitm_protected // The encrypted communication is also protected against man-in-the-middle attacks. + * bonded // The peer is bonded with us + * } + * ``` + * See `BluetoothRemoteGATTServer.startBonding` for information about negotiating a + * secure connection. + * **This is not part of the Web Bluetooth Specification.** It has been added + * specifically for Puck.js. + * @returns {any} An object + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_getSecurityStatus + */ + getSecurityStatus(): any; + + /** + * See `NRF.connect` for usage examples. + * + * @param {any} service - The service UUID + * @returns {any} A `Promise` that is resolved (or rejected) when the primary service is found (the argument contains a `BluetoothRemoteGATTService`) + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_getPrimaryService + */ + getPrimaryService(service: any): Promise; + + /** + * @returns {any} A `Promise` that is resolved (or rejected) when the primary services are found (the argument contains an array of `BluetoothRemoteGATTService`) + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_getPrimaryServices + */ + getPrimaryServices(): Promise; + + /** + * Start/stop listening for RSSI values on the active GATT connection + * ``` + * // Start listening for RSSI value updates + * gattServer.setRSSIHandler(function(rssi) { + * console.log(rssi); // prints -85 (or similar) + * }); + * // Stop listening + * gattServer.setRSSIHandler(); + * ``` + * RSSI is the 'Received Signal Strength Indication' in dBm + * + * @param {any} callback - The callback to call with the RSSI value, or undefined to stop + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_setRSSIHandler + */ + setRSSIHandler(callback: any): void; +} + +/** + * Web Bluetooth-style GATT service - get this using + * `BluetoothRemoteGATTServer.getPrimaryService(s)` + * https://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattservice + * @url http://www.espruino.com/Reference#BluetoothRemoteGATTService + */ +declare class BluetoothRemoteGATTService { + /** + * @returns {any} The `BluetoothDevice` this Service came from + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTService_device + */ + device: any; + + /** + * See `NRF.connect` for usage examples. + * + * @param {any} characteristic - The characteristic UUID + * @returns {any} A `Promise` that is resolved (or rejected) when the characteristic is found (the argument contains a `BluetoothRemoteGATTCharacteristic`) + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTService_getCharacteristic + */ + getCharacteristic(characteristic: any): Promise; + + /** + * @returns {any} A `Promise` that is resolved (or rejected) when the characteristic is found (the argument contains an array of `BluetoothRemoteGATTCharacteristic`) + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTService_getCharacteristics + */ + getCharacteristics(): Promise; +} + +/** + * Web Bluetooth-style GATT characteristic - get this using + * `BluetoothRemoteGATTService.getCharacteristic(s)` + * https://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattcharacteristic + * @url http://www.espruino.com/Reference#BluetoothRemoteGATTCharacteristic + */ +declare class BluetoothRemoteGATTCharacteristic { + /** + * Called when a characteristic's value changes, *after* + * `BluetoothRemoteGATTCharacteristic.startNotifications` has been called. + * ``` + * ... + * return service.getCharacteristic("characteristic_uuid"); + * }).then(function(c) { + * c.on('characteristicvaluechanged', function(event) { + * console.log("-> "+event.target.value); + * }); + * return c.startNotifications(); + * }).then(... + * ``` + * The first argument is of the form `{target : + * BluetoothRemoteGATTCharacteristic}`, and + * `BluetoothRemoteGATTCharacteristic.value` will then contain the new value (as a + * DataView). + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_characteristicvaluechanged + */ + static on(event: "characteristicvaluechanged", callback: () => void): void; + + /** + * @returns {any} The `BluetoothRemoteGATTService` this Service came from + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_service + */ + service: any; + + /** + * Write a characteristic's value + * ``` + * var device; + * NRF.connect(device_address).then(function(d) { + * device = d; + * return d.getPrimaryService("service_uuid"); + * }).then(function(s) { + * console.log("Service ",s); + * return s.getCharacteristic("characteristic_uuid"); + * }).then(function(c) { + * return c.writeValue("Hello"); + * }).then(function(d) { + * device.disconnect(); + * }).catch(function() { + * console.log("Something's broken."); + * }); + * ``` + * + * @param {any} data - The data to write + * @returns {any} A `Promise` that is resolved (or rejected) when the characteristic is written + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_writeValue + */ + writeValue(data: any): Promise; + + /** + * Read a characteristic's value, return a promise containing a `DataView` + * ``` + * var device; + * NRF.connect(device_address).then(function(d) { + * device = d; + * return d.getPrimaryService("service_uuid"); + * }).then(function(s) { + * console.log("Service ",s); + * return s.getCharacteristic("characteristic_uuid"); + * }).then(function(c) { + * return c.readValue(); + * }).then(function(d) { + * console.log("Got:", JSON.stringify(d.buffer)); + * device.disconnect(); + * }).catch(function() { + * console.log("Something's broken."); + * }); + * ``` + * @returns {any} A `Promise` that is resolved (or rejected) with a `DataView` when the characteristic is read + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_readValue + */ + readValue(): Promise; + + /** + * Starts notifications - whenever this characteristic's value changes, a + * `characteristicvaluechanged` event is fired and `characteristic.value` will then + * contain the new value as a `DataView`. + * ``` + * var device; + * NRF.connect(device_address).then(function(d) { + * device = d; + * return d.getPrimaryService("service_uuid"); + * }).then(function(s) { + * console.log("Service ",s); + * return s.getCharacteristic("characteristic_uuid"); + * }).then(function(c) { + * c.on('characteristicvaluechanged', function(event) { + * console.log("-> ",event.target.value); // this is a DataView + * }); + * return c.startNotifications(); + * }).then(function(d) { + * console.log("Waiting for notifications"); + * }).catch(function() { + * console.log("Something's broken."); + * }); + * ``` + * For example, to listen to the output of another Puck.js's Nordic Serial port + * service, you can use: + * ``` + * var gatt; + * NRF.connect("pu:ck:js:ad:dr:es random").then(function(g) { + * gatt = g; + * return gatt.getPrimaryService("6e400001-b5a3-f393-e0a9-e50e24dcca9e"); + * }).then(function(service) { + * return service.getCharacteristic("6e400003-b5a3-f393-e0a9-e50e24dcca9e"); + * }).then(function(characteristic) { + * characteristic.on('characteristicvaluechanged', function(event) { + * console.log("RX: "+JSON.stringify(event.target.value.buffer)); + * }); + * return characteristic.startNotifications(); + * }).then(function() { + * console.log("Done!"); + * }); + * ``` + * @returns {any} A `Promise` that is resolved (or rejected) with data when notifications have been added + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_startNotifications + */ + startNotifications(): Promise; + + /** + * Stop notifications (that were requested with + * `BluetoothRemoteGATTCharacteristic.startNotifications`) + * @returns {any} A `Promise` that is resolved (or rejected) with data when notifications have been removed + * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_stopNotifications + */ + stopNotifications(): Promise; +} + +/** + * Class containing an instance of TFMicroInterpreter + * @url http://www.espruino.com/Reference#TFMicroInterpreter + */ +declare class TFMicroInterpreter { + + + /** + * @returns {any} An arraybuffer referencing the input data + * @url http://www.espruino.com/Reference#l_TFMicroInterpreter_getInput + */ + getInput(): ArrayBufferView; + + /** + * @returns {any} An arraybuffer referencing the output data + * @url http://www.espruino.com/Reference#l_TFMicroInterpreter_getOutput + */ + getOutput(): ArrayBufferView; + + /** + * @url http://www.espruino.com/Reference#l_TFMicroInterpreter_invoke + */ + invoke(): void; } /** @@ -1273,9 +4786,9 @@ declare class AES { * Use Graphics.createXXX to create a graphics object that renders in the way you * want. See [the Graphics page](https://www.espruino.com/Graphics) for more * information. - * **Note:** On boards that contain an LCD, there is a built-in 'LCD' object of - * type Graphics. For instance to draw a line you'd type: - * ```LCD.drawLine(0,0,100,100)``` + * **Note:** On boards that contain an LCD, there is a built-in `g` object of + * type `Graphics`. For instance to draw a line you'd type: + * ```g.drawLine(0,0,100,100)``` * @url http://www.espruino.com/Reference#Graphics */ declare class Graphics { @@ -1358,20 +4871,20 @@ declare class Graphics { /** * Set the current font * - * @param {number} scale - (optional) If >1 the font will be scaled up by that amount + * @param {number} [scale] - [optional] If >1 the font will be scaled up by that amount * @returns {any} The instance of Graphics this was called on, to allow call chaining - * @url http://www.espruino.com/Reference#l_Graphics_setFont6x15 + * @url http://www.espruino.com/Reference#l_Graphics_setFont12x20 */ - setFont6x15(scale: number): Graphics; + setFont12x20(scale?: number): Graphics; /** * Set the current font * - * @param {number} scale - (optional) If >1 the font will be scaled up by that amount + * @param {number} [scale] - [optional] If >1 the font will be scaled up by that amount * @returns {any} The instance of Graphics this was called on, to allow call chaining - * @url http://www.espruino.com/Reference#l_Graphics_setFont12x20 + * @url http://www.espruino.com/Reference#l_Graphics_setFont6x15 */ - setFont12x20(scale: number): Graphics; + setFont6x15(scale?: number): Graphics; /** * On instances of graphics that drive a display with an offscreen buffer, calling @@ -1635,8 +5148,8 @@ declare class Graphics { * @returns {any} The instance of Graphics this was called on, to allow call chaining * @url http://www.espruino.com/Reference#l_Graphics_setColor */ - setColor(r: number, g: number, b: number): number; - setColor(col: ColorResolvable): number; + setColor(r: number, g: number, b: number): Graphics; + setColor(col: ColorResolvable): Graphics; /** * Set the background color to use for subsequent drawing operations. @@ -1650,8 +5163,8 @@ declare class Graphics { * @returns {any} The instance of Graphics this was called on, to allow call chaining * @url http://www.espruino.com/Reference#l_Graphics_setBgColor */ - setBgColor(r: number, g: number, b: number): number; - setBgColor(col: ColorResolvable): number; + setBgColor(r: number, g: number, b: number): Graphics; + setBgColor(col: ColorResolvable): Graphics; /** * Get the color to use for subsequent drawing operations @@ -1844,6 +5357,23 @@ declare class Graphics { */ drawString(str: string, x: number, y: number, solid?: boolean): Graphics; + /** + * Return the current string as a series of polygons (using the current vector font). `options` is as follows: + * * `x` - X offset of font (default 0) + * * `y` - Y offset of font (default 0) + * * `w` - Width of font (default 256) - the actual width will likely be less than this as most characters are non-square + * * `h` - Height of font (default 256) - the actual height will likely be less than this as most characters don't fully fill the font box + * ``` + * g.getVectorFontPolys("Hi", {x:-80,y:-128}); + * ``` + * + * @param {any} str - The string + * @param {any} [options] - [optional] `{x,y,w,h}` (see below) + * @returns {any} An array of Uint8Arrays for vector font polygons + * @url http://www.espruino.com/Reference#l_Graphics_getVectorFontPolys + */ + getVectorFontPolys(str: any, options?: any): any[]; + /** * Draw a line between x1,y1 and x2,y2 in the current foreground color * @@ -2239,3827 +5769,455 @@ declare class Graphics { } /** - * This class helps to convert URLs into Objects of information ready for - * http.request/get - * @url http://www.espruino.com/Reference#url + * Class containing utility functions for the Seeed WIO LTE board + * @url http://www.espruino.com/Reference#WioLTE */ -declare class url { +declare class WioLTE { /** - * A utility function to split a URL into parts - * This is useful in web servers for instance when handling a request. - * For instance `url.parse("/a?b=c&d=e",true)` returns - * `{"method":"GET","host":"","path":"/a?b=c&d=e","pathname":"/a","search":"?b=c&d=e","port":80,"query":{"b":"c","d":"e"}}` + * Set the WIO's LED * - * @param {any} urlStr - A URL to be parsed - * @param {boolean} parseQuery - Whether to parse the query string into an object not (default = false) - * @returns {any} An object containing options for ```http.request``` or ```http.get```. Contains `method`, `host`, `path`, `pathname`, `search`, `port` and `query` - * @url http://www.espruino.com/Reference#l_url_parse + * @param {number} red - 0-255, red LED intensity + * @param {number} green - 0-255, green LED intensity + * @param {number} blue - 0-255, blue LED intensity + * @url http://www.espruino.com/Reference#l_WioLTE_LED */ - static parse(urlStr: any, parseQuery: boolean): any; - - -} - -/** - * The socket server created by `require('net').createServer` - * @url http://www.espruino.com/Reference#Server - */ -declare class Server { - + static LED(red: number, green: number, blue: number): void; /** - * Start listening for new connections on the given port + * Set the power of Grove connectors, except for `D38` and `D39` which are always + * on. * - * @param {number} port - The port to listen on - * @returns {any} The HTTP server instance that 'listen' was called on - * @url http://www.espruino.com/Reference#l_Server_listen + * @param {boolean} onoff - Whether to turn the Grove connectors power on or off (D38/D39 are always powered) + * @url http://www.espruino.com/Reference#l_WioLTE_setGrovePower */ - listen(port: number): any; + static setGrovePower(onoff: boolean): void; /** - * Stop listening for new connections - * @url http://www.espruino.com/Reference#l_Server_close - */ - close(): void; -} - -/** - * An actual socket connection - allowing transmit/receive of TCP data - * @url http://www.espruino.com/Reference#Socket - */ -declare class Socket { - /** - * The 'data' event is called when data is received. If a handler is defined with - * `X.on('data', function(data) { ... })` then it will be called, otherwise data - * will be stored in an internal buffer, where it can be retrieved with `X.read()` - * @param {string} event - The event to listen to. - * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `data` A string containing one or more characters of received data - * @url http://www.espruino.com/Reference#l_Socket_data - */ - static on(event: "data", callback: (data: any) => void): void; - - /** - * Called when the connection closes. - * @param {string} event - The event to listen to. - * @param {(had_error: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `had_error` A boolean indicating whether the connection had an error (use an error event handler to get error details). - * @url http://www.espruino.com/Reference#l_Socket_close - */ - static on(event: "close", callback: (had_error: any) => void): void; - - /** - * There was an error on this socket and it is closing (or wasn't opened in the - * first place). If a "connected" event was issued on this socket then the error - * event is always followed by a close event. The error codes are: - * * -1: socket closed (this is not really an error and will not cause an error - * callback) - * * -2: out of memory (typically while allocating a buffer to hold data) - * * -3: timeout - * * -4: no route - * * -5: busy - * * -6: not found (DNS resolution) - * * -7: max sockets (... exceeded) - * * -8: unsent data (some data could not be sent) - * * -9: connection reset (or refused) - * * -10: unknown error - * * -11: no connection - * * -12: bad argument - * * -13: SSL handshake failed - * * -14: invalid SSL data - * @param {string} event - The event to listen to. - * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `details` An error object with an error code (a negative integer) and a message. - * @url http://www.espruino.com/Reference#l_Socket_error - */ - static on(event: "error", callback: (details: any) => void): void; - - /** - * An event that is fired when the buffer is empty and it can accept more data to - * send. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_Socket_drain - */ - static on(event: "drain", callback: () => void): void; - - /** - * Return how many bytes are available to read. If there is already a listener for - * data, this will always return 0. - * @returns {number} How many bytes are available - * @url http://www.espruino.com/Reference#l_Socket_available - */ - available(): number; - - /** - * Return a string containing characters that have been received + * Turn power to the WIO's LED on or off. + * Turning the LED on won't immediately display a color - that must be done with + * `WioLTE.LED(r,g,b)` * - * @param {number} chars - The number of characters to read, or undefined/0 for all available - * @returns {any} A string containing the required bytes. - * @url http://www.espruino.com/Reference#l_Socket_read + * @param {boolean} onoff - true = on, false = off + * @url http://www.espruino.com/Reference#l_WioLTE_setLEDPower */ - read(chars: number): any; + static setLEDPower(onoff: boolean): void; /** - * Pipe this to a stream (an object with a 'write' method) - * - * @param {any} destination - The destination file/stream that will receive content from the source. - * @param {any} options - * An optional object `{ chunkSize : int=32, end : bool=true, complete : function }` - * chunkSize : The amount of data to pipe from source to destination at a time - * complete : a function to call when the pipe activity is complete - * end : call the 'end' function on the destination when the source is finished - * @url http://www.espruino.com/Reference#l_Socket_pipe - */ - pipe(destination: any, options: any): void; - - /** - * This function writes the `data` argument as a string. Data that is passed in - * (including arrays) will be converted to a string with the normal JavaScript - * `toString` method. - * If you wish to send binary data then you need to convert that data directly to a - * String. This can be done with `String.fromCharCode`, however it's often easier - * and faster to use the Espruino-specific `E.toString`, which will read its - * arguments as an array of bytes and convert that to a String: - * ``` - * socket.write(E.toString([0,1,2,3,4,5])); - * ``` - * If you need to send something other than bytes, you can use 'Typed Arrays', or - * even `DataView`: - * ``` - * var d = new DataView(new ArrayBuffer(8)); // 8 byte array buffer - * d.setFloat32(0, 765.3532564); // write float at bytes 0-3 - * d.setInt8(4, 42); // write int8 at byte 4 - * socket.write(E.toString(d.buffer)) - * ``` - * - * @param {any} data - A string containing data to send - * @returns {boolean} For node.js compatibility, returns the boolean false. When the send buffer is empty, a `drain` event will be sent - * @url http://www.espruino.com/Reference#l_Socket_write - */ - write(data: any): boolean; - - /** - * Close this socket - optional data to append as an argument. - * See `Socket.write` for more information about the data argument - * - * @param {any} data - A string containing data to send - * @url http://www.espruino.com/Reference#l_Socket_end - */ - end(data: any): void; -} - -/** - * An actual socket connection - allowing transmit/receive of TCP data - * @url http://www.espruino.com/Reference#dgramSocket - */ -declare class dgramSocket { - /** - * The 'message' event is called when a datagram message is received. If a handler - * is defined with `X.on('message', function(msg) { ... })` then it will be called` - * @param {string} event - The event to listen to. - * @param {(msg: any, rinfo: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `msg` A string containing the received message - * * `rinfo` Sender address,port containing information - * @url http://www.espruino.com/Reference#l_dgramSocket_message - */ - static on(event: "message", callback: (msg: any, rinfo: any) => void): void; - - /** - * Called when the connection closes. - * @param {string} event - The event to listen to. - * @param {(had_error: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `had_error` A boolean indicating whether the connection had an error (use an error event handler to get error details). - * @url http://www.espruino.com/Reference#l_dgramSocket_close - */ - static on(event: "close", callback: (had_error: any) => void): void; - - /** - * - * @param {any} buffer - A string containing message to send - * @param {any} offset - Offset in the passed string where the message starts [optional] - * @param {any} length - Number of bytes in the message [optional] - * @param {any} args - Destination port number, Destination IP address string - * @url http://www.espruino.com/Reference#l_dgramSocket_send - */ - send(buffer: any, offset: any, length: any, ...args: any[]): void; - - /** - * - * @param {number} port - The port to bind at - * @param {any} callback - A function(res) that will be called when the socket is bound. You can then call `res.on('message', function(message, info) { ... })` and `res.on('close', function() { ... })` to deal with the response. - * @returns {any} The dgramSocket instance that 'bind' was called on - * @url http://www.espruino.com/Reference#l_dgramSocket_bind - */ - bind(port: number, callback: any): any; - - /** - * Close the socket - * @url http://www.espruino.com/Reference#l_dgramSocket_close - */ - close(): void; - - /** - * - * @param {any} group - A string containing the group ip to join - * @param {any} ip - A string containing the ip to join with - * @url http://www.espruino.com/Reference#l_dgramSocket_addMembership - */ - addMembership(group: any, ip: any): void; -} - -/** - * An instantiation of a WiFi network adaptor - * @url http://www.espruino.com/Reference#WLAN - */ -declare class WLAN { - - - /** - * Connect to a wireless network - * - * @param {any} ap - Access point name - * @param {any} key - WPA2 key (or undefined for unsecured connection) - * @param {any} callback - Function to call back with connection status. It has one argument which is one of 'connect'/'disconnect'/'dhcp' - * @returns {boolean} True if connection succeeded, false if it didn't. - * @url http://www.espruino.com/Reference#l_WLAN_connect - */ - connect(ap: any, key: any, callback: any): boolean; - - /** - * Completely uninitialise and power down the CC3000. After this you'll have to use - * ```require("CC3000").connect()``` again. - * @url http://www.espruino.com/Reference#l_WLAN_disconnect - */ - disconnect(): void; - - /** - * Completely uninitialise and power down the CC3000, then reconnect to the old - * access point. - * @url http://www.espruino.com/Reference#l_WLAN_reconnect - */ - reconnect(): void; - - /** - * Get the current IP address * @returns {any} - * @url http://www.espruino.com/Reference#l_WLAN_getIP + * @url http://www.espruino.com/Reference#l_WioLTE_D38 */ - getIP(): any; + static D38: any; /** - * Set the current IP address for get an IP from DHCP (if no options object is - * specified). - * **Note:** Changes are written to non-volatile memory, but will only take effect - * after calling `wlan.reconnect()` - * - * @param {any} options - Object containing IP address options `{ ip : '1,2,3,4', subnet, gateway, dns }`, or do not supply an object in otder to force DHCP. - * @returns {boolean} True on success - * @url http://www.espruino.com/Reference#l_WLAN_setIP - */ - setIP(options: any): boolean; -} - -/** - * Class containing utility functions for the - * [ESP8266](http://www.espruino.com/EspruinoESP8266) - * @url http://www.espruino.com/Reference#ESP8266 - */ -declare class ESP8266 { - /** - * **DEPRECATED** - please use `Wifi.ping` instead. - * Perform a network ping request. The parameter can be either a String or a - * numeric IP address. - * - * @param {any} ipAddr - A string representation of an IP address. - * @param {any} pingCallback - Optional callback function. - * @url http://www.espruino.com/Reference#l_ESP8266_ping - */ - static ping(ipAddr: any, pingCallback: any): void; - - /** - * Perform a hardware reset/reboot of the esp8266. - * @url http://www.espruino.com/Reference#l_ESP8266_reboot - */ - static reboot(): void; - - /** - * At boot time the esp8266's firmware captures the cause of the reset/reboot. This - * function returns this information in an object with the following fields: - * * `reason`: "power on", "wdt reset", "exception", "soft wdt", "restart", "deep - * sleep", or "reset pin" - * * `exccause`: exception cause - * * `epc1`, `epc2`, `epc3`: instruction pointers - * * `excvaddr`: address being accessed - * * `depc`: (?) - * @returns {any} An object with the reset cause information - * @url http://www.espruino.com/Reference#l_ESP8266_getResetInfo - */ - static getResetInfo(): any; - - /** - * Enable or disable the logging of debug information. A value of `true` enables - * debug logging while a value of `false` disables debug logging. Debug output is - * sent to UART1 (gpio2). - * - * @param {boolean} enable - Enable or disable the debug logging. - * @url http://www.espruino.com/Reference#l_ESP8266_logDebug - */ - static logDebug(enable: boolean): void; - - /** - * Set the debug logging mode. It can be disabled (which frees ~1.2KB of heap), - * enabled in-memory only, or in-memory and output to a UART. - * - * @param {number} mode - Debug log mode: 0=off, 1=in-memory only, 2=in-mem and uart0, 3=in-mem and uart1. - * @url http://www.espruino.com/Reference#l_ESP8266_setLog - */ - static setLog(mode: number): void; - - /** - * Prints the contents of the debug log to the console. - * @url http://www.espruino.com/Reference#l_ESP8266_printLog - */ - static printLog(): void; - - /** - * Returns one line from the log or up to 128 characters. - * @url http://www.espruino.com/Reference#l_ESP8266_readLog - */ - static readLog(): void; - - /** - * Dumps info about all sockets to the log. This is for troubleshooting the socket - * implementation. - * @url http://www.espruino.com/Reference#l_ESP8266_dumpSocketInfo - */ - static dumpSocketInfo(): void; - - /** - * **Note:** This is deprecated. Use `E.setClock(80/160)` **Note:** Set the - * operating frequency of the ESP8266 processor. The default is 160Mhz. - * **Warning**: changing the cpu frequency affects the timing of some I/O - * operations, notably of software SPI and I2C, so things may be a bit slower at - * 80Mhz. - * - * @param {any} freq - Desired frequency - either 80 or 160. - * @url http://www.espruino.com/Reference#l_ESP8266_setCPUFreq - */ - static setCPUFreq(freq: any): void; - - /** - * Returns an object that contains details about the state of the ESP8266 with the - * following fields: - * * `sdkVersion` - Version of the SDK. - * * `cpuFrequency` - CPU operating frequency in Mhz. - * * `freeHeap` - Amount of free heap in bytes. - * * `maxCon` - Maximum number of concurrent connections. - * * `flashMap` - Configured flash size&map: '512KB:256/256' .. '4MB:512/512' - * * `flashKB` - Configured flash size in KB as integer - * * `flashChip` - Type of flash chip as string with manufacturer & chip, ex: '0xEF - * 0x4016` - * @returns {any} The state of the ESP8266 - * @url http://www.espruino.com/Reference#l_ESP8266_getState - */ - static getState(): any; - - /** - * **Note:** This is deprecated. Use `require("Flash").getFree()` - * @returns {any} Array of objects with `addr` and `length` properties describing the free flash areas available - * @url http://www.espruino.com/Reference#l_ESP8266_getFreeFlash - */ - static getFreeFlash(): any; - - /** - * - * @param {any} arrayOfData - Array of data to CRC - * @returns {any} 32-bit CRC - * @url http://www.espruino.com/Reference#l_ESP8266_crc32 - */ - static crc32(arrayOfData: any): any; - - /** - * **This function is deprecated.** Please use `require("neopixel").write(pin, - * data)` instead - * - * @param {Pin} pin - Pin for output signal. - * @param {any} arrayOfData - Array of LED data. - * @url http://www.espruino.com/Reference#l_ESP8266_neopixelWrite - */ - static neopixelWrite(pin: Pin, arrayOfData: any): void; - - /** - * Put the ESP8266 into 'deep sleep' for the given number of microseconds, reducing - * power consumption drastically. - * meaning of option values: - * 0 - the 108th Byte of init parameter decides whether RF calibration will be - * performed or not. - * 1 - run RF calibration after waking up. Power consumption is high. - * 2 - no RF calibration after waking up. Power consumption is low. - * 4 - no RF after waking up. Power consumption is the lowest. - * **Note:** unlike normal Espruino boards' 'deep sleep' mode, ESP8266 deep sleep - * actually turns off the processor. After the given number of microseconds have - * elapsed, the ESP8266 will restart as if power had been turned off and then back - * on. *All contents of RAM will be lost*. Connect GPIO 16 to RST to enable wakeup. - * **Special:** 0 microseconds cause sleep forever until external wakeup RST pull - * down occurs. - * - * @param {any} micros - Number of microseconds to sleep. - * @param {any} option - posible values are 0, 1, 2 or 4 - * @url http://www.espruino.com/Reference#l_ESP8266_deepSleep - */ - static deepSleep(micros: any, option: any): void; - - -} - -/** - * An instantiation of an Ethernet network adaptor - * @url http://www.espruino.com/Reference#Ethernet - */ -declare class Ethernet { - - - /** - * Get the current IP address, subnet, gateway and mac address. - * - * @param {any} options - An optional `callback(err, ipinfo)` function to be called back with the IP information. * @returns {any} - * @url http://www.espruino.com/Reference#l_Ethernet_getIP + * @url http://www.espruino.com/Reference#l_WioLTE_D20 */ - getIP(options: any): any; + static D20: any; /** - * Set the current IP address or get an IP from DHCP (if no options object is - * specified) - * If 'mac' is specified as an option, it must be a string of the form - * `"00:01:02:03:04:05"` The default mac is 00:08:DC:01:02:03. - * - * @param {any} options - Object containing IP address options `{ ip : '1.2.3.4', subnet : '...', gateway: '...', dns:'...', mac:':::::' }`, or do not supply an object in order to force DHCP. - * @param {any} callback - An optional `callback(err)` function to invoke when ip is set. `err==null` on success, or a string on failure. - * @returns {boolean} True on success - * @url http://www.espruino.com/Reference#l_Ethernet_setIP - */ - setIP(options: any, callback: any): boolean; - - /** - * Set hostname allow to set the hosname used during the dhcp request. min 8 and - * max 12 char, best set before calling `eth.setIP()` Default is WIZnet010203, - * 010203 is the default nic as part of the mac. Best to set the hosname before - * calling setIP(). - * - * @param {any} hostname - hostname as string - * @param {any} callback - An optional `callback(err)` function to be called back with null or error text. - * @returns {boolean} True on success - * @url http://www.espruino.com/Reference#l_Ethernet_setHostname - */ - setHostname(hostname: any, callback: any): boolean; - - /** - * Returns the hostname - * - * @param {any} callback - An optional `callback(err,hostname)` function to be called back with the status information. * @returns {any} - * @url http://www.espruino.com/Reference#l_Ethernet_getHostname + * @url http://www.espruino.com/Reference#l_WioLTE_A6 */ - getHostname(callback: any): any; + static A6: any; /** - * Get the current status of the ethernet device - * - * @param {any} options - An optional `callback(err, status)` function to be called back with the status information. * @returns {any} - * @url http://www.espruino.com/Reference#l_Ethernet_getStatus + * @url http://www.espruino.com/Reference#l_WioLTE_I2C */ - getStatus(options: any): any; -} - -/** - * The HTTP server created by `require('http').createServer` - * @url http://www.espruino.com/Reference#httpSrv - */ -declare class httpSrv { - - - /** - * Start listening for new HTTP connections on the given port - * - * @param {number} port - The port to listen on - * @returns {any} The HTTP server instance that 'listen' was called on - * @url http://www.espruino.com/Reference#l_httpSrv_listen - */ - listen(port: number): any; - - /** - * Stop listening for new HTTP connections - * @url http://www.espruino.com/Reference#l_httpSrv_close - */ - close(): void; -} - -/** - * The HTTP server request - * @url http://www.espruino.com/Reference#httpSRq - */ -declare class httpSRq { - /** - * The 'data' event is called when data is received. If a handler is defined with - * `X.on('data', function(data) { ... })` then it will be called, otherwise data - * will be stored in an internal buffer, where it can be retrieved with `X.read()` - * @param {string} event - The event to listen to. - * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `data` A string containing one or more characters of received data - * @url http://www.espruino.com/Reference#l_httpSRq_data - */ - static on(event: "data", callback: (data: any) => void): void; - - /** - * Called when the connection closes. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_httpSRq_close - */ - static on(event: "close", callback: () => void): void; - - /** - * The headers to sent to the server with this HTTP request. - * @returns {any} An object mapping header name to value - * @url http://www.espruino.com/Reference#l_httpSRq_headers - */ - headers: any; - - /** - * The HTTP method used with this request. Often `"GET"`. - * @returns {any} A string - * @url http://www.espruino.com/Reference#l_httpSRq_method - */ - method: any; - - /** - * The URL requested in this HTTP request, for instance: - * * `"/"` - the main page - * * `"/favicon.ico"` - the web page's icon - * @returns {any} A string representing the URL - * @url http://www.espruino.com/Reference#l_httpSRq_url - */ - url: any; - - /** - * Return how many bytes are available to read. If there is already a listener for - * data, this will always return 0. - * @returns {number} How many bytes are available - * @url http://www.espruino.com/Reference#l_httpSRq_available - */ - available(): number; - - /** - * Return a string containing characters that have been received - * - * @param {number} chars - The number of characters to read, or undefined/0 for all available - * @returns {any} A string containing the required bytes. - * @url http://www.espruino.com/Reference#l_httpSRq_read - */ - read(chars: number): any; - - /** - * Pipe this to a stream (an object with a 'write' method) - * - * @param {any} destination - The destination file/stream that will receive content from the source. - * @param {any} options - * An optional object `{ chunkSize : int=32, end : bool=true, complete : function }` - * chunkSize : The amount of data to pipe from source to destination at a time - * complete : a function to call when the pipe activity is complete - * end : call the 'end' function on the destination when the source is finished - * @url http://www.espruino.com/Reference#l_httpSRq_pipe - */ - pipe(destination: any, options: any): void; -} - -/** - * The HTTP server response - * @url http://www.espruino.com/Reference#httpSRs - */ -declare class httpSRs { - /** - * An event that is fired when the buffer is empty and it can accept more data to - * send. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_httpSRs_drain - */ - static on(event: "drain", callback: () => void): void; - - /** - * Called when the connection closes. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_httpSRs_close - */ - static on(event: "close", callback: () => void): void; - - /** - * The headers to send back along with the HTTP response. - * The default contents are: - * ``` - * { - * "Connection": "close" - * } - * ``` - * @returns {any} An object mapping header name to value - * @url http://www.espruino.com/Reference#l_httpSRs_headers - */ - headers: any; - - /** - * This function writes the `data` argument as a string. Data that is passed in - * (including arrays) will be converted to a string with the normal JavaScript - * `toString` method. For more information about sending binary data see - * `Socket.write` - * - * @param {any} data - A string containing data to send - * @returns {boolean} For node.js compatibility, returns the boolean false. When the send buffer is empty, a `drain` event will be sent - * @url http://www.espruino.com/Reference#l_httpSRs_write - */ - write(data: any): boolean; - - /** - * See `Socket.write` for more information about the data argument - * - * @param {any} data - A string containing data to send - * @url http://www.espruino.com/Reference#l_httpSRs_end - */ - end(data: any): void; - - /** - * Send the given status code and headers. If not explicitly called this will be - * done automatically the first time data is written to the response. - * This cannot be called twice, or after data has already been sent in the - * response. - * - * @param {number} statusCode - The HTTP status code - * @param {any} headers - An object containing the headers - * @url http://www.espruino.com/Reference#l_httpSRs_writeHead - */ - writeHead(statusCode: number, headers: any): void; - - /** - * Set a value to send in the header of this HTTP response. This updates the - * `httpSRs.headers` property. - * Any headers supplied to `writeHead` will overwrite any headers with the same - * name. - * - * @param {any} name - The name of the header as a String - * @param {any} value - The value of the header as a String - * @url http://www.espruino.com/Reference#l_httpSRs_setHeader - */ - setHeader(name: any, value: any): void; -} - -/** - * The HTTP client request, returned by `http.request()` and `http.get()`. - * @url http://www.espruino.com/Reference#httpCRq - */ -declare class httpCRq { - /** - * An event that is fired when the buffer is empty and it can accept more data to - * send. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_httpCRq_drain - */ - static on(event: "drain", callback: () => void): void; - - /** - * An event that is fired if there is an error making the request and the response - * callback has not been invoked. In this case the error event concludes the - * request attempt. The error event function receives an error object as parameter - * with a `code` field and a `message` field. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_httpCRq_error - */ - static on(event: "error", callback: () => void): void; - - /** - * This function writes the `data` argument as a string. Data that is passed in - * (including arrays) will be converted to a string with the normal JavaScript - * `toString` method. For more information about sending binary data see - * `Socket.write` - * - * @param {any} data - A string containing data to send - * @returns {boolean} For node.js compatibility, returns the boolean false. When the send buffer is empty, a `drain` event will be sent - * @url http://www.espruino.com/Reference#l_httpCRq_write - */ - write(data: any): boolean; - - /** - * Finish this HTTP request - optional data to append as an argument - * See `Socket.write` for more information about the data argument - * - * @param {any} data - A string containing data to send - * @url http://www.espruino.com/Reference#l_httpCRq_end - */ - end(data: any): void; -} - -/** - * The HTTP client response, passed to the callback of `http.request()` an - * `http.get()`. - * @url http://www.espruino.com/Reference#httpCRs - */ -declare class httpCRs { - /** - * The 'data' event is called when data is received. If a handler is defined with - * `X.on('data', function(data) { ... })` then it will be called, otherwise data - * will be stored in an internal buffer, where it can be retrieved with `X.read()` - * @param {string} event - The event to listen to. - * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `data` A string containing one or more characters of received data - * @url http://www.espruino.com/Reference#l_httpCRs_data - */ - static on(event: "data", callback: (data: any) => void): void; - - /** - * Called when the connection closes with one `hadError` boolean parameter, which - * indicates whether an error occurred. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_httpCRs_close - */ - static on(event: "close", callback: () => void): void; - - /** - * An event that is fired if there is an error receiving the response. The error - * event function receives an error object as parameter with a `code` field and a - * `message` field. After the error event the close even will also be triggered to - * conclude the HTTP request/response. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_httpCRs_error - */ - static on(event: "error", callback: () => void): void; - - /** - * The headers received along with the HTTP response - * @returns {any} An object mapping header name to value - * @url http://www.espruino.com/Reference#l_httpCRs_headers - */ - headers: any; - - /** - * The HTTP response's status code - usually `"200"` if all went well - * @returns {any} The status code as a String - * @url http://www.espruino.com/Reference#l_httpCRs_statusCode - */ - statusCode: any; - - /** - * The HTTP response's status message - Usually `"OK"` if all went well - * @returns {any} An String Status Message - * @url http://www.espruino.com/Reference#l_httpCRs_statusMessage - */ - statusMessage: any; - - /** - * The HTTP version reported back by the server - usually `"1.1"` - * @returns {any} Th - * @url http://www.espruino.com/Reference#l_httpCRs_httpVersion - */ - httpVersion: any; - - /** - * Return how many bytes are available to read. If there is a 'data' event handler, - * this will always return 0. - * @returns {number} How many bytes are available - * @url http://www.espruino.com/Reference#l_httpCRs_available - */ - available(): number; - - /** - * Return a string containing characters that have been received - * - * @param {number} chars - The number of characters to read, or undefined/0 for all available - * @returns {any} A string containing the required bytes. - * @url http://www.espruino.com/Reference#l_httpCRs_read - */ - read(chars: number): any; - - /** - * Pipe this to a stream (an object with a 'write' method) - * - * @param {any} destination - The destination file/stream that will receive content from the source. - * @param {any} options - * An optional object `{ chunkSize : int=32, end : bool=true, complete : function }` - * chunkSize : The amount of data to pipe from source to destination at a time - * complete : a function to call when the pipe activity is complete - * end : call the 'end' function on the destination when the source is finished - * @url http://www.espruino.com/Reference#l_httpCRs_pipe - */ - pipe(destination: any, options: any): void; -} - -/** - * This class provides functionality to recognise gestures drawn on a touchscreen. - * It is only built into Bangle.js 2. - * Usage: - * ``` - * var strokes = { - * stroke1 : Unistroke.new(new Uint8Array([x1, y1, x2, y2, x3, y3, ...])), - * stroke2 : Unistroke.new(new Uint8Array([x1, y1, x2, y2, x3, y3, ...])), - * stroke3 : Unistroke.new(new Uint8Array([x1, y1, x2, y2, x3, y3, ...])) - * }; - * var r = Unistroke.recognise(strokes,new Uint8Array([x1, y1, x2, y2, x3, y3, ...])) - * print(r); // stroke1/stroke2/stroke3 - * ``` - * @url http://www.espruino.com/Reference#Unistroke - */ -declare class Unistroke { - /** - * Create a new Unistroke based on XY coordinates - * - * @param {any} xy - An array of interleaved XY coordinates - * @returns {any} A string of data representing this unistroke - * @url http://www.espruino.com/Reference#l_Unistroke_new - */ - static new(xy: any): any; - - /** - * Recognise based on an object of named strokes, and a list of XY coordinates - * - * @param {any} strokes - An object of named strokes : `{arrow:..., circle:...}` - * @param {any} xy - An array of interleaved XY coordinates - * @returns {any} The key name of the matched stroke - * @url http://www.espruino.com/Reference#l_Unistroke_recognise - */ - static recognise(strokes: any, xy: any): any; - - -} - -/** - * The NRF class is for controlling functionality of the Nordic nRF51/nRF52 chips. - * Most functionality is related to Bluetooth Low Energy, however there are also - * some functions related to NFC that apply to NRF52-based devices. - * @url http://www.espruino.com/Reference#NRF - */ -declare class NRF { - /** - * @returns {any} An object - * @url http://www.espruino.com/Reference#l_NRF_getSecurityStatus - */ - static getSecurityStatus(): any; - - /** - * @returns {any} An object - * @url http://www.espruino.com/Reference#l_NRF_getAddress - */ - static getAddress(): any; - - /** - * - * @param {any} data - The service (and characteristics) to advertise - * @param {any} options - Optional object containing options - * @url http://www.espruino.com/Reference#l_NRF_setServices - */ - static setServices(data: any, options: any): void; - - /** - * - * @param {any} data - The data to advertise as an object - see below for more info - * @param {any} options - An optional object of options - * @url http://www.espruino.com/Reference#l_NRF_setAdvertising - */ - static setAdvertising(data: any, options: any): void; - - /** - * Called when a host device connects to Espruino. The first argument contains the - * address. - * @param {string} event - The event to listen to. - * @param {(addr: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `addr` The address of the device that has connected - * @url http://www.espruino.com/Reference#l_NRF_connect - */ - static on(event: "connect", callback: (addr: any) => void): void; - - /** - * Called when a host device disconnects from Espruino. - * The most common reason is: - * * 19 - `REMOTE_USER_TERMINATED_CONNECTION` - * * 22 - `LOCAL_HOST_TERMINATED_CONNECTION` - * @param {string} event - The event to listen to. - * @param {(reason: number) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `reason` The reason code reported back by the BLE stack - see Nordic's [`ble_hci.h` file](https://github.com/espruino/Espruino/blob/master/targetlibs/nrf5x_12/components/softdevice/s132/headers/ble_hci.h#L71) for more information - * @url http://www.espruino.com/Reference#l_NRF_disconnect - */ - static on(event: "disconnect", callback: (reason: number) => void): void; - - /** - * Contains updates on the security of the current Bluetooth link. - * See Nordic's `ble_gap_evt_auth_status_t` structure for more information. - * @param {string} event - The event to listen to. - * @param {(status: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `status` An object containing `{auth_status,bonded,lv4,kdist_own,kdist_peer} - * @url http://www.espruino.com/Reference#l_NRF_security - */ - static on(event: "security", callback: (status: any) => void): void; - - /** - * Called with a single byte value when Espruino is set up as a HID device and the - * computer it is connected to sends a HID report back to Espruino. This is usually - * used for handling indications such as the Caps Lock LED. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_NRF_HID - */ - static on(event: "HID", callback: () => void): void; - - /** - * Called with discovered services when discovery is finished - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_NRF_servicesDiscover - */ - static on(event: "servicesDiscover", callback: () => void): void; - - /** - * Called with discovered characteristics when discovery is finished - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_NRF_characteristicsDiscover - */ - static on(event: "characteristicsDiscover", callback: () => void): void; - - /** - * Called when an NFC field is detected - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_NRF_NFCon - */ - static on(event: "NFCon", callback: () => void): void; - - /** - * Called when an NFC field is no longer detected - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_NRF_NFCoff - */ - static on(event: "NFCoff", callback: () => void): void; - - /** - * When NFC is started with `NRF.nfcStart`, this is fired when NFC data is - * received. It doesn't get called if NFC is started with `NRF.nfcURL` or - * `NRF.nfcRaw` - * @param {string} event - The event to listen to. - * @param {(arr: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `arr` An ArrayBuffer containign the received data - * @url http://www.espruino.com/Reference#l_NRF_NFCrx - */ - static on(event: "NFCrx", callback: (arr: any) => void): void; - - /** - * If a device is connected to Espruino, disconnect from it. - * @url http://www.espruino.com/Reference#l_NRF_disconnect - */ - static disconnect(): void; - - /** - * Disable Bluetooth advertising and disconnect from any device that connected to - * Puck.js as a peripheral (this won't affect any devices that Puck.js initiated - * connections to). - * This makes Puck.js undiscoverable, so it can't be connected to. - * Use `NRF.wake()` to wake up and make Puck.js connectable again. - * @url http://www.espruino.com/Reference#l_NRF_sleep - */ - static sleep(): void; - - /** - * Enable Bluetooth advertising (this is enabled by default), which allows other - * devices to discover and connect to Puck.js. - * Use `NRF.sleep()` to disable advertising. - * @url http://www.espruino.com/Reference#l_NRF_wake - */ - static wake(): void; - - /** - * Restart the Bluetooth softdevice (if there is currently a BLE connection, it - * will queue a restart to be done when the connection closes). - * You shouldn't need to call this function in normal usage. However, Nordic's BLE - * softdevice has some settings that cannot be reset. For example there are only a - * certain number of unique UUIDs. Once these are all used the only option is to - * restart the softdevice to clear them all out. - * - * @param {any} callback - An optional function to be called while the softdevice is uninitialised. Use with caution - accessing console/bluetooth will almost certainly result in a crash. - * @url http://www.espruino.com/Reference#l_NRF_restart - */ - static restart(callback: any): void; - - /** - * Get this device's default Bluetooth MAC address. - * For Puck.js, the last 5 characters of this (eg. `ee:ff`) are used in the - * device's advertised Bluetooth name. - * @returns {any} MAC address - a string of the form 'aa:bb:cc:dd:ee:ff' - * @url http://www.espruino.com/Reference#l_NRF_getAddress - */ - static getAddress(): any; - - /** - * Set this device's default Bluetooth MAC address: - * ``` - * NRF.setAddress("ff:ee:dd:cc:bb:aa random"); - * ``` - * Addresses take the form: - * * `"ff:ee:dd:cc:bb:aa"` or `"ff:ee:dd:cc:bb:aa public"` for a public address - * * `"ff:ee:dd:cc:bb:aa random"` for a random static address (the default for - * Espruino) - * This may throw a `INVALID_BLE_ADDR` error if the upper two bits of the address - * don't match the address type. - * To change the address, Espruino must restart the softdevice. It will only do so - * when it is disconnected from other devices. - * - * @param {any} addr - The address to use (as a string) - * @url http://www.espruino.com/Reference#l_NRF_setAddress - */ - static setAddress(addr: any): void; - - /** - * Get the battery level in volts (the voltage that the NRF chip is running off - * of). - * This is the battery level of the device itself - it has nothing to with any - * device that might be connected. - * @returns {number} Battery level in volts - * @url http://www.espruino.com/Reference#l_NRF_getBattery - */ - static getBattery(): number; - - /** - * Change the data that Espruino advertises. - * Data can be of the form `{ UUID : data_as_byte_array }`. The UUID should be a - * [Bluetooth Service - * ID](https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx). - * For example to return battery level at 95%, do: - * ``` - * NRF.setAdvertising({ - * 0x180F : [95] // Service data 0x180F = 95 - * }); - * ``` - * Or you could report the current temperature: - * ``` - * setInterval(function() { - * NRF.setAdvertising({ - * 0x1809 : [Math.round(E.getTemperature())] - * }); - * }, 30000); - * ``` - * If you specify a value for the object key, Service Data is advertised. However - * if you specify `undefined`, the Service UUID is advertised: - * ``` - * NRF.setAdvertising({ - * 0x180D : undefined // Advertise service UUID 0x180D (HRM) - * }); - * ``` - * Service UUIDs can also be supplied in the second argument of `NRF.setServices`, - * but those go in the scan response packet. - * You can also supply the raw advertising data in an array. For example to - * advertise as an Eddystone beacon: - * ``` - * NRF.setAdvertising([0x03, // Length of Service List - * 0x03, // Param: Service List - * 0xAA, 0xFE, // Eddystone ID - * 0x13, // Length of Service Data - * 0x16, // Service Data - * 0xAA, 0xFE, // Eddystone ID - * 0x10, // Frame type: URL - * 0xF8, // Power - * 0x03, // https:// - * 'g','o','o','.','g','l','/','B','3','J','0','O','c'], - * {interval:100}); - * ``` - * (However for Eddystone we'd advise that you use the [Espruino Eddystone - * library](/Puck.js+Eddystone)) - * **Note:** When specifying data as an array, certain advertising options such as - * `discoverable` and `showName` won't have any effect. - * **Note:** The size of Bluetooth LE advertising packets is limited to 31 bytes. - * If you want to advertise more data, consider using an array for `data` (See - * below), or `NRF.setScanResponse`. - * You can even specify an array of arrays or objects, in which case each - * advertising packet will be used in turn - for instance to make your device - * advertise battery level and its name as well as both Eddystone and iBeacon : - * ``` - * NRF.setAdvertising([ - * {0x180F : [Puck.getBatteryPercentage()]}, // normal advertising, with battery % - * require("ble_ibeacon").get(...), // iBeacon - * require("ble_eddystone").get(...), // eddystone - * ], {interval:300}); - * ``` - * `options` is an object, which can contain: - * ``` - * { - * name: "Hello" // The name of the device - * showName: true/false // include full name, or nothing - * discoverable: true/false // general discoverable, or limited - default is limited - * connectable: true/false // whether device is connectable - default is true - * scannable : true/false // whether device can be scanned for scan response packets - default is true - * interval: 600 // Advertising interval in msec, between 20 and 10000 (default is 375ms) - * manufacturer: 0x0590 // IF sending manufacturer data, this is the manufacturer ID - * manufacturerData: [...] // IF sending manufacturer data, this is an array of data - * phy: "1mbps/2mbps/coded" // (NRF52840 only) use the long-range coded phy for transmission (1mbps default) - * } - * ``` - * Setting `connectable` and `scannable` to false gives the lowest power - * consumption as the BLE radio doesn't have to listen after sending advertising. - * **NOTE:** Non-`connectable` advertising can't have an advertising interval less - * than 100ms according to the BLE spec. - * So for instance to set the name of Puck.js without advertising any other data - * you can just use the command: - * ``` - * NRF.setAdvertising({},{name:"Hello"}); - * ``` - * You can also specify 'manufacturer data', which is another form of advertising - * data. We've registered the Manufacturer ID 0x0590 (as Pur3 Ltd) for use with - * *Official Espruino devices* - use it to advertise whatever data you'd like, but - * we'd recommend using JSON. - * For example by not advertising a device name you can send up to 24 bytes of JSON - * on Espruino's manufacturer ID: - * ``` - * var data = {a:1,b:2}; - * NRF.setAdvertising({},{ - * showName:false, - * manufacturer:0x0590, - * manufacturerData:JSON.stringify(data) - * }); - * ``` - * If you're using [EspruinoHub](https://github.com/espruino/EspruinoHub) then it - * will automatically decode this into the folling MQTT topics: - * * `/ble/advertise/ma:c_:_a:dd:re:ss/espruino` -> `{"a":10,"b":15}` - * * `/ble/advertise/ma:c_:_a:dd:re:ss/a` -> `1` - * * `/ble/advertise/ma:c_:_a:dd:re:ss/b` -> `2` - * Note that **you only have 24 characters available for JSON**, so try to use the - * shortest field names possible and avoid floating point values that can be very - * long when converted to a String. - * - * @param {any} data - The service data to advertise as an object - see below for more info - * @param {any} options - An optional object of options - * @url http://www.espruino.com/Reference#l_NRF_setAdvertising - */ - static setAdvertising(data: any, options: any): void; - - /** - * This is just like `NRF.setAdvertising`, except instead of advertising the data, - * it returns the packet that would be advertised as an array. - * - * @param {any} data - The data to advertise as an object - * @param {any} options - An optional object of options - * @returns {any} An array containing the advertising data - * @url http://www.espruino.com/Reference#l_NRF_getAdvertisingData - */ - static getAdvertisingData(data: any, options: any): any; - - /** - * The raw scan response data should be supplied as an array. For example to return - * "Sample" for the device name: - * ``` - * NRF.setScanResponse([0x07, // Length of Data - * 0x09, // Param: Complete Local Name - * 'S', 'a', 'm', 'p', 'l', 'e']); - * ``` - * **Note:** `NRF.setServices(..., {advertise:[ ... ]})` writes advertised services - * into the scan response - so you can't use both `advertise` and `NRF.setServices` - * or one will overwrite the other. - * - * @param {any} data - The data to for the scan response - * @url http://www.espruino.com/Reference#l_NRF_setScanResponse - */ - static setScanResponse(data: any): void; - - /** - * Change the services and characteristics Espruino advertises. - * If you want to **change** the value of a characteristic, you need to use - * `NRF.updateServices()` instead - * To expose some information on Characteristic `ABCD` on service `BCDE` you could - * do: - * ``` - * NRF.setServices({ - * 0xBCDE : { - * 0xABCD : { - * value : "Hello", - * readable : true - * } - * } - * }); - * ``` - * Or to allow the 3 LEDs to be controlled by writing numbers 0 to 7 to a - * characteristic, you can do the following. `evt.data` is an ArrayBuffer. - * ``` - * NRF.setServices({ - * 0xBCDE : { - * 0xABCD : { - * writable : true, - * onWrite : function(evt) { - * digitalWrite([LED3,LED2,LED1], evt.data[0]); - * } - * } - * } - * }); - * ``` - * You can supply many different options: - * ``` - * NRF.setServices({ - * 0xBCDE : { - * 0xABCD : { - * value : "Hello", // optional - * maxLen : 5, // optional (otherwise is length of initial value) - * broadcast : false, // optional, default is false - * readable : true, // optional, default is false - * writable : true, // optional, default is false - * notify : true, // optional, default is false - * indicate : true, // optional, default is false - * description: "My Characteristic", // optional, default is null, - * security: { // optional - see NRF.setSecurity - * read: { // optional - * encrypted: false, // optional, default is false - * mitm: false, // optional, default is false - * lesc: false, // optional, default is false - * signed: false // optional, default is false - * }, - * write: { // optional - * encrypted: true, // optional, default is false - * mitm: false, // optional, default is false - * lesc: false, // optional, default is false - * signed: false // optional, default is false - * } - * }, - * onWrite : function(evt) { // optional - * console.log("Got ", evt.data); // an ArrayBuffer - * }, - * onWriteDesc : function(evt) { // optional - called when the 'cccd' descriptor is written - * // for example this is called when notifications are requested by the client: - * console.log("Notifications enabled = ", evt.data[0]&1); - * } - * } - * // more characteristics allowed - * } - * // more services allowed - * }); - * ``` - * **Note:** UUIDs can be integers between `0` and `0xFFFF`, strings of the form - * `"ABCD"`, or strings of the form `"ABCDABCD-ABCD-ABCD-ABCD-ABCDABCDABCD"` - * `options` can be of the form: - * ``` - * NRF.setServices(undefined, { - * hid : new Uint8Array(...), // optional, default is undefined. Enable BLE HID support - * uart : true, // optional, default is true. Enable BLE UART support - * advertise: [ '180D' ] // optional, list of service UUIDs to advertise - * ancs : true, // optional, Bangle.js-only, enable Apple ANCS support for notifications - * ams : true // optional, Bangle.js-only, enable Apple AMS support for media control - * }); - * ``` - * To enable BLE HID, you must set `hid` to an array which is the BLE report - * descriptor. The easiest way to do this is to use the `ble_hid_controls` or - * `ble_hid_keyboard` modules. - * **Note:** Just creating a service doesn't mean that the service will be - * advertised. It will only be available after a device connects. To advertise, - * specify the UUIDs you wish to advertise in the `advertise` field of the second - * `options` argument. For example this will create and advertise a heart rate - * service: - * ``` - * NRF.setServices({ - * 0x180D: { // heart_rate - * 0x2A37: { // heart_rate_measurement - * notify: true, - * value : [0x06, heartrate], - * } - * } - * }, { advertise: [ '180D' ] }); - * ``` - * You may specify 128 bit UUIDs to advertise, however you may get a `DATA_SIZE` - * exception because there is insufficient space in the Bluetooth LE advertising - * packet for the 128 bit UART UUID as well as the UUID you specified. In this case - * you can add `uart:false` after the `advertise` element to disable the UART, - * however you then be unable to connect to Puck.js's console via Bluetooth. - * If you absolutely require two or more 128 bit UUIDs then you will have to - * specify your own raw advertising data packets with `NRF.setAdvertising` - * **Note:** The services on Espruino can only be modified when there is no device - * connected to it as it requires a restart of the Bluetooth stack. **iOS devices - * will 'cache' the list of services** so apps like NRF Connect may incorrectly - * display the old services even after you have modified them. To fix this, disable - * and re-enable Bluetooth on your iOS device, or use an Android device to run NRF - * Connect. - * **Note:** Not all combinations of security configuration values are valid, the - * valid combinations are: encrypted, encrypted + mitm, lesc, signed, signed + - * mitm. See `NRF.setSecurity` for more information. - * - * @param {any} data - The service (and characteristics) to advertise - * @param {any} options - Optional object containing options - * @url http://www.espruino.com/Reference#l_NRF_setServices - */ - static setServices(data: any, options: any): void; - - /** - * Update values for the services and characteristics Espruino advertises. Only - * services and characteristics previously declared using `NRF.setServices` are - * affected. - * To update the '0xABCD' characteristic in the '0xBCDE' service: - * ``` - * NRF.updateServices({ - * 0xBCDE : { - * 0xABCD : { - * value : "World" - * } - * } - * }); - * ``` - * You can also use 128 bit UUIDs, for example - * `"b7920001-3c1b-4b40-869f-3c0db9be80c6"`. - * To define a service and characteristic and then notify connected clients of a - * change to it when a button is pressed: - * ``` - * NRF.setServices({ - * 0xBCDE : { - * 0xABCD : { - * value : "Hello", - * maxLen : 20, - * notify: true - * } - * } - * }); - * setWatch(function() { - * NRF.updateServices({ - * 0xBCDE : { - * 0xABCD : { - * value : "World!", - * notify: true - * } - * } - * }); - * }, BTN, { repeat:true, edge:"rising", debounce: 50 }); - * ``` - * This only works if the characteristic was created with `notify: true` using - * `NRF.setServices`, otherwise the characteristic will be updated but no - * notification will be sent. - * Also note that `maxLen` was specified. If it wasn't then the maximum length of - * the characteristic would have been 5 - the length of `"Hello"`. - * To indicate (i.e. notify with ACK) connected clients of a change to the '0xABCD' - * characteristic in the '0xBCDE' service: - * ``` - * NRF.updateServices({ - * 0xBCDE : { - * 0xABCD : { - * value : "World", - * indicate: true - * } - * } - * }); - * ``` - * This only works if the characteristic was created with `indicate: true` using - * `NRF.setServices`, otherwise the characteristic will be updated but no - * notification will be sent. - * **Note:** See `NRF.setServices` for more information - * - * @param {any} data - The service (and characteristics) to update - * @url http://www.espruino.com/Reference#l_NRF_updateServices - */ - static updateServices(data: any): void; - - /** - * Start/stop listening for BLE advertising packets within range. Returns a - * `BluetoothDevice` for each advertsing packet. **By default this is not an active - * scan, so Scan Response advertising data is not included (see below)** - * ``` - * // Start scanning - * packets=10; - * NRF.setScan(function(d) { - * packets--; - * if (packets<=0) - * NRF.setScan(); // stop scanning - * else - * console.log(d); // print packet info - * }); - * ``` - * Each `BluetoothDevice` will look a bit like: - * ``` - * BluetoothDevice { - * "id": "aa:bb:cc:dd:ee:ff", // address - * "rssi": -89, // signal strength - * "services": [ "128bit-uuid", ... ], // zero or more service UUIDs - * "data": new Uint8Array([ ... ]).buffer, // ArrayBuffer of returned data - * "serviceData" : { "0123" : [ 1 ] }, // if service data is in 'data', it's extracted here - * "manufacturer" : 0x1234, // if manufacturer data is in 'data', the 16 bit manufacturer ID is extracted here - * "manufacturerData" : new Uint8Array([...]).buffer, // if manufacturer data is in 'data', the data is extracted here as an ArrayBuffer - * "name": "DeviceName" // the advertised device name - * } - * ``` - * You can also supply a set of filters (as described in `NRF.requestDevice`) as a - * second argument, which will allow you to filter the devices you get a callback - * for. This helps to cut down on the time spent processing JavaScript code in - * areas with a lot of Bluetooth advertisements. For example to find only devices - * with the manufacturer data `0x0590` (Espruino's ID) you could do: - * ``` - * NRF.setScan(function(d) { - * console.log(d.manufacturerData); - * }, { filters: [{ manufacturerData:{0x0590:{}} }] }); - * ``` - * You can also specify `active:true` in the second argument to perform active - * scanning (this requests scan response packets) from any devices it finds. - * **Note:** Using a filter in `setScan` filters each advertising packet - * individually. As a result, if you filter based on a service UUID and a device - * advertises with multiple packets (or a scan response when `active:true`) only - * the packets matching the filter are returned. To aggregate multiple packets you - * can use `NRF.findDevices`. - * **Note:** BLE advertising packets can arrive quickly - faster than you'll be - * able to print them to the console. It's best only to print a few, or to use a - * function like `NRF.findDevices(..)` which will collate a list of available - * devices. - * **Note:** Using setScan turns the radio's receive mode on constantly. This can - * draw a *lot* of power (12mA or so), so you should use it sparingly or you can - * run your battery down quickly. - * - * @param {any} callback - The callback to call with received advertising packets, or undefined to stop - * @param {any} options - An optional object `{filters: ...}` (as would be passed to `NRF.requestDevice`) to filter devices by - * @url http://www.espruino.com/Reference#l_NRF_setScan - */ - static setScan(callback: any, options: any): void; - - /** - * This function can be used to quickly filter through Bluetooth devices. - * For instance if you wish to scan for multiple different types of device at the - * same time then you could use `NRF.findDevices` with all the filters you're - * interested in. When scanning is finished you can then use `NRF.filterDevices` to - * pick out just the devices of interest. - * ``` - * // the two types of device we're interested in - * var filter1 = [{serviceData:{"fe95":{}}}]; - * var filter2 = [{namePrefix:"Pixl.js"}]; - * // the following filter will return both types of device - * var allFilters = filter1.concat(filter2); - * // now scan for both types of device, and filter them out afterwards - * NRF.findDevices(function(devices) { - * var devices1 = NRF.filterDevices(devices, filter1); - * var devices2 = NRF.filterDevices(devices, filter2); - * // ... - * }, {filters : allFilters}); - * ``` - * - * @param {any} devices - An array of `BluetoothDevice` objects, from `NRF.findDevices` or similar - * @param {any} filters - A list of filters (as would be passed to `NRF.requestDevice`) to filter devices by - * @returns {any} An array of `BluetoothDevice` objects that match the given filters - * @url http://www.espruino.com/Reference#l_NRF_filterDevices - */ - static filterDevices(devices: any, filters: any): any; - - /** - * Utility function to return a list of BLE devices detected in range. Behind the - * scenes, this uses `NRF.setScan(...)` and collates the results. - * ``` - * NRF.findDevices(function(devices) { - * console.log(devices); - * }, 1000); - * ``` - * prints something like: - * ``` - * [ - * BluetoothDevice { - * "id" : "e7:e0:57:ad:36:a2 random", - * "rssi": -45, - * "services": [ "4567" ], - * "serviceData" : { "0123" : [ 1 ] }, - * "manufacturer" : 1424, - * "manufacturerData" : new Uint8Array([ ... ]).buffer, - * "data": new ArrayBuffer([ ... ]).buffer, - * "name": "Puck.js 36a2" - * }, - * BluetoothDevice { - * "id": "c0:52:3f:50:42:c9 random", - * "rssi": -65, - * "data": new ArrayBuffer([ ... ]), - * "name": "Puck.js 8f57" - * } - * ] - * ``` - * For more information on the structure returned, see `NRF.setScan`. - * If you want to scan only for specific devices you can replace the timeout with - * an object of the form `{filters: ..., timeout : ..., active: bool}` using the - * filters described in `NRF.requestDevice`. For example to search for devices with - * Espruino's `manufacturerData`: - * ``` - * NRF.findDevices(function(devices) { - * ... - * }, {timeout : 2000, filters : [{ manufacturerData:{0x0590:{}} }] }); - * ``` - * You could then use - * [`BluetoothDevice.gatt.connect(...)`](/Reference#l_BluetoothRemoteGATTServer_connect) - * on the device returned to make a connection. - * You can also use [`NRF.connect(...)`](/Reference#l_NRF_connect) on just the `id` - * string returned, which may be useful if you always want to connect to a specific - * device. - * **Note:** Using findDevices turns the radio's receive mode on for 2000ms (or - * however long you specify). This can draw a *lot* of power (12mA or so), so you - * should use it sparingly or you can run your battery down quickly. - * **Note:** The 'data' field contains the data of *the last packet received*. - * There may have been more packets. To get data for each packet individually use - * `NRF.setScan` instead. - * - * @param {any} callback - The callback to call with received advertising packets (as `BluetoothDevice`), or undefined to stop - * @param {any} [options] - [optional] A time in milliseconds to scan for (defaults to 2000), Or an optional object `{filters: ..., timeout : ..., active: bool}` (as would be passed to `NRF.requestDevice`) to filter devices by - * @url http://www.espruino.com/Reference#l_NRF_findDevices - */ - static findDevices(callback: (devices: BluetoothDevice[]) => void, options?: number | { filters?: NRFFilters, timeout?: number, active?: boolean }): void; - - /** - * Start/stop listening for RSSI values on the currently active connection (where - * This device is a peripheral and is being connected to by a 'central' device) - * ``` - * // Start scanning - * NRF.setRSSIHandler(function(rssi) { - * console.log(rssi); // prints -85 (or similar) - * }); - * // Stop Scanning - * NRF.setRSSIHandler(); - * ``` - * RSSI is the 'Received Signal Strength Indication' in dBm - * - * @param {any} callback - The callback to call with the RSSI value, or undefined to stop - * @url http://www.espruino.com/Reference#l_NRF_setRSSIHandler - */ - static setRSSIHandler(callback: any): void; - - /** - * Set the BLE radio transmit power. The default TX power is 0 dBm, and - * - * @param {number} power - Transmit power. Accepted values are -40(nRF52 only), -30(nRF51 only), -20, -16, -12, -8, -4, 0, and 4 dBm. On nRF52840 (eg Bangle.js 2) 5/6/7/8 dBm are available too. Others will give an error code. - * @url http://www.espruino.com/Reference#l_NRF_setTxPower - */ - static setTxPower(power: number): void; - - /** - * **THIS IS DEPRECATED** - please use `NRF.setConnectionInterval` for peripheral - * and `NRF.connect(addr, options)`/`BluetoothRemoteGATTServer.connect(options)` - * for central connections. - * This sets the connection parameters - these affect the transfer speed and power - * usage when the device is connected. - * * When not low power, the connection interval is between 7.5 and 20ms - * * When low power, the connection interval is between 500 and 1000ms - * When low power connection is enabled, transfers of data over Bluetooth will be - * very slow, however power usage while connected will be drastically decreased. - * This will only take effect after the connection is disconnected and - * re-established. - * - * @param {boolean} lowPower - Whether the connection is low power or not - * @url http://www.espruino.com/Reference#l_NRF_setLowPowerConnection - */ - static setLowPowerConnection(lowPower: boolean): void; - - /** - * Enables NFC and starts advertising the given URL. For example: - * ``` - * NRF.nfcURL("http://espruino.com"); - * ``` - * - * @param {any} url - The URL string to expose on NFC, or `undefined` to disable NFC - * @url http://www.espruino.com/Reference#l_NRF_nfcURL - */ - static nfcURL(url: any): void; - - /** - * Enables NFC and with an out of band 16 byte pairing key. - * For example the following will enable out of band pairing on BLE such that the - * device will pair when you tap the phone against it: - * ``` - * var bleKey = [0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, 0x99, 0x88, 0x77, 0x66, 0x55, 0x44, 0x33, 0x22, 0x11, 0x00]; - * NRF.on('security',s=>print("security",JSON.stringify(s))); - * NRF.nfcPair(bleKey); - * NRF.setSecurity({oob:bleKey, mitm:true}); - * ``` - * - * @param {any} key - 16 byte out of band key - * @url http://www.espruino.com/Reference#l_NRF_nfcPair - */ - static nfcPair(key: any): void; - - /** - * Enables NFC with a record that will launch the given android app. - * For example: - * ``` - * NRF.nfcAndroidApp("no.nordicsemi.android.nrftoolbox") - * ``` - * - * @param {any} app - The unique identifier of the given Android App - * @url http://www.espruino.com/Reference#l_NRF_nfcAndroidApp - */ - static nfcAndroidApp(app: any): void; - - /** - * Enables NFC and starts advertising with Raw data. For example: - * ``` - * NRF.nfcRaw(new Uint8Array([193, 1, 0, 0, 0, 13, 85, 3, 101, 115, 112, 114, 117, 105, 110, 111, 46, 99, 111, 109])); - * // same as NRF.nfcURL("http://espruino.com"); - * ``` - * - * @param {any} payload - The NFC NDEF message to deliver to the reader - * @url http://www.espruino.com/Reference#l_NRF_nfcRaw - */ - static nfcRaw(payload: any): void; - - /** - * **Advanced NFC Functionality.** If you just want to advertise a URL, use - * `NRF.nfcURL` instead. - * Enables NFC and starts advertising. `NFCrx` events will be fired when data is - * received. - * ``` - * NRF.nfcStart(); - * ``` - * - * @param {any} payload - Optional 7 byte UID - * @returns {any} Internal tag memory (first 10 bytes of tag data) - * @url http://www.espruino.com/Reference#l_NRF_nfcStart - */ - static nfcStart(payload: any): any; - - /** - * **Advanced NFC Functionality.** If you just want to advertise a URL, use - * `NRF.nfcURL` instead. - * Disables NFC. - * ``` - * NRF.nfcStop(); - * ``` - * - * @url http://www.espruino.com/Reference#l_NRF_nfcStop - */ - static nfcStop(): void; - - /** - * **Advanced NFC Functionality.** If you just want to advertise a URL, use - * `NRF.nfcURL` instead. - * Acknowledges the last frame and optionally transmits a response. If payload is - * an array, then a array.length byte nfc frame is sent. If payload is a int, then - * a 4bit ACK/NACK is sent. **Note:** ```nfcSend``` should always be called after - * an ```NFCrx``` event. - * ``` - * NRF.nfcSend(new Uint8Array([0x01, 0x02, ...])); - * // or - * NRF.nfcSend(0x0A); - * // or - * NRF.nfcSend(); - * ``` - * - * @param {any} payload - Optional tx data - * @url http://www.espruino.com/Reference#l_NRF_nfcSend - */ - static nfcSend(payload: any): void; - - /** - * Send a USB HID report. HID must first be enabled with `NRF.setServices({}, {hid: - * hid_report})` - * - * @param {any} data - Input report data as an array - * @param {any} callback - A callback function to be called when the data is sent - * @url http://www.espruino.com/Reference#l_NRF_sendHIDReport - */ - static sendHIDReport(data: any, callback: any): void; - - /** - * Check if Apple Notification Center Service (ANCS) is currently active on the BLE - * connection - * - * @returns {boolean} True if Apple Notification Center Service (ANCS) has been initialised and is active - * @url http://www.espruino.com/Reference#l_NRF_ancsIsActive - */ - static ancsIsActive(): boolean; - - /** - * Send an ANCS action for a specific Notification UID. Corresponds to - * posaction/negaction in the 'ANCS' event that was received - * - * @param {number} uid - The UID of the notification to respond to - * @param {boolean} positive - `true` for positive action, `false` for negative - * @url http://www.espruino.com/Reference#l_NRF_ancsAction - */ - static ancsAction(uid: number, positive: boolean): void; - - /** - * Get ANCS info for a notification, eg: - * - * @param {number} uid - The UID of the notification to get information for - * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete - * @url http://www.espruino.com/Reference#l_NRF_ancsGetNotificationInfo - */ - static ancsGetNotificationInfo(uid: number): Promise; - - /** - * Get ANCS info for an app (add id is available via `ancsGetNotificationInfo`) - * Promise returns: - * ``` - * { - * "uid" : int, - * "appId" : string, - * "title" : string, - * "subtitle" : string, - * "message" : string, - * "messageSize" : string, - * "date" : string, - * "posAction" : string, - * "negAction" : string, - * "name" : string, - * } - * ``` - * - * @param {any} id - The app ID to get information for - * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete - * @url http://www.espruino.com/Reference#l_NRF_ancsGetAppInfo - */ - static ancsGetAppInfo(id: any): Promise; - - /** - * Check if Apple Media Service (AMS) is currently active on the BLE connection - * - * @returns {boolean} True if Apple Media Service (AMS) has been initialised and is active - * @url http://www.espruino.com/Reference#l_NRF_amsIsActive - */ - static amsIsActive(): boolean; - - /** - * Get Apple Media Service (AMS) info for the current media player. "playbackinfo" - * returns a concatenation of three comma-separated values: - * - PlaybackState: a string that represents the integer value of the playback - * state: - * - PlaybackStatePaused = 0 - * - PlaybackStatePlaying = 1 - * - PlaybackStateRewinding = 2 - * - PlaybackStateFastForwarding = 3 - * - PlaybackRate: a string that represents the floating point value of the - * playback rate. - * - ElapsedTime: a string that represents the floating point value of the elapsed - * time of the current track, in seconds - * - * @param {any} id - Either 'name', 'playbackinfo' or 'volume' - * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete - * @url http://www.espruino.com/Reference#l_NRF_amsGetPlayerInfo - */ - static amsGetPlayerInfo(id: any): Promise; - - /** - * Get Apple Media Service (AMS) info for the currently-playing track - * - * @param {any} id - Either 'artist', 'album', 'title' or 'duration' - * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete - * @url http://www.espruino.com/Reference#l_NRF_amsGetTrackInfo - */ - static amsGetTrackInfo(id: any): Promise; - - /** - * Send an AMS command to an Apple Media Service device to control music playback - * Command is one of play, pause, playpause, next, prev, volup, voldown, repeat, - * shuffle, skipforward, skipback, like, dislike, bookmark - * - * @param {any} id - For example, 'play', 'pause', 'volup' or 'voldown' - * @url http://www.espruino.com/Reference#l_NRF_amsCommand - */ - static amsCommand(id: any): void; - - /** - * Search for available devices matching the given filters. Since we have no UI - * here, Espruino will pick the FIRST device it finds, or it'll call `catch`. - * `options` can have the following fields: - * * `filters` - a list of filters that a device must match before it is returned - * (see below) - * * `timeout` - the maximum time to scan for in milliseconds (scanning stops when - * a match is found. eg. `NRF.requestDevice({ timeout:2000, filters: [ ... ] })` - * * `active` - whether to perform active scanning (requesting 'scan response' - * packets from any devices that are found). eg. `NRF.requestDevice({ active:true, - * filters: [ ... ] })` - * * `phy` - (NRF52840 only) use the long-range coded phy (`"1mbps"` default, can - * be `"1mbps/2mbps/both/coded"`) - * * `extended` - (NRF52840 only) support receiving extended-length advertising - * packets (default=true if phy isn't `"1mbps"`) - * **NOTE:** `timeout` and `active` are not part of the Web Bluetooth standard. - * The following filter types are implemented: - * * `services` - list of services as strings (all of which must match). 128 bit - * services must be in the form '01230123-0123-0123-0123-012301230123' - * * `name` - exact device name - * * `namePrefix` - starting characters of device name - * * `id` - exact device address (`id:"e9:53:86:09:89:99 random"`) (this is - * Espruino-specific, and is not part of the Web Bluetooth spec) - * * `serviceData` - an object containing service characteristics which must all - * match (`serviceData:{"1809":{}}`). Matching of actual service data is not - * supported yet. - * * `manufacturerData` - an object containing manufacturer UUIDs which must all - * match (`manufacturerData:{0x0590:{}}`). Matching of actual manufacturer data - * is not supported yet. - * ``` - * NRF.requestDevice({ filters: [{ namePrefix: 'Puck.js' }] }).then(function(device) { ... }); - * // or - * NRF.requestDevice({ filters: [{ services: ['1823'] }] }).then(function(device) { ... }); - * // or - * NRF.requestDevice({ filters: [{ manufacturerData:{0x0590:{}} }] }).then(function(device) { ... }); - * ``` - * As a full example, to send data to another Puck.js to turn an LED on: - * ``` - * var gatt; - * NRF.requestDevice({ filters: [{ namePrefix: 'Puck.js' }] }).then(function(device) { - * return device.gatt.connect(); - * }).then(function(g) { - * gatt = g; - * return gatt.getPrimaryService("6e400001-b5a3-f393-e0a9-e50e24dcca9e"); - * }).then(function(service) { - * return service.getCharacteristic("6e400002-b5a3-f393-e0a9-e50e24dcca9e"); - * }).then(function(characteristic) { - * return characteristic.writeValue("LED1.set()\n"); - * }).then(function() { - * gatt.disconnect(); - * console.log("Done!"); - * }); - * ``` - * Or slightly more concisely, using ES6 arrow functions: - * ``` - * var gatt; - * NRF.requestDevice({ filters: [{ namePrefix: 'Puck.js' }]}).then( - * device => device.gatt.connect()).then( - * g => (gatt=g).getPrimaryService("6e400001-b5a3-f393-e0a9-e50e24dcca9e")).then( - * service => service.getCharacteristic("6e400002-b5a3-f393-e0a9-e50e24dcca9e")).then( - * characteristic => characteristic.writeValue("LED1.reset()\n")).then( - * () => { gatt.disconnect(); console.log("Done!"); } ); - * ``` - * Note that you have to keep track of the `gatt` variable so that you can - * disconnect the Bluetooth connection when you're done. - * **Note:** Using a filter in `NRF.requestDevice` filters each advertising packet - * individually. As soon as a matching advertisement is received, - * `NRF.requestDevice` resolves the promise and stops scanning. This means that if - * you filter based on a service UUID and a device advertises with multiple packets - * (or a scan response when `active:true`) only the packet matching the filter is - * returned - you may not get the device's name is that was in a separate packet. - * To aggregate multiple packets you can use `NRF.findDevices`. - * - * @param {any} options - Options used to filter the device to use - * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete - * @url http://www.espruino.com/Reference#l_NRF_requestDevice - */ - static requestDevice(options?: { filters?: NRFFilters, timeout?: number, active?: boolean, phy?: string, extended?: boolean }): Promise; - - /** - * Connect to a BLE device by MAC address. Returns a promise, the argument of which - * is the `BluetoothRemoteGATTServer` connection. - * ``` - * NRF.connect("aa:bb:cc:dd:ee").then(function(server) { - * // ... - * }); - * ``` - * This has the same effect as calling `BluetoothDevice.gatt.connect` on a - * `BluetoothDevice` requested using `NRF.requestDevice`. It just allows you to - * specify the address directly (without having to scan). - * You can use it as follows - this would connect to another Puck device and turn - * its LED on: - * ``` - * var gatt; - * NRF.connect("aa:bb:cc:dd:ee random").then(function(g) { - * gatt = g; - * return gatt.getPrimaryService("6e400001-b5a3-f393-e0a9-e50e24dcca9e"); - * }).then(function(service) { - * return service.getCharacteristic("6e400002-b5a3-f393-e0a9-e50e24dcca9e"); - * }).then(function(characteristic) { - * return characteristic.writeValue("LED1.set()\n"); - * }).then(function() { - * gatt.disconnect(); - * console.log("Done!"); - * }); - * ``` - * **Note:** Espruino Bluetooth devices use a type of BLE address known as 'random - * static', which is different to a 'public' address. To connect to an Espruino - * device you'll need to use an address string of the form `"aa:bb:cc:dd:ee - * random"` rather than just `"aa:bb:cc:dd:ee"`. If you scan for devices with - * `NRF.findDevices`/`NRF.setScan` then addresses are already reported in the - * correct format. - * - * @param {any} mac - The MAC address to connect to - * @param {any} options - (Espruino-specific) An object of connection options (see `BluetoothRemoteGATTServer.connect` for full details) - * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete - * @url http://www.espruino.com/Reference#l_NRF_connect - */ - static connect(mac: any, options: any): Promise; - - /** - * If set to true, whenever a device bonds it will be added to the whitelist. - * When set to false, the whitelist is cleared and newly bonded devices will not be - * added to the whitelist. - * **Note:** This is remembered between `reset()`s but isn't remembered after - * power-on (you'll have to add it to `onInit()`. - * - * @param {boolean} whitelisting - Are we using a whitelist? (default false) - * @url http://www.espruino.com/Reference#l_NRF_setWhitelist - */ - static setWhitelist(whitelisting: boolean): void; - - /** - * When connected, Bluetooth LE devices communicate at a set interval. Lowering the - * interval (eg. more packets/second) means a lower delay when sending data, higher - * bandwidth, but also more power consumption. - * By default, when connected as a peripheral Espruino automatically adjusts the - * connection interval. When connected it's as fast as possible (7.5ms) but when - * idle for over a minute it drops to 200ms. On continued activity (>1 BLE - * operation) the interval is raised to 7.5ms again. - * The options for `interval` are: - * * `undefined` / `"auto"` : (default) automatically adjust connection interval - * * `100` : set min and max connection interval to the same number (between 7.5ms - * and 4000ms) - * * `{minInterval:20, maxInterval:100}` : set min and max connection interval as a - * range - * This configuration is not remembered during a `save()` - you will have to re-set - * it via `onInit`. - * **Note:** If connecting to another device (as Central), you can use an extra - * argument to `NRF.connect` or `BluetoothRemoteGATTServer.connect` to specify a - * connection interval. - * **Note:** This overwrites any changes imposed by the deprecated - * `NRF.setLowPowerConnection` - * - * @param {any} interval - The connection interval to use (see below) - * @url http://www.espruino.com/Reference#l_NRF_setConnectionInterval - */ - static setConnectionInterval(interval: any): void; - - /** - * Sets the security options used when connecting/pairing. This applies to both - * central *and* peripheral mode. - * ``` - * NRF.setSecurity({ - * display : bool // default false, can this device display a passkey - * // - sent via the `BluetoothDevice.passkey` event - * keyboard : bool // default false, can this device enter a passkey - * // - request sent via the `BluetoothDevice.passkeyRequest` event - * bond : bool // default true, Perform bonding - * mitm : bool // default false, Man In The Middle protection - * lesc : bool // default false, LE Secure Connections - * passkey : // default "", or a 6 digit passkey to use - * oob : [0..15] // if specified, Out Of Band pairing is enabled and - * // the 16 byte pairing code supplied here is used - * encryptUart : bool // default false (unless oob or passkey specified) - * // This sets the BLE UART service such that it - * // is encrypted and can only be used from a bonded connection - * }); - * ``` - * **NOTE:** Some combinations of arguments will cause an error. For example - * supplying a passkey without `display:1` is not allowed. If `display:1` is set - * you do not require a physical display, the user just needs to know the passkey - * you supplied. - * For instance, to require pairing and to specify a passkey, use: - * ``` - * NRF.setSecurity({passkey:"123456", mitm:1, display:1}); - * ``` - * However, while most devices will request a passkey for pairing at this point it - * is still possible for a device to connect without requiring one (eg. using the - * 'NRF Connect' app). - * To force a passkey you need to protect each characteristic you define with - * `NRF.setSecurity`. For instance the following code will *require* that the - * passkey `123456` is entered before the characteristic - * `9d020002-bf5f-1d1a-b52a-fe52091d5b12` can be read. - * ``` - * NRF.setSecurity({passkey:"123456", mitm:1, display:1}); - * NRF.setServices({ - * "9d020001-bf5f-1d1a-b52a-fe52091d5b12" : { - * "9d020002-bf5f-1d1a-b52a-fe52091d5b12" : { - * // readable always - * value : "Not Secret" - * }, - * "9d020003-bf5f-1d1a-b52a-fe52091d5b12" : { - * // readable only once bonded - * value : "Secret", - * readable : true, - * security: { - * read: { - * mitm: true, - * encrypted: true - * } - * } - * }, - * "9d020004-bf5f-1d1a-b52a-fe52091d5b12" : { - * // readable always - * // writable only once bonded - * value : "Readable", - * readable : true, - * writable : true, - * onWrite : function(evt) { - * console.log("Wrote ", evt.data); - * }, - * security: { - * write: { - * mitm: true, - * encrypted: true - * } - * } - * } - * } - * }); - * ``` - * **Note:** If `passkey` or `oob` is specified, the Nordic UART service (if - * enabled) will automatically be set to require encryption, but otherwise it is - * open. - * - * @param {any} options - An object containing security-related options (see below) - * @url http://www.espruino.com/Reference#l_NRF_setSecurity - */ - static setSecurity(options: any): void; - - /** - * Return an object with information about the security state of the current - * peripheral connection: - * ``` - * { - * connected // The connection is active (not disconnected). - * encrypted // Communication on this link is encrypted. - * mitm_protected // The encrypted communication is also protected against man-in-the-middle attacks. - * bonded // The peer is bonded with us - * connected_addr // If connected=true, the MAC address of the currently connected device - * } - * ``` - * If there is no active connection, `{connected:false}` will be returned. - * See `NRF.setSecurity` for information about negotiating a secure connection. - * @returns {any} An object - * @url http://www.espruino.com/Reference#l_NRF_getSecurityStatus - */ - static getSecurityStatus(): any; - - /** - * - * @param {boolean} forceRepair - True if we should force repairing even if there is already valid pairing info - * @returns {any} A promise - * @url http://www.espruino.com/Reference#l_NRF_startBonding - */ - static startBonding(forceRepair: boolean): any; - - -} - -/** - * @url http://www.espruino.com/Reference#Bluetooth - */ -declare class Bluetooth { - /** - * @url http://www.espruino.com/Reference#l_Bluetooth_setConsole - */ - static setConsole(): void; - - -} - -/** - * A Web Bluetooth-style device - you can request one using - * `NRF.requestDevice(address)` - * For example: - * ``` - * var gatt; - * NRF.requestDevice({ filters: [{ name: 'Puck.js abcd' }] }).then(function(device) { - * console.log("found device"); - * return device.gatt.connect(); - * }).then(function(g) { - * gatt = g; - * console.log("connected"); - * return gatt.startBonding(); - * }).then(function() { - * console.log("bonded", gatt.getSecurityStatus()); - * gatt.disconnect(); - * }).catch(function(e) { - * console.log("ERROR",e); - * }); - * ``` - * @url http://www.espruino.com/Reference#BluetoothDevice - */ -declare class BluetoothDevice { - /** - * Called when the device gets disconnected. - * To connect and then print `Disconnected` when the device is disconnected, just - * do the following: - * ``` - * var gatt; - * NRF.connect("aa:bb:cc:dd:ee:ff").then(function(gatt) { - * gatt.device.on('gattserverdisconnected', function(reason) { - * console.log("Disconnected ",reason); - * }); - * }); - * ``` - * Or: - * ``` - * var gatt; - * NRF.requestDevice(...).then(function(device) { - * device.on('gattserverdisconnected', function(reason) { - * console.log("Disconnected ",reason); - * }); - * }); - * ``` - * @param {string} event - The event to listen to. - * @param {(reason: number) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `reason` The reason code reported back by the BLE stack - see Nordic's `ble_hci.h` file for more information - * @url http://www.espruino.com/Reference#l_BluetoothDevice_gattserverdisconnected - */ - static on(event: "gattserverdisconnected", callback: (reason: number) => void): void; - - /** - * Called when the device pairs and sends a passkey that Espruino should display. - * For this to be used, you'll have to specify that there's a display using - * `NRF.setSecurity` - * **This is not part of the Web Bluetooth Specification.** It has been added - * specifically for Espruino. - * @param {string} event - The event to listen to. - * @param {(passkey: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `passkey` A 6 character numeric String to be displayed - * @url http://www.espruino.com/Reference#l_BluetoothDevice_passkey - */ - static on(event: "passkey", callback: (passkey: any) => void): void; - - /** - * Called when the device pairs, displays a passkey, and wants Espruino to tell it - * what the passkey was. - * Respond with `BluetoothDevice.sendPasskey()` with a 6 character string - * containing only `0..9`. - * For this to be used, you'll have to specify that there's a keyboard using - * `NRF.setSecurity` - * **This is not part of the Web Bluetooth Specification.** It has been added - * specifically for Espruino. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_BluetoothDevice_passkeyRequest - */ - static on(event: "passkeyRequest", callback: () => void): void; - - /** - * @returns {any} A `BluetoothRemoteGATTServer` for this device - * @url http://www.espruino.com/Reference#l_BluetoothDevice_gatt - */ - gatt: any; - - /** - * @returns {boolean} The last received RSSI (signal strength) for this device - * @url http://www.espruino.com/Reference#l_BluetoothDevice_rssi - */ - rssi: boolean; - - /** - * To be used as a response when the event `BluetoothDevice.sendPasskey` has been - * received. - * **This is not part of the Web Bluetooth Specification.** It has been added - * specifically for Espruino. - * - * @param {any} passkey - A 6 character numeric String to be returned to the device - * @url http://www.espruino.com/Reference#l_BluetoothDevice_sendPasskey - */ - sendPasskey(passkey: any): void; -} - -/** - * Web Bluetooth-style GATT server - get this using `NRF.connect(address)` or - * `NRF.requestDevice(options)` and `response.gatt.connect` - * https://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattserver - * @url http://www.espruino.com/Reference#BluetoothRemoteGATTServer - */ -declare class BluetoothRemoteGATTServer { - - - /** - * Connect to a BLE device - returns a promise, the argument of which is the - * `BluetoothRemoteGATTServer` connection. - * See [`NRF.requestDevice`](/Reference#l_NRF_requestDevice) for usage examples. - * `options` is an optional object containing: - * ``` - * { - * minInterval // min connection interval in milliseconds, 7.5 ms to 4 s - * maxInterval // max connection interval in milliseconds, 7.5 ms to 4 s - * } - * ``` - * By default the interval is 20-200ms (or 500-1000ms if - * `NRF.setLowPowerConnection(true)` was called. During connection Espruino - * negotiates with the other device to find a common interval that can be used. - * For instance calling: - * ``` - * NRF.requestDevice({ filters: [{ namePrefix: 'Pixl.js' }] }).then(function(device) { - * return device.gatt.connect({minInterval:7.5, maxInterval:7.5}); - * }).then(function(g) { - * ``` - * will force the connection to use the fastest connection interval possible (as - * long as the device at the other end supports it). - * **Note:** The Web Bluetooth spec states that if a device hasn't advertised its - * name, when connected to a device the central (in this case Espruino) should - * automatically retrieve the name from the corresponding characteristic (`0x2a00` - * on service `0x1800`). Espruino does not automatically do this. - * - * @param {any} options - (Espruino-specific) An object of connection options (see below) - * @returns {any} A `Promise` that is resolved (or rejected) when the connection is complete - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_connect - */ - connect(options: any): Promise; - - /** - * @returns {boolean} Whether the device is connected or not - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_connected - */ - connected: boolean; - - /** - * @returns {number} The handle to this device (if it is currently connected) - the handle is an internal value used by the Bluetooth Stack - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_handle - */ - handle: number; - - /** - * Disconnect from a previously connected BLE device connected with - * `BluetoothRemoteGATTServer.connect` - this does not disconnect from something - * that has connected to the Espruino. - * **Note:** While `.disconnect` is standard Web Bluetooth, in the spec it returns - * undefined not a `Promise` for implementation reasons. In Espruino we return a - * `Promise` to make it easier to detect when Espruino is free to connect to - * something else. - * @returns {any} A `Promise` that is resolved (or rejected) when the disconnection is complete (non-standard) - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_disconnect - */ - disconnect(): Promise; - - /** - * Start negotiating bonding (secure communications) with the connected device, and - * return a Promise that is completed on success or failure. - * ``` - * var gatt; - * NRF.requestDevice({ filters: [{ name: 'Puck.js abcd' }] }).then(function(device) { - * console.log("found device"); - * return device.gatt.connect(); - * }).then(function(g) { - * gatt = g; - * console.log("connected"); - * return gatt.startBonding(); - * }).then(function() { - * console.log("bonded", gatt.getSecurityStatus()); - * gatt.disconnect(); - * }).catch(function(e) { - * console.log("ERROR",e); - * }); - * ``` - * **This is not part of the Web Bluetooth Specification.** It has been added - * specifically for Espruino. - * - * @param {boolean} forceRePair - If the device is already bonded, re-pair it - * @returns {any} A `Promise` that is resolved (or rejected) when the bonding is complete - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_startBonding - */ - startBonding(forceRePair: boolean): Promise; - - /** - * Return an object with information about the security state of the current - * connection: - * ``` - * { - * connected // The connection is active (not disconnected). - * encrypted // Communication on this link is encrypted. - * mitm_protected // The encrypted communication is also protected against man-in-the-middle attacks. - * bonded // The peer is bonded with us - * } - * ``` - * See `BluetoothRemoteGATTServer.startBonding` for information about negotiating a - * secure connection. - * **This is not part of the Web Bluetooth Specification.** It has been added - * specifically for Puck.js. - * @returns {any} An object - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_getSecurityStatus - */ - getSecurityStatus(): any; - - /** - * See `NRF.connect` for usage examples. - * - * @param {any} service - The service UUID - * @returns {any} A `Promise` that is resolved (or rejected) when the primary service is found (the argument contains a `BluetoothRemoteGATTService`) - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_getPrimaryService - */ - getPrimaryService(service: any): Promise; - - /** - * @returns {any} A `Promise` that is resolved (or rejected) when the primary services are found (the argument contains an array of `BluetoothRemoteGATTService`) - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_getPrimaryServices - */ - getPrimaryServices(): Promise; - - /** - * Start/stop listening for RSSI values on the active GATT connection - * ``` - * // Start listening for RSSI value updates - * gattServer.setRSSIHandler(function(rssi) { - * console.log(rssi); // prints -85 (or similar) - * }); - * // Stop listening - * gattServer.setRSSIHandler(); - * ``` - * RSSI is the 'Received Signal Strength Indication' in dBm - * - * @param {any} callback - The callback to call with the RSSI value, or undefined to stop - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTServer_setRSSIHandler - */ - setRSSIHandler(callback: any): void; -} - -/** - * Web Bluetooth-style GATT service - get this using - * `BluetoothRemoteGATTServer.getPrimaryService(s)` - * https://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattservice - * @url http://www.espruino.com/Reference#BluetoothRemoteGATTService - */ -declare class BluetoothRemoteGATTService { - - - /** - * @returns {any} The `BluetoothDevice` this Service came from - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTService_device - */ - device: any; - - /** - * See `NRF.connect` for usage examples. - * - * @param {any} characteristic - The characteristic UUID - * @returns {any} A `Promise` that is resolved (or rejected) when the characteristic is found (the argument contains a `BluetoothRemoteGATTCharacteristic`) - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTService_getCharacteristic - */ - getCharacteristic(characteristic: any): Promise; - - /** - * @returns {any} A `Promise` that is resolved (or rejected) when the characteristic is found (the argument contains an array of `BluetoothRemoteGATTCharacteristic`) - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTService_getCharacteristics - */ - getCharacteristics(): Promise; -} - -/** - * Web Bluetooth-style GATT characteristic - get this using - * `BluetoothRemoteGATTService.getCharacteristic(s)` - * https://webbluetoothcg.github.io/web-bluetooth/#bluetoothremotegattcharacteristic - * @url http://www.espruino.com/Reference#BluetoothRemoteGATTCharacteristic - */ -declare class BluetoothRemoteGATTCharacteristic { - /** - * Called when a characteristic's value changes, *after* - * `BluetoothRemoteGATTCharacteristic.startNotifications` has been called. - * ``` - * ... - * return service.getCharacteristic("characteristic_uuid"); - * }).then(function(c) { - * c.on('characteristicvaluechanged', function(event) { - * console.log("-> "+event.target.value); - * }); - * return c.startNotifications(); - * }).then(... - * ``` - * The first argument is of the form `{target : - * BluetoothRemoteGATTCharacteristic}`, and - * `BluetoothRemoteGATTCharacteristic.value` will then contain the new value (as a - * DataView). - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_characteristicvaluechanged - */ - static on(event: "characteristicvaluechanged", callback: () => void): void; - - /** - * @returns {any} The `BluetoothRemoteGATTService` this Service came from - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_service - */ - service: any; - - /** - * Write a characteristic's value - * ``` - * var device; - * NRF.connect(device_address).then(function(d) { - * device = d; - * return d.getPrimaryService("service_uuid"); - * }).then(function(s) { - * console.log("Service ",s); - * return s.getCharacteristic("characteristic_uuid"); - * }).then(function(c) { - * return c.writeValue("Hello"); - * }).then(function(d) { - * device.disconnect(); - * }).catch(function() { - * console.log("Something's broken."); - * }); - * ``` - * - * @param {any} data - The data to write - * @returns {any} A `Promise` that is resolved (or rejected) when the characteristic is written - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_writeValue - */ - writeValue(data: any): Promise; - - /** - * Read a characteristic's value, return a promise containing a `DataView` - * ``` - * var device; - * NRF.connect(device_address).then(function(d) { - * device = d; - * return d.getPrimaryService("service_uuid"); - * }).then(function(s) { - * console.log("Service ",s); - * return s.getCharacteristic("characteristic_uuid"); - * }).then(function(c) { - * return c.readValue(); - * }).then(function(d) { - * console.log("Got:", JSON.stringify(d.buffer)); - * device.disconnect(); - * }).catch(function() { - * console.log("Something's broken."); - * }); - * ``` - * @returns {any} A `Promise` that is resolved (or rejected) with a `DataView` when the characteristic is read - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_readValue - */ - readValue(): Promise; - - /** - * Starts notifications - whenever this characteristic's value changes, a - * `characteristicvaluechanged` event is fired and `characteristic.value` will then - * contain the new value as a `DataView`. - * ``` - * var device; - * NRF.connect(device_address).then(function(d) { - * device = d; - * return d.getPrimaryService("service_uuid"); - * }).then(function(s) { - * console.log("Service ",s); - * return s.getCharacteristic("characteristic_uuid"); - * }).then(function(c) { - * c.on('characteristicvaluechanged', function(event) { - * console.log("-> ",event.target.value); // this is a DataView - * }); - * return c.startNotifications(); - * }).then(function(d) { - * console.log("Waiting for notifications"); - * }).catch(function() { - * console.log("Something's broken."); - * }); - * ``` - * For example, to listen to the output of another Puck.js's Nordic Serial port - * service, you can use: - * ``` - * var gatt; - * NRF.connect("pu:ck:js:ad:dr:es random").then(function(g) { - * gatt = g; - * return gatt.getPrimaryService("6e400001-b5a3-f393-e0a9-e50e24dcca9e"); - * }).then(function(service) { - * return service.getCharacteristic("6e400003-b5a3-f393-e0a9-e50e24dcca9e"); - * }).then(function(characteristic) { - * characteristic.on('characteristicvaluechanged', function(event) { - * console.log("RX: "+JSON.stringify(event.target.value.buffer)); - * }); - * return characteristic.startNotifications(); - * }).then(function() { - * console.log("Done!"); - * }); - * ``` - * @returns {any} A `Promise` that is resolved (or rejected) with data when notifications have been added - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_startNotifications - */ - startNotifications(): Promise; - - /** - * Stop notifications (that were requested with - * `BluetoothRemoteGATTCharacteristic.startNotifications`) - * @returns {any} A `Promise` that is resolved (or rejected) with data when notifications have been removed - * @url http://www.espruino.com/Reference#l_BluetoothRemoteGATTCharacteristic_stopNotifications - */ - stopNotifications(): Promise; -} - -/** - * Class containing utility functions for the [Bangle.js Smart - * Watch](http://www.espruino.com/Bangle.js) - * @url http://www.espruino.com/Reference#Bangle - */ -declare class Bangle { - /** - * Accelerometer data available with `{x,y,z,diff,mag}` object as a parameter. - * * `x` is X axis (left-right) in `g` - * * `y` is Y axis (up-down) in `g` - * * `z` is Z axis (in-out) in `g` - * * `diff` is difference between this and the last reading in `g` - * * `mag` is the magnitude of the acceleration in `g` - * You can also retrieve the most recent reading with `Bangle.getAccel()`. - * @param {string} event - The event to listen to. - * @param {(xyz: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `xyz` - * @url http://www.espruino.com/Reference#l_Bangle_accel - */ - static on(event: "accel", callback: (xyz: AccelData) => void): void; - - /** - * Called whenever a step is detected by Bangle.js's pedometer. - * @param {string} event - The event to listen to. - * @param {(up: number) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `up` The number of steps since Bangle.js was last reset - * @url http://www.espruino.com/Reference#l_Bangle_step - */ - static on(event: "step", callback: (up: number) => void): void; - - /** - * See `Bangle.getHealthStatus()` for more information. This is used for health - * tracking to allow Bangle.js to record historical exercise data. - * @param {string} event - The event to listen to. - * @param {(info: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `info` An object containing the last 10 minutes health data - * @url http://www.espruino.com/Reference#l_Bangle_health - */ - static on(event: "health", callback: (info: HealthStatus) => void): void; - - /** - * Has the watch been moved so that it is face-up, or not face up? - * @param {string} event - The event to listen to. - * @param {(up: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `up` `true` if face-up - * @url http://www.espruino.com/Reference#l_Bangle_faceUp - */ - static on(event: "faceUp", callback: (up: boolean) => void): void; - - /** - * This event happens when the watch has been twisted around it's axis - for - * instance as if it was rotated so someone could look at the time. - * To tweak when this happens, see the `twist*` options in `Bangle.setOptions()` - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_Bangle_twist - */ - static on(event: "twist", callback: () => void): void; - - /** - * Is the battery charging or not? - * @param {string} event - The event to listen to. - * @param {(charging: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `charging` `true` if charging - * @url http://www.espruino.com/Reference#l_Bangle_charging - */ - static on(event: "charging", callback: (charging: boolean) => void): void; - - /** - * Magnetometer/Compass data available with `{x,y,z,dx,dy,dz,heading}` object as a - * parameter - * * `x/y/z` raw x,y,z magnetometer readings - * * `dx/dy/dz` readings based on calibration since magnetometer turned on - * * `heading` in degrees based on calibrated readings (will be NaN if magnetometer - * hasn't been rotated around 360 degrees) - * To get this event you must turn the compass on with `Bangle.setCompassPower(1)`. - * You can also retrieve the most recent reading with `Bangle.getCompass()`. - * @param {string} event - The event to listen to. - * @param {(xyz: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `xyz` - * @url http://www.espruino.com/Reference#l_Bangle_mag - */ - static on(event: "mag", callback: (xyz: CompassData) => void): void; - - /** - * Raw NMEA GPS / u-blox data messages received as a string - * To get this event you must turn the GPS on with `Bangle.setGPSPower(1)`. - * @param {string} event - The event to listen to. - * @param {(nmea: any, dataLoss: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `nmea` A string containing the raw NMEA data from the GPS - * * `dataLoss` This is set to true if some lines of GPS data have previously been lost (eg because system was too busy to queue up a GPS-raw event) - * @url http://www.espruino.com/Reference#l_Bangle_GPS-raw - */ - static on(event: "GPS-raw", callback: (nmea: string, dataLoss: boolean) => void): void; - - /** - * GPS data, as an object. Contains: - * ``` - * { "lat": number, // Latitude in degrees - * "lon": number, // Longitude in degrees - * "alt": number, // altitude in M - * "speed": number, // Speed in kph - * "course": number, // Course in degrees - * "time": Date, // Current Time (or undefined if not known) - * "satellites": 7, // Number of satellites - * "fix": 1 // NMEA Fix state - 0 is no fix - * "hdop": number, // Horizontal Dilution of Precision - * } - * ``` - * If a value such as `lat` is not known because there is no fix, it'll be `NaN`. - * `hdop` is a value from the GPS receiver that gives a rough idea of accuracy of - * lat/lon based on the geometry of the satellites in range. Multiply by 5 to get a - * value in meters. This is just a ballpark estimation and should not be considered - * remotely accurate. - * To get this event you must turn the GPS on with `Bangle.setGPSPower(1)`. - * @param {string} event - The event to listen to. - * @param {(fix: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `fix` An object with fix info (see below) - * @url http://www.espruino.com/Reference#l_Bangle_GPS - */ - static on(event: "GPS", callback: (fix: GPSFix) => void): void; - - /** - * Heat rate data, as an object. Contains: - * ``` - * { "bpm": number, // Beats per minute - * "confidence": number, // 0-100 percentage confidence in the heart rate - * "raw": Uint8Array, // raw samples from heart rate monitor - * } - * ``` - * To get this event you must turn the heart rate monitor on with - * `Bangle.setHRMPower(1)`. - * @param {string} event - The event to listen to. - * @param {(hrm: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `hrm` An object with heart rate info (see below) - * @url http://www.espruino.com/Reference#l_Bangle_HRM - */ - static on(event: "HRM", callback: (hrm: { bpm: number, confidence: number, raw: Uint8Array }) => void): void; - - /** - * Called when heart rate sensor data is available - see `Bangle.setHRMPower(1)`. - * `hrm` is of the form: - * ``` - * { "raw": -1, // raw value from sensor - * "filt": -1, // bandpass-filtered raw value from sensor - * "bpm": 88.9, // last BPM value measured - * "confidence": 0 // confidence in the BPM value - * } - * ``` - * @param {string} event - The event to listen to. - * @param {(hrm: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `hrm` A object containing instant readings from the heart rate sensor - * @url http://www.espruino.com/Reference#l_Bangle_HRM-raw - */ - static on(event: "HRM-raw", callback: (hrm: { raw: number, filt: number, bpm: number, confidence: number }) => void): void; - - /** - * When `Bangle.setBarometerPower(true)` is called, this event is fired containing - * barometer readings. - * Same format as `Bangle.getPressure()` - * @param {string} event - The event to listen to. - * @param {(e: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `e` An object containing `{temperature,pressure,altitude}` - * @url http://www.espruino.com/Reference#l_Bangle_pressure - */ - static on(event: "pressure", callback: (e: PressureData) => void): void; - - /** - * Has the screen been turned on or off? Can be used to stop tasks that are no - * longer useful if nothing is displayed. Also see `Bangle.isLCDOn()` - * @param {string} event - The event to listen to. - * @param {(on: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `on` `true` if screen is on - * @url http://www.espruino.com/Reference#l_Bangle_lcdPower - */ - static on(event: "lcdPower", callback: (on: boolean) => void): void; - - /** - * Has the screen been locked? Also see `Bangle.isLocked()` - * @param {string} event - The event to listen to. - * @param {(on: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `on` `true` if screen is locked, `false` if it is unlocked and touchscreen/buttons will work - * @url http://www.espruino.com/Reference#l_Bangle_lock - */ - static on(event: "lock", callback: (on: boolean) => void): void; - - /** - * If the watch is tapped, this event contains information on the way it was - * tapped. - * `dir` reports the side of the watch that was tapped (not the direction it was - * tapped in). - * ``` - * { - * dir : "left/right/top/bottom/front/back", - * double : true/false // was this a double-tap? - * x : -2 .. 2, // the axis of the tap - * y : -2 .. 2, // the axis of the tap - * z : -2 .. 2 // the axis of the tap - * ``` - * @param {string} event - The event to listen to. - * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `data` `{dir, double, x, y, z}` - * @url http://www.espruino.com/Reference#l_Bangle_tap - */ - static on(event: "tap", callback: (data: { dir: "left" | "right" | "top" | "bottom" | "front" | "back", double: boolean, x: TapAxis, y: TapAxis, z: TapAxis }) => void): void; - - /** - * Emitted when a 'gesture' (fast movement) is detected - * @param {string} event - The event to listen to. - * @param {(xyz: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `xyz` An Int8Array of XYZXYZXYZ data - * @url http://www.espruino.com/Reference#l_Bangle_gesture - */ - static on(event: "gesture", callback: (xyz: Int8Array) => void): void; - - /** - * Emitted when a 'gesture' (fast movement) is detected, and a Tensorflow model is - * in storage in the `".tfmodel"` file. - * If a `".tfnames"` file is specified as a comma-separated list of names, it will - * be used to decode `gesture` from a number into a string. - * @param {string} event - The event to listen to. - * @param {(gesture: any, weights: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `gesture` The name of the gesture (if '.tfnames' exists, or the index. 'undefined' if not matching - * * `weights` An array of floating point values output by the model - * @url http://www.espruino.com/Reference#l_Bangle_aiGesture - */ - static on(event: "aiGesture", callback: (gesture: string | undefined, weights: number[]) => void): void; - - /** - * Emitted when a swipe on the touchscreen is detected (a movement from - * left->right, right->left, down->up or up->down) - * Bangle.js 1 is only capable of detecting left/right swipes as it only contains a - * 2 zone touchscreen. - * @param {string} event - The event to listen to. - * @param {(directionLR: number, directionUD: number) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `directionLR` `-1` for left, `1` for right, `0` for up/down - * * `directionUD` `-1` for up, `1` for down, `0` for left/right (Bangle.js 2 only) - * @url http://www.espruino.com/Reference#l_Bangle_swipe - */ - static on(event: "swipe", callback: SwipeCallback): void; - - /** - * Emitted when the touchscreen is pressed - * @param {string} event - The event to listen to. - * @param {(button: number, xy: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `button` `1` for left, `2` for right - * * `xy` Object of form `{x,y}` containing touch coordinates (if the device supports full touch). Clipped to 0..175 (LCD pixel coordinates) on firmware 2v13 and later. - * @url http://www.espruino.com/Reference#l_Bangle_touch - */ - static on(event: "touch", callback: TouchCallback): void; - - /** - * Emitted when the touchscreen is dragged or released - * The touchscreen extends past the edge of the screen and while `x` and `y` - * coordinates are arranged such that they align with the LCD's pixels, if your - * finger goes towards the edge of the screen, `x` and `y` could end up larger than - * 175 (the screen's maximum pixel coordinates) or smaller than 0. Coordinates from - * the `touch` event are clipped. - * @param {string} event - The event to listen to. - * @param {(event: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `event` Object of form `{x,y,dx,dy,b}` containing touch coordinates, difference in touch coordinates, and an integer `b` containing number of touch points (currently 1 or 0) - * @url http://www.espruino.com/Reference#l_Bangle_drag - */ - static on(event: "drag", callback: DragCallback): void; - - /** - * Emitted when the touchscreen is dragged for a large enough distance to count as - * a gesture. - * If Bangle.strokes is defined and populated with data from `Unistroke.new`, the - * `event` argument will also contain a `stroke` field containing the most closely - * matching stroke name. - * For example: - * ``` - * Bangle.strokes = { - * up : Unistroke.new(new Uint8Array([57, 151, ... 158, 137])), - * alpha : Unistroke.new(new Uint8Array([161, 55, ... 159, 161])), - * }; - * Bangle.on('stroke',o=>{ - * print(o.stroke); - * g.clear(1).drawPoly(o.xy); - * }); - * // Might print something like - * { - * "xy": new Uint8Array([149, 50, ... 107, 136]), - * "stroke": "alpha" - * } - * ``` - * @param {string} event - The event to listen to. - * @param {(event: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `event` Object of form `{xy:Uint8Array([x1,y1,x2,y2...])}` containing touch coordinates - * @url http://www.espruino.com/Reference#l_Bangle_stroke - */ - static on(event: "stroke", callback: (event: { xy: Uint8Array, stroke?: string }) => void): void; - - /** - * Emitted at midnight (at the point the `day` health info is reset to 0). - * Can be used for housekeeping tasks that don't want to be run during the day. - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_Bangle_midnight - */ - static on(event: "midnight", callback: () => void): void; - - /** - * This function can be used to turn Bangle.js's LCD off or on. - * This function resets the Bangle's 'activity timer' (like pressing a button or - * the screen would) so after a time period of inactivity set by - * `Bangle.setLCDTimeout` the screen will turn off. - * If you want to keep the screen on permanently (until apps are changed) you can - * do: - * ``` - * Bangle.setLCDTimeout(0); // turn off the timeout - * Bangle.setLCDPower(1); // keep screen on - * ``` - * **When on full, the LCD draws roughly 40mA.** You can adjust When brightness - * using `Bangle.setLCDBrightness`. - * - * @param {boolean} isOn - True if the LCD should be on, false if not - * @url http://www.espruino.com/Reference#l_Bangle_setLCDPower - */ - static setLCDPower(isOn: boolean): void; - - /** - * This function can be used to adjust the brightness of Bangle.js's display, and - * hence prolong its battery life. - * Due to hardware design constraints, software PWM has to be used which means that - * the display may flicker slightly when Bluetooth is active and the display is not - * at full power. - * **Power consumption** - * * 0 = 7mA - * * 0.1 = 12mA - * * 0.2 = 18mA - * * 0.5 = 28mA - * * 0.9 = 40mA (switching overhead) - * * 1 = 40mA - * - * @param {number} brightness - The brightness of Bangle.js's display - from 0(off) to 1(on full) - * @url http://www.espruino.com/Reference#l_Bangle_setLCDBrightness - */ - static setLCDBrightness(brightness: number): void; - - /** - * This function can be used to change the way graphics is handled on Bangle.js. - * Available options for `Bangle.setLCDMode` are: - * * `Bangle.setLCDMode()` or `Bangle.setLCDMode("direct")` (the default) - The - * drawable area is 240x240 16 bit. Unbuffered, so draw calls take effect - * immediately. Terminal and vertical scrolling work (horizontal scrolling - * doesn't). - * * `Bangle.setLCDMode("doublebuffered")` - The drawable area is 240x160 16 bit, - * terminal and scrolling will not work. `g.flip()` must be called for draw - * operations to take effect. - * * `Bangle.setLCDMode("120x120")` - The drawable area is 120x120 8 bit, - * `g.getPixel`, terminal, and full scrolling work. Uses an offscreen buffer - * stored on Bangle.js, `g.flip()` must be called for draw operations to take - * effect. - * * `Bangle.setLCDMode("80x80")` - The drawable area is 80x80 8 bit, `g.getPixel`, - * terminal, and full scrolling work. Uses an offscreen buffer stored on - * Bangle.js, `g.flip()` must be called for draw operations to take effect. - * You can also call `Bangle.setLCDMode()` to return to normal, unbuffered - * `"direct"` mode. - * - * @param {any} mode - The LCD mode (See below) - * @url http://www.espruino.com/Reference#l_Bangle_setLCDMode - */ - static setLCDMode(mode?: LCDMode): void; - - /** - * The current LCD mode. - * See `Bangle.setLCDMode` for examples. - * @returns {any} The LCD mode as a String - * @url http://www.espruino.com/Reference#l_Bangle_getLCDMode - */ - static getLCDMode(): LCDMode; - - /** - * This can be used to move the displayed memory area up or down temporarily. It's - * used for displaying notifications while keeping the main display contents - * intact. - * - * @param {number} y - The amount of pixels to shift the LCD up or down - * @url http://www.espruino.com/Reference#l_Bangle_setLCDOffset - */ - static setLCDOffset(y: number): void; - - /** - * This function can be used to turn Bangle.js's LCD power saving on or off. - * With power saving off, the display will remain in the state you set it with - * `Bangle.setLCDPower`. - * With power saving on, the display will turn on if a button is pressed, the watch - * is turned face up, or the screen is updated (see `Bangle.setOptions` for - * configuration). It'll turn off automatically after the given timeout. - * **Note:** This function also sets the Backlight and Lock timeout (the time at - * which the touchscreen/buttons start being ignored). To set both separately, use - * `Bangle.setOptions` - * - * @param {number} isOn - The timeout of the display in seconds, or `0`/`undefined` to turn power saving off. Default is 10 seconds. - * @url http://www.espruino.com/Reference#l_Bangle_setLCDTimeout - */ - static setLCDTimeout(isOn: number): void; - - /** - * Set how often the watch should poll for new acceleration/gyro data and kick the - * Watchdog timer. It isn't recommended that you make this interval much larger - * than 1000ms, but values up to 4000ms are allowed. - * Calling this will set `Bangle.setOptions({powerSave: false})` - disabling the - * dynamic adjustment of poll interval to save battery power when Bangle.js is - * stationary. - * - * @param {number} interval - Polling interval in milliseconds (Default is 80ms - 12.5Hz to match accelerometer) - * @url http://www.espruino.com/Reference#l_Bangle_setPollInterval - */ - static setPollInterval(interval: number): void; - - /** - * Set internal options used for gestures, etc... - * * `wakeOnBTN1` should the LCD turn on when BTN1 is pressed? default = `true` - * * `wakeOnBTN2` (Bangle.js 1) should the LCD turn on when BTN2 is pressed? - * default = `true` - * * `wakeOnBTN3` (Bangle.js 1) should the LCD turn on when BTN3 is pressed? - * default = `true` - * * `wakeOnFaceUp` should the LCD turn on when the watch is turned face up? - * default = `false` - * * `wakeOnTouch` should the LCD turn on when the touchscreen is pressed? default - * = `false` - * * `wakeOnTwist` should the LCD turn on when the watch is twisted? default = - * `true` - * * `twistThreshold` How much acceleration to register a twist of the watch strap? - * Can be negative for opposite direction. default = `800` - * * `twistMaxY` Maximum acceleration in Y to trigger a twist (low Y means watch is - * facing the right way up). default = `-800` - * * `twistTimeout` How little time (in ms) must a twist take from low->high - * acceleration? default = `1000` - * * `gestureStartThresh` how big a difference before we consider a gesture - * started? default = `sqr(800)` - * * `gestureEndThresh` how small a difference before we consider a gesture ended? - * default = `sqr(2000)` - * * `gestureInactiveCount` how many samples do we keep after a gesture has ended? - * default = `4` - * * `gestureMinLength` how many samples must a gesture have before we notify about - * it? default = `10` - * * `powerSave` after a minute of not being moved, Bangle.js will change the - * accelerometer poll interval down to 800ms (10x accelerometer samples). On - * movement it'll be raised to the default 80ms. If `Bangle.setPollInterval` is - * used this is disabled, and for it to work the poll interval must be either - * 80ms or 800ms. default = `true`. Setting `powerSave:false` will disable this - * automatic power saving, but will **not** change the poll interval from its - * current value. If you desire a specific interval (e.g. the default 80ms) you - * must set it manually with `Bangle.setPollInterval(80)` after setting - * `powerSave:false`. - * * `lockTimeout` how many milliseconds before the screen locks - * * `lcdPowerTimeout` how many milliseconds before the screen turns off - * * `backlightTimeout` how many milliseconds before the screen's backlight turns - * off - * * `hrmPollInterval` set the requested poll interval (in milliseconds) for the - * heart rate monitor. On Bangle.js 2 only 10,20,40,80,160,200 ms are supported, - * and polling rate may not be exact. The algorithm's filtering is tuned for - * 20-40ms poll intervals, so higher/lower intervals may effect the reliability - * of the BPM reading. - * * `seaLevelPressure` (Bangle.js 2) Normally 1013.25 millibars - this is used for - * calculating altitude with the pressure sensor - * Where accelerations are used they are in internal units, where `8192 = 1g` - * - * @param {any} options - * @url http://www.espruino.com/Reference#l_Bangle_setOptions - */ - static setOptions(options: { [key in keyof BangleOptions]?: BangleOptions[key] }): void; - - /** - * Return the current state of options as set by `Bangle.setOptions` - * @returns {any} The current state of all options - * @url http://www.espruino.com/Reference#l_Bangle_getOptions - */ - static getOptions(): BangleOptions; - - /** - * Also see the `Bangle.lcdPower` event - * @returns {boolean} Is the display on or not? - * @url http://www.espruino.com/Reference#l_Bangle_isLCDOn - */ - static isLCDOn(): boolean; - - /** - * This function can be used to lock or unlock Bangle.js (e.g. whether buttons and - * touchscreen work or not) - * - * @param {boolean} isLocked - `true` if the Bangle is locked (no user input allowed) - * @url http://www.espruino.com/Reference#l_Bangle_setLocked - */ - static setLocked(isLocked: boolean): void; - - /** - * Also see the `Bangle.lock` event - * @returns {boolean} Is the screen locked or not? - * @url http://www.espruino.com/Reference#l_Bangle_isLocked - */ - static isLocked(): boolean; - - /** - * @returns {boolean} Is the battery charging or not? - * @url http://www.espruino.com/Reference#l_Bangle_isCharging - */ - static isCharging(): boolean; - - /** - * Writes a command directly to the ST7735 LCD controller - * - * @param {number} cmd - * @param {any} data - * @url http://www.espruino.com/Reference#l_Bangle_lcdWr - */ - static lcdWr(cmd: number, data: any): void; - - /** - * Set the power to the Heart rate monitor - * When on, data is output via the `HRM` event on `Bangle`: - * ``` - * Bangle.setHRMPower(true, "myapp"); - * Bangle.on('HRM',print); - * ``` - * *When on, the Heart rate monitor draws roughly 5mA* - * - * @param {boolean} isOn - True if the heart rate monitor should be on, false if not - * @param {any} appID - A string with the app's name in, used to ensure one app can't turn off something another app is using - * @returns {boolean} Is HRM on? - * @url http://www.espruino.com/Reference#l_Bangle_setHRMPower - */ - static setHRMPower(isOn: boolean, appID: string): boolean; - - /** - * Is the Heart rate monitor powered? - * Set power with `Bangle.setHRMPower(...);` - * @returns {boolean} Is HRM on? - * @url http://www.espruino.com/Reference#l_Bangle_isHRMOn - */ - static isHRMOn(): boolean; - - /** - * Set the power to the GPS. - * When on, data is output via the `GPS` event on `Bangle`: - * ``` - * Bangle.setGPSPower(true, "myapp"); - * Bangle.on('GPS',print); - * ``` - * *When on, the GPS draws roughly 20mA* - * - * @param {boolean} isOn - True if the GPS should be on, false if not - * @param {any} appID - A string with the app's name in, used to ensure one app can't turn off something another app is using - * @returns {boolean} Is the GPS on? - * @url http://www.espruino.com/Reference#l_Bangle_setGPSPower - */ - static setGPSPower(isOn: boolean, appID: string): boolean; - - /** - * Is the GPS powered? - * Set power with `Bangle.setGPSPower(...);` - * @returns {boolean} Is the GPS on? - * @url http://www.espruino.com/Reference#l_Bangle_isGPSOn - */ - static isGPSOn(): boolean; - - /** - * Get the last available GPS fix info (or `undefined` if GPS is off). - * The fix info received is the same as you'd get from the `Bangle.GPS` event. - * @returns {any} A GPS fix object with `{lat,lon,...}` - * @url http://www.espruino.com/Reference#l_Bangle_getGPSFix - */ - static getGPSFix(): GPSFix; - - /** - * Set the power to the Compass - * When on, data is output via the `mag` event on `Bangle`: - * ``` - * Bangle.setCompassPower(true, "myapp"); - * Bangle.on('mag',print); - * ``` - * *When on, the compass draws roughly 2mA* - * - * @param {boolean} isOn - True if the Compass should be on, false if not - * @param {any} appID - A string with the app's name in, used to ensure one app can't turn off something another app is using - * @returns {boolean} Is the Compass on? - * @url http://www.espruino.com/Reference#l_Bangle_setCompassPower - */ - static setCompassPower(isOn: boolean, appID: string): boolean; - - /** - * Is the compass powered? - * Set power with `Bangle.setCompassPower(...);` - * @returns {boolean} Is the Compass on? - * @url http://www.espruino.com/Reference#l_Bangle_isCompassOn - */ - static isCompassOn(): boolean; - - /** - * Resets the compass minimum/maximum values. Can be used if the compass isn't - * providing a reliable heading any more. - * - * @url http://www.espruino.com/Reference#l_Bangle_resetCompass - */ - static resetCompass(): void; - - /** - * Set the power to the barometer IC. Once enabled, `Bangle.pressure` events are - * fired each time a new barometer reading is available. - * When on, the barometer draws roughly 50uA - * - * @param {boolean} isOn - True if the barometer IC should be on, false if not - * @param {any} appID - A string with the app's name in, used to ensure one app can't turn off something another app is using - * @returns {boolean} Is the Barometer on? - * @url http://www.espruino.com/Reference#l_Bangle_setBarometerPower - */ - static setBarometerPower(isOn: boolean, appID: string): boolean; - - /** - * Is the Barometer powered? - * Set power with `Bangle.setBarometerPower(...);` - * @returns {boolean} Is the Barometer on? - * @url http://www.espruino.com/Reference#l_Bangle_isBarometerOn - */ - static isBarometerOn(): boolean; - - /** - * Returns the current amount of steps recorded by the step counter - * @returns {number} The number of steps recorded by the step counter - * @url http://www.espruino.com/Reference#l_Bangle_getStepCount - */ - static getStepCount(): number; - - /** - * Sets the current value of the step counter - * - * @param {number} count - The value with which to reload the step counter - * @url http://www.espruino.com/Reference#l_Bangle_setStepCount - */ - static setStepCount(count: number): void; - - /** - * Get the most recent Magnetometer/Compass reading. Data is in the same format as - * the `Bangle.on('mag',` event. - * Returns an `{x,y,z,dx,dy,dz,heading}` object - * * `x/y/z` raw x,y,z magnetometer readings - * * `dx/dy/dz` readings based on calibration since magnetometer turned on - * * `heading` in degrees based on calibrated readings (will be NaN if magnetometer - * hasn't been rotated around 360 degrees) - * To get this event you must turn the compass on with `Bangle.setCompassPower(1)`. - * @returns {any} An object containing magnetometer readings (as below) - * @url http://www.espruino.com/Reference#l_Bangle_getCompass - */ - static getCompass(): CompassData; - - /** - * Get the most recent accelerometer reading. Data is in the same format as the - * `Bangle.on('accel',` event. - * * `x` is X axis (left-right) in `g` - * * `y` is Y axis (up-down) in `g` - * * `z` is Z axis (in-out) in `g` - * * `diff` is difference between this and the last reading in `g` (calculated by - * comparing vectors, not magnitudes) - * * `td` is the elapsed - * * `mag` is the magnitude of the acceleration in `g` - * @returns {any} An object containing accelerometer readings (as below) - * @url http://www.espruino.com/Reference#l_Bangle_getAccel - */ - static getAccel(): AccelData & { td: number }; - - /** - * `range` is one of: - * * `undefined` or `'current'` - health data so far in the last 10 minutes is - * returned, - * * `'last'` - health data during the last 10 minutes - * * `'day'` - the health data so far for the day - * `getHealthStatus` returns an object containing: - * * `movement` is the 32 bit sum of all `acc.diff` readings since power on (and - * rolls over). It is the difference in accelerometer values as `g*8192` - * * `steps` is the number of steps during this period - * * `bpm` the best BPM reading from HRM sensor during this period - * * `bpmConfidence` best BPM confidence (0-100%) during this period - * - * @param {any} range - What time period to return data for, see below: - * @returns {any} Returns an object containing various health info - * @url http://www.espruino.com/Reference#l_Bangle_getHealthStatus - */ - static getHealthStatus(range?: "current" | "last" | "day"): HealthStatus; + static I2C: any; /** - * Reads debug info * @returns {any} - * @url http://www.espruino.com/Reference#l_Bangle_dbg + * @url http://www.espruino.com/Reference#l_WioLTE_UART */ - static dbg(): any; + static UART: any; /** - * Writes a register on the accelerometer - * - * @param {number} reg - * @param {number} data - * @url http://www.espruino.com/Reference#l_Bangle_accelWr - */ - static accelWr(reg: number, data: number): void; - - /** - * Reads a register from the accelerometer - * **Note:** On Espruino 2v06 and before this function only returns a number (`cnt` - * is ignored). - * - * @param {number} reg - * @param {number} cnt - If specified, returns an array of the given length (max 128). If not (or 0) it returns a number * @returns {any} - * @url http://www.espruino.com/Reference#l_Bangle_accelRd + * @url http://www.espruino.com/Reference#l_WioLTE_A4 */ - static accelRd(reg: number, cnt?: 0): number; - static accelRd(reg: number, cnt: number): number[]; + static A4: any; - /** - * Writes a register on the barometer IC - * - * @param {number} reg - * @param {number} data - * @url http://www.espruino.com/Reference#l_Bangle_barometerWr - */ - static barometerWr(reg: number, data: number): void; - /** - * Reads a register from the barometer IC - * - * @param {number} reg - * @param {number} cnt - If specified, returns an array of the given length (max 128). If not (or 0) it returns a number - * @returns {any} - * @url http://www.espruino.com/Reference#l_Bangle_barometerRd - */ - static barometerRd(reg: number, cnt?: 0): number; - static barometerRd(reg: number, cnt: number): number[]; - - /** - * Writes a register on the Magnetometer/Compass - * - * @param {number} reg - * @param {number} data - * @url http://www.espruino.com/Reference#l_Bangle_compassWr - */ - static compassWr(reg: number, data: number): void; - - /** - * Read a register on the Magnetometer/Compass - * - * @param {number} reg - * @param {number} cnt - If specified, returns an array of the given length (max 128). If not (or 0) it returns a number - * @returns {any} - * @url http://www.espruino.com/Reference#l_Bangle_compassRd - */ - static compassRd(reg: number, cnt?: 0): number; - static compassRd(reg: number, cnt: number): number[]; - - /** - * Writes a register on the Heart rate monitor - * - * @param {number} reg - * @param {number} data - * @url http://www.espruino.com/Reference#l_Bangle_hrmWr - */ - static hrmWr(reg: number, data: number): void; - - /** - * Read a register on the Heart rate monitor - * - * @param {number} reg - * @param {number} cnt - If specified, returns an array of the given length (max 128). If not (or 0) it returns a number - * @returns {any} - * @url http://www.espruino.com/Reference#l_Bangle_hrmRd - */ - static hrmRd(reg: number, cnt?: 0): number; - static hrmRd(reg: number, cnt: number): number[]; - - /** - * Changes a pin state on the IO expander - * - * @param {number} mask - * @param {number} isOn - * @url http://www.espruino.com/Reference#l_Bangle_ioWr - */ - static ioWr(mask: number, isOn: number): void; - - /** - * Read temperature, pressure and altitude data. A promise is returned which will - * be resolved with `{temperature, pressure, altitude}`. - * If the Barometer has been turned on with `Bangle.setBarometerPower` then this - * will return almost immediately with the reading. If the Barometer is off, - * conversions take between 500-750ms. - * Altitude assumes a sea-level pressure of 1013.25 hPa - * ``` - * Bangle.getPressure().then(d=>{ - * console.log(d); - * // {temperature, pressure, altitude} - * }); - * ``` - * @returns {any} A promise that will be resolved with `{temperature, pressure, altitude}` - * @url http://www.espruino.com/Reference#l_Bangle_getPressure - */ - static getPressure(): PressureData; - - /** - * Perform a Spherical [Web Mercator - * projection](https://en.wikipedia.org/wiki/Web_Mercator_projection) of latitude - * and longitude into `x` and `y` coordinates, which are roughly equivalent to - * meters from `{lat:0,lon:0}`. - * This is the formula used for most online mapping and is a good way to compare - * GPS coordinates to work out the distance between them. - * - * @param {any} latlong - `{lat:..., lon:...}` - * @returns {any} {x:..., y:...} - * @url http://www.espruino.com/Reference#l_Bangle_project - */ - static project(latlong: { lat: number, lon: number }): { x: number, y: number }; - - /** - * Use the piezo speaker to Beep for a certain time period and frequency - * - * @param {number} [time] - [optional] Time in ms (default 200) - * @param {number} [freq] - [optional] Frequency in hz (default 4000) - * @returns {any} A promise, completed when beep is finished - * @url http://www.espruino.com/Reference#l_Bangle_beep - */ - static beep(time?: number, freq?: number): Promise; - - /** - * Use the vibration motor to buzz for a certain time period - * - * @param {number} [time] - [optional] Time in ms (default 200) - * @param {number} [strength] - [optional] Power of vibration from 0 to 1 (Default 1) - * @returns {any} A promise, completed when vibration is finished - * @url http://www.espruino.com/Reference#l_Bangle_buzz - */ - static buzz(time?: number, strength?: number): Promise; - - /** - * Turn Bangle.js off. It can only be woken by pressing BTN1. - * @url http://www.espruino.com/Reference#l_Bangle_off - */ - static off(): void; - - /** - * Turn Bangle.js (mostly) off, but keep the CPU in sleep mode until BTN1 is - * pressed to preserve the RTC (current time). - * @url http://www.espruino.com/Reference#l_Bangle_softOff - */ - static softOff(): void; - - /** - * * On platforms with an LCD of >=8bpp this is 222 x 104 x 2 bits - * * Otherwise it's 119 x 56 x 1 bits - * @returns {any} An image to be used with `g.drawImage` (as a String) - * @url http://www.espruino.com/Reference#l_Bangle_getLogo - */ - static getLogo(): string; - - /** - * Load all widgets from flash Storage. Call this once at the beginning of your - * application if you want any on-screen widgets to be loaded. - * They will be loaded into a global `WIDGETS` array, and can be rendered with - * `Bangle.drawWidgets`. - * @url http://www.espruino.com/Reference#l_Bangle_loadWidgets - */ - static loadWidgets(): void; - - /** - * Draw any onscreen widgets that were loaded with `Bangle.loadWidgets()`. - * Widgets should redraw themselves when something changes - you'll only need to - * call drawWidgets if you decide to clear the entire screen with `g.clear()`. - * @url http://www.espruino.com/Reference#l_Bangle_drawWidgets - */ - static drawWidgets(): void; - - /** - * @url http://www.espruino.com/Reference#l_Bangle_drawWidgets - */ - static drawWidgets(): void; - - /** - * Load the Bangle.js app launcher, which will allow the user to select an - * application to launch. - * @url http://www.espruino.com/Reference#l_Bangle_showLauncher - */ - static showLauncher(): void; - - /** - * This puts Bangle.js into the specified UI input mode, and calls the callback - * provided when there is user input. - * Currently supported interface types are: - * * 'updown' - UI input with upwards motion `cb(-1)`, downwards motion `cb(1)`, - * and select `cb()` - * * Bangle.js 1 uses BTN1/3 for up/down and BTN2 for select - * * Bangle.js 2 uses touchscreen swipe up/down and tap - * * 'leftright' - UI input with left motion `cb(-1)`, right motion `cb(1)`, and - * select `cb()` - * * Bangle.js 1 uses BTN1/3 for left/right and BTN2 for select - * * Bangle.js 2 uses touchscreen swipe left/right and tap/BTN1 for select - * * 'clock' - called for clocks. Sets `Bangle.CLOCK=1` and allows a button to - * start the launcher - * * Bangle.js 1 BTN2 starts the launcher - * * Bangle.js 2 BTN1 starts the launcher - * * 'clockupdown' - called for clocks. Sets `Bangle.CLOCK=1`, allows a button to - * start the launcher, but also provides up/down functionality - * * Bangle.js 1 BTN2 starts the launcher, BTN1/BTN3 call `cb(-1)` and `cb(1)` - * * Bangle.js 2 BTN1 starts the launcher, touchscreen tap in top/bottom right - * hand side calls `cb(-1)` and `cb(1)` - * * `{mode:"custom", ...}` allows you to specify custom handlers for different - * interactions. See below. - * * `undefined` removes all user interaction code - * While you could use setWatch/etc manually, the benefit here is that you don't - * end up with multiple `setWatch` instances, and the actual input method (touch, - * or buttons) is implemented dependent on the watch (Bangle.js 1 or 2) - * **Note:** You can override this function in boot code to change the interaction - * mode with the watch. For instance you could make all clocks start the launcher - * with a swipe by using: - * ``` - * (function() { - * var sui = Bangle.setUI; - * Bangle.setUI = function(mode, cb) { - * if (mode!="clock") return sui(mode,cb); - * sui(); // clear - * Bangle.CLOCK=1; - * Bangle.swipeHandler = Bangle.showLauncher; - * Bangle.on("swipe", Bangle.swipeHandler); - * }; - * })(); - * ``` - * The first argument can also be an object, in which case more options can be - * specified: - * ``` - * Bangle.setUI({ - * mode : "custom", - * back : function() {}, // optional - add a 'back' icon in top-left widget area and call this function when it is pressed - * touch : function(n,e) {}, // optional - handler for 'touch' events - * swipe : function(dir) {}, // optional - handler for 'swipe' events - * drag : function(e) {}, // optional - handler for 'drag' events (Bangle.js 2 only) - * btn : function(n) {}, // optional - handler for 'button' events (n==1 on Bangle.js 2, n==1/2/3 depending on button for Bangle.js 1) - * clock : 0 // optional - if set the behavior of 'clock' mode is added (does not override btn if defined) - * }); - * ``` - * - * @param {any} type - The type of UI input: 'updown', 'leftright', 'clock', 'clockupdown' or undefined to cancel. Can also be an object (see below) - * @param {any} callback - A function with one argument which is the direction - * @url http://www.espruino.com/Reference#l_Bangle_setUI - */ - static setUI(type?: "updown" | "leftright" | "clock" | "clockupdown" | { mode: "custom"; back?: () => void; touch?: TouchCallback; swipe?: SwipeCallback; drag?: DragCallback; btn?: (n: number) => void, clock?: boolean }, callback?: (direction?: -1 | 1) => void): void; - - /** - * @url http://www.espruino.com/Reference#l_Bangle_setUI - */ - static setUI(): void; - - /** - * Erase all storage and reload it with the default contents. - * This is only available on Bangle.js 2.0. On Bangle.js 1.0 you need to use - * `Install Default Apps` under the `More...` tab of http://banglejs.com/apps - * @url http://www.espruino.com/Reference#l_Bangle_factoryReset - */ - static factoryReset(): void; - - /** - * Returns the rectangle on the screen that is currently reserved for the app. - * @returns {any} An object of the form `{x,y,w,h,x2,y2}` - * @url http://www.espruino.com/Reference#l_Bangle_appRect - */ - static appRect: { x: number, y: number, w: number, h: number, x2: number, y2: number }; - - static CLOCK: boolean; - static strokes: undefined | { [key: string]: Unistroke }; } -interface DateConstructor { +/** + * This class handles waveforms. In Espruino, a Waveform is a set of data that you + * want to input or output. + * @url http://www.espruino.com/Reference#Waveform + */ +declare class Waveform { /** - * Get the number of milliseconds elapsed since 1970 (or on embedded platforms, - * since startup) - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_now - */ - now(): number; - - /** - * Parse a date string and return milliseconds since 1970. Data can be either - * '2011-10-20T14:48:00', '2011-10-20' or 'Mon, 25 Dec 1995 13:30:00 +0430' - * - * @param {any} str - A String - * @returns {number} The number of milliseconds since 1970 - * @url http://www.espruino.com/Reference#l_Date_parse - */ - parse(str: string): number; - - /** - * Creates a date object + * Create a waveform class. This allows high speed input and output of waveforms. + * It has an internal variable called `buffer` (as well as `buffer2` when + * double-buffered - see `options` below) which contains the data to input/output. + * When double-buffered, a 'buffer' event will be emitted each time a buffer is + * finished with (the argument is that buffer). When the recording stops, a + * 'finish' event will be emitted (with the first argument as the buffer). * @constructor * - * @param {any} args - Either nothing (current time), one numeric argument (milliseconds since 1970), a date string (see `Date.parse`), or [year, month, day, hour, minute, second, millisecond] - * @returns {any} A Date object - * @url http://www.espruino.com/Reference#l_Date_Date + * @param {number} samples - The number of samples + * @param {any} options - Optional options struct `{doubleBuffer:bool, bits : 8/16}` where: `doubleBuffer` is whether to allocate two buffers or not (default false), and bits is the amount of bits to use (default 8). + * @returns {any} An Waveform object + * @url http://www.espruino.com/Reference#l_Waveform_Waveform */ - new(): Date; - new(value: number | string): Date; - new(year: number, month: number, date?: number, hours?: number, minutes?: number, seconds?: number, ms?: number): Date; + static new(samples: number, options: any): any; + + /** + * Will start outputting the waveform on the given pin - the pin must have + * previously been initialised with analogWrite. If not repeating, it'll emit a + * `finish` event when it is done. + * + * @param {Pin} output - The pin to output on + * @param {number} freq - The frequency to output each sample at + * @param {any} options - Optional options struct `{time:float,repeat:bool}` where: `time` is the that the waveform with start output at, e.g. `getTime()+1` (otherwise it is immediate), `repeat` is a boolean specifying whether to repeat the give sample + * @url http://www.espruino.com/Reference#l_Waveform_startOutput + */ + startOutput(output: Pin, freq: number, options: any): void; + + /** + * Will start inputting the waveform on the given pin that supports analog. If not + * repeating, it'll emit a `finish` event when it is done. + * + * @param {Pin} output - The pin to output on + * @param {number} freq - The frequency to output each sample at + * @param {any} options - Optional options struct `{time:float,repeat:bool}` where: `time` is the that the waveform with start output at, e.g. `getTime()+1` (otherwise it is immediate), `repeat` is a boolean specifying whether to repeat the give sample + * @url http://www.espruino.com/Reference#l_Waveform_startInput + */ + startInput(output: Pin, freq: number, options: any): void; + + /** + * Stop a waveform that is currently outputting + * @url http://www.espruino.com/Reference#l_Waveform_stop + */ + stop(): void; } -interface Date { +interface DataViewConstructor { /** - * This returns the time-zone offset from UTC, in minutes. - * @returns {number} The difference, in minutes, between UTC and local time - * @url http://www.espruino.com/Reference#l_Date_getTimezoneOffset - */ - getTimezoneOffset(): number; - - /** - * This returns a boolean indicating whether daylight savings time is in effect. - * @returns {number} true if daylight savings time is in effect - * @url http://www.espruino.com/Reference#l_Date_getIsDST - */ - getIsDST(): boolean - - /** - * Return the number of milliseconds since 1970 - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_getTime - */ - getTime(): number; - - /** - * Return the number of milliseconds since 1970 - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_valueOf - */ - valueOf(): number; - - /** - * Set the time/date of this Date class + * Create a `DataView` object that can be used to access the data in an + * `ArrayBuffer`. + * ``` + * var b = new ArrayBuffer(8) + * var v = new DataView(b) + * v.setUint16(0,"0x1234") + * v.setUint8(3,"0x56") + * console.log("0x"+v.getUint32(0).toString(16)) + * // prints 0x12340056 + * ``` + * @constructor * - * @param {number} timeValue - the number of milliseconds since 1970 - * @returns {number} the number of milliseconds since 1970 - * @url http://www.espruino.com/Reference#l_Date_setTime + * @param {any} buffer - The `ArrayBuffer` to base this on + * @param {number} [byteOffset] - [optional] The offset of this view in bytes + * @param {number} [byteLength] - [optional] The length in bytes + * @returns {any} A `DataView` object + * @url http://www.espruino.com/Reference#l_DataView_DataView */ - setTime(timeValue: number): number; + new(buffer: ArrayBuffer, byteOffset?: number, byteLength?: number): DataView; +} +interface DataView { /** - * 0..23 - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_getHours - */ - getHours(): number; - - /** - * 0..59 - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_getMinutes - */ - getMinutes(): number; - - /** - * 0..59 - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_getSeconds - */ - getSeconds(): number; - - /** - * 0..999 - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_getMilliseconds - */ - getMilliseconds(): number; - - /** - * Day of the week (0=sunday, 1=monday, etc) - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_getDay - */ - getDay(): number; - - /** - * Day of the month 1..31 - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_getDate - */ - getDate(): number; - - /** - * Month of the year 0..11 - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_getMonth - */ - getMonth(): number; - - /** - * The year, eg. 2014 - * @returns {number} - * @url http://www.espruino.com/Reference#l_Date_getFullYear - */ - getFullYear(): number; - - /** - * 0..23 * - * @param {number} hoursValue - number of hours, 0..23 - * @param {any} minutesValue - number of minutes, 0..59 - * @param {any} secondsValue - optional - number of seconds, 0..59 - * @param {any} millisecondsValue - optional - number of milliseconds, 0..999 - * @returns {number} The number of milliseconds since 1970 - * @url http://www.espruino.com/Reference#l_Date_setHours + * @param {number} byteOffset - The offset in bytes to read from + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @returns {any} the index of the value in the array, or -1 + * @url http://www.espruino.com/Reference#l_DataView_getFloat32 */ - setHours(hoursValue: number, minutesValue?: number, secondsValue?: number, millisecondsValue?: number): number; - - /** - * 0..59 - * - * @param {number} minutesValue - number of minutes, 0..59 - * @param {any} secondsValue - optional - number of seconds, 0..59 - * @param {any} millisecondsValue - optional - number of milliseconds, 0..999 - * @returns {number} The number of milliseconds since 1970 - * @url http://www.espruino.com/Reference#l_Date_setMinutes - */ - setMinutes(minutesValue: number, secondsValue?: number, millisecondsValue?: number): number; - - /** - * 0..59 - * - * @param {number} secondsValue - number of seconds, 0..59 - * @param {any} millisecondsValue - optional - number of milliseconds, 0..999 - * @returns {number} The number of milliseconds since 1970 - * @url http://www.espruino.com/Reference#l_Date_setSeconds - */ - setSeconds(secondsValue: number, millisecondsValue?: number): number; + getFloat32(byteOffset: number, littleEndian?: boolean): number; /** * - * @param {number} millisecondsValue - number of milliseconds, 0..999 - * @returns {number} The number of milliseconds since 1970 - * @url http://www.espruino.com/Reference#l_Date_setMilliseconds + * @param {number} byteOffset - The offset in bytes to read from + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @returns {any} the index of the value in the array, or -1 + * @url http://www.espruino.com/Reference#l_DataView_getFloat64 */ - setMilliseconds(millisecondsValue: number): number; - - /** - * Day of the month 1..31 - * - * @param {number} dayValue - the day of the month, between 0 and 31 - * @returns {number} The number of milliseconds since 1970 - * @url http://www.espruino.com/Reference#l_Date_setDate - */ - setDate(dayValue: number): number; - - /** - * Month of the year 0..11 - * - * @param {number} yearValue - The month, between 0 and 11 - * @param {any} dayValue - optional - the day, between 0 and 31 - * @returns {number} The number of milliseconds since 1970 - * @url http://www.espruino.com/Reference#l_Date_setMonth - */ - setMonth(yearValue: number, dayValue?: number): number; + getFloat64(byteOffset: number, littleEndian?: boolean): number; /** * - * @param {number} yearValue - The full year - eg. 1989 - * @param {any} monthValue - optional - the month, between 0 and 11 - * @param {any} dayValue - optional - the day, between 0 and 31 - * @returns {number} The number of milliseconds since 1970 - * @url http://www.espruino.com/Reference#l_Date_setFullYear + * @param {number} byteOffset - The offset in bytes to read from + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @returns {any} the index of the value in the array, or -1 + * @url http://www.espruino.com/Reference#l_DataView_getInt8 */ - setFullYear(yearValue: number, monthValue?: number, dayValue?: number): number; + getInt8(byteOffset: number, littleEndian?: boolean): number; /** - * Converts to a String, eg: `Fri Jun 20 2014 14:52:20 GMT+0000` - * **Note:** This uses whatever timezone was set with `E.setTimeZone()` or - * `E.setDST()` + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @returns {any} the index of the value in the array, or -1 + * @url http://www.espruino.com/Reference#l_DataView_getInt16 + */ + getInt16(byteOffset: number, littleEndian?: boolean): number; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @returns {any} the index of the value in the array, or -1 + * @url http://www.espruino.com/Reference#l_DataView_getInt32 + */ + getInt32(byteOffset: number, littleEndian?: boolean): number; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @returns {any} the index of the value in the array, or -1 + * @url http://www.espruino.com/Reference#l_DataView_getUint8 + */ + getUint8(byteOffset: number, littleEndian?: boolean): number; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @returns {any} the index of the value in the array, or -1 + * @url http://www.espruino.com/Reference#l_DataView_getUint16 + */ + getUint16(byteOffset: number, littleEndian?: boolean): number; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @returns {any} the index of the value in the array, or -1 + * @url http://www.espruino.com/Reference#l_DataView_getUint32 + */ + getUint32(byteOffset: number, littleEndian?: boolean): number; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {any} value - The value to write + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @url http://www.espruino.com/Reference#l_DataView_setFloat32 + */ + setFloat32(byteOffset: number, value: number, littleEndian?: boolean): void; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {any} value - The value to write + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @url http://www.espruino.com/Reference#l_DataView_setFloat64 + */ + setFloat64(byteOffset: number, value: number, littleEndian?: boolean): void; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {any} value - The value to write + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @url http://www.espruino.com/Reference#l_DataView_setInt8 + */ + setInt8(byteOffset: number, value: number, littleEndian?: boolean): void; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {any} value - The value to write + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @url http://www.espruino.com/Reference#l_DataView_setInt16 + */ + setInt16(byteOffset: number, value: number, littleEndian?: boolean): void; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {any} value - The value to write + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @url http://www.espruino.com/Reference#l_DataView_setInt32 + */ + setInt32(byteOffset: number, value: number, littleEndian?: boolean): void; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {any} value - The value to write + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @url http://www.espruino.com/Reference#l_DataView_setUint8 + */ + setUint8(byteOffset: number, value: number, littleEndian?: boolean): void; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {any} value - The value to write + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @url http://www.espruino.com/Reference#l_DataView_setUint16 + */ + setUint16(byteOffset: number, value: number, littleEndian?: boolean): void; + + /** + * + * @param {number} byteOffset - The offset in bytes to read from + * @param {any} value - The value to write + * @param {boolean} [littleEndian] - [optional] Whether to read in little endian - if false or undefined data is read as big endian + * @url http://www.espruino.com/Reference#l_DataView_setUint32 + */ + setUint32(byteOffset: number, value: number, littleEndian?: boolean): void; +} + +/** + * This class helps + * @url http://www.espruino.com/Reference#DataView + */ +declare const DataView: DataViewConstructor + +interface consoleConstructor { + /** + * Print the supplied string(s) to the console + * **Note:** If you're connected to a computer (not a wall adaptor) via USB but + * **you are not running a terminal app** then when you print data Espruino may + * pause execution and wait until the computer requests the data it is trying to + * print. + * + * @param {any} text - One or more arguments to print + * @url http://www.espruino.com/Reference#l_console_log + */ + log(...text: any[]): void; +} + +interface console { + +} + +/** + * An Object that contains functions for writing to the interactive console + * @url http://www.espruino.com/Reference#console + */ +declare const console: consoleConstructor + +interface ErrorConstructor { + /** + * Creates an Error object + * @constructor + * + * @param {any} [message] - [optional] An message string + * @returns {any} An Error object + * @url http://www.espruino.com/Reference#l_Error_Error + */ + new(message?: string): Error; +} + +interface Error { + /** * @returns {any} A String - * @url http://www.espruino.com/Reference#l_Date_toString + * @url http://www.espruino.com/Reference#l_Error_toString */ toString(): string; - - /** - * Converts to a String, eg: `Fri, 20 Jun 2014 14:52:20 GMT` - * **Note:** This always assumes a timezone of GMT - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_Date_toUTCString - */ - toUTCString(): string; - - /** - * Converts to a ISO 8601 String, eg: `2014-06-20T14:52:20.123Z` - * **Note:** This always assumes a timezone of GMT - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_Date_toISOString - */ - toISOString(): string; - - /** - * Calls `Date.toISOString` to output this date to JSON - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_Date_toJSON - */ - toJSON(): string; - - /** - * Converts to a ISO 8601 String (with timezone information), eg: - * `2014-06-20T14:52:20.123-0500` - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_Date_toLocalISOString - */ - toLocalISOString(): string; } /** - * The built-in class for handling Dates. - * **Note:** By default the time zone is GMT+0, however you can change the timezone - * using the `E.setTimeZone(...)` function. - * For example `E.setTimeZone(1)` will be GMT+0100 - * *However* if you have daylight savings time set with `E.setDST(...)` then the - * timezone set by `E.setTimeZone(...)` will be _ignored_. - * @url http://www.espruino.com/Reference#Date + * The base class for runtime errors + * @url http://www.espruino.com/Reference#Error */ -declare const Date: DateConstructor +declare const Error: ErrorConstructor -/** - * This class provides a software-defined OneWire master. It is designed to be - * similar to Arduino's OneWire library. - * @url http://www.espruino.com/Reference#OneWire - */ -declare class OneWire { +interface SyntaxErrorConstructor { /** - * Create a software OneWire implementation on the given pin + * Creates a SyntaxError object * @constructor * - * @param {Pin} pin - The pin to implement OneWire on - * @returns {any} A OneWire object - * @url http://www.espruino.com/Reference#l_OneWire_OneWire + * @param {any} [message] - [optional] An message string + * @returns {any} A SyntaxError object + * @url http://www.espruino.com/Reference#l_SyntaxError_SyntaxError */ - static new(pin: Pin): any; - - /** - * Perform a reset cycle - * @returns {boolean} True is a device was present (it held the bus low) - * @url http://www.espruino.com/Reference#l_OneWire_reset - */ - reset(): boolean; - - /** - * Select a ROM - always performs a reset first - * - * @param {any} rom - The device to select (get this using `OneWire.search()`) - * @url http://www.espruino.com/Reference#l_OneWire_select - */ - select(rom: any): void; - - /** - * Skip a ROM - * @url http://www.espruino.com/Reference#l_OneWire_skip - */ - skip(): void; - - /** - * Write one or more bytes - * - * @param {any} data - A byte (or array of bytes) to write - * @param {boolean} power - Whether to leave power on after write (default is false) - * @url http://www.espruino.com/Reference#l_OneWire_write - */ - write(data: any, power: boolean): void; - - /** - * Read a byte - * - * @param {any} count - (optional) The amount of bytes to read - * @returns {any} The byte that was read, or a Uint8Array if count was specified and >=0 - * @url http://www.espruino.com/Reference#l_OneWire_read - */ - read(count: any): any; - - /** - * Search for devices - * - * @param {number} command - (Optional) command byte. If not specified (or zero), this defaults to 0xF0. This can could be set to 0xEC to perform a DS18B20 'Alarm Search Command' - * @returns {any} An array of devices that were found - * @url http://www.espruino.com/Reference#l_OneWire_search - */ - search(command: number): any; + new(message?: string): SyntaxError; } -interface NumberConstructor { +interface SyntaxError { /** - * @returns {number} Not a Number - * @url http://www.espruino.com/Reference#l_Number_NaN + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_SyntaxError_toString */ - NaN: number; - - /** - * @returns {number} Maximum representable value - * @url http://www.espruino.com/Reference#l_Number_MAX_VALUE - */ - MAX_VALUE: number; - - /** - * @returns {number} Smallest representable value - * @url http://www.espruino.com/Reference#l_Number_MIN_VALUE - */ - MIN_VALUE: number; - - /** - * @returns {number} Negative Infinity (-1/0) - * @url http://www.espruino.com/Reference#l_Number_NEGATIVE_INFINITY - */ - NEGATIVE_INFINITY: number; - - /** - * @returns {number} Positive Infinity (1/0) - * @url http://www.espruino.com/Reference#l_Number_POSITIVE_INFINITY - */ - POSITIVE_INFINITY: number; - - /** - * Creates a number - * @constructor - * - * @param {any} value - A single value to be converted to a number - * @returns {any} A Number object - * @url http://www.espruino.com/Reference#l_Number_Number - */ - new(...value: any[]): any; -} - -interface Number { - /** - * Format the number as a fixed point number - * - * @param {number} decimalPlaces - A number between 0 and 20 specifying the number of decimal digits after the decimal point - * @returns {any} A string - * @url http://www.espruino.com/Reference#l_Number_toFixed - */ - toFixed(decimalPlaces: number): any; + toString(): string; } /** - * This is the built-in JavaScript class for numbers. - * @url http://www.espruino.com/Reference#Number + * The base class for syntax errors + * @url http://www.espruino.com/Reference#SyntaxError */ -declare const Number: NumberConstructor +declare const SyntaxError: SyntaxErrorConstructor + +interface TypeErrorConstructor { + /** + * Creates a TypeError object + * @constructor + * + * @param {any} [message] - [optional] An message string + * @returns {any} A TypeError object + * @url http://www.espruino.com/Reference#l_TypeError_TypeError + */ + new(message?: string): TypeError; +} + +interface TypeError { + /** + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_TypeError_toString + */ + toString(): string; +} + +/** + * The base class for type errors + * @url http://www.espruino.com/Reference#TypeError + */ +declare const TypeError: TypeErrorConstructor + +/** + * The base class for internal errors + * @url http://www.espruino.com/Reference#InternalError + */ +declare class InternalError { + /** + * Creates an InternalError object + * @constructor + * + * @param {any} [message] - [optional] An message string + * @returns {any} An InternalError object + * @url http://www.espruino.com/Reference#l_InternalError_InternalError + */ + static new(message?: string): InternalError; + + /** + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_InternalError_toString + */ + toString(): string; +} + +interface ReferenceErrorConstructor { + /** + * Creates a ReferenceError object + * @constructor + * + * @param {any} [message] - [optional] An message string + * @returns {any} A ReferenceError object + * @url http://www.espruino.com/Reference#l_ReferenceError_ReferenceError + */ + new(message?: string): ReferenceError; +} + +interface ReferenceError { + /** + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_ReferenceError_toString + */ + toString(): string; +} + +/** + * The base class for reference errors - where a variable which doesn't exist has + * been accessed. + * @url http://www.espruino.com/Reference#ReferenceError + */ +declare const ReferenceError: ReferenceErrorConstructor interface ArrayBufferConstructor { /** @@ -6135,7 +6293,7 @@ declare class ArrayBufferView { * Copy the contents of `array` into this one, mapping `this[x+offset]=array[x];` * * @param {any} arr - Floating point index to access - * @param {number} offset - The offset in this array at which to write the values (optional) + * @param {number} [offset] - [optional] The offset in this array at which to write the values * @url http://www.espruino.com/Reference#l_ArrayBufferView_set */ set(arr: ArrayLike, offset: number): void @@ -6147,7 +6305,7 @@ declare class ArrayBufferView { * get an `Array`, use `Array.map`, e.g. `[].map.call(myArray, x=>x+1)` * * @param {any} function - Function used to map one item to another - * @param {any} thisArg - if specified, the function is called with 'this' set to thisArg (optional) + * @param {any} [thisArg] - [optional] If specified, the function is called with 'this' set to thisArg * @returns {any} An array containing the results * @url http://www.espruino.com/Reference#l_ArrayBufferView_map */ @@ -6168,7 +6326,7 @@ declare class ArrayBufferView { * Return the index of the value in the array, or `-1` * * @param {any} value - The value to check for - * @param {number} startIndex - (optional) the index to search from, or 0 if not specified + * @param {number} [startIndex] - [optional] the index to search from, or 0 if not specified * @returns {any} the index of the value in the array, or -1 * @url http://www.espruino.com/Reference#l_ArrayBufferView_indexOf */ @@ -6178,7 +6336,7 @@ declare class ArrayBufferView { * Return `true` if the array includes the value, `false` otherwise * * @param {any} value - The value to check for - * @param {number} startIndex - (optional) the index to search from, or 0 if not specified + * @param {number} [startIndex] - [optional] the index to search from, or 0 if not specified * @returns {boolean} `true` if the array includes the value, `false` otherwise * @url http://www.espruino.com/Reference#l_ArrayBufferView_includes */ @@ -6207,7 +6365,7 @@ declare class ArrayBufferView { * Executes a provided function once per array element. * * @param {any} function - Function to be executed - * @param {any} thisArg - if specified, the function is called with 'this' set to thisArg (optional) + * @param {any} [thisArg] - [optional] If specified, the function is called with 'this' set to thisArg * @url http://www.espruino.com/Reference#l_ArrayBufferView_forEach */ forEach(callbackfn: (value: number, index: number, array: T) => void, thisArg?: any): void; @@ -6240,7 +6398,7 @@ declare class ArrayBufferView { * function returns 'true' * * @param {any} function - Function to be executed - * @param {any} thisArg - if specified, the function is called with 'this' set to thisArg (optional) + * @param {any} [thisArg] - [optional] If specified, the function is called with 'this' set to thisArg * @returns {any} An array containing the results * @url http://www.espruino.com/Reference#l_ArrayBufferView_filter */ @@ -6278,7 +6436,7 @@ declare class ArrayBufferView { * **Note:** This currently returns a normal `Array`, not an `ArrayBuffer` * * @param {number} start - Start index - * @param {any} end - End index (optional) + * @param {any} [end] - [optional] End index * @returns {any} A new array * @url http://www.espruino.com/Reference#l_ArrayBufferView_slice */ @@ -6526,1009 +6684,491 @@ type Float64Array = ArrayBufferView; declare const Float64Array: Float64ArrayConstructor -interface PromiseConstructor { +interface DateConstructor { /** - * Return a new promise that is resolved when all promises in the supplied array - * are resolved. - * - * @param {any} promises - An array of promises - * @returns {any} A new Promise - * @url http://www.espruino.com/Reference#l_Promise_all + * Get the number of milliseconds elapsed since 1970 (or on embedded platforms, + * since startup) + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_now */ - all(promises: Promise[]): Promise; + now(): number; /** - * Return a new promise that is already resolved (at idle it'll call `.then`) + * Parse a date string and return milliseconds since 1970. Data can be either + * '2011-10-20T14:48:00', '2011-10-20' or 'Mon, 25 Dec 1995 13:30:00 +0430' * - * @param {any} promises - Data to pass to the `.then` handler - * @returns {any} A new Promise - * @url http://www.espruino.com/Reference#l_Promise_resolve + * @param {any} str - A String + * @returns {number} The number of milliseconds since 1970 + * @url http://www.espruino.com/Reference#l_Date_parse */ - resolve(promises: T): Promise; + parse(str: string): number; /** - * Return a new promise that is already rejected (at idle it'll call `.catch`) - * - * @param {any} promises - Data to pass to the `.catch` handler - * @returns {any} A new Promise - * @url http://www.espruino.com/Reference#l_Promise_reject - */ - reject(promises: any): any; - - /** - * Create a new Promise. The executor function is executed immediately (before the - * constructor even returns) and + * Creates a date object * @constructor * - * @param {any} executor - A function of the form `function (resolve, reject)` - * @returns {any} A Promise - * @url http://www.espruino.com/Reference#l_Promise_Promise + * @param {any} args - Either nothing (current time), one numeric argument (milliseconds since 1970), a date string (see `Date.parse`), or [year, month, day, hour, minute, second, millisecond] + * @returns {any} A Date object + * @url http://www.espruino.com/Reference#l_Date_Date */ - new(executor: (resolve: (value: T) => void, reject: (reason?: any) => void) => void): Promise; + new(): Date; + new(value: number | string): Date; + new(year: number, month: number, date?: number, hours?: number, minutes?: number, seconds?: number, ms?: number): Date; } -interface Promise { +interface Date { /** - * - * @param {any} onFulfilled - A callback that is called when this promise is resolved - * @param {any} [onRejected] - [optional] A callback that is called when this promise is rejected (or nothing) - * @returns {any} The original Promise - * @url http://www.espruino.com/Reference#l_Promise_then + * This returns the time-zone offset from UTC, in minutes. + * @returns {number} The difference, in minutes, between UTC and local time + * @url http://www.espruino.com/Reference#l_Date_getTimezoneOffset */ - then(onfulfilled?: ((value: T) => TResult1 | Promise) | undefined | null, onrejected?: ((reason: any) => TResult2 | Promise) | undefined | null): Promise; + getTimezoneOffset(): number; + + /** + * This returns a boolean indicating whether daylight savings time is in effect. + * @returns {number} true if daylight savings time is in effect + * @url http://www.espruino.com/Reference#l_Date_getIsDST + */ + getIsDST(): boolean + + /** + * Return the number of milliseconds since 1970 + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_getTime + */ + getTime(): number; + + /** + * Return the number of milliseconds since 1970 + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_valueOf + */ + valueOf(): number; + + /** + * Set the time/date of this Date class + * + * @param {number} timeValue - the number of milliseconds since 1970 + * @returns {number} the number of milliseconds since 1970 + * @url http://www.espruino.com/Reference#l_Date_setTime + */ + setTime(timeValue: number): number; + + /** + * 0..23 + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_getHours + */ + getHours(): number; + + /** + * 0..59 + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_getMinutes + */ + getMinutes(): number; + + /** + * 0..59 + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_getSeconds + */ + getSeconds(): number; + + /** + * 0..999 + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_getMilliseconds + */ + getMilliseconds(): number; + + /** + * Day of the week (0=sunday, 1=monday, etc) + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_getDay + */ + getDay(): number; + + /** + * Day of the month 1..31 + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_getDate + */ + getDate(): number; + + /** + * Month of the year 0..11 + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_getMonth + */ + getMonth(): number; + + /** + * The year, e.g. 2014 + * @returns {number} + * @url http://www.espruino.com/Reference#l_Date_getFullYear + */ + getFullYear(): number; + + /** + * 0..23 + * + * @param {number} hoursValue - number of hours, 0..23 + * @param {any} minutesValue - number of minutes, 0..59 + * @param {any} [secondsValue] - [optional] number of seconds, 0..59 + * @param {any} [millisecondsValue] - [optional] number of milliseconds, 0..999 + * @returns {number} The number of milliseconds since 1970 + * @url http://www.espruino.com/Reference#l_Date_setHours + */ + setHours(hoursValue: number, minutesValue?: number, secondsValue?: number, millisecondsValue?: number): number; + + /** + * 0..59 + * + * @param {number} minutesValue - number of minutes, 0..59 + * @param {any} [secondsValue] - [optional] number of seconds, 0..59 + * @param {any} [millisecondsValue] - [optional] number of milliseconds, 0..999 + * @returns {number} The number of milliseconds since 1970 + * @url http://www.espruino.com/Reference#l_Date_setMinutes + */ + setMinutes(minutesValue: number, secondsValue?: number, millisecondsValue?: number): number; + + /** + * 0..59 + * + * @param {number} secondsValue - number of seconds, 0..59 + * @param {any} [millisecondsValue] - [optional] number of milliseconds, 0..999 + * @returns {number} The number of milliseconds since 1970 + * @url http://www.espruino.com/Reference#l_Date_setSeconds + */ + setSeconds(secondsValue: number, millisecondsValue?: number): number; /** * - * @param {any} onRejected - A callback that is called when this promise is rejected - * @returns {any} The original Promise - * @url http://www.espruino.com/Reference#l_Promise_catch + * @param {number} millisecondsValue - number of milliseconds, 0..999 + * @returns {number} The number of milliseconds since 1970 + * @url http://www.espruino.com/Reference#l_Date_setMilliseconds */ - catch(onRejected: any): any; + setMilliseconds(millisecondsValue: number): number; + + /** + * Day of the month 1..31 + * + * @param {number} dayValue - the day of the month, between 0 and 31 + * @returns {number} The number of milliseconds since 1970 + * @url http://www.espruino.com/Reference#l_Date_setDate + */ + setDate(dayValue: number): number; + + /** + * Month of the year 0..11 + * + * @param {number} yearValue - The month, between 0 and 11 + * @param {any} [dayValue] - [optional] the day, between 0 and 31 + * @returns {number} The number of milliseconds since 1970 + * @url http://www.espruino.com/Reference#l_Date_setMonth + */ + setMonth(yearValue: number, dayValue?: number): number; + + /** + * + * @param {number} yearValue - The full year - eg. 1989 + * @param {any} [monthValue] - [optional] the month, between 0 and 11 + * @param {any} [dayValue] - [optional] the day, between 0 and 31 + * @returns {number} The number of milliseconds since 1970 + * @url http://www.espruino.com/Reference#l_Date_setFullYear + */ + setFullYear(yearValue: number, monthValue?: number, dayValue?: number): number; + + /** + * Converts to a String, e.g: `Fri Jun 20 2014 14:52:20 GMT+0000` + * **Note:** This uses whatever timezone was set with `E.setTimeZone()` or + * `E.setDST()` + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_Date_toString + */ + toString(): string; + + /** + * Converts to a String, e.g: `Fri, 20 Jun 2014 14:52:20 GMT` + * **Note:** This always assumes a timezone of GMT + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_Date_toUTCString + */ + toUTCString(): string; + + /** + * Converts to a ISO 8601 String, e.g: `2014-06-20T14:52:20.123Z` + * **Note:** This always assumes a timezone of GMT + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_Date_toISOString + */ + toISOString(): string; + + /** + * Calls `Date.toISOString` to output this date to JSON + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_Date_toJSON + */ + toJSON(): string; + + /** + * Converts to a ISO 8601 String (with timezone information), e.g: + * `2014-06-20T14:52:20.123-0500` + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_Date_toLocalISOString + */ + toLocalISOString(): string; } /** - * This is the built-in class for ES6 Promises - * @url http://www.espruino.com/Reference#Promise + * The built-in class for handling Dates. + * **Note:** By default the time zone is GMT+0, however you can change the timezone + * using the `E.setTimeZone(...)` function. + * For example `E.setTimeZone(1)` will be GMT+0100 + * *However* if you have daylight savings time set with `E.setDST(...)` then the + * timezone set by `E.setTimeZone(...)` will be _ignored_. + * @url http://www.espruino.com/Reference#Date */ -declare const Promise: PromiseConstructor +declare const Date: DateConstructor + +interface MathConstructor { + /** + * @returns {number} The value of E - 2.718281828459045 + * @url http://www.espruino.com/Reference#l_Math_E + */ + E: number; + + /** + * @returns {number} The value of PI - 3.141592653589793 + * @url http://www.espruino.com/Reference#l_Math_PI + */ + PI: number; + + /** + * @returns {number} The natural logarithm of 2 - 0.6931471805599453 + * @url http://www.espruino.com/Reference#l_Math_LN2 + */ + LN2: number; + + /** + * @returns {number} The natural logarithm of 10 - 2.302585092994046 + * @url http://www.espruino.com/Reference#l_Math_LN10 + */ + LN10: number; + + /** + * @returns {number} The base 2 logarithm of e - 1.4426950408889634 + * @url http://www.espruino.com/Reference#l_Math_LOG2E + */ + LOG2E: number; + + /** + * @returns {number} The base 10 logarithm of e - 0.4342944819032518 + * @url http://www.espruino.com/Reference#l_Math_LOG10E + */ + LOG10E: number; + + /** + * @returns {number} The square root of 2 - 1.4142135623730951 + * @url http://www.espruino.com/Reference#l_Math_SQRT2 + */ + SQRT2: number; + + /** + * @returns {number} The square root of 1/2 - 0.7071067811865476 + * @url http://www.espruino.com/Reference#l_Math_SQRT1_2 + */ + SQRT1_2: number; -/** - * This class allows use of the built-in SPI ports. Currently it is SPI master - * only. - * @url http://www.espruino.com/Reference#SPI - */ -declare class SPI { /** - * Try and find an SPI hardware device that will work on this pin (eg. `SPI1`) - * May return undefined if no device can be found. * - * @param {Pin} pin - A pin to search with - * @returns {any} An object of type `SPI`, or `undefined` if one couldn't be found. - * @url http://www.espruino.com/Reference#l_SPI_find + * @param {number} x - A floating point value + * @returns {number} The absolute value of x (eg, ```Math.abs(2)==2```, but also ```Math.abs(-2)==2```) + * @url http://www.espruino.com/Reference#l_Math_abs */ - static find(pin: Pin): any; + abs(x: number): number; /** - * Create a software SPI port. This has limited functionality (no baud rate), but - * it can work on any pins. - * Use `SPI.setup` to configure this port. - * @constructor - * @returns {any} A SPI object - * @url http://www.espruino.com/Reference#l_SPI_SPI - */ - static new(): any; - - /** - * Set up this SPI port as an SPI Master. - * Options can contain the following (defaults are shown where relevant): - * ``` - * { - * sck:pin, - * miso:pin, - * mosi:pin, - * baud:integer=100000, // ignored on software SPI - * mode:integer=0, // between 0 and 3 - * order:string='msb' // can be 'msb' or 'lsb' - * bits:8 // only available for software SPI - * } - * ``` - * If `sck`,`miso` and `mosi` are left out, they will automatically be chosen. - * However if one or more is specified then the unspecified pins will not be set - * up. - * You can find out which pins to use by looking at [your board's reference - * page](#boards) and searching for pins with the `SPI` marker. Some boards such as - * those based on `nRF52` chips can have SPI on any pins, so don't have specific - * markings. - * The SPI `mode` is between 0 and 3 - see - * http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus#Clock_polarity_and_phase - * On STM32F1-based parts, you cannot mix AF and non-AF pins (SPI pins are usually - * grouped on the chip - and you can't mix pins from two groups). Espruino will not - * warn you about this. * - * @param {any} options - An Object containing extra information on initialising the SPI port - * @url http://www.espruino.com/Reference#l_SPI_setup + * @param {number} x - The value to get the arc cosine of + * @returns {number} The arc cosine of x, between 0 and PI + * @url http://www.espruino.com/Reference#l_Math_acos */ - setup(options: any): void; + acos(x: number): number; /** - * Send data down SPI, and return the result. Sending an integer will return an - * integer, a String will return a String, and anything else will return a - * Uint8Array. - * Sending multiple bytes in one call to send is preferable as they can then be - * transmitted end to end. Using multiple calls to send() will result in - * significantly slower transmission speeds. - * For maximum speeds, please pass either Strings or Typed Arrays as arguments. - * Note that you can even pass arrays of arrays, like `[1,[2,3,4],5]` * - * @param {any} data - The data to send - either an Integer, Array, String, or Object of the form `{data: ..., count:#}` - * @param {Pin} nss_pin - An nSS pin - this will be lowered before SPI output and raised afterwards (optional). There will be a small delay between when this is lowered and when sending starts, and also between sending finishing and it being raised. - * @returns {any} The data that was returned - * @url http://www.espruino.com/Reference#l_SPI_send + * @param {number} x - The value to get the arc sine of + * @returns {number} The arc sine of x, between -PI/2 and PI/2 + * @url http://www.espruino.com/Reference#l_Math_asin */ - send(data: any, nss_pin: Pin): any; + asin(x: number): number; /** - * Write a character or array of characters to SPI - without reading the result - * back. - * For maximum speeds, please pass either Strings or Typed Arrays as arguments. * - * @param {any} data - * One or more items to write. May be ints, strings, arrays, or special objects (see `E.toUint8Array` for more info). - * If the last argument is a pin, it is taken to be the NSS pin - * @url http://www.espruino.com/Reference#l_SPI_write + * @param {number} x - The value to get the arc tangent of + * @returns {number} The arc tangent of x, between -PI/2 and PI/2 + * @url http://www.espruino.com/Reference#l_Math_atan */ - write(...data: any[]): void; + atan(x: number): number; /** - * Send data down SPI, using 4 bits for each 'real' bit (MSB first). This can be - * useful for faking one-wire style protocols - * Sending multiple bytes in one call to send is preferable as they can then be - * transmitted end to end. Using multiple calls to send() will result in - * significantly slower transmission speeds. * - * @param {any} data - The data to send - either an integer, array, or string - * @param {number} bit0 - The 4 bits to send for a 0 (MSB first) - * @param {number} bit1 - The 4 bits to send for a 1 (MSB first) - * @param {Pin} nss_pin - An nSS pin - this will be lowered before SPI output and raised afterwards (optional). There will be a small delay between when this is lowered and when sending starts, and also between sending finishing and it being raised. - * @url http://www.espruino.com/Reference#l_SPI_send4bit + * @param {number} y - The Y-part of the angle to get the arc tangent of + * @param {number} x - The X-part of the angle to get the arc tangent of + * @returns {number} The arctangent of Y/X, between -PI and PI + * @url http://www.espruino.com/Reference#l_Math_atan2 */ - send4bit(data: any, bit0: number, bit1: number, nss_pin: Pin): void; + atan2(y: number, x: number): number; /** - * Send data down SPI, using 8 bits for each 'real' bit (MSB first). This can be - * useful for faking one-wire style protocols - * Sending multiple bytes in one call to send is preferable as they can then be - * transmitted end to end. Using multiple calls to send() will result in - * significantly slower transmission speeds. * - * @param {any} data - The data to send - either an integer, array, or string - * @param {number} bit0 - The 8 bits to send for a 0 (MSB first) - * @param {number} bit1 - The 8 bits to send for a 1 (MSB first) - * @param {Pin} nss_pin - An nSS pin - this will be lowered before SPI output and raised afterwards (optional). There will be a small delay between when this is lowered and when sending starts, and also between sending finishing and it being raised - * @url http://www.espruino.com/Reference#l_SPI_send8bit + * @param {number} theta - The angle to get the cosine of + * @returns {number} The cosine of theta + * @url http://www.espruino.com/Reference#l_Math_cos */ - send8bit(data: any, bit0: number, bit1: number, nss_pin: Pin): void; + cos(theta: number): number; + + /** + * + * @param {number} x - The value to raise to the power + * @param {number} y - The power x should be raised to + * @returns {number} x raised to the power y (x^y) + * @url http://www.espruino.com/Reference#l_Math_pow + */ + pow(x: number, y: number): number; + + /** + * @returns {number} A random number between 0 and 1 + * @url http://www.espruino.com/Reference#l_Math_random + */ + random(): number; + + /** + * + * @param {number} x - The value to round + * @returns {any} x, rounded to the nearest integer + * @url http://www.espruino.com/Reference#l_Math_round + */ + round(x: number): any; + + /** + * + * @param {number} theta - The angle to get the sine of + * @returns {number} The sine of theta + * @url http://www.espruino.com/Reference#l_Math_sin + */ + sin(theta: number): number; + + /** + * + * @param {number} theta - The angle to get the tangent of + * @returns {number} The tangent of theta + * @url http://www.espruino.com/Reference#l_Math_tan + */ + tan(theta: number): number; + + /** + * + * @param {number} x - The value to take the square root of + * @returns {number} The square root of x + * @url http://www.espruino.com/Reference#l_Math_sqrt + */ + sqrt(x: number): number; + + /** + * + * @param {number} x - The value to round up + * @returns {number} x, rounded upwards to the nearest integer + * @url http://www.espruino.com/Reference#l_Math_ceil + */ + ceil(x: number): number; + + /** + * + * @param {number} x - The value to round down + * @returns {number} x, rounded downwards to the nearest integer + * @url http://www.espruino.com/Reference#l_Math_floor + */ + floor(x: number): number; + + /** + * + * @param {number} x - The value raise E to the power of + * @returns {number} E^x + * @url http://www.espruino.com/Reference#l_Math_exp + */ + exp(x: number): number; + + /** + * + * @param {number} x - The value to take the logarithm (base E) root of + * @returns {number} The log (base E) of x + * @url http://www.espruino.com/Reference#l_Math_log + */ + log(x: number): number; + + /** + * DEPRECATED - Please use `E.clip()` instead. Clip a number to be between min and + * max (inclusive) + * + * @param {number} x - A floating point value to clip + * @param {number} min - The smallest the value should be + * @param {number} max - The largest the value should be + * @returns {number} The value of x, clipped so as not to be below min or above max. + * @url http://www.espruino.com/Reference#l_Math_clip + */ + clip(x: number, min: number, max: number): number; + + /** + * DEPRECATED - This is not part of standard JavaScript libraries + * Wrap a number around if it is less than 0 or greater than or equal to max. For + * instance you might do: ```Math.wrap(angleInDegrees, 360)``` + * + * @param {number} x - A floating point value to wrap + * @param {number} max - The largest the value should be + * @returns {number} The value of x, wrapped so as not to be below min or above max. + * @url http://www.espruino.com/Reference#l_Math_wrap + */ + wrap(x: number, max: number): number; + + /** + * Find the minimum of a series of numbers + * + * @param {any} args - Floating point values to clip + * @returns {number} The minimum of the supplied values + * @url http://www.espruino.com/Reference#l_Math_min + */ + min(...args: any[]): number; + + /** + * Find the maximum of a series of numbers + * + * @param {any} args - Floating point values to clip + * @returns {number} The maximum of the supplied values + * @url http://www.espruino.com/Reference#l_Math_max + */ + max(...args: any[]): number; + + /** + * + * @param {number} x - The value to get the sign from + * @returns {number} sign on x - -1, 1, or 0 + * @url http://www.espruino.com/Reference#l_Math_sign + */ + sign(x: number): number; } -/** - * This class allows use of the built-in I2C ports. Currently it allows I2C Master - * mode only. - * All addresses are in 7 bit format. If you have an 8 bit address then you need to - * shift it one bit to the right. - * @url http://www.espruino.com/Reference#I2C - */ -declare class I2C { - /** - * Try and find an I2C hardware device that will work on this pin (eg. `I2C1`) - * May return undefined if no device can be found. - * - * @param {Pin} pin - A pin to search with - * @returns {any} An object of type `I2C`, or `undefined` if one couldn't be found. - * @url http://www.espruino.com/Reference#l_I2C_find - */ - static find(pin: Pin): any; - - /** - * Create a software I2C port. This has limited functionality (no baud rate), but - * it can work on any pins. - * Use `I2C.setup` to configure this port. - * @constructor - * @returns {any} An I2C object - * @url http://www.espruino.com/Reference#l_I2C_I2C - */ - static new(): any; - - /** - * Set up this I2C port - * If not specified in options, the default pins are used (usually the lowest - * numbered pins on the lowest port that supports this peripheral) - * - * @param {any} options - * An optional structure containing extra information on initialising the I2C port - * ```{scl:pin, sda:pin, bitrate:100000}``` - * You can find out which pins to use by looking at [your board's reference page](#boards) and searching for pins with the `I2C` marker. Note that 400kHz is the maximum bitrate for most parts. - * @url http://www.espruino.com/Reference#l_I2C_setup - */ - setup(options: any): void; - - /** - * Transmit to the slave device with the given address. This is like Arduino's - * beginTransmission, write, and endTransmission rolled up into one. - * - * @param {any} address - The 7 bit address of the device to transmit to, or an object of the form `{address:12, stop:false}` to send this data without a STOP signal. - * @param {any} data - One or more items to write. May be ints, strings, arrays, or special objects (see `E.toUint8Array` for more info). - * @url http://www.espruino.com/Reference#l_I2C_writeTo - */ - writeTo(address: any, ...data: any[]): void; - - /** - * Request bytes from the given slave device, and return them as a Uint8Array - * (packed array of bytes). This is like using Arduino Wire's requestFrom, - * available and read functions. Sends a STOP - * - * @param {any} address - The 7 bit address of the device to request bytes from, or an object of the form `{address:12, stop:false}` to send this data without a STOP signal. - * @param {number} quantity - The number of bytes to request - * @returns {any} The data that was returned - as a Uint8Array - * @url http://www.espruino.com/Reference#l_I2C_readFrom - */ - readFrom(address: any, quantity: number): Uint8Array; -} - -/** - * This class handles waveforms. In Espruino, a Waveform is a set of data that you - * want to input or output. - * @url http://www.espruino.com/Reference#Waveform - */ -declare class Waveform { - /** - * Create a waveform class. This allows high speed input and output of waveforms. - * It has an internal variable called `buffer` (as well as `buffer2` when - * double-buffered - see `options` below) which contains the data to input/output. - * When double-buffered, a 'buffer' event will be emitted each time a buffer is - * finished with (the argument is that buffer). When the recording stops, a - * 'finish' event will be emitted (with the first argument as the buffer). - * @constructor - * - * @param {number} samples - The number of samples - * @param {any} options - Optional options struct `{doubleBuffer:bool, bits : 8/16}` where: `doubleBuffer` is whether to allocate two buffers or not (default false), and bits is the amount of bits to use (default 8). - * @returns {any} An Waveform object - * @url http://www.espruino.com/Reference#l_Waveform_Waveform - */ - static new(samples: number, options: any): any; - - /** - * Will start outputting the waveform on the given pin - the pin must have - * previously been initialised with analogWrite. If not repeating, it'll emit a - * `finish` event when it is done. - * - * @param {Pin} output - The pin to output on - * @param {number} freq - The frequency to output each sample at - * @param {any} options - Optional options struct `{time:float,repeat:bool}` where: `time` is the that the waveform with start output at, e.g. `getTime()+1` (otherwise it is immediate), `repeat` is a boolean specifying whether to repeat the give sample - * @url http://www.espruino.com/Reference#l_Waveform_startOutput - */ - startOutput(output: Pin, freq: number, options: any): void; - - /** - * Will start inputting the waveform on the given pin that supports analog. If not - * repeating, it'll emit a `finish` event when it is done. - * - * @param {Pin} output - The pin to output on - * @param {number} freq - The frequency to output each sample at - * @param {any} options - Optional options struct `{time:float,repeat:bool}` where: `time` is the that the waveform with start output at, e.g. `getTime()+1` (otherwise it is immediate), `repeat` is a boolean specifying whether to repeat the give sample - * @url http://www.espruino.com/Reference#l_Waveform_startInput - */ - startInput(output: Pin, freq: number, options: any): void; - - /** - * Stop a waveform that is currently outputting - * @url http://www.espruino.com/Reference#l_Waveform_stop - */ - stop(): void; -} - -/** - * This is the built-in class for Pins, such as D0,D1,LED1, or BTN - * You can call the methods on Pin, or you can use Wiring-style functions such as - * digitalWrite - * @url http://www.espruino.com/Reference#Pin - */ -declare class Pin { - /** - * Creates a pin from the given argument (or returns undefined if no argument) - * @constructor - * - * @param {any} value - A value to be converted to a pin. Can be a number, pin, or String. - * @returns {any} A Pin object - * @url http://www.espruino.com/Reference#l_Pin_Pin - */ - static new(value: any): any; - - /** - * Returns the input state of the pin as a boolean. - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset the pin's state to `"input"` - * @returns {boolean} Whether pin is a logical 1 or 0 - * @url http://www.espruino.com/Reference#l_Pin_read - */ - read(): boolean; - - /** - * Sets the output state of the pin to a 1 - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset the pin's state to `"output"` - * @url http://www.espruino.com/Reference#l_Pin_set - */ - set(): void; - - /** - * Sets the output state of the pin to a 0 - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset the pin's state to `"output"` - * @url http://www.espruino.com/Reference#l_Pin_reset - */ - reset(): void; - - /** - * Sets the output state of the pin to the parameter given - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset the pin's state to `"output"` - * - * @param {boolean} value - Whether to set output high (true/1) or low (false/0) - * @url http://www.espruino.com/Reference#l_Pin_write - */ - write(value: boolean): void; - - /** - * Sets the output state of the pin to the parameter given at the specified time. - * **Note:** this **doesn't** change the mode of the pin to an output. To do that, - * you need to use `pin.write(0)` or `pinMode(pin, 'output')` first. - * - * @param {boolean} value - Whether to set output high (true/1) or low (false/0) - * @param {number} time - Time at which to write - * @url http://www.espruino.com/Reference#l_Pin_writeAtTime - */ - writeAtTime(value: boolean, time: number): void; - - /** - * Return the current mode of the given pin. See `pinMode` for more information. - * @returns {any} The pin mode, as a string - * @url http://www.espruino.com/Reference#l_Pin_getMode - */ - getMode(): any; - - /** - * Set the mode of the given pin. See [`pinMode`](#l__global_pinMode) for more - * information on pin modes. - * - * @param {any} mode - The mode - a string that is either 'analog', 'input', 'input_pullup', 'input_pulldown', 'output', 'opendrain', 'af_output' or 'af_opendrain'. Do not include this argument if you want to revert to automatic pin mode setting. - * @url http://www.espruino.com/Reference#l_Pin_mode - */ - mode(mode: any): void; - - /** - * Toggles the state of the pin from off to on, or from on to off. - * **Note:** This method doesn't currently work on the ESP8266 port of Espruino. - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset the pin's state to `"output"` - * @returns {boolean} True if the pin is high after calling the function - * @url http://www.espruino.com/Reference#l_Pin_toggle - */ - toggle(): boolean; - - /** - * Get information about this pin and its capabilities. Of the form: - * ``` - * { - * "port" : "A", // the Pin's port on the chip - * "num" : 12, // the Pin's number - * "in_addr" : 0x..., // (if available) the address of the pin's input address in bit-banded memory (can be used with peek) - * "out_addr" : 0x..., // (if available) the address of the pin's output address in bit-banded memory (can be used with poke) - * "analog" : { ADCs : [1], channel : 12 }, // If analog input is available - * "functions" : { - * "TIM1":{type:"CH1, af:0}, - * "I2C3":{type:"SCL", af:1} - * } - * } - * ``` - * Will return undefined if pin is not valid. - * @returns {any} An object containing information about this pins - * @url http://www.espruino.com/Reference#l_Pin_getInfo - */ - getInfo(): any; -} - -interface DataViewConstructor { - /** - * Create a `DataView` object that can be used to access the data in an - * `ArrayBuffer`. - * ``` - * var b = new ArrayBuffer(8) - * var v = new DataView(b) - * v.setUint16(0,"0x1234") - * v.setUint8(3,"0x56") - * console.log("0x"+v.getUint32(0).toString(16)) - * // prints 0x12340056 - * ``` - * @constructor - * - * @param {any} buffer - The `ArrayBuffer` to base this on - * @param {number} byteOffset - (optional) The offset of this view in bytes - * @param {number} byteLength - (optional) The length in bytes - * @returns {any} A `DataView` object - * @url http://www.espruino.com/Reference#l_DataView_DataView - */ - new(buffer: ArrayBuffer, byteOffset?: number, byteLength?: number): DataView; -} - -interface DataView { - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @returns {any} the index of the value in the array, or -1 - * @url http://www.espruino.com/Reference#l_DataView_getFloat32 - */ - getFloat32(byteOffset: number, littleEndian?: boolean): number; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @returns {any} the index of the value in the array, or -1 - * @url http://www.espruino.com/Reference#l_DataView_getFloat64 - */ - getFloat64(byteOffset: number, littleEndian?: boolean): number; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @returns {any} the index of the value in the array, or -1 - * @url http://www.espruino.com/Reference#l_DataView_getInt8 - */ - getInt8(byteOffset: number, littleEndian?: boolean): number; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @returns {any} the index of the value in the array, or -1 - * @url http://www.espruino.com/Reference#l_DataView_getInt16 - */ - getInt16(byteOffset: number, littleEndian?: boolean): number; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @returns {any} the index of the value in the array, or -1 - * @url http://www.espruino.com/Reference#l_DataView_getInt32 - */ - getInt32(byteOffset: number, littleEndian?: boolean): number; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @returns {any} the index of the value in the array, or -1 - * @url http://www.espruino.com/Reference#l_DataView_getUint8 - */ - getUint8(byteOffset: number, littleEndian?: boolean): number; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @returns {any} the index of the value in the array, or -1 - * @url http://www.espruino.com/Reference#l_DataView_getUint16 - */ - getUint16(byteOffset: number, littleEndian?: boolean): number; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @returns {any} the index of the value in the array, or -1 - * @url http://www.espruino.com/Reference#l_DataView_getUint32 - */ - getUint32(byteOffset: number, littleEndian?: boolean): number; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {any} value - The value to write - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @url http://www.espruino.com/Reference#l_DataView_setFloat32 - */ - setFloat32(byteOffset: number, value: number, littleEndian?: boolean): void; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {any} value - The value to write - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @url http://www.espruino.com/Reference#l_DataView_setFloat64 - */ - setFloat64(byteOffset: number, value: number, littleEndian?: boolean): void; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {any} value - The value to write - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @url http://www.espruino.com/Reference#l_DataView_setInt8 - */ - setInt8(byteOffset: number, value: number, littleEndian?: boolean): void; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {any} value - The value to write - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @url http://www.espruino.com/Reference#l_DataView_setInt16 - */ - setInt16(byteOffset: number, value: number, littleEndian?: boolean): void; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {any} value - The value to write - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @url http://www.espruino.com/Reference#l_DataView_setInt32 - */ - setInt32(byteOffset: number, value: number, littleEndian?: boolean): void; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {any} value - The value to write - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @url http://www.espruino.com/Reference#l_DataView_setUint8 - */ - setUint8(byteOffset: number, value: number, littleEndian?: boolean): void; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {any} value - The value to write - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @url http://www.espruino.com/Reference#l_DataView_setUint16 - */ - setUint16(byteOffset: number, value: number, littleEndian?: boolean): void; - - /** - * - * @param {number} byteOffset - The offset in bytes to read from - * @param {any} value - The value to write - * @param {boolean} littleEndian - (optional) Whether to read in little endian - if false or undefined data is read as big endian - * @url http://www.espruino.com/Reference#l_DataView_setUint32 - */ - setUint32(byteOffset: number, value: number, littleEndian?: boolean): void; -} - -/** - * This class helps - * @url http://www.espruino.com/Reference#DataView - */ -declare const DataView: DataViewConstructor - -/** - * This class allows use of the built-in USARTs - * Methods may be called on the `USB`, `Serial1`, `Serial2`, `Serial3`, `Serial4`, - * `Serial5` and `Serial6` objects. While different processors provide different - * numbers of USARTs, on official Espruino boards you can always rely on at least - * `Serial1` being available - * @url http://www.espruino.com/Reference#Serial - */ -declare class Serial { - /** - * The `data` event is called when data is received. If a handler is defined with - * `X.on('data', function(data) { ... })` then it will be called, otherwise data - * will be stored in an internal buffer, where it can be retrieved with `X.read()` - * @param {string} event - The event to listen to. - * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `data` A string containing one or more characters of received data - * @url http://www.espruino.com/Reference#l_Serial_data - */ - static on(event: "data", callback: (data: any) => void): void; - - /** - * The `framing` event is called when there was activity on the input to the UART - * but the `STOP` bit wasn't in the correct place. This is either because there was - * noise on the line, or the line has been pulled to 0 for a long period of time. - * To enable this, you must initialise Serial with `SerialX.setup(..., { ..., - * errors:true });` - * **Note:** Even though there was an error, the byte will still be received and - * passed to the `data` handler. - * **Note:** This only works on STM32 and NRF52 based devices (eg. all official - * Espruino boards) - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_Serial_framing - */ - static on(event: "framing", callback: () => void): void; - - /** - * The `parity` event is called when the UART was configured with a parity bit, and - * this doesn't match the bits that have actually been received. - * To enable this, you must initialise Serial with `SerialX.setup(..., { ..., - * errors:true });` - * **Note:** Even though there was an error, the byte will still be received and - * passed to the `data` handler. - * **Note:** This only works on STM32 and NRF52 based devices (eg. all official - * Espruino boards) - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_Serial_parity - */ - static on(event: "parity", callback: () => void): void; - - /** - * Try and find a USART (Serial) hardware device that will work on this pin (eg. - * `Serial1`) - * May return undefined if no device can be found. - * - * @param {Pin} pin - A pin to search with - * @returns {any} An object of type `Serial`, or `undefined` if one couldn't be found. - * @url http://www.espruino.com/Reference#l_Serial_find - */ - static find(pin: Pin): any; - - /** - * Create a software Serial port. This has limited functionality (only low baud - * rates), but it can work on any pins. - * Use `Serial.setup` to configure this port. - * @constructor - * @returns {any} A Serial object - * @url http://www.espruino.com/Reference#l_Serial_Serial - */ - static new(): any; - - /** - * Set this Serial port as the port for the JavaScript console (REPL). - * Unless `force` is set to true, changes in the connection state of the board (for - * instance plugging in USB) will cause the console to change. - * See `E.setConsole` for a more flexible version of this function. - * - * @param {boolean} force - Whether to force the console to this port - * @url http://www.espruino.com/Reference#l_Serial_setConsole - */ - setConsole(force: boolean): void; - - /** - * Setup this Serial port with the given baud rate and options. - * eg. - * ``` - * Serial1.setup(9600,{rx:a_pin, tx:a_pin}); - * ``` - * The second argument can contain: - * ``` - * { - * rx:pin, // Receive pin (data in to Espruino) - * tx:pin, // Transmit pin (data out of Espruino) - * ck:pin, // (default none) Clock Pin - * cts:pin, // (default none) Clear to Send Pin - * bytesize:8, // (default 8)How many data bits - 7 or 8 - * parity:null/'none'/'o'/'odd'/'e'/'even', - * // (default none) Parity bit - * stopbits:1, // (default 1) Number of stop bits to use - * flow:null/undefined/'none'/'xon', // (default none) software flow control - * path:null/undefined/string // Linux Only - the path to the Serial device to use - * errors:false // (default false) whether to forward framing/parity errors - * } - * ``` - * You can find out which pins to use by looking at [your board's reference - * page](#boards) and searching for pins with the `UART`/`USART` markers. - * If not specified in options, the default pins are used for rx and tx (usually - * the lowest numbered pins on the lowest port that supports this peripheral). `ck` - * and `cts` are not used unless specified. - * Note that even after changing the RX and TX pins, if you have called setup - * before then the previous RX and TX pins will still be connected to the Serial - * port as well - until you set them to something else using `digitalWrite` or - * `pinMode`. - * Flow control can be xOn/xOff (`flow:'xon'`) or hardware flow control (receive - * only) if `cts` is specified. If `cts` is set to a pin, the pin's value will be 0 - * when Espruino is ready for data and 1 when it isn't. - * By default, framing or parity errors don't create `framing` or `parity` events - * on the `Serial` object because storing these errors uses up additional storage - * in the queue. If you're intending to receive a lot of malformed data then the - * queue might overflow `E.getErrorFlags()` would return `FIFO_FULL`. However if - * you need to respond to `framing` or `parity` errors then you'll need to use - * `errors:true` when initialising serial. - * On Linux builds there is no default Serial device, so you must specify a path to - * a device - for instance: `Serial1.setup(9600,{path:"/dev/ttyACM0"})` - * You can also set up 'software serial' using code like: - * ``` - * var s = new Serial(); - * s.setup(9600,{rx:a_pin, tx:a_pin}); - * ``` - * However software serial doesn't use `ck`, `cts`, `parity`, `flow` or `errors` - * parts of the initialisation object. - * - * @param {any} baudrate - The baud rate - the default is 9600 - * @param {any} options - An optional structure containing extra information on initialising the serial port - see below. - * @url http://www.espruino.com/Reference#l_Serial_setup - */ - setup(baudrate: any, options: any): void; - - /** - * If the serial (or software serial) device was set up, uninitialise it. - * @url http://www.espruino.com/Reference#l_Serial_unsetup - */ - unsetup(): void; - - /** - * Print a string to the serial port - without a line feed - * **Note:** This function replaces any occurances of `\n` in the string with - * `\r\n`. To avoid this, use `Serial.write`. - * - * @param {any} string - A String to print - * @url http://www.espruino.com/Reference#l_Serial_print - */ - print(string: any): void; - - /** - * Print a line to the serial port with a newline (`\r\n`) at the end of it. - * **Note:** This function converts data to a string first, eg - * `Serial.print([1,2,3])` is equivalent to `Serial.print("1,2,3"). If you'd like - * to write raw bytes, use `Serial.write`. - * - * @param {any} string - A String to print - * @url http://www.espruino.com/Reference#l_Serial_println - */ - println(string: any): void; - - /** - * Write a character or array of data to the serial port - * This method writes unmodified data, eg `Serial.write([1,2,3])` is equivalent to - * `Serial.write("\1\2\3")`. If you'd like data converted to a string first, use - * `Serial.print`. - * - * @param {any} data - One or more items to write. May be ints, strings, arrays, or special objects (see `E.toUint8Array` for more info). - * @url http://www.espruino.com/Reference#l_Serial_write - */ - write(...data: any[]): void; - - /** - * Add data to this device as if it came directly from the input - it will be - * returned via `serial.on('data', ...)`; - * ``` - * Serial1.on('data', function(d) { print("Got",d); }); - * Serial1.inject('Hello World'); - * // prints "Got Hel","Got lo World" (characters can be split over multiple callbacks) - * ``` - * This is most useful if you wish to send characters to Espruino's REPL (console) - * while it is on another device. - * - * @param {any} data - One or more items to write. May be ints, strings, arrays, or special objects (see `E.toUint8Array` for more info). - * @url http://www.espruino.com/Reference#l_Serial_inject - */ - inject(...data: any[]): void; - - /** - * Return how many bytes are available to read. If there is already a listener for - * data, this will always return 0. - * @returns {number} How many bytes are available - * @url http://www.espruino.com/Reference#l_Serial_available - */ - available(): number; - - /** - * Return a string containing characters that have been received - * - * @param {number} chars - The number of characters to read, or undefined/0 for all available - * @returns {any} A string containing the required bytes. - * @url http://www.espruino.com/Reference#l_Serial_read - */ - read(chars: number): any; - - /** - * Pipe this USART to a stream (an object with a 'write' method) - * - * @param {any} destination - The destination file/stream that will receive content from the source. - * @param {any} options - * An optional object `{ chunkSize : int=32, end : bool=true, complete : function }` - * chunkSize : The amount of data to pipe from source to destination at a time - * complete : a function to call when the pipe activity is complete - * end : call the 'end' function on the destination when the source is finished - * @url http://www.espruino.com/Reference#l_Serial_pipe - */ - pipe(destination: any, options: any): void; -} - -/** - * These objects are created from `require("Storage").open` and allow Storage items - * to be read/written. - * The `Storage` library writes into Flash memory (which can only be erased in - * chunks), and unlike a normal filesystem it allocates files in one long - * contiguous area to allow them to be accessed easily from Espruino. - * This presents a challenge for `StorageFile` which allows you to append to a - * file, so instead `StorageFile` stores files in chunks. It uses the last - * character of the filename to denote the chunk number (eg `"foobar\1"`, - * `"foobar\2"`, etc). - * This means that while `StorageFile` files exist in the same area as those from - * `Storage`, they should be read using `Storage.open` (and not `Storage.read`). - * ``` - * f = s.open("foobar","w"); - * f.write("Hell"); - * f.write("o World\n"); - * f.write("Hello\n"); - * f.write("World 2\n"); - * // there's no need to call 'close' - * // then - * f = s.open("foobar","r"); - * f.read(13) // "Hello World\nH" - * f.read(13) // "ello\nWorld 2\n" - * f.read(13) // "Hello World 3" - * f.read(13) // "\n" - * f.read(13) // undefined - * // or - * f = s.open("foobar","r"); - * f.readLine() // "Hello World\n" - * f.readLine() // "Hello\n" - * f.readLine() // "World 2\n" - * f.readLine() // "Hello World 3\n" - * f.readLine() // undefined - * // now get rid of file - * f.erase(); - * ``` - * **Note:** `StorageFile` uses the fact that all bits of erased flash memory are 1 - * to detect the end of a file. As such you should not write character code 255 - * (`"\xFF"`) to these files. - * @url http://www.espruino.com/Reference#StorageFile - */ -declare class StorageFile { - - - /** - * Read 'len' bytes of data from the file, and return a String containing those - * bytes. - * If the end of the file is reached, the String may be smaller than the amount of - * bytes requested, or if the file is already at the end, `undefined` is returned. - * - * @param {number} len - How many bytes to read - * @returns {any} A String, or undefined - * @url http://www.espruino.com/Reference#l_StorageFile_read - */ - read(len: number): string; - - /** - * Read a line of data from the file (up to and including `"\n"`) - * @returns {any} A line of data - * @url http://www.espruino.com/Reference#l_StorageFile_readLine - */ - readLine(): string; - - /** - * Return the length of the current file. - * This requires Espruino to read the file from scratch, which is not a fast - * operation. - * @returns {number} The current length in bytes of the file - * @url http://www.espruino.com/Reference#l_StorageFile_getLength - */ - getLength(): number; - - /** - * Append the given data to a file. You should not attempt to append `"\xFF"` - * (character code 255). - * - * @param {any} data - The data to write. This should not include `'\xFF'` (character code 255) - * @url http://www.espruino.com/Reference#l_StorageFile_write - */ - write(data: string): void; - - /** - * Erase this file - * @url http://www.espruino.com/Reference#l_StorageFile_erase - */ - erase(): void; -} - -interface processConstructor { - /** - * This event is called when an exception gets thrown and isn't caught (eg. it gets - * all the way back to the event loop). - * You can use this for logging potential problems that might occur during - * execution when you might not be able to see what is written to the console, for - * example: - * ``` - * var lastError; - * process.on('uncaughtException', function(e) { - * lastError=e; - * print(e,e.stack?"\n"+e.stack:"") - * }); - * function checkError() { - * if (!lastError) return print("No Error"); - * print(lastError,lastError.stack?"\n"+lastError.stack:"") - * } - * ``` - * **Note:** When this is used, exceptions will cease to be reported on the - * console - which may make debugging difficult! - * @param {string} event - The event to listen to. - * @param {(exception: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `exception` The uncaught exception - * @url http://www.espruino.com/Reference#l_process_uncaughtException - */ - on(event: "uncaughtException", callback: (exception: any) => void): void; - - /** - * Returns the version of Espruino as a String - * @returns {any} The version of Espruino - * @url http://www.espruino.com/Reference#l_process_version - */ - version: any; - - /** - * Returns an Object containing various pre-defined variables. - * * `VERSION` - is the Espruino version - * * `GIT_COMMIT` - is Git commit hash this firmware was built from - * * `BOARD` - the board's ID (eg. `PUCKJS`) - * * `RAM` - total amount of on-chip RAM in bytes - * * `FLASH` - total amount of on-chip flash memory in bytes - * * `SPIFLASH` - (on Bangle.js) total amount of off-chip flash memory in bytes - * * `HWVERSION` - For Puck.js this is the board revision (1, 2, 2.1), or for - * Bangle.js it's 1 or 2 - * * `STORAGE` - memory in bytes dedicated to the `Storage` module - * * `SERIAL` - the serial number of this chip - * * `CONSOLE` - the name of the current console device being used (`Serial1`, - * `USB`, `Bluetooth`, etc) - * * `MODULES` - a list of built-in modules separated by commas - * * `EXPTR` - The address of the `exportPtrs` structure in flash (this includes - * links to built-in functions that compiled JS code needs) - * * `APP_RAM_BASE` - On nRF5x boards, this is the RAM required by the Softdevice - * *if it doesn't exactly match what was allocated*. You can use this to update - * `LD_APP_RAM_BASE` in the `BOARD.py` file - * For example, to get a list of built-in modules, you can use - * `process.env.MODULES.split(',')` - * @returns {any} An object - * @url http://www.espruino.com/Reference#l_process_env - */ - env: any; - - /** - * Run a Garbage Collection pass, and return an object containing information on - * memory usage. - * * `free` : Memory that is available to be used (in blocks) - * * `usage` : Memory that has been used (in blocks) - * * `total` : Total memory (in blocks) - * * `history` : Memory used for command history - that is freed if memory is low. - * Note that this is INCLUDED in the figure for 'free' - * * `gc` : Memory freed during the GC pass - * * `gctime` : Time taken for GC pass (in milliseconds) - * * `blocksize` : Size of a block (variable) in bytes - * * `stackEndAddress` : (on ARM) the address (that can be used with peek/poke/etc) - * of the END of the stack. The stack grows down, so unless you do a lot of - * recursion the bytes above this can be used. - * * `flash_start` : (on ARM) the address of the start of flash memory (usually - * `0x8000000`) - * * `flash_binary_end` : (on ARM) the address in flash memory of the end of - * Espruino's firmware. - * * `flash_code_start` : (on ARM) the address in flash memory of pages that store - * any code that you save with `save()`. - * * `flash_length` : (on ARM) the amount of flash memory this firmware was built - * for (in bytes). **Note:** Some STM32 chips actually have more memory than is - * advertised. - * Memory units are specified in 'blocks', which are around 16 bytes each - * (depending on your device). The actual size is available in `blocksize`. See - * http://www.espruino.com/Performance for more information. - * **Note:** To find free areas of flash memory, see `require('Flash').getFree()` - * - * @param {any} gc - An optional boolean. If `undefined` or `true` Garbage collection is performed, if `false` it is not - * @returns {any} Information about memory usage - * @url http://www.espruino.com/Reference#l_process_memory - */ - memory(gc: any): any; -} - -interface process { +interface Math { } /** - * This class contains information about Espruino itself - * @url http://www.espruino.com/Reference#process + * This is a standard JavaScript class that contains useful Maths routines + * @url http://www.espruino.com/Reference#Math */ -declare const process: processConstructor +declare const Math: MathConstructor /** * Built-in class that caches the modules used by the `require` command @@ -7568,870 +7208,126 @@ declare class Modules { } -interface StringConstructor { - /** - * Return the character(s) represented by the given character code(s). - * - * @param {any} code - One or more character codes to create a string from (range 0-255). - * @returns {any} The character - * @url http://www.espruino.com/Reference#l_String_fromCharCode - */ - fromCharCode(...code: any[]): any; - - /** - * Create a new String - * @constructor - * - * @param {any} str - A value to turn into a string. If undefined or not supplied, an empty String is created. - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_String_String - */ - new(...str: any[]): any; -} - -interface String { - /** - * Find the length of the string - * @returns {any} The value of the string - * @url http://www.espruino.com/Reference#l_String_length - */ - length: any; - - /** - * Return a single character at the given position in the String. - * - * @param {number} pos - The character number in the string. Negative values return characters from end of string (-1 = last char) - * @returns {any} The character in the string - * @url http://www.espruino.com/Reference#l_String_charAt - */ - charAt(pos: number): any; - - /** - * Return the integer value of a single character at the given position in the - * String. - * Note that this returns 0 not 'NaN' for out of bounds characters - * - * @param {number} pos - The character number in the string. Negative values return characters from end of string (-1 = last char) - * @returns {number} The integer value of a character in the string - * @url http://www.espruino.com/Reference#l_String_charCodeAt - */ - charCodeAt(pos: number): number; - - /** - * Return the index of substring in this string, or -1 if not found - * - * @param {any} substring - The string to search for - * @param {any} fromIndex - Index to search from - * @returns {number} The index of the string, or -1 if not found - * @url http://www.espruino.com/Reference#l_String_indexOf - */ - indexOf(substring: any, fromIndex: any): number; - - /** - * Return the last index of substring in this string, or -1 if not found - * - * @param {any} substring - The string to search for - * @param {any} fromIndex - Index to search from - * @returns {number} The index of the string, or -1 if not found - * @url http://www.espruino.com/Reference#l_String_lastIndexOf - */ - lastIndexOf(substring: any, fromIndex: any): number; - - /** - * Matches an occurrence `subStr` in the string. - * Returns `null` if no match, or: - * ``` - * "abcdef".match("b") == [ - * "b", // array index 0 - the matched string - * index: 1, // the start index of the match - * input: "b" // the input string - * ] - * "abcdefabcdef".match(/bcd/) == [ - * "bcd", index: 1, - * input: "abcdefabcdef" - * ] - * ``` - * 'Global' RegEx matches just return an array of matches (with no indices): - * ``` - * "abcdefabcdef".match(/bcd/g) = [ - * "bcd", - * "bcd" - * ] - * ``` - * - * @param {any} substr - Substring or RegExp to match - * @returns {any} A match array or `null` (see below): - * @url http://www.espruino.com/Reference#l_String_match - */ - match(substr: any): any; - - /** - * Search and replace ONE occurrance of `subStr` with `newSubStr` and return the - * result. This doesn't alter the original string. Regular expressions not - * supported. - * - * @param {any} subStr - The string to search for - * @param {any} newSubStr - The string to replace it with - * @returns {any} This string with `subStr` replaced - * @url http://www.espruino.com/Reference#l_String_replace - */ - replace(subStr: any, newSubStr: any): any; - - /** - * - * @param {number} start - The start character index (inclusive) - * @param {any} end - The end character index (exclusive) - * @returns {any} The part of this string between start and end - * @url http://www.espruino.com/Reference#l_String_substring - */ - substring(start: number, end: any): any; - - /** - * - * @param {number} start - The start character index - * @param {any} len - The number of characters - * @returns {any} Part of this string from start for len characters - * @url http://www.espruino.com/Reference#l_String_substr - */ - substr(start: number, len: any): any; - - /** - * - * @param {number} start - The start character index, if negative it is from the end of the string - * @param {any} end - The end character index, if negative it is from the end of the string, and if omitted it is the end of the string - * @returns {any} Part of this string from start for len characters - * @url http://www.espruino.com/Reference#l_String_slice - */ - slice(start: number, end: any): any; - - /** - * Return an array made by splitting this string up by the separator. eg. - * ```'1,2,3'.split(',')==['1', '2', '3']``` - * Regular Expressions can also be used to split strings, eg. `'1a2b3 - * 4'.split(/[^0-9]/)==['1', '2', '3', '4']`. - * - * @param {any} separator - The separator `String` or `RegExp` to use - * @returns {any} Part of this string from start for len characters - * @url http://www.espruino.com/Reference#l_String_split - */ - split(separator: any): any; - - /** - * - * @returns {any} The lowercase version of this string - * @url http://www.espruino.com/Reference#l_String_toLowerCase - */ - toLowerCase(): any; - - /** - * - * @returns {any} The uppercase version of this string - * @url http://www.espruino.com/Reference#l_String_toUpperCase - */ - toUpperCase(): any; - - /** - * Return a new string with any whitespace (tabs, space, form feed, newline, - * carriage return, etc) removed from the beginning and end. - * @returns {any} A String with Whitespace removed from the beginning and end - * @url http://www.espruino.com/Reference#l_String_trim - */ - trim(): string; - - /** - * Append all arguments to this `String` and return the result. Does not modify the - * original `String`. - * - * @param {any} args - Strings to append - * @returns {any} The result of appending all arguments to this string - * @url http://www.espruino.com/Reference#l_String_concat - */ - concat(...args: any[]): any; - - /** - * - * @param {any} searchString - The string to search for - * @param {number} position - The start character index (or 0 if not defined) - * @returns {boolean} `true` if the given characters are found at the beginning of the string, otherwise, `false`. - * @url http://www.espruino.com/Reference#l_String_startsWith - */ - startsWith(searchString: any, position: number): boolean; - - /** - * - * @param {any} searchString - The string to search for - * @param {any} length - The 'end' of the string - if left off the actual length of the string is used - * @returns {boolean} `true` if the given characters are found at the end of the string, otherwise, `false`. - * @url http://www.espruino.com/Reference#l_String_endsWith - */ - endsWith(searchString: any, length: any): boolean; - - /** - * - * @param {any} substring - The string to search for - * @param {any} fromIndex - The start character index (or 0 if not defined) - * @returns {boolean} `true` if the given characters are in the string, otherwise, `false`. - * @url http://www.espruino.com/Reference#l_String_includes - */ - includes(substring: any, fromIndex: any): boolean; - - /** - * Repeat this string the given number of times. - * - * @param {number} count - An integer with the amount of times to repeat this String - * @returns {any} A string containing repetitions of this string - * @url http://www.espruino.com/Reference#l_String_repeat - */ - repeat(count: number): string; - - /** - * Pad this string at the beginnind to the required number of characters - * ``` - * "Hello".padStart(10) == " Hello" - * "123".padStart(10,".-") == ".-.-.-.123" - * ``` - * - * @param {number} targetLength - The length to pad this string to - * @param {any} [padString] - [optional] The string to pad with, default is `' '` - * @returns {any} A string containing this string padded to the correct length - * @url http://www.espruino.com/Reference#l_String_padStart - */ - padStart(targetLength: number, padString?: any): string; - - /** - * Pad this string at the end to the required number of characters - * ``` - * "Hello".padEnd(10) == "Hello " - * "123".padEnd(10,".-") == "123.-.-.-." - * ``` - * - * @param {number} targetLength - The length to pad this string to - * @param {any} [padString] - [optional] The string to pad with, default is `' '` - * @returns {any} A string containing this string padded to the correct length - * @url http://www.espruino.com/Reference#l_String_padEnd - */ - padEnd(targetLength: number, padString?: any): string; -} - -/** - * This is the built-in class for Text Strings. - * Text Strings in Espruino are not zero-terminated, so you can store zeros in - * them. - * @url http://www.espruino.com/Reference#String - */ -declare const String: StringConstructor - -interface ArrayConstructor { - /** - * Returns true if the provided object is an array - * - * @param {any} var - The variable to be tested - * @returns {boolean} True if var is an array, false if not. - * @url http://www.espruino.com/Reference#l_Array_isArray - */ - isArray(arg: any): arg is any[]; - - /** - * Create an Array. Either give it one integer argument (>=0) which is the length - * of the array, or any number of arguments - * @constructor - * - * @param {any} args - The length of the array OR any number of items to add to the array - * @returns {any} An Array - * @url http://www.espruino.com/Reference#l_Array_Array - */ - new(arrayLength?: number): any[]; - new(arrayLength: number): T[]; - new(...items: T[]): T[]; - (arrayLength?: number): any[]; - (arrayLength: number): T[]; - (...items: T[]): T[]; -} - -interface Array { - /** - * Convert the Array to a string - * - * @param {any} radix - unused - * @returns {any} A String representing the array - * @url http://www.espruino.com/Reference#l_Array_toString - */ - toString(): string; - - /** - * Find the length of the array - * @returns {any} The length of the array - * @url http://www.espruino.com/Reference#l_Array_length - */ - length: number; - - /** - * Return the index of the value in the array, or -1 - * - * @param {any} value - The value to check for - * @param {number} startIndex - (optional) the index to search from, or 0 if not specified - * @returns {any} the index of the value in the array, or -1 - * @url http://www.espruino.com/Reference#l_Array_indexOf - */ - indexOf(value: T, startIndex?: number): number; - - /** - * Return `true` if the array includes the value, `false` otherwise - * - * @param {any} value - The value to check for - * @param {number} startIndex - (optional) the index to search from, or 0 if not specified - * @returns {boolean} `true` if the array includes the value, `false` otherwise - * @url http://www.espruino.com/Reference#l_Array_includes - */ - includes(value: T, startIndex?: number): boolean; - - /** - * Join all elements of this array together into one string, using 'separator' - * between them. e.g. ```[1,2,3].join(' ')=='1 2 3'``` - * - * @param {any} separator - The separator - * @returns {any} A String representing the Joined array - * @url http://www.espruino.com/Reference#l_Array_join - */ - join(separator?: string): string; - - /** - * Push a new value onto the end of this array' - * This is the opposite of `[1,2,3].unshift(0)`, which adds one or more elements to - * the beginning of the array. - * - * @param {any} arguments - One or more arguments to add - * @returns {number} The new size of the array - * @url http://www.espruino.com/Reference#l_Array_push - */ - push(...arguments: T[]): number; - - /** - * Remove and return the value on the end of this array. - * This is the opposite of `[1,2,3].shift()`, which removes an element from the - * beginning of the array. - * @returns {any} The value that is popped off - * @url http://www.espruino.com/Reference#l_Array_pop - */ - pop(): T | undefined; - - /** - * Return an array which is made from the following: ```A.map(function) = - * [function(A[0]), function(A[1]), ...]``` - * - * @param {any} function - Function used to map one item to another - * @param {any} thisArg - if specified, the function is called with 'this' set to thisArg (optional) - * @returns {any} An array containing the results - * @url http://www.espruino.com/Reference#l_Array_map - */ - map(callbackfn: (value: T, index: number, array: T[]) => U, thisArg?: any): U[]; - - /** - * Executes a provided function once per array element. - * - * @param {any} function - Function to be executed - * @param {any} [thisArg] - [optional] If specified, the function is called with 'this' set to thisArg (optional) - * @url http://www.espruino.com/Reference#l_Array_forEach - */ - forEach(callbackfn: (value: T, index: number, array: T[]) => void, thisArg?: any): void; - - /** - * Return an array which contains only those elements for which the callback - * function returns 'true' - * - * @param {any} function - Function to be executed - * @param {any} thisArg - if specified, the function is called with 'this' set to thisArg (optional) - * @returns {any} An array containing the results - * @url http://www.espruino.com/Reference#l_Array_filter - */ - filter(predicate: (value: T, index: number, array: T[]) => value is S, thisArg?: any): S[]; - filter(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): T[]; - - /** - * Return the array element where `function` returns `true`, or `undefined` if it - * doesn't returns `true` for any element. - * ``` - * ["Hello","There","World"].find(a=>a[0]=="T") - * // returns "There" - * ``` - * - * @param {any} function - Function to be executed - * @returns {any} The array element where `function` returns `true`, or `undefined` - * @url http://www.espruino.com/Reference#l_Array_find - */ - find(predicate: (this: void, value: T, index: number, obj: T[]) => value is S): S | undefined; - find(predicate: (value: T, index: number, obj: T[]) => unknown): T | undefined; - - /** - * Return the array element's index where `function` returns `true`, or `-1` if it - * doesn't returns `true` for any element. - * ``` - * ["Hello","There","World"].findIndex(a=>a[0]=="T") - * // returns 1 - * ``` - * - * @param {any} function - Function to be executed - * @returns {any} The array element's index where `function` returns `true`, or `-1` - * @url http://www.espruino.com/Reference#l_Array_findIndex - */ - findIndex(predicate: (value: T, index: number, obj: T[]) => unknown): number; - - /** - * Return 'true' if the callback returns 'true' for any of the elements in the - * array - * - * @param {any} function - Function to be executed - * @param {any} thisArg - if specified, the function is called with 'this' set to thisArg (optional) - * @returns {any} A boolean containing the result - * @url http://www.espruino.com/Reference#l_Array_some - */ - some(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): boolean; - - /** - * Return 'true' if the callback returns 'true' for every element in the array - * - * @param {any} function - Function to be executed - * @param {any} thisArg - if specified, the function is called with 'this' set to thisArg (optional) - * @returns {any} A boolean containing the result - * @url http://www.espruino.com/Reference#l_Array_every - */ - every(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): boolean; - - /** - * Execute `previousValue=initialValue` and then `previousValue = - * callback(previousValue, currentValue, index, array)` for each element in the - * array, and finally return previousValue. - * - * @param {any} callback - Function used to reduce the array - * @param {any} initialValue - if specified, the initial value to pass to the function - * @returns {any} The value returned by the last function called - * @url http://www.espruino.com/Reference#l_Array_reduce - */ - reduce(callback: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T, initialValue?: T): T; - - /** - * Both remove and add items to an array - * - * @param {number} index - Index at which to start changing the array. If negative, will begin that many elements from the end - * @param {any} howMany - An integer indicating the number of old array elements to remove. If howMany is 0, no elements are removed. - * @param {any} elements - One or more items to add to the array - * @returns {any} An array containing the removed elements. If only one element is removed, an array of one element is returned. - * @url http://www.espruino.com/Reference#l_Array_splice - */ - splice(index: number, howMany?: number, ...elements: T[]): T[]; - - /** - * Remove and return the first element of the array. - * This is the opposite of `[1,2,3].pop()`, which takes an element off the end. - * - * @returns {any} The element that was removed - * @url http://www.espruino.com/Reference#l_Array_shift - */ - shift(): T | undefined; - - /** - * Add one or more items to the start of the array, and return its new length. - * This is the opposite of `[1,2,3].push(4)`, which puts one or more elements on - * the end. - * - * @param {any} elements - One or more items to add to the beginning of the array - * @returns {number} The new array length - * @url http://www.espruino.com/Reference#l_Array_unshift - */ - unshift(...elements: T[]): number; - - /** - * Return a copy of a portion of this array (in a new array) - * - * @param {number} start - Start index - * @param {any} end - End index (optional) - * @returns {any} A new array - * @url http://www.espruino.com/Reference#l_Array_slice - */ - slice(start?: number, end?: number): T[]; - - /** - * Do an in-place quicksort of the array - * - * @param {any} var - A function to use to compare array elements (or undefined) - * @returns {any} This array object - * @url http://www.espruino.com/Reference#l_Array_sort - */ - sort(compareFn?: (a: T, b: T) => number): T[]; - - /** - * Create a new array, containing the elements from this one and any arguments, if - * any argument is an array then those elements will be added. - * - * @param {any} args - Any items to add to the array - * @returns {any} An Array - * @url http://www.espruino.com/Reference#l_Array_concat - */ - concat(...args: (T | T[])[]): T[]; - - /** - * Fill this array with the given value, for every index `>= start` and `< end` - * - * @param {any} value - The value to fill the array with - * @param {number} start - Optional. The index to start from (or 0). If start is negative, it is treated as length+start where length is the length of the array - * @param {any} end - Optional. The index to end at (or the array length). If end is negative, it is treated as length+end. - * @returns {any} This array - * @url http://www.espruino.com/Reference#l_Array_fill - */ - fill(value: T, start: number, end?: number): T[]; - - /** - * Reverse all elements in this array (in place) - * @returns {any} The array, but reversed. - * @url http://www.espruino.com/Reference#l_Array_reverse - */ - reverse(): T[]; - - [index: number]: T -} - -/** - * This is the built-in JavaScript class for arrays. - * Arrays can be defined with ```[]```, ```new Array()```, or ```new - * Array(length)``` - * @url http://www.espruino.com/Reference#Array - */ -declare const Array: ArrayConstructor - -interface ObjectConstructor { - /** - * Return all enumerable keys of the given object - * - * @param {any} object - The object to return keys for - * @returns {any} An array of strings - one for each key on the given object - * @url http://www.espruino.com/Reference#l_Object_keys - */ - keys(object: any): any; - - /** - * Returns an array of all properties (enumerable or not) found directly on a given - * object. - * - * @param {any} object - The Object to return a list of property names for - * @returns {any} An array of the Object's own properties - * @url http://www.espruino.com/Reference#l_Object_getOwnPropertyNames - */ - getOwnPropertyNames(object: any): any; - - /** - * Return all enumerable values of the given object - * - * @param {any} object - The object to return values for - * @returns {any} An array of values - one for each key on the given object - * @url http://www.espruino.com/Reference#l_Object_values - */ - values(object: any): any; - - /** - * Return all enumerable keys and values of the given object - * - * @param {any} object - The object to return values for - * @returns {any} An array of `[key,value]` pairs - one for each key on the given object - * @url http://www.espruino.com/Reference#l_Object_entries - */ - entries(object: any): any; - - /** - * Creates a new object with the specified prototype object and properties. - * properties are currently unsupported. - * - * @param {any} proto - A prototype object - * @param {any} propertiesObject - An object containing properties. NOT IMPLEMENTED - * @returns {any} A new object - * @url http://www.espruino.com/Reference#l_Object_create - */ - create(proto: any, propertiesObject: any): any; - - /** - * Get information on the given property in the object, or undefined - * - * @param {any} obj - The object - * @param {any} name - The name of the property - * @returns {any} An object with a description of the property. The values of writable/enumerable/configurable may not be entirely correct due to Espruino's implementation. - * @url http://www.espruino.com/Reference#l_Object_getOwnPropertyDescriptor - */ - getOwnPropertyDescriptor(obj: any, name: any): any; - - /** - * Add a new property to the Object. 'Desc' is an object with the following fields: - * * `configurable` (bool = false) - can this property be changed/deleted (not - * implemented) - * * `enumerable` (bool = false) - can this property be enumerated (not - * implemented) - * * `value` (anything) - the value of this property - * * `writable` (bool = false) - can the value be changed with the assignment - * operator? - * * `get` (function) - the getter function, or undefined if no getter (only - * supported on some platforms) - * * `set` (function) - the setter function, or undefined if no setter (only - * supported on some platforms) - * **Note:** `configurable`, `enumerable` and `writable` are not implemented and - * will be ignored. - * - * @param {any} obj - An object - * @param {any} name - The name of the property - * @param {any} desc - The property descriptor - * @returns {any} The object, obj. - * @url http://www.espruino.com/Reference#l_Object_defineProperty - */ - defineProperty(obj: any, name: any, desc: any): any; - - /** - * Adds new properties to the Object. See `Object.defineProperty` for more - * information - * - * @param {any} obj - An object - * @param {any} props - An object whose fields represent property names, and whose values are property descriptors. - * @returns {any} The object, obj. - * @url http://www.espruino.com/Reference#l_Object_defineProperties - */ - defineProperties(obj: any, props: any): any; - - /** - * Get the prototype of the given object - this is like writing `object.__proto__` - * but is the 'proper' ES6 way of doing it - * - * @param {any} object - An object - * @returns {any} The prototype - * @url http://www.espruino.com/Reference#l_Object_getPrototypeOf - */ - getPrototypeOf(object: any): any; - - /** - * Set the prototype of the given object - this is like writing `object.__proto__ = - * prototype` but is the 'proper' ES6 way of doing it - * - * @param {any} object - An object - * @param {any} prototype - The prototype to set on the object - * @returns {any} The object passed in - * @url http://www.espruino.com/Reference#l_Object_setPrototypeOf - */ - setPrototypeOf(object: any, prototype: any): any; - - /** - * Appends all keys and values in any subsequent objects to the first object - * **Note:** Unlike the standard ES6 `Object.assign`, this will throw an exception - * if given raw strings, bools or numbers rather than objects. - * - * @param {any} args - The target object, then any items objects to use as sources of keys - * @returns {any} The target object - * @url http://www.espruino.com/Reference#l_Object_assign - */ - assign(...args: any[]): any; - - /** - * Creates an Object from the supplied argument - * @constructor - * - * @param {any} value - A single value to be converted to an object - * @returns {any} An Object - * @url http://www.espruino.com/Reference#l_Object_Object - */ - new(value: any): any; -} - -interface Object { - /** - * Find the length of the object - * @returns {any} The length of the object - * @url http://www.espruino.com/Reference#l_Object_length - */ - length: any; - - /** - * Returns the primitive value of this object. - * @returns {any} The primitive value of this object - * @url http://www.espruino.com/Reference#l_Object_valueOf - */ - valueOf(): any; - - /** - * Convert the Object to a string - * - * @param {any} radix - If the object is an integer, the radix (between 2 and 36) to use. NOTE: Setting a radix does not work on floating point numbers. - * @returns {any} A String representing the object - * @url http://www.espruino.com/Reference#l_Object_toString - */ - toString(radix: any): any; - - /** - * Copy this object completely - * @returns {any} A copy of this Object - * @url http://www.espruino.com/Reference#l_Object_clone - */ - clone(): any; - - /** - * Return true if the object (not its prototype) has the given property. - * NOTE: This currently returns false-positives for built-in functions in - * prototypes - * - * @param {any} name - The name of the property to search for - * @returns {boolean} True if it exists, false if it doesn't - * @url http://www.espruino.com/Reference#l_Object_hasOwnProperty - */ - hasOwnProperty(name: any): boolean; - - /** - * Register an event listener for this object, for instance `Serial1.on('data', - * function(d) {...})`. - * This is the same as Node.js's [EventEmitter](https://nodejs.org/api/events.html) - * but on Espruino the functionality is built into every object: - * * `Object.on` - * * `Object.emit` - * * `Object.removeListener` - * * `Object.removeAllListeners` - * ``` - * var o = {}; // o can be any object... - * // call an arrow function when the 'answer' event is received - * o.on('answer', x => console.log(x)); - * // call a named function when the 'answer' event is received - * function printAnswer(d) { - * console.log("The answer is", d); - * } - * o.on('answer', printAnswer); - * // emit the 'answer' event - functions added with 'on' will be executed - * o.emit('answer', 42); - * // prints: 42 - * // prints: The answer is 42 - * // If you have a named function, it can be removed by name - * o.removeListener('answer', printAnswer); - * // Now 'printAnswer' is removed - * o.emit('answer', 43); - * // prints: 43 - * // Or you can remove all listeners for 'answer' - * o.removeAllListeners('answer') - * // Now nothing happens - * o.emit('answer', 44); - * // nothing printed - * ``` - * - * @param {any} event - The name of the event, for instance 'data' - * @param {any} listener - The listener to call when this event is received - * @url http://www.espruino.com/Reference#l_Object_on - */ - on(event: any, listener: any): void; - - /** - * Call any event listeners that were added to this object with `Object.on`, for - * instance `obj.emit('data', 'Foo')`. - * For more information see `Object.on` - * - * @param {any} event - The name of the event, for instance 'data' - * @param {any} args - Optional arguments - * @url http://www.espruino.com/Reference#l_Object_emit - */ - emit(event: any, ...args: any[]): void; - - /** - * Removes the specified event listener. - * ``` - * function foo(d) { - * console.log(d); - * } - * Serial1.on("data", foo); - * Serial1.removeListener("data", foo); - * ``` - * For more information see `Object.on` - * - * @param {any} event - The name of the event, for instance 'data' - * @param {any} listener - The listener to remove - * @url http://www.espruino.com/Reference#l_Object_removeListener - */ - removeListener(event: any, listener: any): void; - - /** - * Removes all listeners (if `event===undefined`), or those of the specified event. - * ``` - * Serial1.on("data", function(data) { ... }); - * Serial1.removeAllListeners("data"); - * // or - * Serial1.removeAllListeners(); // removes all listeners for all event types - * ``` - * For more information see `Object.on` - * - * @param {any} event - The name of the event, for instance `'data'`. If not specified *all* listeners are removed. - * @url http://www.espruino.com/Reference#l_Object_removeAllListeners - */ - removeAllListeners(event: any): void; -} - -/** - * This is the built-in class for Objects - * @url http://www.espruino.com/Reference#Object - */ -declare const Object: ObjectConstructor - -interface FunctionConstructor { - /** - * Creates a function - * @constructor - * - * @param {any} args - Zero or more arguments (as strings), followed by a string representing the code to run - * @returns {any} A Number object - * @url http://www.espruino.com/Reference#l_Function_Function - */ - new(...args: any[]): any; -} - -interface Function { - /** - * This replaces the function with the one in the argument - while keeping the old - * function's scope. This allows inner functions to be edited, and is used when - * edit() is called on an inner function. - * - * @param {any} newFunc - The new function to replace this function with - * @url http://www.espruino.com/Reference#l_Function_replaceWith - */ - replaceWith(newFunc: any): void; - - /** - * This executes the function with the supplied 'this' argument and parameters - * - * @param {any} this - The value to use as the 'this' argument when executing the function - * @param {any} params - Optional Parameters - * @returns {any} The return value of executing this function - * @url http://www.espruino.com/Reference#l_Function_call - */ - call(this: any, ...params: any[]): any; - - /** - * This executes the function with the supplied 'this' argument and parameters - * - * @param {any} this - The value to use as the 'this' argument when executing the function - * @param {any} args - Optional Array of Arguments - * @returns {any} The return value of executing this function - * @url http://www.espruino.com/Reference#l_Function_apply - */ - apply(this: any, args: any): any; - - /** - * This executes the function with the supplied 'this' argument and parameters - * - * @param {any} this - The value to use as the 'this' argument when executing the function - * @param {any} params - Optional Default parameters that are prepended to the call - * @returns {any} The 'bound' function - * @url http://www.espruino.com/Reference#l_Function_bind - */ - bind(this: any, ...params: any[]): any; -} - -/** - * This is the built-in class for Functions - * @url http://www.espruino.com/Reference#Function - */ -declare const Function: FunctionConstructor - /** * This is the built-in JavaScript class for Espruino utility functions. * @url http://www.espruino.com/Reference#E */ declare class E { + /** + * Display a menu on the screen, and set up the buttons to navigate through it. + * Supply an object containing menu items. When an item is selected, the function + * it references will be executed. For example: + * ``` + * var boolean = false; + * var number = 50; + * // First menu + * var mainmenu = { + * "" : { "title" : "-- Main Menu --" }, + * "Backlight On" : function() { LED1.set(); }, + * "Backlight Off" : function() { LED1.reset(); }, + * "Submenu" : function() { E.showMenu(submenu); }, + * "A Boolean" : { + * value : boolean, + * format : v => v?"On":"Off", + * onchange : v => { boolean=v; } + * }, + * "A Number" : { + * value : number, + * min:0,max:100,step:10, + * onchange : v => { number=v; } + * }, + * "Exit" : function() { E.showMenu(); }, // remove the menu + * }; + * // Submenu + * var submenu = { + * "" : { title : "-- SubMenu --", + * back : function() { E.showMenu(mainmenu); } }, + * "One" : undefined, // do nothing + * "Two" : undefined // do nothing + * }; + * // Actually display the menu + * E.showMenu(mainmenu); + * ``` + * The menu will stay onscreen and active until explicitly removed, which you can + * do by calling `E.showMenu()` without arguments. + * See http://www.espruino.com/graphical_menu for more detailed information. + * + * @param {any} menu - An object containing name->function mappings to to be used in a menu + * @returns {any} A menu object with `draw`, `move` and `select` functions + * @url http://www.espruino.com/Reference#l_E_showMenu + */ + static showMenu(menu: Menu): MenuInstance; + static showMenu(): void; + + /** + * A utility function for displaying a full screen message on the screen. + * Draws to the screen and returns immediately. + * ``` + * E.showMessage("These are\nLots of\nLines","My Title") + * ``` + * + * @param {any} message - A message to display. Can include newlines + * @param {any} [title] - [optional] a title for the message + * @url http://www.espruino.com/Reference#l_E_showMessage + */ + static showMessage(message: string, title?: string): void; + + /** + * Displays a full screen prompt on the screen, with the buttons requested (or + * `Yes` and `No` for defaults). + * When the button is pressed the promise is resolved with the requested values + * (for the `Yes` and `No` defaults, `true` and `false` are returned). + * ``` + * E.showPrompt("Do you like fish?").then(function(v) { + * if (v) print("'Yes' chosen"); + * else print("'No' chosen"); + * }); + * // Or + * E.showPrompt("How many fish\ndo you like?",{ + * title:"Fish", + * buttons : {"One":1,"Two":2,"Three":3} + * }).then(function(v) { + * print("You like "+v+" fish"); + * }); + * ``` + * To remove the prompt, call `E.showPrompt()` with no arguments. + * The second `options` argument can contain: + * ``` + * { + * title: "Hello", // optional Title + * buttons : {"Ok":true,"Cancel":false} // list of button text & return value + * } + * ``` + * + * @param {any} message - A message to display. Can include newlines + * @param {any} [options] - [optional] an object of options (see below) + * @returns {any} A promise that is resolved when 'Ok' is pressed + * @url http://www.espruino.com/Reference#l_E_showPrompt + */ + static showPrompt(message: string, options?: { title?: string, buttons?: { [key: string]: T } }): Promise; + static showPrompt(): void; + + /** + * Displays a full screen prompt on the screen, with a single 'Ok' button. + * When the button is pressed the promise is resolved. + * ``` + * E.showAlert("Hello").then(function() { + * print("Ok pressed"); + * }); + * // or + * E.showAlert("These are\nLots of\nLines","My Title").then(function() { + * print("Ok pressed"); + * }); + * ``` + * To remove the window, call `E.showAlert()` with no arguments. + * + * @param {any} message - A message to display. Can include newlines + * @param {any} [options] - [optional] a title for the message + * @returns {any} A promise that is resolved when 'Ok' is pressed + * @url http://www.espruino.com/Reference#l_E_showAlert + */ + static showAlert(message?: string, options?: string): Promise; + /** * Setup the filesystem so that subsequent calls to `E.openFile` and * `require('fs').*` will use an SD card on the supplied SPI device and pin. @@ -8497,174 +7393,15 @@ declare class E { * format once, as each will erase the content. * `E.flashFatFS({ addr:0x300000,sectors:100,format:true });` * - * @param {any} options - * An optional object `{ addr : int=0x300000, sectors : int=256, format : bool=false }` + * @param {any} [options] + * [optional] An object `{ addr : int=0x300000, sectors : int=256, format : bool=false }` * addr : start address in flash * sectors: number of sectors to use * format: Format the media * @returns {boolean} True on success, or false on failure * @url http://www.espruino.com/Reference#l_E_flashFatFS */ - static flashFatFS(options: any): boolean; - - /** - * Display a menu on the screen, and set up the buttons to navigate through it. - * Supply an object containing menu items. When an item is selected, the function - * it references will be executed. For example: - * ``` - * var boolean = false; - * var number = 50; - * // First menu - * var mainmenu = { - * "" : { "title" : "-- Main Menu --" }, - * "Backlight On" : function() { LED1.set(); }, - * "Backlight Off" : function() { LED1.reset(); }, - * "Submenu" : function() { E.showMenu(submenu); }, - * "A Boolean" : { - * value : boolean, - * format : v => v?"On":"Off", - * onchange : v => { boolean=v; } - * }, - * "A Number" : { - * value : number, - * min:0,max:100,step:10, - * onchange : v => { number=v; } - * }, - * "Exit" : function() { E.showMenu(); }, // remove the menu - * }; - * // Submenu - * var submenu = { - * "" : { title : "-- SubMenu --", - * back : function() { E.showMenu(mainmenu); } }, - * "One" : undefined, // do nothing - * "Two" : undefined // do nothing - * }; - * // Actually display the menu - * E.showMenu(mainmenu); - * ``` - * The menu will stay onscreen and active until explicitly removed, which you can - * do by calling `E.showMenu()` without arguments. - * See http://www.espruino.com/graphical_menu for more detailed information. - * - * @param {any} menu - An object containing name->function mappings to to be used in a menu - * @returns {any} A menu object with `draw`, `move` and `select` functions - * @url http://www.espruino.com/Reference#l_E_showMenu - */ - static showMenu(menu: Menu): MenuInstance; - static showMenu(): void; - - /** - * A utility function for displaying a full screen message on the screen. - * Draws to the screen and returns immediately. - * ``` - * E.showMessage("These are\nLots of\nLines","My Title") - * ``` - * - * @param {any} message - A message to display. Can include newlines - * @param {any} title - (optional) a title for the message - * @url http://www.espruino.com/Reference#l_E_showMessage - */ - static showMessage(message: string, title?: string): void; - - /** - * Displays a full screen prompt on the screen, with the buttons requested (or - * `Yes` and `No` for defaults). - * When the button is pressed the promise is resolved with the requested values - * (for the `Yes` and `No` defaults, `true` and `false` are returned). - * ``` - * E.showPrompt("Do you like fish?").then(function(v) { - * if (v) print("'Yes' chosen"); - * else print("'No' chosen"); - * }); - * // Or - * E.showPrompt("How many fish\ndo you like?",{ - * title:"Fish", - * buttons : {"One":1,"Two":2,"Three":3} - * }).then(function(v) { - * print("You like "+v+" fish"); - * }); - * ``` - * To remove the prompt, call `E.showPrompt()` with no arguments. - * The second `options` argument can contain: - * ``` - * { - * title: "Hello", // optional Title - * buttons : {"Ok":true,"Cancel":false} // list of button text & return value - * } - * ``` - * - * @param {any} message - A message to display. Can include newlines - * @param {any} options - (optional) an object of options (see below) - * @returns {any} A promise that is resolved when 'Ok' is pressed - * @url http://www.espruino.com/Reference#l_E_showPrompt - */ - static showPrompt(message: string, options?: { title?: string, buttons?: { [key: string]: T } }): Promise; - static showPrompt(): void; - - /** - * Displays a full screen prompt on the screen, with a single 'Ok' button. - * When the button is pressed the promise is resolved. - * ``` - * E.showAlert("Hello").then(function() { - * print("Ok pressed"); - * }); - * // or - * E.showAlert("These are\nLots of\nLines","My Title").then(function() { - * print("Ok pressed"); - * }); - * ``` - * To remove the window, call `E.showAlert()` with no arguments. - * - * @param {any} message - A message to display. Can include newlines - * @param {any} options - (optional) a title for the message - * @returns {any} A promise that is resolved when 'Ok' is pressed - * @url http://www.espruino.com/Reference#l_E_showAlert - */ - static showAlert(message?: string, options?: string): Promise; - - /** - * Called when a notification arrives on an Apple iOS device Bangle.js is connected - * to - * ``` - * { - * event:"add", - * uid:42, - * category:4, - * categoryCnt:42, - * silent:true, - * important:false, - * preExisting:true, - * positive:false, - * negative:true - * } - * ``` - * You can then get more information with something like: - * ``` - * NRF.ancsGetNotificationInfo( event.uid ).then(a=>print("Notify",E.toJS(a))); - * ``` - * @param {string} event - The event to listen to. - * @param {(info: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `info` An object (see below) - * @url http://www.espruino.com/Reference#l_E_ANCS - */ - static on(event: "ANCS", callback: (info: any) => void): void; - - /** - * Called when a media event arrives on an Apple iOS device Bangle.js is connected - * to - * ``` - * { - * id : "artist"/"album"/"title"/"duration", - * value : "Some text", - * truncated : bool // the 'value' was too big to be sent completely - * } - * ``` - * @param {string} event - The event to listen to. - * @param {(info: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `info` An object (see below) - * @url http://www.espruino.com/Reference#l_E_AMS - */ - static on(event: "AMS", callback: (info: any) => void): void; + static flashFatFS(options?: any): boolean; /** * Display a menu on the screen, and set up the buttons to navigate through it. @@ -8708,6 +7445,8 @@ declare class E { * * The options object can contain: * * `back : function() { }` - add a 'back' button, with the function called when * it is pressed + * * `remove : function() { }` - add a handler function to be called when the + * menu is removed * * (Bangle.js 2) `scroll : int` - an integer specifying how much the initial * menu should be scrolled by * * The object returned by `E.showMenu` contains: @@ -8752,7 +7491,7 @@ declare class E { * ``` * * @param {any} message - A message to display. Can include newlines - * @param {any} options - (optional) a title for the message, or an object of options `{title:string, img:image_string}` + * @param {any} [options] - [optional] a title for the message, or an object of options `{title:string, img:image_string}` * @url http://www.espruino.com/Reference#l_E_showMessage */ static showMessage(message: string, title?: string | { title?: string, img?: string }): void; @@ -8789,15 +7528,16 @@ declare class E { * title: "Hello", // optional Title * buttons : {"Ok":true,"Cancel":false}, // optional list of button text & return value * img: "image_string" // optional image string to draw + * remove: function() { } // Bangle.js: optional function to be called when the prompt is removed * } * ``` * * @param {any} message - A message to display. Can include newlines - * @param {any} options - (optional) an object of options (see below) + * @param {any} [options] - [optional] an object of options (see below) * @returns {any} A promise that is resolved when 'Ok' is pressed * @url http://www.espruino.com/Reference#l_E_showPrompt */ - static showPrompt(message: string, options?: { title?: string, buttons?: { [key: string]: T } }): Promise; + static showPrompt(message: string, options?: { title?: string, buttons?: { [key: string]: T }, image?: string, remove?: () => void }): Promise; static showPrompt(): void; /** @@ -8810,10 +7550,13 @@ declare class E { * c : 10, // number of menu items * // a function to draw a menu item * draw : function(idx, rect) { ... } - * // a function to call when the item is selected - * select : function(idx) { ... } + * // a function to call when the item is selected, touch parameter is only relevant + * // for Bangle.js 2 and contains the coordinates touched inside the selected item + * select : function(idx, touch) { ... } * // optional function to be called when 'back' is tapped * back : function() { ...} + * // Bangle.js: optional function to be called when the scroller should be removed + * remove : function() {} * } * ``` * For example to display a list of numbers: @@ -8829,11 +7572,11 @@ declare class E { * ``` * To remove the scroller, just call `E.showScroller()` * - * @param {any} options - An object containing `{ h, c, draw, select }` (see below) + * @param {any} options - An object containing `{ h, c, draw, select, back, remove }` (see below) * @returns {any} A menu object with `draw()` and `drawItem(itemNo)` functions * @url http://www.espruino.com/Reference#l_E_showScroller */ - static showScroller(options?: { h: number, c: number, draw: (idx: number, rect: { x: number, y: number, w: number, h: number }) => void, select: (idx: number) => void, back?: () => void }): { draw: () => void, drawItem: (itemNo: number) => void }; + static showScroller(options?: { h: number, c: number, draw: (idx: number, rect: { x: number, y: number, w: number, h: number }) => void, select: (idx: number, touch?: {x: number, y: number}) => void, back?: () => void, remove?: () => void }): { draw: () => void, drawItem: (itemNo: number) => void }; static showScroller(): void; /** @@ -8871,11 +7614,58 @@ declare class E { * To remove the window, call `E.showAlert()` with no arguments. * * @param {any} message - A message to display. Can include newlines - * @param {any} options - (optional) a title for the message + * @param {any} [options] - [optional] a title for the message or an object containing options * @returns {any} A promise that is resolved when 'Ok' is pressed * @url http://www.espruino.com/Reference#l_E_showAlert */ static showAlert(message?: string, options?: string): Promise; + static showAlert(message?: string, options?: { title?: string, remove?: () => void }): Promise; + + /** + * Called when a notification arrives on an Apple iOS device Bangle.js is connected + * to + * ``` + * { + * event:"add", + * uid:42, + * category:4, + * categoryCnt:42, + * silent:true, + * important:false, + * preExisting:true, + * positive:false, + * negative:true + * } + * ``` + * You can then get more information with `NRF.ancsGetNotificationInfo`, for instance: + * ``` + * E.on('ANCS', event => { + * NRF.ancsGetNotificationInfo( event.uid ).then(a=>print("Notify",E.toJS(a))); + * }); + * ``` + * @param {string} event - The event to listen to. + * @param {(info: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `info` An object (see below) + * @url http://www.espruino.com/Reference#l_E_ANCS + */ + static on(event: "ANCS", callback: (info: any) => void): void; + + /** + * Called when a media event arrives on an Apple iOS device Bangle.js is connected + * to + * ``` + * { + * id : "artist"/"album"/"title"/"duration", + * value : "Some text", + * truncated : bool // the 'value' was too big to be sent completely + * } + * ``` + * @param {string} event - The event to listen to. + * @param {(info: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `info` An object (see below) + * @url http://www.espruino.com/Reference#l_E_AMS + */ + static on(event: "AMS", callback: (info: any) => void): void; /** * This event is called right after the board starts up, and has a similar effect @@ -9081,12 +7871,13 @@ declare class E { * // Espruino will now reset if everything_ok is false, * // or if the interval fails to be called * ``` - * **NOTE:** This is only implemented on STM32 and nRF5x devices (all official + * **NOTE:** This is only implemented on STM32, nRF5x and ESP32 devices (all official * Espruino boards). * **NOTE:** On STM32 (Pico, WiFi, Original) with `setDeepSleep(1)` you need to * explicitly wake Espruino up with an interval of less than the watchdog timeout * or the watchdog will fire and the board will reboot. You can do this with * `setInterval("", time_in_milliseconds)`. + * **NOTE:** On ESP32, the timeout will be rounded to the nearest second. * * @param {number} timeout - The timeout in seconds before a watchdog reset * @param {any} isAuto - If undefined or true, the watchdog is kicked automatically. If not, you must call `E.kickWatchdog()` yourself @@ -9153,8 +7944,8 @@ declare class E { * * @param {any} source - The source file/stream that will send content. * @param {any} destination - The destination file/stream that will receive content from the source. - * @param {any} options - * An optional object `{ chunkSize : int=64, end : bool=true, complete : function }` + * @param {any} [options] + * [optional] An object `{ chunkSize : int=64, end : bool=true, complete : function }` * chunkSize : The amount of data to pipe from source to destination at a time * complete : a function to call when the pipe activity is complete * end : call the 'end' function on the destination when the source is finished @@ -9326,7 +8117,7 @@ declare class E { * ``` * * @param {any} device - * @param {any} options - (optional) object of options, see below + * @param {any} [options] - [optional] object of options, see below * @url http://www.espruino.com/Reference#l_E_setConsole */ static setConsole(device: "Serial1" | "USB" | "Bluetooth" | "Telnet" | "Terminal" | Serial | null, options?: { force?: boolean }): void; @@ -9534,20 +8325,23 @@ declare class E { * Convert hue, saturation and brightness to red, green and blue (packed into an * integer if `asArray==false` or an array if `asArray==true`). * This replaces `Graphics.setColorHSB` and `Graphics.setBgColorHSB`. On devices - * with 24 bit colour it can be used as: `Graphics.setColor(E.HSBtoRGB(h, s, b))` + * with 24 bit colour it can be used as: `Graphics.setColor(E.HSBtoRGB(h, s, b))`, + * or on devices with 26 bit colour use `Graphics.setColor(E.HSBtoRGB(h, s, b, 16))` * You can quickly set RGB items in an Array or Typed Array using - * `array.set(E.HSBtoRGB(h, s, b,true), offset)`, which can be useful with arrays + * `array.set(E.HSBtoRGB(h, s, b, true), offset)`, which can be useful with arrays * used with `require("neopixel").write`. * * @param {number} hue - The hue, as a value between 0 and 1 * @param {number} sat - The saturation, as a value between 0 and 1 * @param {number} bri - The brightness, as a value between 0 and 1 - * @param {boolean} asArray - If true, return an array of [R,G,B] values betwen 0 and 255 + * @param {number} format - If `true` or `1`, return an array of [R,G,B] values betwen 0 and 255. If `16`, return a 16 bit number. `undefined`/`24` is the same as normal (returning a 24 bit number) * @returns {any} A 24 bit number containing bytes representing red, green, and blue `0xBBGGRR`. Or if `asArray` is true, an array `[R,G,B]` * @url http://www.espruino.com/Reference#l_E_HSBtoRGB */ - static HSBtoRGB(hue: number, sat: number, bri: number, asArray?: false): number; - static HSBtoRGB(hue: number, sat: number, bri: number, asArray: true): [number, number, number]; + static HSBtoRGB(hue: number, sat: number, bri: number, format?: false): number; + static HSBtoRGB(hue: number, sat: number, bri: number, format: 16): number; + static HSBtoRGB(hue: number, sat: number, bri: number, format: 24): number; + static HSBtoRGB(hue: number, sat: number, bri: number, format: true): [number, number, number]; /** * Set a password on the console (REPL). When powered on, Espruino will then demand @@ -9789,158 +8583,678 @@ declare class E { static decodeUTF8(str: string, lookup: string[], replaceFn: string | ((charCode: number) => string)): string; -} - -interface consoleConstructor { - /** - * Print the supplied string(s) to the console - * **Note:** If you're connected to a computer (not a wall adaptor) via USB but - * **you are not running a terminal app** then when you print data Espruino may - * pause execution and wait until the computer requests the data it is trying to - * print. - * - * @param {any} text - One or more arguments to print - * @url http://www.espruino.com/Reference#l_console_log - */ - log(...text: any[]): void; -} - -interface console { - } /** - * An Object that contains functions for writing to the interactive console - * @url http://www.espruino.com/Reference#console + * This class provides a software-defined OneWire master. It is designed to be + * similar to Arduino's OneWire library. + * @url http://www.espruino.com/Reference#OneWire */ -declare const console: consoleConstructor - -interface ErrorConstructor { +declare class OneWire { /** - * Creates an Error object + * Create a software OneWire implementation on the given pin * @constructor * - * @param {any} message - An optional message string - * @returns {any} An Error object - * @url http://www.espruino.com/Reference#l_Error_Error + * @param {Pin} pin - The pin to implement OneWire on + * @returns {any} A OneWire object + * @url http://www.espruino.com/Reference#l_OneWire_OneWire */ - new(message?: string): Error; + static new(pin: Pin): any; + + /** + * Perform a reset cycle + * @returns {boolean} True is a device was present (it held the bus low) + * @url http://www.espruino.com/Reference#l_OneWire_reset + */ + reset(): boolean; + + /** + * Select a ROM - always performs a reset first + * + * @param {any} rom - The device to select (get this using `OneWire.search()`) + * @url http://www.espruino.com/Reference#l_OneWire_select + */ + select(rom: any): void; + + /** + * Skip a ROM + * @url http://www.espruino.com/Reference#l_OneWire_skip + */ + skip(): void; + + /** + * Write one or more bytes + * + * @param {any} data - A byte (or array of bytes) to write + * @param {boolean} power - Whether to leave power on after write (default is false) + * @url http://www.espruino.com/Reference#l_OneWire_write + */ + write(data: any, power: boolean): void; + + /** + * Read a byte + * + * @param {any} [count] - [optional] The amount of bytes to read + * @returns {any} The byte that was read, or a Uint8Array if count was specified and >=0 + * @url http://www.espruino.com/Reference#l_OneWire_read + */ + read(count?: any): any; + + /** + * Search for devices + * + * @param {number} command - (Optional) command byte. If not specified (or zero), this defaults to 0xF0. This can could be set to 0xEC to perform a DS18B20 'Alarm Search Command' + * @returns {any} An array of devices that were found + * @url http://www.espruino.com/Reference#l_OneWire_search + */ + search(command: number): any; } -interface Error { +interface ObjectConstructor { /** - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_Error_toString + * Return all enumerable keys of the given object + * + * @param {any} object - The object to return keys for + * @returns {any} An array of strings - one for each key on the given object + * @url http://www.espruino.com/Reference#l_Object_keys */ - toString(): string; -} + keys(object: any): Array; -/** - * The base class for runtime errors - * @url http://www.espruino.com/Reference#Error - */ -declare const Error: ErrorConstructor - -interface SyntaxErrorConstructor { /** - * Creates a SyntaxError object + * Returns an array of all properties (enumerable or not) found directly on a given + * object. + * + * @param {any} object - The Object to return a list of property names for + * @returns {any} An array of the Object's own properties + * @url http://www.espruino.com/Reference#l_Object_getOwnPropertyNames + */ + getOwnPropertyNames(object: any): Array; + + /** + * Return all enumerable values of the given object + * + * @param {any} object - The object to return values for + * @returns {any} An array of values - one for each key on the given object + * @url http://www.espruino.com/Reference#l_Object_values + */ + values(object: any): Array; + + /** + * Return all enumerable keys and values of the given object + * + * @param {any} object - The object to return values for + * @returns {any} An array of `[key,value]` pairs - one for each key on the given object + * @url http://www.espruino.com/Reference#l_Object_entries + */ + entries(object: any): Array<[string, any]>; + + /** + * Creates a new object with the specified prototype object and properties. + * properties are currently unsupported. + * + * @param {any} proto - A prototype object + * @param {any} propertiesObject - An object containing properties. NOT IMPLEMENTED + * @returns {any} A new object + * @url http://www.espruino.com/Reference#l_Object_create + */ + create(proto: any, propertiesObject: any): any; + + /** + * Get information on the given property in the object, or undefined + * + * @param {any} obj - The object + * @param {any} name - The name of the property + * @returns {any} An object with a description of the property. The values of writable/enumerable/configurable may not be entirely correct due to Espruino's implementation. + * @url http://www.espruino.com/Reference#l_Object_getOwnPropertyDescriptor + */ + getOwnPropertyDescriptor(obj: any, name: any): any; + + /** + * Add a new property to the Object. 'Desc' is an object with the following fields: + * * `configurable` (bool = false) - can this property be changed/deleted (not + * implemented) + * * `enumerable` (bool = false) - can this property be enumerated (not + * implemented) + * * `value` (anything) - the value of this property + * * `writable` (bool = false) - can the value be changed with the assignment + * operator? + * * `get` (function) - the getter function, or undefined if no getter (only + * supported on some platforms) + * * `set` (function) - the setter function, or undefined if no setter (only + * supported on some platforms) + * **Note:** `configurable`, `enumerable` and `writable` are not implemented and + * will be ignored. + * + * @param {any} obj - An object + * @param {any} name - The name of the property + * @param {any} desc - The property descriptor + * @returns {any} The object, obj. + * @url http://www.espruino.com/Reference#l_Object_defineProperty + */ + defineProperty(obj: any, name: any, desc: any): any; + + /** + * Adds new properties to the Object. See `Object.defineProperty` for more + * information + * + * @param {any} obj - An object + * @param {any} props - An object whose fields represent property names, and whose values are property descriptors. + * @returns {any} The object, obj. + * @url http://www.espruino.com/Reference#l_Object_defineProperties + */ + defineProperties(obj: any, props: any): any; + + /** + * Get the prototype of the given object - this is like writing `object.__proto__` + * but is the 'proper' ES6 way of doing it + * + * @param {any} object - An object + * @returns {any} The prototype + * @url http://www.espruino.com/Reference#l_Object_getPrototypeOf + */ + getPrototypeOf(object: any): any; + + /** + * Set the prototype of the given object - this is like writing `object.__proto__ = + * prototype` but is the 'proper' ES6 way of doing it + * + * @param {any} object - An object + * @param {any} prototype - The prototype to set on the object + * @returns {any} The object passed in + * @url http://www.espruino.com/Reference#l_Object_setPrototypeOf + */ + setPrototypeOf(object: any, prototype: any): any; + + /** + * Appends all keys and values in any subsequent objects to the first object + * **Note:** Unlike the standard ES6 `Object.assign`, this will throw an exception + * if given raw strings, bools or numbers rather than objects. + * + * @param {any} args - The target object, then any items objects to use as sources of keys + * @returns {any} The target object + * @url http://www.espruino.com/Reference#l_Object_assign + */ + assign(...args: any[]): any; + + /** + * Creates an Object from the supplied argument * @constructor * - * @param {any} message - An optional message string - * @returns {any} A SyntaxError object - * @url http://www.espruino.com/Reference#l_SyntaxError_SyntaxError + * @param {any} value - A single value to be converted to an object + * @returns {any} An Object + * @url http://www.espruino.com/Reference#l_Object_Object */ - new(message?: string): SyntaxError; + new(value: any): any; } -interface SyntaxError { +interface Object { /** - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_SyntaxError_toString + * Find the length of the object + * @returns {any} The length of the object + * @url http://www.espruino.com/Reference#l_Object_length */ - toString(): string; + length: any; + + /** + * Returns the primitive value of this object. + * @returns {any} The primitive value of this object + * @url http://www.espruino.com/Reference#l_Object_valueOf + */ + valueOf(): any; + + /** + * Convert the Object to a string + * + * @param {any} [radix] - [optional] If the object is an integer, the radix (between 2 and 36) to use. NOTE: Setting a radix does not work on floating point numbers. + * @returns {any} A String representing the object + * @url http://www.espruino.com/Reference#l_Object_toString + */ + toString(radix?: any): string; + + /** + * Copy this object completely + * @returns {any} A copy of this Object + * @url http://www.espruino.com/Reference#l_Object_clone + */ + clone(): any; + + /** + * Return true if the object (not its prototype) has the given property. + * NOTE: This currently returns false-positives for built-in functions in + * prototypes + * + * @param {any} name - The name of the property to search for + * @returns {boolean} True if it exists, false if it doesn't + * @url http://www.espruino.com/Reference#l_Object_hasOwnProperty + */ + hasOwnProperty(name: any): boolean; + + /** + * Register an event listener for this object, for instance `Serial1.on('data', + * function(d) {...})`. + * This is the same as Node.js's [EventEmitter](https://nodejs.org/api/events.html) + * but on Espruino the functionality is built into every object: + * * `Object.on` + * * `Object.emit` + * * `Object.removeListener` + * * `Object.removeAllListeners` + * ``` + * var o = {}; // o can be any object... + * // call an arrow function when the 'answer' event is received + * o.on('answer', x => console.log(x)); + * // call a named function when the 'answer' event is received + * function printAnswer(d) { + * console.log("The answer is", d); + * } + * o.on('answer', printAnswer); + * // emit the 'answer' event - functions added with 'on' will be executed + * o.emit('answer', 42); + * // prints: 42 + * // prints: The answer is 42 + * // If you have a named function, it can be removed by name + * o.removeListener('answer', printAnswer); + * // Now 'printAnswer' is removed + * o.emit('answer', 43); + * // prints: 43 + * // Or you can remove all listeners for 'answer' + * o.removeAllListeners('answer') + * // Now nothing happens + * o.emit('answer', 44); + * // nothing printed + * ``` + * + * @param {any} event - The name of the event, for instance 'data' + * @param {any} listener - The listener to call when this event is received + * @url http://www.espruino.com/Reference#l_Object_on + */ + on(event: any, listener: any): void; + + /** + * Call any event listeners that were added to this object with `Object.on`, for + * instance `obj.emit('data', 'Foo')`. + * For more information see `Object.on` + * + * @param {any} event - The name of the event, for instance 'data' + * @param {any} args - Optional arguments + * @url http://www.espruino.com/Reference#l_Object_emit + */ + emit(event: any, ...args: any[]): void; + + /** + * Removes the specified event listener. + * ``` + * function foo(d) { + * console.log(d); + * } + * Serial1.on("data", foo); + * Serial1.removeListener("data", foo); + * ``` + * For more information see `Object.on` + * + * @param {any} event - The name of the event, for instance 'data' + * @param {any} listener - The listener to remove + * @url http://www.espruino.com/Reference#l_Object_removeListener + */ + removeListener(event: any, listener: any): void; + + /** + * Removes all listeners (if `event===undefined`), or those of the specified event. + * ``` + * Serial1.on("data", function(data) { ... }); + * Serial1.removeAllListeners("data"); + * // or + * Serial1.removeAllListeners(); // removes all listeners for all event types + * ``` + * For more information see `Object.on` + * + * @param {any} event - The name of the event, for instance `'data'`. If not specified *all* listeners are removed. + * @url http://www.espruino.com/Reference#l_Object_removeAllListeners + */ + removeAllListeners(event: any): void; } /** - * The base class for syntax errors - * @url http://www.espruino.com/Reference#SyntaxError + * This is the built-in class for Objects + * @url http://www.espruino.com/Reference#Object */ -declare const SyntaxError: SyntaxErrorConstructor +declare const Object: ObjectConstructor -interface TypeErrorConstructor { +interface FunctionConstructor { /** - * Creates a TypeError object + * Creates a function * @constructor * - * @param {any} message - An optional message string - * @returns {any} A TypeError object - * @url http://www.espruino.com/Reference#l_TypeError_TypeError + * @param {any} args - Zero or more arguments (as strings), followed by a string representing the code to run + * @returns {any} A Number object + * @url http://www.espruino.com/Reference#l_Function_Function */ - new(message?: string): TypeError; + new(...args: any[]): any; } -interface TypeError { +interface Function { /** - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_TypeError_toString + * This replaces the function with the one in the argument - while keeping the old + * function's scope. This allows inner functions to be edited, and is used when + * edit() is called on an inner function. + * + * @param {any} newFunc - The new function to replace this function with + * @url http://www.espruino.com/Reference#l_Function_replaceWith */ - toString(): string; + replaceWith(newFunc: any): void; + + /** + * This executes the function with the supplied 'this' argument and parameters + * + * @param {any} this - The value to use as the 'this' argument when executing the function + * @param {any} params - Optional Parameters + * @returns {any} The return value of executing this function + * @url http://www.espruino.com/Reference#l_Function_call + */ + call(this: any, ...params: any[]): any; + + /** + * This executes the function with the supplied 'this' argument and parameters + * + * @param {any} this - The value to use as the 'this' argument when executing the function + * @param {any} args - Optional Array of Arguments + * @returns {any} The return value of executing this function + * @url http://www.espruino.com/Reference#l_Function_apply + */ + apply(this: any, args: any): any; + + /** + * This executes the function with the supplied 'this' argument and parameters + * + * @param {any} this - The value to use as the 'this' argument when executing the function + * @param {any} params - Optional Default parameters that are prepended to the call + * @returns {any} The 'bound' function + * @url http://www.espruino.com/Reference#l_Function_bind + */ + bind(this: any, ...params: any[]): any; } /** - * The base class for type errors - * @url http://www.espruino.com/Reference#TypeError + * This is the built-in class for Functions + * @url http://www.espruino.com/Reference#Function */ -declare const TypeError: TypeErrorConstructor +declare const Function: FunctionConstructor -/** - * The base class for internal errors - * @url http://www.espruino.com/Reference#InternalError - */ -declare class InternalError { +interface ArrayConstructor { /** - * Creates an InternalError object + * Returns true if the provided object is an array + * + * @param {any} var - The variable to be tested + * @returns {boolean} True if var is an array, false if not. + * @url http://www.espruino.com/Reference#l_Array_isArray + */ + isArray(arg: any): arg is any[]; + + /** + * Create an Array. Either give it one integer argument (>=0) which is the length + * of the array, or any number of arguments * @constructor * - * @param {any} message - An optional message string - * @returns {any} An InternalError object - * @url http://www.espruino.com/Reference#l_InternalError_InternalError + * @param {any} args - The length of the array OR any number of items to add to the array + * @returns {any} An Array + * @url http://www.espruino.com/Reference#l_Array_Array */ - static new(message?: string): InternalError; - - /** - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_InternalError_toString - */ - toString(): string; + new(arrayLength?: number): any[]; + new(arrayLength: number): T[]; + new(...items: T[]): T[]; + (arrayLength?: number): any[]; + (arrayLength: number): T[]; + (...items: T[]): T[]; } -interface ReferenceErrorConstructor { +interface Array { /** - * Creates a ReferenceError object - * @constructor + * Convert the Array to a string * - * @param {any} message - An optional message string - * @returns {any} A ReferenceError object - * @url http://www.espruino.com/Reference#l_ReferenceError_ReferenceError - */ - new(message?: string): ReferenceError; -} - -interface ReferenceError { - /** - * @returns {any} A String - * @url http://www.espruino.com/Reference#l_ReferenceError_toString + * @param {any} radix - unused + * @returns {any} A String representing the array + * @url http://www.espruino.com/Reference#l_Array_toString */ toString(): string; + + /** + * Find the length of the array + * @returns {any} The length of the array + * @url http://www.espruino.com/Reference#l_Array_length + */ + length: number; + + /** + * Return the index of the value in the array, or -1 + * + * @param {any} value - The value to check for + * @param {number} [startIndex] - [optional] the index to search from, or 0 if not specified + * @returns {any} the index of the value in the array, or -1 + * @url http://www.espruino.com/Reference#l_Array_indexOf + */ + indexOf(value: T, startIndex?: number): number; + + /** + * Return `true` if the array includes the value, `false` otherwise + * + * @param {any} value - The value to check for + * @param {number} [startIndex] - [optional] the index to search from, or 0 if not specified + * @returns {boolean} `true` if the array includes the value, `false` otherwise + * @url http://www.espruino.com/Reference#l_Array_includes + */ + includes(value: T, startIndex?: number): boolean; + + /** + * Join all elements of this array together into one string, using 'separator' + * between them. e.g. ```[1,2,3].join(' ')=='1 2 3'``` + * + * @param {any} separator - The separator + * @returns {any} A String representing the Joined array + * @url http://www.espruino.com/Reference#l_Array_join + */ + join(separator?: string): string; + + /** + * Push a new value onto the end of this array' + * This is the opposite of `[1,2,3].unshift(0)`, which adds one or more elements to + * the beginning of the array. + * + * @param {any} arguments - One or more arguments to add + * @returns {number} The new size of the array + * @url http://www.espruino.com/Reference#l_Array_push + */ + push(...arguments: T[]): number; + + /** + * Remove and return the value on the end of this array. + * This is the opposite of `[1,2,3].shift()`, which removes an element from the + * beginning of the array. + * @returns {any} The value that is popped off + * @url http://www.espruino.com/Reference#l_Array_pop + */ + pop(): T | undefined; + + /** + * Return an array which is made from the following: ```A.map(function) = + * [function(A[0]), function(A[1]), ...]``` + * + * @param {any} function - Function used to map one item to another + * @param {any} [thisArg] - [optional] If specified, the function is called with 'this' set to thisArg + * @returns {any} An array containing the results + * @url http://www.espruino.com/Reference#l_Array_map + */ + map(callbackfn: (value: T, index: number, array: T[]) => U, thisArg?: any): U[]; + + /** + * Executes a provided function once per array element. + * + * @param {any} function - Function to be executed + * @param {any} [thisArg] - [optional] If specified, the function is called with 'this' set to thisArg + * @url http://www.espruino.com/Reference#l_Array_forEach + */ + forEach(callbackfn: (value: T, index: number, array: T[]) => void, thisArg?: any): void; + + /** + * Return an array which contains only those elements for which the callback + * function returns 'true' + * + * @param {any} function - Function to be executed + * @param {any} [thisArg] - [optional] If specified, the function is called with 'this' set to thisArg + * @returns {any} An array containing the results + * @url http://www.espruino.com/Reference#l_Array_filter + */ + filter(predicate: (value: T, index: number, array: T[]) => value is S, thisArg?: any): S[]; + filter(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): T[]; + + /** + * Return the array element where `function` returns `true`, or `undefined` if it + * doesn't returns `true` for any element. + * ``` + * ["Hello","There","World"].find(a=>a[0]=="T") + * // returns "There" + * ``` + * + * @param {any} function - Function to be executed + * @returns {any} The array element where `function` returns `true`, or `undefined` + * @url http://www.espruino.com/Reference#l_Array_find + */ + find(predicate: (this: void, value: T, index: number, obj: T[]) => value is S): S | undefined; + find(predicate: (value: T, index: number, obj: T[]) => unknown): T | undefined; + + /** + * Return the array element's index where `function` returns `true`, or `-1` if it + * doesn't returns `true` for any element. + * ``` + * ["Hello","There","World"].findIndex(a=>a[0]=="T") + * // returns 1 + * ``` + * + * @param {any} function - Function to be executed + * @returns {any} The array element's index where `function` returns `true`, or `-1` + * @url http://www.espruino.com/Reference#l_Array_findIndex + */ + findIndex(predicate: (value: T, index: number, obj: T[]) => unknown): number; + + /** + * Return 'true' if the callback returns 'true' for any of the elements in the + * array + * + * @param {any} function - Function to be executed + * @param {any} [thisArg] - [optional] If specified, the function is called with 'this' set to thisArg + * @returns {any} A boolean containing the result + * @url http://www.espruino.com/Reference#l_Array_some + */ + some(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): boolean; + + /** + * Return 'true' if the callback returns 'true' for every element in the array + * + * @param {any} function - Function to be executed + * @param {any} [thisArg] - [optional] If specified, the function is called with 'this' set to thisArg + * @returns {any} A boolean containing the result + * @url http://www.espruino.com/Reference#l_Array_every + */ + every(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): boolean; + + /** + * Execute `previousValue=initialValue` and then `previousValue = + * callback(previousValue, currentValue, index, array)` for each element in the + * array, and finally return previousValue. + * + * @param {any} callback - Function used to reduce the array + * @param {any} initialValue - if specified, the initial value to pass to the function + * @returns {any} The value returned by the last function called + * @url http://www.espruino.com/Reference#l_Array_reduce + */ + reduce(callback: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T, initialValue?: T): T; + + /** + * Both remove and add items to an array + * + * @param {number} index - Index at which to start changing the array. If negative, will begin that many elements from the end + * @param {any} howMany - An integer indicating the number of old array elements to remove. If howMany is 0, no elements are removed. + * @param {any} elements - One or more items to add to the array + * @returns {any} An array containing the removed elements. If only one element is removed, an array of one element is returned. + * @url http://www.espruino.com/Reference#l_Array_splice + */ + splice(index: number, howMany?: number, ...elements: T[]): T[]; + + /** + * Remove and return the first element of the array. + * This is the opposite of `[1,2,3].pop()`, which takes an element off the end. + * + * @returns {any} The element that was removed + * @url http://www.espruino.com/Reference#l_Array_shift + */ + shift(): T | undefined; + + /** + * Add one or more items to the start of the array, and return its new length. + * This is the opposite of `[1,2,3].push(4)`, which puts one or more elements on + * the end. + * + * @param {any} elements - One or more items to add to the beginning of the array + * @returns {number} The new array length + * @url http://www.espruino.com/Reference#l_Array_unshift + */ + unshift(...elements: T[]): number; + + /** + * Return a copy of a portion of this array (in a new array) + * + * @param {number} start - Start index + * @param {any} [end] - [optional] End index + * @returns {any} A new array + * @url http://www.espruino.com/Reference#l_Array_slice + */ + slice(start?: number, end?: number): T[]; + + /** + * Do an in-place quicksort of the array + * + * @param {any} var - A function to use to compare array elements (or undefined) + * @returns {any} This array object + * @url http://www.espruino.com/Reference#l_Array_sort + */ + sort(compareFn?: (a: T, b: T) => number): T[]; + + /** + * Create a new array, containing the elements from this one and any arguments, if + * any argument is an array then those elements will be added. + * + * @param {any} args - Any items to add to the array + * @returns {any} An Array + * @url http://www.espruino.com/Reference#l_Array_concat + */ + concat(...args: (T | T[])[]): T[]; + + /** + * Fill this array with the given value, for every index `>= start` and `< end` + * + * @param {any} value - The value to fill the array with + * @param {number} start - Optional. The index to start from (or 0). If start is negative, it is treated as length+start where length is the length of the array + * @param {any} end - Optional. The index to end at (or the array length). If end is negative, it is treated as length+end. + * @returns {any} This array + * @url http://www.espruino.com/Reference#l_Array_fill + */ + fill(value: T, start: number, end?: number): T[]; + + /** + * Reverse all elements in this array (in place) + * @returns {any} The array, but reversed. + * @url http://www.espruino.com/Reference#l_Array_reverse + */ + reverse(): T[]; + + [index: number]: T } /** - * The base class for reference errors - where a variable which doesn't exist has - * been accessed. - * @url http://www.espruino.com/Reference#ReferenceError + * This is the built-in JavaScript class for arrays. + * Arrays can be defined with ```[]```, ```new Array()```, or ```new + * Array(length)``` + * @url http://www.espruino.com/Reference#Array */ -declare const ReferenceError: ReferenceErrorConstructor +declare const Array: ArrayConstructor interface JSONConstructor { /** @@ -9981,6 +9295,930 @@ interface JSON { */ declare const JSON: JSONConstructor +/** + * This class allows use of the built-in SPI ports. Currently it is SPI master + * only. + * @url http://www.espruino.com/Reference#SPI + */ +declare class SPI { + /** + * Try and find an SPI hardware device that will work on this pin (e.g. `SPI1`) + * May return undefined if no device can be found. + * + * @param {Pin} pin - A pin to search with + * @returns {any} An object of type `SPI`, or `undefined` if one couldn't be found. + * @url http://www.espruino.com/Reference#l_SPI_find + */ + static find(pin: Pin): any; + + /** + * Create a software SPI port. This has limited functionality (no baud rate), but + * it can work on any pins. + * Use `SPI.setup` to configure this port. + * @constructor + * @returns {any} A SPI object + * @url http://www.espruino.com/Reference#l_SPI_SPI + */ + static new(): any; + + /** + * Set up this SPI port as an SPI Master. + * Options can contain the following (defaults are shown where relevant): + * ``` + * { + * sck:pin, + * miso:pin, + * mosi:pin, + * baud:integer=100000, // ignored on software SPI + * mode:integer=0, // between 0 and 3 + * order:string='msb' // can be 'msb' or 'lsb' + * bits:8 // only available for software SPI + * } + * ``` + * If `sck`,`miso` and `mosi` are left out, they will automatically be chosen. + * However if one or more is specified then the unspecified pins will not be set + * up. + * You can find out which pins to use by looking at [your board's reference + * page](#boards) and searching for pins with the `SPI` marker. Some boards such as + * those based on `nRF52` chips can have SPI on any pins, so don't have specific + * markings. + * The SPI `mode` is between 0 and 3 - see + * http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus#Clock_polarity_and_phase + * On STM32F1-based parts, you cannot mix AF and non-AF pins (SPI pins are usually + * grouped on the chip - and you can't mix pins from two groups). Espruino will not + * warn you about this. + * + * @param {any} options - An Object containing extra information on initialising the SPI port + * @url http://www.espruino.com/Reference#l_SPI_setup + */ + setup(options: any): void; + + /** + * Send data down SPI, and return the result. Sending an integer will return an + * integer, a String will return a String, and anything else will return a + * Uint8Array. + * Sending multiple bytes in one call to send is preferable as they can then be + * transmitted end to end. Using multiple calls to send() will result in + * significantly slower transmission speeds. + * For maximum speeds, please pass either Strings or Typed Arrays as arguments. + * Note that you can even pass arrays of arrays, like `[1,[2,3,4],5]` + * + * @param {any} data - The data to send - either an Integer, Array, String, or Object of the form `{data: ..., count:#}` + * @param {Pin} nss_pin - An nSS pin - this will be lowered before SPI output and raised afterwards (optional). There will be a small delay between when this is lowered and when sending starts, and also between sending finishing and it being raised. + * @returns {any} The data that was returned + * @url http://www.espruino.com/Reference#l_SPI_send + */ + send(data: any, nss_pin: Pin): any; + + /** + * Write a character or array of characters to SPI - without reading the result + * back. + * For maximum speeds, please pass either Strings or Typed Arrays as arguments. + * + * @param {any} data + * One or more items to write. May be ints, strings, arrays, or special objects (see `E.toUint8Array` for more info). + * If the last argument is a pin, it is taken to be the NSS pin + * @url http://www.espruino.com/Reference#l_SPI_write + */ + write(...data: any[]): void; + + /** + * Send data down SPI, using 4 bits for each 'real' bit (MSB first). This can be + * useful for faking one-wire style protocols + * Sending multiple bytes in one call to send is preferable as they can then be + * transmitted end to end. Using multiple calls to send() will result in + * significantly slower transmission speeds. + * + * @param {any} data - The data to send - either an integer, array, or string + * @param {number} bit0 - The 4 bits to send for a 0 (MSB first) + * @param {number} bit1 - The 4 bits to send for a 1 (MSB first) + * @param {Pin} nss_pin - An nSS pin - this will be lowered before SPI output and raised afterwards (optional). There will be a small delay between when this is lowered and when sending starts, and also between sending finishing and it being raised. + * @url http://www.espruino.com/Reference#l_SPI_send4bit + */ + send4bit(data: any, bit0: number, bit1: number, nss_pin: Pin): void; + + /** + * Send data down SPI, using 8 bits for each 'real' bit (MSB first). This can be + * useful for faking one-wire style protocols + * Sending multiple bytes in one call to send is preferable as they can then be + * transmitted end to end. Using multiple calls to send() will result in + * significantly slower transmission speeds. + * + * @param {any} data - The data to send - either an integer, array, or string + * @param {number} bit0 - The 8 bits to send for a 0 (MSB first) + * @param {number} bit1 - The 8 bits to send for a 1 (MSB first) + * @param {Pin} nss_pin - An nSS pin - this will be lowered before SPI output and raised afterwards (optional). There will be a small delay between when this is lowered and when sending starts, and also between sending finishing and it being raised + * @url http://www.espruino.com/Reference#l_SPI_send8bit + */ + send8bit(data: any, bit0: number, bit1: number, nss_pin: Pin): void; +} + +/** + * This class allows use of the built-in I2C ports. Currently it allows I2C Master + * mode only. + * All addresses are in 7 bit format. If you have an 8 bit address then you need to + * shift it one bit to the right. + * @url http://www.espruino.com/Reference#I2C + */ +declare class I2C { + /** + * Try and find an I2C hardware device that will work on this pin (e.g. `I2C1`) + * May return undefined if no device can be found. + * + * @param {Pin} pin - A pin to search with + * @returns {any} An object of type `I2C`, or `undefined` if one couldn't be found. + * @url http://www.espruino.com/Reference#l_I2C_find + */ + static find(pin: Pin): any; + + /** + * Create a software I2C port. This has limited functionality (no baud rate), but + * it can work on any pins. + * Use `I2C.setup` to configure this port. + * @constructor + * @returns {any} An I2C object + * @url http://www.espruino.com/Reference#l_I2C_I2C + */ + static new(): any; + + /** + * Set up this I2C port + * If not specified in options, the default pins are used (usually the lowest + * numbered pins on the lowest port that supports this peripheral) + * + * @param {any} [options] + * [optional] A structure containing extra information on initialising the I2C port + * ```{scl:pin, sda:pin, bitrate:100000}``` + * You can find out which pins to use by looking at [your board's reference page](#boards) and searching for pins with the `I2C` marker. Note that 400kHz is the maximum bitrate for most parts. + * @url http://www.espruino.com/Reference#l_I2C_setup + */ + setup(options?: any): void; + + /** + * Transmit to the slave device with the given address. This is like Arduino's + * beginTransmission, write, and endTransmission rolled up into one. + * + * @param {any} address - The 7 bit address of the device to transmit to, or an object of the form `{address:12, stop:false}` to send this data without a STOP signal. + * @param {any} data - One or more items to write. May be ints, strings, arrays, or special objects (see `E.toUint8Array` for more info). + * @url http://www.espruino.com/Reference#l_I2C_writeTo + */ + writeTo(address: any, ...data: any[]): void; + + /** + * Request bytes from the given slave device, and return them as a Uint8Array + * (packed array of bytes). This is like using Arduino Wire's requestFrom, + * available and read functions. Sends a STOP + * + * @param {any} address - The 7 bit address of the device to request bytes from, or an object of the form `{address:12, stop:false}` to send this data without a STOP signal. + * @param {number} quantity - The number of bytes to request + * @returns {any} The data that was returned - as a Uint8Array + * @url http://www.espruino.com/Reference#l_I2C_readFrom + */ + readFrom(address: any, quantity: number): Uint8Array; +} + +interface PromiseConstructor { + /** + * Return a new promise that is resolved when all promises in the supplied array + * are resolved. + * + * @param {any} promises - An array of promises + * @returns {any} A new Promise + * @url http://www.espruino.com/Reference#l_Promise_all + */ + all(promises: Promise[]): Promise; + + /** + * Return a new promise that is already resolved (at idle it'll call `.then`) + * + * @param {any} promises - Data to pass to the `.then` handler + * @returns {any} A new Promise + * @url http://www.espruino.com/Reference#l_Promise_resolve + */ + resolve(promises: T): Promise; + + /** + * Return a new promise that is already rejected (at idle it'll call `.catch`) + * + * @param {any} promises - Data to pass to the `.catch` handler + * @returns {any} A new Promise + * @url http://www.espruino.com/Reference#l_Promise_reject + */ + reject(promises: any): any; + + /** + * Create a new Promise. The executor function is executed immediately (before the + * constructor even returns) and + * @constructor + * + * @param {any} executor - A function of the form `function (resolve, reject)` + * @returns {any} A Promise + * @url http://www.espruino.com/Reference#l_Promise_Promise + */ + new(executor: (resolve: (value: T) => void, reject: (reason?: any) => void) => void): Promise; +} + +interface Promise { + /** + * + * @param {any} onFulfilled - A callback that is called when this promise is resolved + * @param {any} [onRejected] - [optional] A callback that is called when this promise is rejected (or nothing) + * @returns {any} The original Promise + * @url http://www.espruino.com/Reference#l_Promise_then + */ + then(onfulfilled?: ((value: T) => TResult1 | Promise) | undefined | null, onrejected?: ((reason: any) => TResult2 | Promise) | undefined | null): Promise; + + /** + * + * @param {any} onRejected - A callback that is called when this promise is rejected + * @returns {any} The original Promise + * @url http://www.espruino.com/Reference#l_Promise_catch + */ + catch(onRejected: any): any; +} + +/** + * This is the built-in class for ES6 Promises + * @url http://www.espruino.com/Reference#Promise + */ +declare const Promise: PromiseConstructor + +/** + * These objects are created from `require("Storage").open` and allow Storage items + * to be read/written. + * The `Storage` library writes into Flash memory (which can only be erased in + * chunks), and unlike a normal filesystem it allocates files in one long + * contiguous area to allow them to be accessed easily from Espruino. + * This presents a challenge for `StorageFile` which allows you to append to a + * file, so instead `StorageFile` stores files in chunks. It uses the last + * character of the filename to denote the chunk number (e.g. `"foobar\1"`, + * `"foobar\2"`, etc). + * This means that while `StorageFile` files exist in the same area as those from + * `Storage`, they should be read using `Storage.open` (and not `Storage.read`). + * ``` + * f = s.open("foobar","w"); + * f.write("Hell"); + * f.write("o World\n"); + * f.write("Hello\n"); + * f.write("World 2\n"); + * // there's no need to call 'close' + * // then + * f = s.open("foobar","r"); + * f.read(13) // "Hello World\nH" + * f.read(13) // "ello\nWorld 2\n" + * f.read(13) // "Hello World 3" + * f.read(13) // "\n" + * f.read(13) // undefined + * // or + * f = s.open("foobar","r"); + * f.readLine() // "Hello World\n" + * f.readLine() // "Hello\n" + * f.readLine() // "World 2\n" + * f.readLine() // "Hello World 3\n" + * f.readLine() // undefined + * // now get rid of file + * f.erase(); + * ``` + * **Note:** `StorageFile` uses the fact that all bits of erased flash memory are 1 + * to detect the end of a file. As such you should not write character code 255 + * (`"\xFF"`) to these files. + * @url http://www.espruino.com/Reference#StorageFile + */ +declare class StorageFile { + + + /** + * Read 'len' bytes of data from the file, and return a String containing those + * bytes. + * If the end of the file is reached, the String may be smaller than the amount of + * bytes requested, or if the file is already at the end, `undefined` is returned. + * + * @param {number} len - How many bytes to read + * @returns {any} A String, or undefined + * @url http://www.espruino.com/Reference#l_StorageFile_read + */ + read(len: number): string; + + /** + * Read a line of data from the file (up to and including `"\n"`) + * @returns {any} A line of data + * @url http://www.espruino.com/Reference#l_StorageFile_readLine + */ + readLine(): string; + + /** + * Return the length of the current file. + * This requires Espruino to read the file from scratch, which is not a fast + * operation. + * @returns {number} The current length in bytes of the file + * @url http://www.espruino.com/Reference#l_StorageFile_getLength + */ + getLength(): number; + + /** + * Append the given data to a file. You should not attempt to append `"\xFF"` + * (character code 255). + * + * @param {any} data - The data to write. This should not include `'\xFF'` (character code 255) + * @url http://www.espruino.com/Reference#l_StorageFile_write + */ + write(data: string): void; + + /** + * Erase this file + * @url http://www.espruino.com/Reference#l_StorageFile_erase + */ + erase(): void; +} + +interface processConstructor { + /** + * This event is called when an exception gets thrown and isn't caught (e.g. it gets + * all the way back to the event loop). + * You can use this for logging potential problems that might occur during + * execution when you might not be able to see what is written to the console, for + * example: + * ``` + * var lastError; + * process.on('uncaughtException', function(e) { + * lastError=e; + * print(e,e.stack?"\n"+e.stack:"") + * }); + * function checkError() { + * if (!lastError) return print("No Error"); + * print(lastError,lastError.stack?"\n"+lastError.stack:"") + * } + * ``` + * **Note:** When this is used, exceptions will cease to be reported on the + * console - which may make debugging difficult! + * @param {string} event - The event to listen to. + * @param {(exception: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `exception` The uncaught exception + * @url http://www.espruino.com/Reference#l_process_uncaughtException + */ + on(event: "uncaughtException", callback: (exception: any) => void): void; + + /** + * Returns the version of Espruino as a String + * @returns {any} The version of Espruino + * @url http://www.espruino.com/Reference#l_process_version + */ + version: any; + + /** + * Returns an Object containing various pre-defined variables. + * * `VERSION` - is the Espruino version + * * `GIT_COMMIT` - is Git commit hash this firmware was built from + * * `BOARD` - the board's ID (e.g. `PUCKJS`) + * * `RAM` - total amount of on-chip RAM in bytes + * * `FLASH` - total amount of on-chip flash memory in bytes + * * `SPIFLASH` - (on Bangle.js) total amount of off-chip flash memory in bytes + * * `HWVERSION` - For Puck.js this is the board revision (1, 2, 2.1), or for + * Bangle.js it's 1 or 2 + * * `STORAGE` - memory in bytes dedicated to the `Storage` module + * * `SERIAL` - the serial number of this chip + * * `CONSOLE` - the name of the current console device being used (`Serial1`, + * `USB`, `Bluetooth`, etc) + * * `MODULES` - a list of built-in modules separated by commas + * * `EXPTR` - The address of the `exportPtrs` structure in flash (this includes + * links to built-in functions that compiled JS code needs) + * * `APP_RAM_BASE` - On nRF5x boards, this is the RAM required by the Softdevice + * *if it doesn't exactly match what was allocated*. You can use this to update + * `LD_APP_RAM_BASE` in the `BOARD.py` file + * For example, to get a list of built-in modules, you can use + * `process.env.MODULES.split(',')` + * **Note:** `process.env` is not writeable - so as not to waste RAM, the contents + * are generated on demand. If you need to be able to change them, use `process.env=process.env;` + * first to ensure the values stay allocated. + * @returns {any} An object + * @url http://www.espruino.com/Reference#l_process_env + */ + env: any; + + /** + * Run a Garbage Collection pass, and return an object containing information on + * memory usage. + * * `free` : Memory that is available to be used (in blocks) + * * `usage` : Memory that has been used (in blocks) + * * `total` : Total memory (in blocks) + * * `history` : Memory used for command history - that is freed if memory is low. + * Note that this is INCLUDED in the figure for 'free' + * * `gc` : Memory freed during the GC pass + * * `gctime` : Time taken for GC pass (in milliseconds) + * * `blocksize` : Size of a block (variable) in bytes + * * `stackEndAddress` : (on ARM) the address (that can be used with peek/poke/etc) + * of the END of the stack. The stack grows down, so unless you do a lot of + * recursion the bytes above this can be used. + * * `stackFree` : (on ARM) how many bytes of free execution stack are there + * at the point of execution. + * * `flash_start` : (on ARM) the address of the start of flash memory (usually + * `0x8000000`) + * * `flash_binary_end` : (on ARM) the address in flash memory of the end of + * Espruino's firmware. + * * `flash_code_start` : (on ARM) the address in flash memory of pages that store + * any code that you save with `save()`. + * * `flash_length` : (on ARM) the amount of flash memory this firmware was built + * for (in bytes). **Note:** Some STM32 chips actually have more memory than is + * advertised. + * Memory units are specified in 'blocks', which are around 16 bytes each + * (depending on your device). The actual size is available in `blocksize`. See + * http://www.espruino.com/Performance for more information. + * **Note:** To find free areas of flash memory, see `require('Flash').getFree()` + * + * @param {any} [gc] - [optional] A boolean. If `undefined` or `true` Garbage collection is performed, if `false` it is not + * @returns {any} Information about memory usage + * @url http://www.espruino.com/Reference#l_process_memory + */ + memory(gc?: any): any; +} + +interface process { + +} + +/** + * This class contains information about Espruino itself + * @url http://www.espruino.com/Reference#process + */ +declare const process: processConstructor + +/** + * This class allows use of the built-in USARTs + * Methods may be called on the `USB`, `Serial1`, `Serial2`, `Serial3`, `Serial4`, + * `Serial5` and `Serial6` objects. While different processors provide different + * numbers of USARTs, on official Espruino boards you can always rely on at least + * `Serial1` being available + * @url http://www.espruino.com/Reference#Serial + */ +declare class Serial { + /** + * The `data` event is called when data is received. If a handler is defined with + * `X.on('data', function(data) { ... })` then it will be called, otherwise data + * will be stored in an internal buffer, where it can be retrieved with `X.read()` + * @param {string} event - The event to listen to. + * @param {(data: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `data` A string containing one or more characters of received data + * @url http://www.espruino.com/Reference#l_Serial_data + */ + static on(event: "data", callback: (data: any) => void): void; + + /** + * The `framing` event is called when there was activity on the input to the UART + * but the `STOP` bit wasn't in the correct place. This is either because there was + * noise on the line, or the line has been pulled to 0 for a long period of time. + * To enable this, you must initialise Serial with `SerialX.setup(..., { ..., + * errors:true });` + * **Note:** Even though there was an error, the byte will still be received and + * passed to the `data` handler. + * **Note:** This only works on STM32 and NRF52 based devices (e.g. all official + * Espruino boards) + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_Serial_framing + */ + static on(event: "framing", callback: () => void): void; + + /** + * The `parity` event is called when the UART was configured with a parity bit, and + * this doesn't match the bits that have actually been received. + * To enable this, you must initialise Serial with `SerialX.setup(..., { ..., + * errors:true });` + * **Note:** Even though there was an error, the byte will still be received and + * passed to the `data` handler. + * **Note:** This only works on STM32 and NRF52 based devices (e.g. all official + * Espruino boards) + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_Serial_parity + */ + static on(event: "parity", callback: () => void): void; + + /** + * Try and find a USART (Serial) hardware device that will work on this pin (e.g. + * `Serial1`) + * May return undefined if no device can be found. + * + * @param {Pin} pin - A pin to search with + * @returns {any} An object of type `Serial`, or `undefined` if one couldn't be found. + * @url http://www.espruino.com/Reference#l_Serial_find + */ + static find(pin: Pin): any; + + /** + * Create a software Serial port. This has limited functionality (only low baud + * rates), but it can work on any pins. + * Use `Serial.setup` to configure this port. + * @constructor + * @returns {any} A Serial object + * @url http://www.espruino.com/Reference#l_Serial_Serial + */ + static new(): any; + + /** + * Set this Serial port as the port for the JavaScript console (REPL). + * Unless `force` is set to true, changes in the connection state of the board (for + * instance plugging in USB) will cause the console to change. + * See `E.setConsole` for a more flexible version of this function. + * + * @param {boolean} force - Whether to force the console to this port + * @url http://www.espruino.com/Reference#l_Serial_setConsole + */ + setConsole(force: boolean): void; + + /** + * Setup this Serial port with the given baud rate and options. + * e.g. + * ``` + * Serial1.setup(9600,{rx:a_pin, tx:a_pin}); + * ``` + * The second argument can contain: + * ``` + * { + * rx:pin, // Receive pin (data in to Espruino) + * tx:pin, // Transmit pin (data out of Espruino) + * ck:pin, // (default none) Clock Pin + * cts:pin, // (default none) Clear to Send Pin + * bytesize:8, // (default 8)How many data bits - 7 or 8 + * parity:null/'none'/'o'/'odd'/'e'/'even', + * // (default none) Parity bit + * stopbits:1, // (default 1) Number of stop bits to use + * flow:null/undefined/'none'/'xon', // (default none) software flow control + * path:null/undefined/string // Linux Only - the path to the Serial device to use + * errors:false // (default false) whether to forward framing/parity errors + * } + * ``` + * You can find out which pins to use by looking at [your board's reference + * page](#boards) and searching for pins with the `UART`/`USART` markers. + * If not specified in options, the default pins are used for rx and tx (usually + * the lowest numbered pins on the lowest port that supports this peripheral). `ck` + * and `cts` are not used unless specified. + * Note that even after changing the RX and TX pins, if you have called setup + * before then the previous RX and TX pins will still be connected to the Serial + * port as well - until you set them to something else using `digitalWrite` or + * `pinMode`. + * Flow control can be xOn/xOff (`flow:'xon'`) or hardware flow control (receive + * only) if `cts` is specified. If `cts` is set to a pin, the pin's value will be 0 + * when Espruino is ready for data and 1 when it isn't. + * By default, framing or parity errors don't create `framing` or `parity` events + * on the `Serial` object because storing these errors uses up additional storage + * in the queue. If you're intending to receive a lot of malformed data then the + * queue might overflow `E.getErrorFlags()` would return `FIFO_FULL`. However if + * you need to respond to `framing` or `parity` errors then you'll need to use + * `errors:true` when initialising serial. + * On Linux builds there is no default Serial device, so you must specify a path to + * a device - for instance: `Serial1.setup(9600,{path:"/dev/ttyACM0"})` + * You can also set up 'software serial' using code like: + * ``` + * var s = new Serial(); + * s.setup(9600,{rx:a_pin, tx:a_pin}); + * ``` + * However software serial doesn't use `ck`, `cts`, `parity`, `flow` or `errors` + * parts of the initialisation object. + * + * @param {any} baudrate - The baud rate - the default is 9600 + * @param {any} [options] - [optional] A structure containing extra information on initialising the serial port - see below. + * @url http://www.espruino.com/Reference#l_Serial_setup + */ + setup(baudrate: any, options?: any): void; + + /** + * If the serial (or software serial) device was set up, uninitialise it. + * @url http://www.espruino.com/Reference#l_Serial_unsetup + */ + unsetup(): void; + + /** + * Print a string to the serial port - without a line feed + * **Note:** This function replaces any occurrences of `\n` in the string with + * `\r\n`. To avoid this, use `Serial.write`. + * + * @param {any} string - A String to print + * @url http://www.espruino.com/Reference#l_Serial_print + */ + print(string: any): void; + + /** + * Print a line to the serial port with a newline (`\r\n`) at the end of it. + * **Note:** This function converts data to a string first, e.g. + * `Serial.print([1,2,3])` is equivalent to `Serial.print("1,2,3"). If you'd like + * to write raw bytes, use `Serial.write`. + * + * @param {any} string - A String to print + * @url http://www.espruino.com/Reference#l_Serial_println + */ + println(string: any): void; + + /** + * Write a character or array of data to the serial port + * This method writes unmodified data, e.g. `Serial.write([1,2,3])` is equivalent to + * `Serial.write("\1\2\3")`. If you'd like data converted to a string first, use + * `Serial.print`. + * + * @param {any} data - One or more items to write. May be ints, strings, arrays, or special objects (see `E.toUint8Array` for more info). + * @url http://www.espruino.com/Reference#l_Serial_write + */ + write(...data: any[]): void; + + /** + * Add data to this device as if it came directly from the input - it will be + * returned via `serial.on('data', ...)`; + * ``` + * Serial1.on('data', function(d) { print("Got",d); }); + * Serial1.inject('Hello World'); + * // prints "Got Hel","Got lo World" (characters can be split over multiple callbacks) + * ``` + * This is most useful if you wish to send characters to Espruino's REPL (console) + * while it is on another device. + * + * @param {any} data - One or more items to write. May be ints, strings, arrays, or special objects (see `E.toUint8Array` for more info). + * @url http://www.espruino.com/Reference#l_Serial_inject + */ + inject(...data: any[]): void; + + /** + * Return how many bytes are available to read. If there is already a listener for + * data, this will always return 0. + * @returns {number} How many bytes are available + * @url http://www.espruino.com/Reference#l_Serial_available + */ + available(): number; + + /** + * Return a string containing characters that have been received + * + * @param {number} chars - The number of characters to read, or undefined/0 for all available + * @returns {any} A string containing the required bytes. + * @url http://www.espruino.com/Reference#l_Serial_read + */ + read(chars: number): any; + + /** + * Pipe this USART to a stream (an object with a 'write' method) + * + * @param {any} destination - The destination file/stream that will receive content from the source. + * @param {any} [options] + * [optional] An object `{ chunkSize : int=32, end : bool=true, complete : function }` + * chunkSize : The amount of data to pipe from source to destination at a time + * complete : a function to call when the pipe activity is complete + * end : call the 'end' function on the destination when the source is finished + * @url http://www.espruino.com/Reference#l_Serial_pipe + */ + pipe(destination: any, options?: any): void; +} + +interface StringConstructor { + /** + * Return the character(s) represented by the given character code(s). + * + * @param {any} code - One or more character codes to create a string from (range 0-255). + * @returns {any} The character + * @url http://www.espruino.com/Reference#l_String_fromCharCode + */ + fromCharCode(...code: any[]): any; + + /** + * Create a new String + * @constructor + * + * @param {any} str - A value to turn into a string. If undefined or not supplied, an empty String is created. + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_String_String + */ + new(...str: any[]): any; +} + +interface String { + /** + * Find the length of the string + * @returns {any} The value of the string + * @url http://www.espruino.com/Reference#l_String_length + */ + length: any; + + /** + * Return a single character at the given position in the String. + * + * @param {number} pos - The character number in the string. Negative values return characters from end of string (-1 = last char) + * @returns {any} The character in the string + * @url http://www.espruino.com/Reference#l_String_charAt + */ + charAt(pos: number): any; + + /** + * Return the integer value of a single character at the given position in the + * String. + * Note that this returns 0 not 'NaN' for out of bounds characters + * + * @param {number} pos - The character number in the string. Negative values return characters from end of string (-1 = last char) + * @returns {number} The integer value of a character in the string + * @url http://www.espruino.com/Reference#l_String_charCodeAt + */ + charCodeAt(pos: number): number; + + /** + * Return the index of substring in this string, or -1 if not found + * + * @param {any} substring - The string to search for + * @param {any} fromIndex - Index to search from + * @returns {number} The index of the string, or -1 if not found + * @url http://www.espruino.com/Reference#l_String_indexOf + */ + indexOf(substring: any, fromIndex: any): number; + + /** + * Return the last index of substring in this string, or -1 if not found + * + * @param {any} substring - The string to search for + * @param {any} fromIndex - Index to search from + * @returns {number} The index of the string, or -1 if not found + * @url http://www.espruino.com/Reference#l_String_lastIndexOf + */ + lastIndexOf(substring: any, fromIndex: any): number; + + /** + * Matches an occurrence `subStr` in the string. + * Returns `null` if no match, or: + * ``` + * "abcdef".match("b") == [ + * "b", // array index 0 - the matched string + * index: 1, // the start index of the match + * input: "b" // the input string + * ] + * "abcdefabcdef".match(/bcd/) == [ + * "bcd", index: 1, + * input: "abcdefabcdef" + * ] + * ``` + * 'Global' RegExp matches just return an array of matches (with no indices): + * ``` + * "abcdefabcdef".match(/bcd/g) = [ + * "bcd", + * "bcd" + * ] + * ``` + * + * @param {any} substr - Substring or RegExp to match + * @returns {any} A match array or `null` (see below): + * @url http://www.espruino.com/Reference#l_String_match + */ + match(substr: any): any; + + /** + * Search and replace ONE occurrence of `subStr` with `newSubStr` and return the + * result. This doesn't alter the original string. Regular expressions not + * supported. + * + * @param {any} subStr - The string to search for + * @param {any} newSubStr - The string to replace it with + * @returns {any} This string with `subStr` replaced + * @url http://www.espruino.com/Reference#l_String_replace + */ + replace(subStr: any, newSubStr: any): any; + + /** + * + * @param {number} start - The start character index (inclusive) + * @param {any} end - The end character index (exclusive) + * @returns {any} The part of this string between start and end + * @url http://www.espruino.com/Reference#l_String_substring + */ + substring(start: number, end: any): any; + + /** + * + * @param {number} start - The start character index + * @param {any} len - The number of characters + * @returns {any} Part of this string from start for len characters + * @url http://www.espruino.com/Reference#l_String_substr + */ + substr(start: number, len: any): any; + + /** + * + * @param {number} start - The start character index, if negative it is from the end of the string + * @param {any} end - The end character index, if negative it is from the end of the string, and if omitted it is the end of the string + * @returns {any} Part of this string from start for len characters + * @url http://www.espruino.com/Reference#l_String_slice + */ + slice(start: number, end: any): any; + + /** + * Return an array made by splitting this string up by the separator. e.g. + * ```'1,2,3'.split(',')==['1', '2', '3']``` + * Regular Expressions can also be used to split strings, e.g. `'1a2b3 + * 4'.split(/[^0-9]/)==['1', '2', '3', '4']`. + * + * @param {any} separator - The separator `String` or `RegExp` to use + * @returns {any} Part of this string from start for len characters + * @url http://www.espruino.com/Reference#l_String_split + */ + split(separator: any): any; + + /** + * + * @returns {any} The lowercase version of this string + * @url http://www.espruino.com/Reference#l_String_toLowerCase + */ + toLowerCase(): any; + + /** + * + * @returns {any} The uppercase version of this string + * @url http://www.espruino.com/Reference#l_String_toUpperCase + */ + toUpperCase(): any; + + /** + * Return a new string with any whitespace (tabs, space, form feed, newline, + * carriage return, etc) removed from the beginning and end. + * @returns {any} A String with Whitespace removed from the beginning and end + * @url http://www.espruino.com/Reference#l_String_trim + */ + trim(): string; + + /** + * Append all arguments to this `String` and return the result. Does not modify the + * original `String`. + * + * @param {any} args - Strings to append + * @returns {any} The result of appending all arguments to this string + * @url http://www.espruino.com/Reference#l_String_concat + */ + concat(...args: any[]): any; + + /** + * + * @param {any} searchString - The string to search for + * @param {number} position - The start character index (or 0 if not defined) + * @returns {boolean} `true` if the given characters are found at the beginning of the string, otherwise, `false`. + * @url http://www.espruino.com/Reference#l_String_startsWith + */ + startsWith(searchString: any, position: number): boolean; + + /** + * + * @param {any} searchString - The string to search for + * @param {any} length - The 'end' of the string - if left off the actual length of the string is used + * @returns {boolean} `true` if the given characters are found at the end of the string, otherwise, `false`. + * @url http://www.espruino.com/Reference#l_String_endsWith + */ + endsWith(searchString: any, length: any): boolean; + + /** + * + * @param {any} substring - The string to search for + * @param {any} fromIndex - The start character index (or 0 if not defined) + * @returns {boolean} `true` if the given characters are in the string, otherwise, `false`. + * @url http://www.espruino.com/Reference#l_String_includes + */ + includes(substring: any, fromIndex: any): boolean; + + /** + * Repeat this string the given number of times. + * + * @param {number} count - An integer with the amount of times to repeat this String + * @returns {any} A string containing repetitions of this string + * @url http://www.espruino.com/Reference#l_String_repeat + */ + repeat(count: number): string; + + /** + * Pad this string at the beginning to the required number of characters + * ``` + * "Hello".padStart(10) == " Hello" + * "123".padStart(10,".-") == ".-.-.-.123" + * ``` + * + * @param {number} targetLength - The length to pad this string to + * @param {any} [padString] - [optional] The string to pad with, default is `' '` + * @returns {any} A string containing this string padded to the correct length + * @url http://www.espruino.com/Reference#l_String_padStart + */ + padStart(targetLength: number, padString?: any): string; + + /** + * Pad this string at the end to the required number of characters + * ``` + * "Hello".padEnd(10) == "Hello " + * "123".padEnd(10,".-") == "123.-.-.-." + * ``` + * + * @param {number} targetLength - The length to pad this string to + * @param {any} [padString] - [optional] The string to pad with, default is `' '` + * @returns {any} A string containing this string padded to the correct length + * @url http://www.espruino.com/Reference#l_String_padEnd + */ + padEnd(targetLength: number, padString?: any): string; +} + +/** + * This is the built-in class for Text Strings. + * Text Strings in Espruino are not zero-terminated, so you can store zeros in + * them. + * @url http://www.espruino.com/Reference#String + */ +declare const String: StringConstructor + interface RegExpConstructor { /** * Creates a RegExp object, for handling Regular Expressions @@ -10041,418 +10279,174 @@ interface RegExp { */ declare const RegExp: RegExpConstructor -/** - * This is the built-in class for the Arduino-style pin namings on ST Nucleo boards - * @url http://www.espruino.com/Reference#Nucleo - */ -declare class Nucleo { +interface NumberConstructor { /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_A0 + * @returns {number} Not a Number + * @url http://www.espruino.com/Reference#l_Number_NaN */ - static A0: Pin; + NaN: number; /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_A1 + * @returns {number} Maximum representable value + * @url http://www.espruino.com/Reference#l_Number_MAX_VALUE */ - static A1: Pin; + MAX_VALUE: number; /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_A2 + * @returns {number} Smallest representable value + * @url http://www.espruino.com/Reference#l_Number_MIN_VALUE */ - static A2: Pin; + MIN_VALUE: number; /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_A3 + * @returns {number} Negative Infinity (-1/0) + * @url http://www.espruino.com/Reference#l_Number_NEGATIVE_INFINITY */ - static A3: Pin; + NEGATIVE_INFINITY: number; /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_A4 + * @returns {number} Positive Infinity (1/0) + * @url http://www.espruino.com/Reference#l_Number_POSITIVE_INFINITY */ - static A4: Pin; + POSITIVE_INFINITY: number; /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_A5 - */ - static A5: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D0 - */ - static D0: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D1 - */ - static D1: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D2 - */ - static D2: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D3 - */ - static D3: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D4 - */ - static D4: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D5 - */ - static D5: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D6 - */ - static D6: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D7 - */ - static D7: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D8 - */ - static D8: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D9 - */ - static D9: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D10 - */ - static D10: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D11 - */ - static D11: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D12 - */ - static D12: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D13 - */ - static D13: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D14 - */ - static D14: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_Nucleo_D15 - */ - static D15: Pin; - - -} - -/** - * This is a built-in class to allow you to use the ESP8266 NodeMCU boards's pin - * namings to access pins. It is only available on ESP8266-based boards. - * @url http://www.espruino.com/Reference#NodeMCU - */ -declare class NodeMCU { - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_A0 - */ - static A0: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D0 - */ - static D0: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D1 - */ - static D1: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D2 - */ - static D2: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D3 - */ - static D3: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D4 - */ - static D4: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D5 - */ - static D5: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D6 - */ - static D6: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D7 - */ - static D7: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D8 - */ - static D8: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D9 - */ - static D9: Pin; - - /** - * @returns {Pin} A Pin - * @url http://www.espruino.com/Reference#l_NodeMCU_D10 - */ - static D10: Pin; - - -} - -/** - * Class containing utility functions for the - * [ESP32](http://www.espruino.com/ESP32) - * @url http://www.espruino.com/Reference#ESP32 - */ -declare class ESP32 { - /** - * - * @param {Pin} pin - Pin for Analog read - * @param {number} atten - Attenuate factor - * @url http://www.espruino.com/Reference#l_ESP32_setAtten - */ - static setAtten(pin: Pin, atten: number): void; - - /** - * Perform a hardware reset/reboot of the ESP32. - * @url http://www.espruino.com/Reference#l_ESP32_reboot - */ - static reboot(): void; - - /** - * Put device in deepsleep state for "us" microseconds. - * - * @param {number} us - Sleeptime in us - * @url http://www.espruino.com/Reference#l_ESP32_deepSleep - */ - static deepSleep(us: number): void; - - /** - * Returns an object that contains details about the state of the ESP32 with the - * following fields: - * * `sdkVersion` - Version of the SDK. - * * `freeHeap` - Amount of free heap in bytes. - * * `BLE` - Status of BLE, enabled if true. - * * `Wifi` - Status of Wifi, enabled if true. - * * `minHeap` - Minimum heap, calculated by heap_caps_get_minimum_free_size - * @returns {any} The state of the ESP32 - * @url http://www.espruino.com/Reference#l_ESP32_getState - */ - static getState(): any; - - /** - * - * @param {number} level - which events should be shown (GATTS, GATTC, GAP) - * @url http://www.espruino.com/Reference#l_ESP32_setBLE_Debug - */ - static setBLE_Debug(level: number): void; - - /** - * Switches Bluetooth off/on, removes saved code from Flash, resets the board, and - * on restart creates jsVars depending on available heap (actual additional 1800) - * - * @param {boolean} enable - switches Bluetooth on or off - * @url http://www.espruino.com/Reference#l_ESP32_enableBLE - */ - static enableBLE(enable: boolean): void; - - /** - * Switches Wifi off/on, removes saved code from Flash, resets the board, and on - * restart creates jsVars depending on available heap (actual additional 3900) - * - * @param {boolean} enable - switches Wifi on or off - * @url http://www.espruino.com/Reference#l_ESP32_enableWifi - */ - static enableWifi(enable: boolean): void; - - -} - -/** - * A class to support some simple Queue handling for RTOS queues - * @url http://www.espruino.com/Reference#Queue - */ -declare class Queue { - /** - * Creates a Queue Object + * Creates a number * @constructor * - * @param {any} queueName - Name of the queue - * @returns {any} A Queue object - * @url http://www.espruino.com/Reference#l_Queue_Queue + * @param {any} value - A single value to be converted to a number + * @returns {any} A Number object + * @url http://www.espruino.com/Reference#l_Number_Number */ - static new(queueName: any): any; + new(...value: any[]): any; +} +interface Number { /** - * reads one character from queue, if available - * @url http://www.espruino.com/Reference#l_Queue_read - */ - read(): void; - - /** - * Writes one character to queue + * Format the number as a fixed point number * - * @param {any} char - char to be send - * @url http://www.espruino.com/Reference#l_Queue_writeChar + * @param {number} decimalPlaces - A number between 0 and 20 specifying the number of decimal digits after the decimal point + * @returns {any} A string + * @url http://www.espruino.com/Reference#l_Number_toFixed */ - writeChar(char: any): void; - - /** - * logs list of queues - * @url http://www.espruino.com/Reference#l_Queue_log - */ - log(): void; + toFixed(decimalPlaces: number): any; } /** - * A class to support some simple Task handling for RTOS tasks - * @url http://www.espruino.com/Reference#Task + * This is the built-in JavaScript class for numbers. + * @url http://www.espruino.com/Reference#Number */ -declare class Task { - /** - * Creates a Task Object - * @constructor - * - * @param {any} taskName - Name of the task - * @returns {any} A Task object - * @url http://www.espruino.com/Reference#l_Task_Task - */ - static new(taskName: any): any; - - /** - * Suspend task, be careful not to suspend Espruino task itself - * @url http://www.espruino.com/Reference#l_Task_suspend - */ - suspend(): void; - - /** - * Resumes a suspended task - * @url http://www.espruino.com/Reference#l_Task_resume - */ - resume(): void; - - /** - * returns name of actual task - * @returns {any} Name of current task - * @url http://www.espruino.com/Reference#l_Task_getCurrent - */ - getCurrent(): any; - - /** - * Sends a binary notify to task - * @url http://www.espruino.com/Reference#l_Task_notify - */ - notify(): void; - - /** - * logs list of tasks - * @url http://www.espruino.com/Reference#l_Task_log - */ - log(): void; -} +declare const Number: NumberConstructor /** - * A class to handle Timer on base of ESP32 Timer - * @url http://www.espruino.com/Reference#Timer + * This is the built-in class for Pins, such as D0,D1,LED1, or BTN + * You can call the methods on Pin, or you can use Wiring-style functions such as + * digitalWrite + * @url http://www.espruino.com/Reference#Pin */ -declare class Timer { +declare class Pin { /** - * Creates a Timer Object + * Creates a pin from the given argument (or returns undefined if no argument) * @constructor * - * @param {any} timerName - Timer Name - * @param {number} group - Timer group - * @param {number} index - Timer index - * @param {number} isrIndex - isr (0 = Espruino, 1 = test) - * @returns {any} A Timer Object - * @url http://www.espruino.com/Reference#l_Timer_Timer + * @param {any} value - A value to be converted to a pin. Can be a number, pin, or String. + * @returns {any} A Pin object + * @url http://www.espruino.com/Reference#l_Pin_Pin */ - static new(timerName: any, group: number, index: number, isrIndex: number): any; + static new(value: any): any; /** - * Starts a timer + * Returns the input state of the pin as a boolean. + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset the pin's state to `"input"` + * @returns {boolean} Whether pin is a logical 1 or 0 + * @url http://www.espruino.com/Reference#l_Pin_read + */ + read(): boolean; + + /** + * Sets the output state of the pin to a 1 + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset the pin's state to `"output"` + * @url http://www.espruino.com/Reference#l_Pin_set + */ + set(): void; + + /** + * Sets the output state of the pin to a 0 + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset the pin's state to `"output"` + * @url http://www.espruino.com/Reference#l_Pin_reset + */ + reset(): void; + + /** + * Sets the output state of the pin to the parameter given + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset the pin's state to `"output"` * - * @param {number} duration - duration of timmer in micro secs - * @url http://www.espruino.com/Reference#l_Timer_start + * @param {boolean} value - Whether to set output high (true/1) or low (false/0) + * @url http://www.espruino.com/Reference#l_Pin_write */ - start(duration: number): void; + write(value: boolean): void; /** - * Reschedules a timer, needs to be started at least once + * Sets the output state of the pin to the parameter given at the specified time. + * **Note:** this **doesn't** change the mode of the pin to an output. To do that, + * you need to use `pin.write(0)` or `pinMode(pin, 'output')` first. * - * @param {number} duration - duration of timmer in micro secs - * @url http://www.espruino.com/Reference#l_Timer_reschedule + * @param {boolean} value - Whether to set output high (true/1) or low (false/0) + * @param {number} time - Time at which to write + * @url http://www.espruino.com/Reference#l_Pin_writeAtTime */ - reschedule(duration: number): void; + writeAtTime(value: boolean, time: number): void; /** - * logs list of timers - * @url http://www.espruino.com/Reference#l_Timer_log + * Return the current mode of the given pin. See `pinMode` for more information. + * @returns {any} The pin mode, as a string + * @url http://www.espruino.com/Reference#l_Pin_getMode */ - log(): void; + getMode(): any; + + /** + * Set the mode of the given pin. See [`pinMode`](#l__global_pinMode) for more + * information on pin modes. + * + * @param {any} mode - The mode - a string that is either 'analog', 'input', 'input_pullup', 'input_pulldown', 'output', 'opendrain', 'af_output' or 'af_opendrain'. Do not include this argument if you want to revert to automatic pin mode setting. + * @url http://www.espruino.com/Reference#l_Pin_mode + */ + mode(mode: any): void; + + /** + * Toggles the state of the pin from off to on, or from on to off. + * **Note:** This method doesn't currently work on the ESP8266 port of Espruino. + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset the pin's state to `"output"` + * @returns {boolean} True if the pin is high after calling the function + * @url http://www.espruino.com/Reference#l_Pin_toggle + */ + toggle(): boolean; + + /** + * Get information about this pin and its capabilities. Of the form: + * ``` + * { + * "port" : "A", // the Pin's port on the chip + * "num" : 12, // the Pin's number + * "in_addr" : 0x..., // (if available) the address of the pin's input address in bit-banded memory (can be used with peek) + * "out_addr" : 0x..., // (if available) the address of the pin's output address in bit-banded memory (can be used with poke) + * "analog" : { ADCs : [1], channel : 12 }, // If analog input is available + * "functions" : { + * "TIM1":{type:"CH1, af:0}, + * "I2C3":{type:"SCL", af:1} + * } + * } + * ``` + * Will return undefined if pin is not valid. + * @returns {any} An object containing information about this pins + * @url http://www.espruino.com/Reference#l_Pin_getInfo + */ + getInfo(): any; } interface BooleanConstructor { @@ -10476,16 +10470,32 @@ declare const Boolean: BooleanConstructor // GLOBALS +/** + * The pin marked SDA on the Arduino pin footprint. This is connected directly to + * pin A4. + * @returns {Pin} + * @url http://www.espruino.com/Reference#l__global_SDA + */ +declare const SDA: Pin; + +/** + * The pin marked SDA on the Arduino pin footprint. This is connected directly to + * pin A5. + * @returns {Pin} + * @url http://www.espruino.com/Reference#l__global_SCL + */ +declare const SCL: Pin; + /** * **Note:** This function is only available on the [BBC micro:bit](/MicroBit) * board * Show an image on the in-built 5x5 LED screen. * Image can be: - * * A number where each bit represents a pixel (so 25 bits). eg. `5` or + * * A number where each bit represents a pixel (so 25 bits). e.g. `5` or * `0x1FFFFFF` - * * A string, eg: `show("10001")`. Newlines are ignored, and anything that is not + * * A string, e.g: `show("10001")`. Newlines are ignored, and anything that is not * a space or `0` is treated as a 1. - * * An array of 4 bytes (more will be ignored), eg `show([1,2,3,0])` + * * An array of 4 bytes (more will be ignored), e.g `show([1,2,3,0])` * For instance the following works for images: * ``` * show("# #"+ @@ -10527,6 +10537,54 @@ declare function acceleration(): any; */ declare function compass(): any; +/** + * On Puck.js V2 (not v1.0) this is the pin that controls the FET, for high-powered + * outputs. + * @returns {Pin} + * @url http://www.espruino.com/Reference#l__global_FET + */ +declare const FET: Pin; + +/** + * The Bangle.js's vibration motor. + * @returns {Pin} + * @url http://www.espruino.com/Reference#l__global_VIBRATE + */ +declare const VIBRATE: Pin; + +/** + * On most Espruino board there are LEDs, in which case `LED` will be an actual + * Pin. + * On Bangle.js there are no LEDs, so to remain compatible with example code that + * might expect an LED, this is an object that behaves like a pin, but which just + * displays a circle on the display + * @returns {any} A `Pin` object for a fake LED which appears on + * @url http://www.espruino.com/Reference#l__global_LED + */ +declare const LED: any; + +/** + * On most Espruino board there are LEDs, in which case `LED1` will be an actual + * Pin. + * On Bangle.js there are no LEDs, so to remain compatible with example code that + * might expect an LED, this is an object that behaves like a pin, but which just + * displays a circle on the display + * @returns {any} A `Pin` object for a fake LED which appears on + * @url http://www.espruino.com/Reference#l__global_LED1 + */ +declare const LED1: any; + +/** + * On most Espruino board there are LEDs, in which case `LED2` will be an actual + * Pin. + * On Bangle.js there are no LEDs, so to remain compatible with example code that + * might expect an LED, this is an object that behaves like a pin, but which just + * displays a circle on the display + * @returns {any} A `Pin` object for a fake LED which appears on + * @url http://www.espruino.com/Reference#l__global_LED2 + */ +declare const LED2: any; + /** * The pin connected to the 'A' button. Reads as `1` when pressed, `0` when not * @returns {Pin} @@ -10612,68 +10670,11 @@ declare const CORNER5: Pin; declare const CORNER6: Pin; /** - * On Puck.js V2 (not v1.0) this is the pin that controls the FET, for high-powered - * outputs. - * @returns {Pin} - * @url http://www.espruino.com/Reference#l__global_FET + * The Bluetooth Serial port - used when data is sent or received over Bluetooth + * Smart on nRF51/nRF52 chips. + * @url http://www.espruino.com/Reference#l__global_Bluetooth */ -declare const FET: Pin; - -/** - * The pin marked SDA on the Arduino pin footprint. This is connected directly to - * pin A4. - * @returns {Pin} - * @url http://www.espruino.com/Reference#l__global_SDA - */ -declare const SDA: Pin; - -/** - * The pin marked SDA on the Arduino pin footprint. This is connected directly to - * pin A5. - * @returns {Pin} - * @url http://www.espruino.com/Reference#l__global_SCL - */ -declare const SCL: Pin; - -/** - * The Bangle.js's vibration motor. - * @returns {Pin} - * @url http://www.espruino.com/Reference#l__global_VIBRATE - */ -declare const VIBRATE: Pin; - -/** - * On most Espruino board there are LEDs, in which case `LED` will be an actual - * Pin. - * On Bangle.js there are no LEDs, so to remain compatible with example code that - * might expect an LED, this is an object that behaves like a pin, but which just - * displays a circle on the display - * @returns {any} A `Pin` object for a fake LED which appears on - * @url http://www.espruino.com/Reference#l__global_LED - */ -declare const LED: any; - -/** - * On most Espruino board there are LEDs, in which case `LED1` will be an actual - * Pin. - * On Bangle.js there are no LEDs, so to remain compatible with example code that - * might expect an LED, this is an object that behaves like a pin, but which just - * displays a circle on the display - * @returns {any} A `Pin` object for a fake LED which appears on - * @url http://www.espruino.com/Reference#l__global_LED1 - */ -declare const LED1: any; - -/** - * On most Espruino board there are LEDs, in which case `LED2` will be an actual - * Pin. - * On Bangle.js there are no LEDs, so to remain compatible with example code that - * might expect an LED, this is an object that behaves like a pin, but which just - * displays a circle on the display - * @returns {any} A `Pin` object for a fake LED which appears on - * @url http://www.espruino.com/Reference#l__global_LED2 - */ -declare const LED2: any; +declare const Bluetooth: Serial; /** * @returns {Pin} A Pin @@ -10724,458 +10725,24 @@ declare const IOEXT2: Pin; declare const IOEXT3: Pin; /** - * @returns {number} Not a Number - * @url http://www.espruino.com/Reference#l__global_NaN + * A simple VT100 terminal emulator. + * When data is sent to the `Terminal` object, `Graphics.getInstance()` is called + * and if an instance of `Graphics` is found then characters are written to it. + * @url http://www.espruino.com/Reference#l__global_Terminal */ -declare const NaN: number; - -/** - * @returns {number} Positive Infinity (1/0) - * @url http://www.espruino.com/Reference#l__global_Infinity - */ -declare const Infinity: number; - -/** - * @returns {number} Logic 1 for Arduino compatibility - this is the same as just typing `1` - * @url http://www.espruino.com/Reference#l__global_HIGH - */ -declare const HIGH: 1; - -/** - * @returns {number} Logic 0 for Arduino compatibility - this is the same as just typing `0` - * @url http://www.espruino.com/Reference#l__global_LOW - */ -declare const LOW: 0; - -/** - * A variable containing the arguments given to the function: - * ``` - * function hello() { - * console.log(arguments.length, JSON.stringify(arguments)); - * } - * hello() // 0 [] - * hello("Test") // 1 ["Test"] - * hello(1,2,3) // 3 [1,2,3] - * ``` - * **Note:** Due to the way Espruino works this is doesn't behave exactly the same - * as in normal JavaScript. The length of the arguments array will never be less - * than the number of arguments specified in the function declaration: - * `(function(a){ return arguments.length; })() == 1`. Normal JavaScript - * interpreters would return `0` in the above case. - * @returns {any} An array containing all the arguments given to the function - * @url http://www.espruino.com/Reference#l__global_arguments - */ -declare const arguments: any; - -/** - * Evaluate a string containing JavaScript code - * - * @param {any} code - * @returns {any} The result of evaluating the string - * @url http://www.espruino.com/Reference#l__global_eval - */ -declare function eval(code: any): any; - -/** - * Convert a string representing a number into an integer - * - * @param {any} string - * @param {any} radix - The Radix of the string (optional) - * @returns {any} The integer value of the string (or NaN) - * @url http://www.espruino.com/Reference#l__global_parseInt - */ -declare function parseInt(string: any, radix: any): any; - -/** - * Convert a string representing a number into an float - * - * @param {any} string - * @returns {number} The value of the string - * @url http://www.espruino.com/Reference#l__global_parseFloat - */ -declare function parseFloat(string: any): number; - -/** - * Is the parameter a finite num,ber or not? If needed, the parameter is first - * converted to a number. - * - * @param {any} x - * @returns {boolean} True is the value is a Finite number, false if not. - * @url http://www.espruino.com/Reference#l__global_isFinite - */ -declare function isFinite(x: any): boolean; - -/** - * Whether the x is NaN (Not a Number) or not - * - * @param {any} x - * @returns {boolean} True is the value is NaN, false if not. - * @url http://www.espruino.com/Reference#l__global_isNaN - */ -declare function isNaN(x: any): boolean; - -/** - * Encode the supplied string (or array) into a base64 string - * - * @param {any} binaryData - A string of data to encode - * @returns {any} A base64 encoded string - * @url http://www.espruino.com/Reference#l__global_btoa - */ -declare function btoa(binaryData: any): any; - -/** - * Decode the supplied base64 string into a normal string - * - * @param {any} base64Data - A string of base64 data to decode - * @returns {any} A string containing the decoded data - * @url http://www.espruino.com/Reference#l__global_atob - */ -declare function atob(base64Data: any): any; - -/** - * Convert a string with any character not alphanumeric or `- _ . ! ~ * ' ( )` - * converted to the form `%XY` where `XY` is its hexadecimal representation - * - * @param {any} str - A string to encode as a URI - * @returns {any} A string containing the encoded data - * @url http://www.espruino.com/Reference#l__global_encodeURIComponent - */ -declare function encodeURIComponent(str: any): any; - -/** - * Convert any groups of characters of the form '%ZZ', into characters with hex - * code '0xZZ' - * - * @param {any} str - A string to decode from a URI - * @returns {any} A string containing the decoded data - * @url http://www.espruino.com/Reference#l__global_decodeURIComponent - */ -declare function decodeURIComponent(str: any): any; - -/** - * Load the given module, and return the exported functions and variables. - * For example: - * ``` - * var s = require("Storage"); - * s.write("test", "hello world"); - * print(s.read("test")); - * // prints "hello world" - * ``` - * Check out [the page on Modules](/Modules) for an explanation of what modules are - * and how you can use them. - * - * @param {any} moduleName - A String containing the name of the given module - * @returns {any} The result of evaluating the string - * @url http://www.espruino.com/Reference#l__global_require - */ -declare function require(moduleName: T): Libraries[T]; -declare function require>(moduleName: T): any; - -/** - * Read 8 bits of memory at the given location - DANGEROUS! - * - * @param {number} addr - The address in memory to read - * @param {number} count - (optional) the number of items to read. If >1 a Uint8Array will be returned. - * @returns {any} The value of memory at the given location - * @url http://www.espruino.com/Reference#l__global_peek8 - */ -declare function peek8(addr: number, count?: 1): number; -declare function peek8(addr: number, count: number): Uint8Array; - -/** - * Write 8 bits of memory at the given location - VERY DANGEROUS! - * - * @param {number} addr - The address in memory to write - * @param {any} value - The value to write, or an array of values - * @url http://www.espruino.com/Reference#l__global_poke8 - */ -declare function poke8(addr: number, value: number | number[]): void; - -/** - * Read 16 bits of memory at the given location - DANGEROUS! - * - * @param {number} addr - The address in memory to read - * @param {number} count - (optional) the number of items to read. If >1 a Uint16Array will be returned. - * @returns {any} The value of memory at the given location - * @url http://www.espruino.com/Reference#l__global_peek16 - */ -declare function peek16(addr: number, count?: 1): number; -declare function peek16(addr: number, count: number): Uint8Array; - -/** - * Write 16 bits of memory at the given location - VERY DANGEROUS! - * - * @param {number} addr - The address in memory to write - * @param {any} value - The value to write, or an array of values - * @url http://www.espruino.com/Reference#l__global_poke16 - */ -declare function poke16(addr: number, value: number | number[]): void; - -/** - * Read 32 bits of memory at the given location - DANGEROUS! - * - * @param {number} addr - The address in memory to read - * @param {number} count - (optional) the number of items to read. If >1 a Uint32Array will be returned. - * @returns {any} The value of memory at the given location - * @url http://www.espruino.com/Reference#l__global_peek32 - */ -declare function peek32(addr: number, count?: 1): number; -declare function peek32(addr: number, count: number): Uint8Array; - -/** - * Write 32 bits of memory at the given location - VERY DANGEROUS! - * - * @param {number} addr - The address in memory to write - * @param {any} value - The value to write, or an array of values - * @url http://www.espruino.com/Reference#l__global_poke32 - */ -declare function poke32(addr: number, value: number | number[]): void; - -/** - * Get the analog value of the given pin - * This is different to Arduino which only returns an integer between 0 and 1023 - * However only pins connected to an ADC will work (see the datasheet) - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset pin's state to `"analog"` - * - * @param {Pin} pin - * The pin to use - * You can find out which pins to use by looking at [your board's reference page](#boards) and searching for pins with the `ADC` markers. - * @returns {number} The analog Value of the Pin between 0 and 1 - * @url http://www.espruino.com/Reference#l__global_analogRead - */ -declare function analogRead(pin: Pin): number; - -/** - * Set the analog Value of a pin. It will be output using PWM. - * Objects can contain: - * * `freq` - pulse frequency in Hz, eg. ```analogWrite(A0,0.5,{ freq : 10 });``` - - * specifying a frequency will force PWM output, even if the pin has a DAC - * * `soft` - boolean, If true software PWM is used if hardware is not available. - * * `forceSoft` - boolean, If true software PWM is used even if hardware PWM or a - * DAC is available - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset pin's state to `"output"` - * - * @param {Pin} pin - * The pin to use - * You can find out which pins to use by looking at [your board's reference page](#boards) and searching for pins with the `PWM` or `DAC` markers. - * @param {number} value - A value between 0 and 1 - * @param {any} options - * An object containing options for analog output - see below - * @url http://www.espruino.com/Reference#l__global_analogWrite - */ -declare function analogWrite(pin: Pin, value: number, options?: { freq?: number, soft?: boolean, forceSoft?: boolean }): void; - -/** - * Pulse the pin with the value for the given time in milliseconds. It uses a - * hardware timer to produce accurate pulses, and returns immediately (before the - * pulse has finished). Use `digitalPulse(A0,1,0)` to wait until a previous pulse - * has finished. - * eg. `digitalPulse(A0,1,5);` pulses A0 high for 5ms. - * `digitalPulse(A0,1,[5,2,4]);` pulses A0 high for 5ms, low for 2ms, and high for - * 4ms - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset pin's state to `"output"` - * digitalPulse is for SHORT pulses that need to be very accurate. If you're doing - * anything over a few milliseconds, use setTimeout instead. - * - * @param {Pin} pin - The pin to use - * @param {boolean} value - Whether to pulse high (true) or low (false) - * @param {any} time - A time in milliseconds, or an array of times (in which case a square wave will be output starting with a pulse of 'value') - * @url http://www.espruino.com/Reference#l__global_digitalPulse - */ -declare function digitalPulse(pin: Pin, value: boolean, time: number | number[]): void; - -/** - * Set the digital value of the given pin. - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset pin's state to `"output"` - * If pin argument is an array of pins (eg. `[A2,A1,A0]`) the value argument will - * be treated as an array of bits where the last array element is the least - * significant bit. - * In this case, pin values are set least significant bit first (from the - * right-hand side of the array of pins). This means you can use the same pin - * multiple times, for example `digitalWrite([A1,A1,A0,A0],0b0101)` would pulse A0 - * followed by A1. - * If the pin argument is an object with a `write` method, the `write` method will - * be called with the value passed through. - * - * @param {any} pin - The pin to use - * @param {number} value - Whether to pulse high (true) or low (false) - * @url http://www.espruino.com/Reference#l__global_digitalWrite - */ -declare function digitalWrite(pin: Pin, value: typeof HIGH | typeof LOW): void; - -/** - * Get the digital value of the given pin. - * **Note:** if you didn't call `pinMode` beforehand then this function will also - * reset pin's state to `"input"` - * If the pin argument is an array of pins (eg. `[A2,A1,A0]`) the value returned - * will be an number where the last array element is the least significant bit, for - * example if `A0=A1=1` and `A2=0`, `digitalRead([A2,A1,A0]) == 0b011` - * If the pin argument is an object with a `read` method, the `read` method will be - * called and the integer value it returns passed back. - * - * @param {any} pin - The pin to use - * @returns {number} The digital Value of the Pin - * @url http://www.espruino.com/Reference#l__global_digitalRead - */ -declare function digitalRead(pin: Pin): number; - -/** - * Set the mode of the given pin. - * * `auto`/`undefined` - Don't change state, but allow `digitalWrite`/etc to - * automatically change state as appropriate - * * `analog` - Analog input - * * `input` - Digital input - * * `input_pullup` - Digital input with internal ~40k pull-up resistor - * * `input_pulldown` - Digital input with internal ~40k pull-down resistor - * * `output` - Digital output - * * `opendrain` - Digital output that only ever pulls down to 0v. Sending a - * logical `1` leaves the pin open circuit - * * `opendrain_pullup` - Digital output that pulls down to 0v. Sending a logical - * `1` enables internal ~40k pull-up resistor - * * `af_output` - Digital output from built-in peripheral - * * `af_opendrain` - Digital output from built-in peripheral that only ever pulls - * down to 0v. Sending a logical `1` leaves the pin open circuit - * **Note:** `digitalRead`/`digitalWrite`/etc set the pin mode automatically - * *unless* `pinMode` has been called first. If you want `digitalRead`/etc to set - * the pin mode automatically after you have called `pinMode`, simply call it again - * with no mode argument (`pinMode(pin)`), `auto` as the argument (`pinMode(pin, - * "auto")`), or with the 3rd 'automatic' argument set to true (`pinMode(pin, - * "output", true)`). - * - * @param {Pin} pin - The pin to set pin mode for - * @param {any} mode - The mode - a string that is either 'analog', 'input', 'input_pullup', 'input_pulldown', 'output', 'opendrain', 'af_output' or 'af_opendrain'. Do not include this argument or use 'auto' if you want to revert to automatic pin mode setting. - * @param {boolean} automatic - Optional, default is false. If true, subsequent commands will automatically change the state (see notes below) - * @url http://www.espruino.com/Reference#l__global_pinMode - */ -declare function pinMode(pin: Pin, mode?: PinMode | "auto", automatic?: boolean): void; - -/** - * Return the current mode of the given pin. See `pinMode` for more information on - * returned values. - * - * @param {Pin} pin - The pin to check - * @returns {any} The pin mode, as a string - * @url http://www.espruino.com/Reference#l__global_getPinMode - */ -declare function getPinMode(pin: Pin): PinMode; - -/** - * Shift an array of data out using the pins supplied *least significant bit - * first*, for example: - * ``` - * // shift out to single clk+data - * shiftOut(A0, { clk : A1 }, [1,0,1,0]); - * ``` - * ``` - * // shift out a whole byte (like software SPI) - * shiftOut(A0, { clk : A1, repeat: 8 }, [1,2,3,4]); - * ``` - * ``` - * // shift out via 4 data pins - * shiftOut([A3,A2,A1,A0], { clk : A4 }, [1,2,3,4]); - * ``` - * `options` is an object of the form: - * ``` - * { - * clk : pin, // a pin to use as the clock (undefined = no pin) - * clkPol : bool, // clock polarity - default is 0 (so 1 normally, pulsing to 0 to clock data in) - * repeat : int, // number of clocks per array item - * } - * ``` - * Each item in the `data` array will be output to the pins, with the first pin in - * the array being the MSB and the last the LSB, then the clock will be pulsed in - * the polarity given. - * `repeat` is the amount of times shift data out for each array item. For instance - * we may want to shift 8 bits out through 2 pins - in which case we need to set - * repeat to 4. - * - * @param {any} pins - A pin, or an array of pins to use - * @param {any} options - Options, for instance the clock (see below) - * @param {any} data - The data to shift out (see `E.toUint8Array` for info on the forms this can take) - * @url http://www.espruino.com/Reference#l__global_shiftOut - */ -declare function shiftOut(pins: Pin | Pin[], options: { clk?: Pin, clkPol?: boolean, repeat?: number }, data: Uint8ArrayResolvable): void; - -/** - * Call the function specified when the pin changes. Watches set with `setWatch` - * can be removed using `clearWatch`. - * If the `options` parameter is an object, it can contain the following - * information (all optional): - * ``` - * { - * // Whether to keep producing callbacks, or remove the watch after the first callback - * repeat: true/false(default), - * // Trigger on the rising or falling edge of the signal. Can be a string, or 1='rising', -1='falling', 0='both' - * edge:'rising'(default for built-in buttons)/'falling'/'both'(default for pins), - * // Use software-debouncing to stop multiple calls if a switch bounces - * // This is the time in milliseconds to wait for bounces to subside, or 0 to disable - * debounce:10 (0 is default for pins, 25 is default for built-in buttons), - * // Advanced: If the function supplied is a 'native' function (compiled or assembly) - * // setting irq:true will call that function in the interrupt itself - * irq : false(default) - * // Advanced: If specified, the given pin will be read whenever the watch is called - * // and the state will be included as a 'data' field in the callback - * data : pin - * // Advanced: On Nordic devices, a watch may be 'high' or 'low' accuracy. By default low - * // accuracy is used (which is better for power consumption), but this means that - * // high speed pulses (less than 25us) may not be reliably received. Setting hispeed=true - * // allows for detecting high speed pulses at the expense of higher idle power consumption - * hispeed : true - * } - * ``` - * The `function` callback is called with an argument, which is an object of type - * `{state:bool, time:float, lastTime:float}`. - * * `state` is whether the pin is currently a `1` or a `0` - * * `time` is the time in seconds at which the pin changed state - * * `lastTime` is the time in seconds at which the **pin last changed state**. - * When using `edge:'rising'` or `edge:'falling'`, this is not the same as when - * the function was last called. - * * `data` is included if `data:pin` was specified in the options, and can be - * used for reading in clocked data - * For instance, if you want to measure the length of a positive pulse you could - * use `setWatch(function(e) { console.log(e.time-e.lastTime); }, BTN, { - * repeat:true, edge:'falling' });`. This will only be called on the falling edge - * of the pulse, but will be able to measure the width of the pulse because - * `e.lastTime` is the time of the rising edge. - * Internally, an interrupt writes the time of the pin's state change into a queue - * with the exact time that it happened, and the function supplied to `setWatch` is - * executed only from the main message loop. However, if the callback is a native - * function `void (bool state)` then you can add `irq:true` to options, which will - * cause the function to be called from within the IRQ. When doing this, interrupts - * will happen on both edges and there will be no debouncing. - * **Note:** if you didn't call `pinMode` beforehand then this function will reset - * pin's state to `"input"` - * **Note:** The STM32 chip (used in the [Espruino Board](/EspruinoBoard) and - * [Pico](/Pico)) cannot watch two pins with the same number - eg `A0` and `B0`. - * **Note:** On nRF52 chips (used in Puck.js, Pixl.js, MDBT42Q) `setWatch` disables - * the GPIO output on that pin. In order to be able to write to the pin again you - * need to disable the watch with `clearWatch`. - * - * @param {any} function - A Function or String to be executed - * @param {Pin} pin - The pin to watch - * @param {any} options - If a boolean or integer, it determines whether to call this once (false = default) or every time a change occurs (true). Can be an object of the form `{ repeat: true/false(default), edge:'rising'/'falling'/'both'(default), debounce:10}` - see below for more information. - * @returns {any} An ID that can be passed to clearWatch - * @url http://www.espruino.com/Reference#l__global_setWatch - */ -declare function setWatch(func: ((arg: { state: boolean, time: number, lastTime: number }) => void) | string, pin: Pin, options?: boolean | { repeat?: boolean, edge?: "rising" | "falling" | "both", debounce?: number, irq?: boolean, data?: Pin, hispeed?: boolean }): number; - -/** - * Clear the Watch that was created with setWatch. If no parameter is supplied, all watches will be removed. - * To avoid accidentally deleting all Watches, if a parameter is supplied but is `undefined` then an Exception will be thrown. - * - * @param {any} id - The id returned by a previous call to setWatch. **Only one argument is allowed.** - * @url http://www.espruino.com/Reference#l__global_clearWatch - */ -declare function clearWatch(id: number): void; +declare const Terminal: Serial; declare const global: { + SDA: typeof SDA; + SCL: typeof SCL; show: typeof show; acceleration: typeof acceleration; compass: typeof compass; + FET: typeof FET; + VIBRATE: typeof VIBRATE; + LED: typeof LED; + LED1: typeof LED1; + LED2: typeof LED2; BTNA: typeof BTNA; BTNB: typeof BTNB; BTNU: typeof BTNU; @@ -11188,13 +10755,7 @@ declare const global: { CORNER4: typeof CORNER4; CORNER5: typeof CORNER5; CORNER6: typeof CORNER6; - FET: typeof FET; - SDA: typeof SDA; - SCL: typeof SCL; - VIBRATE: typeof VIBRATE; - LED: typeof LED; - LED1: typeof LED1; - LED2: typeof LED2; + Bluetooth: typeof Bluetooth; MOS1: typeof MOS1; MOS2: typeof MOS2; MOS3: typeof MOS3; @@ -11203,21 +10764,25 @@ declare const global: { IOEXT1: typeof IOEXT1; IOEXT2: typeof IOEXT2; IOEXT3: typeof IOEXT3; - NaN: typeof NaN; - Infinity: typeof Infinity; - HIGH: typeof HIGH; - LOW: typeof LOW; - arguments: typeof arguments; - eval: typeof eval; - parseInt: typeof parseInt; - parseFloat: typeof parseFloat; - isFinite: typeof isFinite; - isNaN: typeof isNaN; - btoa: typeof btoa; - atob: typeof atob; - encodeURIComponent: typeof encodeURIComponent; - decodeURIComponent: typeof decodeURIComponent; - require: typeof require; + Terminal: typeof Terminal; + global: typeof global; + setBusyIndicator: typeof setBusyIndicator; + setSleepIndicator: typeof setSleepIndicator; + setDeepSleep: typeof setDeepSleep; + dump: typeof dump; + load: typeof load; + save: typeof save; + reset: typeof reset; + edit: typeof edit; + echo: typeof echo; + getTime: typeof getTime; + setTime: typeof setTime; + getSerial: typeof getSerial; + setInterval: typeof setInterval; + setTimeout: typeof setTimeout; + clearInterval: typeof clearInterval; + clearTimeout: typeof clearTimeout; + changeInterval: typeof changeInterval; peek8: typeof peek8; poke8: typeof poke8; peek16: typeof peek16; @@ -11234,26 +10799,40 @@ declare const global: { shiftOut: typeof shiftOut; setWatch: typeof setWatch; clearWatch: typeof clearWatch; - global: typeof global; - setBusyIndicator: typeof setBusyIndicator; - setSleepIndicator: typeof setSleepIndicator; - setDeepSleep: typeof setDeepSleep; + arguments: typeof arguments; + eval: typeof eval; + parseInt: typeof parseInt; + parseFloat: typeof parseFloat; + isFinite: typeof isFinite; + isNaN: typeof isNaN; + btoa: typeof btoa; + atob: typeof atob; + encodeURIComponent: typeof encodeURIComponent; + decodeURIComponent: typeof decodeURIComponent; trace: typeof trace; - dump: typeof dump; - load: typeof load; - save: typeof save; - reset: typeof reset; print: typeof print; - edit: typeof edit; - echo: typeof echo; - getTime: typeof getTime; - setTime: typeof setTime; - getSerial: typeof getSerial; - setInterval: typeof setInterval; - setTimeout: typeof setTimeout; - clearInterval: typeof clearInterval; - clearTimeout: typeof clearTimeout; - changeInterval: typeof changeInterval; + require: typeof require; + __FILE__: typeof __FILE__; + SPI1: typeof SPI1; + SPI2: typeof SPI2; + SPI3: typeof SPI3; + I2C1: typeof I2C1; + I2C2: typeof I2C2; + I2C3: typeof I2C3; + USB: typeof USB; + Serial1: typeof Serial1; + Serial2: typeof Serial2; + Serial3: typeof Serial3; + Serial4: typeof Serial4; + Serial5: typeof Serial5; + Serial6: typeof Serial6; + LoopbackA: typeof LoopbackA; + LoopbackB: typeof LoopbackB; + Telnet: typeof Telnet; + NaN: typeof NaN; + Infinity: typeof Infinity; + HIGH: typeof HIGH; + LOW: typeof LOW; [key: string]: any; } @@ -11287,16 +10866,6 @@ declare function setSleepIndicator(pin: any): void; */ declare function setDeepSleep(sleep: boolean): void; -/** - * Output debugging information - * Note: This is not included on boards with low amounts of flash memory, or the - * Espruino board. - * - * @param {any} root - The symbol to output (optional). If nothing is specified, everything will be output - * @url http://www.espruino.com/Reference#l__global_trace - */ -declare function trace(root: any): void; - /** * Output current interpreter state in a text form such that it can be copied to a * new device @@ -11326,10 +10895,10 @@ declare function dump(): void; * Storage after reset** in much the same way as calling `reset()` then * `eval(require("Storage").read(filename))` * - * @param {any} filename - optional: The name of a text JS file to load from Storage after reset + * @param {any} [filename] - [optional] The name of a text JS file to load from Storage after reset * @url http://www.espruino.com/Reference#l__global_load */ -declare function load(filename: any): void; +declare function load(filename?: any): void; /** * Save the state of the interpreter into flash (including the results of calling @@ -11375,18 +10944,6 @@ declare function save(): void; */ declare function reset(clearFlash: boolean): void; -/** - * Print the supplied string(s) to the console - * **Note:** If you're connected to a computer (not a wall adaptor) via USB but - * **you are not running a terminal app** then when you print data Espruino may - * pause execution and wait until the computer requests the data it is trying to - * print. - * - * @param {any} text - * @url http://www.espruino.com/Reference#l__global_print - */ -declare function print(...text: any[]): void; - /** * Fill the console with the contents of the given function, so you can edit it. * NOTE: This is a convenience function - it will not edit 'inner functions'. For @@ -11545,1468 +11102,2201 @@ declare function clearTimeout(...id: any[]): void; */ declare function changeInterval(id: any, time: number): void; +/** + * Read 8 bits of memory at the given location - DANGEROUS! + * + * @param {number} addr - The address in memory to read + * @param {number} [count] - [optional] the number of items to read. If >1 a Uint8Array will be returned. + * @returns {any} The value of memory at the given location + * @url http://www.espruino.com/Reference#l__global_peek8 + */ +declare function peek8(addr: number, count?: 1): number; +declare function peek8(addr: number, count: number): Uint8Array; + +/** + * Write 8 bits of memory at the given location - VERY DANGEROUS! + * + * @param {number} addr - The address in memory to write + * @param {any} value - The value to write, or an array of values + * @url http://www.espruino.com/Reference#l__global_poke8 + */ +declare function poke8(addr: number, value: number | number[]): void; + +/** + * Read 16 bits of memory at the given location - DANGEROUS! + * + * @param {number} addr - The address in memory to read + * @param {number} [count] - [optional] the number of items to read. If >1 a Uint16Array will be returned. + * @returns {any} The value of memory at the given location + * @url http://www.espruino.com/Reference#l__global_peek16 + */ +declare function peek16(addr: number, count?: 1): number; +declare function peek16(addr: number, count: number): Uint8Array; + +/** + * Write 16 bits of memory at the given location - VERY DANGEROUS! + * + * @param {number} addr - The address in memory to write + * @param {any} value - The value to write, or an array of values + * @url http://www.espruino.com/Reference#l__global_poke16 + */ +declare function poke16(addr: number, value: number | number[]): void; + +/** + * Read 32 bits of memory at the given location - DANGEROUS! + * + * @param {number} addr - The address in memory to read + * @param {number} [count] - [optional] the number of items to read. If >1 a Uint32Array will be returned. + * @returns {any} The value of memory at the given location + * @url http://www.espruino.com/Reference#l__global_peek32 + */ +declare function peek32(addr: number, count?: 1): number; +declare function peek32(addr: number, count: number): Uint8Array; + +/** + * Write 32 bits of memory at the given location - VERY DANGEROUS! + * + * @param {number} addr - The address in memory to write + * @param {any} value - The value to write, or an array of values + * @url http://www.espruino.com/Reference#l__global_poke32 + */ +declare function poke32(addr: number, value: number | number[]): void; + +/** + * Get the analogue value of the given pin + * This is different to Arduino which only returns an integer between 0 and 1023 + * However only pins connected to an ADC will work (see the datasheet) + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset pin's state to `"analog"` + * + * @param {Pin} pin + * The pin to use + * You can find out which pins to use by looking at [your board's reference page](#boards) and searching for pins with the `ADC` markers. + * @returns {number} The analog Value of the Pin between 0 and 1 + * @url http://www.espruino.com/Reference#l__global_analogRead + */ +declare function analogRead(pin: Pin): number; + +/** + * Set the analog Value of a pin. It will be output using PWM. + * Objects can contain: + * * `freq` - pulse frequency in Hz, e.g. ```analogWrite(A0,0.5,{ freq : 10 });``` - + * specifying a frequency will force PWM output, even if the pin has a DAC + * * `soft` - boolean, If true software PWM is used if hardware is not available. + * * `forceSoft` - boolean, If true software PWM is used even if hardware PWM or a + * DAC is available + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset pin's state to `"output"` + * + * @param {Pin} pin + * The pin to use + * You can find out which pins to use by looking at [your board's reference page](#boards) and searching for pins with the `PWM` or `DAC` markers. + * @param {number} value - A value between 0 and 1 + * @param {any} options + * An object containing options for analog output - see below + * @url http://www.espruino.com/Reference#l__global_analogWrite + */ +declare function analogWrite(pin: Pin, value: number, options?: { freq?: number, soft?: boolean, forceSoft?: boolean }): void; + +/** + * Pulse the pin with the value for the given time in milliseconds. It uses a + * hardware timer to produce accurate pulses, and returns immediately (before the + * pulse has finished). Use `digitalPulse(A0,1,0)` to wait until a previous pulse + * has finished. + * e.g. `digitalPulse(A0,1,5);` pulses A0 high for 5ms. + * `digitalPulse(A0,1,[5,2,4]);` pulses A0 high for 5ms, low for 2ms, and high for + * 4ms + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset pin's state to `"output"` + * digitalPulse is for SHORT pulses that need to be very accurate. If you're doing + * anything over a few milliseconds, use setTimeout instead. + * + * @param {Pin} pin - The pin to use + * @param {boolean} value - Whether to pulse high (true) or low (false) + * @param {any} time - A time in milliseconds, or an array of times (in which case a square wave will be output starting with a pulse of 'value') + * @url http://www.espruino.com/Reference#l__global_digitalPulse + */ +declare function digitalPulse(pin: Pin, value: boolean, time: number | number[]): void; + +/** + * Set the digital value of the given pin. + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset pin's state to `"output"` + * If pin argument is an array of pins (e.g. `[A2,A1,A0]`) the value argument will + * be treated as an array of bits where the last array element is the least + * significant bit. + * In this case, pin values are set least significant bit first (from the + * right-hand side of the array of pins). This means you can use the same pin + * multiple times, for example `digitalWrite([A1,A1,A0,A0],0b0101)` would pulse A0 + * followed by A1. + * If the pin argument is an object with a `write` method, the `write` method will + * be called with the value passed through. + * + * @param {any} pin - The pin to use + * @param {number} value - Whether to pulse high (true) or low (false) + * @url http://www.espruino.com/Reference#l__global_digitalWrite + */ +declare function digitalWrite(pin: Pin, value: boolean): void; + +/** + * Get the digital value of the given pin. + * **Note:** if you didn't call `pinMode` beforehand then this function will also + * reset pin's state to `"input"` + * If the pin argument is an array of pins (e.g. `[A2,A1,A0]`) the value returned + * will be an number where the last array element is the least significant bit, for + * example if `A0=A1=1` and `A2=0`, `digitalRead([A2,A1,A0]) == 0b011` + * If the pin argument is an object with a `read` method, the `read` method will be + * called and the integer value it returns passed back. + * + * @param {any} pin - The pin to use + * @returns {number} The digital Value of the Pin + * @url http://www.espruino.com/Reference#l__global_digitalRead + */ +declare function digitalRead(pin: Pin): number; + +/** + * Set the mode of the given pin. + * * `auto`/`undefined` - Don't change state, but allow `digitalWrite`/etc to + * automatically change state as appropriate + * * `analog` - Analog input + * * `input` - Digital input + * * `input_pullup` - Digital input with internal ~40k pull-up resistor + * * `input_pulldown` - Digital input with internal ~40k pull-down resistor + * * `output` - Digital output + * * `opendrain` - Digital output that only ever pulls down to 0v. Sending a + * logical `1` leaves the pin open circuit + * * `opendrain_pullup` - Digital output that pulls down to 0v. Sending a logical + * `1` enables internal ~40k pull-up resistor + * * `af_output` - Digital output from built-in peripheral + * * `af_opendrain` - Digital output from built-in peripheral that only ever pulls + * down to 0v. Sending a logical `1` leaves the pin open circuit + * **Note:** `digitalRead`/`digitalWrite`/etc set the pin mode automatically + * *unless* `pinMode` has been called first. If you want `digitalRead`/etc to set + * the pin mode automatically after you have called `pinMode`, simply call it again + * with no mode argument (`pinMode(pin)`), `auto` as the argument (`pinMode(pin, + * "auto")`), or with the 3rd 'automatic' argument set to true (`pinMode(pin, + * "output", true)`). + * + * @param {Pin} pin - The pin to set pin mode for + * @param {any} mode - The mode - a string that is either 'analog', 'input', 'input_pullup', 'input_pulldown', 'output', 'opendrain', 'af_output' or 'af_opendrain'. Do not include this argument or use 'auto' if you want to revert to automatic pin mode setting. + * @param {boolean} automatic - Optional, default is false. If true, subsequent commands will automatically change the state (see notes below) + * @url http://www.espruino.com/Reference#l__global_pinMode + */ +declare function pinMode(pin: Pin, mode?: PinMode | "auto", automatic?: boolean): void; + +/** + * Return the current mode of the given pin. See `pinMode` for more information on + * returned values. + * + * @param {Pin} pin - The pin to check + * @returns {any} The pin mode, as a string + * @url http://www.espruino.com/Reference#l__global_getPinMode + */ +declare function getPinMode(pin: Pin): PinMode; + +/** + * Shift an array of data out using the pins supplied *least significant bit + * first*, for example: + * ``` + * // shift out to single clk+data + * shiftOut(A0, { clk : A1 }, [1,0,1,0]); + * ``` + * ``` + * // shift out a whole byte (like software SPI) + * shiftOut(A0, { clk : A1, repeat: 8 }, [1,2,3,4]); + * ``` + * ``` + * // shift out via 4 data pins + * shiftOut([A3,A2,A1,A0], { clk : A4 }, [1,2,3,4]); + * ``` + * `options` is an object of the form: + * ``` + * { + * clk : pin, // a pin to use as the clock (undefined = no pin) + * clkPol : bool, // clock polarity - default is 0 (so 1 normally, pulsing to 0 to clock data in) + * repeat : int, // number of clocks per array item + * } + * ``` + * Each item in the `data` array will be output to the pins, with the first pin in + * the array being the MSB and the last the LSB, then the clock will be pulsed in + * the polarity given. + * `repeat` is the amount of times shift data out for each array item. For instance + * we may want to shift 8 bits out through 2 pins - in which case we need to set + * repeat to 4. + * + * @param {any} pins - A pin, or an array of pins to use + * @param {any} options - Options, for instance the clock (see below) + * @param {any} data - The data to shift out (see `E.toUint8Array` for info on the forms this can take) + * @url http://www.espruino.com/Reference#l__global_shiftOut + */ +declare function shiftOut(pins: Pin | Pin[], options: { clk?: Pin, clkPol?: boolean, repeat?: number }, data: Uint8ArrayResolvable): void; + +/** + * Call the function specified when the pin changes. Watches set with `setWatch` + * can be removed using `clearWatch`. + * If the `options` parameter is an object, it can contain the following + * information (all optional): + * ``` + * { + * // Whether to keep producing callbacks, or remove the watch after the first callback + * repeat: true/false(default), + * // Trigger on the rising or falling edge of the signal. Can be a string, or 1='rising', -1='falling', 0='both' + * edge:'rising'(default for built-in buttons)/'falling'/'both'(default for pins), + * // Use software-debouncing to stop multiple calls if a switch bounces + * // This is the time in milliseconds to wait for bounces to subside, or 0 to disable + * debounce:10 (0 is default for pins, 25 is default for built-in buttons), + * // Advanced: If the function supplied is a 'native' function (compiled or assembly) + * // setting irq:true will call that function in the interrupt itself + * irq : false(default) + * // Advanced: If specified, the given pin will be read whenever the watch is called + * // and the state will be included as a 'data' field in the callback + * data : pin + * // Advanced: On Nordic devices, a watch may be 'high' or 'low' accuracy. By default low + * // accuracy is used (which is better for power consumption), but this means that + * // high speed pulses (less than 25us) may not be reliably received. Setting hispeed=true + * // allows for detecting high speed pulses at the expense of higher idle power consumption + * hispeed : true + * } + * ``` + * The `function` callback is called with an argument, which is an object of type + * `{state:bool, time:float, lastTime:float}`. + * * `state` is whether the pin is currently a `1` or a `0` + * * `time` is the time in seconds at which the pin changed state + * * `lastTime` is the time in seconds at which the **pin last changed state**. + * When using `edge:'rising'` or `edge:'falling'`, this is not the same as when + * the function was last called. + * * `data` is included if `data:pin` was specified in the options, and can be + * used for reading in clocked data + * For instance, if you want to measure the length of a positive pulse you could + * use `setWatch(function(e) { console.log(e.time-e.lastTime); }, BTN, { + * repeat:true, edge:'falling' });`. This will only be called on the falling edge + * of the pulse, but will be able to measure the width of the pulse because + * `e.lastTime` is the time of the rising edge. + * Internally, an interrupt writes the time of the pin's state change into a queue + * with the exact time that it happened, and the function supplied to `setWatch` is + * executed only from the main message loop. However, if the callback is a native + * function `void (bool state)` then you can add `irq:true` to options, which will + * cause the function to be called from within the IRQ. When doing this, interrupts + * will happen on both edges and there will be no debouncing. + * **Note:** if you didn't call `pinMode` beforehand then this function will reset + * pin's state to `"input"` + * **Note:** The STM32 chip (used in the [Espruino Board](/EspruinoBoard) and + * [Pico](/Pico)) cannot watch two pins with the same number - e.g. `A0` and `B0`. + * **Note:** On nRF52 chips (used in Puck.js, Pixl.js, MDBT42Q) `setWatch` disables + * the GPIO output on that pin. In order to be able to write to the pin again you + * need to disable the watch with `clearWatch`. + * + * @param {any} function - A Function or String to be executed + * @param {Pin} pin - The pin to watch + * @param {any} options - If a boolean or integer, it determines whether to call this once (false = default) or every time a change occurs (true). Can be an object of the form `{ repeat: true/false(default), edge:'rising'/'falling'/'both'(default), debounce:10}` - see below for more information. + * @returns {any} An ID that can be passed to clearWatch + * @url http://www.espruino.com/Reference#l__global_setWatch + */ +declare function setWatch(func: ((arg: { state: boolean, time: number, lastTime: number }) => void) | string, pin: Pin, options?: boolean | { repeat?: boolean, edge?: "rising" | "falling" | "both", debounce?: number, irq?: boolean, data?: Pin, hispeed?: boolean }): number; + +/** + * Clear the Watch that was created with setWatch. If no parameter is supplied, all watches will be removed. + * To avoid accidentally deleting all Watches, if a parameter is supplied but is `undefined` then an Exception will be thrown. + * + * @param {any} id - The id returned by a previous call to setWatch. **Only one argument is allowed.** + * @url http://www.espruino.com/Reference#l__global_clearWatch + */ +declare function clearWatch(id: number): void; + +/** + * A variable containing the arguments given to the function: + * ``` + * function hello() { + * console.log(arguments.length, JSON.stringify(arguments)); + * } + * hello() // 0 [] + * hello("Test") // 1 ["Test"] + * hello(1,2,3) // 3 [1,2,3] + * ``` + * **Note:** Due to the way Espruino works this is doesn't behave exactly the same + * as in normal JavaScript. The length of the arguments array will never be less + * than the number of arguments specified in the function declaration: + * `(function(a){ return arguments.length; })() == 1`. Normal JavaScript + * interpreters would return `0` in the above case. + * @returns {any} An array containing all the arguments given to the function + * @url http://www.espruino.com/Reference#l__global_arguments + */ +declare const arguments: any; + +/** + * Evaluate a string containing JavaScript code + * + * @param {any} code + * @returns {any} The result of evaluating the string + * @url http://www.espruino.com/Reference#l__global_eval + */ +declare function eval(code: any): any; + +/** + * Convert a string representing a number into an integer + * + * @param {any} string + * @param {any} [radix] - [optional] The Radix of the string + * @returns {any} The integer value of the string (or NaN) + * @url http://www.espruino.com/Reference#l__global_parseInt + */ +declare function parseInt(string: any, radix?: any): any; + +/** + * Convert a string representing a number into an float + * + * @param {any} string + * @returns {number} The value of the string + * @url http://www.espruino.com/Reference#l__global_parseFloat + */ +declare function parseFloat(string: any): number; + +/** + * Is the parameter a finite number or not? If needed, the parameter is first + * converted to a number. + * + * @param {any} x + * @returns {boolean} True is the value is a Finite number, false if not. + * @url http://www.espruino.com/Reference#l__global_isFinite + */ +declare function isFinite(x: any): boolean; + +/** + * Whether the x is NaN (Not a Number) or not + * + * @param {any} x + * @returns {boolean} True is the value is NaN, false if not. + * @url http://www.espruino.com/Reference#l__global_isNaN + */ +declare function isNaN(x: any): boolean; + +/** + * Encode the supplied string (or array) into a base64 string + * + * @param {any} binaryData - A string of data to encode + * @returns {any} A base64 encoded string + * @url http://www.espruino.com/Reference#l__global_btoa + */ +declare function btoa(binaryData: any): any; + +/** + * Decode the supplied base64 string into a normal string + * + * @param {any} base64Data - A string of base64 data to decode + * @returns {any} A string containing the decoded data + * @url http://www.espruino.com/Reference#l__global_atob + */ +declare function atob(base64Data: any): any; + +/** + * Convert a string with any character not alphanumeric or `- _ . ! ~ * ' ( )` + * converted to the form `%XY` where `XY` is its hexadecimal representation + * + * @param {any} str - A string to encode as a URI + * @returns {any} A string containing the encoded data + * @url http://www.espruino.com/Reference#l__global_encodeURIComponent + */ +declare function encodeURIComponent(str: any): any; + +/** + * Convert any groups of characters of the form '%ZZ', into characters with hex + * code '0xZZ' + * + * @param {any} str - A string to decode from a URI + * @returns {any} A string containing the decoded data + * @url http://www.espruino.com/Reference#l__global_decodeURIComponent + */ +declare function decodeURIComponent(str: any): any; + +/** + * Output debugging information + * Note: This is not included on boards with low amounts of flash memory, or the + * Espruino board. + * + * @param {any} root - The symbol to output (optional). If nothing is specified, everything will be output + * @url http://www.espruino.com/Reference#l__global_trace + */ +declare function trace(root: any): void; + +/** + * Print the supplied string(s) to the console + * **Note:** If you're connected to a computer (not a wall adaptor) via USB but + * **you are not running a terminal app** then when you print data Espruino may + * pause execution and wait until the computer requests the data it is trying to + * print. + * + * @param {any} text + * @url http://www.espruino.com/Reference#l__global_print + */ +declare function print(...text: any[]): void; + +declare function require(moduleName: "ESP8266"): typeof import("ESP8266"); +declare function require(moduleName: "crypto"): typeof import("crypto"); +declare function require(moduleName: "neopixel"): typeof import("neopixel"); +declare function require(moduleName: "net"): typeof import("net"); +declare function require(moduleName: "dgram"): typeof import("dgram"); +declare function require(moduleName: "tls"): typeof import("tls"); +declare function require(moduleName: "Wifi"): typeof import("Wifi"); +declare function require(moduleName: "NetworkJS"): typeof import("NetworkJS"); +declare function require(moduleName: "http"): typeof import("http"); +declare function require(moduleName: "WIZnet"): typeof import("WIZnet"); +declare function require(moduleName: "CC3000"): typeof import("CC3000"); +declare function require(moduleName: "TelnetServer"): typeof import("TelnetServer"); +declare function require(moduleName: "fs"): typeof import("fs"); +declare function require(moduleName: "tv"): typeof import("tv"); +declare function require(moduleName: "tensorflow"): typeof import("tensorflow"); +declare function require(moduleName: "heatshrink"): typeof import("heatshrink"); +declare function require(moduleName: "Flash"): typeof import("Flash"); +declare function require(moduleName: "Storage"): typeof import("Storage"); +declare function require(moduleName: string): any; + +/** + * The filename of the JavaScript that is currently executing. + * If `load` has been called with a filename (eg `load("myfile.js")`) then + * `__FILE__` is set to that filename. Otherwise (eg `load()`) or immediately + * after booting, `__FILE__` is not set. + * @returns {any} The filename of the JavaScript that is currently executing + * @url http://www.espruino.com/Reference#l__global___FILE__ + */ +declare const __FILE__: any; + +/** + * The first SPI port + * @url http://www.espruino.com/Reference#l__global_SPI1 + */ +declare const SPI1: SPI; + +/** + * The second SPI port + * @url http://www.espruino.com/Reference#l__global_SPI2 + */ +declare const SPI2: SPI; + +/** + * The third SPI port + * @url http://www.espruino.com/Reference#l__global_SPI3 + */ +declare const SPI3: SPI; + +/** + * The first I2C port + * @url http://www.espruino.com/Reference#l__global_I2C1 + */ +declare const I2C1: I2C; + +/** + * The second I2C port + * @url http://www.espruino.com/Reference#l__global_I2C2 + */ +declare const I2C2: I2C; + +/** + * The third I2C port + * @url http://www.espruino.com/Reference#l__global_I2C3 + */ +declare const I2C3: I2C; + +/** + * The USB Serial port + * @url http://www.espruino.com/Reference#l__global_USB + */ +declare const USB: Serial; + +/** + * The first Serial (USART) port + * @url http://www.espruino.com/Reference#l__global_Serial1 + */ +declare const Serial1: Serial; + +/** + * The second Serial (USART) port + * @url http://www.espruino.com/Reference#l__global_Serial2 + */ +declare const Serial2: Serial; + +/** + * The third Serial (USART) port + * @url http://www.espruino.com/Reference#l__global_Serial3 + */ +declare const Serial3: Serial; + +/** + * The fourth Serial (USART) port + * @url http://www.espruino.com/Reference#l__global_Serial4 + */ +declare const Serial4: Serial; + +/** + * The fifth Serial (USART) port + * @url http://www.espruino.com/Reference#l__global_Serial5 + */ +declare const Serial5: Serial; + +/** + * The sixth Serial (USART) port + * @url http://www.espruino.com/Reference#l__global_Serial6 + */ +declare const Serial6: Serial; + +/** + * A loopback serial device. Data sent to `LoopbackA` comes out of `LoopbackB` and + * vice versa + * @url http://www.espruino.com/Reference#l__global_LoopbackA + */ +declare const LoopbackA: Serial; + +/** + * A loopback serial device. Data sent to `LoopbackA` comes out of `LoopbackB` and + * vice versa + * @url http://www.espruino.com/Reference#l__global_LoopbackB + */ +declare const LoopbackB: Serial; + +/** + * A telnet serial device that maps to the built-in telnet console server (devices + * that have built-in wifi only). + * @url http://www.espruino.com/Reference#l__global_Telnet + */ +declare const Telnet: Serial; + +/** + * @returns {number} Not a Number + * @url http://www.espruino.com/Reference#l__global_NaN + */ +declare const NaN: number; + +/** + * @returns {number} Positive Infinity (1/0) + * @url http://www.espruino.com/Reference#l__global_Infinity + */ +declare const Infinity: number; + +/** + * @returns {number} Logic 1 for Arduino compatibility - this is the same as just typing `1` + * @url http://www.espruino.com/Reference#l__global_HIGH + */ +declare const HIGH: true; + +/** + * @returns {number} Logic 0 for Arduino compatibility - this is the same as just typing `0` + * @url http://www.espruino.com/Reference#l__global_LOW + */ +declare const LOW: false; + // LIBRARIES -type Libraries = { +/** + * The ESP8266 library is specific to the ESP8266 version of Espruino, i.e., + * running Espruino on an ESP8266 module (not to be confused with using the ESP8266 + * as Wifi add-on to an Espruino board). This library contains functions to handle + * ESP8266-specific actions. For example: `var esp8266 = require('ESP8266'); + * esp8266.reboot();` performs a hardware reset of the module. + * @url http://www.espruino.com/Reference#ESP8266 + */ +declare module "ESP8266" { /** - * @url http://www.espruino.com/Reference#tensorflow + * Perform a hardware reset/reboot of the esp8266. + * @url http://www.espruino.com/Reference#l_ESP8266_reboot */ - tensorflow: { - /** - * - * @param {number} arenaSize - The TensorFlow Arena size - * @param {any} model - The model to use - this should be a flat array/string - * @returns {any} A tensorflow instance - * @url http://www.espruino.com/Reference#l_tensorflow_create - */ - create(arenaSize: number, model: any): TFMicroInterpreter; - } + function reboot(): void; /** - * This library handles interfacing with a FAT32 filesystem on an SD card. The API - * is designed to be similar to node.js's - However Espruino does not currently - * support asynchronous file IO, so the functions behave like node.js's xxxxSync - * functions. Versions of the functions with 'Sync' after them are also provided - * for compatibility. - * To use this, you must type ```var fs = require('fs')``` to get access to the - * library - * See [the page on File IO](http://www.espruino.com/File+IO) for more information, - * and for examples on wiring up an SD card if your device doesn't come with one. - * **Note:** If you want to remove an SD card after you have started using it, you - * *must* call `E.unmountSD()` or you may cause damage to the card. - * @url http://www.espruino.com/Reference#fs + * At boot time the esp8266's firmware captures the cause of the reset/reboot. This + * function returns this information in an object with the following fields: + * * `reason`: "power on", "wdt reset", "exception", "soft wdt", "restart", "deep + * sleep", or "reset pin" + * * `exccause`: exception cause + * * `epc1`, `epc2`, `epc3`: instruction pointers + * * `excvaddr`: address being accessed + * * `depc`: (?) + * @returns {any} An object with the reset cause information + * @url http://www.espruino.com/Reference#l_ESP8266_getResetInfo */ - fs: { - /** - * List all files in the supplied directory, returning them as an array of strings. - * NOTE: Espruino does not yet support Async file IO, so this function behaves like - * the 'Sync' version. - * - * @param {any} path - The path of the directory to list. If it is not supplied, '' is assumed, which will list the root directory - * @returns {any} An array of filename strings (or undefined if the directory couldn't be listed) - * @url http://www.espruino.com/Reference#l_fs_readdir - */ - readdir(path: any): any; - - /** - * List all files in the supplied directory, returning them as an array of strings. - * - * @param {any} path - The path of the directory to list. If it is not supplied, '' is assumed, which will list the root directory - * @returns {any} An array of filename strings (or undefined if the directory couldn't be listed) - * @url http://www.espruino.com/Reference#l_fs_readdirSync - */ - readdirSync(path: any): any; - - /** - * Write the data to the given file - * NOTE: Espruino does not yet support Async file IO, so this function behaves like - * the 'Sync' version. - * - * @param {any} path - The path of the file to write - * @param {any} data - The data to write to the file - * @returns {boolean} True on success, false on failure - * @url http://www.espruino.com/Reference#l_fs_writeFile - */ - writeFile(path: any, data: any): boolean; - - /** - * Write the data to the given file - * - * @param {any} path - The path of the file to write - * @param {any} data - The data to write to the file - * @returns {boolean} True on success, false on failure - * @url http://www.espruino.com/Reference#l_fs_writeFileSync - */ - writeFileSync(path: any, data: any): boolean; - - /** - * Append the data to the given file, created a new file if it doesn't exist - * NOTE: Espruino does not yet support Async file IO, so this function behaves like - * the 'Sync' version. - * - * @param {any} path - The path of the file to write - * @param {any} data - The data to write to the file - * @returns {boolean} True on success, false on failure - * @url http://www.espruino.com/Reference#l_fs_appendFile - */ - appendFile(path: any, data: any): boolean; - - /** - * Append the data to the given file, created a new file if it doesn't exist - * - * @param {any} path - The path of the file to write - * @param {any} data - The data to write to the file - * @returns {boolean} True on success, false on failure - * @url http://www.espruino.com/Reference#l_fs_appendFileSync - */ - appendFileSync(path: any, data: any): boolean; - - /** - * Read all data from a file and return as a string - * NOTE: Espruino does not yet support Async file IO, so this function behaves like - * the 'Sync' version. - * - * @param {any} path - The path of the file to read - * @returns {any} A string containing the contents of the file (or undefined if the file doesn't exist) - * @url http://www.espruino.com/Reference#l_fs_readFile - */ - readFile(path: any): any; - - /** - * Read all data from a file and return as a string. - * **Note:** The size of files you can load using this method is limited by the - * amount of available RAM. To read files a bit at a time, see the `File` class. - * - * @param {any} path - The path of the file to read - * @returns {any} A string containing the contents of the file (or undefined if the file doesn't exist) - * @url http://www.espruino.com/Reference#l_fs_readFileSync - */ - readFileSync(path: any): any; - - /** - * Delete the given file - * NOTE: Espruino does not yet support Async file IO, so this function behaves like - * the 'Sync' version. - * - * @param {any} path - The path of the file to delete - * @returns {boolean} True on success, or false on failure - * @url http://www.espruino.com/Reference#l_fs_unlink - */ - unlink(path: any): boolean; - - /** - * Delete the given file - * - * @param {any} path - The path of the file to delete - * @returns {boolean} True on success, or false on failure - * @url http://www.espruino.com/Reference#l_fs_unlinkSync - */ - unlinkSync(path: any): boolean; - - /** - * Return information on the given file. This returns an object with the following - * fields: - * size: size in bytes dir: a boolean specifying if the file is a directory or not - * mtime: A Date structure specifying the time the file was last modified - * - * @param {any} path - The path of the file to get information on - * @returns {any} An object describing the file, or undefined on failure - * @url http://www.espruino.com/Reference#l_fs_statSync - */ - statSync(path: any): any; - - /** - * Create the directory - * NOTE: Espruino does not yet support Async file IO, so this function behaves like - * the 'Sync' version. - * - * @param {any} path - The name of the directory to create - * @returns {boolean} True on success, or false on failure - * @url http://www.espruino.com/Reference#l_fs_mkdir - */ - mkdir(path: any): boolean; - - /** - * Create the directory - * - * @param {any} path - The name of the directory to create - * @returns {boolean} True on success, or false on failure - * @url http://www.espruino.com/Reference#l_fs_mkdirSync - */ - mkdirSync(path: any): boolean; - - /** - * - * @param {any} source - The source file/stream that will send content. - * @param {any} destination - The destination file/stream that will receive content from the source. - * @param {any} options - * An optional object `{ chunkSize : int=64, end : bool=true, complete : function }` - * chunkSize : The amount of data to pipe from source to destination at a time - * complete : a function to call when the pipe activity is complete - * end : call the 'end' function on the destination when the source is finished - * @url http://www.espruino.com/Reference#l_fs_pipe - */ - pipe(source: any, destination: any, options: any): void; - } + function getResetInfo(): any; /** - * Cryptographic functions - * **Note:** This library is currently only included in builds for boards where - * there is space. For other boards there is `crypto.js` which implements SHA1 in - * JS. - * @url http://www.espruino.com/Reference#crypto + * Enable or disable the logging of debug information. A value of `true` enables + * debug logging while a value of `false` disables debug logging. Debug output is + * sent to UART1 (gpio2). + * + * @param {boolean} enable - Enable or disable the debug logging. + * @url http://www.espruino.com/Reference#l_ESP8266_logDebug */ - crypto: { - /** - * Class containing AES encryption/decryption - * @returns {any} - * @url http://www.espruino.com/Reference#l_crypto_AES - */ - AES: AES; - - /** - * Performs a SHA1 hash and returns the result as a 20 byte ArrayBuffer. - * **Note:** On some boards (currently only Espruino Original) there isn't space - * for a fully unrolled SHA1 implementation so a slower all-JS implementation is - * used instead. - * - * @param {any} message - The message to apply the hash to - * @returns {any} Returns a 20 byte ArrayBuffer - * @url http://www.espruino.com/Reference#l_crypto_SHA1 - */ - SHA1(message: any): ArrayBuffer; - - /** - * Performs a SHA224 hash and returns the result as a 28 byte ArrayBuffer - * - * @param {any} message - The message to apply the hash to - * @returns {any} Returns a 20 byte ArrayBuffer - * @url http://www.espruino.com/Reference#l_crypto_SHA224 - */ - SHA224(message: any): ArrayBuffer; - - /** - * Performs a SHA256 hash and returns the result as a 32 byte ArrayBuffer - * - * @param {any} message - The message to apply the hash to - * @returns {any} Returns a 20 byte ArrayBuffer - * @url http://www.espruino.com/Reference#l_crypto_SHA256 - */ - SHA256(message: any): ArrayBuffer; - - /** - * Performs a SHA384 hash and returns the result as a 48 byte ArrayBuffer - * - * @param {any} message - The message to apply the hash to - * @returns {any} Returns a 20 byte ArrayBuffer - * @url http://www.espruino.com/Reference#l_crypto_SHA384 - */ - SHA384(message: any): ArrayBuffer; - - /** - * Performs a SHA512 hash and returns the result as a 64 byte ArrayBuffer - * - * @param {any} message - The message to apply the hash to - * @returns {any} Returns a 32 byte ArrayBuffer - * @url http://www.espruino.com/Reference#l_crypto_SHA512 - */ - SHA512(message: any): ArrayBuffer; - - /** - * Password-Based Key Derivation Function 2 algorithm, using SHA512 - * - * @param {any} passphrase - Passphrase - * @param {any} salt - Salt for turning passphrase into a key - * @param {any} options - Object of Options, `{ keySize: 8 (in 32 bit words), iterations: 10, hasher: 'SHA1'/'SHA224'/'SHA256'/'SHA384'/'SHA512' }` - * @returns {any} Returns an ArrayBuffer - * @url http://www.espruino.com/Reference#l_crypto_PBKDF2 - */ - PBKDF2(passphrase: any, salt: any, options: any): ArrayBuffer; - } + function logDebug(enable: boolean): void; /** - * Library that initialises a network device that calls into JavaScript - * @url http://www.espruino.com/Reference#NetworkJS + * Set the debug logging mode. It can be disabled (which frees ~1.2KB of heap), + * enabled in-memory only, or in-memory and output to a UART. + * + * @param {number} mode - Debug log mode: 0=off, 1=in-memory only, 2=in-mem and uart0, 3=in-mem and uart1. + * @url http://www.espruino.com/Reference#l_ESP8266_setLog */ - NetworkJS: { - /** - * Initialise the network using the callbacks given and return the first argument. - * For instance: - * ``` - * require("NetworkJS").create({ - * create : function(host, port, socketType, options) { - * // Create a socket and return its index, host is a string, port is an integer. - * // If host isn't defined, create a server socket - * console.log("Create",host,port); - * return 1; - * }, - * close : function(sckt) { - * // Close the socket. returns nothing - * }, - * accept : function(sckt) { - * // Accept the connection on the server socket. Returns socket number or -1 if no connection - * return -1; - * }, - * recv : function(sckt, maxLen, socketType) { - * // Receive data. Returns a string (even if empty). - * // If non-string returned, socket is then closed - * return null;//or ""; - * }, - * send : function(sckt, data, socketType) { - * // Send data (as string). Returns the number of bytes sent - 0 is ok. - * // Less than 0 - * return data.length; - * } - * }); - * ``` - * `socketType` is an integer - 2 for UDP, or see SocketType in - * https://github.com/espruino/Espruino/blob/master/libs/network/network.h for more - * information. - * - * @param {any} obj - An object containing functions to access the network device - * @returns {any} The object passed in - * @url http://www.espruino.com/Reference#l_NetworkJS_create - */ - create(obj: any): any; - } + function setLog(mode: number): void; /** - * This library implements a telnet console for the Espruino interpreter. It - * requires a network connection, e.g. Wifi, and **currently only functions on the - * ESP8266 and on Linux **. It uses port 23 on the ESP8266 and port 2323 on Linux. - * **Note:** To enable on Linux, run `./espruino --telnet` - * @url http://www.espruino.com/Reference#TelnetServer + * Prints the contents of the debug log to the console. + * @url http://www.espruino.com/Reference#l_ESP8266_printLog */ - TelnetServer: { - /** - * - * @param {any} options - Options controlling the telnet console server `{ mode : 'on|off'}` - * @url http://www.espruino.com/Reference#l_TelnetServer_setOptions - */ - setOptions(options: any): void; - } + function printLog(): void; /** - * This library allows you to create TCPIP servers and clients - * In order to use this, you will need an extra module to get network connectivity. - * This is designed to be a cut-down version of the [node.js - * library](http://nodejs.org/api/net.html). Please see the [Internet](/Internet) - * page for more information on how to use it. - * @url http://www.espruino.com/Reference#net + * Returns one line from the log or up to 128 characters. + * @url http://www.espruino.com/Reference#l_ESP8266_readLog */ - net: { - /** - * Create a Server - * When a request to the server is made, the callback is called. In the callback - * you can use the methods on the connection to send data. You can also add - * `connection.on('data',function() { ... })` to listen for received data - * - * @param {any} callback - A `function(connection)` that will be called when a connection is made - * @returns {any} Returns a new Server Object - * @url http://www.espruino.com/Reference#l_net_createServer - */ - createServer(callback: any): Server; - - /** - * Create a TCP socket connection - * - * @param {any} options - An object containing host,port fields - * @param {any} callback - A `function(sckt)` that will be called with the socket when a connection is made. You can then call `sckt.write(...)` to send data, and `sckt.on('data', function(data) { ... })` and `sckt.on('close', function() { ... })` to deal with the response. - * @returns {any} Returns a new net.Socket object - * @url http://www.espruino.com/Reference#l_net_connect - */ - connect(options: any, callback: any): Socket; - } + function readLog(): void; /** - * This library allows you to create UDP/DATAGRAM servers and clients - * In order to use this, you will need an extra module to get network connectivity. - * This is designed to be a cut-down version of the [node.js - * library](http://nodejs.org/api/dgram.html). Please see the [Internet](/Internet) - * page for more information on how to use it. - * @url http://www.espruino.com/Reference#dgram + * Dumps info about all sockets to the log. This is for troubleshooting the socket + * implementation. + * @url http://www.espruino.com/Reference#l_ESP8266_dumpSocketInfo */ - dgram: { - /** - * Create a UDP socket - * - * @param {any} type - Socket type to create e.g. 'udp4'. Or options object { type: 'udp4', reuseAddr: true, recvBufferSize: 1024 } - * @param {any} callback - A `function(sckt)` that will be called with the socket when a connection is made. You can then call `sckt.send(...)` to send data, and `sckt.on('message', function(data) { ... })` and `sckt.on('close', function() { ... })` to deal with the response. - * @returns {any} Returns a new dgram.Socket object - * @url http://www.espruino.com/Reference#l_dgram_createSocket - */ - createSocket(type: any, callback: any): dgramSocket; - } + function dumpSocketInfo(): void; /** - * This library allows you to create TCPIP servers and clients using TLS encryption - * In order to use this, you will need an extra module to get network connectivity. - * This is designed to be a cut-down version of the [node.js - * library](http://nodejs.org/api/tls.html). Please see the [Internet](/Internet) - * page for more information on how to use it. - * @url http://www.espruino.com/Reference#tls + * **Note:** This is deprecated. Use `E.setClock(80/160)` **Note:** Set the + * operating frequency of the ESP8266 processor. The default is 160Mhz. + * **Warning**: changing the cpu frequency affects the timing of some I/O + * operations, notably of software SPI and I2C, so things may be a bit slower at + * 80Mhz. + * + * @param {any} freq - Desired frequency - either 80 or 160. + * @url http://www.espruino.com/Reference#l_ESP8266_setCPUFreq */ - tls: { - /** - * Create a socket connection using TLS - * Options can have `ca`, `key` and `cert` fields, which should be the decoded - * content of the certificate. - * ``` - * var options = url.parse("localhost:1234"); - * options.key = atob("MIIJKQ ... OZs08C"); - * options.cert = atob("MIIFi ... Uf93rN+"); - * options.ca = atob("MIIFgDCC ... GosQML4sc="); - * require("tls").connect(options, ... ); - * ``` - * If you have the certificates as `.pem` files, you need to load these files, take - * the information between the lines beginning with `----`, remove the newlines - * from it so you have raw base64, and then feed it into `atob` as above. - * You can also: - * * Just specify the filename (<=100 characters) and it will be loaded and parsed - * if you have an SD card connected. For instance `options.key = "key.pem";` - * * Specify a function, which will be called to retrieve the data. For instance - * `options.key = function() { eeprom.load_my_info(); }; - * For more information about generating and using certificates, see: - * https://engineering.circle.com/https-authorized-certs-with-node-js/ - * (You'll need to use 2048 bit certificates as opposed to 4096 bit shown above) - * - * @param {any} options - An object containing host,port fields - * @param {any} callback - A function(res) that will be called when a connection is made. You can then call `res.on('data', function(data) { ... })` and `res.on('close', function() { ... })` to deal with the response. - * @returns {any} Returns a new net.Socket object - * @url http://www.espruino.com/Reference#l_tls_connect - */ - connect(options: any, callback: any): Socket; - } + function setCPUFreq(freq: any): void; /** - * @url http://www.espruino.com/Reference#CC3000 + * Returns an object that contains details about the state of the ESP8266 with the + * following fields: + * * `sdkVersion` - Version of the SDK. + * * `cpuFrequency` - CPU operating frequency in Mhz. + * * `freeHeap` - Amount of free heap in bytes. + * * `maxCon` - Maximum number of concurrent connections. + * * `flashMap` - Configured flash size&map: '512KB:256/256' .. '4MB:512/512' + * * `flashKB` - Configured flash size in KB as integer + * * `flashChip` - Type of flash chip as string with manufacturer & chip, ex: '0xEF + * 0x4016` + * @returns {any} The state of the ESP8266 + * @url http://www.espruino.com/Reference#l_ESP8266_getState */ - CC3000: { - /** - * Initialise the CC3000 and return a WLAN object - * - * @param {any} spi - Device to use for SPI (or undefined to use the default). SPI should be 1,000,000 baud, and set to 'mode 1' - * @param {Pin} cs - The pin to use for Chip Select - * @param {Pin} en - The pin to use for Enable - * @param {Pin} irq - The pin to use for Interrupts - * @returns {any} A WLAN Object - * @url http://www.espruino.com/Reference#l_CC3000_connect - */ - connect(spi: any, cs: Pin, en: Pin, irq: Pin): WLAN; - } + function getState(): any; /** - * Library for communication with the WIZnet Ethernet module - * @url http://www.espruino.com/Reference#WIZnet + * **Note:** This is deprecated. Use `require("Flash").getFree()` + * @returns {any} Array of objects with `addr` and `length` properties describing the free flash areas available + * @url http://www.espruino.com/Reference#l_ESP8266_getFreeFlash */ - WIZnet: { - /** - * Initialise the WIZnet module and return an Ethernet object - * - * @param {any} spi - Device to use for SPI (or undefined to use the default) - * @param {Pin} cs - The pin to use for Chip Select - * @returns {any} An Ethernet Object - * @url http://www.espruino.com/Reference#l_WIZnet_connect - */ - connect(spi: any, cs: Pin): Ethernet; - } + function getFreeFlash(): any; /** - * The Wifi library is designed to control the Wifi interface. It supports - * functionality such as connecting to wifi networks, getting network information, - * starting an access point, etc. - * It is available on these devices: - * * [Espruino WiFi](http://www.espruino.com/WiFi#using-wifi) - * * [ESP8266](http://www.espruino.com/EspruinoESP8266) - * * [ESP32](http://www.espruino.com/ESP32) - * **Certain features may or may not be implemented on your device** however we - * have documented what is available and what isn't. - * If you're not using one of the devices above, a separate WiFi library is - * provided. For instance: - * * An [ESP8266 connected to an Espruino - * board](http://www.espruino.com/ESP8266#software) - * * An [CC3000 WiFi Module](http://www.espruino.com/CC3000) - * [Other ways of connecting to the - * net](http://www.espruino.com/Internet#related-pages) such as GSM, Ethernet and - * LTE have their own libraries. - * You can use the WiFi library as follows: - * ``` - * var wifi = require("Wifi"); - * wifi.connect("my-ssid", {password:"my-pwd"}, function(ap){ console.log("connected:", ap); }); - * ``` - * On ESP32/ESP8266 if you want the connection to happen automatically at boot, add - * `wifi.save();`. On other platforms, place `wifi.connect` in a function called - * `onInit`. - * @url http://www.espruino.com/Reference#Wifi + * + * @param {any} arrayOfData - Array of data to CRC + * @returns {any} 32-bit CRC + * @url http://www.espruino.com/Reference#l_ESP8266_crc32 */ - Wifi: { - /** - * The 'associated' event is called when an association with an access point has - * succeeded, i.e., a connection to the AP's network has been established. - * On ESP32/ESP8266 there is a `details` parameter which includes: - * * ssid - The SSID of the access point to which the association was established - * * mac - The BSSID/mac address of the access point - * * channel - The wifi channel used (an integer, typ 1..14) - * @param {string} event - The event to listen to. - * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `details` An object with event details - * @url http://www.espruino.com/Reference#l_Wifi_associated - */ - on(event: "associated", callback: (details: any) => void): void; - - /** - * The 'disconnected' event is called when an association with an access point has - * been lost. - * On ESP32/ESP8266 there is a `details` parameter which includes: - * * ssid - The SSID of the access point from which the association was lost - * * mac - The BSSID/mac address of the access point - * * reason - The reason for the disconnection (string) - * @param {string} event - The event to listen to. - * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `details` An object with event details - * @url http://www.espruino.com/Reference#l_Wifi_disconnected - */ - on(event: "disconnected", callback: (details: any) => void): void; - - /** - * The 'auth_change' event is called when the authentication mode with the - * associated access point changes. The details include: - * * oldMode - The old auth mode (string: open, wep, wpa, wpa2, wpa_wpa2) - * * newMode - The new auth mode (string: open, wep, wpa, wpa2, wpa_wpa2) - * @param {string} event - The event to listen to. - * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `details` An object with event details - * @url http://www.espruino.com/Reference#l_Wifi_auth_change - */ - on(event: "auth_change", callback: (details: any) => void): void; - - /** - * The 'dhcp_timeout' event is called when a DHCP request to the connected access - * point fails and thus no IP address could be acquired (or renewed). - * @param {string} event - The event to listen to. - * @param {() => void} callback - A function that is executed when the event occurs. - * @url http://www.espruino.com/Reference#l_Wifi_dhcp_timeout - */ - on(event: "dhcp_timeout", callback: () => void): void; - - /** - * The 'connected' event is called when the connection with an access point is - * ready for traffic. In the case of a dynamic IP address configuration this is - * when an IP address is obtained, in the case of static IP address allocation this - * happens when an association is formed (in that case the 'associated' and - * 'connected' events are fired in rapid succession). - * On ESP32/ESP8266 there is a `details` parameter which includes: - * * ip - The IP address obtained as string - * * netmask - The network's IP range mask as string - * * gw - The network's default gateway as string - * @param {string} event - The event to listen to. - * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `details` An object with event details - * @url http://www.espruino.com/Reference#l_Wifi_connected - */ - on(event: "connected", callback: (details: any) => void): void; - - /** - * The 'sta_joined' event is called when a station establishes an association (i.e. - * connects) with the esp8266's access point. The details include: - * * mac - The MAC address of the station in string format (00:00:00:00:00:00) - * @param {string} event - The event to listen to. - * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `details` An object with event details - * @url http://www.espruino.com/Reference#l_Wifi_sta_joined - */ - on(event: "sta_joined", callback: (details: any) => void): void; - - /** - * The 'sta_left' event is called when a station disconnects from the esp8266's - * access point (or its association times out?). The details include: - * * mac - The MAC address of the station in string format (00:00:00:00:00:00) - * @param {string} event - The event to listen to. - * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `details` An object with event details - * @url http://www.espruino.com/Reference#l_Wifi_sta_left - */ - on(event: "sta_left", callback: (details: any) => void): void; - - /** - * The 'probe_recv' event is called when a probe request is received from some - * station by the esp8266's access point. The details include: - * * mac - The MAC address of the station in string format (00:00:00:00:00:00) - * * rssi - The signal strength in dB of the probe request - * @param {string} event - The event to listen to. - * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: - * * `details` An object with event details - * @url http://www.espruino.com/Reference#l_Wifi_probe_recv - */ - on(event: "probe_recv", callback: (details: any) => void): void; - - /** - * Disconnect the wifi station from an access point and disable the station mode. - * It is OK to call `disconnect` to turn off station mode even if no connection - * exists (for example, connection attempts may be failing). Station mode can be - * re-enabled by calling `connect` or `scan`. - * - * @param {any} callback - An optional `callback()` function to be called back on disconnection. The callback function receives no argument. - * @url http://www.espruino.com/Reference#l_Wifi_disconnect - */ - disconnect(callback: any): void; - - /** - * Stop being an access point and disable the AP operation mode. AP mode can be - * re-enabled by calling `startAP`. - * - * @param {any} callback - An optional `callback()` function to be called back on successful stop. The callback function receives no argument. - * @url http://www.espruino.com/Reference#l_Wifi_stopAP - */ - stopAP(callback: any): void; - - /** - * Connect to an access point as a station. If there is an existing connection to - * an AP it is first disconnected if the SSID or password are different from those - * passed as parameters. Put differently, if the passed SSID and password are - * identical to the currently connected AP then nothing is changed. When the - * connection attempt completes the callback function is invoked with one `err` - * parameter, which is NULL if there is no error and a string message if there is - * an error. If DHCP is enabled the callback occurs once an IP addres has been - * obtained, if a static IP is set the callback occurs once the AP's network has - * been joined. The callback is also invoked if a connection already exists and - * does not need to be changed. - * The options properties may contain: - * * `password` - Password string to be used to access the network. - * * `dnsServers` (array of String) - An array of up to two DNS servers in dotted - * decimal format string. - * * `channel` - Wifi channel of the access point (integer, typ 0..14, 0 means any - * channel), only on ESP8266. - * * `bssid` - Mac address of the access point (string, type "00:00:00:00:00:00"), - * only on ESP8266. - * Notes: - * * the options should include the ability to set a static IP and associated - * netmask and gateway, this is a future enhancement. - * * the only error reported in the callback is "Bad password", all other errors - * (such as access point not found or DHCP timeout) just cause connection - * retries. If the reporting of such temporary errors is desired, the caller must - * use its own timeout and the `getDetails().status` field. - * * the `connect` call automatically enabled station mode, it can be disabled - * again by calling `disconnect`. - * - * @param {any} ssid - The access point network id. - * @param {any} options - Connection options (optional). - * @param {any} callback - A `callback(err)` function to be called back on completion. `err` is null on success, or contains an error string on failure. - * @url http://www.espruino.com/Reference#l_Wifi_connect - */ - connect(ssid: any, options: any, callback: any): void; - - /** - * Perform a scan for access points. This will enable the station mode if it is not - * currently enabled. Once the scan is complete the callback function is called - * with an array of APs found, each AP is an object with: - * * `ssid`: SSID string. - * * `mac`: access point MAC address in 00:00:00:00:00:00 format. - * * `authMode`: `open`, `wep`, `wpa`, `wpa2`, or `wpa_wpa2`. - * * `channel`: wifi channel 1..13. - * * `hidden`: true if the SSID is hidden (ESP32/ESP8266 only) - * * `rssi`: signal strength in dB in the range -110..0. - * Notes: - * * in order to perform the scan the station mode is turned on and remains on, use - * Wifi.disconnect() to turn it off again, if desired. - * * only one scan can be in progress at a time. - * - * @param {any} callback - A `callback(err, ap_list)` function to be called back on completion. `err==null` and `ap_list` is an array on success, or `err` is an error string and `ap_list` is undefined on failure. - * @url http://www.espruino.com/Reference#l_Wifi_scan - */ - scan(callback: any): void; - - /** - * Create a WiFi access point allowing stations to connect. If the password is NULL - * or an empty string the access point is open, otherwise it is encrypted. The - * callback function is invoked once the access point is set-up and receives one - * `err` argument, which is NULL on success and contains an error message string - * otherwise. - * The `options` object can contain the following properties. - * * `authMode` - The authentication mode to use. Can be one of "open", "wpa2", - * "wpa", "wpa_wpa2". The default is open (but open access points are not - * recommended). - * * `password` - The password for connecting stations if authMode is not open. - * * `channel` - The channel to be used for the access point in the range 1..13. If - * the device is also connected to an access point as a station then that access - * point determines the channel. - * * `hidden` - The flag if visible or not (0:visible, 1:hidden), default is - * visible. - * Notes: - * * the options should include the ability to set the AP IP and associated - * netmask, this is a future enhancement. - * * the `startAP` call automatically enables AP mode. It can be disabled again by - * calling `stopAP`. - * - * @param {any} ssid - The network id. - * @param {any} options - Configuration options (optional). - * @param {any} callback - Optional `callback(err)` function to be called when the AP is successfully started. `err==null` on success, or an error string on failure. - * @url http://www.espruino.com/Reference#l_Wifi_startAP - */ - startAP(ssid: any, options: any, callback: any): void; - - /** - * Retrieve the current overall WiFi configuration. This call provides general - * information that pertains to both station and access point modes. The getDetails - * and getAPDetails calls provide more in-depth information about the station and - * access point configurations, respectively. The status object has the following - * properties: - * * `station` - Status of the wifi station: `off`, `connecting`, ... - * * `ap` - Status of the wifi access point: `disabled`, `enabled`. - * * `mode` - The current operation mode: `off`, `sta`, `ap`, `sta+ap`. - * * `phy` - Modulation standard configured: `11b`, `11g`, `11n` (the esp8266 docs - * are not very clear, but it is assumed that 11n means b/g/n). This setting - * limits the modulations that the radio will use, it does not indicate the - * current modulation used with a specific access point. - * * `powersave` - Power saving mode: `none` (radio is on all the time), `ps-poll` - * (radio is off between beacons as determined by the access point's DTIM - * setting). Note that in 'ap' and 'sta+ap' modes the radio is always on, i.e., - * no power saving is possible. - * * `savedMode` - The saved operation mode which will be applied at boot time: - * `off`, `sta`, `ap`, `sta+ap`. - * - * @param {any} callback - Optional `callback(status)` function to be called back with the current Wifi status, i.e. the same object as returned directly. - * @returns {any} An object representing the current WiFi status, if available immediately. - * @url http://www.espruino.com/Reference#l_Wifi_getStatus - */ - getStatus(callback: any): any; - - /** - * Sets a number of global wifi configuration settings. All parameters are optional - * and which are passed determines which settings are updated. The settings - * available are: - * * `phy` - Modulation standard to allow: `11b`, `11g`, `11n` (the esp8266 docs - * are not very clear, but it is assumed that 11n means b/g/n). - * * `powersave` - Power saving mode: `none` (radio is on all the time), `ps-poll` - * (radio is off between beacons as determined by the access point's DTIM - * setting). Note that in 'ap' and 'sta+ap' modes the radio is always on, i.e., - * no power saving is possible. - * Note: esp8266 SDK programmers may be missing an "opmode" option to set the - * sta/ap/sta+ap operation mode. Please use connect/scan/disconnect/startAP/stopAP, - * which all set the esp8266 opmode indirectly. - * - * @param {any} settings - An object with the configuration settings to change. - * @url http://www.espruino.com/Reference#l_Wifi_setConfig - */ - setConfig(settings: any): void; - - /** - * Retrieve the wifi station configuration and status details. The details object - * has the following properties: - * * `status` - Details about the wifi station connection, one of `off`, - * `connecting`, `wrong_password`, `no_ap_found`, `connect_fail`, or `connected`. - * The off, bad_password and connected states are stable, the other states are - * transient. The connecting state will either result in connected or one of the - * error states (bad_password, no_ap_found, connect_fail) and the no_ap_found and - * connect_fail states will result in a reconnection attempt after some interval. - * * `rssi` - signal strength of the connected access point in dB, typically in the - * range -110 to 0, with anything greater than -30 being an excessively strong - * signal. - * * `ssid` - SSID of the access point. - * * `password` - the password used to connect to the access point. - * * `authMode` - the authentication used: `open`, `wpa`, `wpa2`, `wpa_wpa2` (not - * currently supported). - * * `savedSsid` - the SSID to connect to automatically at boot time, null if none. - * - * @param {any} callback - An optional `callback(details)` function to be called back with the wifi details, i.e. the same object as returned directly. - * @returns {any} An object representing the wifi station details, if available immediately. - * @url http://www.espruino.com/Reference#l_Wifi_getDetails - */ - getDetails(callback: any): any; - - /** - * Retrieve the current access point configuration and status. The details object - * has the following properties: - * * `status` - Current access point status: `enabled` or `disabled` - * * `stations` - an array of the stations connected to the access point. This - * array may be empty. Each entry in the array is an object describing the - * station which, at a minimum contains `ip` being the IP address of the station. - * * `ssid` - SSID to broadcast. - * * `password` - Password for authentication. - * * `authMode` - the authentication required of stations: `open`, `wpa`, `wpa2`, - * `wpa_wpa2`. - * * `hidden` - True if the SSID is hidden, false otherwise. - * * `maxConn` - Max number of station connections supported. - * * `savedSsid` - the SSID to broadcast automatically at boot time, null if the - * access point is to be disabled at boot. - * - * @param {any} callback - An optional `callback(details)` function to be called back with the current access point details, i.e. the same object as returned directly. - * @returns {any} An object representing the current access point details, if available immediately. - * @url http://www.espruino.com/Reference#l_Wifi_getAPDetails - */ - getAPDetails(callback: any): any; - - /** - * On boards where this is not available, just issue the `connect` commands you - * need to run at startup from an `onInit` function. - * Save the current wifi configuration (station and access point) to flash and - * automatically apply this configuration at boot time, unless `what=="clear"`, in - * which case the saved configuration is cleared such that wifi remains disabled at - * boot. The saved configuration includes: - * * mode (off/sta/ap/sta+ap) - * * SSIDs & passwords - * * phy (11b/g/n) - * * powersave setting - * * DHCP hostname - * - * @param {any} what - An optional parameter to specify what to save, on the esp8266 the two supported values are `clear` and `sta+ap`. The default is `sta+ap` - * @url http://www.espruino.com/Reference#l_Wifi_save - */ - save(what: any): void; - - /** - * Restores the saved Wifi configuration from flash. See `Wifi.save()`. - * @url http://www.espruino.com/Reference#l_Wifi_restore - */ - restore(): void; - - /** - * Return the station IP information in an object as follows: - * * ip - IP address as string (e.g. "192.168.1.5") - * * netmask - The interface netmask as string (ESP8266/ESP32 only) - * * gw - The network gateway as string (ESP8266/ESP32 only) - * * mac - The MAC address as string of the form 00:00:00:00:00:00 - * Note that the `ip`, `netmask`, and `gw` fields are omitted if no connection is established: - * - * @param {any} callback - An optional `callback(err, ipinfo)` function to be called back with the IP information. - * @returns {any} An object representing the station IP information, if available immediately (**ONLY** on ESP8266/ESP32). - * @url http://www.espruino.com/Reference#l_Wifi_getIP - */ - getIP(callback: any): any; - - /** - * Return the access point IP information in an object which contains: - * * ip - IP address as string (typ "192.168.4.1") - * * netmask - The interface netmask as string - * * gw - The network gateway as string - * * mac - The MAC address as string of the form 00:00:00:00:00:00 - * - * @param {any} callback - An optional `callback(err, ipinfo)` function to be called back with the the IP information. - * @returns {any} An object representing the esp8266's Access Point IP information, if available immediately (**ONLY** on ESP8266/ESP32). - * @url http://www.espruino.com/Reference#l_Wifi_getAPIP - */ - getAPIP(callback: any): any; - - /** - * Lookup the hostname and invoke a callback with the IP address as integer - * argument. If the lookup fails, the callback is invoked with a null argument. - * **Note:** only a single hostname lookup can be made at a time, concurrent - * lookups are not supported. - * - * @param {any} hostname - The hostname to lookup. - * @param {any} callback - The `callback(ip)` to invoke when the IP is returned. `ip==null` on failure. - * @url http://www.espruino.com/Reference#l_Wifi_getHostByName - */ - getHostByName(hostname: any, callback: any): void; - - /** - * Returns the hostname announced to the DHCP server and broadcast via mDNS when - * connecting to an access point. - * - * @param {any} callback - An optional `callback(hostname)` function to be called back with the hostname. - * @returns {any} The currently configured hostname, if available immediately. - * @url http://www.espruino.com/Reference#l_Wifi_getHostname - */ - getHostname(callback: any): any; - - /** - * Set the hostname. Depending on implemenation, the hostname is sent with every - * DHCP request and is broadcast via mDNS. The DHCP hostname may be visible in the - * access point and may be forwarded into DNS as hostname.local. If a DHCP lease - * currently exists changing the hostname will cause a disconnect and reconnect in - * order to transmit the change to the DHCP server. The mDNS announcement also - * includes an announcement for the "espruino" service. - * - * @param {any} hostname - The new hostname. - * @param {any} callback - An optional `callback()` function to be called back when the hostname is set - * @url http://www.espruino.com/Reference#l_Wifi_setHostname - */ - setHostname(hostname: any, callback: any): void; - - /** - * Starts the SNTP (Simple Network Time Protocol) service to keep the clock - * synchronized with the specified server. Note that the time zone is really just - * an offset to UTC and doesn't handle daylight savings time. The interval - * determines how often the time server is queried and Espruino's time is - * synchronized. The initial synchronization occurs asynchronously after setSNTP - * returns. - * - * @param {any} server - The NTP server to query, for example, `us.pool.ntp.org` - * @param {any} tz_offset - Local time zone offset in the range -11..13. - * @url http://www.espruino.com/Reference#l_Wifi_setSNTP - */ - setSNTP(server: any, tz_offset: any): void; - - /** - * The `settings` object must contain the following properties. - * * `ip` IP address as string (e.g. "192.168.5.100") - * * `gw` The network gateway as string (e.g. "192.168.5.1") - * * `netmask` The interface netmask as string (e.g. "255.255.255.0") - * - * @param {any} settings - Configuration settings - * @param {any} callback - A `callback(err)` function to invoke when ip is set. `err==null` on success, or a string on failure. - * @url http://www.espruino.com/Reference#l_Wifi_setIP - */ - setIP(settings: any, callback: any): void; - - /** - * The `settings` object must contain the following properties. - * * `ip` IP address as string (e.g. "192.168.5.100") - * * `gw` The network gateway as string (e.g. "192.168.5.1") - * * `netmask` The interface netmask as string (e.g. "255.255.255.0") - * - * @param {any} settings - Configuration settings - * @param {any} callback - A `callback(err)` function to invoke when ip is set. `err==null` on success, or a string on failure. - * @url http://www.espruino.com/Reference#l_Wifi_setAPIP - */ - setAPIP(settings: any, callback: any): void; - - /** - * Issues a ping to the given host, and calls a callback with the time when the - * ping is received. - * - * @param {any} hostname - The host to ping - * @param {any} callback - A `callback(time)` function to invoke when a ping is received - * @url http://www.espruino.com/Reference#l_Wifi_ping - */ - ping(hostname: any, callback: any): void; - - /** - * Switch to using a higher communication speed with the WiFi module. - * * `true` = 921600 baud - * * `false` = 115200 - * * `1843200` (or any number) = use a specific baud rate. * eg. - * `wifi.turbo(true,callback)` or `wifi.turbo(1843200,callback)` - * - * @param {any} enable - true (or a baud rate as a number) to enable, false to disable - * @param {any} callback - A `callback()` function to invoke when turbo mode has been set - * @url http://www.espruino.com/Reference#l_Wifi_turbo - */ - turbo(enable: any, callback: any): void; - } + function crc32(arrayOfData: any): any; /** - * This library allows you to create http servers and make http requests - * In order to use this, you will need an extra module to get network connectivity - * such as the [TI CC3000](/CC3000) or [WIZnet W5500](/WIZnet). - * This is designed to be a cut-down version of the [node.js - * library](http://nodejs.org/api/http.html). Please see the [Internet](/Internet) - * page for more information on how to use it. - * @url http://www.espruino.com/Reference#http + * **This function is deprecated.** Please use `require("neopixel").write(pin, + * data)` instead + * + * @param {Pin} pin - Pin for output signal. + * @param {any} arrayOfData - Array of LED data. + * @url http://www.espruino.com/Reference#l_ESP8266_neopixelWrite */ - http: { - /** - * Create an HTTP Server - * When a request to the server is made, the callback is called. In the callback - * you can use the methods on the response (`httpSRs`) to send data. You can also - * add `request.on('data',function() { ... })` to listen for POSTed data - * - * @param {any} callback - A function(request,response) that will be called when a connection is made - * @returns {any} Returns a new httpSrv object - * @url http://www.espruino.com/Reference#l_http_createServer - */ - createServer(callback: any): httpSrv; - - /** - * Create an HTTP Request - `end()` must be called on it to complete the operation. - * `options` is of the form: - * ``` - * var options = { - * host: 'example.com', // host name - * port: 80, // (optional) port, defaults to 80 - * path: '/', // path sent to server - * method: 'GET', // HTTP command sent to server (must be uppercase 'GET', 'POST', etc) - * protocol: 'http:', // optional protocol - https: or http: - * headers: { key : value, key : value } // (optional) HTTP headers - * }; - * var req = require("http").request(options, function(res) { - * res.on('data', function(data) { - * console.log("HTTP> "+data); - * }); - * res.on('close', function(data) { - * console.log("Connection closed"); - * }); - * }); - * // You can req.write(...) here if your request requires data to be sent. - * req.end(); // called to finish the HTTP request and get the response - * ``` - * You can easily pre-populate `options` from a URL using `var options = - * url.parse("http://www.example.com/foo.html")` - * There's an example of using [`http.request` for HTTP POST - * here](/Internet#http-post) - * **Note:** if TLS/HTTPS is enabled, options can have `ca`, `key` and `cert` - * fields. See `tls.connect` for more information about these and how to use them. - * - * @param {any} options - An object containing host,port,path,method,headers fields (and also ca,key,cert if HTTPS is enabled) - * @param {any} callback - A function(res) that will be called when a connection is made. You can then call `res.on('data', function(data) { ... })` and `res.on('close', function() { ... })` to deal with the response. - * @returns {any} Returns a new httpCRq object - * @url http://www.espruino.com/Reference#l_http_request - */ - request(options: any, callback: any): httpCRq; - - /** - * Request a webpage over HTTP - a convenience function for `http.request()` that - * makes sure the HTTP command is 'GET', and that calls `end` automatically. - * ``` - * require("http").get("http://pur3.co.uk/hello.txt", function(res) { - * res.on('data', function(data) { - * console.log("HTTP> "+data); - * }); - * res.on('close', function(data) { - * console.log("Connection closed"); - * }); - * }); - * ``` - * See `http.request()` and [the Internet page](/Internet) and ` for more usage - * examples. - * - * @param {any} options - A simple URL, or an object containing host,port,path,method fields - * @param {any} callback - A function(res) that will be called when a connection is made. You can then call `res.on('data', function(data) { ... })` and `res.on('close', function() { ... })` to deal with the response. - * @returns {any} Returns a new httpCRq object - * @url http://www.espruino.com/Reference#l_http_get - */ - get(options: any, callback: any): httpCRq; - } + function neopixelWrite(pin: Pin, arrayOfData: any): void; /** - * This library provides TV out capability on the Espruino and Espruino Pico. - * See the [Television](/Television) page for more information. - * @url http://www.espruino.com/Reference#tv + * Put the ESP8266 into 'deep sleep' for the given number of microseconds, reducing + * power consumption drastically. + * meaning of option values: + * 0 - the 108th Byte of init parameter decides whether RF calibration will be + * performed or not. + * 1 - run RF calibration after waking up. Power consumption is high. + * 2 - no RF calibration after waking up. Power consumption is low. + * 4 - no RF after waking up. Power consumption is the lowest. + * **Note:** unlike normal Espruino boards' 'deep sleep' mode, ESP8266 deep sleep + * actually turns off the processor. After the given number of microseconds have + * elapsed, the ESP8266 will restart as if power had been turned off and then back + * on. *All contents of RAM will be lost*. Connect GPIO 16 to RST to enable wakeup. + * **Special:** 0 microseconds cause sleep forever until external wakeup RST pull + * down occurs. + * + * @param {any} micros - Number of microseconds to sleep. + * @param {any} option - posible values are 0, 1, 2 or 4 + * @url http://www.espruino.com/Reference#l_ESP8266_deepSleep */ - tv: { - /** - * This initialises the TV output. Options for PAL are as follows: - * ``` - * var g = require('tv').setup({ type : "pal", - * video : A7, // Pin - SPI MOSI Pin for Video output (MUST BE SPI1) - * sync : A6, // Pin - Timer pin to use for video sync - * width : 384, - * height : 270, // max 270 - * }); - * ``` - * and for VGA: - * ``` - * var g = require('tv').setup({ type : "vga", - * video : A7, // Pin - SPI MOSI Pin for Video output (MUST BE SPI1) - * hsync : A6, // Pin - Timer pin to use for video sync - * vsync : A5, // Pin - pin to use for video sync - * width : 220, - * height : 240, - * repeat : 2, // amount of times to repeat each line - * }); - * ``` - * or - * ``` - * var g = require('tv').setup({ type : "vga", - * video : A7, // Pin - SPI MOSI Pin for Video output (MUST BE SPI1) - * hsync : A6, // Pin - Timer pin to use for video sync - * vsync : A5, // Pin - pin to use for video sync - * width : 220, - * height : 480, - * repeat : 1, // amount of times to repeat each line - * }); - * ``` - * See the [Television](/Television) page for more information. - * - * @param {any} options - Various options for the TV output - * @param {number} width - * @returns {any} A graphics object - * @url http://www.espruino.com/Reference#l_tv_setup - */ - setup(options: any, width: number): any; - } + function deepSleep(micros: any, option: any): void; /** - * Simple library for compression/decompression using - * [heatshrink](https://github.com/atomicobject/heatshrink), an - * [LZSS](https://en.wikipedia.org/wiki/Lempel%E2%80%93Ziv%E2%80%93Storer%E2%80%93Szymanski) - * compression tool. - * Espruino uses heatshrink internally to compress RAM down to fit in Flash memory - * when `save()` is used. This just exposes that functionality. - * Functions here take and return buffers of data. There is no support for - * streaming, so both the compressed and decompressed data must be able to fit in - * memory at the same time. - * @url http://www.espruino.com/Reference#heatshrink + * **DEPRECATED** - please use `Wifi.ping` instead. + * Perform a network ping request. The parameter can be either a String or a + * numeric IP address. + * + * @param {any} ipAddr - A string representation of an IP address. + * @param {any} pingCallback - Optional callback function. + * @url http://www.espruino.com/Reference#l_ESP8266_ping */ - heatshrink: { - /** - * - * @param {any} data - The data to compress - * @returns {any} Returns the result as an ArrayBuffer - * @url http://www.espruino.com/Reference#l_heatshrink_compress - */ - compress(data: any): ArrayBuffer; - - /** - * - * @param {any} data - The data to decompress - * @returns {any} Returns the result as an ArrayBuffer - * @url http://www.espruino.com/Reference#l_heatshrink_decompress - */ - decompress(data: any): ArrayBuffer; - } - - /** - * This library allows you to write to Neopixel/WS281x/APA10x/SK6812 LED strips - * These use a high speed single-wire protocol which needs platform-specific - * implementation on some devices - hence this library to simplify things. - * @url http://www.espruino.com/Reference#neopixel - */ - neopixel: { - /** - * Write to a strip of NeoPixel/WS281x/APA104/APA106/SK6812-style LEDs attached to - * the given pin. - * ``` - * // set just one pixel, red, green, blue - * require("neopixel").write(B15, [255,0,0]); - * ``` - * ``` - * // Produce an animated rainbow over 25 LEDs - * var rgb = new Uint8ClampedArray(25*3); - * var pos = 0; - * function getPattern() { - * pos++; - * for (var i=0;i void} callback - A function that is executed when the event occurs. Its arguments are: + * * `details` An object with event details + * @url http://www.espruino.com/Reference#l_Wifi_associated + */ + function on(event: "associated", callback: (details: any) => void): void; + + /** + * The 'disconnected' event is called when an association with an access point has + * been lost. + * On ESP32/ESP8266 there is a `details` parameter which includes: + * * ssid - The SSID of the access point from which the association was lost + * * mac - The BSSID/mac address of the access point + * * reason - The reason for the disconnection (string) + * @param {string} event - The event to listen to. + * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `details` An object with event details + * @url http://www.espruino.com/Reference#l_Wifi_disconnected + */ + function on(event: "disconnected", callback: (details: any) => void): void; + + /** + * The 'auth_change' event is called when the authentication mode with the + * associated access point changes. The details include: + * * oldMode - The old auth mode (string: open, wep, wpa, wpa2, wpa_wpa2) + * * newMode - The new auth mode (string: open, wep, wpa, wpa2, wpa_wpa2) + * @param {string} event - The event to listen to. + * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `details` An object with event details + * @url http://www.espruino.com/Reference#l_Wifi_auth_change + */ + function on(event: "auth_change", callback: (details: any) => void): void; + + /** + * The 'dhcp_timeout' event is called when a DHCP request to the connected access + * point fails and thus no IP address could be acquired (or renewed). + * @param {string} event - The event to listen to. + * @param {() => void} callback - A function that is executed when the event occurs. + * @url http://www.espruino.com/Reference#l_Wifi_dhcp_timeout + */ + function on(event: "dhcp_timeout", callback: () => void): void; + + /** + * The 'connected' event is called when the connection with an access point is + * ready for traffic. In the case of a dynamic IP address configuration this is + * when an IP address is obtained, in the case of static IP address allocation this + * happens when an association is formed (in that case the 'associated' and + * 'connected' events are fired in rapid succession). + * On ESP32/ESP8266 there is a `details` parameter which includes: + * * ip - The IP address obtained as string + * * netmask - The network's IP range mask as string + * * gw - The network's default gateway as string + * @param {string} event - The event to listen to. + * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `details` An object with event details + * @url http://www.espruino.com/Reference#l_Wifi_connected + */ + function on(event: "connected", callback: (details: any) => void): void; + + /** + * The 'sta_joined' event is called when a station establishes an association (i.e. + * connects) with the esp8266's access point. The details include: + * * mac - The MAC address of the station in string format (00:00:00:00:00:00) + * @param {string} event - The event to listen to. + * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `details` An object with event details + * @url http://www.espruino.com/Reference#l_Wifi_sta_joined + */ + function on(event: "sta_joined", callback: (details: any) => void): void; + + /** + * The 'sta_left' event is called when a station disconnects from the esp8266's + * access point (or its association times out?). The details include: + * * mac - The MAC address of the station in string format (00:00:00:00:00:00) + * @param {string} event - The event to listen to. + * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `details` An object with event details + * @url http://www.espruino.com/Reference#l_Wifi_sta_left + */ + function on(event: "sta_left", callback: (details: any) => void): void; + + /** + * The 'probe_recv' event is called when a probe request is received from some + * station by the esp8266's access point. The details include: + * * mac - The MAC address of the station in string format (00:00:00:00:00:00) + * * rssi - The signal strength in dB of the probe request + * @param {string} event - The event to listen to. + * @param {(details: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `details` An object with event details + * @url http://www.espruino.com/Reference#l_Wifi_probe_recv + */ + function on(event: "probe_recv", callback: (details: any) => void): void; + + /** + * Disconnect the wifi station from an access point and disable the station mode. + * It is OK to call `disconnect` to turn off station mode even if no connection + * exists (for example, connection attempts may be failing). Station mode can be + * re-enabled by calling `connect` or `scan`. + * + * @param {any} [callback] - [optional] An `callback()` function to be called back on disconnection. The callback function receives no argument. + * @url http://www.espruino.com/Reference#l_Wifi_disconnect + */ + function disconnect(callback?: any): void; + + /** + * Stop being an access point and disable the AP operation mode. AP mode can be + * re-enabled by calling `startAP`. + * + * @param {any} [callback] - [optional] An `callback()` function to be called back on successful stop. The callback function receives no argument. + * @url http://www.espruino.com/Reference#l_Wifi_stopAP + */ + function stopAP(callback?: any): void; + + /** + * Connect to an access point as a station. If there is an existing connection to + * an AP it is first disconnected if the SSID or password are different from those + * passed as parameters. Put differently, if the passed SSID and password are + * identical to the currently connected AP then nothing is changed. When the + * connection attempt completes the callback function is invoked with one `err` + * parameter, which is NULL if there is no error and a string message if there is + * an error. If DHCP is enabled the callback occurs once an IP address has been + * obtained, if a static IP is set the callback occurs once the AP's network has + * been joined. The callback is also invoked if a connection already exists and + * does not need to be changed. + * The options properties may contain: + * * `password` - Password string to be used to access the network. + * * `dnsServers` (array of String) - An array of up to two DNS servers in dotted + * decimal format string. + * * `channel` - Wifi channel of the access point (integer, typ 0..14, 0 means any + * channel), only on ESP8266. + * * `bssid` - Mac address of the access point (string, type "00:00:00:00:00:00"), + * only on ESP8266. + * Notes: + * * the options should include the ability to set a static IP and associated + * netmask and gateway, this is a future enhancement. + * * the only error reported in the callback is "Bad password", all other errors + * (such as access point not found or DHCP timeout) just cause connection + * retries. If the reporting of such temporary errors is desired, the caller must + * use its own timeout and the `getDetails().status` field. + * * the `connect` call automatically enabled station mode, it can be disabled + * again by calling `disconnect`. + * + * @param {any} ssid - The access point network id. + * @param {any} [options] - [optional] Connection options. + * @param {any} callback - A `callback(err)` function to be called back on completion. `err` is null on success, or contains an error string on failure. + * @url http://www.espruino.com/Reference#l_Wifi_connect + */ + function connect(ssid: string, options?: { password?: string, dnsServers?: string[], authMode?: string, channel?: number, bssid?: string }, callback?: (err: string | null) => void): void; + + /** + * Perform a scan for access points. This will enable the station mode if it is not + * currently enabled. Once the scan is complete the callback function is called + * with an array of APs found, each AP is an object with: + * * `ssid`: SSID string. + * * `mac`: access point MAC address in 00:00:00:00:00:00 format. + * * `authMode`: `open`, `wep`, `wpa`, `wpa2`, or `wpa_wpa2`. + * * `channel`: wifi channel 1..13. + * * `hidden`: true if the SSID is hidden (ESP32/ESP8266 only) + * * `rssi`: signal strength in dB in the range -110..0. + * Notes: + * * in order to perform the scan the station mode is turned on and remains on, use + * Wifi.disconnect() to turn it off again, if desired. + * * only one scan can be in progress at a time. + * + * @param {any} callback - A `callback(err, ap_list)` function to be called back on completion. `err==null` and `ap_list` is an array on success, or `err` is an error string and `ap_list` is undefined on failure. + * @url http://www.espruino.com/Reference#l_Wifi_scan + */ + function scan(callback: any): void; + + /** + * Create a WiFi access point allowing stations to connect. If the password is NULL + * or an empty string the access point is open, otherwise it is encrypted. The + * callback function is invoked once the access point is set-up and receives one + * `err` argument, which is NULL on success and contains an error message string + * otherwise. + * The `options` object can contain the following properties. + * * `authMode` - The authentication mode to use. Can be one of "open", "wpa2", + * "wpa", "wpa_wpa2". The default is open (but open access points are not + * recommended). + * * `password` - The password for connecting stations if authMode is not open. + * * `channel` - The channel to be used for the access point in the range 1..13. If + * the device is also connected to an access point as a station then that access + * point determines the channel. + * * `hidden` - The flag if visible or not (0:visible, 1:hidden), default is + * visible. + * Notes: + * * the options should include the ability to set the AP IP and associated + * netmask, this is a future enhancement. + * * the `startAP` call automatically enables AP mode. It can be disabled again by + * calling `stopAP`. + * + * @param {any} ssid - The network id. + * @param {any} [options] - [optional] Configuration options. + * @param {any} callback - Optional `callback(err)` function to be called when the AP is successfully started. `err==null` on success, or an error string on failure. + * @url http://www.espruino.com/Reference#l_Wifi_startAP + */ + function startAP(ssid: string, options?: { password?: string, authMode?: "open" | "wpa2" | "wpa" | "wpa_wpa2", channel?: number, hidden?: boolean }, callback?: (err: string | null) => void): void; + + /** + * Retrieve the current overall WiFi configuration. This call provides general + * information that pertains to both station and access point modes. The getDetails + * and getAPDetails calls provide more in-depth information about the station and + * access point configurations, respectively. The status object has the following + * properties: + * * `station` - Status of the wifi station: `off`, `connecting`, ... + * * `ap` - Status of the wifi access point: `disabled`, `enabled`. + * * `mode` - The current operation mode: `off`, `sta`, `ap`, `sta+ap`. + * * `phy` - Modulation standard configured: `11b`, `11g`, `11n` (the esp8266 docs + * are not very clear, but it is assumed that 11n means b/g/n). This setting + * limits the modulations that the radio will use, it does not indicate the + * current modulation used with a specific access point. + * * `powersave` - Power saving mode: `none` (radio is on all the time), `ps-poll` + * (radio is off between beacons as determined by the access point's DTIM + * setting). Note that in 'ap' and 'sta+ap' modes the radio is always on, i.e., + * no power saving is possible. + * * `savedMode` - The saved operation mode which will be applied at boot time: + * `off`, `sta`, `ap`, `sta+ap`. + * + * @param {any} callback - Optional `callback(status)` function to be called back with the current Wifi status, i.e. the same object as returned directly. + * @returns {any} An object representing the current WiFi status, if available immediately. + * @url http://www.espruino.com/Reference#l_Wifi_getStatus + */ + function getStatus(callback: any): any; + + /** + * Sets a number of global wifi configuration settings. All parameters are optional + * and which are passed determines which settings are updated. The settings + * available are: + * * `phy` - Modulation standard to allow: `11b`, `11g`, `11n` (the esp8266 docs + * are not very clear, but it is assumed that 11n means b/g/n). + * * `powersave` - Power saving mode: `none` (radio is on all the time), `ps-poll` + * (radio is off between beacons as determined by the access point's DTIM + * setting). Note that in 'ap' and 'sta+ap' modes the radio is always on, i.e., + * no power saving is possible. + * Note: esp8266 SDK programmers may be missing an "opmode" option to set the + * sta/ap/sta+ap operation mode. Please use connect/scan/disconnect/startAP/stopAP, + * which all set the esp8266 opmode indirectly. + * + * @param {any} settings - An object with the configuration settings to change. + * @url http://www.espruino.com/Reference#l_Wifi_setConfig + */ + function setConfig(settings: any): void; + + /** + * Retrieve the wifi station configuration and status details. The details object + * has the following properties: + * * `status` - Details about the wifi station connection, one of `off`, + * `connecting`, `wrong_password`, `no_ap_found`, `connect_fail`, or `connected`. + * The off, bad_password and connected states are stable, the other states are + * transient. The connecting state will either result in connected or one of the + * error states (bad_password, no_ap_found, connect_fail) and the no_ap_found and + * connect_fail states will result in a reconnection attempt after some interval. + * * `rssi` - signal strength of the connected access point in dB, typically in the + * range -110 to 0, with anything greater than -30 being an excessively strong + * signal. + * * `ssid` - SSID of the access point. + * * `password` - the password used to connect to the access point. + * * `authMode` - the authentication used: `open`, `wpa`, `wpa2`, `wpa_wpa2` (not + * currently supported). + * * `savedSsid` - the SSID to connect to automatically at boot time, null if none. + * + * @param {any} [callback] - [optional] An `callback(details)` function to be called back with the wifi details, i.e. the same object as returned directly. + * @returns {any} An object representing the wifi station details, if available immediately. + * @url http://www.espruino.com/Reference#l_Wifi_getDetails + */ + function getDetails(callback?: any): any; + + /** + * Retrieve the current access point configuration and status. The details object + * has the following properties: + * * `status` - Current access point status: `enabled` or `disabled` + * * `stations` - an array of the stations connected to the access point. This + * array may be empty. Each entry in the array is an object describing the + * station which, at a minimum contains `ip` being the IP address of the station. + * * `ssid` - SSID to broadcast. + * * `password` - Password for authentication. + * * `authMode` - the authentication required of stations: `open`, `wpa`, `wpa2`, + * `wpa_wpa2`. + * * `hidden` - True if the SSID is hidden, false otherwise. + * * `maxConn` - Max number of station connections supported. + * * `savedSsid` - the SSID to broadcast automatically at boot time, null if the + * access point is to be disabled at boot. + * + * @param {any} [callback] - [optional] A `callback(details)` function to be called back with the current access point details, i.e. the same object as returned directly. + * @returns {any} An object representing the current access point details, if available immediately. + * @url http://www.espruino.com/Reference#l_Wifi_getAPDetails + */ + function getAPDetails(callback?: any): any; + + /** + * On boards where this is not available, just issue the `connect` commands you + * need to run at startup from an `onInit` function. + * Save the current wifi configuration (station and access point) to flash and + * automatically apply this configuration at boot time, unless `what=="clear"`, in + * which case the saved configuration is cleared such that wifi remains disabled at + * boot. The saved configuration includes: + * * mode (off/sta/ap/sta+ap) + * * SSIDs & passwords + * * phy (11b/g/n) + * * powersave setting + * * DHCP hostname + * + * @param {any} what - An optional parameter to specify what to save, on the esp8266 the two supported values are `clear` and `sta+ap`. The default is `sta+ap` + * @url http://www.espruino.com/Reference#l_Wifi_save + */ + function save(what: any): void; + + /** + * Restores the saved Wifi configuration from flash. See `Wifi.save()`. + * @url http://www.espruino.com/Reference#l_Wifi_restore + */ + function restore(): void; + + /** + * Return the station IP information in an object as follows: + * * ip - IP address as string (e.g. "192.168.1.5") + * * netmask - The interface netmask as string (ESP8266/ESP32 only) + * * gw - The network gateway as string (ESP8266/ESP32 only) + * * mac - The MAC address as string of the form 00:00:00:00:00:00 + * Note that the `ip`, `netmask`, and `gw` fields are omitted if no connection is established: + * + * @param {any} [callback] - [optional] A `callback(err, ipinfo)` function to be called back with the IP information. + * @returns {any} An object representing the station IP information, if available immediately (**ONLY** on ESP8266/ESP32). + * @url http://www.espruino.com/Reference#l_Wifi_getIP + */ + function getIP(callback?: any): any; + + /** + * Return the access point IP information in an object which contains: + * * ip - IP address as string (typ "192.168.4.1") + * * netmask - The interface netmask as string + * * gw - The network gateway as string + * * mac - The MAC address as string of the form 00:00:00:00:00:00 + * + * @param {any} [callback] - [optional] A `callback(err, ipinfo)` function to be called back with the the IP information. + * @returns {any} An object representing the esp8266's Access Point IP information, if available immediately (**ONLY** on ESP8266/ESP32). + * @url http://www.espruino.com/Reference#l_Wifi_getAPIP + */ + function getAPIP(callback?: any): any; + + /** + * Lookup the hostname and invoke a callback with the IP address as integer + * argument. If the lookup fails, the callback is invoked with a null argument. + * **Note:** only a single hostname lookup can be made at a time, concurrent + * lookups are not supported. + * + * @param {any} hostname - The hostname to lookup. + * @param {any} callback - The `callback(ip)` to invoke when the IP is returned. `ip==null` on failure. + * @url http://www.espruino.com/Reference#l_Wifi_getHostByName + */ + function getHostByName(hostname: any, callback: any): void; + + /** + * Returns the hostname announced to the DHCP server and broadcast via mDNS when + * connecting to an access point. + * + * @param {any} [callback] - [optional] A `callback(hostname)` function to be called back with the hostname. + * @returns {any} The currently configured hostname, if available immediately. + * @url http://www.espruino.com/Reference#l_Wifi_getHostname + */ + function getHostname(callback?: any): any; + + /** + * Set the hostname. Depending on implementation, the hostname is sent with every + * DHCP request and is broadcast via mDNS. The DHCP hostname may be visible in the + * access point and may be forwarded into DNS as hostname.local. If a DHCP lease + * currently exists changing the hostname will cause a disconnect and reconnect in + * order to transmit the change to the DHCP server. The mDNS announcement also + * includes an announcement for the "espruino" service. + * + * @param {any} hostname - The new hostname. + * @param {any} [callback] - [optional] A `callback()` function to be called back when the hostname is set + * @url http://www.espruino.com/Reference#l_Wifi_setHostname + */ + function setHostname(hostname: any, callback?: any): void; + + /** + * Starts the SNTP (Simple Network Time Protocol) service to keep the clock + * synchronized with the specified server. Note that the time zone is really just + * an offset to UTC and doesn't handle daylight savings time. The interval + * determines how often the time server is queried and Espruino's time is + * synchronized. The initial synchronization occurs asynchronously after setSNTP + * returns. + * + * @param {any} server - The NTP server to query, for example, `us.pool.ntp.org` + * @param {any} tz_offset - Local time zone offset in the range -11..13. + * @url http://www.espruino.com/Reference#l_Wifi_setSNTP + */ + function setSNTP(server: any, tz_offset: any): void; + + /** + * The `settings` object must contain the following properties. + * * `ip` IP address as string (e.g. "192.168.5.100") + * * `gw` The network gateway as string (e.g. "192.168.5.1") + * * `netmask` The interface netmask as string (e.g. "255.255.255.0") + * + * @param {any} settings - Configuration settings + * @param {any} callback - A `callback(err)` function to invoke when ip is set. `err==null` on success, or a string on failure. + * @url http://www.espruino.com/Reference#l_Wifi_setIP + */ + function setIP(settings: any, callback: any): void; + + /** + * The `settings` object must contain the following properties. + * * `ip` IP address as string (e.g. "192.168.5.100") + * * `gw` The network gateway as string (e.g. "192.168.5.1") + * * `netmask` The interface netmask as string (e.g. "255.255.255.0") + * + * @param {any} settings - Configuration settings + * @param {any} callback - A `callback(err)` function to invoke when ip is set. `err==null` on success, or a string on failure. + * @url http://www.espruino.com/Reference#l_Wifi_setAPIP + */ + function setAPIP(settings: any, callback: any): void; + + /** + * Issues a ping to the given host, and calls a callback with the time when the + * ping is received. + * + * @param {any} hostname - The host to ping + * @param {any} callback - A `callback(time)` function to invoke when a ping is received + * @url http://www.espruino.com/Reference#l_Wifi_ping + */ + function ping(hostname: any, callback: any): void; + + /** + * Switch to using a higher communication speed with the WiFi module. + * * `true` = 921600 baud + * * `false` = 115200 + * * `1843200` (or any number) = use a specific baud rate. * e.g. + * `wifi.turbo(true,callback)` or `wifi.turbo(1843200,callback)` + * + * @param {any} enable - true (or a baud rate as a number) to enable, false to disable + * @param {any} callback - A `callback()` function to invoke when turbo mode has been set + * @url http://www.espruino.com/Reference#l_Wifi_turbo + */ + function turbo(enable: any, callback: any): void; +} + +/** + * Library that initialises a network device that calls into JavaScript + * @url http://www.espruino.com/Reference#NetworkJS + */ +declare module "NetworkJS" { + /** + * Initialise the network using the callbacks given and return the first argument. + * For instance: + * ``` + * require("NetworkJS").create({ + * create : function(host, port, socketType, options) { + * // Create a socket and return its index, host is a string, port is an integer. + * // If host isn't defined, create a server socket + * console.log("Create",host,port); + * return 1; + * }, + * close : function(sckt) { + * // Close the socket. returns nothing + * }, + * accept : function(sckt) { + * // Accept the connection on the server socket. Returns socket number or -1 if no connection + * return -1; + * }, + * recv : function(sckt, maxLen, socketType) { + * // Receive data. Returns a string (even if empty). + * // If non-string returned, socket is then closed + * return null;//or ""; + * }, + * send : function(sckt, data, socketType) { + * // Send data (as string). Returns the number of bytes sent - 0 is ok. + * // Less than 0 + * return data.length; + * } + * }); + * ``` + * `socketType` is an integer - 2 for UDP, or see SocketType in + * https://github.com/espruino/Espruino/blob/master/libs/network/network.h for more + * information. + * + * @param {any} obj - An object containing functions to access the network device + * @returns {any} The object passed in + * @url http://www.espruino.com/Reference#l_NetworkJS_create + */ + function create(obj: any): any; +} + +/** + * This library allows you to create http servers and make http requests + * In order to use this, you will need an extra module to get network connectivity + * such as the [TI CC3000](/CC3000) or [WIZnet W5500](/WIZnet). + * This is designed to be a cut-down version of the [node.js + * library](http://nodejs.org/api/http.html). Please see the [Internet](/Internet) + * page for more information on how to use it. + * @url http://www.espruino.com/Reference#http + */ +declare module "http" { + /** + * Create an HTTP Server + * When a request to the server is made, the callback is called. In the callback + * you can use the methods on the response (`httpSRs`) to send data. You can also + * add `request.on('data',function() { ... })` to listen for POSTed data + * + * @param {any} callback - A function(request,response) that will be called when a connection is made + * @returns {any} Returns a new httpSrv object + * @url http://www.espruino.com/Reference#l_http_createServer + */ + function createServer(callback: any): httpSrv; + + /** + * Create an HTTP Request - `end()` must be called on it to complete the operation. + * `options` is of the form: + * ``` + * var options = { + * host: 'example.com', // host name + * port: 80, // (optional) port, defaults to 80 + * path: '/', // path sent to server + * method: 'GET', // HTTP command sent to server (must be uppercase 'GET', 'POST', etc) + * protocol: 'http:', // optional protocol - https: or http: + * headers: { key : value, key : value } // (optional) HTTP headers + * }; + * var req = require("http").request(options, function(res) { + * res.on('data', function(data) { + * console.log("HTTP> "+data); + * }); + * res.on('close', function(data) { + * console.log("Connection closed"); + * }); + * }); + * // You can req.write(...) here if your request requires data to be sent. + * req.end(); // called to finish the HTTP request and get the response + * ``` + * You can easily pre-populate `options` from a URL using `var options = + * url.parse("http://www.example.com/foo.html")` + * There's an example of using [`http.request` for HTTP POST + * here](/Internet#http-post) + * **Note:** if TLS/HTTPS is enabled, options can have `ca`, `key` and `cert` + * fields. See `tls.connect` for more information about these and how to use them. + * + * @param {any} options - An object containing host,port,path,method,headers fields (and also ca,key,cert if HTTPS is enabled) + * @param {any} callback - A function(res) that will be called when a connection is made. You can then call `res.on('data', function(data) { ... })` and `res.on('close', function() { ... })` to deal with the response. + * @returns {any} Returns a new httpCRq object + * @url http://www.espruino.com/Reference#l_http_request + */ + function request(options: any, callback: any): httpCRq; + + /** + * Request a webpage over HTTP - a convenience function for `http.request()` that + * makes sure the HTTP command is 'GET', and that calls `end` automatically. + * ``` + * require("http").get("http://pur3.co.uk/hello.txt", function(res) { + * res.on('data', function(data) { + * console.log("HTTP> "+data); + * }); + * res.on('close', function(data) { + * console.log("Connection closed"); + * }); + * }); + * ``` + * See `http.request()` and [the Internet page](/Internet) and ` for more usage + * examples. + * + * @param {any} options - A simple URL, or an object containing host,port,path,method fields + * @param {any} callback - A function(res) that will be called when a connection is made. You can then call `res.on('data', function(data) { ... })` and `res.on('close', function() { ... })` to deal with the response. + * @returns {any} Returns a new httpCRq object + * @url http://www.espruino.com/Reference#l_http_get + */ + function get(options: any, callback: any): httpCRq; +} + +/** + * Library for communication with the WIZnet Ethernet module + * @url http://www.espruino.com/Reference#WIZnet + */ +declare module "WIZnet" { + /** + * Initialise the WIZnet module and return an Ethernet object + * + * @param {any} spi - Device to use for SPI (or undefined to use the default) + * @param {Pin} cs - The pin to use for Chip Select + * @returns {any} An Ethernet Object + * @url http://www.espruino.com/Reference#l_WIZnet_connect + */ + function connect(spi: any, cs: Pin): Ethernet; +} + +/** + * @url http://www.espruino.com/Reference#CC3000 + */ +declare module "CC3000" { + /** + * Initialise the CC3000 and return a WLAN object + * + * @param {any} spi - Device to use for SPI (or undefined to use the default). SPI should be 1,000,000 baud, and set to 'mode 1' + * @param {Pin} cs - The pin to use for Chip Select + * @param {Pin} en - The pin to use for Enable + * @param {Pin} irq - The pin to use for Interrupts + * @returns {any} A WLAN Object + * @url http://www.espruino.com/Reference#l_CC3000_connect + */ + function connect(spi: any, cs: Pin, en: Pin, irq: Pin): WLAN; +} + +/** + * This library implements a telnet console for the Espruino interpreter. It + * requires a network connection, e.g. Wifi, and **currently only functions on the + * ESP8266 and on Linux **. It uses port 23 on the ESP8266 and port 2323 on Linux. + * **Note:** To enable on Linux, run `./espruino --telnet` + * @url http://www.espruino.com/Reference#TelnetServer + */ +declare module "TelnetServer" { + /** + * + * @param {any} options - Options controlling the telnet console server `{ mode : 'on|off'}` + * @url http://www.espruino.com/Reference#l_TelnetServer_setOptions + */ + function setOptions(options: any): void; +} + +/** + * This library handles interfacing with a FAT32 filesystem on an SD card. The API + * is designed to be similar to node.js's - However Espruino does not currently + * support asynchronous file IO, so the functions behave like node.js's xxxxSync + * functions. Versions of the functions with 'Sync' after them are also provided + * for compatibility. + * To use this, you must type ```var fs = require('fs')``` to get access to the + * library + * See [the page on File IO](http://www.espruino.com/File+IO) for more information, + * and for examples on wiring up an SD card if your device doesn't come with one. + * **Note:** If you want to remove an SD card after you have started using it, you + * *must* call `E.unmountSD()` or you may cause damage to the card. + * @url http://www.espruino.com/Reference#fs + */ +declare module "fs" { + /** + * List all files in the supplied directory, returning them as an array of strings. + * NOTE: Espruino does not yet support Async file IO, so this function behaves like + * the 'Sync' version. + * + * @param {any} path - The path of the directory to list. If it is not supplied, '' is assumed, which will list the root directory + * @returns {any} An array of filename strings (or undefined if the directory couldn't be listed) + * @url http://www.espruino.com/Reference#l_fs_readdir + */ + function readdir(path: any): any; + + /** + * List all files in the supplied directory, returning them as an array of strings. + * + * @param {any} path - The path of the directory to list. If it is not supplied, '' is assumed, which will list the root directory + * @returns {any} An array of filename strings (or undefined if the directory couldn't be listed) + * @url http://www.espruino.com/Reference#l_fs_readdirSync + */ + function readdirSync(path: any): any; + + /** + * Write the data to the given file + * NOTE: Espruino does not yet support Async file IO, so this function behaves like + * the 'Sync' version. + * + * @param {any} path - The path of the file to write + * @param {any} data - The data to write to the file + * @returns {boolean} True on success, false on failure + * @url http://www.espruino.com/Reference#l_fs_writeFile + */ + function writeFile(path: any, data: any): boolean; + + /** + * Write the data to the given file + * + * @param {any} path - The path of the file to write + * @param {any} data - The data to write to the file + * @returns {boolean} True on success, false on failure + * @url http://www.espruino.com/Reference#l_fs_writeFileSync + */ + function writeFileSync(path: any, data: any): boolean; + + /** + * Append the data to the given file, created a new file if it doesn't exist + * NOTE: Espruino does not yet support Async file IO, so this function behaves like + * the 'Sync' version. + * + * @param {any} path - The path of the file to write + * @param {any} data - The data to write to the file + * @returns {boolean} True on success, false on failure + * @url http://www.espruino.com/Reference#l_fs_appendFile + */ + function appendFile(path: any, data: any): boolean; + + /** + * Append the data to the given file, created a new file if it doesn't exist + * + * @param {any} path - The path of the file to write + * @param {any} data - The data to write to the file + * @returns {boolean} True on success, false on failure + * @url http://www.espruino.com/Reference#l_fs_appendFileSync + */ + function appendFileSync(path: any, data: any): boolean; + + /** + * Read all data from a file and return as a string + * NOTE: Espruino does not yet support Async file IO, so this function behaves like + * the 'Sync' version. + * + * @param {any} path - The path of the file to read + * @returns {any} A string containing the contents of the file (or undefined if the file doesn't exist) + * @url http://www.espruino.com/Reference#l_fs_readFile + */ + function readFile(path: any): any; + + /** + * Read all data from a file and return as a string. + * **Note:** The size of files you can load using this method is limited by the + * amount of available RAM. To read files a bit at a time, see the `File` class. + * + * @param {any} path - The path of the file to read + * @returns {any} A string containing the contents of the file (or undefined if the file doesn't exist) + * @url http://www.espruino.com/Reference#l_fs_readFileSync + */ + function readFileSync(path: any): any; + + /** + * Delete the given file + * NOTE: Espruino does not yet support Async file IO, so this function behaves like + * the 'Sync' version. + * + * @param {any} path - The path of the file to delete + * @returns {boolean} True on success, or false on failure + * @url http://www.espruino.com/Reference#l_fs_unlink + */ + function unlink(path: any): boolean; + + /** + * Delete the given file + * + * @param {any} path - The path of the file to delete + * @returns {boolean} True on success, or false on failure + * @url http://www.espruino.com/Reference#l_fs_unlinkSync + */ + function unlinkSync(path: any): boolean; + + /** + * Return information on the given file. This returns an object with the following + * fields: + * size: size in bytes dir: a boolean specifying if the file is a directory or not + * mtime: A Date structure specifying the time the file was last modified + * + * @param {any} path - The path of the file to get information on + * @returns {any} An object describing the file, or undefined on failure + * @url http://www.espruino.com/Reference#l_fs_statSync + */ + function statSync(path: any): any; + + /** + * Create the directory + * NOTE: Espruino does not yet support Async file IO, so this function behaves like + * the 'Sync' version. + * + * @param {any} path - The name of the directory to create + * @returns {boolean} True on success, or false on failure + * @url http://www.espruino.com/Reference#l_fs_mkdir + */ + function mkdir(path: any): boolean; + + /** + * Create the directory + * + * @param {any} path - The name of the directory to create + * @returns {boolean} True on success, or false on failure + * @url http://www.espruino.com/Reference#l_fs_mkdirSync + */ + function mkdirSync(path: any): boolean; + + /** + * + * @param {any} source - The source file/stream that will send content. + * @param {any} destination - The destination file/stream that will receive content from the source. + * @param {any} [options] + * [optional] An object `{ chunkSize : int=64, end : bool=true, complete : function }` + * chunkSize : The amount of data to pipe from source to destination at a time + * complete : a function to call when the pipe activity is complete + * end : call the 'end' function on the destination when the source is finished + * @url http://www.espruino.com/Reference#l_fs_pipe + */ + function pipe(source: any, destination: any, options?: any): void; +} + +/** + * This library provides TV out capability on the Espruino and Espruino Pico. + * See the [Television](/Television) page for more information. + * @url http://www.espruino.com/Reference#tv + */ +declare module "tv" { + /** + * This initialises the TV output. Options for PAL are as follows: + * ``` + * var g = require('tv').setup({ type : "pal", + * video : A7, // Pin - SPI MOSI Pin for Video output (MUST BE SPI1) + * sync : A6, // Pin - Timer pin to use for video sync + * width : 384, + * height : 270, // max 270 + * }); + * ``` + * and for VGA: + * ``` + * var g = require('tv').setup({ type : "vga", + * video : A7, // Pin - SPI MOSI Pin for Video output (MUST BE SPI1) + * hsync : A6, // Pin - Timer pin to use for video sync + * vsync : A5, // Pin - pin to use for video sync + * width : 220, + * height : 240, + * repeat : 2, // amount of times to repeat each line + * }); + * ``` + * or + * ``` + * var g = require('tv').setup({ type : "vga", + * video : A7, // Pin - SPI MOSI Pin for Video output (MUST BE SPI1) + * hsync : A6, // Pin - Timer pin to use for video sync + * vsync : A5, // Pin - pin to use for video sync + * width : 220, + * height : 480, + * repeat : 1, // amount of times to repeat each line + * }); + * ``` + * See the [Television](/Television) page for more information. + * + * @param {any} options - Various options for the TV output + * @param {number} width + * @returns {any} A graphics object + * @url http://www.espruino.com/Reference#l_tv_setup + */ + function setup(options: any, width: number): any; +} + +/** + * @url http://www.espruino.com/Reference#tensorflow + */ +declare module "tensorflow" { + /** + * + * @param {number} arenaSize - The TensorFlow Arena size + * @param {any} model - The model to use - this should be a flat array/string + * @returns {any} A tensorflow instance + * @url http://www.espruino.com/Reference#l_tensorflow_create + */ + function create(arenaSize: number, model: any): TFMicroInterpreter; +} + +/** + * Simple library for compression/decompression using + * [heatshrink](https://github.com/atomicobject/heatshrink), an + * [LZSS](https://en.wikipedia.org/wiki/Lempel%E2%80%93Ziv%E2%80%93Storer%E2%80%93Szymanski) + * compression tool. + * Espruino uses heatshrink internally to compress RAM down to fit in Flash memory + * when `save()` is used. This just exposes that functionality. + * Functions here take and return buffers of data. There is no support for + * streaming, so both the compressed and decompressed data must be able to fit in + * memory at the same time. + * @url http://www.espruino.com/Reference#heatshrink + */ +declare module "heatshrink" { + /** + * + * @param {any} data - The data to compress + * @returns {any} Returns the result as an ArrayBuffer + * @url http://www.espruino.com/Reference#l_heatshrink_compress + */ + function compress(data: any): ArrayBuffer; + + /** + * + * @param {any} data - The data to decompress + * @returns {any} Returns the result as an ArrayBuffer + * @url http://www.espruino.com/Reference#l_heatshrink_decompress + */ + function decompress(data: any): ArrayBuffer; +} + +/** + * This module allows you to read and write the nonvolatile flash memory of your + * device. + * Also see the `Storage` library, which provides a safer file-like interface to + * nonvolatile storage. + * It should be used with extreme caution, as it is easy to overwrite parts of + * Flash memory belonging to Espruino or even its bootloader. If you damage the + * bootloader then you may need external hardware such as a USB-TTL converter to + * restore it. For more information on restoring the bootloader see `Advanced + * Reflashing` in your board's reference pages. + * To see which areas of memory you can and can't overwrite, look at the values + * reported by `process.memory()`. + * **Note:** On Nordic platforms there are checks in place to help you avoid + * 'bricking' your device be damaging the bootloader. You can disable these with + * `E.setFlags({unsafeFlash:1})` + * @url http://www.espruino.com/Reference#Flash + */ +declare module "Flash" { + /** + * Returns the start and length of the flash page containing the given address. + * + * @param {number} addr - An address in memory + * @returns {any} An object of the form `{ addr : #, length : #}`, where `addr` is the start address of the page, and `length` is the length of it (in bytes). Returns undefined if no page at address + * @url http://www.espruino.com/Reference#l_Flash_getPage + */ + function getPage(addr: number): any; + + /** + * This method returns an array of objects of the form `{addr : #, length : #}`, + * representing contiguous areas of flash memory in the chip that are not used for + * anything. + * The memory areas returned are on page boundaries. This means that you can safely + * erase the page containing any address here, and you won't risk deleting part of + * the Espruino firmware. + * @returns {any} Array of objects with `addr` and `length` properties + * @url http://www.espruino.com/Reference#l_Flash_getFree + */ + function getFree(): any; + + /** + * Erase a page of flash memory + * + * @param {any} addr - An address in the page that is to be erased + * @url http://www.espruino.com/Reference#l_Flash_erasePage + */ + function erasePage(addr: any): void; + + /** + * Write data into memory at the given address + * In flash memory you may only turn bits that are 1 into bits that are 0. If + * you're writing data into an area that you have already written (so `read` + * doesn't return all `0xFF`) you'll need to call `erasePage` to clear the entire + * page. + * + * @param {any} data - The data to write + * @param {number} addr - The address to start writing from + * @url http://www.espruino.com/Reference#l_Flash_write + */ + function write(data: any, addr: number): void; + + /** + * Read flash memory from the given address + * + * @param {number} length - The amount of data to read (in bytes) + * @param {number} addr - The address to start reading from + * @returns {any} A Uint8Array of data + * @url http://www.espruino.com/Reference#l_Flash_read + */ + function read(length: number, addr: number): any; +} + +/** + * This module allows you to read and write part of the nonvolatile flash memory of + * your device using a filesystem-like API. + * Also see the `Flash` library, which provides a low level, more dangerous way to + * access all parts of your flash memory. + * The `Storage` library provides two distinct types of file: + * * `require("Storage").write(...)`/`require("Storage").read(...)`/etc create + * simple contiguous files of fixed length. This is the recommended file type. + * * `require("Storage").open(...)` creates a `StorageFile`, which stores the file + * in numbered chunks (`"filename\1"`/`"filename\2"`/etc). It allows data to be + * appended and for the file to be read line by line. + * You must read a file using the same method you used to write it - e.g. you can't + * create a file with `require("Storage").open(...)` and then read it with + * `require("Storage").read(...)`. + * **Note:** In firmware 2v05 and later, the maximum length for filenames is 28 + * characters. However in 2v04 and earlier the max length is 8. + * @url http://www.espruino.com/Reference#Storage + */ +declare module "Storage" { + /** + * Erase the flash storage area. This will remove all files created with + * `require("Storage").write(...)` as well as any code saved with `save()` or + * `E.setBootCode()`. + * @url http://www.espruino.com/Reference#l_Storage_eraseAll + */ + function eraseAll(): void; + + /** + * Erase a single file from the flash storage area. + * **Note:** This function should be used with normal files, and not `StorageFile`s + * created with `require("Storage").open(filename, ...)` + * + * @param {any} name - The filename - max 28 characters (case sensitive) + * @url http://www.espruino.com/Reference#l_Storage_erase + */ + function erase(name: string): void; + + /** + * Read a file from the flash storage area that has been written with + * `require("Storage").write(...)`. + * This function returns a memory-mapped String that points to the actual memory + * area in read-only memory, so it won't use up RAM. + * As such you can check if a file exists efficiently using + * `require("Storage").read(filename)!==undefined`. + * If you evaluate this string with `eval`, any functions contained in the String + * will keep their code stored in flash memory. + * **Note:** This function should be used with normal files, and not `StorageFile`s + * created with `require("Storage").open(filename, ...)` + * + * @param {any} name - The filename - max 28 characters (case sensitive) + * @param {number} [offset] - [optional] The offset in bytes to start from + * @param {number} [length] - [optional] The length to read in bytes (if <=0, the entire file is read) + * @returns {any} A string of data, or `undefined` if the file is not found + * @url http://www.espruino.com/Reference#l_Storage_read + */ + function read(name: string, offset?: number, length?: number): string | undefined; + + /** + * Read a file from the flash storage area that has been written with + * `require("Storage").write(...)`, and parse JSON in it into a JavaScript object. + * This is identical to `JSON.parse(require("Storage").read(...))`. It will throw + * an exception if the data in the file is not valid JSON. + * **Note:** This function should be used with normal files, and not `StorageFile`s + * created with `require("Storage").open(filename, ...)` + * + * @param {any} name - The filename - max 28 characters (case sensitive) + * @param {boolean} noExceptions - If true and the JSON is not valid, just return `undefined` - otherwise an `Exception` is thrown + * @returns {any} An object containing parsed JSON from the file, or undefined + * @url http://www.espruino.com/Reference#l_Storage_readJSON + */ + function readJSON(name: string, noExceptions: boolean): any; + + /** + * Read a file from the flash storage area that has been written with + * `require("Storage").write(...)`, and return the raw binary data as an + * ArrayBuffer. + * This can be used: + * * In a `DataView` with `new DataView(require("Storage").readArrayBuffer("x"))` + * * In a `Uint8Array/Float32Array/etc` with `new + * Uint8Array(require("Storage").readArrayBuffer("x"))` + * **Note:** This function should be used with normal files, and not `StorageFile`s + * created with `require("Storage").open(filename, ...)` + * + * @param {any} name - The filename - max 28 characters (case sensitive) + * @returns {any} An ArrayBuffer containing data from the file, or undefined + * @url http://www.espruino.com/Reference#l_Storage_readArrayBuffer + */ + function readArrayBuffer(name: string): ArrayBuffer | undefined; + + /** + * Write/create a file in the flash storage area. This is nonvolatile and will not + * disappear when the device resets or power is lost. + * Simply write `require("Storage").write("MyFile", "Some data")` to write a new + * file, and `require("Storage").read("MyFile")` to read it. + * If you supply: + * * A String, it will be written as-is + * * An array, will be written as a byte array (but read back as a String) + * * An object, it will automatically be converted to a JSON string before being + * written. + * **Note:** If an array is supplied it will not be converted to JSON. To be + * explicit about the conversion you can use `Storage.writeJSON` + * You may also create a file and then populate data later **as long as you don't + * try and overwrite data that already exists**. For instance: + * ``` + * var f = require("Storage"); + * f.write("a","Hello",0,14); + * f.write("a"," ",5); + * f.write("a","World!!!",6); + * print(f.read("a")); // "Hello World!!!" + * f.write("a"," ",0); // Writing to location 0 again will cause the file to be re-written + * print(f.read("a")); // " " + * ``` + * This can be useful if you've got more data to write than you have RAM + * available - for instance the Web IDE uses this method to write large files into + * onboard storage. + * **Note:** This function should be used with normal files, and not `StorageFile`s + * created with `require("Storage").open(filename, ...)` + * + * @param {any} name - The filename - max 28 characters (case sensitive) + * @param {any} data - The data to write + * @param {number} [offset] - [optional] The offset within the file to write + * @param {number} [size] - [optional] The size of the file (if a file is to be created that is bigger than the data) + * @returns {boolean} True on success, false on failure + * @url http://www.espruino.com/Reference#l_Storage_write + */ + function write(name: string | ArrayBuffer | ArrayBufferView | number[] | object, data: any, offset?: number, size?: number): boolean; + + /** + * Write/create a file in the flash storage area. This is nonvolatile and will not + * disappear when the device resets or power is lost. + * Simply write `require("Storage").writeJSON("MyFile", [1,2,3])` to write a new + * file, and `require("Storage").readJSON("MyFile")` to read it. + * This is equivalent to: `require("Storage").write(name, JSON.stringify(data))` + * **Note:** This function should be used with normal files, and not `StorageFile`s + * created with `require("Storage").open(filename, ...)` + * + * @param {any} name - The filename - max 28 characters (case sensitive) + * @param {any} data - The JSON data to write + * @returns {boolean} True on success, false on failure + * @url http://www.espruino.com/Reference#l_Storage_writeJSON + */ + function writeJSON(name: string, data: any): boolean; + + /** + * List all files in the flash storage area. An array of Strings is returned. + * By default this lists files created by `StorageFile` (`require("Storage").open`) + * which have a file number (`"\1"`/`"\2"`/etc) appended to them. + * ``` + * // All files + * require("Storage").list() + * // Files ending in '.js' + * require("Storage").list(/\.js$/) + * // All Storage Files + * require("Storage").list(undefined, {sf:true}) + * // All normal files (e.g. created with Storage.write) + * require("Storage").list(undefined, {sf:false}) + * ``` + * **Note:** This will output system files (e.g. saved code) as well as files that + * you may have written. + * + * @param {any} [regex] - [optional] If supplied, filenames are checked against this regular expression (with `String.match(regexp)`) to see if they match before being returned + * @param {any} [filter] - [optional] If supplied, File Types are filtered based on this: `{sf:true}` or `{sf:false}` for whether to show StorageFile + * @returns {any} An array of filenames + * @url http://www.espruino.com/Reference#l_Storage_list + */ + function list(regex?: RegExp, filter?: { sf: boolean }): string[]; + + /** + * List all files in the flash storage area matching the specified regex (ignores + * StorageFiles), and then hash their filenames *and* file locations. + * Identical files may have different hashes (e.g. if Storage is compacted and the + * file moves) but the changes of different files having the same hash are + * extremely small. + * ``` + * // Hash files + * require("Storage").hash() + * // Files ending in '.boot.js' + * require("Storage").hash(/\.boot\.js$/) + * ``` + * **Note:** This function is used by Bangle.js as a way to cache files. For + * instance the bootloader will add all `.boot.js` files together into a single + * `.boot0` file, but it needs to know quickly whether anything has changed. + * + * @param {any} [regex] - [optional] If supplied, filenames are checked against this regular expression (with `String.match(regexp)`) to see if they match before being hashed + * @returns {number} A hash of the files matching + * @url http://www.espruino.com/Reference#l_Storage_hash + */ + function hash(regex: RegExp): number; + + /** + * The Flash Storage system is journaling. To make the most of the limited write + * cycles of Flash memory, Espruino marks deleted/replaced files as garbage and + * moves on to a fresh part of flash memory. Espruino only fully erases those files + * when it is running low on flash, or when `compact` is called. + * `compact` may fail if there isn't enough RAM free on the stack to use as swap + * space, however in this case it will not lose data. + * **Note:** `compact` rearranges the contents of memory. If code is referencing + * that memory (e.g. functions that have their code stored in flash) then they may + * become garbled when compaction happens. To avoid this, call `eraseFiles` before + * uploading data that you intend to reference to ensure that uploaded files are + * right at the start of flash and cannot be compacted further. + * @url http://www.espruino.com/Reference#l_Storage_compact + */ + function compact(): void; + + /** + * This writes information about all blocks in flash memory to the console - and is + * only useful for debugging flash storage. + * @url http://www.espruino.com/Reference#l_Storage_debug + */ + function debug(): void; + + /** + * Return the amount of free bytes available in Storage. Due to fragmentation there + * may be more bytes available, but this represents the maximum size of file that + * can be written. + * @returns {number} The amount of free bytes + * @url http://www.espruino.com/Reference#l_Storage_getFree + */ + function getFree(): number; + + /** + * Returns: + * ``` + * { + * totalBytes // Amount of bytes in filesystem + * freeBytes // How many bytes are left at the end of storage? + * fileBytes // How many bytes of allocated files do we have? + * fileCount // How many allocated files do we have? + * trashBytes // How many bytes of trash files do we have? + * trashCount // How many trash files do we have? + * } + * ``` + * @returns {any} An object containing info about the current Storage system + * @url http://www.espruino.com/Reference#l_Storage_getStats + */ + function getStats(): any; + + /** + * Writes a lookup table for files into Bangle.js's storage. This allows any file + * stored up to that point to be accessed quickly. + * @url http://www.espruino.com/Reference#l_Storage_optimise + */ + function optimise(): void; + + /** + * Open a file in the Storage area. This can be used for appending data + * (normal read/write operations only write the entire file). + * Please see `StorageFile` for more information (and examples). + * **Note:** These files write through immediately - they do not need closing. + * + * @param {any} name - The filename - max **27** characters (case sensitive) + * @param {any} mode - The open mode - must be either `'r'` for read,`'w'` for write , or `'a'` for append + * @returns {any} An object containing {read,write,erase} + * @url http://www.espruino.com/Reference#l_Storage_open + */ + function open(name: string, mode: "r" | "w" | "a"): StorageFile; +} \ No newline at end of file From 1e23787b57534d523881d0f7959d71939b04c67f Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 19:17:21 -0500 Subject: [PATCH 0114/1725] Added app.js to this repository --- apps/multidice/app.js | 169 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 169 insertions(+) create mode 100644 apps/multidice/app.js diff --git a/apps/multidice/app.js b/apps/multidice/app.js new file mode 100644 index 000000000..d0f62b8e9 --- /dev/null +++ b/apps/multidice/app.js @@ -0,0 +1,169 @@ +var menu = true; +var diceOpts = {amount: 2, selected: 5}; // TODO: grab values from settings +const DICE_ARRAY = [4, 6, 8, 10, 12, 20, 100]; // TODO: place in settings + +function drawMenu() { + + g.clear(); + g.setFont ("6x8", 2); + + g.drawString ("# of dice:", 5, 5); + g.drawString (diceOpts.amount, 137, 5); + + g.drawString ("dice:", 5, 32); + g.drawString (DICE_ARRAY [diceOpts.selected], 137, 32); +} + +function touchHandler (button, xy) { + + if (menu) { + + if (xy.y <= 26) { // selecting number of dice + + if (xy.x <= 87) { // left edge: decrease + + if (diceOpts.amount > 1) + diceOpts.amount--; + } else { // right edge: increase + + if (diceOpts.amount < 6) + diceOpts.amount++; + } + + drawMenu(); + } else if (xy.y <= 53) { // selecting dice type + + if (xy.x <= 87) { // left edge: decrease + + if (diceOpts.selected > 0) + diceOpts.selected--; + } else { // right edge: increase + + if (diceOpts.selected < DICE_ARRAY.length - 1) + diceOpts.selected++; + } + + drawMenu(); + } else { + + rollDice(); + } + } else { // return to menu screen + + menu = true; + drawMenu (); + } +} + +function rollDice() { + + menu = false; + if (diceOpts.amount == 1) { + + let output = random (DICE_ARRAY [diceOpts.selected]); + + g.clear(); + g.setFont ("Vector", 90); + + g.drawString ((" " + output).slice (-3), 10, 0); + } else { + + let output = new Int8Array ([-1, -1, -1, -1, -1, -1]); + for (let i = 0; i < diceOpts.amount; i++) { + + output [i] = random (DICE_ARRAY [diceOpts.selected]); + } + + g.clear(); + g.setFont ("Vector", 40); + + for (let i = 0; i < 3; i++) { // draws all the numbers in two rows + + if (output [i * 2 + 0] == -1) { + + break; + } else if (output [i * 2 + 1] == -1) { + + + g.drawString ((" " + output [i * 2]).slice (-3), 5, 5 + i * 40); + } else { + + g.drawString ((" " + output [i * 2]).slice (-3) + " " + (" " + output [i * 2 + 1]).slice (-3), 5, 5 + i * 40); + } + } + + g.setFont ("Vector", 20); + g.drawString ("H: " + (" " + max (output)).slice (-3), 5, 130); + g.drawString ("L: " + (" " + min (output)).slice (-3), 110, 130); + g.drawString ("T: " + (" " + total (output)).slice (-3), 5, 150); + g.drawString ("A: " + (" " + average (output)).slice (-3), 110, 150); + } +} + +function random (max) { // number is always between 1 and max + + return Math.round (Math.random() * (max - 1) + 1); +} + +function max (array) { + + let max = 0; + for (let i = 0; i < 6; i++) { + + if (array [i] == -1) + break; + + if (array [i] > max) + max = array [i]; + } + + return max; +} + +function min (array) { + + let min = array [0]; + for (let i = 1; i < 6; i++) { + + if (array [i] == -1) + break; + + if (array [i] < min) + min = array [i]; + } + + return min; +} + +function total (array) { + + let total = 0; + for (let i = 0; i < 6; i++) { + + if (array [i] == -1) + break; + + total += array [i]; + } + + return total; +} + +function average (array) { + + let average = 0; + let rounds = 0; + for (let i = 0; i < 6; i++) { + + if (array [i] == -1) + break; + + average += array [i]; + rounds++; + } + + return Math.round (average / rounds); +} + +drawMenu(); +Bangle.on ('touch', touchHandler); From 9dcf3e715e66230f21b1cf1e3dc59ab7da44ab7e Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 19:28:29 -0500 Subject: [PATCH 0115/1725] added a one-line changelog, and filled out the metadata.json file --- apps/multidice/ChangeLog | 1 + apps/multidice/metadata.json | 14 ++++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 apps/multidice/ChangeLog create mode 100644 apps/multidice/metadata.json diff --git a/apps/multidice/ChangeLog b/apps/multidice/ChangeLog new file mode 100644 index 000000000..1c7728b3d --- /dev/null +++ b/apps/multidice/ChangeLog @@ -0,0 +1 @@ +0.90: got most of the features done, lacking some polish and real-hardware testing diff --git a/apps/multidice/metadata.json b/apps/multidice/metadata.json new file mode 100644 index 000000000..b42c2ba16 --- /dev/null +++ b/apps/multidice/metadata.json @@ -0,0 +1,14 @@ +{ "id": "multidice", + "name": "multiple dice roller", + "shortName":"multidice", + "version":"0.90", + "description": "roll anywhere from 1-6 dice at the same time, and display stats like the highest & lowest roll, the total sum of the dice, and the average of all dice", + "icon": "app.png", + "tags": "", + "supports" : ["BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"multidice.app.js","url":"app.js"}, + {"name":"multidice.img","url":"app-icon.js","evaluate":true} + ] +} From cd788fba56e409d7577381e6cd0a24aa648f4bed Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 19:31:32 -0500 Subject: [PATCH 0116/1725] left README.md incomplete so I can emulate + add screenshots --- apps/multidice/README.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 apps/multidice/README.md diff --git a/apps/multidice/README.md b/apps/multidice/README.md new file mode 100644 index 000000000..23a485d63 --- /dev/null +++ b/apps/multidice/README.md @@ -0,0 +1,25 @@ +# multiple dice roller + +roll anywhere from 1-6 dice at the same time, and display stats like the highest & lowest roll, the total sum of the dice, and the average of all dice + +Add screen shots (if possible) to the app folder and link then into this file with ![](.png) + +## Usage + +Describe how to use it + +## Features + +Name the function + +## Controls + +Name the buttons and what they are used for + +## Requests + +Name who should be contacted for support/update requests + +## Creator + +Your name From c4bd98b35dd72a5133ff88ea1d1f20ee2646589d Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 19:57:31 -0500 Subject: [PATCH 0117/1725] toggled the enable emulation flag in metadata.json --- apps/multidice/metadata.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/multidice/metadata.json b/apps/multidice/metadata.json index b42c2ba16..1a41cf09f 100644 --- a/apps/multidice/metadata.json +++ b/apps/multidice/metadata.json @@ -7,6 +7,7 @@ "tags": "", "supports" : ["BANGLEJS2"], "readme": "README.md", + "allow_emulator": true, "storage": [ {"name":"multidice.app.js","url":"app.js"}, {"name":"multidice.img","url":"app-icon.js","evaluate":true} From 44dd494c5b4f50edfb30ccad70d675f553245ca5 Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 20:10:09 -0500 Subject: [PATCH 0118/1725] forgot to switch from hard tabs to soft tabs --- apps/multidice/app.js | 278 +++++++++++++++++++++--------------------- 1 file changed, 139 insertions(+), 139 deletions(-) diff --git a/apps/multidice/app.js b/apps/multidice/app.js index d0f62b8e9..d11bc99d5 100644 --- a/apps/multidice/app.js +++ b/apps/multidice/app.js @@ -3,166 +3,166 @@ var diceOpts = {amount: 2, selected: 5}; // TODO: grab values from settings const DICE_ARRAY = [4, 6, 8, 10, 12, 20, 100]; // TODO: place in settings function drawMenu() { - - g.clear(); - g.setFont ("6x8", 2); - - g.drawString ("# of dice:", 5, 5); - g.drawString (diceOpts.amount, 137, 5); - - g.drawString ("dice:", 5, 32); - g.drawString (DICE_ARRAY [diceOpts.selected], 137, 32); + + g.clear(); + g.setFont ("6x8", 2); + + g.drawString ("# of dice:", 5, 5); + g.drawString (diceOpts.amount, 137, 5); + + g.drawString ("dice:", 5, 32); + g.drawString (DICE_ARRAY [diceOpts.selected], 137, 32); } function touchHandler (button, xy) { - - if (menu) { - - if (xy.y <= 26) { // selecting number of dice - - if (xy.x <= 87) { // left edge: decrease - - if (diceOpts.amount > 1) - diceOpts.amount--; - } else { // right edge: increase - - if (diceOpts.amount < 6) - diceOpts.amount++; - } - - drawMenu(); - } else if (xy.y <= 53) { // selecting dice type - - if (xy.x <= 87) { // left edge: decrease - - if (diceOpts.selected > 0) - diceOpts.selected--; - } else { // right edge: increase - - if (diceOpts.selected < DICE_ARRAY.length - 1) - diceOpts.selected++; - } - - drawMenu(); - } else { - - rollDice(); - } - } else { // return to menu screen - - menu = true; - drawMenu (); - } + + if (menu) { + + if (xy.y <= 26) { // selecting number of dice + + if (xy.x <= 87) { // left edge: decrease + + if (diceOpts.amount > 1) + diceOpts.amount--; + } else { // right edge: increase + + if (diceOpts.amount < 6) + diceOpts.amount++; + } + + drawMenu(); + } else if (xy.y <= 53) { // selecting dice type + + if (xy.x <= 87) { // left edge: decrease + + if (diceOpts.selected > 0) + diceOpts.selected--; + } else { // right edge: increase + + if (diceOpts.selected < DICE_ARRAY.length - 1) + diceOpts.selected++; + } + + drawMenu(); + } else { + + rollDice(); + } + } else { // return to menu screen + + menu = true; + drawMenu (); + } } function rollDice() { - - menu = false; - if (diceOpts.amount == 1) { - - let output = random (DICE_ARRAY [diceOpts.selected]); - - g.clear(); - g.setFont ("Vector", 90); - - g.drawString ((" " + output).slice (-3), 10, 0); - } else { - - let output = new Int8Array ([-1, -1, -1, -1, -1, -1]); - for (let i = 0; i < diceOpts.amount; i++) { - - output [i] = random (DICE_ARRAY [diceOpts.selected]); - } - - g.clear(); - g.setFont ("Vector", 40); - - for (let i = 0; i < 3; i++) { // draws all the numbers in two rows - - if (output [i * 2 + 0] == -1) { - - break; - } else if (output [i * 2 + 1] == -1) { - - - g.drawString ((" " + output [i * 2]).slice (-3), 5, 5 + i * 40); - } else { - - g.drawString ((" " + output [i * 2]).slice (-3) + " " + (" " + output [i * 2 + 1]).slice (-3), 5, 5 + i * 40); - } - } - - g.setFont ("Vector", 20); - g.drawString ("H: " + (" " + max (output)).slice (-3), 5, 130); - g.drawString ("L: " + (" " + min (output)).slice (-3), 110, 130); - g.drawString ("T: " + (" " + total (output)).slice (-3), 5, 150); - g.drawString ("A: " + (" " + average (output)).slice (-3), 110, 150); - } + + menu = false; + if (diceOpts.amount == 1) { + + let output = random (DICE_ARRAY [diceOpts.selected]); + + g.clear(); + g.setFont ("Vector", 90); + + g.drawString ((" " + output).slice (-3), 10, 0); + } else { + + let output = new Int8Array ([-1, -1, -1, -1, -1, -1]); + for (let i = 0; i < diceOpts.amount; i++) { + + output [i] = random (DICE_ARRAY [diceOpts.selected]); + } + + g.clear(); + g.setFont ("Vector", 40); + + for (let i = 0; i < 3; i++) { // draws all the numbers in two rows + + if (output [i * 2 + 0] == -1) { + + break; + } else if (output [i * 2 + 1] == -1) { + + + g.drawString ((" " + output [i * 2]).slice (-3), 5, 5 + i * 40); + } else { + + g.drawString ((" " + output [i * 2]).slice (-3) + " " + (" " + output [i * 2 + 1]).slice (-3), 5, 5 + i * 40); + } + } + + g.setFont ("Vector", 20); + g.drawString ("H: " + (" " + max (output)).slice (-3), 5, 130); + g.drawString ("L: " + (" " + min (output)).slice (-3), 110, 130); + g.drawString ("T: " + (" " + total (output)).slice (-3), 5, 150); + g.drawString ("A: " + (" " + average (output)).slice (-3), 110, 150); + } } function random (max) { // number is always between 1 and max - - return Math.round (Math.random() * (max - 1) + 1); + + return Math.round (Math.random() * (max - 1) + 1); } function max (array) { - - let max = 0; - for (let i = 0; i < 6; i++) { - - if (array [i] == -1) - break; - - if (array [i] > max) - max = array [i]; - } - - return max; + + let max = 0; + for (let i = 0; i < 6; i++) { + + if (array [i] == -1) + break; + + if (array [i] > max) + max = array [i]; + } + + return max; } function min (array) { - - let min = array [0]; - for (let i = 1; i < 6; i++) { - - if (array [i] == -1) - break; - - if (array [i] < min) - min = array [i]; - } - - return min; + + let min = array [0]; + for (let i = 1; i < 6; i++) { + + if (array [i] == -1) + break; + + if (array [i] < min) + min = array [i]; + } + + return min; } function total (array) { - - let total = 0; - for (let i = 0; i < 6; i++) { - - if (array [i] == -1) - break; - - total += array [i]; - } - - return total; + + let total = 0; + for (let i = 0; i < 6; i++) { + + if (array [i] == -1) + break; + + total += array [i]; + } + + return total; } function average (array) { - - let average = 0; - let rounds = 0; - for (let i = 0; i < 6; i++) { - - if (array [i] == -1) - break; - - average += array [i]; - rounds++; - } - - return Math.round (average / rounds); + + let average = 0; + let rounds = 0; + for (let i = 0; i < 6; i++) { + + if (array [i] == -1) + break; + + average += array [i]; + rounds++; + } + + return Math.round (average / rounds); } drawMenu(); From 0176522932179597fd018ce0550f75a9c5df43fe Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 20:26:04 -0500 Subject: [PATCH 0119/1725] filled out the README.md, and added screenshots of the app. --- apps/multidice/2d20.png | Bin 0 -> 2352 bytes apps/multidice/README.md | 19 ++++++++++++------- apps/multidice/d100.png | Bin 0 -> 1936 bytes apps/multidice/main.png | Bin 0 -> 1547 bytes apps/multidice/menuPercent.png | Bin 0 -> 1467 bytes 5 files changed, 12 insertions(+), 7 deletions(-) create mode 100644 apps/multidice/2d20.png create mode 100644 apps/multidice/d100.png create mode 100644 apps/multidice/main.png create mode 100644 apps/multidice/menuPercent.png diff --git a/apps/multidice/2d20.png b/apps/multidice/2d20.png new file mode 100644 index 0000000000000000000000000000000000000000..e6c52b839b07e4237582668126be172707a6309c GIT binary patch literal 2352 zcmeH}`8V5%7Qo{xOkzd_#Vcy5B{VfUlxJGCHI){nQIbY%XADt0ovNMG(W1zs_H~NX zl0=AoZ8};@#8$B{jkR7ap|Mph&->+_^ZtkV;okepz2~0u`P?6F!hLI$sEDix2m}(n zdk1NIR;<5aF{-Z(MQ)fgt;Lk*0Pb&KvpjVbcabfd_e~L(NSUyd6!68YR;(HJj)$ z7_+h+NrGAG zTfsy{Qnz-@sQ(^@J@5Cf^&jlQeHx&swW(>A!6YpDyHj%eaNNm!y!Tr&GxcGK?d?TH z0mXt5G&jC;U5`Ft&}YMid|8E3lRl;S2A5NiSOd1BxAzGvGz&@vMaJD=FxiGr4HIoT>s zns-RsQQ<@q>dM+Q}P3S=$f0x=7nDJ1_IGr+JbGgBz;f zw5J`kXTl3RQO~j?eKYTINQZ|tVRJ72MRUiN1sOm3KraX}PUVTy?>RG^79XS2_Umo0 zn1r$bF?q02S!SxvgXvczGzDc?lX(kkJP)n`ma2MhNxE(?rmquX<=*aa0K=iM1QJyK8*A=VM?Qh$P_ zOUW}{SY(c*NrtFR3^!jk>wA9R-neBiQc>y(>_BN&dSV!cFr!H5+!$D$5;xc`)RP-% zFiNAsdpy~xQCO$x+D(kVl$8PT6@06~5n6Yt)c%<{Ut=w~t4IDk>tQ48Ax=XNwyIpc zWa((*<|rr-2Lcf3s1%7QZ?Vd6UN>1m}L!xT~T@_{N<`(C^D24>hE3?p%07T7RhuQq;sJ<{oM^Hp820crGFeLi+>rdd>pTFV-Y@RT1Oe0Lx7+`6+hq7r2akhE#^3dUYCa8_fuWzFLwYKqU^3#k(*?p#iTZv~^pOUFJ#sC^Z7Mxh>z zU&A+NPmXPgDmmvNlewPO;1gxpKvod;%jmCz)_%(`gZW@g?)q#XYr^6l7)qq8Z1s`Z z1>0`mIo`^8qm#QXjhdjpIhj?mn(5dqOzu{}eNqotUKp)m{A=^8x*4vK6@YQ#EasHE z0|@#X%;u`fka+319)TX>T=X{lA})dRgwRc+lERX7(2V98d^`*9=23t;SqVvc2UBgdo#hs z-c@@?-XCi2BRY3s6F(q99 zD`CRTsLP?`gMcg*cV-3{7NX|6av6U0h!mQRy}0b;FFX@1N1D6*`x;@-`DXCS@uS@t z+ID&e!{6SS?}Xucz6(#S-9-piyG5E@I1asFMN((h&Ty^ zI82fAid#jf3dk%&VjkW8B+7JBB!@O=u~T)Zu~hiLf6Rf=UcQ?p9TM$jJ{aqDOodUp zlg(1V^vyCoXU^J*Lw$#%>yrg^$S{pB8I>+ylcK-FM!nG}8gs*YES|wN{$%n`(vQ=k zfrkTEamFpZ9?taV5vrl8QMW%y0SGxO>89V%NdiQ#Gne<$w=>UNlACg5>E1>@ zbE)a4PEn6xjv_DkYYKp!6Z3j2p-KUI=q|hkh?uqD!T8_kfy|B(&Y>3Jee>)S0^PlB KjjS?refA&Y2tz>t literal 0 HcmV?d00001 diff --git a/apps/multidice/README.md b/apps/multidice/README.md index 23a485d63..b33365d49 100644 --- a/apps/multidice/README.md +++ b/apps/multidice/README.md @@ -1,25 +1,30 @@ # multiple dice roller -roll anywhere from 1-6 dice at the same time, and display stats like the highest & lowest roll, the total sum of the dice, and the average of all dice +roll anywhere from 1-6 dice at the same time, and display stats like the highest & lowest roll, the total sum of the dice, and the average of all the dice -Add screen shots (if possible) to the app folder and link then into this file with ![](.png) +![the start-up screen](main.png) +![two rolled dice](2d20.png) +![the startup screen](menuPercent.png) +![one large dice](d100.png) ## Usage -Describe how to use it +On the menu screen: tap to the right or left of the "# of dice" option to change how many dice to roll, & tap to the left or right of the "dice" option to select a different type (currently hard-coded to only allow DnD dice). To roll the dice, simply tap anywhere else on the screen. To go back to the dice selector. + +Once you're no longer on the menu screen, tap anywhere on the screen to return to the menu (W.I.P: shaking the watch to allow rolling dice again without having to go to the menu every time) ## Features -Name the function +roll anywhere from 1-6 dice (d4, d6, d8, d10, d12, d20, & d percentile). If only one dice is selected, it simply displays the output; if two or more dice are selected it also displays basic stats such as the highest & lowest roll, the total sum, and the average of all the dice. ## Controls -Name the buttons and what they are used for +No button is used in the app, it simply uses touch controls (W.I.P: accelerometor to roll the dice & compatability with the bangle.js 1). ## Requests -Name who should be contacted for support/update requests +Le3Kat@gmail.com ## Creator -Your name +Le~Kat diff --git a/apps/multidice/d100.png b/apps/multidice/d100.png new file mode 100644 index 0000000000000000000000000000000000000000..16350db1657632de685f8c0289d84112b8334f6d GIT binary patch literal 1936 zcmeHI`%{t$6vZ#UM6wA~EK76=-;AcEtENyPCak5DDLs6xWtv7>t*fSF>_BBDRGVp; zT4vHtDr{PsDB`2(HAbeE76Q7I_yWuaqN1z+!R|~y_QSnr=AOB8XU@5IZVn|la5Zc_ z3<80yCXSF4DEK#Ztl;*NdkQDcQ2zi;$00rM9Zm3?;c*IVIt53%B+ z>yx4mKY38ka<@IL(=KK&&V&FqzsO5PHn;E4vJsS+fSCjUHs3Mc+W?G+0?jCL4qN;c zIg_&@{|)$g+&FsFDh>|{J12``)VU$%x`YWQjm^l;m4%Mq_6+(qii(=;FJ{f?-p*dW za;v!tu2W9Xx8VAW8#ebGx+YM)2rN-AxKU!}BU|TKC{r#p>p`cx>@P4FR*R9}7i*O- zy}OO?SZES*IQZqVNm`j`sil`S=HZZ%D7tTppUvW06r2yjGp{zj#Md&ey%gIh`bTy1npI(Ue_NY$HD7A?jt@TNv0&uoIJW?il+--h?Q3jh6hIUUI3__z=!}) zojH-(_PgwMn7Nv~%PZB|DL7~-RI$vjNKau)+1Q{Djo}O;_=kIJ6OXOxm#iyiH{li{A#v{dIh5Baf zZ=ybZxEs58tV1egc$p4alwuUBVl7GHo)4(e*|p`N=c}&zW=b#flb+7$ag4Raq9Qc! zM%`&wP@2i~kTC@Q;qusbfss-t0=KP*o*dWblkcFhpsPgz1WvyAdXKNB#aEL$(y@c* zm!aOnE^bdoi+bO?v?;F&<|==(!W9BkrC0Vv0WEIdJMy=)Vz0!f@f{f~$lfMrv}rCh z96j!qA9aRG-%c8O^!jH6HNEUDk-_))UGiF5~lixc@d}K~dERs%v$M%G6>bf;SZ%;2@b26mqlGDN<@l| zIN0a<)ac{zjHxWxyxbdw{x%#F-56wb3=f{Y=3%_`fCS-i>QfeMmut<3HaJCI;CP$~ zr^FE2Z?6MjR%WbRH~`!A@PL{BcE;gSK7z2FVeFX{3w2D{W&Se(>gaaw=x!4Oke$=A z6KVk3cU9z|?~2^_^gx$@dE3+7(A?V|wgGKuUO=g~KYtE*LHrfNJO`L1{uuT{#_zTu a^F~jqKDvZ8uF)=iS_nBHm{>)K`Qu-37+f|0 literal 0 HcmV?d00001 diff --git a/apps/multidice/main.png b/apps/multidice/main.png new file mode 100644 index 0000000000000000000000000000000000000000..7ca8f963174c7da421bc8d8abfd3391a64f13492 GIT binary patch literal 1547 zcmeAS@N?(olHy`uVBq!ia0vp^8$g(Y4M?uv{v?ipf%TH7i(^Pd+}qg?%Vq@#u)Y3m zUvhi$5wnLK)#3p=?)&_2DoRgxSn~1P@Av!T{}nS$_Ir?aVDhZuoASa23C=UBnAmK# z+KJ~MFf;hdvW(|P*=}2zU#s`^-|OH0?cddJE4g?6c*I-b5Fnbdwf2F)yG?~m{>*V* zmeE%tkK4cAAw75Bo7DIJo=7tqK4{dG{P29jGR}(Jh2Gbz-&?w~2dzziZ}l$b?qi+r z>#rG}ie8)k#o}rm^YeH81?zvvK6og)L#UGdzV(8@g;%S-ty|2M)_c97K5l0JCxfb_ z+8QmJ-}85b-(?P$Kbd`d_4U#N``<_JeZP9U{`J4_9_P-z{ppDLgY}&fAD$;4S}T9^ zD(43C8}B&FzkIBVsoBHy|9{b^RSCNsL$~|5-#t`%SZeRn*Zbbj`@6UG$G5k)8s;xI z@jbA9A5%!UO1|Q}`%WR@YqIuTeZ9VWZ8tzQ?{ zh*ah7e>FLM=el?9uL9r4105#b@ovtl((uy(|h7TI^L(_^h@6Z4b`8E-gg6OeYGP`zo;b~*ju^t`%xe*F8rvdO8ACI z!Po14SHIm8x_g^*jsJm$waKqI_ozHrss89uxO%}A`493xKUXuG-FV39BVO<|c+x9z zma8+rt!u3Cx4ZM=uRoVqxYtO%$|8Gs*>-Ej66IQ)t+vEQ7cYHK!RPO!Fk5)3RbLii(d{v+0 zJ-c6XmvU{ZW~??VW>yownF5Te#?tc#-u=59Jz<&qop*PC>O05(-c)}?{aHx(gS7`@ z8Fx5wKX~`YkN?NH&EG8xzV3Oy;=8=r#N_oe3t7ANM`p4(G% z_u6u`YBrCGw_6y6pPaDx&SLgg_sE?S>+CX_*yf}NpGZ33@Y3_dD04I%hFl`3XK-^& Wv6(9Jbw99>XYh3Ob6Mw<&;$UNdjDDZGy0Y(FVSM=e(rLfL zi?^)XK5O|`tE+W;FI8W^UH#AYH}jtfQU`9gBr)jEXMETHBz$j4$n(hCakAT=3;y|g zea`>+S#SPMdHCYv>7D)a)?4i}U+!P6|Hb0J=Jx}k2N?eUo>6dxnd?FG{r`+R-Y>1n zeII`R@wP+jer4O9*Z%gI=g-0I0-*;P*4NBjUS(X&UzXo+Rr!YQk#D*#th-Nbx7v5h z?$@8IUr$#jG}OCAh?bR9zn{Hh)q|{guYP3xe(^c{x;|t7Kar%$e@_oo-{12^=g-Z3 zSDDK#udlYd9$W4DdT#pK?H6~-)VkUk-3Pjd!G8UkuZ%&Bm0yihzB;UWX34b0%Iwo= zo2!d*=BqO{Jb(FXk~Zs)Nn6it)}WNLBDP_5zIEvB=bhKR+|?OAyl9zQpTXqJz(4oK zNq_$ZUq!!##{ang>!s9z<;5qY71#>C`u=$(&T_Ti?*2!PzmG0TRmd&hH_r zvyX?{Kia$g)6K85>Vme22_JaRTJr5`5<~d;h{fCWyQ{u`J=gXr^LqTV`?uXoYulfW9ltxP#esqLrRM6#t6$Ua$1$#+SFq}F_4eaT>l8x2-?{p6+ji9eTg5L; zZ|=%J*f#IY)=3Npj@G9~?N#}DY8BIa+xu^RhgXK>f4erX@VZ^@ja~Ot-!*CnggyXj z{O_~i)aQ}|r_GbA?cJiQUH1O^v-Wyn|DN{?BmUYhsCpI?xAj-Sg3|x%|F+ff-Qjxu zf_ceTD+YhIiu*;fs*T@OH@x00@Lu}-RFw_Dq}}48&QMTN+r~bl@dXP*-@5Z37>tpV zJcGq9yTi<997>oN+^?rsG)Q*%F+6zji-+HU`64HSOzixJjA;s1j17xl8`~V<88r-4 hOpJyZdeZnKZ+?G`jqq~$%fLdJ!PC{xWt~$(696AnwY>lU literal 0 HcmV?d00001 From abc1951d485ae493778e16eb8984c3a7a595f741 Mon Sep 17 00:00:00 2001 From: Le-Kat <37410281+Le-Kat@users.noreply.github.com> Date: Fri, 10 Feb 2023 01:27:49 +0000 Subject: [PATCH 0120/1725] added spacing between two of the images --- apps/multidice/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/multidice/README.md b/apps/multidice/README.md index b33365d49..7e44600d6 100644 --- a/apps/multidice/README.md +++ b/apps/multidice/README.md @@ -4,6 +4,7 @@ roll anywhere from 1-6 dice at the same time, and display stats like the highest ![the start-up screen](main.png) ![two rolled dice](2d20.png) + ![the startup screen](menuPercent.png) ![one large dice](d100.png) From a2010999e4c7dfdf4a83ee48163c0ad70f9eb241 Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 20:39:22 -0500 Subject: [PATCH 0121/1725] added app icon --- apps/multidice/app-icon.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 apps/multidice/app-icon.js diff --git a/apps/multidice/app-icon.js b/apps/multidice/app-icon.js new file mode 100644 index 000000000..d79fe5bd2 --- /dev/null +++ b/apps/multidice/app-icon.js @@ -0,0 +1 @@ +E.toArraybuffer(atob("MDCBAf////w///////gf/4AAAfPP/z///efn/z///M/z/z///J/5/z///z48/z///nwefz///PnfPz/D+fnfnz+B8/2fzz885/w/5z9+z///8z9+nw/4eT9+Pm/zfD88Puf3PD+Bvuf3PD/Dng/wfD//z5/8+T//5/5/8z//8/wf5z//+fnfzz///Pnfnz///H2fP4AAATw+R4AAAB/8wz///M/5+zD//OfyOyB//PPkGSZ//PnN2WZ//Nwd2eB//MP8GXD//OP+OX/D/P+P+f+B/P8H+X+Z/P93+T+Z/P93+T+B/P8H+T/D/P+P+T//DOP+OT/+BMH8GT/+ZN392T/+ZN392T/+BMH8GT//DOP+Oz///P//+4//8D//48AAAwAADw==")) From e3f3fe3ddddc041ed0fdd72f171d32eb9fa7cefb Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 21:36:51 -0500 Subject: [PATCH 0122/1725] removed email from README b/c I don't want it getting scraped --- apps/multidice/README.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/apps/multidice/README.md b/apps/multidice/README.md index 7e44600d6..06ea82075 100644 --- a/apps/multidice/README.md +++ b/apps/multidice/README.md @@ -21,11 +21,3 @@ roll anywhere from 1-6 dice (d4, d6, d8, d10, d12, d20, & d percentile). If only ## Controls No button is used in the app, it simply uses touch controls (W.I.P: accelerometor to roll the dice & compatability with the bangle.js 1). - -## Requests - -Le3Kat@gmail.com - -## Creator - -Le~Kat From d236364b9ca21f592be45f64d2685ebd0a5f52c6 Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 21:41:49 -0500 Subject: [PATCH 0123/1725] added app.png --- apps/multidice/app.png | Bin 0 -> 1330 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/multidice/app.png diff --git a/apps/multidice/app.png b/apps/multidice/app.png new file mode 100644 index 0000000000000000000000000000000000000000..75ee0514a953e29e618bf56a49e8526e8eac59f5 GIT binary patch literal 1330 zcmV-21iCYS(1OJaP25k$Q;U-Cc6Fq}DO z&f~^^GU+{YX6AhVneRCO{|_z%wga=k3E*Skx~hw=0yfvshP74*4PYP80`>qe0f&IU zfwg4>?*QHb=4)F)$4fq%-7cwW2lxIR!7w#Jawd^RBbJpr|vEJNZr zu$TJrE^sVT_(~*NI)%ECoNTP{E{TaEBurmNX%Di5Uk2;>QW1~>|Q zp_6*g8xu{U9R%{!X1DC4q2~>f$m3>z>*jeSp+ugy@h%ooqG4A zlCd=5?*@K#c6!`%mua{Y_}Q8BK5#(_2~*))>NtT{^!E|(eU}88QF1pdy?=@@8o*D$ z0U7p2;9uamlv6#Vjmsp^Ej{1w=(=wMqgulRcCk|Zw>f>&+Px4~XpR|ng3lEze7vad z=X#<06m%?SdQI)P`qnt7wA7n-rTT}Q&6rd44dF7)+2owaQ5n1s%iq3>Az-*3_)x{i z@4yF&riLEi5ACk$r;Bl^&6J84vy=XuZ|%{XX$8A8DKTe_#%zrxkcUBehDnda0_nU3 zuGfKO5o>iQPJ9Bq0bJ|7AJ9hZON_g&RAOy_Lrs$IA%cj(Q-5#BK@SrRPoB$R$OEM}|^&MV3cm!b|2>rMTQE;SDe76ozW5i7!!f zZb_+e#w8zuCNa;}9%g-4eBbsKIaz5><%D~+st>260#(qhHRt8iABgl$F={j97eA+T z&6fm`tx6Rva&A#y8En^wF4l7li2+CW)r!U^W$;Pl?{YTgoH#Hh=_bP{zDa7oziF4c}c>Zwgrb1(Ihyk;5!%cl<`h61e!VCCWN3H4Pmy;1p3-dpp18lA<&!SZE7P>#yb@; z;;DeQsf|Dx@8lCG>TUWn#@9w5%R9LQih7%#vbj)EWO*l-Kv8egERqXVAuwBzK&-cE z7RiOG5XkaQX}M6Wx9KgC3!Qcfnxe?^PDw%2DCuqb1LMyrXp)lB{TG<3u(ghOm%DXg zgVwz@=~$*>;)pE1>VNjwrnOG#wxgwDe5B&KBTi9o7h`APYTz?{wCZ(=tzq|_cB5=p oHg@l1bwC|gHFnkhjC-x}A5s&T=P#0nHvj+t07*qoM6N<$g6g++LI3~& literal 0 HcmV?d00001 From a8339c1718a5acaf0d38dce3f2d9821a59cd6096 Mon Sep 17 00:00:00 2001 From: Le~Kat Date: Thu, 9 Feb 2023 22:31:50 -0500 Subject: [PATCH 0124/1725] added tags to metadata.json, trying to wrap my head around the sanitycheck --- apps/multidice/app-icon.js | 2 +- apps/multidice/metadata.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/multidice/app-icon.js b/apps/multidice/app-icon.js index d79fe5bd2..d6e931259 100644 --- a/apps/multidice/app-icon.js +++ b/apps/multidice/app-icon.js @@ -1 +1 @@ -E.toArraybuffer(atob("MDCBAf////w///////gf/4AAAfPP/z///efn/z///M/z/z///J/5/z///z48/z///nwefz///PnfPz/D+fnfnz+B8/2fzz885/w/5z9+z///8z9+nw/4eT9+Pm/zfD88Puf3PD+Bvuf3PD/Dng/wfD//z5/8+T//5/5/8z//8/wf5z//+fnfzz///Pnfnz///H2fP4AAATw+R4AAAB/8wz///M/5+zD//OfyOyB//PPkGSZ//PnN2WZ//Nwd2eB//MP8GXD//OP+OX/D/P+P+f+B/P8H+X+Z/P93+T+Z/P93+T+B/P8H+T/D/P+P+T//DOP+OT/+BMH8GT/+ZN392T/+ZN392T/+BMH8GT//DOP+Oz///P//+4//8D//48AAAwAADw==")) +atob("MDCEAREREREREREREREREREREQAAEREREREREREREREREREREREREREREAAAARERERERERAAAAAAAAAAAAAAARERABERABEREREREQARERERERERERERAREQAREREAEREREREQARERERERERERERABEAEREREQAREREREQARERERERERERERABABERERERABEREREQAREREREREREREREQARERAAEREAEREREQAREREREREREREREAEREQAAAREQAREREQARERERERERERERABEREAERARERABEREQARERERAAAREREQAREREAERAREREAEREQAREREQAAABEREAEREREQEQAREREQAREQAREREAEREAERABEREREQAAERERERABEQAREREBEREQEQAREREREREREREREREAEQAREREBEREQEAEREQAAERERERAAAREQAQAREREBEREQABEREAEQEREREQARARERAAAREREAEREAABEREBEQAREREQERABERAAAREREQAAABEBEREBEQAREREQERABERAAARERERAAAREAEREAAAEREREQAAARERAAAREREREREREQARERABEREREREAEREQAQARERERERERERABERERERABEREREREAEQAREREREREREREAEREREQAAARERERABEQAREREREREREREQAREREAERAREREQAREQARERERERERERERABEREAERAREREAEREQARERERERERERERAAEREQEQARERABERERAAAAAAAAAAAAAAAQAREQAAEREQAQABERAAAAAAAAAAAAAAAAABEREREREAEQAAEQARERERERERERERABEAERERERABEREQEQARAAARERERERERABEQAREREQAQABEQEQAQAAABERERERERABERABEREAEAAAEQAQAQARABERERERERABEREAERABEBEQEQAQEQARABERERERERABEBEQAAAREBEQEQAREQAAABERERERERABEAABEREREAAAEQAQERAAARERERERERABEQABEREREQABEQAQERERERAAARERERABEREREQABEREREQAREREREQAAABERERABEREREAAAEREREQAQEREREQARABERERABEREREBEQEREREQAQAREREQARABERERABEREREBEQEREREQAQAREREQAAABERERABEREREAAAEREREQAQARERERAAARERERABEREREQABEREREQAQARERERERERAAARABEQABEREREQABEQAQAREREREREQAAABABEAAAEREREAAAEQAQAREREREREQARABABEBEQEREREBEQEQAQAREREREREQARABABEBEQEREREBEQEQAQAREREREREQAAABABEAAAEREREAAAEQAQARERERERERAAARABEQABEREREQABEQEQARERERERERERERABEREREREREREREQERAAEREREREREREAAAARERERERERERAAEREAAAAAAAAAAAAAEQAAAAAAAAAAAAAREQ==") diff --git a/apps/multidice/metadata.json b/apps/multidice/metadata.json index 1a41cf09f..b7537d0b3 100644 --- a/apps/multidice/metadata.json +++ b/apps/multidice/metadata.json @@ -4,7 +4,7 @@ "version":"0.90", "description": "roll anywhere from 1-6 dice at the same time, and display stats like the highest & lowest roll, the total sum of the dice, and the average of all dice", "icon": "app.png", - "tags": "", + "tags": "tool,game", "supports" : ["BANGLEJS2"], "readme": "README.md", "allow_emulator": true, From 09f2b655ff4213a68e4e67f27fcc8b4a19b3e01d Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 10 Feb 2023 17:10:37 +0100 Subject: [PATCH 0125/1725] calendar 0.13 - Change usage to swipe left/right for next/previous month - Add up/down swipe for next/previous year - Display scheduler events for current month on touch --- apps/calendar/ChangeLog | 2 + apps/calendar/README.md | 10 ++-- apps/calendar/calendar.js | 107 ++++++++++++++++++++++++++---------- apps/calendar/metadata.json | 2 +- 4 files changed, 86 insertions(+), 35 deletions(-) diff --git a/apps/calendar/ChangeLog b/apps/calendar/ChangeLog index 05eca83c0..27e1e2517 100644 --- a/apps/calendar/ChangeLog +++ b/apps/calendar/ChangeLog @@ -11,3 +11,5 @@ 0.10: Use default Bangle formatter for booleans 0.11: Fix off-by-one-error on next year 0.12: Mark dated events on a day +0.13: Switch to swipe left/right for month and up/down for year selection + Display events for current month on touch diff --git a/apps/calendar/README.md b/apps/calendar/README.md index 4fc6962cf..ec1c0c55a 100644 --- a/apps/calendar/README.md +++ b/apps/calendar/README.md @@ -4,11 +4,13 @@ Basic calendar ## Usage -- Use `BTN4` (left screen tap) to go to the previous month -- Use `BTN5` (right screen tap) to go to the next month +- Swipe left to go to the previous month +- Swipe right to go to the next month +- Swipe up (Bangle.js 2 only) to go to the previous year +- Swipe down (Bangle.js 2 only) to go to the next year +- Touch to display events for current month +- Press the button (button 3 on Bangle.js 1) to exit ## Settings -- Starts Sunday: whether the calendar should start on Sunday (default is Monday). - B2 Colors: use non-dithering colors (default, recommended for Bangle 2) or the original color scheme. - diff --git a/apps/calendar/calendar.js b/apps/calendar/calendar.js index b61f2089c..83d587319 100644 --- a/apps/calendar/calendar.js +++ b/apps/calendar/calendar.js @@ -24,11 +24,24 @@ let fgOtherMonth = gray1; let fgSameMonth = white; let bgEvent = blue; const eventsPerDay=6; // how much different events per day we can display +let menuVisible = false; +const date = new Date(); const timeutils = require("time_utils"); let settings = require('Storage').readJSON("calendar.json", true) || {}; let startOnSun = ((require("Storage").readJSON("setting.json", true) || {}).firstDayOfWeek || 0) === 0; -const events = (require("Storage").readJSON("sched.json",1) || []).filter(a => a.on && a.date); // all alarms that run on a specific date + // all alarms that run on a specific date +const events = (require("Storage").readJSON("sched.json",1) || []).filter(a => a.on && a.date).map(a => { + const date = new Date(a.date); + const time = timeutils.decodeTime(a.t); + date.setHours(time.h); + date.setMinutes(time.m); + date.setSeconds(time.s); + return {date: date, msg: a.msg}; +}); +events.forEach(a => { +}); +events.sort((a,b) => a.date - b.date); if (settings.ndColors === undefined) { settings.ndColors = !g.theme.dark; @@ -192,6 +205,12 @@ function drawCalendar(date) { } } + const weekBeforeMonth = new Date(date.getTime()); + weekBeforeMonth.setDate(weekBeforeMonth.getDate() - 7); + const weekAfterMonth = new Date(date.getFullYear(), date.getMonth()+1, 0); + weekAfterMonth.setDate(weekAfterMonth.getDate() + 7); + const eventsThisMonth = events.filter(ev => ev.date > weekBeforeMonth && ev.date < weekAfterMonth); + let i = 0; for (y = 0; y < rowN - 1; y++) { for (x = 0; x < colN; x++) { @@ -215,18 +234,18 @@ function drawCalendar(date) { ); } - // Display events for this day - const eventsCurDay = events.filter(ev => ev.date === curDay.toLocalISOString().substr(0, 10)); - if (eventsCurDay.length > 0) { + if (eventsThisMonth.length > 0) { + // Display events for this day g.setColor(bgEvent); - eventsCurDay.forEach(ev => { - const time = timeutils.decodeTime(ev.t); - const hour = time.h + time.m/60.0; - const slice = hour/24*(eventsPerDay-1); // slice 0 for 0:00 up to eventsPerDay for 23:59 - const height = (y2-2) - (y1+2); // height of a cell - const sliceHeight = height/eventsPerDay; - const ystart = (y1+2) + slice*sliceHeight; - g.fillRect(x1+1, ystart, x2-2, ystart+sliceHeight); + eventsThisMonth.forEach(ev => { + if (sameDay(ev.date, curDay)) { + const hour = ev.date.getHours() + ev.date.getMinutes()/60.0; + const slice = hour/24*(eventsPerDay-1); // slice 0 for 0:00 up to eventsPerDay for 23:59 + const height = (y2-2) - (y1+2); // height of a cell + const sliceHeight = height/eventsPerDay; + const ystart = (y1+2) + slice*sliceHeight; + g.fillRect(x1+1, ystart, x2-2, ystart+sliceHeight); + } }); } @@ -242,23 +261,51 @@ function drawCalendar(date) { } } -const date = new Date(); -drawCalendar(date); -clearWatch(); -Bangle.on("touch", area => { - const month = date.getMonth(); - if (area == 1) { - let prevMonth = month > 0 ? month - 1 : 11; - if (prevMonth === 11) date.setFullYear(date.getFullYear() - 1); - date.setMonth(prevMonth); - } else { - let nextMonth = month < 11 ? month + 1 : 0; - if (nextMonth === 0) date.setFullYear(date.getFullYear() + 1); - date.setMonth(nextMonth); - } - drawCalendar(date); -}); +function setUI() { + Bangle.setUI({ + mode : "custom", + swipe: (dirLR, dirUD) => { + if (dirLR<0) { // left + const month = date.getMonth(); + let prevMonth = month > 0 ? month - 1 : 11; + if (prevMonth === 11) date.setFullYear(date.getFullYear() - 1); + date.setMonth(prevMonth); + drawCalendar(date); + } else if (dirLR>0) { // right + const month = date.getMonth(); + let nextMonth = month < 11 ? month + 1 : 0; + if (nextMonth === 0) date.setFullYear(date.getFullYear() + 1); + date.setMonth(nextMonth); + drawCalendar(date); + } else if (dirUD<0) { // up + date.setFullYear(date.getFullYear() - 1); + drawCalendar(date); + } else if (dirUD>0) { // down + date.setFullYear(date.getFullYear() + 1); + drawCalendar(date); + } + }, + btn: (n) => n === (process.env.HWVERSION === 2 ? 1 : 3) && load(), + touch: (n,e) => { + const menu = events.filter(ev => ev.date.getFullYear() === date.getFullYear() && ev.date.getMonth() === date.getMonth()).map(e => { + const dateStr = require("locale").date(e.date, 1); + const timeStr = require("locale").time(e.date, 1); + return { title: `${dateStr} ${timeStr}` + (e.msg ? " " + e.msg : "") }; + }); + if (menu.length === 0) { + menu.push({title: /*LANG*/"No events"}); + } + menu[""] = { title: require("locale").month(date) + " " + date.getFullYear() }; + menu["< Back"] = () => { + E.showMenu(); + drawCalendar(date); + setUI(); + }; + E.showMenu(menu); + } + }); +} -// Show launcher when button pressed -setWatch(() => load(), process.env.HWVERSION === 2 ? BTN : BTN3, { repeat: false, edge: "falling" }); +drawCalendar(date); +setUI(); // No space for widgets! diff --git a/apps/calendar/metadata.json b/apps/calendar/metadata.json index 5bfc422fa..b37c8e82e 100644 --- a/apps/calendar/metadata.json +++ b/apps/calendar/metadata.json @@ -1,7 +1,7 @@ { "id": "calendar", "name": "Calendar", - "version": "0.12", + "version": "0.13", "description": "Simple calendar", "icon": "calendar.png", "screenshots": [{"url":"screenshot_calendar.png"}], From 584b25b97cf7a7de55eb94a3be4bba3693f5dc6e Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 10 Feb 2023 17:15:35 +0100 Subject: [PATCH 0126/1725] calendar cleanup --- apps/calendar/calendar.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/apps/calendar/calendar.js b/apps/calendar/calendar.js index 83d587319..32aede715 100644 --- a/apps/calendar/calendar.js +++ b/apps/calendar/calendar.js @@ -39,8 +39,6 @@ const events = (require("Storage").readJSON("sched.json",1) || []).filter(a => a date.setSeconds(time.s); return {date: date, msg: a.msg}; }); -events.forEach(a => { -}); events.sort((a,b) => a.date - b.date); if (settings.ndColors === undefined) { From 6e81af5db5c23d8ba6f27079388a7a49b9801005 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 10 Feb 2023 17:20:00 +0100 Subject: [PATCH 0127/1725] calendar cleanup --- apps/calendar/calendar.js | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/calendar/calendar.js b/apps/calendar/calendar.js index 32aede715..4f7a72cad 100644 --- a/apps/calendar/calendar.js +++ b/apps/calendar/calendar.js @@ -24,7 +24,6 @@ let fgOtherMonth = gray1; let fgSameMonth = white; let bgEvent = blue; const eventsPerDay=6; // how much different events per day we can display -let menuVisible = false; const date = new Date(); const timeutils = require("time_utils"); From ed53150afea7b2fe15e5b3921a4d6bc9c785ac9a Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 10 Feb 2023 17:25:35 +0100 Subject: [PATCH 0128/1725] calendar event pre calculation to month+2weeks --- apps/calendar/calendar.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/calendar/calendar.js b/apps/calendar/calendar.js index 4f7a72cad..d531aef41 100644 --- a/apps/calendar/calendar.js +++ b/apps/calendar/calendar.js @@ -204,9 +204,9 @@ function drawCalendar(date) { const weekBeforeMonth = new Date(date.getTime()); weekBeforeMonth.setDate(weekBeforeMonth.getDate() - 7); - const weekAfterMonth = new Date(date.getFullYear(), date.getMonth()+1, 0); - weekAfterMonth.setDate(weekAfterMonth.getDate() + 7); - const eventsThisMonth = events.filter(ev => ev.date > weekBeforeMonth && ev.date < weekAfterMonth); + const week2AfterMonth = new Date(date.getFullYear(), date.getMonth()+1, 0); + week2AfterMonth.setDate(week2AfterMonth.getDate() + 14); + const eventsThisMonth = events.filter(ev => ev.date > weekBeforeMonth && ev.date < week2AfterMonth); let i = 0; for (y = 0; y < rowN - 1; y++) { From fc4a944da5562f4fc74edfe301aa4dac1f7a15e1 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 10 Feb 2023 17:45:14 +0100 Subject: [PATCH 0129/1725] calendar: remove event in loop --- apps/calendar/calendar.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/calendar/calendar.js b/apps/calendar/calendar.js index d531aef41..6aab1aecd 100644 --- a/apps/calendar/calendar.js +++ b/apps/calendar/calendar.js @@ -234,7 +234,7 @@ function drawCalendar(date) { if (eventsThisMonth.length > 0) { // Display events for this day g.setColor(bgEvent); - eventsThisMonth.forEach(ev => { + eventsThisMonth.forEach((ev, idx) => { if (sameDay(ev.date, curDay)) { const hour = ev.date.getHours() + ev.date.getMinutes()/60.0; const slice = hour/24*(eventsPerDay-1); // slice 0 for 0:00 up to eventsPerDay for 23:59 @@ -242,6 +242,8 @@ function drawCalendar(date) { const sliceHeight = height/eventsPerDay; const ystart = (y1+2) + slice*sliceHeight; g.fillRect(x1+1, ystart, x2-2, ystart+sliceHeight); + + eventsThisMonth.splice(idx, 1); // this event is no longer needed } }); } From 184af944260ea49d0256da97882c8fdd54625d21 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sat, 11 Feb 2023 20:31:18 +0000 Subject: [PATCH 0130/1725] MiTherm added screenshot and updated README file --- apps/mitherm/README.md | 10 ++++++++++ apps/mitherm/metadata.json | 1 + apps/mitherm/screenshot.png | Bin 0 -> 3162 bytes 3 files changed, 11 insertions(+) create mode 100644 apps/mitherm/screenshot.png diff --git a/apps/mitherm/README.md b/apps/mitherm/README.md index cdf3daa61..496c2f234 100644 --- a/apps/mitherm/README.md +++ b/apps/mitherm/README.md @@ -1,6 +1,15 @@ +# MiTherm + +![](screenshot.png) + Reads BLE advertisement data from Xiaomi temperature/humidity sensors running the `pvvx` custom firmware (https://github.com/pvvx/ATC_MiThermometer). +NOTE: If you flash your Mi Temperature device to the `pvvx` firmware, +please ensure you disconnect it from your bluetooth source before +attempting to run the app on the Bangle. + + ## Features * Display temperature @@ -20,3 +29,4 @@ Reads BLE advertisement data from Xiaomi temperature/humidity sensors running th * Configurable scan length (currently 30s) * Alerts when temperature outside defined limits (with a widget or bootcode to work when app is inactive) + diff --git a/apps/mitherm/metadata.json b/apps/mitherm/metadata.json index e44d4ff52..b1005c5ac 100644 --- a/apps/mitherm/metadata.json +++ b/apps/mitherm/metadata.json @@ -5,6 +5,7 @@ "version": "0.01", "description": "Reads and displays data from Xiaomi temperature/humidity sensors running custom firmware", "icon": "app.png", + "screenshots": [{"url":"screenshot.png"}], "tags": "xiaomi,mi,ble,bluetooth,thermometer,humidity", "readme": "README.md", "supports": ["BANGLEJS", "BANGLEJS2"], diff --git a/apps/mitherm/screenshot.png b/apps/mitherm/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..87e1c9e209899bde5035f8a910d216303b10e39d GIT binary patch literal 3162 zcmb`~`8U+x9|!RFd(2pd!eN{Rh71e1Ew2bTn!EY zz_znzEFHwP;y*)LQaqQ}{=|t380=t;0m?ddO#*i-|8@~n*cxvyP|s=h0A??eMN^h(jcf;tXg2R>+8W86bxEnA@YMk=d82r zzHCX%6`617&o3{xKHX?u@Qw@@djI?rH#yS&WS2zBKF1D6{x}i}~WkhW6`B!!F44HD2hq*pnskb`%~OeO2B3T=Z@Ldv3-5Rp~X;wQo`<(p+{l z^!sLvFILVwbJ~*K&;(EvqXhN}m{~ze_yE+O2e|K1GB@A!)Of{*21Cz;44>$#F<_*H zKj!|D)DjNzIX~@ANS?yq1)xTOS6qNpXEvmd2RU3YI;r^}t9Ha`;{* z)8cU?U1bXIf3H(D-;V$F&yBsTn6OA~?uS{sxo2zaCMsRi~#%CvI) zRRD8#9nBo;B*u+39KLVXl6{D(m0t#syW88EBUNHl&(}CSeo6t5Dh?ET3)DfaPwA5+ zxHNz91}#|{1~uHBdA{?K1yFPu;ca<9lOprlE4&Z_5ixTQ?7@KG`S^W3i%JTtakizZ zB3v4eVdOlUK{LA=E&`x#gk>uUmas|yb&KWHSALA%A0S!0UR-R#Mxx~^mJja<(jq)*m}iatAXq{rxw(ecTwrRAog$SZ&eoD4&< zsuX9a@)GD*5=4vXjFI7qX(o5&iIAZ2BGoVA4wD@UIo=;_4aP!_>flV>k8a*D>?Rtr zI1~oJFf~qd4JEv1G=v!alS^He3Hqhxm1$ewq|Exb9WA(rWS#g8o7)Xox9*q`brYYj z$l$>UwTF&ogW$8ufQT)_De8c=3AR_heJW7JqnmU!3es

0wg}xF zw!KtXSf31{Jvei?`3|2AON!aCl!PRPF#QUv)}eDAx^h@QkfCpxrHWMG6vCWqyLrm? zQqEExg{QC^unK?&$NyCaL>*_*YtgQF|GS_bWmqXYa@Y;nB7F$>zS=OBb%wW9jHy&l zthQdPn68|!+~lrTZPre*o=13k98=&DUAOcou3MvkHR=oz<4dK!GaVgG)9-&_%hc`c zUQ}Vl(Yhhl8x(qmzAPC37d7^|(k0ZCi(9j`Xl$V1&g&9eL`!$&^5yyAvQ3hL;Y z=yE>qmR&jHgOORdd7ip&Z37^w%Lm8Qm;dqFXqbmp%$GhWyovK*j!Zkujy7ueE?%1{ zt(UBF&h(371k$G))pscOBic+1D9tnlHkp7NvC7+C(dSVaM0U{*yzTmWCy0l^{4*4Gd9r`l7^$?NV)vUrf0 z)Uf*&N`CHO!F6X1ULEK2{_wmz(y<9Ap*QEi3z)@cbSbx^g+^t7WJdM9-%w#3H8n3~ zYV@;4QHDIdlYw?IwO<ovc3$S_w%r?*H!N<)E_#az`eyJRg8SU zfC}2YDPz zkHu;rTBp#&Zcy7i}vbkR6#eaoReX6gx)Z?HFYRR)yoA=!+m2;py}U!Jq(fPt$)S zh>bd=wk& zqN7^)f&!Sm*7+*qYymVne3`Qp=j#9AY6XaB6?0rDJBf>8$fF;&$BkzFbPpy(-op8B z>YHNSPXDfo(7G0oS*KbkDasYOLw8(!3-nO+%a%PF z)KMDP`O`B%zw0m)(e?M?+v`M1H*Lvy<%UOhOctz4n4_Pk7H+ra&asxU6hfNT17U<2 z5+79F5_rK1-Wt<2fNX!Kffuq`1o(hSD*sUxV`=6mJOx5p;*eBG*r1{@XSr^ zw22{nT%bG~Kv&vGNyZ%(BoveBxbb)JK18)7KX)SWX=#3O7`b&2`RD;{F!_%mjtu)7 zEu(7bZo}{h_DMNAwh3kvv9Q|IxDojj@( zG32AtFLw~s(<-rWh^F!|d&doycZyRx$o`YI-ATaw?W$3BJ@EddVi6h!uKyGa<7a!o zRNjr3s05B(NtgDyQZ!s~e|oV?zdjL4f*D}M=CpT?k6 zKJ2X|kf~3}za%y7L^N&hoS==clA(!unLd|7$sCgAN?C;~+z@hS!|c=)0t_(q zGdajli3xh2m(F@_)SI3B8bi{i_qk%VL!q~kv;v_A1xtSG?0eEUn!W8o$2izFElVc# zKCULD&CZreO3M`*@NSJ+S}bs{BP8pjBrAt@YwanZl0p<+|1y;>Wy4Hm6a&zj=o#jS z7Ib!D|i_H@Q-7ON-YO9DZ#5>$W`JD z4F;9Wo>PF1N$p?lVs6@D_M&_Uo#yTgx&GKIY#{vIrgk literal 0 HcmV?d00001 From 5d6f14cd21eba17419b40797cb422e993740fc98 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sat, 11 Feb 2023 21:37:06 +0100 Subject: [PATCH 0131/1725] calendar: Add tag "tool" --- apps/calendar/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/calendar/metadata.json b/apps/calendar/metadata.json index b37c8e82e..87599e3f4 100644 --- a/apps/calendar/metadata.json +++ b/apps/calendar/metadata.json @@ -5,7 +5,7 @@ "description": "Simple calendar", "icon": "calendar.png", "screenshots": [{"url":"screenshot_calendar.png"}], - "tags": "calendar", + "tags": "calendar,tool", "supports": ["BANGLEJS","BANGLEJS2"], "readme": "README.md", "allow_emulator": true, From 8d679766a014c706a022baf92f0f4c81461645a1 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sun, 12 Feb 2023 08:15:12 +0100 Subject: [PATCH 0132/1725] taglaunch: add health, cleanup tool Remove app from 'tool' when it has at least one other known tag Add tag 'health' for apps like Heart Rate Monitor --- apps/sleepphasealarm/metadata.json | 2 +- apps/taglaunch/ChangeLog | 2 ++ apps/taglaunch/README.md | 2 +- apps/taglaunch/app.js | 6 +++++- apps/taglaunch/metadata.json | 3 ++- apps/taglaunch/screenshot.png | Bin 0 -> 3400 bytes apps/taglaunch/settings.js | 2 +- apps/wohrm/metadata.json | 2 +- 8 files changed, 13 insertions(+), 6 deletions(-) create mode 100644 apps/taglaunch/screenshot.png diff --git a/apps/sleepphasealarm/metadata.json b/apps/sleepphasealarm/metadata.json index fabd9f135..147664728 100644 --- a/apps/sleepphasealarm/metadata.json +++ b/apps/sleepphasealarm/metadata.json @@ -5,7 +5,7 @@ "version": "0.14", "description": "Uses the accelerometer to estimate sleep and wake states with the principle of Estimation of Stationary Sleep-segments (ESS, see https://ubicomp.eti.uni-siegen.de/home/datasets/ichi14/index.html.en). This app will read the next alarm from the alarm application and will wake you up to 30 minutes early at the best guessed time when you are almost already awake.", "icon": "app.png", - "tags": "alarm", + "tags": "tool,alarm", "supports": ["BANGLEJS","BANGLEJS2"], "readme": "README.md", "dependencies": {"scheduler":"type"}, diff --git a/apps/taglaunch/ChangeLog b/apps/taglaunch/ChangeLog index 981f50386..55315bf6e 100644 --- a/apps/taglaunch/ChangeLog +++ b/apps/taglaunch/ChangeLog @@ -1,2 +1,4 @@ 0.01: New App! 0.02: Use Bangle.showClock for changing to clock (Backport from launch) +0.03: Remove app from 'tool' when it has at least one other known tag + Add tag 'health' for apps like Heart Rate Monitor diff --git a/apps/taglaunch/README.md b/apps/taglaunch/README.md index 71eebae9f..57674c7a7 100644 --- a/apps/taglaunch/README.md +++ b/apps/taglaunch/README.md @@ -4,7 +4,7 @@ Launcher Based on the default launcher but puts all applications in a submenu by their tag. With many applications installed this can result in a faster applications selection than the linear access of the default launcher. -Currently the following tags are supported: clock, game, tool, bluetooth, outdoors, misc. +Currently the following tags are supported: clock, game, tool, bluetooth, outdoors, health and misc. Settings -------- diff --git a/apps/taglaunch/app.js b/apps/taglaunch/app.js index c940284c2..973f7111d 100644 --- a/apps/taglaunch/app.js +++ b/apps/taglaunch/app.js @@ -8,7 +8,8 @@ let tags = {"clock": {name: /*LANG*/"Clocks", icon: atob("MDCEBERERERERERERERERE "tool": {name: /*LANG*/"Tools", sortorder: -1, icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMwAAAAAAAAAAAAAAIiIgAAAAAAAAAAADMzMAAAAAAAAAAAAiIiIgAAAAAAAAAAADMzMwAAAAAAAAAAIiIiIAAAAAAAAAAAAAMzMzAAAAAAAAACIiIiAAAAAAAAAAAAAAMzMzMAAAAAAAACIiIgAAAAAAAAAAAAAAAzMzMAAAAAAAAiIiIAAAAAAAAAAAAAAAADMzMwAAAAAAAiIiIAAAAAIgAAAAAAAAAAMzMzAAAAAAAiIiIgAAACIgAAAAAAAAAAADMzMAAAAAAiIiIiAAAiIgAAAAAAAAAAAAMzMwAAAAAiIiIiIAIiIgAAAAAAAAAAAAAzMzAAAAACIiIiIiIiIgAAAAAAAAAAAAADMzMAAAAiIiIiIiIiIAAAAAAAAAAAAAAAMzMwDdQiIiIiIiIiIAAAAAAAAAAAAAAAAzMz3d0iIiIiIiIiAAAAAAAAAAAAAAAAADM93d1CIiIiIiIgAAAAAAAAAAAAAAAAAAPd3d3iIiACIiAAAAAAAAAAAAAAAAAAAA3d3d7kIgAAAAAAAAAAAAAAAAAAAAAAAN3d3e7uQAAAAAAAAAAAAAAAAAAAAAAAAN3d3u7u4AAAAAAAAAAAAAAAAAAAAAAAAC3d7u7u7gAAAAAAAAAAAAAAAAAAAAAAAiJO7u7u7uAAAAAAAAAAAAAAAAAAAAAAIiIiTu7u7u7gAAAAAAAAAAAAAAAAAAACIiIiIu7u7u7uAAAAAAAAAAAAAAAAAAAiIiIiIA7u7u7u4AAAAAAAAAAAAAAAAAIiIiIiAADu7u7u7uAAAAAAAAAAAAAAACIiIiIgAAAO7u7u7u4AAAAAAAAAAAAAAiIiIiIAAAAO7u7u7u7gAAAAAAAAAAAAIiIiIiAAAAAA7u7u7u7uAAAAAAAAAAAiIiIiIgAAAAAADu7u7u7u4AAAAAAAAAIiIiIiIAAAAAAAAO7u7u7u7gAAAAAAAAIiIiIiAAAAAAAAAO7u7u7u7gAAAAAAACIgAiIgAAAAAAAAAA7u7u7u7gAAAAAAACIgAiIAAAAAAAAAAADu7u7u7gAAAAAAACIiIiIAAAAAAAAAAAAO7u7u4AAAAAAAAAIiIiAAAAAAAAAAAAAO7u7uAAAAAAAAAAAiIAAAAAAAAAAAAAAADu7gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")}, "bluetooth": {name: /*LANG*/"Bluetooth", icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqoAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqgAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqoAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqgAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqqAAAAAAAAAAAAAAAAAAAAAAAAAKqqCqqqoAAAAAAAAAAAAAAAAAAAAAAAAKqqAKqqqgAAAAAAAAAAAAAAAAAAAAAAAKqqAAqqqqAAAAAAAAAAAAAAAAAKqgAAAKqqAACqqqqgAAAAAAAAAAAAAAAKqqAAAKqqAAAKqqoAAAAAAAAAAAAAAAAKqqoAAKqqAACqqqAAAAAAAAAAAAAAAAAAqqqgAKqqAAqqqgAAAAAAAAAAAAAAAAAACqqqAKqqAKqqoAAAAAAAAAAAAAAAAAAAAKqqoKqqCqqqAAAAAAAAAAAAAAAAAAAAAAqqqqqqqqqgAAAAAAAAAAAAAAAAAAAAAACqqqqqqqoAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqqAAAAAAAAAAAAAAAAAAAAAAAAAAqqqqqgAAAAAAAAAAAAAAAAAAAAAAAAAACqqqoAAAAAAAAAAAAAAAAAAAAAAAAAAACqqqoAAAAAAAAAAAAAAAAAAAAAAAAAAAqqqqqgAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqqAAAAAAAAAAAAAAAAAAAAAAAACqqqqqqqoAAAAAAAAAAAAAAAAAAAAAAAqqqqqqqqqgAAAAAAAAAAAAAAAAAAAAAKqqoKqqCqqqAAAAAAAAAAAAAAAAAAAACqqqAKqqAKqqoAAAAAAAAAAAAAAAAAAAqqqgAKqqAAqqqgAAAAAAAAAAAAAAAAAKqqoAAKqqAACqqqAAAAAAAAAAAAAAAACqqqAAAKqqAAAKqqoAAAAAAAAAAAAAAAAKqgAAAKqqAACqqqoAAAAAAAAAAAAAAAAAoAAAAKqqAAqqqqAAAAAAAAAAAAAAAAAAAAAAAKqqAKqqqgAAAAAAAAAAAAAAAAAAAAAAAKqqCqqqoAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqqAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqgAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqoAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqgAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqoAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")}, "outdoors": {name: /*LANG*/"Outdoor", icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN3d0AAAAAAAAAAAAAAAAAAAAAAAAADd3d3d3d3QAAAAAAAAAAAAAAAAAAAAAADd3d3d3d3QAAAAAAAAAAAAAAAAAAAAAADd3e7u7d3QAAAAAAAAAAAAAAAAAAAAAADd3u7u7t3QAAAAAAAAAAAAAAAAAAAAAA3d7u7u7u3dAAAAAAAAAAAAAAAAAAAAAN3d7u7u7u3d0AAAAAAAAAAAAAAAAAAADd3d7u7u7u3d3QAAAAAAAAAAAAAAAAAAAN3d7u7u7u3d0AAAAAAAAAAAAAAAAAAAAA3d3u7u7u3dAAAAAAAAAAAAAAAAAAAAAADd3u7u7t3QAAAAAAAAAAAAAAAAAAAAAADd3d7u7d3QAMzMwAAAAAAAAO4AAAAAAADd3d3d3d3QAMzMwAAAAAAA7u7gAAAAAADd3d3d3d3QAAzMwAAAAAAO7u7gAAAAAAAAAN3d0AAAAAzMAAAAAAAO7u7gAAAAAAAAAA3dAAAAAAzMAAAAAADu7u4AAAAAAAAAAADQAAAAAAzMAAAAAADu7u4AAAAAAAAAAAAAAAAAAAERAAAAAA7u7uAAAAAAAAAAAAAAAAAAAAERAAAAQO7u7uAAAAAAAAAAAAAAAAAAAAEREAAEAO7u7gAAAAAAAAAAAAAAAAAAABEREN3U3e7u7gAAAAAAAAAAAAAAAAAAARERFN3d3d7u4AAAAAAAAAAAAAAAAAAAARERFEREREREQAAAAAAAAAAAAAAAAAEREREREREREREREREAAAAAAAAAAAAAAAEREREREREREREREREAAAAAAAAAAAAAAAARERERERERERERERAAAAAAAAAAAAAAAAAEREREREREREREREAAAAAAAAAAAAAAAAAERERERERERERERAAAAAAAAAADMzMzMzMxFEERRBEUQRFEETMzMzAAAAADMzMzMzMyFEERRBEUQRFEETMzMzAAAAADMzMzMzMzREREREREREREQzMzMzAAAAADMzMzMzMzJEREREREREREIzMzMzAAAAADMzMzMzMzMkRERERERERCMzMzMzAAAAADMzMzMzMzMzJEREREREIzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")}, - "misc": {name: /*LANG*/"Misc", icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")} + "misc": {name: /*LANG*/"Misc", icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")}, + "health": {name: /*LANG*/"Health", icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMzN3d3d3d3d3d3d3d3d3dAAAAAAAAAAzMzN3d3d3d3d3d3d3d3d3d0AAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3dM///M93d3d3d3QAAAAAAAMzMzN3d3d0///////Pd3d3d3QAAAAAAAMzMzN3d3dP///////893d3d3QAAAAAAAMzMzN3d3T/////////z3d3d3QAAAAAAAMzMzN3d0////93d////Pd3d3QAAAAAAAMzMzN3d3////93d/////d3d3QAAAAAAAMzMzN3dP////93d////893d3QAAAAAAAMzMzN3dP////93d////893d3QAAAAAAAMzMzN3d///d3d3d3d3//93d3QAAAAAAAMzMzN3d///d3d3d3d3//93d3QAAAAAAAMzMzN3d///d3d3d3d3//93d3QAAAAAAAMzMzN3d///d3d3d3d3//93d3QAAAAAAAMzMzN3dP////93d////893d3QAAAAAAAMzMzN3dP////93d////893d3QAAAAAAAMzMzN3d3////93d/////d3d3QAAAAAAAMzMzN3d0////93d////Pd3d3QAAAAAAAMzMzN3d3T/////////z3d3d3QAAAAAAAMzMzN3d3dP///////893d3d3QAAAAAAAMzMzN3d3d0///////Pd3d3d3QAAAAAAAMzMzN3d3d3dM///M93d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAAzMzN3d3d3d3d3d3d3d3d3d0AAAAAAAAADMzN3d3d3d3d3d3d3d3d3dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")} }; // handle customised launcher @@ -54,6 +55,9 @@ if (launchCache.hash!=launchHash) { .filter(tag => Object.keys(tags).includes(tag)); if (appTags.length === 0) { appTags.push("misc"); + } else if (appTags.length > 1 && appTags.indexOf("tool") >= 0) { + // everything has tag 'tool', unregister when at least one other known tag + appTags.splice(appTags.indexOf("tool"), 1); } appTags.forEach(tag => appsByTag[tag].push(app)); }); diff --git a/apps/taglaunch/metadata.json b/apps/taglaunch/metadata.json index d7f1954b1..feafbdde7 100644 --- a/apps/taglaunch/metadata.json +++ b/apps/taglaunch/metadata.json @@ -2,13 +2,14 @@ "id": "taglaunch", "name": "Tag Launcher", "shortName": "Taglauncher", - "version": "0.02", + "version": "0.03", "description": "Launcher that puts all applications into submenus based on their tag. With many applications installed this can result in a faster application selection than the linear access of the default launcher.", "readme": "README.md", "icon": "app.png", "type": "launch", "tags": "tool,system,launcher", "supports": ["BANGLEJS2"], + "screenshots": [ {"url":"screenshot.png"} ], "storage": [ {"name":"taglaunch.app.js","url":"app.js"}, {"name":"taglaunch.settings.js","url":"settings.js"} diff --git a/apps/taglaunch/screenshot.png b/apps/taglaunch/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..cc3e9b8cf88363beca35ec44725232ad3a45a42a GIT binary patch literal 3400 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 Date: Sun, 12 Feb 2023 08:53:49 +0100 Subject: [PATCH 0133/1725] taglaunch: move health icon to separate file --- apps/grocery/metadata.json | 2 +- apps/taglaunch/app.js | 8 +++++--- apps/taglaunch/health-icon.js | 1 + apps/taglaunch/metadata.json | 3 ++- 4 files changed, 9 insertions(+), 5 deletions(-) create mode 100644 apps/taglaunch/health-icon.js diff --git a/apps/grocery/metadata.json b/apps/grocery/metadata.json index ef073a1b2..26f67f3b0 100644 --- a/apps/grocery/metadata.json +++ b/apps/grocery/metadata.json @@ -5,7 +5,7 @@ "description": "Simple grocery (shopping) list - Display a list of product and track if you already put them in your cart.", "icon": "grocery.png", "type": "app", - "tags": "tool,outdoors,shopping,list", + "tags": "tool,shopping,list", "supports": ["BANGLEJS", "BANGLEJS2"], "custom": "grocery.html", "interface": "interface.html", diff --git a/apps/taglaunch/app.js b/apps/taglaunch/app.js index 973f7111d..aad61e298 100644 --- a/apps/taglaunch/app.js +++ b/apps/taglaunch/app.js @@ -9,7 +9,7 @@ let tags = {"clock": {name: /*LANG*/"Clocks", icon: atob("MDCEBERERERERERERERERE "bluetooth": {name: /*LANG*/"Bluetooth", icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqoAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqgAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqoAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqgAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqqAAAAAAAAAAAAAAAAAAAAAAAAAKqqCqqqoAAAAAAAAAAAAAAAAAAAAAAAAKqqAKqqqgAAAAAAAAAAAAAAAAAAAAAAAKqqAAqqqqAAAAAAAAAAAAAAAAAKqgAAAKqqAACqqqqgAAAAAAAAAAAAAAAKqqAAAKqqAAAKqqoAAAAAAAAAAAAAAAAKqqoAAKqqAACqqqAAAAAAAAAAAAAAAAAAqqqgAKqqAAqqqgAAAAAAAAAAAAAAAAAACqqqAKqqAKqqoAAAAAAAAAAAAAAAAAAAAKqqoKqqCqqqAAAAAAAAAAAAAAAAAAAAAAqqqqqqqqqgAAAAAAAAAAAAAAAAAAAAAACqqqqqqqoAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqqAAAAAAAAAAAAAAAAAAAAAAAAAAqqqqqgAAAAAAAAAAAAAAAAAAAAAAAAAACqqqoAAAAAAAAAAAAAAAAAAAAAAAAAAACqqqoAAAAAAAAAAAAAAAAAAAAAAAAAAAqqqqqgAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqqAAAAAAAAAAAAAAAAAAAAAAAACqqqqqqqoAAAAAAAAAAAAAAAAAAAAAAAqqqqqqqqqgAAAAAAAAAAAAAAAAAAAAAKqqoKqqCqqqAAAAAAAAAAAAAAAAAAAACqqqAKqqAKqqoAAAAAAAAAAAAAAAAAAAqqqgAKqqAAqqqgAAAAAAAAAAAAAAAAAKqqoAAKqqAACqqqAAAAAAAAAAAAAAAACqqqAAAKqqAAAKqqoAAAAAAAAAAAAAAAAKqgAAAKqqAACqqqoAAAAAAAAAAAAAAAAAoAAAAKqqAAqqqqAAAAAAAAAAAAAAAAAAAAAAAKqqAKqqqgAAAAAAAAAAAAAAAAAAAAAAAKqqCqqqoAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqqAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqgAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqoAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqgAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqoAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")}, "outdoors": {name: /*LANG*/"Outdoor", icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN3d0AAAAAAAAAAAAAAAAAAAAAAAAADd3d3d3d3QAAAAAAAAAAAAAAAAAAAAAADd3d3d3d3QAAAAAAAAAAAAAAAAAAAAAADd3e7u7d3QAAAAAAAAAAAAAAAAAAAAAADd3u7u7t3QAAAAAAAAAAAAAAAAAAAAAA3d7u7u7u3dAAAAAAAAAAAAAAAAAAAAAN3d7u7u7u3d0AAAAAAAAAAAAAAAAAAADd3d7u7u7u3d3QAAAAAAAAAAAAAAAAAAAN3d7u7u7u3d0AAAAAAAAAAAAAAAAAAAAA3d3u7u7u3dAAAAAAAAAAAAAAAAAAAAAADd3u7u7t3QAAAAAAAAAAAAAAAAAAAAAADd3d7u7d3QAMzMwAAAAAAAAO4AAAAAAADd3d3d3d3QAMzMwAAAAAAA7u7gAAAAAADd3d3d3d3QAAzMwAAAAAAO7u7gAAAAAAAAAN3d0AAAAAzMAAAAAAAO7u7gAAAAAAAAAA3dAAAAAAzMAAAAAADu7u4AAAAAAAAAAADQAAAAAAzMAAAAAADu7u4AAAAAAAAAAAAAAAAAAAERAAAAAA7u7uAAAAAAAAAAAAAAAAAAAAERAAAAQO7u7uAAAAAAAAAAAAAAAAAAAAEREAAEAO7u7gAAAAAAAAAAAAAAAAAAABEREN3U3e7u7gAAAAAAAAAAAAAAAAAAARERFN3d3d7u4AAAAAAAAAAAAAAAAAAAARERFEREREREQAAAAAAAAAAAAAAAAAEREREREREREREREREAAAAAAAAAAAAAAAEREREREREREREREREAAAAAAAAAAAAAAAARERERERERERERERAAAAAAAAAAAAAAAAAEREREREREREREREAAAAAAAAAAAAAAAAAERERERERERERERAAAAAAAAAADMzMzMzMxFEERRBEUQRFEETMzMzAAAAADMzMzMzMyFEERRBEUQRFEETMzMzAAAAADMzMzMzMzREREREREREREQzMzMzAAAAADMzMzMzMzJEREREREREREIzMzMzAAAAADMzMzMzMzMkRERERERERCMzMzMzAAAAADMzMzMzMzMzJEREREREIzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAADMzMzMzMzMzMzMzMzMzMzMzMzMzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")}, "misc": {name: /*LANG*/"Misc", icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAACIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")}, - "health": {name: /*LANG*/"Health", icon: atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMzN3d3d3d3d3d3d3d3d3dAAAAAAAAAAzMzN3d3d3d3d3d3d3d3d3d0AAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3dM///M93d3d3d3QAAAAAAAMzMzN3d3d0///////Pd3d3d3QAAAAAAAMzMzN3d3dP///////893d3d3QAAAAAAAMzMzN3d3T/////////z3d3d3QAAAAAAAMzMzN3d0////93d////Pd3d3QAAAAAAAMzMzN3d3////93d/////d3d3QAAAAAAAMzMzN3dP////93d////893d3QAAAAAAAMzMzN3dP////93d////893d3QAAAAAAAMzMzN3d///d3d3d3d3//93d3QAAAAAAAMzMzN3d///d3d3d3d3//93d3QAAAAAAAMzMzN3d///d3d3d3d3//93d3QAAAAAAAMzMzN3d///d3d3d3d3//93d3QAAAAAAAMzMzN3dP////93d////893d3QAAAAAAAMzMzN3dP////93d////893d3QAAAAAAAMzMzN3d3////93d/////d3d3QAAAAAAAMzMzN3d0////93d////Pd3d3QAAAAAAAMzMzN3d3T/////////z3d3d3QAAAAAAAMzMzN3d3dP///////893d3d3QAAAAAAAMzMzN3d3d0///////Pd3d3d3QAAAAAAAMzMzN3d3d3dM///M93d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAMzMzN3d3d3d3d3d3d3d3d3d3QAAAAAAAAzMzN3d3d3d3d3d3d3d3d3d0AAAAAAAAADMzN3d3d3d3d3d3d3d3d3dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")} + "health": {name: /*LANG*/"Health"}, }; // handle customised launcher @@ -107,8 +107,10 @@ let showMainMenu = () => { let tag = tagKeys[i]; g.clearRect((r.x),(r.y),(r.x+r.w-1), (r.y+r.h-1)); g.setFont(font).setFontAlign(-1,0).drawString(tags[tag].name,64*scaleval,r.y+(32*scaleval)); - if (tags[tag].icon) { - try {g.drawImage(tags[tag].icon,8*scaleval, r.y+(8*scaleval), {scale: scaleval});} catch(e){} + + const img = tags[tag].icon ? tags[tag].icon : s.read("taglaunch." + tag + ".img"); + if (img) { + try {g.drawImage(img,8*scaleval, r.y+(8*scaleval), {scale: scaleval});} catch(e){} } }, select : i => { diff --git a/apps/taglaunch/health-icon.js b/apps/taglaunch/health-icon.js new file mode 100644 index 000000000..11b513b72 --- /dev/null +++ b/apps/taglaunch/health-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwhC/AEnM5ndABgWGhgXP6AuHC5wwGC/4X/C98z///mYXSn4WBAAPzC6HTCwYABnoXPFwgwGC5QuDAoIwGC5XfC4/9C5pGDC4hIDC8QVDAAYHEC/4XSR97XX6YXHnoXNJAhGGC5gwDFwwXMGAouEC5vdmYWBmbEFC5oAJC/4X/C9sMC5/QC4owCFyYA/ADoA==")) diff --git a/apps/taglaunch/metadata.json b/apps/taglaunch/metadata.json index feafbdde7..4f7c295e9 100644 --- a/apps/taglaunch/metadata.json +++ b/apps/taglaunch/metadata.json @@ -12,7 +12,8 @@ "screenshots": [ {"url":"screenshot.png"} ], "storage": [ {"name":"taglaunch.app.js","url":"app.js"}, - {"name":"taglaunch.settings.js","url":"settings.js"} + {"name":"taglaunch.settings.js","url":"settings.js"}, + {"name":"taglaunch.health.img","url":"health-icon.js","evaluate":true} ], "data": [{"name":"taglaunch.json"},{"name":"taglaunch.cache.json"}] } From f38518fb639be693efabd92e0e8a50655e98d33f Mon Sep 17 00:00:00 2001 From: Richard de Boer Date: Sun, 12 Feb 2023 19:17:16 +0100 Subject: [PATCH 0134/1725] New app: hasensors: Home Assistant Sensors Creates battery level+state sensors in Home Assistant over HTTP --- apps/hasensors/ChangeLog | 1 + apps/hasensors/README.md | 24 ++++++++++ apps/hasensors/boot.js | 6 +++ apps/hasensors/custom.html | 89 +++++++++++++++++++++++++++++++++++ apps/hasensors/ha.png | Bin 0 -> 980 bytes apps/hasensors/lib.js | 35 ++++++++++++++ apps/hasensors/metadata.json | 21 +++++++++ 7 files changed, 176 insertions(+) create mode 100644 apps/hasensors/ChangeLog create mode 100644 apps/hasensors/README.md create mode 100644 apps/hasensors/boot.js create mode 100644 apps/hasensors/custom.html create mode 100644 apps/hasensors/ha.png create mode 100644 apps/hasensors/lib.js create mode 100644 apps/hasensors/metadata.json diff --git a/apps/hasensors/ChangeLog b/apps/hasensors/ChangeLog new file mode 100644 index 000000000..759f68777 --- /dev/null +++ b/apps/hasensors/ChangeLog @@ -0,0 +1 @@ +0.01: New app! \ No newline at end of file diff --git a/apps/hasensors/README.md b/apps/hasensors/README.md new file mode 100644 index 000000000..e7f6ca98d --- /dev/null +++ b/apps/hasensors/README.md @@ -0,0 +1,24 @@ +# Home Assistant Sensors + +Sends sensor values to [Home Assistant](https://www.home-assistant.io/) using +the [Android Integration](/?id=android). +It doesn't use the Home Assistant app on your phone, but posts directly to +Home Assistant, so it only works if Home Assistant can be reached from your phone. + +## Setup + +You need to fill out these fields: + +* *Sensor ID*: This is prefixed to sensor IDs in Home Assistant. + If you set this to `banglejs`, the battery sensor will be named `sensor.banglejs_battery_level`. +* *Sensor Name*: This is prefixed to human-friendly sensor names. + If you set this to `Bangle.js`, the battery sensor will show as `Bangle.js Battery Level`. +* *Home Assistant URL*: The URL of your Home Assistant Installation. +* *Authentication Token*: You need to generate a Long-Lived Access Token in + Home Assistant, at the bottom of [your profile page](https://my.home-assistant.io/redirect/profile/). + +## Features + +Currently creates these sensors: +* `_battery_level`: Your watch battery level as percentage +* `_battery_state`: `charging` or `discharging` \ No newline at end of file diff --git a/apps/hasensors/boot.js b/apps/hasensors/boot.js new file mode 100644 index 000000000..a9122be5d --- /dev/null +++ b/apps/hasensors/boot.js @@ -0,0 +1,6 @@ +(function () { + const sb = () => require('hasensors').sendBattery(); + Bangle.on("charging", sb); + NRF.on("connect", () => setTimeout(sb, 2000)); + setInterval(sb, 10 * 60 * 1000); +})(); \ No newline at end of file diff --git a/apps/hasensors/custom.html b/apps/hasensors/custom.html new file mode 100644 index 000000000..805001701 --- /dev/null +++ b/apps/hasensors/custom.html @@ -0,0 +1,89 @@ + + + + Home Assistant Sensors configuration + + + +
+ + + + +
+

+ +

+ + + + \ No newline at end of file diff --git a/apps/hasensors/ha.png b/apps/hasensors/ha.png new file mode 100644 index 0000000000000000000000000000000000000000..8fce958e47d8f0a5ba2fda55f346b052ffe3ca8c GIT binary patch literal 980 zcmV;_11tQAP)xlBv|z+t{{eBO8xc2((3QpC3l~MvgMq`NFd+=C%{}d}j+-u+%$1C_VNye|Z+4xLWaMBJ8r*2_WCOa;idWB6dCk7HuyEnPMg_rQM zjbU*OALA{Y#WHTU{;N0fs1#CPhi(?PVL$f8nj4$6uP4gF<}!{+_dtdgj>cH=Bwoke z_#8ine1SWLX?$7Ov~eQlG;uhj8M+fOC%@(|>7*8Ox=T1TEaQ7sn;)c5famZ#e#5h& zn~gceb!$?%4Bdf#)#j6!)5J$P{fD6&k2(F4ys`tkY8XE$CF}E;D4CNbU>jdyHRQ9< z?Ta~Ejw+W_mXyb1%@m#rnF`%;)ynMx?irNvbuOt6&P$0~#NimL!qLW?25{Nk$|cpo zmzd7+OiQJ)4#%c1yQ*PRB?%9Ot}ajC-f65vKaSU=gl!haR`DIaksd@3nzSmHTV)PO3hc+ zyPT6QurYj)BYi(~6EUZs19f=XVZ+5(zaUk!yE5XuCs*-|bVM2HLA)n*hAktS*gPsdmzq>W#@Ik1Lb3Y#@T4-epo)XU7{O6cE?&+GUe zkMwcie9TqCb0qf4Y`P--^0$Oy@|~4Vr3|xpM~dM)3p^L_uJo`e!@=02tQgcr(SaM% z2^^K;@IEQ&@_&#Wz!^8^z?m4!unQ03{@^+m+yiZ^%Wlvm>E*PDA2C;0H)Z1mxW{@! zmtjt-NQ=SM?cN!h14UWr;zTdZ#hSV;$56giq!^nZ{#=qWye(%_<8*E5bp$ZzY zW-X^16i?Sly)Y(~z_FSeuS&iA>VSDh7-59}8vX%}nJ8(wgaF|H0000 Date: Sun, 12 Feb 2023 21:30:38 +0100 Subject: [PATCH 0135/1725] extension adding an extra screen to launch on swipes from change type to app add placeholder JS icon --- apps/quicklaunch/ChangeLog | 2 + apps/quicklaunch/app-icon.js | 1 + apps/quicklaunch/app.js | 35 ++++++++++ apps/quicklaunch/boot.js | 6 +- apps/quicklaunch/metadata.json | 35 ++++++++-- apps/quicklaunch/settings.js | 116 +++++++++++++++++++++++++++++++-- 6 files changed, 179 insertions(+), 16 deletions(-) create mode 100644 apps/quicklaunch/app-icon.js create mode 100644 apps/quicklaunch/app.js diff --git a/apps/quicklaunch/ChangeLog b/apps/quicklaunch/ChangeLog index 2f9f648dd..4aa59334e 100644 --- a/apps/quicklaunch/ChangeLog +++ b/apps/quicklaunch/ChangeLog @@ -7,3 +7,5 @@ 0.07: Revert version 0.06. This version is the same as 0.05. 0.08: Respect appRect on touch events 0.09: Do not react if clkinfo is focused +0.10: Extend the functionality via a quicklaunch app that can be launched + with quicklaunch itself. diff --git a/apps/quicklaunch/app-icon.js b/apps/quicklaunch/app-icon.js new file mode 100644 index 000000000..e41be6f0b --- /dev/null +++ b/apps/quicklaunch/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("lEoxH+AB8WAAwYQEaQrdEp4pWEyYoRC49kxGs2fX6+z1mIsgpUCQtAxAjCAA+zxFAFCAQFxAkJAAuIFBxMF1oeHgEABI+sFBomEORInJPgJ7EEyonLFAJQJBIh0IE5x6GE47CME5nXsgnGOojmME5p5HJyAnO6+IE5LEKE6JQEE4lkC5gnPUIh2SE6B4EAAesC5oAP1gnHTxpPDAQIAFeJQACH5wnP64nWAA3CBJB3WAA203fQBAp3IY4plENQ4HC2gABkjHNxAnX2nJBYeIEYf+AYVkE5oDGE4e0UgdkEwYnDUAITEACikBTwgnFxAnZFAJ2FE4lAJ7dAE4pQFY6yfCToYmDE4kW1jvX1geEE4YoF2YfFABRzD67EEEwqiGFCAmETg5QJPQYAMTQJ0GE5AoGshSPYQgmKFA72BFJWzxBzEExgoIKYOI1grC2esxBLGExwpKABolPFCwmSFKQlVFZoXP")) diff --git a/apps/quicklaunch/app.js b/apps/quicklaunch/app.js new file mode 100644 index 000000000..be1242d35 --- /dev/null +++ b/apps/quicklaunch/app.js @@ -0,0 +1,35 @@ +{ + const storage = require("Storage"); + let settings = storage.readJSON("quicklaunch.json", true) || {}; + let wu =require("widget_utils"); + + let reset = function(name){ + if (!settings[name]) settings[name] = {"name":"(none)"}; + if (!storage.read(settings[name].src)) settings[name] = {"name":"(none)"}; + storage.write("quicklaunch.json", settings); + }; + + let touchHandler = (_,e) => { + let R = Bangle.appRect; + if (e.x < R.x || e.x > R.x2 || e.y < R.y || e.y > R.y2 ) return; + if (settings.exttapapp.src){ if (settings.exttapapp.name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings.exttapapp.src)) reset("exttapapp"); else load(settings.exttapapp.src); } + }; + + let swipeHandler = (lr,ud) => { + if (lr == -1 && settings.extleftapp && settings.extleftapp.src){ if (settings.extleftapp.name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings.extleftapp.src)) reset("extleftapp"); else load(settings.extleftapp.src); } + if (lr == 1 && settings.extrightapp && settings.extrightapp.src){ if (settings.extrightapp.name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings.extrightapp.src)) reset("extrightapp"); else load(settings.extrightapp.src); } + if (ud == -1 && settings.extupapp && settings.extupapp.src){ if (settings.extupapp.name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings.extupapp.src)) reset("extupapp"); else load(settings.extupapp.src); } + if (ud == 1 && settings.extdownapp && settings.extdownapp.src){ if (settings.extdownapp.name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings.extdownapp.src)) reset("extdownapp"); else load(settings.extdownapp.src); } + }; + + Bangle.setUI({ + mode: "custom", + touch: touchHandler, + swipe : swipeHandler, + remove: ()=>{} + }); + + Bangle.loadWidgets(); + wu.hide(); + g.clear(); +} diff --git a/apps/quicklaunch/boot.js b/apps/quicklaunch/boot.js index 774b41d3d..946a14308 100644 --- a/apps/quicklaunch/boot.js +++ b/apps/quicklaunch/boot.js @@ -1,10 +1,10 @@ { - let settings = require("Storage").readJSON("quicklaunch.json", true) || {}; const storage = require("Storage"); + let settings = storage.readJSON("quicklaunch.json", true) || {}; let reset = function(name){ if (!settings[name]) settings[name] = {"name":"(none)"}; - if (!require("Storage").read(settings[name].src)) settings[name] = {"name":"(none)"}; + if (!storage.read(settings[name].src)) settings[name] = {"name":"(none)"}; storage.write("quicklaunch.json", settings); }; @@ -13,7 +13,7 @@ if (Bangle.CLKINFO_FOCUS) return; let R = Bangle.appRect; if (e.x < R.x || e.x > R.x2 || e.y < R.y || e.y > R.y2 ) return; - if (settings.tapapp.src){ if (!storage.read(settings.tapapp.src)) reset("tapapp"); else load(settings.tapapp.src); } + if (settings.tapapp.src){ if (settings.tapapp.name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings.tapapp.src)) reset("tapapp"); else load(settings.tapapp.src); } }); Bangle.on("swipe", (lr,ud) => { diff --git a/apps/quicklaunch/metadata.json b/apps/quicklaunch/metadata.json index 599929cda..00b67e9ef 100644 --- a/apps/quicklaunch/metadata.json +++ b/apps/quicklaunch/metadata.json @@ -2,14 +2,35 @@ "id": "quicklaunch", "name": "Quick Launch", "icon": "app.png", - "version":"0.09", + "version": "0.10", "description": "Tap or swipe left/right/up/down on your clock face to launch up to five apps of your choice. Configurations can be accessed through Settings->Apps.", - "type": "bootloader", + "type": "app", "tags": "tools, system", - "supports": ["BANGLEJS2"], - "storage": [ - {"name":"quicklaunch.settings.js","url":"settings.js"}, - {"name":"quicklaunch.boot.js","url":"boot.js"} + "supports": [ + "BANGLEJS2" ], - "data": [{"name":"quicklaunch.json"}] + "storage": [ + { + "name": "quicklaunch.settings.js", + "url": "settings.js" + }, + { + "name": "quicklaunch.boot.js", + "url": "boot.js" + }, + { + "name": "quicklaunch.app.js", + "url": "app.js" + }, + { + "name": "quicklaunch.img", + "url": "app-icon.js", + "evaluate": true + } + ], + "data": [ + { + "name": "quicklaunch.json" + } + ] } diff --git a/apps/quicklaunch/settings.js b/apps/quicklaunch/settings.js index d8907553a..ba9eb9b87 100644 --- a/apps/quicklaunch/settings.js +++ b/apps/quicklaunch/settings.js @@ -1,17 +1,18 @@ (function(back) { -var settings = Object.assign(require("Storage").readJSON("quicklaunch.json", true) || {}); +var storage = require("Storage"); +var settings = Object.assign(storage.readJSON("quicklaunch.json", true) || {}); -for (let c of ["leftapp","rightapp","upapp","downapp","tapapp"]){ +for (let c of ["leftapp","rightapp","upapp","downapp","tapapp","extleftapp","extrightapp","extupapp","extdownapp","exttapapp"]){ if (!settings[c]) settings[c] = {"name":"(none)"}; } -var apps = require("Storage").list(/\.info$/).map(app=>{var a=require("Storage").readJSON(app,1);return a&&{name:a.name,type:a.type,sortorder:a.sortorder,src:a.src};}).filter(app=>app && (app.type=="app" || app.type=="launch" || app.type=="clock" || !app.type)); +var apps = storage.list(/\.info$/).map(app=>{var a=storage.readJSON(app,1);return a&&{name:a.name,type:a.type,sortorder:a.sortorder,src:a.src};}).filter(app=>app && (app.type=="app" || app.type=="launch" || app.type=="clock" || !app.type)); // Add psuedo app to trigger Bangle.showLauncher later apps.push({ "name": "Show Launcher", "type": undefined, "sortorder": -10, - "src": "no sorce" + "src": "no source" }); apps.sort((a,b)=>{ @@ -24,11 +25,11 @@ apps.sort((a,b)=>{ function save(key, value) { settings[key] = value; - require("Storage").write("quicklaunch.json",settings); + storage.write("quicklaunch.json",settings); } -// Quick Launch menu function showMainMenu() { + // Quick Launch menu var mainmenu = { "" : { "title" : "Quick Launch" }, "< Back" : ()=>{load();} @@ -40,6 +41,7 @@ function showMainMenu() { mainmenu["Up: "+settings.upapp.name] = function() { E.showMenu(upmenu); }; mainmenu["Down: "+settings.downapp.name] = function() { E.showMenu(downmenu); }; mainmenu["Tap: "+settings.tapapp.name] = function() { E.showMenu(tapmenu); }; + mainmenu["Extend Quick Launch"] = showExtMenu; return E.showMenu(mainmenu); } @@ -129,5 +131,107 @@ apps.forEach((a)=>{ }; }); +function showExtMenu() { + // Extend Quick Launch menu + var extmenu = { + "" : { "title" : "Extend Quick Launch" }, + "< Back" : ()=>{showMainMenu();} + }; + + //List all selected apps + extmenu["Left: "+settings.extleftapp.name] = function() { E.showMenu(extleftmenu); }; + extmenu["Right: "+settings.extrightapp.name] = function() { E.showMenu(extrightmenu); }; + extmenu["Up: "+settings.extupapp.name] = function() { E.showMenu(extupmenu); }; + extmenu["Down: "+settings.extdownapp.name] = function() { E.showMenu(extdownmenu); }; + extmenu["Tap: "+settings.exttapapp.name] = function() { E.showMenu(exttapmenu); }; + + return E.showMenu(extmenu); +} + +//Extension Left swipe menu +var extleftmenu = { + "" : { "title" : "Extension Left Swipe" }, + "< Back" : showExtMenu +}; + +extleftmenu["(none)"] = function() { + save("extleftapp", {"name":"(none)"}); + showExtMenu(); +}; +apps.forEach((a)=>{ + extleftmenu[a.name] = function() { + save("extleftapp", a); + showExtMenu(); + }; +}); + +//Extension Right swipe menu +var extrightmenu = { + "" : { "title" : "Extension Right Swipe" }, + "< Back" : showExtMenu +}; + +extrightmenu["(none)"] = function() { + save("extrightapp", {"name":"(none)"}); + showExtMenu(); +}; +apps.forEach((a)=>{ + extrightmenu[a.name] = function() { + save("extrightapp", a); + showExtMenu(); + }; +}); + +//Extension Up swipe menu +var extupmenu = { + "" : { "title" : "Extension Up Swipe" }, + "< Back" : showExtMenu +}; + +extupmenu["(none)"] = function() { + save("extupapp", {"name":"(none)"}); + showExtMenu(); +}; +apps.forEach((a)=>{ + extupmenu[a.name] = function() { + save("extupapp", a); + showExtMenu(); + }; +}); + +//Extension Down swipe menu +var extdownmenu = { + "" : { "title" : "Extension Down Swipe" }, + "< Back" : showExtMenu +}; + +downmenu["(none)"] = function() { + save("extdownapp", {"name":"(none)"}); + showExtMenu(); +}; +apps.forEach((a)=>{ + extdownmenu[a.name] = function() { + save("extdownapp", a); + showExtMenu(); + }; +}); + +//Extension Tap menu +var exttapmenu = { + "" : { "title" : "Extension Tap" }, + "< Back" : showExtMenu +}; + +exttapmenu["(none)"] = function() { + save("exttapapp", {"name":"(none)"}); + showExtMenu(); +}; +apps.forEach((a)=>{ + exttapmenu[a.name] = function() { + save("exttapapp", a); + showExtMenu(); + }; +}); + showMainMenu(); }) From 6752817e687799ff1a49cb6b8c4d849229be23f2 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 13 Feb 2023 19:33:57 +0100 Subject: [PATCH 0136/1725] tweaks quick launch extension --- apps/quicklaunch/app-icon.js | 1 - apps/quicklaunch/app.js | 2 -- apps/quicklaunch/metadata.json | 2 +- apps/quicklaunch/settings.js | 11 ++++++++++- 4 files changed, 11 insertions(+), 5 deletions(-) delete mode 100644 apps/quicklaunch/app-icon.js diff --git a/apps/quicklaunch/app-icon.js b/apps/quicklaunch/app-icon.js deleted file mode 100644 index e41be6f0b..000000000 --- a/apps/quicklaunch/app-icon.js +++ /dev/null @@ -1 +0,0 @@ -require("heatshrink").decompress(atob("lEoxH+AB8WAAwYQEaQrdEp4pWEyYoRC49kxGs2fX6+z1mIsgpUCQtAxAjCAA+zxFAFCAQFxAkJAAuIFBxMF1oeHgEABI+sFBomEORInJPgJ7EEyonLFAJQJBIh0IE5x6GE47CME5nXsgnGOojmME5p5HJyAnO6+IE5LEKE6JQEE4lkC5gnPUIh2SE6B4EAAesC5oAP1gnHTxpPDAQIAFeJQACH5wnP64nWAA3CBJB3WAA203fQBAp3IY4plENQ4HC2gABkjHNxAnX2nJBYeIEYf+AYVkE5oDGE4e0UgdkEwYnDUAITEACikBTwgnFxAnZFAJ2FE4lAJ7dAE4pQFY6yfCToYmDE4kW1jvX1geEE4YoF2YfFABRzD67EEEwqiGFCAmETg5QJPQYAMTQJ0GE5AoGshSPYQgmKFA72BFJWzxBzEExgoIKYOI1grC2esxBLGExwpKABolPFCwmSFKQlVFZoXP")) diff --git a/apps/quicklaunch/app.js b/apps/quicklaunch/app.js index be1242d35..a93e7d7a3 100644 --- a/apps/quicklaunch/app.js +++ b/apps/quicklaunch/app.js @@ -1,7 +1,6 @@ { const storage = require("Storage"); let settings = storage.readJSON("quicklaunch.json", true) || {}; - let wu =require("widget_utils"); let reset = function(name){ if (!settings[name]) settings[name] = {"name":"(none)"}; @@ -30,6 +29,5 @@ }); Bangle.loadWidgets(); - wu.hide(); g.clear(); } diff --git a/apps/quicklaunch/metadata.json b/apps/quicklaunch/metadata.json index 00b67e9ef..a98cfd445 100644 --- a/apps/quicklaunch/metadata.json +++ b/apps/quicklaunch/metadata.json @@ -4,7 +4,7 @@ "icon": "app.png", "version": "0.10", "description": "Tap or swipe left/right/up/down on your clock face to launch up to five apps of your choice. Configurations can be accessed through Settings->Apps.", - "type": "app", + "type": "bootloader", "tags": "tools, system", "supports": [ "BANGLEJS2" diff --git a/apps/quicklaunch/settings.js b/apps/quicklaunch/settings.js index ba9eb9b87..70f1ffae5 100644 --- a/apps/quicklaunch/settings.js +++ b/apps/quicklaunch/settings.js @@ -11,10 +11,19 @@ var apps = storage.list(/\.info$/).map(app=>{var a=storage.readJSON(app,1);retur // Add psuedo app to trigger Bangle.showLauncher later apps.push({ "name": "Show Launcher", - "type": undefined, "sortorder": -10, + "type": undefined, + "sortorder": -10, "src": "no source" }); +// Add the Quick Launch extestion app +apps.push({ + "name": "Quick Launch Extension", + "type": "app", + "sortorder": -9, + "src": "quicklaunch.app.js" + }); + apps.sort((a,b)=>{ var n=(0|a.sortorder)-(0|b.sortorder); if (n) return n; // do sortorder first From fb351a6e821f79ee43fabf7b5dba55deb2154d02 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 13 Feb 2023 19:40:43 +0100 Subject: [PATCH 0137/1725] fix metadata removing JS icon reference --- apps/quicklaunch/metadata.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/apps/quicklaunch/metadata.json b/apps/quicklaunch/metadata.json index a98cfd445..8d5e4f5e6 100644 --- a/apps/quicklaunch/metadata.json +++ b/apps/quicklaunch/metadata.json @@ -21,11 +21,6 @@ { "name": "quicklaunch.app.js", "url": "app.js" - }, - { - "name": "quicklaunch.img", - "url": "app-icon.js", - "evaluate": true } ], "data": [ From d4cea1372e9f214a5934cddc7c95a4693b954cc4 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 13 Feb 2023 19:58:38 +0100 Subject: [PATCH 0138/1725] tweak app list sort order --- apps/quicklaunch/settings.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/quicklaunch/settings.js b/apps/quicklaunch/settings.js index 70f1ffae5..0961e6cae 100644 --- a/apps/quicklaunch/settings.js +++ b/apps/quicklaunch/settings.js @@ -12,7 +12,7 @@ var apps = storage.list(/\.info$/).map(app=>{var a=storage.readJSON(app,1);retur apps.push({ "name": "Show Launcher", "type": undefined, - "sortorder": -10, + "sortorder": -12, "src": "no source" }); @@ -20,7 +20,7 @@ apps.push({ apps.push({ "name": "Quick Launch Extension", "type": "app", - "sortorder": -9, + "sortorder": -11, "src": "quicklaunch.app.js" }); From 6d1234bc671e4cc8e9281dc3191082c88e4d5388 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 13 Feb 2023 20:37:03 +0100 Subject: [PATCH 0139/1725] clear graphics before loading widgets --- apps/quicklaunch/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/quicklaunch/app.js b/apps/quicklaunch/app.js index a93e7d7a3..240834533 100644 --- a/apps/quicklaunch/app.js +++ b/apps/quicklaunch/app.js @@ -28,6 +28,6 @@ remove: ()=>{} }); - Bangle.loadWidgets(); g.clear(); + Bangle.loadWidgets(); } From 6e76ce04fddfd17d8a09359e6cbefcd11e7d0518 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 13 Feb 2023 20:47:03 +0100 Subject: [PATCH 0140/1725] add widget utils again --- apps/quicklaunch/app.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/quicklaunch/app.js b/apps/quicklaunch/app.js index 240834533..cff64e59d 100644 --- a/apps/quicklaunch/app.js +++ b/apps/quicklaunch/app.js @@ -1,6 +1,7 @@ { const storage = require("Storage"); let settings = storage.readJSON("quicklaunch.json", true) || {}; + let wu =require("widget_utils"); let reset = function(name){ if (!settings[name]) settings[name] = {"name":"(none)"}; @@ -30,4 +31,5 @@ g.clear(); Bangle.loadWidgets(); + wu.show(); } From 2f078f20c32599801953e0d2db376b8481520a5b Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 13 Feb 2023 20:59:57 +0100 Subject: [PATCH 0141/1725] don't clear the widgets --- apps/quicklaunch/app.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/apps/quicklaunch/app.js b/apps/quicklaunch/app.js index cff64e59d..eb5504db5 100644 --- a/apps/quicklaunch/app.js +++ b/apps/quicklaunch/app.js @@ -1,7 +1,6 @@ { const storage = require("Storage"); let settings = storage.readJSON("quicklaunch.json", true) || {}; - let wu =require("widget_utils"); let reset = function(name){ if (!settings[name]) settings[name] = {"name":"(none)"}; @@ -29,7 +28,6 @@ remove: ()=>{} }); - g.clear(); + g.clearRect(Bangle.appRect); Bangle.loadWidgets(); - wu.show(); } From c8a4f5bb9853c734275e063a3c4fa736f2cc546d Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 13 Feb 2023 21:14:57 +0100 Subject: [PATCH 0142/1725] Add README.md --- apps/quicklaunch/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 apps/quicklaunch/README.md diff --git a/apps/quicklaunch/README.md b/apps/quicklaunch/README.md new file mode 100644 index 000000000..dc4c50071 --- /dev/null +++ b/apps/quicklaunch/README.md @@ -0,0 +1,3 @@ +Tap or swipe left/right/up/down on your clock face to launch up to five apps of your choice. The Quick Launch Extension (included) can be chosen as one of the apps, in turn providing fast access to up to five additional apps. Configurations can be accessed through Settings->Apps. + + From 334d1961080775a68db1547a2fcdcacbe24f5c72 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 13 Feb 2023 21:56:52 +0100 Subject: [PATCH 0143/1725] add timeout to clock --- apps/quicklaunch/app.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/quicklaunch/app.js b/apps/quicklaunch/app.js index eb5504db5..f34191b7a 100644 --- a/apps/quicklaunch/app.js +++ b/apps/quicklaunch/app.js @@ -25,9 +25,19 @@ mode: "custom", touch: touchHandler, swipe : swipeHandler, - remove: ()=>{} + remove: ()=>{if (timeoutToClock) clearTimeout(timeoutToClock);} }); g.clearRect(Bangle.appRect); Bangle.loadWidgets(); + Bangle.drawWidgets(); + + // taken from Icon Launcher with some alterations + let timeoutToClock; + const updateTimeoutToClock = function(){ + let time=2; // seconds + if (timeoutToClock) clearTimeout(timeoutToClock); + timeoutToClock = setTimeout(Bangle.showClock,time*1000); + }; + updateTimeoutToClock(); } From a8f1b172b7cca882afbedaf158ad37378b5d21f8 Mon Sep 17 00:00:00 2001 From: thyttan <97237430+thyttan@users.noreply.github.com> Date: Mon, 13 Feb 2023 22:16:11 +0100 Subject: [PATCH 0144/1725] Update metadata.json --- apps/quicklaunch/metadata.json | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/apps/quicklaunch/metadata.json b/apps/quicklaunch/metadata.json index 8d5e4f5e6..52fc7b90b 100644 --- a/apps/quicklaunch/metadata.json +++ b/apps/quicklaunch/metadata.json @@ -6,26 +6,11 @@ "description": "Tap or swipe left/right/up/down on your clock face to launch up to five apps of your choice. Configurations can be accessed through Settings->Apps.", "type": "bootloader", "tags": "tools, system", - "supports": [ - "BANGLEJS2" - ], + "supports": ["BANGLEJS2"], "storage": [ - { - "name": "quicklaunch.settings.js", - "url": "settings.js" - }, - { - "name": "quicklaunch.boot.js", - "url": "boot.js" - }, - { - "name": "quicklaunch.app.js", - "url": "app.js" - } + {"name": "quicklaunch.settings.js", "url": "settings.js"}, + {"name": "quicklaunch.boot.js", "url": "boot.js"}, + {"name": "quicklaunch.app.js", "url": "app.js"} ], - "data": [ - { - "name": "quicklaunch.json" - } - ] + "data": [{"name": "quicklaunch.json"}] } From 8790ace2f0d2c3e22e43a83dd138591161f2f8b3 Mon Sep 17 00:00:00 2001 From: thyttan <97237430+thyttan@users.noreply.github.com> Date: Mon, 13 Feb 2023 22:18:20 +0100 Subject: [PATCH 0145/1725] Update metadata.json --- apps/quicklaunch/metadata.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/quicklaunch/metadata.json b/apps/quicklaunch/metadata.json index 52fc7b90b..a0ff9fa9d 100644 --- a/apps/quicklaunch/metadata.json +++ b/apps/quicklaunch/metadata.json @@ -8,9 +8,9 @@ "tags": "tools, system", "supports": ["BANGLEJS2"], "storage": [ - {"name": "quicklaunch.settings.js", "url": "settings.js"}, - {"name": "quicklaunch.boot.js", "url": "boot.js"}, - {"name": "quicklaunch.app.js", "url": "app.js"} + {"name":"quicklaunch.settings.js","url":"settings.js"}, + {"name":"quicklaunch.boot.js","url":"boot.js"}, + {"name":"quicklaunch.app.js","url":"app.js"} ], - "data": [{"name": "quicklaunch.json"}] + "data": [{"name":"quicklaunch.json"}] } From 80390a1d041de321483bd3ada32958418c66fc1c Mon Sep 17 00:00:00 2001 From: thyttan <97237430+thyttan@users.noreply.github.com> Date: Mon, 13 Feb 2023 22:35:58 +0100 Subject: [PATCH 0146/1725] Update settings.js --- apps/quicklaunch/settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/quicklaunch/settings.js b/apps/quicklaunch/settings.js index 0961e6cae..39c2a13d6 100644 --- a/apps/quicklaunch/settings.js +++ b/apps/quicklaunch/settings.js @@ -16,7 +16,7 @@ apps.push({ "src": "no source" }); -// Add the Quick Launch extestion app +// Add the Quick Launch extension app apps.push({ "name": "Quick Launch Extension", "type": "app", From a2314def61a3ddd199c299af55f9ec562dd515ac Mon Sep 17 00:00:00 2001 From: Phil Roggenbuck <1367949+phrogg@users.noreply.github.com> Date: Tue, 14 Feb 2023 10:52:20 +0100 Subject: [PATCH 0147/1725] Fixed wrong filename in settings --- apps/widbgjs/settings.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/widbgjs/settings.js b/apps/widbgjs/settings.js index f2eb190bc..b7c594022 100644 --- a/apps/widbgjs/settings.js +++ b/apps/widbgjs/settings.js @@ -1,5 +1,5 @@ (function (back) { - const SAVEFILE = "wpbgjs.settings.json"; + const SAVEFILE = "widbgjs.settings.json"; // initialize with default settings... let s = { @@ -51,4 +51,4 @@ }, '< Back': back, }); -}); \ No newline at end of file +}); From 7e8999b293db7067828643bca1529ca579bea033 Mon Sep 17 00:00:00 2001 From: Phil Roggenbuck <1367949+phrogg@users.noreply.github.com> Date: Tue, 14 Feb 2023 10:52:52 +0100 Subject: [PATCH 0148/1725] Update ChangeLog --- apps/widbgjs/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/widbgjs/ChangeLog b/apps/widbgjs/ChangeLog index 7b83706bf..0a7b8dd52 100644 --- a/apps/widbgjs/ChangeLog +++ b/apps/widbgjs/ChangeLog @@ -1 +1,2 @@ 0.01: First release +0.02: Fixed settings should now work From 1485ee8624f35659559ebf5584cd172d423547c7 Mon Sep 17 00:00:00 2001 From: Phil Roggenbuck <1367949+phrogg@users.noreply.github.com> Date: Tue, 14 Feb 2023 12:36:04 +0100 Subject: [PATCH 0149/1725] Update metadata.json --- apps/widbgjs/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/widbgjs/metadata.json b/apps/widbgjs/metadata.json index 0639b5a51..fce68514c 100644 --- a/apps/widbgjs/metadata.json +++ b/apps/widbgjs/metadata.json @@ -4,7 +4,7 @@ "shortName":"BG Widget", "icon": "screenshot.png", "screenshots": [{"url":"screenshot.png"}], - "version":"0.01", + "version":"0.02", "type": "widget", "supports": ["BANGLEJS", "BANGLEJS2"], "readme": "README.md", From 1c9d62fe0f7dfb97e0956c692cd4b958b1924112 Mon Sep 17 00:00:00 2001 From: Phil Roggenbuck <1367949+phrogg@users.noreply.github.com> Date: Tue, 14 Feb 2023 15:54:06 +0100 Subject: [PATCH 0150/1725] Update widget.js --- apps/widbgjs/widget.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/apps/widbgjs/widget.js b/apps/widbgjs/widget.js index 1a1df002d..b31af7aa8 100644 --- a/apps/widbgjs/widget.js +++ b/apps/widbgjs/widget.js @@ -6,6 +6,7 @@ let settings; function loadSettings() { // stolen from https://github.com/espruino/BangleApps/blob/master/apps/widpedom/widget.js +try { const d = require('Storage').readJSON("widbgjs.settings.json", 1) || {}; settings = Object.assign({ 'unitIsMmol': true, @@ -14,6 +15,9 @@ 'hide': false }, d || {}); return d; +} catch(e){ +return null; +} } function loadVals() { @@ -103,9 +107,9 @@ function draw() { loadSettings(); - try { - if (settings.hide) return; - } catch (e) { } + if(settings.hide) { +return; +} loadVals(); outpt = getBG(storedData.bg); From c6856ecde6b04733d74af7ea1c21488f80c7cfda Mon Sep 17 00:00:00 2001 From: Phil Roggenbuck <1367949+phrogg@users.noreply.github.com> Date: Tue, 14 Feb 2023 16:03:14 +0100 Subject: [PATCH 0151/1725] Update widget.js --- apps/widbgjs/widget.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/widbgjs/widget.js b/apps/widbgjs/widget.js index b31af7aa8..f318dcfcc 100644 --- a/apps/widbgjs/widget.js +++ b/apps/widbgjs/widget.js @@ -11,7 +11,7 @@ try { settings = Object.assign({ 'unitIsMmol': true, 'expireThreshold': 600000, - 'reloadInterval': 5 * 60000, + 'reloadInterval': 300000, 'hide': false }, d || {}); return d; From 9c005ca4b8154583bc3eb7eeefaf5d5beba3b829 Mon Sep 17 00:00:00 2001 From: Phil Roggenbuck <1367949+phrogg@users.noreply.github.com> Date: Tue, 14 Feb 2023 21:38:32 +0100 Subject: [PATCH 0152/1725] changed the topology of saves For the file `widbgjs.settings.json` --- apps/widbgjs/settings.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/widbgjs/settings.js b/apps/widbgjs/settings.js index b7c594022..e480c8cf9 100644 --- a/apps/widbgjs/settings.js +++ b/apps/widbgjs/settings.js @@ -10,14 +10,14 @@ // ...and overwrite them with any saved values // This way saved values are preserved if a new version adds more settings const storage = require('Storage'); - const d = storage.readJSON(SAVEFILE, 1) || {}; - const saved = d.settings || {}; + var d = storage.readJSON(SAVEFILE, 1) || {}; + const saved = d || {}; for (const key in saved) { s[key] = saved[key]; } function save() { - d.settings = s; + d = s; storage.write(SAVEFILE, d); WIDGETS['widbgjs'].draw(); } From 9eec5c6028a33e3af0f002d88edc26e609a2650e Mon Sep 17 00:00:00 2001 From: Phil Roggenbuck <1367949+phrogg@users.noreply.github.com> Date: Tue, 14 Feb 2023 21:40:16 +0100 Subject: [PATCH 0153/1725] added strikethrough for old values --- apps/widbgjs/widget.js | 47 +++++++++++++++++++++++------------------- 1 file changed, 26 insertions(+), 21 deletions(-) diff --git a/apps/widbgjs/widget.js b/apps/widbgjs/widget.js index f318dcfcc..8418f3e9f 100644 --- a/apps/widbgjs/widget.js +++ b/apps/widbgjs/widget.js @@ -6,33 +6,34 @@ let settings; function loadSettings() { // stolen from https://github.com/espruino/BangleApps/blob/master/apps/widpedom/widget.js -try { - const d = require('Storage').readJSON("widbgjs.settings.json", 1) || {}; - settings = Object.assign({ - 'unitIsMmol': true, - 'expireThreshold': 600000, - 'reloadInterval': 300000, - 'hide': false - }, d || {}); - return d; -} catch(e){ -return null; -} + try { + const d = require('Storage').readJSON("widbgjs.settings.json", 1) || {}; + settings = Object.assign({ + 'unitIsMmol': true, + 'expireThreshold': 600000, + //'reloadInterval': 300000, // 2add in the future + 'hide': false + }, d || {}); + return d; + } catch(e){ + //console.log(e.toString()); + return; + } } function loadVals() { try { const d = require('Storage').readJSON("widbgjs.json", 1) || {}; storedData = Object.assign({ - 'bg': null, + 'bg': 100, 'bgTimeStamp': null, - 'bgDirection': null + 'bgDirection': "Flat" }, d || {}); return d; } catch(e) { Bangle.removeFile("widbgjs.json"); } - return null; + return; } function calculateRotation(bgDirection) { @@ -108,8 +109,9 @@ return null; function draw() { loadSettings(); if(settings.hide) { -return; -} + return; + } + console.log(settings.unitIsMmol.toString()); loadVals(); outpt = getBG(storedData.bg); @@ -124,16 +126,19 @@ return; g.setFont('Vector', 22); g.setColor(g.theme.fg); - // check if the value is too old - if (!isBgTooOld(storedData.bgTimeStamp)) { - g.drawImage(atob("FBQBAGAADwAB+AA/wAduAGZgAGAABgAAYAAGAABgAAYAAGAABgAAYAAGAABgAAYAAGAABgA="), this.x + 60, this.y + 9, { rotate: calculateRotation(storedData.bgDirection) }); + // if the value is too old strikethrough it + if (isBgTooOld(storedData.bgTimeStamp)) { + g.fillRect(this.x + 5, this.y + 9, g.stringWidth(outpt),this.y + 10); } + + g.drawImage(atob("FBQBAGAADwAB+AA/wAduAGZgAGAABgAAYAAGAABgAAYAAGAABgAAYAAGAABgAAYAAGAABgA="), this.x + 60, this.y + 9, { rotate: calculateRotation(storedData.bgDirection)}); g.setColor(g.theme.fg).drawString(outpt, this.x + 5, this.y); + } setInterval(function () { WIDGETS["widbgjs"].draw(WIDGETS["widbgjs"]); - }, 5 * 60000); // update every 5 minutes (%* 60000 + }, 5 * 60000); // update every 5 minutes (5 * 60000) // add your widget From f9b4db0e9da1c0a4d192a75c527ce2cf811b2cd4 Mon Sep 17 00:00:00 2001 From: Phil Roggenbuck <1367949+phrogg@users.noreply.github.com> Date: Tue, 14 Feb 2023 21:41:56 +0100 Subject: [PATCH 0154/1725] reflect changes from the code --- apps/widbgjs/README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/widbgjs/README.md b/apps/widbgjs/README.md index dbb8cd9e4..23a37fa33 100644 --- a/apps/widbgjs/README.md +++ b/apps/widbgjs/README.md @@ -11,7 +11,7 @@ For this widget to work and to get data from the phone, you need: ## How to use it Make sure you have all the prerequisites from above. -The watch should automatically start displaying values, if there is an arrow visible behind the value, the value is within the not-expired-yet time range changeable in the settings standard is 15 minutes. (I will probably change this in the future, to strike through the text to make expired values clearer). +The watch should automatically start displaying values. Old values are now written with strikethrough. ## Settings In the settings, you can: @@ -26,4 +26,3 @@ Developed by Phil Roggenbuck ( Date: Tue, 14 Feb 2023 21:56:33 +0100 Subject: [PATCH 0157/1725] =?UTF-8?q?removed=20testing=20stuff....=20?= =?UTF-8?q?=EF=BC=88=E3=83=BB=E2=80=95=E3=83=BB=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/widbgjs/widget.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/widbgjs/widget.js b/apps/widbgjs/widget.js index b0a8d91b0..4b81c4885 100644 --- a/apps/widbgjs/widget.js +++ b/apps/widbgjs/widget.js @@ -27,7 +27,7 @@ storedData = Object.assign({ 'bg': null, 'bgTimeStamp': null, - 'bgDirection': "Flat" + 'bgDirection': null }, d || {}); return d; } catch(e) { From 008f7f40e5d986ac42e564a0083e7ee1414921ca Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 15 Jan 2023 22:58:55 +0000 Subject: [PATCH 0158/1725] Initial typescript config --- package-lock.json | 1442 +++++++++++++++++++++++++----------- package.json | 3 +- tsconfig.json | 57 +- typescript/types/main.d.ts | 2 +- 4 files changed, 1058 insertions(+), 446 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5e531b4a6..e0ce5214d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,15 +1,30 @@ { "name": "BangleApps", "version": "0.0.1", - "lockfileVersion": 1, + "lockfileVersion": 3, "requires": true, - "dependencies": { - "@eslint/eslintrc": { + "packages": { + "": { + "name": "BangleApps", + "version": "0.0.1", + "license": "MIT", + "dependencies": { + "acorn": "^7.2.0", + "typescript": "^4.9.4" + }, + "devDependencies": { + "eslint": "^8.14.0", + "eslint-config-airbnb-base": "^15.0.0", + "eslint-plugin-import": "^2.26.0", + "npm-watch": "^0.11.0" + } + }, + "node_modules/@eslint/eslintrc": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz", "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==", "dev": true, - "requires": { + "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.3.2", @@ -19,278 +34,374 @@ "js-yaml": "^4.1.0", "minimatch": "^3.1.2", "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "@humanwhocodes/config-array": { + "node_modules/@humanwhocodes/config-array": { "version": "0.9.5", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", "dev": true, - "requires": { + "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" } }, - "@humanwhocodes/object-schema": { + "node_modules/@humanwhocodes/object-schema": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, - "@types/json5": { + "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, - "abbrev": { + "node_modules/abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true }, - "acorn": { + "node_modules/acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, - "acorn-jsx": { + "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } }, - "ajv": { + "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, - "requires": { + "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "ansi-regex": { + "node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "ansi-styles": { + "node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "requires": { + "dependencies": { "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "anymatch": { + "node_modules/anymatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, - "requires": { + "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "argparse": { + "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, - "array-includes": { + "node_modules/array-includes": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz", "integrity": "sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", "es-abstract": "^1.19.5", "get-intrinsic": "^1.1.1", "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "array.prototype.flat": { + "node_modules/array.prototype.flat": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz", "integrity": "sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.2", "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "balanced-match": { + "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "binary-extensions": { + "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "brace-expansion": { + "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "requires": { + "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "braces": { + "node_modules/braces": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, - "requires": { + "dependencies": { "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" } }, - "call-bind": { + "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, - "requires": { + "dependencies": { "function-bind": "^1.1.1", "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "callsites": { + "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "chalk": { + "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "requires": { + "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "chokidar": { + "node_modules/chokidar": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, - "requires": { + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.3.2", "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.6.0" }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "color-convert": { + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { + "dependencies": { "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "color-name": { + "node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "concat-map": { + "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, - "confusing-browser-globals": { + "node_modules/confusing-browser-globals": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", "dev": true }, - "cross-spawn": { + "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, - "requires": { + "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" } }, - "debug": { + "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, - "requires": { + "dependencies": { "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "deep-is": { + "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, - "define-properties": { + "node_modules/define-properties": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, - "requires": { + "dependencies": { "has-property-descriptors": "^1.0.0", "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "doctrine": { + "node_modules/doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, - "requires": { + "dependencies": { "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" } }, - "es-abstract": { + "node_modules/es-abstract": { "version": "1.20.1", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz", "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -314,40 +425,58 @@ "string.prototype.trimend": "^1.0.5", "string.prototype.trimstart": "^1.0.5", "unbox-primitive": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "es-shim-unscopables": { + "node_modules/es-shim-unscopables": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", "dev": true, - "requires": { + "dependencies": { "has": "^1.0.3" } }, - "es-to-primitive": { + "node_modules/es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, - "requires": { + "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "escape-string-regexp": { + "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "eslint": { + "node_modules/eslint": { "version": "8.17.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.17.0.tgz", "integrity": "sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw==", "dev": true, - "requires": { + "dependencies": { "@eslint/eslintrc": "^1.3.0", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", @@ -383,68 +512,83 @@ "strip-json-comments": "^3.1.0", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "eslint-config-airbnb-base": { + "node_modules/eslint-config-airbnb-base": { "version": "15.0.0", "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", "integrity": "sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==", "dev": true, - "requires": { + "dependencies": { "confusing-browser-globals": "^1.0.10", "object.assign": "^4.1.2", "object.entries": "^1.1.5", "semver": "^6.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "peerDependencies": { + "eslint": "^7.32.0 || ^8.2.0", + "eslint-plugin-import": "^2.25.2" } }, - "eslint-import-resolver-node": { + "node_modules/eslint-import-resolver-node": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", "dev": true, - "requires": { + "dependencies": { "debug": "^3.2.7", "resolve": "^1.20.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } } }, - "eslint-module-utils": { + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-module-utils": { "version": "2.7.3", "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz", "integrity": "sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==", "dev": true, - "requires": { + "dependencies": { "debug": "^3.2.7", "find-up": "^2.1.0" }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "engines": { + "node": ">=4" } }, - "eslint-plugin-import": { + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { "version": "2.26.0", "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", "dev": true, - "requires": { + "dependencies": { "array-includes": "^3.1.4", "array.prototype.flat": "^1.2.5", "debug": "^2.6.9", @@ -459,601 +603,821 @@ "resolve": "^1.22.0", "tsconfig-paths": "^3.14.1" }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, - "eslint-scope": { + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/eslint-scope": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", "dev": true, - "requires": { + "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "eslint-utils": { + "node_modules/eslint-utils": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, - "requires": { + "dependencies": { "eslint-visitor-keys": "^2.0.0" }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - } + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" } }, - "eslint-visitor-keys": { + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } }, - "espree": { + "node_modules/espree": { "version": "9.3.2", "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==", "dev": true, - "requires": { + "dependencies": { "acorn": "^8.7.1", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.3.0" }, - "dependencies": { - "acorn": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", - "dev": true - } + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "esquery": { + "node_modules/espree/node_modules/acorn": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/esquery": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, - "requires": { + "dependencies": { "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" } }, - "esrecurse": { + "node_modules/esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, - "requires": { + "dependencies": { "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" } }, - "estraverse": { + "node_modules/estraverse": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.0" + } }, - "esutils": { + "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "fast-deep-equal": { + "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, - "fast-json-stable-stringify": { + "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, - "fast-levenshtein": { + "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "file-entry-cache": { + "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, - "requires": { + "dependencies": { "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "fill-range": { + "node_modules/fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, - "requires": { + "dependencies": { "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "find-up": { + "node_modules/find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, - "requires": { + "dependencies": { "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "flat-cache": { + "node_modules/flat-cache": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, - "requires": { + "dependencies": { "flatted": "^3.1.0", "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "flatted": { + "node_modules/flatted": { "version": "3.2.5", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", "dev": true }, - "fs.realpath": { + "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, - "fsevents": { + "node_modules/fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, - "optional": true + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, - "function-bind": { + "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, - "function.prototype.name": { + "node_modules/function.prototype.name": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.0", "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "functional-red-black-tree": { + "node_modules/functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, - "functions-have-names": { + "node_modules/functions-have-names": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "get-intrinsic": { + "node_modules/get-intrinsic": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", "dev": true, - "requires": { + "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "get-symbol-description": { + "node_modules/get-symbol-description": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "glob": { + "node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, - "requires": { + "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "glob-parent": { + "node_modules/glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, - "requires": { + "dependencies": { "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" } }, - "globals": { + "node_modules/globals": { "version": "13.15.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", "dev": true, - "requires": { + "dependencies": { "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "has": { + "node_modules/has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, - "requires": { + "dependencies": { "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" } }, - "has-bigints": { + "node_modules/has-bigints": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "has-flag": { + "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "has-property-descriptors": { + "node_modules/has-property-descriptors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", "dev": true, - "requires": { + "dependencies": { "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "has-symbols": { + "node_modules/has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "has-tostringtag": { + "node_modules/has-tostringtag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dev": true, - "requires": { + "dependencies": { "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "ignore": { + "node_modules/ignore": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true + "dev": true, + "engines": { + "node": ">= 4" + } }, - "ignore-by-default": { + "node_modules/ignore-by-default": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", "dev": true }, - "import-fresh": { + "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, - "requires": { + "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "imurmurhash": { + "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.19" + } }, - "inflight": { + "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, - "requires": { + "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, - "inherits": { + "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, - "internal-slot": { + "node_modules/internal-slot": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, - "requires": { + "dependencies": { "get-intrinsic": "^1.1.0", "has": "^1.0.3", "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" } }, - "is-bigint": { + "node_modules/is-bigint": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, - "requires": { + "dependencies": { "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-binary-path": { + "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, - "requires": { + "dependencies": { "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "is-boolean-object": { + "node_modules/is-boolean-object": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-callable": { + "node_modules/is-callable": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-core-module": { + "node_modules/is-core-module": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", "dev": true, - "requires": { + "dependencies": { "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-date-object": { + "node_modules/is-date-object": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, - "requires": { + "dependencies": { "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-extglob": { + "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "is-glob": { + "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, - "requires": { + "dependencies": { "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-negative-zero": { + "node_modules/is-negative-zero": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-number": { + "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.12.0" + } }, - "is-number-object": { + "node_modules/is-number-object": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, - "requires": { + "dependencies": { "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-regex": { + "node_modules/is-regex": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-shared-array-buffer": { + "node_modules/is-shared-array-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-string": { + "node_modules/is-string": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, - "requires": { + "dependencies": { "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-symbol": { + "node_modules/is-symbol": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, - "requires": { + "dependencies": { "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-weakref": { + "node_modules/is-weakref": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "isexe": { + "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "js-yaml": { + "node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, - "requires": { + "dependencies": { "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "json-schema-traverse": { + "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "json-stable-stringify-without-jsonify": { + "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, - "json5": { + "node_modules/json5": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", "dev": true, - "requires": { + "dependencies": { "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" } }, - "levn": { + "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, - "requires": { + "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "locate-path": { + "node_modules/locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", "dev": true, - "requires": { + "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "lodash.merge": { + "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, - "minimatch": { + "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "requires": { + "dependencies": { "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "minimist": { + "node_modules/minimist": { "version": "1.2.6", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", "dev": true }, - "ms": { + "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "natural-compare": { + "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "nodemon": { + "node_modules/nodemon": { "version": "2.0.20", "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.20.tgz", "integrity": "sha512-Km2mWHKKY5GzRg6i1j5OxOHQtuvVsgskLfigG25yTtbyfRGn/GNvIbRyOf1PSCKJ2aT/58TiuUsuOU5UToVViw==", "dev": true, - "requires": { + "dependencies": { "chokidar": "^3.5.2", "debug": "^3.2.7", "ignore-by-default": "^1.0.1", @@ -1065,527 +1429,745 @@ "touch": "^3.1.0", "undefsafe": "^2.0.5" }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=8.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" } }, - "nopt": { + "node_modules/nodemon/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/nodemon/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/nodemon/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/nodemon/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/nopt": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", "dev": true, - "requires": { + "dependencies": { "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "*" } }, - "normalize-path": { + "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "npm-watch": { + "node_modules/npm-watch": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/npm-watch/-/npm-watch-0.11.0.tgz", "integrity": "sha512-wAOd0moNX2kSA2FNvt8+7ORwYaJpQ1ZoWjUYdb1bBCxq4nkWuU0IiJa9VpVxrj5Ks+FGXQd62OC/Bjk0aSr+dg==", "dev": true, - "requires": { + "dependencies": { "nodemon": "^2.0.7", "through2": "^4.0.2" + }, + "bin": { + "npm-watch": "cli.js" } }, - "object-inspect": { + "node_modules/object-inspect": { "version": "1.12.2", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "object-keys": { + "node_modules/object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + } }, - "object.assign": { + "node_modules/object.assign": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", "has-symbols": "^1.0.1", "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "object.entries": { + "node_modules/object.entries": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1" + }, + "engines": { + "node": ">= 0.4" } }, - "object.values": { + "node_modules/object.values": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "once": { + "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, - "requires": { + "dependencies": { "wrappy": "1" } }, - "optionator": { + "node_modules/optionator": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, - "requires": { + "dependencies": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", "type-check": "^0.4.0", "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" } }, - "p-limit": { + "node_modules/p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, - "requires": { + "dependencies": { "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, - "p-locate": { + "node_modules/p-locate": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, - "requires": { + "dependencies": { "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" } }, - "p-try": { + "node_modules/p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "parent-module": { + "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, - "requires": { + "dependencies": { "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "path-exists": { + "node_modules/path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "path-is-absolute": { + "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "path-key": { + "node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "path-parse": { + "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, - "picomatch": { + "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, - "prelude-ls": { + "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8.0" + } }, - "pstree.remy": { + "node_modules/pstree.remy": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", "dev": true }, - "punycode": { + "node_modules/punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "readable-stream": { + "node_modules/readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, - "requires": { + "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "readdirp": { + "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, - "requires": { + "dependencies": { "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "regexp.prototype.flags": { + "node_modules/regexp.prototype.flags": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "regexpp": { + "node_modules/regexpp": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } }, - "resolve": { + "node_modules/resolve": { "version": "1.22.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", "dev": true, - "requires": { + "dependencies": { "is-core-module": "^2.8.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "resolve-from": { + "node_modules/resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "rimraf": { + "node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, - "requires": { + "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "safe-buffer": { + "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "semver": { + "node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "dev": true, + "bin": { + "semver": "bin/semver.js" + } }, - "shebang-command": { + "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, - "requires": { + "dependencies": { "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "shebang-regex": { + "node_modules/shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "side-channel": { + "node_modules/side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.0", "get-intrinsic": "^1.0.2", "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "simple-update-notifier": { + "node_modules/simple-update-notifier": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.0.7.tgz", "integrity": "sha512-BBKgR84BJQJm6WjWFMHgLVuo61FBDSj1z/xSFUIozqO6wO7ii0JxCqlIud7Enr/+LhlbNI0whErq96P2qHNWew==", "dev": true, - "requires": { + "dependencies": { "semver": "~7.0.0" }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } + "engines": { + "node": ">=8.10.0" } }, - "string.prototype.trimend": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", - "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", + "node_modules/simple-update-notifier/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" + "bin": { + "semver": "bin/semver.js" } }, - "string.prototype.trimstart": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", - "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - } - }, - "string_decoder": { + "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, - "requires": { + "dependencies": { "safe-buffer": "~5.2.0" } }, - "strip-ansi": { + "node_modules/string.prototype.trimend": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", + "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", + "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "requires": { + "dependencies": { "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "strip-bom": { + "node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "strip-json-comments": { + "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "supports-color": { + "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "requires": { + "dependencies": { "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "supports-preserve-symlinks-flag": { + "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "text-table": { + "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "through2": { + "node_modules/through2": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", "dev": true, - "requires": { + "dependencies": { "readable-stream": "3" } }, - "to-regex-range": { + "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, - "requires": { + "dependencies": { "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "touch": { + "node_modules/touch": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", "dev": true, - "requires": { + "dependencies": { "nopt": "~1.0.10" + }, + "bin": { + "nodetouch": "bin/nodetouch.js" } }, - "tsconfig-paths": { + "node_modules/tsconfig-paths": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", "dev": true, - "requires": { + "dependencies": { "@types/json5": "^0.0.29", "json5": "^1.0.1", "minimist": "^1.2.6", "strip-bom": "^3.0.0" } }, - "type-check": { + "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, - "requires": { + "dependencies": { "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "type-fest": { + "node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "unbox-primitive": { + "node_modules/typescript": { + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "has-bigints": "^1.0.2", "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "undefsafe": { + "node_modules/undefsafe": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", "dev": true }, - "uri-js": { + "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, - "requires": { + "dependencies": { "punycode": "^2.1.0" } }, - "util-deprecate": { + "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, - "v8-compile-cache": { + "node_modules/v8-compile-cache": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, - "which": { + "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "which-boxed-primitive": { + "node_modules/which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, - "requires": { + "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", "is-number-object": "^1.0.4", "is-string": "^1.0.5", "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "word-wrap": { + "node_modules/word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "wrappy": { + "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", diff --git a/package.json b/package.json index 08f3a19ce..670149e93 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "update-local-apps": "apps/*/metadata.json" }, "dependencies": { - "acorn": "^7.2.0" + "acorn": "^7.2.0", + "typescript": "^4.9.4" } } diff --git a/tsconfig.json b/tsconfig.json index 8da08b8e2..464d05952 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,23 +1,52 @@ { "compilerOptions": { + // input/output + "target": "es5", + "noLib": true, // "lib": ["es5"], + "skipLibCheck": false, + "module": "commonjs", + + // code-gen + "declaration": false, + "emitDeclarationOnly": false, + "removeComments": true, + + "newLine": "lf", + "noEmitHelpers": true, + "noEmitOnError": true, + "preserveConstEnums": false, + "importsNotUsedAsValues": "error", + "preserveValueImports": false, + + // interop constraints + "isolatedModules": false, // we're global scripts + + // type checking "noImplicitAny": true, - "target": "es6", - "allowUnreachableCode": false, - "allowUnusedLabels": false, - "noImplicitOverride": true, - "noImplicitReturns": true, - "noImplicitThis": true, - "noLib": true, "noUncheckedIndexedAccess": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitThis": true, + "noImplicitReturns": true, + "noImplicitOverride": true, + "exactOptionalPropertyTypes": true, + "useUnknownInCatchVariables": true, + "strict": true, + + // simple type checking "noUnusedLocals": true, "noUnusedParameters": true, - "strict": true, - "typeRoots": ["./typescript/types"] + "allowUnusedLabels": false, + "allowUnreachableCode": false, + + // paths + "rootDir": "./", + "typeRoots": ["./typescript/types/"] }, - "include": ["./**/*"], - "exclude": [ - "**/gpconv.d.ts", - "**/gpconv_bg.wasm.d.ts" - ] + "include": [ + "*/*/*.ts", + "*/*/*.d.ts", + "modules/*.d.ts", + "typescript/types/*.d.ts" + ] } diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index cd7b364a6..3c5cbe2e3 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -13299,4 +13299,4 @@ declare module "Storage" { * @url http://www.espruino.com/Reference#l_Storage_open */ function open(name: string, mode: "r" | "w" | "a"): StorageFile; -} \ No newline at end of file +} From 2e793391b22072271ec9032e9d54e30f00e2993d Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 16 Jan 2023 18:30:25 +0000 Subject: [PATCH 0159/1725] clock_info.d.ts --- typescript/types/clock_info.d.ts | 58 ++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 typescript/types/clock_info.d.ts diff --git a/typescript/types/clock_info.d.ts b/typescript/types/clock_info.d.ts new file mode 100644 index 000000000..df5dd1f9b --- /dev/null +++ b/typescript/types/clock_info.d.ts @@ -0,0 +1,58 @@ +declare module ClockInfo { + function load(): Menu[]; + function addInteractive(menu: Menu[], options: Options): InteractiveOptions; + + type Menu = { + name: string, + img: string, + dynamic?: boolean, + items: MenuItem[], + }; + + type MenuItem = { + name: string, + show(): void, + hide(): void, + on(what: "redraw", cb: () => void): void, // extending from Object + run?(): void, + } & ( + { + hasRange: true, + get(): RangeItem, + } | { + hasRange: false, + get(): Item, + } + ); + + type Item = { + text: string, + short?: string, + img?: string, + }; + + type RangeItem = + Item & { + v: number, + min: number, + max: number, + }; + + type Options = { + x: number, + y: number, + w: number, + h: number, + draw(itm: MenuItem, info: Item, options: InteractiveOptions): void, + }; + + type InteractiveOptions = + Options & { + index: number, + menuA: number, + menuB: number, + remove(): void, + redraw(): void, + focus: boolean, + }; +} From d2b28ac2bdab5be8cfe84183cbc2d25082d52695 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 16 Jan 2023 22:11:17 +0000 Subject: [PATCH 0160/1725] layout.d.ts --- typescript/types/layout.d.ts | 123 +++++++++++++++++++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 typescript/types/layout.d.ts diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts new file mode 100644 index 000000000..5e7613165 --- /dev/null +++ b/typescript/types/layout.d.ts @@ -0,0 +1,123 @@ +type Prev = [never, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]; + +type ExtractIds = + [Depth] extends [never] + ? never + : (T extends { id: infer Id extends string } ? Id : never) + | + ( + T extends { c: Array } + ? ExtractIds + : never + ); + +declare module Layout { + type Layouter = + { + [k in ExtractIds]: number; + } & { + // these actually change T + render(l?: T): void; + layout(l: T): void; + + debug(l?: T, c?: ColorResolvable): void; + update(): void; // changes layoutObject into a RenderedHierarchy + clear(obj?: T): void; + + forgetLazyState(): void; + + setUI(): void; + }; + + var Layout: { + new ( + hier: T, + options?: { + lazy: boolean, + btns: { + label: string, + cb: () => void, + cbl: () => void, + }[], + back: () => void, + remove: () => void, + }, + ): Layouter; + }; + + export type Layout = typeof Layout; + + type Image = string; + + type Fill = 0 | 1 | 2; // 0=no, 1=yes, 2=2x more space + + type RenderedHierarchy = + Hierarchy & { + // top left position + x: number, + y: number, + // width and height + w: number, + h: number, + // minimum width and height + _w: number, + _h: number, + }; + + type Hierarchy = + HierarchyParts & { + id?: string, + font?: FontNameWithScaleFactor, + scale?: number, + col: ColorResolvable, + bgCol: ColorResolvable, + pad: number, + fillx: Fill, + filly: Fill, + width?: number, + height?: number, + } & ( + { + r?: number, // 0: 0°, 1: 90°, 2: 180°, 3: 270°. + } | { + wrap?: boolean, + } + ); + + type Align = -1 | 0 | 1; + + type HierarchyParts = + { + type: "v", + c: Hierarchy[], + halign: Align, + } | { + type: "h" + c: Hierarchy[], + valign: Align, + } | { + type: "txt", + label: string, + font: FontNameWithScaleFactor, + } | { + type: undefined, + } | ( + { + type: "btn", + src: Image, + cb: () => void, + } | { + type: "btn", + cb: () => void, + label: string, + font: FontNameWithScaleFactor, + scale: number, + } + ) | { + type: "img", + src: Image | (() => Image), + } | { + type: "custom", + render: (h: Hierarchy) => void, + }; +} From 65449336fb5f28bb8e7ca066f414c545c8b9819d Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 16 Jan 2023 22:56:21 +0000 Subject: [PATCH 0161/1725] ClockFace.d.ts --- typescript/types/ClockFace.d.ts | 56 +++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 typescript/types/ClockFace.d.ts diff --git a/typescript/types/ClockFace.d.ts b/typescript/types/ClockFace.d.ts new file mode 100644 index 000000000..173b83c39 --- /dev/null +++ b/typescript/types/ClockFace.d.ts @@ -0,0 +1,56 @@ +declare module ClockFace_ { + export class ClockFace { + constructor(options: Options | Draw); + + is12Hour: boolean; + paused: boolean; + showDate: boolean; // default true + loadWidgets: boolean; // default true + + start(): void; + + tick(): void; + pause(): void; + resume(): void; + remove(): void; + redraw(): void; + } + + type Options = { + precision?: number, // seconds + + init?: () => void, + + pause?: () => void, + resume?: () => void, + remove?: () => void, + + settingsFile?: string, + } & ( + { + draw: Draw + } | { + update: Update, + } | { + draw: Draw, + update: Update, + } + ) & ( + { + up?: () => void, + down?: () => void, + } | { + upDown?: (dir: -1 | 1) => void, + } + ); + + type Draw = (d: Date, changed: Changed) => void; + type Update = (d: Date, changed: Changed) => void; + + type Changed = { + d: T, + h: T, + m: T, + s: T, + } +} From 67f3ecbf345ec73b06bfae752171103c8fa5d25b Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 22 Jan 2023 22:05:53 +0000 Subject: [PATCH 0162/1725] Fix eslintignore for typescript-generated files --- .eslintignore | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.eslintignore b/.eslintignore index 38bc5b5bf..80891299d 100644 --- a/.eslintignore +++ b/.eslintignore @@ -6,3 +6,8 @@ apps/qrcode/qr-scanner.umd.min.js apps/gipy/pkg/gpconv.js apps/health/chart.min.js *.test.js + +# typescript +apps/btadv/*.js +apps/promenu/*.js +apps/widChargingStatus/*.js From 3dec2a4065e0e83d0af5ba81277bbe482709d148 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 20 Jan 2023 22:29:15 +0000 Subject: [PATCH 0163/1725] tsconfig: emit on error, and emit helpers --- tsconfig.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tsconfig.json b/tsconfig.json index 464d05952..3bfd79e41 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -13,8 +13,8 @@ "removeComments": true, "newLine": "lf", - "noEmitHelpers": true, - "noEmitOnError": true, + "noEmitHelpers": false, + "noEmitOnError": false, "preserveConstEnums": false, "importsNotUsedAsValues": "error", "preserveValueImports": false, From 571adb88cee0b41980e33957b9baea840c724fd5 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 21 Jan 2023 00:13:33 +0000 Subject: [PATCH 0164/1725] typescript: menu and font fixes --- typescript/types/main.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index 3c5cbe2e3..3a52fa316 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -54,7 +54,7 @@ type MenuOptions = { type Menu = { ""?: MenuOptions; [key: string]: - | MenuOptions + | MenuOptions // not actually an option here | (() => void) | MenuBooleanItem | MenuNumberItem From 5ebc5cd880d7349644bbd2fa7a17882d6b3cb830 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 22 Jan 2023 22:16:25 +0000 Subject: [PATCH 0165/1725] Typescript version updates --- package.json | 2 +- typescript/package-lock.json | 14 +++++++------- typescript/package.json | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 670149e93..bd0cb05dd 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,6 @@ }, "dependencies": { "acorn": "^7.2.0", - "typescript": "^4.9.4" + "typescript": "4.9.4" } } diff --git a/typescript/package-lock.json b/typescript/package-lock.json index 15653acc2..ea04825a9 100644 --- a/typescript/package-lock.json +++ b/typescript/package-lock.json @@ -11,7 +11,7 @@ "node-fetch": "^3.2.10" }, "devDependencies": { - "typescript": "4.5.2" + "typescript": "4.9.4" } }, "node_modules/data-uri-to-buffer": { @@ -91,9 +91,9 @@ } }, "node_modules/typescript": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.2.tgz", - "integrity": "sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -151,9 +151,9 @@ } }, "typescript": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.2.tgz", - "integrity": "sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", "dev": true }, "web-streams-polyfill": { diff --git a/typescript/package.json b/typescript/package.json index 9533d77a7..9fa0f2501 100644 --- a/typescript/package.json +++ b/typescript/package.json @@ -4,7 +4,7 @@ "author": "Sebastian Di Luzio (https://diluz.io) and qucchia (https://github.com/qucchia)", "version": "0.0.1", "devDependencies": { - "typescript": "4.5.2" + "typescript": "4.9.4" }, "scripts": { "build": "tsc" From d65c6b6847248889658a49d327c3797e77275667 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 22 Jan 2023 22:16:44 +0000 Subject: [PATCH 0166/1725] typescript ReturnType<> --- typescript/types/other.d.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/typescript/types/other.d.ts b/typescript/types/other.d.ts index 2a58b9fe1..8f0d07855 100644 --- a/typescript/types/other.d.ts +++ b/typescript/types/other.d.ts @@ -9,3 +9,5 @@ interface IArguments { // Helper type type Exclude = T extends U ? never : T; + +type ReturnType = T extends (...args: any[]) => infer R ? R : never; From 1477029762e2c9f48ed579dd42cd259a30bb704a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 13 Jan 2023 22:06:02 +0000 Subject: [PATCH 0167/1725] btadv app: initial hrm support --- apps/btadv/ChangeLog | 1 + apps/btadv/app.js | 333 +++++++++++++++++++++++++++++++++++++++ apps/btadv/metadata.json | 13 ++ 3 files changed, 347 insertions(+) create mode 100644 apps/btadv/ChangeLog create mode 100644 apps/btadv/app.js create mode 100644 apps/btadv/metadata.json diff --git a/apps/btadv/ChangeLog b/apps/btadv/ChangeLog new file mode 100644 index 000000000..1a3bc1757 --- /dev/null +++ b/apps/btadv/ChangeLog @@ -0,0 +1 @@ +0.01: New app! diff --git a/apps/btadv/app.js b/apps/btadv/app.js new file mode 100644 index 000000000..494352f1c --- /dev/null +++ b/apps/btadv/app.js @@ -0,0 +1,333 @@ +// TODO debounce + +const UPDATE_MILLISECONDS = 30 * 1000; + +let acc, bar, gps, hrm, mag; +let curMenu; // acc | bar | gps | hrm | mag | main +let updateInterval; +let mainMenuScroll = 0; +const settings = { + barEnabled: false, + gpsEnabled: false, + hrmEnabled: false, + magEnabled: false, +}; + +const showMainMenu = () => { + const onOff = b => b ? " (on)" : " (off)"; + const mainMenu = {}; + + const showMenu = (menu, scroll, cur) => () => { + E.showMenu(menu); + mainMenuScroll = scroll; + curMenu = cur; + }; + + mainMenu[""] = { + "title": "-- btadv --", + back: showMainMenu, + scroll: mainMenuScroll, + }; + + mainMenu["Acceleration"] = showMenu(accMenu, 0, "acc"); + mainMenu["Barometer" + onOff(settings.barEnabled)] = showMenu(barMenu, 1, "bar"); + mainMenu["GPS" + onOff(settings.gpsEnabled)] = showMenu(gpsMenu, 2, "gps"); + mainMenu["Heart Rate" + onOff(settings.hrmEnabled)] = showMenu(hrmMenu, 3, "hrm"); + mainMenu["Magnetometer" + onOff(settings.magEnabled)] = showMenu(magMenu, 4, "mag"); + mainMenu["Exit"] = () => load(); // avoid `this` + + E.showMenu(mainMenu); + curMenu = "main"; +}; + +const accMenu = { + "": { "title" : "- Acceleration -" }, + "Active": { value: "true (fixed)" }, + "x": { value: null }, + "y": { value: null }, + "z": { value: null }, +}; + +const barMenu = { + "": { "title" : "- Barometer -" }, + "Active": { + value: settings.barEnabled, + onchange: v => { updateSetting('barEnabled', v); } + }, + "Altitude": { value: null }, + "Press": { value: null }, + "Temp": { value: null }, +}; + +const gpsMenu = { + "": { "title" : "- GPS -" }, + "Active": { + value: settings.gpsEnabled, + onchange: v => { updateSetting('gpsEnabled', v); } + }, + "Lat": { value: null }, + "Lon": { value: null }, + "Altitude": { value: null }, + "Satellites": { value: null }, + "HDOP": { value: null }, +}; + +const hrmMenu = { + "": { "title" : "- Heart Rate -" }, + "Active": { + value: settings.hrmEnabled, + onchange: v => { updateSetting('hrmEnabled', v); } + }, + "BPM": { value: null }, + "Confidence": { value: null }, +}; + +const magMenu = { + "": { "title" : "- Magnetometer -" }, + "Active": { + value: settings.magEnabled, + onchange: v => { updateSetting('magEnabled', v); } + }, + "x": { value: null }, + "y": { value: null }, + "z": { value: null }, + "Heading": { value: null }, +}; + +const updateMenu = () => { + switch (curMenu) { + case "acc": + if (acc) { + accMenu.x.value = acc.x.toFixed(2); + accMenu.y.value = acc.y.toFixed(2); + accMenu.z.value = acc.z.toFixed(2); + E.showMenu(accMenu); + } + break; + + case "bar": + if (bar) { + barMenu.Altitude.value = bar.altitude.toFixed(1) + 'm'; + barMenu.Press.value = bar.pressure.toFixed(1) + 'mbar'; + barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; + E.showMenu(barMenu); + } + break; + + case "gps": + if (gps) { + gpsMenu.Lat.value = gps.lat.toFixed(4); + gpsMenu.Lon.value = gps.lon.toFixed(4); + gpsMenu.Altitude.value = gps.alt + 'm'; + gpsMenu.Satellites.value = gps.satellites; + gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; + E.showMenu(gpsMenu); + } + break; + + case "hrm": + if (hrm) { + hrmMenu.BPM.value = hrm.bpm; + hrmMenu.Confidence.value = hrm.confidence + '%'; + E.showMenu(hrmMenu); + } + break; + + case "mag": + if (mag) { + magMenu.x.value = mag.x; + magMenu.y.value = mag.y; + magMenu.z.value = mag.z; + magMenu.Heading.value = mag.heading.toFixed(1); + E.showMenu(magMenu); + } + break; + } +}; + +const updateBleAdvert = () => { + if (!Bangle.bleAdvert) + Bangle.bleAdvert = {}; + + // const data = [ APP_ADVERTISING_DATA ]; // Always advertise at least app name + + // if (bar) { + // data.push(encodeBarServiceData(bar)); + // bar = undefined; + // } + + // if (gps && gps.lat && gps.lon) { + // data.push(encodeGpsServiceData(gps)); + // gps = undefined; + // } + + if (hrm) { + Bangle.bleAdvert[0x180d] = undefined; // Advertise HRM + + // hack + if (NRF.getSecurityStatus().connected) { + NRF.updateServices({ + 0x180d: { + 0x2a37: { + value: [0, hrm.bpm], + notify: true, + } + } + }) + console.log("updated hrm"); + return; + } + + // data.push({ 0x2a37: [ 0, hrm.bpm ] }); + // hrm = undefined; + } + + // if (mag) { + // data.push(encodeMagServiceData(mag)); + // mag = undefined; + // } + + const interval = UPDATE_MILLISECONDS / data.length; + + NRF.setAdvertising( + Bangle.bleAdvert, + { + interval, + }, + ); +}; + +// { +// flags: u8, +// bytes: [u8...] +// } +// flags { +// 1 << 0: 16bit bpm +// 1 << 1: sensor contact available +// 1 << 2: sensor contact boolean +// 1 << 3: energy expended, next 16 bits +// 1 << 4: "rr" data available, u16s, intervals +// } +const encodeHrm = () => [0, hrm ? hrm.bpm : 0]; + +// TODO: emit this via set/updateServices +const encodeBarServiceData = data => { + const t = toByteArray(Math.round(data.temperature * 100), 2, true); + const p = toByteArray(Math.round(data.pressure * 1000), 4, false); + const e = toByteArray(Math.round(data.altitude * 100), 3, true); + + return [ + 0x02, 0x01, 0x06, // Flags + 0x05, 0x16, 0x6e, 0x2a, t[0], t[1], // Temperature + 0x07, 0x16, 0x6d, 0x2a, p[0], p[1], p[2], p[3], // Pressure + 0x06, 0x16, 0x6c, 0x2a, e[0], e[1], e[2] // Elevation + ]; +}; + +const encodeGpsServiceData = data => { + const s = toByteArray(Math.round(1000 * data.speed / 36), 2, false); + const lat = toByteArray(Math.round(data.lat * 10000000), 4, true); + const lon = toByteArray(Math.round(data.lon * 10000000), 4, true); + const e = toByteArray(Math.round(data.alt * 100), 3, true); + const h = toByteArray(Math.round(data.course * 100), 2, false); + + return [ + 0x02, 0x01, 0x06, // Flags + 0x14, 0x16, 0x67, 0x2a, 0x9d, 0x02, s[0], s[1], lat[0], lat[1], lat[2], + lat[3], lon[0], lon[1], lon[2], lon[3], e[0], e[1], e[2], h[0], h[1] + // Location and Speed + ]; +}; + +const encodeMagServiceData = data => { + const x = toByteArray(data.x, 2, true); + const y = toByteArray(data.y, 2, true); + const z = toByteArray(data.z, 2, true); + + return [ + 0x02, 0x01, 0x06, // Flags + 0x09, 0x16, 0xa1, 0x2a, x[0], x[1], y[0], y[1], z[0], z[1] // Mag 3D + ]; +}; + +const toByteArray = (value, numberOfBytes, isSigned) => { + const byteArray = new Array(numberOfBytes); + + if(isSigned && (value < 0)) { + value += 1 << (numberOfBytes * 8); + } + + for(let index = 0; index < numberOfBytes; index++) { + byteArray[index] = (value >> (index * 8)) & 0xff; + } + + return byteArray; +}; + +const enableSensors = () => { + Bangle.setBarometerPower(settings.barEnabled, "btadv"); + Bangle.setGPSPower(settings.gpsEnabled, "btadv"); + Bangle.setHRMPower(settings.hrmEnabled, "btadv"); + Bangle.setCompassPower(settings.magEnabled, "btadv"); +}; + +const updateSetting = (name, value) => { + settings[name] = value; + //require('Storage').writeJSON(SETTINGS_FILENAME, settings); + enableSensors(); +}; + +// ---------------------------- + +NRF.setServices( + { + 0x180d: { + 0x2a37: { + value: encodeHrm(), + readable: true, + notify: true, + //indicate: true, // notify + ACK + }, + }, + }, + { + advertise: [ + '180d', + ] + }, +); + +const updateServices = () => { + NRF.updateServices({ + 0x180d: { + 0x2a37: { + value: encodeHrm(), + notify: true, + } + } + }); +}; + +Bangle.on('accel', newAcc => acc = newAcc); +Bangle.on('pressure', newBar => bar = newBar); +Bangle.on('GPS', newGps => gps = newGps); +Bangle.on('HRM', newHrm => hrm = newHrm); +Bangle.on('mag', newMag => mag = newMag); + +enableSensors(); +showMainMenu(); + +// setInterval(updateAdvert, 10000); +setInterval(updateMenu, 1000); + +NRF.on("connect", () => { + updateInterval = setInterval(updateServices, 1000); +}); +NRF.on("disconnect", () => { + clearInterval(updateInterval); + updateInterval = undefined; +}); + +// FIXME: ui overlap +// Bangle.loadWidgets(); +// Bangle.drawWidgets(); diff --git a/apps/btadv/metadata.json b/apps/btadv/metadata.json new file mode 100644 index 000000000..73ff04e52 --- /dev/null +++ b/apps/btadv/metadata.json @@ -0,0 +1,13 @@ +{ + "id": "btadv", + "name": "Export real-time sensor data over BLE", + "version": "0.01", + "description": "Advertise & export live heart rate, accel, pressure, GPS & mag data over bluetooth", + "icon": "heartrate.png", + "tags": "health,tool,sensors,bluetooth", + "supports": ["BANGLEJS2"], + "storage": [ + {"name":"btadv.app.js","url":"app.js"}, + {"name":"btadv.img","url":"icon.js","evaluate":true} + ] +} From da58969924f38480aa839ba5c7c251f528c8259e Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 20 Jan 2023 21:04:11 +0000 Subject: [PATCH 0168/1725] btadv --> typescript --- apps/btadv/app.js | 526 +++++++++++++++++++--------------------------- apps/btadv/app.ts | 343 ++++++++++++++++++++++++++++++ 2 files changed, 563 insertions(+), 306 deletions(-) create mode 100644 apps/btadv/app.ts diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 494352f1c..9be6d689b 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -1,333 +1,247 @@ -// TODO debounce - -const UPDATE_MILLISECONDS = 30 * 1000; - -let acc, bar, gps, hrm, mag; -let curMenu; // acc | bar | gps | hrm | mag | main -let updateInterval; -let mainMenuScroll = 0; -const settings = { - barEnabled: false, - gpsEnabled: false, - hrmEnabled: false, - magEnabled: false, +"use strict"; +var UPDATE_MILLISECONDS = 30 * 1000; +var acc; +var bar; +var gps; +var hrm; +var mag; +var curMenu = "main"; +var updateInterval; +var mainMenuScroll = 0; +var settings = { + barEnabled: false, + gpsEnabled: false, + hrmEnabled: false, + magEnabled: false, }; - -const showMainMenu = () => { - const onOff = b => b ? " (on)" : " (off)"; - const mainMenu = {}; - - const showMenu = (menu, scroll, cur) => () => { - E.showMenu(menu); - mainMenuScroll = scroll; - curMenu = cur; - }; - - mainMenu[""] = { - "title": "-- btadv --", - back: showMainMenu, - scroll: mainMenuScroll, - }; - - mainMenu["Acceleration"] = showMenu(accMenu, 0, "acc"); - mainMenu["Barometer" + onOff(settings.barEnabled)] = showMenu(barMenu, 1, "bar"); - mainMenu["GPS" + onOff(settings.gpsEnabled)] = showMenu(gpsMenu, 2, "gps"); - mainMenu["Heart Rate" + onOff(settings.hrmEnabled)] = showMenu(hrmMenu, 3, "hrm"); - mainMenu["Magnetometer" + onOff(settings.magEnabled)] = showMenu(magMenu, 4, "mag"); - mainMenu["Exit"] = () => load(); // avoid `this` - - E.showMenu(mainMenu); - curMenu = "main"; +var showMainMenu = function () { + var onOff = function (b) { return b ? " (on)" : " (off)"; }; + var mainMenu = {}; + var showMenu = function (menu, scroll, cur) { return function () { + E.showMenu(menu); + mainMenuScroll = scroll; + curMenu = cur; + }; }; + mainMenu[""] = { + "title": "-- btadv --", + back: showMainMenu, + }; + mainMenu[""].scroll = mainMenuScroll; + mainMenu["Acceleration"] = showMenu(accMenu, 0, "acc"); + mainMenu["Barometer" + onOff(settings.barEnabled)] = showMenu(barMenu, 1, "bar"); + mainMenu["GPS" + onOff(settings.gpsEnabled)] = showMenu(gpsMenu, 2, "gps"); + mainMenu["Heart Rate" + onOff(settings.hrmEnabled)] = showMenu(hrmMenu, 3, "hrm"); + mainMenu["Magnetometer" + onOff(settings.magEnabled)] = showMenu(magMenu, 4, "mag"); + mainMenu["Exit"] = function () { return load(); }; + E.showMenu(mainMenu); + curMenu = "main"; }; - -const accMenu = { - "": { "title" : "- Acceleration -" }, - "Active": { value: "true (fixed)" }, - "x": { value: null }, - "y": { value: null }, - "z": { value: null }, +var accMenu = { + "": { "title": "- Acceleration -" }, + "Active": { value: "true (fixed)" }, + "x": { value: "" }, + "y": { value: "" }, + "z": { value: "" }, }; - -const barMenu = { - "": { "title" : "- Barometer -" }, - "Active": { - value: settings.barEnabled, - onchange: v => { updateSetting('barEnabled', v); } - }, - "Altitude": { value: null }, - "Press": { value: null }, - "Temp": { value: null }, +var barMenu = { + "": { "title": "- Barometer -" }, + "Active": { + value: settings.barEnabled, + onchange: function (v) { return updateSetting('barEnabled', v); }, + }, + "Altitude": { value: "" }, + "Press": { value: "" }, + "Temp": { value: "" }, }; - -const gpsMenu = { - "": { "title" : "- GPS -" }, - "Active": { - value: settings.gpsEnabled, - onchange: v => { updateSetting('gpsEnabled', v); } - }, - "Lat": { value: null }, - "Lon": { value: null }, - "Altitude": { value: null }, - "Satellites": { value: null }, - "HDOP": { value: null }, +var gpsMenu = { + "": { "title": "- GPS -" }, + "Active": { + value: settings.gpsEnabled, + onchange: function (v) { return updateSetting('gpsEnabled', v); }, + }, + "Lat": { value: "" }, + "Lon": { value: "" }, + "Altitude": { value: "" }, + "Satellites": { value: "" }, + "HDOP": { value: "" }, }; - -const hrmMenu = { - "": { "title" : "- Heart Rate -" }, - "Active": { - value: settings.hrmEnabled, - onchange: v => { updateSetting('hrmEnabled', v); } - }, - "BPM": { value: null }, - "Confidence": { value: null }, +var hrmMenu = { + "": { "title": "- Heart Rate -" }, + "Active": { + value: settings.hrmEnabled, + onchange: function (v) { return updateSetting('hrmEnabled', v); }, + }, + "BPM": { value: "" }, + "Confidence": { value: "" }, }; - -const magMenu = { - "": { "title" : "- Magnetometer -" }, - "Active": { - value: settings.magEnabled, - onchange: v => { updateSetting('magEnabled', v); } - }, - "x": { value: null }, - "y": { value: null }, - "z": { value: null }, - "Heading": { value: null }, +var magMenu = { + "": { "title": "- Magnetometer -" }, + "Active": { + value: settings.magEnabled, + onchange: function (v) { return updateSetting('magEnabled', v); }, + }, + "x": { value: "" }, + "y": { value: "" }, + "z": { value: "" }, + "Heading": { value: "" }, }; - -const updateMenu = () => { - switch (curMenu) { - case "acc": - if (acc) { - accMenu.x.value = acc.x.toFixed(2); - accMenu.y.value = acc.y.toFixed(2); - accMenu.z.value = acc.z.toFixed(2); - E.showMenu(accMenu); - } - break; - - case "bar": - if (bar) { - barMenu.Altitude.value = bar.altitude.toFixed(1) + 'm'; - barMenu.Press.value = bar.pressure.toFixed(1) + 'mbar'; - barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; - E.showMenu(barMenu); - } - break; - - case "gps": - if (gps) { - gpsMenu.Lat.value = gps.lat.toFixed(4); - gpsMenu.Lon.value = gps.lon.toFixed(4); - gpsMenu.Altitude.value = gps.alt + 'm'; - gpsMenu.Satellites.value = gps.satellites; - gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; - E.showMenu(gpsMenu); - } - break; - - case "hrm": - if (hrm) { - hrmMenu.BPM.value = hrm.bpm; - hrmMenu.Confidence.value = hrm.confidence + '%'; - E.showMenu(hrmMenu); - } - break; - - case "mag": - if (mag) { - magMenu.x.value = mag.x; - magMenu.y.value = mag.y; - magMenu.z.value = mag.z; - magMenu.Heading.value = mag.heading.toFixed(1); - E.showMenu(magMenu); - } - break; - } +var updateMenu = function () { + switch (curMenu) { + case "acc": + if (acc) { + accMenu.x.value = acc.x.toFixed(2); + accMenu.y.value = acc.y.toFixed(2); + accMenu.z.value = acc.z.toFixed(2); + E.showMenu(accMenu); + } + break; + case "bar": + if (bar) { + barMenu.Altitude.value = bar.altitude.toFixed(1) + 'm'; + barMenu.Press.value = bar.pressure.toFixed(1) + 'mbar'; + barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; + E.showMenu(barMenu); + } + break; + case "gps": + if (gps) { + gpsMenu.Lat.value = gps.lat.toFixed(4); + gpsMenu.Lon.value = gps.lon.toFixed(4); + gpsMenu.Altitude.value = gps.alt + 'm'; + gpsMenu.Satellites.value = "" + gps.satellites; + gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; + E.showMenu(gpsMenu); + } + break; + case "hrm": + if (hrm) { + hrmMenu.BPM.value = "" + hrm.bpm; + hrmMenu.Confidence.value = hrm.confidence + '%'; + E.showMenu(hrmMenu); + } + break; + case "mag": + if (mag) { + magMenu.x.value = "" + mag.x; + magMenu.y.value = "" + mag.y; + magMenu.z.value = "" + mag.z; + magMenu.Heading.value = mag.heading.toFixed(1); + E.showMenu(magMenu); + } + break; + } }; - -const updateBleAdvert = () => { - if (!Bangle.bleAdvert) - Bangle.bleAdvert = {}; - - // const data = [ APP_ADVERTISING_DATA ]; // Always advertise at least app name - - // if (bar) { - // data.push(encodeBarServiceData(bar)); - // bar = undefined; - // } - - // if (gps && gps.lat && gps.lon) { - // data.push(encodeGpsServiceData(gps)); - // gps = undefined; - // } - - if (hrm) { - Bangle.bleAdvert[0x180d] = undefined; // Advertise HRM - - // hack - if (NRF.getSecurityStatus().connected) { - NRF.updateServices({ - 0x180d: { - 0x2a37: { - value: [0, hrm.bpm], - notify: true, - } +var updateBleAdvert = function () { + var bleAdvert; + if (!(bleAdvert = Bangle.bleAdvert)) + bleAdvert = Bangle.bleAdvert = {}; + if (hrm) { + bleAdvert[0x180d] = undefined; + if (NRF.getSecurityStatus().connected) { + NRF.updateServices({ + 0x180d: { + 0x2a37: { + value: [0, hrm.bpm], + notify: true, + } + } + }); + return; } - }) - console.log("updated hrm"); - return; } - - // data.push({ 0x2a37: [ 0, hrm.bpm ] }); - // hrm = undefined; - } - - // if (mag) { - // data.push(encodeMagServiceData(mag)); - // mag = undefined; - // } - - const interval = UPDATE_MILLISECONDS / data.length; - - NRF.setAdvertising( - Bangle.bleAdvert, - { - interval, - }, - ); + var interval = UPDATE_MILLISECONDS; + NRF.setAdvertising(Bangle.bleAdvert, { + interval: interval, + }); }; - -// { -// flags: u8, -// bytes: [u8...] -// } -// flags { -// 1 << 0: 16bit bpm -// 1 << 1: sensor contact available -// 1 << 2: sensor contact boolean -// 1 << 3: energy expended, next 16 bits -// 1 << 4: "rr" data available, u16s, intervals -// } -const encodeHrm = () => [0, hrm ? hrm.bpm : 0]; - -// TODO: emit this via set/updateServices -const encodeBarServiceData = data => { - const t = toByteArray(Math.round(data.temperature * 100), 2, true); - const p = toByteArray(Math.round(data.pressure * 1000), 4, false); - const e = toByteArray(Math.round(data.altitude * 100), 3, true); - - return [ - 0x02, 0x01, 0x06, // Flags - 0x05, 0x16, 0x6e, 0x2a, t[0], t[1], // Temperature - 0x07, 0x16, 0x6d, 0x2a, p[0], p[1], p[2], p[3], // Pressure - 0x06, 0x16, 0x6c, 0x2a, e[0], e[1], e[2] // Elevation - ]; +var encodeHrm = function () { return [0, hrm ? hrm.bpm : 0]; }; +var encodeBarServiceData = function (data) { + var t = toByteArray(Math.round(data.temperature * 100), 2, true); + var p = toByteArray(Math.round(data.pressure * 1000), 4, false); + var e = toByteArray(Math.round(data.altitude * 100), 3, true); + return [ + 0x02, 0x01, 0x06, + 0x05, 0x16, 0x6e, 0x2a, t[0], t[1], + 0x07, 0x16, 0x6d, 0x2a, p[0], p[1], p[2], p[3], + 0x06, 0x16, 0x6c, 0x2a, e[0], e[1], e[2] + ]; }; - -const encodeGpsServiceData = data => { - const s = toByteArray(Math.round(1000 * data.speed / 36), 2, false); - const lat = toByteArray(Math.round(data.lat * 10000000), 4, true); - const lon = toByteArray(Math.round(data.lon * 10000000), 4, true); - const e = toByteArray(Math.round(data.alt * 100), 3, true); - const h = toByteArray(Math.round(data.course * 100), 2, false); - - return [ - 0x02, 0x01, 0x06, // Flags - 0x14, 0x16, 0x67, 0x2a, 0x9d, 0x02, s[0], s[1], lat[0], lat[1], lat[2], - lat[3], lon[0], lon[1], lon[2], lon[3], e[0], e[1], e[2], h[0], h[1] - // Location and Speed - ]; +var encodeGpsServiceData = function (data) { + var s = toByteArray(Math.round(1000 * data.speed / 36), 2, false); + var lat = toByteArray(Math.round(data.lat * 10000000), 4, true); + var lon = toByteArray(Math.round(data.lon * 10000000), 4, true); + var e = toByteArray(Math.round(data.alt * 100), 3, true); + var h = toByteArray(Math.round(data.course * 100), 2, false); + return [ + 0x02, 0x01, 0x06, + 0x14, 0x16, 0x67, 0x2a, 0x9d, 0x02, s[0], s[1], lat[0], lat[1], lat[2], + lat[3], lon[0], lon[1], lon[2], lon[3], e[0], e[1], e[2], h[0], h[1] + ]; }; - -const encodeMagServiceData = data => { - const x = toByteArray(data.x, 2, true); - const y = toByteArray(data.y, 2, true); - const z = toByteArray(data.z, 2, true); - - return [ - 0x02, 0x01, 0x06, // Flags - 0x09, 0x16, 0xa1, 0x2a, x[0], x[1], y[0], y[1], z[0], z[1] // Mag 3D - ]; +var encodeMagServiceData = function (data) { + var x = toByteArray(data.x, 2, true); + var y = toByteArray(data.y, 2, true); + var z = toByteArray(data.z, 2, true); + return [ + 0x02, 0x01, 0x06, + 0x09, 0x16, 0xa1, 0x2a, x[0], x[1], y[0], y[1], z[0], z[1] + ]; }; - -const toByteArray = (value, numberOfBytes, isSigned) => { - const byteArray = new Array(numberOfBytes); - - if(isSigned && (value < 0)) { - value += 1 << (numberOfBytes * 8); - } - - for(let index = 0; index < numberOfBytes; index++) { - byteArray[index] = (value >> (index * 8)) & 0xff; - } - - return byteArray; +var toByteArray = function (value, numberOfBytes, isSigned) { + var byteArray = new Array(numberOfBytes); + if (isSigned && (value < 0)) { + value += 1 << (numberOfBytes * 8); + } + for (var index = 0; index < numberOfBytes; index++) { + byteArray[index] = (value >> (index * 8)) & 0xff; + } + return byteArray; }; - -const enableSensors = () => { - Bangle.setBarometerPower(settings.barEnabled, "btadv"); - Bangle.setGPSPower(settings.gpsEnabled, "btadv"); - Bangle.setHRMPower(settings.hrmEnabled, "btadv"); - Bangle.setCompassPower(settings.magEnabled, "btadv"); +var enableSensors = function () { + Bangle.setBarometerPower(settings.barEnabled, "btadv"); + Bangle.setGPSPower(settings.gpsEnabled, "btadv"); + Bangle.setHRMPower(settings.hrmEnabled, "btadv"); + Bangle.setCompassPower(settings.magEnabled, "btadv"); }; - -const updateSetting = (name, value) => { - settings[name] = value; - //require('Storage').writeJSON(SETTINGS_FILENAME, settings); - enableSensors(); +var updateSetting = function (name, value) { + settings[name] = value; + enableSensors(); }; - -// ---------------------------- - -NRF.setServices( - { +NRF.setServices({ 0x180d: { - 0x2a37: { - value: encodeHrm(), - readable: true, - notify: true, - //indicate: true, // notify + ACK - }, + 0x2a37: { + value: encodeHrm(), + readable: true, + notify: true, + }, }, - }, - { +}, { advertise: [ - '180d', + '180d', ] - }, -); - -const updateServices = () => { - NRF.updateServices({ - 0x180d: { - 0x2a37: { - value: encodeHrm(), - notify: true, - } - } - }); +}); +var updateServices = function () { + NRF.updateServices({ + 0x180d: { + 0x2a37: { + value: encodeHrm(), + notify: true, + } + } + }); }; - -Bangle.on('accel', newAcc => acc = newAcc); -Bangle.on('pressure', newBar => bar = newBar); -Bangle.on('GPS', newGps => gps = newGps); -Bangle.on('HRM', newHrm => hrm = newHrm); -Bangle.on('mag', newMag => mag = newMag); - +Bangle.on('accel', function (newAcc) { return acc = newAcc; }); +Bangle.on('pressure', function (newBar) { return bar = newBar; }); +Bangle.on('GPS', function (newGps) { return gps = newGps; }); +Bangle.on('HRM', function (newHrm) { return hrm = newHrm; }); +Bangle.on('mag', function (newMag) { return mag = newMag; }); enableSensors(); showMainMenu(); - -// setInterval(updateAdvert, 10000); setInterval(updateMenu, 1000); - -NRF.on("connect", () => { - updateInterval = setInterval(updateServices, 1000); +NRF.on("connect", function () { + updateInterval = setInterval(updateServices, 1000); }); -NRF.on("disconnect", () => { - clearInterval(updateInterval); - updateInterval = undefined; +NRF.on("disconnect", function () { + clearInterval(updateInterval); + updateInterval = undefined; }); - -// FIXME: ui overlap -// Bangle.loadWidgets(); -// Bangle.drawWidgets(); diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts new file mode 100644 index 000000000..55a28f67a --- /dev/null +++ b/apps/btadv/app.ts @@ -0,0 +1,343 @@ +// TODO debounce + +const UPDATE_MILLISECONDS = 30 * 1000; + +let acc: undefined | AccelData; +let bar: undefined | PressureData; +let gps: undefined | GPSFix; +let hrm: undefined | { bpm: number, confidence: number }; +let mag: undefined | CompassData; + +type BtAdvMenu = "acc" | "bar" | "gps" | "hrm" | "mag" | "main"; +let curMenu: BtAdvMenu = "main"; +let updateInterval: undefined | number; +let mainMenuScroll = 0; +const settings = { + barEnabled: false, + gpsEnabled: false, + hrmEnabled: false, + magEnabled: false, +}; + +const showMainMenu = () => { + const onOff = (b: boolean) => b ? " (on)" : " (off)"; + const mainMenu: Menu = {}; + + const showMenu = (menu: Menu, scroll: number, cur: BtAdvMenu) => () => { + E.showMenu(menu); + mainMenuScroll = scroll; + curMenu = cur; + }; + + mainMenu[""] = { + "title": "-- btadv --", + back: showMainMenu, + }; + (mainMenu[""] as any).scroll = mainMenuScroll; // typehack + + mainMenu["Acceleration"] = showMenu(accMenu, 0, "acc"); + mainMenu["Barometer" + onOff(settings.barEnabled)] = showMenu(barMenu, 1, "bar"); + mainMenu["GPS" + onOff(settings.gpsEnabled)] = showMenu(gpsMenu, 2, "gps"); + mainMenu["Heart Rate" + onOff(settings.hrmEnabled)] = showMenu(hrmMenu, 3, "hrm"); + mainMenu["Magnetometer" + onOff(settings.magEnabled)] = showMenu(magMenu, 4, "mag"); + mainMenu["Exit"] = () => (load as any)(); // avoid `this` + typehack + + E.showMenu(mainMenu); + curMenu = "main"; +}; + +const accMenu = { + "": { "title" : "- Acceleration -" }, + "Active": { value: "true (fixed)" }, + "x": { value: "" }, + "y": { value: "" }, + "z": { value: "" }, +}; + +const barMenu = { + "": { "title" : "- Barometer -" }, + "Active": { + value: settings.barEnabled, + onchange: (v: boolean) => updateSetting('barEnabled', v), + }, + "Altitude": { value: "" }, + "Press": { value: "" }, + "Temp": { value: "" }, +}; + +const gpsMenu = { + "": { "title" : "- GPS -" }, + "Active": { + value: settings.gpsEnabled, + onchange: (v: boolean) => updateSetting('gpsEnabled', v), + }, + "Lat": { value: "" }, + "Lon": { value: "" }, + "Altitude": { value: "" }, + "Satellites": { value: "" }, + "HDOP": { value: "" }, +}; + +const hrmMenu = { + "": { "title" : "- Heart Rate -" }, + "Active": { + value: settings.hrmEnabled, + onchange: (v: boolean) => updateSetting('hrmEnabled', v), + }, + "BPM": { value: "" }, + "Confidence": { value: "" }, +}; + +const magMenu = { + "": { "title" : "- Magnetometer -" }, + "Active": { + value: settings.magEnabled, + onchange: (v: boolean) => updateSetting('magEnabled', v), + }, + "x": { value: "" }, + "y": { value: "" }, + "z": { value: "" }, + "Heading": { value: "" }, +}; + +const updateMenu = () => { + switch (curMenu) { + case "acc": + if (acc) { + accMenu.x.value = acc.x.toFixed(2); + accMenu.y.value = acc.y.toFixed(2); + accMenu.z.value = acc.z.toFixed(2); + E.showMenu(accMenu); + } + break; + + case "bar": + if (bar) { + barMenu.Altitude.value = bar.altitude.toFixed(1) + 'm'; + barMenu.Press.value = bar.pressure.toFixed(1) + 'mbar'; + barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; + E.showMenu(barMenu); + } + break; + + case "gps": + if (gps) { + gpsMenu.Lat.value = gps.lat.toFixed(4); + gpsMenu.Lon.value = gps.lon.toFixed(4); + gpsMenu.Altitude.value = gps.alt + 'm'; + gpsMenu.Satellites.value = "" + gps.satellites; + gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; + E.showMenu(gpsMenu); + } + break; + + case "hrm": + if (hrm) { + hrmMenu.BPM.value = "" + hrm.bpm; + hrmMenu.Confidence.value = hrm.confidence + '%'; + E.showMenu(hrmMenu); + } + break; + + case "mag": + if (mag) { + magMenu.x.value = "" + mag.x; + magMenu.y.value = "" + mag.y; + magMenu.z.value = "" + mag.z; + magMenu.Heading.value = mag.heading.toFixed(1); + E.showMenu(magMenu); + } + break; + } +}; + +const updateBleAdvert = () => { + let bleAdvert: { [key: number]: undefined }; + + if (!(bleAdvert = (Bangle as any).bleAdvert)) + bleAdvert = (Bangle as any).bleAdvert = {}; + + // const data = [ APP_ADVERTISING_DATA ]; // Always advertise at least app name + + // if (bar) { + // data.push(encodeBarServiceData(bar)); + // bar = undefined; + // } + + // if (gps && gps.lat && gps.lon) { + // data.push(encodeGpsServiceData(gps)); + // gps = undefined; + // } + + if (hrm) { + bleAdvert[0x180d] = undefined; // Advertise HRM + + // hack + if (NRF.getSecurityStatus().connected) { + NRF.updateServices({ + 0x180d: { + 0x2a37: { + value: [0, hrm.bpm], + notify: true, + } + } + }) + return; + } + + // data.push({ 0x2a37: [ 0, hrm.bpm ] }); + // hrm = undefined; + } + + // if (mag) { + // data.push(encodeMagServiceData(mag)); + // mag = undefined; + // } + + const interval = UPDATE_MILLISECONDS; // / data.length; + + NRF.setAdvertising( + (Bangle as any).bleAdvert, + { + interval, + }, + ); +}; + +// { +// flags: u8, +// bytes: [u8...] +// } +// flags { +// 1 << 0: 16bit bpm +// 1 << 1: sensor contact available +// 1 << 2: sensor contact boolean +// 1 << 3: energy expended, next 16 bits +// 1 << 4: "rr" data available, u16s, intervals +// } +const encodeHrm = () => [0, hrm ? hrm.bpm : 0]; + +// TODO: emit this via set/updateServices +const encodeBarServiceData = (data: PressureData) => { + const t = toByteArray(Math.round(data.temperature * 100), 2, true); + const p = toByteArray(Math.round(data.pressure * 1000), 4, false); + const e = toByteArray(Math.round(data.altitude * 100), 3, true); + + return [ + 0x02, 0x01, 0x06, // Flags + 0x05, 0x16, 0x6e, 0x2a, t[0], t[1], // Temperature + 0x07, 0x16, 0x6d, 0x2a, p[0], p[1], p[2], p[3], // Pressure + 0x06, 0x16, 0x6c, 0x2a, e[0], e[1], e[2] // Elevation + ]; +}; + +const encodeGpsServiceData = (data: GPSFix) => { + const s = toByteArray(Math.round(1000 * data.speed / 36), 2, false); + const lat = toByteArray(Math.round(data.lat * 10000000), 4, true); + const lon = toByteArray(Math.round(data.lon * 10000000), 4, true); + const e = toByteArray(Math.round(data.alt * 100), 3, true); + const h = toByteArray(Math.round(data.course * 100), 2, false); + + return [ + 0x02, 0x01, 0x06, // Flags + 0x14, 0x16, 0x67, 0x2a, 0x9d, 0x02, s[0], s[1], lat[0], lat[1], lat[2], + lat[3], lon[0], lon[1], lon[2], lon[3], e[0], e[1], e[2], h[0], h[1] + // Location and Speed + ]; +}; + +const encodeMagServiceData = (data: CompassData) => { + const x = toByteArray(data.x, 2, true); + const y = toByteArray(data.y, 2, true); + const z = toByteArray(data.z, 2, true); + + return [ + 0x02, 0x01, 0x06, // Flags + 0x09, 0x16, 0xa1, 0x2a, x[0], x[1], y[0], y[1], z[0], z[1] // Mag 3D + ]; +}; + +const toByteArray = (value: number, numberOfBytes: number, isSigned: boolean) => { + const byteArray: Array = new Array(numberOfBytes); + + if(isSigned && (value < 0)) { + value += 1 << (numberOfBytes * 8); + } + + for(let index = 0; index < numberOfBytes; index++) { + byteArray[index] = (value >> (index * 8)) & 0xff; + } + + return byteArray; +}; + +const enableSensors = () => { + Bangle.setBarometerPower(settings.barEnabled, "btadv"); + Bangle.setGPSPower(settings.gpsEnabled, "btadv"); + Bangle.setHRMPower(settings.hrmEnabled, "btadv"); + Bangle.setCompassPower(settings.magEnabled, "btadv"); +}; + +const updateSetting = ( + name: keyof typeof settings, + value: boolean, +) => { + settings[name] = value; + //require('Storage').writeJSON(SETTINGS_FILENAME, settings); + enableSensors(); +}; + +// ---------------------------- + +NRF.setServices( + { + 0x180d: { + 0x2a37: { + value: encodeHrm(), + readable: true, + notify: true, + //indicate: true, // notify + ACK + }, + }, + }, + { + advertise: [ + '180d', + ] + }, +); + +const updateServices = () => { + NRF.updateServices({ + 0x180d: { + 0x2a37: { + value: encodeHrm(), + notify: true, + } + } + }); +}; + +Bangle.on('accel', newAcc => acc = newAcc); +Bangle.on('pressure', newBar => bar = newBar); +Bangle.on('GPS', newGps => gps = newGps); +Bangle.on('HRM', newHrm => hrm = newHrm); +Bangle.on('mag', newMag => mag = newMag); + +enableSensors(); +showMainMenu(); + +// setInterval(updateAdvert, 10000); +setInterval(updateMenu, 1000); + +NRF.on("connect", () => { + updateInterval = setInterval(updateServices, 1000); +}); +NRF.on("disconnect", () => { + clearInterval(updateInterval); + updateInterval = undefined; +}); + +// FIXME: ui overlap +// Bangle.loadWidgets(); +// Bangle.drawWidgets(); From 52894002e1597e6be61ac7d9326f4ae5cf7cde1a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 20 Jan 2023 21:15:11 +0000 Subject: [PATCH 0169/1725] btadv: typescript + icon --- apps/btadv/app.ts | 5 ++--- apps/btadv/icon.js | 1 + apps/btadv/icon.png | Bin 0 -> 1544 bytes apps/btadv/metadata.json | 3 ++- 4 files changed, 5 insertions(+), 4 deletions(-) create mode 100644 apps/btadv/icon.js create mode 100644 apps/btadv/icon.png diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 55a28f67a..bc2335d17 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -1,5 +1,3 @@ -// TODO debounce - const UPDATE_MILLISECONDS = 30 * 1000; let acc: undefined | AccelData; @@ -217,7 +215,6 @@ const updateBleAdvert = () => { // } const encodeHrm = () => [0, hrm ? hrm.bpm : 0]; -// TODO: emit this via set/updateServices const encodeBarServiceData = (data: PressureData) => { const t = toByteArray(Math.round(data.temperature * 100), 2, true); const p = toByteArray(Math.round(data.pressure * 1000), 4, false); @@ -338,6 +335,8 @@ NRF.on("disconnect", () => { updateInterval = undefined; }); +// TODO debounce +// TODO: emit other data beside HRM (via set/updateServices) // FIXME: ui overlap // Bangle.loadWidgets(); // Bangle.drawWidgets(); diff --git a/apps/btadv/icon.js b/apps/btadv/icon.js new file mode 100644 index 000000000..005c0831f --- /dev/null +++ b/apps/btadv/icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("AJpMMJA5mAPwA1AAyyd2EqCGWRouyggyvEBouMQRoiEBQKDMBoeEBg+ENEAgKBAhosHgxGIOCwgQCBROGPBhoITSA8GCQRoUgSAqGGSBYGtSJipTASE6RZgaBQUCJBAaELgQAGbQwGKGRgaIAAwWPAxQEBwRgEjBRMKfhQyIIBhoGmCQyKBhUwOGRRcGKwwMGMzQkGXxTcEZzAyK7hU2XIIG9QwuEKhWeYXSVwGcg3qIGQlWIkRlIEnhxuIGRxaGQRE8OGRxYIlBBaKGSUqKCCHkQKhxEWGRh8MIh08G8h0KKAgYgLhQAKRxwKHMVqMADwyCMjAyYMlkOEMlm0MGVQwsZWF2OAPwBaA=")) diff --git a/apps/btadv/icon.png b/apps/btadv/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3daf16e1d718e07667efb810791b71122bcf62dd GIT binary patch literal 1544 zcmV+j2KV`iP)EX>4Tx062|}Rb6NtRTMs(xw9)I&V$sZrjic+HI%e$QqhFk=>BE1ZQLxAY_vg; z$?V;oX(lt{{G@3qJ`_O^!KmPq;Qw2}Cn0L9?Tam?khm;cmfj@-EE=vY<#k5o0f^m&*sM6pBI0EL{uRZtU4R5Z`^X8`V)zNfJ8YaF z;u6EP09P2E5Ad?jnUOMxUqvh^s*L``+lU9}BlcPZ2XpY-jyyG}ttleQMaed+noc9r zy@UIIwng1*#M^^UkFzj+6yF25_LnMhmf?pGpH<}CbcnAmX|u%;|7E#p3GpKUUAw%6 zatiT2#A8)^yd3Cssj4^8z$>TJnP(8+gLrkpJj%xIMEtceUz`eceo~wa<_{hK;NmJR zuzL3+9o0iVC08s$)vACv7|KExH6jmbd4gn8^0FkllzkRT6fd|P0nrwSVAXrbt(XrcJk z;OyVRDf#{Yw^VBW$m{6QFhZvPBk<6w!tZERBfJcLd1$M3&)TehHS09YRtkN(Z(GDi^F2;vKBX;HY+Q*UEnTqUvgh@A9J5aYSek}G;8j!qp=F+X_rylpF&#L zEj%b>g+0Q~5^H*5N-?MwSLA ze5T{?GXqX;9WfX;*4pXw6&V*io?m|<6;W0GAb4f<-njQ>$>Q>9MPr@wU=n+0I+*9IKpp9 z{{0u*d8K7@p9VPmCp-6AwmA>rtOL;dXv;Q$XXCx^0IWWyc=l3wC&Xgk0yx!!!@*Zi z8qcdA>-AfBZYACT*nGWS|NH%Vee(m<-vGFv{{#OecniJJ&By=%00v@9M??Vs0RI60 zpuMM)00009a7bBm001r{001r{0eGc9b^rhYnn^@KRA}DqSzB&|Fbv$W3O_5vL!6*@ z>f!b*y-RPv8QhiTxstRTKXFV+kvfgu{6d>JgT- zO5GQt%H#wjoDpr?Cey%D50PTlOfY7aB$Ej>I*+XeWFZxNG^Oa%zC585M#sJXQ&M0k z45^a^?@U%T<>36SnE^`*!Zb~{`#z*AO%^XURi`>t?L(G2@`AaqGZ@)~M?l1>HVD?7 zN47%^x@nr#h0)G`sA)TA!1aoWmO6qnr}gL|5f(sjILJPFgo7YEVdi&o&Jh!{v#A$} zYFJ}>TXVf$BYPDYM7<6?tRKhmb1N{V0`%u}*L758-fE$m=lMfb-6{4@G?0 u%Lgx7VC6_)_5i5J5&SS Date: Fri, 20 Jan 2023 21:24:15 +0000 Subject: [PATCH 0170/1725] btadv icon fixes --- apps/btadv/icon.js | 2 +- apps/btadv/icon.png | Bin 1544 -> 1538 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/btadv/icon.js b/apps/btadv/icon.js index 005c0831f..374e0d90a 100644 --- a/apps/btadv/icon.js +++ b/apps/btadv/icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("AJpMMJA5mAPwA1AAyyd2EqCGWRouyggyvEBouMQRoiEBQKDMBoeEBg+ENEAgKBAhosHgxGIOCwgQCBROGPBhoITSA8GCQRoUgSAqGGSBYGtSJipTASE6RZgaBQUCJBAaELgQAGbQwGKGRgaIAAwWPAxQEBwRgEjBRMKfhQyIIBhoGmCQyKBhUwOGRRcGKwwMGMzQkGXxTcEZzAyK7hU2XIIG9QwuEKhWeYXSVwGcg3qIGQlWIkRlIEnhxuIGRxaGQRE8OGRxYIlBBaKGSUqKCCHkQKhxEWGRh8MIh08G8h0KKAgYgLhQAKRxwKHMVqMADwyCMjAyYMlkOEMlm0MGVQwsZWF2OAPwBaA=")) +require("heatshrink").decompress(atob("mEwwkCkQA/ACkAC65vWRYIXXGCq8CC6sQGCotBGB4OFAoMgGBoOGDoQwOBwoECGCgcDEIQyLGAgXHEYY2GGAhHGEYYHBGBR3GCYYXIFAg2FkKXMOAgECJ4ZLDMAkgGAYADgRADC5J1EAAZYEDoYRCFgRuFEggQDgAXEDwwwDHQoXHAwr0HC4ZnENxAvJCAZXFBohfIC4rcFR5MQgQHDBIRXDX5hVId5ydEeIqYDSRIXIGoY9EEQYQFLoo6DGwwXKXQpmGLAwuHC5CHEC4g6GEAsgC5AuFC4cQFgoADII4FDkIgFABwXBFxQXMFyh9CFyj6HC6QWULqytHAH4AjA=")) diff --git a/apps/btadv/icon.png b/apps/btadv/icon.png index 3daf16e1d718e07667efb810791b71122bcf62dd..4df13cd235e4388e23cb37cbdfa0c2a0833f772a 100644 GIT binary patch delta 471 zcmV;|0Vw{641x?HiBL{Q4GJ0x0000DNk~Le0000m0000m2nGNE09OL}hp{0z1b>uC zL_t(&-tAf2ZGIhidA}o;zj=7tKgp~li zic!0lM+#j<;$^CObs!;4UX2~_$VIXOZV0TOyyG7Bz$rG)UiW{@2g@UkqQk8^+`Lw^ki8xkXj zv&{ic9Z11H)(IFo3EUKdp_8b!jZp0EtZm!qBJE@?T8&x+Aq0h;!I0PU7 z&d%4I6>48t{=Xw501wPfa$Un$o7)+jj z%f(_{*AF6k-?q(EKRIuwT`aKN=I zL_t(&-tAdiZiFxl+_4HjE5t*bpm*xw_AI?iZ@?McpSDu>5o~8d5W*54E3(1kvBwTv zE~lM#c+;P&h)HE&hXPatl^-vuZk zr)+glQlJjE0`)Z2St>`ZgB-~hVt-FyfC?!d0JS&)M#K`&00GQ{za<)LgsBiSecvY^ zPHk|B{UVK36aM^T2`iC=!+8+u5tg({-4~+Dkz&?NFlLq{lL<9C zkF5q|Ar*WyrRdYXJfRat$G!hkQeY?ysgnioOjb4J;QXzb0ZR(PG)=erK7XVuO%^XU zRi`>t?L(G2@`AaqGZ@)~M?l1>HVD?7N47%^x@nr#h0)G`sA)TA!1aoWmO6qnr}gL| z5f(sjILJPFgo7YEVdi&o&Jh!{v#A$}YFJ}>TXVf$BYPDYM7<6?tRKhmb1N{V0`%u} z*L758-fE$m=lMfb-?8Z00000NkvXXu0mjfKyk;I From eaed0f8215a11d351492ec7e1c60e46e7cd2a4b3 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 20 Jan 2023 22:28:14 +0000 Subject: [PATCH 0171/1725] btadv: fix menus, avoid magic numbers --- apps/btadv/app.js | 74 ++++++++++++++++++++++++--------------- apps/btadv/app.ts | 88 +++++++++++++++++++++++++++-------------------- 2 files changed, 97 insertions(+), 65 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 9be6d689b..5071782b1 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -1,5 +1,19 @@ "use strict"; -var UPDATE_MILLISECONDS = 30 * 1000; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +var _a, _b; +Bangle.loadWidgets(); +Bangle.drawWidgets(); +var ADVERT_MS = 30 * 1000; var acc; var bar; var gps; @@ -23,8 +37,7 @@ var showMainMenu = function () { curMenu = cur; }; }; mainMenu[""] = { - "title": "-- btadv --", - back: showMainMenu, + "title": "BLE Advert", }; mainMenu[""].scroll = mainMenuScroll; mainMenu["Acceleration"] = showMenu(accMenu, 0, "acc"); @@ -36,15 +49,18 @@ var showMainMenu = function () { E.showMenu(mainMenu); curMenu = "main"; }; +var optionsCommon = { + back: showMainMenu, +}; var accMenu = { - "": { "title": "- Acceleration -" }, + "": __assign({ "title": "Acceleration -" }, optionsCommon), "Active": { value: "true (fixed)" }, "x": { value: "" }, "y": { value: "" }, "z": { value: "" }, }; var barMenu = { - "": { "title": "- Barometer -" }, + "": __assign({ "title": "Barometer" }, optionsCommon), "Active": { value: settings.barEnabled, onchange: function (v) { return updateSetting('barEnabled', v); }, @@ -54,7 +70,7 @@ var barMenu = { "Temp": { value: "" }, }; var gpsMenu = { - "": { "title": "- GPS -" }, + "": __assign({ "title": "GPS" }, optionsCommon), "Active": { value: settings.gpsEnabled, onchange: function (v) { return updateSetting('gpsEnabled', v); }, @@ -66,7 +82,7 @@ var gpsMenu = { "HDOP": { value: "" }, }; var hrmMenu = { - "": { "title": "- Heart Rate -" }, + "": __assign({ "title": "- Heart Rate -" }, optionsCommon), "Active": { value: settings.hrmEnabled, onchange: function (v) { return updateSetting('hrmEnabled', v); }, @@ -75,7 +91,7 @@ var hrmMenu = { "Confidence": { value: "" }, }; var magMenu = { - "": { "title": "- Magnetometer -" }, + "": __assign({ "title": "Magnetometer" }, optionsCommon), "Active": { value: settings.magEnabled, onchange: function (v) { return updateSetting('magEnabled', v); }, @@ -132,26 +148,26 @@ var updateMenu = function () { } }; var updateBleAdvert = function () { + var _a, _b; var bleAdvert; if (!(bleAdvert = Bangle.bleAdvert)) bleAdvert = Bangle.bleAdvert = {}; if (hrm) { - bleAdvert[0x180d] = undefined; + bleAdvert["0x180d"] = undefined; if (NRF.getSecurityStatus().connected) { - NRF.updateServices({ - 0x180d: { - 0x2a37: { + NRF.updateServices((_a = {}, + _a["0x180d"] = (_b = {}, + _b["0x2a37"] = { value: [0, hrm.bpm], notify: true, - } - } - }); + }, + _b), + _a)); return; } } - var interval = UPDATE_MILLISECONDS; NRF.setAdvertising(Bangle.bleAdvert, { - interval: interval, + interval: ADVERT_MS, }); }; var encodeHrm = function () { return [0, hrm ? hrm.bpm : 0]; }; @@ -207,28 +223,30 @@ var updateSetting = function (name, value) { settings[name] = value; enableSensors(); }; -NRF.setServices({ - 0x180d: { - 0x2a37: { +NRF.setServices((_a = {}, + _a["0x180d"] = (_b = {}, + _b["0x2a37"] = { value: encodeHrm(), readable: true, notify: true, }, - }, -}, { + _b), + _a), { advertise: [ '180d', ] }); var updateServices = function () { - NRF.updateServices({ - 0x180d: { - 0x2a37: { + var _a, _b; + NRF.updateServices((_a = {}, + _a["0x180d"] = (_b = {}, + _b["0x2a37"] = { value: encodeHrm(), notify: true, - } - } - }); + dog: 1, + }, + _b), + _a)); }; Bangle.on('accel', function (newAcc) { return acc = newAcc; }); Bangle.on('pressure', function (newBar) { return bar = newBar; }); diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index bc2335d17..d0bf13973 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -1,4 +1,11 @@ -const UPDATE_MILLISECONDS = 30 * 1000; +// TODO: emit other data beside HRM (via set/updateServices) + +const enum Intervals { + BLE_ADVERT = 30 * 1000, + BLE = 1000, + MENU_WAKE = 1000, + MENU_SLEEP = 30 * 1000, +} let acc: undefined | AccelData; let bar: undefined | PressureData; @@ -8,7 +15,6 @@ let mag: undefined | CompassData; type BtAdvMenu = "acc" | "bar" | "gps" | "hrm" | "mag" | "main"; let curMenu: BtAdvMenu = "main"; -let updateInterval: undefined | number; let mainMenuScroll = 0; const settings = { barEnabled: false, @@ -28,8 +34,7 @@ const showMainMenu = () => { }; mainMenu[""] = { - "title": "-- btadv --", - back: showMainMenu, + "title": "BLE Advert", }; (mainMenu[""] as any).scroll = mainMenuScroll; // typehack @@ -44,8 +49,12 @@ const showMainMenu = () => { curMenu = "main"; }; +const optionsCommon = { + back: showMainMenu, +}; + const accMenu = { - "": { "title" : "- Acceleration -" }, + "": { "title" : "Acceleration -", ...optionsCommon }, "Active": { value: "true (fixed)" }, "x": { value: "" }, "y": { value: "" }, @@ -53,7 +62,7 @@ const accMenu = { }; const barMenu = { - "": { "title" : "- Barometer -" }, + "": { "title" : "Barometer", ...optionsCommon }, "Active": { value: settings.barEnabled, onchange: (v: boolean) => updateSetting('barEnabled', v), @@ -64,7 +73,7 @@ const barMenu = { }; const gpsMenu = { - "": { "title" : "- GPS -" }, + "": { "title" : "GPS", ...optionsCommon }, "Active": { value: settings.gpsEnabled, onchange: (v: boolean) => updateSetting('gpsEnabled', v), @@ -77,7 +86,7 @@ const gpsMenu = { }; const hrmMenu = { - "": { "title" : "- Heart Rate -" }, + "": { "title" : "- Heart Rate -", ...optionsCommon }, "Active": { value: settings.hrmEnabled, onchange: (v: boolean) => updateSetting('hrmEnabled', v), @@ -87,7 +96,7 @@ const hrmMenu = { }; const magMenu = { - "": { "title" : "- Magnetometer -" }, + "": { "title" : "Magnetometer", ...optionsCommon }, "Active": { value: settings.magEnabled, onchange: (v: boolean) => updateSetting('magEnabled', v), @@ -149,8 +158,15 @@ const updateMenu = () => { } }; +const enum BleServ { + HRM = "0x180d", +} +const enum BleChar { + HRM = "0x2a37", +} + const updateBleAdvert = () => { - let bleAdvert: { [key: number]: undefined }; + let bleAdvert: { [key: string]: undefined }; if (!(bleAdvert = (Bangle as any).bleAdvert)) bleAdvert = (Bangle as any).bleAdvert = {}; @@ -168,13 +184,13 @@ const updateBleAdvert = () => { // } if (hrm) { - bleAdvert[0x180d] = undefined; // Advertise HRM + bleAdvert[BleServ.HRM] = undefined; // Advertise HRM // hack if (NRF.getSecurityStatus().connected) { NRF.updateServices({ - 0x180d: { - 0x2a37: { + [BleServ.HRM]: { + [BleChar.HRM]: { value: [0, hrm.bpm], notify: true, } @@ -192,14 +208,7 @@ const updateBleAdvert = () => { // mag = undefined; // } - const interval = UPDATE_MILLISECONDS; // / data.length; - - NRF.setAdvertising( - (Bangle as any).bleAdvert, - { - interval, - }, - ); + NRF.setAdvertising((Bangle as any).bleAdvert); }; // { @@ -288,8 +297,8 @@ const updateSetting = ( NRF.setServices( { - 0x180d: { - 0x2a37: { + [BleServ.HRM]: { + [BleChar.HRM]: { value: encodeHrm(), readable: true, notify: true, @@ -306,8 +315,8 @@ NRF.setServices( const updateServices = () => { NRF.updateServices({ - 0x180d: { - 0x2a37: { + [BleServ.HRM]: { + [BleChar.HRM]: { value: encodeHrm(), notify: true, } @@ -321,22 +330,27 @@ Bangle.on('GPS', newGps => gps = newGps); Bangle.on('HRM', newHrm => hrm = newHrm); Bangle.on('mag', newMag => mag = newMag); -enableSensors(); +// show menu first to have it reserve space for widgets (appRect) +Bangle.loadWidgets(); +Bangle.drawWidgets(); showMainMenu(); +enableSensors(); -// setInterval(updateAdvert, 10000); -setInterval(updateMenu, 1000); +setInterval(updateBleAdvert, Intervals.BLE_ADVERT); +const menuInterval = setInterval(updateMenu, Intervals.MENU_WAKE); +Bangle.on("lock", locked => { + changeInterval( + menuInterval, + locked ? Intervals.MENU_SLEEP : Intervals.MENU_WAKE, + ); +}); + +let serviceInterval: undefined | number; NRF.on("connect", () => { - updateInterval = setInterval(updateServices, 1000); + serviceInterval = setInterval(updateServices, Intervals.BLE); }); NRF.on("disconnect", () => { - clearInterval(updateInterval); - updateInterval = undefined; + clearInterval(serviceInterval); + serviceInterval = undefined; }); - -// TODO debounce -// TODO: emit other data beside HRM (via set/updateServices) -// FIXME: ui overlap -// Bangle.loadWidgets(); -// Bangle.drawWidgets(); From 628d791c98d3cb14b88222309a65d8e573ea867e Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 20 Jan 2023 22:28:44 +0000 Subject: [PATCH 0172/1725] btadv: update name --- apps/btadv/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/btadv/metadata.json b/apps/btadv/metadata.json index 2a02d8163..29ee65286 100644 --- a/apps/btadv/metadata.json +++ b/apps/btadv/metadata.json @@ -1,6 +1,6 @@ { "id": "btadv", - "name": "Export real-time sensor data over BLE", + "name": "btadv", "shortName": "btadv", "version": "0.01", "description": "Advertise & export live heart rate, accel, pressure, GPS & mag data over bluetooth", From b671ca5952612f9d6211e730a3b330542b9eb723 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 21 Jan 2023 00:14:02 +0000 Subject: [PATCH 0173/1725] btadv: hide stale values from menu --- apps/btadv/app.js | 55 ++++++++++++++++++++++++++++++++++++----------- apps/btadv/app.ts | 27 +++++++++++++++++++++++ 2 files changed, 69 insertions(+), 13 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 5071782b1..432fd2391 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -11,16 +11,12 @@ var __assign = (this && this.__assign) || function () { return __assign.apply(this, arguments); }; var _a, _b; -Bangle.loadWidgets(); -Bangle.drawWidgets(); -var ADVERT_MS = 30 * 1000; var acc; var bar; var gps; var hrm; var mag; var curMenu = "main"; -var updateInterval; var mainMenuScroll = 0; var settings = { barEnabled: false, @@ -110,6 +106,10 @@ var updateMenu = function () { accMenu.z.value = acc.z.toFixed(2); E.showMenu(accMenu); } + else if (accMenu.x.value !== "...") { + accMenu.x.value = accMenu.y.value = accMenu.z.value = "..."; + E.showMenu(accMenu); + } break; case "bar": if (bar) { @@ -118,6 +118,10 @@ var updateMenu = function () { barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; E.showMenu(barMenu); } + else if (barMenu.Altitude.value !== "...") { + barMenu.Altitude.value = barMenu.Press.value = barMenu.Temp.value = "..."; + E.showMenu(accMenu); + } break; case "gps": if (gps) { @@ -128,6 +132,11 @@ var updateMenu = function () { gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; E.showMenu(gpsMenu); } + else if (gpsMenu.Lat.value !== "...") { + gpsMenu.Lat.value = gpsMenu.Lon.value = gpsMenu.Altitude.value = + gpsMenu.Satellites.value = gpsMenu.HDOP.value = "..."; + E.showMenu(gpsMenu); + } break; case "hrm": if (hrm) { @@ -135,6 +144,10 @@ var updateMenu = function () { hrmMenu.Confidence.value = hrm.confidence + '%'; E.showMenu(hrmMenu); } + else if (hrmMenu.BPM.value !== "...") { + hrmMenu.BPM.value = hrmMenu.Confidence.value = "..."; + E.showMenu(hrmMenu); + } break; case "mag": if (mag) { @@ -144,6 +157,10 @@ var updateMenu = function () { magMenu.Heading.value = mag.heading.toFixed(1); E.showMenu(magMenu); } + else if (magMenu.x.value !== "...") { + magMenu.x.value = magMenu.y.value = magMenu.z.value = magMenu.Heading.value = "..."; + E.showMenu(magMenu); + } break; } }; @@ -166,9 +183,7 @@ var updateBleAdvert = function () { return; } } - NRF.setAdvertising(Bangle.bleAdvert, { - interval: ADVERT_MS, - }); + NRF.setAdvertising(Bangle.bleAdvert); }; var encodeHrm = function () { return [0, hrm ? hrm.bpm : 0]; }; var encodeBarServiceData = function (data) { @@ -215,9 +230,17 @@ var toByteArray = function (value, numberOfBytes, isSigned) { }; var enableSensors = function () { Bangle.setBarometerPower(settings.barEnabled, "btadv"); + if (!settings.barEnabled) + bar = undefined; Bangle.setGPSPower(settings.gpsEnabled, "btadv"); + if (!settings.gpsEnabled) + gps = undefined; Bangle.setHRMPower(settings.hrmEnabled, "btadv"); + if (!settings.hrmEnabled) + hrm = undefined; Bangle.setCompassPower(settings.magEnabled, "btadv"); + if (!settings.magEnabled) + mag = undefined; }; var updateSetting = function (name, value) { settings[name] = value; @@ -243,7 +266,6 @@ var updateServices = function () { _b["0x2a37"] = { value: encodeHrm(), notify: true, - dog: 1, }, _b), _a)); @@ -253,13 +275,20 @@ Bangle.on('pressure', function (newBar) { return bar = newBar; }); Bangle.on('GPS', function (newGps) { return gps = newGps; }); Bangle.on('HRM', function (newHrm) { return hrm = newHrm; }); Bangle.on('mag', function (newMag) { return mag = newMag; }); -enableSensors(); +Bangle.loadWidgets(); +Bangle.drawWidgets(); showMainMenu(); -setInterval(updateMenu, 1000); +enableSensors(); +setInterval(updateBleAdvert, 30000); +var menuInterval = setInterval(updateMenu, 1000); +Bangle.on("lock", function (locked) { + changeInterval(menuInterval, locked ? 30000 : 1000); +}); +var serviceInterval; NRF.on("connect", function () { - updateInterval = setInterval(updateServices, 1000); + serviceInterval = setInterval(updateServices, 1000); }); NRF.on("disconnect", function () { - clearInterval(updateInterval); - updateInterval = undefined; + clearInterval(serviceInterval); + serviceInterval = undefined; }); diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index d0bf13973..c0547c225 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -115,6 +115,9 @@ const updateMenu = () => { accMenu.y.value = acc.y.toFixed(2); accMenu.z.value = acc.z.toFixed(2); E.showMenu(accMenu); + } else if (accMenu.x.value !== "...") { + accMenu.x.value = accMenu.y.value = accMenu.z.value = "..."; + E.showMenu(accMenu); } break; @@ -124,6 +127,9 @@ const updateMenu = () => { barMenu.Press.value = bar.pressure.toFixed(1) + 'mbar'; barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; E.showMenu(barMenu); + } else if (barMenu.Altitude.value !== "...") { + barMenu.Altitude.value = barMenu.Press.value = barMenu.Temp.value = "..."; + E.showMenu(accMenu); } break; @@ -135,6 +141,10 @@ const updateMenu = () => { gpsMenu.Satellites.value = "" + gps.satellites; gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; E.showMenu(gpsMenu); + } else if (gpsMenu.Lat.value !== "...") { + gpsMenu.Lat.value = gpsMenu.Lon.value = gpsMenu.Altitude.value = + gpsMenu.Satellites.value = gpsMenu.HDOP.value = "..."; + E.showMenu(gpsMenu); } break; @@ -143,6 +153,9 @@ const updateMenu = () => { hrmMenu.BPM.value = "" + hrm.bpm; hrmMenu.Confidence.value = hrm.confidence + '%'; E.showMenu(hrmMenu); + } else if (hrmMenu.BPM.value !== "...") { + hrmMenu.BPM.value = hrmMenu.Confidence.value = "..."; + E.showMenu(hrmMenu); } break; @@ -153,6 +166,9 @@ const updateMenu = () => { magMenu.z.value = "" + mag.z; magMenu.Heading.value = mag.heading.toFixed(1); E.showMenu(magMenu); + } else if (magMenu.x.value !== "...") { + magMenu.x.value = magMenu.y.value = magMenu.z.value = magMenu.Heading.value = "..."; + E.showMenu(magMenu); } break; } @@ -279,9 +295,20 @@ const toByteArray = (value: number, numberOfBytes: number, isSigned: boolean) => const enableSensors = () => { Bangle.setBarometerPower(settings.barEnabled, "btadv"); + if (!settings.barEnabled) + bar = undefined; + Bangle.setGPSPower(settings.gpsEnabled, "btadv"); + if (!settings.gpsEnabled) + gps = undefined; + Bangle.setHRMPower(settings.hrmEnabled, "btadv"); + if (!settings.hrmEnabled) + hrm = undefined; + Bangle.setCompassPower(settings.magEnabled, "btadv"); + if (!settings.magEnabled) + mag = undefined; }; const updateSetting = ( From 48f950f0b93a8f44ee982029d2dcf417075d87c2 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 22 Jan 2023 21:58:44 +0000 Subject: [PATCH 0174/1725] btadv: icon changes --- apps/btadv/icon.js | 2 +- apps/btadv/icon.png | Bin 1538 -> 1615 bytes apps/btadv/icon.xcf | Bin 0 -> 7623 bytes 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 apps/btadv/icon.xcf diff --git a/apps/btadv/icon.js b/apps/btadv/icon.js index 374e0d90a..03de6f5fd 100644 --- a/apps/btadv/icon.js +++ b/apps/btadv/icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("mEwwkCkQA/ACkAC65vWRYIXXGCq8CC6sQGCotBGB4OFAoMgGBoOGDoQwOBwoECGCgcDEIQyLGAgXHEYY2GGAhHGEYYHBGBR3GCYYXIFAg2FkKXMOAgECJ4ZLDMAkgGAYADgRADC5J1EAAZYEDoYRCFgRuFEggQDgAXEDwwwDHQoXHAwr0HC4ZnENxAvJCAZXFBohfIC4rcFR5MQgQHDBIRXDX5hVId5ydEeIqYDSRIXIGoY9EEQYQFLoo6DGwwXKXQpmGLAwuHC5CHEC4g6GEAsgC5AuFC4cQFgoADII4FDkIgFABwXBFxQXMFyh9CFyj6HC6QWULqytHAH4AjA=")) +require("heatshrink").decompress(atob("mEwwZC/gECoARQpARQpIRRkARQkgRRwBrPkmQBpIvDCIMEyQQIgIvDR4WSSRIvDCIUSSRIvDCISSCJRAvCCIoaDCIgvCGooaCiRNEDoRZFBwQRFgDCBPooOCOI0JkihDhApBHARxDgiSCyTFCHYQRGUIQRDHYIRCHYIRBiChDBAJKBHYICBpIRDyQyCSQQgBCJNBCIbCDCIZNDF4R0DEYwRCIIa5BI5ARDyAdCNZIFCCIKYBR5QRBVoJ6BWZY7CTwTXJWYQRFfZYRFRgQRCAoT4DCIgICCIQpCHARlCfYRBDCIhlDCIZuDGor1BCIgCBLgZZEAAiABEYIGCPooALUIYRQVQYRLdIQRPKAQROCBzjELJ4RPAHoA==")) diff --git a/apps/btadv/icon.png b/apps/btadv/icon.png index 4df13cd235e4388e23cb37cbdfa0c2a0833f772a..28867f31eabea9fe8ff1aa28fba5538faa2d4454 100644 GIT binary patch delta 513 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 literal 0 HcmV?d00001 From c36a6a5fbb070cbc3d5d69eaf074f17345500db4 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 22 Jan 2023 21:59:27 +0000 Subject: [PATCH 0175/1725] btadv: handle remaining sensors --- apps/btadv/app.js | 240 +++++++++++++++++--------- apps/btadv/app.ts | 417 +++++++++++++++++++++++++++++++--------------- 2 files changed, 447 insertions(+), 210 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 432fd2391..43fd4d062 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -10,12 +10,17 @@ var __assign = (this && this.__assign) || function () { }; return __assign.apply(this, arguments); }; -var _a, _b; +var services = ["0x180d", "0x181a", "0x1819"]; var acc; var bar; var gps; var hrm; var mag; +var haveNewAcc = false; +var haveNewBar = false; +var haveNewGps = false; +var haveNewHrm = false; +var haveNewMag = false; var curMenu = "main"; var mainMenuScroll = 0; var settings = { @@ -49,7 +54,7 @@ var optionsCommon = { back: showMainMenu, }; var accMenu = { - "": __assign({ "title": "Acceleration -" }, optionsCommon), + "": __assign({ "title": "Acceleration" }, optionsCommon), "Active": { value: "true (fixed)" }, "x": { value: "" }, "y": { value: "" }, @@ -78,7 +83,7 @@ var gpsMenu = { "HDOP": { value: "" }, }; var hrmMenu = { - "": __assign({ "title": "- Heart Rate -" }, optionsCommon), + "": __assign({ "title": "Heart Rate" }, optionsCommon), "Active": { value: settings.hrmEnabled, onchange: function (v) { return updateSetting('hrmEnabled', v); }, @@ -164,59 +169,39 @@ var updateMenu = function () { break; } }; -var updateBleAdvert = function () { - var _a, _b; - var bleAdvert; - if (!(bleAdvert = Bangle.bleAdvert)) - bleAdvert = Bangle.bleAdvert = {}; - if (hrm) { - bleAdvert["0x180d"] = undefined; - if (NRF.getSecurityStatus().connected) { - NRF.updateServices((_a = {}, - _a["0x180d"] = (_b = {}, - _b["0x2a37"] = { - value: [0, hrm.bpm], - notify: true, - }, - _b), - _a)); - return; - } - } - NRF.setAdvertising(Bangle.bleAdvert); +var encodeHrm = function (hrm) { + return [0, hrm ? hrm.bpm : 0]; }; -var encodeHrm = function () { return [0, hrm ? hrm.bpm : 0]; }; -var encodeBarServiceData = function (data) { - var t = toByteArray(Math.round(data.temperature * 100), 2, true); - var p = toByteArray(Math.round(data.pressure * 1000), 4, false); - var e = toByteArray(Math.round(data.altitude * 100), 3, true); - return [ - 0x02, 0x01, 0x06, - 0x05, 0x16, 0x6e, 0x2a, t[0], t[1], - 0x07, 0x16, 0x6d, 0x2a, p[0], p[1], p[2], p[3], - 0x06, 0x16, 0x6c, 0x2a, e[0], e[1], e[2] - ]; +var encodePressure = function (data) { + return toByteArray(Math.round(data.pressure * 1000), 4, false); }; -var encodeGpsServiceData = function (data) { - var s = toByteArray(Math.round(1000 * data.speed / 36), 2, false); +var encodeElevation = function (data) { + return toByteArray(Math.round(data.altitude * 100), 3, true); +}; +var encodeTemp = function (data) { + return toByteArray(Math.round(data.temperature * 100), 2, true); +}; +var encodeGps = function (data) { + var speed = toByteArray(Math.round(1000 * data.speed / 36), 2, false); var lat = toByteArray(Math.round(data.lat * 10000000), 4, true); var lon = toByteArray(Math.round(data.lon * 10000000), 4, true); - var e = toByteArray(Math.round(data.alt * 100), 3, true); - var h = toByteArray(Math.round(data.course * 100), 2, false); + var elevation = toByteArray(Math.round(data.alt * 100), 3, true); + var heading = toByteArray(Math.round(data.course * 100), 2, false); return [ - 0x02, 0x01, 0x06, - 0x14, 0x16, 0x67, 0x2a, 0x9d, 0x02, s[0], s[1], lat[0], lat[1], lat[2], - lat[3], lon[0], lon[1], lon[2], lon[3], e[0], e[1], e[2], h[0], h[1] + 0x9d, + 0x2, + speed[0], speed[1], + lat[0], lat[1], lat[2], lat[3], + lon[0], lon[1], lon[2], lon[3], + elevation[0], elevation[1], elevation[2], + heading[0], heading[1] ]; }; -var encodeMagServiceData = function (data) { +var encodeMag = function (data) { var x = toByteArray(data.x, 2, true); var y = toByteArray(data.y, 2, true); var z = toByteArray(data.z, 2, true); - return [ - 0x02, 0x01, 0x06, - 0x09, 0x16, 0xa1, 0x2a, x[0], x[1], y[0], y[1], z[0], z[1] - ]; + return [x[0], x[1], y[0], y[1], z[0], z[1]]; }; var toByteArray = function (value, numberOfBytes, isSigned) { var byteArray = new Array(numberOfBytes); @@ -241,54 +226,149 @@ var enableSensors = function () { Bangle.setCompassPower(settings.magEnabled, "btadv"); if (!settings.magEnabled) mag = undefined; + updateBleAdvert(); + updateServices(); }; var updateSetting = function (name, value) { settings[name] = value; enableSensors(); }; -NRF.setServices((_a = {}, - _a["0x180d"] = (_b = {}, - _b["0x2a37"] = { - value: encodeHrm(), - readable: true, - notify: true, - }, - _b), - _a), { - advertise: [ - '180d', - ] -}); -var updateServices = function () { - var _a, _b; - NRF.updateServices((_a = {}, - _a["0x180d"] = (_b = {}, - _b["0x2a37"] = { - value: encodeHrm(), - notify: true, - }, - _b), - _a)); +var haveNew = function () { + return haveNewAcc || haveNewBar || haveNewGps || haveNewHrm || haveNewMag; }; -Bangle.on('accel', function (newAcc) { return acc = newAcc; }); -Bangle.on('pressure', function (newBar) { return bar = newBar; }); -Bangle.on('GPS', function (newGps) { return gps = newGps; }); -Bangle.on('HRM', function (newHrm) { return hrm = newHrm; }); -Bangle.on('mag', function (newMag) { return mag = newMag; }); +var serviceActive = function (serv) { + switch (serv) { + case "0x180d": return !!hrm; + case "0x181a": return !!(bar || mag); + case "0x1819": return !!(gps && gps.lat && gps.lon); + } +}; +var serviceToAdvert = function (serv) { + var _a, _b; + switch (serv) { + case "0x180d": + if (hrm) { + return _a = {}, + _a["0x2a37"] = { + value: encodeHrm(hrm), + readable: true, + notify: true, + }, + _a; + } + return {}; + case "0x1819": + if (gps) { + return _b = {}, + _b["0x2a67"] = { + value: encodeGps(gps), + readable: true, + notify: true, + }, + _b; + } + return {}; + case "0x181a": { + var o = {}; + if (bar) { + o["0x2a6c"] = { + value: encodeElevation(bar), + readable: true, + notify: true, + }; + o["0x2A1F"] = { + value: encodeTemp(bar), + readable: true, + notify: true, + }; + o["0x2a6d"] = { + value: encodePressure(bar), + readable: true, + notify: true, + }; + } + if (mag) { + o["0x2aa1"] = { + value: encodeMag(mag), + readable: true, + notify: true, + }; + } + ; + return o; + } + } +}; +var getBleAdvert = function (map) { + var advert = {}; + for (var _i = 0, services_1 = services; _i < services_1.length; _i++) { + var serv = services_1[_i]; + if (serviceActive(serv)) { + advert[serv] = map(serv); + } + } + return advert; +}; +var updateBleAdvert = function () { + var bleAdvert; + if (!(bleAdvert = Bangle.bleAdvert)) { + bleAdvert = getBleAdvert(function (_) { return undefined; }); + Bangle.bleAdvert = bleAdvert; + } + try { + NRF.setAdvertising(bleAdvert); + } + catch (e) { + console.log("setAdvertising(): " + e); + } +}; +var updateServices = function () { + var newAdvert = getBleAdvert(serviceToAdvert); + if (NRF.getSecurityStatus().connected) { + NRF.updateServices(newAdvert); + } + else { + NRF.setServices(newAdvert, { + advertise: Object + .keys(newAdvert) + .map(function (k) { return k.replace("0x", ""); }) + }); + } +}; +Bangle.on('accel', function (newAcc) { acc = newAcc; haveNewAcc = true; }); +Bangle.on('pressure', function (newBar) { bar = newBar; haveNewBar = true; }); +Bangle.on('GPS', function (newGps) { gps = newGps; haveNewGps = true; }); +Bangle.on('HRM', function (newHrm) { hrm = newHrm; haveNewHrm = true; }); +Bangle.on('mag', function (newMag) { mag = newMag; haveNewMag = true; }); Bangle.loadWidgets(); Bangle.drawWidgets(); showMainMenu(); -enableSensors(); -setInterval(updateBleAdvert, 30000); var menuInterval = setInterval(updateMenu, 1000); Bangle.on("lock", function (locked) { changeInterval(menuInterval, locked ? 30000 : 1000); }); -var serviceInterval; +enableSensors(); +var iv; +var setIntervals = function (connected) { + if (connected) { + if (iv) { + changeInterval(iv, 1000); + } + else { + iv = setInterval(function () { + if (haveNew()) + updateServices(); + }, 1000); + } + } + else if (iv) { + clearInterval(iv); + } +}; +setIntervals(NRF.getSecurityStatus().connected); NRF.on("connect", function () { - serviceInterval = setInterval(updateServices, 1000); + setIntervals(true); }); NRF.on("disconnect", function () { - clearInterval(serviceInterval); - serviceInterval = undefined; + setIntervals(false); }); diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index c0547c225..08212cc16 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -1,17 +1,81 @@ -// TODO: emit other data beside HRM (via set/updateServices) - const enum Intervals { - BLE_ADVERT = 30 * 1000, + BLE_ADVERT = 60 * 1000, BLE = 1000, MENU_WAKE = 1000, MENU_SLEEP = 30 * 1000, } +type Hrm = { bpm: number, confidence: number }; + +// https://github.com/sputnikdev/bluetooth-gatt-parser/blob/master/src/main/resources/gatt/ +const enum BleServ { + // org.bluetooth.service.heart_rate + // contains: HRM + HRM = "0x180d", + + // org.bluetooth.service.environmental_sensing + // contains: Elevation, Temp(Celsius), Pressure, Mag + EnvSensing = "0x181a", + + // org.bluetooth.service.location_and_navigation + // contains: LocationAndSpeed + LocationAndNavigation = "0x1819", + + // Acc // none known for this +} + +const services = [BleServ.HRM, BleServ.EnvSensing, BleServ.LocationAndNavigation]; + +const enum BleChar { + // org.bluetooth.characteristic.heart_rate_measurement + // + HRM = "0x2a37", + + // org.bluetooth.characteristic.elevation + // s24, meters 0.01 + Elevation = "0x2a6c", + + // org.bluetooth.characteristic.temperature + // s16 *10^2 + Temp = "0x2a6e", + // org.bluetooth.characteristic.temperature_celsius + // s16 *10^2 + TempCelsius = "0x2A1F", + + // org.bluetooth.characteristic.pressure + // u32 *10 + Pressure = "0x2a6d", + + // org.bluetooth.characteristic.location_and_speed + // + LocationAndSpeed = "0x2a67", + + // org.bluetooth.characteristic.magnetic_flux_density_3d + // s16: x, y, z, tesla (10^-7) + MagneticFlux3D = "0x2aa1", +} + +type BleCharAdvert = { + value: Array, + readable?: true, + notify?: true, + indicate?: true, // notify + ACK +}; + +type BleServAdvert = { + [key in BleChar]?: BleCharAdvert; +}; + let acc: undefined | AccelData; let bar: undefined | PressureData; let gps: undefined | GPSFix; -let hrm: undefined | { bpm: number, confidence: number }; +let hrm: undefined | Hrm; let mag: undefined | CompassData; +let haveNewAcc = false; +let haveNewBar = false; +let haveNewGps = false; +let haveNewHrm = false; +let haveNewMag = false; type BtAdvMenu = "acc" | "bar" | "gps" | "hrm" | "mag" | "main"; let curMenu: BtAdvMenu = "main"; @@ -54,7 +118,7 @@ const optionsCommon = { }; const accMenu = { - "": { "title" : "Acceleration -", ...optionsCommon }, + "": { "title" : "Acceleration", ...optionsCommon }, "Active": { value: "true (fixed)" }, "x": { value: "" }, "y": { value: "" }, @@ -86,7 +150,7 @@ const gpsMenu = { }; const hrmMenu = { - "": { "title" : "- Heart Rate -", ...optionsCommon }, + "": { "title" : "Heart Rate", ...optionsCommon }, "Active": { value: settings.hrmEnabled, onchange: (v: boolean) => updateSetting('hrmEnabled', v), @@ -174,109 +238,91 @@ const updateMenu = () => { } }; -const enum BleServ { - HRM = "0x180d", -} -const enum BleChar { - HRM = "0x2a37", -} - -const updateBleAdvert = () => { - let bleAdvert: { [key: string]: undefined }; - - if (!(bleAdvert = (Bangle as any).bleAdvert)) - bleAdvert = (Bangle as any).bleAdvert = {}; - - // const data = [ APP_ADVERTISING_DATA ]; // Always advertise at least app name - - // if (bar) { - // data.push(encodeBarServiceData(bar)); - // bar = undefined; +const encodeHrm = (hrm: Hrm) => + // { + // flags: u8, + // bytes: [u8...] // } - - // if (gps && gps.lat && gps.lon) { - // data.push(encodeGpsServiceData(gps)); - // gps = undefined; + // flags { + // 1 << 0: 16bit bpm + // 1 << 1: sensor contact available + // 1 << 2: sensor contact boolean + // 1 << 3: energy expended, next 16 bits + // 1 << 4: "rr" data available, u16s, intervals // } + [0, hrm ? hrm.bpm : 0]; - if (hrm) { - bleAdvert[BleServ.HRM] = undefined; // Advertise HRM +const encodePressure = (data: PressureData) => + toByteArray(Math.round(data.pressure * 1000), 4, false); - // hack - if (NRF.getSecurityStatus().connected) { - NRF.updateServices({ - [BleServ.HRM]: { - [BleChar.HRM]: { - value: [0, hrm.bpm], - notify: true, - } - } - }) - return; - } +const encodeElevation = (data: PressureData) => + toByteArray(Math.round(data.altitude * 100), 3, true); - // data.push({ 0x2a37: [ 0, hrm.bpm ] }); - // hrm = undefined; - } +const encodeTemp = (data: PressureData) => + toByteArray(Math.round(data.temperature * 100), 2, true); - // if (mag) { - // data.push(encodeMagServiceData(mag)); - // mag = undefined; - // } +const encodeGps = (data: GPSFix) => { + // flags: 16 bits + // bit 0: Instantaneous Speed Present + // bit 1: Total Distance Present + // bit 2: Location Present + // bit 3: Elevation Present + // bit 4: Heading Present + // bit 5: Rolling Time Present + // bit 6: UTC Time Present + // + // bit 7-8: position status + // 0 (0b00): no position + // 1 (0b01): position ok + // 2 (0b10): estimated position + // 3 (0b11): last known position + // + // bit 9: speed & distance format + // 0: 2d + // 1: 3d + // + // bit 10-11: elevation source + // 0: Positioning System + // 1: Barometric Air Pressure + // 2: Database Service (or similiar) + // 3: Other + // + // bit 12: Heading Source + // 0: Heading based on movement + // 1: Heading based on magnetic compass + // + // speed: u16 (m/s), 1/100 + // distance: u24, 1/10 + // lat: s32, 1/10^7 + // lon: s32, 1/10^7 + // elevation: s24, 1/100 + // heading: u16 (deg), 1/100 + // rolling time: u8 (s) + // utc time: org.bluetooth.characteristic.date_time - NRF.setAdvertising((Bangle as any).bleAdvert); -}; - -// { -// flags: u8, -// bytes: [u8...] -// } -// flags { -// 1 << 0: 16bit bpm -// 1 << 1: sensor contact available -// 1 << 2: sensor contact boolean -// 1 << 3: energy expended, next 16 bits -// 1 << 4: "rr" data available, u16s, intervals -// } -const encodeHrm = () => [0, hrm ? hrm.bpm : 0]; - -const encodeBarServiceData = (data: PressureData) => { - const t = toByteArray(Math.round(data.temperature * 100), 2, true); - const p = toByteArray(Math.round(data.pressure * 1000), 4, false); - const e = toByteArray(Math.round(data.altitude * 100), 3, true); - - return [ - 0x02, 0x01, 0x06, // Flags - 0x05, 0x16, 0x6e, 0x2a, t[0], t[1], // Temperature - 0x07, 0x16, 0x6d, 0x2a, p[0], p[1], p[2], p[3], // Pressure - 0x06, 0x16, 0x6c, 0x2a, e[0], e[1], e[2] // Elevation - ]; -}; - -const encodeGpsServiceData = (data: GPSFix) => { - const s = toByteArray(Math.round(1000 * data.speed / 36), 2, false); + const speed = toByteArray(Math.round(1000 * data.speed / 36), 2, false); const lat = toByteArray(Math.round(data.lat * 10000000), 4, true); const lon = toByteArray(Math.round(data.lon * 10000000), 4, true); - const e = toByteArray(Math.round(data.alt * 100), 3, true); - const h = toByteArray(Math.round(data.course * 100), 2, false); + const elevation = toByteArray(Math.round(data.alt * 100), 3, true); + const heading = toByteArray(Math.round(data.course * 100), 2, false); return [ - 0x02, 0x01, 0x06, // Flags - 0x14, 0x16, 0x67, 0x2a, 0x9d, 0x02, s[0], s[1], lat[0], lat[1], lat[2], - lat[3], lon[0], lon[1], lon[2], lon[3], e[0], e[1], e[2], h[0], h[1] - // Location and Speed + 0x9d, // 0b10011101: speed, location, elevation, heading [...] + 0x2, // 0b00000010: position ok, 3d speed/distance(?) + speed[0]!, speed[1]!, + lat[0]!, lat[1]!, lat[2]!, lat[3]!, + lon[0]!, lon[1]!, lon[2]!, lon[3]!, + elevation[0]!, elevation[1]!, elevation[2]!, + heading[0]!, heading[1]! ]; }; -const encodeMagServiceData = (data: CompassData) => { +const encodeMag = (data: CompassData) => { const x = toByteArray(data.x, 2, true); const y = toByteArray(data.y, 2, true); const z = toByteArray(data.z, 2, true); - return [ - 0x02, 0x01, 0x06, // Flags - 0x09, 0x16, 0xa1, 0x2a, x[0], x[1], y[0], y[1], z[0], z[1] // Mag 3D - ]; + return [ x[0]!, x[1]!, y[0]!, y[1]!, z[0]!, z[1]! ]; }; const toByteArray = (value: number, numberOfBytes: number, isSigned: boolean) => { @@ -309,6 +355,9 @@ const enableSensors = () => { Bangle.setCompassPower(settings.magEnabled, "btadv"); if (!settings.magEnabled) mag = undefined; + + updateBleAdvert(); + updateServices(); }; const updateSetting = ( @@ -322,49 +371,136 @@ const updateSetting = ( // ---------------------------- -NRF.setServices( - { - [BleServ.HRM]: { - [BleChar.HRM]: { - value: encodeHrm(), - readable: true, - notify: true, - //indicate: true, // notify + ACK - }, - }, - }, - { - advertise: [ - '180d', - ] - }, -); +const haveNew = () => + haveNewAcc || haveNewBar || haveNewGps || haveNewHrm || haveNewMag; -const updateServices = () => { - NRF.updateServices({ - [BleServ.HRM]: { - [BleChar.HRM]: { - value: encodeHrm(), - notify: true, - } - } - }); +const serviceActive = (serv: BleServ): boolean => { + switch (serv) { + case BleServ.HRM: return !!hrm; + case BleServ.EnvSensing: return !!(bar || mag); + case BleServ.LocationAndNavigation: return !!(gps && gps.lat && gps.lon); + } }; -Bangle.on('accel', newAcc => acc = newAcc); -Bangle.on('pressure', newBar => bar = newBar); -Bangle.on('GPS', newGps => gps = newGps); -Bangle.on('HRM', newHrm => hrm = newHrm); -Bangle.on('mag', newMag => mag = newMag); +const serviceToAdvert = (serv: BleServ): BleServAdvert => { + switch (serv) { + case BleServ.HRM: + if (hrm) { + return { + [BleChar.HRM]: { + value: encodeHrm(hrm), + readable: true, + notify: true, + }, + }; + } + return {}; + + case BleServ.LocationAndNavigation: + if (gps) { + return { + [BleChar.LocationAndSpeed]: { + value: encodeGps(gps), + readable: true, + notify: true, + }, + }; + } + return {}; + + case BleServ.EnvSensing: { + const o: BleServAdvert = {}; + + if (bar) { + o[BleChar.Elevation] = { + value: encodeElevation(bar), + readable: true, + notify: true, + }; + o[BleChar.TempCelsius] = { + value: encodeTemp(bar), + readable: true, + notify: true, + }; + o[BleChar.Pressure] = { + value: encodePressure(bar), + readable: true, + notify: true, + }; + } + + if (mag) { + o[BleChar.MagneticFlux3D] = { + value: encodeMag(mag), + readable: true, + notify: true, + }; + }; + + return o; + } + } +}; + +const getBleAdvert = (map: (s: BleServ) => T) => { + const advert: { [key in BleServ]?: T } = {}; + + for (const serv of services) { + if (serviceActive(serv)) { + advert[serv] = map(serv); + } + } + + return advert; +}; + +// call this when settings changes +const updateBleAdvert = () => { + let bleAdvert: ReturnType>; + + if (!(bleAdvert = (Bangle as any).bleAdvert)) { + bleAdvert = getBleAdvert(_ => undefined); + + (Bangle as any).bleAdvert = bleAdvert; + } + + try { + NRF.setAdvertising(bleAdvert); + } catch (e) { + console.log("setAdvertising(): " + e); + } +}; + +// call this when settings changes, or when we have new data to send/serve +const updateServices = () => { + const newAdvert = getBleAdvert(serviceToAdvert); + + if (NRF.getSecurityStatus().connected) { + NRF.updateServices(newAdvert); + } else { + NRF.setServices( + newAdvert, + { + advertise: Object + .keys(newAdvert) + .map((k: string) => k.replace("0x", "")) + }, + ); + } +}; + +Bangle.on('accel', newAcc => { acc = newAcc; haveNewAcc = true; }); +Bangle.on('pressure', newBar => { bar = newBar; haveNewBar = true; }); +Bangle.on('GPS', newGps => { gps = newGps; haveNewGps = true; }); +Bangle.on('HRM', newHrm => { hrm = newHrm; haveNewHrm = true; }); +Bangle.on('mag', newMag => { mag = newMag; haveNewMag = true; }); // show menu first to have it reserve space for widgets (appRect) Bangle.loadWidgets(); Bangle.drawWidgets(); + +// show UI showMainMenu(); -enableSensors(); - -setInterval(updateBleAdvert, Intervals.BLE_ADVERT); - const menuInterval = setInterval(updateMenu, Intervals.MENU_WAKE); Bangle.on("lock", locked => { changeInterval( @@ -373,11 +509,32 @@ Bangle.on("lock", locked => { ); }); -let serviceInterval: undefined | number; +// turn things on +enableSensors(); // calls updateBleAdvert + +let iv: undefined | number; +const setIntervals = (connected: boolean) => { + if (connected) { + if (iv) { + changeInterval(iv, Intervals.BLE); + } else { + iv = setInterval( + () => { + if (haveNew()) + updateServices(); + }, + Intervals.BLE + ); + } + } else if (iv) { + clearInterval(iv); + } +}; + +setIntervals(NRF.getSecurityStatus().connected); NRF.on("connect", () => { - serviceInterval = setInterval(updateServices, Intervals.BLE); + setIntervals(true); }); NRF.on("disconnect", () => { - clearInterval(serviceInterval); - serviceInterval = undefined; + setIntervals(false); }); From d9724ab0e3bdcad7403d6d553b14ba2f220763f8 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 26 Jan 2023 23:00:24 +0000 Subject: [PATCH 0176/1725] btadv: add todo --- apps/btadv/app.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 08212cc16..a0bd9054d 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -1,3 +1,10 @@ +// TODO: +// [ ] fix format of EnvSensing data +// [-] handle NaNs in data +// [x] fix sending of HRM / changing service? +// [.] fix menu scrolling/jumping +// [ ] fix resetting to accel menu + const enum Intervals { BLE_ADVERT = 60 * 1000, BLE = 1000, From fab41e0bb58d55b44c708b2f4f632f8acffe670b Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 26 Jan 2023 23:03:05 +0000 Subject: [PATCH 0177/1725] btadv: working multi-service advertising & transfer --- apps/btadv/app.ts | 159 +++++++++++++++++++++++++++------------------- 1 file changed, 93 insertions(+), 66 deletions(-) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index a0bd9054d..d7025291d 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -63,16 +63,22 @@ const enum BleChar { } type BleCharAdvert = { - value: Array, + value?: Array, readable?: true, notify?: true, indicate?: true, // notify + ACK + maxLen?: number, }; type BleServAdvert = { [key in BleChar]?: BleCharAdvert; }; +type LenFunc = { + (_: T): Array, + maxLen: number, +} + let acc: undefined | AccelData; let bar: undefined | PressureData; let gps: undefined | GPSFix; @@ -245,7 +251,7 @@ const updateMenu = () => { } }; -const encodeHrm = (hrm: Hrm) => +const encodeHrm: LenFunc = (hrm: Hrm) => // { // flags: u8, // bytes: [u8...] @@ -257,18 +263,22 @@ const encodeHrm = (hrm: Hrm) => // 1 << 3: energy expended, next 16 bits // 1 << 4: "rr" data available, u16s, intervals // } - [0, hrm ? hrm.bpm : 0]; + [0, hrm.bpm]; +encodeHrm.maxLen = 2; -const encodePressure = (data: PressureData) => +const encodePressure: LenFunc = (data: PressureData) => toByteArray(Math.round(data.pressure * 1000), 4, false); +encodePressure.maxLen = 4; -const encodeElevation = (data: PressureData) => +const encodeElevation: LenFunc = (data: PressureData) => toByteArray(Math.round(data.altitude * 100), 3, true); +encodeElevation.maxLen = 3; -const encodeTemp = (data: PressureData) => +const encodeTemp: LenFunc = (data: PressureData) => toByteArray(Math.round(data.temperature * 100), 2, true); +encodeTemp.maxLen = 2; -const encodeGps = (data: GPSFix) => { +const encodeGps: LenFunc = (data: GPSFix) => { // flags: 16 bits // bit 0: Instantaneous Speed Present // bit 1: Total Distance Present @@ -323,14 +333,16 @@ const encodeGps = (data: GPSFix) => { heading[0]!, heading[1]! ]; }; +encodeGps.maxLen = 17; -const encodeMag = (data: CompassData) => { +const encodeMag: LenFunc = (data: CompassData) => { const x = toByteArray(data.x, 2, true); const y = toByteArray(data.y, 2, true); const z = toByteArray(data.z, 2, true); return [ x[0]!, x[1]!, y[0]!, y[1]!, z[0]!, z[1]! ]; }; +encodeMag.maxLen = 6; const toByteArray = (value: number, numberOfBytes: number, isSigned: boolean) => { const byteArray: Array = new Array(numberOfBytes); @@ -362,9 +374,6 @@ const enableSensors = () => { Bangle.setCompassPower(settings.magEnabled, "btadv"); if (!settings.magEnabled) mag = undefined; - - updateBleAdvert(); - updateServices(); }; const updateSetting = ( @@ -378,9 +387,6 @@ const updateSetting = ( // ---------------------------- -const haveNew = () => - haveNewAcc || haveNewBar || haveNewGps || haveNewHrm || haveNewMag; - const serviceActive = (serv: BleServ): boolean => { switch (serv) { case BleServ.HRM: return !!hrm; @@ -389,71 +395,87 @@ const serviceActive = (serv: BleServ): boolean => { } }; -const serviceToAdvert = (serv: BleServ): BleServAdvert => { +const serviceToAdvert = (serv: BleServ, initial = false): BleServAdvert => { switch (serv) { case BleServ.HRM: - if (hrm) { - return { - [BleChar.HRM]: { - value: encodeHrm(hrm), - readable: true, - notify: true, - }, + if (hrm || initial) { + const o: BleCharAdvert = { + maxLen: encodeHrm.maxLen, + readable: true, + notify: true, }; + if (hrm) { + o.value = encodeHrm(hrm); + } + + return { [BleChar.HRM]: o }; } return {}; case BleServ.LocationAndNavigation: - if (gps) { - return { - [BleChar.LocationAndSpeed]: { - value: encodeGps(gps), - readable: true, - notify: true, - }, + if (gps || initial) { + const o: BleCharAdvert = { + maxLen: encodeGps.maxLen, + readable: true, + notify: true, }; + if (gps) { + o.value = encodeGps(gps); + } + + return { [BleChar.LocationAndSpeed]: o }; } return {}; case BleServ.EnvSensing: { const o: BleServAdvert = {}; - if (bar) { + if (bar || initial) { o[BleChar.Elevation] = { - value: encodeElevation(bar), + maxLen: encodeElevation.maxLen, readable: true, notify: true, }; o[BleChar.TempCelsius] = { - value: encodeTemp(bar), + maxLen: encodeTemp.maxLen, readable: true, notify: true, }; o[BleChar.Pressure] = { - value: encodePressure(bar), + maxLen: encodePressure.maxLen, readable: true, notify: true, }; + + if (bar) { + o[BleChar.Elevation]!.value = encodeElevation(bar); + o[BleChar.TempCelsius]!.value = encodeTemp(bar); + o[BleChar.Pressure]!.value = encodePressure(bar); + } } - if (mag) { - o[BleChar.MagneticFlux3D] = { - value: encodeMag(mag), - readable: true, - notify: true, - }; - }; + if (mag || initial) { + o[BleChar.MagneticFlux3D] = { + maxLen: encodeMag.maxLen, + readable: true, + notify: true, + }; + + if (mag) { + o[BleChar.MagneticFlux3D]!.value = encodeMag(mag); + } + } return o; } } }; -const getBleAdvert = (map: (s: BleServ) => T) => { +const getBleAdvert = (map: (s: BleServ) => T, all = false) => { const advert: { [key in BleServ]?: T } = {}; for (const serv of services) { - if (serviceActive(serv)) { + if (all || serviceActive(serv)) { advert[serv] = map(serv); } } @@ -461,7 +483,7 @@ const getBleAdvert = (map: (s: BleServ) => T) => { return advert; }; -// call this when settings changes +// TODO: call this at the start, set the advert const updateBleAdvert = () => { let bleAdvert: ReturnType>; @@ -482,27 +504,16 @@ const updateBleAdvert = () => { const updateServices = () => { const newAdvert = getBleAdvert(serviceToAdvert); - if (NRF.getSecurityStatus().connected) { - NRF.updateServices(newAdvert); - } else { - NRF.setServices( - newAdvert, - { - advertise: Object - .keys(newAdvert) - .map((k: string) => k.replace("0x", "")) - }, - ); - } + NRF.updateServices(newAdvert); }; -Bangle.on('accel', newAcc => { acc = newAcc; haveNewAcc = true; }); -Bangle.on('pressure', newBar => { bar = newBar; haveNewBar = true; }); -Bangle.on('GPS', newGps => { gps = newGps; haveNewGps = true; }); -Bangle.on('HRM', newHrm => { hrm = newHrm; haveNewHrm = true; }); -Bangle.on('mag', newMag => { mag = newMag; haveNewMag = true; }); +Bangle.on('accel', newAcc => acc = newAcc); +Bangle.on('pressure', newBar => bar = newBar); +Bangle.on('GPS', newGps => gps = newGps); +Bangle.on('HRM', newHrm => hrm = newHrm); +Bangle.on('mag', newMag => mag = newMag); -// show menu first to have it reserve space for widgets (appRect) +// show widgets to affect appRect Bangle.loadWidgets(); Bangle.drawWidgets(); @@ -517,7 +528,25 @@ Bangle.on("lock", locked => { }); // turn things on -enableSensors(); // calls updateBleAdvert +enableSensors(); + +// set services/advert once at startup: +{ + // must have fixed services from the start: + const ad = getBleAdvert(serv => serviceToAdvert(serv, true), /*all*/true); + + NRF.setServices( + ad, + { + // FIXME: go via setAdvertising(), merge wth Bangle.bleAdvert + advertise: Object + .keys(ad) + .map((k: string) => k.replace("0x", "")) + + // TODO: uart: false, + }, + ); +} let iv: undefined | number; const setIntervals = (connected: boolean) => { @@ -526,15 +555,13 @@ const setIntervals = (connected: boolean) => { changeInterval(iv, Intervals.BLE); } else { iv = setInterval( - () => { - if (haveNew()) - updateServices(); - }, + updateServices, Intervals.BLE ); } } else if (iv) { clearInterval(iv); + iv = undefined; } }; From 1fbba23b1a5c5344a7f3c9b365697ae8171e54b6 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 26 Jan 2023 23:03:21 +0000 Subject: [PATCH 0178/1725] btadv: incomplete menu tweaks --- apps/btadv/app.ts | 52 +++++++++++++++++++++++++++-------------------- 1 file changed, 30 insertions(+), 22 deletions(-) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index d7025291d..e2aee1943 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -84,14 +84,10 @@ let bar: undefined | PressureData; let gps: undefined | GPSFix; let hrm: undefined | Hrm; let mag: undefined | CompassData; -let haveNewAcc = false; -let haveNewBar = false; -let haveNewGps = false; -let haveNewHrm = false; -let haveNewMag = false; type BtAdvMenu = "acc" | "bar" | "gps" | "hrm" | "mag" | "main"; -let curMenu: BtAdvMenu = "main"; +let curMenuName: BtAdvMenu = "main"; +let curMenu: MenuInstance; let mainMenuScroll = 0; const settings = { barEnabled: false, @@ -105,9 +101,11 @@ const showMainMenu = () => { const mainMenu: Menu = {}; const showMenu = (menu: Menu, scroll: number, cur: BtAdvMenu) => () => { - E.showMenu(menu); - mainMenuScroll = scroll; - curMenu = cur; + mainMenuScroll = scroll; // int + + curMenu = E.showMenu(menu); + + curMenuName = cur; }; mainMenu[""] = { @@ -122,8 +120,8 @@ const showMainMenu = () => { mainMenu["Magnetometer" + onOff(settings.magEnabled)] = showMenu(magMenu, 4, "mag"); mainMenu["Exit"] = () => (load as any)(); // avoid `this` + typehack - E.showMenu(mainMenu); - curMenu = "main"; + curMenu = E.showMenu(mainMenu); + curMenuName = "main"; }; const optionsCommon = { @@ -184,17 +182,27 @@ const magMenu = { "Heading": { value: "" }, }; +const redrawMenu = (newMenu: Menu) => { + const scroll = (curMenu as any).scroller.scroll; + + curMenu = E.showMenu(newMenu); + + // FIXME: doesn't work for promenu + (curMenu as any).scroller.scroll = scroll; // typehack + curMenu.draw(); +}; + const updateMenu = () => { - switch (curMenu) { + switch (curMenuName) { case "acc": if (acc) { accMenu.x.value = acc.x.toFixed(2); accMenu.y.value = acc.y.toFixed(2); accMenu.z.value = acc.z.toFixed(2); - E.showMenu(accMenu); + redrawMenu(accMenu); } else if (accMenu.x.value !== "...") { accMenu.x.value = accMenu.y.value = accMenu.z.value = "..."; - E.showMenu(accMenu); + redrawMenu(accMenu); } break; @@ -203,10 +211,10 @@ const updateMenu = () => { barMenu.Altitude.value = bar.altitude.toFixed(1) + 'm'; barMenu.Press.value = bar.pressure.toFixed(1) + 'mbar'; barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; - E.showMenu(barMenu); + redrawMenu(barMenu); } else if (barMenu.Altitude.value !== "...") { barMenu.Altitude.value = barMenu.Press.value = barMenu.Temp.value = "..."; - E.showMenu(accMenu); + redrawMenu(accMenu); } break; @@ -217,11 +225,11 @@ const updateMenu = () => { gpsMenu.Altitude.value = gps.alt + 'm'; gpsMenu.Satellites.value = "" + gps.satellites; gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; - E.showMenu(gpsMenu); + redrawMenu(gpsMenu); } else if (gpsMenu.Lat.value !== "...") { gpsMenu.Lat.value = gpsMenu.Lon.value = gpsMenu.Altitude.value = gpsMenu.Satellites.value = gpsMenu.HDOP.value = "..."; - E.showMenu(gpsMenu); + redrawMenu(gpsMenu); } break; @@ -229,10 +237,10 @@ const updateMenu = () => { if (hrm) { hrmMenu.BPM.value = "" + hrm.bpm; hrmMenu.Confidence.value = hrm.confidence + '%'; - E.showMenu(hrmMenu); + redrawMenu(hrmMenu); } else if (hrmMenu.BPM.value !== "...") { hrmMenu.BPM.value = hrmMenu.Confidence.value = "..."; - E.showMenu(hrmMenu); + redrawMenu(hrmMenu); } break; @@ -242,10 +250,10 @@ const updateMenu = () => { magMenu.y.value = "" + mag.y; magMenu.z.value = "" + mag.z; magMenu.Heading.value = mag.heading.toFixed(1); - E.showMenu(magMenu); + redrawMenu(magMenu); } else if (magMenu.x.value !== "...") { magMenu.x.value = magMenu.y.value = magMenu.z.value = magMenu.Heading.value = "..."; - E.showMenu(magMenu); + redrawMenu(magMenu); } break; } From d0245f0c64e24a940dc9b917f53250b6246ec53a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 26 Jan 2023 23:03:40 +0000 Subject: [PATCH 0179/1725] btadv: tsc rebuild --- apps/btadv/app.js | 157 +++++++++++++++++++++++++--------------------- 1 file changed, 85 insertions(+), 72 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 43fd4d062..e8747414b 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -16,12 +16,8 @@ var bar; var gps; var hrm; var mag; -var haveNewAcc = false; -var haveNewBar = false; -var haveNewGps = false; -var haveNewHrm = false; -var haveNewMag = false; -var curMenu = "main"; +var curMenuName = "main"; +var curMenu; var mainMenuScroll = 0; var settings = { barEnabled: false, @@ -33,9 +29,9 @@ var showMainMenu = function () { var onOff = function (b) { return b ? " (on)" : " (off)"; }; var mainMenu = {}; var showMenu = function (menu, scroll, cur) { return function () { - E.showMenu(menu); mainMenuScroll = scroll; - curMenu = cur; + curMenu = E.showMenu(menu); + curMenuName = cur; }; }; mainMenu[""] = { "title": "BLE Advert", @@ -47,8 +43,8 @@ var showMainMenu = function () { mainMenu["Heart Rate" + onOff(settings.hrmEnabled)] = showMenu(hrmMenu, 3, "hrm"); mainMenu["Magnetometer" + onOff(settings.magEnabled)] = showMenu(magMenu, 4, "mag"); mainMenu["Exit"] = function () { return load(); }; - E.showMenu(mainMenu); - curMenu = "main"; + curMenu = E.showMenu(mainMenu); + curMenuName = "main"; }; var optionsCommon = { back: showMainMenu, @@ -102,18 +98,24 @@ var magMenu = { "z": { value: "" }, "Heading": { value: "" }, }; +var redrawMenu = function (newMenu) { + var scroll = curMenu.scroller.scroll; + curMenu = E.showMenu(newMenu); + curMenu.scroller.scroll = scroll; + curMenu.draw(); +}; var updateMenu = function () { - switch (curMenu) { + switch (curMenuName) { case "acc": if (acc) { accMenu.x.value = acc.x.toFixed(2); accMenu.y.value = acc.y.toFixed(2); accMenu.z.value = acc.z.toFixed(2); - E.showMenu(accMenu); + redrawMenu(accMenu); } else if (accMenu.x.value !== "...") { accMenu.x.value = accMenu.y.value = accMenu.z.value = "..."; - E.showMenu(accMenu); + redrawMenu(accMenu); } break; case "bar": @@ -121,11 +123,11 @@ var updateMenu = function () { barMenu.Altitude.value = bar.altitude.toFixed(1) + 'm'; barMenu.Press.value = bar.pressure.toFixed(1) + 'mbar'; barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; - E.showMenu(barMenu); + redrawMenu(barMenu); } else if (barMenu.Altitude.value !== "...") { barMenu.Altitude.value = barMenu.Press.value = barMenu.Temp.value = "..."; - E.showMenu(accMenu); + redrawMenu(accMenu); } break; case "gps": @@ -135,23 +137,23 @@ var updateMenu = function () { gpsMenu.Altitude.value = gps.alt + 'm'; gpsMenu.Satellites.value = "" + gps.satellites; gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; - E.showMenu(gpsMenu); + redrawMenu(gpsMenu); } else if (gpsMenu.Lat.value !== "...") { gpsMenu.Lat.value = gpsMenu.Lon.value = gpsMenu.Altitude.value = gpsMenu.Satellites.value = gpsMenu.HDOP.value = "..."; - E.showMenu(gpsMenu); + redrawMenu(gpsMenu); } break; case "hrm": if (hrm) { hrmMenu.BPM.value = "" + hrm.bpm; hrmMenu.Confidence.value = hrm.confidence + '%'; - E.showMenu(hrmMenu); + redrawMenu(hrmMenu); } else if (hrmMenu.BPM.value !== "...") { hrmMenu.BPM.value = hrmMenu.Confidence.value = "..."; - E.showMenu(hrmMenu); + redrawMenu(hrmMenu); } break; case "mag": @@ -160,27 +162,31 @@ var updateMenu = function () { magMenu.y.value = "" + mag.y; magMenu.z.value = "" + mag.z; magMenu.Heading.value = mag.heading.toFixed(1); - E.showMenu(magMenu); + redrawMenu(magMenu); } else if (magMenu.x.value !== "...") { magMenu.x.value = magMenu.y.value = magMenu.z.value = magMenu.Heading.value = "..."; - E.showMenu(magMenu); + redrawMenu(magMenu); } break; } }; var encodeHrm = function (hrm) { - return [0, hrm ? hrm.bpm : 0]; + return [0, hrm.bpm]; }; +encodeHrm.maxLen = 2; var encodePressure = function (data) { return toByteArray(Math.round(data.pressure * 1000), 4, false); }; +encodePressure.maxLen = 4; var encodeElevation = function (data) { return toByteArray(Math.round(data.altitude * 100), 3, true); }; +encodeElevation.maxLen = 3; var encodeTemp = function (data) { return toByteArray(Math.round(data.temperature * 100), 2, true); }; +encodeTemp.maxLen = 2; var encodeGps = function (data) { var speed = toByteArray(Math.round(1000 * data.speed / 36), 2, false); var lat = toByteArray(Math.round(data.lat * 10000000), 4, true); @@ -197,12 +203,14 @@ var encodeGps = function (data) { heading[0], heading[1] ]; }; +encodeGps.maxLen = 17; var encodeMag = function (data) { var x = toByteArray(data.x, 2, true); var y = toByteArray(data.y, 2, true); var z = toByteArray(data.z, 2, true); return [x[0], x[1], y[0], y[1], z[0], z[1]]; }; +encodeMag.maxLen = 6; var toByteArray = function (value, numberOfBytes, isSigned) { var byteArray = new Array(numberOfBytes); if (isSigned && (value < 0)) { @@ -226,16 +234,11 @@ var enableSensors = function () { Bangle.setCompassPower(settings.magEnabled, "btadv"); if (!settings.magEnabled) mag = undefined; - updateBleAdvert(); - updateServices(); }; var updateSetting = function (name, value) { settings[name] = value; enableSensors(); }; -var haveNew = function () { - return haveNewAcc || haveNewBar || haveNewGps || haveNewHrm || haveNewMag; -}; var serviceActive = function (serv) { switch (serv) { case "0x180d": return !!hrm; @@ -243,67 +246,80 @@ var serviceActive = function (serv) { case "0x1819": return !!(gps && gps.lat && gps.lon); } }; -var serviceToAdvert = function (serv) { +var serviceToAdvert = function (serv, initial) { var _a, _b; + if (initial === void 0) { initial = false; } switch (serv) { case "0x180d": - if (hrm) { - return _a = {}, - _a["0x2a37"] = { - value: encodeHrm(hrm), - readable: true, - notify: true, - }, - _a; + if (hrm || initial) { + var o = { + maxLen: encodeHrm.maxLen, + readable: true, + notify: true, + }; + if (hrm) { + o.value = encodeHrm(hrm); + } + return _a = {}, _a["0x2a37"] = o, _a; } return {}; case "0x1819": - if (gps) { - return _b = {}, - _b["0x2a67"] = { - value: encodeGps(gps), - readable: true, - notify: true, - }, - _b; + if (gps || initial) { + var o = { + maxLen: encodeGps.maxLen, + readable: true, + notify: true, + }; + if (gps) { + o.value = encodeGps(gps); + } + return _b = {}, _b["0x2a67"] = o, _b; } return {}; case "0x181a": { var o = {}; - if (bar) { + if (bar || initial) { o["0x2a6c"] = { - value: encodeElevation(bar), + maxLen: encodeElevation.maxLen, readable: true, notify: true, }; o["0x2A1F"] = { - value: encodeTemp(bar), + maxLen: encodeTemp.maxLen, readable: true, notify: true, }; o["0x2a6d"] = { - value: encodePressure(bar), + maxLen: encodePressure.maxLen, readable: true, notify: true, }; + if (bar) { + o["0x2a6c"].value = encodeElevation(bar); + o["0x2A1F"].value = encodeTemp(bar); + o["0x2a6d"].value = encodePressure(bar); + } } - if (mag) { + if (mag || initial) { o["0x2aa1"] = { - value: encodeMag(mag), + maxLen: encodeMag.maxLen, readable: true, notify: true, }; + if (mag) { + o["0x2aa1"].value = encodeMag(mag); + } } - ; return o; } } }; -var getBleAdvert = function (map) { +var getBleAdvert = function (map, all) { + if (all === void 0) { all = false; } var advert = {}; for (var _i = 0, services_1 = services; _i < services_1.length; _i++) { var serv = services_1[_i]; - if (serviceActive(serv)) { + if (all || serviceActive(serv)) { advert[serv] = map(serv); } } @@ -324,22 +340,13 @@ var updateBleAdvert = function () { }; var updateServices = function () { var newAdvert = getBleAdvert(serviceToAdvert); - if (NRF.getSecurityStatus().connected) { - NRF.updateServices(newAdvert); - } - else { - NRF.setServices(newAdvert, { - advertise: Object - .keys(newAdvert) - .map(function (k) { return k.replace("0x", ""); }) - }); - } + NRF.updateServices(newAdvert); }; -Bangle.on('accel', function (newAcc) { acc = newAcc; haveNewAcc = true; }); -Bangle.on('pressure', function (newBar) { bar = newBar; haveNewBar = true; }); -Bangle.on('GPS', function (newGps) { gps = newGps; haveNewGps = true; }); -Bangle.on('HRM', function (newHrm) { hrm = newHrm; haveNewHrm = true; }); -Bangle.on('mag', function (newMag) { mag = newMag; haveNewMag = true; }); +Bangle.on('accel', function (newAcc) { return acc = newAcc; }); +Bangle.on('pressure', function (newBar) { return bar = newBar; }); +Bangle.on('GPS', function (newGps) { return gps = newGps; }); +Bangle.on('HRM', function (newHrm) { return hrm = newHrm; }); +Bangle.on('mag', function (newMag) { return mag = newMag; }); Bangle.loadWidgets(); Bangle.drawWidgets(); showMainMenu(); @@ -348,6 +355,14 @@ Bangle.on("lock", function (locked) { changeInterval(menuInterval, locked ? 30000 : 1000); }); enableSensors(); +{ + var ad = getBleAdvert(function (serv) { return serviceToAdvert(serv, true); }, true); + NRF.setServices(ad, { + advertise: Object + .keys(ad) + .map(function (k) { return k.replace("0x", ""); }) + }); +} var iv; var setIntervals = function (connected) { if (connected) { @@ -355,14 +370,12 @@ var setIntervals = function (connected) { changeInterval(iv, 1000); } else { - iv = setInterval(function () { - if (haveNew()) - updateServices(); - }, 1000); + iv = setInterval(updateServices, 1000); } } else if (iv) { clearInterval(iv); + iv = undefined; } }; setIntervals(NRF.getSecurityStatus().connected); From 9e8bba280be24a6185ae81080049739f96141cae Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 27 Jan 2023 22:08:28 +0000 Subject: [PATCH 0180/1725] btadv: togglable layouts --- apps/btadv/app.js | 361 +++++++++++++++++++---------------- apps/btadv/app.ts | 473 ++++++++++++++++++++++++++++------------------ 2 files changed, 482 insertions(+), 352 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index e8747414b..fe6e05be6 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -10,166 +10,207 @@ var __assign = (this && this.__assign) || function () { }; return __assign.apply(this, arguments); }; +var Layout = require("Layout"); var services = ["0x180d", "0x181a", "0x1819"]; var acc; var bar; var gps; var hrm; var mag; -var curMenuName = "main"; -var curMenu; -var mainMenuScroll = 0; +var btnsShown = false; +var prevBtnsShown = undefined; var settings = { - barEnabled: false, - gpsEnabled: false, - hrmEnabled: false, - magEnabled: false, + bar: false, + gps: false, + hrm: false, + mag: false, }; -var showMainMenu = function () { - var onOff = function (b) { return b ? " (on)" : " (off)"; }; - var mainMenu = {}; - var showMenu = function (menu, scroll, cur) { return function () { - mainMenuScroll = scroll; - curMenu = E.showMenu(menu); - curMenuName = cur; - }; }; - mainMenu[""] = { - "title": "BLE Advert", - }; - mainMenu[""].scroll = mainMenuScroll; - mainMenu["Acceleration"] = showMenu(accMenu, 0, "acc"); - mainMenu["Barometer" + onOff(settings.barEnabled)] = showMenu(barMenu, 1, "bar"); - mainMenu["GPS" + onOff(settings.gpsEnabled)] = showMenu(gpsMenu, 2, "gps"); - mainMenu["Heart Rate" + onOff(settings.hrmEnabled)] = showMenu(hrmMenu, 3, "hrm"); - mainMenu["Magnetometer" + onOff(settings.magEnabled)] = showMenu(magMenu, 4, "mag"); - mainMenu["Exit"] = function () { return load(); }; - curMenu = E.showMenu(mainMenu); - curMenuName = "main"; +var idToName = { + acc: "Acceleration", + bar: "Barometer", + gps: "GPS", + hrm: "HRM", + mag: "Magnetometer", }; -var optionsCommon = { - back: showMainMenu, +var colour = { + on: "#0f0", + off: "#fff", }; -var accMenu = { - "": __assign({ "title": "Acceleration" }, optionsCommon), - "Active": { value: "true (fixed)" }, - "x": { value: "" }, - "y": { value: "" }, - "z": { value: "" }, +var makeToggle = function (id) { return function () { + settings[id] = !settings[id]; + var entry = btnLayout[id]; + var col = settings[id] ? colour.on : colour.off; + entry.btnBorder = entry.col = col; + btnLayout.update(); + btnLayout.render(); + enableSensors(); +}; }; +var btnStyle = { + font: "Vector:14", + fillx: 1, + filly: 1, + col: g.theme.fg, + bgCol: g.theme.bg, + btnBorder: "#fff", }; -var barMenu = { - "": __assign({ "title": "Barometer" }, optionsCommon), - "Active": { - value: settings.barEnabled, - onchange: function (v) { return updateSetting('barEnabled', v); }, +var btnLayout = new Layout({ + type: "v", + c: [ + { + type: "h", + c: [ + __assign({ type: "btn", label: idToName.bar, id: "bar", cb: makeToggle('bar') }, btnStyle), + __assign({ type: "btn", label: idToName.gps, id: "gps", cb: makeToggle('gps') }, btnStyle), + ] + }, + { + type: "h", + c: [ + __assign({ type: "btn", label: idToName.hrm, id: "hrm", cb: makeToggle('hrm') }, btnStyle), + __assign({ type: "btn", label: idToName.mag, id: "mag", cb: makeToggle('mag') }, btnStyle), + ] + }, + { + type: "h", + c: [ + __assign(__assign({ type: "btn", label: idToName.acc, id: "acc", cb: function () { } }, btnStyle), { col: colour.on, btnBorder: colour.on }), + __assign({ type: "btn", label: "Back", cb: function () { + setBtnsShown(false); + } }, btnStyle), + ] + } + ] +}, { + lazy: true, + back: function () { + setBtnsShown(false); }, - "Altitude": { value: "" }, - "Press": { value: "" }, - "Temp": { value: "" }, +}); +var setBtnsShown = function (b) { + btnsShown = b; + g.clearRect(Bangle.appRect); + redraw(); }; -var gpsMenu = { - "": __assign({ "title": "GPS" }, optionsCommon), - "Active": { - value: settings.gpsEnabled, - onchange: function (v) { return updateSetting('gpsEnabled', v); }, - }, - "Lat": { value: "" }, - "Lon": { value: "" }, - "Altitude": { value: "" }, - "Satellites": { value: "" }, - "HDOP": { value: "" }, +var infoFont = "6x8:2"; +var infoCommon = { + type: "txt", + label: "", + font: infoFont, + pad: 5, }; -var hrmMenu = { - "": __assign({ "title": "Heart Rate" }, optionsCommon), - "Active": { - value: settings.hrmEnabled, - onchange: function (v) { return updateSetting('hrmEnabled', v); }, - }, - "BPM": { value: "" }, - "Confidence": { value: "" }, +var infoLayout = new Layout({ + type: "v", + c: [ + { + type: "h", + c: [ + __assign({ id: "bar_alti" }, infoCommon), + __assign({ id: "bar_pres" }, infoCommon), + __assign({ id: "bar_temp" }, infoCommon), + ] + }, + { + type: "h", + c: [ + __assign({ id: "gps_lat" }, infoCommon), + __assign({ id: "gps_lon" }, infoCommon), + __assign({ id: "gps_altitude" }, infoCommon), + __assign({ id: "gps_satellites" }, infoCommon), + __assign({ id: "gps_hdop" }, infoCommon), + ] + }, + { + type: "h", + c: [ + __assign({ id: "hrm_bpm" }, infoCommon), + __assign({ id: "hrm_confidence" }, infoCommon), + ] + }, + { + type: "h", + c: [ + __assign({ id: "mag_x" }, infoCommon), + __assign({ id: "mag_y" }, infoCommon), + __assign({ id: "mag_z" }, infoCommon), + __assign({ id: "mag_heading" }, infoCommon), + ] + }, + __assign({ type: "btn", label: "Set", cb: function () { + setBtnsShown(true); + } }, btnStyle), + ] +}, { + lazy: true, +}); +var showElem = function (layout, s) { + layout.label = s; + delete layout.height; }; -var magMenu = { - "": __assign({ "title": "Magnetometer" }, optionsCommon), - "Active": { - value: settings.magEnabled, - onchange: function (v) { return updateSetting('magEnabled', v); }, - }, - "x": { value: "" }, - "y": { value: "" }, - "z": { value: "" }, - "Heading": { value: "" }, +var hideElem = function (layout) { + layout.height = 0; }; -var redrawMenu = function (newMenu) { - var scroll = curMenu.scroller.scroll; - curMenu = E.showMenu(newMenu); - curMenu.scroller.scroll = scroll; - curMenu.draw(); -}; -var updateMenu = function () { - switch (curMenuName) { - case "acc": - if (acc) { - accMenu.x.value = acc.x.toFixed(2); - accMenu.y.value = acc.y.toFixed(2); - accMenu.z.value = acc.z.toFixed(2); - redrawMenu(accMenu); - } - else if (accMenu.x.value !== "...") { - accMenu.x.value = accMenu.y.value = accMenu.z.value = "..."; - redrawMenu(accMenu); - } - break; - case "bar": - if (bar) { - barMenu.Altitude.value = bar.altitude.toFixed(1) + 'm'; - barMenu.Press.value = bar.pressure.toFixed(1) + 'mbar'; - barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; - redrawMenu(barMenu); - } - else if (barMenu.Altitude.value !== "...") { - barMenu.Altitude.value = barMenu.Press.value = barMenu.Temp.value = "..."; - redrawMenu(accMenu); - } - break; - case "gps": - if (gps) { - gpsMenu.Lat.value = gps.lat.toFixed(4); - gpsMenu.Lon.value = gps.lon.toFixed(4); - gpsMenu.Altitude.value = gps.alt + 'm'; - gpsMenu.Satellites.value = "" + gps.satellites; - gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; - redrawMenu(gpsMenu); - } - else if (gpsMenu.Lat.value !== "...") { - gpsMenu.Lat.value = gpsMenu.Lon.value = gpsMenu.Altitude.value = - gpsMenu.Satellites.value = gpsMenu.HDOP.value = "..."; - redrawMenu(gpsMenu); - } - break; - case "hrm": - if (hrm) { - hrmMenu.BPM.value = "" + hrm.bpm; - hrmMenu.Confidence.value = hrm.confidence + '%'; - redrawMenu(hrmMenu); - } - else if (hrmMenu.BPM.value !== "...") { - hrmMenu.BPM.value = hrmMenu.Confidence.value = "..."; - redrawMenu(hrmMenu); - } - break; - case "mag": - if (mag) { - magMenu.x.value = "" + mag.x; - magMenu.y.value = "" + mag.y; - magMenu.z.value = "" + mag.z; - magMenu.Heading.value = mag.heading.toFixed(1); - redrawMenu(magMenu); - } - else if (magMenu.x.value !== "...") { - magMenu.x.value = magMenu.y.value = magMenu.z.value = magMenu.Heading.value = "..."; - redrawMenu(magMenu); - } - break; +var populateInfo = function () { + if (bar) { + showElem(infoLayout["bar_alti"], "".concat(bar.altitude.toFixed(1), "m")); + showElem(infoLayout["bar_pres"], "".concat(bar.pressure.toFixed(1), "mbar")); + showElem(infoLayout["bar_temp"], "".concat(bar.temperature.toFixed(1), "C")); } + else { + hideElem(infoLayout["bar_alti"]); + hideElem(infoLayout["bar_pres"]); + hideElem(infoLayout["bar_temp"]); + } + if (gps) { + showElem(infoLayout["gps_lat"], gps.lat.toFixed(4)); + showElem(infoLayout["gps_lon"], gps.lon.toFixed(4)); + showElem(infoLayout["gps_altitude"], "".concat(gps.alt, "m")); + showElem(infoLayout["gps_satellites"], "".concat(gps.satellites)); + showElem(infoLayout["gps_hdop"], "".concat((gps.hdop * 5).toFixed(1), "m")); + } + else { + hideElem(infoLayout["gps_lat"]); + hideElem(infoLayout["gps_lon"]); + hideElem(infoLayout["gps_altitude"]); + hideElem(infoLayout["gps_satellites"]); + hideElem(infoLayout["gps_hdop"]); + } + if (hrm) { + showElem(infoLayout["hrm_bpm"], "".concat(hrm.bpm)); + showElem(infoLayout["hrm_confidence"], "".concat(hrm.confidence, "%")); + } + else { + hideElem(infoLayout["hrm_bpm"]); + hideElem(infoLayout["hrm_confidence"]); + } + if (mag) { + showElem(infoLayout["mag_x"], "".concat(mag.x)); + showElem(infoLayout["mag_y"], "".concat(mag.y)); + showElem(infoLayout["mag_z"], "".concat(mag.z)); + showElem(infoLayout["mag_heading"], mag.heading.toFixed(1)); + } + else { + hideElem(infoLayout["mag_x"]); + hideElem(infoLayout["mag_y"]); + hideElem(infoLayout["mag_z"]); + hideElem(infoLayout["mag_heading"]); + } +}; +var redraw = function () { + var layout; + if (btnsShown) { + layout = btnLayout; + } + else { + populateInfo(); + infoLayout.update(); + layout = infoLayout; + } + if (btnsShown !== prevBtnsShown) { + prevBtnsShown = btnsShown; + layout.forgetLazyState(); + layout.setUI(); + } + layout.render(); }; var encodeHrm = function (hrm) { return [0, hrm.bpm]; @@ -222,22 +263,19 @@ var toByteArray = function (value, numberOfBytes, isSigned) { return byteArray; }; var enableSensors = function () { - Bangle.setBarometerPower(settings.barEnabled, "btadv"); - if (!settings.barEnabled) + Bangle.setBarometerPower(settings.bar, "btadv"); + if (!settings.bar) bar = undefined; - Bangle.setGPSPower(settings.gpsEnabled, "btadv"); - if (!settings.gpsEnabled) + Bangle.setGPSPower(settings.gps, "btadv"); + if (!settings.gps) gps = undefined; - Bangle.setHRMPower(settings.hrmEnabled, "btadv"); - if (!settings.hrmEnabled) + Bangle.setHRMPower(settings.hrm, "btadv"); + if (!settings.hrm) hrm = undefined; - Bangle.setCompassPower(settings.magEnabled, "btadv"); - if (!settings.magEnabled) + Bangle.setCompassPower(settings.mag, "btadv"); + if (!settings.mag) mag = undefined; -}; -var updateSetting = function (name, value) { - settings[name] = value; - enableSensors(); + console.log("enableSensors():", settings); }; var serviceActive = function (serv) { switch (serv) { @@ -349,10 +387,10 @@ Bangle.on('HRM', function (newHrm) { return hrm = newHrm; }); Bangle.on('mag', function (newMag) { return mag = newMag; }); Bangle.loadWidgets(); Bangle.drawWidgets(); -showMainMenu(); -var menuInterval = setInterval(updateMenu, 1000); +setBtnsShown(true); +var redrawInterval = setInterval(redraw, 1000); Bangle.on("lock", function (locked) { - changeInterval(menuInterval, locked ? 30000 : 1000); + changeInterval(redrawInterval, locked ? 30000 : 1000); }); enableSensors(); { @@ -378,10 +416,3 @@ var setIntervals = function (connected) { iv = undefined; } }; -setIntervals(NRF.getSecurityStatus().connected); -NRF.on("connect", function () { - setIntervals(true); -}); -NRF.on("disconnect", function () { - setIntervals(false); -}); diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index e2aee1943..37777bd71 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -3,7 +3,9 @@ // [-] handle NaNs in data // [x] fix sending of HRM / changing service? // [.] fix menu scrolling/jumping -// [ ] fix resetting to accel menu +// [.] fix resetting to accel menu + +const Layout = require("Layout") as Layout_.Layout; const enum Intervals { BLE_ADVERT = 60 * 1000, @@ -84,179 +86,283 @@ let bar: undefined | PressureData; let gps: undefined | GPSFix; let hrm: undefined | Hrm; let mag: undefined | CompassData; +let btnsShown = false; +let prevBtnsShown: boolean | undefined = undefined; -type BtAdvMenu = "acc" | "bar" | "gps" | "hrm" | "mag" | "main"; -let curMenuName: BtAdvMenu = "main"; -let curMenu: MenuInstance; -let mainMenuScroll = 0; -const settings = { - barEnabled: false, - gpsEnabled: false, - hrmEnabled: false, - magEnabled: false, +type BtAdvType = "bar" | "gps" | "hrm" | "mag" | (IncludeAcc extends true ? "acc" : never); +type BtAdvMap = { [key in BtAdvType]: T }; + +const settings: BtAdvMap = { + bar: false, + gps: false, + hrm: false, + mag: false, }; -const showMainMenu = () => { - const onOff = (b: boolean) => b ? " (on)" : " (off)"; - const mainMenu: Menu = {}; - - const showMenu = (menu: Menu, scroll: number, cur: BtAdvMenu) => () => { - mainMenuScroll = scroll; // int - - curMenu = E.showMenu(menu); - - curMenuName = cur; - }; - - mainMenu[""] = { - "title": "BLE Advert", - }; - (mainMenu[""] as any).scroll = mainMenuScroll; // typehack - - mainMenu["Acceleration"] = showMenu(accMenu, 0, "acc"); - mainMenu["Barometer" + onOff(settings.barEnabled)] = showMenu(barMenu, 1, "bar"); - mainMenu["GPS" + onOff(settings.gpsEnabled)] = showMenu(gpsMenu, 2, "gps"); - mainMenu["Heart Rate" + onOff(settings.hrmEnabled)] = showMenu(hrmMenu, 3, "hrm"); - mainMenu["Magnetometer" + onOff(settings.magEnabled)] = showMenu(magMenu, 4, "mag"); - mainMenu["Exit"] = () => (load as any)(); // avoid `this` + typehack - - curMenu = E.showMenu(mainMenu); - curMenuName = "main"; +const idToName: BtAdvMap = { + acc: "Acceleration", + bar: "Barometer", + gps: "GPS", + hrm: "HRM", + mag: "Magnetometer", }; -const optionsCommon = { - back: showMainMenu, +const colour = { + on: "#0f0", + off: "#fff", +} as const; + +const makeToggle = (id: BtAdvType) => () => { + settings[id] = !settings[id]; + + const entry = btnLayout[id]!; + const col = settings[id] ? colour.on : colour.off; + + entry.btnBorder = entry.col = col; + + btnLayout.update(); + btnLayout.render(); + + //require('Storage').writeJSON(SETTINGS_FILENAME, settings); + enableSensors(); }; -const accMenu = { - "": { "title" : "Acceleration", ...optionsCommon }, - "Active": { value: "true (fixed)" }, - "x": { value: "" }, - "y": { value: "" }, - "z": { value: "" }, +const btnStyle: { + font: FontNameWithScaleFactor, + fillx?: 1, + filly?: 1, + col: ColorResolvable, + bgCol: ColorResolvable, + btnBorder: ColorResolvable, +} = { + font: "Vector:14", + fillx: 1, + filly: 1, + col: g.theme.fg, + bgCol: g.theme.bg, + btnBorder: "#fff", }; -const barMenu = { - "": { "title" : "Barometer", ...optionsCommon }, - "Active": { - value: settings.barEnabled, - onchange: (v: boolean) => updateSetting('barEnabled', v), +const btnLayout = new Layout( + { + type: "v", + c: [ + { + type: "h", + c: [ + { + type: "btn", + label: idToName.bar, + id: "bar", + cb: makeToggle('bar'), + ...btnStyle, + }, + { + type: "btn", + label: idToName.gps, + id: "gps", + cb: makeToggle('gps'), + ...btnStyle, + }, + ] + }, + { + type: "h", + c: [ + // hrm, mag + { + type: "btn", + label: idToName.hrm, + id: "hrm", + cb: makeToggle('hrm'), + ...btnStyle, + }, + { + type: "btn", + label: idToName.mag, + id: "mag", + cb: makeToggle('mag'), + ...btnStyle, + }, + ] + }, + { + type: "h", + c: [ + { + type: "btn", + label: idToName.acc, + id: "acc", + cb: () => {}, + ...btnStyle, + col: colour.on, + btnBorder: colour.on, + }, + { + type: "btn", + label: "Back", + cb: () => { + setBtnsShown(false); + }, + ...btnStyle, + }, + ] + } + ] }, - "Altitude": { value: "" }, - "Press": { value: "" }, - "Temp": { value: "" }, -}; - -const gpsMenu = { - "": { "title" : "GPS", ...optionsCommon }, - "Active": { - value: settings.gpsEnabled, - onchange: (v: boolean) => updateSetting('gpsEnabled', v), + { + lazy: true, + back: () => { + setBtnsShown(false); + }, }, - "Lat": { value: "" }, - "Lon": { value: "" }, - "Altitude": { value: "" }, - "Satellites": { value: "" }, - "HDOP": { value: "" }, +); + +const setBtnsShown = (b: boolean) => { + btnsShown = b; + g.clearRect(Bangle.appRect); + redraw(); }; -const hrmMenu = { - "": { "title" : "Heart Rate", ...optionsCommon }, - "Active": { - value: settings.hrmEnabled, - onchange: (v: boolean) => updateSetting('hrmEnabled', v), +const infoFont: FontNameWithScaleFactor = "6x8:2"; +const infoCommon = { + type: "txt", + label: "", + font: infoFont, + pad: 5, +} as const; + +const infoLayout = new Layout( + { + type: "v", + c: [ + { + type: "h", + c: [ + { id: "bar_alti", ...infoCommon }, + { id: "bar_pres", ...infoCommon }, + { id: "bar_temp", ...infoCommon }, + ] + }, + { + type: "h", + c: [ + { id: "gps_lat", ...infoCommon }, + { id: "gps_lon", ...infoCommon }, + { id: "gps_altitude", ...infoCommon }, + { id: "gps_satellites", ...infoCommon }, + { id: "gps_hdop", ...infoCommon }, + ] + }, + { + type: "h", + c: [ + { id: "hrm_bpm", ...infoCommon }, + { id: "hrm_confidence", ...infoCommon }, + ] + }, + { + type: "h", + c: [ + { id: "mag_x", ...infoCommon }, + { id: "mag_y", ...infoCommon }, + { id: "mag_z", ...infoCommon }, + { id: "mag_heading", ...infoCommon }, + ] + }, + { + type: "btn", + label: "Set", + cb: () => { + setBtnsShown(true); + }, + ...btnStyle, + }, + ] }, - "BPM": { value: "" }, - "Confidence": { value: "" }, -}; - -const magMenu = { - "": { "title" : "Magnetometer", ...optionsCommon }, - "Active": { - value: settings.magEnabled, - onchange: (v: boolean) => updateSetting('magEnabled', v), - }, - "x": { value: "" }, - "y": { value: "" }, - "z": { value: "" }, - "Heading": { value: "" }, -}; - -const redrawMenu = (newMenu: Menu) => { - const scroll = (curMenu as any).scroller.scroll; - - curMenu = E.showMenu(newMenu); - - // FIXME: doesn't work for promenu - (curMenu as any).scroller.scroll = scroll; // typehack - curMenu.draw(); -}; - -const updateMenu = () => { - switch (curMenuName) { - case "acc": - if (acc) { - accMenu.x.value = acc.x.toFixed(2); - accMenu.y.value = acc.y.toFixed(2); - accMenu.z.value = acc.z.toFixed(2); - redrawMenu(accMenu); - } else if (accMenu.x.value !== "...") { - accMenu.x.value = accMenu.y.value = accMenu.z.value = "..."; - redrawMenu(accMenu); - } - break; - - case "bar": - if (bar) { - barMenu.Altitude.value = bar.altitude.toFixed(1) + 'm'; - barMenu.Press.value = bar.pressure.toFixed(1) + 'mbar'; - barMenu.Temp.value = bar.temperature.toFixed(1) + 'C'; - redrawMenu(barMenu); - } else if (barMenu.Altitude.value !== "...") { - barMenu.Altitude.value = barMenu.Press.value = barMenu.Temp.value = "..."; - redrawMenu(accMenu); - } - break; - - case "gps": - if (gps) { - gpsMenu.Lat.value = gps.lat.toFixed(4); - gpsMenu.Lon.value = gps.lon.toFixed(4); - gpsMenu.Altitude.value = gps.alt + 'm'; - gpsMenu.Satellites.value = "" + gps.satellites; - gpsMenu.HDOP.value = (gps.hdop * 5).toFixed(1) + 'm'; - redrawMenu(gpsMenu); - } else if (gpsMenu.Lat.value !== "...") { - gpsMenu.Lat.value = gpsMenu.Lon.value = gpsMenu.Altitude.value = - gpsMenu.Satellites.value = gpsMenu.HDOP.value = "..."; - redrawMenu(gpsMenu); - } - break; - - case "hrm": - if (hrm) { - hrmMenu.BPM.value = "" + hrm.bpm; - hrmMenu.Confidence.value = hrm.confidence + '%'; - redrawMenu(hrmMenu); - } else if (hrmMenu.BPM.value !== "...") { - hrmMenu.BPM.value = hrmMenu.Confidence.value = "..."; - redrawMenu(hrmMenu); - } - break; - - case "mag": - if (mag) { - magMenu.x.value = "" + mag.x; - magMenu.y.value = "" + mag.y; - magMenu.z.value = "" + mag.z; - magMenu.Heading.value = mag.heading.toFixed(1); - redrawMenu(magMenu); - } else if (magMenu.x.value !== "...") { - magMenu.x.value = magMenu.y.value = magMenu.z.value = magMenu.Heading.value = "..."; - redrawMenu(magMenu); - } - break; + { + lazy: true, + // back: () => (load as any)(), } +); + +const showElem = ( + layout: Layout_.Hierarchy & { type: "txt" }, + s: string, +) => { + layout.label = s; + // delete layout.width; TODO? + delete layout.height; +}; + +const hideElem = (layout: Layout_.Hierarchy) => { + layout.height = 0; +}; + +const populateInfo = () => { + if (bar) { + showElem(infoLayout["bar_alti"]!, `${bar.altitude.toFixed(1)}m`); + showElem(infoLayout["bar_pres"]!, `${bar.pressure.toFixed(1)}mbar`); + showElem(infoLayout["bar_temp"]!, `${bar.temperature.toFixed(1)}C`); + } else { + hideElem(infoLayout["bar_alti"]!); + hideElem(infoLayout["bar_pres"]!); + hideElem(infoLayout["bar_temp"]!); + } + + if (gps) { + showElem(infoLayout["gps_lat"]!, gps.lat.toFixed(4)); + showElem(infoLayout["gps_lon"]!, gps.lon.toFixed(4)); + showElem(infoLayout["gps_altitude"]!, `${gps.alt}m`); + showElem(infoLayout["gps_satellites"]!, `${gps.satellites}`); + showElem(infoLayout["gps_hdop"]!, `${(gps.hdop * 5).toFixed(1)}m`); + } else { + hideElem(infoLayout["gps_lat"]!); + hideElem(infoLayout["gps_lon"]!); + hideElem(infoLayout["gps_altitude"]!); + hideElem(infoLayout["gps_satellites"]!); + hideElem(infoLayout["gps_hdop"]!); + } + + if (hrm) { + showElem(infoLayout["hrm_bpm"]!, `${hrm.bpm}`); + showElem(infoLayout["hrm_confidence"]!, `${hrm.confidence}%`); + } else { + hideElem(infoLayout["hrm_bpm"]!); + hideElem(infoLayout["hrm_confidence"]!); + } + + if (mag) { + showElem(infoLayout["mag_x"]!, `${mag.x}`); + showElem(infoLayout["mag_y"]!, `${mag.y}`); + showElem(infoLayout["mag_z"]!, `${mag.z}`); + showElem(infoLayout["mag_heading"]!, mag.heading.toFixed(1)); + } else { + hideElem(infoLayout["mag_x"]!); + hideElem(infoLayout["mag_y"]!); + hideElem(infoLayout["mag_z"]!); + hideElem(infoLayout["mag_heading"]!); + } +}; + +const redraw = () => { + let layout; + + if (btnsShown) { + layout = btnLayout; + } else { + populateInfo(); + infoLayout.update(); + + layout = infoLayout; + } + + if (btnsShown !== prevBtnsShown) { + prevBtnsShown = btnsShown; + layout.forgetLazyState(); + layout.setUI(); + } + layout.render(); }; const encodeHrm: LenFunc = (hrm: Hrm) => @@ -367,30 +473,23 @@ const toByteArray = (value: number, numberOfBytes: number, isSigned: boolean) => }; const enableSensors = () => { - Bangle.setBarometerPower(settings.barEnabled, "btadv"); - if (!settings.barEnabled) + Bangle.setBarometerPower(settings.bar, "btadv"); + if (!settings.bar) bar = undefined; - Bangle.setGPSPower(settings.gpsEnabled, "btadv"); - if (!settings.gpsEnabled) + Bangle.setGPSPower(settings.gps, "btadv"); + if (!settings.gps) gps = undefined; - Bangle.setHRMPower(settings.hrmEnabled, "btadv"); - if (!settings.hrmEnabled) + Bangle.setHRMPower(settings.hrm, "btadv"); + if (!settings.hrm) hrm = undefined; - Bangle.setCompassPower(settings.magEnabled, "btadv"); - if (!settings.magEnabled) + Bangle.setCompassPower(settings.mag, "btadv"); + if (!settings.mag) mag = undefined; -}; -const updateSetting = ( - name: keyof typeof settings, - value: boolean, -) => { - settings[name] = value; - //require('Storage').writeJSON(SETTINGS_FILENAME, settings); - enableSensors(); + console.log("enableSensors():", settings); }; // ---------------------------- @@ -521,16 +620,16 @@ Bangle.on('GPS', newGps => gps = newGps); Bangle.on('HRM', newHrm => hrm = newHrm); Bangle.on('mag', newMag => mag = newMag); -// show widgets to affect appRect +// show UI Bangle.loadWidgets(); Bangle.drawWidgets(); -// show UI -showMainMenu(); -const menuInterval = setInterval(updateMenu, Intervals.MENU_WAKE); +setBtnsShown(true); + +const redrawInterval = setInterval(redraw, Intervals.MENU_WAKE); Bangle.on("lock", locked => { changeInterval( - menuInterval, + redrawInterval, locked ? Intervals.MENU_SLEEP : Intervals.MENU_WAKE, ); }); @@ -573,10 +672,10 @@ const setIntervals = (connected: boolean) => { } }; -setIntervals(NRF.getSecurityStatus().connected); -NRF.on("connect", () => { - setIntervals(true); -}); -NRF.on("disconnect", () => { - setIntervals(false); -}); +// setIntervals(NRF.getSecurityStatus().connected); +// NRF.on("connect", () => { +// setIntervals(true); +// }); +// NRF.on("disconnect", () => { +// setIntervals(false); +// }); From 414a6817b06d83de56b5407a0d4b872081281f26 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 27 Jan 2023 23:06:47 +0000 Subject: [PATCH 0181/1725] btadv: todo --- apps/btadv/app.ts | 7 ------- apps/btadv/todo.txt | 7 +++++++ 2 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 apps/btadv/todo.txt diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 37777bd71..9aca63f91 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -1,10 +1,3 @@ -// TODO: -// [ ] fix format of EnvSensing data -// [-] handle NaNs in data -// [x] fix sending of HRM / changing service? -// [.] fix menu scrolling/jumping -// [.] fix resetting to accel menu - const Layout = require("Layout") as Layout_.Layout; const enum Intervals { diff --git a/apps/btadv/todo.txt b/apps/btadv/todo.txt new file mode 100644 index 000000000..aeae5b6c5 --- /dev/null +++ b/apps/btadv/todo.txt @@ -0,0 +1,7 @@ +[ ] g.dump() - screenshot via IDE +[ ] fix format of EnvSensing data +[-] handle NaNs in data +[x] fix sending of HRM / changing service? +[x] fix menu scrolling/jumping +[x] fix resetting to accel menu +[ ] fix button lag / slow down BLE on menu? From c82e0f4e0a22769674f4bb9573cdd24306b2c318 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 27 Jan 2023 23:07:34 +0000 Subject: [PATCH 0182/1725] btadv: re-enable serv-update, only show when new --- apps/btadv/app.ts | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 9aca63f91..430127088 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -487,7 +487,7 @@ const enableSensors = () => { // ---------------------------- -const serviceActive = (serv: BleServ): boolean => { +const haveServiceData = (serv: BleServ): boolean => { switch (serv) { case BleServ.HRM: return !!hrm; case BleServ.EnvSensing: return !!(bar || mag); @@ -506,6 +506,7 @@ const serviceToAdvert = (serv: BleServ, initial = false): BleServAdvert => { }; if (hrm) { o.value = encodeHrm(hrm); + hrm = undefined; } return { [BleChar.HRM]: o }; @@ -521,6 +522,7 @@ const serviceToAdvert = (serv: BleServ, initial = false): BleServAdvert => { }; if (gps) { o.value = encodeGps(gps); + gps = undefined; } return { [BleChar.LocationAndSpeed]: o }; @@ -551,6 +553,7 @@ const serviceToAdvert = (serv: BleServ, initial = false): BleServAdvert => { o[BleChar.Elevation]!.value = encodeElevation(bar); o[BleChar.TempCelsius]!.value = encodeTemp(bar); o[BleChar.Pressure]!.value = encodePressure(bar); + bar = undefined; } } @@ -563,6 +566,7 @@ const serviceToAdvert = (serv: BleServ, initial = false): BleServAdvert => { if (mag) { o[BleChar.MagneticFlux3D]!.value = encodeMag(mag); + mag = undefined; } } @@ -575,7 +579,7 @@ const getBleAdvert = (map: (s: BleServ) => T, all = false) => { const advert: { [key in BleServ]?: T } = {}; for (const serv of services) { - if (all || serviceActive(serv)) { + if (all || haveServiceData(serv)) { advert[serv] = map(serv); } } @@ -665,10 +669,10 @@ const setIntervals = (connected: boolean) => { } }; -// setIntervals(NRF.getSecurityStatus().connected); -// NRF.on("connect", () => { -// setIntervals(true); -// }); -// NRF.on("disconnect", () => { -// setIntervals(false); -// }); +setIntervals(NRF.getSecurityStatus().connected); +NRF.on("connect", () => { + setIntervals(true); +}); +NRF.on("disconnect", () => { + setIntervals(false); +}); From bd3efc5f9f42c327e3986b83dd78e29aa5b5fe71 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 27 Jan 2023 23:07:47 +0000 Subject: [PATCH 0183/1725] btadv: change info layout to plain text --- apps/btadv/app.js | 178 ++++++++++++++------------------------ apps/btadv/app.ts | 213 +++++++++++++++++++--------------------------- 2 files changed, 152 insertions(+), 239 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index fe6e05be6..e2c79490e 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -11,6 +11,8 @@ var __assign = (this && this.__assign) || function () { return __assign.apply(this, arguments); }; var Layout = require("Layout"); +Bangle.loadWidgets(); +Bangle.drawWidgets(); var services = ["0x180d", "0x181a", "0x1819"]; var acc; var bar; @@ -32,6 +34,7 @@ var idToName = { hrm: "HRM", mag: "Magnetometer", }; +var infoFont = "6x8:2"; var colour = { on: "#0f0", off: "#fff", @@ -88,129 +91,71 @@ var btnLayout = new Layout({ }); var setBtnsShown = function (b) { btnsShown = b; - g.clearRect(Bangle.appRect); redraw(); }; -var infoFont = "6x8:2"; -var infoCommon = { - type: "txt", - label: "", - font: infoFont, - pad: 5, -}; -var infoLayout = new Layout({ - type: "v", - c: [ - { - type: "h", - c: [ - __assign({ id: "bar_alti" }, infoCommon), - __assign({ id: "bar_pres" }, infoCommon), - __assign({ id: "bar_temp" }, infoCommon), - ] - }, - { - type: "h", - c: [ - __assign({ id: "gps_lat" }, infoCommon), - __assign({ id: "gps_lon" }, infoCommon), - __assign({ id: "gps_altitude" }, infoCommon), - __assign({ id: "gps_satellites" }, infoCommon), - __assign({ id: "gps_hdop" }, infoCommon), - ] - }, - { - type: "h", - c: [ - __assign({ id: "hrm_bpm" }, infoCommon), - __assign({ id: "hrm_confidence" }, infoCommon), - ] - }, - { - type: "h", - c: [ - __assign({ id: "mag_x" }, infoCommon), - __assign({ id: "mag_y" }, infoCommon), - __assign({ id: "mag_z" }, infoCommon), - __assign({ id: "mag_heading" }, infoCommon), - ] - }, - __assign({ type: "btn", label: "Set", cb: function () { - setBtnsShown(true); - } }, btnStyle), - ] -}, { - lazy: true, -}); -var showElem = function (layout, s) { - layout.label = s; - delete layout.height; -}; -var hideElem = function (layout) { - layout.height = 0; -}; -var populateInfo = function () { +var drawInfo = function () { + var _a = Bangle.appRect, y = _a.y, x = _a.x, w = _a.w; + var mid = x + w / 2; + var drawn = false; + g.reset() + .clearRect(Bangle.appRect) + .setFont(infoFont) + .setFontAlign(0, -1); if (bar) { - showElem(infoLayout["bar_alti"], "".concat(bar.altitude.toFixed(1), "m")); - showElem(infoLayout["bar_pres"], "".concat(bar.pressure.toFixed(1), "mbar")); - showElem(infoLayout["bar_temp"], "".concat(bar.temperature.toFixed(1), "C")); - } - else { - hideElem(infoLayout["bar_alti"]); - hideElem(infoLayout["bar_pres"]); - hideElem(infoLayout["bar_temp"]); + g.drawString("".concat(bar.altitude.toFixed(1), "m"), mid, y); + y += g.getFontHeight(); + g.drawString("".concat(bar.pressure.toFixed(1), "mbar"), mid, y); + y += g.getFontHeight(); + g.drawString("".concat(bar.temperature.toFixed(1), "C"), mid, y); + y += g.getFontHeight(); + drawn = true; } if (gps) { - showElem(infoLayout["gps_lat"], gps.lat.toFixed(4)); - showElem(infoLayout["gps_lon"], gps.lon.toFixed(4)); - showElem(infoLayout["gps_altitude"], "".concat(gps.alt, "m")); - showElem(infoLayout["gps_satellites"], "".concat(gps.satellites)); - showElem(infoLayout["gps_hdop"], "".concat((gps.hdop * 5).toFixed(1), "m")); - } - else { - hideElem(infoLayout["gps_lat"]); - hideElem(infoLayout["gps_lon"]); - hideElem(infoLayout["gps_altitude"]); - hideElem(infoLayout["gps_satellites"]); - hideElem(infoLayout["gps_hdop"]); + g.drawString("".concat(gps.lat.toFixed(4), " lat, ").concat(gps.lon.toFixed(4), " lon"), mid, y); + y += g.getFontHeight(); + g.drawString("".concat(gps.alt, "m (").concat(gps.satellites, " sat)"), mid, y); + y += g.getFontHeight(); + drawn = true; } if (hrm) { - showElem(infoLayout["hrm_bpm"], "".concat(hrm.bpm)); - showElem(infoLayout["hrm_confidence"], "".concat(hrm.confidence, "%")); - } - else { - hideElem(infoLayout["hrm_bpm"]); - hideElem(infoLayout["hrm_confidence"]); + g.drawString("".concat(hrm.bpm, " BPM (").concat(hrm.confidence, "%)"), mid, y); + y += g.getFontHeight(); + drawn = true; } if (mag) { - showElem(infoLayout["mag_x"], "".concat(mag.x)); - showElem(infoLayout["mag_y"], "".concat(mag.y)); - showElem(infoLayout["mag_z"], "".concat(mag.z)); - showElem(infoLayout["mag_heading"], mag.heading.toFixed(1)); + g.drawString("".concat(mag.x, " ").concat(mag.y, " ").concat(mag.z), mid, y); + y += g.getFontHeight(); + g.drawString("heading: ".concat(mag.heading.toFixed(1)), mid, y); + y += g.getFontHeight(); + drawn = true; } - else { - hideElem(infoLayout["mag_x"]); - hideElem(infoLayout["mag_y"]); - hideElem(infoLayout["mag_z"]); - hideElem(infoLayout["mag_heading"]); + if (!drawn) { + g.drawString("swipe to enable", mid, y); + y += g.getFontHeight(); } }; +var onTap = function (_) { + setBtnsShown(true); +}; var redraw = function () { - var layout; if (btnsShown) { - layout = btnLayout; + if (!prevBtnsShown) { + prevBtnsShown = btnsShown; + Bangle.removeListener("swipe", onTap); + btnLayout.setUI(); + btnLayout.forgetLazyState(); + g.clearRect(Bangle.appRect); + } + btnLayout.render(); } else { - populateInfo(); - infoLayout.update(); - layout = infoLayout; + if (prevBtnsShown) { + prevBtnsShown = btnsShown; + Bangle.setUI(); + Bangle.on("swipe", onTap); + } + drawInfo(); } - if (btnsShown !== prevBtnsShown) { - prevBtnsShown = btnsShown; - layout.forgetLazyState(); - layout.setUI(); - } - layout.render(); }; var encodeHrm = function (hrm) { return [0, hrm.bpm]; @@ -277,7 +222,7 @@ var enableSensors = function () { mag = undefined; console.log("enableSensors():", settings); }; -var serviceActive = function (serv) { +var haveServiceData = function (serv) { switch (serv) { case "0x180d": return !!hrm; case "0x181a": return !!(bar || mag); @@ -297,6 +242,7 @@ var serviceToAdvert = function (serv, initial) { }; if (hrm) { o.value = encodeHrm(hrm); + hrm = undefined; } return _a = {}, _a["0x2a37"] = o, _a; } @@ -310,6 +256,7 @@ var serviceToAdvert = function (serv, initial) { }; if (gps) { o.value = encodeGps(gps); + gps = undefined; } return _b = {}, _b["0x2a67"] = o, _b; } @@ -336,6 +283,7 @@ var serviceToAdvert = function (serv, initial) { o["0x2a6c"].value = encodeElevation(bar); o["0x2A1F"].value = encodeTemp(bar); o["0x2a6d"].value = encodePressure(bar); + bar = undefined; } } if (mag || initial) { @@ -346,6 +294,7 @@ var serviceToAdvert = function (serv, initial) { }; if (mag) { o["0x2aa1"].value = encodeMag(mag); + mag = undefined; } } return o; @@ -357,7 +306,7 @@ var getBleAdvert = function (map, all) { var advert = {}; for (var _i = 0, services_1 = services; _i < services_1.length; _i++) { var serv = services_1[_i]; - if (all || serviceActive(serv)) { + if (all || haveServiceData(serv)) { advert[serv] = map(serv); } } @@ -385,12 +334,10 @@ Bangle.on('pressure', function (newBar) { return bar = newBar; }); Bangle.on('GPS', function (newGps) { return gps = newGps; }); Bangle.on('HRM', function (newHrm) { return hrm = newHrm; }); Bangle.on('mag', function (newMag) { return mag = newMag; }); -Bangle.loadWidgets(); -Bangle.drawWidgets(); setBtnsShown(true); -var redrawInterval = setInterval(redraw, 1000); +var redrawInterval = setInterval(redraw, 2000); Bangle.on("lock", function (locked) { - changeInterval(redrawInterval, locked ? 30000 : 1000); + changeInterval(redrawInterval, locked ? 15000 : 2000); }); enableSensors(); { @@ -416,3 +363,10 @@ var setIntervals = function (connected) { iv = undefined; } }; +setIntervals(NRF.getSecurityStatus().connected); +NRF.on("connect", function () { + setIntervals(true); +}); +NRF.on("disconnect", function () { + setIntervals(false); +}); diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 430127088..6a7435a3f 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -1,10 +1,13 @@ const Layout = require("Layout") as Layout_.Layout; +Bangle.loadWidgets(); +Bangle.drawWidgets(); + const enum Intervals { - BLE_ADVERT = 60 * 1000, + // BLE_ADVERT = 60 * 1000, BLE = 1000, - MENU_WAKE = 1000, - MENU_SLEEP = 30 * 1000, + MENU_WAKE = 2 * 1000, + MENU_SLEEP = 15 * 1000, } type Hrm = { bpm: number, confidence: number }; @@ -100,6 +103,8 @@ const idToName: BtAdvMap = { mag: "Magnetometer", }; +const infoFont: FontNameWithScaleFactor = "6x8:2"; + const colour = { on: "#0f0", off: "#fff", @@ -213,149 +218,107 @@ const btnLayout = new Layout( const setBtnsShown = (b: boolean) => { btnsShown = b; - g.clearRect(Bangle.appRect); redraw(); }; -const infoFont: FontNameWithScaleFactor = "6x8:2"; -const infoCommon = { - type: "txt", - label: "", - font: infoFont, - pad: 5, -} as const; +const drawInfo = () => { + let { y, x, w } = Bangle.appRect; + const mid = x + w / 2 + let drawn = false; -const infoLayout = new Layout( - { - type: "v", - c: [ - { - type: "h", - c: [ - { id: "bar_alti", ...infoCommon }, - { id: "bar_pres", ...infoCommon }, - { id: "bar_temp", ...infoCommon }, - ] - }, - { - type: "h", - c: [ - { id: "gps_lat", ...infoCommon }, - { id: "gps_lon", ...infoCommon }, - { id: "gps_altitude", ...infoCommon }, - { id: "gps_satellites", ...infoCommon }, - { id: "gps_hdop", ...infoCommon }, - ] - }, - { - type: "h", - c: [ - { id: "hrm_bpm", ...infoCommon }, - { id: "hrm_confidence", ...infoCommon }, - ] - }, - { - type: "h", - c: [ - { id: "mag_x", ...infoCommon }, - { id: "mag_y", ...infoCommon }, - { id: "mag_z", ...infoCommon }, - { id: "mag_heading", ...infoCommon }, - ] - }, - { - type: "btn", - label: "Set", - cb: () => { - setBtnsShown(true); - }, - ...btnStyle, - }, - ] - }, - { - lazy: true, - // back: () => (load as any)(), - } -); + g.reset() + .clearRect(Bangle.appRect) + .setFont(infoFont) + .setFontAlign(0, -1); -const showElem = ( - layout: Layout_.Hierarchy & { type: "txt" }, - s: string, -) => { - layout.label = s; - // delete layout.width; TODO? - delete layout.height; -}; - -const hideElem = (layout: Layout_.Hierarchy) => { - layout.height = 0; -}; - -const populateInfo = () => { if (bar) { - showElem(infoLayout["bar_alti"]!, `${bar.altitude.toFixed(1)}m`); - showElem(infoLayout["bar_pres"]!, `${bar.pressure.toFixed(1)}mbar`); - showElem(infoLayout["bar_temp"]!, `${bar.temperature.toFixed(1)}C`); - } else { - hideElem(infoLayout["bar_alti"]!); - hideElem(infoLayout["bar_pres"]!); - hideElem(infoLayout["bar_temp"]!); + g.drawString(`${bar.altitude.toFixed(1)}m`, mid, y); + y += g.getFontHeight(); + + g.drawString(`${bar.pressure.toFixed(1)}mbar`, mid, y); + y += g.getFontHeight(); + + g.drawString(`${bar.temperature.toFixed(1)}C`, mid, y); + y += g.getFontHeight(); + + drawn = true; } if (gps) { - showElem(infoLayout["gps_lat"]!, gps.lat.toFixed(4)); - showElem(infoLayout["gps_lon"]!, gps.lon.toFixed(4)); - showElem(infoLayout["gps_altitude"]!, `${gps.alt}m`); - showElem(infoLayout["gps_satellites"]!, `${gps.satellites}`); - showElem(infoLayout["gps_hdop"]!, `${(gps.hdop * 5).toFixed(1)}m`); - } else { - hideElem(infoLayout["gps_lat"]!); - hideElem(infoLayout["gps_lon"]!); - hideElem(infoLayout["gps_altitude"]!); - hideElem(infoLayout["gps_satellites"]!); - hideElem(infoLayout["gps_hdop"]!); + g.drawString( + `${gps.lat.toFixed(4)} lat, ${gps.lon.toFixed(4)} lon`, + mid, + y, + ); + y += g.getFontHeight(); + + g.drawString( + `${gps.alt}m (${gps.satellites} sat)`, + mid, + y, + ); + y += g.getFontHeight(); + + drawn = true; } if (hrm) { - showElem(infoLayout["hrm_bpm"]!, `${hrm.bpm}`); - showElem(infoLayout["hrm_confidence"]!, `${hrm.confidence}%`); - } else { - hideElem(infoLayout["hrm_bpm"]!); - hideElem(infoLayout["hrm_confidence"]!); + g.drawString(`${hrm.bpm} BPM (${hrm.confidence}%)`, mid, y); + y += g.getFontHeight(); + + drawn = true; } if (mag) { - showElem(infoLayout["mag_x"]!, `${mag.x}`); - showElem(infoLayout["mag_y"]!, `${mag.y}`); - showElem(infoLayout["mag_z"]!, `${mag.z}`); - showElem(infoLayout["mag_heading"]!, mag.heading.toFixed(1)); - } else { - hideElem(infoLayout["mag_x"]!); - hideElem(infoLayout["mag_y"]!); - hideElem(infoLayout["mag_z"]!); - hideElem(infoLayout["mag_heading"]!); + g.drawString( + `${mag.x} ${mag.y} ${mag.z}`, + mid, + y + ); + y += g.getFontHeight(); + + g.drawString( + `heading: ${mag.heading.toFixed(1)}`, + mid, + y + ); + y += g.getFontHeight(); + + drawn = true; + } + + if (!drawn) { + g.drawString(`swipe to enable`, mid, y); + y += g.getFontHeight(); } }; +const onTap = (_: { /* ... */ }) => { + setBtnsShown(true); +}; + const redraw = () => { - let layout; - if (btnsShown) { - layout = btnLayout; + if (!prevBtnsShown) { + prevBtnsShown = btnsShown; + + Bangle.removeListener("swipe", onTap); + + btnLayout.setUI(); + btnLayout.forgetLazyState(); + g.clearRect(Bangle.appRect); // in case btnLayout isn't full screen + } + + btnLayout.render(); } else { - populateInfo(); - infoLayout.update(); + if (prevBtnsShown) { + prevBtnsShown = btnsShown; - layout = infoLayout; + Bangle.setUI(); // remove all existing input handlers + Bangle.on("swipe", onTap); + } + drawInfo(); } - - if (btnsShown !== prevBtnsShown) { - prevBtnsShown = btnsShown; - layout.forgetLazyState(); - layout.setUI(); - } - layout.render(); }; const encodeHrm: LenFunc = (hrm: Hrm) => @@ -617,10 +580,6 @@ Bangle.on('GPS', newGps => gps = newGps); Bangle.on('HRM', newHrm => hrm = newHrm); Bangle.on('mag', newMag => mag = newMag); -// show UI -Bangle.loadWidgets(); -Bangle.drawWidgets(); - setBtnsShown(true); const redrawInterval = setInterval(redraw, Intervals.MENU_WAKE); From ec75c37d3782ad09608c691cc4a9892384143085 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 27 Jan 2023 23:09:26 +0000 Subject: [PATCH 0184/1725] layout.d.ts: rename out the way --- typescript/types/layout.d.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index 5e7613165..f8bd040bd 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -1,17 +1,17 @@ type Prev = [never, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]; -type ExtractIds = +type ExtractIds = [Depth] extends [never] ? never : (T extends { id: infer Id extends string } ? Id : never) | ( - T extends { c: Array } + T extends { c: Array } ? ExtractIds : never ); -declare module Layout { +declare module Layout_ { type Layouter = { [k in ExtractIds]: number; From 79ebde3e698ab399ff9c111b3668ce6d41ee2468 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 27 Jan 2023 23:10:03 +0000 Subject: [PATCH 0185/1725] layout.d.ts: ExtractIds gives back { id: T } --- typescript/types/layout.d.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index f8bd040bd..31d57ff3c 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -3,7 +3,9 @@ type Prev = [never, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]; type ExtractIds = [Depth] extends [never] ? never - : (T extends { id: infer Id extends string } ? Id : never) + : (T extends { id: infer Id extends string } + ? { [k in Id]: T } + : never) | ( T extends { c: Array } @@ -13,9 +15,9 @@ type ExtractIds = declare module Layout_ { type Layouter = + ExtractIds + & { - [k in ExtractIds]: number; - } & { // these actually change T render(l?: T): void; layout(l: T): void; From f92ffd5d8860150eb65174c493027602a38deabb Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 27 Jan 2023 23:10:17 +0000 Subject: [PATCH 0186/1725] layout.d.ts: update optionals --- typescript/types/layout.d.ts | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index 31d57ff3c..2240ef55b 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -36,13 +36,13 @@ declare module Layout_ { hier: T, options?: { lazy: boolean, - btns: { + btns?: { label: string, cb: () => void, cbl: () => void, }[], - back: () => void, - remove: () => void, + back?: () => void, + remove?: () => void, }, ): Layouter; }; @@ -71,11 +71,11 @@ declare module Layout_ { id?: string, font?: FontNameWithScaleFactor, scale?: number, - col: ColorResolvable, - bgCol: ColorResolvable, - pad: number, - fillx: Fill, - filly: Fill, + col?: ColorResolvable, + bgCol?: ColorResolvable, + pad?: number, + fillx?: Fill, + filly?: Fill, width?: number, height?: number, } & ( @@ -92,17 +92,17 @@ declare module Layout_ { { type: "v", c: Hierarchy[], - halign: Align, + halign?: Align, } | { type: "h" c: Hierarchy[], - valign: Align, + valign?: Align, } | { type: "txt", label: string, font: FontNameWithScaleFactor, } | { - type: undefined, + type: undefined, // blank, for padding } | ( { type: "btn", @@ -112,8 +112,8 @@ declare module Layout_ { type: "btn", cb: () => void, label: string, - font: FontNameWithScaleFactor, - scale: number, + font?: FontNameWithScaleFactor, + scale?: number, } ) | { type: "img", From f7f6dd2e5e66838335f0e56b663654cd9a9058a0 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 29 Jan 2023 22:31:41 +0000 Subject: [PATCH 0187/1725] btadv: ui/advert changes to improve idle touch handling --- apps/btadv/app.ts | 166 ++++++++++++++++++++++++++++------------------ 1 file changed, 100 insertions(+), 66 deletions(-) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 6a7435a3f..4c87c504e 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -5,9 +5,10 @@ Bangle.drawWidgets(); const enum Intervals { // BLE_ADVERT = 60 * 1000, - BLE = 1000, - MENU_WAKE = 2 * 1000, - MENU_SLEEP = 15 * 1000, + BLE = 1000, // info screen + BLE_BACKGROUND = 5000, // button screen + UI_INFO = 5 * 1000, // info refresh, wake + UI_INFO_SLEEP = 15 * 1000, // info refresh, asleep } type Hrm = { bpm: number, confidence: number }; @@ -218,14 +219,21 @@ const btnLayout = new Layout( const setBtnsShown = (b: boolean) => { btnsShown = b; + + hook(!btnsShown); + setIntervals(); + redraw(); }; -const drawInfo = () => { +const drawInfo = (force?: true) => { let { y, x, w } = Bangle.appRect; const mid = x + w / 2 let drawn = false; + if (!force && !bar && !gps && !hrm && !mag) + return; + g.reset() .clearRect(Bangle.appRect) .setFont(infoFont) @@ -288,12 +296,16 @@ const drawInfo = () => { } if (!drawn) { - g.drawString(`swipe to enable`, mid, y); + if (!force || Object.values(settings).every((x: boolean) => !x)) { + g.drawString(`swipe to enable`, mid, y); + } else { + g.drawString(`waiting for events...`, mid, y); + } y += g.getFontHeight(); } }; -const onTap = (_: { /* ... */ }) => { +const onTap = (/* _: { ... } */) => { setBtnsShown(true); }; @@ -316,8 +328,11 @@ const redraw = () => { Bangle.setUI(); // remove all existing input handlers Bangle.on("swipe", onTap); + + drawInfo(true); + } else { + drawInfo(); } - drawInfo(); } }; @@ -444,8 +459,6 @@ const enableSensors = () => { Bangle.setCompassPower(settings.mag, "btadv"); if (!settings.mag) mag = undefined; - - console.log("enableSensors():", settings); }; // ---------------------------- @@ -550,47 +563,88 @@ const getBleAdvert = (map: (s: BleServ) => T, all = false) => { return advert; }; -// TODO: call this at the start, set the advert -const updateBleAdvert = () => { - let bleAdvert: ReturnType>; +// done via advertise in setServices() +//const updateBleAdvert = () => { +// let bleAdvert: ReturnType>; +// +// if (!(bleAdvert = (Bangle as any).bleAdvert)) { +// bleAdvert = getBleAdvert(_ => undefined); +// +// (Bangle as any).bleAdvert = bleAdvert; +// } +// +// try { +// NRF.setAdvertising(bleAdvert); +// } catch (e) { +// console.log("couldn't setAdvertising():", e); +// } +//}; - if (!(bleAdvert = (Bangle as any).bleAdvert)) { - bleAdvert = getBleAdvert(_ => undefined); - - (Bangle as any).bleAdvert = bleAdvert; - } - - try { - NRF.setAdvertising(bleAdvert); - } catch (e) { - console.log("setAdvertising(): " + e); - } -}; - -// call this when settings changes, or when we have new data to send/serve const updateServices = () => { const newAdvert = getBleAdvert(serviceToAdvert); NRF.updateServices(newAdvert); }; -Bangle.on('accel', newAcc => acc = newAcc); -Bangle.on('pressure', newBar => bar = newBar); -Bangle.on('GPS', newGps => gps = newGps); -Bangle.on('HRM', newHrm => hrm = newHrm); -Bangle.on('mag', newMag => mag = newMag); +const onAccel = (newAcc: typeof acc) => acc = newAcc; +const onPressure = (newBar: typeof bar) => bar = newBar; +const onGPS = (newGps: typeof gps) => gps = newGps; +const onHRM = (newHrm: typeof hrm) => hrm = newHrm; +const onMag = (newMag: typeof mag) => mag = newMag; -setBtnsShown(true); +const hook = (enable: boolean) => { + // need to disable for perf reasons, when buttons are shown + if (enable) { + Bangle.on("accel", onAccel); + Bangle.on("pressure", onPressure); + Bangle.on("GPS", onGPS); + Bangle.on("HRM", onHRM); + Bangle.on("mag", onMag); + } else { + Bangle.removeListener("accel", onAccel); + Bangle.removeListener("pressure", onPressure); + Bangle.removeListener("GPS", onGPS); + Bangle.removeListener("HRM", onHRM); + Bangle.removeListener("mag", onMag); + } +} -const redrawInterval = setInterval(redraw, Intervals.MENU_WAKE); -Bangle.on("lock", locked => { +// --- intervals --- + +const setIntervals = ( + locked: boolean = Bangle.isLocked(), + connected: boolean = NRF.getSecurityStatus().connected, +) => { changeInterval( redrawInterval, - locked ? Intervals.MENU_SLEEP : Intervals.MENU_WAKE, + locked ? Intervals.UI_INFO_SLEEP : Intervals.UI_INFO, ); -}); + + if (connected) { + const interval = btnsShown ? Intervals.BLE_BACKGROUND : Intervals.BLE; + + if (bleInterval) { + changeInterval(bleInterval, interval); + } else { + bleInterval = setInterval(updateServices, interval); + } + } else if (bleInterval) { + clearInterval(bleInterval); + bleInterval = undefined; + } +}; + +const redrawInterval = setInterval(redraw, /*replaced*/1000); +Bangle.on("lock", locked => setIntervals(locked)); + +let bleInterval: undefined | number; +NRF.on("connect", () => setIntervals(undefined, true)); +NRF.on("disconnect", () => setIntervals(undefined, false)); + +setIntervals(); // turn things on +setBtnsShown(true); enableSensors(); // set services/advert once at startup: @@ -598,40 +652,20 @@ enableSensors(); // must have fixed services from the start: const ad = getBleAdvert(serv => serviceToAdvert(serv, true), /*all*/true); + const adServices = Object + .keys(ad) + .map((k: string) => k.replace("0x", "")); + NRF.setServices( ad, { - // FIXME: go via setAdvertising(), merge wth Bangle.bleAdvert - advertise: Object - .keys(ad) - .map((k: string) => k.replace("0x", "")) - - // TODO: uart: false, + advertise: adServices, + uart: false, }, ); } -let iv: undefined | number; -const setIntervals = (connected: boolean) => { - if (connected) { - if (iv) { - changeInterval(iv, Intervals.BLE); - } else { - iv = setInterval( - updateServices, - Intervals.BLE - ); - } - } else if (iv) { - clearInterval(iv); - iv = undefined; - } -}; - -setIntervals(NRF.getSecurityStatus().connected); -NRF.on("connect", () => { - setIntervals(true); -}); -NRF.on("disconnect", () => { - setIntervals(false); -}); +// touch events sometimes come through stale :( +// Bangle.on("touch", (button, xy) => { +// console.log(`touch: button=${button}, x=${xy?.x} y=${xy?.y}`); +// }) From 74aa06ec772aa9aa8fcd27e4fb52fb214d501698 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 29 Jan 2023 22:32:22 +0000 Subject: [PATCH 0188/1725] btadv: rebuild app.js --- apps/btadv/app.js | 118 ++++++++++++++++++++++++++-------------------- 1 file changed, 66 insertions(+), 52 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index e2c79490e..ddc6ba98d 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -91,12 +91,16 @@ var btnLayout = new Layout({ }); var setBtnsShown = function (b) { btnsShown = b; + hook(!btnsShown); + setIntervals(); redraw(); }; -var drawInfo = function () { +var drawInfo = function (force) { var _a = Bangle.appRect, y = _a.y, x = _a.x, w = _a.w; var mid = x + w / 2; var drawn = false; + if (!force && !bar && !gps && !hrm && !mag) + return; g.reset() .clearRect(Bangle.appRect) .setFont(infoFont) @@ -130,11 +134,16 @@ var drawInfo = function () { drawn = true; } if (!drawn) { - g.drawString("swipe to enable", mid, y); + if (!force || Object.values(settings).every(function (x) { return !x; })) { + g.drawString("swipe to enable", mid, y); + } + else { + g.drawString("waiting for events...", mid, y); + } y += g.getFontHeight(); } }; -var onTap = function (_) { +var onTap = function () { setBtnsShown(true); }; var redraw = function () { @@ -153,8 +162,11 @@ var redraw = function () { prevBtnsShown = btnsShown; Bangle.setUI(); Bangle.on("swipe", onTap); + drawInfo(true); + } + else { + drawInfo(); } - drawInfo(); } }; var encodeHrm = function (hrm) { @@ -220,7 +232,6 @@ var enableSensors = function () { Bangle.setCompassPower(settings.mag, "btadv"); if (!settings.mag) mag = undefined; - console.log("enableSensors():", settings); }; var haveServiceData = function (serv) { switch (serv) { @@ -312,61 +323,64 @@ var getBleAdvert = function (map, all) { } return advert; }; -var updateBleAdvert = function () { - var bleAdvert; - if (!(bleAdvert = Bangle.bleAdvert)) { - bleAdvert = getBleAdvert(function (_) { return undefined; }); - Bangle.bleAdvert = bleAdvert; - } - try { - NRF.setAdvertising(bleAdvert); - } - catch (e) { - console.log("setAdvertising(): " + e); - } -}; var updateServices = function () { var newAdvert = getBleAdvert(serviceToAdvert); NRF.updateServices(newAdvert); }; -Bangle.on('accel', function (newAcc) { return acc = newAcc; }); -Bangle.on('pressure', function (newBar) { return bar = newBar; }); -Bangle.on('GPS', function (newGps) { return gps = newGps; }); -Bangle.on('HRM', function (newHrm) { return hrm = newHrm; }); -Bangle.on('mag', function (newMag) { return mag = newMag; }); +var onAccel = function (newAcc) { return acc = newAcc; }; +var onPressure = function (newBar) { return bar = newBar; }; +var onGPS = function (newGps) { return gps = newGps; }; +var onHRM = function (newHrm) { return hrm = newHrm; }; +var onMag = function (newMag) { return mag = newMag; }; +var hook = function (enable) { + if (enable) { + Bangle.on("accel", onAccel); + Bangle.on("pressure", onPressure); + Bangle.on("GPS", onGPS); + Bangle.on("HRM", onHRM); + Bangle.on("mag", onMag); + } + else { + Bangle.removeListener("accel", onAccel); + Bangle.removeListener("pressure", onPressure); + Bangle.removeListener("GPS", onGPS); + Bangle.removeListener("HRM", onHRM); + Bangle.removeListener("mag", onMag); + } +}; +var setIntervals = function (locked, connected) { + if (locked === void 0) { locked = Bangle.isLocked(); } + if (connected === void 0) { connected = NRF.getSecurityStatus().connected; } + changeInterval(redrawInterval, locked ? 15000 : 5000); + if (connected) { + var interval = btnsShown ? 5000 : 1000; + if (bleInterval) { + changeInterval(bleInterval, interval); + } + else { + bleInterval = setInterval(updateServices, interval); + } + } + else if (bleInterval) { + clearInterval(bleInterval); + bleInterval = undefined; + } +}; +var redrawInterval = setInterval(redraw, 1000); +Bangle.on("lock", function (locked) { return setIntervals(locked); }); +var bleInterval; +NRF.on("connect", function () { return setIntervals(undefined, true); }); +NRF.on("disconnect", function () { return setIntervals(undefined, false); }); +setIntervals(); setBtnsShown(true); -var redrawInterval = setInterval(redraw, 2000); -Bangle.on("lock", function (locked) { - changeInterval(redrawInterval, locked ? 15000 : 2000); -}); enableSensors(); { var ad = getBleAdvert(function (serv) { return serviceToAdvert(serv, true); }, true); + var adServices = Object + .keys(ad) + .map(function (k) { return k.replace("0x", ""); }); NRF.setServices(ad, { - advertise: Object - .keys(ad) - .map(function (k) { return k.replace("0x", ""); }) + advertise: adServices, + uart: false, }); } -var iv; -var setIntervals = function (connected) { - if (connected) { - if (iv) { - changeInterval(iv, 1000); - } - else { - iv = setInterval(updateServices, 1000); - } - } - else if (iv) { - clearInterval(iv); - iv = undefined; - } -}; -setIntervals(NRF.getSecurityStatus().connected); -NRF.on("connect", function () { - setIntervals(true); -}); -NRF.on("disconnect", function () { - setIntervals(false); -}); From d0b2d0e306aba1088f18bde438f53ab94b7782c6 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 29 Jan 2023 22:32:27 +0000 Subject: [PATCH 0189/1725] btadv: update todo --- apps/btadv/todo.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/btadv/todo.txt b/apps/btadv/todo.txt index aeae5b6c5..7d4395add 100644 --- a/apps/btadv/todo.txt +++ b/apps/btadv/todo.txt @@ -4,4 +4,6 @@ [x] fix sending of HRM / changing service? [x] fix menu scrolling/jumping [x] fix resetting to accel menu -[ ] fix button lag / slow down BLE on menu? +[x] fix button lag / slow down BLE on menu? + - sometimes events come through stale though +[ ] fast load / remove() handler From cd7723eb530adbb08a382e6f171cbc502edebbbd Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 8 Feb 2023 22:20:52 +0000 Subject: [PATCH 0190/1725] Simple tidy-ups --- .eslintignore | 4 +--- apps/btadv/icon.xcf | Bin 7623 -> 0 bytes apps/btadv/todo.txt | 9 --------- 3 files changed, 1 insertion(+), 12 deletions(-) delete mode 100644 apps/btadv/icon.xcf delete mode 100644 apps/btadv/todo.txt diff --git a/.eslintignore b/.eslintignore index 80891299d..2561e1379 100644 --- a/.eslintignore +++ b/.eslintignore @@ -7,7 +7,5 @@ apps/gipy/pkg/gpconv.js apps/health/chart.min.js *.test.js -# typescript +# typescript/generated files apps/btadv/*.js -apps/promenu/*.js -apps/widChargingStatus/*.js diff --git a/apps/btadv/icon.xcf b/apps/btadv/icon.xcf deleted file mode 100644 index 0bcdaba179ef9f6899a13fae3b8e16a265d841d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7623 zcma)A3zQV)m9D9(?%~nX7z(4&9PM3`2nsp~XID-Zm51^}crAj79{1?b)6BFC(_?oJ zf`@39JTT&}XmU(sT|^8U++~v!g$2}g&F;E-+&n7br7MU$5*{VFcXd^F)qb}g zJ>8SZF*W>M_rLeM_rI_Ib{{&D>w01v;%j2-Tc=MK@U;4i=;yFLgVof84+U$?Jg{it znS>={jl=q^PZREPzz*Zx(gD-c;;D7(65Uzs1rko2mrk^06Ya4_lG)DKf`v<#lO&Ri z$EWqAQ)`l43EE47(EJ{)ww|6YF(wG>y0hsO3+BeYcJF<$<_`r?_?$3axJnq`7SHs| zS-yNRDG`?5jSoNOo+})lHoCkKJz_V$J&}pS@iE}1+B5NWpf?CY=*f6b8X+}P__sci z?IHTFKu=1;LC_S`qz;d6CwjFBpE9L?76zFKYvkmg*7eG&4UB~aJqdgyhfbN1s zcOspP$0!%ehx6qMKUM6bKJB%xs~0i5&$alBWY*sO6}%@S_HVVf%_sT`p!dex?!4Ql z)%D4Hmin~TlbyQ)^p^xdys~%gsyU!<0Daq<^j)h!!;aY5*~V42x&;x2uYy}oCKr^ za1z)Bm}w1|<*wYr2Z)%^;c8xhW)dgNyJol03;j-^AND$HmSVy@?0UiL5JtD-d2rFU zlajBHTjd#8UzQikv*lamSwc*{UA{xUO`Z?#Ecwed+so_XAb&366wl7XI5FYk?m@&q zM`T%{4WFlhNC}ymg@#;gyQ+7xm!r+;2a@q$KRxvBrZ=w~#vYXq-hVjq?xwn&C1GoA z4bhmjWuKP&(7Dis&{2GT7&=k25et13I)T3rk*(n>jm$dLi?TikF?G3>SciC%h%QkV z-LwW9_4ZQ3=lOLEET-0UZ@bFN0%ahvWhq}OY@RxdZ#~{R(0a7>rPd#{_DSE9_DlaR z9g<#`ej&u9x22y;{~`U4^i%1L8h-Sed%aVuxf=)ZC<^MwAl~|nqCcZ^qgO|-i_VW; z8~tK*aSauVUJ;!hWzp*)xw=-J;ckvKCXrsBXunCI?@7!OJjE66_g~Xze?830E)j&;IhuRJy!(0uVQ)qdu9!K@ zn~d3b`HO;Z@Gs)M>GhsH{1*77AY|6exW(N!Mdo65ee5_z%&_KX1)=(k<5;^Kr}{GN zpAdw%yMVjQ{V9-K*Vd7k){#!)D-T~FSbHaDvKtXeCe@W}pE7RpnvQs?E0vB-c3;!d z9jn`7t?u9SDG;w7MLa#`{*ib?rl&2Q?Cyw7Z^dq7!_MDK>+McvW6AD#XCgxysWodd ziEPZp*U=u?2qvHFp0SJSHUSy@cB0r?mbYc-htA@*jfpe?L?0E#TgGy*{*36`zkyHu zXu={sDUbDOyy%O<Hdjc64qN`nsY#)IWg}?W`0P zyZurW8xoUoAHGadh9107+xpu1L9@Vl!5pj<%AA)M$V&eHbHT1qffR-sV^|PU3V(C9 zKEQ~QL%0|8TDZ3>$|OlCK6tuLGolQb#j^`vCQ2rlDrGlz=R zh)60z1Y{@ob&e>Cfeus<=XM;jgSrp+V-uAoZffvL+YY~Wl;D?j8v=GqtAx3;9g*zd zfbNF3hljIZ{s0x)GF4Ho+k!0YDkvY!RA%RZc_9*H(*VTyrZxlR7(&jWaIf)LGg;ptHU?NDWK+)LC!C@1LQwKAI9mf9e3}n+M(g1cLe#H^KN? zKi3ug*v&0S=WdvMY$)VfK!d+O38i0f79D=;a0in=vMmYg1hH(Vj zX9^+1zIZ&ss^!vNXdEn+DQyn`AR5kZBvyL1Xn=Pq9gi?%Tn8wB$W8IRbPBNlD>3su zgR#C;lv(h-^oqm^hfqlUZdjqh{saddF+}D7VN#7tdl14QNS46{kUx`H^`K!)WMwyY z^T!h72MukptN*IRtk*O{(_r9VTbSV$w)9UDGY*)GV1Vy~<3H8Ri`i347#ms=VI{wc zCP3zag^WD_i1CvmJD+A*vh!+$NruBj!{&R&Gy4@i#GH4*{|JfTW=Uk0$xVIFSXOs%5+i$U(!`Ii)aaZ-zMc;gAE=ePn7PYck9d{3`8(UkA$MS86F^ zZfRNAaP}dR0|uaPB9f1XvtS{;=I+&u-M<@IcwJ{_I$5d!%>GD_O%o8~O8p6dzN_f=ClKgQ z`{*K(8JqJ)iIq;bw;-Qy!sd%w$S??C7{?dmVz0l17C(JB!us?JDaLkk|CYF?99t?f zJ#)V9n)F-zd}@atTsZRfLzvMX{(b$88$cVM*J^hcwwA$CF@45uU~iQD!4T-g5a{_` z;}94zOFA%1(!U=$OB#n#Cx%k`{K%n%G1h@-v*&4yVZQx6V~<^=`8HxAUiz1R&UxW_ z7s($Xf8unl3-6Cj>YG_a<&N#x_~%p|$=2{$x3%1DL~XVmCxjKeMLVK;oRD3qa$c2P zA#@>Vv8|%27OE3m+8Gj6J70~~X*h$DYUQgqwAuDlKuSb9urnyD))3J!O}>oq&>0Mo zvg>W&UJh_FM_PF0RP_@{E#_TyFEUs$fEnZvhinUoep4d9!oCM32vwEDvTY7PY?Hj; z21e1^c1cnl9=6M_(3gg6yJAMvCfm_T3Xl7tD%uW|oq}vvE4luNiam)-vR&zeShAh6 zq?(4Us?}Unwa95#F4?6^kW&cQ+omn54gm1bvtX1UIp-a~CAEqz5Wk746gME6q;f=X z!nFZ_!zBXfEo#^m8u+yYnGKPy!}FYV3NDCmLZr&uHcT1(_OEdRa`Ix2(8Kl3I#9r zN}l`FzyPBZ8miWZ>>FeObC0DO~4|%JrugpD-ksvAnYazU0a&p0H~t&Z2^8#%)|L1-@@RH0k1xf z&EPeISD$abC2A>ZEo!kQ=W*e;!v6ze<>12r diff --git a/apps/btadv/todo.txt b/apps/btadv/todo.txt deleted file mode 100644 index 7d4395add..000000000 --- a/apps/btadv/todo.txt +++ /dev/null @@ -1,9 +0,0 @@ -[ ] g.dump() - screenshot via IDE -[ ] fix format of EnvSensing data -[-] handle NaNs in data -[x] fix sending of HRM / changing service? -[x] fix menu scrolling/jumping -[x] fix resetting to accel menu -[x] fix button lag / slow down BLE on menu? - - sometimes events come through stale though -[ ] fast load / remove() handler From 2d1a3cec8f5c92fa47fe0671e5689c4261148a00 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 11 Feb 2023 08:40:06 +0000 Subject: [PATCH 0191/1725] btadv: minimum confidence level for HRM --- apps/btadv/app.js | 13 ++++++++++++- apps/btadv/app.ts | 23 ++++++++++++++++++----- typescript/types/other.d.ts | 2 ++ 3 files changed, 32 insertions(+), 6 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index ddc6ba98d..623f777c6 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -13,11 +13,13 @@ var __assign = (this && this.__assign) || function () { var Layout = require("Layout"); Bangle.loadWidgets(); Bangle.drawWidgets(); +var HRM_MIN_CONFIDENCE = 75; var services = ["0x180d", "0x181a", "0x1819"]; var acc; var bar; var gps; var hrm; +var hrmAny; var mag; var btnsShown = false; var prevBtnsShown = undefined; @@ -126,6 +128,11 @@ var drawInfo = function (force) { y += g.getFontHeight(); drawn = true; } + else if (hrmAny) { + g.drawString("~".concat(hrmAny.bpm, " BPM (").concat(hrmAny.confidence, "%)"), mid, y); + y += g.getFontHeight(); + drawn = true; + } if (mag) { g.drawString("".concat(mag.x, " ").concat(mag.y, " ").concat(mag.z), mid, y); y += g.getFontHeight(); @@ -330,7 +337,11 @@ var updateServices = function () { var onAccel = function (newAcc) { return acc = newAcc; }; var onPressure = function (newBar) { return bar = newBar; }; var onGPS = function (newGps) { return gps = newGps; }; -var onHRM = function (newHrm) { return hrm = newHrm; }; +var onHRM = function (newHrm) { + if (newHrm.confidence >= HRM_MIN_CONFIDENCE) + hrm = newHrm; + hrmAny = newHrm; +}; var onMag = function (newMag) { return mag = newMag; }; var hook = function (enable) { if (enable) { diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 4c87c504e..1acea4710 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -13,6 +13,8 @@ const enum Intervals { type Hrm = { bpm: number, confidence: number }; +const HRM_MIN_CONFIDENCE = 75; + // https://github.com/sputnikdev/bluetooth-gatt-parser/blob/master/src/main/resources/gatt/ const enum BleServ { // org.bluetooth.service.heart_rate @@ -82,6 +84,7 @@ let acc: undefined | AccelData; let bar: undefined | PressureData; let gps: undefined | GPSFix; let hrm: undefined | Hrm; +let hrmAny: undefined | Hrm; let mag: undefined | CompassData; let btnsShown = false; let prevBtnsShown: boolean | undefined = undefined; @@ -275,6 +278,12 @@ const drawInfo = (force?: true) => { y += g.getFontHeight(); drawn = true; + } else if (hrmAny) { + g.drawString(`~${hrmAny.bpm} BPM (${hrmAny.confidence}%)`, mid, y); + y += g.getFontHeight(); + + drawn = true; + } if (mag) { @@ -586,11 +595,15 @@ const updateServices = () => { NRF.updateServices(newAdvert); }; -const onAccel = (newAcc: typeof acc) => acc = newAcc; -const onPressure = (newBar: typeof bar) => bar = newBar; -const onGPS = (newGps: typeof gps) => gps = newGps; -const onHRM = (newHrm: typeof hrm) => hrm = newHrm; -const onMag = (newMag: typeof mag) => mag = newMag; +const onAccel = (newAcc: NonNull) => acc = newAcc; +const onPressure = (newBar: NonNull) => bar = newBar; +const onGPS = (newGps: NonNull) => gps = newGps; +const onHRM = (newHrm: NonNull) => { + if (newHrm.confidence >= HRM_MIN_CONFIDENCE) + hrm = newHrm; + hrmAny = newHrm; +}; +const onMag = (newMag: NonNull) => mag = newMag; const hook = (enable: boolean) => { // need to disable for perf reasons, when buttons are shown diff --git a/typescript/types/other.d.ts b/typescript/types/other.d.ts index 8f0d07855..9839286fa 100644 --- a/typescript/types/other.d.ts +++ b/typescript/types/other.d.ts @@ -11,3 +11,5 @@ interface IArguments { type Exclude = T extends U ? never : T; type ReturnType = T extends (...args: any[]) => infer R ? R : never; + +type NonNull = Exclude; From 794c37358827eeeb3416b67375ff4e80fda4b6b8 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 11 Feb 2023 08:44:24 +0000 Subject: [PATCH 0192/1725] btadv: fit "waiting" message on screen --- apps/btadv/app.js | 2 +- apps/btadv/app.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 623f777c6..82b5746bb 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -145,7 +145,7 @@ var drawInfo = function (force) { g.drawString("swipe to enable", mid, y); } else { - g.drawString("waiting for events...", mid, y); + g.drawString("events pending", mid, y); } y += g.getFontHeight(); } diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 1acea4710..8f3336ef6 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -107,6 +107,7 @@ const idToName: BtAdvMap = { mag: "Magnetometer", }; +// 15 characters per line const infoFont: FontNameWithScaleFactor = "6x8:2"; const colour = { @@ -308,7 +309,7 @@ const drawInfo = (force?: true) => { if (!force || Object.values(settings).every((x: boolean) => !x)) { g.drawString(`swipe to enable`, mid, y); } else { - g.drawString(`waiting for events...`, mid, y); + g.drawString(`events pending`, mid, y); } y += g.getFontHeight(); } From 2c3edd5c7bc7390e1ec1f3fadeba18e68d05eb1f Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 11 Feb 2023 08:44:39 +0000 Subject: [PATCH 0193/1725] btadv: clear hrmAny when turned off --- apps/btadv/app.js | 2 +- apps/btadv/app.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 82b5746bb..40551706a 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -235,7 +235,7 @@ var enableSensors = function () { gps = undefined; Bangle.setHRMPower(settings.hrm, "btadv"); if (!settings.hrm) - hrm = undefined; + hrm = hrmAny = undefined; Bangle.setCompassPower(settings.mag, "btadv"); if (!settings.mag) mag = undefined; diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 8f3336ef6..35a123ce3 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -464,7 +464,7 @@ const enableSensors = () => { Bangle.setHRMPower(settings.hrm, "btadv"); if (!settings.hrm) - hrm = undefined; + hrm = hrmAny = undefined; Bangle.setCompassPower(settings.mag, "btadv"); if (!settings.mag) From d493a305e2b5755039cfef8e08dafb122a96cf23 Mon Sep 17 00:00:00 2001 From: Stiralbios Date: Wed, 15 Feb 2023 18:29:16 +0100 Subject: [PATCH 0194/1725] [TerminalClock] Attempt to fix memoryleak with fastloading --- apps/terminalclock/ChangeLog | 1 + apps/terminalclock/app.js | 5 +++-- apps/terminalclock/metadata.json | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/terminalclock/ChangeLog b/apps/terminalclock/ChangeLog index 2df526734..acdbf0f1e 100644 --- a/apps/terminalclock/ChangeLog +++ b/apps/terminalclock/ChangeLog @@ -8,3 +8,4 @@ 0.08: Hide widgets instead of not loading them at all Use Clockface_menu for widgets and power saving settings 0.09: Add default HRM value, default altitude value +0.10: Add fastloading diff --git a/apps/terminalclock/app.js b/apps/terminalclock/app.js index 04e4fb5c8..ba978574a 100644 --- a/apps/terminalclock/app.js +++ b/apps/terminalclock/app.js @@ -78,7 +78,7 @@ }); }, - /* + // todo add fastloading when the memory leak is fixed remove: function() { if (this.turnOnInterval){ @@ -87,13 +87,13 @@ } if (this.turnOffServiceTimeout){ clearTimeout(this.turnOffServiceTimeout) + delete this.turnOffServiceTimeout } turnOffServices(); if (this.onLock) Bangle.removeListener('lock', this.onLock); if (this.onHRM) Bangle.removeListener('HRM', this.onHRM); if (this.onPressure) Bangle.removeListener('onPressure', this.onPressure); } - */ }); @@ -173,6 +173,7 @@ Bangle.setBarometerPower(true, "terminalclock"); } if(clock.powerSave){ + delete clock.turnOffServiceTimeout; clock.turnOffServiceTimeout = setTimeout(function () { turnOffServices(); }, 45000); diff --git a/apps/terminalclock/metadata.json b/apps/terminalclock/metadata.json index fcdafd017..12ca5ef03 100644 --- a/apps/terminalclock/metadata.json +++ b/apps/terminalclock/metadata.json @@ -3,7 +3,7 @@ "name": "Terminal Clock", "shortName":"Terminal Clock", "description": "A terminal cli like clock displaying multiple sensor data", - "version":"0.09", + "version":"0.10", "icon": "app.png", "type": "clock", "tags": "clock", From c9207e27959662e5aa2b5dfb37381d15a3a8a10b Mon Sep 17 00:00:00 2001 From: Stiralbios Date: Wed, 15 Feb 2023 19:59:02 +0100 Subject: [PATCH 0195/1725] [TerminalClock] Attempt to fix the memory leak --- apps/terminalclock/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/terminalclock/app.js b/apps/terminalclock/app.js index ba978574a..c9186160f 100644 --- a/apps/terminalclock/app.js +++ b/apps/terminalclock/app.js @@ -173,7 +173,7 @@ Bangle.setBarometerPower(true, "terminalclock"); } if(clock.powerSave){ - delete clock.turnOffServiceTimeout; + if(clock.turnOffServiceTimeout) clearTimeout(clock.turnOffServiceTimeout); clock.turnOffServiceTimeout = setTimeout(function () { turnOffServices(); }, 45000); From c4cbbd460d741d7eb9d63f5113c38a29ed129b89 Mon Sep 17 00:00:00 2001 From: thyttan <97237430+thyttan@users.noreply.github.com> Date: Wed, 15 Feb 2023 20:30:57 +0100 Subject: [PATCH 0196/1725] Update ChangeLog --- apps/quicklaunch/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/quicklaunch/ChangeLog b/apps/quicklaunch/ChangeLog index 4aa59334e..4b92be8cc 100644 --- a/apps/quicklaunch/ChangeLog +++ b/apps/quicklaunch/ChangeLog @@ -7,5 +7,5 @@ 0.07: Revert version 0.06. This version is the same as 0.05. 0.08: Respect appRect on touch events 0.09: Do not react if clkinfo is focused -0.10: Extend the functionality via a quicklaunch app that can be launched +0.10: Extend the functionality via a quicklaunch.app.js file that can be launched with quicklaunch itself. From 666ae825cf485f9ecbe03411f8586f59824262ce Mon Sep 17 00:00:00 2001 From: m-p-3 Date: Wed, 15 Feb 2023 14:43:05 -0500 Subject: [PATCH 0197/1725] [messageicons] Add Jira to icon list + color --- apps/messageicons/lib.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/messageicons/lib.js b/apps/messageicons/lib.js index 314840c13..281d3a201 100644 --- a/apps/messageicons/lib.js +++ b/apps/messageicons/lib.js @@ -33,6 +33,7 @@ exports.getColor = function(msg,options) { "google home": "#fbbc05", // "home assistant": "#41bdf5", // ha-blue is #41bdf5, but that's the background "instagram": "#ff0069", // https://about.instagram.com/brand/gradient + "jira": :"#0052cc", //https://atlassian.design/resources/logo-library "lieferando": "#ff8000", "linkedin": "#0a66c2", // https://brand.linkedin.com/ "messenger": "#0078ff", @@ -65,4 +66,4 @@ exports.getColor = function(msg,options) { "youtube": "#f00", // https://www.youtube.com/howyoutubeworks/resources/brand-resources/#logos-icons-and-colors }[s]||options.default; }; - \ No newline at end of file + From 0611aa94c9d38fab4c70ff65726e1de25fe8bde5 Mon Sep 17 00:00:00 2001 From: m-p-3 Date: Wed, 15 Feb 2023 14:45:26 -0500 Subject: [PATCH 0198/1725] Add jira.png to /apps/messageicons/icons --- apps/messageicons/icons/jira.png | Bin 0 -> 224 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/messageicons/icons/jira.png diff --git a/apps/messageicons/icons/jira.png b/apps/messageicons/icons/jira.png new file mode 100644 index 0000000000000000000000000000000000000000..fe3d83b6a71907f7dd44793d6b5929d70861c4dc GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM3?#3wJbMaAF%}28J29*~C-V}>VM%xNb!1@J z*w6hZkrl{i3-AeX1=2vUG=1lJAjMP? Date: Wed, 15 Feb 2023 14:46:18 -0500 Subject: [PATCH 0199/1725] Bump version to 0.05 --- apps/messageicons/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/messageicons/metadata.json b/apps/messageicons/metadata.json index 0d1db227b..13f218508 100644 --- a/apps/messageicons/metadata.json +++ b/apps/messageicons/metadata.json @@ -1,7 +1,7 @@ { "id": "messageicons", "name": "Message Icons", - "version": "0.04", + "version": "0.05", "description": "Library containing a list of icons and colors for apps", "icon": "app.png", "type": "module", From e1bfebfdc30ca3f7fc1a9ded0619dfb5bcbc704b Mon Sep 17 00:00:00 2001 From: m-p-3 Date: Wed, 15 Feb 2023 14:47:15 -0500 Subject: [PATCH 0200/1725] Update ChangeLog for v0.05 --- apps/messageicons/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/messageicons/ChangeLog b/apps/messageicons/ChangeLog index 1dd1f3d9e..f420615cb 100644 --- a/apps/messageicons/ChangeLog +++ b/apps/messageicons/ChangeLog @@ -3,3 +3,4 @@ 0.03: Fix icons broken in 0v02 (#2386) Store all icons in a separate binary file (much faster lookup) 0.04: Add message icon for 'clock' +0.05: Add message icon for 'jira' From 5a2597ae5c03a34f50b344dad7dcd4d9944e2169 Mon Sep 17 00:00:00 2001 From: m-p-3 Date: Wed, 15 Feb 2023 14:52:07 -0500 Subject: [PATCH 0201/1725] Fixed typo --- apps/messageicons/lib.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/messageicons/lib.js b/apps/messageicons/lib.js index 281d3a201..9b293e608 100644 --- a/apps/messageicons/lib.js +++ b/apps/messageicons/lib.js @@ -33,7 +33,7 @@ exports.getColor = function(msg,options) { "google home": "#fbbc05", // "home assistant": "#41bdf5", // ha-blue is #41bdf5, but that's the background "instagram": "#ff0069", // https://about.instagram.com/brand/gradient - "jira": :"#0052cc", //https://atlassian.design/resources/logo-library + "jira": "#0052cc", //https://atlassian.design/resources/logo-library "lieferando": "#ff8000", "linkedin": "#0a66c2", // https://brand.linkedin.com/ "messenger": "#0078ff", From 549f5ddd9a5e5116892ad14fa2394c775731cc8e Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Wed, 15 Feb 2023 20:54:58 +0100 Subject: [PATCH 0202/1725] sensortools: Fix time in gps --- apps/sensortools/ChangeLog | 1 + apps/sensortools/lib.js | 8 ++++---- apps/sensortools/metadata.json | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/apps/sensortools/ChangeLog b/apps/sensortools/ChangeLog index 518e5dab4..7d9bdd6a8 100644 --- a/apps/sensortools/ChangeLog +++ b/apps/sensortools/ChangeLog @@ -1,3 +1,4 @@ 0.01: New App! 0.02: Less time used during boot if disabled 0.03: Fixed some test data +0.04: Correct type of time attribute in gps to Date diff --git a/apps/sensortools/lib.js b/apps/sensortools/lib.js index 595492251..7dfc6307d 100644 --- a/apps/sensortools/lib.js +++ b/apps/sensortools/lib.js @@ -205,7 +205,7 @@ exports.enable = () => { "alt": 100, "speed": 10, "course": 12, - "time": Date.now(), + "time": new Date(), "satellites": 7, "fix": 1, "hdop": 1 @@ -228,7 +228,7 @@ exports.enable = () => { let result = { "speed": Math.random() * 3 + 2, - "time": Date.now(), + "time": new Date(), "satellites": Math.floor(Math.random()*5)+3, "fix": 1, "hdop": Math.floor(Math.random(30)+1) @@ -268,7 +268,7 @@ exports.enable = () => { "alt": NaN, "speed": NaN, "course": NaN, - "time": Date.now(), + "time": new Date(), "satellites": 2, "fix": 0, "hdop": NaN @@ -301,7 +301,7 @@ exports.enable = () => { "alt": currentAlt, "speed": currentSpeed, "course": currentCourse, - "time": Date.now(), + "time": new Date(), "satellites": currentSats, "fix": 1, "hdop": 1 diff --git a/apps/sensortools/metadata.json b/apps/sensortools/metadata.json index 9f7a36c5c..f5bace383 100644 --- a/apps/sensortools/metadata.json +++ b/apps/sensortools/metadata.json @@ -2,7 +2,7 @@ "id": "sensortools", "name": "Sensor tools", "shortName": "Sensor tools", - "version": "0.03", + "version": "0.04", "description": "Tools for testing and debugging apps that use sensor input", "icon": "icon.png", "type": "bootloader", From 2921ca331e0924451ec02728b86b9f7795ab3bbe Mon Sep 17 00:00:00 2001 From: dapgo Date: Thu, 16 Feb 2023 13:04:18 +0100 Subject: [PATCH 0203/1725] v005 Mixdiganclock Main button can access to Messages, small improvements --- apps/mixdiganclock/ChangeLog | 3 +- apps/mixdiganclock/README.md | 34 +++++-- apps/mixdiganclock/bangle.js2_UI.png | Bin 0 -> 66673 bytes apps/mixdiganclock/bangle.js_UI.png | Bin 0 -> 106923 bytes apps/mixdiganclock/metadata.json | 4 +- apps/mixdiganclock/mixdiganclock.app.js | 105 ++++++++++++--------- apps/mixdiganclock/mixdiganclock.info | 1 - apps/mixdiganclock/photo_mixdigan_bjs1.jpg | Bin 285521 -> 82927 bytes 8 files changed, 91 insertions(+), 56 deletions(-) create mode 100644 apps/mixdiganclock/bangle.js2_UI.png create mode 100644 apps/mixdiganclock/bangle.js_UI.png delete mode 100644 apps/mixdiganclock/mixdiganclock.info diff --git a/apps/mixdiganclock/ChangeLog b/apps/mixdiganclock/ChangeLog index 13f27c06c..8ef626dd7 100644 --- a/apps/mixdiganclock/ChangeLog +++ b/apps/mixdiganclock/ChangeLog @@ -1,4 +1,5 @@ 0.01: fork from miclock, Added compatib with b widgets, devices(dynamic x,y) and themes(dynamic colors) 0.02: Code refactored, change colors in real time 0.03: Hour point size can be modified on real time. -0.04: Background color can be changed on real time, it will change also the list of fg color \ No newline at end of file +0.04: Background color can be changed on real time, it will change also the list of fg color +0.05: Main button can access to Messages, small improvements \ No newline at end of file diff --git a/apps/mixdiganclock/README.md b/apps/mixdiganclock/README.md index d5efbc126..7b9fb2ff0 100644 --- a/apps/mixdiganclock/README.md +++ b/apps/mixdiganclock/README.md @@ -9,6 +9,13 @@ Compatible with BangleJS1,BangleJS2,and EMSCRIPTENx emulators Bangle.JS1 ![](photo_mixdigan_bjs1.jpg) + +UI for bangleJS1 +![](bangle.js_UI.png) + +UI for bangleJS2 +![](bangle.js2_UI.png) + Screenshot emulator (BJS2) ![](ss_mixdigan_ems2.png) @@ -36,19 +43,26 @@ Open and see ## Features -Compatibility with devices -Dynamic positions x,y for different devices -Dynamic Colours (FG and BG) and positions -Support for bottom widgets + - Compatibility with different smartwatch models + - Dynamic positions x,y for different devices + - Dynamic Colours (FG and BG) and positions + - Realtime configuration + - Support for bottom widgets + - Shortcut to messages app -## Controls +## Controls/UI -Exit : BTN2 (BJS1) -Exit/launcher : left area -Change FG Color : right area -Increase/Decrease Hour circle/Points : swipe right -Change BG Color : swipe left + - BTN1 (BJS2): "Launcher" / open "Messages" + - BTN2 (BJS1): "Launcher" / open "Messages" + - BTN1 (BJS1): Change FG Color + - BTN3 (BJS1): Change BG Color + - Left area: Back/Exit/launcher + - Right area: Change FG Color + - Swipe left: Change BG Color + - Swipe right: Increase/Decrease Hour circle/Points + + - BTN3 (long press)(BJS1): default Exit/kill app ## Coming soon diff --git a/apps/mixdiganclock/bangle.js2_UI.png b/apps/mixdiganclock/bangle.js2_UI.png new file mode 100644 index 0000000000000000000000000000000000000000..0c0f37fb5a99ba296e9d7069bcb3ec79490d8b30 GIT binary patch literal 66673 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 XA{J>nqW`!L3H~U^s>l>cn*{wISa2el literal 0 HcmV?d00001 diff --git a/apps/mixdiganclock/bangle.js_UI.png b/apps/mixdiganclock/bangle.js_UI.png new file mode 100644 index 0000000000000000000000000000000000000000..d4e5df6d2d9317443bac0fde415031ba82201713 GIT binary patch literal 106923 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잾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 ara<<%e4#GaF=mZ~e>7EfRh}qY2K*nJI1o_) literal 0 HcmV?d00001 diff --git a/apps/mixdiganclock/metadata.json b/apps/mixdiganclock/metadata.json index daf0924ec..2f6d049eb 100644 --- a/apps/mixdiganclock/metadata.json +++ b/apps/mixdiganclock/metadata.json @@ -1,8 +1,8 @@ { "id": "mixdiganclock", "name": "Mix Dig&Anal Clock", - "version": "0.04", - "description": "A dual Analog and Digital Clock, that gives the user the power to improve the UI/UX on realtime. Too much sun and polarized sunglasses should not be a problem to read the time anymore if you change colors or aspect. Originally based in Mixed Clock ", + "version": "0.05", + "description": "A dual Analog, Digital Clock, that gives the user the power to improve the aspect on realtime. Too much sun and/or polarized sunglasses? Not be a problem anymore to see the time. Originally based in Mixed Clock ", "icon": "mixdiganclock.png", "type": "clock", "tags": "clock", diff --git a/apps/mixdiganclock/mixdiganclock.app.js b/apps/mixdiganclock/mixdiganclock.app.js index 940e1a7e2..da2c22f18 100644 --- a/apps/mixdiganclock/mixdiganclock.app.js +++ b/apps/mixdiganclock/mixdiganclock.app.js @@ -2,7 +2,7 @@ compatible with BJS1, BJS2 and bottom widgets */ var locale = require("locale"); -var v_mode_debug=0 //, 0=no, 1 min, 2 prone detail +var v_mode_debug=0; //, 0=no, 1 min, 2 prone detail var v_model=process.env.BOARD; var v_array4colors=0; // 0 undef, 1 forDark, 2 forLight var a_colors=[]; //new Array(), values will depend on b_isarray4dark @@ -23,8 +23,25 @@ var v_center_y; g.clear(); //ONLY 1ST TIME //show the exit button -Bangle.setUI("clock"); //implies center button for launcher +function setMainBtn() { +//if messages app installed shortcut otherwise default access to launcher +if (require("Storage").read("messagegui.app.js")===undefined) +{ + if (require("Storage").read("messagelist.app.js")===undefined) Bangle.setUI("clock"); // implies btn2(js1) btn(js2)- launcher + else if (v_model=='BANGLEJS'||v_model=='EMSCRIPTEN') setWatch(function (){load("messagelist.app.js");}, BTN2, { repeat: true }); + else setWatch(function (){load("messagelist.app.js");}, BTN1, { repeat: true }); +} +else if (v_model=='BANGLEJS'||v_model=='EMSCRIPTEN') setWatch(function (){load("messagegui.app.js");}, BTN2, { repeat: true }); + else setWatch(function (){load("messagegui.app.js");}, BTN1, { repeat: true }); +} + +function setBJS1Btns() { + //only for bjs1, btns complementary to touch + setWatch(changeFGcolor, BTN1, { repeat: true }); + setWatch(changeBGcolor, BTN3, { repeat: true }); + } + Bangle.loadWidgets(); function getColorArray4BG() { //1st=0 1st compatible color (dark/light theme) @@ -211,6 +228,42 @@ function drawMixedClock() { g.setColor(a_colors[v_color1]); g.fillCircle(v_center_x, v_center_y, Radius.center); } + +function changeFGcolor(){ + //change color but monocolor watchface + if (v_mode_debug>0) console.log("v_count_col/total: "+v_count_col+"/"+a_colors.length); + if (v_count_col0) console.log("paint on color: "+v_count_col); + drawStaticRing(a_colors[v_color1]); + drawDailyTxt(); +} +function changeBGcolor(){ + //pend to refactor + //if black bg + if (v_array4colors==1) v_array4colors=2; // then white + else if (v_array4colors==2) v_array4colors=1; //if white bg + getColorArray4BG(); //set new list of colors + g.setBgColor( v_color_erase);// 0 white, 1 black + ClearScreen(); + //g.clear();//impact on widgets + drawStaticRing(a_colors[v_color1]); + drawDailyTxt(); //1st time + drawMixedClock(); +} +function changeRadiusRing(){ + drawStaticRing(v_color_erase); + if (Radius.circleH<13) Radius.circleH++; + else Radius.circleH=2; + if (v_mode_debug>0) console.log("radio: "+Radius.circleH); + drawStaticRing(a_colors[v_color1]); +} + function UserInput(){ Bangle.on('touch', function(button){ switch(button){ @@ -218,55 +271,21 @@ function UserInput(){ Bangle.showLauncher(); break; case 2: - //change color but monocolor watchface - if (v_mode_debug>0) console.log("v_count_col/total: "+v_count_col+"/"+a_colors.length); - if (v_count_col0) console.log("paint on color: "+v_count_col); - drawStaticRing(a_colors[v_color1]); - drawDailyTxt(); + changeFGcolor(); break; case 3: //console.log("Touch 3 aka 1+2 not for BJS1 emul");//center 1+2 break; } }); - //changing dimensions + //changing dimensions right Bangle.on('swipe', dir => { if(dir == 1) { - drawStaticRing(v_color_erase); - if (Radius.circleH<13) Radius.circleH++ - else Radius.circleH=2; - if (v_mode_debug>0) console.log("radio: "+Radius.circleH); - drawStaticRing(a_colors[v_color1]); - } - else { //swipe left, pend to refactor - if (v_array4colors==1) { //if black bg - v_array4colors=2; // then white - getColorArray4BG(); //set new list of colors - g.setBgColor( v_color_erase);// 0 white, 1 black - ClearScreen(); - //g.clear();//impact on widgets - drawStaticRing(a_colors[v_color1]); - drawDailyTxt(); //1st time - drawMixedClock(); - } else if (v_array4colors==2) { //if white bg - v_array4colors=1; - getColorArray4BG(); - console.log(a_colors[1]); - g.setBgColor(v_color_erase);// 0 white, 1 black - //g.clear(); - ClearScreen(); - drawStaticRing(a_colors[v_color1]); - drawDailyTxt(); //1st time - drawMixedClock(); //or just wait? - } + changeRadiusRing(); } + else { //swipe left,bg color + changeBGcolor(); + } }); } Bangle.on('lcdPower', function(on) { @@ -274,9 +293,11 @@ Bangle.on('lcdPower', function(on) { drawMixedClock(); }); +setMainBtn(); //assign btn to messages when installed setVariables(); Bangle.drawWidgets(); UserInput(); +if (v_model=='BANGLEJS'||v_model=='EMSCRIPTEN') setBJS1Btns(); //assign btn1 and btn3 setInterval(drawMixedClock, 30000);//not realtime update drawStaticRing(a_colors[v_color1]); drawDailyTxt(); diff --git a/apps/mixdiganclock/mixdiganclock.info b/apps/mixdiganclock/mixdiganclock.info deleted file mode 100644 index 9675614c1..000000000 --- a/apps/mixdiganclock/mixdiganclock.info +++ /dev/null @@ -1 +0,0 @@ -{"id":"mixdiganclock","name":"Mix Dig&Anal","type":"clock","src":"mixdiganclock.app.js","icon":"mixdiganclock.img","version":"0.04","tags":"clock","files":"mixdiganclock.info,mixdiganclock.app.js,mixdiganclock.img"} \ No newline at end of file diff --git a/apps/mixdiganclock/photo_mixdigan_bjs1.jpg b/apps/mixdiganclock/photo_mixdigan_bjs1.jpg index 023183a59131a50432bfd9d7cc2a4c04ca976faf..a3d5906471701386ba7470161deb94ed1aeb5696 100644 GIT binary patch literal 82927 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�=QKw8eWfV7z=Ge9^cSkF|s;1c$-(nh#LM?!=AM! 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 From da76c91d06919bf92515e8bc84ab0ffc9afdd67d Mon Sep 17 00:00:00 2001 From: thyttan <97237430+thyttan@users.noreply.github.com> Date: Thu, 16 Feb 2023 18:34:16 +0100 Subject: [PATCH 0204/1725] Bangle.showClock -> load in timeoutToClock --- apps/quicklaunch/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/quicklaunch/app.js b/apps/quicklaunch/app.js index f34191b7a..c6d6e43c5 100644 --- a/apps/quicklaunch/app.js +++ b/apps/quicklaunch/app.js @@ -37,7 +37,7 @@ const updateTimeoutToClock = function(){ let time=2; // seconds if (timeoutToClock) clearTimeout(timeoutToClock); - timeoutToClock = setTimeout(Bangle.showClock,time*1000); + timeoutToClock = setTimeout(load,time*1000); }; updateTimeoutToClock(); } From cc57c42a17d44016834cd749a5fe4aba0f10b2b5 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Thu, 16 Feb 2023 19:05:45 +0100 Subject: [PATCH 0205/1725] magnav Add tiltfix() for compensation on given sensor values --- apps/magnav/ChangeLog | 1 + apps/magnav/lib.js | 16 +++++++++++----- apps/magnav/metadata.json | 2 +- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/apps/magnav/ChangeLog b/apps/magnav/ChangeLog index 14a6eb2a2..7b548841a 100644 --- a/apps/magnav/ChangeLog +++ b/apps/magnav/ChangeLog @@ -4,3 +4,4 @@ 0.04: Fix Font size 0.05: Initial portable version 0.06: Outsource tilt compensation to library +0.07: Add tiltfix() for compensation on given sensor values diff --git a/apps/magnav/lib.js b/apps/magnav/lib.js index e3fe8fccb..39c51a1e1 100644 --- a/apps/magnav/lib.js +++ b/apps/magnav/lib.js @@ -22,11 +22,10 @@ exports.calibrate = () => { }); } -exports.tiltfixread = (O,S) => { - "ram" - var m = Bangle.getCompass(); - var g = Bangle.getAccel(); - m.dx =(m.x-O.x)*S.x; m.dy=(m.y-O.y)*S.y; m.dz=(m.z-O.z)*S.z; +exports.tiltfix = (m,g,O,S) => { + if (O & S) { + m.dx =(m.x-O.x)*S.x; m.dy=(m.y-O.y)*S.y; m.dz=(m.z-O.z)*S.z; + } var d = Math.atan2(-m.dx,m.dy)*180/Math.PI; if (d<0) d+=360; var phi = Math.atan(-g.x/-g.z); @@ -39,3 +38,10 @@ exports.tiltfixread = (O,S) => { if (psi<0) psi+=360; return psi; } + +exports.tiltfixread = (O,S) => { + "ram" + var m = Bangle.getCompass({noTiltComp: true}); + var g = Bangle.getAccel(); + return exports.tiltfix(m,g,O,S); +} diff --git a/apps/magnav/metadata.json b/apps/magnav/metadata.json index bd40a08fd..6bdb9d0b6 100644 --- a/apps/magnav/metadata.json +++ b/apps/magnav/metadata.json @@ -1,7 +1,7 @@ { "id": "magnav", "name": "Navigation Compass", - "version": "0.06", + "version": "0.07", "description": "Compass with linear display as for GPSNAV. Has Tilt compensation and remembers calibration.", "screenshots": [{"url":"screenshot-b2.png"},{"url":"screenshot-light-b2.png"}], "icon": "magnav.png", From f1ce35362e5eae3f3c3fcef059ef133459846ee9 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Thu, 16 Feb 2023 19:07:59 +0100 Subject: [PATCH 0206/1725] Adding gpsmagdir bootloader modification Replace GPS heading with compass heading when speed is slow or standing still to avoid the heading from jumping around randomly --- apps/gpsmagdir/README.md | 12 ++++++ apps/gpsmagdir/app.png | Bin 0 -> 1224 bytes apps/gpsmagdir/boot.js | 81 +++++++++++++++++++++++++++++++++++ apps/gpsmagdir/metadata.json | 17 ++++++++ 4 files changed, 110 insertions(+) create mode 100644 apps/gpsmagdir/README.md create mode 100644 apps/gpsmagdir/app.png create mode 100644 apps/gpsmagdir/boot.js create mode 100644 apps/gpsmagdir/metadata.json diff --git a/apps/gpsmagdir/README.md b/apps/gpsmagdir/README.md new file mode 100644 index 000000000..b4c3acf0c --- /dev/null +++ b/apps/gpsmagdir/README.md @@ -0,0 +1,12 @@ +TODO: +- Add Widget +- Add Settings +- Test on BangleJS +- Document settings with defaults +- Document Widget +- Write a summary why +- Drop a note about compass north vs true north +- Note that top of Bangle must point at moving direction when compass +- Document uncompensated compass only when clock is faced up +- Note to regularly calibrate compass before use +- Note compass value not when NaN after calibration diff --git a/apps/gpsmagdir/app.png b/apps/gpsmagdir/app.png new file mode 100644 index 0000000000000000000000000000000000000000..c7e990268e5962927ee471d37fadf9771a4cca2f GIT binary patch literal 1224 zcmV;(1ULJMP)cO9wm>?PxZ;CM{L|NFa>cvE}i;JKF;-c}&k9r^;Tz02kbJ*pX z>Yl-#>Y8Pyw|iXTd`TU4`t_^tdsY4F)mwlrx>&p*2KSQ(>)=WSd9a&2_yn#*PytpG zgMb)ZpaRDfmXnX!p%^>|5EAN$X^mu0Y#D?Ba~Qhji#-w1W}!{!+I zX!OAo=9#gHzatbL6DoMPW5fr?Xc<@fHLmnrBN09O+-PunD1gB?2>~8_ZJt$zvB%gp zyesuZq42$dJ#=-h26 z=Oe*`bvs%QE6IcNO$B%`P3z#gx_wCo4{?QmxK_frM6tTawuC)at=d%K|*u z>+(_dv5?qGe)ZAx0+jyNTGr2<Md;x z5DK?gAMRl%`A1+md2p^q?8JQaKdpy*iNOyw0e?{eR=Di!l+7hRlR|*rZ8>?xNy>vF zd7z2GOQwjsoL>T1N(?IDdC>=3oO4Tj)e7FnZ3{?5A$DLj5Q@s?Tif+--XR7%nx*bm zRzHE>4`-;A0Xd;}q4ReIED*i_`xS^oNc<`OA(;;gI)suRY_M-_Z95TCe`eL`gSoJE zKq&pXm4!Zqb|IABX5F|>K!?C3o@^9QEw}9?yfs;+#8&^pow+cM!IUeBQeqf;Ae&+i zomFI(5E6&2?K76z8J9RD2tUS%IcZ~`KbEc3E8$) zl9LFfPdAHFD+O3NTHVHN6WzilGVjuvj&kCH|LAQuFyeZgOTBr)c|I$YB;F>Zu9(Wvl)nxE$D(J|a_ZWq mljzhvIyZC$bkPNL1pff@&jb*6-b};*0000 0) { + const isFaceUp = (acc) => { + return (acc.z<-6700/8192) && (acc.z>-9000/8192) && Math.abs(acc.x)<2048/8192 && Math.abs(acc.y)<2048/8192; + }; + + const changeGpsCourse = (gps) => { + if (gps.speed < settings.speed) { + if (settings.compassSrc === 1 && (settings.tiltCompensation || isFaceUp(Bangle.getAccel()))) { // Use uncompensated firmware heading only if face is up + const heading = Bangle.getCompass().heading; + if (!isNaN(heading)) { + gps.courseOrig = gps.course; + gps.course = Bangle.getCompass().heading; + } + } else if (settings.compassSrc === 2) { // magnav tilt correction with magnav calibration + gps.courseOrig = gps.course; + gps.course = require("magnav").tiltfixread(CALIBDATA.offset,CALIBDATA.scale); + } + } + return gps; + }; + + // Modify GPS event + Bangle.on('GPS', gps => { + changeGpsCourse(gps); + }); + const origGetGPSFix = Bangle.getGPSFix; + Bangle.getGPSFix = function() { + return changeGpsCourse(origGetGPSFix()); + }; + + // Enable Compass with GPS + const origSetGPSPower = Bangle.setGPSPower; + Bangle.setGPSPower = function(on, id) { + const isGPSon = origSetGPSPower(on, id); + Bangle.setCompassPower(isGPSon, "gpsmagdir"); + return isGPSon; + }; + } // if (settings.compassSrc > 0) +} diff --git a/apps/gpsmagdir/metadata.json b/apps/gpsmagdir/metadata.json new file mode 100644 index 000000000..ebff8f7c9 --- /dev/null +++ b/apps/gpsmagdir/metadata.json @@ -0,0 +1,17 @@ +{ + "id": "gpsmagdir", + "name": "GPS Compass heading switcher", + "shortName":"GPS/Compass direction", + "icon": "app.png", + "version":"0.01", + "description": "Replace GPS heading with compass heading when speed is slow or standing still to avoid the heading from jumping around randomly.", + "type": "bootloader", + "tags": "outdoors", + "supports": ["BANGLEJS","BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"gpsmagdir.boot.js","url":"boot.js"} + ], + "data": [{"name":"gpsmagdir.json"}] +} + From 742bcdddabfabfabb5c2fc9b0ce010010e703747 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Thu, 16 Feb 2023 19:19:01 +0100 Subject: [PATCH 0207/1725] magnav Add tiltfix() for compensation on given sensor values --- apps/magnav/lib.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/magnav/lib.js b/apps/magnav/lib.js index 39c51a1e1..fe58615cb 100644 --- a/apps/magnav/lib.js +++ b/apps/magnav/lib.js @@ -23,6 +23,7 @@ exports.calibrate = () => { } exports.tiltfix = (m,g,O,S) => { + "ram" if (O & S) { m.dx =(m.x-O.x)*S.x; m.dy=(m.y-O.y)*S.y; m.dz=(m.z-O.z)*S.z; } From 0660f720111e61a5f70873d68e15a873f1c68fbc Mon Sep 17 00:00:00 2001 From: thyttan <97237430+thyttan@users.noreply.github.com> Date: Thu, 16 Feb 2023 20:09:02 +0100 Subject: [PATCH 0208/1725] Remove Bangle.drawWidgets, change timeout duration --- apps/quicklaunch/app.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/apps/quicklaunch/app.js b/apps/quicklaunch/app.js index c6d6e43c5..7ae01ded6 100644 --- a/apps/quicklaunch/app.js +++ b/apps/quicklaunch/app.js @@ -25,19 +25,18 @@ mode: "custom", touch: touchHandler, swipe : swipeHandler, - remove: ()=>{if (timeoutToClock) clearTimeout(timeoutToClock);} + remove: ()=>{if (timeoutToClock) clearTimeout(timeoutToClock);} // Compatability with Fastload Utils. }); g.clearRect(Bangle.appRect); - Bangle.loadWidgets(); - Bangle.drawWidgets(); + Bangle.loadWidgets(); // Compatability with Fastload Utils. // taken from Icon Launcher with some alterations let timeoutToClock; const updateTimeoutToClock = function(){ - let time=2; // seconds + let time = 1000; // milliseconds if (timeoutToClock) clearTimeout(timeoutToClock); - timeoutToClock = setTimeout(load,time*1000); + timeoutToClock = setTimeout(load,time); }; updateTimeoutToClock(); } From 9e8109de3b31b1538804be5d037b3d0d9dc3dd0b Mon Sep 17 00:00:00 2001 From: Stiralbios Date: Fri, 17 Feb 2023 13:08:05 +0100 Subject: [PATCH 0209/1725] Fix pressure memory leak --- apps/terminalclock/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/terminalclock/app.js b/apps/terminalclock/app.js index c9186160f..becfcc0e3 100644 --- a/apps/terminalclock/app.js +++ b/apps/terminalclock/app.js @@ -92,7 +92,7 @@ turnOffServices(); if (this.onLock) Bangle.removeListener('lock', this.onLock); if (this.onHRM) Bangle.removeListener('HRM', this.onHRM); - if (this.onPressure) Bangle.removeListener('onPressure', this.onPressure); + if (this.onPressure) Bangle.removeListener('pressure', this.onPressure); } }); From 9b7a5419e42646e4d2de3736d2627743d7664d00 Mon Sep 17 00:00:00 2001 From: Stiralbios Date: Fri, 17 Feb 2023 13:16:55 +0100 Subject: [PATCH 0210/1725] [TerminalClock] Remove todo fastloading comment \o/ --- apps/terminalclock/app.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/apps/terminalclock/app.js b/apps/terminalclock/app.js index becfcc0e3..b6cea9d42 100644 --- a/apps/terminalclock/app.js +++ b/apps/terminalclock/app.js @@ -78,8 +78,6 @@ }); }, - - // todo add fastloading when the memory leak is fixed remove: function() { if (this.turnOnInterval){ clearInterval(this.turnOnInterval); From 0b263219750f323f286f3c2ba61aedacf4789b75 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 17 Feb 2023 18:11:12 +0100 Subject: [PATCH 0211/1725] gpsmagdir: Add widget --- apps/gpsmagdir/metadata.json | 5 ++- apps/gpsmagdir/widget.js | 80 ++++++++++++++++++++++++++++++++++++ 2 files changed, 83 insertions(+), 2 deletions(-) create mode 100644 apps/gpsmagdir/widget.js diff --git a/apps/gpsmagdir/metadata.json b/apps/gpsmagdir/metadata.json index ebff8f7c9..f83f1ee90 100644 --- a/apps/gpsmagdir/metadata.json +++ b/apps/gpsmagdir/metadata.json @@ -6,11 +6,12 @@ "version":"0.01", "description": "Replace GPS heading with compass heading when speed is slow or standing still to avoid the heading from jumping around randomly.", "type": "bootloader", - "tags": "outdoors", + "tags": "outdoors,widget", "supports": ["BANGLEJS","BANGLEJS2"], "readme": "README.md", "storage": [ - {"name":"gpsmagdir.boot.js","url":"boot.js"} + {"name":"gpsmagdir.boot.js","url":"boot.js"}, + {"name":"gpsmagdir.wid.js","url":"widget.js"} ], "data": [{"name":"gpsmagdir.json"}] } diff --git a/apps/gpsmagdir/widget.js b/apps/gpsmagdir/widget.js new file mode 100644 index 000000000..cf3c9c60c --- /dev/null +++ b/apps/gpsmagdir/widget.js @@ -0,0 +1,80 @@ +(() => { + const settings = Object.assign({ + compassSrc: 1, // 0 = off + showWidget: 2, // 0 = never, 1 = when replacing GPS course with compass course, 2 = when GPS is on + }, require("Storage").readJSON("gpsmagdir.json", true) || {}); + + function isInside(rect, e) { + return e.x>=rect.x && e.x=rect.y && e.y<=rect.y+rect.h; + } + + function draw() { + if (this.width) { + g.clearRect(this.x, this.y, this.x+this.width-1, this.y+23); + + if (this.show) { + this.width = 24; + g.reset(); + g.drawImage(require("heatshrink").decompress(atob("jEYwgrohEN6EwBQ+DBYM4wALFxGA7vdB4IWFxEABYMAnAlECwMNBYPQCIQLDgALDDAI5EBYIFBBYIeBBYRBGA4QnBCAZBDA4ILLEZYLMKYR9FAgaKFNYpgCD4RBFAwQLBCwpOELAwACgeIwbLHK5ILPAAwA=")), this.x, this.y); + if (this.show === 2) { + // draw stroke + g.setColor(1,0,0).fillPoly([this.x+2, 0, + this.x+this.width-1,this.y+21, + this.x+this.width-3, this.y+23, + this.x, 2 + ]); + } + } + } + + const newWidth = this.show ? 24 : 0; + if (newWidth !== this.width) { + this.width = newWidth; + Bangle.drawWidgets(); + } + } + + if (settings.compassSrc > 0 && settings.showWidget > 0) { + // add your widget + WIDGETS.gpsmagdir={ + area:"tr", // tl (top left), tr (top right), bl (bottom left), br (bottom right) + width: 0, // hide by default + draw:draw, + show:0 // 0 = hide, 1 = show, 2 = with stroke + }; + + // show only when GPS course is replaced + Bangle.on('GPS', function(gps) { + if (gps.courseOrig && WIDGETS.gpsmagdir.show !== 1 && Bangle.isGPSOn()) { + WIDGETS.gpsmagdir.show = 1; + WIDGETS.gpsmagdir.draw(); + } else if (WIDGETS.gpsmagdir.show) { + WIDGETS.gpsmagdir.show = settings.showWidget === 1 ? 0 : 2; + WIDGETS.gpsmagdir.draw(); + } + }); + + // hide widget if GPS is turned off + const origSetGPSPower = Bangle.setGPSPower; + Bangle.setGPSPower = function(on, id) { + const isGPSon = origSetGPSPower(on, id); + if (!isGPSon && WIDGETS.gpsmagdir.show) { + WIDGETS.gpsmagdir.show = 0; + WIDGETS.gpsmagdir.draw(); + } else if (isGPSon && !WIDGETS.gpsmagdir.show) { + WIDGETS.gpsmagdir.show = 2; + WIDGETS.gpsmagdir.draw(); + } + return isGPSon; + }; + + // reset compass on click on widget + Bangle.on('touch', function(button, touch) { + if (WIDGETS.gpsmagdir && WIDGETS.gpsmagdir.x && WIDGETS.gpsmagdir.width && isInside({x: WIDGETS.gpsmagdir.x, y: WIDGETS.gpsmagdir.y, w: WIDGETS.gpsmagdir.width, h: 24}, touch)) { + Bangle.buzz(50); + Bangle.resetCompass(); + } + }); + } // if (settings.compassSrc > 0 && settings.showWidget) +})(); From 78302ecd4dd506be2a066284c577dc9bbd09d5a3 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 17 Feb 2023 18:22:57 +0100 Subject: [PATCH 0212/1725] gpsmagdir boot: magnav check --- apps/gpsmagdir/boot.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/apps/gpsmagdir/boot.js b/apps/gpsmagdir/boot.js index 94daf88ca..b8a58f371 100644 --- a/apps/gpsmagdir/boot.js +++ b/apps/gpsmagdir/boot.js @@ -7,6 +7,19 @@ }, require("Storage").readJSON("gpsmagdir.json", true) || {}); const CALIBDATA = (settings.compassSrc === 2) ? require("Storage").readJSON("magnav.json",1) || {} : undefined; + // Check if magnav is installed + try { + require("magnav"); + } catch(err) { + // not installed, adjust settings to work without magnav + if (settings.compassSrc === 2) { + settings.compassSrc = 1; + } + if (settings.tiltCompensation) { + settings.tiltCompensation = false; + } + } + // execute Bangle.resetCompass() after Bangle.setCompassPower(); if (settings.resetCompassOnPwr) { const origSetCompassPower = Bangle.setCompassPower; From 4b4057764f390541a147835d4e830831afca2f45 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 17 Feb 2023 18:35:14 +0100 Subject: [PATCH 0213/1725] gpsmagdir: check for magnav calibration --- apps/gpsmagdir/boot.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/gpsmagdir/boot.js b/apps/gpsmagdir/boot.js index b8a58f371..2ccdb4290 100644 --- a/apps/gpsmagdir/boot.js +++ b/apps/gpsmagdir/boot.js @@ -5,7 +5,7 @@ resetCompassOnPwr: true, // reset compass on power on tiltCompensation: true, // tilt compensation on default compass }, require("Storage").readJSON("gpsmagdir.json", true) || {}); - const CALIBDATA = (settings.compassSrc === 2) ? require("Storage").readJSON("magnav.json",1) || {} : undefined; + const CALIBDATA = (settings.compassSrc === 2) ? require("Storage").readJSON("magnav.json",1) : undefined; // Check if magnav is installed try { @@ -19,6 +19,10 @@ settings.tiltCompensation = false; } } + if (settings.compassSrc === 2 && !CALIBDATA) { + // No calibration for magnav, fallback to default compass + settings.compassSrc = 1; + } // execute Bangle.resetCompass() after Bangle.setCompassPower(); if (settings.resetCompassOnPwr) { From 8b6fcced6616aa1798f84fbfa6207b405190ea22 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sun, 19 Feb 2023 11:13:41 +0100 Subject: [PATCH 0214/1725] gpsmagdir: Readme updates --- apps/gpsmagdir/README.md | 57 +++++++++++++++++++++++++++++++++------- apps/gpsmagdir/boot.js | 6 ++--- 2 files changed, 50 insertions(+), 13 deletions(-) diff --git a/apps/gpsmagdir/README.md b/apps/gpsmagdir/README.md index b4c3acf0c..de7526ccd 100644 --- a/apps/gpsmagdir/README.md +++ b/apps/gpsmagdir/README.md @@ -1,12 +1,49 @@ -TODO: -- Add Widget +# GPS Compass heading switcher +The GPS course and speed is calculated by the difference of positions. +However GPS position is noisy and prone to jump around. +This results in randomly jumping GPS course values when speed is slow or standing still. +So in these cases a user might want to get his moving direction from a compass instead. +This is why this app replaces the GPS heading with the compass heading when the speed is slower then 6 km/h (threshold is configurable, see settings). + +## Important Notes +* **Watch orientation** + When the GPS is calculating the course the orientation of the watch does not matter. + When the Compass is used as the source of the current heading its top must obviously point at the moving direction (Usually away from you). +* **Tilt compensation** + When "Navigation Compass" is installed the built-in compass gets automatic tilt compensation. This can be turned off in settings. Without "Navigation Compass" installed or this feature disabled the watch must be orientated with the display up to provide a useable compass value. +* **Compass reset and calibration** + When using "Navigation Compass" as compass source (see settings) please remember to calibrate it regularly. + With this app installed the built-in compass calibration is automatically reset when the compass is turned on (deactivatable in settings). It can also be reset with a tap on the Widget (Bangle.js 2 only). Please note that directly after a reset the built-in compass must be turned 360 degrees to provide a useable value. +* **True north vs magnetic north** + Please note that the compass does not point to the "real north" but depending on your location there is an offset, see [Magnetic declination](https://en.wikipedia.org/wiki/Magnetic_declination) + However the error from local magnetic interference and from calibration will probably be higher.. + +## Widget +The widget indicates if the current GPS heading is provided from GPS or compass. +It can be turned off in the settings. +On Bangle.js 2 a click on the widget does reset the built-in compass. + +## Settings +* **speed** + - (default = 6 km/h) When lower then this use direction from compass +* **compassSrc** + - off: + - built-in (default): + - Navigation Compass: +* **reset compass on power on** + - off: + - on (default): +* **tilt compensation** + - off: + - on (default): +* **show Widget** + - Never + - Active (default): When replacing GPS course with compass course + - GPS on + +## TODO: - Add Settings -- Test on BangleJS - Document settings with defaults -- Document Widget -- Write a summary why -- Drop a note about compass north vs true north -- Note that top of Bangle must point at moving direction when compass -- Document uncompensated compass only when clock is faced up -- Note to regularly calibrate compass before use -- Note compass value not when NaN after calibration +- Check magnav dependency in settings +- note magnav silently downgrade +- Test on BangleJS diff --git a/apps/gpsmagdir/boot.js b/apps/gpsmagdir/boot.js index 2ccdb4290..2195a8424 100644 --- a/apps/gpsmagdir/boot.js +++ b/apps/gpsmagdir/boot.js @@ -1,9 +1,9 @@ { const settings = Object.assign({ speed: 6, // when lower then this use direction from compass - compassSrc: 1, // [off, firmware, magnav] + compassSrc: 1, // [off, built-in, magnav] resetCompassOnPwr: true, // reset compass on power on - tiltCompensation: true, // tilt compensation on default compass + tiltCompensation: true, // tilt compensation on built-in compass }, require("Storage").readJSON("gpsmagdir.json", true) || {}); const CALIBDATA = (settings.compassSrc === 2) ? require("Storage").readJSON("magnav.json",1) : undefined; @@ -64,7 +64,7 @@ const changeGpsCourse = (gps) => { if (gps.speed < settings.speed) { - if (settings.compassSrc === 1 && (settings.tiltCompensation || isFaceUp(Bangle.getAccel()))) { // Use uncompensated firmware heading only if face is up + if (settings.compassSrc === 1 && (settings.tiltCompensation || isFaceUp(Bangle.getAccel()))) { // Use uncompensated built-in compass heading only if face is up const heading = Bangle.getCompass().heading; if (!isNaN(heading)) { gps.courseOrig = gps.course; From 7d5151c3226e558c68a9865b241dfd16b938c994 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sun, 19 Feb 2023 11:52:58 +0100 Subject: [PATCH 0215/1725] gpsmagdir renamed to gpsmagcourse --- apps/{gpsmagdir => gpsmagcourse}/README.md | 0 apps/{gpsmagdir => gpsmagcourse}/app.png | Bin apps/{gpsmagdir => gpsmagcourse}/boot.js | 4 +-- .../{gpsmagdir => gpsmagcourse}/metadata.json | 10 +++--- apps/{gpsmagdir => gpsmagcourse}/widget.js | 30 +++++++++--------- 5 files changed, 22 insertions(+), 22 deletions(-) rename apps/{gpsmagdir => gpsmagcourse}/README.md (100%) rename apps/{gpsmagdir => gpsmagcourse}/app.png (100%) rename apps/{gpsmagdir => gpsmagcourse}/boot.js (96%) rename apps/{gpsmagdir => gpsmagcourse}/metadata.json (64%) rename apps/{gpsmagdir => gpsmagcourse}/widget.js (70%) diff --git a/apps/gpsmagdir/README.md b/apps/gpsmagcourse/README.md similarity index 100% rename from apps/gpsmagdir/README.md rename to apps/gpsmagcourse/README.md diff --git a/apps/gpsmagdir/app.png b/apps/gpsmagcourse/app.png similarity index 100% rename from apps/gpsmagdir/app.png rename to apps/gpsmagcourse/app.png diff --git a/apps/gpsmagdir/boot.js b/apps/gpsmagcourse/boot.js similarity index 96% rename from apps/gpsmagdir/boot.js rename to apps/gpsmagcourse/boot.js index 2195a8424..189dd9e35 100644 --- a/apps/gpsmagdir/boot.js +++ b/apps/gpsmagcourse/boot.js @@ -4,7 +4,7 @@ compassSrc: 1, // [off, built-in, magnav] resetCompassOnPwr: true, // reset compass on power on tiltCompensation: true, // tilt compensation on built-in compass - }, require("Storage").readJSON("gpsmagdir.json", true) || {}); + }, require("Storage").readJSON("gpsmagcourse.json", true) || {}); const CALIBDATA = (settings.compassSrc === 2) ? require("Storage").readJSON("magnav.json",1) : undefined; // Check if magnav is installed @@ -91,7 +91,7 @@ const origSetGPSPower = Bangle.setGPSPower; Bangle.setGPSPower = function(on, id) { const isGPSon = origSetGPSPower(on, id); - Bangle.setCompassPower(isGPSon, "gpsmagdir"); + Bangle.setCompassPower(isGPSon, "gpsmagcourse"); return isGPSon; }; } // if (settings.compassSrc > 0) diff --git a/apps/gpsmagdir/metadata.json b/apps/gpsmagcourse/metadata.json similarity index 64% rename from apps/gpsmagdir/metadata.json rename to apps/gpsmagcourse/metadata.json index f83f1ee90..2dcc27384 100644 --- a/apps/gpsmagdir/metadata.json +++ b/apps/gpsmagcourse/metadata.json @@ -1,7 +1,7 @@ { - "id": "gpsmagdir", + "id": "gpsmagcourse", "name": "GPS Compass heading switcher", - "shortName":"GPS/Compass direction", + "shortName":"GPS/Comp. course", "icon": "app.png", "version":"0.01", "description": "Replace GPS heading with compass heading when speed is slow or standing still to avoid the heading from jumping around randomly.", @@ -10,9 +10,9 @@ "supports": ["BANGLEJS","BANGLEJS2"], "readme": "README.md", "storage": [ - {"name":"gpsmagdir.boot.js","url":"boot.js"}, - {"name":"gpsmagdir.wid.js","url":"widget.js"} + {"name":"gpsmagcourse.boot.js","url":"boot.js"}, + {"name":"gpsmagcourse.wid.js","url":"widget.js"} ], - "data": [{"name":"gpsmagdir.json"}] + "data": [{"name":"gpsmagcourse.json"}] } diff --git a/apps/gpsmagdir/widget.js b/apps/gpsmagcourse/widget.js similarity index 70% rename from apps/gpsmagdir/widget.js rename to apps/gpsmagcourse/widget.js index cf3c9c60c..0df33755d 100644 --- a/apps/gpsmagdir/widget.js +++ b/apps/gpsmagcourse/widget.js @@ -2,7 +2,7 @@ const settings = Object.assign({ compassSrc: 1, // 0 = off showWidget: 2, // 0 = never, 1 = when replacing GPS course with compass course, 2 = when GPS is on - }, require("Storage").readJSON("gpsmagdir.json", true) || {}); + }, require("Storage").readJSON("gpsmagcourse.json", true) || {}); function isInside(rect, e) { return e.x>=rect.x && e.x 0 && settings.showWidget > 0) { // add your widget - WIDGETS.gpsmagdir={ + WIDGETS.gpsmagcourse={ area:"tr", // tl (top left), tr (top right), bl (bottom left), br (bottom right) width: 0, // hide by default draw:draw, @@ -46,12 +46,12 @@ // show only when GPS course is replaced Bangle.on('GPS', function(gps) { - if (gps.courseOrig && WIDGETS.gpsmagdir.show !== 1 && Bangle.isGPSOn()) { - WIDGETS.gpsmagdir.show = 1; - WIDGETS.gpsmagdir.draw(); - } else if (WIDGETS.gpsmagdir.show) { - WIDGETS.gpsmagdir.show = settings.showWidget === 1 ? 0 : 2; - WIDGETS.gpsmagdir.draw(); + if (gps.courseOrig && WIDGETS.gpsmagcourse.show !== 1 && Bangle.isGPSOn()) { + WIDGETS.gpsmagcourse.show = 1; + WIDGETS.gpsmagcourse.draw(); + } else if (WIDGETS.gpsmagcourse.show) { + WIDGETS.gpsmagcourse.show = settings.showWidget === 1 ? 0 : 2; + WIDGETS.gpsmagcourse.draw(); } }); @@ -59,19 +59,19 @@ const origSetGPSPower = Bangle.setGPSPower; Bangle.setGPSPower = function(on, id) { const isGPSon = origSetGPSPower(on, id); - if (!isGPSon && WIDGETS.gpsmagdir.show) { - WIDGETS.gpsmagdir.show = 0; - WIDGETS.gpsmagdir.draw(); - } else if (isGPSon && !WIDGETS.gpsmagdir.show) { - WIDGETS.gpsmagdir.show = 2; - WIDGETS.gpsmagdir.draw(); + if (!isGPSon && WIDGETS.gpsmagcourse.show) { + WIDGETS.gpsmagcourse.show = 0; + WIDGETS.gpsmagcourse.draw(); + } else if (isGPSon && !WIDGETS.gpsmagcourse.show) { + WIDGETS.gpsmagcourse.show = 2; + WIDGETS.gpsmagcourse.draw(); } return isGPSon; }; // reset compass on click on widget Bangle.on('touch', function(button, touch) { - if (WIDGETS.gpsmagdir && WIDGETS.gpsmagdir.x && WIDGETS.gpsmagdir.width && isInside({x: WIDGETS.gpsmagdir.x, y: WIDGETS.gpsmagdir.y, w: WIDGETS.gpsmagdir.width, h: 24}, touch)) { + if (WIDGETS.gpsmagcourse && WIDGETS.gpsmagcourse.x && WIDGETS.gpsmagcourse.width && isInside({x: WIDGETS.gpsmagcourse.x, y: WIDGETS.gpsmagcourse.y, w: WIDGETS.gpsmagcourse.width, h: 24}, touch)) { Bangle.buzz(50); Bangle.resetCompass(); } From fab9e85cc3551eeda57143d56324a36a5306e3a4 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sun, 19 Feb 2023 11:56:28 +0100 Subject: [PATCH 0216/1725] gpsmagcourse: Add settings (untested) --- apps/gpsmagcourse/settings.js | 91 +++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 apps/gpsmagcourse/settings.js diff --git a/apps/gpsmagcourse/settings.js b/apps/gpsmagcourse/settings.js new file mode 100644 index 000000000..e5fd524c9 --- /dev/null +++ b/apps/gpsmagcourse/settings.js @@ -0,0 +1,91 @@ +(function(back) { + var FILE = "gpsmagcourse.json"; + // Load settings + const settings = Object.assign({ + speed: 6, // when lower then this use direction from compass + compassSrc: 1, // [off, built-in, magnav] + resetCompassOnPwr: true, // reset compass on power on + tiltCompensation: true, // tilt compensation on built-in compass + showWidget: 2, // 0 = never, 1 = when replacing GPS course with compass course, 2 = when GPS is on + }, require("Storage").readJSON(FILE, true) || {}); + + let magnavInstalled = true; + // Check if magnav is installed + try { + require("magnav"); + } catch(err) { + // not installed + magnavInstalled = false; + } + + if (!magnavInstalled) { + // adjust settings to work without magnav + if (settings.compassSrc === 2) { + settings.compassSrc = 1; + } + if (settings.tiltCompensation) { + settings.tiltCompensation = false; + } + } + const compassSrcOpts = ["off", "built-in"]; + if (magnavInstalled) { + compassSrcOpts.push("magnav"); + } + + function writeSettings() { + require('Storage').writeJSON(FILE, settings); + } + + const menu = { + "" : { "title" : /*LANG*/"GPS/Comp. course" }, + "< Back" : () => back(), + /*LANG*/'Speed threshold': { + value: settings.speed, + min: 1, max: 20, + onchange: v => { + settings.speed = v; + writeSettings(); + } + }, + /*LANG*/'Compass source': { + value: settings.compassSrc, + min: 0, max: compassSrcOpts.length-1, + format: v => compassSrcOpts[v], + onchange: v => { + settings.compassSrc = v; + writeSettings(); + } + }, + /*LANG*/'Reset compass when powered on': { + value: !!settings.resetCompassOnPwr, + format: v => v?/*LANG*/"On":/*LANG*/"Off", + onchange: v => { + settings.resetCompassOnPwr = v; + writeSettings(); + } + }, + /*LANG*/'Show Widget': { + value: settings.showWidget, + min: 0, max: 2, + format: v => ["Never", "Active", "GPS on"][v], + onchange: v => { + settings.showWidget = v; + writeSettings(); + } + }, + }; + + if (magnavInstalled) { + menu[/*LANG*/'Tilt compensation on built-in compass'] = { + value: !!settings.tiltCompensation, + format: v => v?/*LANG*/"On":/*LANG*/"Off", + onchange: v => { + settings.tiltCompensation = v; + writeSettings(); + } + }; + } + + // Show the menu + E.showMenu(menu); +})(load); From 01eeff6fe4cf5e71af16a8d7d609c7cea4eed1ad Mon Sep 17 00:00:00 2001 From: notEvil Date: Sun, 19 Feb 2023 12:53:07 +0100 Subject: [PATCH 0217/1725] - added app widdevst --- apps/widdevst/ChangeLog | 1 + apps/widdevst/README.md | 15 +++++++++++++++ apps/widdevst/icon.png | Bin 0 -> 4374 bytes apps/widdevst/metadata.json | 13 +++++++++++++ apps/widdevst/wid.js | 34 ++++++++++++++++++++++++++++++++++ 5 files changed, 63 insertions(+) create mode 100644 apps/widdevst/ChangeLog create mode 100644 apps/widdevst/README.md create mode 100644 apps/widdevst/icon.png create mode 100644 apps/widdevst/metadata.json create mode 100644 apps/widdevst/wid.js diff --git a/apps/widdevst/ChangeLog b/apps/widdevst/ChangeLog new file mode 100644 index 000000000..7f837e50e --- /dev/null +++ b/apps/widdevst/ChangeLog @@ -0,0 +1 @@ +0.01: First version diff --git a/apps/widdevst/README.md b/apps/widdevst/README.md new file mode 100644 index 000000000..49affc78d --- /dev/null +++ b/apps/widdevst/README.md @@ -0,0 +1,15 @@ +# Device Status Widget + +This widget shows a rectangle containing + +- `B` if Bluetooth is on +- `C` if the compass is on +- `G` if GPS is on +- `H` if the heart rate monitor is on + +at fixed positions, and two bars + +- left to right: usage of Flash storage +- bottom to top: usage of RAM + +in green if below 50%, orange if between 50% and 80%, and red if above 80%. diff --git a/apps/widdevst/icon.png b/apps/widdevst/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..be242e1e1194ac76ea6bda5997af8c8a75d6ab79 GIT binary patch literal 4374 zcmeHKeQ*=k5kHd}8&M3k4Y=4fhiDRteY!hI*2h({BP1aSN4Bul*v8QMboXRmEa_z3 z*^&(*28Rp*=fhz_3?Y1sA;XZ+xNS&=0)rewNq}@HHBBi^a0)Y&g7DCx`5*-PPLjW- zndx{Y`Olg;-QC;W-|qf)-_E<|TxGTyvUxHDL1sAYmI`=Br7L|Z{1@8V?!epoZSHEZ zf)1m>5bx!D02Nz<00j}wiy)D|`CX>Wel-2)*PDt>HJ(BJ8_xQ>9mU5N{WR;+t?c=7i;=sgCAlV*>ELfVb7nD9Hf+PLUf!9pcjl)#HFqD*1X2qn_PPaWCyA4m3LE}^Ip!L zYwJ5SIC#o)q3>i(Ra%v4);*-Dxv4_z%6#x@_KFjc;NM>ie~}*^LiW^v0~fQ>+#e~G zA3oE4=Iu>=Rq5$H^Lx_mX9upGzn*P4^|5iynq!-97Y+$ezmT%8P8oeP^VGIL^@-dQ zs@Jyuv2~a3{nIZmSyN`9&!s*$|FGi7y+0hj+8b3ZT&hu(=Pj61x~ect7UV9zt!{EJ zFFHLpq$t?&p6<;HRO96>#|ihjC$=6g6Mo<*^i1P6zO>wy`its~e>%|Rk(wu7!i$RqcG7VtBuT zW_b@#MEpV6b_il9i3Dk;5s0V<)N=u&eCWt=Im)p{c~y~zM!DplVtIyR zsraL+NXzOOjRx};=>Vn%8ZV}&88xQU>vg17MJrXnGX}~L5JWn_00|0$D>#S)2v3pL z!;%=yXmyy{qa!grP#0mIB0|G5B+z;_-Z2p6Ar5vW?He1F1jRxqQm<7hy&g5D0$K)B z(^`PhI@l&&t)9?%S?Glz<4`O^E#*Ug8kUpu)Aaxk2I}JiiEzr~av0?*1u?qf^3kFf z8W`n|bAjf_sKCwnL8VAbY?2zSMn`D0gj%D~sI=-)r6)j0fSqWRD;0XZf=o!HvQRJ? zNGvV&DFldHz+5PE2+$%Qa`U{;D3?MSkvQQ_Vrh}K&?10%gi=KjN|?8sR8lG(rBoIW zBt;}5myn!1%XwS>pSHAbPy^J5)wXj2blnc#7c;m20Bm=;NVDh>hL=EEnPsU2{ox_2v~Mld$pbfn2sQeFhZqM1C}iU8d@_R zUEsZ9m<|C`J)|%}6PhF#T@)|V&&C^s8-P>;$Qec`u~E*{NzU+O&bTx&hLbkn|3ix* zt}tfAK)b{m99?h{;v=IlNt-luzQS5S<`~{8UaD3XGvEIvVBJmTuc)kPHWn=DOuAW z$yu2HskHQC(ONB^`xy1k!l&zP~^E6d-{)*>Iw%YNmZj&5B>bVUw%ri-tvYrQ>Z z+qFFY>i$=3%cuRP60sO=zR-RX$!M_+3eC}i&(yN+h%d8E;DUmVI*z< literal 0 HcmV?d00001 diff --git a/apps/widdevst/metadata.json b/apps/widdevst/metadata.json new file mode 100644 index 000000000..41cbdc028 --- /dev/null +++ b/apps/widdevst/metadata.json @@ -0,0 +1,13 @@ +{ "id": "widdevst", + "name": "Device Status Widget", + "version": "0.01", + "description": "Shows power status of Bluetooth, Compass, GPS and Heart Rate Monitor as well as storage and memory usage.", + "icon": "icon.png", + "type": "widget", + "tags": "widget,bluetooth,compass,gps,hrm", + "supports": ["BANGLEJS"], + "readme": "README.md", + "storage": [ + {"name": "widdevst.wid.js", "url": "wid.js"} + ] +} diff --git a/apps/widdevst/wid.js b/apps/widdevst/wid.js new file mode 100644 index 000000000..9920be404 --- /dev/null +++ b/apps/widdevst/wid.js @@ -0,0 +1,34 @@ +(() => { + WIDGETS.stat = {area: "tr", width: 21, draw: function() { + var x = this.x; + var y = this.y; + g.reset(); + g.clearRect(x, y, x + 20, y + 23); + g.drawRect(x + 1, y + 1, x + 19, y + 22); + g.setFont('6x8', 1); + if (NRF.getSecurityStatus().connected) g.drawString('B', x + 4, y + 3); + if (Bangle.isCompassOn()) g.drawString('C', x + 12, y + 3); + if (Bangle.isGPSOn()) g.drawString('G', x + 4, y + 13); + if (Bangle.isHRMOn()) g.drawString('H', x + 12, y + 13); + var t = require('Storage').getStats(); + var u = t.fileBytes / t.totalBytes; + g.setColor(col(u)); g.drawRect(x + 1, y + 22, x + 1 + u * 18, y + 23); + t = process.memory(false); + u = t.usage / t.total; + g.setColor(col(u)); g.drawRect(x, y + 22 - u * 21, x + 1, y + 22); + }}; + + function col(p) { + return p < 0.5 ? '#0f0' : (p < 0.8 ? '#f80' : '#f00'); + } + + var draw = WIDGETS.stat.draw.bind(WIDGETS.stat); + var iid = setInterval(draw, 2000); + + Bangle.on('lcdPower', (on) => { + if (on) { + draw(); + if (!iid) iid = setInterval(draw, 2000); + } else if (iid) iid = clearInterval(iid); + }); +})(); From 6b604422cd0de3dab751c270ffbc39acb601d83d Mon Sep 17 00:00:00 2001 From: notEvil Date: Sun, 19 Feb 2023 15:31:37 +0100 Subject: [PATCH 0218/1725] - apps/widdevst: added compatibility with module widget_utils --- apps/widdevst/wid.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/widdevst/wid.js b/apps/widdevst/wid.js index 9920be404..b56589358 100644 --- a/apps/widdevst/wid.js +++ b/apps/widdevst/wid.js @@ -1,5 +1,6 @@ (() => { - WIDGETS.stat = {area: "tr", width: 21, draw: function() { + WIDGETS.devst = {area: "tr", width: 21, draw: function() { + if (WIDGETS.devst._draw) return; var x = this.x; var y = this.y; g.reset(); @@ -22,7 +23,7 @@ return p < 0.5 ? '#0f0' : (p < 0.8 ? '#f80' : '#f00'); } - var draw = WIDGETS.stat.draw.bind(WIDGETS.stat); + var draw = WIDGETS.devst.draw.bind(WIDGETS.devst); var iid = setInterval(draw, 2000); Bangle.on('lcdPower', (on) => { From 70a750fdf6410249074a2e1ee26970dfdbdc7063 Mon Sep 17 00:00:00 2001 From: Amos Blanton Date: Sun, 19 Feb 2023 15:32:27 +0100 Subject: [PATCH 0219/1725] Rings watchface. --- apps/rings/ChangeLog | 1 + apps/rings/README.md | 11 ++ apps/rings/app-icon.js | 1 + apps/rings/app.js | 210 +++++++++++++++++++++++++++++++++++++ apps/rings/app.png | Bin 0 -> 4217 bytes apps/rings/metadata.json | 16 +++ apps/rings/screenshot1.png | Bin 0 -> 2950 bytes apps/rings/screenshot2.png | Bin 0 -> 5230 bytes 8 files changed, 239 insertions(+) create mode 100644 apps/rings/ChangeLog create mode 100644 apps/rings/README.md create mode 100644 apps/rings/app-icon.js create mode 100644 apps/rings/app.js create mode 100644 apps/rings/app.png create mode 100644 apps/rings/metadata.json create mode 100644 apps/rings/screenshot1.png create mode 100644 apps/rings/screenshot2.png diff --git a/apps/rings/ChangeLog b/apps/rings/ChangeLog new file mode 100644 index 000000000..ba635f847 --- /dev/null +++ b/apps/rings/ChangeLog @@ -0,0 +1 @@ +0.01: First rev. Could use a little optimization love. diff --git a/apps/rings/README.md b/apps/rings/README.md new file mode 100644 index 000000000..1f689623f --- /dev/null +++ b/apps/rings/README.md @@ -0,0 +1,11 @@ +# Rings watchface + +Ring based watchface, read from the outside in. When the watch is unlocked the circles shrink to show the date ring. + +By Amos Blanton, inspired by and remixed from Rinkulainen by Jukio Kallio. + +![](screenshot1.png) +View when watch is locked. + +![](screenshot2.png) +Watch unlocked, showing the date. \ No newline at end of file diff --git a/apps/rings/app-icon.js b/apps/rings/app-icon.js new file mode 100644 index 000000000..3e70c5e3a --- /dev/null +++ b/apps/rings/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwxH+CR0GAokMiUMAQQLFAooAYg0SjEYjwAHjA0BGLQXChgrEGIIGCG4wyBLbItFFQYnDFgYREGIRiRCISHIFQgEDMYgCCSoYuPhi1IXg4vFMYI5CSh4uBJwYAEj5bDAAjGCjIzDTwguWFoMShkOgIVFgMOLQMYHwYCDGBZdKiUHisckcOwNWgGBxEkikjkcWhCmBj4sBMJ67GDIMAiojBAANd1lWq2BAAMOo4LCjkBiQWBLwQ0CK4RfGFw0SgJbBAAc51mBles1lPhwMENoMMGAJgDj0MGAoEBBgYuDhAgFkeIFgOBAQN6F40jisGYgQADRpguJL4LtEgE4B48VMIRiDSIxeFjEBDo1HWQMAqgACGIKdFAAUPYYUSSIjsJgAdHh1O1HSAAmovEICY8Id4RTDMAK9GRoMVDIscgGo6YuFAAPT1FOitHCosGFoYpBdwZeFg4uRGIYwHh4sBYIsAS4ZeJFwItKGAiSFjjyBL4aQBdo0MCwlHhxdMYgkAYJApDF48OIotOFw2ov1+NA3TvyRFisYMAJXDgCOEjCOEo8VLwuoqjXCAAIxF1EIJQsSF4RbBhkMXxcO5giEFwMqAAQwBqhkB6ZABqkdYArsBdQUSF4q+FkdUWQwrCAAQFFvzxGg5eCeARfGCYkdF4t+FI0Aq1VleBwNWgAvFFAgvHL4ovOq2swIvB1msgFAF7yPHlesLYNWwIHBR5AvJiUWd4ovE6S6EAQJfB1gyDF4rvCAAcSgwvEjEVCYdHh+o6ZgFAAksq1WlcrGwMHJQkciUfF4kAGwsOCgt4F4jCCqgABv1+SwcBgBKEkcVjAvEhkAjA0DAAIUEkcI1AvFAA+oHAIZGh0YAAQqBFAMSFodWkhFFjlOMAwAH6d+DA0MjESGIYrD1kAwOswMyIwsVGBouBhAXGXwRfCLYYsBAQIDBvUcC4lHGALzFFojHBFw0jcwq+CL4eBgGs1lWgwYFo8cgF+5gpBAAQvB0SlBo4VFh5bBRwIuBRwMGL4QABleBrgHBhxKGPYMIql+AAVUg8VjouGi0Mj7uELwYAGhkZhjZFMQTeCAAYIDdgqNCFoMMLwoABlYFBmJsCj8GGA4yCAAQMIFwJaCdoZeIBwQACj8Mh4jIABUWFwS8Dj0SLwovIGAMShCEBAB8PQ4JbCLoSNBABIwHjEGh4xMjkVDQMZRggEBFxQwIDIUMhEVdQQrDFgMOg0SCIQYFRY4wPj4gBiUMg8MAQS0BCgINBLYguDGBxJCGI4kCA5S7GFxwABa4QAXiQrPAAQ/CSZAANjBaQGA8MGKUYhiLSGJEGcgIsMfQItYGIxlChg0BAAUSFYYtQ")) \ No newline at end of file diff --git a/apps/rings/app.js b/apps/rings/app.js new file mode 100644 index 000000000..0fb768ea8 --- /dev/null +++ b/apps/rings/app.js @@ -0,0 +1,210 @@ +// Rings watch face +// for Bangle.js 2 +// by Amos Blanton +// Remixed from / inspired by Rinkulainen watch face by Jukio Kallio + +// To Do: +// Make Month / year text buffer 1/2 size +// Optimize text positioning transforms + +const watch = { + x:0, y:0, w:0, h:0, + color:"#000000", + dateRing : { size:109, weight:20, color:"#00FF00", cursor:14, numbers: true }, + hourRing : { size:85, weight:20, color:"#00FFFF", cursor:14, numbers: true }, + minuteRing : { size:61, weight:20, color:"#FFFF00", cursor:14, numbers: true }, + screen : { width:g.getWidth(), height:g.getHeight(), centerX: g.getWidth() *0.5, centerY: g.getHeight() * 0.5, cursor: 14, font:"6x8:2" }, +}; + +const month= ["JANUARY","FEBRUARY","MARCH","APRIL","MAY","JUNE","JULY", + "AUGUST","SEPTEMBER","OCTOBER","NOVEMBER","DECEMBER"]; + +var wait = 60000; // wait time, normally a minute +// timeout used to update every minute +var drawTimeout; +// Global for use in shrink / unshrink animations +var counter = 1; + +// Buffer for month circle text, 1/2 screen size (will be scaled up) +var monthCircleTextBuffer= Graphics.createArrayBuffer(watch.screen.width,watch.screen.height,1,{msb:true}); +var monthCircleTextImg = monthCircleTextBuffer.asImage(); +monthCircleTextImg.transparent = 1; +var lastMonthCircleImageText = ""; + +// Calculate number of days in this month / year for date ring +const getDays = (year, thisMonth) => { + return new Date(year, thisMonth, 0).getDate(); // getMonth() Jan = 0. +}; + +// Schedule a draw for the next minute +function queueDraw() { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(function() { + drawTimeout = undefined; + draw(); + }, wait - (Date.now() % wait)); +} + +// Draws a time circle (date, hours, minutes) +function drawTimeCircle(color, size, weight, range, value ) { + // variables for vertex transformations and positioning time + var tver, tobj, tran; + var ttime = (value / range) * (Math.PI * 2); + + // draw circle and line + g.setColor(color).fillCircle(watch.screen.centerX, watch.screen.centerY, size); + g.setColor("#000000").fillCircle(watch.screen.centerX, watch.screen.centerY, size - weight); + + tver = [-watch.screen.cursor, 0, watch.screen.cursor, 0, watch.screen.cursor, -size*1.01, -watch.screen.cursor, -size*1.05]; + + tobj = { x:watch.screen.centerX, y:watch.screen.centerY, scale:1, rotate:ttime }; + tran = g.transformVertices(tver, tobj); + g.fillPoly(tran); + + // Draw numbers + g.setFontAlign(0,0).setFont(watch.screen.font, 2).setColor(1,1,1); + + // size - 21 is the right offset to get the numbers aligned in the circle. + tver = [-1, 0, 1, 0, 1, -size, -1, -(size -21)]; + tran = g.transformVertices(tver, tobj); + g.setColor(1,1,1); + g.drawString(value, (tran[4]+tran[6]) / 2 , (tran[5]+tran[7]) / 2 ); + +} + +// Draws text for month and year in date circle +function drawMonthCircleText( text, circleSize, range, value){ + + // If the text isn't the same as last time, write it into a graphic object. + if(text != lastMonthCircleImageText){ + + monthCircleTextBuffer.clear(); + monthCircleTextBuffer.fillRect(0,0,watch.screen.width,watch.screen.height); + + var tver, tobj, tran; + + // From here: https://forum.espruino.com/comments/16781795/ + var gr = Graphics.createArrayBuffer(24,16,1,{msb:true}); + var grimg = gr.asImage(); + grimg.transparent = 1; + monthCircleTextBuffer.setColor(0,0,0); + + for(z=0; z < text.length; z++){ + tobj = { x:watch.screen.centerX, y:watch.screen.centerY, scale:1, rotate: ((z + 1) / range) * (Math.PI * 2) }; + tver = [-1, 0, 1, 0, 1, -circleSize, -1, -(circleSize -21)]; + tran = monthCircleTextBuffer.transformVertices(tver, tobj); + gr.clear().setColor(1,1,1).fillRect(0,0,24,16).setColor(0,0,0).setFont(watch.screen.font).setFontAlign(0,0).drawString(text[z],12,8); + + monthCircleTextBuffer.drawImage(grimg, + (tran[4]+tran[6]) / 2, + (tran[5]+tran[7]) / 2, + {rotate:((z+1) / range) * (Math.PI * 2) }); + } + + lastMonthCircleImageText = text; + } + + // Determine correct rotation for text in ring ( opposite the date position ) + var offset = value + (range / 2) - (text.length / 2); + if(offset > range) + offset = offset - range; + var rotation = (offset / range) * (Math.PI * 2); + + // Draw the image of text to the screen at that rotation + g.drawImage(monthCircleTextImg, watch.screen.centerX, watch.screen.centerY, {scale:1, rotate:rotation }); + +} + +// Animate by shrinking or expanding circles +function shrinkCircles(toggle){ + // If there's a queued draw operation,removeit so animation isn't interrupted. + if (drawTimeout) clearTimeout(drawTimeout); + + var date = new Date(); + var delta = 1; + + if(counter > 12) + { + counter = 1; + // We're finished, so queue next draw. + queueDraw(); + return; + } + + if(toggle) // We are shrinking + delta = counter * 2 * -1; + else // We are expanding + delta = counter *2 - 24; + + // Clear space on screen. + g.setColor(watch.color); + g.fillRect(0, 0, watch.screen.width, watch.screen.height); + + // Draw the date ring (unless it's the last run of an expansion). + if(counter < 11 || toggle){ + drawTimeCircle(watch.dateRing.color, watch.dateRing.size + delta, watch.dateRing.weight, getDays(date.getFullYear(), date.getMonth()+1), date.getDate() ); + // Draw month and year in date ring + drawMonthCircleText( month[date.getMonth()]+" "+date.getFullYear(), watch.dateRing.size - 24, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()) ; + } + + drawTimeCircle(watch.hourRing.color, watch.hourRing.size + delta, watch.hourRing.weight, 12, date.getHours() ); + + drawTimeCircle(watch.minuteRing.color, watch.minuteRing.size + delta, watch.minuteRing.weight, 60, date.getMinutes() ); + + counter += 1; + setTimeout(shrinkCircles, 10, toggle); +} + + +// main draw function +function draw() { + // make date object + var date = new Date(); + var unLockedOffset = 0; + + // Reset the state of the graphics library + g.reset(); + + // Clear the area where we want to draw the time + g.setColor(watch.color); + g.fillRect(0, 0, watch.screen.width, watch.screen.height); + + // If unlocked, draw date ring and text and make hour and minute rings smaller + if(!Bangle.isLocked()){ + unLockedOffset = 24; + drawTimeCircle(watch.dateRing.color, watch.dateRing.size - unLockedOffset, watch.dateRing.weight, getDays(date.getFullYear(), date.getMonth()+1), date.getDate() ); + drawMonthCircleText( month[date.getMonth()]+" "+date.getFullYear(), watch.dateRing.size - unLockedOffset, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()) ; + } + + drawTimeCircle(watch.hourRing.color, watch.hourRing.size - unLockedOffset, watch.hourRing.weight, 12, date.getHours() ); + drawTimeCircle(watch.minuteRing.color, watch.minuteRing.size -unLockedOffset , watch.minuteRing.weight, 60, date.getMinutes() ); + + queueDraw(); +} + +// Trigger shrink / expand animation on unlock / lock events +Bangle.on('lock', on=>{ + if (on) { // locked, expand circles + counter = 1; + shrinkCircles(false); + } else + { // unlocked, shrink circles and show date ring + counter = 1; + shrinkCircles(true); + } +}); + + +// End function definitions / start of initial execution. + +// Clear the screen once, at startup +g.clear(); + +// draw immediately at first +draw(); + + +// console.log("Whatevs"); + +// Show launcher when middle button pressed +Bangle.setUI("clock"); \ No newline at end of file diff --git a/apps/rings/app.png b/apps/rings/app.png new file mode 100644 index 0000000000000000000000000000000000000000..e4bfd6bac74147bbc2db8f653b2158a4359f4bcf GIT binary patch literal 4217 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 wVy~k*f@-b?0X9p<8!{c|UQbJ;0~F80t* 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

JL zL}q^4o>yU098Bj1#q)2>z6D2}_b10%p=-@sesNX>EP-(2aF&X}RFB^i80G{dc7`D8@b}v z8L}X|>q5ibhAeG^726#M{M91k!s+TLJ5tjwy1RJMNPQ@M@PM{yoa*2=iM==@5kJ&@ z7#8pSknXf?eB(*zs((Th;QE9NXZb7ED@~=9$Fv(=LhfueT1vJXuZ-@{FvvDO>|^V4 z#%7{90~zvsO*ALM6Bha!gECz{G+iUJ*V>^-VSeg5E2i_!0k%Djm*$n;Mw(Fd^-t2h zGKCsGLrO&JY!rBiH&EH|8L6#2KB9mXrL}mMj^qqzx(x{mO?t1qZXK~oD+kbGW62b@ za4AuWI=2=03=_pu^`GmZunO)tcEff?zH-2r@iA}hpQLwK^&EpctYK?cZMW%J#fMBh zqZ`Rfqm3w!iC`=_ZuB>i6av~sJXd(XSL5>}GPtijXBMAKtnR^Ir?4af=KI6>)PD3X z#5kP4rii8@5jGwy8Z8RiLUlg?4Bgc)B@LdSC-?DV1j>wC1O2p3b;gSeRe5xRMt!7G z0gBW`H_udV+Lag4%j1z^*Dc3j`8}Fwa^f2)?8*eV@3H!rc;HX0!<%Dm+`Hs8 zzX2K`+M-#X(GCxm3$5PQ2)^e12{pAdC9;3zS5qnI2M@kYgG)NP6-qK^5vy;e(e)z~ zoDb0FF?#Hz?lrpTg!?Grmhvb#@yS%7kP}VGZEn;Pqet{yYp7i8ktdn^mD;>(D{7tb zW(s9A^;dWG#O>Yi>_jd!S!3bF2Wb&Y0blQMB67PxV~;QHazXeaUDu(y{_J@jqYZVf zvh0gtvy!FDfsun1J%m*jh)_XV>iy6?E9_kz Date: Sun, 19 Feb 2023 18:07:44 +0100 Subject: [PATCH 0220/1725] Update submodule --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index 893c2dbbe..0d02ff376 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit 893c2dbbe5a93fbb80d035a695663b4f4cca8875 +Subproject commit 0d02ff3763783d166ff84906af038420736aabfc From d9a45fc578cfd2c9081f298735a10c264f6888dd Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 17:58:15 +0000 Subject: [PATCH 0221/1725] Typescript - move to typescript/package.json --- package-lock.json | 1414 +++++++++++++-------------------------------- package.json | 3 +- 2 files changed, 417 insertions(+), 1000 deletions(-) diff --git a/package-lock.json b/package-lock.json index e0ce5214d..5e531b4a6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,30 +1,15 @@ { "name": "BangleApps", "version": "0.0.1", - "lockfileVersion": 3, + "lockfileVersion": 1, "requires": true, - "packages": { - "": { - "name": "BangleApps", - "version": "0.0.1", - "license": "MIT", - "dependencies": { - "acorn": "^7.2.0", - "typescript": "^4.9.4" - }, - "devDependencies": { - "eslint": "^8.14.0", - "eslint-config-airbnb-base": "^15.0.0", - "eslint-plugin-import": "^2.26.0", - "npm-watch": "^0.11.0" - } - }, - "node_modules/@eslint/eslintrc": { + "dependencies": { + "@eslint/eslintrc": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz", "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==", "dev": true, - "dependencies": { + "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.3.2", @@ -34,374 +19,278 @@ "js-yaml": "^4.1.0", "minimatch": "^3.1.2", "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@humanwhocodes/config-array": { + "@humanwhocodes/config-array": { "version": "0.9.5", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", "dev": true, - "dependencies": { + "requires": { "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.10.0" } }, - "node_modules/@humanwhocodes/object-schema": { + "@humanwhocodes/object-schema": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, - "node_modules/@types/json5": { + "@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, - "node_modules/abbrev": { + "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true }, - "node_modules/acorn": { + "acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" }, - "node_modules/acorn-jsx": { + "acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } + "dev": true }, - "node_modules/ajv": { + "ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, - "dependencies": { + "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/ansi-regex": { + "ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } + "dev": true }, - "node_modules/ansi-styles": { + "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "dependencies": { + "requires": { "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/anymatch": { + "anymatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, - "dependencies": { + "requires": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" } }, - "node_modules/argparse": { + "argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, - "node_modules/array-includes": { + "array-includes": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz", "integrity": "sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", "es-abstract": "^1.19.5", "get-intrinsic": "^1.1.1", "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.flat": { + "array.prototype.flat": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz", "integrity": "sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.2", "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/balanced-match": { + "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "node_modules/binary-extensions": { + "binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } + "dev": true }, - "node_modules/brace-expansion": { + "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "dependencies": { + "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "node_modules/braces": { + "braces": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, - "dependencies": { + "requires": { "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" } }, - "node_modules/call-bind": { + "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, - "dependencies": { + "requires": { "function-bind": "^1.1.1", "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/callsites": { + "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } + "dev": true }, - "node_modules/chalk": { + "chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "dependencies": { + "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/chokidar": { + "chokidar": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { + "requires": { "anymatch": "~3.1.2", "braces": "~3.0.2", + "fsevents": "~2.3.2", "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.6.0" }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } } }, - "node_modules/color-convert": { + "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "dependencies": { + "requires": { "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" } }, - "node_modules/color-name": { + "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/concat-map": { + "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, - "node_modules/confusing-browser-globals": { + "confusing-browser-globals": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", "dev": true }, - "node_modules/cross-spawn": { + "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, - "dependencies": { + "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" } }, - "node_modules/debug": { + "debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, - "dependencies": { + "requires": { "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } } }, - "node_modules/deep-is": { + "deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, - "node_modules/define-properties": { + "define-properties": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, - "dependencies": { + "requires": { "has-property-descriptors": "^1.0.0", "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/doctrine": { + "doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, - "dependencies": { + "requires": { "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" } }, - "node_modules/es-abstract": { + "es-abstract": { "version": "1.20.1", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz", "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -425,58 +314,40 @@ "string.prototype.trimend": "^1.0.5", "string.prototype.trimstart": "^1.0.5", "unbox-primitive": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-shim-unscopables": { + "es-shim-unscopables": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", "dev": true, - "dependencies": { + "requires": { "has": "^1.0.3" } }, - "node_modules/es-to-primitive": { + "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, - "dependencies": { + "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/escape-string-regexp": { + "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "dev": true }, - "node_modules/eslint": { + "eslint": { "version": "8.17.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.17.0.tgz", "integrity": "sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw==", "dev": true, - "dependencies": { + "requires": { "@eslint/eslintrc": "^1.3.0", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", @@ -512,83 +383,68 @@ "strip-json-comments": "^3.1.0", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint-config-airbnb-base": { + "eslint-config-airbnb-base": { "version": "15.0.0", "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", "integrity": "sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==", "dev": true, - "dependencies": { + "requires": { "confusing-browser-globals": "^1.0.10", "object.assign": "^4.1.2", "object.entries": "^1.1.5", "semver": "^6.3.0" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "peerDependencies": { - "eslint": "^7.32.0 || ^8.2.0", - "eslint-plugin-import": "^2.25.2" } }, - "node_modules/eslint-import-resolver-node": { + "eslint-import-resolver-node": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", "dev": true, - "dependencies": { + "requires": { "debug": "^3.2.7", "resolve": "^1.20.0" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, + }, "dependencies": { - "ms": "^2.1.1" + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } } }, - "node_modules/eslint-module-utils": { + "eslint-module-utils": { "version": "2.7.3", "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz", "integrity": "sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==", "dev": true, - "dependencies": { + "requires": { "debug": "^3.2.7", "find-up": "^2.1.0" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, "dependencies": { - "ms": "^2.1.1" + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } } }, - "node_modules/eslint-plugin-import": { + "eslint-plugin-import": { "version": "2.26.0", "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", "dev": true, - "dependencies": { + "requires": { "array-includes": "^3.1.4", "array.prototype.flat": "^1.2.5", "debug": "^2.6.9", @@ -603,821 +459,601 @@ "resolve": "^1.22.0", "tsconfig-paths": "^3.14.1" }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "dependencies": { - "ms": "2.0.0" + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } } }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/eslint-scope": { + "eslint-scope": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", "dev": true, - "dependencies": { + "requires": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/eslint-utils": { + "eslint-utils": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, - "dependencies": { + "requires": { "eslint-visitor-keys": "^2.0.0" }, - "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + } } }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-visitor-keys": { + "eslint-visitor-keys": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } + "dev": true }, - "node_modules/espree": { + "espree": { "version": "9.3.2", "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==", "dev": true, - "dependencies": { + "requires": { "acorn": "^8.7.1", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.3.0" }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "dependencies": { + "acorn": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "dev": true + } } }, - "node_modules/espree/node_modules/acorn": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/esquery": { + "esquery": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, - "dependencies": { + "requires": { "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" } }, - "node_modules/esrecurse": { + "esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, - "dependencies": { + "requires": { "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" } }, - "node_modules/estraverse": { + "estraverse": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } + "dev": true }, - "node_modules/esutils": { + "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/fast-deep-equal": { + "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, - "node_modules/fast-json-stable-stringify": { + "fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, - "node_modules/fast-levenshtein": { + "fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "node_modules/file-entry-cache": { + "file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, - "dependencies": { + "requires": { "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/fill-range": { + "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, - "dependencies": { + "requires": { "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" } }, - "node_modules/find-up": { + "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, - "dependencies": { + "requires": { "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" } }, - "node_modules/flat-cache": { + "flat-cache": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, - "dependencies": { + "requires": { "flatted": "^3.1.0", "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/flatted": { + "flatted": { "version": "3.2.5", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", "dev": true }, - "node_modules/fs.realpath": { + "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, - "node_modules/fsevents": { + "fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } + "optional": true }, - "node_modules/function-bind": { + "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, - "node_modules/function.prototype.name": { + "function.prototype.name": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.0", "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/functional-red-black-tree": { + "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, - "node_modules/functions-have-names": { + "functions-have-names": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "dev": true }, - "node_modules/get-intrinsic": { + "get-intrinsic": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", "dev": true, - "dependencies": { + "requires": { "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/get-symbol-description": { + "get-symbol-description": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/glob": { + "glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, - "dependencies": { + "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/glob-parent": { + "glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, - "dependencies": { + "requires": { "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" } }, - "node_modules/globals": { + "globals": { "version": "13.15.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", "dev": true, - "dependencies": { + "requires": { "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has": { + "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, - "dependencies": { + "requires": { "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" } }, - "node_modules/has-bigints": { + "has-bigints": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "dev": true }, - "node_modules/has-flag": { + "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } + "dev": true }, - "node_modules/has-property-descriptors": { + "has-property-descriptors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", "dev": true, - "dependencies": { + "requires": { "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-symbols": { + "has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "dev": true }, - "node_modules/has-tostringtag": { + "has-tostringtag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dev": true, - "dependencies": { + "requires": { "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ignore": { + "ignore": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true, - "engines": { - "node": ">= 4" - } + "dev": true }, - "node_modules/ignore-by-default": { + "ignore-by-default": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", "dev": true }, - "node_modules/import-fresh": { + "import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, - "dependencies": { + "requires": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/imurmurhash": { + "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } + "dev": true }, - "node_modules/inflight": { + "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, - "dependencies": { + "requires": { "once": "^1.3.0", "wrappy": "1" } }, - "node_modules/inherits": { + "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, - "node_modules/internal-slot": { + "internal-slot": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, - "dependencies": { + "requires": { "get-intrinsic": "^1.1.0", "has": "^1.0.3", "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" } }, - "node_modules/is-bigint": { + "is-bigint": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, - "dependencies": { + "requires": { "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-binary-path": { + "is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, - "dependencies": { + "requires": { "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" } }, - "node_modules/is-boolean-object": { + "is-boolean-object": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-callable": { + "is-callable": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "dev": true }, - "node_modules/is-core-module": { + "is-core-module": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", "dev": true, - "dependencies": { + "requires": { "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-date-object": { + "is-date-object": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, - "dependencies": { + "requires": { "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-extglob": { + "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/is-glob": { + "is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, - "dependencies": { + "requires": { "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/is-negative-zero": { + "is-negative-zero": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "dev": true }, - "node_modules/is-number": { + "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } + "dev": true }, - "node_modules/is-number-object": { + "is-number-object": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, - "dependencies": { + "requires": { "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-regex": { + "is-regex": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-shared-array-buffer": { + "is-shared-array-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-string": { + "is-string": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, - "dependencies": { + "requires": { "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-symbol": { + "is-symbol": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, - "dependencies": { + "requires": { "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-weakref": { + "is-weakref": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/isexe": { + "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "node_modules/js-yaml": { + "js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, - "dependencies": { + "requires": { "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" } }, - "node_modules/json-schema-traverse": { + "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "node_modules/json-stable-stringify-without-jsonify": { + "json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, - "node_modules/json5": { + "json5": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", "dev": true, - "dependencies": { + "requires": { "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" } }, - "node_modules/levn": { + "levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, - "dependencies": { + "requires": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" } }, - "node_modules/locate-path": { + "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", "dev": true, - "dependencies": { + "requires": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" } }, - "node_modules/lodash.merge": { + "lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, - "node_modules/minimatch": { + "minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "dependencies": { + "requires": { "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" } }, - "node_modules/minimist": { + "minimist": { "version": "1.2.6", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", "dev": true }, - "node_modules/ms": { + "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "node_modules/natural-compare": { + "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "node_modules/nodemon": { + "nodemon": { "version": "2.0.20", "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.20.tgz", "integrity": "sha512-Km2mWHKKY5GzRg6i1j5OxOHQtuvVsgskLfigG25yTtbyfRGn/GNvIbRyOf1PSCKJ2aT/58TiuUsuOU5UToVViw==", "dev": true, - "dependencies": { + "requires": { "chokidar": "^3.5.2", "debug": "^3.2.7", "ignore-by-default": "^1.0.1", @@ -1429,745 +1065,527 @@ "touch": "^3.1.0", "undefsafe": "^2.0.5" }, - "bin": { - "nodemon": "bin/nodemon.js" - }, - "engines": { - "node": ">=8.10.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/nodemon" - } - }, - "node_modules/nodemon/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, "dependencies": { - "ms": "^2.1.1" + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, - "node_modules/nodemon/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/nodemon/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/nodemon/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/nopt": { + "nopt": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", "dev": true, - "dependencies": { + "requires": { "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "*" } }, - "node_modules/normalize-path": { + "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/npm-watch": { + "npm-watch": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/npm-watch/-/npm-watch-0.11.0.tgz", "integrity": "sha512-wAOd0moNX2kSA2FNvt8+7ORwYaJpQ1ZoWjUYdb1bBCxq4nkWuU0IiJa9VpVxrj5Ks+FGXQd62OC/Bjk0aSr+dg==", "dev": true, - "dependencies": { + "requires": { "nodemon": "^2.0.7", "through2": "^4.0.2" - }, - "bin": { - "npm-watch": "cli.js" } }, - "node_modules/object-inspect": { + "object-inspect": { "version": "1.12.2", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "dev": true }, - "node_modules/object-keys": { + "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } + "dev": true }, - "node_modules/object.assign": { + "object.assign": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", "has-symbols": "^1.0.1", "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/object.entries": { + "object.entries": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1" - }, - "engines": { - "node": ">= 0.4" } }, - "node_modules/object.values": { + "object.values": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/once": { + "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, - "dependencies": { + "requires": { "wrappy": "1" } }, - "node_modules/optionator": { + "optionator": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, - "dependencies": { + "requires": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", "type-check": "^0.4.0", "word-wrap": "^1.2.3" - }, - "engines": { - "node": ">= 0.8.0" } }, - "node_modules/p-limit": { + "p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, - "dependencies": { + "requires": { "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" } }, - "node_modules/p-locate": { + "p-locate": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, - "dependencies": { + "requires": { "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" } }, - "node_modules/p-try": { + "p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", - "dev": true, - "engines": { - "node": ">=4" - } + "dev": true }, - "node_modules/parent-module": { + "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, - "dependencies": { + "requires": { "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" } }, - "node_modules/path-exists": { + "path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true, - "engines": { - "node": ">=4" - } + "dev": true }, - "node_modules/path-is-absolute": { + "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/path-key": { + "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } + "dev": true }, - "node_modules/path-parse": { + "path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, - "node_modules/picomatch": { + "picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } + "dev": true }, - "node_modules/prelude-ls": { + "prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } + "dev": true }, - "node_modules/pstree.remy": { + "pstree.remy": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", "dev": true }, - "node_modules/punycode": { + "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } + "dev": true }, - "node_modules/readable-stream": { + "readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, - "dependencies": { + "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" } }, - "node_modules/readdirp": { + "readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, - "dependencies": { + "requires": { "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" } }, - "node_modules/regexp.prototype.flags": { + "regexp.prototype.flags": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexpp": { + "regexpp": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } + "dev": true }, - "node_modules/resolve": { + "resolve": { "version": "1.22.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", "dev": true, - "dependencies": { + "requires": { "is-core-module": "^2.8.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-from": { + "resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } + "dev": true }, - "node_modules/rimraf": { + "rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, - "dependencies": { + "requires": { "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/safe-buffer": { + "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "dev": true }, - "node_modules/semver": { + "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } + "dev": true }, - "node_modules/shebang-command": { + "shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, - "dependencies": { + "requires": { "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" } }, - "node_modules/shebang-regex": { + "shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } + "dev": true }, - "node_modules/side-channel": { + "side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.0", "get-intrinsic": "^1.0.2", "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/simple-update-notifier": { + "simple-update-notifier": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.0.7.tgz", "integrity": "sha512-BBKgR84BJQJm6WjWFMHgLVuo61FBDSj1z/xSFUIozqO6wO7ii0JxCqlIud7Enr/+LhlbNI0whErq96P2qHNWew==", "dev": true, - "dependencies": { + "requires": { "semver": "~7.0.0" }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/simple-update-notifier/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, "dependencies": { - "safe-buffer": "~5.2.0" + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + } } }, - "node_modules/string.prototype.trimend": { + "string.prototype.trimend": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", "es-abstract": "^1.19.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/string.prototype.trimstart": { + "string.prototype.trimstart": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", "es-abstract": "^1.19.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/strip-ansi": { + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "dependencies": { + "requires": { "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" } }, - "node_modules/strip-bom": { + "strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } + "dev": true }, - "node_modules/strip-json-comments": { + "strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "dev": true }, - "node_modules/supports-color": { + "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "dependencies": { + "requires": { "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" } }, - "node_modules/supports-preserve-symlinks-flag": { + "supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "dev": true }, - "node_modules/text-table": { + "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "node_modules/through2": { + "through2": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", "dev": true, - "dependencies": { + "requires": { "readable-stream": "3" } }, - "node_modules/to-regex-range": { + "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, - "dependencies": { + "requires": { "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" } }, - "node_modules/touch": { + "touch": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", "dev": true, - "dependencies": { + "requires": { "nopt": "~1.0.10" - }, - "bin": { - "nodetouch": "bin/nodetouch.js" } }, - "node_modules/tsconfig-paths": { + "tsconfig-paths": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", "dev": true, - "dependencies": { + "requires": { "@types/json5": "^0.0.29", "json5": "^1.0.1", "minimist": "^1.2.6", "strip-bom": "^3.0.0" } }, - "node_modules/type-check": { + "type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, - "dependencies": { + "requires": { "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" } }, - "node_modules/type-fest": { + "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "dev": true }, - "node_modules/typescript": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", - "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/unbox-primitive": { + "unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, - "dependencies": { + "requires": { "call-bind": "^1.0.2", "has-bigints": "^1.0.2", "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/undefsafe": { + "undefsafe": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", "dev": true }, - "node_modules/uri-js": { + "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, - "dependencies": { + "requires": { "punycode": "^2.1.0" } }, - "node_modules/util-deprecate": { + "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, - "node_modules/v8-compile-cache": { + "v8-compile-cache": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, - "node_modules/which": { + "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "dependencies": { + "requires": { "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" } }, - "node_modules/which-boxed-primitive": { + "which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, - "dependencies": { + "requires": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", "is-number-object": "^1.0.4", "is-string": "^1.0.5", "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/word-wrap": { + "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/wrappy": { + "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", diff --git a/package.json b/package.json index bd0cb05dd..08f3a19ce 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,6 @@ "update-local-apps": "apps/*/metadata.json" }, "dependencies": { - "acorn": "^7.2.0", - "typescript": "4.9.4" + "acorn": "^7.2.0" } } From f7cc2bff5e27d80a4ee7de75fa87c472048c64ac Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 17:58:22 +0000 Subject: [PATCH 0222/1725] typescript: add to authors --- typescript/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/typescript/package.json b/typescript/package.json index 9fa0f2501..f98aae1e3 100644 --- a/typescript/package.json +++ b/typescript/package.json @@ -1,7 +1,7 @@ { "name": "Bangle.ts", "description": "Bangle.js Typescript Project Setup and Types", - "author": "Sebastian Di Luzio (https://diluz.io) and qucchia (https://github.com/qucchia)", + "author": "Sebastian Di Luzio (https://diluz.io), qucchia (https://github.com/qucchia) and Rob Pilling (https://github.com/bobrippling)", "version": "0.0.1", "devDependencies": { "typescript": "4.9.4" From 78fd64bf3f89bf363dd4fea0e2a217510e45b5d4 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sun, 19 Feb 2023 19:15:26 +0100 Subject: [PATCH 0223/1725] gpsmagcourse: settings changes --- apps/gpsmagcourse/README.md | 1 - apps/gpsmagcourse/metadata.json | 7 ++++--- apps/gpsmagcourse/settings.js | 12 ++++++------ 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/apps/gpsmagcourse/README.md b/apps/gpsmagcourse/README.md index de7526ccd..de6c51751 100644 --- a/apps/gpsmagcourse/README.md +++ b/apps/gpsmagcourse/README.md @@ -42,7 +42,6 @@ On Bangle.js 2 a click on the widget does reset the built-in compass. - GPS on ## TODO: -- Add Settings - Document settings with defaults - Check magnav dependency in settings - note magnav silently downgrade diff --git a/apps/gpsmagcourse/metadata.json b/apps/gpsmagcourse/metadata.json index 2dcc27384..266924bef 100644 --- a/apps/gpsmagcourse/metadata.json +++ b/apps/gpsmagcourse/metadata.json @@ -1,7 +1,7 @@ { "id": "gpsmagcourse", - "name": "GPS Compass heading switcher", - "shortName":"GPS/Comp. course", + "name": "GPS Compass course switcher", + "shortName":"GPS/Compass course", "icon": "app.png", "version":"0.01", "description": "Replace GPS heading with compass heading when speed is slow or standing still to avoid the heading from jumping around randomly.", @@ -11,7 +11,8 @@ "readme": "README.md", "storage": [ {"name":"gpsmagcourse.boot.js","url":"boot.js"}, - {"name":"gpsmagcourse.wid.js","url":"widget.js"} + {"name":"gpsmagcourse.wid.js","url":"widget.js"}, + {"name":"gpsmagcourse.settings.js","url":"settings.js"} ], "data": [{"name":"gpsmagcourse.json"}] } diff --git a/apps/gpsmagcourse/settings.js b/apps/gpsmagcourse/settings.js index e5fd524c9..572850d6f 100644 --- a/apps/gpsmagcourse/settings.js +++ b/apps/gpsmagcourse/settings.js @@ -27,9 +27,9 @@ settings.tiltCompensation = false; } } - const compassSrcOpts = ["off", "built-in"]; + const compassSrcOpts = [/*LANG*/"off", /*LANG*/"built-in"]; if (magnavInstalled) { - compassSrcOpts.push("magnav"); + compassSrcOpts.push(/*LANG*/"magnav"); } function writeSettings() { @@ -37,11 +37,11 @@ } const menu = { - "" : { "title" : /*LANG*/"GPS/Comp. course" }, + "" : { "title" : /*LANG*/"GPS/Com.course" }, "< Back" : () => back(), /*LANG*/'Speed threshold': { value: settings.speed, - min: 1, max: 20, + min: 1, max: 20, step: 0.5, onchange: v => { settings.speed = v; writeSettings(); @@ -67,7 +67,7 @@ /*LANG*/'Show Widget': { value: settings.showWidget, min: 0, max: 2, - format: v => ["Never", "Active", "GPS on"][v], + format: v => [/*LANG*/"Never", /*LANG*/"Active", /*LANG*/"GPS on"][v], onchange: v => { settings.showWidget = v; writeSettings(); @@ -88,4 +88,4 @@ // Show the menu E.showMenu(menu); -})(load); +}) From b778d476b7b4ea4e2db61d334a7b2ea367ca6cc1 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 19 Feb 2023 21:48:35 +0100 Subject: [PATCH 0224/1725] powermanager - Initial implementation of widget showing approximate power use --- apps/powermanager/metadata.json | 1 + apps/powermanager/widget.js | 48 +++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 apps/powermanager/widget.js diff --git a/apps/powermanager/metadata.json b/apps/powermanager/metadata.json index 509dff040..de65aa4d6 100644 --- a/apps/powermanager/metadata.json +++ b/apps/powermanager/metadata.json @@ -13,6 +13,7 @@ "storage": [ {"name":"powermanager.boot.js","url":"boot.js"}, {"name":"powermanager.settings.js","url":"settings.js"}, + {"name":"powermanager.wid.js","url":"settings.js"}, {"name":"powermanager","url":"lib.js"}, {"name":"powermanager.default.json","url":"default.json"} ], diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js new file mode 100644 index 000000000..2f60892b4 --- /dev/null +++ b/apps/powermanager/widget.js @@ -0,0 +1,48 @@ +/* run widgets in their own function scope so they don't interfere with +currently-running apps */ +(() => { + + const APPROX_IDLE = 0.3; + const APPROX_HIGH_BW_BLE = 0.5; + const APPROX_COMPASS = process.HWVERSION == 2 ? 5.5 : 2; + const APPROX_HRM = process.HWVERSION == 2 ? 1 : 2.5; + const APPROX_CPU = 3; + const APPROX_GPS = process.HWVERSION == 2 ? 25 : 30; + const APPROX_TOUCH = 2.5; + const APPROX_BACKLIGHT = process.HWVERSION == 2 ? 16 : 40; + const MAX = APPROX_IDLE + APPROX_HIGH_BW_BLE + APPROX_COMPASS + APPROX_HRM + APPROX_CPU + APPROX_GPS + APPROX_TOUCH + APPROX_BACKLIGHT; + + function draw() { + g.reset(); // reset the graphics context to defaults (color/font/etc) + // add your code + + let current = APPROX_IDLE; + if (Bangle.isGPSOn()) current += APPROX_GPS; + if (Bangle.isHRMOn()) current += APPROX_HRM; + if (Bangle.isLocked()) current += APPROX_TOUCH + APPROX_BACKLIGHT; + if (Bangle.isCompassOn()) current += APPROX_COMPASS; + g.setColor(g.theme.fg); + g.setFont6x15(); + g.setFontAlign(1,-1); + g.drawString("mA", this.x + 14, this.y+13); + g.setFont6x15(); + g.setFontAlign(1,-1); + g.drawString(current.toFixed(0), this.x + 14, this.y); + + timeout = 5000; + if (this.timeoutId !== undefined) { + clearTimeout(this.timeoutId); + } + this.timeoutId = setTimeout(()=>{ + this.timeoutId = undefined; + this.draw(); + }, timeout); + } + + // add your widget + WIDGETS.powermanager={ + area:"tl", + width: 14, + draw:draw + }; +})() From 8a3c9a26e57fdcb1c0b5205d0e85159e64a4a4d3 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 17:58:57 +0000 Subject: [PATCH 0225/1725] Regenerate widChargingStatus --- apps/widChargingStatus/widget.js | 66 ++++++++++++++++---------------- apps/widChargingStatus/widget.ts | 2 + 2 files changed, 35 insertions(+), 33 deletions(-) diff --git a/apps/widChargingStatus/widget.js b/apps/widChargingStatus/widget.js index 5d9ea3837..46119cc5c 100644 --- a/apps/widChargingStatus/widget.js +++ b/apps/widChargingStatus/widget.js @@ -1,33 +1,33 @@ -"use strict"; -(() => { - const icon = require('heatshrink').decompress(atob('ikggMAiEAgYIBmEAg4EB+EAh0AgPggEeCAIEBnwQBAgP+gEP//x///j//8f//k///H//4BYOP/4lBv4bDvwEB4EAvAEBwEAuA7DCAI7BgAQBhEAA')); - const iconWidth = 18; - function draw() { - g.reset(); - if (Bangle.isCharging()) { - g.setColor('#FD0'); - g.drawImage(icon, this.x + 1, this.y + 1, { - scale: 0.6875, - }); - } - } - WIDGETS.chargingStatus = { - area: 'tr', - width: Bangle.isCharging() ? iconWidth : 0, - draw: draw, - }; - Bangle.on('charging', (charging) => { - const widget = WIDGETS.chargingStatus; - if (widget) { - if (charging) { - Bangle.buzz(); - widget.width = iconWidth; - } - else { - widget.width = 0; - } - Bangle.drawWidgets(); // re-layout widgets - g.flip(); - } - }); -})(); +"use strict"; +(function () { + var icon = require('heatshrink').decompress(atob('ikggMAiEAgYIBmEAg4EB+EAh0AgPggEeCAIEBnwQBAgP+gEP//x///j//8f//k///H//4BYOP/4lBv4bDvwEB4EAvAEBwEAuA7DCAI7BgAQBhEAA')); + var iconWidth = 18; + function draw() { + g.reset(); + if (Bangle.isCharging()) { + g.setColor('#FD0'); + g.drawImage(icon, this.x + 1, this.y + 1, { + scale: 0.6875, + }); + } + } + WIDGETS.chargingStatus = { + area: 'tr', + width: Bangle.isCharging() ? iconWidth : 0, + draw: draw, + }; + Bangle.on('charging', function (charging) { + var widget = WIDGETS.chargingStatus; + if (widget) { + if (charging) { + Bangle.buzz(); + widget.width = iconWidth; + } + else { + widget.width = 0; + } + Bangle.drawWidgets(); + g.flip(); + } + }); +})(); diff --git a/apps/widChargingStatus/widget.ts b/apps/widChargingStatus/widget.ts index 14b4df4a4..02f3cd8d4 100644 --- a/apps/widChargingStatus/widget.ts +++ b/apps/widChargingStatus/widget.ts @@ -16,6 +16,7 @@ } } + // @ts-ignore WIDGETS.chargingStatus = { area: 'tr', width: Bangle.isCharging() ? iconWidth : 0, @@ -23,6 +24,7 @@ }; Bangle.on('charging', (charging) => { + // @ts-ignore const widget = WIDGETS.chargingStatus; if (widget) { if (charging) { From 12575cda3455e2cfaf5ffeb41d40591e8b01c106 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 18:01:08 +0000 Subject: [PATCH 0226/1725] Reformat typescript/**/*.d.ts --- typescript/types/ClockFace.d.ts | 90 ++++++------- typescript/types/clock_info.d.ts | 100 +++++++------- typescript/types/layout.d.ts | 216 +++++++++++++++---------------- typescript/types/main.d.ts | 4 +- 4 files changed, 205 insertions(+), 205 deletions(-) diff --git a/typescript/types/ClockFace.d.ts b/typescript/types/ClockFace.d.ts index 173b83c39..7f906e0d6 100644 --- a/typescript/types/ClockFace.d.ts +++ b/typescript/types/ClockFace.d.ts @@ -1,56 +1,56 @@ declare module ClockFace_ { - export class ClockFace { - constructor(options: Options | Draw); + export class ClockFace { + constructor(options: Options | Draw); - is12Hour: boolean; - paused: boolean; - showDate: boolean; // default true - loadWidgets: boolean; // default true + is12Hour: boolean; + paused: boolean; + showDate: boolean; // default true + loadWidgets: boolean; // default true - start(): void; + start(): void; - tick(): void; - pause(): void; - resume(): void; - remove(): void; - redraw(): void; - } + tick(): void; + pause(): void; + resume(): void; + remove(): void; + redraw(): void; + } - type Options = { - precision?: number, // seconds + type Options = { + precision?: number, // seconds - init?: () => void, + init?: () => void, - pause?: () => void, - resume?: () => void, - remove?: () => void, + pause?: () => void, + resume?: () => void, + remove?: () => void, - settingsFile?: string, - } & ( - { - draw: Draw - } | { - update: Update, - } | { - draw: Draw, - update: Update, - } - ) & ( - { - up?: () => void, - down?: () => void, - } | { - upDown?: (dir: -1 | 1) => void, - } - ); + settingsFile?: string, + } & ( + { + draw: Draw + } | { + update: Update, + } | { + draw: Draw, + update: Update, + } + ) & ( + { + up?: () => void, + down?: () => void, + } | { + upDown?: (dir: -1 | 1) => void, + } + ); - type Draw = (d: Date, changed: Changed) => void; - type Update = (d: Date, changed: Changed) => void; + type Draw = (d: Date, changed: Changed) => void; + type Update = (d: Date, changed: Changed) => void; - type Changed = { - d: T, - h: T, - m: T, - s: T, - } + type Changed = { + d: T, + h: T, + m: T, + s: T, + } } diff --git a/typescript/types/clock_info.d.ts b/typescript/types/clock_info.d.ts index df5dd1f9b..ce8c78d72 100644 --- a/typescript/types/clock_info.d.ts +++ b/typescript/types/clock_info.d.ts @@ -1,58 +1,58 @@ declare module ClockInfo { - function load(): Menu[]; - function addInteractive(menu: Menu[], options: Options): InteractiveOptions; + function load(): Menu[]; + function addInteractive(menu: Menu[], options: Options): InteractiveOptions; - type Menu = { - name: string, - img: string, - dynamic?: boolean, - items: MenuItem[], - }; + type Menu = { + name: string, + img: string, + dynamic?: boolean, + items: MenuItem[], + }; - type MenuItem = { - name: string, - show(): void, - hide(): void, - on(what: "redraw", cb: () => void): void, // extending from Object - run?(): void, - } & ( - { - hasRange: true, - get(): RangeItem, - } | { - hasRange: false, - get(): Item, - } - ); + type MenuItem = { + name: string, + show(): void, + hide(): void, + on(what: "redraw", cb: () => void): void, // extending from Object + run?(): void, + } & ( + { + hasRange: true, + get(): RangeItem, + } | { + hasRange: false, + get(): Item, + } + ); - type Item = { - text: string, - short?: string, - img?: string, - }; + type Item = { + text: string, + short?: string, + img?: string, + }; - type RangeItem = - Item & { - v: number, - min: number, - max: number, - }; + type RangeItem = + Item & { + v: number, + min: number, + max: number, + }; - type Options = { - x: number, - y: number, - w: number, - h: number, - draw(itm: MenuItem, info: Item, options: InteractiveOptions): void, - }; + type Options = { + x: number, + y: number, + w: number, + h: number, + draw(itm: MenuItem, info: Item, options: InteractiveOptions): void, + }; - type InteractiveOptions = - Options & { - index: number, - menuA: number, - menuB: number, - remove(): void, - redraw(): void, - focus: boolean, - }; + type InteractiveOptions = + Options & { + index: number, + menuA: number, + menuB: number, + remove(): void, + redraw(): void, + focus: boolean, + }; } diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index 2240ef55b..8c5706d0b 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -1,125 +1,125 @@ type Prev = [never, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]; type ExtractIds = - [Depth] extends [never] - ? never - : (T extends { id: infer Id extends string } - ? { [k in Id]: T } - : never) - | - ( - T extends { c: Array } - ? ExtractIds - : never - ); + [Depth] extends [never] + ? never + : (T extends { id: infer Id extends string } + ? { [k in Id]: T } + : never) + | + ( + T extends { c: Array } + ? ExtractIds + : never + ); declare module Layout_ { - type Layouter = - ExtractIds - & - { - // these actually change T - render(l?: T): void; - layout(l: T): void; + type Layouter = + ExtractIds + & + { + // these actually change T + render(l?: T): void; + layout(l: T): void; - debug(l?: T, c?: ColorResolvable): void; - update(): void; // changes layoutObject into a RenderedHierarchy - clear(obj?: T): void; + debug(l?: T, c?: ColorResolvable): void; + update(): void; // changes layoutObject into a RenderedHierarchy + clear(obj?: T): void; - forgetLazyState(): void; + forgetLazyState(): void; - setUI(): void; - }; + setUI(): void; + }; - var Layout: { - new ( - hier: T, - options?: { - lazy: boolean, - btns?: { - label: string, - cb: () => void, - cbl: () => void, - }[], - back?: () => void, - remove?: () => void, - }, - ): Layouter; - }; + var Layout: { + new ( + hier: T, + options?: { + lazy: boolean, + btns?: { + label: string, + cb: () => void, + cbl: () => void, + }[], + back?: () => void, + remove?: () => void, + }, + ): Layouter; + }; - export type Layout = typeof Layout; + export type Layout = typeof Layout; - type Image = string; + type Image = string; - type Fill = 0 | 1 | 2; // 0=no, 1=yes, 2=2x more space + type Fill = 0 | 1 | 2; // 0=no, 1=yes, 2=2x more space - type RenderedHierarchy = - Hierarchy & { - // top left position - x: number, - y: number, - // width and height - w: number, - h: number, - // minimum width and height - _w: number, - _h: number, - }; + type RenderedHierarchy = + Hierarchy & { + // top left position + x: number, + y: number, + // width and height + w: number, + h: number, + // minimum width and height + _w: number, + _h: number, + }; - type Hierarchy = - HierarchyParts & { - id?: string, - font?: FontNameWithScaleFactor, - scale?: number, - col?: ColorResolvable, - bgCol?: ColorResolvable, - pad?: number, - fillx?: Fill, - filly?: Fill, - width?: number, - height?: number, - } & ( - { - r?: number, // 0: 0°, 1: 90°, 2: 180°, 3: 270°. - } | { - wrap?: boolean, - } - ); + type Hierarchy = + HierarchyParts & { + id?: string, + font?: FontNameWithScaleFactor, + scale?: number, + col?: ColorResolvable, + bgCol?: ColorResolvable, + pad?: number, + fillx?: Fill, + filly?: Fill, + width?: number, + height?: number, + } & ( + { + r?: number, // 0: 0°, 1: 90°, 2: 180°, 3: 270°. + } | { + wrap?: boolean, + } + ); - type Align = -1 | 0 | 1; + type Align = -1 | 0 | 1; - type HierarchyParts = - { - type: "v", - c: Hierarchy[], - halign?: Align, - } | { - type: "h" - c: Hierarchy[], - valign?: Align, - } | { - type: "txt", - label: string, - font: FontNameWithScaleFactor, - } | { - type: undefined, // blank, for padding - } | ( - { - type: "btn", - src: Image, - cb: () => void, - } | { - type: "btn", - cb: () => void, - label: string, - font?: FontNameWithScaleFactor, - scale?: number, - } - ) | { - type: "img", - src: Image | (() => Image), - } | { - type: "custom", - render: (h: Hierarchy) => void, - }; + type HierarchyParts = + { + type: "v", + c: Hierarchy[], + halign?: Align, + } | { + type: "h" + c: Hierarchy[], + valign?: Align, + } | { + type: "txt", + label: string, + font: FontNameWithScaleFactor, + } | { + type: undefined, // blank, for padding + } | ( + { + type: "btn", + src: Image, + cb: () => void, + } | { + type: "btn", + cb: () => void, + label: string, + font?: FontNameWithScaleFactor, + scale?: number, + } + ) | { + type: "img", + src: Image | (() => Image), + } | { + type: "custom", + render: (h: Hierarchy) => void, + }; } diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index 3a52fa316..cd7b364a6 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -54,7 +54,7 @@ type MenuOptions = { type Menu = { ""?: MenuOptions; [key: string]: - | MenuOptions // not actually an option here + | MenuOptions | (() => void) | MenuBooleanItem | MenuNumberItem @@ -13299,4 +13299,4 @@ declare module "Storage" { * @url http://www.espruino.com/Reference#l_Storage_open */ function open(name: string, mode: "r" | "w" | "a"): StorageFile; -} +} \ No newline at end of file From 8654f7d56e5de95f9a0dc94635dc892e6b3e9e1a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 21:04:06 +0000 Subject: [PATCH 0227/1725] btadv: correct pressure unit --- apps/btadv/app.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 35a123ce3..debb1fd65 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -247,7 +247,7 @@ const drawInfo = (force?: true) => { g.drawString(`${bar.altitude.toFixed(1)}m`, mid, y); y += g.getFontHeight(); - g.drawString(`${bar.pressure.toFixed(1)}mbar`, mid, y); + g.drawString(`${bar.pressure.toFixed(1)} hPa`, mid, y); y += g.getFontHeight(); g.drawString(`${bar.temperature.toFixed(1)}C`, mid, y); From 9ad799e0f3a5d79c89f577f999760d41660cbdf6 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 21:05:17 +0000 Subject: [PATCH 0228/1725] btadv: fix GPS encoding --- apps/btadv/app.js | 2 +- apps/btadv/app.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 40551706a..ed6f688fd 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -110,7 +110,7 @@ var drawInfo = function (force) { if (bar) { g.drawString("".concat(bar.altitude.toFixed(1), "m"), mid, y); y += g.getFontHeight(); - g.drawString("".concat(bar.pressure.toFixed(1), "mbar"), mid, y); + g.drawString("".concat(bar.pressure.toFixed(1), " hPa"), mid, y); y += g.getFontHeight(); g.drawString("".concat(bar.temperature.toFixed(1), "C"), mid, y); y += g.getFontHeight(); diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index debb1fd65..e1a5861c4 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -362,7 +362,7 @@ const encodeHrm: LenFunc = (hrm: Hrm) => encodeHrm.maxLen = 2; const encodePressure: LenFunc = (data: PressureData) => - toByteArray(Math.round(data.pressure * 1000), 4, false); + toByteArray(Math.round(data.pressure * 10), 4, false); encodePressure.maxLen = 4; const encodeElevation: LenFunc = (data: PressureData) => @@ -370,7 +370,7 @@ const encodeElevation: LenFunc = (data: PressureData) => encodeElevation.maxLen = 3; const encodeTemp: LenFunc = (data: PressureData) => - toByteArray(Math.round(data.temperature * 100), 2, true); + toByteArray(Math.round(data.temperature * 10), 2, true); encodeTemp.maxLen = 2; const encodeGps: LenFunc = (data: GPSFix) => { From 5efba8bf4a764ee901311cecaeaafaa1ce1fbd30 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 21:06:25 +0000 Subject: [PATCH 0229/1725] btadv: convert GPS flags to bits --- apps/btadv/app.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index e1a5861c4..3eba0c257 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -419,8 +419,8 @@ const encodeGps: LenFunc = (data: GPSFix) => { const heading = toByteArray(Math.round(data.course * 100), 2, false); return [ - 0x9d, // 0b10011101: speed, location, elevation, heading [...] - 0x2, // 0b00000010: position ok, 3d speed/distance(?) + 0b10011101, // speed, location, elevation, heading [...] + 0b00000010, // position ok, 3d speed/distance speed[0]!, speed[1]!, lat[0]!, lat[1]!, lat[2]!, lat[3]!, lon[0]!, lon[1]!, lon[2]!, lon[3]!, From 2dae0759395646f18438d687e890c24e310a83db Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 21:06:54 +0000 Subject: [PATCH 0230/1725] btadv: fallback to mag heading when no GPS --- apps/btadv/app.ts | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 3eba0c257..9a1506890 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -430,6 +430,18 @@ const encodeGps: LenFunc = (data: GPSFix) => { }; encodeGps.maxLen = 17; +const encodeGpsHeadingOnly: LenFunc = (data: CompassData) => { + // see encodeGps() + const heading = toByteArray(Math.round(data.heading * 100), 2, false); + + return [ + 0b00010000, // heading present + 0b00010000, // heading source: mag + heading[0]!, heading[1]! + ]; +}; +encodeGpsHeadingOnly.maxLen = 17; + const encodeMag: LenFunc = (data: CompassData) => { const x = toByteArray(data.x, 2, true); const y = toByteArray(data.y, 2, true); @@ -477,7 +489,7 @@ const haveServiceData = (serv: BleServ): boolean => { switch (serv) { case BleServ.HRM: return !!hrm; case BleServ.EnvSensing: return !!(bar || mag); - case BleServ.LocationAndNavigation: return !!(gps && gps.lat && gps.lon); + case BleServ.LocationAndNavigation: return !!(gps && gps.lat && gps.lon || mag); } }; @@ -511,6 +523,15 @@ const serviceToAdvert = (serv: BleServ, initial = false): BleServAdvert => { gps = undefined; } + return { [BleChar.LocationAndSpeed]: o }; + } else if (mag) { + const o: BleCharAdvert = { + maxLen: encodeGpsHeadingOnly.maxLen, + readable: true, + notify: true, + value: encodeGpsHeadingOnly(mag), + }; + return { [BleChar.LocationAndSpeed]: o }; } return {}; @@ -552,7 +573,6 @@ const serviceToAdvert = (serv: BleServ, initial = false): BleServAdvert => { if (mag) { o[BleChar.MagneticFlux3D]!.value = encodeMag(mag); - mag = undefined; } } @@ -570,6 +590,9 @@ const getBleAdvert = (map: (s: BleServ) => T, all = false) => { } } + // clear mag only after both EnvSensing and LocationAndNavigation have run + mag = undefined; + return advert; }; From 7ef78ceb27fb28cadeac95b1e59e44a9c0ae54b1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 21:07:03 +0000 Subject: [PATCH 0231/1725] btadv: regenerate JS --- apps/btadv/app.js | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index ed6f688fd..8856ebb02 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -181,7 +181,7 @@ var encodeHrm = function (hrm) { }; encodeHrm.maxLen = 2; var encodePressure = function (data) { - return toByteArray(Math.round(data.pressure * 1000), 4, false); + return toByteArray(Math.round(data.pressure * 10), 4, false); }; encodePressure.maxLen = 4; var encodeElevation = function (data) { @@ -189,7 +189,7 @@ var encodeElevation = function (data) { }; encodeElevation.maxLen = 3; var encodeTemp = function (data) { - return toByteArray(Math.round(data.temperature * 100), 2, true); + return toByteArray(Math.round(data.temperature * 10), 2, true); }; encodeTemp.maxLen = 2; var encodeGps = function (data) { @@ -199,8 +199,8 @@ var encodeGps = function (data) { var elevation = toByteArray(Math.round(data.alt * 100), 3, true); var heading = toByteArray(Math.round(data.course * 100), 2, false); return [ - 0x9d, - 0x2, + 157, + 2, speed[0], speed[1], lat[0], lat[1], lat[2], lat[3], lon[0], lon[1], lon[2], lon[3], @@ -209,6 +209,15 @@ var encodeGps = function (data) { ]; }; encodeGps.maxLen = 17; +var encodeGpsHeadingOnly = function (data) { + var heading = toByteArray(Math.round(data.heading * 100), 2, false); + return [ + 16, + 16, + heading[0], heading[1] + ]; +}; +encodeGpsHeadingOnly.maxLen = 17; var encodeMag = function (data) { var x = toByteArray(data.x, 2, true); var y = toByteArray(data.y, 2, true); @@ -244,11 +253,11 @@ var haveServiceData = function (serv) { switch (serv) { case "0x180d": return !!hrm; case "0x181a": return !!(bar || mag); - case "0x1819": return !!(gps && gps.lat && gps.lon); + case "0x1819": return !!(gps && gps.lat && gps.lon || mag); } }; var serviceToAdvert = function (serv, initial) { - var _a, _b; + var _a, _b, _c; if (initial === void 0) { initial = false; } switch (serv) { case "0x180d": @@ -278,6 +287,15 @@ var serviceToAdvert = function (serv, initial) { } return _b = {}, _b["0x2a67"] = o, _b; } + else if (mag) { + var o = { + maxLen: encodeGpsHeadingOnly.maxLen, + readable: true, + notify: true, + value: encodeGpsHeadingOnly(mag), + }; + return _c = {}, _c["0x2a67"] = o, _c; + } return {}; case "0x181a": { var o = {}; @@ -312,7 +330,6 @@ var serviceToAdvert = function (serv, initial) { }; if (mag) { o["0x2aa1"].value = encodeMag(mag); - mag = undefined; } } return o; @@ -328,6 +345,7 @@ var getBleAdvert = function (map, all) { advert[serv] = map(serv); } } + mag = undefined; return advert; }; var updateServices = function () { From d16debab87d194526e2911b3ee2e4282f937a41b Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 21:09:30 +0000 Subject: [PATCH 0232/1725] btadv: remove stale comment --- apps/btadv/app.ts | 5 ----- 1 file changed, 5 deletions(-) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 9a1506890..c20f9372f 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -701,8 +701,3 @@ enableSensors(); }, ); } - -// touch events sometimes come through stale :( -// Bangle.on("touch", (button, xy) => { -// console.log(`touch: button=${button}, x=${xy?.x} y=${xy?.y}`); -// }) From f600c61bf962113d726e2354fb3db730c6a4560a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 19 Feb 2023 21:17:05 +0000 Subject: [PATCH 0233/1725] btadv: clear approx. hrm (when disabled) --- apps/btadv/app.js | 7 +++++++ apps/btadv/app.ts | 9 +++++++++ 2 files changed, 16 insertions(+) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 8856ebb02..7f9300923 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -23,6 +23,7 @@ var hrmAny; var mag; var btnsShown = false; var prevBtnsShown = undefined; +var hrmAnyClear; var settings = { bar: false, gps: false, @@ -132,6 +133,12 @@ var drawInfo = function (force) { g.drawString("~".concat(hrmAny.bpm, " BPM (").concat(hrmAny.confidence, "%)"), mid, y); y += g.getFontHeight(); drawn = true; + if (!settings.hrm && !hrmAnyClear) { + hrmAnyClear = setTimeout(function () { + hrmAny = undefined; + hrmAnyClear = undefined; + }, 10000); + } } if (mag) { g.drawString("".concat(mag.x, " ").concat(mag.y, " ").concat(mag.z), mid, y); diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index c20f9372f..b3a25305c 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -88,6 +88,7 @@ let hrmAny: undefined | Hrm; let mag: undefined | CompassData; let btnsShown = false; let prevBtnsShown: boolean | undefined = undefined; +let hrmAnyClear: undefined | number; type BtAdvType = "bar" | "gps" | "hrm" | "mag" | (IncludeAcc extends true ? "acc" : never); type BtAdvMap = { [key in BtAdvType]: T }; @@ -285,6 +286,14 @@ const drawInfo = (force?: true) => { drawn = true; + if (!settings.hrm && !hrmAnyClear) { + // hrm is erased, but hrmAny will remain until cleared (or reset) + // if it runs via health check, we reset it here + hrmAnyClear = setTimeout(() => { + hrmAny = undefined; + hrmAnyClear = undefined; + }, 10000); + } } if (mag) { From fc330c69e8ff6b2bf6585572cd9d1eedab6c5203 Mon Sep 17 00:00:00 2001 From: notEvil Date: Mon, 20 Feb 2023 13:05:30 +0100 Subject: [PATCH 0234/1725] - apps/widdevst: added support for Bangle.js 2 --- apps/widdevst/ChangeLog | 1 + apps/widdevst/metadata.json | 4 ++-- apps/widdevst/wid.js | 10 ++++++++-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/apps/widdevst/ChangeLog b/apps/widdevst/ChangeLog index 7f837e50e..addaa5326 100644 --- a/apps/widdevst/ChangeLog +++ b/apps/widdevst/ChangeLog @@ -1 +1,2 @@ 0.01: First version +0.02: Support for Bangle.js 2 diff --git a/apps/widdevst/metadata.json b/apps/widdevst/metadata.json index 41cbdc028..91d6265fe 100644 --- a/apps/widdevst/metadata.json +++ b/apps/widdevst/metadata.json @@ -1,11 +1,11 @@ { "id": "widdevst", "name": "Device Status Widget", - "version": "0.01", + "version": "0.02", "description": "Shows power status of Bluetooth, Compass, GPS and Heart Rate Monitor as well as storage and memory usage.", "icon": "icon.png", "type": "widget", "tags": "widget,bluetooth,compass,gps,hrm", - "supports": ["BANGLEJS"], + "supports": ["BANGLEJS", "BANGLEJS2"], "readme": "README.md", "storage": [ {"name": "widdevst.wid.js", "url": "wid.js"} diff --git a/apps/widdevst/wid.js b/apps/widdevst/wid.js index b56589358..06eb20cdd 100644 --- a/apps/widdevst/wid.js +++ b/apps/widdevst/wid.js @@ -24,12 +24,18 @@ } var draw = WIDGETS.devst.draw.bind(WIDGETS.devst); - var iid = setInterval(draw, 2000); + var iid = setInterval(draw, Bangle.isLocked() ? 6e4 : 2e3); Bangle.on('lcdPower', (on) => { if (on) { draw(); - if (!iid) iid = setInterval(draw, 2000); + if (!iid) iid = setInterval(draw, Bangle.isLocked() ? 6e4 : 2e3); } else if (iid) iid = clearInterval(iid); }); + Bangle.on('lock', (on) => { + if (iid) { + clearInterval(iid); + iid = setInterval(draw, on ? 6e4 : 2e3); + } + }); })(); From 537ece3f89d2299f264b318ad83e4476b3b0880f Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 20 Feb 2023 13:23:14 +0000 Subject: [PATCH 0235/1725] fix language scanner --- bin/language_scan.js | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/bin/language_scan.js b/bin/language_scan.js index 464d8f998..62a9dbb42 100755 --- a/bin/language_scan.js +++ b/bin/language_scan.js @@ -122,25 +122,11 @@ function log(s) { console.log(s); } -var appsFile, apps; -try { - appsFile = fs.readFileSync(BASEDIR+"apps.json").toString(); -} catch (e) { - ERROR("apps.json not found"); -} -if (appsFile.indexOf("---") === 0 && fs.existsSync(BASEDIR+"bin/create_apps_json.sh")) -{ - console.log("apps.json has not been generated, running bin/create_apps_json.sh to build it..."); - childProcess.execFileSync(BASEDIR+'bin/create_apps_json.sh',[],{ - stdio: 'inherit' - }); - appsFile = fs.readFileSync(BASEDIR+"apps.json").toString(); -} -try{ - apps = JSON.parse(appsFile); -} catch (e) { - ERROR("apps.json not valid JSON"); -} +var apploader = require("./lib/apploader.js"); +apploader.init({ + DEVICEID : "BANGLEJS2" +}); +var apps = apploader.apps; // Given a string value, work out if it's obviously not a text string function isNotString(s, wasFnCall, wasArrayAccess) { From 3318c73ad9447b0759fd6517d8a42010de4340f3 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 20 Feb 2023 13:24:28 +0000 Subject: [PATCH 0236/1725] help --- bin/language_scan.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/language_scan.js b/bin/language_scan.js index 62a9dbb42..99d91b519 100755 --- a/bin/language_scan.js +++ b/bin/language_scan.js @@ -59,7 +59,7 @@ function handleCliParameters () console.log(' --turl URL In combination with --deepl, use URL as the API base URL'); process.exit(0); default: - die("Unknown parameter: "+param); + die("Unknown parameter: "+param+", use --help for options"); } } if((hadTURL !== false || hadDEEPL !== false) && hadTURL !== hadDEEPL) From d7bba0042f52a90cef3cbdb9c5defb73af04f65a Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 20 Feb 2023 14:12:33 +0000 Subject: [PATCH 0237/1725] Added Japanese auto-translations as per https://github.com/espruino/BangleApps/issues/1311#issuecomment-1433484209 --- bin/language_render.js | 58 ++++++++++++++ lang/index.json | 3 +- lang/ja_JA.json | 166 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 226 insertions(+), 1 deletion(-) create mode 100755 bin/language_render.js create mode 100644 lang/ja_JA.json diff --git a/bin/language_render.js b/bin/language_render.js new file mode 100755 index 000000000..806384dcd --- /dev/null +++ b/bin/language_render.js @@ -0,0 +1,58 @@ +#!/bin/node +/* + Takes language files that have been written with unicode chars that Bangle.js cannot render + with its built-in fonts, and pre-render them. +*/ + +const FONT_SIZE = 18; + +var createCanvas; +try { + createCanvas = require("canvas").createCanvas; +} catch(e) { + console.log("ERROR: needc canvas library"); + console.log("Try: npm install canvas"); + process.exit(1); +} +// we could use registerFont here to ensure a consitent experience? + +var imageconverter = require(__dirname+"/../webtools/imageconverter.js"); + +const canvas = createCanvas(200, 20) +const ctx = canvas.getContext('2d') + +function renderText(txt) { + ctx.clearRect(0, 0, canvas.width, canvas.height); + ctx.font = FONT_SIZE+'px Sans'; + ctx.fillStyle = "white"; + ctx.fillText(txt, 0, FONT_SIZE); + var str = imageconverter.canvastoString(canvas, { autoCrop:true, output:"raw", mode:"1bit", transparent:true } ); + // for testing: + //console.log("g.drawImage(",imageconverter.canvastoString(canvas, { autoCrop:true, output:"string", mode:"1bit" } ),");"); + //process.exit(1); + return "\0"+str; +} + +function renderLangFile(file) { + var fileIn = __dirname + "/../lang/unicode-based/"+file; + var fileOut = __dirname + "/../lang/"+file; + console.log("Reading",fileIn); + var inJSON = JSON.parse(require("fs").readFileSync(fileIn)); + var outJSON = { "// created with bin/language_render.js" : ""}; + for (var categoryName in inJSON) { + if (categoryName.includes("//")) continue; + var category = inJSON[categoryName]; + outJSON[categoryName] = {}; + for (var english in category) { + if (english.includes("//")) continue; + var translated = category[english]; + //console.log(english,"=>",translated); + outJSON[categoryName][english] = renderText(translated); + } + } + require("fs").writeFileSync(fileOut, JSON.stringify(outJSON,null,2)); + console.log("Written",fileOut); +} + + +renderLangFile("ja_JA.json"); diff --git a/lang/index.json b/lang/index.json index 474a530ab..201697664 100644 --- a/lang/index.json +++ b/lang/index.json @@ -24,5 +24,6 @@ {"code":"sk_SK","name":"Slovak","url":"sk_SK.json"}, {"code":"sl_SL","name":"Slovenian","url":"sl_SL.json"}, {"code":"nn_NO","name":"Norwegian (Nynorsk)","url":"nn_NO.json"}, - {"code":"hr_HR","name":"Croatian","url":"hr_HR.json"} + {"code":"hr_HR","name":"Croatian","url":"hr_HR.json"}, + {"code":"ja_JA","name":"Japanese (beta)","url":"ja_JA.json"} ] diff --git a/lang/ja_JA.json b/lang/ja_JA.json new file mode 100644 index 000000000..612a4206a --- /dev/null +++ b/lang/ja_JA.json @@ -0,0 +1,166 @@ +{ + "// created with bin/language_render.js": "", + "GLOBAL": { + "New Alarm": "\u0000k\u0011\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001ñþ\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0001þð\u0019\u0019\u000fÿÀÿà\u0000\u0000\u0001€\b\u0003#!ÿø\u001fø\u0000\u0000\u00000\u0001\u0012\u0000dd\u0000\u0003\u0000\u0000\u0000\u0000\u0000\f\u00004@?ì€\u0010À\u0000\u0000\u0000\u0000\u0001€\u001fïᑐ\u00030\u001fþ\u0000\u0000\u00000\u0000a˜\"2\u0000N\u0003ÿáÿð\f0\u0004\"\f@@\u000b€\u0000\u0018?þ\u0001†\u000fôA\bx\u0001 \u0000\u0003\u0000\u0000\u00000`0ˆ\u0000Æ\u0000 \u0000\u0000À\u0000\u0000\f\f\u0002‘\u0000\u0018\u0000\f\u0000\u00008\u0000\u0000\u0001€ÂR ÿü\u0001€\u0000\u000e\u0000\u0000\u0000 \u0018ËÄ\u0000`\u0000à\u0000\u0007€\u0000\u0000\u000fÿ‘\u0018€\f\u0000x\u0000\u000fÀ\u0000\u0000\u0003ÿ0b\u0010ÿÿ\f\u0000\u0001À\u0000\u0000\u0000\u0000\u0002\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "New Timer": "\u0000j\u0011\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0003ãü\u0010\u0006\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0007ûÀdd\u0001€\u0000\u0003ƒÿà\u0000\u0000D€\u0019\u0019\u0000ÿÀ\u0001Àÿü\u0000\u0000\u0011 \u0006F@?ð\u0000à\u0000\u0006\u0000\u0000\u0006ˆ\u0007ý\u0018\u0018\u0000à\u0000\u0001€\u0000\u0007ûødd\f\u0006\u0000x\u0000\u0000À\u0000\u00000Ì\u0011\u0019\u0006a€~\u0000\u0000`?þ\u0004\"\f@C\u000eÀy€\u000e0\u000fÿŸè‚\u0010ð\u0000ð8`\u0001Ü\u0000\u0000\u0000 \u0003\u0018\u0000\u0018\u0000\u0018\u0000\u001e\u0000\u0000\u0000\u0014ˆ\u0000À\u0000\f\u0000\u0006\u0000\u0003\u0000\u0000\u0000%\"\u000fÿÀ\u0006\u0000\u0001€\u0000`\u0000\u0000\u0019x€\f\u0000\u0007\u0000\u0000`\u0000\f\u0000\u0000\u0004F \u0003\u0000\u0007€\u0000\u0018\u0000\u0001€\u0000\u00001\bÿ€\u0000\u0006\u0000\u0000 \u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Save": "\u0000$\u0011\u0000\u0000\u0000\u0000@\u0000ßð\u0004\u0000\tƒ\u001fÿá0\u0018\u0000\u0011\u0003\u0001€\u0003\u001fð\u0010\u000000\u0003?‡\u0001\u0000`\u0018P0\u000e\u0003\u0001?ùà`\u00108\u0006ÿá\u0007À``\u0010Ö\u0006\u0006\u0001\u00190``\u0013\u0011†\u0006\u0001!\b``\u0010\u0010\u0006\f\u0000", + "Keep Msgs": "\u0000^\u000f\u0000`À\u0000\u0000\u0000\u0000\u001c\u000e\u0000\u0000\u0000\u0001†\u0000\u0000\u0000\u0000\u0000p8\u0000\u0000\u0000\u00060\u0000\u0000\u0000\u0000\u0001Áà\u0000\u0000\u0000\u0019€ð\u001e\u000bÀ\u0005…ƒáì>l\u000eaÌ9€\u001269Žó™à Ä\u0018Ã\u0000HØÀaÌ\u0007ƒ0b\u0004\u00012c\u0001ƒ0\u001f\u0007üÿˆ\u0010\u0004Y‡†\fxn\u0018\u0003\u0000 @\u0011Æ\u0007˜0yœ`\f\u0000Á\u0000G\u0018\u0002`À&8À\u0018\u0003\f\u0001\b`\t‡\u0000˜sœsŽ`\u0004\u0001Œc¼Æ`ãà|/\u0000\u0010\u0006?\u0007³ð\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000", + "circle count": "\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@À\u0000\u0000\u0003\u0000\u0000\b\u0000\u0018\u0000\u0003\u0000\u0000\u0000\u0000À\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0018À\u0000À\u0000\u0018\u0001€\u0000\u0006\u0000\u00100\u0000\u0000\u0000ÿ\u0000Æ\u0000\u0006\u0000\u001fþ\u000f\u0000\u00000\u0000Á€\u0000\u0000\u000fü\u00060\u0007ÿÁÿð\u001c\u0000\u0001€?ÿ€\u0000\u0000À`1€\u001fþ\f\u0001€00\f\u0001ÿü\u0000\u0000\u0006\u0002\u0001Œ\u0000\f0`\f\u0000\u0001\u0000p\u0001\u0003\u0003ÿà`0\f`\u0000Aƒ\u0000`\u0000\u0018\u0003ø\b\u0018\u001fÿ\u0006\u0001€c\u0004\u0006\f\u0018\u0003\u0000\u0001€\u0019ð@À\u0000\u0000\u0000\u0018\u0003\u0018`0`@\u0018\u0000\f\u0000À‚\u0004\u0000\u0000\u0000\u0000À\u0018Æ\u0001\u0003\u0000\u0000€\u0000À\u0006\u0000\u0000`\u0000\u0000\u0000\f\u0000†`\u0018\u0018\u0000\f\u0000\f\u00000\u0000\u0006\u0000\u0000\u0000\u0000À\f7\u0001€À\u0000À\u0001À\u0001€\u0000à\u0000\u0000\u0000\u001c\u0000áà\u001c\u0006\u0000\u001c\u0000|\u0000\f\u0000\u001e\u0000\u0000\u0000\u0001À\u000e\u000e\u0001Ãà\u0007À\u001f€\u0000`\u0000@\u0000\u0000\u0000\u0018\u0000 \u0000\u000e\u00008\u0000@\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "(repeat)": "\u0000T\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0004\u001f€\u0003€ü\u0004\u0000\b0A\b\b|\f~\u0000@\u0000Â\r\u001f€„ÀD\u0000\u0004\u0000\u0004`°\u0000\b\u0004\u0000@\u0000@\u0000f\u001e\u0000\u0001€@\u0007ü\f\u0000\u0006açþ\u0018\u0004\u0000@ÀÀ\u0000$\u0006oa€AÆ\b\f\u0000\u0002@Wþ\u0018\u0004\u0004y€À\u0000$\u000f\u0000\u0001€ÀDð\f\u0003\u0002Aø`\u0018\f\u0004Ç\u0000À0&\u0000à\u0000ÀIÜ\f\u0002\u0002`ð\u0000\u0018\u0004°@À`f\u000bŸ€\u0007\u0000`\u0000\u0006\f\u0006!£l\u0001à\u001fÿà?€C\u0012f`\u0018\u0001‡þ\u0000à\f\u0011\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000€", + "music": "\u0000$\u0011\u0000\u0000€\u0000\u0000\u0000\f\u0000ƒ\u0000?ÿ\fü@@€hX\u0006\u0018\u0000„\u0000a€\u000fÀÿ‚…€\u0000\u0000èL\u001fþ\u0018üA€`\u0000\u0000\u0018\u0006\u00000\u0001€aÿþ\u001fþ\u0000ü\u0001€`\u001b`\u0018\u0006\u00073ÿáÃ\u000e\u0018\u0006\b0\u0000", + "Auto snooze": "\u0000}\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\f\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00004\u0000`\u0000\u0000\u0000À\u0000ÿ€?ð\u0000\u0000\u0003þÀ\u0003\u0000\u0000\u0000\u0006\u0000\u000fþ\u0001ÿÀ\u0000\u0000?ú?ÿ€\u0000\u00000\u0000\u0000`\u0000\u0004\u0000\u0000\u0000\u0001€ÿø\u0000\u0000\u0001€\u0000\u0003\u0000\u0000`\u0000\u0000\u0000\f\u0000\u001e\u0000\u0000\u0000\u000e\u0000\u00000\u0001‚\u0000\u0000\u0000\u0000À\u0001ð\u001fÿ\u0000\u0000\u0001€\u000e0\u001fÿ\u0000\u0006\u0000\u001d€ÿø\u0003>\u0000\u0018\u0000\u001f\u0000ÿø\u0000`\u0001Ì\u0000\u0000\u0000\u0018\u0010\u0001À\u00008\u0000\u0000\u0000\u0007\u0000\u001c`\u0000\u0000\u0000À\u0000\u000f\u0000\u0001à\u0000\u0000\u0000<\u0003ƒ\u0000\u0000\u0000\u0006\u0000\u0001Ì\u0000\u0019€\u0000\u0000\u000708\u0018\u0000\u0000\u00000\u0000\u001c0\u0001†\u0000\u0000\u0000pÀ\u0000À\u0000\u0000\u0001€\u0001ÀÀ8\u0018\u0000\u0000\u0007\u0003\u0000>\u0000\u0000\u0000\f\u00008\u0003\u0007€\u0000\u0000\u0000à\f\u0001à\u0000\u0000\u0000`\u0001€\u00180\u0000\u0000\u0000\u0006\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "week": "\u0000D\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u00000\u0007ÿ€\u0000\u0000\u0000\u0000\u0003üÿø\u0000\b\u0000\u0000\u0000ì\u0001€\u0001€\u0000\u0000\f\u0006À\u0018\u0000p\u0000\u0000\u0000ÀL\u0001€\u000e\u0000ÿø\u0018\fÀ\u0018\u0001À\u000fÿƒ\u0000Ä\u0001€|\u0000\u0000\u0000\u0000\u0018\u0000\u0010\u001cÀ\u0000\u0000\u0000\u0001€\u0003\u0001Œ\u0000\u0000\u0000\u00000\u0000`\u0000À\u0000\u0000\u0000\u0006\u0000\u001c\u0000\f\u0000\u0000\u0000\u0001À\u000f€\u0000À\u0000\u0000\u00008\u0000à\u0000\f\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "circle 1": "\u0000Q\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\f\u0000\u0000\u00000\u0000\u0000€\u0000\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0018À\u000f\u0001\u0003\u0000\u0000\u0000\u000fð\f`\u000f€Á€\u0000\u0000\u000fü\u00060\u0000Ãÿø\u0000\u0000\f\u0006\u0003\u0018\u0000aÿü\u0000\u0000\u0006\u0002\u0001Œ\u00000\u00100?þ\u0006\u0003\u0000Æ\u0000\u0018\b\u0018\u001fÿ\u0006\u0001€c\u0004\f\u0004\f\u0000\u0000\u0000\u0001€1†\u0006\u0002\u0004\u0000\u0000\u0000\u0000À\u0018Æ\u0003\u0000\u0006\u0000\u0000\u0000\u0000À\bf\u0001€\u0006\u0000\u0000\u0000\u0000À\f7\u0000À\u000e\u0000\u0000\u0000\u0001À\u000e\u001e\u0000`\u001e\u0000\u0000\u0000\u0001À\u000e\u000e\u0001þ\u0004\u0000\u0000\u0000\u0001€\u0002\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "circle 3": "\u0000Q\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\f\u0000\u0000\u00000\u0000\u0000€\u0000\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0018À\u001f\u0003\u0000\u0000\u0000\u000fð\f`\u000fàÁ€\u0000\u0000\u000fü\u00060\u0000\u001bÿø\u0000\u0000\f\u0006\u0003\u0018\u0000\rÿü\u0000\u0000\u0006\u0002\u0001Œ\u0000\f\u00100?þ\u0006\u0003\u0000Æ\u0000<\b\u0018\u001fÿ\u0006\u0001€c\u0004\u0007\u0004\f\u0000\u0000\u0000\u0001€1†\u0000Â\u0004\u0000\u0000\u0000\u0000À\u0018Æ\u0000`\u0006\u0000\u0000\u0000\u0000À\bf\u00000\u0006\u0000\u0000\u0000\u0000À\f7\u0000\u0018\u000e\u0000\u0000\u0000\u0001À\u000e\u001e\u0007ø\u001e\u0000\u0000\u0000\u0001À\u000e\u000e\u0001ø\u0004\u0000\u0000\u0000\u0001€\u0002\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "circle 2": "\u0000Q\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\f\u0000\u0000\u00000\u0000\u0000€\u0000\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0018À\u000f\u0003\u0000\u0000\u0000\u000fð\f`\u001fàÁ€\u0000\u0000\u000fü\u00060\u00003ÿø\u0000\u0000\f\u0006\u0003\u0018\u0000\rÿü\u0000\u0000\u0006\u0002\u0001Œ\u0000\u0004\u00100?þ\u0006\u0003\u0000Æ\u0000\u0006\b\u0018\u001fÿ\u0006\u0001€c\u0004\u0006\u0004\f\u0000\u0000\u0000\u0001€1†\u0006\u0002\u0004\u0000\u0000\u0000\u0000À\u0018Æ\u0006\u0000\u0006\u0000\u0000\u0000\u0000À\bf\u0006\u0000\u0006\u0000\u0000\u0000\u0000À\f7\u0006\u0000\u000e\u0000\u0000\u0000\u0001À\u000e\u001e\u0007\u0000\u001e\u0000\u0000\u0000\u0001À\u000e\u000e\u0003þ\u0004\u0000\u0000\u0000\u0001€\u0002\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "show widgets": "\u0000y\u0010\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000À\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000`\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0004\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0002\u0000\u0001ñ8\u001f\fa€c\fAì=ƒÇñó˜æ\u001dÆ8À1Æ!Þ;Ç1ƒ™€a˜3\u001c@\u0018â\u0011‡0â\fA€À Ì\u0018Š`\u0004S\bÁ˜3\u0006 À<\u0010f\fm0\u0003i„`Ì\u0019ÿ\u0010<\u0007ˆ3\u00064Ø\u0001¦Â0f\fÀ\b\u0007€D\u0019ƒ\u001a(\u0000ÑA\u00183\u0006`\u0004\u0000@\"\fÁ‡\u001c\u00008àŒ9‡\u0018\u0002\u0000&1\u0006;ƒŽ\u0000\u001cpC¼wŽq†3ðƒ\u000f‡\u0000\f8 ö\u001eÁð{ð\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000", + "heartrate": "\u00005\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 `\u0004\u0010\u0001À\u0001\u0002\u0001,€\u0007\u0000\b\u0010\rD\u0000\f\u0000Çø\b`\u0000 \u001f°Gûø\u0010\u0000\u0011\u0002\u000e‘„€€ˆ\u0010׌d\u0006\u0004@„\u000ec 0{ü\bR\u0019\u0000\u0018#øðˆ\u0006x\u0006Ì@°D\bf\u0018b\u0004‚ CàÃ\u0010 \u0011‚\u000f\u000f\u0000Ç\u0000ð|Î\u0007ð<@Ž,0\u0000\u0001Â\u0004\u0000\u0000\u0000", + "circle 4": "\u0000R\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0000@\u0000\u0000€\u0000\u0000\u0006\u0000\u00060\u0000p `\u0000\u0000\u0001þ\u0001Œ\u0000<\f\u0018\u0000\u0000\u0000ÿÀc\u0000\u000b\u001fÿÀ\u0000\u0000`0\u0018À\u0006Çÿð\u0000\u0000\u0018\b\u00060\u00030 `ü\f\u0006\u0001Œ\u0000Œ\b\u0018\u001fÿ\u0006\u0001€c\u0004c\u0002\u0006\u0000\u0000\u0000\u0000À\u0018Ã\u0010À\u0000\u0000\u0000\u00000\u00061Œ0\u0000À\u0000\u0000\u0000\u0018\u0001\fÃþ\u0000`\u0000\u0000\u0000\f\u0000Ãp\u0003\u0000p\u0000\u0000\u0000\u000e\u0000pð\u0000Àx\u0000\u0000\u0000\u0007\u000088\u00000\b\u0000\u0000\u0000\u0003\u0000\u0004\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "battery warn": "\u0000}\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000$@\bÀ\u0000\u0001@\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u000fú\u0000f\u0000\u0018m\u0000\u0000\u0007ÿ\u0000ÀÀ\u0000\u00000\u001f†0\u0000à \u0000\u0000?ø\u0006\u0006\u0000\u0000\u0001ý˜?þ\u0006\u0018\u0000\u0000\u0000\u0000\u000000\u0000\u0000\u0018>ƒ\f\u0000 À\u0002\f\u0000\u0000\u0001€\u0000\u0000½\u001c\u0010`\u0001\u0006\u0001˜`ÿü\f\f\u0000\u0000\u0001kø\u0003\u0000\u0018\u0010\u0006c\u0007ÿà``ü\u0000ÐOÿðÀÀ3\u0010\u0000À\u0003\u0003\u0003ÿà\u0003\u0000\u0000\u0000\u0006\u0006\u0000Á€\u0006\u0000\u0018\u0018\u0000\u0000\u000fÿð\u0000\u0000 \u0010\u0000\f\u00000\u0000ÀÀ\u0000\u0000\u001fþ\u0007ÿƒ\u0000À\u0000à\u0001€\u0000\u0006\u0000\u0000\u0000\u0000\u0000 \u0004\u0018\u0006\u0000\u000e\u0000\u0018\u0000\u0000`\u0000\u0000\u0007ÿ\u0000!€\u0018\u0000à\u0001À\u0000\u000e\u0000\u0000\u0000\u0000\u0000\b\u0001\u001c\u0000à>\u0000<\u0000\u0001à\u0000\u0000\u0001ÿàø@\u0002\u0001€\u0001€\u0000\f\u0000\u0000\u0000\u000fÿ\u0003\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\b\u0010\u0002\u0000", + "valid period": "\u0000F\u0011\u0000\u0000\u0000\u0004\u0004\u0002 \u0000\u0000\u0000\f\u0000\u0018\u0010\bŸ‡çð0\u0000`@cb\u0010ßÿÏó\u0003ÿˆBC\u0004\u0000\u0000\u001fÂ&!ùü0\u0000&3\bŸ„$\u0011ÿá\fÌ>~\u001fŸÎ\u0001Œ30‰ˆ@\u0003h\u0006\u0001\fÂ&!\u001fÅ?øl3\u000f˜„C\u0010€`àŒ\"~\u0011\fB\u0001‚1ˆGñ\u000fþ\u0007\u0018þ!\u0010D \u00186B\u0000\u0010„\u0010€C‹\u00186B\u0010\u0000B\u000f\b\tá‹8@\u0003\b\u0000\u0000\u0000\u0004\bá\u00008", + "maximum": "\u0000$\u0011\u0000\u0000\u0000\u00000\u0001ÿà\u0003\u0000\u0018\u0002\u00000\u0001ÿà\u0003\u0000\u0018\u0002\u00000\u0001ÿàÿþ\u0000\u0000\u00000\u0007ÿø\u0003€1€\u00008\u0003ûð\u0006À1ƒ\u0000D\u0003\u001a \f`?¶\u0001ƒ\u0003\u0019À0\u0018?Ü\u000e\u0000ǛùÀ\u0006\u0001¡€\u0000\u0000", + "weather circle": "\u0000Ž\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0010?\u0000\u0000\u0001\u0003\u0000\u0000\u0000\f\u0000\u0000 \u0000À\u0000\u0000\u0000@Ð\u0000\u0000\u0004\f\u0000\u0000\u00000\u00001€ø\u0000\u0000\u0001\u0003 \u0000\u0000\u00100\u0000\u0000\u0000ÿ\u0000Æ\u0003ÿà\u0000\u0000\u0006\f\u0000\u0000\u0000`À\u0000\u0000\u0007þ\u0003\u0018\f\u0001€\u0000\u0000ÿþ\u0000\u0000\u000fÿà\u0000\u00000\u0018\f`0\u0006\u0003ÿ\u0003ÿø\u0000\u0000?ÿ€\u0000\u0000À@1€À\u0018\u000fü\u0001\u0003\u0003ÿà\u00100?þ\u0006\u0003\u0000Æ\u0003\u0000`\u0003\u0000\u0004\f\u000fÿ€@Àÿø0\f\u0003\u0018$\u0001€\f\u0000\u00100\u0000\u0000\u0001\u0003\u0000\u0000\u0000\u0000`\fa€\u0004\u00000\u0000@€\u0000\u0000\u0004\b\u0000\u0000\u0000\u0001€1Œ\u00000\u0000À\u0000\u0006\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\f\u0000†`\u0001€\u0003\u0000\u00000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000`\u0006\u001b€\u001c\u0001ÿà\u0003€\u0000\u0000\u00008\u0000\u0000\u0000\u0007\u00008x\u0003à\u0007ÿ€<\u0000\u0000\u0000\u0003À\u0000\u0000\u00008\u0001ÁÀ\u000e\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0001€\u0002\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "minimum": "\u0000E\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0003ü\u0000\u0000\u0000ü\u0000À\u0003þ\u0007ÿƒÿð\u0006\u0000\u00000?ü\u0000\u0003\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0003\u0000\u0010\u0000\u0000\u0000\u0000\u0001€\u0018\u0000þ\u0000\u0000\u0000\u0000\u0018\u0001†\u0000þ\u0000\u0000\u0000q€\f0\u00000\u0000\u0000\u0001Ü\u0000`À\u0000\u0000\u0000\u0000\u0003À\u0006\u0006\u0000\u0000\u0000\u0000\u0000\f\u00000\u0018ø\u0000þ\u00000\u0001\u0000Çü\u0003ÿø\u0000À\u001fÿ\u0000ü\u0000\u0000\u0000\u0003\u0001ÿ˜\u0000`\u0000\u0000\u0000\b\u0000\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "step length": "\u0000X\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001c\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0014\u001fü\u001fð\u000fþ\u0000\u0000\u0000\u0000\u001c\u0018\u0000?ø\u000fþ\u0000\u0000\u0000ÿø\u0018\u0000\u00000\u0000\u0000\u0000\u0000\u0000ÿð\u001fü\u00000\u0000\u0000\u0000 À\u00000\u0010\u0000\u0000`\u001fÿƒ0À\u00000\u001fü\u0000`\u001fÿ˜À\u00000\u0018\u0000\u0000À\u0000`\u0001˜€\u0000`\u0018\u0000\u0001À\u0000`\u0000Á€\u0000`ÿþ\u0001à\u0000`\u0000\u0001€\u0000À\u0010€\u00070\u0000`\u0000\u0003€\u0001À\u0010Ì\u000e\u0018\u0000À\u0000\u0007\u0000\u0003€\u0010x\u001c\f\u0001À\u0000\u000e\u0000\u0007\u0000\u0010pp\u0006\u0007€\u0000|\u0000<\u0000\u0011¼`\u0006\u0006\u0000\u0000`\u0000p\u0000\u001f\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000", + "distance goal": "\u0000G\u0011\u0000\u0000\u0000\u0003\u0005\u0000\u0000\u0000`\u0000|ÿ?Ë\u0003ÿÀÏü‰€¶\u0006\u0001ƒÁ\u0012\u0000\u0004\b\u0001\u0003\u001fâ$\u0001ºØ\u0010\u0002\u001f¯dL\u0003w 0\f\fRϟÇ/`ø\u0018ÿ„ ÷à€\u00108\u0000\bA\u0003\t\u0001\u0000 ø\u0000\\‚\u0006\u0012\u0003\u0000Á×ø±ü¶\u0007ÿ‡€\u0001C\u0000µ~\b\u0001\u000b?ò„\u0001J\u0010\u0002\u0016\u0006\u0005¨\u0002ý 0\f\fM\u000fØ\u0004\u000bøø\u0018›4\u0003\u0016Çæ\u001c\u0000\"CÀ\b\u00002\u0000\u0000\u0000\u0000\u001c", + "Launcher Settings": "\u0000|\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0003à\u0003\u0000?ø0\u0000\u0000\u001f€\u0000\u0000\u0000\u0000\u0018&\u000fÿãÿ\u0003À\u0000À\u0000\u0000\u0000\u0000\u0007⠀\u0006\u0000\u0000\u000e\u0000\u00060\u0000 \u0000\u0000\u0000\u0000b\b\u0000`\u0000\u000000\u0001\u0000\u0002\u0000\u0000\u0000\u0003Æ \u0000\u0000ø\u0000\u0002\u0000\u0010\u0000?à\u0000\u0000\u0000Çÿ‡ÿÀ\u0000`ÿþ\u001fþ\u000fÿ€\u0000\u0000\u0003\u0000\u0000\u0018\u0000\f\u000fÿÁ0Àÿø|ÿ\u00000\u0000\u0001€\u0000À\u0003\u0000\u0003\f\u0000\u0000\u0000\u000603\u0000\u00000\u0000\u0018\u00000\u0000\u0013€\u0000\u0000\u0000#\u0002?€\u0007\u0000\u0003\u0000\u0003\u0000\u00010\u0000\u0000\u0003Ã`#\u0000\u0000à\u0000à\u0000`\u0000\u0018\u0000\u0000\u0000$\u001e\u00070\u0000<\u0000|\u0000\u000e\u0000\u0001€\u0000\u0000\u0002AÀÛ\u0000?\u0000?\u0000\u0003€\u0000\u0018\u0000\u0000\u0000$>\fÿÀ\u0001\u0000\u00000\u0000\u0000€\u0000\u0000\u0003Þ9ƒþ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000%€\u0000\u0000", + "TAP right top/bottom": "\u0000n\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000@\u0000\u0001\u0000\u0000\u0000\u000fþ\u0018\u000fÀ\f\u0000\u0001\u0000\u0006\u0004\u0000?ÿÀp3À0\u0000\u0004\u0000\u001bÿø\u0001\u0000\u0004\u0003@Ã?ÿÀ\u0010\u0000@À\u0000\u0004\u0000\u0010\tƒ\f\u0006\u0000\u0000@\u0003\u0003\u0000\u0000\u0010\u0000@f\f00\u0000\u0001þ\f\b\u0000\u0000@\u0001\u0001ˆ1ÀÀ\u0000\u0004\u0000 `\u0000\u0001€\u0004\u00040þ\u0006\u0000\u0000\u0010\u0000€\u0000\u0007€\u00100Ã\u0000þ\u0000@\u0006\u000fÿ\u0000\u0013\u0000@ÿ\f\u0003 \u0018\u0001\u0000\u0010`€\u0000F\u0001\u0006\u00060\u0000€`\u0004\u0000C\u0002\u0000\u0001\f\u0004\u0018\bÀ\u0002\u0001€\u0010\u0003\f\b\u0000\u0004\u0000\u0010`3\u0000\b\u0006\u0000@\b\u0000 \u0000\u0010\u0000C\u0000Ì\u0000?ø\u0003€ \u0000€\u0000@\u0000\u0000\u0000\u0000\u0000€aÿýÿü\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000", + "Font": "\u0000D\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000À\u0000\u0003\u0000ø\u0000\u0000\u000f\u0000\u00000\u0007ÿ€\u0003\u00008\u0000\u0003\u0000\u0000\u0018\u00000\u0000ÀÀ0\u0000\u0001€ÿà\u0000\b\u0003€\u0000\u0018\u001fþ\u0000\u0001€?€\u0003\u0000\u0007\u0000\u00000\u0003>\u00000\u0000ð\u0000\u0003\u00000 \u0006\u0000\u001b\u0000\u0000`\u0003\u0000\u0000à\u00030\u0000\f\u00000\u0000\u001c\u0000ã\u0000\u0003€\u0003\u0000\u0007€\u001c0\u0001ð\u00000\u0001à\u0000\u000f\u0000ü\u0000\u0003\u00008\u0000\u0000à\u0004\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Mark Unread": "\u0000Ÿ\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\f\u0001ÿð\u0000\u0000\u0001€\u0000\u0000\u0001ÿø`\u0000\u0006\u0006\u0000\u0000\u0000\u00183ÿð\u0000\u0000\u0003ü\u0000\u0000\u0003ÿðð\u0000\f\f\u0000\u0000\u00000°\u0000À\u0000\u0000\u000fü\u0000\u0000\u0000\u0000`p\u0000\u0018\u0018\u0000\u0000\u0000`€\u0001€\u0000\u00000\u0018\u0000\u0000\u0000!€0000\u0000\u0000\u0000À\u0000\u0006\u0000\u0000\u0000` \u0000\u0000\u0000f\u0000\u0000@``\u0000\u0000\u0001À\u0000\u0018\u000fÿ€À\u0003\u0000\u0000œ\u0000\u0001€ÀÀÿø\u0003ø\u001c`\u001fÿ\u0006\u0001€\u000f\u0000\u0001p\u0000\u0006\u0001ÿð\u0006|\u001dÀ\u0000\u0000\u0000\u0006\u0000\f\u0000\u0002@\u0000\f\u0003\u0003\u0000\u0000\u0000\f\b\u000f\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0004\u0000\u00000\u0006\u0006\u0000\u0000\u0000\u0018\u0000\f\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0018\u0000\u0000À\u0000\f\u0000\u0000\u00000\u0000\f\u0000\u0000\u0000\u0000À\u0000\u0000\u00000\u0000\u0007\u0000\u00000\u0000\u0000\u0000`\u0000\f\u0000\u0000\u0000\u0007\u0000\u0000\u0000\u0001À\u0000|\u0000\u0001À\u0000\u0000\u0000À\u0000\f\u0000\u0000\u0000\u001c\u0000\u0000\u0000\u000f\u0000\u0007à\u0000\u000f\u0000\u0000\u0000\u0001€\u0000\b\u0000\u0000\u0000`\u0000\u0000\u0000\u0018\u0000\u0004\u0000\u0000\u0018\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "start&lap/reset, BTN1: EXIT": "\u0000Ä\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0000\u0006\u0000À\u0001ÿ\u0000\f\u0000\u0000\u0000\u0001€\u0000x\u0000ð\u0000\u0000\u0000\u0001Àx\u0000``\f\u0000?ø\u0001ÿ€\u0000\u0000\u0018\u0000\fÀ\u0007þ\u0000\u0000\u0000ÿø\fÀ\u0006\u0006\u0000À\u0000\u0003\u0000\u001fø\u0000\u0000\u0001€\u0000Ä\u0000\u0000\u0000\u0000\u0000\u000fÿ\u0000Ä\u0000``\f\u001c\u00000\u0003\u0003\u0000\u0000\u0000\u0018\u0000\f@\u0000\u0000\u0000 À\u00000\f@\u0006\u0006\u0007ÿà\u0006\u0000`0\u0000\u0000\u0001À\u0000L\u0000ÿð3\f\u0000\u0003\u0000L\u0000``~\u0006\u0000`\fÃ\u0007ÿÀ\u001fÀ\u0007€\u000fÿ˜À\u00000\u0007€\u0006\u0006\u0000ÀÀ\f\u0001‡`ü\u0001Ÿ\u0000p\u0000\u00000\u0019ˆ\u0000\u0006\u0000p\u0000``\f\u0018\u0001À\u0000\u001e\u0000\u0000\u0000\u0018\u0010\rˆ\u0000\u0003\u0000Á€\u0000`\rˆ\u0006\u0006\u0000Ã\u0000\u001e\u0000\u0000À\u0000\u0000\u0001€\u0001€\u0000`\u0000\u0018\u0000\f\u0001€``\fp\u00070\u0000\u0018\u0000\u0000\u0000\u0018\u0000\u0018p\u0000\u000e\u0000\u0003€\u0001À\u0018p\u0000\u0006\u0000Â\u0000á€\u0003\u0000\u0000\u0000\u0001€\u0001ƒ\u0000\u0001À\u0000p\u00008\u0001ƒ\u0000\u0000À\f\u0000\u001c\f\u0000à\u0000\u0000\u0000\u0018\u0000\u001cø\u0000x\u0000\u000e\u0000\u0007\u0000\u001cø\u00008\u0000À\u0007\u0000`<\u0000\u0000\u0000\u0001€\u0000øÀ~\u0000\u0007À\u0003À\u0000øÀ\u000f\u0000\u000fþ`\u0006\u0003\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0007\u0000\u0000`\u0000p\u0000\u0000\u0000\u0000À\u0000?à\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "App Source\nNot found": "\u0000j\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000p\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0001ÿø\u0000\u0007\u0006\u0006\u0002\u0000`\u0000\u0000\u001fðþ\u000fÿ€\u0018\u0000\u0000\u000fþ\u0000\u0001ƒÿÀ``0\u0006\u0000\u0000\u0000\u0003\u0000\u0010À\u00000\u0018\u0018\u0006\u0003\u0000\u0000\u0000\u0000À\u0006`\u0000\f\u0006\u0006\u0001€À\u0000\u0000\u0000`\u00018\u0000\u0003\u0001€00ü\u0000\u0018\u0000\\\u0000\u0001€``\b\u0018\u001fÿ\u0000\f\u0000\u0012\u0000\u0000`\u0018\u0018\u0000\u000e\u0000\u0000\u0000\u0007\u0000\u0004\u0000\u00000\u0006\u0006\u0000\u0003\u0000\u0000\u0000\u0001à\u0003\u0000\u0000\u001c\u0000\u0001€\u0001€\u0000\u0000\u0001Ì\u0000À\u0000\u000e\u0000\u0000À\u0001À\u0000\u0000\u0000á€à\u0000\u0007\u0000\u0000à\u0001à\u0000\u0000\u0000p0ð\u0000\u000f\u0000\u0000ð\u0001à\u0000\u0000\u0000p\u00060\u0000\u0007\u0000\u00000\u0000`\u0000\u0000\u0000\u0018\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Show clocks": "\u0000Y\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0002\u0001\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0004\u0001\u0000€\u0000\u0000\u0001€\u0000\u0000\u001f\u0006\u0000À@\u0003€?ÿ\u0007ÿ̟ãü \u000fø\u0000`\u0000\u0000\u0004@€\u0000\u0010\u000eÎ\u00000\u0000\u0000\u0002 @~\u0018\fA‡ÿà\u0000\u0001\u0013þ\u0000Œ À\f\u0000ÿþø\u0000\u0000\u0002\u0004\u0010 \u0006\u0000\u0001€d\u0002\u000fÁ\u0002\u0018\u0019ÿþ\u0000@\"À\u0000ƒ\f\f\u0006À\u0002 \u0011\u0000À\u0000A†\u0004\u0006#\u0003\u0013\bˆAø B\u0006\u000e\u001f\u0001ˆÇÆ Œ\u00103\u0007\u001d\u0006\u0001„3!\u0010F\b\u000f\u0007\u0000‚\t\u0000\b3\u0004\u0003ž\u0000LpÁ\u0006\u0000\u001c\u001f‚\u0000\u0004\u0000>\u001cA€\u0000\u000e\bÁ\u0000\u0000\u0000\u0010\u0000\u0003À\u0000", + "STEPS": "\u0000G\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000Pÿ€ð\u0000\u0000\u0000\u0000ãÿ€ÿà\u0000\u0000\u000fÿ€\u0006\u0000\u0000\u0000\u0000\u0000\u001fþ\u0000\f\u0000\u0000\u0000\b0\u0000\f\u00000\u000fÿÁ˜`\u0000\u0018\u0000`\u001fÿ˜À\u00000\u0001€\u0000À\u00031\u0000\u0000À\u0007\u0000\u0001€\u0003\u0006\u0000\u0001€\u000f\u0000\u0003\u0000\u0000\f\u0000\u0006\u0000s\u0000\u0006\u0000\u00008\u0000\u001c\u0001Ã\u0000\u0018\u0000\u0000à\u0000p\u0007\u0003\u0000p\u0000\u0003€\u0001À8\u0003\u0003À\u0000>\u0000\u001e\u0000`\u0006\u0006\u0000\u0000`\u0000p\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Vector font size": "\u0000Ç\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\f\u0000\u0004\f\u0000\u0001€\u0000 \u0006\u0000\u0000À\u0000\u0000\u0000\u0007\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0018\u0000\b\u0018\u0000\u0007\u0000\u0001`\u000fð\u0003ÿ\u0000\u0000\u0000Àø\u0000\u0000\u000f\u0000\u00000\u0000\u00100\u0000\u001c\u0000a@?ð\u0007þ\u0000\u0000\u0001ÙÀÿð\u0000`\u0007\u0000\u0000`\u00000`\u0000p\u0001á\u0000À`\u0018\u0018\u0000\u0000\u0006 À\u0000`\u0000À\u0003\u0003\u0000À\u0003ÿø\u0003€\u0006`\u0001€€`0\u0000\u0000\u0018A€\u0000Àð\u0000\u0004\u0001À\u0007ÿð\u000f\u0000\u001c`\u0006\u0003\u0001˜`ÿø \u0000\u0001ÿà\u0000\u0018\u0003ø\u0001\u0003\u0000~\u0000p`\u0018\u0006\u0006\u001dÿðC\u0003\u0000\u0006\u0000\u000e\u0000\u0000`\u0006|\u0002\u0006\u0003Ì\u0000À`\u0000\u0018\u0000\u000f\u0000\u0000\u0001†\u0006\u0000\f\u0000<\u0000\u0000À\f\b\u0004\f\u000e\u0018\u0001\u0000`\u00000\u0000\f\u0000\u0000\u0003\f\b\u00000\u0000Ø\u0000\u0003\u0000\u0018\u0000\b\u0010\u00000\u0000\u0000`\u0000À\u00000\u0000\u0000\u0002\u00100\u0000à\u00030\u0000\f\u00000\u0000\u0000`\u0000`\u0000\u0000`\u0003\u0000\u0000À\u0000\u0000\u0006`à\u0003€\u001c`\u0000p\u0000`\u0000\u0001€\u0000À\u0000\u0000`\u001c\u0000\u0007\u0000\u0000\u0000\u0007ƒ€\u001e\u0000pÀ\u0007À\u0000À\u0000\u000e\u0000\u0001€\u0000\u0000\u0000p\u0000<\u0000\u0000\u0000\u0007<\u0000ð\u0000\u0007€~\u0000\u0001€\u0000x\u0000\u0003\u0000\u0000\u0000\u0001€\u0000`\u0000\u0000\u0000\u0000 \u0003€\u0000\u000e\u0000@\u0000\u0003\u0000\u0000@\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "View Message": "\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000Ø\u0006\u0000\u001fü\u0000\u0000\u0000\f\u0000\u0000\u00000\u0000\u0000\u0000\u000e\u0003@0\u0000À \u001fð\u0000`\u0000\u0000\u0001€\u0000\u0000\u0000<\b?þ\u0004\u0001\u0000c\u0000\u0003\u0000\u0000\u0000\f\u001c\u0000\u0000\u0000 \u0001ø\u0000?ø\u00000\u000e\u0010\u0000Aƒÿð\u0000\u0000\u0000\u0003\u0001€\u0001€@\u0003\u0000=€3\f\u001f€\u0000\u0001€\u0018\u000f€\b\u0002\u00000\u0000|\u0000Ì`\u0018\u0018?þ\u000f\u0001€æ\u0010ð\u0007ø\u0000à\u0006b\u0000Áÿð\u001c\u001c\f\u001fƒ\u0000€à\u000fÀ\u00180\u0006\u0018\u0000\u0000\u0000\u0001ÀÃà\u0010\u0004\u0007\u0001€g\u0000\u0001€1À\u0000\u0000\u0000\f\u0006t\u0000ÿà \u0004\u0006\u001c\u0000\u001c\u0001„\u0000\u0000\u0000\u0001À\u0006 \u0000Ì\u0000x `@\u0001À\f\u0000\u0000\u0000\u0000\u001c\u0000!\u0000\u0004@\u0003ã\u000e\u0000\u0000\u001c\u0000`\u0000\u0000\u0000\u0003€\u0001\u0000\u0000b\u0018\u0011¹à\u0000\u0007À\u0003ÿ€\u0000\u0000ø\u0000\u000fü\u000e\u0019ÀÿŒ\u0000\u00000\u0000\u0007ü\u0000\u0000\u0006\u0000\u0000?áÀü\u0003ð\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Are you sure": "\u0000y\u0011\u0000\u0000€\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0006\u0010@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0001ˆ``\u00000\u0004\f\u0001\u0000\u000e\u0000\u000f€\u0018\u0000Ä 0~\u0018\u0003\u0006\u0000À?à\u000egÿð\"0\u0019ÿ\f\u0001ƒ\u0000`;8\u0000\u0018\u000f\u0000\u0001\u0000\f\u0000\u0006\u0000A€\u00101\u0006\u0000\f\u000f€?þ\u0006\u0000\u0003\u0000 À\b0ƒ\u0000\u0004\r`\u0000\u0001\u0003\u0000\u0001\u0000\u0018@\u0006\u0010@€\u0006\u0004˜\u0000\u0000€\u0000€\f \u0003\b``\u0006\u0006F\u0000\u0000@Œ\u0000@\u0006\u0010\u0001Œ00\u0006\u0006!ÿàD\u00002\u0003\f€Æ\u0018\u0010\u0002\u0006\u0018à\u0000\u00102\u0000\u0019\u0001†@a\b\u0018\u0000\u0006ÿ˜\u0000\b\u0019\u0000\r€Ã`0Ì\u001c\u0000\u0002\u0006\u0000\u0000\u0004\fÿ†€a \u0018<\u001c\u0000À\u0002\u0000?þ\u0006?ÁÀ\u0000p\u0000\u000ex\u0000`\u0001\u0000\u0000\u0001\u0003\u0000\u0000@\u0000\u0010\u0000\u0000\u0010\u0000\u0000\u0000€\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Bluetooth": "\u0000{\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000<\u0000€\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u00060\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0001ÿ\u0007ÿÀÆ\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000ðÿð\u0018À\u0000\u0000\u0000`\u0000\u0006\u0000\u0000\u0000\u0000\f\u0000\u0006\u0003\u0018\u0000\u0000\u0000\f\u0000\u0000À\u0000\u0000\u0000\u0001€\u0000Àc\u0000\u0000\u0000\u0001À\u0001ÿ€\u0000\u0000\u0000`\u0000\u0018\f`\u000fÿ€?€?ð?þ\u0000\f\u0000\u0006\u0001Œ\u0011ÿð\u0006|\u0006\u0006\u0007ÿÀ\u0003\u0000\u0000À1†\u0000\u0000\u0000À€ÀÀ\u0000\u0000\u0000à\u00000\u00061€\u0000\u0000\u0018\u0000\u0018\u0018\u0000\u0000\u0000\u001e\u0000\u000e\u0000†`\u0000\u0000\u0003\u0000\u0000\u0002\u0000\u0000\u0000\u000e`\u0003€0Ü\u0000\u0000\u0000`\u0000\u0000À\u0000\u0000\u0003†\u0001à\u000e\u001e\u0000\u0000\u0000\f\u0000\u00000\u0000\u0000\u0000à`ð\u0003ƒ€\u0000\u0000\u0001€\u0000<\u0000\u0000\u0000p\u00068\u0000 \u0000\u0000\u00000\u0000\u0006\u0000\u0000\u0000\f\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Unread timer": "\u0000|\u0011\u0000\u0000À\u0004\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\f\u0000@`\u0000\u0000\u0000`\u0000\u0000`\u0000\u0000\u0000\u0000\u0000À\u0006à\u000e\u0000\u0006\u0000\u0000\u000e\u000fÿ€\u0000\u0003ÿáø`\u0007ü\u0000ÿÀ\u0001Àÿü\u0000\u0000\u0000À\u0000\u0006\u0000ìà\u000fü\u00008\u0000\u0001€\u0000\u0000\f\u0000óü\u0018ƒ\u0001€\u000e\u0000\u0000\u0018\u0000\u0000\u0000À\u0000\u0000\u0003\b00\u0018\u0001à\u0000\u0003\u0000\u0000\u0003ÿð\u0000\u0000 \u0006a€~\u0000\u0000`?þ\u0001à\u001fÂ\u0018\u0018ð\u001e`\u0003Œ\u0003ÿà>\u0000\u0006\u0004a€\u000f\u0003†\u0000\u001dÀ\u0000\u0000\u0002ð\u0000iF\u0018\u0010\u0000`\u0000`\u0000x\u0000\u0000\u0000m€ð!\u0003\u0000\f\u0000\u0006\u0000\u0003\u0000\u0000\u0000\fÌ\t\t\u00030p\u0001€\u0000`\u0000\u0018\u0000\u0000\u0003Œp‘\u001e\u000e\u0000p\u0000\u0006\u0000\u0000À\u0000\u0000pÉ\u0011`ç€\u001e\u0000\u0000`\u0000\u0006\u0000\u0000\u0004\f\u0000÷\u0016\u0000 \u0001€\u0000\u0006\u0000\u0000 \u0000\u0000\u0000À\taÀ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Delete all messages": "\u0000Ç\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0001\u0000@\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000l\u0000\u0000\u0012`ˆ\u0006\u0000\u0000\u0010\u0000\u0007\u00008\u0000\u0001€\u0000\u0000\u0006\u0000\u0000\u0000\u0001Àh\u0003€4‰\u001fÿð\u0000Ðþ\u0003þ\u0000\u0003\u0000\u0000\u0000\f\u0000\u0000\u0000\u0001à@?à\t\u0012?ü\u0000x€á€\u000eÎ\u0000\u0006\u0000\u0000\u0000\u00188\u0000\u0000\u0000@\u0000ìàÿ$@0\u0000Ø\u0000\u0006\u00001\u0006\u0007\b\u0000 Áÿø\u0000\u0000\u0000\u0001ƒ\u0010aþHƒà\u00038\u0000\u0018\u0000Â\f\u0007°\u0006aƒð0\u0000\u00000\u0003\f Â\u0004‘\fÀ\f8\u00000\u0001\u0004\b\u0003à\u0006c\u0000ÀÁÿðx\f\u0010@„\t\"\u0010À08\u0000À\u0002\u0018\u0018\u0001À\fÄ\u0001ƒ\u0003ÿà88!òD!€À0\u0001€\f00\u0007à\f\u0018\u0003\f\u0000\u0000\u0000\u0000àÃ\u0003\u0010$ˆg\u0000\u00000\u0003\u0000\u0018`@\fà\u00000\u00068\u0000\u0000\u0000\u0001†\u0004 I\u0010v\u0000\u00000\u0006\u0000\u0010€0à\u0000à\f \u0000\u0000\u0000\u000e\u0001\b\u0018’ \u0018\u0000\u00000\u0006\u00003\u0007\u0000À€\u0003€\u0018\u0000\u0000\u0000\u00008\u00030p\u0004@0\u0000\u00000\u000e\u0000<\u001c\u0007\u0000\u0000\u000e\u00000\u0000\u0000\u0000\u0001À\u0003ÁÁ\u0002\bÀ\u0000\u0000\u0000\u000fÀ9à<\u0000\u0000ø\u0000ð\u0000\u0000\u001f\u0000\u0003ž\u0002\u0004\u0011\u0006\u0000\u0000\u0000\u0000\u0003€\u0001\u0000`\u0000\u0001€\u0000?à\u0000\u00000\u0000\u0000\u0010\u0004\u0018\"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\bqÄ", + "No Messages": "\u0000|\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0001°\u0010\u0000\b\u0000\u00000\u0000\u0000\u0000À\u0000\u0000\u00008\r\u0003\u0000\u0000€\u0000\u0003\u0000\u0000\u0000\f\u0000\u0000\u0000\u0001àAþà\b\u0000\u00000\u0000\u0000\u0000ÁÀ\u0000\u0000\u0002\u0000\u001fç\u0000€\u0001Â\u0000\b0þ\u0000\u0000\u0000\u0000``\u0018\u0018\u0000\u000f`\fÃ\u0007à`\u0000\u0000`\u0006\u0006\u0004\u0001€\u0000>\u0000f0\f\f\u001fÿ\u0007€À@À\u0018\u0000\u0000à\u0006b\u0000Áÿð\u001c\u001c\f\f\u0001€\u0000\u001f€0`\f0\u0000\u0000\u0000\u0003€ÀÀ\u0018\u0006\u0001œ\u0000\u0006\u0000Ç\u0000\u0000\u0000\u00000\b\f\u0001€`0à\u0000à\f \u0000\u0000\u0000\u000e\u0001À\u0018\u0004\u0006\u0004\u0000\u001c\u0000À\u0000\u0000\u0000\u0001À\u0011þ\u0001€ÁÀ\u0000\u0003€\f\u0000\u0000\u0000\u0000p\u0000\u0010ø\f\u0018x\u0000\u0001ð\u0000ÿà\u0000\u0000>\u0000\u0001ü€\u0006\u0000\u0000\u0018\u0000\u0003þ\u0000\u0000\u0003\u0000\u0000\u000f€\u0001À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Record Run": "\u0000y\u0010\u0000À\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000`À\u0000\u0000\u001fü\u0018\u00000\u0000\u001fþ\u0000\u0000\u00000°\u0000\u0000\u000fü\u000f\u0000\u0018\u0000\u000fÿ\u0000\u0000\u0000\u0018 \u0000\u0000\u0000\u0000\u0001À\f\u0000\u0000\u0001€\u0000\u0000\f\u0000\u0000\u0000\u0000\u0000\u000006\u0000\u0000\u0000À\u0000\u0000\u0007\u0000\u0000\u0000\u0003ÿÀ\u0000\u0013\u0000@\u0000`ÿø\u0003ø\u00000\u0001ÿð\u0000\u0019€`\u00000ü\u0001Ÿ\u0000<\u0000\u00000\u0000\u0018À`\u0000\u0018\u0000\u0000\u0000À€\f\u0000\u0000\u0018\u0000\f``\u0000\f\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0018\u0000\f0à\u0000\u0006\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u001c\u0000\f\u0018à\u0000\u0003\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u001c\u0000\u001c\rÀ\u0007ÿ€\u0000\u0000\f\u0000\u0000\u0000\u0000<\u0000|\u0007À\u0003ÿÀ\u0000\u0000\u0006\u0000\u0000\u0000\u0001ø\u0001ø\u0001\u0000\u0000\u0000 \u0000\u0000\u0003\u0000\u0000\u0000\u0000à\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Apps": "\u00001\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000à\u0000\u0000\u0000\u0000\u0000P\u0000oÿÀ\u0000807ÿàÿø\u0018\u0018\u00000ø\f\f\u00040\u0000\f\u0006\u0006\u00030\u0000\u0006\u0003\u0003\u00018\u0000\u0003\u0001€¸\u0000\u0003\u0000ÀÀH\u0000\u0001€`` \u0000\u0001€000\u0000\u0001À\u0000\u0018\u0018\u0000\u0001À\u0000\u00188\u0000\u0001À\u00008x\u0000\u0007€\u0000x0\u0000\u0007\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "BTNs 1:startlap 2:exit 3:reset": "\u0000À\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u001füÀÀ\u0000\u0007€\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000ø\u0000\u0000\u0000\u0002\u0000cÀàÀ\u0000\u000f€\u0000\u0002\u0000\u0000\u0001\u0002\u0000\u0000\u0000\u0003ü\u0000\u0000\u0000\u0000\u0010`€€àÀ\u0000\u0001€\u0000\u0002\u0000\u0000\u0001\u0002\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0010`€€°Ãà\u0001€\u0003ïçÀ¿ò\u001f\u0002ð\u0000\u0006\u0000<0ba€€˜Î`\u0001Žf\u0006pã\u0002\u0019Ø\u0000\u00040æ\u0018Â0\u0000€˜Ì\u0000\u0001Œ\u0002\u00000Á\u0002\u0000Ã\f\u0000\f0ƒ\r‚\u0010a€€ŒÌ\u0000\u0001€\f\u0002\u0000\u0010\u0002\u0000B\u0004\u0000\u0018\u0001ƒ\u000f\u0002\u0010`À€ŒÇ€\u0001€\u0007‚\u0003ð\u0002\u000fÂ\u0004\u00000\u0001ÿ\u0007\u0002\u0010`À€†Áà\u0001€\u0001â\u0006\u0010\u0002\u0018B\u0004\u0000`\u0001€\u0007\u0002\u0010`À€†À \u0001€\u0000\"\f\u0010\u00020C\u0004\u0000À\u0001€\r‚\u0010`À€ƒÀ \u0001€\u0000\"\f0\u00020Ã\f\u0001€\u0000À\u0019‚\u0010c€€Ì`\u0001Œc\u000ep‚9Ø\u0003€0ç\u0018Â\u0018\u0000€ÏÀ\u000fñÁ琀ò\u001eBð\u0003þ0>0b\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Delete All Messages": "\u0000¢\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0004\u0001\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u00006\u0000\u0000\t0GÃ\u0000\u000f€\u0000\u0018\u0000\u0000\u0000`\u0000\u0000\u0000\u001c\u0006€8\u0003H‘±à\u0007\u0018\u0000\u0006\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0003À€À\u0012$HL\u0003\u0003\u0000\u0001€\u0000\u0000\u0006\u000e\u0000\u0000\u0000\u0010\u0000;8?É\u00121Àp8@\u0001\u0006\u000fÿÀ\u0000\u0000\u0000\f\u0018ƒ\u000fòE¸9ÿþ\u0007°\u0006aƒð0\u0000\u00000\u0003\f Â\u0004‘Éð@À€|\u0000Ì`\u0018\u0018?þ\u000f\u0001‚\b\u0010$X\u0010\u00000\u0000\u0007\u00003\u0010\u0006\f\u000fÿ€àà†\u0006?É\u0012\f\u0000\f\u0000\u0003ð\u0006\f\u0001†\u0000\u0000\u0000\u0000paˆ\u0012Dÿð\u0003\u0000\u0000Î\u0000\u0003\u0000c€\u0000\u0000\u0000\u0018\u0018`B\u0004‘0À\u001fþ\u0000aÀ\u0001À\u0018@\u0000\u0000\u0000\u001c\u0002\u00100ÿ$L’\u00000\u00000 \u0000à\u0006\u0000\u0000\u0000\u0000\u000e\u0000Ì\u001c A\u001ed€\f\u00008\u0000\u0000p\u0001€\u0000\u0000\u0000\u000e\u0000\u001e\u000e\b\u0010D10\u0003\u0000<\u0000\u0000ø\u0000ð\u0000\u0000\u001f\u0000\u0003ž\u0002\u0004\u0011\fF?ÿ\f\u0000\u00000\u0000\u0007ü\u0000\u0000\u0006\u0000\u0000\u0002\u0000ƒ\u0004Bp€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000!Ç\u0010\u0018\u0000", + "Vibration": "\u0000#\u0011\u0000\u0010\u0000\u0000\u0002\u0002?óü@D\u0000\u0004\b>€\u000fû÷×ð\u0010~\"\u0000\u001fÄÄ@\u0002ؘüI\u0013\u001dh\u000fâo-\u0011$MŶ?™‰³ƒ16`0F$Ä?؄šÀû\u0011³ÌþNr`€\u0000\u0000", + "Utils": "\u0000Ä\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000ÀÐ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000?ø\u0000\u0000\u0001ÿÀ\u0000p\f\u0006\u0000\u0000\u0003€\u0000\u0000\u0000`\u0000?ø\u0000\u0000\u0003ÿ€\u0000\u0000\u001fø\u0000\u000e\u0000À\u0000\u0000\u0000\u001e\u0000\u0000\u0000\u0007€\u0003ÿ€\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0001À\f\u001c\u0000\u0000\u0000 \u0000\u0000\u0000\u001c\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000p\u0007ÿà\u0000\u0000\u0000\u0006\u0003þ\u0000``\u0001\u0000\u0000\u0000þ\u00008\u0003ÿÀ\u000f\u0000~\u0006\u0000\u0000\u0006\u0000`?à\u0000\u0004\u0000\u0010\u001fÿ\u0007ÿà\u0007\u0000?þ\u0003ð\u0000ÀÁÿðx\f\u0000\u0006\u0000\u0000À\u0001\u0001ÿð\u0001€\u0000à\u0000\u0000Àó\u0000\f\u0018\u001fÿ\u0001ÁÀ\u0000`\u0000\u0018\u0000\u0010\u0000\u0000\u0000\u0018\u0000>\u0000\u0000\f\u001c0\u0000Ã\u0000\u0000\u0000\u00008\u0003þ\u0000\u0001€\u0001\u0000\u0000\u0000\u0001€\u000e`\u0000\u0001€\u0003\u0000\fp\u0000\u0000\u0000\u0003\u0000?à\u00000\u0000\u0010\u0000\u0000\u0000\u0018\u0000Æ\u0000\u00008\u00000\u0000Â\u0000\u0000\u0000\u0000à\u0000\u0006\u0000\u0006\u0000\u0001\u0000\u0000\u0000\u0003\u0000\u0000`\u0000\u0007\u0000\u0003\u0000\f\u0000\u0000\u0000\u0000\u001c\u0000\u0000`\u0001Àÿþ\u0000\u0000\u0000p\u0000\u0006\u0000\u0001à\u00000\u0000À\u0000\u0000\u0000\u0007\u0000\u0000\u0006\u0000ø\u0007ÿà\u0000\u0000\u001e\u0000\u0000`\u0001ø\u0000\u0003\u0000\u000fþ\u0000\u0000\u0003à\u0000à~\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0006\u0000\u001c\u0000\u00000\u0000?à\u0000\u00000\u0000\u0003þ\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Piezo": "\u00003\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0019€H\u0000\u0000\u0000\r°\u000b\u0000\u0000\u0000\u0000Æ\u0000ÇÿÀ€0Ààø\u0018\u0006\u0018x\u0000`\u0001€Ã|\u0000\f\u00000\u0018|\u0000\u0001€\u0007\u0006\f\u0000\u00000\u0000@Á€\u0000\u0006\u0000\u0000\u00180\u0000\u0000À\u0000\u0006\u0006\u0000\u0000\u0018\u0000\u0001€À\u0000\u0003\u0000\u0000`\u0018\u0000?ÿ€8\u0003ÿÇÿð>\u0000\u001fø\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "BLE": "\u0000 \r\u0000\u0006\u0001þc†\u0001€`†\u0001€`†\u0001€a†\u0001€\u0006\u0001þa†\u0001€`Æ\u0001€`Æ\u0001€`Æ\u0001€`Æ\u0001€c†\u0001€\u0007ùþ", + "Make Connectable": "\u0000|\u0011\u0000\u0010\u0010\u0002\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0001\u0001\u0000``\u0000\u0000\u0003\b\u0000\u0000\u0000\u0001€\u0000\u0000\u0011ÿ„çÿølŒ\u0018\u0000\u0000\u0018\u0000ÿŸðØ`\u0000\u0004\foƒñÿþ\u00060|B\t\u0006\u0000\u0000AþÀ\u0019ÿ\u001fü\u0000\u0006\u0001\u0004aóü\u0000\u0004\f(\u0001€\u0000\u0001€\u0000À\u0011ÿž\u0000\u0001ü@\u0000†\u0018\u0000\u0000ø\u0000\u0018\u0001\u0002\u0000P\u0000\u0010Ä\u000fÏÁ€\u0000\u0019€\u0007ø\u001c \r¿á\f@„\u0000\u0018\u0000\u0001\f\u0000ÿÇ¿øú–\u0010Ä\u000fÈ\u0001\u0018\u0000\u0010À\u001c\u0006pf\u0018éaŒ@Ď\u0011\u0000\u0001œ\u0001\u0000!\f`\u0000\u001fÄ\fO\u0000\u000eÀ\u0007‚\u0010Æ\n™\u0001\u0000@üÀ\u0019\u0000\u0000\u0018\u0000|a\u0007À©’\u0000\u0004\bH!Ÿð\u0001€\u0004n\u0010\u001c\u001a1 \u0000@„Æ\u0018ÿ\u0000p\u0000Á\u000fq\u0006\u001e\u0000\f\tÇÁ€\u0000\f\u0000\u0003ðpÁ\u0000\u0000\u0000\u0001À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "HID": "\u0000\u001f\r\u0000`aàÀÃ\u0018ñ†0s\u0003\f`f\u0006\u0018Àoü1€Ø\u0018c\u0001°0Æ\u0003`aŒ\u0006ÀÃ\u0018\u0019†0s\u0003\fgÆ\u0006\u0018þ\u0000", + "Light BW": "\u0000R\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€0\u0000\u0000\u0000\u0000\u0003ÿ€\u0000à\f\u0000?†\f\u0018ÿÀ\u0000p\u0003\u0000\fqƒ\u0006\u0000\u0000\u00008\u0000À\u0003\u0004aá€\u0000\u00008\u00000\u0000Á\u0018XGÿ€\u001e\u0000\u000e\u00000Ã\u00121ÿð\u001f€\u0003ø\u000fàČ\u0000\u0018\u001e`\u0000σ\f33\u0000\u0006\u000e\u0018\u00000 ÁŒŒ€\u0003\u0000\u0006\u0000\f\u00000a¡`\u0001À\u0001€\u0003\u0000\f\u0018hX\u0000à\u0000`\u0000À\u0003\u0006\u001e\u001e\u0000ð\u0000\u0018\u00000\u0000Ç\u0003\u0007\u0003ð\u0000\u0006\u0000\f\u0000?€ÀÀà\u0000\u0001€\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "LCD": "\u0000#\r\u0000`\u0003àþ\f\u0001ï\u0018ñ€`\u0003\u00070\f\u0000`f\u0003\u0000\f\u0006À`\u0001€Ø\f\u00000\u001b\u0001€\u0006\u0003`0\u0000Àl\u0003\u0000\u0018\u0019€`\u0003\u00070\u0007¼gÇø>\u000fà", + "Background": "\u0000#\u0011\u0000\u0002@\u0000\u0000\u0000ÉÁÿáùð0\f\u0001 \u0007ÿ€ä0ÿðìü\u0000À\u0000\u0000\u0000\u0018\u0000\u0000\u0001ÿþ?ü\u0000\u0000\u0004\u0000ÿàÿð \u0004\u0018\u0006\u0007ÿƒ\u0000À\u0006\u0000ø\fL\b\u0001\u0003\bÁ\u0000aË\f x\u0001À\u0000", + "Foreground": "\u0000Œ\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0005€\u0000\u0000\f\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u000fÿÀ04?ø\u0000À\f\u0000\u00000gÿ€\u0000\u0000ÿü\u0007ý\u0003ÿ\u0001ÿàð\u0000\u0003\u000bø\u00000\u0000\u0000Àà\u0000\u0000?þ\u0003€\u00000@\u0001€\u0003\u0000\u0002\u0018\f\u0004\u0000\u0000\u0003\u0000`\f\f\u0003\u0000\u0000\u0018\u000fþ\u00003\u0001€Àø0\u0006\u0000\u0000€8\u0000\u0001ÿà\u0002p\u0018\f\u0007ÿÃ\u0000`\u0000\u0018\u0003ø\u00000\u0000p\u0000.\u0003\u0000€\u0000\u00180\u0006\u0000\u0003\u00003à\u0003\u0000\u000f\u0000\u0002@\u0000\u0018\u0000\u0001\u0000`\u00000\u0003\u0002\u0000`\u0001°\u0000 \u0000\u0003\u0000\u00000\u0000\u0004\u0000\u0006\u00000\u0000\u000e\u00003\u0000\u0006\u0000\u0000p\u0000\u0007\u0000\u0000À\u0000À\u0003\u0000\u0001À\u000e0\u0000`\u0000\u000e\u0000\u0000à\u0000\u0018\u00008\u00000\u0000x\u0001Ã\u0000\u001c\u0000\u0001À\u0000<\u0000\u0007\u0000\u001f\u0000\u0003\u0000\u001e\u0000\u0000ð\u0007€\u0000x\u0000?\u0000\u0003à\u000fÀ\u00000\u0003€\u0000\u000e\u0000`\u0000\u0006\u0000\u0003€\u00008\u0000@\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Programmable": "\u0000|\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000à\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n\u0000\u0000\u0000Á`\u0000\u0000\u0002\u0000\u0000\u0000\u0003\b\u0000\u0000áÿà\f\r\u000fþ\u0000`\u0007ÿølŒü\u001fþ\u0001ÿ@ÿÀ\u0006\u0000\u0000\u0004\fo‡ÿ€`\u001fø\u0000\u0000\u0000À\u0000\u0000AþÀ\u0000\u0018\u0018\u0006\u0003\u0001\u0000\u0000\u0000\f\u0000\u0000\u0004\f(\u0000\u0001€``0\u001fþ\u0000À\u0001ü@\u0000†\u0000\u0018\u0018\u0006\u0006\u0003\u0001ÿð\u0018`\u0010Ä\u000fÏÀ\u0003\u0001€`À \u0000\u0006\u0001†\u0001\f@„\u0000\u00000\u0018\u0006\u0000\u0006\u0000\u0000`\u00180\u0010Ä\u000fÈ\u0000\u0006\u0001€`\u0000À\u0000\f\u0003\u0003\u0001Œ@Ď\u0000à\u0018\u0006\u0000\u001c\u0000\u0001À0\u0018\u001fÄ\fO€\u001c\u0001€`\u0003€\u00008\u0002\u0001\u0000@üÀ\u0003€\u001fþ\u0000p\u0000\u000f\u0000ü\u0000\u0004\bH!à\u0001ÿà\u001e\u0000\u000fÀ\u000füÀ\u0000@„Æ8\u0000\u0010\u0002\u0001€\u0000à\u0000\u0000\u0004\u0000\f\tÇÀ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001À\u0000\u0000", + "Customize": "\u0000k\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\f\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u00000\u0000\r\u0001€\u0003þ\u0000\u0018\u0000ÿø\u0000\u000e\u0003þÀ0\u0000ÿà\u0007þ\u001fÿ€\u0003€ÿèÿø\u0000\u0018\u0000ÿÀ\u0000`\u0000à\u0000\u0018\u000fÿ\u0000\u0003\u000000\u0000\f\u0000p\u0000\u0003\u0000\u0018`\u0000À\f\u0006\u0000\u0003\u0000\u001e\u0000\u0000À\u0002\f\u0000\u0018\u00030À\u0000À\u000fÀ\u0000\u0018\u0000Á€\u0006\u0000ð\u000e0\u0007˜\u0000\u0006\u0000\u00180\u0001À\u0000\u001e\u0000î\u0001Ã\u0000\u0001À\u0002\u0006\u0000<\u0000\u0001€\u0007€\u0000`\u0000<\u0000ÀÀ\u001cÀ\u0000`\u0000`\u0000\f\u0000\u001cÀ0\u0018\u0007\f\u0000\u0018\u0000\u0006\u0000\u0001€\u0007\f\u000e\u0003\u0001ÀÀ\u000e\u0000\u0000`\u00000\u0001ÀÇÀà\f\u0007€\u0000\u0006\u0000\u0006\u0000à\f\u0000p\u0018\u0001€À\u0000\u0000@\u0000À\u0018\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Dark BW": "\u0000S\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0016\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\u0003\u0003\u0000\u0000\u00000\u0000þ\u00180`ÿÀ\u0000\u0000\u0007ø\u0018ã\u0006\f\u001fø\u0000\u0000\u0001ÿƒ\u0004aá†\u0002\u0000\u0000\u0000`0`Œ,!ÀÀ\u0000\u0000\f\u0004\f0Čw\u0018\u001fÿ\u0003\u0001ü\u0018‘Œv\u0003ÿàÀ00Ã30\u0003À\u0000\u0000\u0000\f\u0006\fdd\u00000\u0000\u0000\u0000\u0001€Á†…€\f\u0000\u0000\u0000\u0000`\u00180а\u0003€\u0000\u0000\u0000\u0018\u0003\u0006\u001e\u001e\u0001À\u0000\u0000\u0000\u000e\u0000cƒ€ð\u0000\u0000\u0000\u0003€\u000fà00\u0018\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Background 2": "\u0000-\u0011\u0000\u0002@\u0000\u0000\u0000\u00002pø\u0000\u001fŸ\u0003\u0000Àø\u0004€\u001fþ\u001fàä0ÿð\u0003;?\u00000\u0000\f\u0000\u0000\u0001€\u0000@\u0000\u0007ÿø\u0006?ü\u0000\u0000\u0000a\u0000 ø\u0006\u000fÿ\u0002\u0000@``\u0018\u001fþ\u0006\u0003\u0000À\u0006\u0000`\u001fþ\u0003\u0013\u0007\u0000€\u00100Œ?ä\u0001‡,0\u0000 x\u0001À\u0000\u0000", + "Quiet Mode": "\u0000ž\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0000\u00000\u0000À\u0003ÿà\u00008\u0000\u0000\u0000\u0000\u00000\u0000ø\u0000\u0000\u0000Áƒü\u000fÿ€\u0001Àÿø\u0000\u0000\u0000À\u0001ÿà\u0000\u0000\u0003\u000b\u001fø0\u0006\u0000\u000e\u0001ÿà\u0000\u0000\u0003\u0000\u0000@\u0000\u0000\u0000\f\u0010À`À\u0018\u0000à\u00000\u0000\u0010`\f\u0000\u0001\u0000\u0000\u0000\u00000\u0003\u0001\u0003\u0000`\u0007€\u0000À\u0006a€8\u0000\u0004\u0000\u0000\u0000\u0000à\u0018\f\f\u0001€~\u0000\u0003\u0000\fÆ\u0000þ\u0003ÿðÿø\u0003øÀ00\u0006\u0007˜\u0000\f\u00003\u0010\u0003>\u000fÿÃÿà\fø\u0001€\u000008`\u00000\u0000`À\f\b\u0001\u0000\u0000\u0000\u00000 \u0006\u0000\u0000À\u0001€\u0000À\u0000\u0003\u00000\u0000\u0004\u0000\u0000\u0000\u0000À\u00000\u0000\u0006\u0000\u0006\u0000\u0003\u0000\u0000\u001c\u0000À\u0000\u0010\u0000\u0000\u0000\u0003\u0000\u0001€\u00008\u0000\u0018\u0000\f\u0000\u0000à\u0003\u0000\u0000À\u0000\u0000\u0000\f\u0000\u001c\u0000\u0003À\u0000`\u001fÿÀ\u0007\u0000\f\u0000\u0001\u0000\u0000\u0000\u00000\u0000à\u0000<\u0000\u0001€ÿ\u0000ø\u00000\u0000\u0007ü\u0000\u0000\u0000À\u0006\u0000\u0000À\u0000\u0006\u0000\u0000\u0000\u0003\u0000\u0000À\u0000\u0007à\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Highlight FG": "\u0000p\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u00000\u0006\u0000\u0000\u0000\u0000\f0\u0000\u0007\u0001ÿÀ\u0000p\u0006\u0000\u001fÀü\f0\u0000\u000e\u0001ÿ€\u0000à\u0006\u0000\u0018\u0003Þ\f0\u0000\u001c\u0000\u0000\u0000\u0001À\u0006\u0000\u0018\u0006\u0002\b0\u0000p\u0000\u0000\u0000\u0007\u0000\u0006\u0000\u0018\u0006\u0000\b0\u0000ð\u0003ÿÀ\u000f\u0000\u0007\u0000\u0018\f\u0000\u0018\u0010\u0003ð\u0003ÿà?\u0000\u0007ð\u001fÌ\u0000\u0018\u0018\u000f0\u0000\u0000Àó\u0000\u0006|\u0018\f\u001e\u0018\u0018\u001c0\u0000\u0000ÁÃ\u0000\u0006\u0004\u0018\f\u0006\u0010\b\u00000\u0000\u0001€\u0003\u0000\u0006\u0000\u0018\f\u00020\f\u00000\u0000\u0003€\u0003\u0000\u0006\u0000\u0018\u0006\u00020\f\u00000\u0000\u0007\u0000\u0003\u0000\u0006\u0000\u0018\u0006\u0002`\u0006\u00000\u0000\u001e\u0000\u0003\u0000\u0006\u0000\u0018\u0003Þà\u0007\u00000\u0001ø\u0000\u0003\u0000\u0006\u0000\u0018\u0000ü@\u0002\u00000\u0001À\u0000\u0003\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Foreground 2": "\u0000˜\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000X\u0000\u0000\u0000À\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u000fÿÀ04?ø\u0000À\f\u0000\u00000`|ø\u0000\u0000\u000fÿÀÐ?ð\u001fþ\u000f\u0000\u00000±þø\u00000\u0000\u0000Àà\u0000\u0000?þ\u0003€\u00000@\u0006\u0000\u0018\u00000\u0000!€À@\u0000\u00000\u0006\u0000ÀÀ0\u0000\u0003\u0000\u0018\u000fþ\u00003\u0001€Àø0\u0006\u0000\u0000€8\u0000\u0002\u0000\u0018\u001fþ\u0000'\u0001€Àü0\u0006\u0000\u0001€?€\u0006\u00000\u0000p\u0000.\u0003\u0000€\u0000\u00180\u0006\u0000\u0003\u00003à\f\u00000\u0000ð\u0000$\u0000\u0001€\u0000\u0018\u0010\u0006\u0000\u0003\u00000 \u0018\u0000`\u0001°\u0000 \u0000\u0003\u0000\u00000\u0000\u0004\u0000\u0006\u00000\u00000\u0000à\u00030\u0000`\u0000\u0007\u0000\u0000p\u0000\f\u0000\f\u00000\u0000`\u0001À\u000e0\u0000`\u0000\u000e\u0000\u0000à\u0000\u0018\u00008\u00000\u0000À\u0007€\u001c0\u0001À\u0000\u001c\u0000\u0003À\u0000p\u0001ð\u00000\u0001À\u001e\u0000\u0000ð\u0007€\u0000x\u0000?\u0000\u0003à\u000fÀ\u00000\u0001ÿ8\u0000\u0000à\u0006\u0000\u0000`\u00008\u0000\u0003€\u0004\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Remove": "\u0000#\u0012\u0000\u0000\u0000\u0000\u0000\u0001\u0000@\u0000\u0001&\bø`4‰\u001b\u001e\u0000‘\"B`ÿ$HÇ\u001fä‹pr\u0004‘Éð@’,\b\u000fòDƒ\u0001\u0002HŸþ I\u0013\f\u0007ù\"d\u0004y’\u0010 ˆbb\u0004\u0011\fFA‚!8HqÄ\u0006\u0000", + "Passkey BETA": "\u0000z\u0010\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001f€\u0000\u0000\u0000 \u0000\u0000\u0000\u0000þ\u000f÷ÿ\f\u0006x\u0000\u0000\u0000\b\u0000\u0000\u0000\u00001Ã\u0000\u001c\u0003†\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\f\u0010À\u0002\u0001 aŸ\u0001ðøƒ\u000f\b\u0018\u0003\u00040\u0000€L\u0018fqÌæ#\u000ec\u0006\u0000Ã\f\u0000 3\u00068\f`0\t‚\fC\u0000?ƒü\b\fAü\u0001\u0018\f\u0002Áƒ\u0018À\f0À\u0002\u0002\u0018`\u000fÃÁààÆ \u0003\u00060\u0000†\u0018\u0006\u0010<\u001e<\u0018\u0000˜\u0000ÁŒ\u0000 †\u0003\u0004\u0001\u0000‰†\u00006\u00000c\u0000\b01€Ã\u0000@\"0À\u0007\u0000\f\u0018À\u0002\f\u0004`9Æ3\u0018†9ÁÀ\u0003\u001c0\u0000ƒ\u0001˜\u0007‘øü Ãà`\u0000þ\u000fð!€`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Add Device": "\u0000|\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0005€\u0001@\u0000À\u0000\u0000\u0000\u0000\u0010\u0010\u0001\u0000\u0003ÿ 0Ú\u0000\u001c\u0007ü\u0000\u001c\u0001ƒ€\u0010~?ø\u0003\f€\u0003€ÿà\u000fø\bÿ\u0003\u0004 \u0000\u00000À\u0000p\u0000\f\u0001ÙÀ\b\u0010ÿB\u0000\u0000\u0002\f\u0000\u001c\u0000\u0000À1\u0006\u0000ƒ\u00014'ÿà À\u0003À\u0000\u0018\u0006\u0010`\u000fð3Bþ\u0006\u0004\u0000ü\u0000\u0001€A\u00028€\u00034 \u0018\u0000``<À\u00000\u000400ˆ\u00003B\u0001€\u0006\u0006\u0007\f\u0000\u0007\u0000Ã\u0003\bÿƒ4 \u0018\u0000@ \u0000À\u0000x\f0 ˆ\u0018#B\u0001€\f\u0003\u0000\f\u0000\u001cÀB\u0006\b‚4 0\u0000À0\u0000À\u0003†\u0006`àøbB\u0007\u0000\u0018\u0001€\f\u0000p0<\u001c\f\u0000\u0006'áà\u0003€\u001c\u0000À\u001c\u0001Ï\u0003ÿðBb\u0018\u0000\u0010\u0000€\f\u0001€\u0018\u0000@1ÿÌd \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000œ\u0000", + "LCD Timeout": "\u0000Ž\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000`\u0002\u0000\u0000\u0000\u00000\u00000\u0006\u0000>\u000fà\u0001€\u0000\u0003€\u0018\u0000ÿü\u0000À\u0000À\u0018\u0003Þ1à\u000fü\u0000\u001c\u0000`\u0003ÿðø\u0003\u0000`\u0018\u0000ÁÀ?ð\u0000à\u0003\u0000\u0000\u0000Ãÿà\f\u0001€`\u0003\u0003\u0001€\u000e\u0000\f\u0000\u0000†\f\u0001€0\u0006\u0003\u0000\f\u0006\f\u0006\u0000x\u00000\u0000\u000300\u0006\u0000à\u0018\f\u00000\u0018f\u0018\u0007à\u0001†\u0000\tÀÀ\u0018\u0003ø`0\u0000Àc\u000eÀy€\u0006\u0018\u0000.\u0003\u0000`\fù€À\u0003\u0001€\u000f\u0003†\u0000\u00180\u0000\u0004\u0001€0&\u0003\u0000\f\u0006\u0000\u0018\u0000\u0018\u0000ÀÀ\u0002\u0000\u0000\u0004\u0000À\u0018\u0006\u000000\u0000À\u0000`\u0003\u0001€\u0018\u0000\u00000\u0003\u0000`\u0018\u0000ÁÀ\u0006\u0000\u0001€\b\u0006\u0000`\u0000\u0001€\f\u0001€=ã>\u0000p\u0000\u0006\u0000ü\u0007\u0000\u0000\u001c\u00000\u0007ø>\u000fà\u0007€\u0000\u0018\u0003ÿ0x\u0000\u0003à\u0000À\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000`\u0000\u0000A€\u0000\u000e\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Highlight BG": "\u0000r\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\f\u0001€\u0000\u0000\u0000\u0000Ã\u0000\u0000p\u001fü\u0000\u0007\u0000`\u0001ü\u0003ð0À\u00008\u0007þ\u0000\u0003€\u0018\u0000cƒÞ\f0\u0000\u001c\u0000\u0000\u0000\u0001À\u0006\u0000\u0018!€‚\f\u0000\u001c\u0000\u0000\u0000\u0001À\u0001€\u0006\b`\u0000ƒ\u0000\u000f\u0000?ü\u0000ð\u0000p\u0001†0\u0000`@\u000fÀ\u000fÿ€ü\u0000\u001fÀ\f\u0000\u0018\u0018\u000f0\u0000\u0000Àó\u0000\u0006|\u0018c\u0007†\u0006\u0007\f\u0000\u00000pÀ\u0001\u0006\fÀa\u0000€\u0003\u0000\u0000\u0018\u00000\u0000`\u0001ƒ0\bÀ0\u0000À\u0000\u000e\u0000\f\u0000\u0018\u0000`Æ\u00020\f\u00000\u0000\u0007\u0000\u0003\u0000\u0006\u0000\u00181€˜\u0001€\f\u0000\u0007€\u0000À\u0001€\u00068=î\u0000p\u0003\u0000\u001f€\u00000\u0000`\u0001ü\u0003ñ\u0000\b\u0000À\u0007\u0000\u0000\f\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "LCD Brightness": "\u0000Ã\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0001€?ü\u0000\u0001`\u0000\u0000\u0000\u0000\u0000\u0005\u0006\u0000\u0000\u0000À\u0000\u0000\u0000þ\u0000\u0000\u0013ÿ†\u0001ÿÐ\u0000\u0000\u000fø\u0000\u0000àÀ\u0000\u00008\u0000à\u000f˜@ÿ€\u0012\u0000À0?ø\u0000\u0000\u0003ÿ€ÿø\u0018\u0000\u0000\u000e\u0000ÿ\u0012\b\f`\u0006@\u001fþ\u0000\u0000\u0000\u0000€\u0000`\u001fþ\u0003\u0000\u0000\u0003€;8\"A\u0000\u00180‚\u0000@\u0000\u0000\u00000\u0000\f\u0000\u0000À`\u0000\u0001À\fA„Oà\u0006\u00033\u0010ø?ÿ\u0000\u001c\u0000\u0003\u0000\u0000\u0018\f\u0000\u0000x\u0003\b0‰ü\u0001€&b\u0000\u0000\u0007ÿà\u0007\u0000\u0000`\u0000\u0003\u0001€ ?\u0000A\u0002\u001f €ÿ\u0001Ú@\u0000\u0000\u0003\u0000\u0001À\u0000\u0018\u0000\u0000À0\f\u001e`\b`b$\u0010?ð;X~\u0000`\u0000ø\u0000\u0007\u0000\u0000\u0018\u0006\u0003\u0007\f\u0003\f\fDÂ\u000e\u0003\u0013ò\bH`\f\u0000s\u0000\u0000ð\u0000\u0006\u0000ÀÀ\u0001€a\bŸÁ\u0000\"bÁ\t\f\u0001€\f`\u0000s\u0000\u0001À\u0018p\u00000\u0004 a\u0012\b\u000f\u0004Ìp??€`\u0000\f\u0000\u001c0\u0000p\u0003\u001c\u0000\u0006\u0000Ì\u001c>A\u0001ñ™Ž\u0004$0\u001c\u0000\u0001€\u0007\u0003\u0000\u001c\u0000n\u0000\u0000À\u000f\u0007\u0004\u0018 #r3p„†\u000f\u0000\u00000\u0003€0\u001e\u0000\u000f€\u0000\u0018\u0000瀂\u0004\u0007üÆÇ\u001fŸÁ€\u0000\u0006\u0000`\u0006\u0007\u0000\u0000€\u0000\u0003\u0000\u0000@\u0000C€~\u0010Ð\"\u0012\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Connect device\nto add to\nwhitelist": "\u0000H\u0011\u0000\u0010\u0010\u0002\u0006\u0001\t \u0000\u0000\u0010\u0010\u0006\u0006\u0001\u0019 üü\u0011ÿ„á\u0015`Č\u0019ÿ\r†\u0001=pČ|B\t\u0006\u0007ùpüü\u0010F\u001f?Ã\t \u0000\u0000\u0011ÿž\u0000\u0003\u0015x\u00020\u0010 \u0005\u0000\u0003½øÿþ\u001c \r¿ãÁ\b\fÀ{ÿ©gI øxpf\u0018ée?ùÀ\u000e\u0010Æ\u0000\t\u0005\u0018€|ü\u0010Æ\n™\u0001\u001c°DŒ\u0010|\n™!\u001eàDŒ\u0010\u001c\u001a1!2ÈDŒ\u0010÷\u0010aá#ø|üpÁ\u0000\u0000\u0001\"0DŒ", + "Wake on BTN3": "\u0000\u000e\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000`À\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0003øÿæ\u0006?\u00180`\u0000€\u0000\u0000\u0000\u0000\u0000\u0001Ž\u0007\u0003ƒ\u001fÌ<0\u0000@\u0000\u0000\u0000\u0000\u0000\u0000Á\u0001\u0001Á€6\u0016\u0011ð ÃÀ\u0003à¼\u0000`€€°À\u0019‰\u0018Î\u0011‡0\u0003¸s\u00000À@L`\u0018Č\u0003\t‚\f\u0003\u00060À\u001fÀ &0xff\u0000…ƒ\u0006\u0001ƒ\u0010`\f0\u0010\u0011˜\u000e22\u000fÁÿ\u0000Áˆ0\u0006\f\b\bÌ\u0001\u000b\f!àÀ\u0000`Ä\u0018\u0003\u0006\u0004\u00046\u0000ƅŒ\u0010˜`\u00000b\f\u0001ƒ\u0002\u0002\u001b\u0000cÃÆ\u0018F\u0018\u0000\u00181\u0006\u0000Á\u0001\u0007€0ÁÜ!Žp\u0007pƒ\u0000c€€Ïð``ò\u0010að\u0001ðA€?€@@ãð", + "Wake on BTN2": "\u0000\u000e\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000`À\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0003øÿæ\u0006\u001f\u00180`\u0000€\u0000\u0000\u0000\u0000\u0000\u0001Ž\u0007\u0003ƒ?Ì<0\u0000@\u0000\u0000\u0000\u0000\u0000\u0000Á\u0001\u0001Á€f\u0016\u0011ð ÃÀ\u0003à¼\u0000`€€°À\u0019‰\u0018Î\u0011‡0\u0003¸s\u00000À@L`\bČ\u0003\t‚\f\u0003\u00060À\u001fÀ &0\fff\u0000…ƒ\u0006\u0001ƒ\u0010`\f0\u0010\u0011˜\f22\u000fÁÿ\u0000Áˆ0\u0006\f\b\bÌ\f\r\u000b\f!àÀ\u0000`Ä\u0018\u0003\u0006\u0004\u00046\f\u0006…Œ\u0010˜`\u00000b\f\u0001ƒ\u0002\u0002\u001b\f\u0003ÃÆ\u0018F\u0018\u0000\u00181\u0006\u0000Á\u0001\u0007Œ\u0000ÁÜ!Žp\u0007pƒ\u0000c€€Î\u0000``ò\u0010að\u0001ðA€?€@@çü", + "Time Zone": "\u0000i\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0001€\u0000\u0001€\b\u0000\u0000\u001b\u0000\u0000\u0000\u0000\u0000À\u0000\u0001À\f\u0000\u0000\u0006\u0000\u0000\u0006\u0000\u0000ÿÀ\u0001À\u0006\u0000\u0010\u0006\u0000\u0000\u0003À\u0000à\u0001À\u0006\u0000\f\u0003\u0000\u0000\u0000p\u0000``\u0003€\u0003\u0000\u0003\u0001€\u0000\u0000\f\f`0\u0003À\u0001€\u0001€À\u0000\u0000\u0000\u0004f\u0018\u0007à\u0001†\u0000àÀÿø\u0000\u0006aØ\u000f0\u0000Ã\u0000 `ü\u0000\u0006\u0000<\u000e\u0018\u0000`À\u00000\u0000\u0000\u0000\u0003\u0000\f\u0000\f\u0000``\u00000\u0000\u0000\u0000\u0003\u0000\f\u0000\u0006\u00000\u0018\u00000\u0000\u0000\u0000\u0003\u0000\f\u0000\u0003\u0000\u0010\f\u00000\u0000\u0000\u0000\u0007\u0000\u001c\u0000\u0001€\u001fÿ\u0000p\u0000\u0000\u0000\u001f\u0000<\u0000\u0000À\u001fùð\u0000\u0000\u0000~\u0000\u0018\u0000\u0000`\u0000\u0000@À\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Wake on Touch": "\u0000Ÿ\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0003\u0000`\u0000\u0000À\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u000e\u0000À\u0000\u0001€À\u0000\u0001€\u0000\u0000\u0000\u0007ãÿÀ\u0000\u0000\u00008\u0001þ\u0000\u0003\u0001à\u0000\u0007þ\u0000\u0000\u0003þ\u000fÿ€\u0000\u0000\u0000à\u0007þ\u000fÿàà\u0000\u000fü\u0000\u0000\u00060\u0018\u0003\u0000\u0000\u0000\u0007\u0000\u0018\f\u000fÿ€``00\u0002\f\u0000 0\u0006\u0003ÿ\u0000\u001e\u00000\u0010\u0000x\u0000\u0000€À`f\u0018\u0000@`\f\u0007þ\u0000ü\u0000À`\u0001ð\u0000\u0003\u00030Àf0ÿÀ\u0018\u0000À\u0007˜\u0003\u0000À\u0007`\u0000\f\f;\u0000Ì@ÿü€0\u0001€\u001c0\u0000\u0003\u0000\u001cÀ\u0000\u0018\u0000\u001e\u0000Á€\u0006\u0000\u0000@\u0003\u0000\u0000`\u0000\u0006\u0000q€\u0000`\u0000\u0018\u0000\u0003\u0000\f\u0000\u0001€\u0006\u0000\u0000À\u0000\u0018\u0003ƒ\u0000\u0001€\u0000`\u0000\u000e\u0000\u0018\u0000\u0006\u0000\f\u0000\u0001€\u0000`\u000e\u0006\u0000\u000e\u0000\u0001€\u00008\u0000`\u00008\u0003ÿÀ\u0003\u0000\u0003€\u0000\f\u0000ø\u0000\u000e\u0000\u0000à\u0001À\u0003à\u0007ÿ€\u0006\u0000\u000e\u0000\u0000ø\u000fÀ\u0000x\u0000\u000f€\u000e\u0000\u0007\u0000\u0000\u0000\u0000\f\u00000\u0000\u0001à\b\u0000\u0000À\u0000\u0018\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Twist Timeout": "\u0000±\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\f\u0000\u0001€\u0000\u0001€\b\u0000\u0000\u0000\u0000À\u0000À\u0000€\u0000\u0001ÀÀ\u0006\u0000\u0000À\u0000\u0001À\f\u0000þ\u0000`\u0000`\u0000@À\u0001Àð\u0003\u0000\u0000ÿÀ\u0001À\u0006\u0000?ÿ\u0007ÿ€0\u00060`\u0001À\u00000\u0001€\u0000à\u0001À\u0006\u0000\u0000\u0001‡ÿÀ\u0018\u0003\b0\u0003€\u0000\u0018\u0000À\u0000``\u0003€\u0003\u0000\u0000!ƒ\u0000`\f\u0000Æ\u0018\u0003À\u0000\u0018\u0000p\u0000`0\u0003À\u0001€\u0000\u0019€0\u0007\u0000`\b\u0007à\u0000\f\u0000?€f\u0018\u0007à\u0001†\u0000\tÀÀ\u0018\u0003ø\u0018\f\u000f0\u0000\f\u0000\u0019ðaØ\u000f0\u0000Ã\u0000\u0005À`\f\u0001Ÿ\u0000\u0006\u000e\u0018\u0000\u000e\u0000\f\b\u0000<\u000e\u0018\u0000`À\u0002@\u0010\u0006\u0000À€\u0006\u0000\f\u0000\u0007€\u0006\u0000\u0000\f\u0000\f\u0000``\u0001\u0000\u0000\u0002\u0000`\u0000\u0007\u0000\u0006\u0000\u000e`\u0003\u0000\u0000\f\u0000\u0006\u00000\u0018\u0001€\u0000\u0003\u00000\u0000\u0007\u0000\u0003\u0000\u000e\u0018\u0001€\u0000\f\u0000\u0003\u0000\u0010\f\u0000À\u0000\u0003\u0000\u0018\u0000\u000f\u0000\u0001€\u000e\u0006\u0000À\u0000\u001c\u0000\u0001€\u001fÿ\u0001À\u0000\u0007\u0000\f\u0000>\u0000\u0000À\u001c\u0001€`\u0000<\u0000\u0000À\u001fùƒÀ\u0000\u001f\u0000\u0006\u0000\u001c\u0000\u0000`\f\u0000À0\u0000\u0018\u0000\u0000`\u0000\u0000A€\u0000\u000e\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Wake on Twist": "\u0000°\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0001€0\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0003\u0000\u0003\u0000\u0000\u0000\u0000\u0003€0\u0000\u0000`0\u0000\u0000@\u0000\u0000à?à\u0003\u0000ø\u0000\u0000\u0000\u0007\u0000?À\u0000`<\u0000\u0000@À\u0001Àð\u0003\u0000ÿø\u0000\u0000\u0000\u000e\u0000àÿþ\u000e\u0000\f`À\u0003€\u0000`\u0003\u0000À\u0018\u0000\u0000\u00008\u0000À`ü\u0003\u0003\f À\u000e\u0000\u0000`\u0003\u0000À\u0018\u000fü\u0000x\u0000À@\u0001à\u0000\u0002\u00060À\u001e\u0000\u0000À\u0003€À\u0018\u000fü\u0001ø\u0001€À\u0003à\u0000\u0006\u0006\u0000€~\u0000\u0000À\u0003øÀ\u0018\u0000À\u0007˜\u0003\u0000À\u0007`\u0000\f\u0003\u0001æ\u0000\u0001€\u0003>@\u0018\u0000À\u000e\u0018\u0000\u0001€\u000e`\u0000\f\u0000\u0001ƒ†\u0000\u0003€\u0003\u0002\u0000\u0010\u0000À\u0000\u0018\u0000\u0001€\u001c`\u0000\u0018\u0000\u0003\u0000\u0006\u0000\u0003À\u0003\u0000\u00000\u0000À\u0000\u0018\u0000\u0003\u0000p`\u00000\u0000\u0007\u0000\u0006\u0000\u000e`\u0003\u0000\u0000`\u0000À\u0000\u0018\u0000\u0006\u0000à`\u0000à\u0000\u000e\u0000\u0006\u0000\u001c0\u0003\u0000\u0001À\u001fþ\u0000\u0018\u0000\u001c\u0000\u0000`\u0007À\u0000<\u0000\u0006\u00008\u0018\u0003\u0000\u000f€\u001fþ\u0000\u0018\u00008\u0000\u0003à?\u0000\u0001ð\u0000\u0006\u0000à\f\u0003\u0000\u000e\u0000\u0000\u0000\u0000\u0018\u0000`\u0000\u0003À\u0010\u0000\u0001À\u0000\u0006\u0000À\f\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Wake on BTN1": "\u0000\u000e\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000`À\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0003øÿæ\u0006\u001e\u00180`\u0000€\u0000\u0000\u0000\u0000\u0000\u0001Ž\u0007\u0003ƒ\u001f\f<0\u0000@\u0000\u0000\u0000\u0000\u0000\u0000Á\u0001\u0001Á†\u0016\u0011ð ÃÀ\u0003à¼\u0000`€€°ÀÁ‰\u0018Î\u0011‡0\u0003¸s\u00000À@L``Č\u0003\t‚\f\u0003\u00060À\u001fÀ &00ff\u0000…ƒ\u0006\u0001ƒ\u0010`\f0\u0010\u0011˜\u001822\u000fÁÿ\u0000Áˆ0\u0006\f\b\bÌ\f\r\u000b\f!àÀ\u0000`Ä\u0018\u0003\u0006\u0004\u00046\u0006\u0006…Œ\u0010˜`\u00000b\f\u0001ƒ\u0002\u0002\u001b\u0003\u0003ÃÆ\u0018F\u0018\u0000\u00181\u0006\u0000Á\u0001\u0007€ÁÜ!Žp\u0007pƒ\u0000c€€ÀÀ``ò\u0010að\u0001ðA€?€@@ãü", + "Log": "\u0000!\u0011\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0003\u0005¿ü\u0001¿þ\u0001ÿL\u0003\u0000ÿÆ\u0001€ÀC\u0000ÀÀa€``0À0`\u0010`\u0018\u0000\u00180\f\u0000\u0018\u0018\u0006\u0000\u001c\f\u0003\u0000\u001c\u0007ÿ€\u001c\u0003ÿÀ<\u0001\u0000 \u0018\u0000\u0000\u0000\u0000\u0000\u0000", + "Wake on FaceUp": "\u0000”\u0010\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\f\u0018\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 0\u0000`Á€\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0002\u0003\u0000\u0006\u001e\u0018\u0000 \u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000 0\u0000aa\u001f\u0002\f<\u0000>\u000bÀ\u0006\u0003à\u001e\u0007‚\u0003\u0017ƒ\u00121œ#\u000e`\u0007pæ\u0000`3‡1Ì 1Ì1#\u0000Â`ƒ\u0000ÁŒ0\u0007ð\u0018@\u0010b\u0003\u0018c30\u0004,\u00180\f\u0018ƒ\u0000`\u0000Œ\u0003\u0006 1\u000222\u000fÁÿ\u0000Áˆ0\u0006\u0001øÀ?â\u0003\u0010!¡a„<\u0018\u0000\f\u0018ƒ\u0000`0Œ\u0003\u0000 1\u0002\u001a\u00160Ba€\u0000Áˆ0\u0006\u0006\bÀ0\u0003\u0002\u0018!áã\f#\f\u0000\f\u0018ƒ\u0000`a„\u0001€0a†\f\u001c9Â\u0018ç\u0000w\b0\u0006\u00078s\u001cáÞ\u001cÀÀÁä Ãà\u0003àƒ\u0000`<à|\u000fx\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000", + "Twist Max Y": "\u0000š\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000 \u0000\u0000p\u001fð\u0001€\u0007ÿÀ\u0000\u0000\u0006\u0000\u0007ü\u0018\f\b\u0018\u00008\u000fþ\u0000`\u0001ÿø\u0000\u0000\u0001þ\u0003ÿƒ\u0006c\u0006\u0000\u001c\u0000\u0003\u0000\u0018\u0000\u0000\f\u0000\u0000\u0000ÿÀ\u0000Àc\u0018A€\u001c\u0000\u0000À\u0006\u0000\u0000\u0003\u0000 À`0\u00000\u0018Ã\u0018`\u000f\u0000\u0000`\u0001À\u0000\u0001€Ì0\u0018\b\u0000\u0018\u0003`À\u0010\u000fÀ\u0000\u0018\u0000\u0000\u0000À\u0019Œ\f\u0006\u0000\u0006\u0000p\u0018\f\u000f0\u0000\f\u0000\u0019ð\u001c`\u0006b\u0006\u0001€\u0003\u0000\u001c\u0000\u0003\u0007\f\u0000\u0007\u0000\u0006\u0004\u0003¸\u0000Á€\u0000À\u0001À\u0002\u0000\u0001€\u0003\u0000\u0001à\u0001€\u0000<\u0000\u0000`\u00000\u0000x\u0000€\u0000à\u0000À\u0001Ì\u0000`\u0000\u0006\u0000\u00008\u0000\u0018\u0000s\u0000 \u0000p\u00000\u0000á€\u0018\u0000\u0000À\u0000\u001c\u0000\f\u00008`\b\u0000x\u0000\f\u0000p0\u0006\u0000\u0000\u0018\u0000\u000e\u0000\u000e\u0000\u001c\f\u0002\u0000ø\u0000\u0003\u0000p\u0006\u0001€\u0000\u0003\u0000\u001f\u0000\u0007\u0000\u001c\u0001€€8\u0000\u0000À\u0018\u0001€`\u0000\u0000@\u0006\u0000\u0003\u0000\u0006\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Utilities": "\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001fü\u0000\u0000\u0000ÀÀð\u0000\u0000\u0000\u0000\u000fþ\u0000\u0000\u0000ÿà\u0000\u0000\u0006\u0006\u0003ÿ€\u0000\u0000\u0000\u0000ð\u0000\u0000\u0000\u0000\u0000\u0000€00\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\u0000\f\u0001€\u0000\u0000\u00000\u0000\u0000\u0000\b\u0000\u0000\u0003ÿð\u0001À\f\f\u000fÿÀ\u0007\u0000\u0000\u0000\u0000@ü\u001fÿ€\u001c\u0000``þ\u0000p\u0007ÿÀ\u0002\u0003ÿà\u0003\u0000\u0001À\u0003\u0003\u0000\f\u0000\u0007\u0000?þ\u0000\u0010\u0000\u0000\u0000\u0018\u0000>\u0000\u0018\u0018\u0000`\u0000ø\u0000\u0000\u0000\u0000€\u0000\u0000\u0000À\u00070\u0000ÀÀ\u0003\u0000\u001cÀ\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0006\u00001€\u0000\u0006\u0000\u0018\u0000Æ\u0000\u0000\u0000\u0000 \u0000\u0000\u0000`\u0000\f\u0000\u0000`\u0001€\u00000\u0000\u0000\u000fÿà\u0000\u0000\u0007\u0000\u0000`\u0000\u000e\u0000\u001c\u0000\u0001€\u0000\u0000?ÿ\u0000\u0000\u0000ð\u0000\u0003\u0000\u0001à\u0003À\u0000\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0018\u0000\f\u0000\u0018\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Clock Style": "\u0000Ž\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0006\u0000\u0000\u0006\u0000\b\u0000À\u0001ÿà\u0000\u0000\u0003\u0000\u0003þ\u0000\u0018\u0000\u00008\f`\u0003ü\u0007ÿ€\u0000\u0000\u000fð\u001fü\u0000ÿÀ\u0001À1€\u001fø\u0018\u0006\u0000\u0000\u0000à\u0000`\u0003ÿ\u0000\u000e\u0000Æ\u0000À``\u0018\u0001\u0006\u0003\u0001€\u0001€\u0018\u0018\u0000à\u0003\u0018\u0003\u0001\u0001€`f\u0018\f\u0004\u0000\f\u0000À`\u0007€\f`\u0018\f\u0006\u0001€Ì``0\u00000\u0006a€~\u00001€À0\u0018\u0006\u00031\u0003\u0000À\u0001€0ì\u0007˜\u0000Æ\b\u0001€`\u0018\u0006\f\u0000\u0006\u0000\u000e\u0000\u0000ð8`\u0003\u0018`\u0006\u0001€`\u00000\u0000\u0018\u0000<\u0000\u0001€\u0001€\fc\u00000\u0006\u0001€\u0001À\u0000À\u0003˜\u0000\f\u0000\u0006\u0000!˜\u0001€\u0018\u0006\u0000\u000e\u0000\u0006\u0000\u001c0\u0000`\u0000\u0018\u0001†à\u001c\u0000ø\u0000p\u0000p\u0000à`\u0007\u0000\u0000`\u000e\u001e\u0000à\u0001ÿà\u000f€\u0003€\u000e\u0000Àx\u0000\u0001€pp\u0006\u0000\u0004\u0000€0\u0000\u0018\u00000\u0003\u0001€\u0000\u0006\u0000€€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Rewrite Settings": "\u0000h\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0006\u0000À\u0001\u0003à\u0003\u0000ÀÀ?ø\u0000\u000e\u0000À\u0001‚`ÿþÀÀ?ð\u0000\u001c\u0000À\u0007⠀\u0006ÀÀ\u0000\u0000\u00008\u0000À\u0000\u0006 €\u0006ÀÀ\u0000\u0000\u0000à\u0000À\u0003Æ \u0000\u0000ÀÀø\u0001à\u0000à\u0000\f8øÀÀü\u0007à\u0000þ\u0000\u0000\u0000\u0003\u0000ÀÀ\u0000\u0018\u001e`\u0000χÏð\u0003\u0000ÀÀ\u0000\u00188`\u0000À€\u000603\u0000ÀÀ\u00000\u0000`\u0000À\u0000\u00020#ø\u0000À\u0000p\u0000`\u0000À\u0003Ã`#\u0000\u0001€\u0000à\u0000`\u0000À\u0002Aàs\u0000\u0007\u0000\u0003À\u0000`\u0000À\u0002AÀÛ\u0000\u001e\u0000?\u0000\u0000`\u0000À\u0002CàÏü\u0018\u00008\u0000\u0000`\u0000À\u0003Þ9ƒþ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002X\u0018\u0000\u0000", + "Flatten Battery": "\u0000Ã\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0003\u0000\u001fÿ€€\u0000\u0000\u0000\u0000À\u0000\u0000\u0006\u001b@\u0000\u0001ÿÀ00\u0000\u0000\u0000`\u0000\f\u0000\u001f€\u0018\u0000\u0000\u0018\u0000ÿ€Ã \u0000\u0000?ø\u0006\u0006\u0000\u0000\u0001ÿð\u0001€\u0000x\u0003\u0007ãÿü\f`\u0018`\u0000\u0000\u0000\u0000\u0000ÀÀ\u0000\u0000?\u0000\u00061€À\u0000güð\u0000\u0018\u0002\f\u0000 À\u0000\u0000\u0018\u0018\u0000\u0000\u0000À\u0000Æ \u0018\u0000\f\u0000\u0000\f\u0000\u0006\u0000A€f\u0018?ÿ\u0003\u0003\u0000\u0000\u0000\u001f\u0000\fÌ\u0002\u0000\u0001€\u0000\u000f€\u0001€\u0018\u0010\u0006c\u0007ÿà``ü\u00070™€@\u00000\u0000\u00030\u0000ÿ\u0003\u0003\u0000Ì@\u0003\u0000\f\f\u000fÿƒð\u0003 \tø\u0006\u0000\u0000C\u0000?ð``\f\u0018\u0000`\u0001€\u0000\u0000að\u0000`\u0003ဌ\u0000\b`\u000e\u0003\b\u0004\u0000\u0003\u0000\f\u000000\u0000\u0000\fè\u0007ÿøp\u0018\u0011\u0000\u0001œ\u0001\u0000#\u0000À\u0000à\u0001€\u0000\u0006\u0000\u0000\u00001\u0000\u0001€\u0000\u0003\u0003 \u0000\u001d€\u000f\u0004`\u0018\u00008\u0000`\u0000\u0001€\u0000\u0000\u0004 \u00000\u0000\u0000`d\u0000\u0000`\u0001ñ˜\u0001€\u000e\u0000\u001c\u0000\u0000à\u0000\u0000\u0000€\u0000\u0006\u0000\u0000\u0018\fÿ€\f\u0000#w\u00008\u000f€\u000f\u0000\u0000x\u0000\u0000\u0000\u001fø\u0000À\u0003þ\u0001ð\u0007\u0000\u0007ü@\u0002\u0001€\u0001€\u0000\f\u0000\u0000\u0000\u0001ÿ\u0000\u0018\u0000<\u00000\u0000\u0001€\u0000~\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Debug Info": "\u0000k\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0018\u0000\u0000\u0000\u0001\u0004\f\u0000€\u0000\u0000\u0016\u0000\u0005\u0000\u0000\u0000`°€\u0010þ\u001fý\u0001†Ð\u0000\u0000\f\r\u0013ÿØCÿ€0È\u0000\u0000\u0003þ‚\u0006\u0000b\b\u0000\u0000\u0006\u0018\u0000\u0000\u0000ágü\bC\u0000\u0000\u0000ƒ\u0000\b0\u0018\b,\u0018\u000fèÃÿð\u0010`\u0019†\u0006\u0003\u0005?øÉ\u0000þ\u0006\u0004\u0001˜ÀÀ` \u0000\u0019?À0\u0000ÀÀ3\u00100\b\u0014\u0000\u0003gø\u0006\u0000\u0018\u0018\u0003\u0006\u0000\u0003\u0000ø~‚\u0000À\u0002\u0001\u0000\u0000À\u0000À\u0011\u0003\u0002\u0016@\u0018\u0000À0\u00008\u00008\u0002?àBX\u0006\u0000\u0018\u0006\u0000\u000e\u0000\u000e\u0000D\fN\u0001À\u0006\u0000`\u0003€\u0003€\bÿ\bÀð\u0001À\u000e\u0003à\u0001à\u0001\u00100!<\u0018\u0000\u0010\u0000€`\u00000\u0000\"\u0006\u0004,À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004C€…\b", + "Storage": "\u0000Y\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000À\u0000À\u0000\u0000\u0000\u0000\r‡ü\u0000`\u0000`\u0000\u0000\u0000\u000e\u0003Gÿ\u00000\u00000\u0000\u0000\u0000\u0003À€\u0003\u0000\u0018\u0000\u0018\u0000\u0000\u0000\u0000 \u0000\u0001€\f\u0000\f\u0000\u0000\u0000\u0000\u00000\u0001€\u0007\u0000\u0006\u0000\u0000\u0000\u0001€\u0018\u0000À\u0003ø\u0003\u0000Cÿàð\u0018\u0000À\u0001Ÿ\u0001€aÿð\u001c\u001c\u0000à\u0000À€À`\u0000\u0000\u0000\u001c\u0000x\u0000`\u0000``\u0000\u0000\u0000\f\u0000æ\u00000\u00000à\u0000\u0000\u0000\u001c\u0000á€\u0018\u0000\u0018à\u0000\u0000\u0000\u001c\u0000à`\f\u0000\rÀ\u0000\u0000\u00008\u0001À\u0018\u0006\u0000\u0007À\u0000\u0000\u0000ø\u0000À\f\u0003\u0000\u0001\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Reset Settings": "\u0000|\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0003à\u0003\u0000\u0000\u0000\u0000\u0003\u0000`\u0000\u0000\u0000\u0003\u0000\u0018&\u000fÿà\u000e\u000000\u0006\u0000\u0000\u0000\u00000\u0007⠀\u0006\u0007ü\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000\u0000b\b\u0000`ìà00\u0006\u000e\u0000\u0000\u00000\u0003Æ \u0000\u0000\u0018ƒ\u0003\u0003\u0003ÿð\u0004\u0018\u0003\u0000\u0000Çÿƒ\b000?\u0003\u0006a€8\u0000\u0000\u0000\u0003\u0000 \u0003\u0003\u0000``3\u0018\u0003ø|ÿ\u00000\u0002\u0018\u001800\u0006\f\u00031\u00003à\u000603\u0000aƒ\u0003\u0000a€\u00180\u0003\u0002\u0000#\u0002?†\u0018\u001000\u00068\u0000\u0003\u00000\u0003Ã`#\u0000!\u0003\u0000\u0003\u0000a\u0000\u0000p\u0003\u0000$\u001e\u00070\u00030p\u0000`\u0006\u0000\u0000\u000e\u00000\u0002AÀÛ\u0000\u001e\u000e\u0000\u001c\u0000`\u0000\u0001À\u0003\u0000$>\fÿÀç€\u0007€\u0007ÿ\u0000ø\u00000\u0003Þ9ƒþ\u0000 \u0000`\u0000\u001fð\f\u0000\u0003\u0000%€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Twist Threshold": "\u0000Å\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000€\u0000\u0001ÀÀ\u0006\u0000\u0000\u0000\u0001ÿ\u0000`\u0000\u0000\u0000\u000e\u0000\u0000\u0000\u0000c\u0000\u0004\f\u0000\u001c\u0007ÿ\u00000\u0000\u0000\u0000\u001fü\u0003\u0000\u0000\u0000\u0000<\u0000\u0000\u0000\u0003\u0018\u00060`\u0001À\u00000\u0001€\u0000\u0000\u0000\u0000À\u0018\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0018À0ƒ\u00008\u0000\u0001€\f\u0000\u0000\u0000\u0000\u0006\u0000À\u0000\u0004\u0018\u0000\u0003\u0001ÿ\u0000Æ\u0000Æ\u0018\u0003À\u0000\u0018\u0000p\u0000\u0000\u0000\u0000`\u0006\u0000\u00030Á€\u0018\u000fø\u00060\u0006\u0000€~\u0000\u0000À\u0003ø\u00000\u0000\u0003\u00000\u0004\fÆ\u000f\u0001€\u0000À1€\u0018\f\u000f0\u0000\f\u0000\u0019ð\u0003À\u00000\u0001€`f \u001c\u001c\u0000\u0006\u0001Œ\u0010\u0000`á€\u0000à\u0000À€\f\u0000\u0003€\f\u0006\u0001ƒ\u0000\u0001À\u001fð\fa€\u0006\u0000\f\u0000\u0007€\u0006\u0000\u0000\u0000\u0000\u001e\u0000``\u0000\u0018\u0000\f\u0000ÿ€c\u0018\u0000p\u0000`\u0000æ\u00000\u0000\u0000\u0000\u0003˜\u0003\u000e\u0000\u0001À\u0001À\u0000\f\u0002\u0019€\u0007\u0000\u0003\u0000\u000e\u0018\u0001€\u0000\u0000\u00008`\u0018à\u0000\u001c\u0000\u001c\u0000\u0000`0Ü\u0000ð\u0000\u0018\u0000à`\f\u0000\u0000\u0000\u0003€Ü\u0000\u0001À\u0003€\u0000\u0003\u0003‡€>\u0000\u0000À\u001c\u0001€`\u0000\u0000\u0000p\u0006\u0007À\u0000|\u0000ø\u0000\u001fø88\u0001À\u0000\u0006\u0000À\f\u0003\u0000\u0000\u0000\u0003\u00000\u0010\u0000\u0003\u0000\u0006\u0000\u0000À€€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Turn Off": "\u0000E\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003ÿðþ\u0000\u0018\u0000\u0000\u0000`\u0006C\u0000\u0000À\u0000\u0001ÿþ\u0012\u0010\u0000\u0006\u0001ÿè\u00100\u0017øÿ\u000fÿ^¿ Aÿð\u0000\u0018\u0004\u0000å‚\u0000<\u0000\u0000ǯ/ð\u0003à\u0000\u0006\u0001\u0000\u0001@€;\u0000\u0000cÿà\u000bü\u0003˜\u0000\u0003\u0018A\u0002Ã\u00008À\u00000ÿø\u0016H\u0007\u0006\u0000\u0003†\u0010A¢Xp0\u00008?þ\t2@\u0001€\u0007€\u0006\fÛ\u0013\u0000|\u0000ð\u0000?Ƒˆ\u0003À\u000e\u0000\u0000\u0000$\u0018\u0000\u0000\u0000\u0000\u0000", + "Compact Storage": "\u0000Ä\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0010J\u0003\u0000\u0000À\u0000 \u0000\u0000\u0000\u0003\u0000\u0003\u0000\u0000\u0000\u0000\u00006\u0000\u00000\u0000\u0001‡ 0\u0000\f\u0000\u0006\u0000\u0003þ\u00000\u00000\u0000\u0000\u0000\u0007\u0001§ÿƒÀ\u0000\u0018n\u0003ü\u0000À\u0003ýÀð\u0003\u0000\u0003\u0000\u0000\u0000\u0000<\bø\u000e\u0000\u0001†\u0000à\f\u0000?Î\u0000\u0006\u00000\u00000\u0000\u0000\u0000\u0000@\u0000\u0001€00\u0010`\f\u0006\u0000À\u0000À0\u0000`\u0003\u0000\u0003\u0000\u0000\u0000\u0000\u0000\f\u0000\u0018\u0000\u0002\u0001\u0006\u0000À@\u000e\u0000\f\b\u0000\f\u00008\u00000\u0000\u0000\u0000\f\u0000À\u0001€\u0000`00\u0018\f\u0000þ\u0000€\u0000À\u0003ø\u0003\u0000Cÿàð\u0018\u0000\u0018\u0000\f\u0003\u0003\u0003\u0000À\fø\u0018\u0018\u0000\u0018\u00003à0\f?þ\u0003ƒ€\u0001€\u0000À00\u0000\u0018\u0000À€\u0003€\u0003\u0002\u0003\u0001€\u0000\u0000\u0000p\u0000\u0018\u0000\u0018\u0002\u0001€\u0001€\f\u0000\u0010\u0018\u0000<\u00000\u000000\u0000\u0000\u0000\u0006\u0000\u0001€\u0003\u0000`\u0018\u00000\u0000À\u0003\u001f€\u000e`\u0003\u0000\u0003\u000e\u0000\u0000\u0000\u0001À\u0000\u0018\u0000à\u0006\u0001€\u0006\u0000\f\u0000#ü\u0001Ã\u00000\u00001À\u0000\u0000\u00008\u0007ÿ€|\u0000À\f\u0001À\u0000À\u0000!ð8\u0018\u0003\u0000\u0003p\u0000\u0000\u0000\u000e\u0000ø?\u0000\u0018\u0000à8\u0000\f\u0000\u0003ù\u000e\u0000À0\u0000>\u0000\u0000\u0000\u0007À\u0000\u0000\u0000\u0000€\u0004\u0006\u0000\u0000À\u0000\u001f\u0000À\f\u0003\u0000\u0001\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Reset to Defaults": "\u0000²\u0011\u0000\u0010\u0000\u0004@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006?Á\u0013ð@ø\u0000À\u0000\u0000\u0000\u0000\u0000\u00000\u0006\u0000\u0000\u0000\u00000\u0001†0ÆÄ\u0018&\u000fÿà\u0000\u0000\u0003€\f\f\u0001€\u0000\u0000\u0000\f\u0001ø„ñ\u001fˆ‚\u0000\u0018\u0000\u0000\u0007ü\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000\u0006!\u0004L@\u0006 €\u0006\u0007€\u0003³€ÀÀ\u00188\u0000\u0000\u0000À\u0001\bA\u0013ðñˆ\u0000\u0000\u0001°\u0001ˆ000?ÿ\u0000A€0\u0000‚\u0010|ü\u0000Çÿ€Î\u0000Â\f\f\f\u000fÀÁ˜`\u000e\u0000m„\u00111\u0000\u0000\u0000\f\u0000aÀ \u0003\u0003\u0000``3\u0018\u0003ø>a\u0004LGÏð\u0003\u000008\b``ÀÀ\u00180\fÄ\u0000ϛ˜Aó\u0010\u0001Œ\fÀ\u0018\u0006\u0006\u0018\u001800\u0006\u0018\u0001ƒ\u00000 ´0Dü\u0000#\u0002?€\u0000Á†\u0004\f\f\u0001Ž\u0000\u0000À\f\u0000'\f1±\u000f\r€Œ\u0000\u0000\u0018!\u0003\u0000\u0003\u0000a\u0000\u0000p\u0003\u0000\bÃ\u001füBAàs\u0000\u0000\u0003\fÁÀ\u0001€\u0018\u0000\u00008\u0000À\u0002`À\u0002\u0010p6À\u0000\u0000aàà\u0001À\u0006\u0000\u0000\u001c\u00000\u0000¸àl„$>\fÿÀ\u0000\u00009à\u0001à\u0001ÿÀ>\u0000\f\u0000,81g\u000fxæ\u000fø\u0000\u0000\u0000 \u0000`\u0000\u001fð\f\u0000\u0003\u0000\b\u0000\b\u0011ÂX\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Second": "\u0000E\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0006\u0000\u0000\u0000\u0000À\u0003\u0000\u00000\u0001€\u0000\u0006\f\u0018\u0000\u0001€\u000f\u0000\u00000°ÁÁÿð\u001c\u0000\u0001‚?ÿ\u0007ÿ€00\f\u0001ø\u0018\u0003\f\u0000\u0001\u0000p\u0001€\u0010`\u0000\u0018\u0003ø\f\u0018\u0001ƒ\u0000\u0001€\u0019ða€\f\u0018\u0000\f\u0000Àƒ\u001c\u0000@À\u0000À\u0006\u0000\u0018@\u0006\u0006\u0000\f\u00000\u0000À\u0000`0\u0001À\u0001€\u0006\u0000\u0007\u0001€|\u0000\f\u0000?øpø\u001f€\u0000`\u0000À\u0003€@\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Compacting...\nTakes approx\n1 minute": "\u0000¦\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0012€À\u00000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0018z\u0003\u0000\u0000À\u0001€\u0000\u0010\u0000\u0000\u0007\u0000\u0000\u0000\u001fþ\u000f\u0000\u0000a¸\u000fð\u0003\u0000\u0006\u000fÀ@\u0000ÿü\u0000\u0000\u0000ø\u000e\u0000\u0001†\u0000à\f\u0000\u0019ÿ\u0001\u0000\u0003†\u0000\u0000\u0000\u0000\u0000`\f\f\u0004\u0018\u0003\u0001€0\u0000`\u0000\f\u0000\u00000\u0000\u0000\u0000\u0000\u0001€\u0000 \u0010`\f\u0004\u0000à\u0001€\u00000\u0000\u0001€\u0000\u0000\u0000\u0000\u0006\u0000\u0001€ÀÀ`0\u0003ø\u0006\u0000\u0000À\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0018\u0000\f\u0003\u0003\u0003\u0000À\fø\u0018\u0000\u0003\u0000\u00000\u0000\u0000\u0000\u0000\u0000`\u00000\f\f\u0000\u0006\u00000 F\u0000\f\u0003\u0000À\u0000\u0000\u0000\u0000\u0001€\u0001€ \u0018\u0000\u0018\u0000À\u0001\u0010\u00000\f\u0003\u0000\u0000\u0000\u0000\u0000\u0006\u0000\f\u0001€`\u0000À\u0003\u0000\u0006@\u0000À \f\u0000\u0000\u0000\u0000\u0000\u0018\u0000à\u0006\u0001€\u0006\u0000\f\u0000\u0019\u0000\u0003\u0001€\u0018\u0000\u0000\u0000qÿà\u001f\u00000\u0003\u0000p\u00000\u0000gü\u0006\f\u0000p\u0003\f1gÿƒð\u0001€\u000e\u0003€\u0000À\u0001ð\u000fà\u0000ü\f0Ȁ\u0002\u0004\u0000\u0002\u0000\u0010\u0018\u0000\u0003\u0000\u0006\u0000\u0000\u000e\u0000\u0000p\u0000\u00002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000p", + "Date": "\u0000 \u0011\u0000\u0000\u0000\b\bÿð\u0018\bÀ0\u0010\b€\u00100\b€\u00107ÿ€\u0010`\f€\u0010`\bÀ0ã\bÿð¡\b€\u0010!ˆ€\u0010 ˆ€\u0010 ˆ€\u0010 \bÀ0 \bÿð \bÀ0 \u0018€\u0010 x", + "Minute": "\u0000\u0011\u0011\u0000\u0000\u0000\u0002\u0010\u0003\f\u0001\u0003\u0001€a€\u001d€\u0006\u001fø\u0001\u0004\u0001‚\u0000Á\u0000Á€àÁÁàÀà\u0000\u0000\u0000", + "Connectable": "\u0000H\u0011\u0000\u0010\u0010\u0002\u0006\u0000\u0000\u0000\u0000\u0000\u0010\u0010\u0006\u0006\u0000\u0000\u00000€\u0011ÿ„çÿølŒ\u0019ÿ\r†\u0000\u0000@Æø|B\t\u0006\u0000\u0000AþÀ\u0010F\u001f?À\u0000@€\u0011ÿž\u0000\u0001ü@\u0000†\u0010 \u0005\u0000\u0001\f@üü\u001c \r¿á\f@„\u0000{ÿ©a\f@ü€pf\u0018éaŒ@Ď\u0010Æ\u0000\t\u0001ü@Äø\u0010Æ\n™\u0001\u0000@üÀ\u0010|\n™ \u0000@„‚\u0010\u001c\u001a1 \u0000@„Æ\u0010÷\u0010aà\u0000Àœ|pÁ\u0000\u0000\u0000\u0001À\u0000\u0000", + "Stay Connectable": "\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0001\u0000\u0001ø\u0000\u0000\u0000\u0000\u0001ð\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\b\u0000\u001câ\u0000\u0000\u0000\u0000=à\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0002\u0000@\u0001€\u0010\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0010\u0002\u0000\f\u0003ùð@À\u0018\u0000|\u0017‚ð\u001e\u0003ÏçÀ¼\u0010<`\f\fã\u0006\u0001€\u0007pæ\u001cØs03‡0‡1à \u0003\b`\f\u0000`Æ\u0018Ã\u0010b\u0000€\f0Ä Çá\u0000\bc\u0000`\u0003\u0006 Ä\u0019ƒ0\u0004\u0000!\u0002#\u0006\u0003ˆ\u000fÃ\u0010\u0003\u0000\u00181\u0006 Ïù€ ?\b\u0011\u001fð\f@Â\t€\u0018\u0000Áˆ1\u0006`\f\u0001\u0003\b@ˆÀ\u0000\"\f\u0010l\u0000`\u0006\fAˆ3\u0000`\b0B\u0004F\u0000\u0003\u0010aÀ\u0003\u00000b\fAŒ\u0001\u0000A†\u0018b\u0018\u000fxÜ\u000e\u0000\u000fxî\u0010b\fsŽc\u000epæ\u0010ç?\u0003Ï `\u0000\u001f\u0003àƒ\u0010`ø\u001e\u000f<…àð\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Hour": "\u0000\"\u0011\u0000\u0000\u0010\u0000\u0000\u0000\u0004\u0007çÿƒ\u0001\t\u000f'øBCˆ\u0010\u001fŸâ\u0004\u0004$\u0018Ÿñùÿà\u0000@\u0003È\u0004\u0011übÄC\u0018€a\u0010Æ\"\u0010GñøÄ\u0011\u0004r\u0011\u0004\u0018\u0000A\u0000\u0004\u0000p@\u0003\u0000\u001c\u0010\u0003€", + "No Clocks Found": "\u0000‰\u000e\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001°0\u0000\u0000\u001f\u0004\u0000\u0000\u0001\u0000\u0001ü\u0000\u0000\u0000\u0000\u0000Ü\u0018\u0000\u0000=â\u0000\u0000\u0000€\u0000À\u0000\u0000\u0000\u0000\u0000n\f\u0000\u00000\u0001\u0000\u0000\u0000@\u0000`\u0000\u0000\u0000\u0000\u00005†\u001f\u0000\u0018\u0000ƒà< À0\u0007Á\u0006/\u0003Úc\u001dÀ\u0018\u0000C¸s\u0011€\u0018\u0007pƒ\u001cý1˜0\f\u0000#\u0006 \t€\u000fæ\fAŒ3\u000eŒÌ\u0018\u0006\u0000\u0011ƒ0\u0005€\u0006\u0003\u0006 Ä\u0019ƒFf\f\u0003\u0000\bÁ˜\u0003€\u0003\u0001ƒ\u0010b\fÁ¡³\u0006\u0001€\u0004`Ì\u0001à\u0001€Áˆ1\u0006`Ðك\u0000`\u00020f\u0000˜\u0000À`Ä\u0018ƒ0h<Á€0\u0001\u00181\u0000F\u0000`0b\fA˜t\u000e;€\u000fx‡pæ!€0\u000eáÞ Çz\u0007\u000f€\u0001ðAð\u001e\u0010`\u0018\u0003à{\u0010aì", + "App Settings": "\u0000k\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0005\u0000\u0006\u0000\u0000\u0000ð\u0001€?ÿ\u0000\u0000àÀÀ\u0003€\u0018&\u000fÿçÿàÿø\u0018\u0018\u0003þ\u000fÄA\u0000\f\u0000\f\u001fþ\u0003\u0003\u0000ìà\u0001ˆ \u0001€C\u0000\u0000À``1\u0006\u001e1\u0000\u0000\u0000\fÀ\u0000\u0018\f\f\f À\f8ø\u00018\u0000\u0003\u0001\u0004\b\u0000\u0000\u0000`\u0000.\u0000\u0000À00!Ÿ?À\f\u0000\u0004€\u0000\u0018\u0006\u0006\f00\u0003\u0018\u0019€\u0000€\u0000\u0006\u0000ÀÁ†\u0004\u0000#\u0002?€0\u0000\u0001À\u0000\u0018\u0010‡†ÀF\u0000\u0006\u0000\u0000p\u0000\u0006\u00030px\u001cÀ\u0003€\u0000\u001c\u0000\u0003€<\u001c\u0012\u000e\u0006Ø\u0001à\u0000\u001e\u0000\u0001à\u0003ž\u0002CàÏü0\u0000\u0007\u0000\u00000\u0000\u0001\u0000{Ç0À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t``\u0000\u0000", + "Flattening battery - this can take hours.\nLong-press button to cancel": "\u0000Ä\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0005\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000ˆ\u0000Ãh\u0000\u0000?ø\u0006\u0006\u0000\u0000\u0000\u0007\u0000\u0000\u0000\u0007ÿ\u0000\u0000\u0000\u0018\u0000\u0018€\f2\u0000\u0000\u0003ÿ€``\u0000\u0000\u0003þ\u0003ÿÀà\u0000\u0000\u0001€\u0001\b`Ã\u0000\u0000\u0000\u0000\u0000\u0006\u0006\u0000\u0000\u0000vp?ü\u0000\u0000\u0000\u0000\u0000\u0018\u00000Œ\b0\u0000ƒ\u0000\u0000\u0000``\u0000\u0000\fA€\u0000À\u0000\u0000\u0002\f\u0001€\u0006\t€ƒ\u0000Ì0þ\u0006\u0006\u0000\u0000\u0001„\u0018\u0000\f\u000fÿ\u00030À\u001c\u0000`ð\u0018\u0010\u0006c\u0007ÿà``ü\u0010@€\u0000Àÿø\u0019Œ\u0001ü\u000e\u000e\u0001€f \u0001€\u0006\u0006\u0007ÿÁ\f\f\u0000\u0018\u0000\u0003\u0001˜€\u0019ð¡À\u0018\u0018\u0003\u0006\u0000\u0018\u0000``\u0000\u00000ÀÀ\u0001€\u00000\f\u0018\u0001\u00028\u0001\u0000€\u0000`\u0001€\u0006\u0006\u0000\u0000\u0003\f\b\u00000\u0000\u0006\u0000\u0001€\u0018\u0000 €0\f\u0000\u000e\u0000\u0018\u0000\u0000`\u0000\u0000\u0010€\u0007\u0000\u0000à\u00008\u0001€\u0002\b\u0003\u0000À\u0001À\u0003\u0000\u0000\f\u0000\u0000\u0001˜8\u0000à\u0000\u001c\u0000\u0007\u0000\u0018\u0000 ƒ`\u0006\u00008\u0000p\u0000\u0003€\u0000\u0000\u000f\u0007\u0000<\u0000\u0007€\u0000à\u0001€\u0002\b>\u0000p\u001f\u0000\u001e\u0000\u0000ð\u0000\u0000\u0000sÀ\u000f\u0000\u0007à\u0000|\u0000\u0018\u0000 Ï@\u0002\u0001€\u0001€\u0000\f\u0000\u0000\u0000\u0000\u0010\u0001À\u0000p\u0000\u0006\u0000\u0001€\u0002\u000fà\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000", + "Month": "\u0000\u000f\u0010\u0000\u000fþ\u0010\f \b@\u0010ÿá\u0000Â\u0000„\u0001\u0018\u0006?ü`\u0018€\u0013\u0000&\u0000Ø\u0005°\u000e", + "OFF": "\u0000!\r\u0000\u000fü\u001càÀ0\u0018\u0018`\u0018\f\u00060\f\f\u0003\u0018\u0006\u0006\u0001ãû\u0000Æ\u0001€c\u0000ÀÀ1€`0\u0018À0\u0018\u0018`\u0018\u000780\f\u0000ø\u0018\u0006\u0000", + "Right": "\u0000\u0011\u0010\u0000\u0000\u0000\u0000À\u0000`\u00000\u0007ÿø\u0018\u0000\u0018\u0000\f\u0000\f\u0000\u001fÿ™\u0000À€`@0 \u0018\u001fü\b\u0006", + "Widgets": "\u0000h\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0003`\u0000\u0000\u0000\u0000\u0003\u0000\u0003\u0000\u0000\u0000\u0007\u0001 \u0000\u0000\u0000\u0000\u0003\u0000ø\u0000\u0000\u0003À€\u0000\u0000\u0000\u0000\u0003\u0000ÿø\u0000\b\u0000@\u0000\u0000\u0000\u0000\u0000\u0003\u0000À\u0018\u0000\u0018\u0000\u0000À\u0000\u0000\u0004\u0018\u0003\u0000À\u0018\u0000p\f\u0000ÀÿÀf\u0018\u0003€À\u0018\u0000à\u000f\u0001€ÿÀ3\u0018\u0003øÀ\u0018\u0001À\u0003ƒ€\f\u00003\u0010\u0003>@\u0018\u0007À\u0000\u0007\u0000\f\u0000\u00180\u0003\u0002\u0000\u0010\u001cÀ\u0000\u0006\u0000\f\u0000\u00000\u0003\u0000\u00000\u0018À\u0000\u001c\u0000\f\u0000\u0000p\u0003\u0000\u0000`\u0000À\u00008\u0000\f\u0000\u0000à\u0003\u0000\u0001À\u0000À\u0000à\u0001ÿà\u0001À\u0003\u0000\u000f€\u0000À\u0007À\u0001ÿà\u000f€\u0003\u0000\u000e\u0000\u0000À\u0006\u0000\u0000\u0000\u0000\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Left": "\u0000\u0011\u0011\u0000\u0000\u0000\u0001\u0000\u0000€\u000fÿà`\u00000\u0000\u0010\u0000\u0018\u0000\f\u0000\u000fÿ\f\u0010\f\b\u0006\u0004\u0000\u0002\u0000\u0001\u0000ÿ\u0000\u0000\u0000", + "Sort Order": "\u0000F\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0006\u0004\u0000\u0000\u0000€\u0000\u0016\u0018\u0018\u0003à\u0003\f\u0001Ã!ûø\u000fà\bp\u001f\u0004\u0001\u0000\u0000\u0003ÿø\f\u0018?¿À\u0006\u0000d\u0000``\u00188\u000fø\u0001\u0001Àñ°\u0000ÀfF\u0004\u0007†l`\u0002\u0001™\u00100\u001a0\u0000€\u0010\u0002dÀÀl?ü\u0000ð\r“\u0002\u0001€À0\u0007`\u0016H\f\u0006\u0002\u0000À1€Y 00\u000fÿ\u0001†\u0000d\u0000AÀ \f\f\u0018\u0001˜\u0001þ\u0000À0p~ÿÿ\u0001à\u0003ÿÁ€ø\u0000\u0000\u0000\u0000\b\u0003\u0000\u0000\u0000", + "Side": "\u00003\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0003\u0000\u0000`\f\u0000 `\u0000\u001c\u0001ƒ\u0004\f\u0000\u0007\u00000°Á€\u0001À\u0006\bÿþ\u0000à\u0000À\u001fÿÀ<\u0000\u001c\u0000@À\u001f€\u0003ø\b\u0018\u000f0\u0000gÁ\u0003\u0003†\u0000\f\b @\u0000À\u0001€\u0000\u0018\u0000\u0018\u00000\u0000\u0006\u0000\u0003\u0000\u0006\u0000\u0003€\u0000`\u0000À\u0001à\u0000\f\u0000\u0018\u0000\u0010\u0000\u0001€\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "No app has settings": "\u0000Œ\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003€\u0000\u0010>\u00000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000(\u00001‚`ÿþ\u0000à\u0001€\u0003\u0000@ÿü\u0000\u0003ƒ\u0003~\"\b\u0000`Àÿp0\u0006\u000fÿÁÿð00\u0006 €\u0006\u000eÎ\u000fóƒ\u0000`\u0000\f\u001fþ\u0003\u0003\u00000\u0001ÿð0 \u0006\u0000\u0006\tƒÿøäؘ\u000f÷\u0007⠀\u0006y&\u0000\u000fãüà\u0001ˆ \u0001†I1˜0\f\u0000ÀÀ\u0018`\u0006\f\u0000Àƒ8\u0000\u0001€\u0018\u0000g@\u0006\u0006\u0000Ç\u0000\u0000`\u0006\u0000\u000eÀ\u0000\u0006\u0000À\u0000b\u0000\u00000\u0006\u0010\u0000\u0007\u00000\u0000\f\u0000\u0000\u0018\u0003\u0000\u0002\u0010\u0000\u0003\u00000\u0000\u0000p\u0001€\u0000`\u0000\u0000`\u001c\u0000\u0010\u0000\u0000p\u0001€\u0000\u0007\u0000\f\u0000\u000e\u0000\u0000\u0000\u0000~\u0000ÿÀ\u000f\u0000\u000fþ\u0001ð\u0000`\u0000À\u0000\u0000\u0000\u0000p\u0003þ\u0000`\u0000\u001fð\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "This will remove everything": "\u0000Æ\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000 \u0000\u0003€\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000@\u0000`\u0000\u0000€\u0002\u001f\u0000\u0000\u0000\u0001€\u0000\u0004\u0000\u0001À\u000e\u0000\f\u0000\u001fü\u0003\u000e\u0001ƒð\u0003\u0000\bL\u0000\u0000\u0007ÿø\u0000h?ÿ\u0001ÿ\u00000\u0000?ð~ü\u0006À\u000fà \u0010\u0000\u0000\u001fü\u0000x€á€\u000eÎ\u000fÿ\u0000\u0000\u0000÷\u0010\u0018\u0000\u0000?€@\u0000\u0000\u0000`\u0001°\u0000\f\u0000b\f?\u0000\u0000\u0000\u0000ð@`\u0000\u0000À\u0006\u0001\u0000\u0000\u0000\u000f€\fà\u0000`\u0003\b0\f\u0000\u0000\u0000\u0003\u0001€\u0000\u0003\u0000\u0018\u0004\u0000\u0000\u0000f\u0000aÀ\u0001€\b @0\u0000\u0000\u0000\f\u0004\u0006\u0000\u0000\f\u0000`\u0010\u0000\u0000\u0001\f\u0003\u0003€\f\u0000!ÿ\u0000€\u0000p\u0010\u0011€\u00000\u0001€À\u0000\u0000\u00040\u0018\u0006\u00000\u0001†\u0006?\u0000\u0016\u0000\u0003ÀÀD\u0000\u0000À\u0006\u0003\u0000\u0000\u0000\u0019À\u0000\f\u0000À\u0006\u0018\u0010\b\fP\u0000\u000f\u0003!\u0000€\u0000\f\u0000\u0000\u0000;\u0000\u0000\u0018\u0003\u0000\b@À 0`\u0000,\r†@\u0003\u000fÀ\u0000`\u0000\u0000\u0000\u0018\u0000\u00000\u0006\u00003\u0007\u0000€Aÿà0>\u0019ÿ\f3À\u0007\u0001€\u0000\u0000`\u0000\u0000`\u001c\u0000x8\u0003\u0003\u0001ÿ€Àpcü\u001fƒ\u0000x\u0003\u0000\u0000\u0007\u0000\u0000\u0000\u0000?\u0000ç€\u000fü\u0000\u0000\u0003\u0000\u0001€\u0000<\u0000\u0001€\u0006\u0000\u00000\u0000\u0000\u0000\u0000\u001c\u0000\b\u0000\u000fÀ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Alarm": "\u0000F\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0001ÿø\u001fü\u0000\u0000\u00000\u0007ÿàà\u0000\u0000\u0000À\u0000\u0001€\u0000\u0000\u0000\u0000\u0006\u0000\u0001\f\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0006`?ü\u0000\u0000\u0000`\u0000\u0013€ÿøü\u0003\f\u0000\\\u0000\u0000Áÿð\f0\u0001 \u0000\u0003\u0000\u0000\u00000`\u0004\u0000\u0000\u0018\u0000\u0000\u0001€0\u0000\u0000à\u0000\u0000\u0006\u0003\u0000À\u0000\u0007\u0000\u0000\u0000\u0010\f\u000e\u0000\u0000x\u0000\u0000\u0000ÿøð\u0000\u001f€\u0000\u0000\u0007þc\u0000\u0000p\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "on": "\u0000\u0010\u000e\u0000\u0000\u000eþpÀ\u0001‚\u0003\u000b\u0003\u0004\u0006\u0000\u0006\u0000\u0006\u0000\u0006\u0000\u0003\u0000\u0003€\u0001ø\u00008", + "Minutes": "\u0000\u0011\u0011\u0000\u0000\u0000\u0002\u0010\u0003\f\u0001\u0003\u0001€a€\u001d€\u0006\u001fø\u0001\u0004\u0001‚\u0000Á\u0000Á€àÁÁàÀà\u0000\u0000\u0000", + "Reset all widgets": "\u0000Ã\u0011\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0006\u0000\u0000\u0000\u0000\u0006À\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0001€0\u0000\u0000\u0000\u000f€\u0000À\u0000\u0000\u0001Àh\u0000\u0000\u0000\u0000\u0000À\u0000\u000e\u000000\u0006\u0000\u0000\u0000\u0003Œ\u0003ÿÀ\u0000\u0000\u001e\u0004\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u000fø\u0006\u0006\u0000À\u0000\u0000\u0000ÀÀÿø\u0000\b\u0000@\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0003³€ÀÀ\u00188\u0000\u0000p\u000e\u0018\u0003\u0000\u0003\u0000\u0000\u0018\u0000\u0000\u0000ƒ\u0000`\u0000Ä\u0018\u0018\u0018\u001fÿ€ ßÿã\u0000`\u0001À0\u0003\u0003ÿ\u0001˜`\u000e\u00000ƒ\u0003\u0003\u0003ð0f\u001a\u0006\u0004`\f\u0000p\u0007€Àà\u0019Œ\u0001ü\u0004\u0010 ``\f\f\u0006c\u0000À\f\u0001€\u001c\u000088\u0000À\u00031\u00003à†\u0006\f\f\u0001ƒ\u0000Ì@\u0018\u0000€0\u000f€\u0000\u000e\u0000\u0018\u00000`\u0006\u00040ÀÁ€0À\f\u0018\u0003\u0000\u0000\u0004\u00070\u0000\u0001€\u0003\u0000\u0000\f\u0000À\u0006\u0018\u001000\u00068\u0000\u0003\u000fÿ\u0000\u0001€Æ\u0000\u0000à\u0000`\u0000\u0003€\u0018\u0000B\u0006\u0000\u0006\u0000Â\u0000\u0000à\f\u0000\u0000`\u0000À\u00008\u0000\f\u0000\u0000à\u0003\u0000\fÁÀ\u0001€\u0018\u0000\u00008\u0001€\u00008\u0000\u0018\u0000\u001c\u0000?ü\u00008\u0000`\u0000ðp\u0000à\u0003\u0000\u0000\u000e\u00000\u0000>\u0000\u0003\u0000\u001f\u0000\u0007ÿ€>\u0000\f\u0000\u000ex\u0000x\u0000ð\u000fÿø\u0007\u0000\u0000`\u0003\u0000\u0000\u0000\u0000\u0006\u0000\u0001€\u0000\u0004\u0000\f\u0000\u0003þ\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Hours": "\u0000\"\u0011\u0000\u0000\u0010\u0000\u0000\u0000\u0004\u0007çÿƒ\u0001\t\u000f'øBCˆ\u0010\u001fŸâ\u0004\u0004$\u0018Ÿñùÿà\u0000@\u0003È\u0004\u0011übÄC\u0018€a\u0010Æ\"\u0010GñøÄ\u0011\u0004r\u0011\u0004\u0018\u0000A\u0000\u0004\u0000p@\u0003\u0000\u001c\u0010\u0003€", + "Enabled": "\u0000\"\u0011\u0000\u0000\u0000\u0004\u0004\u0000À\u0001\u00000\u0000`Aÿüÿ0\u0004\u0000\u0000\u001fÃ\u0000\u0002c1ÿá\fÌà\u0018Ã3h\u0006\u0001\fÓÿ†Ã0€`àŒ \u0018\u0018#\u000fþ\u0007\u0018‚\u0001ƒd €C‹\u0018 ð€ž\b\u0000\u0000\u0000\u0000", + "Repeat": "\u0000B\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\f\u0003\u0000\u0000\u0000\f\u0003\u0003\u0000À,\u0000\u0000\u0003\u0000ÀÀ0\u0006\u0000\u0000\u0000À00\f\u000e\u0000\u0000\u00000\f\f\u0003\u000f\u0000\u0000\u0000\f\u0003\u0003\u0000ß\u0000\u0000\u0000\u0003€ÀÀ>\u0000?þ\u0000þ00\f\u0000\u000fÿ€3ì\f\u0003\u0000\u0000\u0000\u0000\f\u000b\u0003\u0000À\u0000\u0000\u0000\u0003\u0000\u0000À0\u0000\u0000\u0000\u0000À\u0000`\f\u0000\u0000\u0000\u00000\u0000p\u0003\u0000\u0000\u0000\u0000\f\u0000x\u0000ÿð\u0000\u0000\u0003\u0000\u0018\u0000\u000fü\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Delete": "\u0000#\u0012\u0000\u0000\u0000\u0000\u0000\u0001\u0000@\u0000\u0001&\bø`4‰\u001b\u001e\u0000‘\"B`ÿ$HÇ\u001fä‹pr\u0004‘Éð@’,\b\u000fòDƒ\u0001\u0002HŸþ I\u0013\f\u0007ù\"d\u0004y’\u0010 ˆbb\u0004\u0011\fFA‚!8HqÄ\u0006\u0000", + "Reset": "\u0000B\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0006\u0000\u0000\u0000\u00000\f\f\u0001€\u0000\u0000\u0000\f\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000ÀÀ\u00188\u0000\u0000\u0000À00?ÿ\u0000A€0\f\f\u000fÀÁ˜`\u000e\u0003\u0003\u0000``3\u0018\u0003øÀÀ\u00180\fÄ\u0000ϰ0\u0006\u0018\u0001ƒ\u00000,\f\u0001Ž\u0000\u0000À\f\u0000\u0003\u0000a\u0000\u0000p\u0003\u0000\u0001€\u0018\u0000\u00008\u0000À\u0001À\u0006\u0000\u0000\u001c\u00000\u0001à\u0001ÿÀ>\u0000\f\u0000`\u0000\u001fð\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "goal": "\u00004\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u000f\u0000\u0000\u0000\b\u0000\u0000@\u0000\u00001€ø\u0000\u0000\u0003\u0018\u0007ÿ€\u0000\u00001€\u0000\u0018\u0000\u0000\u0003\u0018\u0000\u0001€\u0000\u00001€\u0000\u0018?þ\u0003\u0018\u0000\u0001ƒÿà1‚\u0000\u0018\u0000\u0000\u0003\u0018`\u0001€\u0000\u00001Œ\u0000\u0018\u0000\u0000\u0002\u0019€\u0001€\u0000\u0000a¸ø\u0000\u0000\u000e\u001e\u0007ÿ€\u0000\u0001ÁÀ\u0000\u0018\u0000\u0000\b\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Beep": "\u00003\u0012\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u00009€X\u0000\u0000\u0000\u00050\f\u0000\u0000\u0000\u0000æ\u0003\u0000\u0000\u0000ÿøÁà\u0000\u0000\u001fþ\u0018ð\u0000\u0000\u0000\u0000Ãø\u0000\u0000\u0000\u0000\u0018x\u0000ü\u0000\u0003\f\u0000\u000fÿ€\u0000Á€\u0000\u0000\u0000\u0000\u00180\u0000\u0000\u0000\u0000\u0006\u0006\u0000\u0000\u0000\u0000\u0001ÀÀ\u0000\u0000\u0000\u0000p\u0018\u0000\u0000\u0000\u0000\u001c\u0003ÿÀ\u0000\u0000\u001e\u0000\u001fø\u0000\u0000\u0007\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Message": "\u0000Y\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\r€\f\u0000\u0000\u00000\u0000\u0000\u0000\u000e\u0003@\u0006\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0003À€\u0003\u0000\u0000\u0000\f\u001c\u0000\u0000\u0000 \u0000á\u0000\u0004\u0018?ÿ\u0000\u0000\u0000\u00000=€3\f\u001f€\u0000\u0001€\u0018\u0007À\fÆ\u0001ƒÿàð\u0018\u0000à\u0006b\u0000Áÿð\u001c\u001c\u0000ü\u0001ƒ\u0000a€\u0000\u0000\u0000\u001c\u0000g\u0000\u0001€1À\u0000\u0000\u0000\f\u0000aÀ\u0001À\u0018@\u0000\u0000\u0000\u001c\u0000`@\u0001À\f\u0000\u0000\u0000\u0000\u001c\u0000à\u0000\u0001À\u0006\u0000\u0000\u0000\u00008\u0001à\u0000\u0007À\u0003ÿ€\u0000\u0000ø\u0000À\u0000\u0003\u0000\u0000À\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "System": "\u0000F\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000à\u0000\u001fð\u000fþ\u00000\u0001à\u0000ÿà?ø\u0000À\u0000€\u0000\u0003\u0000\u0000\u0000\u0006\u0000\u0000\u0006\u0000\f\u0000\u0000\u0000\u0018\u0001€\u0018\u0000`\u001fÿ€`\u0007€À\u0001€þ\u0003\f\u0007\u0007\u0000\f\u0000\u0006\u0000\f0\u00008\u0000p\u0000\u0018\u00000`\u0000À\u0001à\u0000`\u0001€\u000e\u0000\u001cÀ\u0001€\u0006\u0003\u0000p\u0000á€\f\u0000\u0010\f\u0007\u0000\u0007\u0003\u0000p\u0000ÿøø\u0000p\u0006\u0007€\u0007þc\u0000\u0001€\u0018\u0018\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Select Clock": "\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u00000\u0000\u0003\u0000\u0000À\u00000\u0000\u0000\u0000\u0000\u0000\u0000À\u0003\u0000\u0001€\u0000\u0018\u0000\u0006\u0000\u0001€\u0003ÿÀ\u0000\u0000\u0006\u0000\u0018\u0000\f\u0000\u0000ÿ\u00000\u0000\u000fð\u001fþ\u0000\u0000\u0000?ÀÁÀ`\u0000\u000fü\u0001€\u0000ÿÀÀ0\u0000\u0000\u0003ÿ?ÿ\u0003\u0000\u0000À`\f\u0000\f\u0006\u0006\u0001€\u0010`0\u0019ø\u0018\u0018\u0000\u0006\u0002\u0000p\u0000` 0\f\fÃ\u0001€€À\u0010`0\u0003ø\u0006\u0003\u0001€`3\u0018\u0018\f\f\u0018\u0006\u0001†\u0001€\u0019ð`\u0018\f\u0003\u0001˜€`a€0\u0018\u0000\u0018\u0000À€\u0001€`\u0018\u0006\f\u0000\u0006\u0003\u001c\u0001€\u0000À\u0006\u0000\u0000\f\u0003\u0000À\u0000`\u00000\u0018@\f8\u0000\f\u00000\u0000\u0000À\u0018\u0006\u0000\u0007\u0000\u0003\u0000À\u0000c€\u0000À\u0001€\u0000\f\u0000À0\u0000p\u00000\u0006\u0000\u0003p\u0000\u001c\u0000\f\u0000\u0001À\u0007ÿ€\u0007\u0000\u0007\u0000?ø\u001f\u0000\u0001À\u0000`\u0000\u001c\u0000?ü\u0001ð\u0000p\u0000À@\u0000\u0018\u0000\u0003\u0000\u0001€\u0001\u0000 \f\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Locale": "\u0000E\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000 ?ü\u0003\u0000\u0000\u0000\u0000c\u0001ÿà\u0018\u0000\u0000\u0000\u0003\u0018\f\u0003\u0001ÿà\u0000\u0000\u0018À`\u0018\u000fÿ\u0000\u0000\u0000Æ\u0003\u0000ÀÁ€\u0000\u0000\u00060\u0018\u0006\u000e\f\u0003ÿà1€À0``\u001fÿ\u0001Œ\u0016\u0001€\u0003\u0000\u0000\u0000\fa°\f\u00000\u0000\u0000\u0000c\u0019€`\u0001€\u0000\u0000\u0002\u0019Œ\u0003\u0000\u0018\u0000\u0000\u00000Üø\u0001À\u0000\u0000\u0003‡ƒÿÀ8\u0000\u0000\u000088\u0010\u0002\u0001€\u0000\u0000\u0000€€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Vibrate": "\u0000#\u0011\u0000\u0010\u0000\u0000\u0002\u0002?óü@D\u0000\u0004\b>€\u000fû÷×ð\u0010~\"\u0000\u001fÄÄ@\u0002ؘüI\u0013\u001dh\u000fâo-\u0011$MŶ?™‰³ƒ16`0F$Ä?؄šÀû\u0011³ÌþNr`€\u0000\u0000", + "Alerts": "\u0000E\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0003ÿð?ø\u0000\u0000\u0000À\u001fÿÿ€\u0000\u0000\u0006\u0000\u0000\f\u0000\u0000\u0000\u0000\u00000\u0000\u0010À\u0000\u0000\u0000\u0000\u0001€\u0000Ì\u0007ÿ€\u0000\u0000\u000e\u0000\u0004à?þ\u001fÿ\u0000\u0000.\u0000\u0000`ÿø\u0003>\u0001 \u0000\u0003\u0000\u0000\u0000\u0018\u0010\b\u0000\u00000\u0000\u0000\u0000À\u0000À\u0000\u0003€\u0000\u0000\u0006\u0000\u0006\u0000\u00008\u0000\u0000\u00000\u0000à\u0000\u0007€\u0000\u0000\u0001€\u001e\u0000\u0003ð\u0000\u0000\u0000\f\u0000À\u0000\u001c\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Whitelist": "\u0000{\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0018\u0003\u0000\u0000\u0003\u0000\u0000\u0000\f\u0000\u0006\u0000ü\u0000\u0007\u0000`\u0000``\u001fð\u0001€\u0000À\u000fÿ€\u0001À\f\u0000\f\f\u0007ÿ\u00000\u0007ÿá€0\u0000p\u0001€\u0001€\u0000À\u0006\u0000ÿü0\u0006\u00008\u00000\u000000\u0000\u0018\u0000À\u0000`\u0006\u0000À\u000f\u0000\u0007\u0000\u0006\u0006\u0000\u0006\u0000\u001c\u0000̀À\u0018\u0007à\u0000þ\u0000ÀÀ\u0000À\u0003ø\u0019˜\u0018\u0003\u0003Ì\u0000\u0019ð\u0018\u0018\u00000\u0000gÆ1\u0000\u0000Àá€\u0003\u0002\u0003\u0003\u0000\u000e\u0000\f\bÆ0\u0000\u0018\u00000\u0000`\u0000``\u0001à\u0001€\u0010Æ\u0000\u0006\u0000\u0006\u0000\f\u0000\u0000\f\u0000æ\u00000\u0006\u0018`\u0001À\u0000À\u0001€\u0000\u0003\u00008`\u0006\u0001ƒ\u0006\u0000ð\u0000\u0018\u00000\u0000\u0001À\u000e\u0006\u0000À\u0011à\u0000x\u0000\u0003\u0000\u0006\u0000\u0000ð\u0007\u0000`\u0018\u00008\u0000\f\u0000\u0000`\u0000À\u0000\u0018\u0000À\f\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Set Time": "\u0000X\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\f\u0000\u0000\u0000\u0000`\u0000\u0000@~\f\u0000\u0000\u0000\u0000`\u0003àÀBC\f\u0000\u0000\u0000\u0000`\u0003'øBC\f\u001c\u0000\u0000\u0000`\u0002 @~þ\u0000ƒ\u0000`\u0002 @BA~\u0006\fÃ\u0000p\u0002'ü~\f\f\u0006c\u0000\u0003à\u0000@\u0003\f\u0018\u0006b\u0000gà \u0010Gñ\f0\u0003\u0006\u0000`B'üD1\fp\u0000\u0006\u0000`\u0002 \u0018D1\f \u0000\u000e\u0000`\u0002\"\u0010Gñ\f\u0000\u0000\u001c\u0000`\u0003ã\u0010D\u0011\f\u0000\u00008\u0000`\u0003!\u0010Gñ\u000fþ\u0001ð\u0000`\u0002\u0000\u0010@\u0001\u0003þ\u0001€\u0000`\u0000\u0000p@\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000p@\u000e", + "Disable": "\u0000A\u000e\u0000\u0000\u0001\u0000\u0000\u0000€\u0010\u0000?€€\u0000\u0000@\b\u0000\u0018ð\u0000\u0000\u0000 \u0004\u0000\f\u001c\u0000\u0000\u0000\u0010\u0002\u0000\u0006\u0006\u0010||\u000bÁ\u0003Ã\u0001ˆæ3‡0‡1€Ä`\u0000Ã\fB\fÀb0\u0000!\u0002#\u0006`1\u000f\u0003ð\u0011ÿ0\u0018ã\b@ˆÀ\u0018\u0018@\u0013\u0004 D`\f\u001c \t†\u0018b\u0018\u0006|\u0011Œç\u000ea\u000esø\bü<…àð", + "BACK": "\u00001\r\u0000\u0000À\u000fƒ\u00061Àp\u001eñ†\u0018 h\u0018\u0000Æ\f\u0010&\f\u0000f\u0006\u00183\f\u00006\u0003ø\u0018†\u0000\u001e\u0001†\bc\u0000\u000f\u0000ÁŒ1€\u0007À`ÇøÀ\u0003p0f\u00060\u0001œ\u00183\u0001\u0018\u0000Ç\fq€Ç¼aÇñ€`ø0p", + "ALARM": "\u0000=\r\u0000\u0006\u0003\u0000\u0018\u000fÀp88\u0018\u0000àgƒÃ@À\r\u0003\f\u001c\u001e\u0013\u0006\u0000L\u0018`°±˜0\u0006`Ã\u0004ŒA€1\u00068$lC\f\u0001\f?2f\u0018`\u0018aŒ\b³?Ã\u0000ÿ\f0G\u001b\u0003\u0018\f\fa‚8Ø\bÀ`#\u0006\u0010†Àf\u0003\u0001˜0€<\u0003?ð\fÀÄ\u0001€", + "Timer": "\u0000D\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000`\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u000e\u000fÿ€\u0000\u0000ÿÀ\u0001Àÿü\u0000\u0000\u000fü\u00008\u0000\u0001€\u0000\u0001€\u000e\u0000\u0000\u0018\u0000\u00000\u0018\u0001à\u0000\u0003\u0000\u0000\u0006a€~\u0000\u0000`?þð\u001e`\u0003Œ\u0003ÿà\u000f\u0003†\u0000\u001dÀ\u0000\u0000\u0000`\u0000`\u0000x\u0000\u0000\u0000\f\u0000\u0006\u0000\u0003\u0000\u0000\u0000\u0001€\u0000`\u0000\u0018\u0000\u0000\u0000p\u0000\u0006\u0000\u0000À\u0000\u0000\u001e\u0000\u0000`\u0000\u0006\u0000\u0000\u0001€\u0000\u0006\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Error in settings": "\u0000j\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u000f€\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001‚`ÿþ\u0000à\u0000\u0000\u0000ÿà\u0000\u0001øˆ \u0001ÿ\u0003ÿà?ð\u0000\u0000\u0000b\b\u0000`ìàø\u0000\u0000\u0000\u0000\u000f\u0018€\u0000\u0000b\f\u0000À\u0000\u0000\u0000\u0000\u0000\f8ø0ƒ\u00000\u0001ÿà\u0000\u0000\u0000\u0000\u0000À\b @\f\u0000ü?þ|ÿ\u00000\u0002\u0018\u0018\u0003\u0000\u0000\u0006\u000fÿ€\u0018ÀÌ\u0001†\u0006\u0000À\u0000\u0001€\u0000\u0000\u00020#øa\u00000\u0000\u0000À\u0000\u0000ðØ\bÀ\b@À\f\u0000\u0000p\u0000\u0000$\u001e\u00070\u00030p\u0003\u0000\u00008\u0000\u0000\t\u0007\u0003l\u0000x8ÿ\u0000<\u0000\u0000\u0002CàÏü\u000ex\u001fÿÀü\u0000\u0000\u0000÷Ž`ÿ€\b\u0000\u0000\u00008\u0000\u0000\u0000%€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Factory Reset": "\u0000°\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u00000\u0000\u00000\u0000\u0000\u0000\u0003\u0000`\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000À\u00000\u000000\u0000\u0000\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000ø\u0000\u0000\u0000ÿ\u00000\u000000\u0000\u0000\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000ø\u0000\u0000\u0001ÿ€0\u000000\u0000\u0000\u0003\u0003\u0000`à\u0000\u0000\u0003\u0000\u0000\u0018\u001fþ\u0003\u0001€0\u000000\u0000\u0000\u0003\u0003\u0003ÿð\u0004\u0018\u0003\u0000\u0000\u0018\u000e\u000e\u0003\u0001\u00008\u000000\u0000\u0000\u0003\u0003\u0003ð0f\u0018\u0003€\u0000\u0018\u0000Œ\u0006\u0003\u0000?€00?þ\u0003\u0003\u0000``3\u0018\u0003ø\u00000\u0000˜\f\u0003\u00003à00?þ\u0003\u0003\u0000`À3\u0010\u0003>\u00000\u0000ð\u0000\u0006\u00000 00\u0000\u0000\u0003\u0003\u0000a€\u00180\u0003\u0002\u0000`\u0000€\u0000\u0006\u00000\u000000\u0000\u0000\u0003\u0003\u0000c€\u00000\u0003\u0000\u0000à\u0000€\u0000\f\u00000\u0000\u00000\u0000\u0000\u0000\u0003\u0000a\u0000\u0000p\u0003\u0000\u0001À\u0001€\u0000\u0018\u00000\u0000\u0000`\u0000\u0000\u0000\u0006\u0000`\u0000\u0000à\u0003\u0000\u0007€\u0001€\u0000p\u00000\u0000\u0001À\u0000\u0000\u0000\u001c\u0000`\u0000\u0001À\u0003\u0000\u001e\u0000\u0007\u0000\u0000à\u00000\u0000\u0007€\u0000\u0000\u0000x\u0000ð\u000f€\u0003\u00008\u0000\f\u0000\u0001€\u00000\u0000\u0006\u0000\u0000\u0000\u0000`\u0000\u001fð\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Sleep": "\u0000#\u0011\u0000\u0000\u0004\u0000\u0000\u0000À\u000fóà€y‚D\u0010\t Hÿñ$\t³l$ÿ>I\u0007™„I ’ ÿ\u0012D\u001b$‚Oûäy˜Eÿ‰!\bƒ\u0001$!ð@<„¶\b\u0004žÔ\u001føƒÎ\u0000\u0000\u0000`€", + "Connected": "\u0000h\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000À\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000À\u0000À\u0001ÿÀ\u0000\u0000\u0003\u0006ø\u0000Ü\u0000ÿ\u0001ÿÀ\u0000\u0000\u0003\u000bø\u001fü\u0001ÿ€\u0000\u0000\u0000\u0000\u0003\u0004\u0000\u0018\u0000\u001c\u0003\u0001€\u0000\u0000\u0004\u0018\u0003\u0000\u0000\u0018\u00008\u0003\u0001\u0003ÿðf\u0018\u0003€\u0000\u0018\u0000`\u0006\u0003\u0003ÿð3\u0018\u0003ø\u0000\u0018\u0001À\f\u0003\u0000\f\u00003\u0010\u0003>\u0000\u0018\u0007Ü\u0000\u0006\u0000\f\u0000\u00180\u0003\u0002\u0000\u0018\u001eÎ\u0000\u0006\u0000\f\u0000\u00000\u0003\u0000\u0000\u00188À\f\u0000\f\u0000\u0000p\u0003\u0000\u0000\u0018\u0000Á\u0000\u0018\u0000\u0018\u0000\u0000à\u0003\u0000ø\u0000À\u0000p\u00008\u0000\u0001À\u0003\u0000ø\u0000À\u0000à\u0000ð\u0000\u000f€\u0003\u0000\u0000\b\u0000À\u0001€\u0000À\u0000\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Messages": "\u0000Y\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\r€\f\u0000\u0000\u00000\u0000\u0000\u0000\u000e\u0003@\u0006\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0003À€\u0003\u0000\u0000\u0000\f\u001c\u0000\u0000\u0000 \u0000á\u0000\u0004\u0018?ÿ\u0000\u0000\u0000\u00000=€3\f\u001f€\u0000\u0001€\u0018\u0007À\fÆ\u0001ƒÿàð\u0018\u0000à\u0006b\u0000Áÿð\u001c\u001c\u0000ü\u0001ƒ\u0000a€\u0000\u0000\u0000\u001c\u0000g\u0000\u0001€1À\u0000\u0000\u0000\f\u0000aÀ\u0001À\u0018@\u0000\u0000\u0000\u001c\u0000`@\u0001À\f\u0000\u0000\u0000\u0000\u001c\u0000à\u0000\u0001À\u0006\u0000\u0000\u0000\u00008\u0001à\u0000\u0007À\u0003ÿ€\u0000\u0000ø\u0000À\u0000\u0003\u0000\u0000À\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Hide": "\u0000\"\u0011\u0000\u0000\u001c\u00000?þ\u0000\f\r€@\u0003\u0002iÿÿ“,?ø,\u0000\u0000\f\u000e?À\u001f\u0002À\u0010\fÀ“ü\u0002\u0018&\u0001\u0000†\t¿À3‚`\u0000\u0007`°`\u00000!I€\f\bP \u000e\u00026l\u0006\u0000€ð\u0000\u0000\u0000", + "Show": "\u00003\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0007\u0000\u0000\u0000\u0000\u0000\u0000x\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000`?à\u0000\u0000À\f\u0007ü\u0000\u0000\u001e\u0003\u0000\u0001ÿðàà\u00000?þ\u00008\u0003þ\u0000\u0000\u0000\u0006\u0000À\u0000\u0000\u0003€\u0000\u0018\u0000\u0000\u0000à\u0000\u0003\u0000\u0000\u0000p\u0000\u0000`\u0000\u0000|\u0000\u000fü\u0000\u0000\f\u0000\u0000ÿ€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "On": "\u0000\"\u000f\u0000\u00000\u0000\u0000\u0000\f\u0006\u0000\u0000\u0003\u0001à\u0001ÿü\u001c\u0000?þ\u0001€<\u0000\u0000@\u001f\u0000\u00000\u000eÀ\u0000\u0018\u00070\u0000\u0006\u0003Œ\u0000\u0003\u0003ƒ\u0000\u0001ÀÀ\u0001À\u00000\u0003à\u0000|\u0007à\u0000\u001e\u0000€\u0000", + "Ok": "\u0000\u001a\r\u0000\u000fƒ\u000epa†\u0006\u0018Á€Æ`À1°0\fx\f\u0003\u001e\u0003\u0000ÇÀÀ1¸\u0018\fg\u0006\u0006\u0018àç\u0006\u001c\u000fƒ€", + "No": "\u00004\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000f€`\b\u0018\u0002\u0000þ\u0006\u0000Á€0\u0000\u0000`\f\u0018\u0003\u0000\u0006\u0006\u0000A€\u0010?à`\u0004\u0018\u0001\u0000\f\u0004\u0000a\u0000\u0018\u0000€@\u0006\u0010\u0001€\u0010\u0004\u0000a\u0000\u0018\u0003Àd\u0006\u0019\u0001€v\u0006@a\u0018\f`l\u0006\u001b\u0001†\u0006€a \u00180`8\u0000\u000e\u0000\u0007\u0007á\u0000\u0000@\u0000`>\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Settings": "\u0000$\u0011\u0000\u0000\u0000\u0000\u0000\u0001\u0003à\u0003\u0000\u0018&\u000fÿç⠀\u0006\u0000b\b\u0000cÆ \u0000\u0000\u0000Çÿ€\u0000\u0000\u0003\u0000|ÿ\u00000\u0000\u000603\u0000\u0000#\u0002?ƒÃ`#\u0000$\u001e\u00070\u0002AÀÛ\u0000$>\fÿÃÞ9ƒþ%€\u0000\u0000", + "steps": "\u0000G\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000Pÿ€ð\u0000\u0000\u0000\u0000ãÿ€ÿà\u0000\u0000\u000fÿ€\u0006\u0000\u0000\u0000\u0000\u0000\u001fþ\u0000\f\u0000\u0000\u0000\b0\u0000\f\u00000\u000fÿÁ˜`\u0000\u0018\u0000`\u001fÿ˜À\u00000\u0001€\u0000À\u00031\u0000\u0000À\u0007\u0000\u0001€\u0003\u0006\u0000\u0001€\u000f\u0000\u0003\u0000\u0000\f\u0000\u0006\u0000s\u0000\u0006\u0000\u00008\u0000\u001c\u0001Ã\u0000\u0018\u0000\u0000à\u0000p\u0007\u0003\u0000p\u0000\u0003€\u0001À8\u0003\u0003À\u0000>\u0000\u001e\u0000`\u0006\u0006\u0000\u0000`\u0000p\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "back": "\u00003\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0001€\u0006\u001b@\u0000\u00000\u0000à \u0000\u0000\u0007ø\u0018`\u0000\u0000\u0001ÿ‚\f\u0000 À`0A€f\u0018\f\u0004\u0018\u0010\u0006c\u0003\u0001ƒ\u0003\u0000Ì@À0``\f\u0018\u0000\f\b\u0004\u0000\u0003\u0000\u0001ƒ\u0000À\u0000à\u0000``\u0018\u00008\u0000\u0018\u0018\u0001€\u000e\u0000\u000e\u0007\u00008\u000f€\u0003€@\u0002\u0001€\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Steps": "\u0000G\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000Pÿ€ð\u0000\u0000\u0000\u0000ãÿ€ÿà\u0000\u0000\u000fÿ€\u0006\u0000\u0000\u0000\u0000\u0000\u001fþ\u0000\f\u0000\u0000\u0000\b0\u0000\f\u00000\u000fÿÁ˜`\u0000\u0018\u0000`\u001fÿ˜À\u00000\u0001€\u0000À\u00031\u0000\u0000À\u0007\u0000\u0001€\u0003\u0006\u0000\u0001€\u000f\u0000\u0003\u0000\u0000\f\u0000\u0006\u0000s\u0000\u0006\u0000\u00008\u0000\u001c\u0001Ã\u0000\u0018\u0000\u0000à\u0000p\u0007\u0003\u0000p\u0000\u0003€\u0001À8\u0003\u0003À\u0000>\u0000\u001e\u0000`\u0006\u0006\u0000\u0000`\u0000p\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Year": "\u0000\u0010\u0011\u0000\u0010\u0000\u0018\u0000?þ0À`ÀÀÀ?þ0À0À0À0Àÿÿ\u0000À\u0000À\u0000À\u0000À\u0000À", + "Yes": "\u0000(\u0011\u0000\u0000\u0000\u0000\u0000\u0000@0\u0000\u0000\u0000@00\u0004\u0000@00\u0006\u0000Oþ0\u0006\u0000Gø0\u0002\u0000À00\u0002\u0000À\u0010 \u0003\u0000À\u0010 \u0003\u0000À\u0010 \u0003\u0000À\u00102\u0003\u0000Çð2\u0003\u0000Ìx6\u0003\u001cÌ>4\u0003\u0016Çæ\u001c\u0000\"CÀ\b\u00002\u0000\u0000\u0000\u0000\u001c", + "Loading": "\u0000i\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000X\u0000\u0000\u0000\u0000\u0001‚ßþ\u0000\u0000\u0001ÿÐ\u0000\u00000\u0000\u0000Àßÿ\u0000\u0000\u0000ÿà\u0000\u0000\u001e\u0000\u0000ÿ¦\u0001€\u0000\u0000\u0000\u0000\u0000\b\u0003€\u0000ã\u0000À\u0000\u0000\u0000\u0000\u0000\f\u0000```!€`\u0000\u0000?ÿ\u0000\u001c\u0000\u0000 `0À0ü\u001fÿ€\u001c\u0000\u000000\u0018`\u0018?þ\u00000\u0000\u001c\u0000\u000000\b0\f\u0000\u0000\u0000\u0018\u0000>\u0000\u0000\u0018\u0000\f\u0018\u0006\u0000\u0000\u0000\f\u0000s\u0000\u0000\u0018\u0000\f\f\u0003\u0000\u0000\u0000\u0006\u00001€\u0000\u0018\u0000\u000e\u0006\u0001€\u0000\u0000\u0006\u0000\u0000À\u00008\u0000\u000e\u0003ÿÀ\u0000\u0000\u0007\u0000\u0000`\u0000ø\u0000\u000e\u0001ÿà\u0000\u0000\u000f\u0000\u00000\u0003ð\u0000\u001e\u0000€\u0010\u0000\u0000\u0006\u0000\u0000\u0018\u0000€\u0000\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Music": "\u0000$\u0011\u0000\u0000€\u0000\u0000\u0000\f\u0000ƒ\u0000?ÿ\fü@@€hX\u0006\u0018\u0000„\u0000a€\u000fÀÿ‚…€\u0000\u0000èL\u001fþ\u0018üA€`\u0000\u0000\u0018\u0006\u00000\u0001€aÿþ\u001fþ\u0000ü\u0001€`\u001b`\u0018\u0006\u00073ÿáÃ\u000e\u0018\u0006\b0\u0000", + "color": "\u00003\u0010\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000`\u0000ÿà\u0000\u0000\f\u0000\u001fø\u0000\u0000?þ\u0000\u0000\u0000\u0000\u0003ÿÀ\u0000\u0000\u0000\u0000\u0006\u0018\u001fþ\u0000\u0000\u0000ƒ\u0003ÿáÿð0`\u0000\u0018?þ\u0006\f\u0000\u0003\u0000\u0000\u0000€\u0000À\u0000\u000000\u00008\u0000\u0000\f\u0006\u0000\u000e\u0000\u0000\u0003€À\u0007€\u0000\u0000áð\u000fÀ\u0000\u0000\u0000\u001c\u0001À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "off": "\u0000!\u0010\u0000\u00000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\f\u0003ÿÏÿáÿãÿà\u00000\u0007€\u0000\u0018\u0007À\u0000\f\u0007`\u0000\f\u00070\u0000\u0006\u0007\u0018\u0000\u0006\u000e\f\u0000\u0007\u000e\u0006\u0000\u0007\u0000\u0003\u0000\u000f\u0000\u000f€\u001e\u0000\u0007€\u001c\u0000\u0000\u0000\u0000\u0000", + "Off": "\u0000!\u0010\u0000\u00000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\f\u0003ÿÏÿáÿãÿà\u00000\u0007€\u0000\u0018\u0007À\u0000\f\u0007`\u0000\f\u00070\u0000\u0006\u0007\u0018\u0000\u0006\u000e\f\u0000\u0007\u000e\u0006\u0000\u0007\u0000\u0003\u0000\u000f\u0000\u000f€\u001e\u0000\u0007€\u001c\u0000\u0000\u0000\u0000\u0000", + "Theme": "\u00004\u000f\u0000?ø\u0000\u0000\u0007ÿÃÿ€\u0000\u0000þ\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\fþ\u0000\u0000\u0000\u0001‡ÿáÿð\u00000\u0001€\u001fÿ\u0001Æ\u0000\u0018\u0000\u0000\u0000\u000eà\u0001€\u0000\u0000\u0000<\u0000\u0018\u0000\u0000\u0000\u0001€\u0003\u0000\u0000\u0000\u0000\f\u0000p\u0000\u0000\u0000\u0000`\u001e\u0000\u0000\u0000\u0000\u0003\u0001€\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Back": "\u00003\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0001€\u0006\u001b@\u0000\u00000\u0000à \u0000\u0000\u0007ø\u0018`\u0000\u0000\u0001ÿ‚\f\u0000 À`0A€f\u0018\f\u0004\u0018\u0010\u0006c\u0003\u0001ƒ\u0003\u0000Ì@À0``\f\u0018\u0000\f\b\u0004\u0000\u0003\u0000\u0001ƒ\u0000À\u0000à\u0000``\u0018\u00008\u0000\u0018\u0018\u0001€\u000e\u0000\u000e\u0007\u00008\u000f€\u0003€@\u0002\u0001€\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000" + } +} \ No newline at end of file From 124c3578a9fa4fec5d4874d1a9a4ba651e5ec38a Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 20 Feb 2023 15:45:25 +0000 Subject: [PATCH 0238/1725] Better font for rendering japanese characters --- bin/language_render.js | 18 ++- bin/unifont-15.0.01.ttf | Bin 0 -> 12273948 bytes lang/ja_JA.json | 322 ++++++++++++++++++++-------------------- 3 files changed, 173 insertions(+), 167 deletions(-) create mode 100644 bin/unifont-15.0.01.ttf diff --git a/bin/language_render.js b/bin/language_render.js index 806384dcd..07c23f65c 100755 --- a/bin/language_render.js +++ b/bin/language_render.js @@ -4,17 +4,22 @@ with its built-in fonts, and pre-render them. */ -const FONT_SIZE = 18; +//const FONT_SIZE = 18; +//const FONT_NAME = 'Sans'; +const FONT_SIZE = 16; // 12pt +const FONT_NAME = '"Unifont Regular"'; // or just 'Sans' -var createCanvas; +var createCanvas, registerFont; try { createCanvas = require("canvas").createCanvas; + registerFont = require("canvas").registerFont; } catch(e) { console.log("ERROR: needc canvas library"); console.log("Try: npm install canvas"); process.exit(1); } -// we could use registerFont here to ensure a consitent experience? +// Use font from https://unifoundry.com/unifont/ as it scales well at 16px high +registerFont(__dirname+'/unifont-15.0.01.ttf', { family: 'Unifont Regular' }) var imageconverter = require(__dirname+"/../webtools/imageconverter.js"); @@ -23,13 +28,14 @@ const ctx = canvas.getContext('2d') function renderText(txt) { ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.font = FONT_SIZE+'px Sans'; + ctx.font = FONT_SIZE+'px '+FONT_NAME; ctx.fillStyle = "white"; ctx.fillText(txt, 0, FONT_SIZE); var str = imageconverter.canvastoString(canvas, { autoCrop:true, output:"raw", mode:"1bit", transparent:true } ); // for testing: - //console.log("g.drawImage(",imageconverter.canvastoString(canvas, { autoCrop:true, output:"string", mode:"1bit" } ),");"); - //process.exit(1); +// console.log(txt); +// console.log("g.drawImage(",imageconverter.canvastoString(canvas, { autoCrop:true, output:"string", mode:"1bit" } ),");"); +// process.exit(1); return "\0"+str; } diff --git a/bin/unifont-15.0.01.ttf b/bin/unifont-15.0.01.ttf new file mode 100644 index 0000000000000000000000000000000000000000..bc3428d96f2b4c04885f37cdad6bcc22aace4c1e GIT binary patch literal 12273948 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≻EOccY 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 z zKky65EhJ}q7xkdd4%FSD37r^}za#fMQftRHq~#aIK;5Ela9%{+opMkMdhbllox9}k zLcLw)$LpcI^^$O0BY<`Zb>zUiI4%Dm z<~WEs4jPwVVPX{Q9~?t1X5=42?aEO8;W_fF3gsV_FTXku)H{azV}|7)OTA-fD|`E$1f{BP0LhIwa+vk_%=%h1u(}K&`ql`KQJ}{HdezPowu~ zO_-8@Iy0Zn`t(8h_1WkGz0W8F&vHf|xIdG)GutpCe?C3tb2h(UenTF}Ig7ossB=~d zlk(5zxz3JbLjF0-!+U|>Sc-1U$Um3-bE(CrxjUe{|))&y{ zLi%0E-i1l|7v+N57p3Gkvu>tl^ML$|sdF*4FR27GF5qlIoBWm>)PVYz=A%dcWkNMt zF(v=fc_7cKMyTNMKC<9qipPh_w7WYvtcngcn{KU{(ijLBb0?o#S6rFI|jeQn6df2175KQbr((F(BtXbPM?76W^awSc{3HX6_i z>O7tcp5^fo`TXtCUq;Lm)P8~*PfW`1FGV+IGMJXrsVT3;issV8kYZ37TV>%%=P6O%*kI)o#iv~he|-~ zE9AX0ApccjUM2Qb&R#18`NM_a>~&&Z=j?UP-l#=V{+rDDW;r@BE`OvB-SXd}&RhMM zmj5<+Z#RKj?^J`h(FBI%zf1nRRUrReV&7x`eP()}XBeZ`7 VDE!^aQ~qT)*ll4 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≪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%0AxFtBT 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

xHf>)Nk@WBm*5{vz?`QHHp1bE2zGOAg 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 z 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 z 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μ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 g53f!M@cRv=M*L=FwJ`R`b%EPH)Kdc z5~l6hRR8Z=UZ@uRm{Sita6j(EbvT7=IoPy9-F;s!^qT>W1A(BmBxTi zW9zQLjdej2Ili#hP%`tyPBQhSkNDvGd%aoerzPS5K(V&F_n{zEaA+a-x3g^laS>{~ z{X>`jQT`Ff&)CfVrF*l~^qL)E)Cx-k(|Xei_=(;999kxe^YNB%2gG2?@pDC=qj1aX*F0mYBIl zT^$MZPr6f23YA{gwyK5*Iv5+Q4P7-JikpNpl>h)_8@Xxdjwr3!9RdHB%dVrpjb9bS6o$-0-f+i?54V@4BiJ7w4`(q@Al8ps$d}}K*;Y9d5aq6*L5zvAc>g3_~kG_Io zm%_p}+jJw;6m4xA+#*pd-;G!Z{@LDNJ9z(1Vlw9LRWuRdRQ(nasYWW0pE^-bCf=M{ z!yjSDw~=NB#?GuH><5rI&&$USKJxL`>Ph|`>WR$vIy={{H8gTVGG`JBIlOKFvbyr>V3+lFc(m>SRN4C)YTDj*1zT?U#A3V_L~a zSPIg&9y4>E-hou`)vhaMOR*^twk>8{zy^UPje&~RFrDrh=BV|vpZKlmCt{V(y9xk< zW`yfd(Adn@h(GA)eQPF!{u7QsCcE7-w4)beq+5xl&NN0e<7zLoHpx)qV~4}TycH%aTluJPl( zmJInL)#dF9@4tKw@8RO&cuz=yxEfmt;Q+htL_Qv-4*HT4fg;xK7l*foCL zAZ5ohnVf*N3$``v*mf`@PzQHMbeq}$8)bi&rCNH73v6}TnvKmUs!O1RpM3-VkvJ-5 zdVX8oa%uPSJ%J_kn9ARLzT^3;Y0u4dqlaCLTCD0Z19RNo@!+n;dMs7Cn=Z)d+dEe2 z9xU8w(3^DtJMqUf24-_F-`3s#eRXP`KWCkz#>NfHELdapWh^BK6S~#hbvFE_VOGsu zig%V(tuJ}<36?wMW!J!!q!7s7T|lc26SZHgJValYA*4VlN{2Vl7NbsJggDZEAV=zj zc~O80S-(y_N?cL+909OeZdGuLm~tB9Rdl#^HCl*H-!s@G6-G@CAq%c30jXHxSBa}V zk4-3>OJe;E-&rfv?R+}-?xu&AyVEG@`lqhpON^s}R{7rnRD9f4xox4;lw0oui9B&W zv)33hiBqz@G|5ntkfy!G>o&^vWS2s9%dP26_($oB>pD1p`oMbfZ3Gkgddy5iqhnb? zaw0AttkWK0ujCrrj(RtpZULXe=dJT!4SB*gaMADo{4T@K#+v$KGDoK!l`(8CC03Y2 zsD@@`_G8YlE@VE2Ypq-3)b&OOyaJFFo!kc9lJ5qaf;-YLv9@hpIG6Cvcr5)7xtI+f zzOe0t^JQ^v-(0if4;fMaiz{yiB18X*kJDF8+{OABUq7ZFKxetKU;s*m7$!gW>sUh`l@4_z(6W>{?K<(O)Yvr;Tg-q?w#A@s{=|Xi zu?fk^rF0Vyz1OBLd3trP-{Z>F@<*LUaAONi`6#?ehB4YuO8c-*|5QbQkpQpwZ-vtM zMr1*zvpukcg(O|jy~OFFa60ZT>C4+?`o7ARUJqV8a!LlcYs28pPr=BevGQ)+hjYGxXmm?Oru)YJ9pBY-g`y;?$>a#SQb-I` zihtP-ew6`aQLS3HXg-a?JSYVJ^(ENUrZAfM?{bI`+c?h-1&}t*pk$pB!J0j1DjnT1 zlDNFx_3x6kGVD>Baq*xgwcq4yp&Q(bq@fXLLVb9O#Y}p?tpF!rtc0xJapqh}6w2#z zKDU{2Z70*Q72MCTUF>!$TIpY*8VqzSIuXBee{}O$Ig2aah2m7gk$M4fiy@e1L<&CG zMm+(EFG=U>FQ52z%=mLfzk15iy7^KG@FM7TLS1Wh!+|)IsaZKxWPrW$vRm)X;h7ho%=+(_|A|rQ8y%Wfsgj&cL5bZ7N+6FrnCJftZ)|f7(m__7 zL9c_MSl%*2w7F(5qkGAAk;o$@AA1?+JYku9`1YJd7o>Yh{rx#lw(cW6M8R{6hoBgL zUFwI|pd7s*PK1eDJ>^(qT)Kv8!#kB~bbA}R{llr-cr=t-PK?2x@I(%lV@8t~6?vuD zE{G(ZznR9bDukj-uxK#13^;l&o>CfiG+nwb#~Kj!SIup12Q2XV>^{Gua{EgO9YI9k z&T$r>Aj0uXjZ7D_Q_XP1BlD`VO`0fNxGqh*pE#e!hG#V$@08|X!l6P>8ms_LgNPkg z7X&yV0+b3OwV_*e{L9Wtbi`^MSv#ih+hEeij`Ge%0enC>!WkU8!>3Yp?%~RO-s6p6 z)yGuZK__xcot?v*O&`bWLZ&0_?)GUyn_AO45BdJ-d`dES0a1erdrtV)8A1(}cA&M1NEx_B zDY7qfCqJF)IGwO zK5f?%GL?VgD)bi@AWH>Yj?!?jB|%unm5w|+uVF(#I=n7d@>$uLgJ%xxUtw3OgL3d68*%RBj-HRsb+S-A z-|ARnTkrCI3)g%-utYh;fzA$Q892NA0R~OI2|5kkY}2%+2!V&{12Q6MW_Jh)J?rg5UaB$5tgdnt zG6E@l)@56}2RNzbpPe69tqazjOI+7(pL_VX#(G!Bnq@UgZf`&khz1o)#4Fv>^-nR% zb2HMaXMSotocwP?UEa4^SL#hg`)<05(3?~h*RfMMT^!!;=7E+jYS*RvZt%9+lio-BpcZdGtS?T%a(ej z-qw3~hAETbo^(+c%22wHFng8_ur3sP^e&h0(f^$7>mSUOK+3-MFk@)+&|frn|IF%^ z+N)&tu84k|GE|qf2{jnb&)7p;k{a8doXCf-%L1Gj&Qte9b7D~&3{Wf ziicc)u30(cT^c>O{72M2&Pc2EI{#7pZ5i4$%smp7vBl?%?udKjeLVtZ;}DY{2&m^) z3LeWNUvs^(CxKK;X6!@Me6CbkpE!-k;a?kZ#_#6+yN6}OXCwkdq-ua|gF=5Fk)nRL z-pId?cH*g}s9A{&{8~ilFkESAYh|Rpi>a5z=th$Dh2t2H4@NIf*0CL~R$G@7wO zfsxRG2pfFB64=;a8!(uIBOn!+fWQ$D0T&R#1y@{g#TB>thjq{JJij-ys@8YfyN7^W zYgJ`s)vElx$9yv@tE#Am^u$sTmq)h24RwTTOT)&#JleHij&6_l!~jA-{s{5H-U4@9 zt(%lu5WvX|@X25JUk!Z>|8}AFE_ZuzT*eA|Y_e4jOMvyPu4Wp@#e1}izmWG*&S)p2 z(B->!eL0K|J5+N90U7etgOvAxu5h`-m?SC()&kO5B3pH&Y?u0HzgTUGC^zh8MRLpv zoX?hR*xvV+KUx0z@~5Y`Y+j)Q!TbzAhW^92cPaU)S$}(H&Q1?s4R9Vv%`*Cpu7Z=T zZXOSZPME9IXl`1vwd8DbljF!P%gf!j{P^-6MjZZR`O6titE-V$%#A9`ZTTIF(|@;p zfl@>Fp=6T@H9IoWxyjxrk%~kEy1PnTB(eZZk8&Xbzf(Y>RBEnj8O?HYrWkn}TXhVv z*esBP$dOYHIdUg?SpYHEw2D(>snfFGk=Q2v5ps3y{DF2+EmEP_Wrf{eX;#M|&?ZW~ z%#a}e)z0ghnO|3beM;Rn=2Xrn0{=S)Mk3N^ydVbetH(B9(2$p^$8hyf28@j1VIod{ zChzK7=MoWeM+YD{WElnj9Y8#O)ebWHX=si1ri zuzUE91dxoKR}Gsl6rC`2Hj&PrC!0*&oQxTC~A2~=kJcLb~fWf;J!u z3*lbSxI9vWQEsuWUt{HGq!zQtM#@e$S?{I(m5l2}+GCWYd?7qeMpNZ6pKRPDC&DIY zKBv2t=i5+23Axvp(8^ABH)QF+arZF2fw91}xAE-!(l!0F)u3x?TQp7=VN7*=jt%FR z*K^t?yI|0Qpr{t#rI|~0)?f+;YM96)fR9#Y-D<@WjBM~dwUhsH{B=Fm@Q-)7@0yoB zi}HgC{Ti49+BiZISC7C-xD%(Ft<+eJ zsQnnt%Pu(oY;TY1U53mR$AUr$Oy9fqvy7JL+iQ&w-oWU=-!2-(9xHYoz$&`LtSU+{B&o|OfwB9R798pLmIh5 z-40#*_1~MeV ze%L`mjRaZ%&-VE9neR2^G8<*Ak_ur0Y?uRPU*9Wcr{s1|#{5rCs;lbM%5Q7H=tDPT zg=|VsT|tsQM@N=JMn98lyVgG_za`@ri}LA)s0Pk{)IIjZ^4O2r-E*`2Bf`Zt`QHbc zCBu%Q0~-A5vI0;Kq-HV5173D|XbamsxY8C7=z*mCT(}!1PhHiFCT@d>P{vFwTaVFlG^R5Jog!!j52XNf zTNTS3;R7vYfMaRm(B}HH?y?qGdK#5yJLX>)BRsnnSDa8lj1#mT%F=~-MV|$XwlV=~ z<8$*?rVq6q%+j@N^cfc_t|A!b6KM02H4Br7*6?`jswR;AByR%91(D)wW6ab0IQ79? zm-wV4|KUeQF~~UTZcjHkLSAg%N5?+2?~{+46|62QXjLz3 z-LIMaG!mb@+f@{4Pp-)zWL*7|U2Vreh!W1!Mylv=r$c>V#zVK~-h zY&BZz!p@2np6zm-Gf^kD@JD4EBc3I+YIz0AwqAN=TPDI0k)>SCP)yf0Fz${FZ^sxC{mZap_+}MJ?pQJYsu*+woa^rxC|48+hKg_< zWcjQM8zds9%a%Qv>VSl*!8>37`x^6#e<@>x-<>kET^MfT<5#asyM31BdGO(auBq>( z^9mHS`k(3`DxL-cet_u>)Uy0O#cLJte>lf)dA7^(L&oF(bopER z48R@9&?Vg6zz?9oLv0j!&QCdY3OT|LqnsR|5szl-mQuqA=kQD@1Cgs^)V3H*QH#uN zzStl&erdtn2pJYM%R9OKe>t$Vl=N;Ze)jzzo$oc;+tb;QR!<+QPz^q%B$v0o5tj4I zRDuYr>wFqq#f_|#TI3>ql_o4_!;eOvgT!!L1N~7(y?tXhSMJqQ8HJC&6w9!ZsRZgT zSmw`p_ZahV+S7H*r6`9ML=uP#8E1f`$HlYfNVZ<2Cd19GoR8$9riDRboY#xpr`GlFp$)UQlUN{O-M4S5AG7a4M8$nA z^Wus5p^nO#+wT_&x;$UY1j!L`05=He*=}W{&vu!-WJc%T+y$+ThUnhYKgqML^&s!F{t?j1ov% zq^Ndf=^-29afMQ5Z9XX;e{M`o%y!#LJtu0p?tQ{P^!Y+1frHoq9)~o`2J!oLjwlvH zPB~P*BqBv?=O4#`iK4=+OTYv>BtcE@MGzUbvUf9)s{_cFG%bBNwOC%I8UljmE|d<)AFSr2jTnuy_{Z=ZaeFh=V+htbm`H=AhEx~OO+5M5KpJ>*AO<40P% z%W)}wF^^KV`syQI?)vDM$9K4U@%M9mU`U4c6@x)#{LL<*QCQ?riuTsF%;2Y-a*cUt zVPpDNjO}mtCYrk#eq^&|Q~6s-V*ckyo{b=K~XFn4f<9@AV7{Bv%=@6ORsb>iUj zGyqB~(uBg|ed5lv8?*OV?~AxMY(|wf-R;K8d-TLU2r851Mrwh{N{p-wwaArVEJdxC z%g*y}*7ej8J4}extj)%axJQH4G~q7%Efa?4C^vCwkQ*#tIDe^gw`Td;VVXP>H7miv za58SdM6mf6ygAz=S!%nx?BfXE<60wEREz^as$y98s2?=Lwak0>MqG938=Zl6vJ#D*xi(%`WOFz8dB?elG>5;$#mZ_(#N>SEzy(j zu_%rI9&^1;9>vbF?A8+1X4f>$tPQ=d^W`FsM-m^i4plN-OiqbUuN5g zJ{vou#gv56x)VMh)9K|w@aY8zsYffUm3AZuqaAEff*(VFY8I$APSBtauc&iW{oUQkBHFl6jKJFXerczAsoS7SJw}vyUu) z7lbrgw?AS*%)CV{~4pfz#LiP;zZzqeX~eTM>eGKmy~B@3Qdy_D759d#L`k zF~i}{ChEv!wxS`y5G!~SHX6;~U(jvci`|0T3byMCd#9VkB7=cnz(WG}>pceINNJK5m&Mirk;eUK1EdIACKP{z1#Ku)>#?yyRp5_Y1 zTWTHG`n6ljAxwgYd?H;f3LPE9r<-7?*+;Fen`F#Lb6wbi$c|jLN+Dw8vubk#>f>OS zm%-c^PkS+*dQ*3~jklV&O;vI?L%s)x0H4qsX2 zdBb4!wLlC|0faA8QAk;!MzmLxfAh`1_Q$9aHPNFGdYP*tr5#-d22Kfexlm->qDQ*) z4Z(F>%(`r5Q{7@r&L)NOt&v5n*+*7?B>&dF+2*^$>yQ(Z&rkQcWq*xv66TBO5?%>{ zPXvp+z^3CVgnQc`ctYF{<_JD&I{zd?T;SixtM2J(u%-XZFl7U#z`)cITU|;WdQF)- zP3$92VB?XyR|DAKmcgvK+^PT2jU$*5h;$MG1^nz_~2ae2$9Ex0} zHR6WhU-x$D2q$Hm0zxeWoW&-7%0{Z|XEv`EwDIe%q0jAz%Pk8!ins9$rzxv?%ENC4 zefglfeWm0A`4!wDhXupR&1rCYB6if+RU^;gjbsj+SVlYdvw7d`@idZn3P21fDp-AZO`QGK zp3j!N&NX%I(<6!~&5s+By@d}8p5HKaF2Gq@$JwbH zMKc4gL+!*(A*JGNEN>PYt1z!oEYGHFzshr0YhKEsdqdOdAJ^4b%yFR?Sv*_prB43-L zfwOS$beyb*J=H4BadP?DP9tA%sbd+7b;o#gVfBdH73*Nf4l;Q*?HgvI0(t)9(sQ)J zf7yBM7+Br}iuP3yrHJjpmVMh(9dy)Pb~4+&39v#Rj4wZqx{x={ybM=>Mf%!mYON$H z69dYm3vSF@te00Ncwp?Sjpvvrs zmCS|!T7{NucLgidKm?7L8VgcPDI02Sirm-CLG#fsxN!aBgE9BC-tYSRqtC`Qr{`#w zAwi@ly#RjAHdjQUO)=l9iuth{&M4vBCg{Z4Z$iHlmFy8XHmLc{-a+0aWUl~7vH*16 zc7?-Co`pL=%f2~;1zAWJ`%}msXDY)>js-0?er_h)?>4`Embz}+@?w|!>!t2^$n}r1 zxIxx#ae7|c1F7I+v!$~Lb;@|{F`HD3mnPdo$SKIFp=5&9W|qa>eOmZi4ivao%);puv#-q9|I2A#3R zqRRjoq-`WKki?-rtjyFn5Q@)&NI8q%&1E5}t!O%){bhgDw^13z{!wPz|LGnv*l_rX zAZ9DVCQY@*8Lv_LrrI5&>9wzxkrr~PP$F;tjBlx+!e%9njqMJ8wCHLpUy6%8ovTi2Pol06pVkKR5im&nG#xOuOlfrboIEu0au^i8bML zrkGsYL?Oou5R{i`Z7iB3fQVw&%Euqb`emU|iFQ_vL;CmoDQcul;dNK)+=2OLbB(@Y zkOOn#H6wB$m+}c{PN)EWMI1L6i&qjZl*n+Kzm=A!Q5RVf*wiuOk#!MtSB*%-C;;zr z6=dvi%^5mpSbA?37S?l2_m`GGTmF%}Rc-Q_Y6Fwwne^$!(lC*>ChSLnIDWYL98vbd z^7VtoTs^B(O{dQDZ5NbDj!&hMs{zUa#;>BD>B!Dp(d{3kzSj9a*?A09k3Am6Ip+>! zcEmrg^Q7b5li?*GqvFNHjM=^}yK#nvwp89bBMB%mvdVJJvhrY4@u<1&UX1Ni;xTdC zr5m1o)^i~7PQwN$7*G29Mf&J}C)afUliAv;@{W5)3c6Z9H>wgp@noO|+3g?pE54zC zU{@b=8cwBsWPes{+Kw3|`E#_HAt#hgeN?GBgi6g+KXx>JF)K5zHlwieJ)WQnu}020Ep(i*&jVO5FL&SIvm<|Mf1cppW0P1Z5HZYP>8K&X+NUw`$^?jkOEI*? z(>Lml#ndouqX?l1g;KXjF`;!at0$mM>SV{%)a=v`9Qf+4_c<5k@B}3_v}+d&XvYWS z2oHGmOT>qlP>}XZXg-IJzB31P8&w5r{N0m>-f0V626LnFF}OQzmHt%+4c(1rP(hD} zdsMg9F!Dq)dEIllIsJLo2&!%Se`H2h`&ld z{(SlGs#k+9q$NOc$vF<-=njC-1e@QR_~cI|Fhqx()(Wzkyq&thZw2UI`y5s1k z%Y0(dZx5XuYFhefxG~J)tt8dw^v8LU{41xz7E00QS~k+PZw{4_8p%~MX5CihAy&^{ z3H|Hta5u)^x}6fp;}@~J-q@3MvL}wr!n^Ap-aLcVJ^iqMW%0R?T=S%XI{Y84!H_69 z_@dZZOb(SQN1LP6cXJoW|6hi_zq|Yg)f)<3ApmLWrS#f~m&YHk_xU0xh>3eQjKcIF;$@X|x+w~-=OmRvhW1IiJ)>v%N{ z+G8|m*HD)OT;B9m)9v{YW_47#6Y@u6o#wjqT0(XQBe+5A0fcSaXJRKc7eU;XXS;sR zSu^SElfi=m-ilgY6)N2gXC zkuGTfY{;O)@Nu9@+45bEKIcnD5dTKrTb66DY6uSC?a&_eWqM65E<3VQh8j^*BwhPR z>Ci;!Q^};b+7qAe#I|au2>IZu(iC|mN?VD27%rg8%SMt027jeTY(80r!mUsO{`aS={ew?q<#Jo%8Cs%L~BK?r@{@T<2T9 zNa7(@9XZ-o^?LqjWTXo@A)$_#kgKcFn1%p}h!HLd_WO|!|VFmfos`az`v1yS4}SFmhI7UzUq)FP)?Bq>c{!$gTr#xJT&Qr`b~F zm&1)SM`|jYO~t%{C`{0vWk%>y*y(MCSQ)^eX{mK4lyIOIHFu8;E>#)n#h@D7bd|bP zpc$+!>CWTnojk?vAT>2-AwR7%rS9=Xh1u|WM2>EVeTm+`+-deHt|cQA12EUzzc>ofq~SeUISv`#!F( zlxZE|&ya2u8)Amo8Ko=YEWhEvm#ja%v#!yTnlX1=BYXSd+UPjbAC{U{B1hh4=~66R zHjTySGOeu*Z%3(lHYAHNJ}4!*LBQckR`%W?__WmAPU&O^8@;7hv}_+Svsd3e?t``c zRqWq1km6~jMY4WE8Bf_7KIP&|B1+1Mpb{i?nxaeNF&R<;6rroLJ$nm&XS3IEvU~Cc zqr~`C7q+(B>%>`4aqt;&8P|FQXI!w_=Z~>rz4y)2AkjOZ_R>voudQ&LA+{EHL6+x# zi16?!6QeERw?O#aCov9Qicr3u?MEKJ11_#Wjsnte!&;&)51|(Bf!mD}_URiYcJGgS zrxwiMd7vKHpGJJ(eJ5H~AgPa`LzsNvbZ&(+(S7eDGqVhfZb0y`CS*uGF{ONdeW<{N z@x=vc+h|TzWz&XbYhfiIjF0`Ebzpexe!@1}l*z;QvL!;l*wI~EdWwr!G^tE!drIUn z9#|+R+mrIHsBJu5=wTjCtCxeH^84uE;)B+115~jHa354iVf8GAm7nEX{^&h$O%9d? zJ#8^^uK4zZp$s83X}61uFT*ONV^d{il`yL9S}b78q+uO+|luT=et^U@MlI1dgv#8Uhzp~e#&`l zrp{4*PvD+k$?zNHHy-jCXJqN3(yrTiebgp*TvYt1VzDn)2vf%cQ1NGHOg?M)mwdvP zG3Dge<&>YT@PY57RhLCI!i^!2tmDoKS*cYY92x7wn+fcIbWesx$nPP;YGJ1=-@&V< z!uNMDOI)O}0e=cdjrDC`@Pe*VkoKB2L6vs2NXG?Z3f-80+N_bg$ zz1xHKvN`ExH|4uBe_xw9MR3z*-oZV6hzxw%)66D6N^uhM!N0O?W zZo4M-CjvKM>v`ZUt6?tp+Kl(ZG&m>M-h*TB-#3F+Ccwog_Cgak2f#UPo-Z&ZAhR^lN)quP_E5u?Ae{DXygUC-avh!MR4`>h$(ocX!F$)J8lOy7RQ=uhRw z_G#bymoTnLXSco#bTJ6BZ+_Od3qv7`UoxLz^su5mkbyImE`8=4+SVk|`>b5BmE~M< z58C6rvKK11KFyuGb0(D|Y|ES&J-PA_w{GrmGsm1bRJTLj=M$F*h!j70tJ)u|V4n5P zmIt{6bBaa#vK^ezS5{h=kzrMXPvJ-wXdH0Yn5EvWEAVLjrB;$xvN`1)BO%!PW_s1sJY9}A4<>uKh(QvrfA|1p@Ta+ zk-$jU@}3^i#)apcJf)9!dFZT=`5f{Z3s*D$)8!wdoB#Fl-!A`j`5%}6dHG+K|84o- zm;Yn=KbQY&`M*nNiIdT$hkuSl-Q8!Idi+J!Po3lLzVr6YJ^e3@w>>z2qQX_6PIp|O zOY-zCs^m_7{(C=s7S#H)vW&%O>m;iZTHj??`|cfZ?7z<4JMbj?g;})^%lmpf-#ck* zhSOhNyi)t`GjmY?^WQw}fshuwd@FMwHZ!^R}4d%Uy~36G7~(ywCPx z@%{2UyoDcdqRC+n%c7{oyYq6e z{*k@sBP)N7%yjuMINT)z=aS{_r#&no!@Qac;n|`%@Hk}dZ??(PO{GujgX5GeRpPS3 zx3-1BZLHbazwD6j@fT0>-Ft_BYq=ls{^RA(X%U``dv8v>zUJ=-HVG>6$7jxcdXKyB zQ!@D74`y;buo!!v!yOiQ*&puqZ4JBcuHibzRN}~_yR4<~VCBx!I~iG=c<{vEuMsuh z^%=+W)qHMDdE@_V`7f7$a*w+(?4II2&g3&|EB`+1ynoC|l~ud8b9LwQ;P%v5_!QE_d1sRY)ZM$hz3(%8rrzCH`#&U}d5E{~WbDlkrJeWLX$f*1Y8y{b z{A0Ou6dtd0*X|hZYU;7wE(;2|r>U-!!)JeRhnLrzNTqmd->!2HlXs2!rmWk=_tw~} zbEfUD!_|5s;MCZE$lTjMkG{^%B?0BYgN~{&%ZeEOv7Fh+MYd4N7bPF?6|8Qa^$;N?nk{?KXJV+$777qg?a7=_#ls z5yMiPJDRcH>cBcP`uSoX*K=Izr54V*@(M z$cmpbe#UH zNwsdWqv0dqX6=aoU^5Bp-xx+}W8ZdJEXMfv)#u4I=}#&j%=tWqGnZ_*e~VUCPmkxuQ?mpqIx{=Gb*ts?}f<&dHx^rUa2-{c$ zzewHPlcXHoE!k5G=oesK2Ie_i`}YdzYihgmL0XEiAdlsge@%Vw!$ z8-=cxFRixA8~voR&w6&ZZ_xQQBm&!oCGNLbY7_o^k9Aqfd09$)I=xxyP8!AJv0Q5F zKj3OsoPG()l7Ft%;p_QT~W2ulgx6nE=$So zg&v)|9e87*V=-tx&!~zn;eXU6HaO;&m>-H!`81asFsz;D)6m+@b9{xfcn(~@Z9a1@ zX;8ew1Gf3htIku)uzNJr=h}E)D|x|l?H4ATa^hFaJ>~DOI>Q>Ry+OG^r>o}H1&!ebb&=|%3+u++7yfTu zHhd}6EnZ!cL;Tgd#Jzj&Gium;E+Hi0G*qjVJY6M-=3y5A=bYahJP-RyqY-wYL{rH}4pS0(#CaOmw$S)ee(<0vAS|^c zRJzcpTWsWMCPW`Q?3e)8ru$EW91_p(5;>c#QTROU-x)rK!uJgIM*ZKlJKxTH7y zK^^4Z)@TN8-V-=qVDmlC#W?Fy{M?mq_T2oS52BAn=-tl;>Fd%~P(jC+y>2`FC18XT z-@Zpp^hrS34%Q-$e{qON}oKBzw@HH8`EStU_h46hV87K41a_l)j&wLeW zxIN3tL#G{gc0J$QM1izTC@bn4RozWFH-ky6ihP*PIQDcncVgHu!bQzU;W#GQV?`?z zVfL_SU50L2-kLhgqEyeo#cZq1jT4Osf|66>FI3QwexLvE-M{s5!a60o*6;-#1>TS$ zZNUvRqJ-<#6cfE7WPF3-q>YSE=LlH>Gd++HYxB2uz2(yCFMw(orsp(9`YPuQAD`D! zt5`Pd4{CX4OT!#Lmk#~yviwARt^X|@eTDz1x1%`wWwz3ehAz?j;Q?!OIDHM|IHN(M z3^wzq+KRhgvZ&Rnj9UmjNv zP0@%w^T%01CrhH^2KP-Zi?*z&-j;UpEA%=C%8FmSVW{p9gC%*o##(>!#E{5;Ia~Uc zzR!mL=6Os~K%?yK78kS;L{`Z!VErEipaOl!8a=TU9{;AsYLPE$hce+5{N3L|mwn^^ z5Cd-;|Nn#3s#3-hi-k60FnE0AUp^KNBQDO?5)CqNxaAma_bs?PmCe*hgIiUk<&xI6 zbu}fajWq}E+5C z3##$wXWq;Mt55&EJn-MXS9|<*;lDp<%N6FAPyY9Syxe?-cs^^4fjmbx;rM5$2^66( zpDjx#$RhZ_Ka9QKoX4P=U3I=$drnLeke zjIsBPZMh_-`muR0K|X}^AGCEt&&F(abZRITpz9<0s8ux&=u}KO%Jg=hT)rA7&+ zF07|GlPWc%@fo(lsgrVkx)GeJu^RMpzO*wJo={pd9V1_QR3ILo*l5}3Jokw{j$3;u zm^BqWIP4ZKQ`ufAnUulnJbz?eknbFG`vw@kNqh4^kN(`DKKl5TJJTs~R|!n$^w;Fu z?(-^|^Deg<5mC;+H?Cg$bn)fEXeBy2sTiDx3njA(-aLb61 zAT_RRV^D-PjypWNEUOD2+h-k}V5{MUD9s-JvKo+kf^8;EH+Md>qZ!|5S4s1T$U4`J zu6S@ukLFD{{@DD!V+PFf7Ax24vAnF$<3ZT**_ zO@nh!t?IzOkhI4ho*HkV6xI5&CS1F8+fVEEi(CMMS3Ukie{%oN)j#L|ZTTy34d^<{ zex{u5e7;}ye0kD<&yc7m4j9mA#xY!cgEw$yWPo_EHyA}7y~6+#Z0T}M^_oAj&3%mm z;8(o(oEE0zH*6zj+mL(jULmPer+?Omyv;kv4F3GB-BazUQ{}#K%1}?^)Z5xQKX1uS z-ygln^^f6{4yxWxrvzO%GbFz*r<0kjjwAA47dKC-#!$YzY>8>4r>-4Ls%rc#BMQ?8 zDdR)}&}#cP+q|irYU-s?2b`0`7$+NKY+)-8JF(=&XY#pgPwEs}@xYvrZzc-=t)<=t z;8U8M!}Ra+^t1n%YmjaEC(D1o{140jwEV9R&t)=}*e=lo-oR!uwu%2rxOb^0!PGW4%OzR&K%ROAvY>s$v$ z8INP>lrJ0wS6SB*6+X4d5*$&r$`#2o^s7R( zl#8w~k}D-tL3JN&RW9ne0<=|q#}f3Gxd(8YCS|_9?x7&RTCmZ!E&V413~`zLDN3X@ zfCdDB3zqOEEKBUEsL!Y3iMCE)4Ca{h+Ni1XyOTN)nq`eOPKi9L9+WJTx_h$0!h8cX z@u^CA)9LZO9#_)hcf(=ueC$2?_@^;h?puJ+?+!N;|HpYe7e8&xUX)vMgt4k+!@dBN zd1&()E`v8nqC_YCZ(rKRP+>JN`VK2X#b#wvv(~8_4WasOm5o~Qj8r|yn|1$)eRi(F zYHRj8jxmVT|9ZF*q6VteXQ>?eU+a!yRAuFLd#6f%)J$e^N#z?fRy{p7{d7H$>lknR zJ8@g;Y27o8RCig*!nG4nSlVLOY%R~E=dy&Jda4Aih;M6%g5SDK4qb`hcH8talDxbi z9BhztnOc^$isjYz+)=wB4;^VkuP@_Xgx_E!_<@=grkYyH3^&cYyiJ?!pp9U?j&Z=) z`mDE?{MKa_w5D(?b)_G^!|yiu@Kfdr2i>~C6iOU13IP|4#tD76`Gv>Vz$qYxt43wS<0)u@y8N0F&%gs+0R4I6aqtNJ1z zaR=LReY$4l$NFVsjc2?k70-(b9iZ$#Q)1rpT^2~fXnUcOp8IrdhLd1sFA7z8j(1W7 zE6KT{Qu1b+S!DFAd_m}~nPiD5Z&dVrZ-GdM5uEB3nWK@^$>yL0Y1OQBrW^r01KL!F z%E0#W3WaN3B8SFK5xQvpg)DG}O&0$PkIzOnw)|mn$xsJ<5)hM@$twsS!znM-dH})N zb=gQPEofx3WD(G8k0kalW8SnA@Ury1bf;!ad#BMHJph2ZJAW0u*NlL9{Z78BA?rMU z>OXDlSu#Qs*an8LiUGe-ZB^;7R#&rp<{eE8W%lCLY( zRtk!8W+-c?&{mFA*DaFGqTtT$R&swi#%?$K-T7%pi6Kz4Qb_f%nsplozFc_y@Re_2 zlvzqv@CK}F>xfSeMsmsuXwPa$tU7j@z*y}+m z<;ww~qmYB6UWv4dIEkL;>&}|jMKou?R1iNdM2A+jt^EkU?fATwT9N&2T4lf$4|xb=-iChR--KmgY2-S;q{fl~!(Mtstb6C2 z^Ujic=f0ddgh|OUc_7_;U7}ZakyLqY@|D60NVOpKFI8?FtetQ8%3sXWC*JB6Icpew z3vuZVy4nei&-pNKh{BpCl8bd_bn`^73;<7$wlwPG=L(;*^f({2ijw6;a5QlI>PbHm zUFesm=$}O7W8`h2cT94}ChtNG)N&Uc4YZ{JSWbKG99R%rt%8()vN@o#f6?w(Ca$|M zMqBqRPF=>T#F?c5GiFbx4;7&_f$4L0sqac~g%9I-f>u(@!&&#z-*wSX_bzugKz5dG ztD^+Mdwjql-^#|mKHh>jy!5m#rSvwjI~g7KD`wxa9jJv@bRH%!88=;&09QmyrLd&I zg$~z1glZ#L*(7HSFw0Aca^Quc);WqImU~)^=v(v-@S|PM+fw9=Ac}c$n708e4`XHY z-N`D|M9S=ivEp5Orvamu?xNDnbWA&bY+IMw!?N#~TFUh6Y4Z+D#tO#hTxWV8WU|iR z47Ehb<__^Om<=p*1d4ot)knb9#br`2ye%8GOcn*0?Z8I6=kq#zzbDUI8`9rfy^CP9 zZ4mL(w$sH7V_(@A5kH2PJ?d+L&W5&x{1?H-!;MxIVZt&Oau43Y zw$e$iuxF#R^16$ujmOTZDx7Rsj7(!qI{KC<0N7<=130Tb>?u@mXcfWVdT(5d%^Tlb z#^5!mg$F>%!FIbloj<6PRVB@rtbx}+7avS4kcgL_kB1XKbX1@eHE$NFDvfh8N24~;BsS5kcoOU7XZ~V6 z)Y){m(rG1q`y57tBbsB0hMU!d(kB~$19vwTTl|EYgO4bWOMHymk76@=jy^kvj)qrU zv&OkH_hB(;A1PgmmD8JAMIJ31M&H)cQjgH+F`_j6BNjqPr8u-|NuOR(hj}4Npn-0jJ*lk$?sQwn9JP9PT{6TUqCY~r2kP!yQ^G6t-ABfqLePW_Sb&)v$uFei$7aAnYtnt+Cj}!-fSBW^!)j z7xpdH2QK~m^0)$SbVWq`CLxJNasztp2kp!!f~EwGsh6#5*PRmi*Pe{GEt}gKQov{9=?Uo4mp0nSYFM$ z5$4OZ7v`SJ&N?pmm544tRk#d?3CwiJ`c`3r*L}#V_^KV*ougZGqf+mC&STQOZxpqj zrHd}tUkq9|u3#PGP4+>iT@=8Kqb87*s_eb>s*!3@!tfzc7l2E!W(xsUfnFFsM$C;2 zsi6`bYbNXP11nPmVyTBFRY~bajRzBGE=L=2+&lBV!-t3Om~`X;e~ZgmGIAovz1ytH zWqz@Ls?idQ&4*4nv{zsls0yD{@qi`LS15v9iOnJz5ep(Wz{`P z>F3F)q18ab*q8)B$>EB2o16nZdd3-^!{UVIphnTDJ?y6D8t~~9uM3;3OXI;NgDK#r z){jvXOE%M0pW@5=sKOpsi1&n;zoGy>e;z~~Wa|QxO>NLY z?wS&I>_bB2`6kUV_%`_O6N&4YM?OQq*xq@wCz>*bt#YWwC~~?@C&_&BG2?F;a8nLr z=FIrN8aF9Izc)w#uAL7g6C+@A!zW4Ey10uxzusB6fx;JEhgjU7gf3NVz3uI)qY+=H z2lcV>K9&1Iirwdkvu62#OG^00-$)HA$Abr7kpWBU59({_I=PYV0(ck?y8eSoobEyw#&A7gR3nebSsHb8edjczmw-3i*SEG!aN z71G<~h%)LPc>Q2BfPU!Eg}N$B>jRQo9ZQ@C8_(G`g#K3aV80=+4!BsW5$D#k1_1>c zA&n75mE7Ov2KwH~=fEm!b2ogR*OiP8YnGpP(ai{{G-b~8+i7?W#Iw$PaaukYXVAt& z6CB0o01T`~?SXrruI^!jxM36JQy(X?Xol2#wBD6dy>Zzm^8A(mSMrL8BfV0#G;X)Q zvDPKR_Yolh{on+O)@k_q)`||650XlG<3Bk{TJ=f&($;M`+T}SzE1uOj-{0(GsdkLs z?&^2(bn!NN8cdpct)f%Y1Iaq|Io8=9sB<5Wi^PZYU$K4)gKbe93{VjKgLu#pl_E9( zu03qIhjGVu<)i){umTReL|V*x+f`_`-CcyQ90^ z_SW1jFwe2h!t88-^VR6PxC8D{>=Kv`&cpcChRbq9Ce?rowSy(vc}2*&P>j+{TCS*} zIO&?8YI~+X*LL)Yw_}#WZ!EqI_b>4l)jxSUI&ob2MCuWoI7JuYKCRX84irh6#y826 zBnT4yb(~_S7b1IN6(p1{$RM(@<`=n1>kL*XlMAj)j!SmMm9}+0FDsJ59_?k@jY!Bl z7tu3DS~7`y#9z}kW6ujZWZ>sK5`Umb4nQ%;!h|1b;;2u7<aEzAT3$;)~ zVY7%GTdxBsCz0ofTCg;iGFFf=?6|?-7a2$Y)x8I2#3d@w6u9c`Yp$pT90nh69Jisc z6BoUB4PeoiBNP`^H>(624qD!Nr!t)(xGg)$ArF4+p^$~|{zP-w9@;_nvHtWizuh=I zv-_<+d}W>f+mr#42tSQr_g-AhUaxzu7*%W?B-+MytcN zz3J|b2xB8gCvWmFQ}0=AZELofB(m&Q1(PV~(puLM7G&bPPmFK=1>#_zs8wq6}?hQu znEgg$ju9>Ews@~c&6KDy7c@ogsXtsR2he~%T5@+V?F;?7O>nL;ZRb6kNqto&Rc@7NINL{*PY)Fq}eW zb>8M`XA8pVsjachAQmvmBd6k(4)x{exjGALVsIRP;Lt>Ft#RBbsUI32jVD9915^&G zh+lSHK&K6sEaeGRn_8Avi>?u+1bpR*=YGaUm;AE~jNKRrzrp?wRP3KUm z9xHTkR_OD`(lna8l`U+TABZycz4g+M`RtAjqU~Y%q@+1s$z6JHhH~mvD;y~I@{#Hw zDA>>QM`l!>xfN3j0wA6xIaxfk7iUOQ0Cy%#4uJQ>=i!3__!4(8Pi}ZEP+yp9s<>Xt!$Q+p}FiT{>IATDFU{274B&N8!aOhP)*B< z#fnKUtijDP36si39n?Gq_V(;^EbHLw(Tkq%#jDvrS8{%UnQuh?@guxk7aH#Yu)4b_ zH0(MVVR>o%U2S|e^X`_C!FyRn6fb$LPF?$~9Z>LBl|zfyn= zPZF+mP$^|n>l5J?L2tl7_cm~B_<(5%bv4(~OrEghEg7PT*;6-Syer8aQLF}3DxbPA z2f3|YT!U$_3kGg8A@VuW9U*oYS-ZzE1HC#5UgV3(Z0O#XGViupW4)KrgU|3?J{ob* z?I$0>G0@+Fen)hUj^v-u4jML;c06kOnm@z^+_iBoNEsdkXCJde$7X-7VsBgWn> zfNA422Y4VSI0;O0pcPp~Po-Kpa*$!`t05X{uQc=PGHSJEkmhR!5)erziz1Cu>1aJ- zARa#!qK)Nr$;q0{<;7XD42bv?skA01YvN26E(_Io@GHN!8d08T@w)H&0< z-vf97xGo-I`rJhuUZlAZxz6iJ#=Xbf{5M=}tXZy4&djfd>ddj*PxM}3mRp8W;G?Ei zzSG)a45^75Q8u$|m>QpMHrr-^$hBmB7h_yCax`ZU$Stb5r8d;d6)~J)+zmPJFfE}u zu&ah8s`LCkr_I%tmaL9cZuOF6UC*uo{+cIGh9dEj2Q`S7fU>u^X`&TQm6w_P_D6nJ?S5)9b4dC%M6 zSFrXhM{6)>-9mK7hHGw5A9TE8*33Vjd4|7@PyN@g=r}<>(e>j$}oQ~`Dr-1nz-nk zMnJHFGpmR>cV{&#Np^#e+ATHlEq_#-*gPj`5@8HwvMKGKlwj=VbEG$#|1>__EF zd2bR}fj=2jRDydZZ?>haxR%t5udgS^*t$4+)9OH5Vl-tx&gUq9eX02{aV3Qb9bnvn z$RVRJdKB`y6P-p<)8U$99j5}T8=L;%f!Zjq<-u3>_&?(cM^B_YyoQso%3!&ER>$XU ze7>xnDLRpj?{|Adb~N2=-DN6Q+5{x&V{T9vo}VI$>hHW={Rb|k8Df()*$%7PlSjJ@ z>lx`k$GLb`)5JfASb;xLfA}#c@S+)7vNX;(5(3yNh;ISeQpdzN`)fZn`op^%rhe2d z+D1oqk5u>?RjgB19kj`agc3eIMQv-;#y>Aw8g5?25~$ec zVj<@tYW^4XOGA3YDL6;l=k)Qu2F-Px!?SoY&!bI2zy)697LOO4<)o>dCj_&uf1`q?ipu-8}LQkd}r#E@M|)n#*{YXGVVmh3c_O0 z&-zLuDt2Th(N&!nBx4;C!wQZ4yu-+CrGORe!xK)OFanx)^?o?61})XeR^8&A z(7opnX=IUZ`W_<62&GoAOE<%gR9$000Hjj+AO=#G>2V_LYNe~$p^t60{RO=PwZ;<~ zZN@duIj`6&C0`V+&Bk58D&gIS0zC>p6!aePhPVf*fEFmI{m|LM_(SG3e-|A?*eKMD z?4ns}FE$5nG5XhXp5G<93V%4Oip&Yg2gTMSZFaEkFpzc0`9dG&5A6%;zDfwCf(V(2N0u9 z2)XlJ9ROfBkC7ATMroI74S|~KbS`APfKCCvj)F?qbq0?x_>r2X1+MG4p=Vq*#`ayf z`vuX}*aYGbNe1v_c57X7`BQ>x!|+;{ar-|3{SA3I8) zXc@S3Na4Qqz-lq8$m>GJ>H*S;NwUQPb~5H+yspojea7>wGChHFqMks+T?pW@83~q0 z{ARIlR_wY|0r~f>xu_(g8z7V9*JN7Z1mwW!oZ#c#BFE`cv1wmb7!)n{QpsTp^ixeZCQqNgKaI3)VL4;G|{#eWR-D>IN+VPrZjv zEIupc_-Xv!12V4Okgh1hAy*8nDpy$7hkx0&X6+pk(Wj;5S$;L|*Y}}$7O8-aiwi!N zjl*+R7r8VyWKfY#VrxL}exYLP@(UT^nK7Oo;ePCTi+(z$^pTBGV(e&AJyBtASFtC3 zHrQcP15t%9N1qdv(8eB8&vI@l%j)NC(TRCi_lGs=EX^OG9Or)1v~}bE@?+|-%_KYt zTDT$}>cESSYOS@$zxOW22E)3AGd0SxW7t#Q_4K$VJ!C#x@577Earhb6)kR)~`9x~1 zr!MCjZ^-%~UzlfN&A!Eq6i39MNQPu4Pvn4Y7fOeHrf zA&=STQQNQEk{RKYZ{GVn?~m)Sz9ZMH_zA3?-ToTChcQC~yIkzpALC`cU6r{#U!14$ zkl}gp-`O+P`y_Ti_2RNeKFINw{hQqGE@G?pgwpTPpQ+vDA6eCS!Qz0vr{knH1Dnd+ zGZe5`BVyD?a=tBgW$QX))Z@I4-VDe4$=lcQ`f88ALq3;tUCrj6x~PJrLea5XsG4=8 zFywGucin}XIhOV`L(^5=cX_Km8@OH9UCgAqnn880y%!U~wBb*r`|x=cTX^l{$@m9r z9?mV}Y30K_;gRlmG*qr<=bV?-(jFZ)W1aKqChx90QBLZ9XiVTCXOegU%ck4al)+3B zmo}kPX8->#zW2mNuwvtk?&D(*lr`I2Gk6G_74P_f)&ycorX{;Ipb+^lIA+pv7@H6s6lcHm3*2Pe5w;@zox7O3ZtyylR^c>am6<5uRRsUxOj$IoiQ!B1OkiOdaT>!7$CCGqUp@smG&Tv7T;?+)Oa5s**gV_>_ zPq=GrY>qO_cFZT_1vgCmV!&ni9D9({nsK0mDctU0FzwhgxFd%d(}~XkrO*VJw^wBNJOwv5N<5y@?(V% z8=Jk?FXQlcuDAN^fNw00yabJOKi>`F6n%fZkHc4Y0f0mnqPZ+_$*IXYOZPk55ltVq zP?(zgt&2zeU)+8*yl&~r-u4DkGimYj6^F8ik?9T^3Xtsvg(l9=I06@^dt~;~bNlzEy+;FXd|iPh&X)acdo?TK!=bo!98tkwvY&Z^o8Rmby!|9TpJ|GpFxz> zZWJLJ900z$Sui?-Efia@_3-jXPGd46vgNMc!UJQMK2yKmN~llLBTS{w85JOz5j;2c zIk_;q<~69n+Zwg0kqGbn-FsyEHQmRnPioY`?GYd3dFN`5_4>1}QJM9QnpAjE*;QG# zO6%hD*c#06vF3wM`y4au(W?&`jgtTQ03x@4oSLMZt)VOYa(Y&#wS8V05g_8x?k#IW znZC?C)G>on%o?yyPx};=MK5{ni0(|6`Np=ce5Oz{8iWj)g1f-hbhIdSz^8Q&pomTT zJNoTmzrI_-+8lj8$uC?>d^IkSSZfU*=t-z{^<*Y|qbKJ1eQ0eACPTa%%#(lM%JQVg z=W&9c#h39M@54<_9Tq{!vBnExKOh1~&EoXbSIJPLfdfEAef9zZWd~t%6J8%e6&Lq#61uHY<7X8XvQ2#{W7QQy?He*~V~kE8 z=ly&iUU@kjw90&cqU=TXmZPKErsJRzAarUmwV-H{w~VpQVK?;@fH(MyM|q4e{Xi&w zdpN0&4cbUKdo56{E)Ju;XcE;@FqXyx9p<9jaQN_4_13Y>(~YuHjh^6oENoiruv_*U zFQH5#=+`i)5J9&XY_odP1S6ezV+VRA)8_t2s0X~YM{^{jrRYzsH zY6ylrCgeH)vUVG@*oMY9{2Q5(`u4f57HDgysCAaTHL^*>lna@bFBy6NA{g6cLx<<{ zCAj`=U9b7QpO2_FY&qpWW8sC7s_**@8AEyLg<2GJt}QO-VSZ0ybZ$mFU97%5;EmLfN$o6de-{2Z|^_ZhgLG(zR zB6Im%`=A}3wfRI~QYx&)J%?103y1ioFjDKs(i}={Sha4eJ-mgOEWQYBL;Kbx)HNKR z8QXd^`2y98Uc@UmYAWnh=Wxd@J%?%g=(lbWyH$6l{|nu-?>E9KYOJpNyA$`en z?D6D$s?~_Dw3S!vKp@+|sJjaX;RgdT5_o|L9H zjUn~)n&lpjjjL;yB_|Q{`JH87Ar`E67ktW{jmv8q?ew^4L+{+%blR@_o+1og7$eM3 zgMZ=2QJXh%L61~4@7mgInznJb6MG!P>wVjA;v&E0H&&5QJJH|uv0L_?*mxLh8;$|IPh&OK{(8K#&k@%v=`O=b0{s)G(TMQwX{200 z@MmOn79bKq*?){6)c25^{7PhhkX}+EPJs3RU`WRTet7?0Xy=S#;z2Skw?gzL# zu2W#Enga?i34U&#_H>07idpS1RT@mbqf8% z;nR+BFrPz{w(%TGeL$6Sa0wLkdX`il*I8(UxOTi~hvXI!rAlfoL#giB11^ihx`(!f z0R_i=!1kkfXWRxIB7$^p@zG)6r5aV#J4{z%(>})SIeOg7=6}%qmY42w)^(wA!{2*G zmYjR~a(V68R?R1RfZykFE`qYjcdZkpp#?r9ur5$cZKUcbkwGdMdRxpddof#ZB*~!4 zJpXM}R8s1ZJmIF?e1#Gqg<`m>KOm=ATUV^Ig#+&Q}&p5CuN${3%t zO$slpwc0iN`(CT^{Y!`D4M|%;shZ2d2o)lmw{O;knwsC?63hE#2uF@Y^EregK;dyT z#-nes%VW-?GgAH3cht;z3B<;jW?6zgXGa672b*g^#FtK1Elw$!3h4{UWbqsta805( z4C0`EB^ma0A@&R`lYv>Juc4QvJM&%F)qc;J@%3ap=PLan&wL(luqtT{8Ag(}=yLDg zdQdf~VK6Gs%gzoUpJ_dB!~2o8hf?iRBc!#Xhhz3yMM*}=yCROb z?rjVK0hoDf9An&a>7T*AfSmOdkJs)t^|&I_S&R`WcwDw`y&qI$M%a)_hrL-B?>yEI zRPuDyU2YwHzEP($ujnVrcQ|;%2^>dy^LA~ikXWpJzd1&{Az?#8?ulhF{0MXPmCuFW z@iAfPzUE){)Y!^9tXno3*d=yDyp8S zU@SBKc!8o)XmmPMb>CC95(7XiZos&=6B}*V+Ru1R;pU3I@K;)dz{#;Tbo*>rGjo(hbhAY@zM$-w3Hz&%Em z@=(obb5Q{+Q=3Vja{@3Zn%=<$WE)v%M0ZE*`9|)7N&#UmEI6TEU(V@J5DVsR>2#`J z#%WD?fllIa0XM&`XI|96c-(j36Y&_=gL;U48;A07o^tY>4V$F7o*p~T76yH%o^7Qr zR=SRCTSi?jUCcz~@_fs^cgHn~v*rwKk*2p+Dc9%kvUsBAV$`$t+Sv3+S2`m9*3{L} zkuNVl4{e+d!tj;MNg*Eg6S>?%9%boQHxSXcZq#_{v~$wWm>tr z=chJhl`0U_tmN%pM}t>Z#_3E*J8QX!BCyf@cI(;TnRNKvvJsP@3Ww41WO9k)1ygrqoBb<0o5Y&Pw8pCSY>-(>Us`CdXQd2D);si6jmq%`w2~$`bb6l1 zGj-SIT(cZ}_yP1j8}eJ|)qTPn?6yHO8sfQ1JCcJk6|z2#)tu_$!Q8JC+B@EHDAuz*I=GA&Wu||ba1j)jmV%1 z$eF_^$BYOn?)P%v8)}9zL6z7tN&{32DGq8^TKl@VW>;2O^dlQJa{OMuI()NZ6F;-m zwO(hulp`GVk6;gYgXa}y8H|;qF9uZ7BTB+OF_U0Xm`IhqBF;b3jns_2lGc}=p> zX4P{?mF`D z9(9b$uz!-3nds;>g6qCyEMoZWsSU=9cxFeLsQU+2TiS%g=3+ zcNx@t^Kavkes{|1F+HE{ln=q35B4zU2z%j7B%RTh7EnN*GLS(8xYi?_yf*p3*YTNLhp*=_V74uuH4|*sWNdg@uu-;wP{H5 z8Y+l_8wx(s$ob%+wd;4tkQyR!?F^RBSySbxvqfKtCZ1F0WA)lKw!3Q+K{L2`s-*5R z1nm{wY=keJ^HV%xm3rplj8|@FjN(Yh2;|40tLRryFAc~y1%2aGRO`9KI%0PDgW1|O|PHsYt zTT5=!Ov$qB25qfTEmcMbeD-d%{AfeU_8}pj*ro&`szG@LXVz|9y^$J~xTbQKl9eQu zibzWAnAUbZrs|XX9vD--GoEU!LpXw`%KC;SKrjl?z~OsisteQs%Yn2GyEho{_&^%m z=z&|A9-2T}$k_vn*7%r)-Z)xfoB;!JHPsjl49e)jpEOR`tncNYCS}Vi`s}q0&fzH2 zJjZ?>HQ1PFo{8$U3E(ei?0z~fMR;#WBMsvd^BkdB3&Mus86c=9KpGjVbwhbJe$u;kbL+x_M9U_;B-qYjEF6j@yG6HK z-hWV|Eh4n4+x=~@9L>M;Ppe6^XTN8GcSK;Eq3+xKow5r&O#W}MdR)X~BdSu`it1D> zYqUe`gOkgfXT#~>D!uKy9*8xhH0W*M;Ad)Co))Ng1*R#BCmr&r>l?>BzszYm%ObVI zWZ66nEK$yL{IKuOn<8-iYzZ3p(cvYUfm%0ZfS%oSOBjF!Bt_8+_O$Sk<4qo{%WZD3 zP$i>_ZFz~_>{1x`s8LP9p<3jD_DhkCK@`&!<%Mh@74A z3k^&X$ar#$5IZ#k4OyCtM{$bs~Q#hZk18r==+7ji>KP8M2f5d zhPjc1h4sp@auk~l+#>Wfbgn~N=5a(KoR@1obHrEI?+ zf#|4(nm(3T(e8{WsQNv`wnm*uIZCmBL#@W^U6xcYvTa>}K>`u~p#T{AzZU*nxOO!A z7{8JCW%K?%C5BELniK$~cEzU;hG+PIBc5|~;xWT5dm!))ChyJ=&Xr>mXbbnckYvb! zkK8DjZjtOP2y7VH-8)ii?yn-~D1IvIm-IhAs(X8(0919g-MFN5@0y+I#d;K-fI6HF zH51Yazo-?N33TVKeBGkv7Gn@BN9vWA$&|E|V*NuQU&`;aHy^|%YNo^YrX2>WNc_oa zXBHgXM=3{}$$ltd`R3N4dx6@+d$w3#!~IW2X+CmVz`_SDOzVZLlPEp7T&PpVLd=_U z3@2uNl$PwMdcC798glS8x*1r43%nh(y7UT~pa<=!(dgXp;bHs;2aCxo)yBRj_BA*~ zL&gRZm>a1N_L?Wl&iZ3(t+4B-+wgae^@(=czEvV)%^NGbTLUr^1$CTQUK1>Q^}RS-VqUK@pIf@>P27f4 zs39`9&Gpg*TR!Jh%~0l6mN5X<3YG7=Wd$kl3QAI0mMeNJ1hL3QuoN2pL1H{~1CRD| zNtAZn^L_ok9@rLJ2`k@3O%&%XALliwdFQ8nNw3O9OZUF4SkB&x?dm+JLvwR(# zhO%$5H8}nGA|v5umWDf1BbFhBQgz8v9_+uH{Ocw?tafk9b4TI%5?!e=gSzrNMwBZm z(<9k}VPVmNT$K_z;8@jrJitTcqQK_Y<-};h8R}(WIz@@u-i$9cFl@oF-&yr~xSg^Q zy=Z-~nEAm;sE;(Qm&>bS``m`VI<5kP%I9cJsVMqDVBCda$XU#P(PZ0%Qm zR$VR^&sCc)8w+_%ut1J9m8go-9xRDZkGW=b&1lYkoPF@cK&4f z>6c9j#2+Dn^vMLLE9iv;!PgGRV3)+7P1Eu;&Ve>!71jalzC!jQt)!1I6BZ`!&5^VyDZKB;0{Z{$4D7BTw%q>uOb z;Id4lGLkQH1}g>zQfg?!!nl6jpdUI0|KytRO7$>!<3SQ^@JmN-U51OJ}o|D1by zF=oX01Y^%}8K)Zl&r^km*3P-q(~x;tKI=It=U(DwCnFDR#m6a`!=pZcvJa?(VCrc6 z)+KzD*1}qm*IleL)SkT^t{>h<-R?n$BVl;eC1*&Zts?ICX*IbYANo1pXdPoeUSra} zpDk#32eYT(1gsHTRTM7CYw8%f{xeJZ@k6tQz;f=K6?>HVvU{Gq6~{eeyq+C`wuRGF z#}=wV!gX<^yQuJ)^@U&aj>5?=hrMGWsI*t9bx4G)5zwr43R`hgtu=Qv5fZ6Ym7L1N zCV^|wit(p@4kk^SW1n?R>_Bj;no;6GDlBSYWKSIuVpmB0+C~*r9lAqb#+{a-xr~>W zgfvmUoU=$%N|NIbrl6!f^lFogm;4&`)bBw z;nGgu|HImwb=#I?g?Vw-&YKq!L2-3CBn1?uOOlj|8c?^C<4}NUmRPOiB5T@5P|_na2GYtwgh*HZeor9H%m21w;%$~IGM3^3bvCy}Ne5;F=0UxbYLG^hLMOYCcAqj8=`-oy!al!i-eyM)uI?1( z^itqj`CDMc7N56?#Bm%Tt6H!fhApJUlBzMgcxy2g#Oa(g3b0W{=bFwdfkyxcwo^ofm_@T&5 zprEOX#6Gmbs1X;oiJOTo8ohlOwG^HPe)(jc$y*Z_?cDtKj;+F+IaV0fUS+qHt+27i zh>=B%c-J0t+PXj_?j8SB2Xvi;K|@i1P<`oqqp3cf@le==w6fIL2M@k!q0N{nZu^zw z{xs=BCLyGS4*aV?H63}4)=DvG6@#oYCKG-@*kVfgtC_asIGu;QN;DFMWuMES1@4KQZ%YT~XMUw5G-yauP3F@ET7!?u&p9)6#8-5lXU;X}*gcbGECec?5EJrr!v{t{7ScB&loNMtie2UINMNQe zg~tcegkjlB%k2sVEvm59l?`CxeVi`)($j3Eb4>k0%>VbBF{+m5rrhCRU^D~#B#8-S0I#uU6*dRO;+)v)=g~J+YxQuQ zbAx3_xOLzZavNg^K2z-1{t@1v%5M@3%?5^)+t=sBe#19jMJ|(c=SV0v(mq7krw!7B z%9$*8kU1wq2#{(`BR5LpkiNVuauMIZgWCaH%7RfMe`Yq&Go>TM7h!mSkenJz*Q>mo z*j;kOJj4gH(6FL(E6mif$D+Do0c37vsaz&=fbZQhldGw;y+@RjGoweARUrIn8Ih80 z%F{{YkeK^BAeZeEx8r#grt)imV{{8qf^=0|V6g>0aav>@g4A7LowKO+{NOr5a(u}* zEaqJhWq}8xy&50(k#_;nMbgzYAY4_21+EhWXtwEA2{eL10Cc?XoJHFnOzq?BO^ml#B`9g`C~1+aYq1pU@hGUWc{-NB=X0fr+HV2$hylq!Z~-Kri3k zg=B!^i8WTSWRd?=wT66^POr~w^7|Jt=v@dG@ItOlAHoPJrA`avwbWq|C!aI1XNee< zT~0FWM!KWg1eWFR|njevHeAF#nv8>sHgCHr@Jh`fB`3qF!!sUbh7B_>gVocBEA(2cC4_=Y4}hi;hF!?a<5`(YYn;Y6x1 zA90dK#-Gf$TjW$i`Lt&9C!IIq0EuAm02~%lNnMTq#G{iHtkBrR8q`G|)n=I``%inE z_1*N2nHl@>{@q5tJ$Xdul)1-HLuC$-dZz%&;6fmgAX7~(F<}#~EkYcKIu5d_`m89m z7Tnw*RK_@wR&I?GxmR{F3SkxYQac`hY0;6d>@kN6!ID#xc8j(MD38y=N8ELhiAv47 zCbZZs!S02V@S?ecDD7nX`{E7$oP~5R+e@wuKoIf=MC!JT^MK}4GWwUxGRE2ec z*d|ag2<%!#G+)ec*EvcEb8fP9FrM6@*7GTh(Y%Jk0}}pA#qWXtcKQACN4!z;L|o{1 z({~wUfy^mb5u4#EkoX>HDK(%Qzo*~`$W@-SUrP-E8CMjDtXn9uD}lssUrRunc56q)`uB zVnzd9&#Nz|Lbzc69=ylLDy-|RQM;agl z%ILJ+M-fTX0CQ;V9PTnm+=H+-s9J^e!XjFkMZ(q=t~2^SfSXX(apUHl^Nm{PR_fye za~!^;BpKGj#86X_h~dXn?z_W#cdq#Gt3KAoK}lo7PRS9xEsjL()IzW;H4|Hd{?a+2 z^;Am8!s=u5s~7s#UtKahA-Au$avS}NT_KfY9jl6H+=N`Dpgasd=v7|;_Yn_N*msJ6 zXtb*vv2bJlB$g~-QXAaZ%Q(1jflErQ9nILLvRNBrCTfhg9p4*P&h10*zE&U@8cm|;xQNA>xKy7hEN3Og;Hq<7Hq7a&b3Y^;&a;=9o9y+zJKJ}HBAyI+ zKX?JOeG>^t9~c7AHyJKpB+1m*ObOPk!{Fone!Pcjn=?|se>K^tMZg z?UC<*Ab(9iQlLu-XJO!t!O{e^iptNH{`AFtNF_BQ$0f(oamrv?K#fbSJ9cGmir;?|3;NhtIRYWzcT7;+>4ELw5RDGq*oto&in}hjHwk5(1Pm)EduaF;x~b9GF=n^i8qhzn2#E0Wud;>DjgK z%ZmvKsWG0bzvFR1d%`!xdc4-aasGts#C_}wuih|{sywd%YLWuAn#Z!2>at1A%*dnItvfV)_krIxN|ovp+5iJ zkiVIJ2H$_k@9X_EeG_2H^OQKSTR}*zky9!?A(O~wa?P#R{DK?>NB}7RAhh(Jie|3? zo)m)6Q7>SeNdZ7t)xCgS2wyDlt=|OdE%4NhlpdM|2`~f<2wYD*m%^fHMF1fl?UEyT za4NmW+B2mT&pa*9{0>H;GOGKIAfW4D&?PWmNYv>R$d7I<(C{&pr!=;jH<#{Ez;{$5 zksHE0)#L;1w%*=wen5FKzOWb!H#+5ycq-961y78`Wzjcn)o&vgxdejMCqp-w6=_lz<%O1pu+r`5FlA=P>%N@&iHLpWc3xKCBPq%ycpq z7AfWrLFW&{8C!QO$s6K2y7b3c-E=Ke88w^Z6`>X!dEj{Z0w4$gyNKN~D-2aioaaS} zb)3sq>MHe3THH-Vx<$NV&*7_y)MwH0aV%)sIF_Sk5D2{lZY|XGVQSnZo-!3TkV035 zR@PLeI?aVkhy zVndF^1&D-a*09V`Vg(QjOfi$G_A8`9`s!T?ffVBSbCQLSI?!yu#(iKs%P6hJYQeKX zW8YW{PIF%k5|r}paXapBdL35~YU4YUop{^_*h4c~+}|K7?>4v(OsO4lMK)X71OkWnDC z(60qJgT~k=V>h`jgZNA822p%80cQvjl9;il-u&K0tYx#5OT)**7QOG!Qph;i{HsAP z_RCx$r3+677RI87{Hu|fMaVHW9|UA;<^X#1-cYtQoV;=T zx#MZZ4K-}D&+{Gs?;zGgCXo7$*!r$I6OSSf%7+sriS<;tS@UktI~)6&9xFIdd3=ja zp7TzBjvD*T#kXuqC#oXMjfI|D!%FDv@TDNjy!1ISB5TFPHjKAT4*D!u%`@NLaUk`t%<+^4UM&QfXP$zlmHRh*u+3L&|ur02i>Up`}A}iPD4l*yHs3JKRaq)yBCu`@qM-Zt9f3i$YYE>y3Bcy{Vd4LXc+2%%7TO5@kd5uo^IPRsGo1Kux2 zuDpM@PnN&d3WvI$Lmt#q()oKWX3(~KU;820?lXqOwsz~p^M;~z99XpgahOo3+Yb%U zQ@*&g`f7A9GjOLpLtx1g=IrZc2qPy2R73f-@9fE6Hdet%2D|`pK^wnmu5&yeS+4WK z`-B>C4@+C2FOol%0b&~)tV90qpy$+5{{c`xiw1J9JDUnAe}yYvA3X_xb$yVPI)hHxc|I#(n^{}Yz@&jAVp5<2*fxK@C| z0#r3NSO9SpR&EWxPV8*X;t0Dgqna7q`xfU=Kn~|fP&|X%w=usXF*31C{bzN38%$Ud_2M^M+ou(&llwSv<^ zaoh4vnY*q337+t?wl~sl=nmoBO6#C;u$3Sph_wGQWJp4w`Lw_#_7Upg`3CP&*a<3!F$oB0@)i%{qr7YSr*{F!6Q zzpS|fn-AWG9rpQ(et-+50ET@k-N>Sf2#|!_m#CzwjcTWhfy4zt4;s%s*R)z|AW7aw z7!Ey=1>hV?N&~=q0TEB-pAE^x{i49fDj)f^teN9^)56owkWpNpcHi+uZhB1IiKW*L ztI_R-U4H?}RQr8xibwbgA9__ZRU zzk5i+Ct|_;cs$=I4VoylrqbrO=FM(xl2Te=Z|88r8ilKmq4h>E#@!jr@&<%qn`NO+mF2aBX<7+%C z7i@2Lp>CZThw8SP9Z!lytfBD)--U7JTlT*moJgzsjY0X*!}|dz98LQ0xKSz)jBVGA zhDmXwZtK~p*151Wz)YVo<4<$Uxg#;PcoHax6qXIh5lvi^BuipOON6@4@eW#pd#%OY zxqooCh89f)uJ(E!%zp!r+FD}?&3w-qnoX_Pw#~Vw^2-y;JZg;dMMhunOzk_ZOd4$4 zxUqSA)FryYN~o?1X{pLFPXsha*z!mpO6!RBbiech^Ip}Zh( zS*JqYGU1Ik7or^pY}sSaS3sbcfntDBxlb0{l02Yo*s$sAJT;prS$`^xnPI5W7wf$KGN48qEDC4^0(Ol%++TYf&4VfQtJdfWEDKFAiNA#RyDE7;^V>kR8Oc14h zdyp2iBG~Y~$C2+DgT9bvX+iC%on{l_PD0&f@5EiOpX!;giCMmjO+Ip!moc_O>?9Wm z3P|nHK<+@;su)TnC_(2r^0I4AI3Y>#1y*#gX-wx>aL-_z*9JTly+4}~3;(zp(xC`w zx9S#Z;RJC3Ox%)NM`^*h+^n%;QR9^IO?OqlzrkI;yfM%7;lkCR0K%MFlX7k#ET>@j zRJrwuPF_^dkgxyW2Fqp-F~aZ^@@?!@yi+DfUrrw&MhbFoa!Sa$t|qU7Qm zu?VcY1GkuYj(doM@10_k=0Z=?U06%d%bo}hmv{a81AI`5NB+>P_)a@kNfh8=Kv%dR zfu&aOS9o6C@s<0%+1<~(3~eKkmRFxG!L9)xHq|^i_IP~D!db|M>)uf_w1c}u%XhsS zr=x3SiGd;t_q{C?x$kKr6x+25HC8upm*!R8j{Aj&oGIqp}XS=utqZA{oW6P(4p zs^kn=$QeNp8}FeP(pAsgV_Wa*LB_!8M$OE+JsX+^UOM0^RiSL_NhB-6rSc-^NzJ||DjjB+otf;YXxYccwD%& zqlq&!@Z3cnBHbM#hjfO~U}@W@pBL{1>cVJ{Ie3N;q|7=;L>FCc#*cHy^*!fB0WXv& zobyRjIK*eOUhH&O=x+TRLOA0`ueBj6C!iW@X;kzA4B}Ohd*5A7ElI!N^qD-GhYY9i zHeTmd*e5PWyDW{L(o;2=EGni1P?Tk2J?>pXr}UxUK?eCBlpoX+_3wheABKM~io=Mk z2Bo&jjV}v`c_8=%i+J9QPpDJlkz45@>WOh+5|;;#kxXt!go$Hs(ITF>8|;)=VlXwd z+XIaql@(VMTOjxD!n+r=7Ny-=bBwQ}pU=<*%EiyPxrfpWN_}{&*SR1a#Bt7zSAnH< zDxdW>cQ7OjFg1Xx^GxF^OM@0Ge2&f23x9cxK26wo)%60_+u)rDqf2XqZzU#=4M0ht z?LiEQXwWdfLen8VgmK%KpD><(gJwfVJ*{mN>B?7I>Bx7c%qNnwg_O*#!pl9l=`~5K z4BD-0F1jGAGS+ogzB@C8{Y%@g&}?B=a{^jy6Y()Afu{ouppWvu)&RE#PHgW);0#v3 z@S_d=8Q#4+kkdh5Ax%m@XRt&`v2D^hsK)9s=mYdza7{NTZ0(SExuf?zIPAYtw52x0 zU7+tcJe}YH_p_jG5j33vyuxeWqw~mo0L{l3^$U$Nr=8tjw;|QMw^i$8INk;kfo>RH zsE(0p1~hxM!(TR^@>CmMKc#M2E9Ks$xNBIAUdHEagJ;S1+G6>>@&Yao*fbK|PzFFGcwTTG5j5d{D zc#D~)KZ-EPFlPJ=US4LcqL^Pc%8!c6m$kIqM4(z7hOcH_D9t>4`Bb7Um@~VX!;ARd z%+2^4!C{OIrrus2g&4k1%SZngT(mL@!ro$ zyDK8oM?S2Me5af zEwv#_rcax9jD;JU!tIE0gWr?)`CsHrs%ePQfKpmL1P8h~15H=Lf55Tl0 zB_T)+%J`h-4)O`jYV1ia^`a5~%^{m3uc{@DQRZ^bw-C$;`CD2Tku^7?og=iAw-Xvy zXjO98J01>CRR&f^=vGei(84F4KUz5JoKyGmLp)*iVvC|OKQ|o4Ad= zr2Y9+6iU*#b~`XI-sFB>eK0b%DYJq~Nz%q964%^_d|IP@mNwLR;l8uK$3=#4WRuKi z@e->qa0K}}>0W&x(c%&Prq#8)5q8%>A(qu4P%Ut&A>?AhL$M9w5u=Y&K2kUO$XZn; zoTiKyesAgBVpX`wMBW2Y<5qqXT)9_2a|zdCTpVOUfVdZR zfU}9sPeh5vG9U29QrIb_=rzB9&Q6NZ-ZgutI=_qz#FDsIf~s&D0rstid`&6OCl8nr zWfCZ+YDFldwiAVN8 zSpzg{Y^q*oY}&t>92yq1eiPs0cq%YZ9+BugJqM^IYaq@sKwEfT!Kcj(IvpOVW2%Ql z&tsh1lc)$)2&)gL>`B!^Tq;A}D#wn96>&-A%T_tcH{a>sdx|9SH5q_M>sShVXWxZ5 zkyR}w$XoF6P@*bqMZD>QYe1WFbp&5#@_zg|@TvN*@Mn)fh#|NEq8d>c8;N#KMF?lc zaL&CwZ(O&|kTho1T<59@YKD<`L^p?~hHRj{uD9=@87FDT7DYigYe2Jd->fpm2OVYu z!@-h&HdCQdp?PwDFA`y@td4>q=nfQ}`pgE;VQ-YG&|Pderc+tZLw9_wC=pqiZr|`j`?jmYcB;AGdPmJVS}k zKQ6z;h`7K>cpM3alBUhRPe@OJKlHIr_@ZO`yVYVqa9DhYWUN}vt#gHz zsq>&nu9Hi9R>sBHW#*&V$fx|ux!(J`g&|`DGcd}((Gm!pL?HfrkKs9ZfxrP?sCaM( z054GssP~How$vP9x3#N7CiOVv!o}+~zgza*HbENQ2y?F)E_4WkgytvQ2bPO|+=e#Q z5J+H!>^mQH&E{kEQG;$bZ$Y|~mh4@><&6Y1eD^Wg@QJHTI38jB4nRu%koSyEdW?bx zf0Uv*$^uaUU_}Ag_S?Liun`uo9WXPNg6*^|TXK{w8C*^tA=T*5oP@9C}w`gIo|=Kr3mwQskh9a!C?v)P+}7n z?P45l%qmkcTj4Y1N_o@heDrFWY2cR8X@FY7qGM?is*{ji)dkPqbp`M2kMRFepNr{v z5_V7KV2Mp5f(t3j7!Ll*9^Q(3OzN7zFXd?lRm8o-WnO_EHEVYIlkKA&c0yy6u*%-z z(=Oz$Bj~yCDE>0)R(b=uz2#lRZz>zt7GMclloh|J0Y7zD_}1cJToWj2^E!$<{waHp zdhIbZV~Mi~1G^``z?xx1=E(2gY*b4+M^Tot;D9%1693g>kG)=jj>Qb+dnZ$BBC1|( zZQm>WqV2u>woOPTe2YjUnm7-{R}sx_BiidYZKN>ZCxU3H6zM8AxBzhtgc}&j9RPIM z{pAr7jl=Waulu#QF>7o)Czc05fKf%I90q9W?{n%`((9)6r+IT+uqhGYr~%ZTCuG<_+m2V7zIKC zRHgTY7#Ew=4P5RGayUk-+|`JGyX_O+Rf`Hx0c{V5m&SMxfNMvwY3Dd~ixxvDD%Va_ zyN=@$WW}#6v9Q_VFZHjJT&*7N^B;+QgD}6RjE_^ z1X%g6*<=MGp<@y6M+xZEqRLu+IwB>O?TtoJnTIz@!d|PvNF7zeXANfY_+Md;{ggAdm13O8n)vUZFCRVkz6<&6?(Tm2DEcNrQ9}BIt=qA>fa+#mwjgAPkBVhx(?&Tdz#8k?W+o7()b+Y@%qv)s09+DDGF za@Mivv&O1`r`XXe5RoIXE>eJ-fSuq!df2lE8w5C#!*2G&tnx8+bY7#vEhMrDMUM3l zRyZHARZXAfRSo;U%Im&$9p4cUMx+zLe43u|V4j+pNgv?eTJpg`y}jhbDcPUg^VHwM zdl>eG{_vO+(H_46%~&5q6^j&XwSPc0RfKzha|T+mJ{jBCI)X3yjyLdqPme>mM*4)T`ZVv|M=E%Um4zDa5O7>8fj7Q-Ts zKhGDd#&feQ1hpOO>$;&Z9y_@>11?fr7^Nj9z)N}>RwMeEJDq=+5s4$ezLCgf+Hq|| zSU*>(PN5~Z1ZYpCzJdRTyD*V=UC##WN<<4okE+x*1h)1h@~LPI!_NcR91wC6*Qias zaJaJRuyX7GW6N74sPm{c@Y^@^*Wcwhs_Z?mr8Z)g-%c4CGNXm-R_>~Q8&+?O6wsZ# z;5s>T>enZi3eRaK?blowK z!t-{w)N42imTlE+;aI4eVMoUbC@T7u(6|{}bun$KS(Lzp6I*q+w$4(RR>65iGTa;c zds$nv-0|J$)nfo9|0!yR0N?N$Xhnl?y7Va1*vP%YDq>@EGdJXlxzrb$pW9$(%=pJw zb7MQ$hA6FZUN;R8+qd88Q{%^UX0eQyp#n~Xsn*z1P5{}Zzge|etuPfQYxmN$h-9a` zFXIzs_%a4>OD=c~%VwKpDD|ntIn+swJC2Eo(3*JKO(~ z*e~<`*}~4A$3H6h4W|(U-@gKWO(1S<1ii++w7#=GL*7f%xJJDmQ$2^YjB#s*)sem% zNH zL%T}D50p_`$q|2HiAZq8KtIh*{5{oYC=d;3VRz_s!VcU~uC)RS*eV>YpXc?V=h=0Y?jE@PoNF@{_O%ATSbwP;0TNk zImpg)P!rE?5vhjZBSH6I=D%A@3uQW{Y0 z?YJ?kkxza>BnM%3t(4Z5gp>`S$5p10hNP9MV3z4kefK%c=wIb$A zl-f9hYpYAmc(v1z6FbqYg>G9rWe#qu!^d2PDw2!8AclN*EJ-jsbQ_AC1+?bp%y&4L z@hcDEwa)PdDuFi|vO}{U&Q57q4cx#B0hCqIiG9&)b)E{+)zFqi|R*7CI zzY>w(796(NR!C?ch+tq=&HLaLz3sqEeMp5HuvYU-eFnz)X7f7s$8Rfe`Wu#A-qAAi zMg$bRi4AlZA40!*6d5C@KW+*KS~0T|#;Agby1@ZUWa?N~erP+(jHQ#mS#RZzuRl_< zWir00IIIoeEo>ZI1!{VUQ@95a9(BsHcEvSWAQYeozJM>l}FM#Tm;Qwy2)A~pgu zwqtLwybsyr-L)2mT><9%ejB|X-;Ml(vi)l0mdBzNx*y1=DDQ275vC39mCvwJji(|5 z>tlt-zH#p}ZO3`QGK93c41_ids_;8!y3W`GPDIpKU6**3>-@3cPc4c2bs^v}rOQZ) zf;%e_=bb%&NkscAhndJSzy5Sdb4Wu?8s6!!gP3HPi`$Xm5=BgI`VZd}<| zAVEAQ&tkX6zq46vWXG(Bu^sdwOAp+`9)!ctsZj49Gwp;B zAr%?Tg(1;c#wkWXlE`aMP(>%vEe8bJhz0NibVASepifc>n$=;{5vR(z{6VPD5SV7@p+QMfBY%#naAuq@qIu$Y~<&5_>mUT}fkf6oJGG<5+nHjS1M+rhTylCqr>r~1; z&ro(0kqF}1^WJrqT$NQX)mkd!U)!_Im74FK%g-~$X?(MGwX!M@sQ4d$T_^%~7U1?( z1meKTCIOX?kTtLC9}(evy-Rdz8S!gl1GoXNdSC_RR2Jc>(noqEURcrPN=|HbR#@UX zNu|Z&oYbz#xplfe<}5Z3=(A%)qA2RbW8Z~jN zg#gTe%h0#Ze87}6*%>#ijEnH9;$tYw;$;J;Vq z3!`eya4l|kjlk+7;+n=R6B}*^!U%Q4T0kYaZFRNnp~^r4l!8mCR2mxVMI?eUO*(f& z!D(BY5$Cd~edAnKd3yWrEGk3N~3UU%wB2flyb|bvdX?A=W-Xux3!S`rr*w|1ihC~dv0Y$#TC80Hv zB0{D*!_w$jWFulPYDUXLDq&zitOd$Lkft(IstZnTv0_03*3DEN6wx#CpIS|_d`{my(?bV>gRj&#rIL3%L7J{5rC`O!hzbr!@q~5EKoNm>t)7U`jAv9wRiO`P< zyuA@RTw_N;RQTfr{u`SO%*6e~71T|QOM6LbaD!TFqb^rG!J^99PnL(qC1Gf{`K27~ zxAv!nrL{-5&ymj7?@HyT$E^bZ5!ANzsiLaV6h$5D^4NOz%e*?uF?^TK#gtwC~lstO~+9R#~PZJu6y> z@Tq9AH?Cp7BDT$SN^xZ~92o1R)VgfyD7##4E5~u`*81E+PPZ}6OT2u(Z((M|+}_Yv zn}5&++K6`0BJ4UUN+WWqg9$yIBGEE?a%RyM>dTUxsB&w-8cGNrb1&(~`p$vpZ>VCT z<(Uu>f>lm8N5Gz&+|6SZIvzWNM1G-sd=V;@Bj5AK<Ng;U zy?ej2Omu^5xm?VtxFQfP`LjJsESB-si38dFGP<*T@vUxYp=DF)WUb6>5k9!hUUd;6 zcx{v90R?8i^M##@@($TGiztDOeVFt>Uv>2`2N9>nW|LYPvQ8fb!yGZe$0a`?dB>^Zk+;)0_!mpW;f z2nEhilwL^Zf+?aAu?9Y79q0BQBUOFt@u!Pp8GiFjG7~>rl(^ER@$(SD;Pb6%03$;v zTFDty*c8q~{-w^<886b{;B|Al8T)o@XGZ>RuXoqEmrnA+&cL&r*g4adit4d-O-u)Z z7nWvQammd@dy6g<0{vlX!c48aoRHAMT+x+YvmeNLR!P1^Fu>b6sA5J2nirFD5#^n{ zBbqN8pe{C}h6FX5N(vK?6(>#xNcNL@FHRut5yXG#@+Xz_8G^T9ZvN#uWH7ZMVa5U0&K z#VPo4$Wo~-1Q^3p7Y&OC)&jok*sy``7tY?>`z1z)?#i)H=E;Aj z{6Wdq$rI?3`Clz0%pR6;Bt6rse$gE7BxTi@v1i6A0=AO_~&9tMWT58$0y( zmzi|7QC;R)XpZR);RDtkPwf0OERDtXJ&k$ zA5n2aM!0laj`U?O8-5G!nfh{5E|^#!voO9Dx$4o-n;SNx9tlLVNu%&5MT+Wl%Y0nQ zf|OhfCd4n??)2sRu+Hj>t(8k%xgrtwnsT*ao0Kug-A5Q2%kz+b&|<7FXwnkiE*0_7 zcco(4fEXH-+tx!1;~7vy+2EE9;llq_1#Dk3uhAlZv$r8eAX`6T|H%0NY(f0ol8R#*R@wfzuy6}xWFseBMf^eaz8v`9v?t?DhS4KC zJk4`tCFw(pHmNMl3ph|-tAv({diqhuQd6P4;FdNRWDPx}2 z@m$9fzk%<|ouL2`gB+tIVJSakRq4` zOv4D;f*|TZ6G7JJp&BPgkrJD@HR>A68e7W(*W>(+OFw?*$(0koPVi{Nc0*D!w(lYA zh7?$sFQGy`deaIod6=$IN7{5unoTr2B&OA=%(DSVlS0>H+PRk?RD`op!Bt!*h0hBu znIk%xW#7JK==VpnUw_TMIs*Qd>@2QnnB$R&Uo;ScF{5Uqx(*QlTa4 z!r}IGxhX4QP#XHgn?6UPDc@el|JSo7;4?yKGd`y{jU zG=)QXP>2T3kJ%yxqKPQ$bCrW?Z5#P=Q;Kr6(1-nMD{fBB8e(lXo4 zV}bFbgaPwVJ&g2J*q+<%=y*_IM;2U?WFS%*^i91_H8@(RijpYkVcL$nuyzBp-@eKDee;Vit4)nK zgf67d-Q5QL$R3{5yenW6qhG*Wb%iUG33|uF)gI>I1)O0$=W`w&QJCr3e)Fk;rce7C zxsTvRxaOHLSp(D~z|ZH-OZnL6U~b8WtwZy!Gy}jbZ1EAvkHrMZ5hZ@}RFRx=N&7AA zss|08HgVokApW3-){H<~rxxnxCR)Jxqr!#AqcxMBdy!o&JY7Bhc0o%;X>a>&Ss)eYQgv z7YYpRg;0EAOp~!ITF_o0+h={%k>Q!jMcBcaQL3#d3)ruBv%+ys1K*rC<2<5Gj61q1 z)`9XZgk!F$)87rwn9mBJ*RbB{v>0tl9U60l_^}`Pe2g2&xjrGzV;1Zb(P~HpAF3RT z9BUYQtjxgJ=5!@&-qPGDM0&!D%saW*#vJ)A;W2~v`pza682{~Gq(t9-dM|F&Q=K>e zFmO5&#tMQJ6k$P@1IcsD){wn5XWP8l@D^XfJ_LxF&xY`gHK$-zDxlSC4BVL1>qb;X1GjWR;21aKu595> zE>JGhg7cSY`g%ds}-NlCYD}9l5LW=rWviXKrKEl4chEt7CG>(qg&t zCj3Oyxqt+QGLE!#cPe#Ns=Q_@fu%>qOG`_E|2-?bD(L{~cquJR2iv1VxxYP= z<65T~8sETaR!o*iGAxBv{4^~$kgRdiG9fS*RKGPe@ceS0HPSxOPtBpumwORi=L5dU zBeBtgX%8FgTPRGNBZoK%Y{9u~_2Hkw9eNdvoSv<@vPPTlh@$x01=kK)!M|(zc@HQ$ z@^0g#*lkLKUt#`HbE^*wYMf9#7zJ<0n$u%dHh3zJe<+@J-A{j7T*U()w~R$*pFh0_ zR7ix`osdT09SF66ZsXLmZPLjk8BdWSK;fGHvAYcRm$Qu@dRS z7aTiF#nP}eO~@@(gZArdeORg4$h8IW4$+D>}xQU^o|XF+hAe{}{L>0^L8N z3{UZqz{GjCon)Y4@Ug=EtGsE;_z*3h2KYW=-Dpy$ygX6ivKI%s`?eT2<1Z-SeJ3EJ zR2S2cxM?O}Kmv~qaIbj**_E0Cc_?k(kc?znOhk-pz-@2e*Efn8PpMuR?>}3w(vxzf zgQ~WXF=N?f*8Nm&S@sE(mKU%9l#{DU@&sLy09r-EVXi@i)^87eOMi?0AC>I;_>JJD zZw<#=Rlx=VNEpd`M8h0}s!)@!i)ZUceS!Bd(W6kuf9BXuIlxq8(;z;R)5+LCL4 zEK?IWty-+zZeU%S0;vErV`0hBQu*hc2QOafpgZA`==wE}{%Zv;ugCC(ZB zYkK;ZP=hsOMBE{qb&exMg9EGtx54q)by4fAAf$9RD+bn~!ll(}iZ_^#0Vte7si`E^ zPles48Jl$^S&~Mv%{YJke?86RdMaDFV9cf$$H6*=zi{4% zZo3Xy&}pcTU_X^v=;5$l1G@uB8kC3)*%=vB8-SCCye7j1$&e+nZP14cwt}o4sd?4Z1bR+Cgp%|~c7AniJR zp26@)FXFPkmm)6fSBKAYQX!{eGq4)#ZvZR681o}P7q=z~v3N3mBj=Xi;QV4A=RbO% zFGet+Lnxl^^$zVJWLo&7IVH@a2D8MS-I>Xgl5mW3Q#)AwkcdV#O&`(ciC*^f~Vo0@)A&!P2Ex7Z5IjFS@G z!0Co?7Ss3Gh^CE9dt%oUI8vXpeGPPmf~Cz#dn2?=>yepOQJA=BDP=Q0aPTg5&G|T# z&(UMC&b`dcEV2#RjMnn8z0e2psw>e_@4bRqQ5TH!fGmu6mAC8+`Vc%qEi#O17XV+X zWQ7(@j%p<-Q<*g<8kUXu%(;meAjjc2nZsFRFjbXxucKgp+EN?mjF|>&5RNU(2nCBzcKfYpl(MOr`dt_M$Usq12dIpz62K<&U)2_s} zq*&sG!Fv>=J;vt=oInBHj(iB4?w-qjM>5cM8}ze^;0Xs=2vKWot!8B`H}5B@17oJj zFZfpE25Vpq1h7cTJXn9JtFTxQEryndI%jN=$!GQ5ruh2SFT_}pRSe-J@YGr9V?5^Y z;%Rj=?BTejR+r#ZBt(M*Wnwc6k^^dA_syKS$A04*)6TfH9hdksp~GN-v|?NDK8@dp zln5L!Uyb#USS43HCb<>iUC6gNp3WD~xfIdOys#?{e&-;+vAP{s89a(8KzvlP#Tq-hO!#7mNl{5&Yv;HQskUr&g1ge8rqOYqQtB z^RQp{aYlG6x324Q#wwZ87N7KK&mE@6qq2BM-umJ$+{1sA#3wS9NZo> z8uZ}~Rf23)o^xuO3uRiymcCp5Bw9Salkhr24r8onnxf}nkJt@@9QKcKN;ok@EC1q> zc#|)PnxuS)_u=db5Qi1<0k*XUPDsVDTW-nI+C^n`QF&y@!Itm+2Ar^+D|&dT(SjXs zI%S)WxuT6u_!Ip=C;f6*iI5BHVV%by5|NA!s<#o8j*L6e6@+1E&rKzd zR6@9M=;FUM&(#a05C2{cp6@R5a0)$igjBSsuqW^*^OEZ0?HQv_fm~<+C>^P5+zf0X z2x#-;y=IIHG)LV4Rl@hO62Xc^fh&Oy(I_hs7)o3{M})Xdn4EF`RH&nbx|FWeqP)rF z488uo^8GP4$2yA=K5G+eCy!yLijs`$nYb|1FfSV$;}vF2vThuMFswRjxUCu6#NjKZ zuzPCQ9WV?&%Xcts;9o(44K_I*Xx9|r#54|bMv{folOJR;M)*;f?jqffd}zgtAHM=|B3-8(%`x) zthr8C!@6?ZUvS&?R9uez2?=ZLbrJD$2wA-*?@}vrv7L8&yrG$Mwv4Z!{JW%6eyd#D zrh;F-}iC3mMY2Lu6i-cwjlQSG`($6!V#c>MTS;>*3 zjn=3v{L6E_VvY=DDjR8WA8pXkr#NdN!V4uw`^Xg-3C>e*xTdH4A&k!REa(|cB#1Bp zxJA7gxI{$=g`?MMR=Z?Gfah^ln+;Gs(~xCf+ky1OD_*eu`0zV z?sMH#Fk*uPQN;pUt+~tpDrRx_D;IxN{(bo$%m2}1loW{JlG5KGI#?O7?nYTT0nHS! zpwk03jT0n~zfJ{C4=c;`Dlq$t5#`!DYdx} zbJnp{W22#D)HkK8PHrN5g#~3QapD}-z1G-io(j3x4Q~%c*=$ki0m`;-`3uX)q5N8D zj7f!BG_zpKhM1%;Sj9#xo&kJs%p9vzZ%>8^)Lv5NKT`Iwn9^QH74X z$LxSbR9t{&p4K4FYH_kIr6TcauF}C(H=E+YO-J0C`Cj0IG0$;NY6BQ5DrtSXvMe$o zU7!$hAj?nKhGgooKLXJPY_J6M=J;>2vh5i=QwEOW;>o?ZRUHGiwG;0#k~ZHa{6Xei z*?#jOEh|C_z!(K1i{2-0q!IQo)!yLhqqlsQB&@7;AqZmUMRGrnsUTr9ph$Y+;d&&M z+f7NYVHJrftBUXc1mu{_PyiOxku+o}8Hib`glnu9b>Ps#f8>CZ5Dktmfw_Xbmw4nd7{4ca#BG;Ym#2$IV-qq6(iL(=WE=Og$3gITJWOfc`m87Dagz4uj zar;U$C<<*o%ZV~2&}nfO6VM{=>2+vz0lzraSmmO*$};>*(92eu7x!bVpi!Z*SA!1K z`d9>6-IK7Z4z1U6Rx!Std%HE?{Qh+_$H>Ti2tpD>G=>e>*iuZv1NkWEq)=sx-U?-6ew9Rvi>0 zQTBwCq#^%Q-Jbjzv!IY+6|{boW8V>nJghD(MP+H!aqU($^7!gQYNaMLq~o3**V@`r zKKdNNYfpvmw|$Y8z2nb*ZkeOXcV|8~Asld15kWMvq04so6!)P~#@?tqf9_;>X{gj+ z+YkN7+bj_jhWO1?9l=nAb^<W4p+4U963{N)7*ke^aoO7M~NK;n5KYzZ9~YuYfd-u zs0BAQ3Ls$-CN{t}RKJ8RKm%sPLX!aA*~F-`e-Ho!S!bC-#K#`%%UtP?YwutTWLKo0 zmn(fro)n#vxZ#63Boq4dS0P0^5RJ5MfTERzs7>m|%H0HgQnaf6 zf+Xhxd!5Ug$N3Rvo%jjH6#hX-1|ST(rMpWXsDIR=@o&Cdx(X*QzUz0)9tD`u#^kWz z_h^woGp@Zq6-gFlKnY=|0x6~VsY+dNSwm;e4NENsfdUm#s^&WnPDQjT$E_Kq;^E4H zeC2otThBMR0)C(wgn;^CzeOCBS=uy?FPq)MmK4Mh!=@U(D1n@c_y&I99AcC_Oq|0& z#hGFVSvrDXP6d*OsXxd0UXIB#IFn)}Cl~DGbTI9XgZ!~4zdd`L zk5ojfF9$BY=4g`U{*LocY7t1Z#Bc>3goR&ZEnw111$wy;3D_J*HW!A1d1NXs^Nbo7 zq<@3}Wjk-tt3KLcSnQ8@$IG{MeOF{Rg7Oahq{Mw18PFtK7GF*uPD}@;sYaer2lqT5 zim9f4g@K(D$NLCc1qP~l{xY%YF!n*5m=P3gp%Q9X>##pn8ScC_FIT{px;BR?nqX&v zfYgLDm^s?I`Iq}c2{@jni#n*v-JvQ88N`J9XJssNVXkuSy76r>C#e~1=MQ;XezbqD z>Cd_?kVMI6Nu*fZg@Ax62nNco2XP?FjW0HNCQ_wr@e2c?+<+m;Fygri{(M;r;O7ZY zv1gz=e-gfLuKa;qt|#kjtqOw5Q8>hrM)ka*g}0iDN22sq?jSmw_Tj<2aWEYn2+N1) zcMdNOCk(X;z#lAzIAFDC47;k98pD5l01!9iDe-gL)Y51OPNjhi;L-GBStEYYMoI=t zZ}DkA0+}k(jU6zS!Hs{euOMGo_cE2-kO;=WU0{4n9tg@nhc$Pda~b?_pP_o~k^YNl zB`N%>f&YQ~iuw9Qrd?Agjpt^x+$ID{5lB(!xrB!|Z>J_66;bc_N1{jq=pcgW0*}#9 z{FNA2Ae~5gqRCa&ENm<1TDU8+#RjB+9F48x0y#GCT{u_GkH!0d_R2H6g;Ejif#7xT zXtsqDoLvN<%ft`@j%J558zD1cak5cl<0$Xxky9eyGUWvdHNi9j5z}5OYtb7&MF8s? zN4Jre_(mlQFRv2|N{B;cKmM%|?{^owFk+bhT>i^tEQURVcLoFZh6G}CP(fvg3d?&= z&SfZ+7v!ZZlbTehD$-#D4qR*{i4q@V)(`|HAce(%on_ewvY|tb`q~XaqRjq!mOFV) zt{@^6oWOOgyn5@b!Zp>+e5BGPXVe+<;$^F7%=hs>m;Y@SS%BUys}v|f3#vndmaqG5 zQ*ilBt{j!~k~1Tjz*;|qsewcr@xnYuT*mz*lrq&Kyqdtep)d*xXj$wiv(k!<1jHGT zAbpCBkzP})0m{4-S%4Te>Z+CLfI_F-tu8DrmM)-a?DDCVgLusTj4_vtUrRrlD^88O zF*dh{WFbfCl=5wsZdSr#+2i)KSr|`B*FwF0BkYqfwgq%3A~kR$6sx2xIO63q=AbuTl&5SQC?dJym^PTJ+y63wMrF;YCD;d!& z6e5kIL?KDNd44zn?4vXasmXLKI)tn>g{rlB5XvORAw?^F@>~VTYc{1&zWWi{Y-eg& zXBr=0NV^sJYlGfyX*AxA+Jrk$M6t?QiZUYXw7MK&1zm0CKT5BLKu9xULvr9D9kHKO zyCz?QEJuxHsWvs8vZ@J3VM?KFoEZQ15e@eRbSOLqV*&3rYmuW7skkZy@dz%<} zGR4q5X{HJ_CG5Gh!qkNda;f*&7i4YyuIJ@kjXzPw$oZVRJ)?tr40QS~UQiB8orX!| zLyVNMF+5Lo-0a(YI3kCxy@KF1vMkdJBRfZy2qommIv;tWxyntny6YBsP~Y?|?Qzd< z(2SY5pM|xr+~4D>Y<-2YJsaELQq?nm+%8S-bwmxAwM0{y*Rq{!e2?S#tTVs4yj=_% zpT=P7A8UNAIB%yIe;%Xf+Tb@Lv|{g;eEz$bkMv2B-ZkJWtoIK2 z+4QJMiZGIuoyPyClKi;zT=UOlKQjtBZZp3_H2m(R>}Pzo5s=3k%(qY`qO4qP}?c|X2EpxxgZJUr#VxLt|DRzqhXYA|&wXHnO6 z6M*~&&W&Y-G_m6XejnR;zmDi^XXATYIUnyO*L7}>F*?JFZD2|_`%P;PF|Km{IfkI3 zEJZvm5TS=zc!X#s*QoCcNU?ceDbOtL=;|t9g(XB+=?P;@WSA&U|CD zGKSz=`CSn!UCk>!%YEXn73;U5=@g7l4s3bH-Kx{1uMb z9?*v@aG67)P%jl}pFvx}!-NDD14zN=pOg|yjzFOS>xo?RXL|p{IzPU-Bfdc^%lRk2 zW2E@{3gxo>B*?E4^aWrZCbVq>vO{H(=>uF4pq*6v5UBw&wGC`RB_Wo-1LnVn%=^W% z9K~E1jVyTaPtTuOryK0`aeFE@3LW+^RH6Dh9N!TSID*69v^@XSGTt@k+g7InhDcAC zEBx$T(Cr$dV~kbE8l6)<>;R&v0g{PfIL=_n!fBpKITJklt82*pDP~-EByQ#aeQ&RG zF+>~^*~)qQ>M^+TxP~9-c<2Fm2pq?NrmLbL9s=kMkg*lUZ$|oFF=M$cduLfMujz=m z#dk*#uwcP;i zyv#Mm?l^MizR#yL<~;E0jZ4EjJ_s9%46o53Wi=cRM)T5AD;uV!B;X7kW7|}5mkcM)IzQ&CK(#?rm52}ew$e`UZr#;Xwf32+HZs#-Nwd#NJ6;5b49jUBTL z|EHYKNjv`oSg0JEIa(KtI@RMDKLuqs5IdG(bSgOp#kc~P?_6}i_3t(==$5BOM)+gw z85aVho#SdfD16Mi22Ly_?F^7aBZ{=K4|J{6M5%z!UZY>6V*HB7qeTg3$r4TgKXlQ# zoS^?p;**0fT^Q)W1^&Pzn9-fZ5(sd>U|Q%MBZ5a%o zO&EWotIW%#(<77`6p~P>@7Ku@(lkH>r32EyUxWuqJ0=1Y83jSCL8Yt!|Lm(iAO$*d zBqK&xez!!L{1S7Vuk`rKn-bESTu1}Vf7wMKfFB|#Tj>OG*j2w%rCmMY;T1sRBtpTSIlxsSUbmv(T zfe@hX3i$JdL3#vHI!fSpMFevG_lk|k_uKM2DLLZ!7Z|uX+&Q#Ht2F|W)*jyb~4|uei3QQv_N$vEwmGuhV96+wxY(bA$B4|lZt0)^?I-jpD zXD8pzxM3@kK`r`|v=FFNq$%$nk*nwEmE))@Xc90f3x^W*h^ghm>OX%iNE)bu_!S}g z&Kok6HdYzZ53gTV`!`RJpKfgz>@Q>of2T6y24 zY<=>%9s1g(2SQFj>&*TnHJ)IF7J8v_k15i$Fc@Y7ar-p#G8M75WGu5CP6i#WNR4^V zVS6&8FlH3X*{goC_%79&7uOSok$CegKg8=G1jJ7ugysXSIWWLoUE0kcO{RA$K!_FX z17Uc*;C&RgI#S8Eus5S49<{V*nxc(Kd%Cr%X?MFsgn^9)43hSQz;&xAAj%*A*)qVK zR^qnC8X9uoYSfyvP{@o-xM(S41BWb}XtQN*Y0O?_9G~O2errROzxFLEqt~G;8+~~& z*?)S(sv5F0bTXoRSFyi!JRXOV*6%3PX6yqcFsLfcfzS}UWk4%M!sBFiXh)-r_Pm#+ zLcZdLrPC*sr&mH(EfgoR5bHXpFtXuIpa}OX5M)o1_c!`AW;piSo{o`p z^ubr7wLG-!clp9Xp9lQewr3TQ>EO z=PAaAi%aA5q|6z44s!`(4C#o1|Jm-ncjnQNbLq=Ppa(_(&Tbka>!{dtk7ZEmP_>%Jd+AiE(n>MP1GNsiabPK={mW{zFJ2Tq~IAyr9CkhhOYa(ctTbcTV-&DIG6$pr!+;C%@O{se? z#yf_$=y9%NtA7tq_IIskUk$zMLIep9Jy|`JqI6U@G!9)1jcgF@5nAoF4yyXUFB@CE zoxyzMXNK<|9?Vu0!mxUKUmtq?h_4?KrTRT)q=|_U|AZ4F9Fpj<78I1>pG8fXavOn3 zzja`qH#AuNRob7lKDH8e-@<%6zPZahUQ%XEqaAJUM=4Ojy47pxOHJ>obfsyR#@Dd0 z8|jWTjczMxP@yx2{%LIsoWC3Gs5m2-^Q>i>1sIAb^d!yc8uLwS#NYfJ`FZ>G7nN5m|+8{Bk+3znSg*Ot)Pp-o)2GCC4{Pi7ge(D17ztvxlw{X$Ms2qM@=T#yef0+xhwi#(hV=Xf5ZXn7l{s)>Dqmn$^7 z7Vj>eyp4d^E*0hDV*gCWiGJWdK#B6BNtqL^| zsKzQb$0@A0_SN}CSD%yL8p+)4>T`(nCl*J zHoB6uZXjVjn;KPA=2{RqRr^E0E-n zCXUp|H$og|tc3jfG9T8T73NI4E+f%{D*losW_(8N&P`9|lt$*{mccoY6Oh2Bz;0TE z8@toer09B3n+uaebrfmPW++&@C8id_prbqL_+Ij5{^UFd=bS5N<27zawjE{75r0E+ zHd#1`Ha+34Fg;C!P9|6aNN>@?~=hjvZzWaV0nWkqm^vW*%;aM)y0mC@o(DI zFcHrg$FsKk-aO`mr&d8yfw;^Zb+HhA>2ZB9Q}cvaxB=2bD{AbW6JZ_ew)&U!w`089 znm4;)L$^Bc#XC%C%tdC(IVTl-Od}4AW*33@K5-3+g2;rRa1`hJ)54vf}JzKQ!MyRorPBTf?FS+2AJIHmGCNSbvc@;EgJ(6XtrB?n@1 zjSl&J?8>;vt$rMgmqtEPLXZl!Y{&WMwgJ_HFB)I*t05CFIZo5>G0~Ws{A(;{9SGZ$ z5Q_~7ur1LbUAUG9 z!NfkALOrk?UFu7C$Bhx4ulv%0X<`jg=cGlW%@)L{;|$imo4t=ObL?LBznzUpLMmb; zV?;?1#84BlUnlH(b%O09t{(oyv$x7Yq|KFAol1X0WD-`CW5!H{e=;b)(%;+lLeR^7k49BTcg&ZVEcQe>^3aLGx zx($z`Y{R8Wq9*jWJZr~}Rpq~9-?A18S#l?qSM+1p4ErW8tmX~V2etE35k5Y75&FB?tK7`S${6$X7W8p08Yu_s5&{aWK)xG%;WppGOm zNBVpHi!&qlm2EG_`9=!MS6{H2yjbzz%6fZb!B``SfPi`KGjh#y?y~#78OKQ{`xVVHD~lNckzokGA4575m9{b@L?blCIkG21lSJgJ#Kawgy4il zQ5|?oDewf!{)w?+*@vk|-*xq9cXCT$d$Cp7pb5}R4Y#2M+oDs!#CN^HqT}%`^uK?$ z_~l~ftv6Eoc``1;n&%o|BIF?s*1oeMn;R(wj&O|k-1^&1uU?0olf^Y=PBNzTuGpOb zIafL{3m7D9VCZ4%qOb|H{V+#3?5=!kb00I1yvUIgV>TIM-F5z`-;1$akyRVfo}Sw= zlCO6t$b_)j;FX!%WCU$MF&S)AWiyRE7|KUu;{>h;QEU=K2Jo6#$hW~E4vS&Fy(wZX z&&ldUo$E*WgpC^iQR7`(Y>nF3LoQ$L`1x(vt?w$|&+Gx{Bbs&2n*5CG8T7n8-UPM! zfLOQ^+KD~C8?d3j{PY~yz&pL=ZyVn}aAxRr1WV2oH)ekg>W`rcQvMCU$ZrZC+t!Ug zxTCFjNbZDp@Fh8p%eVNH$haJkBubr6K}w-*4Y;y24p5qlinPT^)xEVybAO|V<;RUZ zDqZygjo)2pEOqS%_(`Np%+OYXLVjWPaOw<1Kos~5phfQpMMchxswh|%*=e!s0yrvv zV8DN4pUqxsUkft@7?A_sKdhY>&OEF}a|9@NzyMs-2zI9{Cig*@56F(FU@rj@FsBAZ ztIwl}QU{F$any2vvq#as1{S$!0BHYX%FO!i;;^G%0ow7VYW5NQX+kgg#6r?aa|FcD z0{5XXq%q>f!)|f!JVO0OX5zx!kMHv6N7mqjiMBD4Qvo3+2}as$J(bw(*q|FtoGLtO z=!M&{a3l02Hu|E4Q0aW|!4wBTw7Dsu>s8GoQR>X=!(G0lN%qMyw}4*cw8J+1N}w^k z=K~%!QGKft!=!{BeXiWyU&}Re!t?csRKPs;1Tn-1?X8PXP>+?I@l_YINWPtYB-Ht6 zD7{cS)ZkVBSo9IC6*EL+Dl@>=Dm0B>lo}hch#* z{=S$=<)gHRNYWLUKYOR?zYm4}YKVu9IEcE1knMODAl0OA-|et86qO%xzS?EKkd)t7 z|DrRgNP+P;?A?%IK2PX3EJa-k`g$+#*?2tTlDKv$O z1%YYy_@Y>+vY^owiR+Euclg9z8oK0s9ecdY2c<-ZP7P=N1X_RSr#x^;;UIY`K%EiW zPlA%Y;0XWVbV=x0?`eVqnc$mA*l3{J`O6%E{A21Za2oK_yx6Q44rgBE*w-pkU28 zQk>JMZUL`xSTAvf+hVt|>v6dIW9A1brC#7=dp@*6{RHkuFd7^Q;Op0+l5Lc8xXJbd zdV@#u!BsB{pnV^Zpz*4&-xlBewLSF{1F9v$(sUn_dw82wp#@6{RzRx_2=c-G@dL05 z6#lYsP`3!>)!{y0U&OZAzmjtad?iL0{(8);@P~Yt`CpWOoscTq&yfmsxyz0*@7u44 z-rKl^w|RXYxDS~+NpEOti@y!bx~_{Kbrz2Km-wODEw?;$O>oo*uAq1y${mm5&g$Eo zHk-;q`x_fp(T|*CL4S6IF?Zd366V(CZL4=JVGbv^vrw%Rbu0PpOPgY=e_tWu{*^wT z#UB^P1@IoNH1T&Gf*~5i=EplL_t2e*q_zxrh)=C)O1WJKc{F5S1Sir5pht|3*pa;o z|5RK;Ckg^oV`GAp6=j8_l3O#J=s|^X@@xV3kh<7`{3=f8Lu*-CSxse6pGA+qg`O|p zV)`*6i`7Q;88t=b3+OfUxuM<JZ1vbCHXP2o~DvWqOz}*@)>d-5*S|zWfCD%7(uU zaQRhM2&q451Kk>{%5Rhl)4;d-qyTi=NS$XXemzQT+2-u{kCuaTo;dc`5fbLBLo%K& z6@vn{9Bf#mG~}qxwCS%$AkYZrH^_!aBNhPJz>9{akP36y?qoU#Ak`>aj&GUWCM%{??vudv46t{6pqQd>gqMTiFp&YBWL@?%~#X7)wp?c&Gtcwbl3pwxaFj z-exKwL-NMfOY2~Z;lwX+Y_2Q2fEjJ0DQc|!81!dQnY|#&nKaLZ@>(75JY3_5ABtAT zPxk23?BXBwc^4K<4_}M4j!5DF>k*=k?t5}q;56dUCsF{J69th7PbM{r)R48I&a5Cn zj?-m>0`r^eEn(bW%2dW?rxFQTE@??D=#=GvV0)YRIa)ONt%5N_g`;2`iO4)2fh-8~ zzTN1PptVeef#R#}Xm?)Uq)UQcOzO1|L}Xubt-62M1;)PKoVci`_DBG3B?nKBuAE08|&Stgxs)p$I9j+i?$-|X`{bab5L~2d9bo-I}73EjauZ& zc@8m1J$6fvo$};tOz21dE{w$B*QF`*)ZxX3n2`P3qWRUK{%{<4aDm7;kIa%n09ft{ zI%*M!RV$*@$|_Lkz+xx5zuUK0zIUVFUme_hW8{p_66^;VkgMU`-haT%!?aCC1L>U# zKD+T)AMH99Zus!RYH9;aSvPW%9IzU4mNhT&eni5~%&IO%sv0PSD1ZT~hu1dn?8kUZ z25&Dl1OSUc&>#5xmXHBe7~7cu zT)-1c2$jIDdG#+WV0NggCO5=UC;}4Qa6%b$QnGnll0zDQz;(%))NEz$bNJ!>qNQU{ zes_Tm_5`g2YbDr&=63wS*2sGf`Fm9F+Pp1OS@u#G1-n|esM(1cORddSEMfzqV~(iV z(OqG+cKyz8jm+}*hVS|1m^bQ=h=02@ggS*dD4=0)hKUa3yU7kQHv9td!J%=y54|{d zT_;Y)`Zg)9c(kh6vd6vvu4O7KT5_jyh#&ur3)$J1K?vGRjr;SH!G$rZ_@;}Twr$*z z5!=sO9%EDoFZHq_uC>uOX-{LFT4HbK)~nhi=U1*OH(g*IA> zk1A-~te;}(RtSt6;vHDAXt`fwrJRsw?Cr%t_w5`f*;f=i2tC1okFaG?3~(EEQ5UB| zc&?VgH2_uEEEbSlco||f8CF?5*q3a`m;9%a5-4~f|H-o%kPmW*--(2eIh*@)efC8& zeMFz{_mcvi#*+e!`4hJqe>MoJJA{xs!+R>(2#RCE@}jg(ztP9``E1_|!>PT2Ecxqg zxl^6tU6n49MCI>~^S;U@?G#xrFn-V2xM?PC8kuT6>!FulIe{g6yK(H^G|JRw9vpi$ z@HLyFA8AW$HZb}Bd3(2KTaxWAuU5^|-2p-z?Xy{@k+?|vw3=gGEV^lJnh=O6f$%X# z#sULE2*E+Z2#}4r3!94*Fedz9A{=2qI08r54*S6oe(-}I{NRWD!+J~pzTe2KsyWwO zySwE}&N-{HvT|09`xtqttdazy*+{@;KtG=pI)e2wh36I-+{!Jy<+^Y~T^+d*hLRtR zt47wOKktncSj4x1Z}rWe=eDr!wA7rRThAN|&RiaJ>210XGXfPg7bRU#UNtR>COOzId**e)D5ei-KxK@K3r zK%R50ZLsO8zgfF@tX_Uz%@BTp=h?%)l|NXRCqbdTYPc3*8UobKx!HjQ)h6^Qqwa}a z6XJ}AhiA3QyRqu^({$fDbT>;x8!$NbdYJU@ez*;uZy2QA@i!C>cr@WXzzW=HcMvU+8&xk}rV5&lI&Ecl1Q`j?ZCeY&ALodaDb+{brWBw!UexuS!h;RLOrW+3D8-Nc+WBF z8qajC{ySJa98E01y={O!9DG_AKo02-19=S_w1+v0=Y+#`xclD5uesjeKW01Zu*4E7 zE0Mid5DwpR(9DH8*wW)cI4&8GM5xmQM_ESe{DGleP+AC9`frLu13eM zduV?ayZuXL3#LA+H**5U^n6oOYzW|S)Q_|45i$Qh+YaMz(%g<3*f1t+T|`Pr?g96z z$C8K?B*FkPRFcwCoz$R$ngLzhS;8-=>^<4xXEi|y*;`KcY~AoTE(lFpVvM5CcaM>^ zkBSDF*#IK-LBRE|FJ?S2(bM;W6UaDTu+CdFZZeJcfRd7xpQ$>u~wKqtsJt7N2Ahmtg+&6w}cZ*x1*J?fj&vi#l(eev zNhnltk_QlrcXZsupEG{{ks3QZ=y8rjZzZ{~MIP}CObzV7PQrD;8xU*)=QfeVE^ri# zw34N5D|nRxC-9~1bQ-5~Ou+u3>WR5pMf26;3wUwAVf3WO1>I5%ui^^+Jq<8fhp}g< zx;7L@ghF>MZ-@%a6c=XWRGDFMXvGk*3e_#TGABV?JslhAn$zY&1FJ z{PmhufJHpFo{ZU#N6S5Tch=*O)VS6*7{i?#KSeS;;2<%Da=EE&6Ay_{)`P;3guU%R z?RF2m`om*|_Mb3r=WWQVIUU83l`DeJ7GbR3H~_sqbw@NCl}1uTNzty}lFw$8pH=Ki$7T%jVa5u5 z-{K#DIzL&hTk)HY>%Ki49YuDsoTXH*#@n@E)Ip^ywY>l%R|$^x2<$AVC_2R!wRLfK zN{HRHY+ILu^o{{9fHA?;6BvmzfymKi7WxN$D1jFz^H7?7g8zSrbar*AVzMe6T z8sl@7h`b+1l$1=k7Ub;L1Fsn(Juxq}W=8c;$gpW{u*@)lyZRN#*c~&36rCc@n%0)x zK!Q;(0ncDu?7mUE*WfB6$-j56Vud+UlfIp^RY9oEIEdDH)aFtb1{^c^K<>B&wt24; zdF4Y9ll#|mTz&V6dc+!4{xM|Ve*3v{+TPeLEoeTHw+_~F9$|9Fu7CX~-m;iy& zZKhpx2UNQxoaZxFR8+I!%TqH(5s?d3b~|!4{uckud5p&#`}Hqc!t=yMfSa%&qYJ>2 zI;83uF;O-fCFn{b+QVyce*3I*25n;}Ii2z$LZ-f5_d$z;qn^(C_)*qCd>;PWC<9e{ zJJfHuUGtu#=H@P}Z{UGy*tRJClu_aQ&4cGNHoEn>u9q}sJCb%y3IUb71VuG00JfTI=RF8VoUmlG&%Fuc4)gyciiDbyPi*d#CkO& z?vC{tEppJfjHw+`NeWGQoED(Oleah4Uk1(%b!~#wqqsnYjatQ>)ZH);+rZvz(!i~4 zNULmC-Fw*YY0h$BYU1U4F?+^i&V5O9wp+Ac?)aM=JSM-2$$nM{8g^$u(%}uMH}!-s zXVbeWJoFvTvW4{ZeH{D@!`Tkah;qKG!Y4sPYo$d9l&~F=Tgx=NL8dX775&q}1Yb#s zIPc@%YwN%*HewY761i*vol|_84v7Lty@;rh%Baa{zZ~EAFe>m*PF1Q5!yXh%8A_$e zxeZ(K^_+`$imxaAm8R+i3G@-9X-qy+gT(mg+NzfW4ny+6MRp4zpKh`TOzQRa*`_a=gRv)6@G#oL?J0ipe={6QdowQ#d_kuvmHrTa7vm zifJapQ?Uoo!)SCoJqVUtY#Mb^JWV6h`PugnYUFPooRUcQ9FJhN@$V%C?02$sOL}v= z!O!vq(nNkb%Jw^#Yo3M@FM~OK6BFxOX`UpIe`ibse?U-h zV5kNbWn1Q4v7)8Vq5jYq8@Q!aO*wo5MxG_$!raCiyX!ET{mm1oD`14Px$kw%S>F7I z>HoTC_0wj0L@kxQD5QP51p6#@bloq>^^F)5&m`or$3Tu_Xl51ZWM)9Skcfv8Uq}bJ zm-o1>cFUlHi+<3;Gxsaw91Nlx=2whKfQ5>?mtl~x|I32(Hy zvK)I?{NA>-y&e3xN4>S?CN#5m@V1Ari1I0#$#Bnj0R2vzUh!UgAqT(gPia6=98S(- z0Shr5_(SlZ4P@lM0bOKZag9p@=eC@Eqn4xIUR^7Yg~!o5VIIVJ($72wYJk3U^i~#D z#muO?hB!DZxZ$cq?VKg{s_zhd(io$>s2Irw~K$gEG+8)ba6_#5j_k8zCN zGxPH_TcqY?H(;r>Hupg79$31u;MQ(wSMjW^nm?SG`^TFh62~t`jbQ+KHSi;SiuSKSg`7zF6wtxJ}UVJ)a=`ar&Ny3)tXwL(L6GWiqHg4ev zD0S~Ckfv!A>IgBx@=+H9pnq)XPp$XM*4o+ie%bl1OrudXuf)V*I|h8ueG2DhT+O|( zZuO8mu8HZ*&o|3^d{I)Am7ypUG_%m zdA3{IGI05heO21|Y3;I%)40oMR- z_2sKO58fSbJ$4rMc`j=8Y1xPG;N-6t_zyuOuYzY^%t6hV?<@UvNSo&3zO*Hl{X}Oq5&dGaS3NzVxwdCe zWOycmDLGIkb~K0MJZ#(D>eSJa`cn82-$n1#z8ANubO#l=0-xOaMKA7y59k}wm?&(q z;6VaewC`lXeyq4SEy2GZukpkd;I;SX!U2?()Sk5t2}tdKINO9Bkzd6kbcmQ9;VsGO zA^jPAFm!<)8|X3tZBO|pT(LcO;4{~%{@tU;-Ch;nj{K!KGVB{{ku&uI@LPNe`z-N; z3c!Kw+R`=gIb%h`4z!=))wU^U1ILNk3bv?K*7}+JI`Erg!@euyOJRq+JrOg_hS~+@ zJEKm98`6u8-)SG5rvTP>47c(|a6(-Y3~Ja1(fES)!T0=qDSST98;RS;s8#}6^7jyg z&>bEuCoB;(%h)}G=j7Q5Q|Odn?f+w3-);+Ee`#Eu2KqUu-m`=Q)%2&_%IBv~-|+J# z;tL}qmuh7HvPSj@HfR)Ndu>8AlVIhdNd#F+s;$VP4 zJ>!ZK=V?c8<MQ=u7)PE_YeqSf7L9+9MD-b4dyF0V*3-NAKE-Pooh$6p<6_ja2R_=@ zvjo2_?m2J`d&DK^Hi3uB{R_zLTjC)5?Mr{}wf&^QpZWE-0F8>CXe+pnsOYW)%awGC z$kRg7q75OKynC)~_*{_W+=s&PXhS`hI^KJk|E>9?JEm&VXpfP&KBEsLcYzI z@n2v5#+c#!CHoIb>-X-Qvl_h3b880ey8H@1nSN>j!Tw0W6bvY}t*vL25?&)7@kVd! zUbqUu_)F&-Kfc+R@VTl`{4jioL#+>YNPV+o&NW)&)tnKj@Yq z3VD5>Qi3!6zSo0_mAt5Ad68PYLE z`!-)5{GrF}VNwFJ3du(g3C>^T-(zb%ezy`rjE9#qT@yuL!BDLtV%AX5J&_-_*SSOY zB?jt2zAG|GCBKkrj)HKZ8Vf&Y_I*QYuA`s1cK%;Qm;UbZ50-!Q|3IUTX4-QaMU&z2 z(~JrkOjS?a+o=a4q&(cwr%1J$g|wD_)hq!!y!+cJS2SZQ3HM-;e@Q$FA^#Qm=)*j8 z?tAt(bsSGx{ApV5i9bN=t&&Ew;R^Qb&m+2t~+N5jA8ib*oiVbZ03Wi6| z1ts@`OX_n$#E5@kb9iQHS?EVM_nl)raQ5LYFKbj5BjckZ9yyfdtW~xzvnA59V>-hg zZVatv=f6+`8u#lX!;V1;%4`hLxLMvTi4Glhc<4rn^e$QbP5wq%;|fEyPOx6c*VwWv zO!+*;^675y={qro2Qqe#=}AE(*$bwlfoCvZy?)iWpIS*mS1YfO00c4ZLg|t=T*T?J zAcZ-!<`sA+_}<>Ayh_{p`~XOo;Un8?(T{U9QS{zHt5hvW5oO za#|oeJO#=D76(8B*91i!Bx;1sFtPdqmuuDnaoFoMNYITGd6dUrW!}6if6f)|7;XAg z+C|e|g=!B0D5SG59dziE$x1;#z<}&KgUZE2VXV6epy4k92Xj}!-O~{f;q)Mk+t6LddLJ{EKWCGcK1hixZIF@qz)AM>jslpLT(Ogz z;v7~E8EZGRWUBc-f4e$aBCmlB=WsI&y4PRxJ==A7m(K)xl=@wJ$ zz9h6XQacTk{^oPQ7WB?nnIwH__@C1E4-Jd+rdL-sa@V4VGPt?2<%qe zTfVZu0p^n0x~^xMTxUw5ED}F{c(y?ZyV1zH?6!u;7VXH5%d)^qpBrw(?P>$>XdUlE zbZ(t1%@~noEh}vU(p0z73@d2fdwgNH#sjN2a`v~xoS-lle(88&6+{;MN*7GUZ(|A< z7c#;aYEKSKkv@cg`6H0?vh=M}qK41Z$wY;E!}^qbV#ZO#N|Y$`6shYTp@W%bG0uC6 ztJ_uA(9XU=uyCbOQUN^lnewg`D=X_7cz=5Nc_N5k!cqinhhCWZ8a-4sLx?i}5(R`H zk3Zeid%>SUDwjvIt|WZ%$&atR0xyJuO3)XUzO+ti$2#_A+1*(^&amv&>$gZ1XsG*IS?$4Q~TvMV!AgARl2pn^adTi4B`em7g#1}=Jo`rG7irtbZ9wXwSdOodT(PrzsT&I z4`a*1acZA5vxjiLMaMqU|2X|jHQS}6^n>@=OLJ(e^Nyc>~c*VU~8+ zAKy~d?E)7r>0UD&CC6F53+crk2VZzXwJ75gc>iko*USH~{Ljn( zw*2qQ|FQg^%m20Xou?&`An^#lL^p!#R#^=j$v82l%pF)mo=;vo@#v)#@R+^gE=3~J zbtR6ju9*KR7yLi<`PW{?|0JbX8CS0s3DValM|~IPt9|9SpFkO4%j8T*&ukb=6l@mpLW=1Xg}!Buq^TjnD}F~r zTHrtv?iWK)m{#mEU|*N9k_wRj+G4QduMu5K3E<}IzjsYW!K+_r7&GU86dmOdf8fo{&rLE!OyHM&yIZf7;I>V^DR zDV9(n+hcs(I|XUzi0EBG`X1E0iSd^XRRC77VxXaJ7i5aE-!`SETdh-5a4Slbm{O8d zyidHPCvukS_l&hCjJU#khzO5=UBm>IYia_RR*2o8CT3dlzKx*p+qJ%z;U8-L*j&>f zvBL`$zdj0~-cj=Tk<5H7d7C7hX)8Rp2_ga{)Euz0H;t-D?$T3`&5dLXLSKk|4jj-c zjn@~09ErB+r$^6Qe@pW|c)c#iO=qrGUxg~9L3s{FTg~8<-qlhxpj!?Y-$$bk-M6*G z7l|F;vH)p)BD|h@4#o)=^fTRnXCrS#98K6!05F%8J8yw|_e8(nfSlH>vFjGRaihKi z@a_`qoq%c+ul2CBw+*crv?_`b-$0cmAF0`IQkW#E zL7}DTY{~NO4&x8-w4Lt(bfu$P2%|y(VzlD=*eXu~N?&3&d_W4(sL}jW9^M~n=GfRJ z<_D#30?4h|zhQSuy;0g*gQ635K(%ypqePV8LU=tW8luibxJPF6>Tz!)qfm1D8u|?p%E+HsN%aYOn0h!jMEksqMP76&XNJ z8iWL=UU&`4L%wl$7kLf3*5>YW?6j@h@(#ZAyYhtXt1&az^_+f!^%<8^d4ksHJhJ;L z7T}%fx~l2_n$w)vp?Zl`!s z#m-R!d|FD%!nSTp_4oLc#C$`Pz1YiydcG4~`OT;JrJ@P=#|3PH6@wP0DuAr*hd@=5 zEA1NKaPxo*ghB-h%qfs6>18KzqE$td36j$V#y~NBe{Nf(qVQ^vMqrjaII8l3D zfZ!%U>q2Np1kk&ckP*|0(p4^p>IpT-2bG4rZqWrT$?>+`e^U&=fkkCzJgE0YKa8Ap zsmCv`*}HU_7F@gx)XH5>Nu$ecFWYA^UDXdgIRMXR46p%#PYzdqvnz=f6yDk|8=U~( zK!rh&c77&Y^4RdS!c>oHRVgO?VN$ma6x|>-X>HlrQd;|_qPfqwHXWz!q0w~G)CTTl zGeJ!*K}H%vI}-k(X!m^?o%#bjA0YP!?EqF6THe(*IVkWYS5{`AhT2o7x+~q%ZlNn{ zD;fzlKW^KGtKAC9K(-1?`?ci_a3HnIHH|s7?etyX@qF|AkHPn!+##j&M;$7dLg@e& zmmAtwGxZ9pmJ*f^xOGdI7ot=5LOM(*|>gbx)`5e-so(_LIZi*(h`uQhfjN# z-rny`Z!fEF9TIs9E6=P%EQ^Q==MYMmj!<%WZvLxn1%{c1OjchOwrhuJLq7ZiaLlaa6&PshzGR!anO)>6Pez?iuF4pv$hGUC*9dZwqok7 z6ud$0AsUU6c{8Nk6BoC7SW&kb|R7+Qe{=_y+G zByG3}K_vA9vy;eiqMfk1=UKuhuK-g)PW0N~l=fYjYxv6Q_dnk0o<4tZ(}mM*^JvIb zhUm4KsV5(T4MXEzUfHi)8t@$1*$+&;BTqEmfz&;}mIA7GEp%X5Yg}`#r59P3rWHK+ z{)l|)aNeCOaEaVin{2-+q z4a^nJ&bluvo*@XAl^SE`&6SBz#Cws?_8w8j7!~)er_z;$`4n@;&h~Z_(r^>oaR{-_ zqf^CpQ1+gJl{2r{1hnP7z}7Df{V_(Hqo2{9IbvoX(@A!30Ggt_50JGJ zB#@2U36E4`*KeV?0Sb!Eu?-{0@5tD@QF_TXQM$T3Ia%Gfgfx_B%|4&2O=aHJHV5+p z+w<%V#AyBUIb0qxA3D0qZ9VJ!go?X8Fmtv-OzrJPGTulsHCTiL(->4i=+?;Z3P=8k zXWF7{y@s24|MnM`t}_MSyXLc!HYACA9cdD;Th#cF?n@k}`W=>E$=%sTFvfj~5Z+=X z&I6m?eu8m`o82D}bQshAHq+6f$hUI$RkY!-A2)J$`69A*1`>0r-1Yn7wgVenzKB_w zFduSfi+sL=;@bDz%G!rSCi|!`cLc6O+~_zz6RvUoEOEzuVIu95lDo2Ly!ZW!%iWC; zQP!^L1yHvsMUl4?z3vO%t&y2v8~>*dMYw;K(Nf=_$GW!Kj+gvyJ~XIKpM*z=fXHPu zj^2$-^YPF=RyGvTx;?7iu}b248G3VzqsP;E=ylCork{yzC`ngD)`d-_HZ$&9E`7ef zo{Lt|a%25n+ola3&NY>4{>$&q%Bl9})XJF0sQcgFM=ik-D-3z&GyTP>X%9uYV8i+?pkBia7mX& zHE@W#UOs{X1jAJkXs}Cn?uB|SJg#5?ClHttJOt`=Y*rP(T{e-oQf~l(QCUdool9Tx zPZxKF&?cmbB*LeB;(pi&TLe4sA-x=sH9qt+_Yq@ma!RnE86-j%Hj*woV5|MQhaCK` z$j%9%wL%a08)<=P(5|z4!N}pa*afVsE{&8_r-pu=uL14n0PocU6U2G~>oIUJhYcJw zxC<%Zy|csk8?mjnp6Jz3p8-J=S~24n2d%~tl;wv8F-mg#Qz&WW7z!wyk?rcoa46v} zq+DRT8QXlZe1q1&k1b>6ua}d0XEBtP5*KXP{C=C`DIvp&F$O{BM+vTd2x?-e%MERH zD~N*6fyMN4wT;#p0z%=cz2R7uq2A_j1BdKE&n}waW{Jsuq}>)d2lhW&{?_vMmj7h= z$3^j%P`xB!Y=MtY;4~+c{8Gmg9{RybXJ>`rY7r8y0m|8IFR!s;2DqGh>2=75O%z;u z06cAO3R1DYs_|dhiP|Y8S$=F@454n(~{~GS02x=PHV# z@6~9-URQsx@A>@M%o+Y`gJRQ@fi-AK3T2hgT~h5NDME!>kC(^#ZyDl`xytLZ*EbZ> z-fOt+{}{#@pl9kclRY$|00K1*&3EX-Z!Ho@Cd#^caV8P9HTfef4#^@}PsoD=&HjBP zZ@FYHr|*rLZ%A?cDztG3Mixg3!tn>?{iByxK1-}!zpXI0i+}-)S750t?R`Uz&Fszx z=vnz6_$^WF;r^^;_=L=pvJoXSfmi<#c<0PHVg6>`Wy}0iZO!$N(U*V{kZ$0E)(3p0 zoyKlI48=`IN+N39F-aA8IPHGPDP=W|y6$#PvhsBD6>qSwEGe zS?X+bJ3tqOeK_<8i)2ct&a>0iwY7#4(4vSs%e66q+r8A2=+F07Dj%%s> z?emWZZLm9X7E8jm0iPCH8HJ#RKj*Xwfz5_m z`47zM&CKY8Z*m`t>TVx5k z+Af)p=NK&+AQnImC7Y9w*hz`JF6!)%%RnZ$ny*OYlAVG|iDI`wI6x&$X{2DMV*}g{ z9p_w`^Gax;<4F>W(eY3>q&zdZZW|~LI;NMRU|Mg&{V?~Mz0i-e_e;6H(p+czkA0bz z+*<%1#2m4ql-iRH?tpx!X~akZ?&(JB%TqD&^L4!p zQ(a=rd8`Sl@}Jb}9pqRLg)_87Tq71j-LVM9UHZ@4K)Y&r_$T-CHj!m-sdIjh8gS9z~efJ z!Zm7?47@neQ~RkcdV*g&qqn>lyQ+S?pWgl&{rvZ?+PHV@60Hu=iFy#2=c|dba90{u z={jUA-~s2@H}=3h_|$^Pt!;u^Fu`c0kt!dJDGY|s7xv#YW=zy-oy8$}ljy@H6hYoN zNLNk_SMdWR9;WFB_zG1LM57c6+6t(RPIz`{5dgTRRqHyAWde8s>qad;HX3OFQ%rj3 zZ+dlRpKbx!ixnUj?$QCd2^pycZtQ=KvVp>*H>qDot~m>ckhEbt8+3g!Xu4FZ z#D=9kfHt>*1;Q%AIRu2#Ork3Ttk+W0;k8TM+2*nKppM+j+E8k3MOG$nEFowPOFj{g ziU2m?s`&;D+P%lqd-ZNmXLOw6Xht^z4xnZKz~21a4~re0dKjb&zl($!bEox*tS(9> z+qldMtUEk!D3d}uQ;}IwAQj9Sz8nhk9IxJh**AIm%we@rub%E3S}xa1-^2I4Q-+4q zU~*j?4PGT?-CZJSZYNxpB6tS02r64=No{I91pswCmn=-a_01LE>PezsPCv{)T>i7= zpVJ|BqGC~2s@{ImaenS^ETZnbr01xPOB}8z6U$?=#_f%QE^^boCfp5Y9@mQO!S@tRq%_+n{A_K z3Ec%+xtb~zfjC8#9vXj>_kCSZ@*U-KAE$BA`*~m5_3UVX+T~6i--nLm9iLZrCJ!B_ z1W*Rmp!1v~EfgiGg!P?+62k>O0kE~-QFKl%q+^~`>B{$>qJ3xc+XI&Ne7g5EL|7mO z@{`k5Np~nKsK_CZqEIyw!2@p;h04iE^H-5or+V94CoZ_t7E-S4ptgQU`bm0VH*SNT z#Tm;Q1)S6ZkZpJiDDJ*_rA8HU+JQFOUe&gK++(*yZ4eY~d5Lj<2};0zGjI@FC64fe z+W>0=Rs|zub`=>9l!ds>#<_a%U2U*x2c$9pnt)|p*d{*y>hg^l!4JOj2tnnz*}-hD zp4)LTZsS4SYRl#;u^o0DkiDL~a_z%{}3BqrU)02+tMW$X|L z#k*Q9Wn;qPQG0`;_$u&744^K)UVicLq1ycYqZlOMLh<-WVn3t5__c)H>pmtXduwgT zw;~1G-Nc#a(%S3H1Fl+zRcbQ>jh~)a-Yr_X@A=-h1$ z>r-kJuR8h*j2*6#sgW|z4bdu@D_B<~&ol!bxQDzAzU+Mszu%`sr0|P_%F)bthbxv? zLe10@FL^Z=IA0eoev=ez5+Jx6k=D9gbtk9*>Va0MP1rj0{Ebl5=h&_!Gb2xfqVLxp z7GWHewd}aYiAF<|^wbZ4FaZOW zGNPB>xV85$-0KEK0`ON%f3>VB)-?p-5BjLwIC@cUDxKpgr+cUEH}5DZNhP-uz_>rR8OE#KIE)Y&JM;XB-xge=$8L-WHMR zx~s(I`4`>Z4GfYCr3`pfi|?l+I2c{<_y z#);W5lmi9x7V@)+U;Y{`n@@cLVDxTA+F~g4p{X=WgkkhWt`KRd_VZ)( z<7x~ooP&SiV%qwu319g5FpS1ABo*c%k=i*afhHP)qp zI7}<+6E3+LJ)O~suL4F=kP~*0S~zT=u3(S~S&n-SBQD^MHEAi>JRoHUKhAx7?_~y^ zGZFMh_Hn0Wp$mTr`_Iyf;Mzf8@bNxI`PbFr9ame4f%lHC-&!(0$Filj~MGk?8D!biJ*pX>Dso-i|Q-2@< ze--=8|IHd2h5KB+?XUd5iuo)269F9RW+S&I4a|r9zW~nI%nnoaOQO&2OJc45+S3_& z`ET(43hL1C>l+rNeB1T9y>Jo}O0SFaLM|G2sb*^q0BnYIfS>?}c4?m>RhN#n;5H1g zv!yNF#`WLb=VjJ7C3D2kPE<9|za2OE5Xz(*gqv0Lpb{K!o&f*cSsIWS6xW$_1)9d+ zH4q!%Md0n`6_!b6Kpk;?hKDQh1&bwnNhd)%BTXom^bsy!k0*T zyBNy6Rw>OL-OWwj>=xUM~w;Bc8H!uK=-^}+=UI*7;Y)Bpci9>+h<`zD^5^Oa=le6 z25895Hf+dmfKTwvwC^-}-N_z%s*tE?^kY5q3 z71?CwJ3CB1nKASTdsZN@#jWr86K5wZivVnCW3UsTYh${-&8TvJ#&`xz<`}y3W=-C|2Bf7M1D@B;pBI&bvw zm{EAPnpbcmi1zC#t}4Wc1${XPp1+kS#?n)VZ%Gp12LfA}qYyl3gpoJ5wC zf9O_f07)l>wi$8A(fgMFc|Gu1+RvfhzPh@yfARs*h373=f)Idw-m(=9pZ5s*gy;14 z^WlD?ztcZ_9^5GJTfu%-d&^tQagvQ5E1v^$R@{8{(Y9A+Y(9-UOHy}-E0Aw9l4%+P z=Ze|cc2YN#%d|S{71CpWB9o`ERDXANDexx}Tow~YTr}^*%16Ok^Pg(gt}&f9-sfg~o5Bg| z>u`SpEIDWY*o?L2G}#)78e8h^qz9Q37G&|DK}=doe~WNl=y4kKa3jdwX(M2uy%-JS zY7SzAsJn^de1E__dGcwmKe*Udc9ryr<;kr@s*X_UN~%sS?cB<_gJ`=aW42)tu_0(T zI8Mf0M^`XVtY+vZnGQV9a`#>7`>!WpU2_E+^;BcxicZau&lS9&0RRoh^Niq4xSu-5 zC&D-95XzU|x_sj_S4583+YjBL@fT~_d@k@tXA-WI3RS-H-(gM0Y(9@!miR}; z{MwyE2Ufbcvkg<-bF7@vp=SfEQ2CfsF=uVC1C?JklUjcm0N4hz!nuByuIZ@Ni4Kxc z{VsFc@qVZ0blx7kddvMC9Ny+h0D3mz$`**%(Yvvmwn7R}dQ^M?r64s68pS~RJa5XY zi(D9VrSe?r3)r>K$MJc)c6Rk=+a}XK2ge=fx1b2(?S!B#pHWQM$TiA#|K{C49eq7> zcid^5v>)TY@hXs!pgelp7ZmsE6yh#$ffX-uHwAP^U{_2meXXd+lMKLe5wraDQdV z*jcTQS#7Gh9{%v170_tRT<15Y`*yLelmj|80IhkXq2cC3O6V;-E#c+j!LPZ*R~9hY z-o!X9C`@k~g45859BITm$hOATFR>BLqqdQ(H4AHkNGDlNF#^L_b0_X;wEVFE%nETB z$Bwytd8QRZb?FEtZ7;5E4>OWU>j1a$S+ipfAF(a#7_;7(v&Xm*uIdr%#-$h*0z3No znJvh|hvHdCY5$!SP^~9MZJ2iS;?h6k(%b+RGPi}h0_Bk&AU>dL9xqzSb?eQuY{aL( z=?m#A1D2L?`Hz=>tL7!xVJ$m?nlM4yA79hEp?3`ve9B1}d1TNhzhRIzx(Z*p$|iT= zJ{_uZZ*K~OnGvqqLK2|10>zNaAkM=^O=|U(|BtM2&T;;hIfHXem1>LDItUAEbU-0U$6<&?F)m()c(BG zszP?4K4cfYqTNwg4jBM0CHL{HKB(4lC=2`{x(OAtY&NiOs8QWy!tQ|3#t0!5G z88rKQ9nmj!e1{!yZlM=+70{`z_Z06|s4l&M$R^+?OrUOxR*VI}s*#;tG>;4*OXQgb zTJ!MU9{k|i=v#9SD8PSkvI_fKIoFb*gcfqPtUSP2XU8kEqMJ60MXbRg?)zWn`JN&XAm9}fp- zrnNdz;SK;i7cykb6@q?nyl?D}lvRwh57|;vtJq$jojbydH;jJYmQr3r3%eD7nUmG^&8_dp{?=kqP zTRpz33y~lAHr+N4u*HGb+coI=0QNGVzDnS!8X!0l*93t}=80a`2GsmU8iXF_MXgW# z+O&}!__aYsT}uAj<<9wLC3Xoqpfu>o61IjO1RtZsC~UwE)r#mHfcP2fG|Ku&g$Rae z@B`=v&kV4BhsnvTGV=s>t_v-2DDI*o(I-}sPvW^2!Hyl*I(RHaPy{GLrBw>=GBtNVu zdFxDf?LIuRjw^Dez8QiYBgN=Ud`4k?<`2@e;xM8I9pX3eqV0@qMT#&d7Bsi%0rzYu zl6Ridjp?W}Zup6ZubTF-F>g7W!4Ypx!t5=j5--ebDNTW_^G~29Xq)$f-nt)SqF0g&(x4y=~0G&RvNx$$(d|=t6jF|6DeS$ zsjq~=EgT!N`#ob0kh1Yd-zp0ahW`%5Mb8cZ69EL!>*rU0^M6m{tOo z$w(lBqt58+1HwYaMOfIm^uM6^<$$5+7U(_n!%BT=^; zcvwD@9YVdGRd2TtD}S4glo}WjL*E@fZQFbT{`2euuu0oTCNcw+ngeYqxo;ZcSbHsi zbkB5+I7A9cyQarjmUm;b8aDTMvu4&$JEZ!?0?^zWf!;$PN|eXrv_e<;r;LV<9YqfJ zGQn$sG<~a7yajL+8fk7OG9g>&)}wolAy*%&ddKYsb+|2YF}IdTN}DqISj|BV*^1MY z4M7~Vq0`FUx4tn8P#e;)`!ZDNQzw9oZa7P!&sTQc{~r1TecI}6*6}6WQ6COHhl7}Q zKn0YXRNc#FNMVBLR7d$2!(<>SZAZ5OKq@rA71SjU26bwPi6REPP>_El@dwh$J6Vu2 z%T3)4I89wCKl`VaKfC<-FXF3)rwx7sg&ot^@ww5X^20$hZ}buE`x4ul+QA2e098~g zktu#GqhRYTIkr)H$+V|PRgRk513zt$zG>(PCR1hLSEr*s^Bz1>;wAh4C86W$1eQxV5^m~cwN6d#`i)T{} zU0cu2@e-4Acx5ym;`Eo=MtJmLQCN$zXb?{TL7`;dX<{{Pr9q9(a`3$XRPz66P_+Jb& zPyQaZ$4linW|0&0#g2Ln+yt^K68DlizFn4Pm8AAYdThIPcQ{3rh}CB0aIWgIB@{p+ zDYd+>ttz8n1drW&`&*{Zx4lr$jQ=}Wf^W-fl{`v;tPLgiSW^~~yap8s5Wb6MYH>=8 zFXPYpe(Hv=H6^k%W{>^Q9WhXvTeoPW-pquS{KbPF zOskZtT&t^bhfQe9WnU*zJT+>g(FSr89S3oMI8YbD&(Q%ZfeJ=2A`Gg@{9U*=`iBq; zi4l7xw6K9Sm<1jEUQSf&v_=XjK%S>r9DGhKH--3qD7E~8Cx1%cL0kS%;?weziYjn| zo)3tEXwcD+;63Z$E|+yn5uRRzRW1=IaFNa{8pd5$*=OS39Fh>Sb!JnrLrlCeb@A&N zwf!k<%g;>fl9mBdGF)aN;@4V=N98fU03L!PMyjRyOZNliFo80vKWKZX53X34rq~Q9 zfxX~rkhdg@f-ajRaYL3sV$>Nxt8-L8rB0n$)UZja*hUxi5i4AZd#0pZ$!rH=z}s2)L&MU>>W zmcUW~DPEVfoPrkTlGcSC#uR4vB2~g6=6)=DzmO{sRa?k+B)SUVv>d{lk2-&AHE#I{ zb}^A^qm=R^A5lw->UYIp4a@^S?XFhRu1-;2har*8q$ZvON*e@$NyX1q@=$Yf94sYC zr+%g0+@Dy?g<7|adKRCP?2iFzXx|~*KgRo)d^Z12jCfHAfWz$SQ{wQb{6+@C;i8$c z09s{dKg1A)`4Xd;PxnCN`~uf8^FYMDVLFGWRNCX_*9FWv0H$Q=kfSllqy%N+LAzS? zwxsOJf2uK@aFb`t2G8w{{JlG7KO26FS6rd!JeJoZ8*yd_E_u2FpsOzl>^|c8$&)rj z2gK`}r{9I!claX2h^X5RG}U8I2SA{Xcp{-xS{KfeWQgqR?%>$QAJ-PQpqNB8nuUHB z#{Q-}e|>RI#!oFjz5G&QgIdw@pDzDm`7fWfPY9v7i#GzxCL9G-9HTvH+FMbj3Y&xp z7IJ7mpp@_*)Sy%Ie3mQ>0KPeRPY{yEn5*Lm|V_5f*C=JAtI zDYBgH6H_nd5Gb^eC=#rQTLP5)JR5q|H4zyV;sb1jaYcD1pls&YUt51PrnO$bZk_}8 z;1nFdlmiY=se7ox^lUdzcZ&2H*_}4S1~g)4$GASto3`jRo&&=Phd^&2V53Tjx8m6rgec^gKgwDPYv~77qV^q*i~wlf%hS&Ka^+rz!Bge_pnJ}NklNZdE={T z)qL@~3MInti)BdwFzJteT5?^4HKxS^N=n+0g{`c6(zMKHzjI;5&5y^-SZ(x(+^51^sm)`V19@Zs zF)>9@gV}7 z#>~?P%p=~C&%gtfQngCQf(C$!4I`}zDW*|0Y80D?65-D~l#7;;(WM9SfV`C(kU7}^&A{5nT^}d(P+pSjouasPCXW+XM zAfeRL&`tMKI$PAsmOASAiSE>@`ciU4?WtANFBj&O9;j!mQn)n9s0fe@$FqmZr1+p5 zLpF-S7;2LuBQ8k=-j({;*KYi4mT_`jqEoZPy?kwTE%fEw&vAagv$5#j5)lhOVjsN1 zA+f?LfOnlC2bQxb8>$d-*D>GM#+-rw}g)|%xM zrhhk5wzi(}v7SEWua4)@k5$QB53uyKp8Nibtalz-NaBNW*%oJ%k1`C_i)=#DZ;zci3QRg_iD~ z2u~G0vu()J;U_QjQA&mBJ+!1?57K+ki*Ad&@d~n~#DKnduumVLX3KwYhE_YLFCAX! z-ZUsTNx@EPfq!jaOI?t+v>|WVLxzK|n2BX!65nX6eBWF@8dgMR#;t`DDFQ;QD9vi8 z7+#B1fNN0DZoD(c-|8wc2=Y`Fb8$J$W$WELU&4 zC)Gu!eTARVl?FLKew|2++(^A)J z@eKVS>TE8gHZ>}No_22QCwh;S@vstt0nrPZGuNd%XNTE|^^6=C&9NFyK*$YZE+qSg znN&P<56x5dED6)f9}FpA`ErbByx8a2-=pbc?k#wFCl)3mhjY3j)4E_E&?>HOU#S3` zh`}KNYO`>80OQBE(dw-D#7)w@a%h+K4Q zcrtIbahFPjFaQh8C6i)N(438dvb3~dMsV8$-#JeA4IuTt+d1R7o(;L;i4p=B(QYLQ zk>Sx{$qg=(DW0v40#=-+wm*q4l-xfw3Z>74k7QA!ok@-8UzSD@W{~a12GJ+27-3L2 ze8Y?3A@68h#ioJU_I!ZW{6b$X6b|Bbj4&P{b^(NmxJR89*c^1?}*K9RbPbHEd0rFJDrZ8H;)1nwg`QoFm(3e&#Nh;td7so*r z^1~O8F;2B_`r<>72eIwpgx-jP&ROGub0#KzbTtL%%jM4AJ!FNnKySOVasMtM8*FYI z6?~0|VWWa}nmzCw{C9p_o>c@Q?wYm%3=ZQXrjM$90L#)2!g9z3Lh~pEX=tenfa7k& zF?-|!b2%l9?nxf&;)v)D!BvnI&VyE$8aYs{!Co?HgL3x?#q+d--Eusk7u2l7ipCBB z7$#X@ZiBA|oYzUl^IbcrAizx?Uy*sE00OWj$8O@%68FUFzP#rJgBhb5z$lK#Hg$RT9!t}}L-?FV5Hml=k7L*H*O9-zB zIU|-=JnL}ybJkIYNAV3vXQ%^^!j{z8x&l`YfWJ6RjW@uxp;RsCfRWm?8tYGtrcfZW z^&TPNK6-P0lyR3o!ZWLXI^O#iuj5CcDut@f0wAm?L;9BTm5zOsK;%(LVG6XuLH}L^ z=kb#|uGa*seXj8fw4}6JgFGjoat(bPnFv483D`R2`WX#)_@^^5!f zA@-wo0J~tTEh(H;Un(uIkE|AlM1{#Xtk7arg+ZLQzUQz&hmJd^`bUksjQY@VHX?SC zKb8Jz@L2xFa2YYzyqVf?DrP+fUad|_8aONWIP?~%MN)AX z@}Lg9Ad=H}OTGB-=PV0iALY*W1xK0X4|uQmrQaD@fBb=SsIhiH2EvZ@Xhm8%kIj>! z?DW~>cP$OG*G3)xxw5Z>3GAnS*x$1JuJNw;TCr@OZ-wfW`f20|=OCo+NXQc{N!vS3 zXJvXe`)c5{=4I$;S@_93@m!WpZ%GL{GM?$%pz zmQu=1>jHz0ey8smZ&!5I)t{_+Wj8W4qt^KZ96g#KKl(ySu5`!_G~mgQFGZ}}896kB z_y9Wv;tJb?=*Gfv<40=P6`4Alb3^n-WNYniH6od%c|d*tLd;HUQ%tXL zbY;im-8*AV>)Fd(T5+;T(T;HU#nWDpn5VK-yR}v%W#y$Ka>N%xMr!oGJ+F#z7185YiUB82jpp0KD~_k{of28a ztqpYoc@I8lnWfsOlUl*K%Mt^(5W6p&V!!{cj~bjg$92A6$fv8ctOyB$!<|*59HD1V zO=_S;02!m9E+O4Q_=*Z^fsT0;N<|byP6$0u(MsfgQC3KrHqNZ-!x3lNNA2qTv)@cm zjKGBl`5ti{LOxVp!6|vDC}dDoMR??&{+EHys~DtQ0t(!Fmr6pi7>#zpx=KTSS_%=F zd}>EN2^__PMES%{r%}%|mYn#e<$AkZy$i{A!Ti}LQHY8?WySr=YKxqYxYJ) z1>;D{K0ntKm^SM1QoPI9_G|1`jQL0JfmCU9hfAv9cGhH%O)*~KU*n+p?fjw6Ojf|> zg|nMHqC%3p&hO-NzLT+-`MjxXob33N9w0}A7kcu@BiwmR=uzM&FvJ2GH>wlQIvMF( z5+?|i0#u8?M1cwr8Yq2Ws3Ch)Hy}t%Ux}X~=P-Lg9-FsY!?J$bKmJj4tOsIeji<4{ zhOyKROyM6;im7BETS-)s>ug6jAC*gCgAzp#kd`ha_Wou5ugWOsNKg(iHixomi8E|@ z(#^+RmK_6_{jj4o3OaD#P8=ixfq076l!mF5Qw|jK>iRQEDqm)+6o?T6*jAbbjIlsk zj|6&x?ic)9{Ij{mmf5C3(6-OtZ+`&8LItsUB6)8gY8{~F^! z#>bf&(}?RfKu$LuNJ5$+7q5b54?v)WnigAHN<=4oiE}pRNAzbLc!gL{@*mV};AIOB zS!o<|<)!RV#~ytrW8KF)46iUlfv&^rcNwN?9$# z(z#14Y;_V4$}nM#AKHepkTeagn=|#69UEg=sLHXOp*lhZN<%v}ZiRmy4)2J}dNIDA zQEV5Zf9AV^;L%6$y^Hhq{!C`B|7D(E99}!EE9^_08|Fh_r)p&u{_FDULy}6~5@S_$ z+8>`%<*aQm;-y>=qQ zCy%S77QUGfJZ{!t6{K&i+yZ$S1ly?Ex?uLTlaGt+8obkdmwFSe@6Y@_>DBy&<*!`Z zg4tUY>ji9bt>(yS{ObqkFNYo_1g6+%>;PGH*+; z#TxE{FNU zfY=5owXf|k4aHSdt#56Fpv7ISMTgVW)@H7173ol+*qo)G`1Bed>|E{W4k$rjp|_C+ zy8sjv5|<^HI2lxALD+L`Bx;URdEefkIFgYG_&vHCV6X`-85){`0}lC&UE^dT7MQkM zdzgx1k-qDs_utHz=6SxRvk9D`;;g8`C$a`Qg~t=9Ov5UeMr);qLs~h%4W{tRk=&Fdl*;vk0G;!b1Y~a$L_w(ACSi`} z5-!Z=`TjA!=XxMNO&ppS{6jFR5B%f9u`(KdqgY7f9m$N`rlWt(7^MFg#EZp4=l~4% z^u*XLUQoU!UCek2rUqFuqy}@@P_3NiA)wG@NfkB-4~8a;e|P7*b2`6?#HQzoevXpX z;w*v+5?3581mLD-6a2xPpQf`^lfS=`5SO53Th*SY-T|5?dfM#7rCYXqMla(UX z%*FAYxm8_ER%ljAP}y+feIZr5yCt6ba9j1r&vW7AqHV0h}a+O_y*4S2*9;ixtIN8OYpN22D<3`KbpIhoL|0{0}lOHEU}s zJ^@lH`6_fNZp+op<|^jbcX^gQ7@pVf2X5DMarDseqWpP4V%?lmtgxK_bM( zkEUoLUlbrw-PoabbfV^js1tL>PW9p#HRWlFmkH!Y=qCuo4lzmm!MVx| zCW4#j?M&qew;r?qK6^2#6v+{}ZEKr)q+g{4Lbz&b+3x$CSU}Fl>tT_s6Z^Ai;{YDp z4)BCOQdMf+r$N>YnjE~lWVExMG@E@YucJ_M&Cp2wa)LKJd@8PCm)b|hDtyQe3cym1 zv@dMp6RQ)6GAt)N1~`E1*y3RCA*s3PZuZo`X!I&I&!d;rYcLt^Z*2~GC5~ymuF$MQ zmK}7W6wHtI+gG!akIyCLIei*iqRFQa09sL-2zaDRBVwV7W+<4NXM*qDs7orm9^Kz9 zHnJEEIN?Z7=$LL3Jua*n9x4`JIS_bK=iA*@YBNL3xmaylBmbWNA{xs5*$$0SBdPv! zx@LK+>g`-3AiKk0xPBEogVUKTmz|{-s7!0rV7KI#>{h8Gl2^$(OYq}F!#^y#5VBLG z;bh2l`d3bY*f9t1`ZPg3X|pjNsBTa5Q=FZ8J^MvIh9=~H2)pI9;=P|F!HcDXR3WH^Rh`@&e~`G5g(%Ng~T^P`3)FMQlfzzR*}GgUyFb>W}zH7E#`atb;- zVU(>_)K#Ipml1I6xrLPJgf~JecWTROJ-O)Dq>5#X7RbI_?$Ct zKd>?R-zzE@Jl-%HEFGeDU55~W(=V9XC7zGpEZ0e{L_s4ZHD2kh^Dp+&Z^rA{do{|w zsZVC1Mzrq=5s*h!gS{u3Cz~d_NX99s(zon5CB--@RpwIbPN3F1W=p+*_go`{YgWBU zo+Y(Ytp0w+DeC=d#(sHb`T=-F9|1rT?77hQUe6*w_ZyUh_SKFxOSSYQSI9-O!O&ws zD)8t5lI?7VErCnJRvCaa6Ja7&N>CA_w=UB0!v9MVL^c%TxccJqALL3MIQpnwjN$PXJ5)m7Y1)Kn>85>NoRVz8-TVmO}UbZ*^dYtu)#5niWy55I#4;`=n zBj;A2T}5il9bDXtsyh-o@~mumcPUbCBL%#)2sLIs{CaihlP|6ngc)5SV~g|=*cDS zwm_rtiLnhhc!6+i{)aP9XD4I;MP8@+1rRG076Lp=MtKK&v;ky1Rn2=&kzW@{CJ)Qp zT4rk5)&>FPFyD4MaWFZ3Y?zO$c;VZ;`R{M;<4ceNVGJ3{NS;C<>EY)w$d~fnvBI;O z=At}Lh>3#=VI}T6QNQ>az=eH@jmVjjZ^^RRGe|QBZAv)OqQsmlcp(Z-mer%`XtdZP z(|I1*cUSKQe!##sUg34bK#34kq+IiV?O7oLii!%`Fc3!tMFn?jsFg@@hN=ptY*nrU zfJ`(}D6IoR@oIIdZT6G;m(IT;>Wy`+a#jblHrqbi@$9kdQ`PrcuuKrTQ8Wfy=(Aom} zNQO{Qz$5mMq=%DmwsUNmd(N}n&+g5nE)CNtT2P8c9cnFZD>Y+~T%68kLlk_lEhPodH+kFa)B(KNGXUz6XECd0ypUji9TL`Xh`g>W~ z_~G%#(PmOZY5d`SFn}GISpsZm)XDO9b|anbH$~tXy!(0V>cSH$zc^NE8qavX6eHzb zE@7rQG;kb!4M7k{`-x0<~m8C_RYw0#BoO#_hPfsH$a{*4P})4M@Q_1D^a# z6ci2kSaaCrUz{GcWB z2Nrw*Q#cbLyGbF`UNqO%Rj?Q_t2FcW=Wv2=u72wK_|B~6Y@f$@)dNSWem*PkVb@=t z+70OCv`2b<2=yY1R4Bs;!v~K)w1#G!V6|EF`NOo1@#H?Hkj{}j$Z&oJhUunqC4UB!nQo-MvDV4*}lQ1l>!{R-cgZ zPsw4m<)omB15_lag1on3(yB}iG3Q1zT^L1>)RZHVEOQZZYC6v>W zsADG%`}W;=N@ssF8@xw}bmpTUkf6jCj2civp?@0#{vT~r~HRCE*t{5WqeQLc8X7@@Y+|u$5`FuCU1>TE3zz{ z5C`g~#(O>p5bR*zWUwql&`PGulzQcb8P*&zv1v}X>{@kCCpHwxZH#PL<4$22ELK!P$Zk#9|Qr~ zRp-M3S*mhfLa|A1t)0|6(#e%u*xd9!0Il0wCsD?wCP$MR<1fys|DUz++ zXGIRF5;}?RH4V55U45uCS3R4`SqrRHsu(yG)f1$YX`d6@Pa?1E+D^-@ce+_@K`JOT282@|VC z^GxrBE{{?rG7ki#)`KOm6ebj5z(9l#T0T76Lb0iMrx5T@cI{-id{Gglq!k`FE_iN zo{d79Byxqez^l-$#FrgkQy$~6PnO=%K6%a67S7pNCAEAh)&zh3^^<-c40`{jRJ{+H!{t?_cD7yS5!nQ&2AP%`8w`9d_}D{)F_#>r7v0q5&q zWP84};faE=3s;vZdRgK9sS@+Av5mTQt!*9!V?Vn)E*)9kNdn51+RS9%!}erLNjmv9 z!aqx(ZwqI;~s5$~J)j zNTi^lJ}RUrE2~}XI;R>XC0y29mrX%yAiA&*FS57Dw6^R{8wt8_hw z?spKK{LJWY`Q<#t5i5_Z=)I=DtC%ICz!`WCS%!ZuDLUCR{5*(y_UcJU$QH|&R%~)w z{)}lqeu7vzQAiIZI$+k27Bbgq%(1pxf+Sf=wp6vo!J>$f60gum>yk1}xLh)Zt>Ha) zV)cj~*OEN^^?FR{cSD<>qbDjerqm40jp_n&yU`i=4~$`Qs8k&<&`DbP({AbQq25zl zf6OMWc8hufdhIp<074VA=>{`70PPm@lS5HV5V?3^+36VGTXIGc%tIyXr6Yg1KrbXwkfxl6L{OJT4o5Lc z7N@Y}qXFwoaBC<};Ww}Z-&sQ=F^(z#MzSzH3uRPpBMbJ2@<9u=k6bv37~r_ ztC5lwIqv%jNd!8jD^)T^`967%mWhNbdh!XqB6CPaDDqg?*=ru5 zQVt*e|AY3%O8b9`0E#~F**=7k3&S404ZH-p5K=neW~1Ur1VCLX^jW}Jvo#YSg)~*x zDjfLLbJuYm)m(fCU*g%WVL7e&ToXKz3^AIHiT7$=(46yl*#E1D~vYj4B$vgjcrJaeo7`_e=NDbr_9RD#ofYd;n{iC@)cAeozf(CID%z?#Mv@UNFU$XJBpvgw zF3e~0T?{`z#*$+}wFe>v1;p9kV>J;^u?IEayI;6!?Uxea_@>k|YKcE(ic+B^YW_ygyOj|3!#YB#L5FMnr+WBYAAi?`7C8`j*d?57 zo77l=ux;eU70#*zq++&o=tYEP>5*Esp80Df_J^{>U#trk@m8qA$zIGgwO(a)+v<(| zdD_mt&E)B*6hzsljVL0YWWHgD^-2+Oj3UNjw-FMHX(Xq9Y4Vro$KGi}l@B2au#wiz zrfryoChiH~I_UfG%ut998j%|&T8WXWL`_a#pd5c)D61sB@*KB9(I~6>p5&;kF@NdM zLOC;jhC=VRLZA=6QbgdN15D0`3lIX$QQ%fz1Oo=w- zdfFQ);RLIRp0+ic)7}JR(#gF^0bSzQv*`htC>BYrc7p`NkZ5AN6yl`SIm~bDJe;X< z29l|LJ2@dLx8~cR6cwlbH1y|(nVUb~8gi`bR9bQ9hOI&j2qFUJ5gcX32}(C408Q!Y z@K1<~K{@sc$t5tjfdB-Pi%pq6y~_%C-Brw5T&$fdOGGNLi00F?fHqIRs@me!>pgu=z zTDMjYeQG`Hj@>ptc%8xBu+IX%aTu+_;9p4}PAZ=*rA`OvyBwwjURG!HEOUZ!E zh~BfUB@;69eTa_}+{e;{T=WxU4$7!pwLW3UrqrbDQa}gtHf03pNl-)#>zjSYC5$3u z=S|hwa*3fUME0dBM+3w-4Jm9~Pabss#WkC|WEwjvAWo;Xg}%<49)BR~hW!Ne8Y4(x z0vd&72xjMzq(hju@BR{NW2o%)u950Go@jW^m#O68zg%XKB-A8;fw=G8a)uZ0T>&2i# z3K$AYgI_^fS}@!#y=Y0EqHfG4q$mX%_4ge*wYEA!M0S!;LMh)aF|e~apmeUQrB1o3 zp?zvTv0OdTe|f$`i9R4Xd)i=9rHo?0xjL|`h_1-HZTL`*`K}?>D@7#hMyGiaSpLcKpVuf`EQ%xmZ{(c4UL^uT25* zHK-NQVxP-ud1?6WmU#XJ>X$PK)PbBFQ5m3%MN+FBOkN^R95=OuiruW=nYwv?xd5jx zOS5EC>Y7vVGs3K6mgV+Dm%lFg77 z7p`R7j_*(*{+e?Rv(B-cNt7Z;>i`Q1?AHbA&_9H9Z8dd@fQsP|ARtx zw55#lu9R?u=2*+r%S3UhNhbd^6WQ_YCm-YrYJYrRC1;ZE2mV- zGS0#MA{PWxq@>)n$j~63)MC#9Pq`ko(Xhkt5?=Izx|_uwIK8 zr-KSR(cIIzaMTJ-w`7Tg`?e=dOf?MIDSw`65jSdg^GGVijY1N)k*rpMDV@?f5%Kg8 z^L63ekyuf+7}KEf*LR!cT*s$#fUEs|o;UU@%)3Z5dF|idKd7nr#Yn>x2zP<3v(dyc zQ3GH>N3cV8*}6iDe=5(s_DZRk`ff3!l8PPwaS;seMvE#TZsdbQk8Ywe(ja3DOb zAxpbU7^r|>C)=j{t&91-nHoPm;*cSZX5x**E7uziQ@VF<(y7>WF^Y2IG!^#mR#!dK z&9ytWt5)rlK1b}7GIh0bLMCv0*59OPBr@$5^6qgjl$9Z*6-^7T zpd~UwU51D3+mJj(1T4S#>Rg% z$~zlm>TA1>+6JyS2i{-TGHVR|->kiDvn@$>*H@=@-@XQ+hpVGaYa}6ar`>9eCnVi= z>rCU(j3^BzC^a zN@)JhwmU&&A9(J!FAN)f#gaNy!;j4d`rov#M=1$jqZ|Bglw-ErR6gn zK-~+m%i4RA(~JG?wYutg`)ugCUX!sBoQ+m<6+%x!3+Basf!iMnI0wIvpYfhH! zI^B5;@z)qX^!>U2obki|WBEUGj}kZ;#x!y$H9(-z6Axm@J+U?i4=_KB%pJHM2M_e~ z4kcX1aUS)!(afJJ6Dq~-YDnc1kDaq)*)vBII}Eg9!W>z*vTkEX6;Y}gf{9Mfh@`W> z>U6e}^lrLvwgFO$k75S}lpIZ?(^W)LJRl4F=et@nN5m#P65;a{WYDnMZJsaa|s)%prdGN8MZG{t73UJru-A*=lVD z1@L2n%Ul5MvQYlTOj5(pdUA3~MznO+S?bYu^JGt(`~3e1rX(hU$#KwbnjA_|(tKu4 zr~iE68pgcu#<=01a|h}FzRxzumC&-i1XD_`cCb>0|_d#lBvd;>x9#rOl?H|LmdQ05%-7mUAuk!PvYxI0gm-(MIJS=f-)h_BJR ztwJum8Md;)@No%f6i13vdN!K`B>OH%LMq*5l(d-XEGTR&M;PD=Fd#n4ObEAOnU0NO zi6WW>cs>2e5rd^t$#z`QD& zEPrN*D)+PDd|-oPun*{0W?@Gkf&+`yr2;{m%D#cib!Af8lc&zSBjm;|L zks-gNwl$Ap0VG^3fNht_LhY_R-8E7kN~>)NrPi<#@1yN`FOsqO{mqjTX6$LC>4j)i zUE?-RntVWr&){Ts$>#dp)BQ+J(X%6O633;+H=8G4)1lf>nI?b*v*a6EW6yBDxczB~ zySJC`w9q~8|9wpRyuxT0gMfiq61^BJ-c;nl+C*ty^+vi{zlZte%Iw{{+Ha;SI4W<2Bq zV(p!3*5TC6y!`;xC*+{~Q`HT35=Iez`^Z?nkgnac>GwLC8 z6@akgPWR0B5qySLIJ<4d);c~C-6Y0n(AJ;W-cSr9E9v}K6C+mnhm6@xl~J;%_}kKt z@$!2o9r^Z(#C3N_c7Ajme(tL*&qQ+nd=zf(F(O#W)2UcqP{4jNGZ={Xq?+X&ESsIq z20JORkVd4l$mp#~*pnU)5uC?rj`!G}Eh5i#lBNWi)gq(;d`S;b56CZyc)JH2xQff5 zPpEbG5_d1V(9T1p(KjCY)=t)COVTb7IAap1pK%}x3uQ2pv~Q4UG{IeK8ar#18u94eY}tHE-fikrm>i4FPvt*K%{Kj_ z?6&B0Ikjyc-`w?Fz0l}WK9Lh*z?_O<1On^ICAP86q&;qnJ@6p9*%N^+{aW-pIs%XcpPpPlrN+ZR5v0a>z7J$h2{#E0y z?D<^3n)g}H)TzE_k?E2TXiD^qCh#%hRE+LhiNw>uQL0a}VY_X!;hi$E?~h2^Hlkx> z_#j)X9xpW{KUNGe;er+wq@nimxbRcWxctC4S1rivYo6-86PhN)$_FOa7t-9IH68Cco1T?ha2+g%LI zIRo2xqx4_ndeQ&DNNwrfZW5e?Nmj6@cb3Vk?t7{mmQ;EqkxtVt3IwKy2KXG50hv_u zKrB*GFnW#XTsU4`{6QpAfXfEW#aq)c_ejWyZD}&zGQ$5xk+AKTA1Q+yxv*r3$2F0p z1bXM-6j6p0B8fI*)J~tXo;X^4jk>$$U!?s7(Q(vSBZ0I~Q8(Nu5`O|9E<6T}?qQb$ zSY`BCL_}x<7J|cYLuZ-a@{eQq*+#kOMy#`t5V>^oM0Vcd+fm)gv|; zaaU{zsUVHZ0upm7XeP1E6EHpLy1ZE~OA0CC#FUxPR-OxU*Xchxf-?KPU#R%oCc=+q zX-HsPG@_v==k@>m-!xp~)G-owJW4t5ytinhee!8VzvWvsRH2$ywRPSy2-S}LU>Kr; z4Bmaf2IO0IYUiOB2=Q^(7=3uKIT$Z?J<*N|hE^moiXD%5=?yIjlhEE-GR){|%2j4# z9>_7{4JsKCcoc^osgHjdWimgE%`i@%4x zd$Z0GKzw{V#86-E#{hzmM8lRMCMH}(X7jp819r_vVcxeI1k<2~Xdpx!YPnGB;R z7TYp)*@(J*+T_1o{$1f#x}q}>hELsset?Q- z7OYUkU``O!-wwbe6tGygVH1*C0*Ip}V}%nngSILYwmKW|JCb|Gm%aVObFxiIxuDY1 zB>G9MWp!Glpy4o1@Y(nyF1G5eX>m9z!O-Co^anr8v%cyn*s+r!0zr;IO$Px8V1K-9 z{MGSfYlgD<+<0?~Rcp3c75ZpI`Rl%TF+$x1Izq#Q?1|0<{%f1H%wJX3e3j zGqsnr2_9mgBniDM>aG;K=)n~0@nq1Xbh~RP7D}Lv+R)hb|51`|F+|S$inql%Sl8XV zJN^*aUeXyE@m-C@Ii~{xKOls?!kw#EXsg2g%^0-q~^ub;| zSQ6(_6rRU?Y6SGd+)rNbSM`}$-mM0$xJ$&UXPsY!3#EBnAbSkU$Lx8L3pE}^^wsH8@<2(;mb1zzt z|8h+HKR>;<_jsS|H?-`+P(TAW_%K^lL&oT)oGL8Vi|$!Zw^ffvv>#^QOlLP-7Lq6B zQm6NnG#nN%gGAORK2fNa+c&hiF67AeTBz5FGx$5Dc5Jq@zw*g&&ho2hO1woQ_MGCK zqrfK(Wg;szr^eN39B-WWE&up+%xKn-*Yq=hBDA$ZUsGG%E!CvCG}iDEt6$*~RW*ub zE^8IpI0OJ>o33an)@p@XDlf#QOU8n<_jDNPL)Q&MU$`Uu(!291EtkVUvBP8n9f(o`&=yM^m)?b6~QznbT9I#x2RFql1TkWoyO1-*eNY@m=+tdGa6=Jgh< zC;!<1D8%>l^HI^*XrZaIR5i^^Qism1Lp-Fz1RLb`bQt9BPv6m;|?)k;M*P*V6c{P1rIsEN0^X#7;(Y;6$N}}x^%C!R;;0%ua%=R)y0H@_Crr>%R@kG+ zW~!2s12H-Jb+c^xGtWhVUvdcKxPIyVWZ%pc^}45OK8Htkln4@#<9xA?Qa`1~4rEZ3 zR6ZLyC>CJ-{TQ5ljbsHyd+hB%ux7>r935_>nrI*ay-9QJM&(`l!*R&i+Q|b1e!wVg zz(py66{cHS139|fSW-z*VkWFz#Id}_zo?V!KvabvY5<{q{@X?*_ES8C*eGm1kGZ0j z-*q;tpRyT*=BR$8<08#*ATuq3sIxG{a>SnJ5(T=$X3ljk!APULz$VM#SZ&+%8CV5u zKs@by>t3)y23f%hg~EcB8?dNTO|~J8BsURCb7h+Eac{JH7y4Y@QB}{cawf(?=0D9E*oO^ zgv+w-@!wxqz7<(PtSEuoa4l#k$SAm6;dHpH`@{g*qpWO^@xR%K5dEVexRbOmOA&4S zfPFv`Nn%M2wkTc~!hE-rI?G6?WfSWeLo5BVF$6qza;*P+liIetOM?zVz{n@d@#KS3 zB#(WMU_qLL378k*e5NanzrZT$wVEXn9uA9i=7sHh@|OiUqvLi%L~Zo&m|b1-hoSH^ zt7e0iA_GTlB@_H-x7uAuH6|!8KbWhKM(T4OBx0Y)d&sltpy%iAUcCRD4%fP*-y{gy z$^ua#-i90@s&Aw$xL3ied2?QOBSt>XY6mkq^C-Dy}|wr3$J za6xpK#>cO039$Z<(mZpJOHSY;ow{SNck`nWvF=C>nrMPR4bqtX7v(YgFMpPMl7Du8 zpPezV&plk8Jt0w9*(6ApWJ!BkN@`wtfHRxVD5;yV>wf;&!u4hKT-*DAHwHm~MAUo>nr{eg7 z&Yw^JN*Xz{g7!C~cey-wXxS_32C@7){skrCkTz;-K4a+NSIBjg0=uZ(JP!HOM^K}$#+Yz_$8jQbKeXF zi0tGG&+{4M3xk$n+2H0Z`}esD`r=+Uf;1t7Q}rS4?G0PFGpYVIA5TbF!|6hutoaE*a9W)c7~X%LZXc)WdJR%5HAmHL(gvj+;vx># z3>_>~2OS-{77qii&i10$JaI6u5!QWVU)bLeP$LAt#$Eo>oPMVb9eqy#TTTyjP^6r! z;X^=lAhSoNBl(DJds{Dq@-U4X3HL9#Csx&>{9wA_2cWmd8z9}L=-t&?gBRoq)3ZDi z>H-W0MmCbrpf3{97wRoNrM3a9jtPu0ptB9UH^x}!+Y#jbmx}KjZf$V(*L4W$^0Ii* zmxj;d9#wcgX6?eWj7}CI4SGA9!HjT`RaZe7L~f*Y(JPV(Uuad9^g*2(Fcd$hN)Vv@7y@?fIeTH3y-|5Jq6oA!*#JsJv>-|Cm=i+x8=p`;9{8 zB~nB(h%tkZPpuM(9*^aDX@^B4%>*FwXG68DhAa`5lETF`GW?1i)$1l)iB+q>_1j?^ zKsPIe+ubaifA{v(kiqe8^-JDfa6Bu0+@YzLx!2SJW1IR@Ae&ZHeLad|DZm78yq55q z?b`0Ks3q$I_iv$csu#pHce5S#7qb44P51ED*hy-9{jpaBD2t);Y#~8ZfB4}!Ut`Xk z^-WBAp}(A`BK{4p9abBxM>$$(Tdv`qD|G+(*oS|%O-4*EgWA*f9NpGG+x0K69NJVM zgtxF`ypv7%rcASEwfoqC{Zwhx3vTcX)hNUC8?uJ4+F=cQcdJ>!Ys1@!M|@+R^9+AH zSCWc*d-WOB^+GSMw;~E|9;%?}6n{SsZmBO{#k{w_+Y)i_2@oXxH=one#4?x?`KGWSAuo zrD?q$fKEWD+Cb_(l%D-{&RI|@b~cDHq5 zqgiz}DQuWpcUfcS=0@tQyNeuE-hCGlg}Ahn{+&mAVEpqL-St_0j`QoFr1*a40+ZbH zm@#n&a|Vb#u0vKzaezd-=Gr6I4H=72g{q6xAbG4Qq}4NM){{&3jFyK z411nG)c^UbK?WXkjAU!M%JHeKZdfracNM%fJ_>1xU?LtR)X{mqM-GuKB^_-1bu%HJ zDIjyC?P*FmcsSbbIs5PPd0Lv$i*N4$3l&>MOu*vo(a<@}+C-0-(0-!cOaPpP=)7xm zh0~smF$2X!t8i2BjsBtXvY>c7I(yK?gN3kgg|e~(yCtoQn082x5r&0Gb=mvIKX4Pb z`W(fY_wHRqK4Y>*UE|Yy93m(equfDsR{uF4K;H-4M?-vxS)ggye|z^KK?y2sTg2a@ zOgA^1Rn$n+(>F@hs%D`|F>024(W;9)1joqSjmUsC4f8@HrDJGLr=f914DlFNJ0(PO zx=t~Bh(9-?6RlzS1S8E{xdG@B1`QD=E{?r+6J8(bUAdJ_49kds7>%cezT>z)$Y>6@ zpyF(=E}LwzHU}u0J8@?VUI2ltfMlUY@5rH`F#{2J>>>m4Sq0waea$t-IQuH4^RFz_ zz`H(Re5g%WlB7$v40vU+=VB1*4|XfVoiZ9lkV7qD44w@ z{!mC-PCER{(K9;USNbdEUuYePdn&*PuhCoDMP%~w5j!>Mzgn74;+86}fwYhUk%Ui} z$OiT6!e&!LbchyE<|5`&eD&-dK6D$gejDvfAL~bYo3XvmJpW_pjo20SfJfN1WgNdU zrQ-6b@~8xpb5Idp-l9aZM{vErS3+Bd2m_h?DJ@nfiSwPYo3MO z^N5Rc1c(~+7lwhxJYdtgpyBa^;)zq_fGn<0fC{eFx<5_};m99*dW>22L2XouacN*9 zAld?7-0n=OkGz0=%}?)H`0V)uis0+{-hLc+qW&WHapXBwI15}umKD%ofNVMjV%xzo zY81BT$j@N^d~tGJ8mXh7ESu+Fmn~F)%nm#^kjaR zWSj(}S3=ik|0`KaUqF7H0= zMrQBP1DYdJ56raqDm~V}Rc+NSr!xL9tj9&~81G~3deK(jGfgMg?c+7%)7-+nDO{9$)_op~x5THS;cY30{;UKV|udY;% z<=jQ<$Lx)}>Hs1P{v`vsAMwZbv=EQr2zj6gn8>>@fI++HZA#zH2)6|n2i?!uH zTD%Ho<7Ru!a(9QsQEmQhxBS%hdsXWn@$|oc%F~E5Uk{7G;?-fAKDH2t@trw=ua9^- zj#*}rrAKqj$iu#_f^a}rse4R`|71P)DUP%JbRugHBTydh#v+??a7t}!r>*cwL1Om? z5F8Sq2JTTQcd8avD$nLjtv9l@lbk_=5+pmXZFORX=clKcc&FlD%o{uEZ9YDW@}KcM zz(o+dV?*O`gZM(ndW4S=!MMhZG#EqyX%sT37-T88R}Wk-7%`almsA-`N6eM3 zr>hHN^UfLQ-ZHg`HO&i_#stt2Javj%Oa}qcgd#M&Qexj*bEKRj5nbyeBW>>#UnLKK*p;?QGe)T}=S@h_A6osLw{L6_z0A|$bT;9Ns|!9VJUL0%*{h1bK6#m0V;-Fp)ThjU-@0R*1+^x}bQem3_!< zX>U?#a-Y&|@Z8{e_CD%uw~k1n(+WZ0Hf+j57!4;_NJ-%{Yu?O7@;V|>%m-QCBc-Sf zytmNCLidogmvM#Lf`&I?ZwzRgF82 zpMuY^{e#6ACC{-{0#TjIhyW>|;F5ug4hE2tn!nzs8WsJZXgs$_^E*u9}JMl$YI+vt9);bQ$c8wW+)2drA%cca*IdB3ldG-w<*K|7`1D zI!jCml#x+Dti}O7!e!H^I5o>nEp1tA*%$#ZC+hCvx4gTLS=^ueN#;Bvfxt)`GA6lq zQ{mJy;<}cA5sEqGhv1OT*;cBLgDNGux2;1s9E|OgXOJX5Z$<-$m5VE*(wvR_hqowY1gb60$jQm-rY};44v)nwYT-&@2Z>a#fHx$)S zNtY!_t!N4d2lb9uuM5QryX)kwPEvbR>68TJtVegGS)v`u+xeZM#~n5HUmbt9?ZnS# z?(u`XoaOD@H7QQOsONf7L(#au*smNh`D9x=kmDwPPs>?p$N*Xeicq-O*#;-nfuHTd z?`YQFaOgf7J%-b(M7_#E(ciGwKe^A?oKKjms4=5rUel*#FKET#st+2hXr`=9W4z%n zJgG)67h}LfQ+ncf<5EPEY*Sj2MrO7_30$)N_+)>ThT&mGhCzD9Ze4W62- zM$Pb;>_!c~CtiJC*fC${?{jVN^n59p1a~o$@R)0cup38VIef>CQi+YTo5@B0moYyN zrZQp?$sQ4>WC@^Fp7lOMWkF%J(c7LR9Idu0fXnHo(KT$!k*VzZ7=LRJRBmQ|5)*rcbJ40+$>O zI?|$P?}|c~g&mP^`S!|f^ZI#*_aEKuqn=9tb)H~SxEa^aCHb0Pl30o&NNNe@;8{2Oh7ER(ec5PP9@(`6 zEjMSg{<=GoVym+*mYb-t%(g_mzjumJi~+xyafiQGzCv8@h7tiJW+}v@&T8|WVqG?n z?!Xj9x!=>In=zMH4}xYBQ6?=I#9E zaxkoyZ=hhqZhE{dxH;OGhQ~Or(cI2J&edY4_?AKbo}$x@+Ic7=83$COv?|I)y->x@9ogS_#$KWRWeNFV$HXbzH8X&at7iEQR7_Lw$gAt=BU*;s!c6~E02_?14qXkzMmpu zAqM9%7KSk&n00a=--YIpK7E@9hO*(htQsIqcFMJzIir#s2+H4*$^}4dbGiU zZ4Eb4s13Fqt?jH^Z;E1RO;d3&ZAE)n2tec?@U$fL&R`p=w`L`p2IthG-e$yI zZ>lH=PyE4*USPI;4c&Sj?mS!Km-5uCZ>H^2yEtY@%VJlq3gvS_Pj#*4xOMSlY+tO$ zFWqqIaZYTj$AYa(JN$$E$=F7Q)cLinc1xqtOAQL(k}vyZ6sszUamZ`RM!GS(DA`(P zyF2b3`Eq82r$w_9AisD4udo%sg*Xa&5a~Y6`@3MXoM8xS;7U)x=}~28mE2?Q`emVl zY~xf+*d|Y;?a5Po<3{*HT;rcW3}_KO&UJ=2VT6MHkjtWG>$pimdHh*&8r3mJ zWIl`PaewXi^F)u#WXCv0xT$g;01#IMEqV}vwpn-$mPTVf|C{yO>@vKT8M34S;DG$w zVSH)-IDTFFCbbQM(Fe$6OBO9tpIf0d1=g}MwR(=|8?}f*sYbT3#j1k4Y}HW|@9HH_ z8kX9SZj9Bk1t*j7w2q!@9?frhU5o}=h@v;F3SN+kxWyl9xTo##2%qJW*!`gSPR@Pv zrzp8sX#8v#b2Mf;b2jNyd6KlJM$R8xCrYL9>1_EE&4>VzzzIiZMb*u&D~_mJ6Mp01 zN(|mM(TvDgoZ811r>8{!x_2SR>%6$)fN&F z5DG>Jx5h$Nu-Pb_tV(3jRHv!EanV?GOJlgi3l^9h4m)gMG&RLN)}wtlYI&_;!;YtZ z|0d%U-^yF8^hlFWNMj?^h0H8$ODNP72ImOFkG`wwW`hMsSJNs!@<&{#8bi;#R+ID8 zzjNSdiGWF-XVY7gOc;zJ@dc`rEs82Q0(IY|x@5SvVy)JsK;9mJCkx@o2en5WSkS*`g(}3wUZW7+LE~4i@ zn{Hq>-vB0s`UCO82fzP5_Y(XjSBp9eEjE~aw1LNaD<5A6uJ@_`7EikV{qZid|Mma-bzp?2wT%`MQ>iCQ(oM3Z)kgpS zz7~v#X5-orN>fBE8rlEUtHJz1CH|=LCFxp^hI%NOs;=hZVxXL4z;hAu++t^$RN#}d6W zt;Smam*roUReIe4LChH%_~uxVRwze)!dcCAa@4~TFZi9@)u+YNvpS}&4E5N?bo@Xm zkQ9_PyJeA=7XFcwBHL5sMnR{fR)@!8oATDdosldnHalOem%=6cUF@l`XW6&-$FmEo zJ#iL2by}9EYg1Q7BkF09e?2pW>&aDrI6Rz^%(#6RLw5HgGvZfFa#$iljK?awC11Q!7DM6Yia>1Yy$!5d*v8!+FPMJ4pHy?R59fS4|}B~7ks)m=}Z zW@E_k4WP5OWh6DA{B9EhYL=Y$ykWbgbQ-*pw9vTX7!R+vLeyR1yLZC~qmbKnk zgv*#yCr{kGF0L1VLA~`nyg_*aQCe6;yRbhFl4Aa3aoJp$T}aRO>-V>B3|a2QMPf@a zVdR7zIVD`&ZSmI3fyDuYX@=zxCV{QKEgY>5qRlfL1*3+ORv%zk8qjXTu%N3m7Rs`0CA)34?a${w;tMyD%mjG@i-wHvAh*Yk9tG zc?YTJIiBwHp_0a`Vq)SqQ9ihtmtQhv4M9J=^pe_T;b(v|bni(>NI{E++t;HJ>jvGT zhXg&#vaoZU|2=vmTy4vF(LnkW!xc%2cU__cKLM&WPMhcjFcx=~Pa(pC<{4DccCp1bA+!(zp64;%q}@fcU}j zIj3Xq@>?*JB1w8i>gWtA*)iluCawvix=9h~7XQGWvtECZQSdqU{@3{v}-yOF$AUc!5t;~CE073bQ z9efJYe+07~F76&POd073vz^wZ!yQh4RZ#YRpD^sTj)}z=kNT?mNB9lT!+Oz?xEyia z#9tbJd|`EmrYoE43wSeNDZ7R$no1Uwq8{CUck~V?!$K+tHoLiMqRb_=(ok`Oz3XpU z#zbE%-tYPiu1q;H`WDKuC=?>;nD({&baJ2*KH`$iP$z(;W(_zHl$GIEQbx(f8ugjfPLcIx97> zyKD-XZ`Gt|R!+gP?l^Wf+m3+Z5B?=w^7p1d@ffEkg0aapY>5o?M9e0PzusiVA|%LBL(|ih*K;0};I6xLw%N10uK1l5zyt)xnm|Qn#jvvrdvM zENh3WMPJfv_G!R8)|8rW%*f+0SK(;+eTGdvhcv>4Y()O_f{P#GZekMOF_6`t7e`6!2zaJjfsJ_nX z+2HYx({M6QBo(0qI28M}*V{X39N=8D;GEm*?h=)-gaX%m#i&AxpjewIYY=am{q{~D z<9kj|Uj0q`e+RPyFqRXyF#HNq3T^HQ^=fGn%eu&o%JNsbhf`yICLdXLl1OY&CGCid zr5o_rV3NWrpvfg}JT@T2jWQfu2~;jf{!88ef< z-B36-DxIC|yLrmcaewFn_9pI!CfU{z-r4z#x0V51|d6_IU91&;KT ztoXuD-&o^6LK52z*+JGu0jwUr<3cR#bELg?@Oxa7@#-d)QS1&uVyyVTfyS~DAcuSX6;0%|8g3ieedCJu&0 zUc)wg@{vD3@SP8DU9G+KK+ab+s}1gv;!Cdt5Xv;DswDD0Ek(1vD-VFi7+Qk~6whLQ5rNIyeAn zg*x=NO#$np*JTh4MA1~u8GL7_>!+d0eodr3VqOF^ai=^bR*?dk2s+D}Vlse9iH`l2 zU?sfhgAahj^n)9ql%WsVxSLu4OG4tD_RT&^r~KFchN8tj%arjC@B{(hv*^r6_<2l_ zcB0%VcRnVPmNAy+3v6~Ib1Ep|R0x>X&IP=b;yE$K4i;8iVbI(F63&ox==-|(Ec;L~ zAV~-y2E%BzNxp z?0D-VaUqTinG`ioD7cF-PLDfH#c~jIhwPYRFmLdD5a$E8rT&{A-5*xP0K#mrNRy*;*aNqyqo zFuP%RPbF}_gdc5c#;mP0+72h>EF`OH1RcBoE{nH&+zf3G8FVWcv z>9BIuDbIH4Ddt7g>{rdc)(grmofA$o!0?dZ$rA7pr(W~AuopmKsI<1dYm@?Tf({M_ z9;qYaXyb@W>-p=>jnO*fKrrDF;_|MEN-Yf{CHJwuRM$S9_8Co4Cf(IQnzpJ#Nvy!o zt@M3%Gt{LVF*G=hG|0#ZI4m~VaQkt3Ljh_#@q0WE!)qR46CSJUcWPtNTDe9$SjE+I zm^U7}qr@mE?ND=+#lel7xv>lx4Rx&xZ4Jjb|lXn|2-IyZGlrbBf?~zA!+g35mXKY~t1^b9S9+r5>Bd_1)^D)%;kWNLJ6> z98VXC5kq6mzyLWoSwk!PZ^luMzXFUK*PC9X=5)`_&vEhN0;;UIZmn%a(+UkmE5r^I zg-U8*%@IDtlbT=f1P3rpL5II(Xa;PNynqHCd-^P$f>T`Zvy6z(_W{ROX|{3&6Q!R7 zIC5YSjMn5g@@`+>(qPl%gtg0zA$HZt6|_`Zm#j60j@-RZd@{PgM9x!?YaFPEvoRw|cX)Z#CPW4I>LOg(_G&5GJE2j|G-dZ4N%~MuEbzT78>i z`VAgH6>tCLI!y$|{=haGfUwQT6i&^O2B*374trf5v(I>Hq(p?+WbA5PPFh`%3BR_P z^qS@x3;R&8zDz&fnDzR5nGMa`4KXnY9J+;D^YVPHPJtV2!ckm(Sz@+hn{Yz~b^Ayh z@q=Q42b-|J0uE~xsH-ebKI}#0pxafm|5xT}Ooxy_LmF2Yvenw)U)WL?5!#fop&`%2 z5hL}P@sCN*{k3DOw7-;iw&`DNe);g){Z4wt4(4 ztM%T(7@)Q)b9J5r=@X&;eC~-lo+s>B@;_jP=pQWgGz$^LC^1}K6N%+oO&Xw+eFy-Q zZ&e*2@S;9V6S?3+89AzAF-rwIBb)c=g7WzYi+rlH835>d?r%g;bpcUHMz^fn zd26xY@qay=5x$M!M(dzL28Cq0rA7S+!W0Ek;3r$krb@sJ**)1}R*Ea0g-RAj}9qKj_#%FW;>=|bQX`hfaFm&g@#r1zibZsV2~;sV{x-lWs!A{DE#NNOP%eT zxfYIcf5P~kvkU(|&&ToETK{vQq;y#5Ft3!Rgi0(sa(2YPB6Z}Fef<2e^}rgiln`A{ zeB3K8_F_nk!-y6~&Ns|$|kAgM26Hra6?EjPIfJEbwpj= zenF5*mCs5Dj5An6p(t2H!!{UwXOE$j&loKjmIbNPZI_*bk$lQt#Y=DlQ?N2Vbwu{q zr@gJ>mW~vzA?8h67YWOT8B)&zE;|);VQ!OjZ3%tWg`I4Eb~;rc3!mRN_|&hz4F`_P z|98Wmy+!X+&zWD3+G?FPjv*;G}9L2?_d(Lp<#_`a)CU1ZU{~6g8HZj#Y`Z8(m97uo19Mro^M^Q9$x6a zqYM6EN6y75K27L(^S-Tm(O6lYchGZ*EB5!1*=W-qJJ-FK*f3ZES;}oT14a0>I!ZOG z1}7?nictkU@C}YTvAuvKg9NB!;=eoyeWG4RVfZgxB9hoUmN_Q-V9X0wdv;mgkM|!O5Qtv+&%P<%i2I^KKc-U zZh_OF5yv?otN!x&bO_^tuP=}i;(G?Oc10@m)>BtE#ecrY$hzDPl*w3(sVGM<0feDY zPyb|u7#zE7Yb28j9%qU;#LDADUH%vlC``VUx~p5C^ryL|;b^mO-S`dWI(>`xZ~ue3 z6Vz5j<{}pvRG0P6bgGH0`) z2*qV>XOixfAJ4wFjFcQ+N}x-@h7Baa&b0 zbY4EHu>~Ulo3`>l9t=CEzb3%da53U(u*Odh)5$6Y*0$s|!NZ|`%9`@?4mZSABDqjh zxm_gsqnVV9`7A&&YmP@99KVphm-eq`j)2$C&d&_+jh;2Ko2xb#5r(&=BP$Q_H*!`T z*;;Fy=6HT90vvKk9-P2Shq?6Dw+nng)tW-ZA?J7$zh>7(Xh@_5M+!46__XEua`;Z$ z?jNL=>hs;^{fFr>*%Jq}V^|~jWl;_hZhZac&ewe2DCct)QWJwF<#_@%(qAJ)D5VK# zOmM^f#l=xmncmV>Z>n-m%7MS&?d_3dq*xN1v^{8k#+4sPu?#uktAgWTNrJT@afA5C zDL0DZV-VME5)}wpn)PfPOq;ZdhvQmqy&E%h5(O~fg3t9)q38=2dskJo|W)%akpuHQm{7wCFV zgi_6UT=f7v`tXwl64GxUBH=!{dESbhe~{TwKR({Z#`V!dBKV0bl-S(_xi89LLK5Ui zrK{1t1l%@Pz{;knJTduQVO+*tLKTY*ngS{8kP4#!IkLypTdw3H!M5pm*cRxrVF=bX zW8=xgm*$)SP#fz*dQt|cBR0t|!X%9{_U;9QR`(D~Xqq`+myRawm_SP7WTu=ItZ`at zP?9QCx3S{wSV5Gd=4Nm|Z(Nb_S#`E%#s%B%s}D(knYk=q%lsiD1m4Rsy^hHhb-feF&1j`}a#U#iO9IK*`eoP8CD-SsKMHabe_(`b+EtZ~=B=*K7EB+` zNnQXR@yv@0XN|)F4?|&t38>kVGh$U!_@ES12nWsl zhv8r4>V(f!cmCTLUwwPKP_6A8VMx1mV?Mf?LT>q>p?>O=at#HssZuR!SD8bhpVE?a zOvvU$hSlZ(E(J~X1p_LX3UTc0__Q=EuvD#*5g2J!A9mOnSD(+D4~{V?3@vINwsz>b znw~?ex{?Y{IRyT+gLLf{btM9mptp}KWSfIS)}X*GFE3vfi?gE`tIbW5yx=Vzv+9B8 zLeVheKk@i8%5={xhbUTC*DSlRD4JT}tkIA*FpjBt< z}!&&K^8 zY97XW7Y9t8>xYq`3Pd)-@=5x3lZ~KlReEfNDl4|}a+;JtZj+rB8#a#X#Ks#>h5wPI z-YoBIl6uo<^~#t@i%hjUlpa<-#LCJY)o5PKlAYyEHQzGNkK$2>sUnKBfUGZ^UyDNS z(7EDQA!kw6lq9igZn}S?C*IkD>^_MP_0+K*X^W4d{qWwO20um&#!WvoT5D!#9&NQ$ z&FH20K)g5`9c}?BkmZ?Yi7M0)@4(nbno*3{4Sk$m#~~<4ZUK!Ymxh5AyCQGJ9S^cK z=+vf4?mh?XeW)t{dm9Tt(Z)p#f;PMw51E{COwEbX#MSxc-%1??!dY>#1qGbvo&7xT zA&H-K<|4h9!Xqc*Bsr6K^bVPlL&;>AEpX?bL_X5*bXn@0>oT;1StEU~S5D;wSe*M^ z>b6`*^r`DLWBm)9U!DK~*J9JpQt$_l^dT{qOFZ~xFc^FDv<9!7&AUJ9da{vpJ24C$ z*a!V4@AXx_<~*}wZPnYe?}V%o0@0%WqXbXz@Zui+U%l{wNj96@&2AmGE+>Zp8BF$Q zZ+gU_xY2t<%?&9))g}N|gjFuX_7*s>U$``V2m77FqHLt^l3BWSy=}Jq(GQA2E5lt( zR}mdq%qL|y2R=CC5qqEZz?%N&E>N0&*cK!G6_g1fN0O{cJuAmzVJ+&$4K@%37qGL% z3sRy8PATJr2*E#csAxz1x>RiU?(mP>a(?fqJ{(Ob>Qh9M7Dig>;1F*5_~=?+`fI2F z-J6N?u;FFX8Wmv~J1u596&he^@{$V6%mL5kdFW};!TEmhw90sGsT!Xl>M{)W025G} z$bzkV=&XFXw$~jrv?NZu;Q^Fd-TwipTYjvP>J}#68!XLqd_30V%6UKsPUe-H`Buq6 z=cI7}B48Nz2SAtME)H1lO+_TU!yQC`CO7%&-qZ1(tb~U10&)l8OU+qJOX^+0YGU4l ze-rJ+T8A%5R}1T{r*2ks|9m%MRRyB=ghuqGa8PhxWp6|P&%hO`Mk~QdwCZ`&8xkl4tgjK!HIp?Vm9H8E1UyRN6a$Y&(U|8y5h`y zVZ$*tR0KC2C6OrOE9onHC|dccszhGsC6%K|ik;rcE}W{$ogD3q9rLm-dCP!L#+tTb zY=FV&Q>WDoo6$j)lVYu#(pv5hMgd=qpJ1!DBG9XZp~FN5_^244b`siKxOFF~_pHLx z>sFWyC+OkXu7@w~Z$xn1pyC*@4?)641?X*0Z2??x1wLUpy()InNu*8C6FIs*W}7wy zXfPX#&=GZgeFxmwM3{hlzYUr-0ct~|478@yRRzV)*PM24EA>nJ^@7o3N;@S?wAF~y zrs^8Hwf`Y&I4Yn20vXRw_C@v#n7bBn>_sp8gqb=a;nI-UIvJpr`};SqGqLcC*(3g_>Og?oru}K z4WvqbI2es272xXQ;0XfId}pDfJ(5(ir9dSSX}`0?e}NyoLEk8XpXS(C?59&Jv_9YM zWn;`_zOVh8@kgOk>&PcmAg_FiLWq^#mnCxoi?aU+{vl&Wv9d9Y09?G7_F`{8XdgQC zo>StYp@<&DG~6x$Z@s%U;`6-y}z>3LGfzNa#mvOfoAYTuXDi=;Ghnoz!31@1W|}b6 z4lV+VYi&d4Mmb(O#%G8Ib+59KCMj*%x|mJsO%_h6o3}9o_aLDwPhtu>jUC%`zVGc@ zgnilyV-0~bv;v6$N#cmP01Knd(~O51 z>Mr##^-%TlO~et3zAJ4`%1^5Kgu;ysgPdI#l2Y8`8+J7rqayUya$W2>FXKIV9hrLv zwD%v*k&)w0ih6RzY>(nrb_D5p2At(!+?hBov+^21%|KWB{;MydBP#nyavxzi=cVn_ ztS(Xsfu#l;B2~~SN}*1*3BR;GY@Bq{sM6r8n}Kn)X|I{mMm5R;PC@F{IVppA@1ZjA z-s*V;;a75{{>1kl$l8`Ak{u?z5-r8X4|hBR+YH6Sx$YM!WUZf8s|bc|JX3?D!T4ai z4njCff;fW_|S&FWH;57bN zPl@(EQLo(9^^|H=@c4^0_(27z%>0HFP4Gj}nanRaA;%FiV z&Ar2y_OX*+`xz}xec2-+j=c)(Y2zGe+XHJXl@}V+^o_MtqVZL1W{wxPya%#o%+%8w z7WxTLthVIC7#(gPbvh~=sj6_ROvYEQk0Y*9qstoEv<@sl(FXJzM#(AIVK=IcvNxc4>R&n*YCKkN$nz=%_j1rHMwi6+RWKx-K4 zhk814G@eJm(;~s|rAJ|Sh@q?FgY^h}bnB>abh+r)bQumCB1J?)v?aNn1y2 zAUzb@KZF1xe78ch1j>p~0Z`=^EW|P7{k?{o5Cpc^W!n;E4nhfAb$NJ|-lELKA|98FRtC;+Cf_{p9`f zgC+G;J7N_cSyRg5xTy6gq1E_~^t;|2Jd6JaG~+$Xzivy2jq1(tKiaj}<(0Xygi86X$hmMUmc4_|OO7-f^W9*vdIgWGZAwFqO2FvxfOH^GVJVQg_qe~;IP<^EQx_Z;9&g{o*5A$@#vb>K zeO2%0#Vz&tgB;1x`Y>&)UeqA>qi5G(V&@QjB$SBwCqL}QTcuiqZnky~Ep9T7%6!pJ zs~+m($U4&K4I6wm@OZ@2U;FG>dh(aX6;R?hE<5zpP~x>)J&7IJsQLJzucM&1P)-%v z#1rLe2QrrUcoW9pS=`RN{pH3qUgE#)hHJ=2V#-kvThVEhdgIhG+(%vwK;f?iUh>-+H z_y~^)9`l_Yl*5=i%_T)4gkVUZU~|I9mT|4R!*sz+g)gq@DxA%i+kyv6b+QzRja)i@ zMf?7E)QHyR8YArE?1f~SZNqzAj}~rp4>b!kS2f5LO&dLFnT2Qaw+&$iWa>R$ow0!n zb2HD^Gk-o;cH-Y(}FH zl&w*XR?Pcl2SMgPf zI;?h8Ow(Gy0F5h*j?z?s|DET8IMqb@4w>MdE!(d<*SHy{Pt1!ovBC6qqKsM`d_a0O z(Dy`siY_T_O?#jb#;E(`vJU1j_HM=`n8``^L}wfJ>oxtJ80$}SjmEKf`;OjgAAY5G zeqm9USOs!sTZKTtfs(Rb$w8~W3;vp|??&GX6p3)Ia`<303 zKNWPTE>Yn(l@KOHGI98)w!*xjP%Cyfxd1 zhHiT593C>AY>pJ0dWAzB)ZRQKxO>h?#9bR>;?BzL zgp%?I71HfilbvV^=I>!m!|eP3O>jll?v4~Q9MY!+aeZ^6@7Mdf3@SDMb%9M1pbSIX z>)xi48h?mLbQ$wna|dG=uCR!%`6Q8{r=b_5jUFDbdt5NwVJLG^HHIgD(9~2-F`nmy z?W&8zlRy3pzW`|?HOE5J=|xGiFzcaKSY|&QD1_`_0UwQppGqj%-Np1&Aw>cJUXOWL z7y47*7*8int7R~O`<*Rp495*LnLToc|;$QL>vJFvR;2m*L1Z=t@Q3VRpS!SrmW5dd$BOp&WRj_8i9~{sO7t z2c;y{isHiYpkHnPXCS@8Jf4S&>+*OglS0FfjWv3P#~RF34qGH~v;oGV&zIj>{@(JB zj<_@7|InSh9r0G!Jn;;3C;m$UiYXuWae(m`+f&~=qQ{_sS}Mv=6#0?Jp&6EyIxC20 zIogOOHZ5z^W05pgwQ(%R-vE=tGtmwnbFMCro^bHV^0o3zM&jrlc%#wup9`%(m?m$I z0X-Sd{Gx5X!MqxXMYW!nWy3KGbbZoZjqOU)lo6T!p+!{u14eBHF@Jl% z@Shnod7TB}^WXGf_5QcW;+c*WE(6lRwLXavT=>=J#_Xd)Bk@RKU-CROb=q+-F^j z1;gFtNt@t^GsFy}Wz1YUETv&z6*|xUym2byj(U)_u<92LV5Ir8ZI)I-}=)Bsvf(%H5 z5QVG;5aNkehF2&BuS4>}t6Q6U_1{7$aVe_NeIe_2PI22`A*vqtoMC5BTjB9&D$s+1mgbdW=QbG0IkVyKd9F76mqrUITiMJkH2g zH3Jl5A}*yhzV2g3sf$3WMTsZAw2(V==_pL$uN4y=SXtr@B0nzWbs)C+?3^ta@;HB{0jCPU#PW7J^8rZT^?3Yr97|}dp9@+Bpl*{6D$G$&}-u4 zgcEu+-C1`41Etkib59K6JlZ*y@e5LHKP(F( zUF4tmL3%OXEQl6H)1mBbCD31fcWM!*Wjs*bO<#mldAX4INL4l@rDY%zG?LvwV72d| zlml}tw9dHQcl6D1)uP!aRTahfn2?=|AT=&n9*3*Y&ZIg~YCK>Sh%W+@)&1yWu)K{iJjZQo zp6Q$+Q1_bn2C8ob;h6zp_<;TMkXVC>^OsJ1_$w6|as)SQ3jW-Of+U8)=lUtT#yndp z)I&9B2^GC2Th1E$g@G;HH4SpZQpmuRD_Xs5R)>qd>TP9*S{9r2>xii*Mu0jVqg#kI^+n}4)dy2QZ19ntX!lskuAH(-8~0PVP%=))B3Eh)1r@O#EuyeD5!|m z%cjK+7bk}dIAO9Huf4c*J{a_d4r`QSxHUgDDeX|$n_$;8XB{OFFzz6zxW7Y5Qd<|-UCCMC30`Y9N8jT7itp(<=6|fnv3)yMQ7lRIe3V+ zE<`~stabQckEyqwwTrs&5noDP$cFmE7i`>+t@L3jr%-j0*44Y)LEkQs>cH&Y|?M$QBUB3Jyj{jx);FEDxy2W+z_ zIO*eIK9EAO$0(U`K}&z~Cy8KwZGQ`2p6pvqlEzUcp*9T6&IK9VlgVoZvV?AObz2gr zC)aU$j-ox|N38QW&62Su^y+XyEq?~QZBt__s!S#q6O<7W(tV6fKiN)t+9$iI>$G(r z@VJLUTLF9^EwL-K`_Y3Nn5C6ddkM{L%kGnZ9?P$ZnU(kQP7CUw2MY1ws(@V3RtV@UP#A%AolxbUv11ymdcv*e-6F_!7`-Lqh=$~CTtLS zjF;8w{*FPP3v?mfpid@XKxbA_k;6DP3|+i@1D8wFQi7gq3t=;X)@Ispm?FG>e==+e;(6x9@#HuBtUatydxfrY#H zQE~!K_NgP_zmHYhj{i``^6IU1^~{i8XJj|6IaWOw$T$iQCJ1QopPFo@+&a|qkv+HB#7*gQ-qso{J_Rw4RLQ>iFeA2Io{+!u2T(WSX8sZ-<|o? z;flGFji0ZjebZh6(x>9r1`OVPbH5>fd;j2NMUSzuqq}D#10NpI$PIy!BdO`VAeB=*7rLHxX)JRRnyq>N?zT9SV&1>_ zQ_Q8PXMhyLy1j>STWh@L-CQDz`%@m_<1JSBAp<3yZanOW(JVPFD%_WgHu#-|xy5*p zF-mdDqo?V^?dSb@t|Qd!iSeAwdq9ZbQI#%_6$gi*8CMa)j*;9|77bkG+DlsB@Ivn0h_l4R3DWZyd8GV-P6^?*BTP?IJ5sArD6iNeGs+ zx3hNHTvcR*Lblf^y%$Ff<^Zh~`Xj<*zM;?_o%LfTagEll&9%Yo@N9{vmr7x<8bO@@M?ZMYAEDgfRf=Qc^a`=A$XurT%NDUm}6?wQFEv^}A`5gfuO zoHMxA_;yM;Qy(~NiKV>f;p0;bBFAM)Xin>^PKfHdw*=bjgL>CS)Vj|Vdw4FW)Dz;AJC>dnC25^LfF3O$z=>ML7+f9D{cnx zsWun**QMNOt;Op3+SmtJS!SHkAD*#FysiSJSBG4zi-cBdj;q}_02Xn4sL?w}sTHoITl zdZYop@RWR$$I>f!4tFiOPBDLh1$40Ly%mL3d3Ao{m&SdrnZfl8%hJO5R5yifBG9yF zs0MujO|J53i?bU5GVgbPc?T36a7VG|QWnz{mIaB{vf6Cvx@HGunC1eC`z*g$`3*ls z(m3jMH*39S5u#~vow}1w9$Y@dh+EpT3-bYfn`?KxZCTxwK8&X%UhBJ7fF(+86{4?r zm(QX17sFAm?2Lcme>nK?H1}Z|Yiw}TAr_juE+_n2w#_89{yGJ-C+c=|Zz1`y z>@{d#1t}ei1G~oI$F-@p-`6*1Mfe^c<4)seV5#o>l?ysKB3Z?u3UPT&2rgP5yjJV{ zE&b8nJjT1y&q}F1r7^<`h9MSidRT1LV+d!IHKLIiA?4)t$vu(^SB;bm+C_Hc-R@O% zFzhyB-I_YDagjzJ*0G(sW4n6d%tf4DshW8iOZ;-3?;NrPfrA3-`5LT_^?t`Mou>%m z{Z}g#^$lm+A=TFf2*heH0WMTi1aU5)yQ$rc7KHl9g&mD@{=$&#;0MQD@8L1+Lj&Cf#jCR(8LpD9Ur6dpQ&7G`{u2 z%xWnO?$0@cZzwJ)VL9P|%|~HU_8$cUvu8NhFE|#1-3UJ+rEjj(qL^)b za9h!7uv*tGtw<&I!G*Cw4l1XGcBk8oXKLB)LinTGx*t)j9?#4D`CKuabC~|g@;~9R zqCz?fXj1mZJ+){itiqV{fXVywvwLAxN8E#b&%m{2WIUth+x}(7AN#>PR@6Gh)PTTt0%pX<7(1XC2pBuYU_d6k7ed$}B({m2kzr?KWaLxE z$hUmR_xi)m5qX~9tm^Ky&fe$hs@7WF_13*={%X!yvtGKo#(-puutJ~n+MPmKvU0;> zBp1=3gcFNWf1__;r1$U)?TURkqqjIt2YEl!bNQ>RQ~mKgE%OVk;@sM<5Lf(tMOkWm zQU-%$TqODdVqK(6&4--`-o!p8YO{`gdiyO9O1AWGC@$)3l=(m{#aHX~s`OPt$hw*% zahy$GIrG)k#Vx#_@L(8lgTpo`hDz+p$FBSSa-N9%zQs}D(gK-%9fSn~;856whU$%= z&>Zn`igqXq&?sdvCH}JcQXQT{2ShZV2eD{4tFJ+xn!WSQzz{S`F$Ip?n-6W*B%A}T zj_b=~V6Ss8g2sKW-M)_dIXNCuPvh4t<=;)8kG2cxOx4(Ht=1Uc{^qj3Ao%%PX`qzc zsktRwIal7VNKLNNEM9Al>XTQWCA zj?Ayg0xsJwmN`oZu1gY5@*=beNy%_fnLLb8i;5gDlj_{U&a?OA-LwhPT~ah?J`*Up zM}W8-Hi!-0vN!HW;PsmQs5N(a4;d}q9UsZ2p{HJ{dWs(I-r0go2i9P)eW*PIJ;N}B zZ#CWR42MVLc!y(T6gZ!f>F`IgN?AMq7zD7z5feio&cUtah-QnC&$u)=DRw)kMzy$9Q zheWW38=|Y~hpOP-penHF$2)HP{FC9bvy^PGDBlvFdgELpiJEoh3dvC!!qtSNk;In< zlH9Est2l8T9uVfJ15K<9(}ycxMKt(hAJh5>+QD(4U(DMlGlKjeXWXg_A*QScX*ACMH}`5k;vLVbkIT)ka*h%O#s&;Z#YXj*>UDdAaiLx)1Quk#lDqm$xYe3{$xeUP2E^|&{c7IL{N5PJ+K}e%2dncB2Wr(^+46!Zzw5AhJ z5Z7FScq)NwiLpsNEk$-B%ropGlGGaK4TsUUg{zB$Up>+&K#gQWU?7TCG`2ti8_6Zz zRC~c>i=UG)a8Itkw<}c21IakJ9zR4kKb#{J#5Ov$&`VoD+Hge9jysth0FY6vW`bPO zyXWR=CVpH-oiC%#9Z&PE5x=$k?ikUfdR1U3vQ$)bzr^y{ZGuvl&=Fd~Am%Ts>_Tye zLT`-f7x`faE&&>MmSgd}mppe2QC_5Q6nC&LLJvnP`nyvHHv0j(-XMx<)Ss(4Hv?rK zdS&TM&m^=8Hh?h1aEKT!a=~dK01wRdk&X3{AI;d!k8gX${=;ZZN}JMq03XaD5nxOz z6f+hAC1C*~l?nKuT2BHAa(USl)qOHYdi%FD8&B??)AeE824$3s%A{NbAi?l-4NtA$ zXc^~CjvUNCGrPR@+#Xr5a9=W#;8OkF@ zfgu(EZb;j^KerGF`Snu^C_{_~O!JUpN=DZ}JmFU@cUv@=x5Y0-619-p^1+j{`O9(D zZV695Y2@nG=M%1PdA|3|DkR_V!-&-lMSxc+66GF(?iz^*FloiOq*dw70TmVYGL;zQ z01CdRD7w+CK^?ay)~qbKrXnN-{!;r$D`nT^IFr|xh@dL2A(l(n*RtbW^+R~!5Z66& zJAPa<+cBVM#4qSFY3*lctv-bP>kd!a|8pE*@Nj83iMzGB5X=y)8E5qvSE{bU@T)VZ zP#MvF##)@W|0Zm_8Nl)y;emgF{!=QiYLja`sUX{6=aRM z-k!0I4^fA<(Eoh-os4Ht78%M9m82%35{o9NIW)tmzbNtKBnd(XQ+uTvYDA42a-USR zavLtG;doP3*^2Ht>;Knil-yP|9=j{8~t zO~0kf2XG9)p_9KrB9qtvi4-kv+zRSgUzU=~xqZPrJUL}Y6CmKL&dKTZxUjQZHedH#c zhJqD%Z~}q@Dvy02Vqmyto-}yl=53`mX6imRK)yn=x5nM%!|ZW2*EBbF^!oIiAq5p^ z8$9M9kOn~DU=$!j{DZqBvJe`{w{=~CpnoQ-dCbk_H(;(tI!hh80$8wLESBn=5hA_t z1t&^PVMC8C1sTe$!5i1=B=d0}T=M{LEgb4;EEhJu!D?|>HgQRj~E(mk$o^j(Y?u1FfUA8Ca)n(X=&i(u>vp>JG z_|(?#E`PNA+48UFSek@}+%cOB%>x8UNwS!bZ zw2OMYs0p8*)578C5YPhlMMH{|rN-?zMxY#rYq6)kj%T9Y$q1agX#d1`miXuL68cC)$vcOP;?aUvRvCTi%gx9G7_db}fh2V3j-S z*+?f}C?rMpi0j)y`m2Ilq8n-WY^5bFmCl*i>NTjbWf`-{Hk}(ZZeT;?eSo%c@M^Ek z#K&b@{v+EgxNon{h;()oP@_`f{L;|ejaCF$W}6-+5EnjxB;N!OyVd~>2>~T-Y&+Qg zY{?jTZ>m>Eq_fq{*t2M9&iBN7DHu>~;cEqP47LdhW-Acmehp2{%NjMPR~h>u|j; zB&T_NxB6@&YR=+^#(PG58q(+Jes%ei(T6(b(< zi^fi4Is7xK62MR_dP2=3tehde@((HOO>7G00-a>;Bxbk)XTzIcTVHsdu91VEE=o*c z^bA`Jwg&3kaQB!ABij=)RKJIocyyhg zTu8S1TFIVz8y*c-5Qh*e$FLB;kU$Vx@dH>Xu0BMas0{9rc3KGNTE2J&7aNCb&9<$R zQGN_N62Qkd@?N%B#};#D_$S$eqDH@Ki~!yVYlTus&Z2-ctI`$5(=e$;AlW9mtT332 z3pbmkyxi)o#cNt9W!+!eC|A}A)W$WA0~y)_=vE`GFC`!S(?hCx zbV0PLKCD4lpg8f-;kQ8}&^d@@@OT0qEn`SNBmdbvVc@)w95J}U`n4MCd1aIZF!-ak zXWa{hAL6|(?VMb*<;^>1<#|d?@f&n$RT7hm9R*5}VUpxpb#QZ6%)0^I9Qv;iEYMG_ zCD0{r8xL`vN3EXyws8D>>vz?5EU@G3F!C%hJ3Y6wOmZ+px!WNrLXZk1?hQyi!zAce zVPZF+%@SvU;?gaUhvos|s6HHZi3hG_1RA!gK1pfPd* zBhd0(^>}NA9r15*5sdc0M*_itjYVTHdG0Gt8u zM+sJgL5gOY9BmK4QsY&PS<-Srg-l&UP79GRF5H@UVjpnR=tcrmbTQ=3)<#}H-8J87 zDNOc#Y22}0{`S2)%KcA|6`lWV`NHzsv;zn;2HO}BEip#V0~mE&gNsk!t(UIQj2bP3 zRJmDhg$#bcD_kWV28h*kNiQd_;f6`u_&DsfqnXGiLVM>YW$$%=Xhv_ugzNqy1d zqc5vw=xu8THoMil+QtzUfHx-bVWC@8UD!w=a$r?#0$TLK&=AAS(B5DKvIHu}kMR%M!Y7KC z($#^oLJ$5{VPpzw1h4>8RbT>hl>ElU)rYF&mh;i_KT{g( zCr-+s0!czNC?&&iCD8s8_#@vWSj`j);sehh`C?oY_J@dOsd_p}y zcTSYos_JVvQ)*Yj(;3F_CX$+6ICKfG94?(jiy%g;ak{B3j5sZ-m(vpN-{<>QcH`Zj z4xuI;^G)>?RS;Y&8L$Qtk0Ef-m{50TN2km`ti4g274Pyld*mxc!b2^_I_vxTs1UTM z^PnpE$U9y43S93wabUiTmXN!p21j(p8G3A)|CHx@%BuZGSTMh_{5~Uto>NOW-{5Bg^rKXkaF{G=|a@)N*ko8Y3^+KVk zxfC5jl)W`Eo;m@})@&L?D~&KpU4)1xye3bF`TJmmifWwdw&c)dv5;QsKA?%&iA;xa znYS}b=E~q2le7=^k0Z?#c(#Z|9k5NT6k*%G9S?XQd@xb{N`|>h&ADI>>N@2rXQelh z@DK*ZZ_;VuFriqxlnmF*JVC8Eng;;t1OmVj0%DN&y&v%HSqomh&wmnLkuIw*8XC%! z^~gP5B7LwD50y-UusDT!r&{Mr*vtHuo-;l7kOyikCs9Tt9+opj_K1w=ml)eKs3MLZ zEYT5Oj|t>Bxj#GBY%psV>-bZ){1f}f|y(W?JOX)WKN>7?cZDUg2WxYcgkYyA+f1C6g$aq7a ziD@Nkc=yz$KulWLq&0Er(A*IcQ*hk_41mxmJLd7+IeFCt(R85~p4e73C)wL_$`9?;+swJGyc%mgsPr?=Q0>2u(SAY6ZuKb*Xrfig!551XH zC2Em-)Ce48Sp6BDNwIocy8`j$erlX4GT#j8Qdsucrm~d^YP%8LQsC`yUZxk&N*@$` zL_<|;Y3CzEppJ2N`7yI&cSl{r5Y6@GJjPs4OwT69I*iPzco2fr&dnq|Sez(N)k%_43;tl7i9l*OG zN9I_hTUJZo)T__U7d1qK(6#7|rP$qFs)!jSr*2U+kZor{6dZC-p%cPe#fJ=0;i|^8 z0sIvIPG^ruT#QA2XzV6kdoS<(h&&f6hoUR9noyp;N$pA9-Ma&WTC20sgI47V^eowj zwn(2T3}0FVWE_J$cgkv&P<61dRZ6+DmqE)uFBI0jtf(DPAVj7XnsOmpmK1n__`bdX zHGL57_p)+>qLDZ;>1nQ=6Pvo>%u0)W47PgUe^_I&&e+XQn7hO~lY|GIK+{_FEKcO7 z_KRG@Ll8Uzo_ku@5>?L3l1`quk5QuC&c8grJ9Ue!Ykbq$2%9^SQDhQ7U6dc;tV-m{ zoJs6618FTEBM2ZG`VOv49`uGOVVl$94rm$op&Dp$cg+5F#w#41{Eg_*Kh9jiahy&Z z{M}vHU+4muWPl?eiUS!{uZTsIL}8O@9mhIu>n`&mM*hZFHb}`!wZURNO%Y`r2}37= zAb_KOH_DSD2BLirQd@YQxoa-CgB(hFaDal+Nd)TYw8S?6!qn?fXjJ3J4s9i-2^#}L ziEPK$fD=qOt-Wg_iWqKJQptl3YyoI*zu!FU3pQ61*0VMClc5(rfL;z0E7(TH@kgQ~ zrc(_wp;-(#loTz|-MeTywR(Ox8xqI@1&6q>28D)J>$_*&6R~(Cpz|Y;{lmIcWhr72 zy!J+_MCJsSsJ&itGa@$a1jBhNq7vIUF3X3PbzAqdzjJqgdxw3*Ut4~YCrW;AY5VL^ zqz)ipjM);w0BEH!&)|t#&cT8>P`gQsUADi&K~La>G*dKPWu`pQERI?leS$!w!E6r2 zFpXKa_zDqFNCN))fe=bwsZvIS5jY5;YQT5#h`51^;>RUpY4J+_1xCTa6rRv*+`nmU z)AMLnNwH4{Pvy*1Zr#kwf$z0F^A_V|%9-}xA1(hfGs<}nN|90wqsS;ck|l0@2nH>f z=d#BYZj#N+#?h-Hl*+FfkErMAmBms@NUc}*x#1sf`Bi6j%*F)j(}HmpC9>*HeNfaI zv^Jy4X&{7~fU!$DU!fNAljjT9xJzHXL4CyDFD@ohR%kRb`SGA044;zRa9q0V&#$_c zs-D=Wmh<;tvzp2Y8#qhO6cZ7+qcy;{AsSf7WWKCjN5!eC0&8@cfoIr?*iJ#|HkiwR zX2Q0x=#*HAgi^#34~XHT=-o7P^yJc`Y`nceZl?0kr}G;h-TcoV1t0fjqW^iYcG-AoS9R zRu(1yW~Pqwd9m0j5~ZT>-BUym4;&&&QQwf?(exaOj8!rN$OoV}-7LuNwY(!w0g!xD z-J~|6L~YW)>#sM`d#HC=%vP>epoRO9jC)w3egdE{YE1KyP3l+pOrVNF`N`G}-7R7< zBeX;_HO6_)Y##WdQ=4D{Dv&7sFhB}z!Q)YZ!S@}CGXG_5cd|_u5wOlr*Tyvo$PGG~ zL;Tu6NaV^0*e}TVU(a~y8+o5|z4^phjMCsg1V>HT-gWTv7B?LNPi%HV@5-zFARwIzN_Z1lkik;we zGR+B;xflJ_I43;<1aZm65m7nx)z9>}{`wdT{H4*p{Q+9~&#Q$~U(OHY`WcH$z(+hd zkfD+Sj2Da!S>+G6m?;yf#LcHH*`gb?Ha;4?G|;JdZVZxBU^Ov;Y}R;)@c=>j)xnBK z!^jcM7(giF{3IMs%>pgI2(@s-U$VJxP3#S?#E_VgnL7*aZnr-_JbPa6 zG;?1#XP-qbKV%1OWBcVvRtne6i3M<_`^vjk!ZX zFE0PX@~>((!b(gVFO%GbCy*lpVHJ{+U>F=;Nq_g=?!VlozVdv&3u<%f_EPrXo==kJ z4Ir!8+oNor1Vkyy7h%IAUd10aXhh_9UhrTFQSbKj;<_1ir=>FK*R>q$px@uYy=dGy znyNXlprag(9PzgWcYOcU+`YtoTjp3jdq1M7)Z>Dn1O`elk&OZiYy*1gAu{Qy*hmv` zwreUTvxTw95mg=$42#`8E8NEU+|)sm(*|q6P=t2}@94G;N?DBZ8zcs%&edF`meLKv zy{#6!3$#mxlXh(9PAve{vGAEZ=T6i07PkFaUY`_lM!yIbBQ=yY@2A2<9+L-rC3DYY zDCaeTDhNG)JyK`y&Tk6gX=xB}?K)%A3*^CYvDQsj$KW=^I?fG3Dq4V=={e*CN-vi6 z+?`t_TTtsG!x6DZ?SlW9^)ar5nQywTpfMl}(-v?Xj_h}UowxbC#o1+{r`CFdKUByt1O#%>(R2|a)g}zaun9z9mg?iJ zT$Q}*N}M^WTeFAD?4@w?SrFJL%3N_|tEvk; z?Q--6X;{vWqW0DOd~L*w#L>!H~Tn(n}$F5;~vLDj9YMsa<+M5xFgtFbh}$Nde?~ zOI57z?)Z-4$p}wGa)@b1K9xv|*-LlZR;4rifrTb)JzH4IQX-ANL0IdZ)3VFw$9R_2 zr-uGsS&wj<*Z{`#@aF;&fX*A`Dcn1R-h0nahg@AZG_AfD2y*f9w123vG}B=w(W@BL?11qe>9%~`|N@~ zpzPFN)ny7`wcw%lQ%lz*Dg3wmY!eUj*mfZTa_7Hg!!}5uz(h4-DWnVxH8!3neu+-I zUghs$cj8T<$jf=_)4iEDaaUtHt>*s%$ z514xu_fWzUnhY|XzqE{8-Zkn@Ap950ORiM!FJoQ*Q(Cc4Wd8hz2alwTHByxh3| zGiOo5Pk3l!p{ts#lYhz&b>%@dUCv6x&1PbTD^v&fDxqkPbiPpji0#0s;+xyn5<RuJ$uosyS(`Ky>4cQ@^n3BI~cGmj8kpqbRgq*DBA( zjgJ*pRYQ|K-|F|VSVODM$KFOR~bQ(?KE>t_{Z@Pzjq(@)-$R*iXggQWZX~iq!u% zqZ(+SHXrM&fSh~Js-QR}1pGfLDMLt?MI^t2|6D=_k4Ju)g!iH=U(lz zH?C*+<{Uvm9~}++zWO;7Q_ye}8)!25(BXlO<#z?Br42=qW)jH+r*JE<+-11l>-vez z#qchS$GCjw@Z$HfTi^w4SMaAHNCO*@7IK1TO+lU&P93Jq9>5kyjjpPGT6{dAgjzl= zlyk@=k$wlmlNom4f|t+%-(xZia>5rqGHbi~SC;1s7327|Jpq{(WyD9(j25zOO0;6T zZSamPR|BEyA|pdsqb!{wt>+Ym7$9xy%T*Y=fsoS)Q%$HE%1KRh)8z74pHQ*jv=e7J z-3zpKLv=5Pt+d6;mUbu$S}DK{P?>)LG3=&sz*;yFm;~zq)aicv|Xa&DWHw2&8+yM_LyxFD5|XUXXgb- zXio9s+Bkw8pG!$QEnHG1ROae&H3uiX-P(>=-loRY1wP|mGZ)SkZdGsnQ}ayn*hh zN6xf2?)ms@>?gIgJ7G=>oZ@V44&^mYLg0z|SZsaQ8fT+u(3M+46%~4a=K5-5M@!qA zqnjz)cCL^VK>~pjba<99Pr4>YQI`$RwIl8z+gKtEmxDThI+YKVkChdc?7)HqKU9w* zVD(b&0Y*UBSW--a1Wf|CKplA46FtcMbxl&*=KchIlsUzxxC`MP&WzNPi-K}EnUP=P zG>`F;Jf*+vRq1i>!tY=csO?qmGiy zWn557rFHTw!=fd%HPxgyJHFfHP5SPuw%#N952Gjp#3xFPj=PHz41WQ`q=I_F*hsrR zNZN{xlIZ-ozjD?|?<-}4lD*MGQTG?gQHXd0nn&tU8hSsL`7?QHAB*kv1C3lPn-qTJ!Bu3C|M9EX| zm{Tb7(L9rU??rdoldAvetk1g>hz%Mx@A_Ynu;Jpr;$QV+}fqXcs&> z07DwFC91X|dvTngMQ^-0+P1uD^AWyea1(mOK*PnJB0A4k57Bo@ySC{;S>#zZB}Rt>n`!9~gSPF#H%+k8(H=StB%nFxB8)kmKYCz!s;8!BXf1cobp@lPGsUoIVH2(vdnc?>SD*} z<~wCSz5K20D?0fKbw?>n86(t!DV%WDSQ0>Jc9P_ibd*#D)8bJRz?DiH-;52S+)pwr3rjKvt?6KOLh;tKWv-gKXoMC`r5`(sbOkL3%4AsnHho(_#`C+Bks4 z{v7@{(}!}uCsCODutP5N6erzLVt(N%;veBaJD@K0~A;SF5OM>Fg8o9WCH0mW78vsJ1U*Ia8^SC&_R^ zyP~d}NxEcvb8sz{3!CIhZq$gTY7cdL#)|q(YPWWIi!BM2cY95xMz!9D&Qu#dB#;q+ zT&W<)(Eh$twVLflJAbaDIcuu2mC_CDJKB$gg#(Ek@WeslLa8zRE-P{^wfdrud|*Sp zA9RX+yiZYUyH44ffyeZTMVGB@xH(INF@)}9_9SXs*}PKB3q3Vv0&Uc17EYBo_*-lECDI8BvB%|}k?QW0Uf z**J9KNO-V?6Pf0ZL!DsMu759XZ>c6N<9uPUO z!|9N6xP>^Q?j~>wG1tL4L=lO8+Q*%~XRPq~=_T*_LMVm6W|EHuPuD@NIWS5@p;{ZB z^?nslF-A3s*r9O-WcX{0tDONOl}=&1#lkhYq?e7>3?m?%D15I6CQ%7dWQ{ZydoP^v znW^zPB7;A6zC_#2pas?f+4tr<^Ss?NG}!mi+c>WMzR=GS0C`|QUFN5-Kb-_01>d2z zQpnC_SpWVUew%(dpi^GT*)46#T-?wz@;t<2WFm)|a1L9LudAfnAhIWgVYu>`jDym+ z=;=1}-1oA_kFy;V4_fY^#tOdU;3v9F7OooKk5Oyny?=BfEO+A$XIE&YJmYXfKS?gl z4}Wh~Lu*thJ_ppNgPsxC;;=j*l;}%VPx?XcS$`iNb*KKzNX0Y{i}g}-Lqs8)db}gy zE2zO*RD3)h>rNuNq;Tqel{6^|@Es3dowZiEURQ54)A=Hkd)xG8tl`hUMw3sqBSExS z(Z={;QOPUv6*i3Dn*Y#7Ncug|u5xuP=g}lOFA!y;D-T)z3)d+n^j=npY)qt%OUq)U z@~CzM`?L^eBEJP&Z*O<^nfYD%ev0~Yg<(Cn_*-LFl0RMk4Z9rv@5Q@_7mQn^LFcs& zpB7^E1*~grMW^J{!9EVp0x|YZ&{%|LGdZe;PFu!Xc!(<&@v>wkLNP%VdLh4Odv=9s zTnYDUIzuU>79I&ib>TzmIf4nGa9#-D1G*du5RsI4u~d>5C6El^)9$W3(yn6 z|JK=K$KNB6)Bv|9IFE!0b@x8o>*Jf2ZyP-^$8KvS_8%-?VkP#m&4hjApo6uuKW{%r zZ^7Pd0Ia3J`B@aqXe>w7X=oJK8KVYYb&}bim8D??JV`Djke=Et8BX$5(E$PF&>gsf z8E^5QQMwjVzuZoXAv6kY2~oHvis{7E6(Us_Rps<%G6$on+kPUzx)j=w7E$#d5!Yp( z2lE|z^_+6F?5#?)jL9L32rIEoZE za2V0(BGP(mkdo~2Q~>X_J1uMLl{#UhV;sa=(Ynw1JCpe%Lo-G1SU{CbDH<2dr44z7 z6dzO^V{+7YxanR66b`pUjhe7Qqv}%plXaS=5<0^9v?|m`xIbnk0I*C3RKsVO`}d)4ziB0k&nt3hA~a47F;3E-^q zggb?@S*GR&RM0mZjS8+?K}*w1M!e*(0jx{mGyBXvZTT&0?wsHJ-eq0fkI41x|FznY zlBIYG(OoF0J-|_bRt}tn#*>zC;d7Vh-IN^WSdTW!XSI2}66n}4_qrnTM8Pa(tWa9P?(NC`=23Hm)@*be=XkpE`FtsiMr2ChJ4#No7Q8La*tP zsN#|Rs*|}zU6F8Bj#CO5ykrUd8)c?6R3HaSlw!el@eygn2*h*XukS{0%3Xic-8ZT( zD26OVAs*^*P*jJYn3j_yu87jKo^B!5~Tsx*A4NnFwQ)rzVnYGC!DXD~|@o*{v%q2{2(A7$?p ze+0W>AHO-lw>_zmM5|wKd2h5pquF$5EZ- z6^)|@MSt1nX}&3%>vP$i65WMf6$kMt{fdCYI>-ciw;Bovs`R@sm5`u!k#sH;Mz=&d zC~%X;_@sZHYD9RI`lu;Om_AfjNIF@%M6Kf-F& zdS6rR;HZA4M6p#yZAAbw7Ez|8$_;w`!1a~CSYoQV`=qNUe2sGjrs{qgdZ~&=@vPTO z@T4l~^ma=tCzHUZcaD*M0=h;V=&0YQOuxDUinO5%Nv;%PNaY93d!1_Y%y}YZAfMT| zN`qA?2De+Igw7`Vt~Pd>?24M{lVP!vHIz@3oAw2NZQ|63g9?u*0G!)5SlnuCPE;+? z2RWVdf}dgx?eAyihUezN_`oq6{ygYr(?WFsv>ch=Q=)7)xd_pNU#Z4oN%A>&aS@T8 zEII9YdV{Lk=dU)fmcCFg@ky}2CEoUjz=Bt`MJ<_^ua#u7tug1*g10g^@5it89P5O4 zH4G+ueVwxoyq>g7>!ikJy3z95rg{V+K83{O&eGaMhF5L1Y=TV%D<6i7O;lKAgq^Z? zi_f7+L$@e7Sfc5gRMn3t^@lwNYyXmBBI0D{cuuXdapDV09{S94?&>dLjemCRz2+O@ z^RAjl>VNi;_t#d?2!%*>4Ybx6BfGGTnsshRIjk0`2BQF{)Dtz)@+*3(9;!N}ty^dg zQruiZ)Ow?4+ZEBtVJ=<`(p6(*7oHbA7vpQab9LuSIxsj!)zcSw%B=F|t5qHruR>UT z4=A{WCiq$|w+0bdR|FK($GD23f}BdVrmOC4trY^TF?~d5{)*dgwaJY0gH>WK7CdNuerFIdT$_8o&v!RTv*q{LJq(K0 z_&Ic`f;yOc0f)83o0CcQigG6Xpbdy#P?0)#Df*j#X#9F9(Z%iX8+Py zEAo)k)0|4_-8jMnD2T{}NE$3PFhj*6vDE2_s}a-WerMl#)yPCd%?@)P%vU0%_m_2>abvQ*k73T`YZ>l$J>G=30n zsy@lYb?8CT^)~!*=nSepSK2t}7)2utWa6~|Yqc2baZbtklzMN9qlv>xQH<3H))#b@ zWDo`EP>sC%iLk&Bm4SSlKdUtqnro8NMayuu_u_(cxPV>@rKNm12L?z;i8~3Q7n+?z zDgatjGvFo&m1V>c-=izYP8NRBFDQflns4glLqxda(VjoE%GhzUA7eh!-L`#uPuj+8 zQDG(4CvBe$Fj)W`0#?|ZF+c`Zg(#n(MuLdm(=Or*bC8((44mB_k__tHon^$(y&`L% z*82ii%5M2_yF!HAo)`}el7Up&(RF^SJRrvDg^zZuR!PdU4nR7Eit zQQhd%l1A7)MEchLd~@EcRU zGX)58F0Z+IP^?IDFQlxwO^@$*Kp7p^2-K6>K0`CcMx>uoUyGBLGY~+04iQcD4m^6X zVbR5iA-U;VMCuS^B=AxLXP*j+EA`zcq-m`=6d&~lnJeE-l1>deNVI)AEmBz<%aOCS ze$#5`5cxWe6W9j-K5yLo^W}f59dM}~N?SI8g(IHd|ZEF?M2|ByfS+|~H2FN$$fjB*#-@y&$*m%Kk@ddDX zWdkL!GI|HGdml4+yWX2VGAtn28}V)XQi2Oz^)-v~wC{4BcPY#KB{yR-SbQMUir;;O zmnuo25XmcLO{MT`v38*S@CkV^1?V%W$E~kM&xktECe^jZp^sm2ek0P@6Vc%)&T)|6 z@I)HB5_xa|Ca*sPl3g<$@be$N^>&fXef}v46r%XAM;Cp~GT)B=Imdue5k>!9w93PB zmKL9EY9P(!=pmN-xuv;%S3YnWV5yqdpZ~PXbqR zr+kU1wz}%le$7Yo42yee`ySsvd8{pwoskTwg-S@~Jdi16C^j;CEj6vAx1DL8EMKWy zOHGfw<6dTp?c;V;`24S{Cg$9w>$G(6Sa-+s^$8y0$T8AS4Uaz#N`aLRHa#feZT>iv zxYT`#XvD6jCE1IX%e6G0+_+`m4gZhJ#!;;KdybH<=w^6oq{ zw9US@h`=4bG-Jwy{KT2GTHr1ngClVO0Ax+(6oj;vY zIpPL3Ac7e~Ha*A13dG2LeBn8~UY5g|0xApCr*uJUd&yCzq59FaIZH+7Tig&nB8W59 zV_dIO+ahvNT~kROZQpTGP@d57-lQG*=0iwZ?Z@St#+@I~+RdjLlni2rT4)+7JDgLr z2_qONO$A1z5cG!pA(PPWLB$>Yvrp&2g5255?*M9!6nlO}KlRqy96AnFheHFg4iuVs z;T5v#Mcub`xN7$cAtAsOJOF}2{(9$>fDyP6Xvo=aA3lYfc8f-=Ug;Uw*xqHlN@V!O z@RRsF3U&`tG6+e<9RhF{luQ8(a}b%!#zkYk(AM0B?g}0)S$S$YHc(lFq*Hbr#|AY( z<3dM_ndVS+&>_jhQ?lsS)xElKw-JF?*H(eGt)%bXTXgr1%}-@d^WQ$ay##8cdmci% z#1f+fB7KU6_?=wmL(u2WqnXMNaPb5px+5DsLE(rZ0239V36P_MQec0KSNY! z1t!|UFSI%UNX*b5WPnbCSJbWNW|}Qr1_ue9mZ>rhwA{k`_0AP`Dv*}(Q8(lxUrr`X z1&#{3SHng>s8y*!a;tY;2$MDo1INi7x-pd5#b6Fz;$P2;$U_C?(@z0OT1n|Od1os< zde?zq7;nwX;u@8sXR_z&y)a`h=5;=i*{i>m=NxS@{t3?y{NB=*FFiW17gA-#v={bu%4tQiAG zV5&!uw@g3McnYliHI6|`6o-Ke)pu`Wtc9PR6?pX)IoS&R3B!RUB6uUDd6v7AeXPe>4DhY7W>?27027f53K|= zDjK8Jn3e&PWoll~(B_~jAp%WOneUVnl<6aum*ghvZrQuCr6>*QXyNWGQQDD16WKCs z1P#zGO`coUeHh-{AeNd(R+dJ7eK-YZV6nBUf;Ms-=3BoFUGkiHG~W&99-}_x@%g3R zt-^C|2*3lC98R{^!^9AL9#i1{I6A#4Ta?mc@vmDC2gQSS>kwd0Ifj-F6 zdpzKrBzqGG#pks2%o@Qtgn%)wk8?Xw0hcS|j$``18|zcdvF^KBD;a9rhYW3^;RcfA zl7lKmfoM{U)HGH@xxz=JASux?8vP2JssbiVx6kv?suK_&n3nX`R^2o`@pi>2LgAVE zN1t+R91}c16Kz?lgbN$Fa3gG}d3#^xxvAu8gZ5{OpTalaLl3#eqUsH|e`*UZp^^dw z5tX4?m7YswK~^$m8txv^69XkIEpi2fbN;xiI%&L%gNq09Fhme00edJmk0LZd-k5YPn_uNe@K zavM`kHV>|ZxmUlb83XnU|5?v7Hu74A<+z^YTWJOU+vR`aX|VsNX85ECDIFROT8nnH zU#7#a6YjvGa0PxZE$BEC8|=i--vCnK{fhE&Kk%#z@yfJ^pxUglYz7kJ5b-V0fPx?7 zHjrvvZ(Glc=ZmO-OA-p9n+c z{opoF1v;0@t6Xf&<=aNqlA|MzzNPdV+5K_$`~Ob$mX&6~x#6f98))3$f*qgmWA&qn zk!l+!xsmapTdxGHVbF^(SEN0Wc3TX{LVjpnQ2UfpmDebAij&`-nga2ceoJAsLUGIB!+|Tw4iqSo<`Jgjq_3Go>{>* z-zpR9G8~#^tCViCt@Yz)3sYk%2ZyRc{k^qs%}c$Ol}PXy7MhSv`a6F*oHQV!t$1*Z z@3CvIs34rFc_ zBzzD%2_9)OF{D=i0f#J!s%J;)C}U?; zYiyN3Ibf`o^<5}m`Q~||!@p0e64jt85}r5SF2-4Cl=#L3%|7(X8r{a8g|4&vG~@El zkY$%L^(naTZG7r6ipa_swP#nkYED&Cv&fdx%N#-)6i<)ed~eG zojJSU&_FkM((*`h=^o%#QEN@kxXEHl}~J{8m<|{MquqmQiAkkemEpYR$R{ zHlrFA$dt_`b~l5KEb^m?pnq=^nm}`?n8N%-W)#*`8;xYDpjA!k9}Xzf3}V9Itw@Ej z#oMT|F3$V<{`0nv(tLlftKYsv&-dRg|Dk#vwt$YvKY-vsQv{<_j!2qT7!!-i-1W&( z-GtrC;4Qep?{TK*4Z)hmIi4X8)<0reumo2U4-P9?=8wx*7C^QOrtXPQYuWUgc;)83 zX=$g0F>^E={`v{K5rdaIyzG8xuJHKQJV8;<%+z@27kKaQA7*XzpHCfR9~PvA4o!5) z)$plUqPAf{atwgUSwLSgGdwycQ8Ymw=Hv%-3w4q|!eEi>Ix^o~Iw+OlRwwg>paaNS(v-wCv1JOLsGbIZ&7J`HDD!n`vgiwhM= z5VVckkP4&9q~jB&Wm4r1Yef!sQ#r)cua(?zoOF76iYo#nZYd;g&Xqni(qLe%FXI^+ z-}gm7=wlQpWy+BnqY9%#;Ay|idHJ*={hhr(^xkEUQ7N)11O-#rAEzKBS@zZ}Cs#d2 zi`af(qd{!%nW33B@%upcJ!z`i7@spFPmVB!m5#i^EsIM^$zg*`1oU+sg(gJVXeEwzzP7%SRe6-Eodq8~*#po{>M! z+Bx4_{NLnh>0g;;4%fgtmbk{nu6Vu_=MiaZFdG>hJ7RWDW1VoW)fK}!F`l2|LFGh1 z^o>fuhu4F31kJi0%6mlov=FGJEb%}{V^ym5q((dU35KNInqXeon=DzFK>uAWz`=9b&dF%n02 z$sv1&%0`KMvxGQE?3^@{cam4*LadKN_1+_m#1Mxgv0QpIhWo1(XCv3m);x&CvEQw} z{7mh=KI+S4q-|<8rMi^2*LVRjma=So z0vGPosc*7(Y!l1bGrsdt`b?kBsxCDz_Bg2i@fd(&ny&!qI3#$aHl>jqpSEv9Z*eF1hxwv z!VtoT?;)NW5`*&?-r3hkS6geX{2-%??u!4_w7Ml;wHGB7no)_8#=;By-n{{&%oh6& z?P|T?kq27dvYuhCBEw>b&*Vt_R~nDRa(#Mkq?8b#aeLGzB8R-}dheWBZs)h(Q!^K9 z4*g**4=>CMA7UP-zH2CM=or``k;Sf2>Tn&h1o+ZI$;#49!3Y6CB2<1j@{k+uCBL#qi#{r)k=nC7z%Jo~L(w|^pbDX5Yc8wAKzjtTr8ZWzij9oPY{WT zDj_sdQ}5Iu_?kHng3N+Q-+JU}i(0OSs2SSMr$t(%H*TEVKX7=7Mn;e8+}>a;RQvOH z%kGi`u%!-KrTAg+f}MU!j6Ci+Hfg<=z{8+Gtt7Z^_8;a4wK9ck(9dbQQ!)DtdQM;H z0+l|nXfnklot%g_$Hb7NC{IBqctFXtxaHW^e|)a(r44;g{Z%5&%px_bmV!S(h=ak& z@>)R!=HLll5ifL@@OQTf#g~uLYnc5BwDS4wCEE|BX>v4gJ_w<5z+?eI>SJ;?`3tzvphdI zo(}tm+0hDl0Rc*!AIe>$MG1h42V%*)ON<$V33(rgC2z3!SjI4_1$1t?7CO+3pl#Lo zd?je53%2?5P%;U)Q>XsR3m#i=DILp9YyP+5BFnP z-L_dbT5~n}9;*z=m?AJVO1NZ-2*~k~9qta}DEDryU_^iV5uog4m$vA%C{9# zBAS(~i*h&Y_e9Czs>*Nb(e>6FxjLQvb8^rmT+rp)582E3Rc%ldg__i<6r^pquN736 z`ft)dsP_su;I1y>F*j<5DvMJ(pq&u>_k-b&bEO$r_jdEou zW}uO(e7AOywV7c*R}`Cj<}QSO-Pr zQl_oEJ&~bqMh0cRQHQs!Q|yY_9D>TBDvLad=~f3rJhi#H!!+a><`3B zQRkM%926FHPtRXHS!&x%;aZ-xudkyD<~u=O3uTSbK>WFE91@V4L6h|iT|3YHJ;%3h z3ff&r6c7kdQ69zb{j=dGQIw~ppruHR#ZkVVQW4x;!;972Tz?ulK}y=Gzc(ksuV3zm zXHB$`<-wY-ws-6E=CyxG+DG-9-BH9tZVcr|VVRuBkceuZ>|ZfI%IN+u9VL~6{KTQb zd7KPbnO#4Te)$Q=O;05)9Bd)ca^yxX&YuW4R@9y&Gs)GOQFkk&Q z81?%Hkw;WwS%%g21&KSXD9|XwVSmrWSAl~I-fardq&RqQp{Pv7k3v6+fkbl^&NCR$ zey3 zAnF=JO)UL2^%-eR-^xfyQV789LP+@7EZyr`bj;xJ|1!?ah)hVFjx?wdD;e0)ou<8-&q)c&Lq z>fnKcu91~d2og)RLoozEyktZSWCodCsscrH(%ri*8Lq+BD_x_uDxOY_Zn~sVxtG)F zK65pR>X24}Lc#c$sUyQ#xpH_FdZ8H@mx)H(^afC*{(Hv!&sVnKXM@PkEcINCV_0b_ zsjNuDQFo-?L12!^shwTS`W3Umt|Q#+^W1BR+b-%*HS|Q7p-ZLo^W`T$Xe`E^Ikr}Q z8st-vKEicM>a{SCgg8Vu6dwP{@{w4Oe`$N4vrk|B=y-z=Rc{T437iU1h&f+~##{2o z`;!MoY!Up{)rM&;I06GJTw5q7h=(sf$+nWsK=n#Emn<9_aq5rh;yVxwo%{Qrs&#ml z6^-^#ouB$FE11=QrR_s298PO^MId7EzQkQS18GKhLlC83Xa-ZaJ%y#D7Pj$0jhX&s zRT{DYPnZB@)l3jD?BPgR(Pg`L#>OnF?AvHpx<=X2*i@4GJA(R_0|Q&DCM!RmRF-a& ze5s7AXCNVS;IENsWiln}btN2ytXBF9UVuBa z|MKn4)~5YpYA)aS8|tuRpvVJHHbr&emVZ>q*O@5vvtL#lp6WDbzcD;v2Mm<3`)jUi5wSWiL;j{o#w5 z=6}BYPF4htXEr_wBL2?&rsX(VFk=qdDz+tY!jquLKG&ckvR(US!1hA}} ztrv+HdIlqa2GmvkA_R;qD6f*f!uGKmZ3EMmfdXk>A!8{#BPVg|=zFa=WXqxLkvz>K zuf23LCiP(Mc)0q)HA1$Q(_T`h=IYBG`A?!Pd>(bNrF@oF&!+JbVHDwL4c|wL;3eoZ zN1K6WGYkmY6m))K;+J0wH~=YVH|+(HxYmla3RT|33?7XC@||373>sbI?QZKnb^E=G zZ<%q&$X{4$h2C$l+SFCU|I+!9A#=vcAZ(-C};&+$Y=l;jUH2k@-oY%4dk{i_iU+1~)*=Z300R$UxAtXBMi*D=*1+<`6NjH}t zxUzU=SmFmpvo%tOwYK8&S>D~)9y?ceZ%yjzRBIQ=StwKtQD4&8I?H)uw1-!jqF)Xvrx*mhOxkC5hg9k z3q~tcK$C}gqlCp3Sshjxo)r|}Sg$Hac(zu0m(Bb>uH*W;<-^0$sJ%&lByTowl;_uq zw=^^FA&}#N&4#6MBcBWvU8EJ$)rOoJm-1w>5=vg)DW>zGi>cENj0Qo?!Vh_iKkyh2 zWt}8w5g}Z7Cl@r1VWGf5Dr_bmwt6pGn2+JdWsG+jzxs@?=NyjU6n}K|&Fr~e>iM5q zv`K%BH@yCF=9j|#84C$0wSH|%OX>Lc9u*Q{pb8WMH5)z#)Vz2gnH2v|5P=wTs%W@=hR0+?!t}MeQtI| zzUJ;sf8#Lkz=|VS#nGcXtpP0o8EkM7FwD6JXdLj(HAfQ6$|Fk3BUk;Utv1}z8?NJE zcN}wy3*7EQS)3XqLV<(Nc&{AEUg}}?MH}@#d!o)M&Jk*#W~n!Q+18{*d8M6E7Wf=n z^LOC$*K)iwLw+ENn%gQ5$lFUw+f(8O1$c;qSPTbb93gdapXxUHm%Fb27WROe@7D5p$)BTL9d`My z;Y(K`de*i^?5K2QRLN79zt5@;*MziDS8}HGbt-Z2r#2a1T+5eJReDfJLJkgfcDq>) z$YHPUDO`6^_u&Ju_&TuY8x~)?e0^5`A4k6(om<{5aUA0-Y>pOo2=$MUd$2i*c>oB& zgvYy-<4|UV z6c#ncR*5F*tXY!f0wl-Tki-}Zd58I(k5aGBYFy6mxK4!kL15Qb#fHMrR)WoLt;P32 z!rns>zHK+}_|m0rC)40?2VE*~ux!p2t#~#>8nByLeRI+}Kj`vn1+OplHLCl(j36h+ zT`_Io_yzm0nJ`_$Q*{k*#FOKCcz*N@4zAU&ccenUI_@@1_?2k*Y6Gtv5u~N+Jkm3WD zu1RNzz9cE3=22wgF+h!W1Eu8~321?Z2;FIE9R0<$=E(#gs(UsNNvQG{{Qg7Hn@IDSDomtgTIcI|2ynF z{%;`~1~{l6 zkZYt4)by6<8IiHC4#yaMDQWw?t%M8L3>|S5ZR2`=bOiP>-VYsSRvq1S&&r>1W*Pls z(+EP)j1ER9qFG=oB81t-?9=!c{-U z+5rkOAF(*+?b5S{;=F-7y3}3)yxDkfvr9#>(jxg4= z+#PtJ{~FWgDf^&AE)>DfG^`(kc}92PN!BpR+yfa z^#urY`A20$27YZl7i=VOnQ0vP;^lZ4H*I5qM>nxG4yw7~6Q$m9~o zT0GP!r^SX5@%8Xj>FXXOfypmFKf!P@!cf

#ZAMqo=1e;wq`QF4!b;MO-iJ%Nkqw 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%0Du0RB{4Nsf;QKi%~BwOK2nElfv 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

SSiYCmo8Gew6Cy@ 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%0AsOv^EDGU)85m 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�wstbTA>gRQDV>~wsK-#ZBoYC7y9>Z&@c0dey# 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

^D31cU;+ApKeY3O9? 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�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у|J`Xib|rwj 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

_1)Cg}c|skGa?ND~$Cw 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 z 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�KI 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�f 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

Cj!vwv% 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

YwQTQ7wywhNt9I&?T1y_*&u;KOI z!TMULvlTVE^IykHh7={o_UN6kREOL8h(YxDYwAetGVQf!MwXaMXU?x9FSuUckyna2 zyaA)VU21<`wvsR11yM#urz5j;DgaP`xR40t1t6-2xpc7SGow0E>F2aarSyR9S`-;htB zT1A5gX|_KaU1;G!UP8M$uC5RNd3>%~8~iJC|19mzt6_Bxtu^#kq*eEYM*63!M!-K9 zl3jfH)=JRPtAk$m4h>&dv)39KZ%_VLa1l= zqe?i<&x!*qzaxyaIl!$fmma#^8}_HN@9$rYCX$C~qOY;3gZxtumA)-FOWzKyd#E4A z0%era#YgUBE*{Zw1+HV4O=DL$)7m3$ z0Y`VCb)YQJ?FowlfQHx{+>j3Behy96o{NJ90%BZDQ?ZA(Yt5J6j&ek>zCctvez-36 zuOF*3!`bO2NLFO{Grq7PrAwIA=rAsE>U=m}e(zIxLymeF8scn~{?!&{rKJsJt89V` zfAJhSp{qcM!5CmiF`VB)=(L89z(irVT6xfjjxJ}jpc~!D_hY^zRAYw6IKT4kLUHU9 z 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 z z{9`Bl9@#30^I6)JcVGl`1UK`B*-jsm-bwk)FUh*vh|+|HAk1hS=7|wh#a49XiK4|h zB*9#z9fi{~*rDCTxpeog`)BMLQ3Iz0Rs)a%*7BDT(!^}%87DDwoz?HdgZ|ph*OPv3 zj8%qr3JpXFLi~f|pccI$)xjzH!xAZ#YZN5Go*Ec}D-7$IDk=&whuNMg^i>nOeC_%l+cyi2#^rYb-uY(CnFrYJ9t4deqSh z=p5ZmjR7OgoRiDOLGkMutn8c>I0#lweB`)6U~lB`v}My6A3B<}{R*!MWs8|>d$VMp zxA6p4TI|v5@qBx|)mS{r7kk>SE_w%-B-*6D?Y=0M+5bd!!$e>Jh&64ThO`DVz$d8F zp<@u3GPPH0YkP-}o>DPhL7{%3STqVZ>}hcbmcUcTekrR{oz?fr&wB5T9_KGfXZaaa zF#@1aR1@A~M6esSER0YcA;iamW{vgEipp3tKXEyFq0@flEjL`pnqEq$D^6Xlq|L4s ziGJuLd0MS(CR;*tPdQqeL$)LhYGDr$#s`>WM zN3>RH&#LX5;e$D#LBsHjP1Z;;9AE3YuXah$qtT3YBgPk)7x5+$h--%?YX#ZVzevb= z?bM;I1`5_5NHjr{(u5pfj&4K0os<)wmKcnLbd>LuCj~fG8M%Ukt5?sb1OFM{#QZlt zA&8}LE=NJmtiwIDESmy>N_(UBJAP?$8$D=D?Rf~78SqS%Qgw=UA?^xcGae7`W%i45 zpa$*TIXoOH=vV_D%X&(D2u-Lj#^okNqvy$NszR|6aU4m4#~Oexe5J1Zf+B)MFE?NZ7FS zaNxmh@dq=igi7d>ccos@@TlFi7w0-7x$cJK6AqA9!x#(!vvf z3GA+HO_|_mXxT42wcOJoj8RQUn^3GZwsqY4J6Of@C%5|E+guZxURZRWpjT&W@HYA| zeN8$NX_GMg%D@UeLNdNWS$c8Zzldl|x0|W4rsSs^c4(-523WQ+|3OBTfH) zD@Bn~u=hFjPYDZrMnT~>s8~p&*YWv7kQ_1nP>RcBQ{17zg&%;}BHOp_j{+`k2U~LL(_|lcLyk8i)|~UpgE6pddiyFM zc;7l)`((3XmP>Hz^TE8`Q0*>SfjAfRp$irLPDa#asoVkM24-Xuyczs59So8=e2&#$XHm zgxWK=arJn3Z^u{2G=Rv2B=?0Os0d8qn{F#{a{1FFm+BN-k}utTn@~}#LV4b;)!wC{DQwwJl{*q=;{~t`9YicLdLIGw z3AFi@ga#qiSkOzL>goD#Ijfy->KOc>Qp#INpwe*J+*g2+_)}2@g67Spq5?jjDDkQq zukQlGS%TQC-<gorDm)YUX>UC}X0&=~cyTdE=l z9vdk^X$LXovXyX>O}qtFa5RHJ8A6Fx5@fI58~MaWc5c^ur=(JMuK9g>EUunj{43QP z!qPbaCo3JIBL*Kun$}U2sAY)un8g$K;)M1(#%a(~uL^m`-7cHUWIBRo#rEqKoswEZ zA4eFXUdxrJc5A!>#iEc#7pS0vGENEJ2O2LMoCXAxfFsT5eev^Ok8!0MX*|DaiD&B= zk>qBlT8+XPT89pxEb{{TWF!#bcpr@_LXf03MoeXomBVU9(%`m3e_QzM`By&>641Kr zd(8CG@b zdBLa%m~{KIx8c%Q4UW4bp%bi>=ITTEb&kq)LzWevXJJMgHXxcjf?bxe=Qd!s?*z;Gdn zB#q?5@{=kJH^GF~NrLS>ph190g}g6dlhjEWou)?|*0`cd;EQo`+4j%cxD`!73JCXo z22Kf`Ll?$HKEHYU!*Jewn%4D$zn;FQyazXgHYH3LKuW8o+$oLZI>!@Lq-Z|FgN2El z6|X)r%^g2|dAD%e19@F?;8!mcShUQlKiXl5r2n~EeZ8HkcfHbTo ziTlxY@8oJ`;b_~0VUi6r30&59Bi;cBmoYBAOuv6Q-)-h<%)gx{FhTK^IKd;rpm!Om z;}oYLpgqH;Kpc=jw{CC^CUXdQa#&dgG%1ZD6YGRHz8MV%k?@!krutD3u!PJvHrb(1 zCL@k|GbM%FPH4gwS%r8a2ToCNr1j{0ixS{Gca9+w0i*Lh2tLDhKE33KkMk`5WXqdd zbdWGy0wj|O73>0T?&>UJb~k{0ajU8*6($5#k4iOGQ!KbP?v`)CCN)iNmKX!&ntJfWm;*}L$ z2v7CiO_00r`Z(hR{LXbdALosppQqPY&w_kCGd6PEUp{(_rT4&26vVK!yPgz&6L^>m z&3a@oUm|@VF3L#$aD)ZC>5$Y{`RY2YiZsQ1+HcoCtgSi^Or(4vp58t%K)u6hFV0ToD zR&5|8QAZ$6o@)eiyCRsyzv?YGvOsA2&abmG)4x&M0m&3GWCexx@v2MrNnOK$}#o?s?f2rf~A|@US@!yt8LRtO;aKHcy5O zGq488p~NdMx0wO``r^S!#) zTK98!_XhjESFb*;b@%n{>$>{tUcLI}UiFu@)1Tc$fD^mTZ$4GsqUl712=`v&ZDH`^ z*+9O;fMq4+)N7KZV(i7l#ApD-@}&R23jUk#uB!dD*Z%GKW(UX|(?L zf`Fp=6hvk%lmjCAmY$19!?ke>f?#*7*}Bko*8hJvU$egtjct(^3mhDsbrpDzPJY%iDqs+ymU zoORBarR%~O@E}{!M4VcnS$dTw(jt_gG33~{OSyWrbiqDmD;f^lg&XLA>9jxKH}gL! z?`40EL>N2|mhDTYRr!2}O zqXUC%sR&rx*0!O*x)5z$vUC!u5o&PJZv?slL(_4|+AX0mk~=l7qXZtwjT~=Jgl{K= z*ExgRH=X9BKaTzS&HHK?-@~pIF=f&IWd5hiomGw%oIW$j`1EDLM>lBSinSYN6iJyS z&;sQ^GMvyHO-uO2FlUU zv`6jn)W`agZ{)f857IZ6Ei-q0{AK1aUXOwID#xD-Jg{-uu>2YQz@`?yg;7CZ60XiEU_(Hf+kegda!wP=Jy^dm8V${{43^B3u8W z>%6aPwNGo_+5b~SU}b1^N)9@sH=`NsJ;bsgl<6p}K2^~=)h5z&OtI?&VDj-zYR4Kb zxDI9S>y&*fm00yIAGkDe=~aempe%$yv{W~;5*wqjCKxKvg`43h+eyRqo&IAzhVKi` z9r}KmvHpJ;JMTAm{+VaZH&k+d!ZeaupG4&&D2`}9=yn1_;S$LO42rZE-UoL}224vv; zoQ-D_qyfY;JSWRJWhzD)o3UuKc=P0Y<0we3I`>c2kAsmW4-ClnIfpp*du#_InH{Eh<@Mfa4-POpzen+1gFk;^QQJ8R`Hkgo*HciC zlP?N4`H16zl?N(;s(N=jC7_$KnoD*lDLL4)AU#BS&We8c-1`Md-VitlIZYmbN(Z*J zJ&7wMZy)Gw7xdo}o@zD$yamIOQ{2`lA%?^CoFm(9B<0l7EY&1bgy@8LTh>z_&$}ou z0ApY%jzSYi3Q4tGeG0;Y@&R06kNDCIvSTdAG|3aUV;Z$}bQtU*JUKa0>|TdfoT`?h zGS)rLMM3otTr!__Ey;j(?XLRLw^`rsSoeGOHy+$K&=GFwzUaLuG|)IvTZ;}v=$>cm zN0uA~h{*_d5jtJA^VDRbVY+B3qA@Q~i!U-bd8sAj)0;7|lIAI@MXNQa3PufwHcJ;b zcq5tQPb>pK+mvQNk8su=6}#q2iQQ{6bluTbsyFQhxmeN7oINOe<30LS}&^kc;_y>c-Y>=Stdh0I}YUJ zH1X6XNZ7io)N`6%Z<%%>x-Nu^ey;Rdyu?Y~-MRqJcA5_zmr$TbryX-r-_Fxh{{iE$ zs{e$t_{v8OrS^wqu`4R9iK0KRO2Z+V7q>9Vh2(jj47RT-M}b{1#nxpSRn%p;21y>J zcUGDZc%p!4;pL#Bb=%yx$A<-i9@|6Qt8*QiO@sA!@4Dq{mv7)b%P%Z*MbEUUewvw& zUtIpP^msP@eZ(Zn*tU)p@i}$L#5a6I3U>JC6JT)SU;8So-FjlGTL{>Bysc~ zwph-#L|*vJ6!8V17O9PDpu2NopoOqHfnCLdi9wbvEHxXQa}enXC7WD z8O{|$!g=&+pyPQ4)+-z0Tb^7~6|7zcmJ=kf+3e8XplV`NQBH*e$UZPA7Ci?2*IP42 zTT`!c548<-UKghwsr|sCxh!pmV=@#);vD*))D18IAWE%OHYe4aVx4=!Lx)ZEH9Rwz z{{ZF+j#~fpQ^h;*O#p~ks)I*YXj4yqQbbvWFj(QbL%Ze4{SBB7OP-Lu+WXc&u+2bWywItzI zO?T`aE6h#_rNyLUI++_a6(e;MTu`{gIC0G1P)TwSV>W=qY7#y3MYXR4 z5Tm6BQ@XmcpSC#X=E7UeLSduHRiq$Nr{{6LJL;U-JCUu=?JL>;ir{G@rmu>A zf}C44Rlq`9skQvf(OT)CUEiRZC~^vU%?&dw@>kF0@%o3W;%)k6I?( zf~~Guczbdg|Iz-{%cqvw@Ay9U+8^6jm8v!8UeWxMVl=?uWmuLDBaI3B`biwHj)hq^ zClg?GdO=P-rbnf`XE_;RbiITbRHXa;9? z^qFZvbmXp4mkwHdxvWuWl$&?0tK=ed3I`e$(Df`BMywwzDImWc_n?GY_B>bVTKQTX zKmX&wcgKEq?}I}A>~KI08$vmO#Gc;44fZQm++<$vq{wFW)i(lhE|f?~MKU=`Eo#lL!%V z4XZ=1z^cippoW=t*}z6Yjh8IY;tVTsmvmiGso1`=C)fHN>jR;% z)3ZKstq3=@fk&t9DJK?i10EI$Zk2G|*?u8K&a&eLykOeoHsL1^?)0K$2Q(sQTi5>u z@jqzX3$Nz4eUGZfpvp|yYVM*XCV>fJgs6~%N+;?amYU6njORe*=|FBMS|z-<;iNJ6 zJcXyOI+hWt2lCXJ_Li>cnt^x*boC4?L0ALYO9_<`crhJJl`S>85q+E@8vCb>=&s$i zmUrIjcTH`y1YgQ^!#X5y>b48Eq2q_zJK^D*ob}e)FCQ{FVMRTGfL?eqez78)g)W~v z6q`RK@u2~+*8w><^#8Nh%NEzy!jC}*@%h`z~ zd%QYTogS{tX>|S=a0$=(At<~CL)rlbhUT{u+&{)!ZjheK-gL3l=g4|c!4tbN8)rVbV9QpN~bzBl|MmU z<1@Y9*QNM?;=xDlwe2qNOEwa~4|lTtzGj*K=U%frK8>uk@mf3fZ%*d`3OIlUG`<;) zT#~Yyemm`hOD4yJewYEePUJrE1lkC5NX8t?NKj7WV|91Hwmj7k>-|Td>Ds07#Xf2aEssD7bV|>(Cj^3kDjDr%ii@|cT?F?<@Y$054w#czpjPD}6 z%HB{vns*WEZK&g&-;U&3`e%FX`j|c;exe!gHhEO>Wn2Qd>&LH#HV5GMCVbq`bxH`yBu zn7w6037=xsu;=NE*+}zUQrCDsXb9fzgZkc8qP-sq^bCZL`z+CtsL#-(4q7PeUw#D(E6c>7}^B$Yp+*pUlc>H;-~Z#A+MQ` zE}C!Z+|9pu!0TMVU2_g%$6V?hk7&6&6HryBuLY4-6u|_5SmEif3!%0XJ>(wXNNixm zQO=t*(kKf?!ug=b^X?x|NHB*p)Hysw(H`@w?iBfZ>Gyw_UD)OuxV1*a5sNcFqEg4$ zlHG`cbv?VP@->GKAPxLP^jX3uFY+nwR2_zqQ-b$t z(iZ!ajD65p%1(>8{utl}uxL;N@k%|xD2l*cCMpa&+$%(vlLw!#M!(*mxvxJi*yGR;HV-8+-@YOt;Y zzj_Vd(A1PNbB&eYVTZ#o=+X#EE7$-r{kUv4r8`VJB|Y4}HemrM8iiXBNSCGVSQok7 zOcKlW8Q2O|qRphP_s}(db~z_b@oLo?ngOS03|~M;e3^BM?kDTm$)_(qQLlAmzqb7P z^0$un_J=VbQovh1`fhxwIzU|xS4#{f{LX2Fd49e=-^Liz7~C(DWHxFfqefR_>;Ksv z+}Kx&XbZ}Neq4KmL#bderfquQh|o_|GEG#2N(4o{YbQ58K-);cp28;)zgHm1W^Zxw z`tq7+PfAY)d8hICCHuG4JMFdq(6Kj6{zFpPy)7^aK_&gvleQ6>f{uHXIh#fgAF8Vv zfOLXr%wqyLbjGDiQdK#`5Z871?t0jMJjh{oHhOvVVCW4lXz*+2tSi(j44}P2A8-aB zzPbX9Fkf8f)He9>7{h-h`&GGX#Gio^$NwnU*szw$6VbybI*&WTkGd?$mksI2G>U}P ztK}Z&Bwqq~)PrQr+oJJ#ZMTMchekguDG$tziOW*_IsQeVr1Uh~FFui@Qioxw z5G@ozq*w!HVgv=IWr_zaPy*Sp8fFZNBEzq^r^jF`yQ9HYg_-XkM1a5xr^Mm(J1! zX~{3_Ym>3Kg`x&H1GdCu9^paRg^Pj_2`1mAXU70nGAWaicZ1cEMCoI=sR22r9t%-g zW`aul%-7XajF;wLMT(nb0imveM>jz5NP0IQQL0^ zWZm@Ko#a{vlR!L*Ms5}Ge*Mh#lgpVo}@aSK-znH5P65uxre*GxRJ6fWjgb%w0HkuxfcPon8b?FBB;5xuf zY|}lS;!Uy{r5Dy#34Nq*=^qMGlEP=DCE6$f$DPN8pBnQ{L*7+q# zTmQY~zg+&&J|8+(twrRrCRwqG(honGK0u9lWmauRuq3_MNR+wm*}S>GSnfCORU$i8 z<>-27g%|wxoboBI^tPJfFUiqdbP%Zn-c@~>NO>9Uw2^RGz;QW*?vGrnkrnAQ+v%N-uR;g7L)-ZY4rnNL6bUufTy&itA@TC@1bxv1U>)}6{UFDP6oPqm1h&Gaofk4)f?v5zW4L8*sg zu(ki*S-ly&qgd~yI)}{GN zwm=?~X_lVWJJfp$^)I-8c;8JV|IdKTqx|HOU7JF&L?3f$Ri=38(2Yv!VcMLZr_SEw z1vkwk9k+Jf(4{v>!{nXy<}AZNb@9y#PKl=gL>0$C{JOY?Q)46#VF3!H{1V`Qzu+R0p>EwbTGY}69Jslwx-V%kF_S)JvTAAT#3KSF+!UKfsUzO4=Rh0I5gp68v!%H=qU?)?mSh z-p>8#>L16BHLauuZpBPgc|%HJ*)EdE*#p0K10Hxe86?C`&7HFcq}RGcAnzM&2DmLU zw298{_TV0vS>A^0yjPkM0X_I+go+OjoSHAih+ zpa00Cc?j(~k8-c-x9S-qzohN0W$oDkb>?>QRU&ou5u(dT!@=E!)Y&J8)Z{1Ez96oc z+-4e5F(rW}TTG-il%Sp#Os^B^DXV*3$f}DiI2`TP4BBJ{JWkp9ZS!>1z>UyMG4Hr<%V>B1C*u6iL1Qf*tw|es_~)X>$Ceu(g~$)3>T^r5+8}LI?L$Wtnc^P% zs7DEnz<71N+|^~+R2*JygMtKzRK~j4Z81KgDEhcJcdz5iE+r&Y19S`HJ#;;S;GG?Q z^Nnlz@sx}6`}%L8X?{<3pQzn@=R8@xsl%I>a_!_)d#ZbAPZx!uVG;N#{+u3lDUF<=knl#XGe4LY2Efa30JWRScsw5;(eN$~lZa^c5%;zWDS$+IA`}Wn^*!d4c54G_aLBGm^_Sr?vag2Ha zTBqrgK3!bx+u@Q@>Zx z_im|etqB8?3xf$~HEgLQ91?4~K5SDtfk_qwv?zpj^-I<)@l~ttTp! z9!k);$-7tSyTnunbX&P}CiYOFU+&oLW)f9ytyzW$%(ZZBLgs`;dD69bv+xh+Eq4za z5|$gANjQSI9=}o=*v|_*_XhIEJ5csq$DV1&TN=x)kRo(KbDRm?1#DA2gj=c2>_d8k zw919f9$RUyN(bN<6uD7Og_A20Ok!Cx#Mv5WMo(TU0=j|ivfwoi*~s@Y>UAhBrA}fH zDKSn-lCE5RQ+*BDil>aan@u386f-|tQ-Ra0Wb6USE1lYgq*`t2KAnV#5#N)m zSc4h4QY8hIk4xo(4i<}{!C(qHX?$sp@pn{2*QG{i4fr}3En|)UH(dW~ng~G~wC4a7 zo@kUXVpJyURrm!wV%!WKnmWueE~Uaz0Xmr6PZMQ!f2L-=UfZBcWT?IUbnkX%B%YiK zh_M?a4HecJxgNuj)#V4saJIgPA1Pe1bpkhOf33HI0?TG zvN9JiWBU*7~Lz5d|2b?Hrj`083bd~M+e9M{dWkLcW7t<{9GdpcpU(NmuHLGtOE z7F9Z|;RC~Swt|d?kwgi#S(J`%Kfe?wWzp%nC@2Vb+6gJXB`BNjxXd_b7>YVl!;|Ya zA$WAsdSsF^px1cVvsf;hN0YyDC60vU5WSAwWtj#9(MY*dSO;kjcaY7Un?ByDUsH#F z2XjUBzjgI?jJrpFm>!SW2$7Jf{Do=8binNE4m~A07@DAjslcgLlxv9{Yp|R&$bZ|B zcIlg195S}T#Cn&D88#!(tjX1T2hjR;AtN89i{qNL$SBg{}7-(dGOM z=feEacjrw+|LfSDj@<#ow?mwB|E~)(bcT#E4-g_|ysUP(;sJD{6RZp5vIt~!eZVb% zhn&K)`-s(X=J7JuCAW13U0b0{Hvf%7>p@e^RG3%p0~uWF@%7?nI+4~m;1_~61g`6u zs1PR5Dr;Rx>_os6uXj9M~J%(!<8+C8;1wF7+rlmy3+&InqI!gK?b9R4u zyqQxgSblT)hXZ>EEZtt*DCEIjQIyrLB1v(~$Y;zVypexjSyF*7_Rh_6-^?t`r$x?v z0doyYYb{Gz$8T|Q*2Mu~5f=(iUID!)tc5|9MG%IAS(60U7NkihiG>3edi}LnmuF zbcMzCf(A=&)`d`S)jH>WS=?1#ec6^@$q$OSzB zR1Me?c@hb$lZLxnx-JaIK_@AM_n0>1Y z&%aq(1G*swTIT`Ap*A>ym7u9*!+upb4E+F2%K?(@6SUHA5sRvo+xfaQG0H-~Z#m#u z5;A53UndDJeWUk*5J}mFk6qg(`+++W25+V-MkkZeiZ91itu97UXcx8QUzyMpw-1lA zrJCD))XLbk3nv9E(@_hj`4i`p>Y1ARHUHA$E@`fL|IOv^XT|$}pWYrq4~z!`7TyqT zd_WzvC@K7fqo9eLQGCJDh7#hMC=k~L0pQ3j(!LXQtU+F${S)ajamcm{AS z2AYfshc=NsTEKS{r$9&rtN0RbMBM3&R}T+ovtF_U!RkH839-E8rZr|{y@m_SZE^@CWYa^=Lx<5{l6I9*9afi7yqrrp$_>_%CqTHF)l!b= zqeQZiL%J^l3+`CIdSRb3_h_gc>hjMM=o)Pn0fUt2FEOI=GtmHGMBlj=!<)eT1{F7< zRC#fO7)e1~UMhv>ec2b0yWMik(dA`<3JD6?)SjA4r=#K?1~ERJh&D=h4l=o{EXoEJ zvkd16yva+_PdbcCEnD}lpKZ~BgK0ased9jwRr`~C0`%m++T~)t!~92Bovw{pQu!CL z?Q1-h_XFx7r}&0k0IU)CJ_LFp%L4FcDdGSp92m?P^aLxI^`E^FKK0;xH<^B}{b5yO zHD_JDw1Xu#Q!Gm;dLW$5FUZnau0#>~aIbVm4cw4A@p0fnk8EUH38y)TX$mbSf)-#Q z$1Sl=YVQWSa^BM0<^hQfl2%C;MabhTuHLC{xb{IKl%P>vqwyQRqWloEefjp%gUL^_ z9!+x^Q+=Gb@_&dna8W2Qkil|Q=`FuGY1$qD*9IKa4YeXE{h@0QnP zi)+HTcf~1A3aQg^MH4!{IPWqF5$|1%aO~OQUeNB0cI@7C{%1&6G5$QW;{U;1V)qYsL6gD_U!pM&UpOW@GS}%XET{N@ z7pUm!>zOKXp3A5Z>NXWtt-3sV;Lv{7K6}`!x?9=VI@koNE*k5;RGJuCE8f- zRWmE}VY!fN`ov14xIr9+hbw6pRZ9k5Zb+uei1uhx36X0eHvr%Bo*d4m%zrm6F8A9_%mcS z)btHJrg@h)2{xZ=4U8G=X!Z2gIsi1zBV#2Hj;4UUTQet4n{x3N#`}S-lAEZ-66lpM zeK7lqohRSr*>jEEk!d7Mo2SMz#R!L7$Ntu!LKH0&rH6*R^C*2N|EUh2)2L=z^d8U& zV24Jn&LQXNJt@d<)K~g@&tKX=E@8na%W_gv=a!Rf0}Ogi?{H&=YR9aRbyk`wxh^uE zj4TUV0iZg)d*(jzwNr`vx_)`Q`BQKG_>|gr&@w8Fc?nnKqdcLs@;N4nMt8yk{rO~G zJm0uz8|+2wE{C1d+~rsBRi4!dnT_ug0UsY@GeHjy#)HBgzn;W`>V`hP5%l914jUl~ zbq*ca_s%I24u0N^Vr|1IyoN@_}+9$Q!3T#Bs;F+4UX|a*(8M?V5Gp;V>m`Z4k&8+@NL1?$RmkCBs#C zU7&n9I^WONSv;RF=b&CvbMYl=t8( zKg6K1$Ol}pE+8Tn$NS%|gQ4xgi2OX)@%y~m9s2h7f3#$) zuXIe2(O$Ylf($6c>diyyKz9K`yMno|;oC&HsRkdnP!oz4Yf*-r5Z*N*X_p=yzpV?j z<8fjRVYPU^~4y;S<@Ssz?9Xu(Nz56bJ}*j1Cey z9l!^nNwT=$+O>6=2_j&Tj^7A${PTGJTNr1~eF|Nt?7x@!j!2D$e700OLaMLfhvO(z zhMXWEFQHC)B_BznjZe>sWCc>@_*8MrNPZvPpL7pDQvXz+SL2+WLa+ObU;K_u5`<~E zaQz^(W3)sRq`A0-Ii{(|y#RIQwIF!Np(O5UieeZT`rCx=?D*vP1kPDbpVjLc9FfhVBT z@7YeEm=J6#wnnbjf(hg3b(37SUE5I~-)*S5J96x(DSHwNgTVpLSXP%MvlV@IV(^h4 zLE(cES17|f7V?lUoz37b@7~v#;x^Y?@^cQExV)ZSP|;l>OL~iuL!v|_fiN+EbX9F4 z1R=gRASrYPMuI&`R5?J{)MJ$M%zDI50I-a6KUHRaPkFnZX0fs`R?SM%rS)Q1hcVTo}`^tZOkc zcjx^p&P~T?e$OP(deb^P&$WNw@&nlZwL9V*$Ie;I%(Z`rAd4`~a<2j$7Ary5A~4tS zl4OOImL!v6FF$7)4pT|EvS^K0>B@`s0Y%rY0a6RlfS;@ublPsqN+uIKCqOnpq0Ztdv2%KyEz2-7H-FLx0lRQem!q5{uCVS+Jb*yYa}Cqo$p@d z`Gj0N#!+D6{-^R}aWNDR9HbcCfRB!Vci*Hnxg#ZyHFx&Z-qXiFR5^yLq#HvF@no&T zO&e{b00;Urk+ro-%$aa~Me3n~4SHv2ulcxhANcG%#(WFQwJiUuRYoo~2Q*%Pl4Ey6}T<(B&wtJdYkQWe*XLEWy?Pb{-?~j)Vqn99|s!22v!3y zt(k!up_ig(k$H?%HlvTIU`AGaIE3`QciLAcFI#{?HAkKb1{#NThptz)JD zt^^A}1Aq}F)?;JCaM5)@c!H;KftO(ObUrBElH&j^J`~`q8#=Ti_y*5 zc;hM?h>qRfz_iIu21PsBJbURjX#Ghe;i+4I@@m$O6U+%@~(&8ow> zX4YO`5T-I9bQQhZxy&&KoJIl-P@KwHRV&o8+WGwE4qr_WDe%m1r$Gr%?cn;jb%8dh zYjuhr(@GHh2K8`Uyy}Z6)~jd|1;;xKTXYdEq5x{ha|d&HQB6TxT};EZ_`~~vSW8NE z@k<{WoD6o=?r9yO>l{A8%+SsY6N{gCR%8NB&z05Lz zyvpDqyYC7@{aoF?EDx}k0{Dr^7`ge(*-n*T3R&rsGO%em^&kSP55<_o;jK%z5C@RM z(DfDq-J7Z98K@hAcPHGqPvczoZwK3xNUYHqHw|60SVpIQ3hx_fdL4an*aoirJoZbo zx2qM(SVUqd-;RLVGEdP!G(0Pu&jIQ+0q}IDLB`u=v{b+z2FAtG9HkUIo#c{;(iFzG282({ zznVx zLkkJRp=udP$uT5wZd0)qA4U(iQFdKMpdFZ*vU*p*^&Vu6n*|_#m>-4pI^~i=KzTp! zD>DCw;ZH7qHoHXp68!h;ym|ZgYrgE3J|@Pwe3tQ)oe>}SM_T>Z300>Ku(K=LABT8V z7}0C)m41hu;|_!0_z70jcq=pX-eHR)8#7c}<=oIaQu1bV`S(ITxfite)L zBb2Ln84h$gkA_*7#JE?(;y}%|#PwrZ7_&LM0WAOnrF#Ll#`{!CphY}BqJR_g^S)Pa zv4Z|P*hR^GB)*hAO|IwZes=!j^9zuW`Lue$u8zCGor6t-|JCdq!+a42#`kvJIp*uQ z$9eyojGuD5nvY{0LpYd*;;fl6WF+a9u6?Z_T-W0_{HFHAtqVb;@cj0gQ0Ks*5t+&x z!6cF(ngY6^Rm@Uh^Bt}RZL~%>yVBb@Sp=R(c@Q9tFSnbH7++m4e*f5RSKRU*`mgY2 zxudTb3xE`*s+vVN*sF#8fVyN^nXaQ?7Z$+vFc5S1ITg&ED7E)#b%}S2iR)czwcZ$t zwTwYQgg{px?5+_mp5BuxKspXh%O$Fhs8+ex6v>~?J5=Y zntbPZnpmpZOV-qhS`p<%YXpf%J{=JQkR7rF2DAI&7V8s_b`0+{jV4Z;{_n@>u zfhQMul`zHdl1nXcUO+ZqqqE<-7W_FG;A6oaEJR_1pzg}GBW4MesY2Qtlk0?u5%e6_ z$|uueJGxxxHxkd;yI6u^o`R`S0v&L_d6!?Gvwp+!simH^{_uD=cdoM+fTX04xfKwE(JGm9wZok{WxyM%$`?z~wy`LI4}c*sK-zDCMZc80=Xy(&%p z9!)+p@q9jDo7lF>gXgtD1&|EaqcfsJ!~ulT80N0R+QaQ-OQ?q$215@DNu$xY%Iio5 z({8LeGT6o7(z80t<^}5%r3eAk$w>!am~ow}8UNyVepm18j{gxAtKh?V;vpv!+v5h| zDFO3D<~XZ37`K&n8k)%xOyzjbxm>OIQ=|5H0DQwQsG}91GUViADADW;At7eaBwf zq;l2d-$tUj@}q?@KbCQqolhxH<2H&EpB{Si_dVEotlm>Ro+g~}!W5X#59HQ)WTnF! zpBwD_iiQ;=eeo4)~QrKX$L#2cJx1T}g!*8K!e7C*oLla%k=|9AYC)c?vqu0_IaeLv8fA^(V* zdgR#as9LL-oe+wlio^ta+HRYWQXD+T#avc5;uj5xG-)vR@hGf*X8#x4VLM<)V0&XB z00MLm*YebETye6To3Tf( zWdPH1OYe+pHqiN*&kr*Xc5TC@U7}qJpF+s+{Yf(z2EAwt&-)Sdi07;_h!TIswg!2c z$F9)M@0K5V$m}-Wr3*^4{<@|k#ZQGRuRQ>NHNjqQf~`p~Zqsw8-Rs0X4u_T?e&T%j zzL{@FM}RK@-1R50CXg^Ih|Lw`cA|k>@~Dak9gndJ{dn`+<-F8(7BZ zttlV*6-_Ewg5wdZfY4inKR3>YhGqF;#)wSs?E8AmU9`sC`Q4qAlVj-{|f!2sN6)2FCAJ>}=(>F33SK-0tVoX5S1iy{L1i|J8rC_`w zj-Ks!_vJIp@&1wh&6l4U?_Sq)_orA^*mwL10?dt&pHqXiqXPm{2TY_?qcogw^1ZXc zXp5R@oNRpRpu=#GMAcWTZ?Lsu$1so-!RZ{nnT1L3+;>y0sye%6nuj640E!W56xop_ z(*iBU=6pK5c{~UEK~S2r0rh^mv$WEYL*XwB1j9r~J81+nA+`8WvI)VA@84@a+;Z4a zo%I9Y2rc&!!9&z1*TtlTaECS_1$zTDtqy8O zQg%8z^+S-+oagtc9H*)`kF~w7D|&zz*yXwRI6VTOaI79hK--$I2zV#5=k$e<-0eAz62_rTsVGaFOySDi$_; z9~~)QJ=A9tJI_#f?bcQtMydigxF!>TtQ05H?AN&_Tk0hT?1w;Zl7YQb1A(hHl?_oC0TX|NLSNMnTrW�I;HpROdR|nA9Yb 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%0DG42ghb_egJ`1w{wNqz)c-O2NyPaN!q;VS+IC+ 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�Jp&b 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

}^et-~ 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

    ch`TNxG6Q++RmZ7m$!Um*-HYn=JMz)aVq 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�%Xz%g5Jv>e7ww0x~7 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�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�@AFwl4)ZDc@8Z-{uUhZ|KaMdc~t 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

    CYk;fj7yfTb*g9ufvsh3Fwp4Hgpn7_$ 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

    Wkt$qcBf0FmQo?hMoKOcimY_65B9ykD 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

    hG%?35<4%2ZnhW%De|B_c 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

    P0eI1v_s8#9{R)t|DLad+Wb;OU~sp;S-k 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ξUfr4c8vNxnl4H}k_ico+ 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%0D<|I&zpBK?Gj`*xk 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�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 z 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%0Ai;(@4uM-L_ec0j6yfl9M9&k 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

    bPpS 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

    iLZ-e2q5v-9UB;Cr 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%0DiuQB4QpK^~r99t(fwd!Z4#EsPA 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

    Z_fnkDT5z_%AfP%f_9bwN>vcO*# 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℘pTE`8RAonIu^VN)a4y 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

    $6V%@K!S4oqCROQlC7IS%CN7?R;28#+%QiN3sg zTtyQ0`lLCH@+@?vl_dHDciF%rx)e?klP=wm3h3sMdK3>IIom1Bz !t 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 Z%p6V)7~?-Ip*(@ zQ)$&Qd-K1>Bii0%1$2*H67D+HG!E#E+`?J?S2yuY zID`U4yFH^%KW%j!FVa*!e$DG|YZdx|oRs?`shKM>PW|A`pU`jBKS~@!t$|2;ai_p1 zMI}#L>mXoTu?lS7E|dqkAICjV5Bb0t!VU;U0>Vc95+5bjDE0m|`>wzJcn?G&zvYkF z2tl_2Ar*d+fuDF@)Z+O2gUgxC1mcWxw|fRhE?cHhzI+RXd>)trA}%byCss2Shg)Fb zHDiwW8|62Gy31Sk8N}mVcm1@6a7jVnOQqw!AjBn6Cps0aH-(zUyHme@N_JmAU)<%M zHBYM^I{mq#VGEoCw7XsdhEBo)^_b=!754V9_}Us~;_E8zg&(iw4)?wze+9~DA5rh41$IrYtrK3wjD}6qO9Lu*CIGhaKQ_aohlG(0IB=u8Dj0aA<4eZv8e9w%-!uD z0J_DKSb&EB;Xx5u)Gn>oSWFA{$is}Q%HV_VOU?TZUbfu0BZS*Q@nzIEL#TGrv$ycVZ7|l_}LS0jGaDL{qsJjy=paQ zS@Srr3CNn43l;F9H#__cp+6P41rmut-^LqCGGSTX)qcs5E)stR5#%lqd6=Cr)ww;z z(fOVSt2u1l4S8joP4udBux5OttGeO-Wd=0&QoQ7+)!1Y+QY&ZO(dyFAiKXlW;VMOY zrC5PI055BtgF@Zptq%RlSO%#YI)`N_TWs!3TD@{S-=l1fK%?{LcF4LwG@!y2oXXZm zMDVOiROsTsudHO%mweUUhe1;WDljvQ`XjHr1TCx=_>4;ciV>nAa*|FI*Csmz%~!@L5GNukVn*`Qb3zJb8B?wvsG>F1fCtOuLvu2 z7tAe1#kfn7ojrMO8W``ClPJD$J1?t<*H+Z8(*JH@Q+ImWYw1bnO)O$C4Nt>k%X8z1 z!_yzo;E<2|we}>Oe(t@H+HA^NB6$YgYkay1yPWh5(W0_#1V+dh5+*~|LMoOWJOZiy z$8pF%dmX}%thx2c_=6&&(9ENJWivpWy!zF*KetDV)(&*FgGF!zF8)zKNi!8O!jmOD zKBpHB^0ka((pjGi6r(K*k?W$Vs9NS*=1&@j#Waa!%7T&*|oT z^HRR@#i3@IO3Zo}0S-f=r>%S=epDwK;JGukCb6_k&~i6ZRX|orfY4aX)x9vH z$Oc|OIGHu?f+L6wU2p@G0-@9S-1a+p7n+)}32g0Ye1DeJF0ZqZ^u>esp zk5l<0`rg)8|A3fKYk8F`{U67F^zq>?4|BkM&p(Zpk@p$2IhQcJ)ekE-_Y>c=HvezOc~`lY$3A(y&z@ty9VrLqnLr1g!OwOO zlhctV@adr^e)(DHDkpV%Lptg}tG7SLdjB^+nYik$y^vi{10~KgI1Ip=L~*eGadA{cIs6p{G=-L>Msw+!aP@>baqBz z$$7xdZ(m`92qOc`XiAv`T?#K75?N)5GORraljBQ<-U=Q%VEcpsFxl(FC$50xtn z%IB??=s{Va@)0A(134_-LhE*}o?WVZv%)%hq<-&!_?$7iUzHvGKeD7Zp>3))^Zfk< z*R|pq+=n|@W&E-kb;i1T-J>(LNRa|*FuWaJ(-HsOwtPmMk@yMw`iu`AsutU{2JH?w zGE^LYrk4Q)0D16-9CM2KfxcOIUhPeFo*Es?n|>yd^VpM$4iV^A-~ROtFqbY?-z#31 zR)~YpNo;Gi#C;QhgiVb<(?5I2I0t_q-TjVH)<%GRb;Blxo`MK_82v?BZPMi8KkaLK z;Ez`z-<5Gn^8MGxUpymOt$9clkgY(CiCZ}`p^tb~4S`b?!x$6WDE?T}vfx~Eu3~f1 z+z#4RpMGlIGDVzivi=y$iz$&m-Vu;ZA;(EVl+3L79!{jPb~CD<40@#cNs4(k6_ls7 z{16{bd0gBc9%H9Oz)NkTLAjRYK0r5vz7qw5U{L9GQK?iVm9^2}78zts zKlKr8f_(4?7{=RMqJKML)Toi;(v0J4&sMfbx+=>jgK`N7l6hGG2q#c6%J1+?*l>t1 z6<3Y-<%6^qM=PxV^7xO(|LJ4W1B`REMQLCDsrW?mF@~Ju+MSx*s8lh5BiQ4 zX1-SWs{SJ6%9mAJ*a2V5_l`tQ)hfk27qTcCD?xPhPT_Wpe0()M3+P#{#iWdBUyE65 z;Tqmhk!d-3YjC1$VD}F~tXjFj+tp?M^YMQb-t9tpK3|WKS>S`s0OuBADp+CwS*HRm za530m^H<(3(dW9`3BOgRu}B)Zr>yQRAQ8OW1t8;6^btL66>?@}8lQwkPMfK)<4pm;|w3KLD#nDQm$}zDioN68!#{uBZFTQp- zHFLSBkF5EZ*GsG&&K7DtfN={}B0s71M0thYU-o#FYfP1qo#RQnyXnkFLe3w7`oxgH zykoJU_8e)(UH!b*b@B}He>rSruvw1P^}djY?0S%MrM%-}-G>_kjO^Fa^} z10EBS1%a}My+3L3===%GDR%akJP7HGDnU=8l4d6EtYB>%##kGwHH-gt{NEZ$_Fkf2 zS29+F)~N5X_Y(p3DfA0)FrGA?X|B7i#(M99;-1uIhtaP0(4BRCg-jY}_Wj7-PJJzR zTTF`31h(PSNFi)Mm7BuF1!X0<&7d!wTYGC>!+i{7f1o|F|NpeA=DTEVL zGfGk!%s~B8N2lbX+NRf!azwwbAAQe>k#7i&?{KIoBZXFloOy}6M^=77!u_DPfSocB z)S|>vUQa4j+;)1^)xuZgy%lj^RoWqr4&NW+1>|=H@6X9Rb;|xWH*eO|JR$g76l=Ev zCyKzmoacSP!-{E)<$pvp!BFaY7m($ST>yCyJ5;%CpQppdz>9IH0jog8P+ zg+f{N32f3ub6>3e;)UMw9Q5-db+cCipdrlhLB;3wCyU3v;5DhTGPUooY&9sa->7qk zJ9zwiDno4zMHs!s3ivjPn9wNQ3-jl;ul=$X#nBcv@@uw5UeLFD;N#h4D4xNb;{+Hl zRDGiIbSQLDd)LtUqeJ`Fw-xb}aXG0}ZGs@z&qGQ)l@E$$8&!l-YPvy`B2$%vPQ#O? z*j<_NoQsw{cCl19_TB5H50*%l_I$l>wAn1F|HTs%T%0c(@90}80Q*s4%-rS?r z5ej$E&#sc>qUqGuaE8-cke@GLtDICnGC7s{(VB5Bt7Hp|FN3g5H(rj}suR`MLpm53 z|8lKJ=V&XYVgz~9x*gL_XUk9_f+w8<8K$T(iI3I7U?nZKt}gWNkH@EEY}e~F03WQ? zxh0zt--HjFN^K3avoY0xr0==zvR|vy077{3&SziR&N#5Sh-&GdJ=~6>HSbJ*XR7zK zYlJL=eo?Hlu(&~Sq&HZ#4O9zRNlrTe^u5};*LQTDN$&k6iiNl7lHO5q&68{D$X{+3I_piK(F~Yjv$9^vj0wnV6>76SE||GgokuY7f{{yGeFe^Vps2 z`r6I&2sN}`Agsw(##nu4U#D5E4%x52X<~n6E-hXWGT+2AgJJCaLkgHGf z+KPGPD~sa0j+6bWmRwR1@7lQMT-kO@TXmG{*r!`j)5>y2VAPfnCga`LOj3n%ANgF@ zOj?BZ*eh3nHHvRW%WW0R`rvT02$hs)eOuQ@lHcBAE|rE58T~XK(cu(dr>UKs~?HctGb7Ad1oX0x`%Ul(pFMl z!V0+{%YM!6w5HRRIti}-eHCMgEjliLj7xA`{HglI_5O{zBBl)kdjZ~}n1&3|sln&9 zC5s}scZENS0oyp#M%k@ab==6RvWtVogNs46%E)UI*=r~QF13lxIBKSpYYY1EC3FLaO3HPV1#*jFxEX~$UBxPe+%X}FuzXQEs@FJT!d zYjivHt3giGJw{eP<*&38Py76vyL9H&(n}n3b>Zs=S?G+5d}mJO_iH9K7)UhFTkK&NSw3qCpIH{KM_*4+^qtlqtm_GR z9bwO(3PBO=iO#9NP?1jXP;)Ao}bW|-SKlkF9yKp`Q>=w^DGq{4bE+O>z z-W8td{0lpiC9fZOMnJbi=U}YZB6krccBFcsbXNO0?d11FuglhV5>ctzXzF=I*Vw-x z{J!+l&%^jLt>Ao2IaLY1DVEVEIc>)ghfc+a@OJ`%bQ-5obt0dOQBG#T8(#3i=V9~y z2KkOXoKzQJ@#GSb#B-`JpvaCtVHi(!fh-$emp`rHS^81WBPhgcMTf^^kI|hmUZRt^ z$;A|W)!+5!Wi0Qcx%PcIR?jOpdRuSm0q_RGc_27LFrik@hm`qg6|IKu8F8y~+Rr=P zc?4TlrHVA|GByP~)z((n%i8xEr&AIPk?A1OLNUXaRLd(L*!XGZ zjciN<(m@Pr(cMUfq-@~gH~K@*!&V`yZ_;@h&7CrzI8lRYPmgt!G~f(L00vAt6kN1e zGbh2?Htc0`YE{mDu0}oCYC=&?)+k)NcN_{fNemzw9wRu5g30l0&9$YenS9%+zLrwT zsWIHTZ)T1=psc8SLwd4B&++9e6nnI1ZInA%=Uy*QDhH-Mb6XE0U&{Y;MJTZgUQj7BoSub0xTx^{yR+GQXC zqEUlbokRRdZv3IKjwk*LUmv-4;Ih>D9OcZJ-I{}EFhS;NP?F{htBJRCR!6#H)RStLp@$XtSS|ReMDGf}U%4yC?=xp_*^KAaaQ(ZECB|>h zr+eZNvd|AaL0Iqf3VFUZ*Z*A`;Y*IP&ZQac7qSpxMXo1$XMLkrCif}~hhUUXT996q zz8jbpi*o2cdFu4Y2Y_yL7X=_ffb)%5$*cK$j(DduE|xicTfi$Rf`%Ld){fctes@l)><%+{7-rBh2O}s)CgQN-VR}m zqHI6BK%Tq~nR|xkwbAR0=laCR1){Y)AsBGiX3bTkF;p#cXdS3l&#KMol$+-6pAU1~ z1;*@c(JlBP#)Me2+nH-;-xjQE;y8_f=H-&au))y^rE@;Wi55eXDMiAzn&Pm;E-pD-+$$m zF1e>WNN)i&y&_;L4#*w{MNK$@1syG~97oPrebwH^=RC?+g^OV>cCci^;p88HB&^5} zznNe5{$zrnHvZm2qvJ!dcj-}oYUGMjpYcXRp6Uk{c8G%3$DPt935%Dm%%F^dCoF=T zFuX4qq*uiUuJhBij?0>FT)WLoJ4D71{vfwGLTP=m=8nH6Gd0h*pF6(BLT4l06va`G zBA@BEv1^8yVBE+@hhia!)O zvX0NxvB1v|p|w2zsreAA#l2TR@Ey)8txI2dF;BEz|2;&y^;Uonk4|({d@ZQZSo^N% z*$3on^C@kHNso=WdDZ!+Ax^xZxM*{zJ*J1^W{FBg9t`}@(0*R%2hxf5c|R?e%qK-+ zVOqCHEYxI^+P9$1=!_5c?JaWb%~9MUFc7RtdV1FICFQ~H$#C!C2SM^Qv(OCO$>;Z| zXZ-83S0Z!Tv%gQ47UG(9zrT;V-=CMB7#A2AaQ?w97J}ywL2)1b@~|w(V*q3EdyEhj?2Sd z5E;sX%#wjnc5=rH3HVmn1u&bXhhRV@BL^cy`C(x|KVQ)wI0dhKefc+5Tg`d0%!GMX zG$fsW^X>QdPM+^KEE@CKnAkM}OKbxhW0*k#!ns7@MWfeyil7dE8@x?2|)$k znn&V^mjzHh_i-?<*CH3;QhdHUcOiQOLRiaXF0?ymT^U-s2jk!XI&@LPh)qz%5C;42 zF)GHM)*JUS?9WoOvExZ53Ms1o5NQYsDm}UFd{yTm10Y9psx9sN16-n6QpXdwT4(rQ~pZF6veBqEaB3X-B*27T)d8%z|iFJTZ_r;pud)VZK3Q8JFiLixT)PyUUoD0 z-03R}U!Jt>Hhc>BLwIKnJ4#wD19_WOZ*{2SXxc}v0XTkNXHb0o&J&S?*pB_3C%Ow_ zVl5O&pn1pp*o{IN=hpG$_31sfe7@taIYYBQDIt$UiKlIFI7UOwYdhuVSNM{t3-u_yT>R2hxXGUv+e zY*yv?#$$kWRGZSei!zedI+eMje3s*r5$zo=P%VR)$cc9g=Of+Fw=_`eB@cn8Zv1TV z{XzBa`+CE3;p`n!Q8BCtT3aBD=_`AJy_ zxsASWqTx`bKgO~enV%e$Q!FjzLDg5nf(4dcu2|6M&`<5$i4-xmQT(9ggfX1{yz$PG zjpne3yc~+MvZ~V(0zWXzp6xIB>#g2st~|vqU+`blFQ&coPwLEJV?_W=nlXpyLT!Z0 z+eT+xr(;v+@Ut5)D;@Y`t8{GZ9mLD$4^nB+VS1RKUJ0sIJkmybKDLeY)vmnmvC>?^ zO*D7b+81(>7ZYK2LDF2vL7V4WB)^W?^~?p3m&mFQ;R;92sXeavJsZ>0&Yezs9Etq= zG6|Xi(fL#j0n;8<4X;;B^sb^uk17x^Hfcsxn{;u%hUSQ2qR7<_Kwhr^dcBJ$&d zVG4#xYXLOslzq7C)d0PP{(SNrm7SYvir}4KPTFZ;{UbgN3qx(V*y7D~mH%-3SAt^3 z>ZdC!4?*8z6R`tU{N;(C2KG}0mIiyZbFZ_s)sA6wxB@s-TP9f1%`HgiA@JlwR09OL zS1dkOwWmwUFXz)%k`g|^bB@)Q36yc~2A~U6uf;xc9pY3X;=#z1yXM`p1D&Qt2_=UXa#aw ztFiWe`-)M6UXUH9DyF4s6ne#Ia6fW(*xoP69%+-j9*nwI2Nt93-` zGKV^D%0ru0kRzM+c)UEGSzi8Y-UW|_2je-M-?ujqxC9Uxc}R3sWL9Q&;={gS?=KLD ztd)Iqyk-rd@WTg8m$g>%btuXSYF^2-(rJXcw`Z1aCwX+`r(z_C4+KafCtBdyUxhk= za#D#DU(GzzepimPvM`-B715z@d)A(`xFm|d8M@T2wigP?{OC2?={e`CqUbYiMpbA%rUW1Ev~Ha5hc~yX2EpK z_aDqM1`HL#;ip!x{))g3Cz>sK&0JNEV0HQ16~iiiPfK|0sAH_$*K2r&Dx>RJt444I zW9F_bS5uC8pS?QE6vz%VuZ07H6_2t6uD5f$d$u^cB`!->d{3_cIp?pGN^LfGDTe6T zwl22!BY*ndkHwyJtx4Ja5efskLN~jtbtncSFAqv=Rb-KnY{TLxs@Qjbq-R9}-r+@C zv2$B|;g(3Mq7U!4?1FUGb7HIVsAWU8N@)kcC=*A;Gls7a+o6cOQzKa#PD&PB?kw^% zzY~G&+H;1hp4gn7>bF6vrG&g1O3IlYRCB)`nORX;x6Vn|m1xI?zw+wZR_mzz zvy+{*;u6g%ff?hpE;S(3R+CM#8hXZNww+>nYc?5}6MdbI&b01z@{C^s%E*c;Fg>%x zs*1*%GA#EcWTCf2UxOmv;r@=0+&JzU&^1<-z!2(yN}A&>zW0`V_P8tL zT~L`pLQf;HnUzhXRr>xeYlYe!c@z<;yzdKz{z+o;&X6MvTSRl~G6qp%fMXC}e%u*y zDupf*)urd!3xp7D@c?BU5G9VNaj|4eo7I_;&un+dF}lPM)j?nmFY!Vt3LN3ZObFdV zv39rhf^W7%pZbGjh!~)%Uq2d z>M2%Ya{@uj^lIU?{nxujPWvxwcFs{?U5tASqyagOHZ`|WW78GAejo072g$L{FRj&Su=i5NdADsut;CVI_mL!7Z;>k= zin!BysNyremsH{tCsAm?sGMc{MxMxhoJYY-dOOY>N;SO~U-ErX_DpuRLPvYD+{Ur`~~AhGP2@*iwj>D zAzu>tn@El4)W^o^jIy_+EEBSaFK0EYh>emGQ7KawlK|a&lAV@xAVor88bI#?T&0r+jPfQr3nuM8>I})x6to^NT#6ZOe^( z>d$QF810$&Z~bih9?d{7#c^aV{NiBS0b{8_G5!b;A(21mA>}PCyucf3cokQmJ@2}B zS^f}y>CX>Lg}CWj8+i+c&91YnAw)U{Mc_eANc0nN!4xwCoSE|zKPp$;kJ*V5F^{sz z*Jy9IMS3vJm}Sr(%8+yNqAj5l0<|C;htK0JMk#h`z5fds*_B$5YLm7X!TSY=)XH|E}A0XJ36$B|~5(Hz2 z0=G*$8w8Ya08(viQ1JLQ$NLTyHJ(@d;~`WgAsI#^odYfeB`NJ9(rU+5a?0!IH_Op8 zUr_BJ>G%k1jk=saD3+76_V1^x-Q=eL;wsz$Vj9Vg4gn5jCXj;0xcCuFYsl7PPqD2p zEL$&LB-`R9Ir$&B8^pDpw+1E?!m><+JJ8k)-l;m3Br+d`>IPS`AdFw zg6d#%1QI$EvI8unw;P^|ici+aD$`qv%)ZKd=?UFzM~$(@$MRE`G17Geg`D+(RPVNJ z*K^jgr1)l!kG_+FMaZYmDKP4ym}cTq;P#UuWmXRgQ63$bEtyJUv^m`zGk}gCiA6P+ znN#Ug`Gi;3`5OG;JpO~Grk1`uiQ$V=#|+76+SE0#rj8FAZ7fUx`@sn{d(S1zOBl_uv4=5+6M8 z$?R;}H6dweD6R7yHv}&uqT_@!f}_uL7G6^eX)B3lpKs-2AML)m?LLv3P)|^i2f;18 ze*FAV^8UmpKYsarJDNQKE=e#!6x6Ws4{*wUBR~93vGSJwiz9x!>sfZ@Y*yYUa*mUT z(XV&dci{k^zFrv!rc7*-p-Y)Ojb`+`5e%ipQ2pUpYMc8$dBN#Ek!RXf3|%9=20>xC z7+Whd6A+)s4U6QHG{=PiJ0JKVeD&RZBClYghpV7~J%Ux`589g}?-MC)*-30u+aV~G z^vN7Btje1f8?+~jDJ&on)RqNtKWD=d(>R|hZ`4(n!0n2>5_zLqc4ca~!Ld5;4(uBHBC zb}6*k1{U6hjA@Cop<>OBzQ!cXMMZxkoC81V@J%EyppVeZo<1u2l6mzekD3S~z#0 zFI)qM&~(CI%cfu30J5%u-%ZdpKT{1bRAod8!cGpb}$4lyPaswfn=PksIyvj3Swn+b^ThyIM%KmmLlV~ zoJrEzn3Qq*wbK2lCFFI{JrKI#qS1q(%Xe#ix@N}w-ST)lD?a^x_0#oX3hX;6F~$4X z@3>*XbkIxkK&1ioX=E-x+x4d;PXcw5sd}uPvazE)zN+rm2#;g*YtZTXqZJi+T^Fs+si66q^nOi0h7E-dm+{y zXI6^o$c8F7a{S`=?rAQYUNU8_=p{7N7X1Xx69q-79c92#hYCnlI2Qku-KI=Ya+p<) zW1BA3Hb7#e!$7xLYXz6y>02+NrRYg>-FuHnPn{%Gr|Gp^p=J5A0GUaKxuu#&JCA9< zzuMukw#9KBSbEuOK!(Fmbr{uuzFs51quv(Hr)77QeOJ2P3vP{X&i7f&SO^s^a$%qm z88}wzu5sxDG^FG6U|stOUp^QABcJVish`$+8Bh!%K`}rTlHDPLS1Rp()84=AaKCTJ zF-Bb9Suw-e0&U}8U)LGRD5yIwM5B*8x>D1*9couai|z-hyndM0aclJSE*xt(`ihc} z_fNMdOwU*fu@FX0kipgj z#jO9p7j7~HOtA{uJpe;fL3rNtBFWtL`0l0sMAdIu?j(m^$r~E?|3;MJIcUFu;1@jtJ z_5>T(qTscyn=Prf*){n>{_cN4ru-LsMODkvYpUGIX9R4W@Qu1cY7I6ks3)HmtiP1X ztwDNKg^q2!nEjRhs&z>kPo=%4)|z!pS(S<|o^`#4$ZPstV*!xY_xXIG`|J4*{JJ9k zXC9Nas%D7gSc4sx0If+Phyh@XS(;P>97i{;AZ>KjSS2O5ZOKSAS<(sFrYe`@thJy} zO}?eK)*EbGM-bM9{^<|JSjV1435)ejtSl;F-rUlC7W`b~pV)qQz9K+2HmKIP7jiG7 z3I>%fLT89P21Ibg6IIbi0MbG{!}YwF9K43pdRxCT`>cvP2dCwipu@4~7?3(bha^fK-IW%pn2Tl<6>b8)YCW|Z2An^eCQfU?@;E*+9VKyllZuQ;B4r6K-uCJ%Bz zWwx~g&mbMwJ6D=1sjqx*4|B<<3NFwXl z=#~av6vjq`%}wtOpT$vM$NUA7J6!qCjAwagormfK&z)e}Y5FXt7EuPoX)OwP=!5FZ z9%IB8=iSyb&s*!%ytu#5eX+J?%`zRPzGgn#_M6W#P5Pa$R$dp6r|Ml+W0uab?cQ0P z#wqh!<(!-3^}affkajm6dE)z~p1r?HIpbsEVeZSTXTg^|vNEJPe&_?V#w+{!vRq@G z_Lv#r%`DU#EN;9yd0mnOBiTb>Hn4Wgpwb&Xro1*e%h4H#9N*mbZ5971x+=aMul;^s zWjnW6M>sntwPmSl$%9#)J!_E{9dFEU?h8M(NS*dwIOJfjM8Iz6zmC47pi^ywYc#w<1VI z2WvpdF4X2jwcpBX_vkxcf1HT^I+oNLW!xwg#d+5yqO4WibyPaWF|apH981?dJ`FPG zz22TFi*B2>#@1($WOD6&TZ)oOzsLO0X2%hRricjj3gdO@bVBdb$?#<#v+8oM?tWr* zRW0j*3{+A!UWM>gzt+_Zq*{`{jU9_c^!Ahm*P)4}1&7Xq?)idp88YPlOz0geT`Y`; zQo0WeLO8s|9aUwfw5wW4UVsi3+;KA z@poCHsy*qLqe^!1B@zoIT@uh5^(7HEN54ppAGl0B%nM`+(zw*N^M_W?a5eYf z+r_bzl)mZ&%ymWH_0;v2=MRQQeDm|UI#>5s`D~r-%(3T9X=Kwn92hso7=5^mu`j^` z0!0AT(DjO1@F-_8DDu@B;P#woC1xp2JtEIddvYcbBV8m*QknYk%lhq$(Vg36u$orq zMfZE|V41^8n;j*}_&r9^sWRA&Q{{|MQ7WV%qv71Wv}-M(V4i|8Dnuk8FJ?oIL$$T4 zxPK!*{cu)UpMat3ShBxX8ma{xiyb)(F+J~gEv8zt%U(&pA4&nIz`nRxzwJ&YP^4c5 zUA|v=x}D)~tHhC{>BA(4^g!KqWO5z#1n_+<>PxIzy5^l3S`mozDy6q{NBH8gb%CPO zaM^n!ax(=tJexBE-YF&t{&6C|3TkHRn{b#moD$k01evI29c}QowyW>Ty@WH+B(&2$2(#jLL`Qnr7&Mb z4S(oMbst_4ck{CPIMk$FPn*0{VsE-SI7{J%G$+^9)4tNN9$kAc_(}Z?e=?Z{xJgJkIX?@vB%{Ts@m6k)qNp_kc>u8hr-`!F?e6^KBCcRp-Ph`rI zda|{waI7SE8qe84bgq8$$@GN zI-{5FDLStj$LY_F;qmo2E+eIND5AZX4uj~?=JS7SXQbMUyPS_LA*{~n@h0U#wPWLG zc>1<^S(uW7=O!nq^PiJhg+R=A5A!T_Fq=b)Y;`R{@ywfk?= z7Yox_ib>yrDI({jcQSfhhLsE-k%RZ{J^N8cMJabvZz?DB72_KlcO4#n0(}WHzFj!UBd>=6yMJ=X3{nA`X+~5@e|d zxnx|`Io-dK8t+t{_rV>{=?+u}9+y(sQk#G*y3#&Z<=iUe{yl3#Sq%M~jqrTXSCsLL z%muMj_MyE2(n@J&-&`x+@nQNUDEc|wH5~hvUZ$Nt?>_8(I}e~a;bQM8f;8#=K>!Hb zZ*{B2jz9bp|fv4?;*Hq(SC;3 z{`xek?Jnrn?!L>739`&BL zr{N6nyvG{lC%NLd6W#J!#;ud{FQn641Ih#u+76-f!x(6!a^8m6+IaELCYU_V?YpYqx9%NXO1l;3j&=A*sy2!& zR8477M$aSdd<6Cp4vc!Cz3gLgUr21^eY<@3N(}1G^A4<&s*T{HAfp0q9XW}Fiw3sJ zKYWiV&lc?p61!g0rDO%em!Iz=yz#wNWo`kjOJ8wWvsga4F%b_uSTZW{!tXVocABqO zsZ`J|A#192rmfB-ffM=N+c=Ju98tPUcMQK*XYJ>CN6M1CrfO0pOq=J47iY+npUNP% zbu@H3na+nr7uq)}t-os4?B30f(;94SPSyPyLofVjHUV2SG6-E4y3{t|`$fS8f53am zR{Qh1SL|W27+zKTLt~Y!yp8Q)U2@H@oqVhYMi{SNZR_Z@w(L@bcn+>%R>k-Z3cF7B9NIUol39@kefY(bpv!1eKB4Beka)9+8c|X&m)d%GGt!l*{BSHOzX+eSb=F81~*W06OnK1tEI` zhs&jdQMiDW;-?_Vxo|LEpxz<-pM18RNhRSLumK%JCbKr4fpU?85Kz@nhgx*0b-X|; zy;^rKuDeth&%k0jpyEeyhaap!F+NrbT+};FnR|-`2UIHWC$Ul<$u-)UFZfBW8u(s0 zS9i7U6jCQ9W#n6Ro?6#VNt3c6K!Hq6ACipJ0*0;@{X?~Zy|MYyG3uQ4PnZ8>xh{hj zdmm%$YGAR_~Kg_&~oNe_gou##ivesDAXc#02lpr zLc;(%l~yiL`u;8~sO>{g>XrxkCxLKQ0fikgn3m=sh)2(+vkkivjvxCq76r*nJt;c% zfuSz&poA+#B|@N*$WM!E7_Z!(GB%wJ-gh0^nUA5KGP`i=^fiSSj6*<$-r^A-$}A_) zt3cLbRQ~-7vw6+;nVp$pEKI{ANaX_w=tz==)Jp{goC<5pKlqimI%C-Fn5=Lz)q9#4 zGwaaf_NiuPAz=M08?Xry*;dZUU;MPTPznm2607jnwyON*A6rSA)k^N4Km1^ZzxUwU zB38oOzS6vcy#Ux+G_X89b8LL7#6fW;S{-aPq#-k#K*BpO@oo}pZ0XX8{YqwHCu#xP z1P4A^w0Csqh3n_;E3qcL(PDtk-~YSizqXS7T?B6h=EO~5zX^3SMeoy%gV!j64r=ot z-o!9J!|UfbhF-Tb6`f?)B_WEDc`p*yQ{O9p(>O-nDx5{wG0(`#O% ztOQCG?+kn9Lw7dg4qD;N)W!tpED+TkN5LmQ_no!>$GMcRF&q8V+Dm&2pw7bXSPqwa zEA@Ra{wAvOB?na?c-eCS`H}CaiPUEje@{Kvvm8C@b*T(w(*ju)EoRj6eYMuC1rxn& zeeV6dV-x?8X4%7jsmU+X#!G23MM{j2OjxZ+;X`6On#EWRyEwYFtSu%e{K<=kJ)BIlgrD9WDyx()nq>KOnX9WX9(GWx7P%x3| z9HOo_`cYai@si#KN1gHaVGbL zr!0#J;;1wQXn`8SP`__1)=6K!zTyk77R*lMR2^UP{*o>aYb*w$YPb@NcqFHcuUcpE zH;XY}AI`XvYamB!Ee1FxKcU-#9XU+F79HyT^kwaX)>~Y#Hk4?Qdfi5P#L3R|So+r0 z``s$%%l+>x$qEDp+ynrI9{E`pJvoE`boIR3l4JO{X2qJZ_6q;LDW?cj7o3_jLI*}u zY7~$;qCF@T8+TlXRoB<#li8Ac&_c5sV-d)Mv`T@LZQR!1I=*Vh?MEahe1$2wfKpS- zxdf51)kgGCCth6Jsbl;_>p@7CIKpzn*Sr?{?tD)2 zRU;)#5M_vA1C$g=;EVdP!@6udKbY>?O?M5s5}kKOWF)yLB4m=6G_GFRVO~9PF+b|qkRb|l*Haj~FW20M z@*}UwwTdHMQGQKNcbJf<XWtqYGwTN_az?RpMj_thMBCC$~yvvUi? zs(nqz5h>t9%5*QrnVR#cv3Z>QFUx;nwILl zy2XBdhx<&rZs}T_oUHLU;MJM|b0JHD!o-R*?NRxWc#fR4&ewTd%D*sF6PdvIlg@PQ zPjfJKt!%$B+DM$DHT5CQBtkQM0xI+%z?VbdaQhGqqV9WFkoG>!nk6KDvgW zVmwAAnzAy8D^wWi|0tPEb=37vo3B1F1E+lXBxjZkPUhR^N(SPhJc4}bQ>@lJT$9OR zEyz(RNF(THUACcEP-K&%h}Wu^NbCMO1-TqF&{Yetylw0a?XRsLA+5 ziUFJPbXp^F%G5!U@Fb%_2$m?{>i-C+N@SmdU zk5oTr3_72I70GT!tYyn_hyylZ%)l_(6+AAd9!{Y;YyphHy8;XSTElT;Yl0^@oNKooBTFTtOn7K`0}X>^J6~yH(l`g?b)e*u*P8g< z>l!9ygeY+*qrg%ZfhQ|Y2I$6d@5SscWArsA-8zGrk!2o5Ya)7GPGN?2<;e&qiY`k} zYAPDK-BRM?t{M z#Q@$525u|Cd@rv_Ij;NJS(tmPQqE9IgeNOg9CMVkdtv+1l-gX=@adIaeMhsaR#$;wmnPBzVM6Cet?mhKmmwkQ*V{~kSiL_+!C9|k z`Jd;K-`S>99%nRd_ZqN(oE4yyHA)9Omey)wA5{K8By4ms`t3fK*XvoB&1dtSGn_E?c`O;7i*PVPrd_to%lw74H)( z%vB)M)4(TbRDXJq*cCwz`DBgN*SI83wO-U+!F>>I!vTdcTA-D77IB{|-D|DOPv=^% zxF02&r^I zY5j|3xsR=Y=|y$J#^9`)l_5^YQ788`AGT}R~mh#(=n&wjr` zDi$(6r#%_%flB}5>$=1eykyUdNX@Wvpm8)q)^v!WN2Sr~@451)KgD8B*4V!D)g@{7 zkV(fVVx@2OGVZ(Uznr6Oxu3L;$ULG$LVb8WGCu~=8Ox2{L z*VO`Ml*P0#OQkh-;(2@@5v@&{0eoYWo%G`SRHA?wTnC8XI)_|o=RSxX(~A2^zy>m> zldg}TKe@|AMyEhH=W%v4MKUYHr$q-m!sXlz7IbG1k^Ay7aBIXo1BXDDEnmYc{3wav z)Pfy3j4>8HiKD6Z5Sc~dA|*=NW9+3nelVpt)>Y|G@xQF0v2)6o`W*8w-mht3+;QW( z&bu7<4;e=eCPQ({yM<0k3`G(5WaJ(BX`v*hWp@*|+s$e^-;IqcGO>@lJWys>it|n( zg|t`&`HT<=?}q*0Ny(XzQ;SP{$^+LM6*lD>I_%hubRaK7=clx5d?g09+{rIm>B;qH z?v!hcyfUR=?RU!zu?j>8(Zr~S;7{WrDDt{BETPEsd5?#FEsULuDw^Iol9Ow8is#kZ zo^d0gMhKpnL+<(xW{1v+99GYibtz|zNReWVP)=~s2gqZcNBdt3b>G6L*am_1Es@&whCMAn%tW|pH!kC9hK7YVa;(`6=w z*WlCMZLu-G_U0rvY1xcv&*p%Wu8)3MI8EgyzWTT>toq}%~Mz`o@3r?exi&}+FD{yq%;du3XFl4>!blX z)x_3fg{fX=GU6nRCBA^JlI3w_NrkzS>=uG@2pxGR>S#}SJR8B5TGW7dXL#9TU*R8+ z?#v%XD@w}bi?vt25!yv1VC>vP!VL^#pLCl%z`2HWMb%?WLx~|bx|s0`0>s;v-SbEb z>!Jq^9aFF0im?jpT-sz9+C5ST`QBWGZ@xa)$X6W z!>+BeGG`DZ2701#lo&E$z{>K~LTKr?%@a>qf_n6po6ho6^*o;ti!PiK@JR4wyKZD8 zgZF%fyF={5pYQ;|#BawoPHEo|MCKBxYfZ2J$r+T>JW~Bv5?L&m2j-_y&F`4pE)dSF zT)-acTHn3+!D`>`Ac5i|eMIq)LFL7hT6hq*7inpNP54JbA;0D_{{z#$}Y0D{I*P|CWH z%t|CQ^K~KrVX*@-@QOd*E6_G69_<+eOUcHS1Ja}~*Vk>y>S zg{^o5t^6a~-AJN_wylpc-clp=+{JMf!e#cN$F2lIVekH$k4oZ)sEt!w<7=Y6am!<< zZC89jy60c9-3Qr>JyvGSD-luH^*6yNcr4s3i}nd7@{)nO=k#tL!R$D58;2Dt*Vv6- z%C$Yq*^eAYXpF=xWoyGi&2wb&rWhX$bLKm`RYAW6<8hESh)TS_D{#i-?L6QY8}W4> zx)18K;>!$3FX45GmG+}}5V{Xa5u<_N7$cE?8XhVxGjk#*Iag!B+tl_-9)Qv1zXM})zY)MA@i>L+KxM@g;!hx zc&C8B)|+aKt_f84)^+^X<#)3~$(=E5A&3FcQAvu9_H?7Ap|u*=2c%D^MTwvp+A>8mIFviK~2cEyoe*oPSw%#RIFfvxxd^dH=?o;5^Lf zwGjLMt%Wull$ofutl^L$u8xLdM6f+2v#a(bkG{yx?0K~KnIlKD?BYQ-cP99vzs%Km z1iH-DSnX@PZALX&yCDeyOh3K57S?7LQo)tE8`hP4_}1)A!nT+%26C|xhXXzbX)pmx zJF}^EDO^t8$3zLSt)0-3e_B-n@ulay!ZZCX2FFAO+r>f(oGS)(hSkW?)U=iYE28@l z_>;fvz#~83M6}8f5amKcoN29qc$71aQSnMw`B>aaK-VQ!K>(Xx)HgwC<$=Z#Ac;32 zfzaoOfpD9qT<-ubVu1NS!_jDe*KPBgxJDt+93kz${jPG$;u9c(y#4+ zDv@28qTH7Pu`ly8=}Lsh*qK&qMs-ZN86;w2i5RKD07<}@)gnJJ$^+Mh=Ud7#9iMYD z#KLbi+R^& zg@t9cW>jQU`W2th?O!rm_i^ZZ%)8|NO*1n9jlT=SkGcEOB|by3_YigJ;_t|}B=1KL zk)IY)=3932N%pf@z2{s@w>n_vT$yQU9exTe)w@ zTt|qlCv%!2^vbGWEb+7DRJv6Hntf-I%ymg#5AwMQq1V@h?2h1YkXrLI4kgsmHAHi##b-+F&3m|79$#}k*VvP}1;{;)+(`p7%3NDF z5_3{aAmNPWL(ZAl9-js0qm0R1vfwE3xaCWZ!sQijvw+;hCFe?r$}>C7Oi3$E8I;Wq zF)H&CPh#R*`IE*m@=jq%D!DyZIgqY_Imv-qcH|U+1(GR*-hT@xs{E&3Hqq|ko!l}d`}Kn1fHzpP;+?!-M;yq&a?N-j>5}FpNpmVT% zsq8fG$%>R`mN8sI(nxt-DyS+$aU8`VuSf^BD|iwE4Uc<_pqHqPAm z-Wk6Uve+!U;Da=v=wXZe#5yOfv5D8PsQvhQk{;ch(+C+IP)eIdJygHfe1D$zC&`6^ z*PVV80e2Xc#z3EIXCK8~iWLy`}#)A3bF-S^y~*mc?wL z#bSnH2+k(gq9f-nJZfBKF5Wlxe5237H76mdMURK5L0E~qMCyFRIScZU59CabtT*W- zwAe%tD56GuMaCv*sh!wM%~inh;Q1HVowRJl`RWr3w15ag6a|Wd|5T*Ky4VtwqCe*? zPC23ZZ-LXp}4;Vdq`>^X*TY7NU_rNS&qW@hC!h>ugKVPD6R^L5!+ zE6qU>wi{lH*SVIC!#KlRtz~%-wfyK@!k8+QwI*^*s5jD5zxDh}w`$?T0}RX;gE6d& zuL-%ZuBFz%A@XmjG3<4T{IRQGscl>9MSgy~XU)T`%pPkMi-di~%`BY~4CehH;dY}r zqHr|F)kK`T;q(Pm{Mi*e_v~H9eB^3Ek2_-bTWk0YUsL4m*rQ?3yp7eSzcc3MAboI^ zd80`k4w29l!05c)n>dQ?WFF@ZoAQK4MiQ4%$|GZp@;C80{N;Jf%1bnkdiN}xRJQDE zUrzJFmfg94%0t2#tXaI6uYvj1@>}h3GKv{DgcK@q6338SrX`SM$V1?HYqDp=PqyH~ zJ-7T%;sR#zI`hqW9n2Nv!koj}9JFW(YscVrZ#~R^U;gLso)t>DP^X101T32Y$&&ju zF?o=!Huiz}@c56A5r_EgeB4GnDc2g=tUuGla9zxB?x~Du8?22n)U9_4a$t-MbX_8U zWUI-%x^QOh$Y%OS*T;c6>RM}74jqy64^ey*1 z86!rO0&0M#3A5mpb{>tN_uNnGWxl+;@5wPUT^FDQ7YquNXaf;>$&y^7Vd5AW!GUT@ zA}o0NJpKX3si`Xh-#ix;nC>PHWxmS%lSi$~3{-m#Afp@dP+3|$>Zf;YoagAv1z+Z) zzQz70Lwj3%@*nhLjt^^ttQPGMg*CLWyY24ymUe#+@^=yliF!Aw;}Q zzf0azEZhQ87~c2i0ZjGDjV~mkFFEys9*)v6L%~9M+hwCrzVTNlEJMo6)&g)rnRQj} z`{VndTmgDp?7lxENFcFOSoGF{$a9NiN~9D3^*WnphE_b{U0u z6p>`&e(m_g4_&$E&jTRWh|kb>L^Lwh7`^prwT~Q*hs4PQG%cwQt8axZlrJe1+4wgi@2mT!fC&t1{vA+C_dS z-saBzey$*9rJpSk&8uiy%;V4+f&m7$1D{0J#Xi7Cz+Kzr-Fy99!Cm95xfvyTVK7yi z9T=dA_tr5^oQ(GR{{=59*ZV9F=AW&rbw=izKfgQJsw66TjZpH2!;E?y#h9-bZuC>) zn^xuRYi9c0(`?=E>&Jxs8eW$wIHIgFM7C{X64ye{5nkYS?Lu5q-kR?5b4kzU@v|)C zn@t;MKH3N}82@c^g?-9dy#ih~s<|)APxa%d^F7-eXRuD@3XUhd_RCjF7|yMSunxUXXTXyl!ciYz^M8>^!6RPc^gce9 z?L{6Gtjr9uX6lncY>k%6Zcp`M2)s`frzi56kgSi>;PmE7XUi_Ret* zSPcX>k)$v$l5WhPd9F4EAM9-eo&7+1ep&u-`B&^=p$u17y*#FF7A7o&Wxh&vdf>~P_iur}4RoaGc0GOFW_6w_HEX^i&vJQk4D5>`FzHl?ri#PbuY}C2)zor zid^&JeMuYgT(#A4U%ZR1c*u7TwX@%41PWb`%>ntma%N!GrCBi(CpMkW#4?sN9K0>q zA0w~(+TUT|otO+e70d>)Bj?F^&^XwSfX%SfyZ{TD3^PG`lR8j3Nv^{v#YiB%X6uYe0_h0k9haZd>P2BsS%!5Qd$B$c_8ZFLSnkI8CksLDTz+&^${PSq^>#wW2g)K~6PIW>cp-8qF(&NH#m!_7eVqLv{#$}(e z{ztf>|Ar6#FU|3fqRy;&owy&bwK~y60DV@2X8tJOqLQSOnC%i^M=p!yk&aMEg|ZxTz3#nA%()c^Mn^kkpc~1t6U0n6B?76Ggw@!xld> zTi`Fmft@8bM*9J5@0_VZp>{>r%x}O9R8ulidvE60c}j3H>_81JTivX2wn_R zFig&U{XDIq#t}w$KZ5bSYq>qtjsZJLIAe~#S(22Ib9ymFCll`gd&7hMa`}IDna)ZW zUVnH1M>cF=CV3DN{H7M{$RYZZ*+`0Ah!4{}T4> zh=hZet0{@MXan)4Io#ueu4NhQ-1053k*ML{#7MiYaSRZI6+;#TaDcFmU&8m(hfFW+euOpS3>m`Cuk>e_hpX*;-36Ip~g3pg?x7I;7U}>EZMCK z40oUtGa$i2fB?5edo*6Awt!j?Tg0*w3O2)y!b#!%)I=g-QzhyS;= zpAXE?S4PvbX8m~9#hE8xy@KT&?P&>&CrT+idW-f#3L5P!vwy@^obc_dru5bylt&(} zpEC=yZ1?@Q2!pj{tx;q0aRI#Z53qaV2|u(85$DDHB3PcJJX6d>cP$qhA$WVXd1VA* z(t2&wqqr>~3&1;$Knn2|{cS!oR)*hhdv_6L_nu$-l~?w~zkjEbQ)^v#27?J;9@rT} z@x~K=Xu*ygqCZJP9L)!{efjmUzK_D)=`=HJy(U&V?F>h=L!crsFrz$i5|>(RI%j<~ zmv#OsF>Tin%9!s$90VR}(3XEwEnhgG>guVxv(`E5*3AevP51{p`81)AiET+;%OJ9vHZOBw@4j_#D@T5rH^*Y7j)GRBbebowA~ktLC(p zmn*n4Gy30_|4;M6wGmun(KOT!fl zshGP9hM`Q_j3fE)&>|9trGWY0N=f9;}h1VHu|#T7T@(N>*fU2xqfl%qrG04*J z)b1R>fMINTyg3+IJ3>Jk%Meh@-5I7*W9htH&D&XxJ~+oUz&GXX+!=023+;49B&=x1 zq}a%=bpa(l8=tZkG}jpJqEF}O(C5z4-52O5b5gmM^4J43Q|8k$4ILnOF?+&0d6xM& zzoWpEkGl%1W8sifFFL~)?{jb&XUDz$=UrB_^5(DxZJ>0Q;gNAWlcy^&DU(rIt6e6m zxAIr#+R9GS$F*luaA}sn7iKc#jnsW(bq=H0nDalZSU6pCc7{WCMx3xIbgWN_;{;3> zKb%MV_m3lLB3fNylY5SUSujCQGjv^$d#U1V=FGbNj;}<#%$a!rxd#&k`_i&GN-0_& zigNnw7q`uFYvJ@OKOWX^yPE7WT5-N-GBvcNFa>Xk(>)h(Ve_ zabOZ{%$8X&3kF6*t6jM*;uym6rm>Cv{ApoZ?3r>x&hj2sVhzUNA*itqqGD#dM&J!) zG|W6bbAIr;Ei1;$|DESLta__?uKN*QJlD}mZVOlfsE*=}yzI_rww)!MAIWY=f-t9K z){ePZGnV$+DN_C&1pUrRb|z~u08fl!7P$>44M`8R#pK{$+llj6ME|ENc@k_3pGy)R zrE3bq0Z5Lj?Y?EKFxVD{xT>r9TEkT(&l<=EG_t`nI86}1CeL`Obg%Hky0C%gq#d=> zD%gHCm?OT$kwG5Ws7j5EI%h>9j>fOVg5 zvhxtv&_2R9jU|t#ZzGl|&J?f@NFPv(&M-*mPkx^qe<3tob^D*|J45oRKl?E&8)$-^f$$;3ZR)Q>*^`J6*?fMcW6SXcSlxS)zv~ z+O4P|+23=M3)mgCQ*Ldu{}o(WnRXUEhzXkJ`4YE?8Q?4f)|=;}>D+8Lie>=6xFb%6!i+rn_}N-~o%xJK;BsdI@wsbpnC(7X6{d znJnvN*|>mId6M=-a(3qn+Y^a-(9Z5#tkAWGcDL*INO(a|giH9d93(bpIyd74I zm^3F^X2;X8CHo1tK%alM{H5PbjHm<;ChpTh!z*X5xz3PCVOJZfci{X3D&_Lfx>H8x zE)PLMx600$nbqh^9s8uGb+c|KrC)LK=0#^cKQ-&HZc_jZJ+HqS!3YR|5)t_2?wbe z+`xNkAsXaLZ!gR5yWZsYA9ZK3bM>+0&o1k=osvedB8o#%2OzrAe$VCgOni;5AWQ3H z=vxG8bBX$w#-*O>)ZnQ0*ltTeZ*ilaFb4)Y2|}XiMP&#}y&;U+FX=B~^8ZPi{GhdG zv$S0k%0-~7dRF%VFf*v)y##X$cI2S{)i^}L`)o1OeL>tI_p?bc`~hXIi*`+#i4D0< z6pH@xnw7Z+1C2j=w+NaqJvPicDYZCM6vx z*xmTuLnE4y|H;u$OTo2?ca6IJJ zT*i%_2kH+d+YKv-n~QlEefiJUqGPXZ^!v=1y4oXqt9c7(^S_JUTVs{yWZvZone|5N z^ju8P!9H`Q+GZVRT4itO64JuCJl&Hr#eq*8HCjnle9H)FC`Pdv-Xl_NsFX~iia{S) zN0Ii95!SmqE1gAmRl^hzY?s-1cHfo~HSg^34y%5j8GV-c=5 z`~0rGmiCz5rLsMn%TB(F1L)dOl)G*C%MPhiKVhjqQiVom00;Xa7*D zvsX8|eK)9!_!#^{0A~=Z*e$*OIPJQ0isF5_+U>mw>=usZwox&zq?4n-LurpvC0a`< zDhz!ND}7y@i9Lr+dF;Uc_qky{?-qT1&-U_3nIgf=mhsv(SeGm)Rkw?CAIb}k!6TwT zypbP_o#*u=p}m*V)yv&I%Z^f!HV_R_WpGs+1d0QfxY$6QH`8IHuF-_s)~x@_yXmlUKlH76q3_>>M6U+`#csdLPG85Jpv}uTh)TT^ z0A#6%+Y1)68e~m2e#8O}bE~^CNP82CA;@w`(ohK0Rp|F1-Bb+@U=2`3w8F3BvMHl; z`GpI4XwSQye3uzYT)+&QUq;1*a27SE2m#Xz?g;S^mzHe$!_orsGhGc}t+yc;sgoNf-M7?{~7*J^<&8#g+J9>0X&hVJyZ$O(^-HVF5hp`*H0wfjC_kz|8YiS!ykI5H}7`Osr*rMlPk zp_Qp)^VNT4-{;Hd=6nPW7e`P>Tm*s}g_j+(1RK0weA(qHyA%^)^Wn9~^5m%k)>3xP zm{@3(s}OQ5^eO!DthZF*1J*_utmZ-4X^PcjCgK{_H7e>wI@oAqwev>QyWWPG-19Ck ztFRtbL3lW zg|&V)*ML+^EjD8!qq8h-jq(_=47mcJYsFSG*E|U!7Vt#9thNSw;247Yl*iDGbrs?l z{sgZoyF4S8mSK2OUcqT%s)K=-ukq`E0Y(t0A5k8igGarZDF>FV+``v}IiYzrTiJ{Q z)!oPK`Watl|F5GY9_H7}@rF@<%|u5!}twn(M)7Xp73(`ykXG4kRHC?0fB!y3YFel=EKoAFb> zyZ!0fj0XWDtb%d|`AA``3uq^}pLZR+3=VuNI;VGG4(T zj{74SOH+3~goF6)*U{9Xs<3R}I0e(h5y$gmc*F+LOl?oTg6tSf>H?S*Q7k*rpG`sg^332yk8Ag&yYnhaTA^1O=8shyVgQ7C$XBq;)V|j`ccl2*Ecjn z3p%LT`i@r233uH6QM-S2`zg&9=zTk>gTI6kO0n|CQ1HQ!b66KW3p%JZlUNh`bWZJu zJ|j#KS|q`Hk9J+7!?lz(skZr??xSkg*Gy)mhF7_dh>_ogGzbj& z`kI{2`F+QH_m^~i%}iQP4Z{AKnqzF}(>eeL3m5q!4~Z^Rb4O>UHBlrn(=d`yfty=4v$EZLow!j7l3oK6UKTzBAu{lSKXN=D6YpC?1N`ht$TghSj+8r< zqk-92M*Ftd{g)f$>r#n->n^a#8tB|G(=|<^QG8I>*nG${_kJe8ozb#>3WLwLNjyHz zAUC8@U1Sq$ycr-Lk<|nqX+a#={ulqdmSc@m>q*kAF<(#e2vSrAyiICT|I<*bx4o^4 z9)k{Q4bo zj=_kKRa;okFQi=R0~SvvXx9ViS>}Hpu&)KF7#l=%M>n z7<5o;?aSkO+;7?*1wpvcwFPQ26`;=Ir2qMku_N0d1-v{Pc6sr-SEgRkF3l+ z*60AtEIy#1cn@79)YarsMp&-t>Q)A*DNn&1Q=SSR_HeMP(FKd~2B`M9MH+!aO2p zTF^o5giI=9De`_{mD0apjmLg9gz-w1c@7m|tfBbAWUS6F1#12UBn5c{s>M4TUGs)< zmkTHhUiSXEEwEE-_qG5br7L6dK_wKAEtEc;$Hwyb4QM zvNiU?Ki$8Z*vxQ_6SnNb27ua&oEsJ@G(&iZh|1%rPB!|fEB=2B021r{^qwC0532_>g5t7djc$}z{e1GzjhAnf3(r)cff)j$5KYo@(zRX zGy_?e=FdU!e`)eV=fjwhWfTO$%NNZ`fbUuc4u-4-e|!aXP#%m3m-S zh^S8yKT+BVkg3y*n6_k9#itA3X4%DW&$yZFK{a9B037x1;&Q%7yk%#oacBN5t(U7; zHmIgfWZ?r`p(97VhUCzcVQ^m+# zFbZYMZWtBDH3*6w^kl!}3-|7=+0dtcnHB-;p0G$E8mCEf_q*yVzVAh*|>{51>&(P0m%6 zzb?F7{v6t;=T+Oy*LnS**&X@7=A}Ik2QjSW@L2Dq>4n(0`?EVlF89eh)Uu57X=Rndyn zgmnqQZAx$1S>3Vx_>{GvMO6rrR^px3b^UR_%MQ+9*Pjg)nm5%FZ?+tOIZkKXSOv1E z=b(dHrr8#^=fIroJezh#*mrRl^K9%{ct?)O?j!zJt?R;wI@x82yYTD-z3f7kRgKlJ zN&9ly7F)ab;q1D!hXAj!R_++`kxkP`rnrlawdd9kY$bSRg;@P_O`11PWwxi87|jr; zC<+GMJM>RjFhNN(WQil&9n)=X!!I(%{hA0cUPhT2vg1Co1DNR6);`ZsmLin%I2J*U zICW=ioAn>XS=g|vXz>(8I+bZ%yJfs3PW$z3I*Xm})?>MKL9JZizU%hPmt*gku6VT5 zB_Y>?4`C9y7yAGoS#uz&?N`@N{OGt3l8r)kVp-umTQ2c3)4VmSH2`mrqQT~=W}um` zm6++*ya}sz@@RY?N$*@%xvFqBi)%gC(L!!OP@#218+kQJIO=g-j$p-NWfNH(Gk>S` zlz)qb{Kx*jYcuZZzQr7+4fZmjhoh|kKMg=nf(~kDLBH6D=SY72PrfSdBumSzRkGuw zI5(oN=EclKjs~o zE_wYa8|7$kabS!i3QD?MmzgvjzCJ_SgFwwU`8c}k=I+~J&pf@iGybM5uD#90%hM7bTrY?j0O$dk8eW;fH^w8p7x?*2B<4)fJo_h*QVRJ}&@91O?= zYP2`gLFlJgOAhNg{~OjTT!^R@OEgt7{W>=^(=K8ZM6&S33b%qK=Z7Vqwpst_vOb-n z6bm%V?bY+yBu^b#^r-9e#HZx_#2W7Bo{f$7L_TOP1`zQZCXO3Ip3Dm_@jQF3G~;eGuCpHQy$M^@KiT^Ou7C(fF5HkA_?G%wRL7R*x` zM|G{+ZRItG>i-X@{QqA2brj3h#bb8>_^L2i3SGeGK!l)&A@ik6M?>!|6la$tzH0xA z8`mG{{?k8WXWd`=^;>)F)Z)vl*y@GGzGE^|>{ctQmX{RT^vS3fgus{PWdW$pxq6OC?uD`t5ZOA#C zALXkw#{5l*-xp*^$6LkWG)7+JW&n4Y1)F^iT5fQPzxlhxR?K1O^Bt2P2D?V26gVIt z+gWIlD*1b>;SLy_#RS?}W~Eo{EwsmY{E`$x6ZXf`tFDuSqTF>sEXhw>G*?>hvd_)DneruE_MH$#wf;CP=IYhc`%iCSQI)|R`*1O;H-0}7(HJh`> zdTM>ScKAM@_~NV2ADymi0VALgd8v4*Q0i|rBpe*GaxiQ9n-}*gA!5v1+H>!V!f@;o zmSF84uY3yw-DIiyMZ9wbh~ICs`7A+=TONK}l>14!R7#q4rLh=@mM zr%-v{d@AxFW8kNQYL>h1GX1LDH-5Gg(bzgp<5Cnz^&KM^B3Kj*rl_~B?Pk$S`FY3f zyT%Z?pFXF6t%ZN*X%(MrQ!B(HWW_kY3D7VxO3d#2dPd{uR>^w{30A?O{Hojk<-+{i z@Eo)Js@tQePgZIkR`ypg-I&w}<7tJ}Ln)0RRsN{pdfZ8ws2RtwPxmgG;+ODIMy@AA zstdfDWWT)RLl^UJ!feN~Of5Ke6_Ys@NP4$&_iAnU`|P!n?l#rj7=(z3*gijkc}4x* zPDTThKuCNpH;hIy>!4x>wV(YE@3%-l=T#oX83>wmEEqG}<*lgqbDKh4N`9ifjefdo z+LmJ|&waEORc^Tf(EwzR-|JB%HZDjDjwaW|lBlNkdHZtCeK+rxWCB0q%)8d%_h1In z{VqVlidZDH#iomUCU54Lr>ce8!zL6K);ZxS2KD)?3r|TlSA8;r)a@N0e z+da!V#8M}^!n=?MY20eux{704Wv8>lolmQ;wA0~PZ)x34#gX)#GLp=X9J>xSD_rti6l;9#Yg{K7U`pG2=r9pvcW4f<_146pTB;7&>0I#=KGdS6l?TsCbYwaJS5V z^f2fh81&F~j4GBldyeP4hx{}5_W^-4lY!kO>byp#qpjsShG2GiV4Vk4H70Q!xk^6c zIE3>|HpeTy!mpvzd$FE@kb+oc6cx3OeOuTFM{!j4 zp!5BIz4xa`WwG;8pXz(quS5_>*73aChW87z>Rg5Tz29?+5cRqeuAV&%JRtnd>|p?6 z4;sZL9E&o-htT*r;auMls21IBY5*rMAQ?-goE@h7PCmn(noo7(l?frdRGz2Ewm276 zTcMQvS@QA>TB};R{hB{qh$Mc+}m;;?<7WSI`nqEr~9$W@wC3eb|S3pOnFQC zXDhwVBw8C=z5YY{680!JH##0R`G4pUHu`m3oEdGAl{FvA5YCVtHB7JSbAXJO%_;qG zM0ViAbVdBW9%aTXT=QC&APAytEyOKmO%Ejq(z=brSm{@}g|J!;bS5qBEhCAl*6H<@ z@40kLF)HUQu}gjKyD8u6lamURTRMX_>sjYG7 z595Pm7J!-F%zjKUN9(BrMbced-tMvN#&h2{$5y%cRWs+d-L4-~Lb`@c^;8eA;{ihN za(hq+l3|Hq8B@N8(lrTQs{4D0vzmX7RWb~1z3+DJ_f5KQ>(m>g8vlR{vun9Y1mXT?p2tdGMNP!zvT zC^_G71yk7Kbx?+|OMh>b&Fg+hcQy51CA^2xQFu_@vyx^F^rBLoR_FF@E~gpp?(F9I z<5>==PKI+?k-sX)bQZ3!!B3;3odqJb-|Oz)KC7BL^d_K-SSlOvYuCCRhgEso+=VPI z=$~P3p{=odM3M$jyu}_YYNsPWEV{oyoJ z|3OPRvTG(ec)#Ud&VBX(?Pel}Cxn0VYTKdg-O@$G2k^X%jMmD z$yds0O5gb&gr~jVplQtR?O_5!hKC%KEeKEtggZ_1x_;Lv16Ip>35(ZgYw=$y&+-*@ zolQ1UdFQx})p)&l(G-L@Oj5##De@Nxt=aq->?udd%%S>Ayi#QMZ1F;}^SbLWs*OlLU>@W8_BJvIE>4DZ*J%fY3O~tX)}e_VGK0eYYa!pGzp3NYs>Dguot*1p^?&A)-Dwy>!@A<99pL z+;g<^YegD(D9mQ8DLScAABl*(@rE-HhuTd6mTC|^|Uwm!v>H}7`5)H`AL^2U$23M7h1;BM3UE#Ywb8pnE*X zyutWPL8Ei$`Rc1J)&)@oI*N3q*ck}b#|-70gTJ@^i$h2&AkK0U^xr<#XItCG*G1yz8}B*`Fd{BIj1I4o8%v|wNkbCtm=65W3ef>RSF$VjZa(+1R6nLXL~1L1INwZbMRA?I5KPv$kqSw4_kF~9aJ2`*aoV$(yQ_DP#>3=K!%yu}`0 zGHa5mVE1fZG6$Ynjl{UYxL~%Ht?(>4p#J{E>HT$cX-FRYdRN%QicA83*()5<&#xmP zhj!a-RXgJTg?P2X@_B!LOlS3zbuO`p9$_1!v04|_L5!&~-wA~0rXTICJnbnl1!?`j zphM)n(q}Y+VpF4MS;2s~a9&!2)jihA?zKNt4rqH!adb|z9_{R%Mvp=$h~9X@PbuyzEbJfTs z5ZnEsLbU|JiTbfaFSNbVcl&p}>YihV{Yz$5{>(#5WUhIhJr*ib52A$7Zo!TmM!~R& z8DdW?BF<3!;K}pK%sSPbdLfUksc}?*Jh}igmz7Cc9()4I9B|2J-W9hQ@ zv%ZN_L$%kD1NvsQiSoU7>JNi8qoYUNXrp zI%<~H(Vj}#y*&4jrMJ{#RfE4&cK1UpFU?3Z%<6gepq=33ZwG9E309fRc=8l?>)Md##Mf(+SpbU zeZa;BmGM36TRfj3ok=Az0*-VqL2r11njd*G)OQ_|b%)`9ZM!~d^*7m%=EoanQ@I(e zMPN>?YAF~rKFUWHylmyMUgV`uOyTomcEz`c3`T!{!e{KASz(4>_3rvyKxp8qVuS7w=7xHJ-HDLYx;Z+sp2Tr3N zao^6M-WGu&3yK9Yf^4t~kwEp3$6)h*M2gpvt4D0h%l$ zq7d~_-4n6Y9V9Z$vV#urR?HfTH6F*Z?(vJ8{0sKJlx6%(`@jwH8%80|Ch!P&RB*vS z7@-=f8QMsX`-j-b|3;nhbGtg4d!-Cpi-$Tvs(r=TQ*M55sdxaZsmC!Fp93iI`CI(Z>T=t?| zv5k_)h@NcZ_Gq+WmbqXggm4ry3NzmZYm&5L%wrP1Cfx|op)vRKw)ju(%uk%p==rH z!mjeawH1JkBR?v;GyGpEsbeX90HOWt0|>+^%+z032XT$U>vAGsz~Cu*E+71SAiby~ z>uuaA0ha3O_1|$|yOFr@)#^0*G0iyiMCOB(;KLMz>`fBbz#CQHKV*EY?vwrGG3}2& zw$ILwI3P}7GRh?l6EVi1_-uV|JgOTyKx0x6CEU9BSOfCZSii%aaGkhsZmdS22F5vbUTlJR~{!! z)L#iTf&r?w#^rmFg3d8XMf%>2`Y!Si__YwEj^wON6DUA!d3mC1u7_4E{TFtI>o0Bf zKHqGzcqOyN>a1iltG84=8@m~zI#7S~79h#p_#<6nK!_!vYP#qAbX)@;3Vg^LDqo(T zV(R~&ljkYxSfuIHHx~8E$Xq>S*;oR9dWUow_}0A}{T066Zp;4VZ#d6@ei)n1ohFGU z@0A4kYCq`vKX@nVKxJU=h)!rIn6XKk$Srv@{poc=$=)aOeD*oQbSQ}uiI^v{4&UHi ze0jp40conh(;@?je7C+cFaXSMTO(IzE&PFo7PPt`O}=;kR*#~u>C3xs|x-25j^KK`65J+zYVF>-}cPn;%M>r#jdM= z-Qy$^o7Abn=D4Nrh(y@M!y*{0B}_?YzqkAm@)M6FV-OObT}3AFqDK|Rv!NOEvPm`2 z0SJz-U-|mwP4Xwj?stj(%+Wj9l#spEfH8Cb+8o0TBi~|QzK3vg^+o33-2}QfVV3&w z4dYk6C5zKJJl!#dm96i+T1h!GJtF9;;x!KBEQi{tSLiB68OlPbZt6uLVByGXx6K(5 zeFp9DVbJp%Wm~*r|JPnb&@J9q+X++qTKf)L?1R_gO}Iyu?jz6zOFx=p&qpAjsfF}7 z8c3-HBzN6?M0>{iPCUOnj^bG1UPo`(A42ZRI!M1@7RTe3+0|OaK#~{C{Ihr+PVZV? zC=0#A><}lcv_)hwU>C&Tqnsm=AQWRsb?w4`8JP<6nfW$(?;j}tu{jBJ%*&$n-YHz> z?3E-nIN(K-OUR13O=0E2#GIX*Qp9to=38 zK=qxG@8rvKr-R;Jl5I$ye`vGFpQ@gD!+1=WjLC=nIiG&hTkLzPaiiQ@G)+cni{yd+ zOq=T1nq;fddeeJ(-z`2~_4$bkXVh!H*jK%#>FjOkobL{FiXfx)!S{nBhH>{~mMB)C zRwx#FcfW8PwnpSI>Xcc_0wjMgz}Q~38n#S|-WhxFQJM@)u?sJ!*P?7I`=MlQ*I^Ij zY?HWkS9R#Sjm&#B=cK13?wC5|0azPj^}YkOgZxH2IyZhpr~0Q@^;s7q>G6hK18rU8 zA~Me?4{BQ6^fF^3ZfV}<`<0_pT{AMIrEfB(PkutI(F0R_Wb%ucy{UsQjQrR_gl(fQ z0rv0XGkAcwXMLYsi>M{DQ*4!A%I7|tOX7jNFC|$5L_VOatoF`4PZL%U)1CDRT!kDu zG(&P>X^8wFGq(>Plg^4YW1{zce7YB+$AMRs+Zx=O9yLgPqYcrIAy|i5CqBk~^~7mEM!}XT$T*FbR_@8XPFJCw)oM`=lk6U8+(vG zrf{gsIO@1CaWZ&V#o=O(;kYIC5W!CPYWK@KTZ>&!kPc+Gdjn@C*82Z<_sh z{_6UDk56dtg@ZIdnP!pVyAO(MUw%xAe*KvJM5biD@t{^<_}U#bsr><#-^Ay|WaVs8 zUbTPd(Lx%MLUGA+ipwbYd_p$J%;ZVN|JPEe%t>bbyl}P-4AHR2($=7;5F`;jWOQcY zCP2OD%|ZzO5!EhlmZ*7r)fzRO)APzPMIrKr*Y~f)BU$__a^c}ez}CV{RlocaKBOYT zxvW>eiwPb?4rFov3OC+eZdBx|Pm#rk*B?D0Yb@B@hQv&ULe>*mWV`q@7Wr1bniORZ zN_?I9M9p6LlKAdV#zC?$tG@i-=^pZ72b&~;ldt-4897yAj zspusE^9m1R?_>|{sGoo$mBM^s80thOudu2wS4YYu%Fx`}Wg|IeDc4ra`oh+B_*ux^ z6K#@`$5%1SHy1O9#O`}Q@=5&)6vjk?!?etB@jDM!e!4v{-9UZ{pzKVO8_(pM{4jz_ z8@v#BZ3FWQ@{zr%&i=!lMOxkn#=EbM(&2SXJ-^IdpkA!?BRH|HSBRraA?p*TFZ!iT#J9__&p1*4QYoBZEYGC=U)f6Z+*@xD@ z_<0k*SHQWg{Db8i9zr4L(g4DK2HBks?x)y%nQHR#D z^x?oew4eiUO<&RUCEv;Cc+8h4{sTde(rS@r0e0?Wn-vyIH$c{}`W_kl+ugT>mi2E(Ig{Xmmr(=*#G;fw%Oy%S1FKsn6WfK0aYmh z(MJ((T@+7c*r>oXBh!vNwPw-9pW;?gAHj|`%Yoyf99vf#D*`xgY4;sggp(Jm*SegN zk)*EQfWVyH<@5US^DDSk?1Nq+Cu!&iE8)i`V&w>66g?~V?wjE96D>`Vwb^_i+wnO} z*TIVE%6D!zt$oTu0g9kX8c*_g&X2i#c=+pVKx-%x3QCtiB9+mtteL+#Hce7x-j0Ba zdLv>J03ySx?Z_79-vymI zHtmw2JG$f<)VV>{AemmX)Q}b-!B|}~m|b9IW7@3#`+Pu;Qo4Rotm-U782N)l#QxGN zLg_*xHC~skYWfT~yXJWy`dt>~D48|aJrT1UXLD@6SW|lhHu&Y zCB1A)4)%;gOizLy@x||$3~|y1)8F~-xopNGyDf7c~TS2vO#eMR5?}fq=j-O1C*rBIb;|bxA`h6L3c|{dfLn`tA1h1NU+^|!T>Q^Kf2_mk+CPlt3ZfZeY(OGnHdbfImx9~^0 zvjFC~lj|P1!5bEU`0J4e zp~@{f7K|l9LiNv!=M6b#SFw8c{Z9TeBuF%rWXZ2|Q!n3+!;pCu%wtG9+8 z2g5PCtYS3hvX^79hi$3zUdQ(*JBLa)wU;vanuJJNK8w*nQ^5Q9`Rxt|-=pIj9+6^o z^fD@S<}mmJ%|`kM5Ptw6*LSyVc>|-M^TU6^JRu2TMP8>oktiXKSLP{1g^5tKay(to zyZLIy7=r8xXFaS0%V!5APQZXjMvggcV6(sV#ugsOcy(!Ah0!LiI}i;SIEPC_Q~igv znH=v(F$?tnXYbv=ZrRehzIxZ{%^6Jt&CZ*b77=yR-5^5Xw8z)e3Ejy80TGe=#TFE8 zTY&%)Z?K86sbQ1UT~a!YS*=XLw4 z?Q8j$wr||NRa>7{^)IU_Hr4Lg#bj8Wz9?peFij($GJGh5Vx!j2y@a!ZC^_frpq(@X zwWbyJ(%n#-f+I(*;oIBCw%mJEk8YR3^T2Z%db;vV#q{m701~U6l%BQ5+T)8!3GLF@ z1kg!Vy2`#An#FTOH!;ZYj&PIE=j#aAn?DR0iGeP28F2SZ>VSk## zuWsMB{b2T((9}Q_p_u zVj+i?B38f-sc^!$gmAt$)ZkGy!ceJ zzDclgJ7mvY5XK7XA^+LhB}m5IDg0FOXdgc-f&6@Q$@A2k zDRAKw;~3h=F|0t_?Zb52b=Q;qt<#f7aK(>9hOCe$p#DUm%3KX4IQ_rT8j!I@fJ`)@yj!f$!Y@;`W!fPi+4= z>j4-_zOuznc*M=({*WNi7Jzjof=w_m)Ll5WCjAt8aL8iR_s6LAUzG7FVnd#MxzW&Y z$I!sT+4v+AB!mf=IdE{Y*(W5)fjFdQyKIE2@LqE0F0s4>>}SoxF~47Y|E#Qod|Rk? z$Mi{{ABjSYMlZ4{u};@uuF0XcGp7z{4B@uKHDZ+GISpuTxtE=~3n#jXG}Dd%x+)g? zX5(V-EJ?=T>_-=W5U`_^*&D&N@X$9FI&}H z8)bVe!Y`3XM4=+!_dKq;Zhr%P_?z30ZGUI`yW1~pzrOv`?Z4Xo<@Vcc51#{s<3VJi z540XRiXe#If(}9-N$hw7-*`;q0;e4$kT%$c8JMw|s-b!Ux7!u#e zJ`b!4)N4}wO4)L!;4S2L2IAw?n%tbI%P=*%)F8I>c3I%0oMjECi-l!dmYDG?3+@kcSm=v`0kzE}LgEmfUh3ze(d~6UZh>u8TX?UJ7ab+uKh}dHtpB zSGV8jUTgxlaDxg71T9V16yRy^qVOOmc8YT-#*c(fL0j+#Bw4|=BH*aE^63ySk7`qJ z4fibT+~Ns%m_4+w#WXqy5Ec63tzfXag;+*|1T4l_VN0oabz8t60V|~RxtJXBH}W-% zD@5@#_P+3AbN2Kj+mFU_{=MxNw|}S%-bt#8m#z*KhBN0mx>Ug59l2aiORb_EdU=%3o zwH?+{gdLPOj2jt4%wWW~5+T`t5g7s46s!l%Q0Z;!-jV&#N4Jk{jpfe;NpPeWm278U z$j$6%UAa*1B6|T6RQ*2W(_Ihm9DGa>qPvOhVpQR-kGV51*Cq9R{usx(Kk_Qh&Ow7V z_u9;6(|1=-0G`P$b31TYNTw*&gA6J(^_HCjm6cWovPco+6D36lhPYt%*}Dv0nZ5q` z?OV3*06S;%KTI$FI{jN}wW|(Og4Q|rnWDCV0XaMMNkFg!F5`DG`Jf(U z--jCdx=Tp(I{ zS~eR5v3ZyxMG569Vz&oW|1R+06>?;50Bn9p>dzs`ToXgG3u!K^5oYxPP}^*J{b%_( z%q6W~qS)awLF(EKawCS&YKmT~JVTyA5Y04xF#|U^ilZIZi8~pST6s%~k#DMy%y*;* zvdVex{F#wcR}qv{EhR#NcDq0@-(Z-LbIW5i*A4?AvVf8_VIpD2?IE%W78-_@H=tvc zElkLia&|~reZsPLkD&2_tlREvt!{}R8WCJSE6Zg~u^K}uzwQqjdggd&u96%Y%O(ZUrx z60|qE4h*_f_Hbi09o`chiAo4AVN*0zt!`K{XC#m=j9B;^krelehAVcmI^Dc>frTLV z4!w7|&AGL^)0K#RA~mEei9p_)YH5y)K*G5T)t=n%h%5ve41iHGf}D~;#8oHcqG+Pc zkc=Ya#@y(ScImbw5CF<@5Ii!k8k6$WCK)+Uif}~|$E^mQvFSONb2V)}Z&ta#{>{uN z9l8DxHs&X=*A?m|k|Q)uosdACyD)<2I4?pb;KSk@gKum0>BTZskKIV`|G1R(ub1M&(mlvF`HO%+m{Ty+4mtW{tw z0LhsV!+fArc(ge&wby8&gDJk#D?^7Xf|^f8O5g%904M#eG|)!XK$kK=6KiQP5)N0w zpsSa7m%+)w*`Rv16%y8_tUX`!Qy)QleqfHAeujC_FK)jw?TRQ#Ngo=|0M{zDFU}z< zu`rpdi^}I>hOCMd30ZIw3=Y%0T7>2 z=M9aB)z(>5WcY81cI7Ge2FA^KfgKX%O)i3-b1lXR)&w?F@QSa!(OJH3tZT3F(<6(qfoA8fyLSaZG8s9GL7z47K3t0$1iA9&KhtO=7O-n;zu2I|zj2uyl%M>Yd zz&xT|79usS2B$I@kNp=5vyWhBmmaLUg6DZ{_s!~a24Mnac*iOt|Mr1Pm$Um4Vu4X= zdh-7Sx@H0rvp_x1Fcz@K;A8?PC2@tXrexW#lX6GVWQYcs13=OMzBpYgw&TXtj#11G zE7xK8=&z%BzsP#XKgnun?hP$^9o5M4sEU1x z>ZNGx%G3e@Ko*tO-3B95WTv{sRbu+|=M+(9G(8_O2{EJQlUm$JpaG<^`_A9&nbR{8 z01=w_W;}cug`&aa3c)@u1-Qsel_W0*s11l5C{z2EjA2D}8FzDV!%~Mt<=P`TCod9N zoiI=6|3*UpM6cVo-4^f9%yS`!y^g`>y>0YZR` zf7zIca<&5Q!nOQvxcBZh>D}yCXuAF!D;(d2O!eL8zE7b%WgR28(!y%{8wE*n^>{=< zDL8tlyAX{>AxLXVqf{*qDcjxEX_!p8UfVs^&#&W#sksarFK1vIs!~Kig43K85{Xa^ z(@Ik`7A#TI%b)=26>-zj7v%stIz8gNDMV^=xJF#&lV`j0$LBtVKev6;z7mwXlFoWi zhz6u}A=cv&sc7ClXl*Q_u0$S~BQ4AtIee}1LA~mzNn*mlt$@o0RkSM#1mE*@+yQNn zb94J7A4X$}NNi8cFSWp|%Xp4MEH(pW!4O+rhy)zIGUC0fk+I9Cvn%2IGmGlGFMpqP zuPGT13Okf333x3L68VrAnW7VtXYXU@_MobytQN!qqyzzz9nUB}iVL6BSw(~b+A-|a zZaK}~5CI6G?X3{v^fq^qvbd==o~RUaK?R^HijdOjWKz1<2@M((r~&wvLWrjL@YBO2 z6R{TyH~y(=Q(C?)>oJj)g$sMyXu4(H-}kI2G%;|6D2;;*l^6r|LE-tM&F=xOB`9f17bYwyjuJ(QziuV%!o3?K7TCzyIc9pllh|qNt zK||dU8Nwl6TLRHFt|IyzFTpnHf=x<0Bx-D@`yg*{H|eLgU)cIS(r<15eEV;=|9Sg2 zt%p+m?}l%|$eEJ&0rvr3BmkG3R`sYc$_L_;6|n4gN1n3JYy-#A)^|q#vMuuFSr|O# ziAaYNxNM|9!G9=KZA9Uub}Vi`@ycN{n%+HD;B%C3b~LPFhWft5v!06N&7^1)-%bEq+dxRF7*r* zTvyu{jx>Fj?S?D8{nQcs%Qgu$Wr%@eaE4TToV;9y8H?Ddlzp)xIUVTARhtov8cGE? z4fWD0>gH|sk5}%heSPNj-?M#ubG@?WLAWPty$CkFP?R`n^oq*51ljzYj8;MzCIWoH#6eaftnV0J2qYJea`6=f zUCT&BgD!!pWS2#VZC&&vFJE)&A#w*icw|9CUiYUZf~G^r!!9yJF-d_X1QS}lp%b6IzAAT-s7oawUUX3 zPTvEU3s&9Qx?ILeujHaI^zw6*TZTKMa(8fKwmoG8j)@MtCzve>C!mD`VZeQ&6S3Y^2<}OX(A&ElX_H8c0I3 zF-6BSZVZl%=jgWGp1jC=Z9Y7AeL6Gq-m^P{-2?Tv841L;+=r1tV9_3CH}yV#2QY8O za(u-;T6ALS1pe8hgL5W{WmiBms-Yv{7sU|r;+ z$)H0q1u5WrNm!_IP_Pq-i(HF}fcNOKL^Cl{bVE-KimQ2^rxZ7g!sW)ZEeL-7%=4gM zch=wgm3}VwuP(ehN_1OclI~te=z%|#(hPlv=Em!rq5=ARk z$x)649iemahP4Nj*FnQ`|4_iZ8&QxyhRM}PaKaTy>8UCF7QtaQlfv?pvm6+SB_%aP zlgpbxHo3cMl2Y^L5y@qV8hwtrI`I3t*ydi3>y_}9LFlvpX>tGv1X`HHZ%5D|@mOL| znRY9-nsuX7zZH?BK*s7B7%s@xIaqZ|ZLOjaoQUXH*{<%kV!j4R<*Yd#&=L=QEo=m- zOdie^aiPg(H_MQ0O%a)uOg+t6-o1VI{xpN@+};~-=WEsuB1Lw|yFdxT+gG;(lkh1n zid|1rV%M{T`-+IJ35a;C@La27B(PFEgA_|+7f5J{l8U&RXHJDg)D*q8_bn)D(lq*F zr?I+jq<|MSm=Y2;Q6GtHX4tORgq(!VwO*brfTYq)cPN zdGTzWm1_4UGWb8U(6JTfEnf&K0&ydL0SuHi8+p=;c+;QU!=u+W3x{p!^$o&hLOh`w zaP`=O(lsd81h~Q3FjoJPvBXZYB^ZY{is+{(d zVswFiAc?jrkf0DDpCTPv6V|vnCUZ^Qk5!1aWaH1ylWX+jjZWZ8{;gJC2(5@|Fh#S) zm!phY+PhN2lmRcv4^|}f=pce`grXI0Crq%N%bpj2gZ_ipUywIY_Xt8AruDm4X7d?D zNppq-4^iHS#zA{7$xRd58{rT4RT0&>u~T^ZngSAhOnUKn&jl2HpG=a<9gb^D^MF8J z0XTdtFnI{@+_D`I26RE`=tYqN!Kez?BFI5yVA!bD0P+*ck*WS1F%Rd(iV?72zn5Km z)eb}tphJA5$76n=C>kEQk42+DL^ZmYAO)x?4-J@i2_#*d+6wd(_ez6?2Mt<|mR>fK z{NT7j3G+FK0?gL_-F7K+4;Ni8$`8qltD=VHfNv)fNX%z87VUkn(x<4`E`ffAW6oZX zk{G@FaI=MB0uwEWjznG*fZg~nAUIE?UZ_*R(4;$#d=qrNyz?AX$#eAR#p|+u^9wrT zhR?u8prk}sd!?2fo_a41$HC&Zs4TAE@EDZ+@io3TrDa?WI2AWgf2x0@oiTv zC)=F!J*4Ap9qaW zG#q^v0|*2KXz$)833#gtd7=bfzI5D`BH!oK>uvchUe39&;s^bO*9GxPW1#>+(as3O zxb3cxDURJK7Pz5TLY0AsHU&Eb;acJ1b6jJjBpxCumgMOoTO&bgm|nBe`9AM|GM`5G zS<2oQ>%D~E+Wzb9zuW$&NZY5zu;t-X!FV6>Qp5roz#Mbn7CAa?!E}+uH3p&LmApY6 zzAY|^Bt(UtRaSwZlsiH9_?xcR$5WSdj_|u+y0N{934bl07?uN;nGap6kww3pUYYj9$5yv zD7#`zT||BMh*VrjR3{uBa50C5dAdhosV4D4I|q;;V);f^pG1oY10a z;zSzc*O9Ei_Vqb;u(}UC#s>FuZRVG^f3_seF&-aDgb4Tg8wLO^kG2X@f=9>-nS=m_ zp22cdeXywCRNjYIq8Y%1YMDUc_CcQR2dKd3*}UolVaAR&9&h-C_@VycN+VZMOXDUM zg-OOWlnLS?R>RtgQsvOkm-OYzKrjq+MmWTEaE=>ZYRz^PK6yg?ul?BGT?u1G`Hs<;4#Y}&-Yliv`7^SY>SPWxPT_WvnXM!$-u;lF|B z!;duvpUPo;wJ-8VffyLD2Ia#|cUt@P4V8)!@6}aa-aavID+Y|9qC&MrI=;;hm1lCJcNXmm6y5P!*R+ zi^0m*{~TMix>~Zv*t;gIKn4hs7aH-}P-tFbQ=nD4*lWP3h*NKlH;^yhT_)@k|)We z&2t^lz#TQ!W3~CE8Ffdl<6|B%>niZA4(UbgkhU8nbz0eej^XTKDtvPU z83lsTW~|S{ayk;>Tp1jC03^4$WmdUbdxW`0!n-U}>HG}sdQ1GV=X1_3r?g4}1W()d zkS;KNfjy@E>aqr4F~LmI+&m8+Jk&MhUYI)g`I^ExE=8;79BCVd@NP__66!DF zBuTuR6`bbWKKev9@#rDv5l&w=g18Ys4L^@zKAc@l-^&ao+J#WAhSSEhcyIOW!CMwv z_5?p8blN(#E<{LXvf2pSzpuCbTsE-&b5^N7?jE?Mt%>vzZ7%S`KwR5!WIFA)(A|FPxHFtJ!F(7@1k0zkEi zvxG2N%kz~cXd^B(49YKqvDrH<<}|ISC;ofwbFp-QkVW8mY8Havz zW50Xzps(-6o_bMafTgYMCU0UMY&{Epv>pryBLk=7)p*t>$Y1HZGP7}I3|1fpig3HY zt~)G`?}ezr!Kk7G8E4ru4w|n+18OaOjz~Plsgi}a2X-KOtax8E$nf>l3%jRju21pi!KT$&2SbOp(ke5W zpBY$899}dY`K3E{fQgDX3aW4;fGqP79`as;>??=lzn%H?M#I6LO}Fuec4rjL4Ki|n zl;glV2c0nBxL^>>Z^va4G*V^AvyRdZ_;vQ06aO2LNc;(nD{pY#k`PcKF zpC8ZtPTyA1&-Fm7mO>yxZaPpTEYkIup56O9?+jczmnm4N7%)!_j9k7QviC(-y|<3m zErHBto(2XP(nwx5$jPka21PkI#bl&hKq6;YSlGr(^M@YwMroF2y_ZzqQA0$l$iaE@ zz2Z`^@Xb2C_p8^5m!0)3XUBT6cJ`s~-)72g{~2LJlXBL+M7tcW8+pS4(VD4UE$yQy znfqIL-jd1RhXo`OIkN)bMy5=vA_r*IK*Q{7vpV9~f@Ujhe8&w3wZMUi-Y9asq|+=4 zRLL?S`6_0zQ%dYY|UNc>s^39a(au*KV}uhRlC?@dds#^s7!w!qM7Xl z57iA+9;0M4MdhPHY!ks_tID&e-F#e`GOpM82G+LNN*#5OC$Gk_40#LSvy~bR?$>Q9 zXAn6=EZ=HuYK&I8w)F~*!1&e1>j+aV;-l2D=INROA;Md(CciB9)Fok1zg=f0G1puk zRdMMGws-B=e;RMv{$AFWMHd^tM&8WA&^b(7BiH?!^t~z+8O;T@h zEB3%X7fD~|;HD(1T@6BZV1qQ88gUu8?$t0OVgotoA;l=HhQ^Y!BxN1En@T!H!~(U_ zAy1g)(|G;^dCIAuzTDRbW;Z^~Zd%?fg$Aj7)X>_GK{-?b$cmUA=nXt$N8CnD{rI!^0^k)&lUg0JP{b1>F7nn z*4A++fp#uJcrTu|1D0Lk9aOHJf-?8b>^nko?Vm8Grm5d^OQ1JJq?emNbOSO_Cok|B zZF*CvjKG+S`i#apipTnKs-){J*Qi~}_$Ohu{DX}Sebbc;BBXT9^SbD3tfBm1c0@Wx z@hvi}4@h;t0CKWWJ$jvbeb+|y| zlsl+UG&pq7p;lI_sVVT*WEG%{cMkebq3NiUkkEW8H^?ZDRhTf&=PD8Ecu$Imyvx_QEcb8o%19(FM24g%YUoI0M?~V4Dn!Rx zKy;QPF2lv|GNrX7Wi#ygR0A4D&;@aaAxq0`Jx)kM@F1c973X?~@eRqBi$B|hR6i2om5Dh^>dli!F zL+&QczmYYqORq6<3(Org>>ne|4p6XAgfrc>J(qCvp5&UsWx-b*~jy!5X| z9XX5z2XWoHLv*vk{x!$a+jZBQKfHY*?@nYE8hWJVQId}jwDneOrJzL$Qln6$Ky;L+ z)uZi<$xC^Xp19Rl>Mm4|3~{UFUIpsaELO7IP!&xfX~c{-9kl&M!r48IC8wkjN;_iM z<5RoyGi<;A&bc#Mh5YC=QPb55Ae=GzG3ryy23(^)&U=h&E^*EOSgp4QFv3e6l&iTyD5B22pN$$kDC5n0_vW6<`B_U;^IupVqb{jXglxX zA7-O(v{|Jy#9D>7>!Lv^xg;(qR4x%M$~C0b${bY=-}^=P80BaDz{ow;|A;lyH?wBy z>_Vy}-t|#+XYYF;z^_wFHHHbqm12y)NjbkHY|ttO)}C~>8m+MT!>B2o8CNF*Uz>v^9w{|V^WkEcz5JF_i$X_t*7L11B^SuiHF5PLCGRCBvpEJ=7ODY*wK5T+^nn)vQyp%k|*u|Ide28`LX91JosGg;BP6E~WEIYaO zK(S;6r+Gz{bpSLnOrH~I8vqBT&J#n3RO0lZn2+a#2d5rzfdX|D)QGp)^WlR-UP#nc zyrG}SC{8a4Ykd`!qAqDV#aUC)zGlA7VT~M)F+Qd!;4HOg(IC)3Y~yp# ztu0iZ&Nujan7Kv}S&XCw;ZfR?^^RT~fnR0YwAVPhP6nZy{*5XelF^`O9{8LbrYqLl z4BU3i0Y9Dp+Ii#2(-+U>k6c!Ovu+JX?->2CDS7SK50|e)ZZI_VqI@0mq~G970{+D; zwoX*$S+tfR!MM#1M;mp_slNJzv8$gxNxjx<`2F-GkD{q6Dv6|MOe0o|Rn^E0SuJXM zt0+a?I!k-Km%B`qyI*}?LOn)Stvtn(1sw-)1pz_~6?kiIZmN<*5;+FU8FVUCKyYs) z>0LHXBi}Bo$|1G#M_UCNHKvwxki^opeu zb3PLw2n=c#NtihQw9|`wU1ndzo%v41WtXjp=XRuS;OLVCjHC5Lax-!+)n1B<9(dZh zlcPRT>X)bUDAC+G6fouKI-j~{l+63 zYfc%6mqx9J_ew$!T+>k4HC?M6tq#vPFIOwPhW2C#;m+MvaGo!lftpZpyUr-C;&Xih ze8J^i+p^PNoM$fhXW!L_rRSE7>mv>GBcXIl>4+YIjGMA+c}mfXX3pQr$;R@7{lMwb z4pY$Z%YbjmucXkf&)M7cZo>Y{_LuT*sSoqEwy)0H5xzZdV|BH;|HYxU{XIeg574d2 zJzjdziunHbp_DGc_JFBZC?OM4rfs%|8kz^#j> z-`VE4a_!b$Z@=GXaSRxjVo#f;!um-Mt;EL;uAyiUbT|zZk#lg4xqDC;4E3rXVftSB4Vp^Zb>$at_|+S+g)EU!#O2|N2b7je!5G8abfl;nl@6NA6Zd+9 zyhLUsoK1BY`qtaOA9K=es*w5u84I*Uk6xU+;f}|FAv&6VRUIyRxp9_qosy zLT2cP>{!J;HfLy^k0kA739r|Zeh8S@YMooItU2cV2yXV%Equh#P>^bk6tk;@J7%!K z9T1!7k;`mSbSI!t1Z*SZ>lehwbX6b~G+p}%#v|S;J;8egr=vpo{;p+T|HA41>yKuw zh^9Nx!?>s+{b_Y;Npc3@mtuX`p-jOsq*QVCBeq;Y!^d!hO4%i|cG8+By4N9HkS!VT zd9HpVOX+aX6r2iaKEyF3-Yln6=aO2DMWJ*e<2(fOm7d*G{~A zq_AUuc#W9wVF*Eu9I!gzJYLDyM7S>IEBoM=#B%c9H$eF#0?-|JfXe?UL|`E%7mEASn2FFkyntdRzHdC_b_&k}ubPn%)Ss^OdlpE#e_9QF#NTu4g>29C07 zb74z40U3GZ7KvVltC4_K0G`k)3M5mZtb;qfqrm_4KEH$4|CaHeD6(e_ zo?M|vYuwWRnerX2N9iXrTsic@)pfD({h>K$l=raXsJ=OY6Xw_uvW~@Rv`2}q`Rj^< zgVM8Ix1oweoM2d55sUNGnRL3Qlmdf`*E#3)Jx8zav{wQOXg&5V)-LC0hy8$`o}2De znFL9YOi?^QX`c7S8;#$6k0iM8m9~u8I-5qYa*h|44uUT^iX-ZtbsZ{E6gl8f9j1fP zHPjHw;{agO-_GxJeDAdK=lSK_^BpTT&3ia1De_JXViB5IJyZ|vy)49JEq~!mIr_hk zUb^>xM)c`}G*=oUSD{SBCRWJr=wPxg8%?HPE2xlN@Cn}%R>H*~tTd{6x%RA4lpWn+ zkbHJ^?gKubT@}7_NgH6BIr=j>8YAxewUZk=XTP55V#iimSlJVmyUbW5v1O5f*2?%G z2}&*-t<4u&!~k9mN=?_u3}RJyRDg$E0Oy+YX?@^D-bL3>$?oqY2nivexuiPAvd5HP zrEzLxTkfVh@++Iq0SIlvsAMsvc9KV|?Gr7ef%1d4LEA{|2|tn7w^+F(*VUszX@YUk zmM$8S3Cd2c@^)@|;W*_Oww}js&-dAY@8jE7kYVa0~5aXaH_or z?pVitPyTWJ4{jgeZDPJJ+-GP`V>XnsZ4VtgXgJ1UK%?QBZ?OV|6i{;SDe{bjJ3zaR zTMI3$6?k}Lzv1W;7aG`{e%V}~g@Puk?G*W=oZr!A3qy@#*plJ!?`Zp%=YEoV(Eaa- zdAF7yZ=Ox&(PH`!7=;;XS@yi!pWIt<{K5DQvfKgDq4QDzmx>TKQL>K3kcy7lB-&N@ zBbKFPQaQ;FGbluPnVd2%t*g28L<2vIw)y8{YE@B2XW_HGl{a5H$J0L9+3#6i@;dDZ za=G^~y^fRaWlgzU(?Ca8zX2PbLz#v>Quq#Yg-UEkQ(c@LuQY8{A;;~X76*nYnpxM za!E6E-x5G9DR#PRLe;Vy3&+4gp-2rRCSxnhgW?;n+y4;p62x30*1U;WpLZBrrRTe& z0M#qFddy~!G#s#;lSoQPPhvdupv7Bc9KM3ca-)PWK;}G4-Y8`9bo-R9IZ*2YVUT5j z@Fv*XVj0o%-auC4Hg{6@f6yOK88WY#>pW^rFQGaueGVeX26#k$1a?QJ*O4MGlzMf6 zxch=0-1n|QClB7@@TDnYmLqc_j0SQPr_Ce>DckVe zaC0jH0?6=&;4s3OOmSvbHP*U{iQA`bweKHt2HVdKXMSfhp*O6T{RqGu@S`Cb74!Sp zjml$aiwd#Ih$3Anz;JY~Z_$*ZNnyW%BH^-?rqEH#phc#&co-pEImPTJbI{qLA)6dM z-y3nx_Id32{JQNMvvb#XVC-`>niXo`A!bpZPFWJ1y+PRr(Fu|W?E)SXVY!grH>4;_ zWxVItHWOS_!KeAa`pI#nv4u?EKz|A`4J8lnL5JMU3I*4 zbv74kBcd$^g5!DF&(HrvfAQwM_D6Q}M3xy`9?a@q8*%n?FWDSxtBmznS4n_lZl@0W36|!_S>)K+aK;k7KX$Qi7_1M zBf3WltY~utGgDwnXQo0^JG1Gu|MrNLqbDRv>LT|7(wQFu_7Hcx+pc~jqI|5z9*eW+ zXCjwza}%-)kvF&`ql%i;1%&R^3_&x0+R+Iu&MAbK^Y*T7pm)Xot9#zEgqjxroq_(cWFo!+VcVcOU4l3s7Q@r|!qD15*e|McU(S^5^u{tx6|=Rbe6{$~=D5{(PAibL3(4o)*; zuOP|h3RdtE2_OQq$V+Yz3T(7tnUZ7szctS{*IM+LF!a^<0W9lKY)Ua`2W42y&}Tvq z36O_UtIJ`th;@K8N>AJ_#B@jt*~$yRazCD;q}sm_)Oin%L@>uuY@TvfBZ2dzV_!MP zMd$lPbB>5oK{;d~G>C&hOuHmPd8DO>meXz{Koms2kg50c|416`yi^NB85uOx3q}|B zS6B^G2&Np_Qd$pa1AEY5F(!h-P?J)l4)bjJp>9$I85;iCulku@6tMX^1P2yVb4g=3 zyqr({>Zj%ZjnO#h(3bgxXoVHFx``=0j9L~)bZ(2@~aMzp7Hz2;z-KFUGw zXd=D>I5!-6*Hci)B2cb(PRJo${6_OW<(hPZ4d&>CMuFm$il=eJZ}8OIKi}+a{)g><Ucq`uT+4gcKZdC`49M*wuy7Dl3NE%<)J|c&~kF0UAKg z$?wbemF~ItGOdn4D5GugrwCN%I>gwt3Inh=>Gmn4tn6QL8ygvs_C&qaJLci4Yy z?mGX6k&RsxV70$*YiN&b>N`qFi}a9(LS?{7I~AFfZNnE5n#JLzGQuZi7I(eyzVmf$ zTLPU-@Bq3(02~+uc3Kl|k1{)n#+CmZ@vsI$cPP@ zT8gPgkZ(u;gU(bm7%x--(|%Hu+?A{>gs)t{G%_AIJ+5Ee7vJ++Tu_T<*UPnflOdy_ zhbttzfw)c`3rV}Hb$7&BP3_4B3JX8sx^7A$(&w1|!Xb8Y!{|nEIXGElWEsND=}?<4 zoZM9FoR^%2dALhgzHPW;pU5AZ?~C>SK-WKm_)mZTa{KLG&r!evB^bj1q;d~L_<}7W zCkyBt5}i|b<+v45q0L3e=i_yn6%pR7V>V09elX{H;vDRob?bjbNmYdvvVmV5_zbZj z7^0`E6|e*Vj{rjWEd&`vxCF8sya|~`DJ~I9)aHnU8k90t4khcxML17KjbfZbdfZCp zN;r~6>%j4!tZ!`oWBNDlqm1)^Z~nsG+h)cI-O$PwtW(1UZ|dDPkVD6zgEm?G2x8t~)?oHTwzPTLfNrXN<5NSbdBt;Or8&lwVu` zFI^}`;fYknibO7#WVWH;CUF~91-$!NE-{gtzmRUFkeN(Oy6KCWrg)~AsBEd{p&ow- z5bCL4h3C?y=fnz(g}+@opa~S%nci|q_8@{g?GrfOq&?Tz&?KOU2a&tBMo%9a7Qz`} zQ>vwmVk!F&S+Vw9;3gY@wbzNrni0uV)gQ{Rk4Y_xOl+Se2Ac}Mft^QQWJ&xfkipWc0RAA%V; ztz>z-+pkHT1b3P;FuU`8`auI(v>trZ;^7*Jw;>?Fgt!_IMPyG1FtnIll6N<`Nqm?F zEuXQ|;=hgj2+z9p|Lyz=>xA0tf4yr0j0+L)k|6En&=14pK2f;`-_(Lu6w{VLNd|e= zc}SOO-lO3|9Y|?wz1}`>ZvkL=RXN%K%~yOw%~BMCLz+3a>p;y|XDwYRqkMgv6doVgrA zw?3rhQuz5I3Vh)%Oa~$SlIYTG*IFbCuS0bAP1l6mOV>~E5FR62Rm|9_fBN#%TdVEU zU1vaX^wbzkjm(V(L7+mh`Y6ICJnwAFT1sAr<5N3NoIhoWw?9ITOch*889<`!iMOcjgyeaI){nlAJzZv6ucUiO_Gv%cd#t}@@H=Rh&Pp#gt? zHg<``4dvi~BB9Y${26NSOdQ~a+*lfH2J*5A2Zp5Gg(&54`;|;s?y%3)DpUJ6^@mYi zU%bQg?Q2coqw{{x8VOFZK{p~70xX@Pys%SHz${+@C5j$VyrK8mxhwYg;*UZV%pU%1 zdFXYcY-oRbnl?zE)Xh?qwkAVl?t>602YT#e#ugmUuRm_?YQIYeC5h%zokqF@|YFLUE3Bg-;9|8)xGVXT08^=hq~q0~i;me@To<3%TT1Oa0Bn zi@q4W)l@l{%Z7tvKb!j)eecZi?6_}LRkO8ZVdBoUa6(HS`ku;O%P9PN7CM{S_PLDI z<$#w4u!FzPpMa*o2S!Tl z7XdjK{eE_6RL>=7U9}yi&7&j$nQdYrfQDP5ltco!q2}s_UajN~yGM;s9M|g$uY^t& zbd=(>j`HvK^EStL`O4e+j^}M675A~TkF5<;b;C><>hQ1mKMPDrM?MrERmS}-l-vc2 zBuqg%zYG)<7}ECcZB0S5-iukQ(cL^;#<|{%Dr`u_fQ`*pM?p$R$MA>4nld{cic^Zo z;g$fIqG6}RrmsWL=5k!9yrzuyaX{C&yX@pkO#d}Z%KX6_jTfo3eh z9V)~-Wdf3>r0s_A_G8b6wD``uusHiGc4u`r3`b?>`FK*pr!@r!kgCvxVe79OUWR%_ zK;0_#mJx27qNz+3+eyED9mqWg{(+ z8nDL5mn_jEa@n{hmnI<|R~x=3cFOaxn7umraW&8T2|IqgkNEiSjc?66iTnN5Kbh6F zU*%17-UZ{1ccY25Ub-n#pu20TN;rp9Q$1BuumdBoo&diO_)Sqb2~%Y)QKov|5`8ll zcr8=jycD3(?teK4?ezdMmA@#}w9@GeL@eZc0))Y-Rg+Lsz@MOLz=e58vT&!g=_B7M z^;7JNY+N}6QkHYgF_$1_Ua~1M%pRJa&Y0QfJxbU44($HF_n(;We}2_oz5uCAaf9iqPY@>!g;*unK3!`$ zE5tJ(w3ypX0VfvOodpxsTT{qE_6_{y5NAC&l~ae4ScXscWWO3+|0UL9d`I?gZ~x== ze{TQJ_W$Mifk(y4afHhz9ehYsbD#lG2+hdd`bT3N%9$Z+-6z3v`FNRKz*~4p$iO9M z2j~8P9TyjR8bY{(DAsqf6w{s+EoX7*iLaGU2;zXC;~AAGtH<)-oX`p`*o|?U;T;gtNMRZvSa}P z8RaNrkQ3UKo5({XHb`XBgIqu!BqEI(+N*IsjFQ;lv@!co!4~{9r1;W$TPS_V!63L6 z?h4v^E=OXVBjFynXu@gjboaoJ^moO(tD(*pUH7xEY85 z7BNJ?J_bpK*Bcf9M=6+{K^n2kkhw~>QgL!zAyRFUV>V8euL+0K`WNmr$N3{XH~YqX zvxxt2b^P-$Yj+UQji0z28Xh}2Uo<ude^EjS5hD)bD=mUA@kx%IyZ(3xR z)CZv`J&b)xi%1VV_t7VIjzWsU1PRly+raC>W)9%@0V(BAXvA)a6n7&_I`CZ2jer#N zL-j5%gQ(bSoSy<>!tmRse2I$5?Yyq?Z2y;xqnKb}BQ@FRU-#G4=G<7AYJl88&p3qY-bWy6WUg_O&Fq zq+9i9i6KmE(~q0FG-i}j^}*%NqsY!qFeX#JFYxW~5f) zokmI=1y0XM98dOrbKdN{{)LD49<$c=@T%UeQ5rx___AJr7&f2*?==YpZO9Ld&gV`T zEv4%j$%|mqXf<-|XO{?C%^(=R3`)8uVJPH70}MFiPGjWzV3J0m4(P98@uD5g^H!#!iiki&Xi83tQjAiIUi2(NX9>Q+ za0gT?cR!Qo)Hh{z8>J8`Lcq7iIN5!8%#0B(=@FH7C4_6TK~fElY30d7>Poc~#rSIq zVUa<`*-fxg6b~03qzDTd)n(_YBl;u30@Gt%`pW8zPfh%_9s$HGLD+7*TM1dxoQO_( z*OL>Jn+lBBF&04e8u_WbeVeoOn5#ZskPKBV9UNzz(sQHH{=vg#_`aNU@6e6Or!3^O zaif@OcR)&b5k;WL**F`>H4Pt0r+xp9<9({QpUCh3Cpz16Xw)Ln>P3$C80KRlCxR&j z^<;=bw9N$8TOQiN@qGG={85@x^5zUP>am3blHU>l@OYJOr!tTbYWxp8ikCNaL8Eel zF5Dp5Gp4;xgbtjEq`hUJ#$^LVLIgd-|6`xll|J7)GeUaHRs5+Vo_74q|U(DE+7nzT(iz0U@xpiUrIK zz3EY6PvC%TjTI?7^0j!o>y~o?eHr2xrleddQ}!~Y$ia1y4&Mft9qYdj{D1T3^Ui}W z}-)!J)e@Iv=sXEUY^LJiaVmy-CEypHzTux-sP_AW@4r9##2x9alXVi+`xmtA(TLCHwmoGJ+4#dr8tY^lnxqC@L7Q$p6}XAiQ=I64ApUTO z(4Y*Z$O$Oaoy-16%m5kWhkHp}Tepy+XyUOohu*xKw>DPBfxpGdR{tYyM8^I$(jqD? zLdXrNQl)iqFdd^DxrlT`WsnRi1WP=pB%ooL1gJ0agf%qL&b@b1RiBYa@p}$`OD+UV z8}B%JI{&v5x`(@Ca73VU1&QfOTos@4RS85LH${+cjhkgE1;_FY=qSwP@dgJ`947*T zKh*3>DmLhNx6Hfe^N#C{{a=Ih*@rc?>Lm2+yGznV5e3HmeK~a3+!bj2<5OE4+HsuM0G@L$d**Taf1kM zyKKdLqOO%UCG0Em-N(>mEu?&h+x@Y7kzILy6oH)A!{}YNT$z>`xai$pa-8P5FL)=U z@8>zcE9__HJU0sJFP`mscC7Ks{^}jeSGEB;BbMVK&BJeGO>-WSjxUOhm8Swns8Hfk zula`m@IvGC#0l+aiA&a~E~47ysL&QGXMq9!u%rmWs}4Z8SxS>^>Z_5U(B38s4CPC5 z2k9%Yb+>)(=p&nV?+&bvH~Y#bG)Y?M%W^Cvx)*?9NYZ3pI7itA;q*@f!DAn0pHQ>p zgGSP{KHDMKa)_M<-exzs!(cNT#uw_iv2A`U;3{wND-gi2(FtszL4BoKLDh};Ub&2Q zw3HlN#kUNh8OezhRCGh=CSKpf{g3a-+)a&If}3tqVkYk+0FoE`)!0Skra2NTteDU} zYM(TGWVu%oKrfpLIh)b#p&gUkoXg0~&d?n>5E#;-)(m3Mp-c!>;W8SiK{_~|pOt-J zSEK)oz5dbDK2Dx%M5gJsq0r!+MyQD1XmOVEOfg`|&{82z2_S#!z+FNeZ+rb>(#*@T zxnlaYK~rn;TPs8KaPp9T9decS=4R+)$WSRJSc8yKz;)Uw6h*{CvUMGkpT|4vfB!#s z#C|#Oi#zGwk-1o-p$eF&5z=J@u{w=2*MG13=GI<|_RehYuHb(V?T;c&3O^sM%rUa= zK0qm2rIb3ACyLVMr3Vpn^zaT=xn+z>&thG&NAUgLB;@z{NPoyh5zWhXYe(R%VG!e7 zo=5zJkFgd`k!Z`|R7KlMmTwTJigG+{4AE4eKtjV4&Nq~mT8bO^z-O=%s4)^-9=V{q zanEYoZT4$(RQi28uKs^a@6Y@vJ?qDA`y`r{Wg4A~EMdfeAs6`7hf|vG=g=<^8#D;QzDsY^kO9 z0UHP=>zO;HN=l(O>35G{O(=0Nvv+$=%*n7LHgKe@Oz>q4#8={eFPkROjSU7qm~T2e zBuW4(<1aeL=%Vyt+;c0Naz!qPm6CXLAJBL>1bcTqfoy>`@d%yg#UG}>bKdjQo2zn+ zMy1>K^P!i^CMZRt$yJ^VLtMI$DQgtIOPMv4rLq^<4|03x*Zqz^0XSZU2XuOTaF^ek z!Zhtug&5$_fm6xP3%)8yk_l&~gAHUxdsDdO4Y1CRniONUu;E!_x|h@?c>J`nno>qk z9X;+Xyx`4JAI)3tdPfv;qb{ybKoUPYQ$RHR+7Jc4+22BcgLD_O7(hti@r}$UGl`@c zLuHAY2W=T4llEq!NHd*J57TM>pwZ4jUIH0mlFh&&Vvee*Yz#Nz5#wQCALZt-X~4fF=eCOLD9^^y=&pIgj=J*!DViJoed&TPXSy@l-@J z>{+tzLp9JyOJ}lCnM%rB(aB{x>6-VxuzKb^sf@1vxZZ zM!5<~N1Yts`u%i2@7^sy*cVffqF-`>UZNhZ59Ln8gYTd5ikd;~;YE5S6cZ<3%EdlI zrLh|3`0g0Vm2r~VH7H4Xy4t}7BG?oosE@0z<67(JUF@uu)dhQL?sUV7#Se{uhz`GN zm*+o_w=#Zh&%s@YfGAp>vB+Z#+`SC;+Yl+x>G~Y1Laq=jL9~Ni7zl5$+x+Ml zMB6cfHFn*M+F}}cDUc8d2(~-8klF9y^3}HN;yt(ZKVuZ{ziiKy%QhUc&5vy0la^{o z(#}uO?rv_V3!4;E`H2kNw+;`QNTa5+b&C=>mUJ3xo58=EJy!AFiw)-vy6y&VSi-zC z@ezAFFYgiE=6L7JcZvN5?p*ud@IGtMdnl)NHf!d30!)hDg$P5+tO6_wcgkM#i_u?W z(~lQ`&ubQa{X=@(l=RdUm3!*V%Q$U8Vx~04!h~!RVBRLNt jazVmqr+@+hrz=^ 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 z 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

    I$)*)!^E^!z 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

    xgXq5?icr) z`@{X^{_#opq|8}m*0rhGHLIp2bhZ{fG{+xYGL4t^)Ui{H)f;rH_U`2G9={vdydKg=KD zkMhU(zA(@a|NFk&YQVFSrG(uV-oseG0AY>FW37Lf~LRKN0kX^_j

    rVxrIDJ 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

    Y-hF$+m-Fcc4vFAJ=tDt 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 zzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZ zuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9 ztN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXj zD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x> zivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+} z;=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g z_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V z{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro z|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?t zzl#4V{;T+};=hXjD*mhZuj0Ro{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbke zui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G= zYxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe z8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u= zhW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ z;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l z_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B z{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj z{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9> 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 zKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5F zKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5F zKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5EKk+~L{!jc*zW)>dlkfk;|K$5W z@jvT^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z^M97^9Y=B`i=v=7>+!$4=-<7x(pv9-hzyg6D;*$9Fa!zIm zxAlMie_Q|O|F`vj{(oEl=l{3$fBt`4|L6a=^?&|<=Z^G${(oEl=l{3$fBt`4|L6a= z^?&|zcfB*jTouU7||NmZ4+rRh!-wRv&_x}HTfocEV z|9>y^?BDzU?**6rd;kBv@UegI|GyU?_V4|F;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q z;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y}*_lN)eJ@}vapZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5opZTBppZ)&N z{Lg;>XZ~lu|1{|L6a=^?&|L@z|KHaC`TuSG zpa0+1|M~xI{h$Be*8lncZT+AB-`4;6|D7w>|M~xI{h$Be*8lncZT+AB-`4;6|84!B z|KHaC`TuSGpa0*Pbp4AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MY|Mw8@fB*ga&-ZWGfA9ak2Ws~3{onUs%l^Ip`yMdazxRLNgC6_${_lI> zV*lR%eGfkD-}}Gs0fhZ~|5x~5_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6 z_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6 z_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6`2YRk{r(>KU-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-@78U-@7C{;&M6e*ahgSHJ%& z|Eu5smH*Z6|H}XB_kZPo_4~i_zw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EFzwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Gzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw>|afAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|ufAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9v zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3wfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAjzF|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36v|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx 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 zEB`D1EB`D1EB_n+8~+>so8SM9|IP3J#{cH`f8&4i`@iwO`TgJc-~9e>{BM5$H~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&Ncm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?ASPySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Z~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;f|!vvj9O66IJF z1!1p8vjjEnrAV>be}Btx^zEX9(%b^*CI2t~FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9 zFaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9 zFaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9 zFaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIC^AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!-_QT={LkP0v+w(N|L^<$-T(W(fA{~s z@8A8u@B4TE@B9AU|NFjw_y4}{-~GSu`*;8E`~Kbk`@Vno|Gw|v{lD+~cmMDE{@wrk zzJK@szOzI6KmWh2|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Zz?{r2q5(+xkEM zzpelC|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_GfVnE|G%yO^Z(oWKmWh2|MUOb`al1_ zt^f1?+xkEMzpelC|2yxb|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh8 zQu;stzpelC|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?J7=Z;^Z(oWKmWh2|MUOb z`al1_t^f1?+xkEMzpelC|J(XM|GzU@`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oW zKmWh2|MUMl-=+Wa|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzq4WbKmWh2 z|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Zz?nrvLN*+xkEMzpelC|J(XM|G%yO z^Z(oWKmWh2|MUOb`al1_Gimxi|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzpelC z|2xm7|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh8aQZ+0zpelC|J(XM z|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?J4dJg^Z(oWKmWh2|MUOb`al1_t^f1?+xkEM zzpelC|J(XM|GzVM`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh2&;P*x!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2ihq$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Iu#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q)6y%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>Tmw!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vD(u%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kz^n z-v9pl_n+_IkpJHQeGk;^-}}Gs!Iu4d|Mxv$vVZUYz6U+_@BQERz{UQ(|N9<%*uVFG z-vbEy_x`W(zwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezw!V3!~6X`@W1iD z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSxG^S|@I`~Bbf-~ImY{O^AMcm8+3|2zM?-~XNe z-S7X-|L*sH=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQw_;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$NzxzMm z_wWAC_x-#7^L_vB|9s!S`#<0J@BYvC{k#A3egE$NeBZzOKi~K7{?B)IK>z3exAlMi ze_Q|O|F`vj{(oEl=l{3$fBt`4|L6a=^?&|<=MMCL{(oEl=l{3$fBt`4|L6a=^?&|< zTmR?(xAlMie_Q|O|956V|L6a=^?&|7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>dJ;eXtfB*jT{TuM#`~UBOy8V0q|2^2Y zfA9al2h8^G{r~r%*Z#f#{~oy7zxV&&gHQYS{{MRbY5(5;cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& ze}DMDzeoOe{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U& z{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U& z{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U& z{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U& z{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)Tl z{tx~S{tv(Z2mgoP|AYU-@BhL7;rIXG|M2^N@PGLIKlnfV{vZ4w{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^ z{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{Qo~oca9@jjzv*W?DcRa zMUHzZrL@|Ae}tR#aiyb$!GV0t$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N%^9|2zNtyZ`;ZfA|02_wWAy z`~Kbkf8W3R|L^;E|Nnje?*G5<-~Iph{k#AFzJK@s-}mqS|NH*k|9{`V`~UCzcmMx= z|L*_4@8A9ZcXp`%^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G#rb{h$Be z*8lncZT+AB-`4;6|84!B|KHaC`TuSGpa0+1|M~x&S?d4%|F-_m|8ML6{QtK8&;M`h z|NQ^9{?Gq!>;L@!w*Jrm@4Qq0=l{3$fBt`4|L6a=^?&|;L@!w*JrmZ|nd3 z|F-_m|8ML6{Qu5(^?&|;L@!w*JrmZ|nd3|F-_m|8ML6{QtK8&;M`h|NQ^9 z{?GsKJX`;L@!w*JrmZ|n0v@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ;y@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@|dx+;L@!w*JrmZ|nd3|F-_m|8ML6{QtK8&;ReNME~dixAlMie_Q|O z|F`vj{(oEl=l{3$fBt`4|L6a=^?&|<=Pdd^|G%yO^Z(oWKmWh2|MUOb`al1_t^f1? z+xkEMzpelC|2w16|M~xI{h$Be*8lncZT+AB-`4;6|84!B|KHaC`TuSGpa0+aj{eX8 zZ|nd3|F-_m|8ML6{QtK8&;M`h|NQ^9{?Gq!>;L@!&W7}V{(oEl=l{3$fBt`4|L6a= z^?&|;L@!w*JrmZ|nd3|F-_m|L-hJ|L6a=^?&|2z z`TuSGpa0+1|M~xI{h$Be*8lncZT+AB-`4;6|80H#2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~CNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?XZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLiSN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2H~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&Ncm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?ASe-H8f@4tWl`TiU1-}`^x19kTA{lD+QHv9Mf-}iu-{d@oKd(g}N zz5n+;aAp7A|N9<%vVZUYeGeenzxV$p|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n;y zKYYKxNBp1spZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZs6^U;JPEUw;2D{x84( z7yp;v|BL_2@BhXB<@f*M|ML5P@qhXKzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|NhU?o#RN7BTy6+=RDj=k?UPrX|3-+ zjtrBCFFh>{QBJV<|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|9<{|*Z=z(>P|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEM zzpelC|GQSI|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh$tolFyzpelC z|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?yGE=3^Z(oWKmWh2|MUOb`al1_t^f1? z+xkEMzpelC|J(XM|G(?I`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh2|MUO5 zHmv{i|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzw65SKmWh2|MUOb`al1_ zt^f1?+xkEMzpelC|J(XM|G%yO^Z&aht^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh2 z|MUOb`al1_>)HB0|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzpelC|GO5h|MUOb z`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh$==wkZzpelC|J(XM|G%yO^Z(oW zKmWh2|MUOb`al1_t^f1?y9TfS^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzpelC|J(Zf z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}OkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PPyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4Z~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHulAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KupZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv{~qG~-+%x9^Zhr}zxRK?2Wsu#`@i3Vt@iKz z-|qoa`}h9u_n@c!d;j-);L`rR|NA}oX#d{-{T@KHfA9Y;{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAN2e|Ud?5Bb0N zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoT zzxluUzy1E-{NH~6Z~kw;|2O})-~XHc+wcF)|Lynx=KuElfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx 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 literal 0 HcmV?d00001 diff --git a/lang/ja_JA.json b/lang/ja_JA.json index 612a4206a..f0a1481f8 100644 --- a/lang/ja_JA.json +++ b/lang/ja_JA.json @@ -1,166 +1,166 @@ { "// created with bin/language_render.js": "", "GLOBAL": { - "New Alarm": "\u0000k\u0011\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001ñþ\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0001þð\u0019\u0019\u000fÿÀÿà\u0000\u0000\u0001€\b\u0003#!ÿø\u001fø\u0000\u0000\u00000\u0001\u0012\u0000dd\u0000\u0003\u0000\u0000\u0000\u0000\u0000\f\u00004@?ì€\u0010À\u0000\u0000\u0000\u0000\u0001€\u001fïᑐ\u00030\u001fþ\u0000\u0000\u00000\u0000a˜\"2\u0000N\u0003ÿáÿð\f0\u0004\"\f@@\u000b€\u0000\u0018?þ\u0001†\u000fôA\bx\u0001 \u0000\u0003\u0000\u0000\u00000`0ˆ\u0000Æ\u0000 \u0000\u0000À\u0000\u0000\f\f\u0002‘\u0000\u0018\u0000\f\u0000\u00008\u0000\u0000\u0001€ÂR ÿü\u0001€\u0000\u000e\u0000\u0000\u0000 \u0018ËÄ\u0000`\u0000à\u0000\u0007€\u0000\u0000\u000fÿ‘\u0018€\f\u0000x\u0000\u000fÀ\u0000\u0000\u0003ÿ0b\u0010ÿÿ\f\u0000\u0001À\u0000\u0000\u0000\u0000\u0002\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "New Timer": "\u0000j\u0011\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0003ãü\u0010\u0006\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0007ûÀdd\u0001€\u0000\u0003ƒÿà\u0000\u0000D€\u0019\u0019\u0000ÿÀ\u0001Àÿü\u0000\u0000\u0011 \u0006F@?ð\u0000à\u0000\u0006\u0000\u0000\u0006ˆ\u0007ý\u0018\u0018\u0000à\u0000\u0001€\u0000\u0007ûødd\f\u0006\u0000x\u0000\u0000À\u0000\u00000Ì\u0011\u0019\u0006a€~\u0000\u0000`?þ\u0004\"\f@C\u000eÀy€\u000e0\u000fÿŸè‚\u0010ð\u0000ð8`\u0001Ü\u0000\u0000\u0000 \u0003\u0018\u0000\u0018\u0000\u0018\u0000\u001e\u0000\u0000\u0000\u0014ˆ\u0000À\u0000\f\u0000\u0006\u0000\u0003\u0000\u0000\u0000%\"\u000fÿÀ\u0006\u0000\u0001€\u0000`\u0000\u0000\u0019x€\f\u0000\u0007\u0000\u0000`\u0000\f\u0000\u0000\u0004F \u0003\u0000\u0007€\u0000\u0018\u0000\u0001€\u0000\u00001\bÿ€\u0000\u0006\u0000\u0000 \u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Save": "\u0000$\u0011\u0000\u0000\u0000\u0000@\u0000ßð\u0004\u0000\tƒ\u001fÿá0\u0018\u0000\u0011\u0003\u0001€\u0003\u001fð\u0010\u000000\u0003?‡\u0001\u0000`\u0018P0\u000e\u0003\u0001?ùà`\u00108\u0006ÿá\u0007À``\u0010Ö\u0006\u0006\u0001\u00190``\u0013\u0011†\u0006\u0001!\b``\u0010\u0010\u0006\f\u0000", - "Keep Msgs": "\u0000^\u000f\u0000`À\u0000\u0000\u0000\u0000\u001c\u000e\u0000\u0000\u0000\u0001†\u0000\u0000\u0000\u0000\u0000p8\u0000\u0000\u0000\u00060\u0000\u0000\u0000\u0000\u0001Áà\u0000\u0000\u0000\u0019€ð\u001e\u000bÀ\u0005…ƒáì>l\u000eaÌ9€\u001269Žó™à Ä\u0018Ã\u0000HØÀaÌ\u0007ƒ0b\u0004\u00012c\u0001ƒ0\u001f\u0007üÿˆ\u0010\u0004Y‡†\fxn\u0018\u0003\u0000 @\u0011Æ\u0007˜0yœ`\f\u0000Á\u0000G\u0018\u0002`À&8À\u0018\u0003\f\u0001\b`\t‡\u0000˜sœsŽ`\u0004\u0001Œc¼Æ`ãà|/\u0000\u0010\u0006?\u0007³ð\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000", - "circle count": "\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@À\u0000\u0000\u0003\u0000\u0000\b\u0000\u0018\u0000\u0003\u0000\u0000\u0000\u0000À\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0018À\u0000À\u0000\u0018\u0001€\u0000\u0006\u0000\u00100\u0000\u0000\u0000ÿ\u0000Æ\u0000\u0006\u0000\u001fþ\u000f\u0000\u00000\u0000Á€\u0000\u0000\u000fü\u00060\u0007ÿÁÿð\u001c\u0000\u0001€?ÿ€\u0000\u0000À`1€\u001fþ\f\u0001€00\f\u0001ÿü\u0000\u0000\u0006\u0002\u0001Œ\u0000\f0`\f\u0000\u0001\u0000p\u0001\u0003\u0003ÿà`0\f`\u0000Aƒ\u0000`\u0000\u0018\u0003ø\b\u0018\u001fÿ\u0006\u0001€c\u0004\u0006\f\u0018\u0003\u0000\u0001€\u0019ð@À\u0000\u0000\u0000\u0018\u0003\u0018`0`@\u0018\u0000\f\u0000À‚\u0004\u0000\u0000\u0000\u0000À\u0018Æ\u0001\u0003\u0000\u0000€\u0000À\u0006\u0000\u0000`\u0000\u0000\u0000\f\u0000†`\u0018\u0018\u0000\f\u0000\f\u00000\u0000\u0006\u0000\u0000\u0000\u0000À\f7\u0001€À\u0000À\u0001À\u0001€\u0000à\u0000\u0000\u0000\u001c\u0000áà\u001c\u0006\u0000\u001c\u0000|\u0000\f\u0000\u001e\u0000\u0000\u0000\u0001À\u000e\u000e\u0001Ãà\u0007À\u001f€\u0000`\u0000@\u0000\u0000\u0000\u0018\u0000 \u0000\u000e\u00008\u0000@\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "(repeat)": "\u0000T\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0004\u001f€\u0003€ü\u0004\u0000\b0A\b\b|\f~\u0000@\u0000Â\r\u001f€„ÀD\u0000\u0004\u0000\u0004`°\u0000\b\u0004\u0000@\u0000@\u0000f\u001e\u0000\u0001€@\u0007ü\f\u0000\u0006açþ\u0018\u0004\u0000@ÀÀ\u0000$\u0006oa€AÆ\b\f\u0000\u0002@Wþ\u0018\u0004\u0004y€À\u0000$\u000f\u0000\u0001€ÀDð\f\u0003\u0002Aø`\u0018\f\u0004Ç\u0000À0&\u0000à\u0000ÀIÜ\f\u0002\u0002`ð\u0000\u0018\u0004°@À`f\u000bŸ€\u0007\u0000`\u0000\u0006\f\u0006!£l\u0001à\u001fÿà?€C\u0012f`\u0018\u0001‡þ\u0000à\f\u0011\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000€", - "music": "\u0000$\u0011\u0000\u0000€\u0000\u0000\u0000\f\u0000ƒ\u0000?ÿ\fü@@€hX\u0006\u0018\u0000„\u0000a€\u000fÀÿ‚…€\u0000\u0000èL\u001fþ\u0018üA€`\u0000\u0000\u0018\u0006\u00000\u0001€aÿþ\u001fþ\u0000ü\u0001€`\u001b`\u0018\u0006\u00073ÿáÃ\u000e\u0018\u0006\b0\u0000", - "Auto snooze": "\u0000}\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\f\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00004\u0000`\u0000\u0000\u0000À\u0000ÿ€?ð\u0000\u0000\u0003þÀ\u0003\u0000\u0000\u0000\u0006\u0000\u000fþ\u0001ÿÀ\u0000\u0000?ú?ÿ€\u0000\u00000\u0000\u0000`\u0000\u0004\u0000\u0000\u0000\u0001€ÿø\u0000\u0000\u0001€\u0000\u0003\u0000\u0000`\u0000\u0000\u0000\f\u0000\u001e\u0000\u0000\u0000\u000e\u0000\u00000\u0001‚\u0000\u0000\u0000\u0000À\u0001ð\u001fÿ\u0000\u0000\u0001€\u000e0\u001fÿ\u0000\u0006\u0000\u001d€ÿø\u0003>\u0000\u0018\u0000\u001f\u0000ÿø\u0000`\u0001Ì\u0000\u0000\u0000\u0018\u0010\u0001À\u00008\u0000\u0000\u0000\u0007\u0000\u001c`\u0000\u0000\u0000À\u0000\u000f\u0000\u0001à\u0000\u0000\u0000<\u0003ƒ\u0000\u0000\u0000\u0006\u0000\u0001Ì\u0000\u0019€\u0000\u0000\u000708\u0018\u0000\u0000\u00000\u0000\u001c0\u0001†\u0000\u0000\u0000pÀ\u0000À\u0000\u0000\u0001€\u0001ÀÀ8\u0018\u0000\u0000\u0007\u0003\u0000>\u0000\u0000\u0000\f\u00008\u0003\u0007€\u0000\u0000\u0000à\f\u0001à\u0000\u0000\u0000`\u0001€\u00180\u0000\u0000\u0000\u0006\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "week": "\u0000D\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u00000\u0007ÿ€\u0000\u0000\u0000\u0000\u0003üÿø\u0000\b\u0000\u0000\u0000ì\u0001€\u0001€\u0000\u0000\f\u0006À\u0018\u0000p\u0000\u0000\u0000ÀL\u0001€\u000e\u0000ÿø\u0018\fÀ\u0018\u0001À\u000fÿƒ\u0000Ä\u0001€|\u0000\u0000\u0000\u0000\u0018\u0000\u0010\u001cÀ\u0000\u0000\u0000\u0001€\u0003\u0001Œ\u0000\u0000\u0000\u00000\u0000`\u0000À\u0000\u0000\u0000\u0006\u0000\u001c\u0000\f\u0000\u0000\u0000\u0001À\u000f€\u0000À\u0000\u0000\u00008\u0000à\u0000\f\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "circle 1": "\u0000Q\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\f\u0000\u0000\u00000\u0000\u0000€\u0000\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0018À\u000f\u0001\u0003\u0000\u0000\u0000\u000fð\f`\u000f€Á€\u0000\u0000\u000fü\u00060\u0000Ãÿø\u0000\u0000\f\u0006\u0003\u0018\u0000aÿü\u0000\u0000\u0006\u0002\u0001Œ\u00000\u00100?þ\u0006\u0003\u0000Æ\u0000\u0018\b\u0018\u001fÿ\u0006\u0001€c\u0004\f\u0004\f\u0000\u0000\u0000\u0001€1†\u0006\u0002\u0004\u0000\u0000\u0000\u0000À\u0018Æ\u0003\u0000\u0006\u0000\u0000\u0000\u0000À\bf\u0001€\u0006\u0000\u0000\u0000\u0000À\f7\u0000À\u000e\u0000\u0000\u0000\u0001À\u000e\u001e\u0000`\u001e\u0000\u0000\u0000\u0001À\u000e\u000e\u0001þ\u0004\u0000\u0000\u0000\u0001€\u0002\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "circle 3": "\u0000Q\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\f\u0000\u0000\u00000\u0000\u0000€\u0000\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0018À\u001f\u0003\u0000\u0000\u0000\u000fð\f`\u000fàÁ€\u0000\u0000\u000fü\u00060\u0000\u001bÿø\u0000\u0000\f\u0006\u0003\u0018\u0000\rÿü\u0000\u0000\u0006\u0002\u0001Œ\u0000\f\u00100?þ\u0006\u0003\u0000Æ\u0000<\b\u0018\u001fÿ\u0006\u0001€c\u0004\u0007\u0004\f\u0000\u0000\u0000\u0001€1†\u0000Â\u0004\u0000\u0000\u0000\u0000À\u0018Æ\u0000`\u0006\u0000\u0000\u0000\u0000À\bf\u00000\u0006\u0000\u0000\u0000\u0000À\f7\u0000\u0018\u000e\u0000\u0000\u0000\u0001À\u000e\u001e\u0007ø\u001e\u0000\u0000\u0000\u0001À\u000e\u000e\u0001ø\u0004\u0000\u0000\u0000\u0001€\u0002\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "circle 2": "\u0000Q\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\f\u0000\u0000\u00000\u0000\u0000€\u0000\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0018À\u000f\u0003\u0000\u0000\u0000\u000fð\f`\u001fàÁ€\u0000\u0000\u000fü\u00060\u00003ÿø\u0000\u0000\f\u0006\u0003\u0018\u0000\rÿü\u0000\u0000\u0006\u0002\u0001Œ\u0000\u0004\u00100?þ\u0006\u0003\u0000Æ\u0000\u0006\b\u0018\u001fÿ\u0006\u0001€c\u0004\u0006\u0004\f\u0000\u0000\u0000\u0001€1†\u0006\u0002\u0004\u0000\u0000\u0000\u0000À\u0018Æ\u0006\u0000\u0006\u0000\u0000\u0000\u0000À\bf\u0006\u0000\u0006\u0000\u0000\u0000\u0000À\f7\u0006\u0000\u000e\u0000\u0000\u0000\u0001À\u000e\u001e\u0007\u0000\u001e\u0000\u0000\u0000\u0001À\u000e\u000e\u0003þ\u0004\u0000\u0000\u0000\u0001€\u0002\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "show widgets": "\u0000y\u0010\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000À\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000`\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0004\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0002\u0000\u0001ñ8\u001f\fa€c\fAì=ƒÇñó˜æ\u001dÆ8À1Æ!Þ;Ç1ƒ™€a˜3\u001c@\u0018â\u0011‡0â\fA€À Ì\u0018Š`\u0004S\bÁ˜3\u0006 À<\u0010f\fm0\u0003i„`Ì\u0019ÿ\u0010<\u0007ˆ3\u00064Ø\u0001¦Â0f\fÀ\b\u0007€D\u0019ƒ\u001a(\u0000ÑA\u00183\u0006`\u0004\u0000@\"\fÁ‡\u001c\u00008àŒ9‡\u0018\u0002\u0000&1\u0006;ƒŽ\u0000\u001cpC¼wŽq†3ðƒ\u000f‡\u0000\f8 ö\u001eÁð{ð\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000", - "heartrate": "\u00005\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 `\u0004\u0010\u0001À\u0001\u0002\u0001,€\u0007\u0000\b\u0010\rD\u0000\f\u0000Çø\b`\u0000 \u001f°Gûø\u0010\u0000\u0011\u0002\u000e‘„€€ˆ\u0010׌d\u0006\u0004@„\u000ec 0{ü\bR\u0019\u0000\u0018#øðˆ\u0006x\u0006Ì@°D\bf\u0018b\u0004‚ CàÃ\u0010 \u0011‚\u000f\u000f\u0000Ç\u0000ð|Î\u0007ð<@Ž,0\u0000\u0001Â\u0004\u0000\u0000\u0000", - "circle 4": "\u0000R\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0006\u0000\u0000\u0000\u0018\u0000\u0000@\u0000\u0000€\u0000\u0000\u0006\u0000\u00060\u0000p `\u0000\u0000\u0001þ\u0001Œ\u0000<\f\u0018\u0000\u0000\u0000ÿÀc\u0000\u000b\u001fÿÀ\u0000\u0000`0\u0018À\u0006Çÿð\u0000\u0000\u0018\b\u00060\u00030 `ü\f\u0006\u0001Œ\u0000Œ\b\u0018\u001fÿ\u0006\u0001€c\u0004c\u0002\u0006\u0000\u0000\u0000\u0000À\u0018Ã\u0010À\u0000\u0000\u0000\u00000\u00061Œ0\u0000À\u0000\u0000\u0000\u0018\u0001\fÃþ\u0000`\u0000\u0000\u0000\f\u0000Ãp\u0003\u0000p\u0000\u0000\u0000\u000e\u0000pð\u0000Àx\u0000\u0000\u0000\u0007\u000088\u00000\b\u0000\u0000\u0000\u0003\u0000\u0004\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "battery warn": "\u0000}\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000$@\bÀ\u0000\u0001@\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u000fú\u0000f\u0000\u0018m\u0000\u0000\u0007ÿ\u0000ÀÀ\u0000\u00000\u001f†0\u0000à \u0000\u0000?ø\u0006\u0006\u0000\u0000\u0001ý˜?þ\u0006\u0018\u0000\u0000\u0000\u0000\u000000\u0000\u0000\u0018>ƒ\f\u0000 À\u0002\f\u0000\u0000\u0001€\u0000\u0000½\u001c\u0010`\u0001\u0006\u0001˜`ÿü\f\f\u0000\u0000\u0001kø\u0003\u0000\u0018\u0010\u0006c\u0007ÿà``ü\u0000ÐOÿðÀÀ3\u0010\u0000À\u0003\u0003\u0003ÿà\u0003\u0000\u0000\u0000\u0006\u0006\u0000Á€\u0006\u0000\u0018\u0018\u0000\u0000\u000fÿð\u0000\u0000 \u0010\u0000\f\u00000\u0000ÀÀ\u0000\u0000\u001fþ\u0007ÿƒ\u0000À\u0000à\u0001€\u0000\u0006\u0000\u0000\u0000\u0000\u0000 \u0004\u0018\u0006\u0000\u000e\u0000\u0018\u0000\u0000`\u0000\u0000\u0007ÿ\u0000!€\u0018\u0000à\u0001À\u0000\u000e\u0000\u0000\u0000\u0000\u0000\b\u0001\u001c\u0000à>\u0000<\u0000\u0001à\u0000\u0000\u0001ÿàø@\u0002\u0001€\u0001€\u0000\f\u0000\u0000\u0000\u000fÿ\u0003\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\b\u0010\u0002\u0000", - "valid period": "\u0000F\u0011\u0000\u0000\u0000\u0004\u0004\u0002 \u0000\u0000\u0000\f\u0000\u0018\u0010\bŸ‡çð0\u0000`@cb\u0010ßÿÏó\u0003ÿˆBC\u0004\u0000\u0000\u001fÂ&!ùü0\u0000&3\bŸ„$\u0011ÿá\fÌ>~\u001fŸÎ\u0001Œ30‰ˆ@\u0003h\u0006\u0001\fÂ&!\u001fÅ?øl3\u000f˜„C\u0010€`àŒ\"~\u0011\fB\u0001‚1ˆGñ\u000fþ\u0007\u0018þ!\u0010D \u00186B\u0000\u0010„\u0010€C‹\u00186B\u0010\u0000B\u000f\b\tá‹8@\u0003\b\u0000\u0000\u0000\u0004\bá\u00008", - "maximum": "\u0000$\u0011\u0000\u0000\u0000\u00000\u0001ÿà\u0003\u0000\u0018\u0002\u00000\u0001ÿà\u0003\u0000\u0018\u0002\u00000\u0001ÿàÿþ\u0000\u0000\u00000\u0007ÿø\u0003€1€\u00008\u0003ûð\u0006À1ƒ\u0000D\u0003\u001a \f`?¶\u0001ƒ\u0003\u0019À0\u0018?Ü\u000e\u0000ǛùÀ\u0006\u0001¡€\u0000\u0000", - "weather circle": "\u0000Ž\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0010?\u0000\u0000\u0001\u0003\u0000\u0000\u0000\f\u0000\u0000 \u0000À\u0000\u0000\u0000@Ð\u0000\u0000\u0004\f\u0000\u0000\u00000\u00001€ø\u0000\u0000\u0001\u0003 \u0000\u0000\u00100\u0000\u0000\u0000ÿ\u0000Æ\u0003ÿà\u0000\u0000\u0006\f\u0000\u0000\u0000`À\u0000\u0000\u0007þ\u0003\u0018\f\u0001€\u0000\u0000ÿþ\u0000\u0000\u000fÿà\u0000\u00000\u0018\f`0\u0006\u0003ÿ\u0003ÿø\u0000\u0000?ÿ€\u0000\u0000À@1€À\u0018\u000fü\u0001\u0003\u0003ÿà\u00100?þ\u0006\u0003\u0000Æ\u0003\u0000`\u0003\u0000\u0004\f\u000fÿ€@Àÿø0\f\u0003\u0018$\u0001€\f\u0000\u00100\u0000\u0000\u0001\u0003\u0000\u0000\u0000\u0000`\fa€\u0004\u00000\u0000@€\u0000\u0000\u0004\b\u0000\u0000\u0000\u0001€1Œ\u00000\u0000À\u0000\u0006\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\f\u0000†`\u0001€\u0003\u0000\u00000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000`\u0006\u001b€\u001c\u0001ÿà\u0003€\u0000\u0000\u00008\u0000\u0000\u0000\u0007\u00008x\u0003à\u0007ÿ€<\u0000\u0000\u0000\u0003À\u0000\u0000\u00008\u0001ÁÀ\u000e\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0001€\u0002\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "minimum": "\u0000E\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0003ü\u0000\u0000\u0000ü\u0000À\u0003þ\u0007ÿƒÿð\u0006\u0000\u00000?ü\u0000\u0003\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0003\u0000\u0010\u0000\u0000\u0000\u0000\u0001€\u0018\u0000þ\u0000\u0000\u0000\u0000\u0018\u0001†\u0000þ\u0000\u0000\u0000q€\f0\u00000\u0000\u0000\u0001Ü\u0000`À\u0000\u0000\u0000\u0000\u0003À\u0006\u0006\u0000\u0000\u0000\u0000\u0000\f\u00000\u0018ø\u0000þ\u00000\u0001\u0000Çü\u0003ÿø\u0000À\u001fÿ\u0000ü\u0000\u0000\u0000\u0003\u0001ÿ˜\u0000`\u0000\u0000\u0000\b\u0000\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "step length": "\u0000X\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001c\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0014\u001fü\u001fð\u000fþ\u0000\u0000\u0000\u0000\u001c\u0018\u0000?ø\u000fþ\u0000\u0000\u0000ÿø\u0018\u0000\u00000\u0000\u0000\u0000\u0000\u0000ÿð\u001fü\u00000\u0000\u0000\u0000 À\u00000\u0010\u0000\u0000`\u001fÿƒ0À\u00000\u001fü\u0000`\u001fÿ˜À\u00000\u0018\u0000\u0000À\u0000`\u0001˜€\u0000`\u0018\u0000\u0001À\u0000`\u0000Á€\u0000`ÿþ\u0001à\u0000`\u0000\u0001€\u0000À\u0010€\u00070\u0000`\u0000\u0003€\u0001À\u0010Ì\u000e\u0018\u0000À\u0000\u0007\u0000\u0003€\u0010x\u001c\f\u0001À\u0000\u000e\u0000\u0007\u0000\u0010pp\u0006\u0007€\u0000|\u0000<\u0000\u0011¼`\u0006\u0006\u0000\u0000`\u0000p\u0000\u001f\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000", - "distance goal": "\u0000G\u0011\u0000\u0000\u0000\u0003\u0005\u0000\u0000\u0000`\u0000|ÿ?Ë\u0003ÿÀÏü‰€¶\u0006\u0001ƒÁ\u0012\u0000\u0004\b\u0001\u0003\u001fâ$\u0001ºØ\u0010\u0002\u001f¯dL\u0003w 0\f\fRϟÇ/`ø\u0018ÿ„ ÷à€\u00108\u0000\bA\u0003\t\u0001\u0000 ø\u0000\\‚\u0006\u0012\u0003\u0000Á×ø±ü¶\u0007ÿ‡€\u0001C\u0000µ~\b\u0001\u000b?ò„\u0001J\u0010\u0002\u0016\u0006\u0005¨\u0002ý 0\f\fM\u000fØ\u0004\u000bøø\u0018›4\u0003\u0016Çæ\u001c\u0000\"CÀ\b\u00002\u0000\u0000\u0000\u0000\u001c", - "Launcher Settings": "\u0000|\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0003à\u0003\u0000?ø0\u0000\u0000\u001f€\u0000\u0000\u0000\u0000\u0018&\u000fÿãÿ\u0003À\u0000À\u0000\u0000\u0000\u0000\u0007⠀\u0006\u0000\u0000\u000e\u0000\u00060\u0000 \u0000\u0000\u0000\u0000b\b\u0000`\u0000\u000000\u0001\u0000\u0002\u0000\u0000\u0000\u0003Æ \u0000\u0000ø\u0000\u0002\u0000\u0010\u0000?à\u0000\u0000\u0000Çÿ‡ÿÀ\u0000`ÿþ\u001fþ\u000fÿ€\u0000\u0000\u0003\u0000\u0000\u0018\u0000\f\u000fÿÁ0Àÿø|ÿ\u00000\u0000\u0001€\u0000À\u0003\u0000\u0003\f\u0000\u0000\u0000\u000603\u0000\u00000\u0000\u0018\u00000\u0000\u0013€\u0000\u0000\u0000#\u0002?€\u0007\u0000\u0003\u0000\u0003\u0000\u00010\u0000\u0000\u0003Ã`#\u0000\u0000à\u0000à\u0000`\u0000\u0018\u0000\u0000\u0000$\u001e\u00070\u0000<\u0000|\u0000\u000e\u0000\u0001€\u0000\u0000\u0002AÀÛ\u0000?\u0000?\u0000\u0003€\u0000\u0018\u0000\u0000\u0000$>\fÿÀ\u0001\u0000\u00000\u0000\u0000€\u0000\u0000\u0003Þ9ƒþ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000%€\u0000\u0000", - "TAP right top/bottom": "\u0000n\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000@\u0000\u0001\u0000\u0000\u0000\u000fþ\u0018\u000fÀ\f\u0000\u0001\u0000\u0006\u0004\u0000?ÿÀp3À0\u0000\u0004\u0000\u001bÿø\u0001\u0000\u0004\u0003@Ã?ÿÀ\u0010\u0000@À\u0000\u0004\u0000\u0010\tƒ\f\u0006\u0000\u0000@\u0003\u0003\u0000\u0000\u0010\u0000@f\f00\u0000\u0001þ\f\b\u0000\u0000@\u0001\u0001ˆ1ÀÀ\u0000\u0004\u0000 `\u0000\u0001€\u0004\u00040þ\u0006\u0000\u0000\u0010\u0000€\u0000\u0007€\u00100Ã\u0000þ\u0000@\u0006\u000fÿ\u0000\u0013\u0000@ÿ\f\u0003 \u0018\u0001\u0000\u0010`€\u0000F\u0001\u0006\u00060\u0000€`\u0004\u0000C\u0002\u0000\u0001\f\u0004\u0018\bÀ\u0002\u0001€\u0010\u0003\f\b\u0000\u0004\u0000\u0010`3\u0000\b\u0006\u0000@\b\u0000 \u0000\u0010\u0000C\u0000Ì\u0000?ø\u0003€ \u0000€\u0000@\u0000\u0000\u0000\u0000\u0000€aÿýÿü\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000", - "Font": "\u0000D\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000À\u0000\u0003\u0000ø\u0000\u0000\u000f\u0000\u00000\u0007ÿ€\u0003\u00008\u0000\u0003\u0000\u0000\u0018\u00000\u0000ÀÀ0\u0000\u0001€ÿà\u0000\b\u0003€\u0000\u0018\u001fþ\u0000\u0001€?€\u0003\u0000\u0007\u0000\u00000\u0003>\u00000\u0000ð\u0000\u0003\u00000 \u0006\u0000\u001b\u0000\u0000`\u0003\u0000\u0000à\u00030\u0000\f\u00000\u0000\u001c\u0000ã\u0000\u0003€\u0003\u0000\u0007€\u001c0\u0001ð\u00000\u0001à\u0000\u000f\u0000ü\u0000\u0003\u00008\u0000\u0000à\u0004\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Mark Unread": "\u0000Ÿ\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\f\u0001ÿð\u0000\u0000\u0001€\u0000\u0000\u0001ÿø`\u0000\u0006\u0006\u0000\u0000\u0000\u00183ÿð\u0000\u0000\u0003ü\u0000\u0000\u0003ÿðð\u0000\f\f\u0000\u0000\u00000°\u0000À\u0000\u0000\u000fü\u0000\u0000\u0000\u0000`p\u0000\u0018\u0018\u0000\u0000\u0000`€\u0001€\u0000\u00000\u0018\u0000\u0000\u0000!€0000\u0000\u0000\u0000À\u0000\u0006\u0000\u0000\u0000` \u0000\u0000\u0000f\u0000\u0000@``\u0000\u0000\u0001À\u0000\u0018\u000fÿ€À\u0003\u0000\u0000œ\u0000\u0001€ÀÀÿø\u0003ø\u001c`\u001fÿ\u0006\u0001€\u000f\u0000\u0001p\u0000\u0006\u0001ÿð\u0006|\u001dÀ\u0000\u0000\u0000\u0006\u0000\f\u0000\u0002@\u0000\f\u0003\u0003\u0000\u0000\u0000\f\b\u000f\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0004\u0000\u00000\u0006\u0006\u0000\u0000\u0000\u0018\u0000\f\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0018\u0000\u0000À\u0000\f\u0000\u0000\u00000\u0000\f\u0000\u0000\u0000\u0000À\u0000\u0000\u00000\u0000\u0007\u0000\u00000\u0000\u0000\u0000`\u0000\f\u0000\u0000\u0000\u0007\u0000\u0000\u0000\u0001À\u0000|\u0000\u0001À\u0000\u0000\u0000À\u0000\f\u0000\u0000\u0000\u001c\u0000\u0000\u0000\u000f\u0000\u0007à\u0000\u000f\u0000\u0000\u0000\u0001€\u0000\b\u0000\u0000\u0000`\u0000\u0000\u0000\u0018\u0000\u0004\u0000\u0000\u0018\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "start&lap/reset, BTN1: EXIT": "\u0000Ä\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0000\u0006\u0000À\u0001ÿ\u0000\f\u0000\u0000\u0000\u0001€\u0000x\u0000ð\u0000\u0000\u0000\u0001Àx\u0000``\f\u0000?ø\u0001ÿ€\u0000\u0000\u0018\u0000\fÀ\u0007þ\u0000\u0000\u0000ÿø\fÀ\u0006\u0006\u0000À\u0000\u0003\u0000\u001fø\u0000\u0000\u0001€\u0000Ä\u0000\u0000\u0000\u0000\u0000\u000fÿ\u0000Ä\u0000``\f\u001c\u00000\u0003\u0003\u0000\u0000\u0000\u0018\u0000\f@\u0000\u0000\u0000 À\u00000\f@\u0006\u0006\u0007ÿà\u0006\u0000`0\u0000\u0000\u0001À\u0000L\u0000ÿð3\f\u0000\u0003\u0000L\u0000``~\u0006\u0000`\fÃ\u0007ÿÀ\u001fÀ\u0007€\u000fÿ˜À\u00000\u0007€\u0006\u0006\u0000ÀÀ\f\u0001‡`ü\u0001Ÿ\u0000p\u0000\u00000\u0019ˆ\u0000\u0006\u0000p\u0000``\f\u0018\u0001À\u0000\u001e\u0000\u0000\u0000\u0018\u0010\rˆ\u0000\u0003\u0000Á€\u0000`\rˆ\u0006\u0006\u0000Ã\u0000\u001e\u0000\u0000À\u0000\u0000\u0001€\u0001€\u0000`\u0000\u0018\u0000\f\u0001€``\fp\u00070\u0000\u0018\u0000\u0000\u0000\u0018\u0000\u0018p\u0000\u000e\u0000\u0003€\u0001À\u0018p\u0000\u0006\u0000Â\u0000á€\u0003\u0000\u0000\u0000\u0001€\u0001ƒ\u0000\u0001À\u0000p\u00008\u0001ƒ\u0000\u0000À\f\u0000\u001c\f\u0000à\u0000\u0000\u0000\u0018\u0000\u001cø\u0000x\u0000\u000e\u0000\u0007\u0000\u001cø\u00008\u0000À\u0007\u0000`<\u0000\u0000\u0000\u0001€\u0000øÀ~\u0000\u0007À\u0003À\u0000øÀ\u000f\u0000\u000fþ`\u0006\u0003\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0007\u0000\u0000`\u0000p\u0000\u0000\u0000\u0000À\u0000?à\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "App Source\nNot found": "\u0000j\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000p\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0001ÿø\u0000\u0007\u0006\u0006\u0002\u0000`\u0000\u0000\u001fðþ\u000fÿ€\u0018\u0000\u0000\u000fþ\u0000\u0001ƒÿÀ``0\u0006\u0000\u0000\u0000\u0003\u0000\u0010À\u00000\u0018\u0018\u0006\u0003\u0000\u0000\u0000\u0000À\u0006`\u0000\f\u0006\u0006\u0001€À\u0000\u0000\u0000`\u00018\u0000\u0003\u0001€00ü\u0000\u0018\u0000\\\u0000\u0001€``\b\u0018\u001fÿ\u0000\f\u0000\u0012\u0000\u0000`\u0018\u0018\u0000\u000e\u0000\u0000\u0000\u0007\u0000\u0004\u0000\u00000\u0006\u0006\u0000\u0003\u0000\u0000\u0000\u0001à\u0003\u0000\u0000\u001c\u0000\u0001€\u0001€\u0000\u0000\u0001Ì\u0000À\u0000\u000e\u0000\u0000À\u0001À\u0000\u0000\u0000á€à\u0000\u0007\u0000\u0000à\u0001à\u0000\u0000\u0000p0ð\u0000\u000f\u0000\u0000ð\u0001à\u0000\u0000\u0000p\u00060\u0000\u0007\u0000\u00000\u0000`\u0000\u0000\u0000\u0018\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Show clocks": "\u0000Y\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0002\u0001\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0004\u0001\u0000€\u0000\u0000\u0001€\u0000\u0000\u001f\u0006\u0000À@\u0003€?ÿ\u0007ÿ̟ãü \u000fø\u0000`\u0000\u0000\u0004@€\u0000\u0010\u000eÎ\u00000\u0000\u0000\u0002 @~\u0018\fA‡ÿà\u0000\u0001\u0013þ\u0000Œ À\f\u0000ÿþø\u0000\u0000\u0002\u0004\u0010 \u0006\u0000\u0001€d\u0002\u000fÁ\u0002\u0018\u0019ÿþ\u0000@\"À\u0000ƒ\f\f\u0006À\u0002 \u0011\u0000À\u0000A†\u0004\u0006#\u0003\u0013\bˆAø B\u0006\u000e\u001f\u0001ˆÇÆ Œ\u00103\u0007\u001d\u0006\u0001„3!\u0010F\b\u000f\u0007\u0000‚\t\u0000\b3\u0004\u0003ž\u0000LpÁ\u0006\u0000\u001c\u001f‚\u0000\u0004\u0000>\u001cA€\u0000\u000e\bÁ\u0000\u0000\u0000\u0010\u0000\u0003À\u0000", - "STEPS": "\u0000G\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000Pÿ€ð\u0000\u0000\u0000\u0000ãÿ€ÿà\u0000\u0000\u000fÿ€\u0006\u0000\u0000\u0000\u0000\u0000\u001fþ\u0000\f\u0000\u0000\u0000\b0\u0000\f\u00000\u000fÿÁ˜`\u0000\u0018\u0000`\u001fÿ˜À\u00000\u0001€\u0000À\u00031\u0000\u0000À\u0007\u0000\u0001€\u0003\u0006\u0000\u0001€\u000f\u0000\u0003\u0000\u0000\f\u0000\u0006\u0000s\u0000\u0006\u0000\u00008\u0000\u001c\u0001Ã\u0000\u0018\u0000\u0000à\u0000p\u0007\u0003\u0000p\u0000\u0003€\u0001À8\u0003\u0003À\u0000>\u0000\u001e\u0000`\u0006\u0006\u0000\u0000`\u0000p\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Vector font size": "\u0000Ç\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\f\u0000\u0004\f\u0000\u0001€\u0000 \u0006\u0000\u0000À\u0000\u0000\u0000\u0007\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0018\u0000\b\u0018\u0000\u0007\u0000\u0001`\u000fð\u0003ÿ\u0000\u0000\u0000Àø\u0000\u0000\u000f\u0000\u00000\u0000\u00100\u0000\u001c\u0000a@?ð\u0007þ\u0000\u0000\u0001ÙÀÿð\u0000`\u0007\u0000\u0000`\u00000`\u0000p\u0001á\u0000À`\u0018\u0018\u0000\u0000\u0006 À\u0000`\u0000À\u0003\u0003\u0000À\u0003ÿø\u0003€\u0006`\u0001€€`0\u0000\u0000\u0018A€\u0000Àð\u0000\u0004\u0001À\u0007ÿð\u000f\u0000\u001c`\u0006\u0003\u0001˜`ÿø \u0000\u0001ÿà\u0000\u0018\u0003ø\u0001\u0003\u0000~\u0000p`\u0018\u0006\u0006\u001dÿðC\u0003\u0000\u0006\u0000\u000e\u0000\u0000`\u0006|\u0002\u0006\u0003Ì\u0000À`\u0000\u0018\u0000\u000f\u0000\u0000\u0001†\u0006\u0000\f\u0000<\u0000\u0000À\f\b\u0004\f\u000e\u0018\u0001\u0000`\u00000\u0000\f\u0000\u0000\u0003\f\b\u00000\u0000Ø\u0000\u0003\u0000\u0018\u0000\b\u0010\u00000\u0000\u0000`\u0000À\u00000\u0000\u0000\u0002\u00100\u0000à\u00030\u0000\f\u00000\u0000\u0000`\u0000`\u0000\u0000`\u0003\u0000\u0000À\u0000\u0000\u0006`à\u0003€\u001c`\u0000p\u0000`\u0000\u0001€\u0000À\u0000\u0000`\u001c\u0000\u0007\u0000\u0000\u0000\u0007ƒ€\u001e\u0000pÀ\u0007À\u0000À\u0000\u000e\u0000\u0001€\u0000\u0000\u0000p\u0000<\u0000\u0000\u0000\u0007<\u0000ð\u0000\u0007€~\u0000\u0001€\u0000x\u0000\u0003\u0000\u0000\u0000\u0001€\u0000`\u0000\u0000\u0000\u0000 \u0003€\u0000\u000e\u0000@\u0000\u0003\u0000\u0000@\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "View Message": "\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000Ø\u0006\u0000\u001fü\u0000\u0000\u0000\f\u0000\u0000\u00000\u0000\u0000\u0000\u000e\u0003@0\u0000À \u001fð\u0000`\u0000\u0000\u0001€\u0000\u0000\u0000<\b?þ\u0004\u0001\u0000c\u0000\u0003\u0000\u0000\u0000\f\u001c\u0000\u0000\u0000 \u0001ø\u0000?ø\u00000\u000e\u0010\u0000Aƒÿð\u0000\u0000\u0000\u0003\u0001€\u0001€@\u0003\u0000=€3\f\u001f€\u0000\u0001€\u0018\u000f€\b\u0002\u00000\u0000|\u0000Ì`\u0018\u0018?þ\u000f\u0001€æ\u0010ð\u0007ø\u0000à\u0006b\u0000Áÿð\u001c\u001c\f\u001fƒ\u0000€à\u000fÀ\u00180\u0006\u0018\u0000\u0000\u0000\u0001ÀÃà\u0010\u0004\u0007\u0001€g\u0000\u0001€1À\u0000\u0000\u0000\f\u0006t\u0000ÿà \u0004\u0006\u001c\u0000\u001c\u0001„\u0000\u0000\u0000\u0001À\u0006 \u0000Ì\u0000x `@\u0001À\f\u0000\u0000\u0000\u0000\u001c\u0000!\u0000\u0004@\u0003ã\u000e\u0000\u0000\u001c\u0000`\u0000\u0000\u0000\u0003€\u0001\u0000\u0000b\u0018\u0011¹à\u0000\u0007À\u0003ÿ€\u0000\u0000ø\u0000\u000fü\u000e\u0019ÀÿŒ\u0000\u00000\u0000\u0007ü\u0000\u0000\u0006\u0000\u0000?áÀü\u0003ð\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Are you sure": "\u0000y\u0011\u0000\u0000€\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0006\u0010@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0001ˆ``\u00000\u0004\f\u0001\u0000\u000e\u0000\u000f€\u0018\u0000Ä 0~\u0018\u0003\u0006\u0000À?à\u000egÿð\"0\u0019ÿ\f\u0001ƒ\u0000`;8\u0000\u0018\u000f\u0000\u0001\u0000\f\u0000\u0006\u0000A€\u00101\u0006\u0000\f\u000f€?þ\u0006\u0000\u0003\u0000 À\b0ƒ\u0000\u0004\r`\u0000\u0001\u0003\u0000\u0001\u0000\u0018@\u0006\u0010@€\u0006\u0004˜\u0000\u0000€\u0000€\f \u0003\b``\u0006\u0006F\u0000\u0000@Œ\u0000@\u0006\u0010\u0001Œ00\u0006\u0006!ÿàD\u00002\u0003\f€Æ\u0018\u0010\u0002\u0006\u0018à\u0000\u00102\u0000\u0019\u0001†@a\b\u0018\u0000\u0006ÿ˜\u0000\b\u0019\u0000\r€Ã`0Ì\u001c\u0000\u0002\u0006\u0000\u0000\u0004\fÿ†€a \u0018<\u001c\u0000À\u0002\u0000?þ\u0006?ÁÀ\u0000p\u0000\u000ex\u0000`\u0001\u0000\u0000\u0001\u0003\u0000\u0000@\u0000\u0010\u0000\u0000\u0010\u0000\u0000\u0000€\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Bluetooth": "\u0000{\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000<\u0000€\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u00060\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0001ÿ\u0007ÿÀÆ\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000ðÿð\u0018À\u0000\u0000\u0000`\u0000\u0006\u0000\u0000\u0000\u0000\f\u0000\u0006\u0003\u0018\u0000\u0000\u0000\f\u0000\u0000À\u0000\u0000\u0000\u0001€\u0000Àc\u0000\u0000\u0000\u0001À\u0001ÿ€\u0000\u0000\u0000`\u0000\u0018\f`\u000fÿ€?€?ð?þ\u0000\f\u0000\u0006\u0001Œ\u0011ÿð\u0006|\u0006\u0006\u0007ÿÀ\u0003\u0000\u0000À1†\u0000\u0000\u0000À€ÀÀ\u0000\u0000\u0000à\u00000\u00061€\u0000\u0000\u0018\u0000\u0018\u0018\u0000\u0000\u0000\u001e\u0000\u000e\u0000†`\u0000\u0000\u0003\u0000\u0000\u0002\u0000\u0000\u0000\u000e`\u0003€0Ü\u0000\u0000\u0000`\u0000\u0000À\u0000\u0000\u0003†\u0001à\u000e\u001e\u0000\u0000\u0000\f\u0000\u00000\u0000\u0000\u0000à`ð\u0003ƒ€\u0000\u0000\u0001€\u0000<\u0000\u0000\u0000p\u00068\u0000 \u0000\u0000\u00000\u0000\u0006\u0000\u0000\u0000\f\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Unread timer": "\u0000|\u0011\u0000\u0000À\u0004\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\f\u0000@`\u0000\u0000\u0000`\u0000\u0000`\u0000\u0000\u0000\u0000\u0000À\u0006à\u000e\u0000\u0006\u0000\u0000\u000e\u000fÿ€\u0000\u0003ÿáø`\u0007ü\u0000ÿÀ\u0001Àÿü\u0000\u0000\u0000À\u0000\u0006\u0000ìà\u000fü\u00008\u0000\u0001€\u0000\u0000\f\u0000óü\u0018ƒ\u0001€\u000e\u0000\u0000\u0018\u0000\u0000\u0000À\u0000\u0000\u0003\b00\u0018\u0001à\u0000\u0003\u0000\u0000\u0003ÿð\u0000\u0000 \u0006a€~\u0000\u0000`?þ\u0001à\u001fÂ\u0018\u0018ð\u001e`\u0003Œ\u0003ÿà>\u0000\u0006\u0004a€\u000f\u0003†\u0000\u001dÀ\u0000\u0000\u0002ð\u0000iF\u0018\u0010\u0000`\u0000`\u0000x\u0000\u0000\u0000m€ð!\u0003\u0000\f\u0000\u0006\u0000\u0003\u0000\u0000\u0000\fÌ\t\t\u00030p\u0001€\u0000`\u0000\u0018\u0000\u0000\u0003Œp‘\u001e\u000e\u0000p\u0000\u0006\u0000\u0000À\u0000\u0000pÉ\u0011`ç€\u001e\u0000\u0000`\u0000\u0006\u0000\u0000\u0004\f\u0000÷\u0016\u0000 \u0001€\u0000\u0006\u0000\u0000 \u0000\u0000\u0000À\taÀ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Delete all messages": "\u0000Ç\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0001\u0000@\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000l\u0000\u0000\u0012`ˆ\u0006\u0000\u0000\u0010\u0000\u0007\u00008\u0000\u0001€\u0000\u0000\u0006\u0000\u0000\u0000\u0001Àh\u0003€4‰\u001fÿð\u0000Ðþ\u0003þ\u0000\u0003\u0000\u0000\u0000\f\u0000\u0000\u0000\u0001à@?à\t\u0012?ü\u0000x€á€\u000eÎ\u0000\u0006\u0000\u0000\u0000\u00188\u0000\u0000\u0000@\u0000ìàÿ$@0\u0000Ø\u0000\u0006\u00001\u0006\u0007\b\u0000 Áÿø\u0000\u0000\u0000\u0001ƒ\u0010aþHƒà\u00038\u0000\u0018\u0000Â\f\u0007°\u0006aƒð0\u0000\u00000\u0003\f Â\u0004‘\fÀ\f8\u00000\u0001\u0004\b\u0003à\u0006c\u0000ÀÁÿðx\f\u0010@„\t\"\u0010À08\u0000À\u0002\u0018\u0018\u0001À\fÄ\u0001ƒ\u0003ÿà88!òD!€À0\u0001€\f00\u0007à\f\u0018\u0003\f\u0000\u0000\u0000\u0000àÃ\u0003\u0010$ˆg\u0000\u00000\u0003\u0000\u0018`@\fà\u00000\u00068\u0000\u0000\u0000\u0001†\u0004 I\u0010v\u0000\u00000\u0006\u0000\u0010€0à\u0000à\f \u0000\u0000\u0000\u000e\u0001\b\u0018’ \u0018\u0000\u00000\u0006\u00003\u0007\u0000À€\u0003€\u0018\u0000\u0000\u0000\u00008\u00030p\u0004@0\u0000\u00000\u000e\u0000<\u001c\u0007\u0000\u0000\u000e\u00000\u0000\u0000\u0000\u0001À\u0003ÁÁ\u0002\bÀ\u0000\u0000\u0000\u000fÀ9à<\u0000\u0000ø\u0000ð\u0000\u0000\u001f\u0000\u0003ž\u0002\u0004\u0011\u0006\u0000\u0000\u0000\u0000\u0003€\u0001\u0000`\u0000\u0001€\u0000?à\u0000\u00000\u0000\u0000\u0010\u0004\u0018\"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\bqÄ", - "No Messages": "\u0000|\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0001°\u0010\u0000\b\u0000\u00000\u0000\u0000\u0000À\u0000\u0000\u00008\r\u0003\u0000\u0000€\u0000\u0003\u0000\u0000\u0000\f\u0000\u0000\u0000\u0001àAþà\b\u0000\u00000\u0000\u0000\u0000ÁÀ\u0000\u0000\u0002\u0000\u001fç\u0000€\u0001Â\u0000\b0þ\u0000\u0000\u0000\u0000``\u0018\u0018\u0000\u000f`\fÃ\u0007à`\u0000\u0000`\u0006\u0006\u0004\u0001€\u0000>\u0000f0\f\f\u001fÿ\u0007€À@À\u0018\u0000\u0000à\u0006b\u0000Áÿð\u001c\u001c\f\f\u0001€\u0000\u001f€0`\f0\u0000\u0000\u0000\u0003€ÀÀ\u0018\u0006\u0001œ\u0000\u0006\u0000Ç\u0000\u0000\u0000\u00000\b\f\u0001€`0à\u0000à\f \u0000\u0000\u0000\u000e\u0001À\u0018\u0004\u0006\u0004\u0000\u001c\u0000À\u0000\u0000\u0000\u0001À\u0011þ\u0001€ÁÀ\u0000\u0003€\f\u0000\u0000\u0000\u0000p\u0000\u0010ø\f\u0018x\u0000\u0001ð\u0000ÿà\u0000\u0000>\u0000\u0001ü€\u0006\u0000\u0000\u0018\u0000\u0003þ\u0000\u0000\u0003\u0000\u0000\u000f€\u0001À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Record Run": "\u0000y\u0010\u0000À\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000`À\u0000\u0000\u001fü\u0018\u00000\u0000\u001fþ\u0000\u0000\u00000°\u0000\u0000\u000fü\u000f\u0000\u0018\u0000\u000fÿ\u0000\u0000\u0000\u0018 \u0000\u0000\u0000\u0000\u0001À\f\u0000\u0000\u0001€\u0000\u0000\f\u0000\u0000\u0000\u0000\u0000\u000006\u0000\u0000\u0000À\u0000\u0000\u0007\u0000\u0000\u0000\u0003ÿÀ\u0000\u0013\u0000@\u0000`ÿø\u0003ø\u00000\u0001ÿð\u0000\u0019€`\u00000ü\u0001Ÿ\u0000<\u0000\u00000\u0000\u0018À`\u0000\u0018\u0000\u0000\u0000À€\f\u0000\u0000\u0018\u0000\f``\u0000\f\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0018\u0000\f0à\u0000\u0006\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u001c\u0000\f\u0018à\u0000\u0003\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u001c\u0000\u001c\rÀ\u0007ÿ€\u0000\u0000\f\u0000\u0000\u0000\u0000<\u0000|\u0007À\u0003ÿÀ\u0000\u0000\u0006\u0000\u0000\u0000\u0001ø\u0001ø\u0001\u0000\u0000\u0000 \u0000\u0000\u0003\u0000\u0000\u0000\u0000à\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Apps": "\u00001\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000à\u0000\u0000\u0000\u0000\u0000P\u0000oÿÀ\u0000807ÿàÿø\u0018\u0018\u00000ø\f\f\u00040\u0000\f\u0006\u0006\u00030\u0000\u0006\u0003\u0003\u00018\u0000\u0003\u0001€¸\u0000\u0003\u0000ÀÀH\u0000\u0001€`` \u0000\u0001€000\u0000\u0001À\u0000\u0018\u0018\u0000\u0001À\u0000\u00188\u0000\u0001À\u00008x\u0000\u0007€\u0000x0\u0000\u0007\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "BTNs 1:startlap 2:exit 3:reset": "\u0000À\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u001füÀÀ\u0000\u0007€\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000ø\u0000\u0000\u0000\u0002\u0000cÀàÀ\u0000\u000f€\u0000\u0002\u0000\u0000\u0001\u0002\u0000\u0000\u0000\u0003ü\u0000\u0000\u0000\u0000\u0010`€€àÀ\u0000\u0001€\u0000\u0002\u0000\u0000\u0001\u0002\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0010`€€°Ãà\u0001€\u0003ïçÀ¿ò\u001f\u0002ð\u0000\u0006\u0000<0ba€€˜Î`\u0001Žf\u0006pã\u0002\u0019Ø\u0000\u00040æ\u0018Â0\u0000€˜Ì\u0000\u0001Œ\u0002\u00000Á\u0002\u0000Ã\f\u0000\f0ƒ\r‚\u0010a€€ŒÌ\u0000\u0001€\f\u0002\u0000\u0010\u0002\u0000B\u0004\u0000\u0018\u0001ƒ\u000f\u0002\u0010`À€ŒÇ€\u0001€\u0007‚\u0003ð\u0002\u000fÂ\u0004\u00000\u0001ÿ\u0007\u0002\u0010`À€†Áà\u0001€\u0001â\u0006\u0010\u0002\u0018B\u0004\u0000`\u0001€\u0007\u0002\u0010`À€†À \u0001€\u0000\"\f\u0010\u00020C\u0004\u0000À\u0001€\r‚\u0010`À€ƒÀ \u0001€\u0000\"\f0\u00020Ã\f\u0001€\u0000À\u0019‚\u0010c€€Ì`\u0001Œc\u000ep‚9Ø\u0003€0ç\u0018Â\u0018\u0000€ÏÀ\u000fñÁ琀ò\u001eBð\u0003þ0>0b\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Delete All Messages": "\u0000¢\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0004\u0001\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u00006\u0000\u0000\t0GÃ\u0000\u000f€\u0000\u0018\u0000\u0000\u0000`\u0000\u0000\u0000\u001c\u0006€8\u0003H‘±à\u0007\u0018\u0000\u0006\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0003À€À\u0012$HL\u0003\u0003\u0000\u0001€\u0000\u0000\u0006\u000e\u0000\u0000\u0000\u0010\u0000;8?É\u00121Àp8@\u0001\u0006\u000fÿÀ\u0000\u0000\u0000\f\u0018ƒ\u000fòE¸9ÿþ\u0007°\u0006aƒð0\u0000\u00000\u0003\f Â\u0004‘Éð@À€|\u0000Ì`\u0018\u0018?þ\u000f\u0001‚\b\u0010$X\u0010\u00000\u0000\u0007\u00003\u0010\u0006\f\u000fÿ€àà†\u0006?É\u0012\f\u0000\f\u0000\u0003ð\u0006\f\u0001†\u0000\u0000\u0000\u0000paˆ\u0012Dÿð\u0003\u0000\u0000Î\u0000\u0003\u0000c€\u0000\u0000\u0000\u0018\u0018`B\u0004‘0À\u001fþ\u0000aÀ\u0001À\u0018@\u0000\u0000\u0000\u001c\u0002\u00100ÿ$L’\u00000\u00000 \u0000à\u0006\u0000\u0000\u0000\u0000\u000e\u0000Ì\u001c A\u001ed€\f\u00008\u0000\u0000p\u0001€\u0000\u0000\u0000\u000e\u0000\u001e\u000e\b\u0010D10\u0003\u0000<\u0000\u0000ø\u0000ð\u0000\u0000\u001f\u0000\u0003ž\u0002\u0004\u0011\fF?ÿ\f\u0000\u00000\u0000\u0007ü\u0000\u0000\u0006\u0000\u0000\u0002\u0000ƒ\u0004Bp€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000!Ç\u0010\u0018\u0000", - "Vibration": "\u0000#\u0011\u0000\u0010\u0000\u0000\u0002\u0002?óü@D\u0000\u0004\b>€\u000fû÷×ð\u0010~\"\u0000\u001fÄÄ@\u0002ؘüI\u0013\u001dh\u000fâo-\u0011$MŶ?™‰³ƒ16`0F$Ä?؄šÀû\u0011³ÌþNr`€\u0000\u0000", - "Utils": "\u0000Ä\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000ÀÐ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000?ø\u0000\u0000\u0001ÿÀ\u0000p\f\u0006\u0000\u0000\u0003€\u0000\u0000\u0000`\u0000?ø\u0000\u0000\u0003ÿ€\u0000\u0000\u001fø\u0000\u000e\u0000À\u0000\u0000\u0000\u001e\u0000\u0000\u0000\u0007€\u0003ÿ€\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0001À\f\u001c\u0000\u0000\u0000 \u0000\u0000\u0000\u001c\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000p\u0007ÿà\u0000\u0000\u0000\u0006\u0003þ\u0000``\u0001\u0000\u0000\u0000þ\u00008\u0003ÿÀ\u000f\u0000~\u0006\u0000\u0000\u0006\u0000`?à\u0000\u0004\u0000\u0010\u001fÿ\u0007ÿà\u0007\u0000?þ\u0003ð\u0000ÀÁÿðx\f\u0000\u0006\u0000\u0000À\u0001\u0001ÿð\u0001€\u0000à\u0000\u0000Àó\u0000\f\u0018\u001fÿ\u0001ÁÀ\u0000`\u0000\u0018\u0000\u0010\u0000\u0000\u0000\u0018\u0000>\u0000\u0000\f\u001c0\u0000Ã\u0000\u0000\u0000\u00008\u0003þ\u0000\u0001€\u0001\u0000\u0000\u0000\u0001€\u000e`\u0000\u0001€\u0003\u0000\fp\u0000\u0000\u0000\u0003\u0000?à\u00000\u0000\u0010\u0000\u0000\u0000\u0018\u0000Æ\u0000\u00008\u00000\u0000Â\u0000\u0000\u0000\u0000à\u0000\u0006\u0000\u0006\u0000\u0001\u0000\u0000\u0000\u0003\u0000\u0000`\u0000\u0007\u0000\u0003\u0000\f\u0000\u0000\u0000\u0000\u001c\u0000\u0000`\u0001Àÿþ\u0000\u0000\u0000p\u0000\u0006\u0000\u0001à\u00000\u0000À\u0000\u0000\u0000\u0007\u0000\u0000\u0006\u0000ø\u0007ÿà\u0000\u0000\u001e\u0000\u0000`\u0001ø\u0000\u0003\u0000\u000fþ\u0000\u0000\u0003à\u0000à~\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0006\u0000\u001c\u0000\u00000\u0000?à\u0000\u00000\u0000\u0003þ\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Piezo": "\u00003\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0019€H\u0000\u0000\u0000\r°\u000b\u0000\u0000\u0000\u0000Æ\u0000ÇÿÀ€0Ààø\u0018\u0006\u0018x\u0000`\u0001€Ã|\u0000\f\u00000\u0018|\u0000\u0001€\u0007\u0006\f\u0000\u00000\u0000@Á€\u0000\u0006\u0000\u0000\u00180\u0000\u0000À\u0000\u0006\u0006\u0000\u0000\u0018\u0000\u0001€À\u0000\u0003\u0000\u0000`\u0018\u0000?ÿ€8\u0003ÿÇÿð>\u0000\u001fø\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "BLE": "\u0000 \r\u0000\u0006\u0001þc†\u0001€`†\u0001€`†\u0001€a†\u0001€\u0006\u0001þa†\u0001€`Æ\u0001€`Æ\u0001€`Æ\u0001€`Æ\u0001€c†\u0001€\u0007ùþ", - "Make Connectable": "\u0000|\u0011\u0000\u0010\u0010\u0002\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0001\u0001\u0000``\u0000\u0000\u0003\b\u0000\u0000\u0000\u0001€\u0000\u0000\u0011ÿ„çÿølŒ\u0018\u0000\u0000\u0018\u0000ÿŸðØ`\u0000\u0004\foƒñÿþ\u00060|B\t\u0006\u0000\u0000AþÀ\u0019ÿ\u001fü\u0000\u0006\u0001\u0004aóü\u0000\u0004\f(\u0001€\u0000\u0001€\u0000À\u0011ÿž\u0000\u0001ü@\u0000†\u0018\u0000\u0000ø\u0000\u0018\u0001\u0002\u0000P\u0000\u0010Ä\u000fÏÁ€\u0000\u0019€\u0007ø\u001c \r¿á\f@„\u0000\u0018\u0000\u0001\f\u0000ÿÇ¿øú–\u0010Ä\u000fÈ\u0001\u0018\u0000\u0010À\u001c\u0006pf\u0018éaŒ@Ď\u0011\u0000\u0001œ\u0001\u0000!\f`\u0000\u001fÄ\fO\u0000\u000eÀ\u0007‚\u0010Æ\n™\u0001\u0000@üÀ\u0019\u0000\u0000\u0018\u0000|a\u0007À©’\u0000\u0004\bH!Ÿð\u0001€\u0004n\u0010\u001c\u001a1 \u0000@„Æ\u0018ÿ\u0000p\u0000Á\u000fq\u0006\u001e\u0000\f\tÇÁ€\u0000\f\u0000\u0003ðpÁ\u0000\u0000\u0000\u0001À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "HID": "\u0000\u001f\r\u0000`aàÀÃ\u0018ñ†0s\u0003\f`f\u0006\u0018Àoü1€Ø\u0018c\u0001°0Æ\u0003`aŒ\u0006ÀÃ\u0018\u0019†0s\u0003\fgÆ\u0006\u0018þ\u0000", - "Light BW": "\u0000R\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€0\u0000\u0000\u0000\u0000\u0003ÿ€\u0000à\f\u0000?†\f\u0018ÿÀ\u0000p\u0003\u0000\fqƒ\u0006\u0000\u0000\u00008\u0000À\u0003\u0004aá€\u0000\u00008\u00000\u0000Á\u0018XGÿ€\u001e\u0000\u000e\u00000Ã\u00121ÿð\u001f€\u0003ø\u000fàČ\u0000\u0018\u001e`\u0000σ\f33\u0000\u0006\u000e\u0018\u00000 ÁŒŒ€\u0003\u0000\u0006\u0000\f\u00000a¡`\u0001À\u0001€\u0003\u0000\f\u0018hX\u0000à\u0000`\u0000À\u0003\u0006\u001e\u001e\u0000ð\u0000\u0018\u00000\u0000Ç\u0003\u0007\u0003ð\u0000\u0006\u0000\f\u0000?€ÀÀà\u0000\u0001€\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "LCD": "\u0000#\r\u0000`\u0003àþ\f\u0001ï\u0018ñ€`\u0003\u00070\f\u0000`f\u0003\u0000\f\u0006À`\u0001€Ø\f\u00000\u001b\u0001€\u0006\u0003`0\u0000Àl\u0003\u0000\u0018\u0019€`\u0003\u00070\u0007¼gÇø>\u000fà", - "Background": "\u0000#\u0011\u0000\u0002@\u0000\u0000\u0000ÉÁÿáùð0\f\u0001 \u0007ÿ€ä0ÿðìü\u0000À\u0000\u0000\u0000\u0018\u0000\u0000\u0001ÿþ?ü\u0000\u0000\u0004\u0000ÿàÿð \u0004\u0018\u0006\u0007ÿƒ\u0000À\u0006\u0000ø\fL\b\u0001\u0003\bÁ\u0000aË\f x\u0001À\u0000", - "Foreground": "\u0000Œ\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0005€\u0000\u0000\f\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u000fÿÀ04?ø\u0000À\f\u0000\u00000gÿ€\u0000\u0000ÿü\u0007ý\u0003ÿ\u0001ÿàð\u0000\u0003\u000bø\u00000\u0000\u0000Àà\u0000\u0000?þ\u0003€\u00000@\u0001€\u0003\u0000\u0002\u0018\f\u0004\u0000\u0000\u0003\u0000`\f\f\u0003\u0000\u0000\u0018\u000fþ\u00003\u0001€Àø0\u0006\u0000\u0000€8\u0000\u0001ÿà\u0002p\u0018\f\u0007ÿÃ\u0000`\u0000\u0018\u0003ø\u00000\u0000p\u0000.\u0003\u0000€\u0000\u00180\u0006\u0000\u0003\u00003à\u0003\u0000\u000f\u0000\u0002@\u0000\u0018\u0000\u0001\u0000`\u00000\u0003\u0002\u0000`\u0001°\u0000 \u0000\u0003\u0000\u00000\u0000\u0004\u0000\u0006\u00000\u0000\u000e\u00003\u0000\u0006\u0000\u0000p\u0000\u0007\u0000\u0000À\u0000À\u0003\u0000\u0001À\u000e0\u0000`\u0000\u000e\u0000\u0000à\u0000\u0018\u00008\u00000\u0000x\u0001Ã\u0000\u001c\u0000\u0001À\u0000<\u0000\u0007\u0000\u001f\u0000\u0003\u0000\u001e\u0000\u0000ð\u0007€\u0000x\u0000?\u0000\u0003à\u000fÀ\u00000\u0003€\u0000\u000e\u0000`\u0000\u0006\u0000\u0003€\u00008\u0000@\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Programmable": "\u0000|\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000à\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n\u0000\u0000\u0000Á`\u0000\u0000\u0002\u0000\u0000\u0000\u0003\b\u0000\u0000áÿà\f\r\u000fþ\u0000`\u0007ÿølŒü\u001fþ\u0001ÿ@ÿÀ\u0006\u0000\u0000\u0004\fo‡ÿ€`\u001fø\u0000\u0000\u0000À\u0000\u0000AþÀ\u0000\u0018\u0018\u0006\u0003\u0001\u0000\u0000\u0000\f\u0000\u0000\u0004\f(\u0000\u0001€``0\u001fþ\u0000À\u0001ü@\u0000†\u0000\u0018\u0018\u0006\u0006\u0003\u0001ÿð\u0018`\u0010Ä\u000fÏÀ\u0003\u0001€`À \u0000\u0006\u0001†\u0001\f@„\u0000\u00000\u0018\u0006\u0000\u0006\u0000\u0000`\u00180\u0010Ä\u000fÈ\u0000\u0006\u0001€`\u0000À\u0000\f\u0003\u0003\u0001Œ@Ď\u0000à\u0018\u0006\u0000\u001c\u0000\u0001À0\u0018\u001fÄ\fO€\u001c\u0001€`\u0003€\u00008\u0002\u0001\u0000@üÀ\u0003€\u001fþ\u0000p\u0000\u000f\u0000ü\u0000\u0004\bH!à\u0001ÿà\u001e\u0000\u000fÀ\u000füÀ\u0000@„Æ8\u0000\u0010\u0002\u0001€\u0000à\u0000\u0000\u0004\u0000\f\tÇÀ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001À\u0000\u0000", - "Customize": "\u0000k\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\f\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u00000\u0000\r\u0001€\u0003þ\u0000\u0018\u0000ÿø\u0000\u000e\u0003þÀ0\u0000ÿà\u0007þ\u001fÿ€\u0003€ÿèÿø\u0000\u0018\u0000ÿÀ\u0000`\u0000à\u0000\u0018\u000fÿ\u0000\u0003\u000000\u0000\f\u0000p\u0000\u0003\u0000\u0018`\u0000À\f\u0006\u0000\u0003\u0000\u001e\u0000\u0000À\u0002\f\u0000\u0018\u00030À\u0000À\u000fÀ\u0000\u0018\u0000Á€\u0006\u0000ð\u000e0\u0007˜\u0000\u0006\u0000\u00180\u0001À\u0000\u001e\u0000î\u0001Ã\u0000\u0001À\u0002\u0006\u0000<\u0000\u0001€\u0007€\u0000`\u0000<\u0000ÀÀ\u001cÀ\u0000`\u0000`\u0000\f\u0000\u001cÀ0\u0018\u0007\f\u0000\u0018\u0000\u0006\u0000\u0001€\u0007\f\u000e\u0003\u0001ÀÀ\u000e\u0000\u0000`\u00000\u0001ÀÇÀà\f\u0007€\u0000\u0006\u0000\u0006\u0000à\f\u0000p\u0018\u0001€À\u0000\u0000@\u0000À\u0018\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Dark BW": "\u0000S\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0016\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\u0003\u0003\u0000\u0000\u00000\u0000þ\u00180`ÿÀ\u0000\u0000\u0007ø\u0018ã\u0006\f\u001fø\u0000\u0000\u0001ÿƒ\u0004aá†\u0002\u0000\u0000\u0000`0`Œ,!ÀÀ\u0000\u0000\f\u0004\f0Čw\u0018\u001fÿ\u0003\u0001ü\u0018‘Œv\u0003ÿàÀ00Ã30\u0003À\u0000\u0000\u0000\f\u0006\fdd\u00000\u0000\u0000\u0000\u0001€Á†…€\f\u0000\u0000\u0000\u0000`\u00180а\u0003€\u0000\u0000\u0000\u0018\u0003\u0006\u001e\u001e\u0001À\u0000\u0000\u0000\u000e\u0000cƒ€ð\u0000\u0000\u0000\u0003€\u000fà00\u0018\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Background 2": "\u0000-\u0011\u0000\u0002@\u0000\u0000\u0000\u00002pø\u0000\u001fŸ\u0003\u0000Àø\u0004€\u001fþ\u001fàä0ÿð\u0003;?\u00000\u0000\f\u0000\u0000\u0001€\u0000@\u0000\u0007ÿø\u0006?ü\u0000\u0000\u0000a\u0000 ø\u0006\u000fÿ\u0002\u0000@``\u0018\u001fþ\u0006\u0003\u0000À\u0006\u0000`\u001fþ\u0003\u0013\u0007\u0000€\u00100Œ?ä\u0001‡,0\u0000 x\u0001À\u0000\u0000", - "Quiet Mode": "\u0000ž\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0000\u00000\u0000À\u0003ÿà\u00008\u0000\u0000\u0000\u0000\u00000\u0000ø\u0000\u0000\u0000Áƒü\u000fÿ€\u0001Àÿø\u0000\u0000\u0000À\u0001ÿà\u0000\u0000\u0003\u000b\u001fø0\u0006\u0000\u000e\u0001ÿà\u0000\u0000\u0003\u0000\u0000@\u0000\u0000\u0000\f\u0010À`À\u0018\u0000à\u00000\u0000\u0010`\f\u0000\u0001\u0000\u0000\u0000\u00000\u0003\u0001\u0003\u0000`\u0007€\u0000À\u0006a€8\u0000\u0004\u0000\u0000\u0000\u0000à\u0018\f\f\u0001€~\u0000\u0003\u0000\fÆ\u0000þ\u0003ÿðÿø\u0003øÀ00\u0006\u0007˜\u0000\f\u00003\u0010\u0003>\u000fÿÃÿà\fø\u0001€\u000008`\u00000\u0000`À\f\b\u0001\u0000\u0000\u0000\u00000 \u0006\u0000\u0000À\u0001€\u0000À\u0000\u0003\u00000\u0000\u0004\u0000\u0000\u0000\u0000À\u00000\u0000\u0006\u0000\u0006\u0000\u0003\u0000\u0000\u001c\u0000À\u0000\u0010\u0000\u0000\u0000\u0003\u0000\u0001€\u00008\u0000\u0018\u0000\f\u0000\u0000à\u0003\u0000\u0000À\u0000\u0000\u0000\f\u0000\u001c\u0000\u0003À\u0000`\u001fÿÀ\u0007\u0000\f\u0000\u0001\u0000\u0000\u0000\u00000\u0000à\u0000<\u0000\u0001€ÿ\u0000ø\u00000\u0000\u0007ü\u0000\u0000\u0000À\u0006\u0000\u0000À\u0000\u0006\u0000\u0000\u0000\u0003\u0000\u0000À\u0000\u0007à\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Highlight FG": "\u0000p\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u00000\u0006\u0000\u0000\u0000\u0000\f0\u0000\u0007\u0001ÿÀ\u0000p\u0006\u0000\u001fÀü\f0\u0000\u000e\u0001ÿ€\u0000à\u0006\u0000\u0018\u0003Þ\f0\u0000\u001c\u0000\u0000\u0000\u0001À\u0006\u0000\u0018\u0006\u0002\b0\u0000p\u0000\u0000\u0000\u0007\u0000\u0006\u0000\u0018\u0006\u0000\b0\u0000ð\u0003ÿÀ\u000f\u0000\u0007\u0000\u0018\f\u0000\u0018\u0010\u0003ð\u0003ÿà?\u0000\u0007ð\u001fÌ\u0000\u0018\u0018\u000f0\u0000\u0000Àó\u0000\u0006|\u0018\f\u001e\u0018\u0018\u001c0\u0000\u0000ÁÃ\u0000\u0006\u0004\u0018\f\u0006\u0010\b\u00000\u0000\u0001€\u0003\u0000\u0006\u0000\u0018\f\u00020\f\u00000\u0000\u0003€\u0003\u0000\u0006\u0000\u0018\u0006\u00020\f\u00000\u0000\u0007\u0000\u0003\u0000\u0006\u0000\u0018\u0006\u0002`\u0006\u00000\u0000\u001e\u0000\u0003\u0000\u0006\u0000\u0018\u0003Þà\u0007\u00000\u0001ø\u0000\u0003\u0000\u0006\u0000\u0018\u0000ü@\u0002\u00000\u0001À\u0000\u0003\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Foreground 2": "\u0000˜\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000X\u0000\u0000\u0000À\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u000fÿÀ04?ø\u0000À\f\u0000\u00000`|ø\u0000\u0000\u000fÿÀÐ?ð\u001fþ\u000f\u0000\u00000±þø\u00000\u0000\u0000Àà\u0000\u0000?þ\u0003€\u00000@\u0006\u0000\u0018\u00000\u0000!€À@\u0000\u00000\u0006\u0000ÀÀ0\u0000\u0003\u0000\u0018\u000fþ\u00003\u0001€Àø0\u0006\u0000\u0000€8\u0000\u0002\u0000\u0018\u001fþ\u0000'\u0001€Àü0\u0006\u0000\u0001€?€\u0006\u00000\u0000p\u0000.\u0003\u0000€\u0000\u00180\u0006\u0000\u0003\u00003à\f\u00000\u0000ð\u0000$\u0000\u0001€\u0000\u0018\u0010\u0006\u0000\u0003\u00000 \u0018\u0000`\u0001°\u0000 \u0000\u0003\u0000\u00000\u0000\u0004\u0000\u0006\u00000\u00000\u0000à\u00030\u0000`\u0000\u0007\u0000\u0000p\u0000\f\u0000\f\u00000\u0000`\u0001À\u000e0\u0000`\u0000\u000e\u0000\u0000à\u0000\u0018\u00008\u00000\u0000À\u0007€\u001c0\u0001À\u0000\u001c\u0000\u0003À\u0000p\u0001ð\u00000\u0001À\u001e\u0000\u0000ð\u0007€\u0000x\u0000?\u0000\u0003à\u000fÀ\u00000\u0001ÿ8\u0000\u0000à\u0006\u0000\u0000`\u00008\u0000\u0003€\u0004\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Remove": "\u0000#\u0012\u0000\u0000\u0000\u0000\u0000\u0001\u0000@\u0000\u0001&\bø`4‰\u001b\u001e\u0000‘\"B`ÿ$HÇ\u001fä‹pr\u0004‘Éð@’,\b\u000fòDƒ\u0001\u0002HŸþ I\u0013\f\u0007ù\"d\u0004y’\u0010 ˆbb\u0004\u0011\fFA‚!8HqÄ\u0006\u0000", - "Passkey BETA": "\u0000z\u0010\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001f€\u0000\u0000\u0000 \u0000\u0000\u0000\u0000þ\u000f÷ÿ\f\u0006x\u0000\u0000\u0000\b\u0000\u0000\u0000\u00001Ã\u0000\u001c\u0003†\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\f\u0010À\u0002\u0001 aŸ\u0001ðøƒ\u000f\b\u0018\u0003\u00040\u0000€L\u0018fqÌæ#\u000ec\u0006\u0000Ã\f\u0000 3\u00068\f`0\t‚\fC\u0000?ƒü\b\fAü\u0001\u0018\f\u0002Áƒ\u0018À\f0À\u0002\u0002\u0018`\u000fÃÁààÆ \u0003\u00060\u0000†\u0018\u0006\u0010<\u001e<\u0018\u0000˜\u0000ÁŒ\u0000 †\u0003\u0004\u0001\u0000‰†\u00006\u00000c\u0000\b01€Ã\u0000@\"0À\u0007\u0000\f\u0018À\u0002\f\u0004`9Æ3\u0018†9ÁÀ\u0003\u001c0\u0000ƒ\u0001˜\u0007‘øü Ãà`\u0000þ\u000fð!€`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Add Device": "\u0000|\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0005€\u0001@\u0000À\u0000\u0000\u0000\u0000\u0010\u0010\u0001\u0000\u0003ÿ 0Ú\u0000\u001c\u0007ü\u0000\u001c\u0001ƒ€\u0010~?ø\u0003\f€\u0003€ÿà\u000fø\bÿ\u0003\u0004 \u0000\u00000À\u0000p\u0000\f\u0001ÙÀ\b\u0010ÿB\u0000\u0000\u0002\f\u0000\u001c\u0000\u0000À1\u0006\u0000ƒ\u00014'ÿà À\u0003À\u0000\u0018\u0006\u0010`\u000fð3Bþ\u0006\u0004\u0000ü\u0000\u0001€A\u00028€\u00034 \u0018\u0000``<À\u00000\u000400ˆ\u00003B\u0001€\u0006\u0006\u0007\f\u0000\u0007\u0000Ã\u0003\bÿƒ4 \u0018\u0000@ \u0000À\u0000x\f0 ˆ\u0018#B\u0001€\f\u0003\u0000\f\u0000\u001cÀB\u0006\b‚4 0\u0000À0\u0000À\u0003†\u0006`àøbB\u0007\u0000\u0018\u0001€\f\u0000p0<\u001c\f\u0000\u0006'áà\u0003€\u001c\u0000À\u001c\u0001Ï\u0003ÿðBb\u0018\u0000\u0010\u0000€\f\u0001€\u0018\u0000@1ÿÌd \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000œ\u0000", - "LCD Timeout": "\u0000Ž\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000`\u0002\u0000\u0000\u0000\u00000\u00000\u0006\u0000>\u000fà\u0001€\u0000\u0003€\u0018\u0000ÿü\u0000À\u0000À\u0018\u0003Þ1à\u000fü\u0000\u001c\u0000`\u0003ÿðø\u0003\u0000`\u0018\u0000ÁÀ?ð\u0000à\u0003\u0000\u0000\u0000Ãÿà\f\u0001€`\u0003\u0003\u0001€\u000e\u0000\f\u0000\u0000†\f\u0001€0\u0006\u0003\u0000\f\u0006\f\u0006\u0000x\u00000\u0000\u000300\u0006\u0000à\u0018\f\u00000\u0018f\u0018\u0007à\u0001†\u0000\tÀÀ\u0018\u0003ø`0\u0000Àc\u000eÀy€\u0006\u0018\u0000.\u0003\u0000`\fù€À\u0003\u0001€\u000f\u0003†\u0000\u00180\u0000\u0004\u0001€0&\u0003\u0000\f\u0006\u0000\u0018\u0000\u0018\u0000ÀÀ\u0002\u0000\u0000\u0004\u0000À\u0018\u0006\u000000\u0000À\u0000`\u0003\u0001€\u0018\u0000\u00000\u0003\u0000`\u0018\u0000ÁÀ\u0006\u0000\u0001€\b\u0006\u0000`\u0000\u0001€\f\u0001€=ã>\u0000p\u0000\u0006\u0000ü\u0007\u0000\u0000\u001c\u00000\u0007ø>\u000fà\u0007€\u0000\u0018\u0003ÿ0x\u0000\u0003à\u0000À\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000`\u0000\u0000A€\u0000\u000e\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Highlight BG": "\u0000r\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\f\u0001€\u0000\u0000\u0000\u0000Ã\u0000\u0000p\u001fü\u0000\u0007\u0000`\u0001ü\u0003ð0À\u00008\u0007þ\u0000\u0003€\u0018\u0000cƒÞ\f0\u0000\u001c\u0000\u0000\u0000\u0001À\u0006\u0000\u0018!€‚\f\u0000\u001c\u0000\u0000\u0000\u0001À\u0001€\u0006\b`\u0000ƒ\u0000\u000f\u0000?ü\u0000ð\u0000p\u0001†0\u0000`@\u000fÀ\u000fÿ€ü\u0000\u001fÀ\f\u0000\u0018\u0018\u000f0\u0000\u0000Àó\u0000\u0006|\u0018c\u0007†\u0006\u0007\f\u0000\u00000pÀ\u0001\u0006\fÀa\u0000€\u0003\u0000\u0000\u0018\u00000\u0000`\u0001ƒ0\bÀ0\u0000À\u0000\u000e\u0000\f\u0000\u0018\u0000`Æ\u00020\f\u00000\u0000\u0007\u0000\u0003\u0000\u0006\u0000\u00181€˜\u0001€\f\u0000\u0007€\u0000À\u0001€\u00068=î\u0000p\u0003\u0000\u001f€\u00000\u0000`\u0001ü\u0003ñ\u0000\b\u0000À\u0007\u0000\u0000\f\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "LCD Brightness": "\u0000Ã\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0001€?ü\u0000\u0001`\u0000\u0000\u0000\u0000\u0000\u0005\u0006\u0000\u0000\u0000À\u0000\u0000\u0000þ\u0000\u0000\u0013ÿ†\u0001ÿÐ\u0000\u0000\u000fø\u0000\u0000àÀ\u0000\u00008\u0000à\u000f˜@ÿ€\u0012\u0000À0?ø\u0000\u0000\u0003ÿ€ÿø\u0018\u0000\u0000\u000e\u0000ÿ\u0012\b\f`\u0006@\u001fþ\u0000\u0000\u0000\u0000€\u0000`\u001fþ\u0003\u0000\u0000\u0003€;8\"A\u0000\u00180‚\u0000@\u0000\u0000\u00000\u0000\f\u0000\u0000À`\u0000\u0001À\fA„Oà\u0006\u00033\u0010ø?ÿ\u0000\u001c\u0000\u0003\u0000\u0000\u0018\f\u0000\u0000x\u0003\b0‰ü\u0001€&b\u0000\u0000\u0007ÿà\u0007\u0000\u0000`\u0000\u0003\u0001€ ?\u0000A\u0002\u001f €ÿ\u0001Ú@\u0000\u0000\u0003\u0000\u0001À\u0000\u0018\u0000\u0000À0\f\u001e`\b`b$\u0010?ð;X~\u0000`\u0000ø\u0000\u0007\u0000\u0000\u0018\u0006\u0003\u0007\f\u0003\f\fDÂ\u000e\u0003\u0013ò\bH`\f\u0000s\u0000\u0000ð\u0000\u0006\u0000ÀÀ\u0001€a\bŸÁ\u0000\"bÁ\t\f\u0001€\f`\u0000s\u0000\u0001À\u0018p\u00000\u0004 a\u0012\b\u000f\u0004Ìp??€`\u0000\f\u0000\u001c0\u0000p\u0003\u001c\u0000\u0006\u0000Ì\u001c>A\u0001ñ™Ž\u0004$0\u001c\u0000\u0001€\u0007\u0003\u0000\u001c\u0000n\u0000\u0000À\u000f\u0007\u0004\u0018 #r3p„†\u000f\u0000\u00000\u0003€0\u001e\u0000\u000f€\u0000\u0018\u0000瀂\u0004\u0007üÆÇ\u001fŸÁ€\u0000\u0006\u0000`\u0006\u0007\u0000\u0000€\u0000\u0003\u0000\u0000@\u0000C€~\u0010Ð\"\u0012\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Connect device\nto add to\nwhitelist": "\u0000H\u0011\u0000\u0010\u0010\u0002\u0006\u0001\t \u0000\u0000\u0010\u0010\u0006\u0006\u0001\u0019 üü\u0011ÿ„á\u0015`Č\u0019ÿ\r†\u0001=pČ|B\t\u0006\u0007ùpüü\u0010F\u001f?Ã\t \u0000\u0000\u0011ÿž\u0000\u0003\u0015x\u00020\u0010 \u0005\u0000\u0003½øÿþ\u001c \r¿ãÁ\b\fÀ{ÿ©gI øxpf\u0018ée?ùÀ\u000e\u0010Æ\u0000\t\u0005\u0018€|ü\u0010Æ\n™\u0001\u001c°DŒ\u0010|\n™!\u001eàDŒ\u0010\u001c\u001a1!2ÈDŒ\u0010÷\u0010aá#ø|üpÁ\u0000\u0000\u0001\"0DŒ", - "Wake on BTN3": "\u0000\u000e\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000`À\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0003øÿæ\u0006?\u00180`\u0000€\u0000\u0000\u0000\u0000\u0000\u0001Ž\u0007\u0003ƒ\u001fÌ<0\u0000@\u0000\u0000\u0000\u0000\u0000\u0000Á\u0001\u0001Á€6\u0016\u0011ð ÃÀ\u0003à¼\u0000`€€°À\u0019‰\u0018Î\u0011‡0\u0003¸s\u00000À@L`\u0018Č\u0003\t‚\f\u0003\u00060À\u001fÀ &0xff\u0000…ƒ\u0006\u0001ƒ\u0010`\f0\u0010\u0011˜\u000e22\u000fÁÿ\u0000Áˆ0\u0006\f\b\bÌ\u0001\u000b\f!àÀ\u0000`Ä\u0018\u0003\u0006\u0004\u00046\u0000ƅŒ\u0010˜`\u00000b\f\u0001ƒ\u0002\u0002\u001b\u0000cÃÆ\u0018F\u0018\u0000\u00181\u0006\u0000Á\u0001\u0007€0ÁÜ!Žp\u0007pƒ\u0000c€€Ïð``ò\u0010að\u0001ðA€?€@@ãð", - "Wake on BTN2": "\u0000\u000e\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000`À\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0003øÿæ\u0006\u001f\u00180`\u0000€\u0000\u0000\u0000\u0000\u0000\u0001Ž\u0007\u0003ƒ?Ì<0\u0000@\u0000\u0000\u0000\u0000\u0000\u0000Á\u0001\u0001Á€f\u0016\u0011ð ÃÀ\u0003à¼\u0000`€€°À\u0019‰\u0018Î\u0011‡0\u0003¸s\u00000À@L`\bČ\u0003\t‚\f\u0003\u00060À\u001fÀ &0\fff\u0000…ƒ\u0006\u0001ƒ\u0010`\f0\u0010\u0011˜\f22\u000fÁÿ\u0000Áˆ0\u0006\f\b\bÌ\f\r\u000b\f!àÀ\u0000`Ä\u0018\u0003\u0006\u0004\u00046\f\u0006…Œ\u0010˜`\u00000b\f\u0001ƒ\u0002\u0002\u001b\f\u0003ÃÆ\u0018F\u0018\u0000\u00181\u0006\u0000Á\u0001\u0007Œ\u0000ÁÜ!Žp\u0007pƒ\u0000c€€Î\u0000``ò\u0010að\u0001ðA€?€@@çü", - "Time Zone": "\u0000i\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0001€\u0000\u0001€\b\u0000\u0000\u001b\u0000\u0000\u0000\u0000\u0000À\u0000\u0001À\f\u0000\u0000\u0006\u0000\u0000\u0006\u0000\u0000ÿÀ\u0001À\u0006\u0000\u0010\u0006\u0000\u0000\u0003À\u0000à\u0001À\u0006\u0000\f\u0003\u0000\u0000\u0000p\u0000``\u0003€\u0003\u0000\u0003\u0001€\u0000\u0000\f\f`0\u0003À\u0001€\u0001€À\u0000\u0000\u0000\u0004f\u0018\u0007à\u0001†\u0000àÀÿø\u0000\u0006aØ\u000f0\u0000Ã\u0000 `ü\u0000\u0006\u0000<\u000e\u0018\u0000`À\u00000\u0000\u0000\u0000\u0003\u0000\f\u0000\f\u0000``\u00000\u0000\u0000\u0000\u0003\u0000\f\u0000\u0006\u00000\u0018\u00000\u0000\u0000\u0000\u0003\u0000\f\u0000\u0003\u0000\u0010\f\u00000\u0000\u0000\u0000\u0007\u0000\u001c\u0000\u0001€\u001fÿ\u0000p\u0000\u0000\u0000\u001f\u0000<\u0000\u0000À\u001fùð\u0000\u0000\u0000~\u0000\u0018\u0000\u0000`\u0000\u0000@À\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Wake on Touch": "\u0000Ÿ\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0003\u0000`\u0000\u0000À\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u000e\u0000À\u0000\u0001€À\u0000\u0001€\u0000\u0000\u0000\u0007ãÿÀ\u0000\u0000\u00008\u0001þ\u0000\u0003\u0001à\u0000\u0007þ\u0000\u0000\u0003þ\u000fÿ€\u0000\u0000\u0000à\u0007þ\u000fÿàà\u0000\u000fü\u0000\u0000\u00060\u0018\u0003\u0000\u0000\u0000\u0007\u0000\u0018\f\u000fÿ€``00\u0002\f\u0000 0\u0006\u0003ÿ\u0000\u001e\u00000\u0010\u0000x\u0000\u0000€À`f\u0018\u0000@`\f\u0007þ\u0000ü\u0000À`\u0001ð\u0000\u0003\u00030Àf0ÿÀ\u0018\u0000À\u0007˜\u0003\u0000À\u0007`\u0000\f\f;\u0000Ì@ÿü€0\u0001€\u001c0\u0000\u0003\u0000\u001cÀ\u0000\u0018\u0000\u001e\u0000Á€\u0006\u0000\u0000@\u0003\u0000\u0000`\u0000\u0006\u0000q€\u0000`\u0000\u0018\u0000\u0003\u0000\f\u0000\u0001€\u0006\u0000\u0000À\u0000\u0018\u0003ƒ\u0000\u0001€\u0000`\u0000\u000e\u0000\u0018\u0000\u0006\u0000\f\u0000\u0001€\u0000`\u000e\u0006\u0000\u000e\u0000\u0001€\u00008\u0000`\u00008\u0003ÿÀ\u0003\u0000\u0003€\u0000\f\u0000ø\u0000\u000e\u0000\u0000à\u0001À\u0003à\u0007ÿ€\u0006\u0000\u000e\u0000\u0000ø\u000fÀ\u0000x\u0000\u000f€\u000e\u0000\u0007\u0000\u0000\u0000\u0000\f\u00000\u0000\u0001à\b\u0000\u0000À\u0000\u0018\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Twist Timeout": "\u0000±\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\f\u0000\u0001€\u0000\u0001€\b\u0000\u0000\u0000\u0000À\u0000À\u0000€\u0000\u0001ÀÀ\u0006\u0000\u0000À\u0000\u0001À\f\u0000þ\u0000`\u0000`\u0000@À\u0001Àð\u0003\u0000\u0000ÿÀ\u0001À\u0006\u0000?ÿ\u0007ÿ€0\u00060`\u0001À\u00000\u0001€\u0000à\u0001À\u0006\u0000\u0000\u0001‡ÿÀ\u0018\u0003\b0\u0003€\u0000\u0018\u0000À\u0000``\u0003€\u0003\u0000\u0000!ƒ\u0000`\f\u0000Æ\u0018\u0003À\u0000\u0018\u0000p\u0000`0\u0003À\u0001€\u0000\u0019€0\u0007\u0000`\b\u0007à\u0000\f\u0000?€f\u0018\u0007à\u0001†\u0000\tÀÀ\u0018\u0003ø\u0018\f\u000f0\u0000\f\u0000\u0019ðaØ\u000f0\u0000Ã\u0000\u0005À`\f\u0001Ÿ\u0000\u0006\u000e\u0018\u0000\u000e\u0000\f\b\u0000<\u000e\u0018\u0000`À\u0002@\u0010\u0006\u0000À€\u0006\u0000\f\u0000\u0007€\u0006\u0000\u0000\f\u0000\f\u0000``\u0001\u0000\u0000\u0002\u0000`\u0000\u0007\u0000\u0006\u0000\u000e`\u0003\u0000\u0000\f\u0000\u0006\u00000\u0018\u0001€\u0000\u0003\u00000\u0000\u0007\u0000\u0003\u0000\u000e\u0018\u0001€\u0000\f\u0000\u0003\u0000\u0010\f\u0000À\u0000\u0003\u0000\u0018\u0000\u000f\u0000\u0001€\u000e\u0006\u0000À\u0000\u001c\u0000\u0001€\u001fÿ\u0001À\u0000\u0007\u0000\f\u0000>\u0000\u0000À\u001c\u0001€`\u0000<\u0000\u0000À\u001fùƒÀ\u0000\u001f\u0000\u0006\u0000\u001c\u0000\u0000`\f\u0000À0\u0000\u0018\u0000\u0000`\u0000\u0000A€\u0000\u000e\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Wake on Twist": "\u0000°\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0001€0\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0003\u0000\u0003\u0000\u0000\u0000\u0000\u0003€0\u0000\u0000`0\u0000\u0000@\u0000\u0000à?à\u0003\u0000ø\u0000\u0000\u0000\u0007\u0000?À\u0000`<\u0000\u0000@À\u0001Àð\u0003\u0000ÿø\u0000\u0000\u0000\u000e\u0000àÿþ\u000e\u0000\f`À\u0003€\u0000`\u0003\u0000À\u0018\u0000\u0000\u00008\u0000À`ü\u0003\u0003\f À\u000e\u0000\u0000`\u0003\u0000À\u0018\u000fü\u0000x\u0000À@\u0001à\u0000\u0002\u00060À\u001e\u0000\u0000À\u0003€À\u0018\u000fü\u0001ø\u0001€À\u0003à\u0000\u0006\u0006\u0000€~\u0000\u0000À\u0003øÀ\u0018\u0000À\u0007˜\u0003\u0000À\u0007`\u0000\f\u0003\u0001æ\u0000\u0001€\u0003>@\u0018\u0000À\u000e\u0018\u0000\u0001€\u000e`\u0000\f\u0000\u0001ƒ†\u0000\u0003€\u0003\u0002\u0000\u0010\u0000À\u0000\u0018\u0000\u0001€\u001c`\u0000\u0018\u0000\u0003\u0000\u0006\u0000\u0003À\u0003\u0000\u00000\u0000À\u0000\u0018\u0000\u0003\u0000p`\u00000\u0000\u0007\u0000\u0006\u0000\u000e`\u0003\u0000\u0000`\u0000À\u0000\u0018\u0000\u0006\u0000à`\u0000à\u0000\u000e\u0000\u0006\u0000\u001c0\u0003\u0000\u0001À\u001fþ\u0000\u0018\u0000\u001c\u0000\u0000`\u0007À\u0000<\u0000\u0006\u00008\u0018\u0003\u0000\u000f€\u001fþ\u0000\u0018\u00008\u0000\u0003à?\u0000\u0001ð\u0000\u0006\u0000à\f\u0003\u0000\u000e\u0000\u0000\u0000\u0000\u0018\u0000`\u0000\u0003À\u0010\u0000\u0001À\u0000\u0006\u0000À\f\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Wake on BTN1": "\u0000\u000e\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000`À\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0003øÿæ\u0006\u001e\u00180`\u0000€\u0000\u0000\u0000\u0000\u0000\u0001Ž\u0007\u0003ƒ\u001f\f<0\u0000@\u0000\u0000\u0000\u0000\u0000\u0000Á\u0001\u0001Á†\u0016\u0011ð ÃÀ\u0003à¼\u0000`€€°ÀÁ‰\u0018Î\u0011‡0\u0003¸s\u00000À@L``Č\u0003\t‚\f\u0003\u00060À\u001fÀ &00ff\u0000…ƒ\u0006\u0001ƒ\u0010`\f0\u0010\u0011˜\u001822\u000fÁÿ\u0000Áˆ0\u0006\f\b\bÌ\f\r\u000b\f!àÀ\u0000`Ä\u0018\u0003\u0006\u0004\u00046\u0006\u0006…Œ\u0010˜`\u00000b\f\u0001ƒ\u0002\u0002\u001b\u0003\u0003ÃÆ\u0018F\u0018\u0000\u00181\u0006\u0000Á\u0001\u0007€ÁÜ!Žp\u0007pƒ\u0000c€€ÀÀ``ò\u0010að\u0001ðA€?€@@ãü", - "Log": "\u0000!\u0011\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0003\u0005¿ü\u0001¿þ\u0001ÿL\u0003\u0000ÿÆ\u0001€ÀC\u0000ÀÀa€``0À0`\u0010`\u0018\u0000\u00180\f\u0000\u0018\u0018\u0006\u0000\u001c\f\u0003\u0000\u001c\u0007ÿ€\u001c\u0003ÿÀ<\u0001\u0000 \u0018\u0000\u0000\u0000\u0000\u0000\u0000", - "Wake on FaceUp": "\u0000”\u0010\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\f\u0018\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 0\u0000`Á€\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0002\u0003\u0000\u0006\u001e\u0018\u0000 \u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000 0\u0000aa\u001f\u0002\f<\u0000>\u000bÀ\u0006\u0003à\u001e\u0007‚\u0003\u0017ƒ\u00121œ#\u000e`\u0007pæ\u0000`3‡1Ì 1Ì1#\u0000Â`ƒ\u0000ÁŒ0\u0007ð\u0018@\u0010b\u0003\u0018c30\u0004,\u00180\f\u0018ƒ\u0000`\u0000Œ\u0003\u0006 1\u000222\u000fÁÿ\u0000Áˆ0\u0006\u0001øÀ?â\u0003\u0010!¡a„<\u0018\u0000\f\u0018ƒ\u0000`0Œ\u0003\u0000 1\u0002\u001a\u00160Ba€\u0000Áˆ0\u0006\u0006\bÀ0\u0003\u0002\u0018!áã\f#\f\u0000\f\u0018ƒ\u0000`a„\u0001€0a†\f\u001c9Â\u0018ç\u0000w\b0\u0006\u00078s\u001cáÞ\u001cÀÀÁä Ãà\u0003àƒ\u0000`<à|\u000fx\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000", - "Twist Max Y": "\u0000š\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000 \u0000\u0000p\u001fð\u0001€\u0007ÿÀ\u0000\u0000\u0006\u0000\u0007ü\u0018\f\b\u0018\u00008\u000fþ\u0000`\u0001ÿø\u0000\u0000\u0001þ\u0003ÿƒ\u0006c\u0006\u0000\u001c\u0000\u0003\u0000\u0018\u0000\u0000\f\u0000\u0000\u0000ÿÀ\u0000Àc\u0018A€\u001c\u0000\u0000À\u0006\u0000\u0000\u0003\u0000 À`0\u00000\u0018Ã\u0018`\u000f\u0000\u0000`\u0001À\u0000\u0001€Ì0\u0018\b\u0000\u0018\u0003`À\u0010\u000fÀ\u0000\u0018\u0000\u0000\u0000À\u0019Œ\f\u0006\u0000\u0006\u0000p\u0018\f\u000f0\u0000\f\u0000\u0019ð\u001c`\u0006b\u0006\u0001€\u0003\u0000\u001c\u0000\u0003\u0007\f\u0000\u0007\u0000\u0006\u0004\u0003¸\u0000Á€\u0000À\u0001À\u0002\u0000\u0001€\u0003\u0000\u0001à\u0001€\u0000<\u0000\u0000`\u00000\u0000x\u0000€\u0000à\u0000À\u0001Ì\u0000`\u0000\u0006\u0000\u00008\u0000\u0018\u0000s\u0000 \u0000p\u00000\u0000á€\u0018\u0000\u0000À\u0000\u001c\u0000\f\u00008`\b\u0000x\u0000\f\u0000p0\u0006\u0000\u0000\u0018\u0000\u000e\u0000\u000e\u0000\u001c\f\u0002\u0000ø\u0000\u0003\u0000p\u0006\u0001€\u0000\u0003\u0000\u001f\u0000\u0007\u0000\u001c\u0001€€8\u0000\u0000À\u0018\u0001€`\u0000\u0000@\u0006\u0000\u0003\u0000\u0006\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Utilities": "\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001fü\u0000\u0000\u0000ÀÀð\u0000\u0000\u0000\u0000\u000fþ\u0000\u0000\u0000ÿà\u0000\u0000\u0006\u0006\u0003ÿ€\u0000\u0000\u0000\u0000ð\u0000\u0000\u0000\u0000\u0000\u0000€00\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\u0000\f\u0001€\u0000\u0000\u00000\u0000\u0000\u0000\b\u0000\u0000\u0003ÿð\u0001À\f\f\u000fÿÀ\u0007\u0000\u0000\u0000\u0000@ü\u001fÿ€\u001c\u0000``þ\u0000p\u0007ÿÀ\u0002\u0003ÿà\u0003\u0000\u0001À\u0003\u0003\u0000\f\u0000\u0007\u0000?þ\u0000\u0010\u0000\u0000\u0000\u0018\u0000>\u0000\u0018\u0018\u0000`\u0000ø\u0000\u0000\u0000\u0000€\u0000\u0000\u0000À\u00070\u0000ÀÀ\u0003\u0000\u001cÀ\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0006\u00001€\u0000\u0006\u0000\u0018\u0000Æ\u0000\u0000\u0000\u0000 \u0000\u0000\u0000`\u0000\f\u0000\u0000`\u0001€\u00000\u0000\u0000\u000fÿà\u0000\u0000\u0007\u0000\u0000`\u0000\u000e\u0000\u001c\u0000\u0001€\u0000\u0000?ÿ\u0000\u0000\u0000ð\u0000\u0003\u0000\u0001à\u0003À\u0000\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0018\u0000\f\u0000\u0018\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Clock Style": "\u0000Ž\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0006\u0000\u0000\u0006\u0000\b\u0000À\u0001ÿà\u0000\u0000\u0003\u0000\u0003þ\u0000\u0018\u0000\u00008\f`\u0003ü\u0007ÿ€\u0000\u0000\u000fð\u001fü\u0000ÿÀ\u0001À1€\u001fø\u0018\u0006\u0000\u0000\u0000à\u0000`\u0003ÿ\u0000\u000e\u0000Æ\u0000À``\u0018\u0001\u0006\u0003\u0001€\u0001€\u0018\u0018\u0000à\u0003\u0018\u0003\u0001\u0001€`f\u0018\f\u0004\u0000\f\u0000À`\u0007€\f`\u0018\f\u0006\u0001€Ì``0\u00000\u0006a€~\u00001€À0\u0018\u0006\u00031\u0003\u0000À\u0001€0ì\u0007˜\u0000Æ\b\u0001€`\u0018\u0006\f\u0000\u0006\u0000\u000e\u0000\u0000ð8`\u0003\u0018`\u0006\u0001€`\u00000\u0000\u0018\u0000<\u0000\u0001€\u0001€\fc\u00000\u0006\u0001€\u0001À\u0000À\u0003˜\u0000\f\u0000\u0006\u0000!˜\u0001€\u0018\u0006\u0000\u000e\u0000\u0006\u0000\u001c0\u0000`\u0000\u0018\u0001†à\u001c\u0000ø\u0000p\u0000p\u0000à`\u0007\u0000\u0000`\u000e\u001e\u0000à\u0001ÿà\u000f€\u0003€\u000e\u0000Àx\u0000\u0001€pp\u0006\u0000\u0004\u0000€0\u0000\u0018\u00000\u0003\u0001€\u0000\u0006\u0000€€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Rewrite Settings": "\u0000h\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0006\u0000À\u0001\u0003à\u0003\u0000ÀÀ?ø\u0000\u000e\u0000À\u0001‚`ÿþÀÀ?ð\u0000\u001c\u0000À\u0007⠀\u0006ÀÀ\u0000\u0000\u00008\u0000À\u0000\u0006 €\u0006ÀÀ\u0000\u0000\u0000à\u0000À\u0003Æ \u0000\u0000ÀÀø\u0001à\u0000à\u0000\f8øÀÀü\u0007à\u0000þ\u0000\u0000\u0000\u0003\u0000ÀÀ\u0000\u0018\u001e`\u0000χÏð\u0003\u0000ÀÀ\u0000\u00188`\u0000À€\u000603\u0000ÀÀ\u00000\u0000`\u0000À\u0000\u00020#ø\u0000À\u0000p\u0000`\u0000À\u0003Ã`#\u0000\u0001€\u0000à\u0000`\u0000À\u0002Aàs\u0000\u0007\u0000\u0003À\u0000`\u0000À\u0002AÀÛ\u0000\u001e\u0000?\u0000\u0000`\u0000À\u0002CàÏü\u0018\u00008\u0000\u0000`\u0000À\u0003Þ9ƒþ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002X\u0018\u0000\u0000", - "Flatten Battery": "\u0000Ã\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0003\u0000\u001fÿ€€\u0000\u0000\u0000\u0000À\u0000\u0000\u0006\u001b@\u0000\u0001ÿÀ00\u0000\u0000\u0000`\u0000\f\u0000\u001f€\u0018\u0000\u0000\u0018\u0000ÿ€Ã \u0000\u0000?ø\u0006\u0006\u0000\u0000\u0001ÿð\u0001€\u0000x\u0003\u0007ãÿü\f`\u0018`\u0000\u0000\u0000\u0000\u0000ÀÀ\u0000\u0000?\u0000\u00061€À\u0000güð\u0000\u0018\u0002\f\u0000 À\u0000\u0000\u0018\u0018\u0000\u0000\u0000À\u0000Æ \u0018\u0000\f\u0000\u0000\f\u0000\u0006\u0000A€f\u0018?ÿ\u0003\u0003\u0000\u0000\u0000\u001f\u0000\fÌ\u0002\u0000\u0001€\u0000\u000f€\u0001€\u0018\u0010\u0006c\u0007ÿà``ü\u00070™€@\u00000\u0000\u00030\u0000ÿ\u0003\u0003\u0000Ì@\u0003\u0000\f\f\u000fÿƒð\u0003 \tø\u0006\u0000\u0000C\u0000?ð``\f\u0018\u0000`\u0001€\u0000\u0000að\u0000`\u0003ဌ\u0000\b`\u000e\u0003\b\u0004\u0000\u0003\u0000\f\u000000\u0000\u0000\fè\u0007ÿøp\u0018\u0011\u0000\u0001œ\u0001\u0000#\u0000À\u0000à\u0001€\u0000\u0006\u0000\u0000\u00001\u0000\u0001€\u0000\u0003\u0003 \u0000\u001d€\u000f\u0004`\u0018\u00008\u0000`\u0000\u0001€\u0000\u0000\u0004 \u00000\u0000\u0000`d\u0000\u0000`\u0001ñ˜\u0001€\u000e\u0000\u001c\u0000\u0000à\u0000\u0000\u0000€\u0000\u0006\u0000\u0000\u0018\fÿ€\f\u0000#w\u00008\u000f€\u000f\u0000\u0000x\u0000\u0000\u0000\u001fø\u0000À\u0003þ\u0001ð\u0007\u0000\u0007ü@\u0002\u0001€\u0001€\u0000\f\u0000\u0000\u0000\u0001ÿ\u0000\u0018\u0000<\u00000\u0000\u0001€\u0000~\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Debug Info": "\u0000k\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0018\u0000\u0000\u0000\u0001\u0004\f\u0000€\u0000\u0000\u0016\u0000\u0005\u0000\u0000\u0000`°€\u0010þ\u001fý\u0001†Ð\u0000\u0000\f\r\u0013ÿØCÿ€0È\u0000\u0000\u0003þ‚\u0006\u0000b\b\u0000\u0000\u0006\u0018\u0000\u0000\u0000ágü\bC\u0000\u0000\u0000ƒ\u0000\b0\u0018\b,\u0018\u000fèÃÿð\u0010`\u0019†\u0006\u0003\u0005?øÉ\u0000þ\u0006\u0004\u0001˜ÀÀ` \u0000\u0019?À0\u0000ÀÀ3\u00100\b\u0014\u0000\u0003gø\u0006\u0000\u0018\u0018\u0003\u0006\u0000\u0003\u0000ø~‚\u0000À\u0002\u0001\u0000\u0000À\u0000À\u0011\u0003\u0002\u0016@\u0018\u0000À0\u00008\u00008\u0002?àBX\u0006\u0000\u0018\u0006\u0000\u000e\u0000\u000e\u0000D\fN\u0001À\u0006\u0000`\u0003€\u0003€\bÿ\bÀð\u0001À\u000e\u0003à\u0001à\u0001\u00100!<\u0018\u0000\u0010\u0000€`\u00000\u0000\"\u0006\u0004,À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004C€…\b", - "Storage": "\u0000Y\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000À\u0000À\u0000\u0000\u0000\u0000\r‡ü\u0000`\u0000`\u0000\u0000\u0000\u000e\u0003Gÿ\u00000\u00000\u0000\u0000\u0000\u0003À€\u0003\u0000\u0018\u0000\u0018\u0000\u0000\u0000\u0000 \u0000\u0001€\f\u0000\f\u0000\u0000\u0000\u0000\u00000\u0001€\u0007\u0000\u0006\u0000\u0000\u0000\u0001€\u0018\u0000À\u0003ø\u0003\u0000Cÿàð\u0018\u0000À\u0001Ÿ\u0001€aÿð\u001c\u001c\u0000à\u0000À€À`\u0000\u0000\u0000\u001c\u0000x\u0000`\u0000``\u0000\u0000\u0000\f\u0000æ\u00000\u00000à\u0000\u0000\u0000\u001c\u0000á€\u0018\u0000\u0018à\u0000\u0000\u0000\u001c\u0000à`\f\u0000\rÀ\u0000\u0000\u00008\u0001À\u0018\u0006\u0000\u0007À\u0000\u0000\u0000ø\u0000À\f\u0003\u0000\u0001\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Reset Settings": "\u0000|\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0003à\u0003\u0000\u0000\u0000\u0000\u0003\u0000`\u0000\u0000\u0000\u0003\u0000\u0018&\u000fÿà\u000e\u000000\u0006\u0000\u0000\u0000\u00000\u0007⠀\u0006\u0007ü\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000\u0000b\b\u0000`ìà00\u0006\u000e\u0000\u0000\u00000\u0003Æ \u0000\u0000\u0018ƒ\u0003\u0003\u0003ÿð\u0004\u0018\u0003\u0000\u0000Çÿƒ\b000?\u0003\u0006a€8\u0000\u0000\u0000\u0003\u0000 \u0003\u0003\u0000``3\u0018\u0003ø|ÿ\u00000\u0002\u0018\u001800\u0006\f\u00031\u00003à\u000603\u0000aƒ\u0003\u0000a€\u00180\u0003\u0002\u0000#\u0002?†\u0018\u001000\u00068\u0000\u0003\u00000\u0003Ã`#\u0000!\u0003\u0000\u0003\u0000a\u0000\u0000p\u0003\u0000$\u001e\u00070\u00030p\u0000`\u0006\u0000\u0000\u000e\u00000\u0002AÀÛ\u0000\u001e\u000e\u0000\u001c\u0000`\u0000\u0001À\u0003\u0000$>\fÿÀç€\u0007€\u0007ÿ\u0000ø\u00000\u0003Þ9ƒþ\u0000 \u0000`\u0000\u001fð\f\u0000\u0003\u0000%€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Twist Threshold": "\u0000Å\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000€\u0000\u0001ÀÀ\u0006\u0000\u0000\u0000\u0001ÿ\u0000`\u0000\u0000\u0000\u000e\u0000\u0000\u0000\u0000c\u0000\u0004\f\u0000\u001c\u0007ÿ\u00000\u0000\u0000\u0000\u001fü\u0003\u0000\u0000\u0000\u0000<\u0000\u0000\u0000\u0003\u0018\u00060`\u0001À\u00000\u0001€\u0000\u0000\u0000\u0000À\u0018\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0018À0ƒ\u00008\u0000\u0001€\f\u0000\u0000\u0000\u0000\u0006\u0000À\u0000\u0004\u0018\u0000\u0003\u0001ÿ\u0000Æ\u0000Æ\u0018\u0003À\u0000\u0018\u0000p\u0000\u0000\u0000\u0000`\u0006\u0000\u00030Á€\u0018\u000fø\u00060\u0006\u0000€~\u0000\u0000À\u0003ø\u00000\u0000\u0003\u00000\u0004\fÆ\u000f\u0001€\u0000À1€\u0018\f\u000f0\u0000\f\u0000\u0019ð\u0003À\u00000\u0001€`f \u001c\u001c\u0000\u0006\u0001Œ\u0010\u0000`á€\u0000à\u0000À€\f\u0000\u0003€\f\u0006\u0001ƒ\u0000\u0001À\u001fð\fa€\u0006\u0000\f\u0000\u0007€\u0006\u0000\u0000\u0000\u0000\u001e\u0000``\u0000\u0018\u0000\f\u0000ÿ€c\u0018\u0000p\u0000`\u0000æ\u00000\u0000\u0000\u0000\u0003˜\u0003\u000e\u0000\u0001À\u0001À\u0000\f\u0002\u0019€\u0007\u0000\u0003\u0000\u000e\u0018\u0001€\u0000\u0000\u00008`\u0018à\u0000\u001c\u0000\u001c\u0000\u0000`0Ü\u0000ð\u0000\u0018\u0000à`\f\u0000\u0000\u0000\u0003€Ü\u0000\u0001À\u0003€\u0000\u0003\u0003‡€>\u0000\u0000À\u001c\u0001€`\u0000\u0000\u0000p\u0006\u0007À\u0000|\u0000ø\u0000\u001fø88\u0001À\u0000\u0006\u0000À\f\u0003\u0000\u0000\u0000\u0003\u00000\u0010\u0000\u0003\u0000\u0006\u0000\u0000À€€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Turn Off": "\u0000E\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003ÿðþ\u0000\u0018\u0000\u0000\u0000`\u0006C\u0000\u0000À\u0000\u0001ÿþ\u0012\u0010\u0000\u0006\u0001ÿè\u00100\u0017øÿ\u000fÿ^¿ Aÿð\u0000\u0018\u0004\u0000å‚\u0000<\u0000\u0000ǯ/ð\u0003à\u0000\u0006\u0001\u0000\u0001@€;\u0000\u0000cÿà\u000bü\u0003˜\u0000\u0003\u0018A\u0002Ã\u00008À\u00000ÿø\u0016H\u0007\u0006\u0000\u0003†\u0010A¢Xp0\u00008?þ\t2@\u0001€\u0007€\u0006\fÛ\u0013\u0000|\u0000ð\u0000?Ƒˆ\u0003À\u000e\u0000\u0000\u0000$\u0018\u0000\u0000\u0000\u0000\u0000", - "Compact Storage": "\u0000Ä\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0010J\u0003\u0000\u0000À\u0000 \u0000\u0000\u0000\u0003\u0000\u0003\u0000\u0000\u0000\u0000\u00006\u0000\u00000\u0000\u0001‡ 0\u0000\f\u0000\u0006\u0000\u0003þ\u00000\u00000\u0000\u0000\u0000\u0007\u0001§ÿƒÀ\u0000\u0018n\u0003ü\u0000À\u0003ýÀð\u0003\u0000\u0003\u0000\u0000\u0000\u0000<\bø\u000e\u0000\u0001†\u0000à\f\u0000?Î\u0000\u0006\u00000\u00000\u0000\u0000\u0000\u0000@\u0000\u0001€00\u0010`\f\u0006\u0000À\u0000À0\u0000`\u0003\u0000\u0003\u0000\u0000\u0000\u0000\u0000\f\u0000\u0018\u0000\u0002\u0001\u0006\u0000À@\u000e\u0000\f\b\u0000\f\u00008\u00000\u0000\u0000\u0000\f\u0000À\u0001€\u0000`00\u0018\f\u0000þ\u0000€\u0000À\u0003ø\u0003\u0000Cÿàð\u0018\u0000\u0018\u0000\f\u0003\u0003\u0003\u0000À\fø\u0018\u0018\u0000\u0018\u00003à0\f?þ\u0003ƒ€\u0001€\u0000À00\u0000\u0018\u0000À€\u0003€\u0003\u0002\u0003\u0001€\u0000\u0000\u0000p\u0000\u0018\u0000\u0018\u0002\u0001€\u0001€\f\u0000\u0010\u0018\u0000<\u00000\u000000\u0000\u0000\u0000\u0006\u0000\u0001€\u0003\u0000`\u0018\u00000\u0000À\u0003\u001f€\u000e`\u0003\u0000\u0003\u000e\u0000\u0000\u0000\u0001À\u0000\u0018\u0000à\u0006\u0001€\u0006\u0000\f\u0000#ü\u0001Ã\u00000\u00001À\u0000\u0000\u00008\u0007ÿ€|\u0000À\f\u0001À\u0000À\u0000!ð8\u0018\u0003\u0000\u0003p\u0000\u0000\u0000\u000e\u0000ø?\u0000\u0018\u0000à8\u0000\f\u0000\u0003ù\u000e\u0000À0\u0000>\u0000\u0000\u0000\u0007À\u0000\u0000\u0000\u0000€\u0004\u0006\u0000\u0000À\u0000\u001f\u0000À\f\u0003\u0000\u0001\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Reset to Defaults": "\u0000²\u0011\u0000\u0010\u0000\u0004@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0006?Á\u0013ð@ø\u0000À\u0000\u0000\u0000\u0000\u0000\u00000\u0006\u0000\u0000\u0000\u00000\u0001†0ÆÄ\u0018&\u000fÿà\u0000\u0000\u0003€\f\f\u0001€\u0000\u0000\u0000\f\u0001ø„ñ\u001fˆ‚\u0000\u0018\u0000\u0000\u0007ü\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000\u0006!\u0004L@\u0006 €\u0006\u0007€\u0003³€ÀÀ\u00188\u0000\u0000\u0000À\u0001\bA\u0013ðñˆ\u0000\u0000\u0001°\u0001ˆ000?ÿ\u0000A€0\u0000‚\u0010|ü\u0000Çÿ€Î\u0000Â\f\f\f\u000fÀÁ˜`\u000e\u0000m„\u00111\u0000\u0000\u0000\f\u0000aÀ \u0003\u0003\u0000``3\u0018\u0003ø>a\u0004LGÏð\u0003\u000008\b``ÀÀ\u00180\fÄ\u0000ϛ˜Aó\u0010\u0001Œ\fÀ\u0018\u0006\u0006\u0018\u001800\u0006\u0018\u0001ƒ\u00000 ´0Dü\u0000#\u0002?€\u0000Á†\u0004\f\f\u0001Ž\u0000\u0000À\f\u0000'\f1±\u000f\r€Œ\u0000\u0000\u0018!\u0003\u0000\u0003\u0000a\u0000\u0000p\u0003\u0000\bÃ\u001füBAàs\u0000\u0000\u0003\fÁÀ\u0001€\u0018\u0000\u00008\u0000À\u0002`À\u0002\u0010p6À\u0000\u0000aàà\u0001À\u0006\u0000\u0000\u001c\u00000\u0000¸àl„$>\fÿÀ\u0000\u00009à\u0001à\u0001ÿÀ>\u0000\f\u0000,81g\u000fxæ\u000fø\u0000\u0000\u0000 \u0000`\u0000\u001fð\f\u0000\u0003\u0000\b\u0000\b\u0011ÂX\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Second": "\u0000E\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0006\u0000\u0000\u0000\u0000À\u0003\u0000\u00000\u0001€\u0000\u0006\f\u0018\u0000\u0001€\u000f\u0000\u00000°ÁÁÿð\u001c\u0000\u0001‚?ÿ\u0007ÿ€00\f\u0001ø\u0018\u0003\f\u0000\u0001\u0000p\u0001€\u0010`\u0000\u0018\u0003ø\f\u0018\u0001ƒ\u0000\u0001€\u0019ða€\f\u0018\u0000\f\u0000Àƒ\u001c\u0000@À\u0000À\u0006\u0000\u0018@\u0006\u0006\u0000\f\u00000\u0000À\u0000`0\u0001À\u0001€\u0006\u0000\u0007\u0001€|\u0000\f\u0000?øpø\u001f€\u0000`\u0000À\u0003€@\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Compacting...\nTakes approx\n1 minute": "\u0000¦\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0012€À\u00000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0018z\u0003\u0000\u0000À\u0001€\u0000\u0010\u0000\u0000\u0007\u0000\u0000\u0000\u001fþ\u000f\u0000\u0000a¸\u000fð\u0003\u0000\u0006\u000fÀ@\u0000ÿü\u0000\u0000\u0000ø\u000e\u0000\u0001†\u0000à\f\u0000\u0019ÿ\u0001\u0000\u0003†\u0000\u0000\u0000\u0000\u0000`\f\f\u0004\u0018\u0003\u0001€0\u0000`\u0000\f\u0000\u00000\u0000\u0000\u0000\u0000\u0001€\u0000 \u0010`\f\u0004\u0000à\u0001€\u00000\u0000\u0001€\u0000\u0000\u0000\u0000\u0006\u0000\u0001€ÀÀ`0\u0003ø\u0006\u0000\u0000À\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0018\u0000\f\u0003\u0003\u0003\u0000À\fø\u0018\u0000\u0003\u0000\u00000\u0000\u0000\u0000\u0000\u0000`\u00000\f\f\u0000\u0006\u00000 F\u0000\f\u0003\u0000À\u0000\u0000\u0000\u0000\u0001€\u0001€ \u0018\u0000\u0018\u0000À\u0001\u0010\u00000\f\u0003\u0000\u0000\u0000\u0000\u0000\u0006\u0000\f\u0001€`\u0000À\u0003\u0000\u0006@\u0000À \f\u0000\u0000\u0000\u0000\u0000\u0018\u0000à\u0006\u0001€\u0006\u0000\f\u0000\u0019\u0000\u0003\u0001€\u0018\u0000\u0000\u0000qÿà\u001f\u00000\u0003\u0000p\u00000\u0000gü\u0006\f\u0000p\u0003\f1gÿƒð\u0001€\u000e\u0003€\u0000À\u0001ð\u000fà\u0000ü\f0Ȁ\u0002\u0004\u0000\u0002\u0000\u0010\u0018\u0000\u0003\u0000\u0006\u0000\u0000\u000e\u0000\u0000p\u0000\u00002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000p", - "Date": "\u0000 \u0011\u0000\u0000\u0000\b\bÿð\u0018\bÀ0\u0010\b€\u00100\b€\u00107ÿ€\u0010`\f€\u0010`\bÀ0ã\bÿð¡\b€\u0010!ˆ€\u0010 ˆ€\u0010 ˆ€\u0010 \bÀ0 \bÿð \bÀ0 \u0018€\u0010 x", - "Minute": "\u0000\u0011\u0011\u0000\u0000\u0000\u0002\u0010\u0003\f\u0001\u0003\u0001€a€\u001d€\u0006\u001fø\u0001\u0004\u0001‚\u0000Á\u0000Á€àÁÁàÀà\u0000\u0000\u0000", - "Connectable": "\u0000H\u0011\u0000\u0010\u0010\u0002\u0006\u0000\u0000\u0000\u0000\u0000\u0010\u0010\u0006\u0006\u0000\u0000\u00000€\u0011ÿ„çÿølŒ\u0019ÿ\r†\u0000\u0000@Æø|B\t\u0006\u0000\u0000AþÀ\u0010F\u001f?À\u0000@€\u0011ÿž\u0000\u0001ü@\u0000†\u0010 \u0005\u0000\u0001\f@üü\u001c \r¿á\f@„\u0000{ÿ©a\f@ü€pf\u0018éaŒ@Ď\u0010Æ\u0000\t\u0001ü@Äø\u0010Æ\n™\u0001\u0000@üÀ\u0010|\n™ \u0000@„‚\u0010\u001c\u001a1 \u0000@„Æ\u0010÷\u0010aà\u0000Àœ|pÁ\u0000\u0000\u0000\u0001À\u0000\u0000", - "Stay Connectable": "\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0001\u0000\u0001ø\u0000\u0000\u0000\u0000\u0001ð\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\b\u0000\u001câ\u0000\u0000\u0000\u0000=à\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0002\u0000@\u0001€\u0010\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0010\u0002\u0000\f\u0003ùð@À\u0018\u0000|\u0017‚ð\u001e\u0003ÏçÀ¼\u0010<`\f\fã\u0006\u0001€\u0007pæ\u001cØs03‡0‡1à \u0003\b`\f\u0000`Æ\u0018Ã\u0010b\u0000€\f0Ä Çá\u0000\bc\u0000`\u0003\u0006 Ä\u0019ƒ0\u0004\u0000!\u0002#\u0006\u0003ˆ\u000fÃ\u0010\u0003\u0000\u00181\u0006 Ïù€ ?\b\u0011\u001fð\f@Â\t€\u0018\u0000Áˆ1\u0006`\f\u0001\u0003\b@ˆÀ\u0000\"\f\u0010l\u0000`\u0006\fAˆ3\u0000`\b0B\u0004F\u0000\u0003\u0010aÀ\u0003\u00000b\fAŒ\u0001\u0000A†\u0018b\u0018\u000fxÜ\u000e\u0000\u000fxî\u0010b\fsŽc\u000epæ\u0010ç?\u0003Ï `\u0000\u001f\u0003àƒ\u0010`ø\u001e\u000f<…àð\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Hour": "\u0000\"\u0011\u0000\u0000\u0010\u0000\u0000\u0000\u0004\u0007çÿƒ\u0001\t\u000f'øBCˆ\u0010\u001fŸâ\u0004\u0004$\u0018Ÿñùÿà\u0000@\u0003È\u0004\u0011übÄC\u0018€a\u0010Æ\"\u0010GñøÄ\u0011\u0004r\u0011\u0004\u0018\u0000A\u0000\u0004\u0000p@\u0003\u0000\u001c\u0010\u0003€", - "No Clocks Found": "\u0000‰\u000e\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001°0\u0000\u0000\u001f\u0004\u0000\u0000\u0001\u0000\u0001ü\u0000\u0000\u0000\u0000\u0000Ü\u0018\u0000\u0000=â\u0000\u0000\u0000€\u0000À\u0000\u0000\u0000\u0000\u0000n\f\u0000\u00000\u0001\u0000\u0000\u0000@\u0000`\u0000\u0000\u0000\u0000\u00005†\u001f\u0000\u0018\u0000ƒà< À0\u0007Á\u0006/\u0003Úc\u001dÀ\u0018\u0000C¸s\u0011€\u0018\u0007pƒ\u001cý1˜0\f\u0000#\u0006 \t€\u000fæ\fAŒ3\u000eŒÌ\u0018\u0006\u0000\u0011ƒ0\u0005€\u0006\u0003\u0006 Ä\u0019ƒFf\f\u0003\u0000\bÁ˜\u0003€\u0003\u0001ƒ\u0010b\fÁ¡³\u0006\u0001€\u0004`Ì\u0001à\u0001€Áˆ1\u0006`Ðك\u0000`\u00020f\u0000˜\u0000À`Ä\u0018ƒ0h<Á€0\u0001\u00181\u0000F\u0000`0b\fA˜t\u000e;€\u000fx‡pæ!€0\u000eáÞ Çz\u0007\u000f€\u0001ðAð\u001e\u0010`\u0018\u0003à{\u0010aì", - "App Settings": "\u0000k\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0005\u0000\u0006\u0000\u0000\u0000ð\u0001€?ÿ\u0000\u0000àÀÀ\u0003€\u0018&\u000fÿçÿàÿø\u0018\u0018\u0003þ\u000fÄA\u0000\f\u0000\f\u001fþ\u0003\u0003\u0000ìà\u0001ˆ \u0001€C\u0000\u0000À``1\u0006\u001e1\u0000\u0000\u0000\fÀ\u0000\u0018\f\f\f À\f8ø\u00018\u0000\u0003\u0001\u0004\b\u0000\u0000\u0000`\u0000.\u0000\u0000À00!Ÿ?À\f\u0000\u0004€\u0000\u0018\u0006\u0006\f00\u0003\u0018\u0019€\u0000€\u0000\u0006\u0000ÀÁ†\u0004\u0000#\u0002?€0\u0000\u0001À\u0000\u0018\u0010‡†ÀF\u0000\u0006\u0000\u0000p\u0000\u0006\u00030px\u001cÀ\u0003€\u0000\u001c\u0000\u0003€<\u001c\u0012\u000e\u0006Ø\u0001à\u0000\u001e\u0000\u0001à\u0003ž\u0002CàÏü0\u0000\u0007\u0000\u00000\u0000\u0001\u0000{Ç0À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t``\u0000\u0000", - "Flattening battery - this can take hours.\nLong-press button to cancel": "\u0000Ä\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0005\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000ˆ\u0000Ãh\u0000\u0000?ø\u0006\u0006\u0000\u0000\u0000\u0007\u0000\u0000\u0000\u0007ÿ\u0000\u0000\u0000\u0018\u0000\u0018€\f2\u0000\u0000\u0003ÿ€``\u0000\u0000\u0003þ\u0003ÿÀà\u0000\u0000\u0001€\u0001\b`Ã\u0000\u0000\u0000\u0000\u0000\u0006\u0006\u0000\u0000\u0000vp?ü\u0000\u0000\u0000\u0000\u0000\u0018\u00000Œ\b0\u0000ƒ\u0000\u0000\u0000``\u0000\u0000\fA€\u0000À\u0000\u0000\u0002\f\u0001€\u0006\t€ƒ\u0000Ì0þ\u0006\u0006\u0000\u0000\u0001„\u0018\u0000\f\u000fÿ\u00030À\u001c\u0000`ð\u0018\u0010\u0006c\u0007ÿà``ü\u0010@€\u0000Àÿø\u0019Œ\u0001ü\u000e\u000e\u0001€f \u0001€\u0006\u0006\u0007ÿÁ\f\f\u0000\u0018\u0000\u0003\u0001˜€\u0019ð¡À\u0018\u0018\u0003\u0006\u0000\u0018\u0000``\u0000\u00000ÀÀ\u0001€\u00000\f\u0018\u0001\u00028\u0001\u0000€\u0000`\u0001€\u0006\u0006\u0000\u0000\u0003\f\b\u00000\u0000\u0006\u0000\u0001€\u0018\u0000 €0\f\u0000\u000e\u0000\u0018\u0000\u0000`\u0000\u0000\u0010€\u0007\u0000\u0000à\u00008\u0001€\u0002\b\u0003\u0000À\u0001À\u0003\u0000\u0000\f\u0000\u0000\u0001˜8\u0000à\u0000\u001c\u0000\u0007\u0000\u0018\u0000 ƒ`\u0006\u00008\u0000p\u0000\u0003€\u0000\u0000\u000f\u0007\u0000<\u0000\u0007€\u0000à\u0001€\u0002\b>\u0000p\u001f\u0000\u001e\u0000\u0000ð\u0000\u0000\u0000sÀ\u000f\u0000\u0007à\u0000|\u0000\u0018\u0000 Ï@\u0002\u0001€\u0001€\u0000\f\u0000\u0000\u0000\u0000\u0010\u0001À\u0000p\u0000\u0006\u0000\u0001€\u0002\u000fà\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000", - "Month": "\u0000\u000f\u0010\u0000\u000fþ\u0010\f \b@\u0010ÿá\u0000Â\u0000„\u0001\u0018\u0006?ü`\u0018€\u0013\u0000&\u0000Ø\u0005°\u000e", - "OFF": "\u0000!\r\u0000\u000fü\u001càÀ0\u0018\u0018`\u0018\f\u00060\f\f\u0003\u0018\u0006\u0006\u0001ãû\u0000Æ\u0001€c\u0000ÀÀ1€`0\u0018À0\u0018\u0018`\u0018\u000780\f\u0000ø\u0018\u0006\u0000", - "Right": "\u0000\u0011\u0010\u0000\u0000\u0000\u0000À\u0000`\u00000\u0007ÿø\u0018\u0000\u0018\u0000\f\u0000\f\u0000\u001fÿ™\u0000À€`@0 \u0018\u001fü\b\u0006", - "Widgets": "\u0000h\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0003`\u0000\u0000\u0000\u0000\u0003\u0000\u0003\u0000\u0000\u0000\u0007\u0001 \u0000\u0000\u0000\u0000\u0003\u0000ø\u0000\u0000\u0003À€\u0000\u0000\u0000\u0000\u0003\u0000ÿø\u0000\b\u0000@\u0000\u0000\u0000\u0000\u0000\u0003\u0000À\u0018\u0000\u0018\u0000\u0000À\u0000\u0000\u0004\u0018\u0003\u0000À\u0018\u0000p\f\u0000ÀÿÀf\u0018\u0003€À\u0018\u0000à\u000f\u0001€ÿÀ3\u0018\u0003øÀ\u0018\u0001À\u0003ƒ€\f\u00003\u0010\u0003>@\u0018\u0007À\u0000\u0007\u0000\f\u0000\u00180\u0003\u0002\u0000\u0010\u001cÀ\u0000\u0006\u0000\f\u0000\u00000\u0003\u0000\u00000\u0018À\u0000\u001c\u0000\f\u0000\u0000p\u0003\u0000\u0000`\u0000À\u00008\u0000\f\u0000\u0000à\u0003\u0000\u0001À\u0000À\u0000à\u0001ÿà\u0001À\u0003\u0000\u000f€\u0000À\u0007À\u0001ÿà\u000f€\u0003\u0000\u000e\u0000\u0000À\u0006\u0000\u0000\u0000\u0000\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Left": "\u0000\u0011\u0011\u0000\u0000\u0000\u0001\u0000\u0000€\u000fÿà`\u00000\u0000\u0010\u0000\u0018\u0000\f\u0000\u000fÿ\f\u0010\f\b\u0006\u0004\u0000\u0002\u0000\u0001\u0000ÿ\u0000\u0000\u0000", - "Sort Order": "\u0000F\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0006\u0004\u0000\u0000\u0000€\u0000\u0016\u0018\u0018\u0003à\u0003\f\u0001Ã!ûø\u000fà\bp\u001f\u0004\u0001\u0000\u0000\u0003ÿø\f\u0018?¿À\u0006\u0000d\u0000``\u00188\u000fø\u0001\u0001Àñ°\u0000ÀfF\u0004\u0007†l`\u0002\u0001™\u00100\u001a0\u0000€\u0010\u0002dÀÀl?ü\u0000ð\r“\u0002\u0001€À0\u0007`\u0016H\f\u0006\u0002\u0000À1€Y 00\u000fÿ\u0001†\u0000d\u0000AÀ \f\f\u0018\u0001˜\u0001þ\u0000À0p~ÿÿ\u0001à\u0003ÿÁ€ø\u0000\u0000\u0000\u0000\b\u0003\u0000\u0000\u0000", - "Side": "\u00003\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0003\u0000\u0000`\f\u0000 `\u0000\u001c\u0001ƒ\u0004\f\u0000\u0007\u00000°Á€\u0001À\u0006\bÿþ\u0000à\u0000À\u001fÿÀ<\u0000\u001c\u0000@À\u001f€\u0003ø\b\u0018\u000f0\u0000gÁ\u0003\u0003†\u0000\f\b @\u0000À\u0001€\u0000\u0018\u0000\u0018\u00000\u0000\u0006\u0000\u0003\u0000\u0006\u0000\u0003€\u0000`\u0000À\u0001à\u0000\f\u0000\u0018\u0000\u0010\u0000\u0001€\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "No app has settings": "\u0000Œ\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003€\u0000\u0010>\u00000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000(\u00001‚`ÿþ\u0000à\u0001€\u0003\u0000@ÿü\u0000\u0003ƒ\u0003~\"\b\u0000`Àÿp0\u0006\u000fÿÁÿð00\u0006 €\u0006\u000eÎ\u000fóƒ\u0000`\u0000\f\u001fþ\u0003\u0003\u00000\u0001ÿð0 \u0006\u0000\u0006\tƒÿøäؘ\u000f÷\u0007⠀\u0006y&\u0000\u000fãüà\u0001ˆ \u0001†I1˜0\f\u0000ÀÀ\u0018`\u0006\f\u0000Àƒ8\u0000\u0001€\u0018\u0000g@\u0006\u0006\u0000Ç\u0000\u0000`\u0006\u0000\u000eÀ\u0000\u0006\u0000À\u0000b\u0000\u00000\u0006\u0010\u0000\u0007\u00000\u0000\f\u0000\u0000\u0018\u0003\u0000\u0002\u0010\u0000\u0003\u00000\u0000\u0000p\u0001€\u0000`\u0000\u0000`\u001c\u0000\u0010\u0000\u0000p\u0001€\u0000\u0007\u0000\f\u0000\u000e\u0000\u0000\u0000\u0000~\u0000ÿÀ\u000f\u0000\u000fþ\u0001ð\u0000`\u0000À\u0000\u0000\u0000\u0000p\u0003þ\u0000`\u0000\u001fð\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "This will remove everything": "\u0000Æ\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000 \u0000\u0003€\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000@\u0000`\u0000\u0000€\u0002\u001f\u0000\u0000\u0000\u0001€\u0000\u0004\u0000\u0001À\u000e\u0000\f\u0000\u001fü\u0003\u000e\u0001ƒð\u0003\u0000\bL\u0000\u0000\u0007ÿø\u0000h?ÿ\u0001ÿ\u00000\u0000?ð~ü\u0006À\u000fà \u0010\u0000\u0000\u001fü\u0000x€á€\u000eÎ\u000fÿ\u0000\u0000\u0000÷\u0010\u0018\u0000\u0000?€@\u0000\u0000\u0000`\u0001°\u0000\f\u0000b\f?\u0000\u0000\u0000\u0000ð@`\u0000\u0000À\u0006\u0001\u0000\u0000\u0000\u000f€\fà\u0000`\u0003\b0\f\u0000\u0000\u0000\u0003\u0001€\u0000\u0003\u0000\u0018\u0004\u0000\u0000\u0000f\u0000aÀ\u0001€\b @0\u0000\u0000\u0000\f\u0004\u0006\u0000\u0000\f\u0000`\u0010\u0000\u0000\u0001\f\u0003\u0003€\f\u0000!ÿ\u0000€\u0000p\u0010\u0011€\u00000\u0001€À\u0000\u0000\u00040\u0018\u0006\u00000\u0001†\u0006?\u0000\u0016\u0000\u0003ÀÀD\u0000\u0000À\u0006\u0003\u0000\u0000\u0000\u0019À\u0000\f\u0000À\u0006\u0018\u0010\b\fP\u0000\u000f\u0003!\u0000€\u0000\f\u0000\u0000\u0000;\u0000\u0000\u0018\u0003\u0000\b@À 0`\u0000,\r†@\u0003\u000fÀ\u0000`\u0000\u0000\u0000\u0018\u0000\u00000\u0006\u00003\u0007\u0000€Aÿà0>\u0019ÿ\f3À\u0007\u0001€\u0000\u0000`\u0000\u0000`\u001c\u0000x8\u0003\u0003\u0001ÿ€Àpcü\u001fƒ\u0000x\u0003\u0000\u0000\u0007\u0000\u0000\u0000\u0000?\u0000ç€\u000fü\u0000\u0000\u0003\u0000\u0001€\u0000<\u0000\u0001€\u0006\u0000\u00000\u0000\u0000\u0000\u0000\u001c\u0000\b\u0000\u000fÀ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Alarm": "\u0000F\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0001ÿø\u001fü\u0000\u0000\u00000\u0007ÿàà\u0000\u0000\u0000À\u0000\u0001€\u0000\u0000\u0000\u0000\u0006\u0000\u0001\f\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0006`?ü\u0000\u0000\u0000`\u0000\u0013€ÿøü\u0003\f\u0000\\\u0000\u0000Áÿð\f0\u0001 \u0000\u0003\u0000\u0000\u00000`\u0004\u0000\u0000\u0018\u0000\u0000\u0001€0\u0000\u0000à\u0000\u0000\u0006\u0003\u0000À\u0000\u0007\u0000\u0000\u0000\u0010\f\u000e\u0000\u0000x\u0000\u0000\u0000ÿøð\u0000\u001f€\u0000\u0000\u0007þc\u0000\u0000p\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "on": "\u0000\u0010\u000e\u0000\u0000\u000eþpÀ\u0001‚\u0003\u000b\u0003\u0004\u0006\u0000\u0006\u0000\u0006\u0000\u0006\u0000\u0003\u0000\u0003€\u0001ø\u00008", - "Minutes": "\u0000\u0011\u0011\u0000\u0000\u0000\u0002\u0010\u0003\f\u0001\u0003\u0001€a€\u001d€\u0006\u001fø\u0001\u0004\u0001‚\u0000Á\u0000Á€àÁÁàÀà\u0000\u0000\u0000", - "Reset all widgets": "\u0000Ã\u0011\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u0006\u0000\u0000\u0000\u0000\u0006À\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u0000\u0000\u0001€0\u0000\u0000\u0000\u000f€\u0000À\u0000\u0000\u0001Àh\u0000\u0000\u0000\u0000\u0000À\u0000\u000e\u000000\u0006\u0000\u0000\u0000\u0003Œ\u0003ÿÀ\u0000\u0000\u001e\u0004\u0000\u0000\u0000\u0000\u0000\u0018\u0000\u000fø\u0006\u0006\u0000À\u0000\u0000\u0000ÀÀÿø\u0000\b\u0000@\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0003³€ÀÀ\u00188\u0000\u0000p\u000e\u0018\u0003\u0000\u0003\u0000\u0000\u0018\u0000\u0000\u0000ƒ\u0000`\u0000Ä\u0018\u0018\u0018\u001fÿ€ ßÿã\u0000`\u0001À0\u0003\u0003ÿ\u0001˜`\u000e\u00000ƒ\u0003\u0003\u0003ð0f\u001a\u0006\u0004`\f\u0000p\u0007€Àà\u0019Œ\u0001ü\u0004\u0010 ``\f\f\u0006c\u0000À\f\u0001€\u001c\u000088\u0000À\u00031\u00003à†\u0006\f\f\u0001ƒ\u0000Ì@\u0018\u0000€0\u000f€\u0000\u000e\u0000\u0018\u00000`\u0006\u00040ÀÁ€0À\f\u0018\u0003\u0000\u0000\u0004\u00070\u0000\u0001€\u0003\u0000\u0000\f\u0000À\u0006\u0018\u001000\u00068\u0000\u0003\u000fÿ\u0000\u0001€Æ\u0000\u0000à\u0000`\u0000\u0003€\u0018\u0000B\u0006\u0000\u0006\u0000Â\u0000\u0000à\f\u0000\u0000`\u0000À\u00008\u0000\f\u0000\u0000à\u0003\u0000\fÁÀ\u0001€\u0018\u0000\u00008\u0001€\u00008\u0000\u0018\u0000\u001c\u0000?ü\u00008\u0000`\u0000ðp\u0000à\u0003\u0000\u0000\u000e\u00000\u0000>\u0000\u0003\u0000\u001f\u0000\u0007ÿ€>\u0000\f\u0000\u000ex\u0000x\u0000ð\u000fÿø\u0007\u0000\u0000`\u0003\u0000\u0000\u0000\u0000\u0006\u0000\u0001€\u0000\u0004\u0000\f\u0000\u0003þ\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Hours": "\u0000\"\u0011\u0000\u0000\u0010\u0000\u0000\u0000\u0004\u0007çÿƒ\u0001\t\u000f'øBCˆ\u0010\u001fŸâ\u0004\u0004$\u0018Ÿñùÿà\u0000@\u0003È\u0004\u0011übÄC\u0018€a\u0010Æ\"\u0010GñøÄ\u0011\u0004r\u0011\u0004\u0018\u0000A\u0000\u0004\u0000p@\u0003\u0000\u001c\u0010\u0003€", - "Enabled": "\u0000\"\u0011\u0000\u0000\u0000\u0004\u0004\u0000À\u0001\u00000\u0000`Aÿüÿ0\u0004\u0000\u0000\u001fÃ\u0000\u0002c1ÿá\fÌà\u0018Ã3h\u0006\u0001\fÓÿ†Ã0€`àŒ \u0018\u0018#\u000fþ\u0007\u0018‚\u0001ƒd €C‹\u0018 ð€ž\b\u0000\u0000\u0000\u0000", - "Repeat": "\u0000B\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\f\u0003\u0000\u0000\u0000\f\u0003\u0003\u0000À,\u0000\u0000\u0003\u0000ÀÀ0\u0006\u0000\u0000\u0000À00\f\u000e\u0000\u0000\u00000\f\f\u0003\u000f\u0000\u0000\u0000\f\u0003\u0003\u0000ß\u0000\u0000\u0000\u0003€ÀÀ>\u0000?þ\u0000þ00\f\u0000\u000fÿ€3ì\f\u0003\u0000\u0000\u0000\u0000\f\u000b\u0003\u0000À\u0000\u0000\u0000\u0003\u0000\u0000À0\u0000\u0000\u0000\u0000À\u0000`\f\u0000\u0000\u0000\u00000\u0000p\u0003\u0000\u0000\u0000\u0000\f\u0000x\u0000ÿð\u0000\u0000\u0003\u0000\u0018\u0000\u000fü\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Delete": "\u0000#\u0012\u0000\u0000\u0000\u0000\u0000\u0001\u0000@\u0000\u0001&\bø`4‰\u001b\u001e\u0000‘\"B`ÿ$HÇ\u001fä‹pr\u0004‘Éð@’,\b\u000fòDƒ\u0001\u0002HŸþ I\u0013\f\u0007ù\"d\u0004y’\u0010 ˆbb\u0004\u0011\fFA‚!8HqÄ\u0006\u0000", - "Reset": "\u0000B\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0006\u0000\u0000\u0000\u00000\f\f\u0001€\u0000\u0000\u0000\f\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000ÀÀ\u00188\u0000\u0000\u0000À00?ÿ\u0000A€0\f\f\u000fÀÁ˜`\u000e\u0003\u0003\u0000``3\u0018\u0003øÀÀ\u00180\fÄ\u0000ϰ0\u0006\u0018\u0001ƒ\u00000,\f\u0001Ž\u0000\u0000À\f\u0000\u0003\u0000a\u0000\u0000p\u0003\u0000\u0001€\u0018\u0000\u00008\u0000À\u0001À\u0006\u0000\u0000\u001c\u00000\u0001à\u0001ÿÀ>\u0000\f\u0000`\u0000\u001fð\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "goal": "\u00004\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u000f\u0000\u0000\u0000\b\u0000\u0000@\u0000\u00001€ø\u0000\u0000\u0003\u0018\u0007ÿ€\u0000\u00001€\u0000\u0018\u0000\u0000\u0003\u0018\u0000\u0001€\u0000\u00001€\u0000\u0018?þ\u0003\u0018\u0000\u0001ƒÿà1‚\u0000\u0018\u0000\u0000\u0003\u0018`\u0001€\u0000\u00001Œ\u0000\u0018\u0000\u0000\u0002\u0019€\u0001€\u0000\u0000a¸ø\u0000\u0000\u000e\u001e\u0007ÿ€\u0000\u0001ÁÀ\u0000\u0018\u0000\u0000\b\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Beep": "\u00003\u0012\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u00009€X\u0000\u0000\u0000\u00050\f\u0000\u0000\u0000\u0000æ\u0003\u0000\u0000\u0000ÿøÁà\u0000\u0000\u001fþ\u0018ð\u0000\u0000\u0000\u0000Ãø\u0000\u0000\u0000\u0000\u0018x\u0000ü\u0000\u0003\f\u0000\u000fÿ€\u0000Á€\u0000\u0000\u0000\u0000\u00180\u0000\u0000\u0000\u0000\u0006\u0006\u0000\u0000\u0000\u0000\u0001ÀÀ\u0000\u0000\u0000\u0000p\u0018\u0000\u0000\u0000\u0000\u001c\u0003ÿÀ\u0000\u0000\u001e\u0000\u001fø\u0000\u0000\u0007\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Message": "\u0000Y\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\r€\f\u0000\u0000\u00000\u0000\u0000\u0000\u000e\u0003@\u0006\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0003À€\u0003\u0000\u0000\u0000\f\u001c\u0000\u0000\u0000 \u0000á\u0000\u0004\u0018?ÿ\u0000\u0000\u0000\u00000=€3\f\u001f€\u0000\u0001€\u0018\u0007À\fÆ\u0001ƒÿàð\u0018\u0000à\u0006b\u0000Áÿð\u001c\u001c\u0000ü\u0001ƒ\u0000a€\u0000\u0000\u0000\u001c\u0000g\u0000\u0001€1À\u0000\u0000\u0000\f\u0000aÀ\u0001À\u0018@\u0000\u0000\u0000\u001c\u0000`@\u0001À\f\u0000\u0000\u0000\u0000\u001c\u0000à\u0000\u0001À\u0006\u0000\u0000\u0000\u00008\u0001à\u0000\u0007À\u0003ÿ€\u0000\u0000ø\u0000À\u0000\u0003\u0000\u0000À\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "System": "\u0000F\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000à\u0000\u001fð\u000fþ\u00000\u0001à\u0000ÿà?ø\u0000À\u0000€\u0000\u0003\u0000\u0000\u0000\u0006\u0000\u0000\u0006\u0000\f\u0000\u0000\u0000\u0018\u0001€\u0018\u0000`\u001fÿ€`\u0007€À\u0001€þ\u0003\f\u0007\u0007\u0000\f\u0000\u0006\u0000\f0\u00008\u0000p\u0000\u0018\u00000`\u0000À\u0001à\u0000`\u0001€\u000e\u0000\u001cÀ\u0001€\u0006\u0003\u0000p\u0000á€\f\u0000\u0010\f\u0007\u0000\u0007\u0003\u0000p\u0000ÿøø\u0000p\u0006\u0007€\u0007þc\u0000\u0001€\u0018\u0018\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Select Clock": "\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u00000\u0000\u0003\u0000\u0000À\u00000\u0000\u0000\u0000\u0000\u0000\u0000À\u0003\u0000\u0001€\u0000\u0018\u0000\u0006\u0000\u0001€\u0003ÿÀ\u0000\u0000\u0006\u0000\u0018\u0000\f\u0000\u0000ÿ\u00000\u0000\u000fð\u001fþ\u0000\u0000\u0000?ÀÁÀ`\u0000\u000fü\u0001€\u0000ÿÀÀ0\u0000\u0000\u0003ÿ?ÿ\u0003\u0000\u0000À`\f\u0000\f\u0006\u0006\u0001€\u0010`0\u0019ø\u0018\u0018\u0000\u0006\u0002\u0000p\u0000` 0\f\fÃ\u0001€€À\u0010`0\u0003ø\u0006\u0003\u0001€`3\u0018\u0018\f\f\u0018\u0006\u0001†\u0001€\u0019ð`\u0018\f\u0003\u0001˜€`a€0\u0018\u0000\u0018\u0000À€\u0001€`\u0018\u0006\f\u0000\u0006\u0003\u001c\u0001€\u0000À\u0006\u0000\u0000\f\u0003\u0000À\u0000`\u00000\u0018@\f8\u0000\f\u00000\u0000\u0000À\u0018\u0006\u0000\u0007\u0000\u0003\u0000À\u0000c€\u0000À\u0001€\u0000\f\u0000À0\u0000p\u00000\u0006\u0000\u0003p\u0000\u001c\u0000\f\u0000\u0001À\u0007ÿ€\u0007\u0000\u0007\u0000?ø\u001f\u0000\u0001À\u0000`\u0000\u001c\u0000?ü\u0001ð\u0000p\u0000À@\u0000\u0018\u0000\u0003\u0000\u0001€\u0001\u0000 \f\u0000\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Locale": "\u0000E\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000 ?ü\u0003\u0000\u0000\u0000\u0000c\u0001ÿà\u0018\u0000\u0000\u0000\u0003\u0018\f\u0003\u0001ÿà\u0000\u0000\u0018À`\u0018\u000fÿ\u0000\u0000\u0000Æ\u0003\u0000ÀÁ€\u0000\u0000\u00060\u0018\u0006\u000e\f\u0003ÿà1€À0``\u001fÿ\u0001Œ\u0016\u0001€\u0003\u0000\u0000\u0000\fa°\f\u00000\u0000\u0000\u0000c\u0019€`\u0001€\u0000\u0000\u0002\u0019Œ\u0003\u0000\u0018\u0000\u0000\u00000Üø\u0001À\u0000\u0000\u0003‡ƒÿÀ8\u0000\u0000\u000088\u0010\u0002\u0001€\u0000\u0000\u0000€€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Vibrate": "\u0000#\u0011\u0000\u0010\u0000\u0000\u0002\u0002?óü@D\u0000\u0004\b>€\u000fû÷×ð\u0010~\"\u0000\u001fÄÄ@\u0002ؘüI\u0013\u001dh\u000fâo-\u0011$MŶ?™‰³ƒ16`0F$Ä?؄šÀû\u0011³ÌþNr`€\u0000\u0000", - "Alerts": "\u0000E\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0018\u0003ÿð?ø\u0000\u0000\u0000À\u001fÿÿ€\u0000\u0000\u0006\u0000\u0000\f\u0000\u0000\u0000\u0000\u00000\u0000\u0010À\u0000\u0000\u0000\u0000\u0001€\u0000Ì\u0007ÿ€\u0000\u0000\u000e\u0000\u0004à?þ\u001fÿ\u0000\u0000.\u0000\u0000`ÿø\u0003>\u0001 \u0000\u0003\u0000\u0000\u0000\u0018\u0010\b\u0000\u00000\u0000\u0000\u0000À\u0000À\u0000\u0003€\u0000\u0000\u0006\u0000\u0006\u0000\u00008\u0000\u0000\u00000\u0000à\u0000\u0007€\u0000\u0000\u0001€\u001e\u0000\u0003ð\u0000\u0000\u0000\f\u0000À\u0000\u001c\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Whitelist": "\u0000{\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0018\u0003\u0000\u0000\u0003\u0000\u0000\u0000\f\u0000\u0006\u0000ü\u0000\u0007\u0000`\u0000``\u001fð\u0001€\u0000À\u000fÿ€\u0001À\f\u0000\f\f\u0007ÿ\u00000\u0007ÿá€0\u0000p\u0001€\u0001€\u0000À\u0006\u0000ÿü0\u0006\u00008\u00000\u000000\u0000\u0018\u0000À\u0000`\u0006\u0000À\u000f\u0000\u0007\u0000\u0006\u0006\u0000\u0006\u0000\u001c\u0000̀À\u0018\u0007à\u0000þ\u0000ÀÀ\u0000À\u0003ø\u0019˜\u0018\u0003\u0003Ì\u0000\u0019ð\u0018\u0018\u00000\u0000gÆ1\u0000\u0000Àá€\u0003\u0002\u0003\u0003\u0000\u000e\u0000\f\bÆ0\u0000\u0018\u00000\u0000`\u0000``\u0001à\u0001€\u0010Æ\u0000\u0006\u0000\u0006\u0000\f\u0000\u0000\f\u0000æ\u00000\u0006\u0018`\u0001À\u0000À\u0001€\u0000\u0003\u00008`\u0006\u0001ƒ\u0006\u0000ð\u0000\u0018\u00000\u0000\u0001À\u000e\u0006\u0000À\u0011à\u0000x\u0000\u0003\u0000\u0006\u0000\u0000ð\u0007\u0000`\u0018\u00008\u0000\f\u0000\u0000`\u0000À\u0000\u0018\u0000À\f\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Set Time": "\u0000X\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\f\u0000\u0000\u0000\u0000`\u0000\u0000@~\f\u0000\u0000\u0000\u0000`\u0003àÀBC\f\u0000\u0000\u0000\u0000`\u0003'øBC\f\u001c\u0000\u0000\u0000`\u0002 @~þ\u0000ƒ\u0000`\u0002 @BA~\u0006\fÃ\u0000p\u0002'ü~\f\f\u0006c\u0000\u0003à\u0000@\u0003\f\u0018\u0006b\u0000gà \u0010Gñ\f0\u0003\u0006\u0000`B'üD1\fp\u0000\u0006\u0000`\u0002 \u0018D1\f \u0000\u000e\u0000`\u0002\"\u0010Gñ\f\u0000\u0000\u001c\u0000`\u0003ã\u0010D\u0011\f\u0000\u00008\u0000`\u0003!\u0010Gñ\u000fþ\u0001ð\u0000`\u0002\u0000\u0010@\u0001\u0003þ\u0001€\u0000`\u0000\u0000p@\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000p@\u000e", - "Disable": "\u0000A\u000e\u0000\u0000\u0001\u0000\u0000\u0000€\u0010\u0000?€€\u0000\u0000@\b\u0000\u0018ð\u0000\u0000\u0000 \u0004\u0000\f\u001c\u0000\u0000\u0000\u0010\u0002\u0000\u0006\u0006\u0010||\u000bÁ\u0003Ã\u0001ˆæ3‡0‡1€Ä`\u0000Ã\fB\fÀb0\u0000!\u0002#\u0006`1\u000f\u0003ð\u0011ÿ0\u0018ã\b@ˆÀ\u0018\u0018@\u0013\u0004 D`\f\u001c \t†\u0018b\u0018\u0006|\u0011Œç\u000ea\u000esø\bü<…àð", - "BACK": "\u00001\r\u0000\u0000À\u000fƒ\u00061Àp\u001eñ†\u0018 h\u0018\u0000Æ\f\u0010&\f\u0000f\u0006\u00183\f\u00006\u0003ø\u0018†\u0000\u001e\u0001†\bc\u0000\u000f\u0000ÁŒ1€\u0007À`ÇøÀ\u0003p0f\u00060\u0001œ\u00183\u0001\u0018\u0000Ç\fq€Ç¼aÇñ€`ø0p", - "ALARM": "\u0000=\r\u0000\u0006\u0003\u0000\u0018\u000fÀp88\u0018\u0000àgƒÃ@À\r\u0003\f\u001c\u001e\u0013\u0006\u0000L\u0018`°±˜0\u0006`Ã\u0004ŒA€1\u00068$lC\f\u0001\f?2f\u0018`\u0018aŒ\b³?Ã\u0000ÿ\f0G\u001b\u0003\u0018\f\fa‚8Ø\bÀ`#\u0006\u0010†Àf\u0003\u0001˜0€<\u0003?ð\fÀÄ\u0001€", - "Timer": "\u0000D\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000`\u0000\u0000\u0000\u0000\u0006\u0000\u0000\u000e\u000fÿ€\u0000\u0000ÿÀ\u0001Àÿü\u0000\u0000\u000fü\u00008\u0000\u0001€\u0000\u0001€\u000e\u0000\u0000\u0018\u0000\u00000\u0018\u0001à\u0000\u0003\u0000\u0000\u0006a€~\u0000\u0000`?þð\u001e`\u0003Œ\u0003ÿà\u000f\u0003†\u0000\u001dÀ\u0000\u0000\u0000`\u0000`\u0000x\u0000\u0000\u0000\f\u0000\u0006\u0000\u0003\u0000\u0000\u0000\u0001€\u0000`\u0000\u0018\u0000\u0000\u0000p\u0000\u0006\u0000\u0000À\u0000\u0000\u001e\u0000\u0000`\u0000\u0006\u0000\u0000\u0001€\u0000\u0006\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Error in settings": "\u0000j\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u000f€\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001‚`ÿþ\u0000à\u0000\u0000\u0000ÿà\u0000\u0001øˆ \u0001ÿ\u0003ÿà?ð\u0000\u0000\u0000b\b\u0000`ìàø\u0000\u0000\u0000\u0000\u000f\u0018€\u0000\u0000b\f\u0000À\u0000\u0000\u0000\u0000\u0000\f8ø0ƒ\u00000\u0001ÿà\u0000\u0000\u0000\u0000\u0000À\b @\f\u0000ü?þ|ÿ\u00000\u0002\u0018\u0018\u0003\u0000\u0000\u0006\u000fÿ€\u0018ÀÌ\u0001†\u0006\u0000À\u0000\u0001€\u0000\u0000\u00020#øa\u00000\u0000\u0000À\u0000\u0000ðØ\bÀ\b@À\f\u0000\u0000p\u0000\u0000$\u001e\u00070\u00030p\u0003\u0000\u00008\u0000\u0000\t\u0007\u0003l\u0000x8ÿ\u0000<\u0000\u0000\u0002CàÏü\u000ex\u001fÿÀü\u0000\u0000\u0000÷Ž`ÿ€\b\u0000\u0000\u00008\u0000\u0000\u0000%€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Factory Reset": "\u0000°\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u00000\u0000\u00000\u0000\u0000\u0000\u0003\u0000`\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000À\u00000\u000000\u0000\u0000\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000ø\u0000\u0000\u0000ÿ\u00000\u000000\u0000\u0000\u0003\u0003\u0000`\u0000\u0000\u0000\u0003\u0000ø\u0000\u0000\u0001ÿ€0\u000000\u0000\u0000\u0003\u0003\u0000`à\u0000\u0000\u0003\u0000\u0000\u0018\u001fþ\u0003\u0001€0\u000000\u0000\u0000\u0003\u0003\u0003ÿð\u0004\u0018\u0003\u0000\u0000\u0018\u000e\u000e\u0003\u0001\u00008\u000000\u0000\u0000\u0003\u0003\u0003ð0f\u0018\u0003€\u0000\u0018\u0000Œ\u0006\u0003\u0000?€00?þ\u0003\u0003\u0000``3\u0018\u0003ø\u00000\u0000˜\f\u0003\u00003à00?þ\u0003\u0003\u0000`À3\u0010\u0003>\u00000\u0000ð\u0000\u0006\u00000 00\u0000\u0000\u0003\u0003\u0000a€\u00180\u0003\u0002\u0000`\u0000€\u0000\u0006\u00000\u000000\u0000\u0000\u0003\u0003\u0000c€\u00000\u0003\u0000\u0000à\u0000€\u0000\f\u00000\u0000\u00000\u0000\u0000\u0000\u0003\u0000a\u0000\u0000p\u0003\u0000\u0001À\u0001€\u0000\u0018\u00000\u0000\u0000`\u0000\u0000\u0000\u0006\u0000`\u0000\u0000à\u0003\u0000\u0007€\u0001€\u0000p\u00000\u0000\u0001À\u0000\u0000\u0000\u001c\u0000`\u0000\u0001À\u0003\u0000\u001e\u0000\u0007\u0000\u0000à\u00000\u0000\u0007€\u0000\u0000\u0000x\u0000ð\u000f€\u0003\u00008\u0000\f\u0000\u0001€\u00000\u0000\u0006\u0000\u0000\u0000\u0000`\u0000\u001fð\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Sleep": "\u0000#\u0011\u0000\u0000\u0004\u0000\u0000\u0000À\u000fóà€y‚D\u0010\t Hÿñ$\t³l$ÿ>I\u0007™„I ’ ÿ\u0012D\u001b$‚Oûäy˜Eÿ‰!\bƒ\u0001$!ð@<„¶\b\u0004žÔ\u001føƒÎ\u0000\u0000\u0000`€", - "Connected": "\u0000h\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000À\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000À\u0000À\u0001ÿÀ\u0000\u0000\u0003\u0006ø\u0000Ü\u0000ÿ\u0001ÿÀ\u0000\u0000\u0003\u000bø\u001fü\u0001ÿ€\u0000\u0000\u0000\u0000\u0003\u0004\u0000\u0018\u0000\u001c\u0003\u0001€\u0000\u0000\u0004\u0018\u0003\u0000\u0000\u0018\u00008\u0003\u0001\u0003ÿðf\u0018\u0003€\u0000\u0018\u0000`\u0006\u0003\u0003ÿð3\u0018\u0003ø\u0000\u0018\u0001À\f\u0003\u0000\f\u00003\u0010\u0003>\u0000\u0018\u0007Ü\u0000\u0006\u0000\f\u0000\u00180\u0003\u0002\u0000\u0018\u001eÎ\u0000\u0006\u0000\f\u0000\u00000\u0003\u0000\u0000\u00188À\f\u0000\f\u0000\u0000p\u0003\u0000\u0000\u0018\u0000Á\u0000\u0018\u0000\u0018\u0000\u0000à\u0003\u0000ø\u0000À\u0000p\u00008\u0000\u0001À\u0003\u0000ø\u0000À\u0000à\u0000ð\u0000\u000f€\u0003\u0000\u0000\b\u0000À\u0001€\u0000À\u0000\f\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Messages": "\u0000Y\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\r€\f\u0000\u0000\u00000\u0000\u0000\u0000\u000e\u0003@\u0006\u0000\u0000\u0000\u0018\u0000\u0000\u0000\u0003À€\u0003\u0000\u0000\u0000\f\u001c\u0000\u0000\u0000 \u0000á\u0000\u0004\u0018?ÿ\u0000\u0000\u0000\u00000=€3\f\u001f€\u0000\u0001€\u0018\u0007À\fÆ\u0001ƒÿàð\u0018\u0000à\u0006b\u0000Áÿð\u001c\u001c\u0000ü\u0001ƒ\u0000a€\u0000\u0000\u0000\u001c\u0000g\u0000\u0001€1À\u0000\u0000\u0000\f\u0000aÀ\u0001À\u0018@\u0000\u0000\u0000\u001c\u0000`@\u0001À\f\u0000\u0000\u0000\u0000\u001c\u0000à\u0000\u0001À\u0006\u0000\u0000\u0000\u00008\u0001à\u0000\u0007À\u0003ÿ€\u0000\u0000ø\u0000À\u0000\u0003\u0000\u0000À\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Hide": "\u0000\"\u0011\u0000\u0000\u001c\u00000?þ\u0000\f\r€@\u0003\u0002iÿÿ“,?ø,\u0000\u0000\f\u000e?À\u001f\u0002À\u0010\fÀ“ü\u0002\u0018&\u0001\u0000†\t¿À3‚`\u0000\u0007`°`\u00000!I€\f\bP \u000e\u00026l\u0006\u0000€ð\u0000\u0000\u0000", - "Show": "\u00003\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0007\u0000\u0000\u0000\u0000\u0000\u0000x\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000`?à\u0000\u0000À\f\u0007ü\u0000\u0000\u001e\u0003\u0000\u0001ÿðàà\u00000?þ\u00008\u0003þ\u0000\u0000\u0000\u0006\u0000À\u0000\u0000\u0003€\u0000\u0018\u0000\u0000\u0000à\u0000\u0003\u0000\u0000\u0000p\u0000\u0000`\u0000\u0000|\u0000\u000fü\u0000\u0000\f\u0000\u0000ÿ€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "On": "\u0000\"\u000f\u0000\u00000\u0000\u0000\u0000\f\u0006\u0000\u0000\u0003\u0001à\u0001ÿü\u001c\u0000?þ\u0001€<\u0000\u0000@\u001f\u0000\u00000\u000eÀ\u0000\u0018\u00070\u0000\u0006\u0003Œ\u0000\u0003\u0003ƒ\u0000\u0001ÀÀ\u0001À\u00000\u0003à\u0000|\u0007à\u0000\u001e\u0000€\u0000", - "Ok": "\u0000\u001a\r\u0000\u000fƒ\u000epa†\u0006\u0018Á€Æ`À1°0\fx\f\u0003\u001e\u0003\u0000ÇÀÀ1¸\u0018\fg\u0006\u0006\u0018àç\u0006\u001c\u000fƒ€", - "No": "\u00004\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u000f€`\b\u0018\u0002\u0000þ\u0006\u0000Á€0\u0000\u0000`\f\u0018\u0003\u0000\u0006\u0006\u0000A€\u0010?à`\u0004\u0018\u0001\u0000\f\u0004\u0000a\u0000\u0018\u0000€@\u0006\u0010\u0001€\u0010\u0004\u0000a\u0000\u0018\u0003Àd\u0006\u0019\u0001€v\u0006@a\u0018\f`l\u0006\u001b\u0001†\u0006€a \u00180`8\u0000\u000e\u0000\u0007\u0007á\u0000\u0000@\u0000`>\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Settings": "\u0000$\u0011\u0000\u0000\u0000\u0000\u0000\u0001\u0003à\u0003\u0000\u0018&\u000fÿç⠀\u0006\u0000b\b\u0000cÆ \u0000\u0000\u0000Çÿ€\u0000\u0000\u0003\u0000|ÿ\u00000\u0000\u000603\u0000\u0000#\u0002?ƒÃ`#\u0000$\u001e\u00070\u0002AÀÛ\u0000$>\fÿÃÞ9ƒþ%€\u0000\u0000", - "steps": "\u0000G\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000Pÿ€ð\u0000\u0000\u0000\u0000ãÿ€ÿà\u0000\u0000\u000fÿ€\u0006\u0000\u0000\u0000\u0000\u0000\u001fþ\u0000\f\u0000\u0000\u0000\b0\u0000\f\u00000\u000fÿÁ˜`\u0000\u0018\u0000`\u001fÿ˜À\u00000\u0001€\u0000À\u00031\u0000\u0000À\u0007\u0000\u0001€\u0003\u0006\u0000\u0001€\u000f\u0000\u0003\u0000\u0000\f\u0000\u0006\u0000s\u0000\u0006\u0000\u00008\u0000\u001c\u0001Ã\u0000\u0018\u0000\u0000à\u0000p\u0007\u0003\u0000p\u0000\u0003€\u0001À8\u0003\u0003À\u0000>\u0000\u001e\u0000`\u0006\u0006\u0000\u0000`\u0000p\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "back": "\u00003\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0001€\u0006\u001b@\u0000\u00000\u0000à \u0000\u0000\u0007ø\u0018`\u0000\u0000\u0001ÿ‚\f\u0000 À`0A€f\u0018\f\u0004\u0018\u0010\u0006c\u0003\u0001ƒ\u0003\u0000Ì@À0``\f\u0018\u0000\f\b\u0004\u0000\u0003\u0000\u0001ƒ\u0000À\u0000à\u0000``\u0018\u00008\u0000\u0018\u0018\u0001€\u000e\u0000\u000e\u0007\u00008\u000f€\u0003€@\u0002\u0001€\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Steps": "\u0000G\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00008\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000Pÿ€ð\u0000\u0000\u0000\u0000ãÿ€ÿà\u0000\u0000\u000fÿ€\u0006\u0000\u0000\u0000\u0000\u0000\u001fþ\u0000\f\u0000\u0000\u0000\b0\u0000\f\u00000\u000fÿÁ˜`\u0000\u0018\u0000`\u001fÿ˜À\u00000\u0001€\u0000À\u00031\u0000\u0000À\u0007\u0000\u0001€\u0003\u0006\u0000\u0001€\u000f\u0000\u0003\u0000\u0000\f\u0000\u0006\u0000s\u0000\u0006\u0000\u00008\u0000\u001c\u0001Ã\u0000\u0018\u0000\u0000à\u0000p\u0007\u0003\u0000p\u0000\u0003€\u0001À8\u0003\u0003À\u0000>\u0000\u001e\u0000`\u0006\u0006\u0000\u0000`\u0000p\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Year": "\u0000\u0010\u0011\u0000\u0010\u0000\u0018\u0000?þ0À`ÀÀÀ?þ0À0À0À0Àÿÿ\u0000À\u0000À\u0000À\u0000À\u0000À", - "Yes": "\u0000(\u0011\u0000\u0000\u0000\u0000\u0000\u0000@0\u0000\u0000\u0000@00\u0004\u0000@00\u0006\u0000Oþ0\u0006\u0000Gø0\u0002\u0000À00\u0002\u0000À\u0010 \u0003\u0000À\u0010 \u0003\u0000À\u0010 \u0003\u0000À\u00102\u0003\u0000Çð2\u0003\u0000Ìx6\u0003\u001cÌ>4\u0003\u0016Çæ\u001c\u0000\"CÀ\b\u00002\u0000\u0000\u0000\u0000\u001c", - "Loading": "\u0000i\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000X\u0000\u0000\u0000\u0000\u0001‚ßþ\u0000\u0000\u0001ÿÐ\u0000\u00000\u0000\u0000Àßÿ\u0000\u0000\u0000ÿà\u0000\u0000\u001e\u0000\u0000ÿ¦\u0001€\u0000\u0000\u0000\u0000\u0000\b\u0003€\u0000ã\u0000À\u0000\u0000\u0000\u0000\u0000\f\u0000```!€`\u0000\u0000?ÿ\u0000\u001c\u0000\u0000 `0À0ü\u001fÿ€\u001c\u0000\u000000\u0018`\u0018?þ\u00000\u0000\u001c\u0000\u000000\b0\f\u0000\u0000\u0000\u0018\u0000>\u0000\u0000\u0018\u0000\f\u0018\u0006\u0000\u0000\u0000\f\u0000s\u0000\u0000\u0018\u0000\f\f\u0003\u0000\u0000\u0000\u0006\u00001€\u0000\u0018\u0000\u000e\u0006\u0001€\u0000\u0000\u0006\u0000\u0000À\u00008\u0000\u000e\u0003ÿÀ\u0000\u0000\u0007\u0000\u0000`\u0000ø\u0000\u000e\u0001ÿà\u0000\u0000\u000f\u0000\u00000\u0003ð\u0000\u001e\u0000€\u0010\u0000\u0000\u0006\u0000\u0000\u0018\u0000€\u0000\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Music": "\u0000$\u0011\u0000\u0000€\u0000\u0000\u0000\f\u0000ƒ\u0000?ÿ\fü@@€hX\u0006\u0018\u0000„\u0000a€\u000fÀÿ‚…€\u0000\u0000èL\u001fþ\u0018üA€`\u0000\u0000\u0018\u0006\u00000\u0001€aÿþ\u001fþ\u0000ü\u0001€`\u001b`\u0018\u0006\u00073ÿáÃ\u000e\u0018\u0006\b0\u0000", - "color": "\u00003\u0010\u0000\u0003\u0000\u0000\u0000\u0000\u0000\u0000`\u0000ÿà\u0000\u0000\f\u0000\u001fø\u0000\u0000?þ\u0000\u0000\u0000\u0000\u0003ÿÀ\u0000\u0000\u0000\u0000\u0006\u0018\u001fþ\u0000\u0000\u0000ƒ\u0003ÿáÿð0`\u0000\u0018?þ\u0006\f\u0000\u0003\u0000\u0000\u0000€\u0000À\u0000\u000000\u00008\u0000\u0000\f\u0006\u0000\u000e\u0000\u0000\u0003€À\u0007€\u0000\u0000áð\u000fÀ\u0000\u0000\u0000\u001c\u0001À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "off": "\u0000!\u0010\u0000\u00000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\f\u0003ÿÏÿáÿãÿà\u00000\u0007€\u0000\u0018\u0007À\u0000\f\u0007`\u0000\f\u00070\u0000\u0006\u0007\u0018\u0000\u0006\u000e\f\u0000\u0007\u000e\u0006\u0000\u0007\u0000\u0003\u0000\u000f\u0000\u000f€\u001e\u0000\u0007€\u001c\u0000\u0000\u0000\u0000\u0000", - "Off": "\u0000!\u0010\u0000\u00000\u0000\u0000\u0000\u0018\u0000\u0000\u0000\f\u0003ÿÏÿáÿãÿà\u00000\u0007€\u0000\u0018\u0007À\u0000\f\u0007`\u0000\f\u00070\u0000\u0006\u0007\u0018\u0000\u0006\u000e\f\u0000\u0007\u000e\u0006\u0000\u0007\u0000\u0003\u0000\u000f\u0000\u000f€\u001e\u0000\u0007€\u001c\u0000\u0000\u0000\u0000\u0000", - "Theme": "\u00004\u000f\u0000?ø\u0000\u0000\u0007ÿÃÿ€\u0000\u0000þ\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\fþ\u0000\u0000\u0000\u0001‡ÿáÿð\u00000\u0001€\u001fÿ\u0001Æ\u0000\u0018\u0000\u0000\u0000\u000eà\u0001€\u0000\u0000\u0000<\u0000\u0018\u0000\u0000\u0000\u0001€\u0003\u0000\u0000\u0000\u0000\f\u0000p\u0000\u0000\u0000\u0000`\u001e\u0000\u0000\u0000\u0000\u0003\u0001€\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000", - "Back": "\u00003\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0014\u0000\u0000\u0001€\u0006\u001b@\u0000\u00000\u0000à \u0000\u0000\u0007ø\u0018`\u0000\u0000\u0001ÿ‚\f\u0000 À`0A€f\u0018\f\u0004\u0018\u0010\u0006c\u0003\u0001ƒ\u0003\u0000Ì@À0``\f\u0018\u0000\f\b\u0004\u0000\u0003\u0000\u0001ƒ\u0000À\u0000à\u0000``\u0018\u00008\u0000\u0018\u0018\u0001€\u000e\u0000\u000e\u0007\u00008\u000f€\u0003€@\u0002\u0001€\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000" + "New Alarm": "\u0000]\u0010\u0000\u0010\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@#ü \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001fÞ\u0004‰\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000€$HCà#€\u0000\u0000\u0002\u0002$\u0001\"Aá\u0000à\u0000\u0000\u0000\u0010\n Ò\u0000\u0010\u00008\u0000\u0000\u0000ƒýøH\t\u0000Ž@\u0000\u0000\b\u0001\t\u0004@€0\u0003‚\b\u001f\u0000@\bH\"\u0014\u0001\u0000\u0000\u0010?\u0000\u0002CúB\b@\b\u0000\u0001\u0000\u0000\u0000!\u0002\u0012 @\u0000@\u0000\b\u0000\u0000\u0001\fTð\u0004\u0000\u0000€\u0000\u0000S””€\u0010\u0000 \u0000\b\u0000\u0000\u0001àÄD\u0000€\u0002\u0000\u0001€\u0000\u0000\u0000\u0000¢#ÿø \u00000\u0000\u0000\u0000\u0000\u0002!\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "New Timer": "\u0000]\u0010\u0000\u0010\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@#ü \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001fÞ\u0004‰\u0000€\u0000\b\u0000\u0000\u0000\u0000\u0000€$H\u0002\u0000\u0000@\u0000\u0000\u0000\u0002$\u0001\"@\u001f\u0000\u0004\u0002\u000f\u0000\u0000\n Ò\u0001\b\u0000@\u000f„\u0000\u0003ýøH\b€\f\u0000\u0000@\u0000\u0001\t\u0004@€¤\u0001 \u0000\u0004\b\u001f\bH\"\u0014\bÀ0€\u0000@?\u0003úB\b@‚\u0000\u0004\u0000d\u0000\u0000\u0002\u0012 @\u0000 \u0000 \u0000À\u0000\u0000Tð\u0002\u0000\u0001\u0000\u0001\u0000\u0000\u0004”€\u0010\u0000 \u0000\b\u0000\u0004\u0000\u0000DD\u0000€\u0006\u0000\u0000@\u0000\u0000\u0000\u0000¢#ÿøÀ\u0000\u0002\u0000\u0000\u0000\u0000\u0002!\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Save": "\u0000\u001f\u0010\u0000\b\u0000\u0004\u0000\u0017ð\b\u0000(#ÿø@@\u0001 €€\u0006\u0002\f\u0010\u0004\u0004( \u0018\u0010—üP@!Á/üE@A\u0000’@‚\u0001DA\u0004\u0003\bB\b\u0004\u0010\u0004P\b \b@", + "Keep Msgs": "\u0000F\f\u0000„\u0000\u0000\u0000\u0000„\u0000\u0000\u0002 \u0000\u0000\u0000\u0002\u0010\u0000\u0010\t\u0007‡‹€\fLJG¨!!1\u00003!\"!À„„„\u0000´€ˆƒ\u0003óò\u0010\u0002т!Š\b\b\b@\bA‡\u0001¤ !\u0000!\u0001\u0010\u0001ˆ„„Ä\u0000„„x†\u0011áâà\u0002\u0011â\u0011à\u0000\u0000\b\u0000\u0000\u0000\b@\u0000\u0000\u0000 \u0000\u0000\u0000\u001e\u0000", + "circle count": "\u0000y\r\u0000\u0002\u0000\u0000\u0000\u0010\u0000\u0000\u0000\b\u0000\b\u0000\u0000\u0000 \u0010€\u0000\u0000\u0004à\u0002\u0000\u0002\u0000\u0002\u0000\u0000\u0000\b\u0004@\u0000\u0000\u0003\b€\u0001\u0000\u0001\u0000\u0018\u0000\u0004\u0002 \u0000\u0000\u0001\u0010\u0002@\u0010ø\u0000ø\u0002\u0004\u0002\t>\u0000\u0000\u0001\b\u0001 \u0007Ä\u000f„\u0000‚\u0001\u0003è\b\u001f\u0000ˆ\u0000‘\u0000B\u0002\u0002\u0000\u0002\u0000àD\u0003ð\u0000„\u0000H€!\u0001\u0002\u0000\u0001\u0000L\"\u0000\u0000\u0000„\u0000$€!\u0000A\u0000\u0001\u0000!\u0011\u0000\u0000\u0000\u0002\u0000\"@\u0010€!\u0000\u0001\u0000\u0010\u0001\u0000\u0000\u0000\u0002\u0000\u0011@\u0010@\u0000€\u0001\u0000\b\u0000€\u0000\u0000\u0002\u0000\u0010À\u0011@\u0000€\u0013\u0000\u0004\u0000€\u0000\u0000\u0002\u0000\u0010@\u0010`\u0000€\u0006\u0000\u0002\u0000€\u0000\u0000\u0002\u0000\u0000\u0000\u0000 \u0000€\u0000\u0000\u0001\u0000", + "(repeat)": "\u0000J\u0010\u0000\u0000à\u0000\u0000\u0000@\u0000\u0000\u0000\"\b \u0000@x\u0000\u0000\u0000\u0010‚\u0004À\tà\b\u0000\u0000…?H\u0002@\u0001\u0000\u0004B@\u0000a\u0000\u0010\u0000@\u0000‘ç¼\u0018@\u0007ø\u0010\u0000(\t)\u0004\u0010y\u0002\u0004\u0000\u0006\u0004JA\u0004\u0002Q\u0001\u0000\u0001‚^ðA\u0000’€@\u0000að@\u0010@$@\u0010\u0000\u0018\u0005ÿ\u0000 \t(\u0004\u0004\u0006\u0000\u000e\u0000\b\u0002‘\u0001\u0002\u0001EE@\u0004\u0000¨ #\u0000‘RH\u0002\u0000P\u0000\u0007\u0000\"C\u0011\u0001\u0000#ÿ\u0000\u0000\u0010\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "music": "\u0000\u001f\u0010\u0000\u0002\u0000\u0001\u0000\u0002\u0000„\bÿàŸ \u0000\u0000¢€‚\u0000D\u0000ˆ\u0002ú?ÿ‰\u0012\u0000\u0000b\"\u001fð\u0007À \u0002\u0000@Cÿøÿ€*\u0001\u0001\u0000’\u0002\u0002\u0006#\u0007ü0Aˆ\b\u0000€", + "Auto snooze": "\u0000l\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0001\u0000\u0000\u0000\u0010\u0000C€CÀ\u0000\u0000‡P\u0010\u0000\u0000\u0001\u0000\u0003È\u0003Ä\u0000\u0000\u0007”à\u0000\u0000\u0010\u0000\u0001\u0000\u0000€\u0000\u0000\u0002\u0007ð\u0000\u0000\u0001\u0000\u0000\u0010\u0000\b\u0000\u0000\u0000 \u0003\u0001\u0003à\u001c\u0000\u0002\u00009\u0001\u0003à\u0004\u0000P\u000fÀ\u00010\u0000 \u0000p\u000fÀ\u0000@\t\u0000\u0000\u0000\u0010€\u0005\u0000\u0003\u0000\u0000\u0000\n\u0001\u0010\u0000\u0000\u0001\u0000\u0000ˆ\u0000H\u0000\u0000\u0001\u0010!\u0000\u0000\u0000\u0010\u00000@\b@\u0000\u0000`„\u0010\u0000\u0000\u0001\u0000\f\u0004\u0003\u0004\u0000\u0000\u0018\b\u0003\u0000\u0000\u0000\u0010\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "week": "\u0000:\r\u0000\b\u0000\u0000\u0000\u0000\u0000\u0010\u0001\u0000\u0000\u0000\u0000\u0000\u0002p@\u0000\u0000\u0000\u0000\u0000ä\u001f\u0000\u0002\u0000\u0000\u0000\"ø@\u0001\u0000\u0000\u0000\u0010\u0010\u0000€@ø\u0004D\b\u0000à\u000fÀ\u0002\u0010‚\u0001È\u0000\u0000\u0001\b!\u0000\u0002\u0000\u0000\u0000\u0002\u0000@\u0000€\u0000\u0000\u0001\u0000 \u0000 \u0000\u0000\u0000€\u0010\u0000\b\u0000\u0000\u0000@\b\u0000\u0002\u0000\u0000\u0000 \u0000", + "circle 1": "\u0000E\r\u0000\u0002\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0001\b\u0000\u0000\u0000N\u0000 \u0000\u0004@\u0000\u0000\u0003\b€\b\"\u0000\u0000\u0000\u0011\u0000$\u0000É>\u0000\u0000\u0001\b\u0001 \n>€ð\b€\t\u0010\u0010D\u0003ð\u0000„\u0000H€‚ \u0000\u0000\b@\u0002H\u0004\u0011\u0000\u0000\u0000\u0002\u0000\"@ \u0010\u0000\u0000\u0000 \u0001\u0014\u0001\u0000€\u0000\u0000\u0002\u0000\u0010À\b\b\u0000\u0000\u0000 \u0001\u0004\u0001ð€\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000", + "circle 3": "\u0000E\r\u0000\u0002\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0001\b\u0000\u0000\u0000N\u0000 \u0000\u0004@\u0000\u0000\u0003\b€<\"\u0000\u0000\u0000\u0011\u0000$\u0002\u0019>\u0000\u0000\u0001\b\u0001 \u0010¾€ð\b€\t\u0010\u0004D\u0003ð\u0000„\u0000HÂ \u0000\u0000\b@\u0002H\u0001\u0011\u0000\u0000\u0000\u0002\u0000\"@\b\u0010\u0000\u0000\u0000 \u0001\u0014\b@€\u0000\u0000\u0002\u0000\u0010ÀB\b\u0000\u0000\u0000 \u0001\u0004\u0001à€\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000", + "circle 2": "\u0000E\r\u0000\u0002\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0001\b\u0000\u0000\u0000N\u0000 \u0000\u0004@\u0000\u0000\u0003\b€<\"\u0000\u0000\u0000\u0011\u0000$\u0002\u0019>\u0000\u0000\u0001\b\u0001 \u0010¾€ð\b€\t\u0010\u0004D\u0003ð\u0000„\u0000H€Â \u0000\u0000\b@\u0002H\b\u0011\u0000\u0000\u0000\u0002\u0000\"@€\u0010\u0000\u0000\u0000 \u0001\u0014\b\u0000€\u0000\u0000\u0002\u0000\u0010À@\b\u0000\u0000\u0000 \u0001\u0004\u0003ð€\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000", + "show widgets": "\u0000^\r\u0000\u0000€\u0000\u0000\u0000\u0000\u0010\u0004\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000@\u0010\u0000\u0000€\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000@@\u0002\u0000\u001e.\u001e € Œ\u001d\u001d\u001e\b\u001e„Ä„’\u0000’\u0010Œˆ„ø†\u0002\u0012\u0012H\u0002HB\u0012\"\u0010‚\u0006\bHI \t!\bHÂ\u0006\u0006!!$€$„!\u001c \b\u0006\u0004„„’\u0000’\u0010„@€ \u0006\u0012\u0012\u0012H\u0002HB1â\u0010‚\u0017ˆG†À\u0006ÇÇHG‡€\u0000\u0000\u0000\u0000\u0000\u0000\u0000!\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000x\u0000\u0000\u0000", + "heartrate": "\u0000/\u0010\u0000\u0000\u0000\u0010 \b \u0004\u0000 @’@\u0004\u0000A\u0000¨€\u0004\u0000àAð\b\u000fÐOô@€\u0002 …H\u0002\u0004A\u0012Q\u0012\u0002\n‚DR$\u0004\u0019ü\u0010(H\u0004b\tüQ\u0010\u000bD\u0010ˆB ˆ\"\u0010ˆA\u0001\u0010FB€‚\u0002 ƒ\u0005\u0000ü\u0014\r\u0011\u0000\u0000\u0010‚aA", + "circle 4": "\u0000E\r\u0000\u0002\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0001\b\u0000\u0000\u0000N\u0000 \u0000\u0004@\u0000\u0000\u0003\b€\u0004\"\u0000\u0000\u0000\u0011\u0000$\u0000i>\u0000\u0000\u0001\b\u0001 \u0005>€ð\b€\t\u0010HD\u0003ð\u0000„\u0000H„B \u0000\u0000\b@\u0002H\"\u0011\u0000\u0000\u0000\u0002\u0000\"Aø\u0010\u0000\u0000\u0000 \u0001\u0014\u0000€€\u0000\u0000\u0002\u0000\u0010À\u0004\b\u0000\u0000\u0000 \u0001\u0004\u0000 €\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000", + "battery warn": "\u0000n\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000H@\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0007ù\u0000ˆ\u0000\u0001\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0004Â \u0000\u0012\u0000\u0000\bð\u0004\u0010\u0000\u0000?b\u000fü\u0000(\u0000\u0000\u001c\u0000\b@\u0000\u0001\u0004PB\u0000D€\u0000\u0000\u0000\u0000!\u0000\u0000\u0003Ђ\b\u0000ˆ\u0000\u0000\u0000\u000f\u0000„\u0000\u0000\tE\u0000 \u0002\u0010\u0002 \u0011À\u0002\u0010 |=cÿ\u0010 $@9\u0000\b@~\u0000\n\u0000\u0000\u0000@€Q\u0000\u0004\u0000!\u0000\u0000\u0007ÿð\u0000\u0002\u0001\u0001\b\u0000 \u0000\b\u0000\u0000\u0000\u0000\u0003þ\u0010\u0004\u0000 \u0000€\u0000 \u0000\u0000\u001fü\b\b€\u0010\u0001\u0000\u0004\u0000\u0001\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\b\u0000 \u0000\b\u0000\u0000\u0001ÿÀ€€\u0000\u0000@\u0001\u0000\u0000@\u0000\u0000\u0004\u0001\u0003þ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001fü\b\b", + "valid period": "\u0000=\u0010\u0000\u0002\u0000\u0010 \"\u0000\u0000\u0000\u0010\u0000A\u0001\u0013ãçÿÿ€\b\u001fÑ\u0011\"\b\u0001þ@Dˆùð@\u0000\u000fÂ$DH‡ø\u0012\u0012\u001f>>| A\b‰\u0011\u0000#\u0002\u0010$„H‰ù/ð$$>DHJ@€¡!\u0013â~b\u0004\u0002\t\b‘\u0012\u0012\u001fà(‰þˆŸ\u0002$@HD„„\b!B\u0011B \u0004!B\u0004¡\u0004Q\u0000¡\u0004\u0000B\u0010A\b\u0002", + "maximum": "\u0000\u001f\u0010\u0000\u001fð\u0001\u0000 \u0002\u0000À\u0004\u0000€€\b\u0001ÿ\u0000\u0010\u0000\u0000\u001fÿÿÿ€@\u0011\u0000\u0000€>ø\u0002€E\u0010\u0005\u0000ú@\u0011\u0001\u0012€\"\u0002ò\u0000‚\u001eJ\u0002\u0002\u0010¢\b\u0002\u0001ƒ`\u0003", + "weather circle": "\u0000{\u000e\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000R\u0000\u0000\u0000@\u0000\u0000\u0002\u0000\u0000\u0000\u0010\u0000\u0000\u0000…@\u0000\u0000„\u0000\u0000\u0000'\u0000\u0010\u0002\u0000\u0000\u0000\b \u0000\u0000\b€\u0000\u0000\u0007 \u0011\u0000|\u0000\u0000\u0001\u0010\u0000\u0000\u0001\u0010\u0000\u0000\u0000ˆ\u0001!ð€\u0000\u0001'À\u0000\u0001'À\u0000\u0000!\u0000$\u0010\u0010\u0000à\u001f@@ø\u001f@@ø\u0004@\u0004Š\u0004\u0001à\u0000ˆ\u0007à\u0000ˆ\u0007à\u0001\b\u0000‘ €\u0004\u0000\u0011\u0000\u0000\u0000\u0011\u0000\u0000\u0000B\u0000\u0012D \u0000€\u0002 \u0000\u0000\u0002 \u0000\u0000\u0000@\u0004H\u0004\u0000\u0010\u0000\b\u0000\u0000\u0000\b\u0000\u0000\u0000\u0010\u0000Š\u0001\u0000\u0003À\u0001\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0004\u0000!€@\u0007„\u0000@\u0000\u0000\u0000@\u0000\u0000\u0001\u0000\b \u0010\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0010\u0000\u0000\u0000@\u0000\u0000\u0000", + "minimum": "\u0000:\r\u0000 \u0000\u0000\u0000\u0000\u0000\u0010\u0006\u0000\u0000\u0000\u0000\u0000\u0002\u0000`\u0000p\u0010x\u0000€\u0004\u0003à\u0003á\u0000 @\u0000\u0000\u0000\u0000€\u0010\f\u0000\u0000\u0000\u0000@\u0004\u0000À\u0000\u0000\u0000 \u0001 \b\u0000\u0000\u0001\u0000„€\u0000\u000f€\u0018\u0000!˜\u0000|\u0010\u0001\u0000S‘€\u0000\u0000\u0000 \u000f\u0004\u0018\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "step length": "\u0000M\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`?à\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0010à\u0011à\u0000\u0000#ä\u000fðy\u0000p\u0000\u0000\u0000âÀ@\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0010\u0003ü\u0000€\u0000ð\u0000\u0000\u0001\u0000\u0010\u0000\b\u00028\u0000D\u0000\b\u000fÿà@\u000e@\t\u0010\u0000€\t\u0000\u0005\u0000\u0002\u0000(€\u0004\u0000D@D\u0000 \u0001\b\u0000@\u0002\u0014\f\u0010\u0001\u0000\u0000@\u0004\u0000\u0010A€€\u0010\u0000\u0004\u0000@\u0000‘\u0000\u0000\u0001\u0000\u0000@\u0004\u0000\u0005\u0006\u0000\u0000\u0010\u0000\u0004\u0000\u0000\u00000\f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000", + "distance goal": "\u0000?\u0010\u0000\u0000\u0000\u0010(\u0000\u0000\u0010\u0000ûü\u0010Hð'ý\u0014\u0001ý\u0000€ AB(\u0000£ñ\u0000@äP\u0004œ‚\u0000ÕO¿Š©\u0007ÿ\u0002*„A\u0010_ˆ\u0002\f\b‚?¤\u0010\u0004\u001c\u0000]\u0004\bH \bUü¢\bþüð¨\u0001GñE €\"Oúˆ\u0002ªA\u0000@\u0005Ð\u0005Ԃ\u0000\nœ \b/Ä\u0001\u0002$€‘P\u000fþ\u0004¨€\u0000! \u0010\u0004\b ", + "Circle": "\u0000;\r\u0000\u0002\u0000\u0000\u0000\u0010\u0000\u0000\u0004 \u0000\u0000\u00018\u0000€D\u0000\u0000\u00009\u0000ˆ\b€\u0000\u0000\u0004@\t\t>\u0000\u0000\u0001\b\u0001 ú\u0002\u0007À\"\u0000$D@?\u0000\b@\u0004ˆˆ\u0000\u0000\u0002\u0010\u0000’\u0011\u0000\u0000\u0000\u0002\u0000\"@@\u0000\u0000\u0000€\u0004P\b\u0000\u0000\u0000 \u0001\f\u0002\u0000\u0000\u0000\b\u0000A\u0000€\u0000\u0000\u0002\u0000\u0000\u0000", + "min. confidence": "\u0000_\u0010\u0000\u001fð\b\b\u0000\u0000\u0000\u0000\u0001\u0000\b@ \u0010x÷ð\u0000\u0000\u0004\u0000\u0010@À/( \u0000\u0000\u0010\u0000/ø€€‘\u0002@\u001e\u0000ÿ€€\u0001ÿ\u0001\"\u0005?€Ò\u0001\u0001\u0001\u0000\u0000\u0000\u0006D\fA\u0002\"\u0002\u0002\u0006?¿ÿŒˆ\u0014‚\u0004B\u0004\u0004\f\u0000\u0011\u0000)ÿ%ü\u0011\u0004\u000fø(\u0000>ø’ JD\"\b\u0010\u0010‘üE\u0010$ ”H\u0010 \u0000ú@HA¨À@À@\u0001\u0012€’‘\u0001@€€€âò\u0001 ¤!\u0001\u0006\u0001\u0001\u0001\u0010^J\u0002QHQ\u00000\u0002\u0002\u0002 ¢\u0004ɐÁ€\u0000\u0007ü\u0004\u0001ƒ\t\t!\u0000\u0000\u0000\b\b\b‚", + "colorize icon": "\u0000‹\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0012\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0010\u0001\u001c\u0001\u001c\u0000\u0002\u0002\u001dB\u001f\u0000\u0002\u0000\u0000\u0000\u0000\u0002\u0000\u001c\u0000\u001c\u0000\u0000€< < \u0000€Cà0\b|\u0000\u001c\u0000\u001c\u0000 \u0000 \u0000\b\u0000 \u0007„\u0001\u0002ø\u001c\u001c€\u0018\u0000\u0004\u0000\u0012\u0000\u0018\u0000\u0000€\u0010B\u0010\u001c\u0010\u001c\u0010\r\u0000\u0001\u0000\u0001€\r\u0000\u0000\u0010\u0000\u0010B\u0000\u0002\u0000\u0002\u0006\u0010\u0000 \u0000 \u0006\u0010\u0000\u0002\u0000\u0002\u0010€\u0000€\u0000€\u0002\u0000\n\u0000\u0004\u0000\u0002\u0000\u0000€\u0000‚\u0010\u0000\u0010\u0000\u0010\u0000@\u0002 \u0000€\u0000@\u0000\u0010\u0000 ‚\u0000\u0004\u0000\u0004\u0000\b\u0001‚\u0000 \u0000\b\u0000>\u0000\b\"€\u0001\u0000\u0001\u0000\u0001\u0000À@\u0004\u0000\u0001\u00008@&\b0\u0000À\u0000À\u0000 \u0000\u0000\u0001\u0000\u0000 \u0000\u0000\u0003\u0000\u0004\u0000`\u0000`\u0000\u0004\u0000\u0000\u0000@\u0000\u0004\u0000\u0000\u0000\u0000\u0000", + "Heartrate": "\u0000/\u0010\u0000\u0000\u0000\u0010 \b \u0004\u0000 @’@\u0004\u0000A\u0000¨€\u0004\u0000àAð\b\u000fÐOô@€\u0002 …H\u0002\u0004A\u0012Q\u0012\u0002\n‚DR$\u0004\u0019ü\u0010(H\u0004b\tüQ\u0010\u000bD\u0010ˆB ˆ\"\u0010ˆA\u0001\u0010FB€‚\u0002 ƒ\u0005\u0000ü\u0014\r\u0011\u0000\u0000\u0010‚aA", + "data": "\u0000*\u000e\u0000\u0000 \u0000\u0000\u0000\u0000$\u0000\u0000\u0002\u0004u\u0000\u0000\u0000@á\u0000\u0000\u0000\u001f\u0000\u0000\u0000\u0000\b`ð\u0000\u0000\u0002'À\u0010>\u0001H\b\u0003ð\u0000Œ\u0002\u0000\u0000\u0000A\u0001\u0000\u0000\u0000\u0000€@\u0000\u0000\u0000@ \u0000\u0000\u0000 \u0010\u0000\u0000\u00000\b\u0000\u0000\u00000\u0000", + "Yes\ndefinitely": "\u0000H\u0011\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000@@\u0000\u0000\u0000\u0000\u0000\u0000\u0000 @\u0000\u0000\u0000\u0000\u0000\u0000\u0000(p€\u0000\u0000\u0000\u0000\u0000\u0000'À@À\u0000\u0000\u0000\u0000\u0000@@@ \u0000\u0000\u0000\u0000\u0000@@@\u0010\u0000\u0000\u0000\u0000\u0000@@D\u0010\u0018\u0000\u0000\u0000\u0000@@H0$\u0000\u0000\u0000\u0000SÀ(\u0010$\u0000\u0000\u0000\u0000$`0\u0000\u0018\u0000\u0000\u0000\u0000$P\u0010\u0000\u0000\u0000\u0000\u0000\u0000#€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000ùð@€\u0000\u0000\b\u0000\u0001", + "Launcher Settings": "\u0000m\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u001f\u0000 \u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0010ˆþŽ\u0000\u0000\u0000\f\u0000\u0000\u0000\u0000\u0007ôB\u0000\u0013€\u0006\u0000\u0007€\u0000\u0000\u0000\u0000\u0000\" \u0001\u0000à\b\u0010\u0002\u0000\u0000\u0000\u0000\u0000ú\f\u0000\u00029\u0000 €\u000f€@\u0000\u0000\u0000 \u0003ÿŽ\b\u0000\b\u0011À\u00018 |>þ\u0000€\u0000@\u0000@r\u0000\u000e@ü\u0000\u0002\u0010\u0004\u0000\u0004\u0000\u0004\u0000\u0010\u0003Ä\u0000\u0000\u000f‚ \u0000 \u0000@\u0000€\u0001@\u0000\u0000DH\u0011ø\u0002\u0000\u0004\u0000\b\u0000\b\u0000\u0000\u0002\"€ˆ\u0000 \u0004À\u0000@\u0000 \u0000\u0000\u0011\b\u0004@\u0006\u0000\u0018\u0000\u0004\u0000\u0001\u0000\u0000\u0000ø R\u0000À\u0000\u0000\u0000@\u0000\b\u0000\u0000\u0004H„à\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001ƒ@\u0000", + "TAP right top/bottom": "\u0000^\u0010\u0000\u0000\u0000\u0000\u0004\u0000\u0004\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0010\u0000\u0000\u0010\u0007ÿð\u0000\u0000\u0000@\u0000@\u0000\u0000@\u0000@\u0000\u0000\u0000ÿ\u0001\u0000\u0000ÿ\u0001\u0000þ0ø\b\u0000\u0004\u0000\u0004\b\u0000\u0004\u0000A\"\u0010 \u0000\u0010\u0000\u0010 \u0000\u0010\u0001\u0004ˆA\u0000\u0000\u0000€€\u0000H\u0004!!\u0004\u0000\u0001\u0000\u0004\u0004\u0000\u0001\u0010\u0010„ø?ð\u0004\u0000\u0010\u001fð\u0004 Cò\u0001@@\u0010\u0000€„\u0000\u0010A\bH\t\u0001\u0000@\u0002\u0002\u0010\u0000A\u0004! D\u0004\u0001\u0000\u0010\u0010@\u0001\u0000\u0010„€\u0010\u0010\u0004\u0000€\u0000\u0004\u0000B\u0012\u0000@@\u0010\u0002\u0004\u0004\u0000\u0010\u0000\u0000\u0000\u0001ÿ\u001fÿÀ\u0007ÿÀ@\u0000\u0000\u0000\u0004\u0004\u0000\u0000\u0000\u0000\u0000\u0001\u0000", + "Font": "\u00008\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000@‡€\u0000\u0000\u0000\u0000 x€\u0000\u0000À\u0000 \u0000€\b\u0000 @ \u0001\u0000\u0004\u0000\u0010@ \u0001\u0000‡\u0000\u0000€8\u0002\u0000|\u0000\u0000€&\u0002\u0000\f\u0000\u0001\u0000!\u0004\u0000\u0014\u0000\u0002\u0000 \b\u0000$\u0000\u0004\u0000 \u0010\u0000D\u0000˜\u0000 \u0000Œ\u0000`\u0000 \u0000\u0000\u0004\u0000\u0000\u0000 ", + "Mark Unread": "\u0000Š\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0010\u0000\u0000\u0000\u0000œ\u0000\u0000\b|\u0000\u0000\u0002\b\u0000\u0000\u0002\u0016\u000f\u0000\u0000\u00009\u0000\u0000\u0001á\u0001€\u0000B\u0000\u0000\u0000„| \u0000\u0000\b€\u0000\u0000\u0000€\u0010 \u0010€\u0000\u0000 \u0000\u0010\u0000\u0000\u0004 \u0003\u0000\u0002@\u0002\b\u0004 \u0000\u0000\b\u0000\b\u0010>\u0001\u0010\u0001à\u0000`\u0000\u0004\u0001\b\u0010>\u0003€\u0004\u0003ð\u0000„\u0000x\u0000\u0010\u0000\u0001\u0000B\u0003ð\u0000˜2\u0000\u0000\u0000B\u0000\f\u0000\u0004\u0000\u0000€\u0010€\u0000\u0000!\u0003\u0000\u0000\u0000\u0000€\u0000\u0000\u0001\u0000\u0000@\u0000@\u0000\u0000\b\u0000 \u0000\u0000\u0000@\u0000\u0000\u0000€\u0000 \u0000\u0010\u0000\u0000\u0002\u0000\u0004\u0000\u0000\u0000 \u0000\u0000\u0000 \u00010\u0000\b\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0010\u00000\u0000\u0004\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\b\u0000\u0000\u0000\u0002\u0000\u0000\u0000\b\u0000", + "start&lap/reset, BTN1: EXIT": "\u0000Æ\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002@\u0000\u0000\u0004\u0000€\u0000\u0000\u0000„8\u0000@\u0000\u0000\u0001\u0000\u0000\u0000\u0004p\u0000\u0000\bù\u0000\u0000\u0002\b\u0001\u0000\u0000\u0000\u0001\u000f \u0001ð\u0000\u0000\u0004\u0000\u0007à\u000e\u0000\u0000\u0000\u001cX\u0007à\u0004 \u0004\u0000\u0000\u0000\u0004\u0001\u0000\b@\u0000\u0000\u0010\u0000``\u0001À\u0000\u0000\u0001\u0000``\u0010€\u0011à\u0000\u0000\u0010\u0004\u0000\"\u0000\u0000\u0000@\u0001‚9\u0000\u0000\u0000\b\u0001€B\u0000X€\u0000\u0000@ \u0001H\u0010>\u0001À\u0006\u0006\u0007\u0004\u0001\u0010\u0000 \u0006\u0006\u0001\b\t„\u0001\u0010\u0001À€\bÀ?\u0000\u0004À\u0007à\u0000\u0010\u0012 \u0001\u0000\u0007à\u0004 \u001c \u0012 \u0004\u0005\u0000A\u0000\u0000\u0000\u0010€~\u0018\u0000€(€\u0004\u0000~\u0018\u0010€\u0011\u0000(€\u0010\"\u0000\b\u0000\u0000\u0000@\u0006\u0006`\u0002\u0000„\u0000 \u0006\u0006`\u0004\u0000@\u0000„\u0000C\u0004\u0000@\u0000\u0000\u0001\u0000\u0018\u0006\u0000\u0010\u0000\u0010\u0001\u0000\u0018\u0006\u0000\u0010\u0001\u0000\u0000\u0010\u00010\u0010\u0002\u0000\u0000\u0000\u0004\u0000`x\u0000€\u0000€\b\u0000`x\u0000€\u0002\u0000\u0000€\u0004\u0000\u00000\u0000\u0000\u0000\u0010\u0000~\u0018\f\u0000\u0004\u0000@\u0000~\u0018\u0004\u0000\u0007À\u0004\u0000\u0010\u0000\u0003\u0000\u0000\u0000\u0000@\u0000\u0000\u0000À\u0000 \u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000 \u0000@", + "App Source\nNot found": "\u0000Z\u0011\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000$\u0000@\u0000 \u0000\u0000\u0000\b|\bù\u0002\b\u0004\u0004\u0000\u0000\u00049á\u0001ŀB\u0000\u0000\u0000\u0000ò\u0000€\u0001\u0000\u0010€\u0010@\u0000\u0000\u0001\u0002@\u0000€\u0004 \u0004 \u0000\u0000\u0000@`\u0000 \u0001\b\u0001\b\u0010>\u0000 \u0010\u0000\u0010\u0000B\u0000\u0004\u0003ð\u0000\b\u0004\u0000\u0004\u0000\u0010€\u0001\u0000\u0000\u0000\u0005\u0001\u0000\u0002\u0000\u0000@\u0000€\u0000\u0000\u0002 €\u0001\u0000\u0000\u0010\u0000 \u0000\u0000\u0003\u0004 \u0000€\u0000\b\u0000\u0010\u0000\u0000\u0003\u0001\u0010\u0000@\u0000\u0004\u0000\b\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0002\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000À\u0000\u0000\u0000\u0000\b\u0000\u0010\u0000\u0000\u0000", + "Show clocks": "\u0000N\u0010\u0000\u0000@@@\u0000\u0000\u0002\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\b\u0001ÿτ\u0002\u0004\u0000\u0000\u000fÿ€\u0000\"þ\u0010\u0001à\u0000€\u0000\u0000ˆ@\u0000@\u001a@\u0002\u0000\u0000\u0002!\u0003á\u0000ˆÿÀ\u0000\bÿÀÂ!\u0000 \u001fÿþ\u0004>\u0010\u0011\u0004\u0000€\u0000€ˆ\u0010\u0000@D\u0011ÿü\u0002\u0002/óá\u0001 @(\u0000ˆˆ\b„\u0004‚\u0001\u0011\u0002!\"D\"\u0010\u0014\b\f(\u0010‚øˆ@ ÀP@‚\u0006 Cá\u0000\f\u0006HÄ\b\u0010\u0005\b„\u0000\u0000\u0001@À \u0000\b\u0000\u0010\u0000\u0000\u0006\u0000\u0001\u0000", + "STEPS": "\u0000<\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\tC€G€\u0000\u0000“È\u0003€\u0000\u0000\u0007\u0016\u0001\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0010\u0000\u001e\u0000\u0000\u0000 \u0002\u0000Ž\u0000\u0011\u0000\u0002\u0000 \u0007 \u0004ˆ\u0000@\u0005\u0000\u0002\u0000(€\u0004\u0000ˆ\u0000@\u0002\u0010\u0000€0@\u0004\u0000\u0001\u0000\u0010\f\u0004\u0000€\u0000 \u0002\u0000\u0000\u0000\u0010\u0000\u0004\u0000@\u0000\u0000\u0002\u0000\u0000€\u0000\u0000", + "Vector font size": "\u0000½\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0002\u0000@\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\b\u0000\u0002\u0000\u0002@H\u00018\u0000€\u0000\u0000\u0001à\bx\u0000\u0000\u0000\u0000\u0002\u0000\u0004 \u0000\u0010\u0010ê\u0001@\u000e@\u0007À\u0000\u00004€<@\u0000\u0000`\u0000\u0010\u0000\u0011\u0000\u0001\u0000y@H\u0000D\u0000B\u0000\u0000\u0002\"\u0000\u0002\u0000 \u0000\u0000€\u0000ˆ\u0000\u0010\u0000\u0010\u0005\u0000\u0004 \u0002 \u0000\u0000\u0011\b\u0000 \u0000€\u0002\b\u0004\u0000$ø\u0003\u0000\u0000‚D\u0000\"\u0000)\u0002\u0007Á\u0010@\u0001\u0000‡\u0000\u0000€8\u0000ú\u0000h\u0000\b\f\u0010\u0002\u0010\u00020\u000fÀ\b‚\u0000\u0010\u0003à\u0000\u0004\u00010\u0001\u0010\f \u0000@\u0000`!\u0000 €\u0000\u0000H\u0010\u0000€\u0003\u0000\u0000@\b@\b€\u0001\u0000\u0005\u0000\u0000À\b\u0000\b\u0000\u0000\u0002A\u0000\b\u0000(\u0000\u0004\u0000@\u0000D\u0000\b\u0000D\u0000\u0000\u0000€\u0000€\u0000\u0000\u0014\b\u0000€\u0002@\u0000@\u0002\u0000\u0000@\u0000@\f\u0010\u0000\u0000\b\u0000\b\u0000\u0000\u0000A€\b\u0000\"\u0000L\u0000\u0010\u0000\u0002\u0000\u0002\u0001€€\u0000\u0000€\u0001€\u0000\u0000\u00000\u0000€\u00020\u0001€\u0000€\u0000 \u0000\u0010\u0000\u0000\u0000\u0000\b\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0004\u0000\u0002\u0000\u0000€\u0000\u0000", + "View Message": "\u0000z\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000À\u0000\u0000@\u0000\u0000\b\u0000\u0000\u0000\u0000\b\u0002\u0000\u0010\u0010\bÀ\b\u0000\u0000\u0001\u0000\u0000\u0000\u0003\t\u0004°\u0004\u0004\u0001Ð\u0002\u0000\u0000\u0000@\u0000\u0000\u0000!@ð\u0001ÿ\u0000\b\u0000€\u0000\u0000\u0011à\u0000\u0000\u0000@\u0010\u0000@@\u0004\u0006 \u0000\u0000\u0005ˆ\u0000\u0000\u0018\u0000\u0004 \u0010\u0010\u0002\u0000p\u0001\u0010\t„\u0010>\u0001\u0002\u0003Î\u0007ü\u0001ð\u0004\u0001\"\u0001Â\u0003ð\u0000\u0001\u0001Œ\u0001\u0001\u0000Â\u0002€(€\u0011\u0000\u0000\u0000\u0000€†\u0000@@@@\b@\u0004\u0000\u0000\u0000\u0000@\u0002€\u001fð \u0010@\u0000\u0010\u0001\u0000\u0000\u0000\u0000 \u0001 \u0001\u0010\u0000ä \u0000\b\u0000 \u0000\u0000\u00010\u0000€\u0000D\u0000F0\u0000\u0004\u0000\u0007À\u0000\u00000\u0000 \u0000!\b\u00110\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0007à0B\u0003€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u000f€\u0000", + "Are you sure": "\u0000n\u0010\u0000\u0001\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000„ \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0001\u0010‚\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0002D\u0004\u0000\u0000\u0000\u0000\u0000\u0000ð\u0000\u0000ü\t \u0010ð@\u0000@\u0000\r \u000fð\u000e\u0000\u0004\u0000L`€€D@À0T\u0007ÿ‚\u0002\u0002\u0001\u0002\u0001\u0001\u0010ƒ\u0000ÁP\u0000\u0002\b\u0000\b\u0002\b\u0002\b‚\u0000\u0003\t \u0000\b \u0000\"\b\"\b\"\b\u00000D@\u0000 €\u0000`` \u0003\u0002\u0010ƒÿ‚ \u0001@@‚A\u0000\f\u0013ù\u0000\u0002\n€\u0006\u0000\u0006\u0000\n\u0004\u0000\u0000\u0002\u0000\b\u0011ø\b\u0000\b\u0000\u0010`\u0000À\u0004\u0000\u0000 @\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0003\u0000\u0010\u0007ÿ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Bluetooth": "\u0000j\u000e\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000$\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\bõ\u0000@\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u00049Å\u0000ˆ\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0000ò\u0001\u0000\u0012\u0000\u0000\u0000\u0010\u0000\b\u0000\u0000\u0000\u0001\u0000€\u0004€\u0000\u0000\u0004\u0000\u0001\u0000\u0000\u0000\u0000@ \u0001\"\u0010>\u0001À\u0000x\u0010>\u0000 \u0010\u0000Hƒð\u0000L\u0001â\u0003ð\u0000\b\u0004\u0000\u0012@\u0000\u0000\u0010€ €\u0000\u0000\u0005\u0002\u0000\b\u0000\u0000\u0004\u0000\b@\u0000\u0000\u0002!\u0000\u0002(\u0000\u0000\u0001\u0000\u0000\u0010\u0000\u0000\u0003\u0004€\u0001\f\u0000\u0000\u0000@\u0000\b\u0000\u0000\u0003\u0001@\u0000‚\u0000\u0000\u0000\u0010\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0002\u0000\u0000\u0000\u0000\u0000", + "Unread timer": "\u0000m\u0010\u0000\u0001\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000ÿ€\u0000\u0000€\u0000\b\u0000\u0000\u0000\u0000ñø@\u0007€\u0002\u0000\u0000@\u0000\u0000\u0000\u0000\u0010\u0000\u001fÀÒ\u0000\u001f\u0000\u0004\u0002\u000f\u0000\u0000\u0000€<\u0000\bˆ\u0001\b\u0000@\u000f„\u0000\u0000\u0004\u0000\u000føD \b€\f\u0000\u0000@\u0000\u001fÿÏ@DA\u0000¤\u0001 \u0000\u0004\b\u001f\u0003€\u0004\u0004\"\b\bÀ0€\u0000@?\u0000*\u0003ā @‚\u0000\u0004\u0000d\u0000\u0000\u0002H\u0012$\t\u0004\u0000 \u0000 \u0000À\u0000\u0000\" ‘ P \u0002\u0000\u0001\u0000\u0001\u0000\u0000\u0002\u0010„‰\u0001\u0006\u0000 \u0000\b\u0000\u0004\u0000\u0000`ƒ<‰\u0000À\u0006\u0000\u0000@\u0000\u0000\u0000\u0000\u0004\u0001$H\u0000\u0000À\u0000\u0002\u0000\u0000\u0000\u0000\u0000 \u0000AÀ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Delete all messages": "\u0000¾\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\b\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002H#Â\u0000\u0010\u0000\u0000\u0000\u0007\u0000\u0000\u0000\b\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0005 ‰\b |\u0000\b!à\u0001à\u0000\u0010\u0000\u0000\u0002\u0000\u0000\u0000\u0006\u0012\u0001à\u0015\u0012(P\u0000\u0000y\u0000\u001a@\u0000@\u0000\u0000\b\u0000\u0000\u0000\u0004(\u001a@\u0010H¢ \u0004\u00001\u0000\b\u0000ˆ€\u0001\u0000\u0000\u0000#À\u0000\u0000\u0000€ˆƒù#\u0010@p\u0001 \u0000 \u0002!\u0000Ä\u0000\u0000\u0000±\u0000\u0000\u0003\u0000\u0002!\b$оÂ`\b@\u0001\u0000\u0011\u0004\u0000à\u0002 \u0013\b |\u0002\u0004\u0011\u0004 ’$ \b€@€\u0004\u0000D\u0010\u0000€$@8@~\u0000\u0000 D\u0010þH€\u001e\u0000\u0001€\u0010\u0001 @\u0005\u0000Q\u0000\"\u0000\u0000\u0000\u0001\u0001 B\t\"_à\b\u0000\u0001€@\u0004‚\u0000\u0012\u0001\b\u0000€\u0000\u0000\u0000\b\u0004‚\b$\b\u0000@\u0000\u0000\u0001\u0000\u0014\b\u0000€\u0000 \u0002\u0000\u0000\u0000\u0000@\u0014\b?’(¨\u0001\u0000\u0000\u0000\u0002\u0000 À\u0004\u0000\u0001\u0000\u0004\u0000\u0000\u0000&\u0000 À‚\b„\b\u0000\u0000\u0000\u0007\u0000\f\u0000`\u0000\b\u0000\u000f€\u0000\u0000`\u0000\f\u0002\b\"\" @\u0000\u0000\u0000\u0000\u0000\u0000\u0006\u0000\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b¢ˆ(€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000!\u0004 @", + "No Messages": "\u0000k\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000 \u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0004\u0001\u0000\b\u0000\u0002\u0000\u0000\u0000@\u0000\u0000\u0000Â@(\u0000€\u0000@\u0000\u0000\b\u0000\u0000\u0000\u0004(~\u0000\u0010\u0000\b\u0000\u0000\u0001\u001e\u0000\u0000\u0000\u0004\u0001\u001c\u0002\u00001\u0000\u0000\u0000,@\u0000\u0000À\u0000@À@\u0001À\u0004@&\u0010@ø\u0004\b\b \b\u0000\b\u0002D\u0003„\u0007à\u0000\u0002\u0002\b\u0001\u0000\u0002€(€\u0011\u0000\u0000\u0000\u0000€A\u0000 \u0000H\u0004 \u0002\u0000\u0000\u0000\u0000 \u0010 \u0004\u0004\u0010\u0000\u0004\u0000@\u0000\u0000\u0000\b\u0000<\u0000\u0004\u0000\u0001\u0000\u0004\u0000\u0000\u0000&\u0000\bÀ\bÃ\u0000\u0000@\u0000|\u0000\u0000\u0003\u0000\u0001\u0014\u0000á€\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001c\u0000\u0000\u0000", + "Record Run": "\u0000j\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000! \u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0004(\u0000\u0000\bà\u0000\u0001\u0000\u0004>\u0000\u0000\u0001\b\u0000\u0000\u0001À\u0003\u0000@\u0000ð€\u0000\u0000@\u0000\u0000\u0000\u0003€ P\u0000\u0000 \u0000\u0000\u0010\u0000\u0006\u0000G \u0004\u0014\u0000\u0000\b |\u0007\u0000\u0003À\u000e\b\u0000\t\u0002\u0000\u0002\u0007à\u00010\u0000ð\u0000\u0002\u0000\u0002A\u0000\u0001\u0000\u0000\u0000B\u0000\u0018\u0000\u0001\u0000\u0001\u0010€\u0000@\u0000\u0000\u0010\u0000\u0000\u0000\u0000@\u0000„@\u0001ð\u0000\u0000\u0004\u0000\u0000\u0000\u0000 \u0000A`\u0003„\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0010\u0002``\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0018\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0018\u0000\u0000\u0000", + "Apps": "\u0000)\u000e\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000H\u0000¡ð#ä\b/\b\u000e,\u0002\u0010\b\u0000\u0010\u0001\bH\u0000\u0010\u0000„\u0018\u0000\b\u0000B\b\u0000\b\u0000!\u0004\u0000\u0004\u0000\u0010‚\u0000\u0004\u0000\u0000‚\u0000\u0004\u0000\u0000A\u0000\u0004\u0000\u0000A\u0000\u0004\u0000\u0000A\u0000\u0000\u0000\u0000@", + "BTNs 1:startlap 2:exit 3:reset": "\u0000Ä\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u000fè@\u0000\u0001\u0000\u0000\u0002\u0000\u0000\u0002\u0001\u0000\u0000\u0000\u0007€\u0000\u0000\u0001\u0002\u0000\u0007€„\u0010Ä\u0000\u00000\u0000\u0000 \u0000\u0000 \u0010\u0000\u0000\u0000„\u0000\u0000\u0000\u0000 \u0000„\bA\fG€\u0005\u0003\u0007‚\u0007‹‚\u0001\u0007‹€\bC\u0007ˆC\u0002\u0000\bC„\u0010¤„\u0000\u00100„ø„Äø\u0010„Ä\u0000\u00040„„\u0010ø\u0000\u0004?\nH\u0000\u0001\u0000\b\u0002\u0000HB\u0001\u0000H@\u0001€\bD\u0002\u0000\u0003€„\u0010”`\u0000\u0010\u0000` |€ \u0010|„\u0000 \u0000ü0\u0010 \u0000\u0004\bA\tA€\u0001\u0000\u0001‚\bH\u0002\u0001\bH@\u0004\u0000\b\u0003\u0001\u0002\u0000\u0000@„\u0010Œ\u0004\u0000\u00100\u0004 „€ \u0010„„\u0000€0€H\u0010 \u0000„8A\bÈ@\u0001\u0003\bB\bÈ\u0002\u0001\bÌ@\b\u0003\bHA\u0002\u0000\bCø\u0010„x\u0000|\u0000x\u0018t€\u0018|t¸\u0000ü\u0000x„|\u0018\u0000x\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Delete All Messages": "\u0000\u0010\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0004\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000’\bð€\n\u0000\u0001\u0000\u0000\u0000 \u0000\u0000\u0000\u0000 \u0000\u0000¤\u0011!\u0000\"\u0000\u0001\u0000\u0000\u0000 \u0000\u0000\u0000a \u001e\u0001Q\"…\u0000‚\u0000\u0002\u0000\u0000\u0000@\u0000\u0000\u0000!@Ò\u0000‚E\u0011\u0002\u0002\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0002\"\u000fäŒA\u000bú\u0001ˆ\u0000\u0000\u0001b\u0000\u0000\u0006\u0000\u0004B\u0010I\u0015}àƒ\u0000à\u0002 \u0013\b |\u0002\u0004\u0011\u0004 ’$ \u0001\u0000\u0000@\u0012 \u001c ?\u0000\u0000\u0010\"\b$H@\u0002\u0000\u0001@\u0014@\b€\u0000\u0000\u0000@H\u0010‚H—øÀ\u0002@!\u0000\u0010\u0000\u0000\u0000\u0001\u0000A\u0004‘¡\u0000\b\u0000\b\u0000\u0002\u0000 \u0000\u0000\u0000\u0004\u0001@ƒù\"Š€\u0010\u0000 \u0000\b\u0000 \u0000\u0000\u00010\u0001\u0006\u0004\u0010D$€ \u0001€\u0000 \u0000>\u0000\u0000\u0001€\u00000\b ˆˆŸÿ\f\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0011E\u0010Q\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000!\u0004 @", + "Vibration": "\u0000\u001e\u0010\u0000\u0010\u0000\u000f Oñà \u0000‚\u0004€?èþø\b|H\u0001ü‘ \u0004’Eÿ\u001fÉ\u001a I$ʑü*€‚D¤\u001fÉ\u0012\bDR ?\u0015JO‰J0B", + "Utils": "\u0000«\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0004\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u001e\u0000\u0000\u0001\u001c\u0000\u0002\u0000A@\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001c\u0000\u0000\u0000\u001c\u0000\u0000€\b \u0000\u0000\u0004\u0000\u0000\u00000\u0004p\u0000\u0000\u0000\u0000\u0000\b\u0000\u001c\u0000 \u0001\u001e\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002r\u0000\u0000\u0000\u0003À\u0002\u0001\u001c€\u0018\u0000,@\u0000\u0000À\u0000\u000f\u0000\u0010@@@ø#€\u0000€\u001c\u0010\r\u0000&\u0010@ø\u0004\b\u000e \u0000\u0010\u0010\u0007à\u0003\u0000p\u0000\u0002\u0006\u0010\u0003„\u0007à\u0000\u0002\u0000\u0004\u0000\u0002\u0002\u0000\u0000\u0000\u0002\u0000r\u0000\u0000€\u0002\u0000\u0011\u0000\u0000\u0000\u0000€\u0007€\u0000€ø\u0000\u0000\u0000€\u0000@\u0000\u0010\u0000@\u0002\u0000\u0000\u0000\u0000 \u0007 \u0000#à€\u0000\u0000\u0010\u0000\b\u0000\u0004\u0000\b\u0000@\u0000\u0000\u0000\b\u0000\u0004\u0000\b\u0000\u0000\u0000\u0000\u0004\u0000\u0001\u0000\u0001\u0000\u0001\u0000\u0004\u0000\u0000\u0000&\u0000\u0003€&\u0000\u0000\u0000\u0000\u0001\u0000\u0000 \u0000À\u0000 \u0000~\u0000\u0000\u0003\u0000\u0003ˆ\u0003\u0000\u0000\u0000\u0000\u0000@\u0000\u0004\u0000`\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Piezo": "\u0000+\u000e\u0000\u0000\u0000\u0000\u0000\u0000@0\u0000\u0000\u0000¦\t\u0000\u0000\u0004\n¡ \u0001ÀAD\u0018\u000fÀ\u0004 €\u0000 \u0000„\u0011À\u0002\u0000\u0010ƒÀ\u0000@\u0000 @\u0000\b\u0000\u0004\b\u0000\u0001\u0000\u0001\u0001\u0000\u0000~\u0000 \u0010\u0000ð \b\u0001ø\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000€\u0000", + "BLE": "\u0000\u0016\n\u0000ø€þ\u0012\u0002\bH\b! ø€ú\u0012\u0002\bH\b! „€ƒãóð", + "Make Connectable": "\u0000l\u0010\u0000\u0010€\u0010 \u0000\u0000\u0010@\u0000\u0000\u0000\u0000\u0000\u0001\u0004\u0001\u0002\u0007ÿâD@\u0000\u0000\u0010\u0000\u0000\u0013ü#þ\u0000\u0010BH \u0000\u0000€\bÁ\u0000\u0002‚\u0000\u0001\u000f÷\u0001\u0000\u0004\u000f€tý\bIü\u001f\u0010\u0001@\u0010ð?€\u0000\t\u000f\u0000\u0001\u0011\u0000\u0004!1€\b\u0000\u0010\u0017þ\u0013þ\u0011\u0010~B \u0003€\u0002\u0001\u0004\u0002 !\u0011\u0004#â\u0000\u0000L\u0000|\u0018@L\u0004\u0011\u0010B\u0000 \u0000\u0004@\f#ï‰\u0001\u0011\u0007äB\u0000\u0000<\u0001\u0001Ј\b\u001f\u0010BH\"\u0000\u0000@ \u0011\u0010€\t\u0001\u0011\u0004'\u0002 \u0000\b\u00009\u0010¨\u0000\u0010~@\u0011ø\u0000€\u0004a\u0006\n‘ \u0001\u0004$!\u0000\u0000\u0010\u0000DQ˜\u0012\u0000PJB\u0010\u0000\u0002\u0000\u0003‚`@ à\u0002\u0004Cà\u0000\u0000\u0000\u0000\u0000", + "HID": "\u0000\u0016\n\u0000„|ò\u0010B(A\ba\u0004!ü\u0010†\u0010B\u0018A\ba\u0004!„\u0010Š\u0011óÀ", + "Light BW": "\u0000=\r\u0000\u0000\u0000\u0000€ \u0000\u0000\u00028\u0000\u0004\u0000€\u0000\u0000\u000e\u0000\u0000@\u0004\u0000|B\u0003€\u0004\u0000 \u0002\u0012\u0018ä\u0000À\u0001\u0000\u0010¸ \u001a\u0000\u000e\u0000„„\u0001\u0003\b\u0000L\u0007Å \u0010\u0000@\u0002\u0010!-\u0000€\u0002\u0000\u0010\u0001\t˜\b\u0000\u0010\u0000€\bLÀ€\u0000€\u0004\u0000BB\u0018\u0000\u0004\u0000 \u0003â\u0013\u0000\u0000 \u0001\u0000\u0000\u0000\u0000", + "LCD": "\u0000\u0016\n\u0000€xò\u0002\u0012(\bH` !€€†\u0002\u0002\u0018\b\b`!!€„‹ñãÀ", + "Background": "\u0000\u001f\u0010\u0000\u0004€\u001fð\t0 !ó€À$ €ÈAÿ\u001c€ \u0010\u0000?ÿø\u0000\u0000\u0010\u0010\u001fð?à @@@@ÿ€ÿ\u0001\u0000\u0010\u0002\u0002\u0004!\u0004\u0014\u0011A\b\u0010\u0001\u0000", + "Foreground": "\u0000y\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\b\u0000\u0000\u0000Baà\u0000\u0000Cà\t¨#€\u0002\u0000\u0000\u0000\u0010¯\u0010\u0000\u0000\u001e\u0010\u0007P\u000e\u0000\u0001\u0000\u0018\u0000\b@\b\u0000€\u0000\u0010\u0002 \u00008\u0000ø\u0002\u0004\u0004\u0000\b\u0000 \u0000\u0002\u0010\bä\u000f„\u0000‚\u0002\u0000\u0004\u0002\u001c\u00000\u0001\u0010\u0003‚\u0002\u0002\u0000\u0002\u0001À\u0004\u0000ø\u0000\u0010\u0001\b\u0000\u0001\u0001\u0002\u0000\u0001\u0000˜\u0002\u0000\f\u0000\b\u0001\b\u0000\u0001\u0000A\u0000\u0001\u0000B\u0002\u0000\n\u0000\u0004\u0000\u0004\u0000\u0000€!\u0000\u0001\u0000 \u0002\u0000\t\u0000\u0004\u0000\u0004\u0000\u0000€\u0000€\u0001\u0000\u0010\u0002\u0000\b€\u0002\u0000\u0004\u0000\u0000€\u0000€\u0013\u0000\b\u0002\u0000\bÀ\u0002\u0000\u0004\u0000\u0001€\u0000€\u0006\u0000\u0004\u0000\u0000\u0000 \u0002\u0000\u0004\u0000\u0003\u0000\u0000€\u0000\u0000\u0002\u0000", + "Programmable": "\u0000m\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000A\u0000\u0003\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u000fÿĈ€$\u0000\u0000\b$\u0000\u0000\u0002\u0000\u0000\u0010BI\u001f \u0000\u0000& Ž\u0000\b\u0000\u0000‡û‡\u0016\b|\u0001Ô\u0003€\u0000@\u0007Ä\u0000P\u0000€< \b€\u0000à\u0002\u0000\" \u0000„\b\u0001\u0001\u0000„\u00029\u0000 \u0001\u0011\u0007ä @\b\b\u0004@\u000e\b\u0001\u0000\bˆ!\u001f\u0004\u0000 €B\u0000\u0000@\t\u0000DA\b\u0000 \u0001\u0004\u0004 \u0000\u0004\u0000„\u0002\"\u000fȂ\u0000\tà\u0001\u0000\u0000 \u00040\u001f\u0010BH \u0000p€\u0010\u0000\u0002\u0001N@ˆ‚\u0013‚\u0000\u0002\u0000\u0001\u0000\u0000 \u0007‚\u0000\u0004\u001f \u0000\u0000\u0000\u0010\u0000\u0006\u0000\u0000\u0000\u0000 „„\u0000\u0000\u0000\u0001\u0000\u0000À\u0000\u0000\u0000\u0005\u0004¤ \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\"\u001f", + "Customize": "\u0000\\\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 €\u0000\u0000\u0000€\u0000\u0000\u0000\b\u0000\t\u0004\u0000C€\u0004\u0000\u0000\u0000\u0000€‡P@\u0003È\u0000|\b<\u0000\u0010\u0007”‡À\u0001\u0000\b@| \u0002\u0000\u0002\u0007Ä\u0000\u0010\u0000ˆ\u0000\u0004\u0000À\u0000 \b@\u0002\u0000\u0014€\u0000€4\u0000\u0004\u0000„\u0000 \u00020\u0000\u0010\f \u0000@\u0010€\u0005\u0000A\u00002\u0000\u0002\u0000\n\u0001\b\u0000ˆ\u0000 \u0000À\u0000 \u0001\u0010 €0@\u0004\u0000\u0002\u0000\u0002\u0000`„P\f\u0004\u0000€\u0000\u0010\u0000 \u0018\bƒ\u0000\u0000\u00000\u0000\u0000\u0000\u0002\u0000\u0000\u0000 \u0000\u0000\f\u0000\u0000\u0000\u0000 \u0000\u0000", + "Dark BW": "\u0000>\u000e\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000! \u0000\u0000 \u0000\u0000\u0000B€\u0000\u0000N\u0000\u0000\u0001ø\u0000\u0000\u0001È>!\b@\u0000\u0000\u0004@„„!\u0000\u0000\u0000!\u0002\u0012\u0011H\b\u001f\u0000ˆ\bHH \u001f€\u0004 >-A\u0000\u0000\u0000!\u0000„´\b\u0000\u0000\u0000\u0004\u0002\u00130@\u0000\u0000\u0000 \bLÂ\u0000\u0000\u0000\u0001\u0000!!0\u0000\u0000\u0000\b\u0000ø‡\u0000\u0000\u0000\u0000@\u0000\u0000\u0000", + "Background 2": "\u0000'\u0010\u0000\u0004€\u001fð\u0000\t0 \u0001ó€À\u0000$ €€\u0001ÈAÿ\u0003܏€ \bP\u0000?ÿø\u0000\u0000\u0001\u0010\u0010\u001fð\f?à @@@@€ÿ€ÿ‚\u0001\u0001\u0000\u0010\u0004\u0002\u0002\u0004!\u000fÄ\u0014\u0011A\u0000\b\u0010\u0001\u0000\u0000", + "Quiet Mode": "\u0000‰\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0010\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000BDàCà\u0000@\u0000\u0000\u0000\u0000\b\u0000!À\u0000\u0000\u0010£\u001e\u0010\u0000@\u0000p\u0000\u0000\u0004\u0000\u000f\u0000\u0000\u0000\bA\u0010\b\b\u0000@\u000fÀ\u0000\u0000\u0002\u0000\u0001\u0000\u0000\u0000\u0004\u0001\b\u0002\u0004\u0000À\u0000€\u0000\u0000\u0001\u0000\u0000€\u0000\u0000\u0002\u0000ˆ\u0001\u0004\u0001 \u0000 \u0000ˆ\u0000à\u0004\b\u001f\u0001À„\u0000‚\u0003\b\u0000\u0010\u0001\"\u0000L\u0001à\u0003ð\u0000˜„\u0000\u0002\u0000\u0004\u0000\b\u0000Q\u0000!\u0000\u0010\u0000\u0000\u0000B\u0002\u0000\u0001\u0000\u0002\u0000\u0004\u0000!\u0000\u0010\u0000\b\u0000\u0000\u0000 \u0002\u0000\u0001\u0000\u0001\u0000\u0007à\u0000€\b\u0000\u0004\u0000\u0000\u0000\u0010\u0002\u0000\u0001\u0000\u0000€<\b\u0000€\u0004\u0000\u0001ð\u0000\u0000\b\u0002\u0000\u0001\u0000\u0000@\u0000\u0000\u0000€\u0002\u0000\u0000\u0000\u0000\u0000\u0004\u0002\u0000\u0001\u0000\u0000 \u0000\u0000\u0000€\u0001\u0000\u0000\u0000\u0000\u0000\u0002\u0000", + "Highlight FG": "\u0000^\r\u0000\u0000\u0000\u0000@\u0000\u0000\u0000@\u0010\u0000\u0000\u0000\u0000\u0000\u0001\u0000Ž\u0000\u0001\u0000 \u0000\u0000\u0000\u0000\u0000\b\u0001À\u0000\b\u0000€\u000fDŽ@\u0000@\u00008\u0000@\u0002\u0000 !\b€\u0006\u0000G \u0006\u0000\b\u0000€„!\u0000h\u0000à€h\u00008\u0002\u0002\u0001\u0002\u0006\u0010\u0000\u0002\u0006\u0010\u0000˜\u000fˆ\u0004\b\u0000@\u0000\u0010\u0000@\u0002\u0010 ' \u0010\u0001\u0000\u0000@\u0001\u0000\b\u0000€…\u0000@\u0004\u0000\u0002\u0000\u0004\u0000 \u0002\u0002\u0018\u0001\u0000\u0010\u0000\u0010\u0000\u0010\u0000€\b\bÀ\u0000\u0000@\u0001€\u0000@\u0002\u0000 \u001d\u0000\u0000\u0001\u0000\u0018\u0000\u0001\u0000\b\u0000\u0000\u0000", + "Foreground 2": "\u0000„\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0012\u0000\u0000\u0001\u0000\u0000\u0000\bH\u0000‡€\u0000\u0001\u000f€& Ž\u0000\b\u0000\u0000\u0000B€\u0007ˆ\u0000\u0000\u000f\b\u0003¨\u0007\u0000\u0000€\f\u0000\u0004 \u001e\u0000€\b\u0000\u0001\u0000\"\u0000\u0003€\u000f€ @@\u0002\u0010\u0010\u0000@\u0001 \u0004 \u0011È\u001f\b\u0001\u0004\u0004\u0000!\u0001\u0000‡\u0000\f\u0000D\u0000à€€€\u0000€p\u0000\u0010 \u0007À\u0000€\b@\u0000\b\b\u0010\u0000\b\u0004À\u0006\u0002\u0000\f\u0000\b\u0001\b\u0000\u0001\u0000A\u0000\u0001\u0000B\u0000€@\u0001@\u0000€\u0000€\u0000\u0010\u0004 \u0000 \u0004\u0000\u0010\b\u0000$\u0000\u0010\u0000\u0010\u0000\u0002\u0000\u0002\u0000\u0004\u0000@\u0002\u0001\u0000\u0004@\u0001\u0000\u0002\u0000\u0000@\u0000@\t€\u0004\u0000 \u0000Œ\u0000 \u0000@\u0000\u0018\u0000\b\u0000`\u0000@\u0003ð\u0000\u0000@\u0004\u0000\b\u0000\u0006\u0000\u0001\u0000\u0000\u0000\u0004\u0000\u0000", + "Remove": "\u0000\u001e\u0010\u0000\u0010\b\u0000\u0002H#Â\u0005 ‰\b\u0015\u0012(P\u0010H¢#ù#\u0010H$оà’$ þH‚\t\"_è$\b?’(¨‚\b„’\b\"\"(¢ˆ(¡\u0004 @", + "Passkey BETA": "\u0000^\r\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0003à\u0000\u0000\u0002\u0000\u0000\u0000\u0003ãóøÈ@\u0000\u0000\b\u0000\u0000\u0000\bH\u0001\u0004¡\u001e\u001e\u001e\"\u001e!\u0000! \u0004\u0012„„„„„„\u0000„€\u0010‡à\u0012\u0002\u0002‚\u0012\u0010\u0003ãàB\u0018\u0007Æ\u0006\f\u000fÈ@\bH\u0001\u000fà!\u0006\u0006( !\u0000! \u0004!€„\u0004\u0004€L\u0000„€\u0010†\u00022\u0012\u0012\"\u0010Ð\u0002\u0012\u0000B\u0018\u0007G‡ˆG€@\u000fÁ\b@\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000x\u0000\u0000\u0000\u0000\u0000", + "Add Device": "\u0000l\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€@\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0010\u0004\u0000\u0000\u0000 \u0000€\u0000\u0000\u0000\u0000Oð@\u0004u\u0000\t\u0000\b\u00048\u0000ð\u0004\u0004\u001f8@\u0000P\u0001\u0000<€4€\b\u0013ù\u0010\u0000\u0002$\u0000 \u0000\u0010\u0004D\u0000ÿ\u0004‘ƒÀ\u0011\u0000\f\u0000\u0001\u0000D#È\u0000I\u0017À\u0001\b\u0003@\u0000 \b‚\u0004€\u0004‘\u0002\u0000 @Â\u0000\u0002\u0000ˆ OøI\u0010 \u0002\u0004\u0000 \u0000P\t\u0002\u0004€„‘\u0004\u0000@ \u0002\u0000\b€@H\bI\u0010@\b\u0002\u0000 \u0003\u0004\n\u0004\u0004ÿ„‘\b\u0001\u0000 \u0002\u0000À@A€H\b‰\u0011\u0000\u0000\u0000\u0000 \u0000\u0000\u0000`\n\u0000\bŸ \u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0001\u001fù)\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000!\u0000", + "LCD Timeout": "\u0000r\r\u0000\u0000\u0000\u0000\u0004\u0000\u0000@\u0004\u0000\u0000\u0000\u0004\u0000\u0010\u0000\u0000\u0000\u0000€\u0000\u0010\u0000€\u0010ø\u0000€\u0002\b\u0007\u0000>\u0000\b\u0000 \u0003Â\u0000 \u0000‚\u0002\u0012 \u0010€\u0004\u0000\b\u0000\u0001\u0000\u000f€ €„„\u0004@\u0006\u0000\u0004\u0000\u0004€| \b !\u0002\u0006€\u0001\u0000\u0000À\b\b\u0003ˆ\b\bA\u0018\u0006\u0010\u0000H\u0000 \u0002\u0004\u0000š\u0002\u0002\u0010‚\u0000\u0004\u0000!\u0000\b\u0000A\u0000!€€„\u0001\u0000\u0001\u0000\b`\u0002\u0000\u0010€\b !!\u0000€\u0000@\u0014ä\u0001\u0000\u0000 \u0002\b\bH€@\u0000\u0010\u0003Á\u0000@\u0000\u0010\u0000ƒñãÀ`\u0000\u0004\u0000\u0000\u0000 \u0000\b\u0000 \u0000\u0000\u0000`\u0000\u0001\u0000\u0000\u0000\u0010\u0000\u0004\u0000\b\u0000", + "Highlight BG": "\u0000^\r\u0000\u0000\u0000\u0000@\u0000\u0000\u0000@\u0010\u0000\u0000\u0000\u0000\u0000\u0001\u0000Ž\u0000\u0001\u0000 \u0000\u0000\u0000\u0000\u0000\b\u0001À\u0000\b\u0000€\u000f‡„@\u0000@\u00008\u0000@\u0002\u0000!!\b€\u0006\u0000G \u0006\u0000\b\u0000„„!\u0000h\u0000à€h\u00008\u0002\u0012\u0001\u0002\u0006\u0010\u0000\u0002\u0006\u0010\u0000˜\u000fˆ\u0004\b\u0000@\u0000\u0010\u0000@\u0002\u0010!' \u0010\u0001\u0000\u0000@\u0001\u0000\b\u0000„…\u0000@\u0004\u0000\u0002\u0000\u0004\u0000 \u0002\u0012\u0018\u0001\u0000\u0010\u0000\u0010\u0000\u0010\u0000€\bHÀ\u0000\u0000@\u0001€\u0000@\u0002\u0000>\u001d\u0000\u0000\u0001\u0000\u0018\u0000\u0001\u0000\b\u0000\u0000\u0000", + "LCD Brightness": "\u0000¼\u0010\u0000\u0000€\u000fà\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0004\u0000‚\u0000\u0000€\u0000\u0000\u0000\u0000\u0001€\u0000\u0000\u0000\u0000\u0000\u0000\u000fÀ\u0000\u0000@\u0017þ\b \u0000$\u0000\u0000\u0000\u0000\u0000$\u0010\u0000\u0000 \u0000\u0000|„\bÀ\u0002\u0001\u0012\u0000þ\u0001\u001d@\u0000\u0001\u000e\u0002>@€\u0000\u0002\u0000<\u0004H@t\u0000\u0013 \b \u000e\u0010\u0000\u0000\u000f \u001cX\b\u0000\u0000@\r D„\u0000€!Ä#À‚\u0000\u0000\u0000\u0002\u0000\u0004\u0000\u0004\u0000€\u0000\b\u0001\u0011\u0004OÀ\u0010\u0001èBD\u000fà ð\u0000@\u0000@\u0000€\b\u0000\u0003\u0000\u0011\b|„\u0002\u0000\u0000Af@\u0000\u0001ð\u0000\b\u0000\b\u0000\b\u0000€\u0000Ð\u0002 „H@|\u0000\u0004\u0012”~ü\u0000€\u0003€\u0000€\u0001\u0000\b\u00100€\"\bD„\f \u0007â4„(@\b\u0001È\u0000\u0014\u0000\u0010\u0000‚\u0000\b\u0002@„OÁ\u0001\u0000‚âHB„\u0001\u0000\u0000€\u0002 \u0002\u0000\b@\u0000€$\u0010|„ \u0010\u0010\u0002#\u0007ïÀ\u0010\u0000\b\u0000Á\u0000@\u0000ˆ\u0000\b\u0002\u0004H@9\u0001\u0000\" B„\u0002\u0000\u0000€0\u0010\b\u0000\u000b\u0000\u0000€\u0010`\u0001\u0004\u0004`\f\u0002%\u0004(@@\u0000\b\u0000\u0000\u0001\u0000\u0000À\u0000\b\u0000\u0018\u0000\u0010@D\u0000<\"ˆ~ü\b\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0002\u0014\u0003€\u0000\u00000d(@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@€\u0000\u0000\u0000", + "Connect device\nto add to\nwhitelist": "\u0000X\u0012\u0000\u0010€\u0010 \u0011$\u0000\u0000\u0000\u0000\u0000\u0010@\u0010 \u0011$>|\u0000\u0000\u0000\u0013ü#þ\u0012ª\"D\u0000\u0000\u0000\u0010\u0000( \u0013®\"D\u0000\u0000\u0000ý\bIüù$>|\u0000\u0000\u0000\u0010ð\u0000\u0012ª\u0001 \u0000\u0000\u0000\u0017þ\u0013þ3®\u0001\u0010\u0000\u0000\u0000\u0010@\"\u00029$ÿþ\u0000\u0000\u0000\u0018@L\u0004Wþ\u0002€\u0000\u0000\u00007þøQ\u0010\f`\u0000\u0000\u0000Ј\b‘\u00140\u0018\u0000\u0000\u0000\u0011\b\u0000\u0011\u0014À\u0006\u0000\u0000\u0000\u0010¨\u0012Š>|\u0000\u0000\u0000\u0010`©\u0012\u0012J\"D\u0000\u0000\u0000Q˜\u0012\u0012\u0016\"D\u0000\u0000\u0000&\u0004\u0002\u000e\u0014\">|\u0000\u0000\u0000\u0000\u0000\u0000 \u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 @\u0010\u0000\u0000\u0000\u0001\u0000\u0001", + "Wake on BTN3": "\u0000^\u000b\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0010\u0002\u0000\u0000\u0000\u0000\u0000\u0003ãú\u0011è@\b\u0000\u0000\u0000\u0000\u0000\bA\fHa\u001e\"\u001e\u0000\u001e.\u0000!\u00041!„„„\u0000„Ä\u0000„\u0010¤\u0006Ð\u0012‚\u0010\u0002\u0012\u0010\u0003àBëGÌ\u000fÀ\bH@\bA\t@s!( \u0000!!\u0000!\u0004%\u0001̄€\u0000„„\u0000„\u0010Œ†\u00122\"\u0010\u0002\u0012\u0010\u0002\u0010B2\u0018GHG€\u0007ˆ@\u000f\bG€", + "Wake on BTN2": "\u0000^\u000b\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0010\u0002\u0000\u0000\u0000\u0000\u0000\u0003ãú\u0011è@\b\u0000\u0000\u0000\u0000\u0000\bA\fHa\u001e\"\u001e\u0000\u001e.\u0000!\u00041!„„„\u0000„Ä\u0000„\u0010¤\u0006Ð\u0012‚\u0010\u0002\u0012\u0010\u0003àBkGÌ\u000fÀ\bH@\bA\tB3!( \u0000!!\u0000!\u0004%\u0010̄€\u0000„„\u0000„\u0010Œ‚\u00122\"\u0010\u0002\u0012\u0010\u0002\u0010B2\bGHG€\u0007ˆ@\u000f\bOÀ", + "Time Zone": "\u0000[\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0001\u0000\u0000\u0010\u0001\u0000\u0000R\u0000\u0000\u0000\u0000\u0010\u0000\u0002\u0000\u0010\u0002\u0005@\u0000\u0000\u0000\u0003à\u0000€\u0002\u0000  \u0000\u00000\u0000„\u0000 \u0000@\u0002\u0010\u0000\u0000\u0001\u0002\u0011\u0000\u0018\u0000\u0010\u0000B\u0000\u0000\u0000\u0010E \r\u0000\u0002\u0000\b@@ø\u0000\u0011\u0018\u0006\u0010\u0000H\u0000\u0010\u0007à\u0000\u0002A\u0000\u0002\u0000\u0010€\u0002\u0000\u0000\u0000\u0000€@\u0000@\u0002\u0018\u0000€\u0000\u0000\u0000 \u0010\u0000\b\u0002œ€\u0010\u0000\u0000\u0000\b\u0004\u0000\u0001\u0000<\u0010\u0004\u0000\u0000\u0000&\u0003\u0000\u0000 \u0000\u0000\u0001\u0000\u0000\u0000\u0003\u0001€\u0000\u0004\u0000\u0000\u0000@\u0000\u0000\u0000\u0000\u0000", + "Wake on Touch": "\u0000‹\r\u0000\b\u0000\u0000\u0000\u0000€\u0010\u0000\u0002\u0000\u0000\u0000\b\u0000\u0000\u0000\u0001\u0000€\u0000\u0000\u0000\u0010\u00018\u0000 \u0000\u0000\u0000€\u0000\u0000\u0000À\u0010\u0000\u0000\u0000\u0004\u00009\u0000\u0004\u0001€\u0000\u001f\u0000\u0000\u0001à\u0003à\u0000\u0000\u0001\u0000\u0004@@ð\b\u0010\u0004 \u0000\u0000\u0002\u000f„\u0000\u0000\u0000À\u0001\b\u0007ð\u0000‚\u0000ˆ\u0000\u0000\u0000>€€\u0007\u0000h\u0000\"\u0000\u0006\u0000\u0000€)\u0000\"\u0001\u001c\u0010 \u000f\u00000€\b@\u0001@\u0000\u0010\bÀ\u0012 \u001c\u0004\u0000 \u0000\u0010\u0002\u0010\u0000H\u0000\u0004\u0002\b\u0001D\u0000\u0010!\u0000\u0004\u0000\u0002\u0000\u0002\u0000\u0011\u0000\u0001\u0000\u0002\u0000!\u0000\u0002\u0000 \u0000€\u0000@\u0000€\u0004 \u0000@\u0000€\u0000 \u0000€\b\u0000\u001e\u0000\b\u0000 \u0001\u0004\u00010\u0000 \u0000\b\u0000\u0010\u0002\u0000< \u0001\u0000\b\u0000\u0001€\u0018\u0000\u0018\u0000\u0002\u0000\u0004\u0000€\u0000\u0000\u0000 \u0002\u0000\u0000\u0010\u0000\u0000\f\u0000\u0000€\u0001\u0000", + "Twist Timeout": "\u0000™\r\u0000\u0000\u0000\u0000€\u0000\u0000 \u0000\b\u0000\u0000€\b\u0000\u0000\u0000\b\u0000 \b \u0000@!À\b\u0000\u0002\u0000\u0000@\u0002\u0000Cà\u0002\u0000\b\"\b\u0000@\u000f \u0004\u0000\u0001ð\u0000@\u0001\u0000\u001e\u0010\u0001\u0000\u0004\b„\u0000@\u0000 \u0002\u0000\u0001\b\u0000@\u0000€\u0000\u0010\u0000ø\u0002\u0002D\u0000À\u0000\u0010\u0001\u0000\u0000ˆ\u0000À\u0000€\u0000\u000f„\u0001\u0001\u0002\u0001 \u0000\u0010\u0000à\u0000¤\u0001 \u0000@\u00000\u0002\u0002\u0000à\u0002\u0003\b\u0000\b\u0000L\u0000Œ\u0003\b\u0000$\u0000\u0010\u0001\u0002\u0000L\u0001\u0000\u0004\u0000\n\u0000!\u0000‚\u0000\u0004\u0000!\u0000\b\u0000A\u0000!\u0001\u0000\u0002\u0000\b€\u0010\u0000\u0002\u0000\u0002\u0000\u0010À\u0004\u0000!\u0000\u0010\u0001\u0000\u0001\u0000\u0018 \b\u0000\u0002\u0000\u0001\u0000S\u0004\u0000\u0000€\b\u0001\u0000\u0000€0\u0010\u0004\u0000\u0002\u0000\u0000€\u001e\b\u0002\u0000\u0000€\u0004\u0001\u0000\u0000@\u0000\u0000\u0002\u0000\u0006\u0000\u0000@\u0000\u0000\u0002\u0000\u0000€\u0002\u0000\u0000\u0000 \u0000\u0000\u0001\u0000\f\u0000\u0000 \u0000\u0000\u0002\u0000\u0000€\u0001\u0000", + "Wake on Twist": "\u0000™\r\u0000\b\u0000\u0000\u0000\u0000€\u0010\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000 \u0002\u0000\u0000\u0000\u0000@\u0004à\u0000€\u0000\u0000\b \u0000@!À\b\u0001\u0000\u0000\u0000\u0000@\u0003\u0000@\u0018\u0000\"\b\u0000@\u000f \u0004\u0000ø\u0000\u0000\u0000@\u0001\u0010\u0010<\u0002\u0004\b„\u0000@\u0000 \u0002\u000f„\u0000\u0000\u0000À\u0001\b\u0007ð\u0000‚\u0002D\u0000À\u0000\u0010\u0001\u0002\u0002\u0000\u001c\u0001 \u0000ˆ\u0000\u0018\u0000\u0002\u0001\u0002\u0001 \u0000\u0010\u0000á\u0002\u0000ð\u0003\b\u0000„\u0000\u0014\u0000\u0001\u0000\u0002\u0003\b\u0000\b\u0000LA\u0000\b\u0000\u0004\u0000„\u0000\u0012\u0000\u0001\u0000\u0001\u0000\u0004\u0000\n\u0000!!\u0000\u0004\u0000\u0002\u0000\u0002\u0000\u0011\u0000\u0001\u0000\u0001\u0000\u0002\u0000\b€\u0010\u0000€\u0002\u0000\u0001\u0000\u0002\u0000\u0010€\u0001\u0000\u0001\u0000\u0001\u0000\u0018 \b\u0000€\u0001à\u0000€\u0002\u0000\u0010@\u0013\u0000\u0001\u0000\u0000€0\u0010\u0004\u0000€\u000f\b\u0000@\u0002\u0000\u0000`\u0006\u0000\u0001\u0000\u0000@\u0000\u0000\u0002\u0000€\u0000\u0000\u0000 \u0002\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0001\u0000", + "Wake on BTN1": "\u0000^\u000b\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0010\u0002\u0000\u0000\u0000\u0000\u0000\u0003ãú\u0010H@\b\u0000\u0000\u0000\u0000\u0000\bA\fC!\u001e\"\u001e\u0000\u001e.\u0000!\u00041\u0014„„„\u0000„Ä\u0000„\u0010¤\u0012Ð\u0012‚\u0010\u0002\u0012\u0010\u0003àBKGÌ\u000fÀ\bH@\bA\tA3!( \u0000!!\u0000!\u0004%\u0004̄€\u0000„„\u0000„\u0010Œ\u0012\u00122\"\u0010\u0002\u0012\u0010\u0002\u0010B0HGHG€\u0007ˆ@\u000f\bGÀ", + "Log": "\u0000\u001c\u000e\u0000\u0000\u0000\u0000 \u0000\u0002\t\u0000\u0000\u0013X|\u0001Ôx@\u0011\u0004\u0004\u0002\u0010@@\"\u0002\b\u0004 €„\u0002x\u0000@8@\b\u0002\u0000\u0001\u0000\u0000\u0000 \u0000\u0000\u0004\u0000", + "Wake on FaceUp": "\u0000n\r\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0010\u0002\u0000\u0000\u0000\u0000\u0000\u0003ð\u0000\u0000\u0002\u0010\b@\b\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\b@!\u001e\"\u001e\u0000\u001e.\u0000 \u001e\u001e\u001e!.„„„\u0000„Ä\u0000€„„„„ÆÐ\u0012‚\u0010\u0002\u0012\u0010\u0003à\u0012\u0002\u0012\u0012\u001bGÌ\u000fÀ\bH@\b\u0007È\u000fÈHs!( \u0000!!\u0000 ! !!̄€\u0000„„\u0000€„€€„†\u00122\"\u0010\u0002\u0012\u0010\u0002\u00022\u0012\u0012\u0013\u0018GHG€\u0007ˆ@\b\u0007G‡‡‹€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€", + "Twist Max Y": "\u0000†\r\u0000\u0000\u0000\u0000€\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000A\u0000\u0002\u0001\u000e\u0000@\u0000\u0000\u0000\u0000\u0000'\u0001\u000e\u0000\b‚\u0000\u0010\u0003È\u0001\u0000\b<\u0000\u0000\u0000ä\u0003È\u0010Q\b\u0000€\u0000@\u0004\u0000\u001f\b\u0000\u0000\u0002 \u0000@A$@\f\u0000\u0001\u0000\u0010\u0000\u0000@\u0000\u0000\u0010€\u0001\u0000ˆ\u0000Ð\u0000\b\u0000p\u0000\u0002\u0000D\u0000D\u0000\b\u0002 \b\f \u0000 \u00010\u0000\u0010\u0004ˆ\u0002\u0010\u0000 \u0005\u0000 \u0000€\u0001@\u0004 \f€\n \u0010€\u0001@\b\u0001\u0000\u0002\u0000\b€\u0010\u0000\f\u0000!\u0000\u0002\u0000\b€ \b\u0000\b\u0000Á\u0000@\u0000\b\u0000\u0004\u0000\u0010\u0000Á\u0000€@\u0000 \f\u0004\u0001\u0000\u0000\u0010\u0000 \u0000€\f\u0004\u0002\u0002\u0000\u0000€\u0000\u0000\u0004\u0000\u0000\u0000\u0001\u0000\u0004\u0000\u0000\u0000\b\u0000\u0000\u0002\u0000\u0000\u0000\u0010\u0000\u0000\u0000\b\u0000 \u0000\u0000\u0000\u0000", + "Utilities": "\u0000{\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\bð\u0000\u0000\u0004\u0010\bð\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000à\u0000\u0000\u0000B\u0000à\u0000\u0000\u0000\u0000#€\u0000\u0000\u0000\u0000\u0000@\b@\u0000\u0000\u0000@\u0000\u0003\u0000\u0000\u0000\u001e\u0000\u0010\u0001\b\u0000\u001e\u0000\u0010\u0000\u0000\u0002\u0002\u0007Á\u001c\u0000\u0004\u0000!\u0001\u001c\u0000\u0004\u0002\u0007À€?\u0000\u001c€\u0003€\u0004 \u001c€\u0003€?\u0000\u0010\u0000\u0000\u0000\u0010\u0003\u0000„\u0000\u0010\u0003\u0000\u0000\u0007À\u0000\u0000\u0004\u0000\u0002\u0000\u0001\u0000\u0004\u0000\u0002\u0000\u0000\u001f\u0004\u0000\u0000\u0000€\u0000@\u0000 \u0000€\u0000@\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\b\u0000\b\u0000 \u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0001\u0000\u0002\u0000\b\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000 \u0000€\u0002\u0000\u0000 \u0000\u0000", + "Clock Style": "\u0000z\r\u0000 \u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0010\u0000\u0001\u0000\u0000\u0004à\u0000\u0000\u0000\u0000\u0004à!À\u0002\u0000\u0000@\u0002\u0001È\u0010ø\u0000\u0000\u0001È\u0007\u0000ø\u0000 \u0004@D\u0003Â\u0000\u0000\u0000D\u0000\b\u0000B\u0000\u0010\u0000!\u0000€€\u0000\u0000!\u0000\u0002\u0000\u0011\u0000\u0018\u0000$\b€ \b€\b€\u0001\u0000\n@\u001a\u0000\t\u0014 \u0004\u0010\t\u0010\u0004 \u0000@\u0004`\u0018@\u0002F\u0010\u0001\u0004\u0001D\u0002\u0010\u0000(\u0002\b\u0000\u0010\u0000’\u0004\u0000O\u0000B\u0000\u0004\u0000\u0011\u0000\u0004\u0000\u0004\u0000D‚\u0000\u001c \u0000€\u0002\u0000\u0018 \u0002\u0000\u0001\u0000\u0011A\u0000\u0004\u0000\u0000@\u0001\u0000\u0018\b\u0001\u0000\u0000@\b`€\u0000\u0000\u0000 \u0000€\u0000\u0000\u0001€\u0000\u0010\u0004\u0010@\u0000\u0000\u0000\u0010\u0000@\u0000\u0000\u0001€\u0000\u0004\u0000\u0000\u0000", + "Rewrite Settings": "\u0000[\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000!ð\u0002\u0000\u0010\u0000\u0000\u0000\b\u0002\u0000\u0004\"\u001fÿÁ\u0000Ž\u0000\u0001\u0000 \u0007ôB\u0000\u0014 \u000e\u0000\u0000@\u0004\u0000\u0000ˆ€\u0004„\u0000\u000e\u0000\u0010\u0000€\u000f À\u0000\u0010€Ž@\f\u0000\u0010\u0000\b\u0000ÿâ\u0010\u000e\b\u0006€\u0003€>þ\u0000€B\u0000\u0001\u0003\b\u0000L\u0000\b@\u0010\b@\u0000@\u0001\u0000\b@ù\b\"\u0000\u0010\u0000\b\u0000 \u0001\u0000\u0011\u0012\u0004~\u0002\u0000\u0002\u0000\u0004\u0000 \u0002\"€ˆ\u0000€\u0000€\u0000€\u0004\u0000D \u0011\u0000 \u0000`\u0000\u0010\u0000€\u000fŠ\u0005 \b\u00000\u0000\u0002\u0000\u0010\u0001\u0012!\u001fø\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001ƒ@\u0000", + "Flatten Battery": "\u0000«\u000f\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000ÿø\u0004\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000€\u0000@\u0000@\b\u0000\u0000 \u00020\u0001 \u0000\u0000\u0000A\u0000\u0000\u0000–\u0000\b\u0000\u000e\u0000€\u0002\u0007À:\u0000\u0014\u0000\u0000\u000e\u0000\u0004 \u0000\u0000\u000f\u0000\u0011\u0010\u0006\u0000\u0010ð?€\u0000\u0012\u0000\u0000\u0000\u0000\u0000„\u0000\u0000\u0000€\u0001\"\u0001\u0000\u0002c\u0000\u0010\u0000 \u0011\u0000\u0000\u0000\u0001à\u0010€\u0000\u0000\u0010€$€ \u0000€€\u000e\u0000\b\u0002\u0010\u0002 \u0011À\u0002\u0010 |\u0007œ\u0000€\u0004\u0000\u0010\u0000\u0002`\u0003à\u0001\"\u0001È\u0000B\u0003ð\u0001Œ\u000fÿàž\u0002\u0000\u0000D\u0000Â\u0010 \u0014@\u0001\u0000\b@\u0000\u0000C\u0000\u0002\u0000\u001c @\u0000\u0007€ $\u0002\u0002\u0010\u0000@\u0000\u0010\u0000\u0000\u0000 \u0000@\u0002\u0004\b€\u0000\u0010\b\u0005\u0000@\u0002\u0000\b\u0000\u0002\u0000\u0000\u0000$\u0000\b\u0000@P\u0000\u0004\u0000\u001cÀ\b\u0000€\u0002\u0000\u0000€\u0000\u0000\b\u0000\u0001\u0000\u0000 \u0011ø\u0000€\u0004`\u0000\u0000 \u0000€\u0000 \u0000\u0000\u0001\u0000\u0000 \u0000\u0018\u0002\u0000\u0000 \u0000ˆ\u0000\u0000\b\u0000 \u0000\b\u0000\u0000\u0000\u001f€\u0004\u0000\f\u0000@\u0000\b\u0000\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Debug Info": "\u0000]\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@€@\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0004\u0002\u001f€$\u0000\b\u0000\u0000\b$\u0013þ|„Ž \u0001 \u0000\u0000& \u0000„#„\u0000\u0005\u0000\u0000\u0001Ô\u0014\u0004%\u0000\u0000\u0011 \u0000\u0000\b€°Aý\u0012\u000f\u0000D\u0000\u0000\u0000„\u0005ôH\u000f€\u0002\u0010\u0002 \u0004@J\u0000\u0014~\u0002\u0000 @H€B\u0000Gñò\u0010\u0001\u0002\u0001D\u0004 \u0002 ‚\u0014\u0000\u0010\b\b@\u0001\u0000\u0011ü\u0010¨\b\u0001\u0000@\u0002\u0000\u0010\u0000ˆ'õ@€\u0010\u0002\u0000 \u0001\u0000\u0004\u0004$\b\u0000\u0000\u0000\u0002\u0000\u0010\u0000\"\b!P€\u0000\u0000\u0000 \u0001\u0000\u0001\u0011A\f@\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b†\bA", + "Storage": "\u0000L\r\u0000\u0000\u0000 \u0000@\u0000\u0000\u0000\u0000$8\u0001\u0000\u0002\u0000\u0000\u0000\u0003\t<€\u0010\u0000 \u0000\u0000\u0000\bP\u0010\u0001\u0000\u0002\u0000\u0000\u0000\u0000\u0004\u0001\u0000\u0010\u0000 \u0000\u0000\u0000`\u0000 \u0001À\u0002\u0000\u0010>\u0001\u0002\u0002\u0000\u0013\u0000 @ü\u0000\u0000@P\u0001\b\u0002\b\u0000\u0000\u0000\b\b€\u0010\u0000!\u0000\u0000\u0000\u0001\u0003\u0004\u0001\u0000\u0002 \u0000\u0000\u0000 À@\u0010\u0000,\u0000\u0000\u0000L\u0000\u0000\u0001\u0000\u0003\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Reset Settings": "\u0000k\u0010\u0000 \u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u001f\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000B!ÿø\u0000\u0000\u0001\u0000 \u0000\u0000\u0000 D \u0001\u0001à\u0004\u0010\u0002\u0000\u0000\u0000\u0002\u0000\bˆ\u0000@Ò\u0000B\u0000@\u0000\u0000\u0000@ú\f\u0000\u0000\" \b@\bð\u0000\u0000\b\u0000€\u000fþ\u0004B\u0001\b\u0001b\u0000\u0000\u0001\u0003ïà\b\u0001\u0010@!\u00010€\"\u00008\u0000„\u0001\u0000\"\b\u0004 \u001c \u0012 \u0004ϐ‚ \u0004\u0000„\u0000ˆ\u0001D\u0000…\u0011 Gà@\u0001\u0000\u0010\u0000!\u0000\u0010\"(\b€\u0014\b\u0000 \u0002\u0000\u0000 \u0002\u0004B\u0001\u0010\u0001\u0006\u0000\b\u0000 \u0000\b\u0000@ø R\u0000\u0003\u0000\u0002\u0000\u0003à\u0002\u0000\b\u0011\"\u0011ÿ€\u0000\u0000€\u0000\u0000\u0000€\u0001\u0000\u00184\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Twist Threshold": "\u0000º\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000 \u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010‘\u0004\u0000\b\u00048\u0001\u0000\u0000\u0000\u00048\u0002\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000@\u0002\u0016 €\u0004\u0000ò\u0000@\u0000\u0000\u0000ò\u0000€\u0000\u0000\u0000 \u0000\u0000\u0000ˆ\u0000„D \u0002\u0000\u0001\u0000\u0010\u0000\u0000\u0000\u0001\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0012\u0000 \t\u0010\u0003\u0000\u0000@\u0004\u0000\u0003\u0000\u0000@\b\u0000\u0000\u0000\u0018\u0000\u0001à\u0004€\b\u0002\u0004\u0003@\u0000 \u0001À\u0001à\u0000 \u0002\u0000\u0001\u0010\u0001\u0002\u0003ˆ\u0001\"\u0003€\u0002\u0003\b\u0000\b\u0000L\u0000x\u0000\b\u0000\u0001\"\u0000\u0001\u0000\u0002\u0000H€˜\u0000€\u0002\u0000\u0005\u0000\u0010€\f\u0000\u0005\u0000 €(€\u0000€\u0007€\u0012@!\u0000@\u0000€\u0002 \u0004\u0000\u0000\u0000\u0002 \b@\b@\u0000@\u000e@\b\b\u0000 \u0000 \u0003\u0004\u0001\u0000\u0000\u0000\u0003\u0004\u0002 \u0000\u0010\u0000 \u0000\u0010\u0002(\u0002\u0000\u0010\u0000\b\u0003\u0001\u0000@\u0000\u0000\u0003\u0001\u0000°\u0000\b\u00010\u0000\u001c\u0001\f\u0000€\b\u0000\u0002\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u00000\u0000\u0004\u00000\u00008€‚\u0000 \u0000\u0000\u0000€\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000", + "Turn Off": "\u0000<\u0010\u0000?ø\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0002à\u0000\u0000\u0000þ\u0014 \u0000€\u0000\u0004\u0010!D\u0000\u0004\u0001\u000ft…ü\u0000@\u000f\u0010\u0010\u0004PB\u0007€\u0001\u001dpEü\u001fÀ\u0000 \u0000\u0001P@\f\u0000\u0002?ø\u0015ü\u0001@\u0000B\u0010‚R@$\u0000\u0004?øä \u0004@\u0000‚\u0010‚J€„\u0000\u0010?ø)$\u0010@\u0002\u0000\u0010\"¢ \f\u0000@\u0001\u00020 \u0000@\u0000\u0000\u000fà\u0004\u0000\u0000\u0000\u0000", + "Compact Storage": "\u0000¬\u000e\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\t\u0001\u0000\u0002\u0000\u0000€\u0000\u0000\u0002\u0000\u0004\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000\u0000\tÀ\u0010\u0000\n\u0000C€\u0010\u0000 \u0000\u0000\u00000˜|\u0006\u0000\u0000\u0006\u0000ä\u0001\u0000\u000fÀ\u0003È\u0001\u0000\u0002\u0000\u0000\u0000\u0000…x@\u0010 \"\u0000\b€\u0010\u0000\u0011À\u0001\u0000\u0010\u0000 \u0000\u0000\u0000\u0000@\u0004\u0000‚\u0001\u0010\u0001\b\u0001\u0000\u0002\u0006\u0000\u0010\u0001\u0000\u0002\u0000\u0000\u0000\u0006\u0000\u0000@\u0000@\u0010€\u0011\u0000\u001c\u0000 €\u0002\u0000\u001c\u0000 \u0001\u0003à\u0010 \u0004\u0000\u0004\u0002\u0004\u0002\u0010\u00010\u0004\u0010\u0000 \u00010\u0002\u0004\u000fÀ\u0000\u0004\u0000€\u0000€ @B\u0000\u0010€A\u0000\u0005\u0000\u0010€ €\u0000\u0000\u0000€\b\u0000\u0010\u0004\u0002\u0000 \u0001\u0000\b\u0010\u0000ˆ\u0001\u0000\u0002\u0010\u0000\u0000\u0000\u0010\u000f€\u0002\u0000€ \u0004\u0000\u0010\u0000\u000f\u00000@\u0010\u0000\"\u0000\u0000\u0000\u0002\u0007\b\u0004À\u0010\u0002\u0000€\u0001\u0000\u0001\u0018\f\u0004\u0001\u0000\u0002À\u0000\u0000\u0004À\u0000\u00000\u0000\u0000\u0000\u0010\u0000\u0010\u0000\u0011@\u0000\u0000\u0010\u00000\u0000\u0000\u00000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0001\u0000\u0000à\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Reset to Defaults": "\u0000›\u0010\u0000 \u0000\"\u0000 \u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0004O‚\u001f\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0007ñý\u0010B!ÿø\u0000\u0000\u0000\u0000\u0001\u0000 \u0000\u0000\u0000 ~\"\u0011\"D \u0001\u0000\u0000\u0001à\u0004\u0010\u0002\u0000\u0000\u0000\u0002\u0000„B$@\bˆ\u0000@\u0000\u0000Ò\u0000B\u0000@\u0000\u0000\u0000@ ˆ|øú\f\u0000\u0000\f\u0000\" \b@\bð\u0000\u0000\b\u0004\u0011\b‘\u0000€\u000fþ\u0002@\u0004B\u0001\b\u0001b\u0000\u0000\u0001\u0001¢!\u0012#ïà\b\u0000„\u0001\u0010@!\u00010€\"\u00008XD>D\u0000„\u0001\u0000 @\"\b\u0004 \u001c \u0012 \u0004҈„O‚ \u0000\u0006\u0004\u0000„\u0000ˆ\u0001D\u0000„Q\u0010‰\u0011\u0011 Gà\u00000@\u0001\u0000\u0010\u0000!\u0000\u0010\bB¢\"(\b€\u0000\u0000\u0014\b\u0000 \u0002\u0000\u0000 \u0002\u0001\b@HDB\u0001\u0010\u0000\u0000\u0001\u0006\u0000\b\u0000 \u0000\b\u0000@\"\bE\bø R\u0000\u0000\u0000\u0003\u0000\u0002\u0000\u0003à\u0002\u0000\b\u0004Š\u0010E\u0011\"\u0011ÿ€\u0000\u0000\u0000\u0000€\u0000\u0000\u0000€\u0001\u0000 „\u0010@\u00184\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Second": "\u0000:\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000ˆ\u0000\u0002\u0000\u0000\u0000\u0010‘\u0000\u0000@\u0000\u0000\u0002\u0014@\u0000\u0010\u0001€\u0000„\u0011à‡À\u0010 \u0005ˆ\u001f\u0010\u0002\b\b\t„\u0000„\u0000\u0004\u0003Â\u0000!\u0000\u0001\u0000˜\u0011\u0000\u0010€\u0000€!\u0004\u0000\u0004 \u0000@\b\u0001\u0000\u0002\b\u0000 \u0002\u0000 \u0001\u0014\u00010\u0000€\u0007Àƒ\u00000\u0000 \u0000\u0000\u0000€\u0000\u0000\b\u0000", + "Compacting...\nTakes approx\n1 minute": "\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004€€\u0001\u0000\u0004\u0000\u0002\u0000\u0000\u0007\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000$\u0002p\u0004\u0000\u0010\u0000\b\u0000CÀ\u0000\u0000\u0000\u0001\u000f€À\u0000\u0000À\u001c€ \u0000‡€@\u0001ä\u0000\u0000\u0000\u0000\u0007„\u0001\u0002\u0002 \u0000ˆ\u0001\u0000\u0004Æ\u0002\u0000\u0000@\u0000\u0000\u0000\u0000\u0000 \u0004\u0010\b€\b@\b\u0000@@\u0010\u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0001\u0000B\u0000D\u0000p\u0002\u0000\u0000€\u0000 \u0000\u0000\u0000\u0000\u0000\b\u0000\b\u0004\b\u0004 \u0002`\u0010\u0000\u0004\u0000\u0001\u0000\u0000\u0000\u0000\u0006\u0000€\u0000€ @B\u0000\u0010€€\u0000 \u0000\b\u0000\u0000\u0000\u0000H\u0004\u0000\b\u0002\u0001\u0000\u0010\u0000€\u0004@\u0001\u0001\u0000@\u0000\u0000\u0000\u0002Cà\u0000€ \b\u0001\u0000\u0004\u0000*\u0000\b\u0010\u0002\u0000\u0000\u0000\u0000\fá\u0000˜\u0002\u0000@\u0010\u0000 \u0000À#\u0000\b\u0000ÀÀÀ\u0000\u0000\u0003\u0000\u0000\u0000\u0001\u0000\u0001\u0000\u0004\u0000\u0000à\u00008\u0006\u0006\u0006\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\b\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0004\u0000\u0000\u0000\u0010\u0000\u0000\b \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001cqÿð\u0000óàA\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Date": "\u0000\u001c\u0010\u0000\u0000\u0000@ø\u0004\b€€@ˆ\b\b\b€€¿ø\b\u0018\b€€ø(\b€„ˆˆ\b\bH€€„ˆ\b\b\b€€€ˆ\b\b\bÿ€‚ˆ\b\b\u0010", + "Minute": "\u0000\u000f\u0010\u0000\u0000@\b€\u0010€A\u0001\u0001\u0004\u0001\u0010\u0001Oñ\u0004 \b@\u0010€A\u0000‚\u0002\u0004\bP @", + "Connectable": "\u0000?\u0010\u0000\u0010€\u0010 \u0000\u0000\u0010@ € @ÿüHˆOðø\u0000A\t €\u0001A\u0000\u0000‡ûÐ„ŸÁñ\u0000\u0014\u0002\u0012\u001e\u0000\u0002\"\u0000\bEÿ„ÿ„D\u001fˆ \u0011\u0001\bˆ!\u001f\u0018@L\u0004\u0011\u0010B\u0000oýñ \" ü‹B \"@|A\t ˆ@\u0004€ˆ‚\u0013\t\n‰\u0000\u0001\u0007ä\u0002\f\u0015\"@\u0002\bHTf D€\u0014\u0012“\u0002\u0001\u0007\u0000\u0010\"\u001f", + "Stay Connectable": "\u0000~\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€0\u0001à€\u0000\u0000\u0001à\u0000\u0000\u0000\u0000\u0000€\u0002\u0000@\bB\u0000\u0000\u0000\b@\u0000\u0000\u0000\u0000\u0002\u0000\b\u0001\u0000!\b\u001e!\u0000!\u001e..\u001e\u001e\b\u001e.\u0004\u001e€ø„„\u0000€„ÄĄ„ø„Ä\u0010…€€\u0012\u0010\u0002\u0002\u0012\u0012\u0012\u0012\u0000€\u0012\u0010B\u0011‚\u0007È@\b\bHHOÈ\u0002\u0007ÈA\u000fÁ\b!!\u0000 !!! \b!!\u0004 „ „L\u0000„„„„€€ „„\u0010‚\u0010‚0Ð\u0002\u0012\u0012\u0012\u0012\u0012\u0010‚3\u0010B\u0017‡@@\u0007‡ˆHG‡‡K‡Ç€\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000x\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Hour": "\u0000\u001c\u0010\u0000\u0000@\u0000\u0000\u0004\u000fŸø@‰\u0018¿Ÿˆ@‰\u0018„\u000fŸü€\u001f\tùˆ\u0010˜¿Éùˆ\u0010˜‘\tùø˜\b\u0001\u0000P€P\u0002\b\u0002", + "No Clocks Found": "\u0000n\u000b\u0000\u0000\u0000\u0000\u00000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0006\u0010\u0000\u0001à@\u0000\u0002\u0000\u0003ð\u0000\u0000\u0000\u001c@\u0000\bA\u0000\u0000\b\u0000\b\u0000\u0000\u0000\u0000q\u001e\u0000!\u0004\u001e\u001e\"\u0000 \u001e!.\u001d¤„\u0000€\u0010„„\u0000€„„ÄŽ’\u0010\u0002\u0000B\u0012\u0002€\u0003â\u0012\u0012\u0012\u0019H@\b\u0001\bH\f\u0000\b\bHHHe!\u0000 \u0004! (\u0000 !!!!Œ„\u0000„\u0010„€\u0000€„„„†2\u0010\u0002\u0010B\u0012\u0012 \u0002\u0002\u00122\u00128G€\u0007‡Ç‡ˆ@\b\u0007‡HG@", + "App Settings": "\u0000]\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\b\u0000\u0000\u0000\u0003\u0000\u0000\u0000\u0000\u0002\u001f\u0000 \u0000\u0000\u0000$\u0000@\u0000\u0000\u0010ˆÿ\u000f\u001f A\u0000\u001e\u0007ôB\u0000\u0017„\u0007\u0016\u0001\b\u0003H\u0000\" \u0001\u0000@\u0000€\b@\" ú\f\u0000\u0000$\u0000\b\u0000B\u0001\u0010€ \u0003ÿ€À\u0000@\u0002\u0010\u0011\u0004>þ\u0000€\u0004\u0000\u0004\u0000\u0010€ˆ \u0002\u0010\u0004\u0000 \u0000 \u0000„\u0004\u000f‚ \u0001\u0000\u0002\u0000\u0000@$\u0010DH\u0011ø\u0010\u0000 \u0000\u0002\u0001@‚\"€ˆ\u0000€\u0002\u0000\u0000 \u0004\u0018\u0011\b\u0004@\b\u0000 \u0000\u0002\u0000\u0003\u0000ø R\u0000€\u0000\u0000\u0000 \u0000\u0000\u0004H„à\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001ƒ@\u0000", + "Flattening battery - this can take hours.\nLong-press button to cancel": "\u0000½\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0011\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000ˆ\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0004B\u0000\u0000\u0000\u0000\u0000G€ €\u0000\u0000\u000f\u0000CÀG\u0000\u0000\u0000\u0010\u0000B \u0000\u0000\u0002€\u0000\u0001À\u0000„\u0000\u0000\u0001¤\u0001â\u0001À\u0000\u0000\u0000€\u0002\u0012\u0000\u0000\b\u0000\u0000\u0000\u0000\u0004 \u0000\u0000\u0011\u0010\u0000\u0010\u0000p\u0000\u0000\u0004\u00000 \u0000\u0000\"\u0000\u0000\u0000\u0003À!\u0000\u0000\u0000ˆ@\u0001\u0001\u001c€\u0000\u0000 \u0001†\u0000\u0000\u0001\b\u0001\u0010\bà\u0001\b\u0010>\b‚\u0000\b\u0007\u0004\u0001\u0010\u0001À\u0014 \u0000\u0000\u0010 $@9\u0000\b@~\u0000D\u0010\u0000€\u0000 $@\t#\u0000\u0000\u0000\u0000¢\u0000\b\u0000B\u0000\u0000\u0002@€\u0004\u0000\u0002\u0000¢\u0000B\u0001(\u0000\u0003È\u0004\u0004 \u0000€\u0000 \u0000\u0000\u0012\b\u0000@\u0000\u0010\u0004 \u0002\u0000\n@\u0000\u0000€ \u0001\u0000\u0004\u0000\u0001\u0000\u0000\u0000 @\u0004\u0000\u0001\u0000\u0001\u0000\u0010\u0000B\b\u0000\b\u0001\u0000\u0010\u0000@\u0000\u0010\u0000\u0000\u0002\f\u0000@\u0000\u0010\u0000\u0010\u0000€\u0002\u0010@\u0000\u0000\u0000\u0001\u0000\u0004\u0000\u0001\u0000\u0000\u0000\u0001€\u0004\u0000\u0003\u0000\u0001\u0000\u0004\u0000\u0010‚\u0000\u0000\u0000\u0000\u0010\u0000@\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0010\u0000 \u0000ƒð\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000ÿ\u001fÀ\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Month": "\u0000\f\u0010\u0000\u001fñ\u0001\u0010\u0011\u0001\u0010\u0011ÿ\u0010\u0011\u0001\u0010\u0011ÿ\u0010\u0011\u0001 \u0012\u0001@X\u0002", + "OFF": "\u0000\u0016\n\u0000xüþ\u0012\u0002\bH\b! „øú\u0012\u0002\bH\b! „€â\u0002\u0000", + "Right": "\u0000\u000f\u0010\u0000\u0002\u0000\u0004\u0000\b\u0007ÿð@\u0000€\u0002\u0000\u0004\u0000\u001føP\u0011 $@@€\u0001\u0003þ\u0004\u0004", + "Widgets": "\u0000Y\r\u0000\b\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000 \u0002\u0000\u0000\u0000\u0018H\u0000\u0000\u0000\u0000\b\u0001\u0000\u0000\u0000\u0002\u0014\u0000\u0000\u0000\u0000\u0004\u0000ø\u0000\u0010\u0000\b\u0000\u0000\u0000\u0000\u0002\u000f„\u0000\u0010\u0006\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0002\u0000\u0010\u0000\u0000\u001c\u0000ˆ\u0000á\u0002\u00008\u0000\u0001\u0000ð\u0001\"\u0000LA\u0000ä\u0000\u0001\u0000\b\u0000Q\u0000!!\u0000\u0002\u0000\u0001\u0000\u0004\u0000!\u0000\u0010\u0000€\u0001\u0000\u0001\u0000\u0002\u0000\u0000€\b\u0000€\u0000€\u0013\u0000\u0001à\u0000€\u0004\u0000€\u0000@\u0006\u0000\u000f\b\u0000€\u0002\u0000€\u0000 \u0000\u0000\u0000\u0000\u0000€\u0001\u0000", + "Left": "\u0000\u000f\u000f\u0000\u0002\u0000\u0004\u0000\b\u0007ÿð@\u0000€\u0001\u0000\u0004\u0000\u000fø!\u0000B\u0001\u0004\u0004\b\u0010\u0010\u000fÿ€", + "Sort Order": "\u0000=\u0010\u0000\u0010\u0010\u0000\u0000\b \u0000\u0000A\u0000\u0000@A\u0000 \u0001\u0010\u0000\u0011\u001f¿\u0000àÿø\b \u0010@\u0000\u0000D\u0003ïà\u0000\u0002 \u0004\u0010\n(\bà\u0011\u0000 ÀŠ :\bˆ‚\u0005\b À $D\u0010 Ÿð\u0002\u0000¢@\u0000€€ \u0005\u0014\u0004\u0010\u0004\u0004\u0003€\b€ €?à\"\u0000D\u0000ˆ\u0001\u0001\u0002\u0010\u0002 \u0003€\b\b\u0010ÿø\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0002\u0002\u0000\u0000", + "Side": "\u0000*\u000e\u0000\u0000\u0000\u0000\u0000\u0000€€\u0000 \u0010’\u0010\u0000\b\u0002\u0014D\u0000\u0004\u0000„\u0011\u0000\u0002\u0000 $ø\u0003\u0000\b\u0007Ð\u0003@\u0003€D\u0003\b\u0000˜\u0011\u0000\u0002\u0000!\u0004@\u0000€\b\u0000 \u0000 \u0002\u0000\b\u0000\b\u0000€\u0004\u0000\u0002\u0000 \u0002\u0000\u0000€\b\u0000", + "No app has settings": "\u0000{\u0010\u0000 \u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0002\u001f\u0000 \u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000B!ÿø\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0001D \u0001\u0001à\u0001@\u0000\u0000\u0010ø\u0011ò\u0004\u0010\bˆ\u0000@Ò\u0003ð\u0004\u0000\u0001á\u0001ŀBú\f\u0000\u0000\" \bà@À\u0000@\u0000€\b@€\u000fþ\u0004B\u0002\u0006\b\u0004\u0000\u0000 \u0001\u000bïà\b\u0001\u0010@A\u0001\u0000@\f\u0000\u0004\u0000!\u0000„\u0001\u0000\"\b\u0010@\"\b\u0001\u0000\u0001\u0000\u0004/‚ \u0004\u0002\b\u0004ƒ\u0000 \u0000 \u0000…\u0011 Gà@\u0000P \u0004\u0000\b\u0000\u0001\"(\b€\u0014\b\u0001à\f\u0000\u0001\u0000\u0002\u0000\u0000$B\u0001\u0010\u0001\u0006\u0000F\u0000€\u0000 \u0000€\u0000\bø R\u0000\u0003\u0000\b \u0000\u0000\b\u0000 \u0000\u0002\u0011\"\u0011ÿ€\u0000\u0000à\u0000\u0000\u0002\u0000\u0000\u0000\u0000€\u00184\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Sleep Phase Alarm": "\u0000»\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0012\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0001\u000e\u0000‚\u0000\u0000\u0002>A\u000f\u0000\u0000\u0000\u0000\u0002\u001dB\u001f\u0001\u001c\u0000\u0000\u0000\u0010\u001e@\b@\u0000\u00008°\u001e \u0000\u0000\u0000\u0000< < \u001c\u0000\u0000\u0000\u0002\u0000\u0010\u0001\b\u0000\u0000\u0000\u0010\u0000\u0004\u0000\u0000\u0000\u0000\u0000 \u0000\b\u0000\u001c\u0000\u0000\u0000@\u0002\u0000!\u0000\u0000\u0000\u0004\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0004\u0000\u0012\u0001\u001c€\u0000\u0000\u0010\u0000€\u0004 @ø\u0000€\u0000 \u0000à@ø\u0001\u0000\u0001€\u001c\u0010@ø\u0002\u0000\u0010\u0000„\u0007à\u0000 \u0000\b\u0001à\u0007à\u0000 \u0000 \u0000\u0002\u0007à\u0000H\u0005\u0000\u0010€\u0000\u0000\u0004\u0000\u0001\u0000\u0004\u0000\u0000\u0000\n\u0000\u0004\u0000\u0000€\u0000\u0000\u0010\u0010\u0000 \u0000\u0000\u0001\u0000\u0000@\u0000€\u0000\u0000\u0002 \u0000€\u0000\u0010\u0000\u0000\u0002\u0018Á\u0000\u0004\u0000\u0000\u0000@\u0000\u0010\u0000\u0010\u0000\u0000\u0001‚\u0000 \u0000\u0004\u0000\u0000\u0002œà \u0001\u0000\u0000\u0000\u0010\u0000\u0004\u0000\u0003À\u0000\u0000À@\u0004\u0000\u0001\u0000\u0000\u0000<\u0010\u0000\u0000@\u0000\u0000\u0004\u0000\u0001\u0000\u0007„\u0000\u0000\u0000\u0000\u0001\u0000\u0000À\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000`\u0000\u0000\u0000\u0000\u0000", + "Invalid settings": "\u0000O\u0010\u0000\u0010\u0000\u0010 \u0000\u0000 \u0000\u0002\u0000 \u0000\u0010@\b\u0000!ð\u0002\u0000ð\u0000€\b\u0000B!ÿùU\u0007ù\u0000\u0014\u0007ôB\u0000\u0014ª\u0000\u000fÃð\u0000\bˆ\u0000AT\u0004„€Ž\u000f À\u0000\u001fÿ\u0010‰\u0002\u0006\u0000€\u000fþ\u0005P@’\u0004\u0010>þ\u0000€\n $$\u0010@\u0000„\u0001\u0000\u0015@(H €ù\b\"\u0001ÿ𠐁\u0001\u0011 Gà\u0000\u0000¢ \u001e\u0002\"€ˆ\u0002H‚$@F\u0004B\u0001\u0010\u0004HˆP€Š\u000fŠ\u0005 \u0010‘ J\u0000à\u0011\"\u0011ÿÀ\u0002\u0001\b\u0000\u0000\u0001ƒ@\u0000", + "TIMER": "\u0000&\n\u0000þ|„üø@B\u0012\u0002\u0011\u0001\fÈ\bD\u00043 !\u0010\u0010´øø@BÒ\u0002A\u0001\bH\b„\u0004! \"\u0010\u0010„€„Aò\u0013ò\u0010", + "Reset All": "\u0000z\u000e\u0000\u0002\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000\u001c\u0001\u0000\u0000 \u0004\u0000\u0000\u0000\u0004\b\u001f\u0000\u0002\bx\u0002X\u0001\u0004\u0000€\u0000\u0000\u0000ü\u0000\u0002Aä\u0000x\u0000!\u0000 \u0000\u0000\u0000 \u0001\u0000\f@\u0002\u0000\b\u0000\b@\bð\u0000\u0000\b\u0001À\u0004€\u0000€\u0002\u0010\u0002\u0010\u0002Ä\u0000\u0000\u0002\u0000˜\u0002\u0010\u0000@\u0001ç\u0000„\u0004Â\u0000ˆ\u0000à\"\u0001\u0002\u0000\u0010\u0000Æ\u0000!\u0000á\u0000‘\u0000&\u0007€\u0000`\u0004\u0000C\u0000\b@\b€\u0014@\b@ \u0000\u0006\u0001\u0000\u0001@\u0000 \u0002\u0000\u0004 \u0002\u0000\u0010\u0000\u0000\u0000@\u0000\u0000\b\u0000€\u0000\b\u0000€\u0004\u0000\u0000\u0000\b\u0000@\u0000\u0004\u0000\u0010\u0000\u0004\u0000 \u0002\u0000\u0000\u0000\u0001À\u0010\u0000\u0002\u0000\u0003à\u0002\u0000\b\u0001\u0000\u0000\u0000\u0000\u0000\u0003ð\u0001\u0000\u0000\u0000\u0001\u0000\u0002\u0000", + "This will remove everything": "\u0000Æ\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000@\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000€\u0001\u0000\u0002\u0000\u0000\u0010\u0000˜\u0000\u0000\u0000\b\u0000\u0000\u0000\u0003€\u0000\u0000\u0010\u0000\u0000\u0000ø\u0002\u0000\u0004\u0000\u0000@\u0002\u0000\u0000\u0010>\u0000\u0004\u0010ð\u0000ð\u0004@\u0000ð\u0001\u0000€\tÀ\u0010ð\u00010\f \u0000\u0000?€\u0000H<€\r \u000e\u0000\r \u0004\u0004\u0000(€L`\u0007\u00000€\u0000\u0000\u0002\u0000\u0018€\u0004\u0000D@\u000e\u0000DA\u001c\u0000\u0001Â\u0002\u0002\u0000\u0010\u0000‚\u0000\u0000\u00008\u0000\u0000\u0010\u0001\u0010 \u0001\u0010ƒÀ\u0000\u001b\b\b\u0000\u0000@\u0002\b\u0004\u0000\u00010\u0004 \u0000€\b‚\t\b\b‚\u0002\u0000\u0000\b \u0000\u0001\u0000\b \f\u0000\u0004@ @\u0002\u0000\"\b\u001c \"\b\b\u0000\u0000`€€\u0000\u0004\u0000 €\u0018\u0000\u000f\u0000\u0000À\b\u0000 \u001c@ \"\u0000\u0001‚\u0002 \u0001ø\u0000\u0004\u0000 \u0000\u0004\u0000\u0000À \u0002A\u0000A\u0002A\u0001\b\u0000\n\b\n€\bX\u0000\u0010\u0000\u0000\u0000 \u0000\u0000\u0000€\n\u0004\u0001\u0004\n\u0004\u0004P\u0010H$\u0011ø!\u0010\u0000€\u0000\u0000\u0000€\u0000\u0000\u0001\u0000\u0010`\u0004\u0010\u0010`%?€``@\u0000x\u0000\u0004\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0003€\u0006\u0000\b€\u0006\u0000ˆ\u0000\u0000€\u0001\u0000\u0000\u0000\u0000 \u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u001c\u0000\u0000\u0000\u0000", + "Alarm": "\u0000;\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000\b\u0010ø\bà\u0000\u0000\u0000á\u0000à\u0000\u0000\u0000\u0010\u0000@\u0000à\u0000\u0000\u0002\u0000\bä\u0000\u0000\u0000€\f\u0000à‚\u0007À\u0010\u0001\u0000\u0000\u0010?\u0000\u0002@ \u0000\u0004\u0000\u0000\u0000„\u0004\u0000\u0000€\u0000\u0000\u0010Á\u0000\u0000 \u0000\u0000\u0014ä \u0000\b\u0000\u0000\u0001àˆ\u0000\u0006\u0000\u0000\u0000\u0000\u0002\u0000\u0003\u0000\u0000\u0000\u0000\u0000", + "on": "\u0000\r\f\u0000\u0000t<\u001eD\u0004\"\u0002\u0000\u0010\u0000€\u0004\u0000 \u0000€\u0003€", + "Minutes": "\u0000\u000f\u0010\u0000\u0000@\b€\u0010€A\u0001\u0001\u0004\u0001\u0010\u0001Oñ\u0004 \b@\u0010€A\u0000‚\u0002\u0004\bP @", + "Reset all widgets": "\u0000»\u000f\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n\u0000\b\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0001\u0000 \u0000\u0000\u0000 \u0002 \u0000€\u0000\u0000\u0006\u0012\u0000\u0000\u0000\u0000\u0002\u0000\u0001à\u0004\u0010\u0002\u0000\u0000\u0000\u0002\u0000‚\u0000\u0010\u0000\u0000\u0000!@\u0000\u0000\u0000\u0000@\u0000Ò\u0000B\u0000@\u0000\u0000\u0000@ \u0003à\u0000@\u0000 \u0000\u0000\u0000\u0000\b\u0000\" \b@\bð\u0000\u0000\b\u000bú\u000f„\u0000\u0010\u0006\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0004B\u0001\b\u0001b\u0000\u0000\u0001\u0006\b0€€\u0004\u0000 @\u0007\u0000\"\u00008\u0001\u0010@!\u00010€\"\u00008\u0001\u0000\u0010 \u0003€\u0000\u0010\u000f\u0000\u0012 \u0004À\"\b\u0004 \u001c \u0012 \u0004À \u0001\u0004\u0003\u0000\u0004\u0000 \u0001D\u0000„\u0004\u0000„\u0000ˆ\u0001D\u0000„À!\u0000\u0002\u0000\u0001\u0000\u0004\u0000!\u0000\u0010\u0000@\u0001\u0000\u0010\u0000!\u0000\u0010\u0000€\u0000 \u0000@\u0000@\u0000€\u0000 \u0002\u0000\u0014\b\u0000 \u0002\u0000\u0000 \u0002\u0000\u0010\u0000\b\u0000\b\u00010\u0000\u001e\u0000\b\u0000@\u0001\u0006\u0000\b\u0000 \u0000\b\u0000@\u0002\u0000\u0002\u0000\u0001\u0000\u0018\u0000< \u0002\u0000\b\u0000\u0003\u0000\u0002\u0000\u0003à\u0002\u0000\b\u001fÿ\u0000€\u0000 \u0000\u0000\u0000\u0000\u0000€\u0001\u0000\u0000\u0000\u0000€\u0000\u0000\u0000€\u0001\u0000", + "Hours": "\u0000\u001c\u0010\u0000\u0000@\u0000\u0000\u0004\u000fŸø@‰\u0018¿Ÿˆ@‰\u0018„\u000fŸü€\u001f\tùˆ\u0010˜¿Éùˆ\u0010˜‘\tùø˜\b\u0001\u0000P€P\u0002\b\u0002", + "Enabled": "\u0000\u001e\u0010\u0000\u0002\u0000\u0010 \b\u0000 ÿà\u0002\u0001\u0000?È\u0004\u0000\u0000ü?À\u0004\"F\u0004 I/ð$% @P˜\u0000‚Cü\u0005\u0011\b\u0010\"D A\n\u0010…\b\u0012‚\b\u0000„", + "Repeat": "\u00007\r\u0000\u0004\u0000\u0003\u0000\u0000\u0000\u0004\u0002\t\u0000\u0000\u0000\b\u0002\u0012\u0000\u0000\u0001\u0002\u0010\u0004\u0018\u0000\u0000\u0002\u0004 \b\u0000\u0000\u0000\u0004\b@\u0011Àð\u000e\u0010€<\u0000ü\u0000\u0013!\u0000@\u0000\u0000\u0000!\u0004\u0000€\u0000\u0000\u0000@\b\u0001\u0000\u0000\u0000\u0000€ \u0001\u0000\u0000\u0000\u0001\u0000€\u0001ø\u0000\u0000\u0002\u0002\u0000\u0000\u0000\u0000\u0000\u0004\u0000", + "Delete": "\u0000\u001e\u0010\u0000\u0010\b\u0000\u0002H#Â\u0005 ‰\b\u0015\u0012(P\u0010H¢#ù#\u0010H$оà’$ þH‚\t\"_è$\b?’(¨‚\b„’\b\"\"(¢ˆ(¡\u0004 @", + "Reset": "\u00007\r\u0000\u0004\u0000€\u0000\u0000\u0000\u0004\u0000€\u0000\u0000\u0000\b\u0001\u0000\u0000\u0000\u0001\u0002\u0010\u0002<\u0000\u0000\u0002\u0004 \u0005ˆ\u0000\u0000\u0004\b@L \b€\u000e\u0010€p€H€\u0013!\u0000\"\u0000Q\u0000!\u0004\u0000@\u0000„\u0000@\b\u0000€\u0000\b\u0000€ \u0000€\u0000 \u0001\u0000€\u0000ø\u0000€\u0002\u0002\u0000\u0000\u0000\u0002\u0000\u0004\u0000", + "goal": "\u0000,\r\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0004€\u0000\u0000\u0000\u0000(\u0000\u0000\u0002\bz\u0000\u0000\u0001\u0010x€\u0000\u0000\t\u0000\b\u0000\u0000\u0000\u0000€ð\t\u0010\b\u0007à\u0000‘\u0001\u0000\u0000\u0000\t \u0010\u0000\u0000\u0001\u0012\u000f\u0000\u0000\u0000\u0011G\u0010\u0000\u0000\u0002\u0018\u0000\u0000\u0000\u0000A\u0000", + "Beep": "\u0000+\r\u0000\u0000\u0000\u0000\u0000\u0000À\u0010\u0000\u0000\u0000&\t\u0000\u0000\u0004|  \u0000\u0000qd\u0010\u0000\u0000\u0000 €\u0000\u0000\u0000\b\u0011Àð\u0001\u0003À\u000fÀ\u0000@@\u0000\u0000\u0000\b\b\u0000\u0000\u0000\u0002\u0001\u0000\u0000\u0000\u0000€\u0010\u0000\u0000\u0000 \u0001ø\u0000\u0000\b\u0000", + "Message": "\u0000L\r\u0000\u0001\u0000\u0000\u0000 \u0000\u0000\u0000\u0000 \b\u0000\u0000\u0001\u0000\u0000\u0000\u0003\t\u0000€\u0000\u0000\u0010\u0000\u0000\u0000\bP\b\u0000\u0000\u0001\u001e\u0000\u0000\u0000\u0004\u0018€\u0000\u0000\u0016 \u0000\u0000`\u0000p\u0001\u0010\t„\u0010>\u0001\u0002\u0001\u0000H€p€ü\u0000\u0000@(\u0002ˆ\u0001\u0010\u0000\u0000\u0000\b\u0002@!\u0000\u0010\u0000\u0000\u0000\u0001\u0000@\u0000\u0010\u0001\u0000\u0000\u0000\u0000 \b\u0000\u0002\u0000\b\u0000\u0000\u0000L\u0003\u0000\u0000@\u0000|\u0000\u0000\u0003\u0000À\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "System": "\u0000:\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010\u0018\u0000!À#À\u0002\u0001\u0000\u0007\u0007\u0000\u0000€\u0000\u0000\b\u0000\u0000\u0000 À\u0000\u0002\u0000\u0003À\u0010\b\u0010\u0001\u0000G\u0000\u0004\u0000\b\u0000@\u000e@\u0001 \u0004\u0000(\u0000\u0010\u0000„\u0002\u0000\u0011\u0000\b\u0000!\u0000\u0018 \u0002\u0000S™€\u0018\b\u0001\u0000\u000f\u0005€\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000@\u0000\u0000\u0000", + "Select Clock": "\u0000z\r\u0000 \u0000@\u0000\u0010\u0000 \u0000\u0010\u0000\u0000\u0000\u0000\u0000\u0010\u0004\u0000\b\u0000\u0002p\u0004\u0000\u0002p\u0000\u0000\u0000\u0000\u0002q\u0000\u0002\u0000\u0000ä\u0001\u0000\u0000ä\b|\u0000\u0000\u0000äG€€\u0000\"\u0000@\u0000\"\u0001á\u0000\u0000\u0000\"\u0016 \u0000\u0010€\u0010\u0000\u0010€@@\u0000\u0000\u0010¦\u0010\b\u0000\u0004@\u0007\u0000\u0004@\u0010\u0010\u0004@\u0004G\b\u0002\u0004\u0002\u0010\u00010\u0002\u0010\u0002\b\u0004ˆ\u0002\u0010D\u0000‚\u0001\b\u0000B\u0001\b\u0000‚\u0000¢\u0001\b\u0010\u0000!\u0000\u0002\u0000\u0010\u0000\u0002\u0000'€!\u0000\u0002\u0004\u0000\b€\u0001\u0000\u0004\u0000\u0001\u0000\u000e\u0010\u0000@\u0001\u0000€\u0002À\u0000€\u0001\u0000\u0000€\u0002\u0000\u0000 \u0000€\u001f\u0000À\u0000@\u0000@\u0000@\u0000\u0000\u0000\u0010\u0000@\u0000\u0000\u0000\u0000 \u0000\u0010\u0000 \u0000\u0000\u0000\b\u0000 \u0000", + "Locale": "\u0000;\r\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0000\u0000\u0000‚\u001f\u0000@\u0000\u0000\u0000ˆ< \bp\u0000\u0000\t\u0004\u0004\u0003ð\u0000\u0000\u0001 €€H\u0002\u0007À$H \u0010€?\u0000\u0004‰\u0004\u0004\u0010\u0000\u0000\u0000’'€\u0002\u0000\u0000\u0000\"G\b\u0000€\u0000\u0000\u0004P€\u0000\u0010\u0000\u0000\u0001\f\u0000\u0000\u0004\u0000\u0000\u0000A\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000", + "Vibrate": "\u0000\u001e\u0010\u0000\u0010\u0000\u000f Oñà \u0000‚\u0004€?èþø\b|H\u0001ü‘ \u0004’Eÿ\u001fÉ\u001a I$ʑü*€‚D¤\u001fÉ\u0012\bDR ?\u0015JO‰J0B", + "Alerts": "\u00009\r\u0000\u0000\u0000\u0000\u0000\u0000\u0000 Cà#€\u0000\u0000\b\u001e\u0010\u000e\u0000\u0000\u0000\u0004\u0000\u0010\u00008\u0000\u0000\u0002\u0000\bä\u0000\u0000\u0001\u00000\u0003‚\b\u001f\u0000à\u0010\u0000\u0001\u0003ð\u0000L\b\u0000\u0001\u0000\u0000\u0000!\u0004\u0000\u0000€\u0000\u0000\u0010\u0004\u0000\u0000€\u0000\u0000\b\u0002\u0000\u0000€\u0000\u0000\u0004\u0002\u0000\u0001€\u0000\u0000\u0002\u0002\u0000\u0003\u0000\u0000\u0000\u0001\u0000", + "Whitelist": "\u0000i\r\u0000\b\u0000\u0000\u0000\u0000€ \u0000\u0001\u0000\u0000\u0000 \u0002\u0000Cà\u0000@\b\u0000\u0010@!À\b\u0001\u0000\u001e\u0010\u0000@\u0004\u0000\u0004 \u000f \u0004\u0010ø\b\b\u0000@\u0002\u0000\u0002\u0010\u0000 \u0002\u0007À\u0002\u0004\u0000À\u0001\u0000\u0001\b\u0000\u0010\u0001\u0000 \u0001\u0004\u0001 \u0000à\u0000„\u0000\u0010\u0000à\u0014\u0000‚\u0003\b\u0000L\u0000B\u0000\b\u0000LI\u0000\u0002\u0000\u0004\u0000!\u0000!\u0000\n\u0000!$@\u0001\u0000\u0002\u0000\u0010\u0000\u0001\u0000\b€\u0010\" \u0001\u0000\u0001\u0000\b\u0000\u0000€\u0018 \b!\u0000\u0001\u0000\u0000€\u0004\u0000\u0000€0\u0010\u0004\u0001€\u0001\u0000\u0000@\u0002\u0000\u0000€\u0000\u0000\u0002\u0000@\u0001\u0000\u0000 \u0001\u0000\u0000€\u0000\u0000\u0001\u0000", + "Set Time": "\u0000K\u0010\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0010>|€\u0000\u0000\u0000€\u0007Â\u0004Hˆ\u0000\u0000\u0000\b\u0000‹øùñ\u0000\u0000\u0000\u0001\u0000\u0011\b\u0011\"#À\u0000\u0000 \u0002!\u0003çň\u0000\u0000\u0004\u0000Gþ@\fÂ\u0000ˆ\u0000à\u000f\tùp€H€\u0013\u0001\u0010!!\" \u0005\u0010\u0002\u0010\"ÿ'ä@\u0000„\u0000@\u0004@„„ˆ\u0000\u0000€\b\u0000‰\u0010Ÿ€\u0000 \u0001\u0000\u001f\u0012\u0012\u0012\u000f€\b\u0000 \u0002 B\u0000@\u0000\u0002\u0000\u0004\u0000\u0000(@(\u0000\u0000\u0000\u0000\u0000\u0000\u0002\b\u0002", + "Disable": "\u00006\u000b\u0000\u0000\u0010\u0000\u0000€0\u0003À@\u0000\u0002\u0000@\b€\u0000\u0000\b\u0001\u0000!\f\u001e\u001e.\u0004\u001e„\u0010„„Ä\u0010†\u0010B\u0000\u0012\u0010B\u0018A\u0006\u0007ÈA\u000fá\u0004\u0006!!\u0004 „\u0010\u0004„„\u0010‚ B\u00123\u0010B\u001f\u0007LJK‡Ç€", + "BACK": "\u0000\u001e\n\u0000ø0x†\u0011\"\u0012(DˆI!! (ø„€Â\u0013ò\u0003\bHH\n!!!$„„„‹â\u0011â\u0010", + "ALARM": "\u0000&\n\u00000€0ø…\"\u0001\"\u0012\u0014ˆ\u0004ˆLá !!3„€„ø·ò\u0003òBØH\bHˆa !\"!„€„„†\u0013ò\u0012\u0012\u0010", + "Timer": "\u0000;\r\u0000\b\u0000\u0000€\u0000\u0000\u0000\u0000€\u0000\u0010\u0000\u0000\u0000\u0000\u001f\u0000\u0004\u0002\u000f\u0000\u0000\u0004 \u0001\u0000>\u0010\u0000\u0000ˆ\u0000À\u0000\u0004\u0000\u0000)\u0000h\u0000\u0001\u0002\u0007ÈÀ0€\u0000@?\u0002\b\u0000\u0010\u0001\u0000\u0000\u0002\u0000\u0002\u0000\f\u0000\u0000\u0000€\u0000@\u0000@\u0000\u0000 \u0000\b\u0000\u0004\u0000\u0000\u0018\u0000\u0001\u0000\u0000\u0000\u0000\f\u0000\u0000 \u0000\u0000\u0000\u0000", + "Error in settings": "\u0000]\u0010\u0000 \u0000\u0002\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000‡À\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0004\"\u001fÿ€\u0000\u0000\u0000\u0000\u0000\u0000\u0001ý\u0010€\u0004\u0007€\u0000\u0000#€\u0000\u0000\bˆ\u0000@Ò\u0000\u0007\u0000à\u0000\u0000>ƒ\u0000\u0000\bˆ\u000fÀ\u00008\u0000\u0000\b\u0000ÿàD \b\u0000Ž@\u0000\u000f¿€ \u0004A\u0000 \u0003‚\b\u001f\u0000„\u0001\u0000\"\b\u0001\u0000\u0000\u0010?\u0003ä ˆ\u0001 @\b\u0000\u0001\u0000\u0000\u0011\u0012\u0004~\t\u0004\u0000@\u0000\b\u0000\u0000ˆ \"\u0000P \u0007à\u0000€\u0000\u0004B\u0001\u0010\u0001\u0006\u0003À€\b\u0000\u0000>(\u0014€\u0000À\u0000\u0000\u0001€\u0000\u0001\u0012!\u001fø\u0000\u0000\u0000\u00000\u0000\u0000\u0000`Ð\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Factory Reset": "\u0000˜\r\u0000\u0000\u0000\u0000\u0000 \u0000@\u0000\u0002\u0000\u0000\u0000\u0002\u0000@\u0000\u0000\u0000@‡€\u0000\u0000\u0013€ \u0000A\u0000\u0000\u0000A\u0000 \u0000\u0000\u0000 x€\u0000\u0000\u001c€ \u0000!\u0000\u0000\u0000!\u0000 \u0000\u0000\u0000 \u0000€\u0000\u0000\u0011\u0000 \u0000!\u0000\u0000\u0000!\u0000#À\u0000\u0000 \u0001\u0000\u0000\u0000!\u0000 \u0000!\u0000\u0000\u0000!\u0000,@\u0000\u0000 \u0001\u0001\u000f\u0000\"\u00008\u0000!\u0002\u0007À!\u00010€\"\u00008\u0002\u0000ñ\u0000B\u0000&\u0000!\u0001ø\u0000!\u0000á\u0000‘\u0000&\u0002\u0000\u0012\u0000„\u0000!\u0000!\u0000\u0000\u0000!\u0000\"\u0000Q\u0000!\u0004\u0000\f\u0000\u0004\u0000 \u0000\u0002\u0000\u0000\u0000\u0002\u0000 \u0000B\u0000 \b\u0000\b\u0000\b\u0000 \u0000\u0002\u0000\u0000\u0000\u0002\u0000 \u0000\u0002\u0000 \u0010\u0000\b\u0000\u0010\u0000 \u0000\u0004\u0000\u0000\u0000\u0004\u0000\u0010\u0000\u0004\u0000 \u0000\u0010\u0000 \u0000 \u0000\b\u0000\u0000\u0000\b\u0000\u000f€\b\u0000 \u0000\u0000 \u0000@\u0000 \u0000\u0010\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0010\u0000 ", + "Sleep": "\u0000\u001f\u0010\u0000\u0000\u0010\u0000\u0000\u0000ð\u0003ûÏ\u0001ô\u0014‚\u0002()\u0004\u0004P^ÿ¿¤’\u0011HI$\"÷þ}ÿ$ŠBI!\u0014„¿â(\u0004\u0007Ñ2\b\b©Aÿ\u0000a€\u0000\u0000", + "Connected": "\u0000Z\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000€\u0000\u0002\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0000@\u0000œ\u0004x\u0000\u0000\u0002\u0016\u001f\u0000\u001e\u00009\u0000à\u0000\u0000\u0000„x@x€\b€\u0000\u0000\u0000\u0000 \u0000\u0010\u0000@\u0004 \u0000x\u0000\u0000\b\u0000\u0004\u0000 \u0001\u0010\bà\u0001\u0010\u0003€\u0001\u0000\u0010\u0000„\u0001È\u0001\"\u0000˜\u0000€\r\u0000B\u0000\u0002\u0000(€!\u0000 \r0\u0000€\u0001\u0000\b@\b\u0000ø\fB\u0000@\u0000@\u0000\u0010\u0002\u0001Â\u0000\u0010\u0000 \u0000 \u0000\b\u0000€\u0000\u0000\u0004\u0000\u0010\u0000\u0010\u0000\u0004\u0000 \u0000\u0000\u0001\u0000\b\u0000\b\u0000\u0002\u0000\b\u0000", + "Messages": "\u0000L\r\u0000\u0001\u0000\u0000\u0000 \u0000\u0000\u0000\u0000 \b\u0000\u0000\u0001\u0000\u0000\u0000\u0003\t\u0000€\u0000\u0000\u0010\u0000\u0000\u0000\bP\b\u0000\u0000\u0001\u001e\u0000\u0000\u0000\u0004\u0018€\u0000\u0000\u0016 \u0000\u0000`\u0000p\u0001\u0010\t„\u0010>\u0001\u0002\u0001\u0000H€p€ü\u0000\u0000@(\u0002ˆ\u0001\u0010\u0000\u0000\u0000\b\u0002@!\u0000\u0010\u0000\u0000\u0000\u0001\u0000@\u0000\u0010\u0001\u0000\u0000\u0000\u0000 \b\u0000\u0002\u0000\b\u0000\u0000\u0000L\u0003\u0000\u0000@\u0000|\u0000\u0000\u0003\u0000À\u0000\b\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Hide": "\u0000\u001c\u0010\u0000\u0000\u0010\u0000\u000f‡€ ‹€\u0001\t\bˆ\u001f’H\n\u0015\u0000\u0010“ø\u0007\t\u0000€˜‰ø\bˆ€€x‹ø\u0000\b\u0000\u0010¡H\u0001\bU@ …\u0014\u0004\b\u0000\u0000", + "Show": "\u0000*\u000b\u0000`\u0000\u0000\u0000\u0000\u0004\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0000<\u0000\u0000 @q\u0002\u0007À \u0000@~\u0000\u0010\u0000ð\u0000\u0000\b\u0001È\u0000\u0000\u0004\u0000\u0002\u0000\u0000&\u0000\u0003€\u0000\u0006\u0000\u0007\u0010\u0000\u0000", + "On": "\u0000\u001b\r\u0000\u0002\u0000\u0000\u0000 \u0000\u0000\u0004\u0001€@ð\b\u0017ð\u0000‚\u0006\u0000\u0000@\u0000\u0010H\u0000\u0004\u0011\u0000\u0001\u0004 \u0000A\u0004\u00010\u0001€\u0018\u0000\u0010\u0000\u0000", + "Ok": "\u0000\u000e\n\u0000x†\u0012(I!(„Â\u0013\bJ!$„‰â\u0010", + "No": "\u0000,\r\u0000\u0000\u0000\u0000\u0000\b\u0000\u0000\u0000\u0000\u0000p\u0000\u0000\u0000\u0000\u0000\b\u0000\b\u0000\u0000\u0000@À@À#„\u0002\u0004\u0002\u0001Ð@\u0010@\u0010\u0002\u0004A\u0004A\u0000@H0H0\b\u0002\u0002\u0001À0\u00000\u0000\"\u0001\u0000\u0001\u0000\u0004 \u0000\u0000\u0000\u0000Að", + "Settings": "\u0000\u001f\u0010\u0000 \u0000\u0002\u0000!ð\u0002\u0000B!ÿÿôB\u0000\u0010\bˆ\u0000O À\u0000\u0000€\u000fþ>þ\u0000€\u0000„\u0001\u0000ù\b\"\u0001\u0011 Gâ\"€ˆ\u0004B\u0001\u0010\u000fŠ\u0005 \u0011\"\u0011ÿƒ@\u0000", + "steps": "\u0000<\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\tC€G€\u0000\u0000“È\u0003€\u0000\u0000\u0007\u0016\u0001\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0010\u0000\u001e\u0000\u0000\u0000 \u0002\u0000Ž\u0000\u0011\u0000\u0002\u0000 \u0007 \u0004ˆ\u0000@\u0005\u0000\u0002\u0000(€\u0004\u0000ˆ\u0000@\u0002\u0010\u0000€0@\u0004\u0000\u0001\u0000\u0010\f\u0004\u0000€\u0000 \u0002\u0000\u0000\u0000\u0010\u0000\u0004\u0000@\u0000\u0000\u0002\u0000\u0000€\u0000\u0000", + "back": "\u0000+\r\u0000\u0000\u0010\u0000\u0000\b\u0000\t\u0000\u0000\u0000œ\u0000 \u0000\u0000\u001cˆ\u0000\u0000\u0002 ˆ\u0000\u0000\u0000„\u0010€\u0011\u0000\u0011\u0004\b\t\u0010\u0004 \u0000¢\u0001\b \u0010\u0010€\u0001\b\u0002\u0000\u0010\u0000B\u0000@\u0004\u0000\u0010\u0000\u0000\u0001\u0000\u0004\u0000\u0000\u0000@\u0001\u0000", + "Steps": "\u0000<\u000e\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000`\u0000\u0000\u0000\u0000\u0000\u0000\tC€G€\u0000\u0000“È\u0003€\u0000\u0000\u0007\u0016\u0001\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0010\u0000\u001e\u0000\u0000\u0000 \u0002\u0000Ž\u0000\u0011\u0000\u0002\u0000 \u0007 \u0004ˆ\u0000@\u0005\u0000\u0002\u0000(€\u0004\u0000ˆ\u0000@\u0002\u0010\u0000€0@\u0004\u0000\u0001\u0000\u0010\f\u0004\u0000€\u0000 \u0002\u0000\u0000\u0000\u0010\u0000\u0004\u0000@\u0000\u0000\u0002\u0000\u0000€\u0000\u0000", + "Year": "\u0000\u000f\u0010\u0000\u0010\u0000 \u0000ñ\u0004\u0002\b\b\u0010\u0007þ\b@\u0010€!\u0003ÿø\u0004\u0000\b\u0000\u0010\u0000 \u0000@", + "Yes": "\u0000%\r\u0000\u0001\u0000\u0000\u0000\u0004\u0004\u0000\u0000\u0000\u0010 \u0000\u0000\u0000¡Â\u0000\u0000\u0004ø\b\u0018\u0000@@@ \u0002\u0002\u0002\u0000€\u0010\u0010\u0011\u0004\u0006€€`M<\u0002\u0002R0\u0018\u0000\f‘@@\u0000\u0004p\u0000\u0000\u0000\u0000", + "Loading": "\u0000\\\u000e\u0000\u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\u0000 \u0000\u0000\u0000\u0000\t\u0000\u0000\u0000\u0000\u0002\t\u0000\u0000\u0000\u0000GP\u0000\u0000\u0000\u0000\u0013X|\u0000\u0000\u0003„\u0000\u0000\u0006\u0000\u0001Ôx@\u0000\u0000\u0000\u0000\u0000€\u0010 \u0011\u0004\u0004\u0000\u0000\b<\u0000\u0010\u0000‚\u0002\u0010@A\u0003à|\u0000\u0002\u0000\u0000@\"\u0002\b\u000fÀ\u0000 \u0000à\u0000\u0004\u0004 €\u0000\u0000\u0002\u0000r\u0000\u0000€„\u0002x\u0000\u0000\u0000@\u0000 \u0000\u0010\u0000@8@\u0000\u0000\u0004\u0000\u0002\u0000\u0002\u0000\b\u0002\u0000\u0000\u0000\u0000€\u0000 \u0004À\u0001\u0000\u0000\u0000\u0000\u0000\u0010\u0000\u0002\u00000\u0000 \u0000\u0000\u0000\u0000\u0002\u0000\u0000 \u0000\u0000\u0004\u0000", + "Music": "\u0000\u001f\u0010\u0000\u0002\u0000\u0001\u0000\u0002\u0000„\bÿàŸ \u0000\u0000¢€‚\u0000D\u0000ˆ\u0002ú?ÿ‰\u0012\u0000\u0000b\"\u001fð\u0007À \u0002\u0000@Cÿøÿ€*\u0001\u0001\u0000’\u0002\u0002\u0006#\u0007ü0Aˆ\b\u0000€", + "color": "\u0000+\r\u0000\b\u0000\u0000\u0000\u0000\u0000€\bà\u0000\u0000\u0010\u0000à\u0000\u0000Cà\u0000à\u0000\u0007Ä\bä\u0000\u0000\u0010€à‚\u0007Â\u0010\u0000\u0010?\u0000„\u0000\u0004\u0000\u0000\u0010€\u0000€\u0000\u0004\u0010\u0000 \u0000\u0001\u0014\u0000\b\u0000\u0000A€\u0006\u0000\u0000\u0000 \u0003\u0000\u0000\u0000", + "off": "\u0000\u001a\r\u0000\u0002\u0000\u0000\u0000@\u0010ð\u0010\u0003Æ\u0007€\u0001\u0000\u0000€À\u0000 P\u0000\u0010$\u0000\u0004\u0011\u0000\u0002\b@\u0001\u0004\u0010\u0000€\f\u0000@\u0001\u0000\u0000\u0000", + "Off": "\u0000\u001a\r\u0000\u0002\u0000\u0000\u0000@\u0010ð\u0010\u0003Æ\u0007€\u0001\u0000\u0000€À\u0000 P\u0000\u0010$\u0000\u0004\u0011\u0000\u0002\b@\u0001\u0004\u0010\u0000€\f\u0000@\u0001\u0000\u0000\u0000", + "Theme": "\u0000+\f\u0000G€\u0000\u0000\u0000\u0007\u0000\u0000\u0000\u0010x\u0000\u0000\u0000\u0001ð€ð\u0000\u0000\u0000(à\u0010>\u0000\bä\u0001ø\u0000\u0002\u0000€\u0000\u0000\f€ \u0000\u0000\u0000`\u0004\u0000\u0000\u0000\u0002\u0001\u0000\u0000\u0000\u0000 @\u0000\u0000\u0000\u0000\u0010\u0000\u0000\u0000\u0000\u0000", + "Back": "\u0000+\r\u0000\u0000\u0010\u0000\u0000\b\u0000\t\u0000\u0000\u0000œ\u0000 \u0000\u0000\u001cˆ\u0000\u0000\u0002 ˆ\u0000\u0000\u0000„\u0010€\u0011\u0000\u0011\u0004\b\t\u0010\u0004 \u0000¢\u0001\b \u0010\u0010€\u0001\b\u0002\u0000\u0010\u0000B\u0000@\u0004\u0000\u0010\u0000\u0000\u0001\u0000\u0004\u0000\u0000\u0000@\u0001\u0000" } } \ No newline at end of file From 999bef9f5dbdf81f66afb294fa811679cb094cfe Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 20 Feb 2023 19:14:02 +0100 Subject: [PATCH 0239/1725] powermanager - Exchange power use number with colored arc --- apps/powermanager/metadata.json | 2 +- apps/powermanager/widget.js | 32 ++++++++++++++++++-------------- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/apps/powermanager/metadata.json b/apps/powermanager/metadata.json index de65aa4d6..ff2ea9670 100644 --- a/apps/powermanager/metadata.json +++ b/apps/powermanager/metadata.json @@ -13,7 +13,7 @@ "storage": [ {"name":"powermanager.boot.js","url":"boot.js"}, {"name":"powermanager.settings.js","url":"settings.js"}, - {"name":"powermanager.wid.js","url":"settings.js"}, + {"name":"powermanager.wid.js","url":"widget.js"}, {"name":"powermanager","url":"lib.js"}, {"name":"powermanager.default.json","url":"default.json"} ], diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index 2f60892b4..1f9e0de49 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -1,7 +1,7 @@ /* run widgets in their own function scope so they don't interfere with currently-running apps */ (() => { - + const GU = require("graphics_utils"); const APPROX_IDLE = 0.3; const APPROX_HIGH_BW_BLE = 0.5; const APPROX_COMPASS = process.HWVERSION == 2 ? 5.5 : 2; @@ -13,36 +13,40 @@ currently-running apps */ const MAX = APPROX_IDLE + APPROX_HIGH_BW_BLE + APPROX_COMPASS + APPROX_HRM + APPROX_CPU + APPROX_GPS + APPROX_TOUCH + APPROX_BACKLIGHT; function draw() { - g.reset(); // reset the graphics context to defaults (color/font/etc) - // add your code + g.reset(); + g.clearRect(this.x, this.y, this.x+24, this.y+24); let current = APPROX_IDLE; if (Bangle.isGPSOn()) current += APPROX_GPS; if (Bangle.isHRMOn()) current += APPROX_HRM; - if (Bangle.isLocked()) current += APPROX_TOUCH + APPROX_BACKLIGHT; + if (!Bangle.isLocked()) current += APPROX_TOUCH + APPROX_BACKLIGHT; if (Bangle.isCompassOn()) current += APPROX_COMPASS; - g.setColor(g.theme.fg); - g.setFont6x15(); - g.setFontAlign(1,-1); - g.drawString("mA", this.x + 14, this.y+13); - g.setFont6x15(); - g.setFontAlign(1,-1); - g.drawString(current.toFixed(0), this.x + 14, this.y); - timeout = 5000; + current = current/MAX; + + g.setColor(g.theme.fg); + + g.setFont6x15(); + g.setFontAlign(0,0); + g.drawString("P", this.x + 12, this.y+15); + + let end = 135 + (current*(405-135)); + g.setColor(current > 0.7 ? "#f00" : (current > 0.3 ? "#ff0" : "#0f0")); + GU.fillArc(g, this.x + 12, this.y + 12, 8, 12, GU.degreesToRadians(135), GU.degreesToRadians(end)); + if (this.timeoutId !== undefined) { clearTimeout(this.timeoutId); } this.timeoutId = setTimeout(()=>{ this.timeoutId = undefined; this.draw(); - }, timeout); + }, Bangle.isLocked() ? 60000 : 5000); } // add your widget WIDGETS.powermanager={ area:"tl", - width: 14, + width: 24, draw:draw }; })() From ae74346bb1953f136a308f5fa1bf046a4b6471dc Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 29 Dec 2022 19:24:04 +0000 Subject: [PATCH 0240/1725] New clkinfo: stopw --- apps/clkinfostopw/app.png | Bin 0 -> 3801 bytes apps/clkinfostopw/clkinfo.js | 44 ++++++++++++++++++++++++++++++++ apps/clkinfostopw/metadata.json | 13 ++++++++++ 3 files changed, 57 insertions(+) create mode 100644 apps/clkinfostopw/app.png create mode 100644 apps/clkinfostopw/clkinfo.js create mode 100644 apps/clkinfostopw/metadata.json diff --git a/apps/clkinfostopw/app.png b/apps/clkinfostopw/app.png new file mode 100644 index 0000000000000000000000000000000000000000..fb1d74b5ca2ef9864f25836593e258883214cc10 GIT binary patch literal 3801 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 P00000NkvXXu0mjf_u)&5 literal 0 HcmV?d00001 diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js new file mode 100644 index 000000000..c21d3e7b1 --- /dev/null +++ b/apps/clkinfostopw/clkinfo.js @@ -0,0 +1,44 @@ +(() => { + let durationOnPause = "---"; + let redrawInterval; + let startTime; + + const unqueueRedraw = () => { + if (redrawInterval) clearInterval(redrawInterval); + redrawInterval = undefined; + }; + + const queueRedraw = function() { + unqueueRedraw(); + redrawInterval = setInterval(() => this.emit('redraw'), 100); + }; + + const duration = () => ((Date.now() - startTime) / 1000).toFixed(1); + + return { + name: "timer", + items: [ + { + name: "stopw", + get: () => ({ + text: startTime + ? duration() + : durationOnPause, + img: atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA==") + }), + show: queueRedraw, + hide: unqueueRedraw, + run: function() { // tapped + if (startTime) { + durationOnPause = duration(); + startTime = undefined; + unqueueRedraw(); + } else { + queueRedraw.call(this); + startTime = Date.now(); + } + } + } + ] + }; +}) diff --git a/apps/clkinfostopw/metadata.json b/apps/clkinfostopw/metadata.json new file mode 100644 index 000000000..c27981810 --- /dev/null +++ b/apps/clkinfostopw/metadata.json @@ -0,0 +1,13 @@ +{ + "id": "clkinfostopw", + "name": "Stop Watch Clockinfo", + "version":"0.01", + "description": "A simple stopwatch, shown via clockinfo", + "icon": "app.png", + "type": "clkinfo", + "tags": "clkinfo,timer", + "supports" : ["BANGLEJS2"], + "storage": [ + {"name":"stopw.clkinfo.js","url":"clkinfo.js"} + ] +} From 7aa89220be7ab862fbfd668255dcc7b3adc98897 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 6 Jan 2023 22:20:38 +0000 Subject: [PATCH 0241/1725] clkinfostopw: format hours/minutes/seconds --- apps/clkinfostopw/ChangeLog | 1 + apps/clkinfostopw/clkinfo.js | 20 +++++++++++++++++++- apps/clkinfostopw/metadata.json | 1 + 3 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 apps/clkinfostopw/ChangeLog diff --git a/apps/clkinfostopw/ChangeLog b/apps/clkinfostopw/ChangeLog new file mode 100644 index 000000000..1f72aa73b --- /dev/null +++ b/apps/clkinfostopw/ChangeLog @@ -0,0 +1 @@ +0.01: New clkinfo! diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js index c21d3e7b1..71a4431a2 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.js @@ -13,7 +13,25 @@ redrawInterval = setInterval(() => this.emit('redraw'), 100); }; - const duration = () => ((Date.now() - startTime) / 1000).toFixed(1); + const pad2 = s => ('0' + s.toFixed(0)).slice(-2); + + const duration = () => { + let seconds = (Date.now() - startTime) / 1000; + + if (seconds < 60) + return seconds.toFixed(1); + + let mins = seconds / 60; + seconds %= 60; + + if (mins < 60) + return `${pad2(mins)}m${pad2(seconds)}s`; + + let hours = mins / 60; + mins %= 60; + + return `${Math.round(hours)}h${pad2(mins)}m${pad2(seconds)}s`; + }; return { name: "timer", diff --git a/apps/clkinfostopw/metadata.json b/apps/clkinfostopw/metadata.json index c27981810..c0821b8be 100644 --- a/apps/clkinfostopw/metadata.json +++ b/apps/clkinfostopw/metadata.json @@ -7,6 +7,7 @@ "type": "clkinfo", "tags": "clkinfo,timer", "supports" : ["BANGLEJS2"], + "allow_emulator": true, "storage": [ {"name":"stopw.clkinfo.js","url":"clkinfo.js"} ] From 03b5210e7b28eea30ab43602490f0db451431c4e Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 20 Feb 2023 18:32:06 +0000 Subject: [PATCH 0242/1725] clkinfostopw: js -> ts --- apps/clkinfostopw/{clkinfo.js => clkinfo.ts} | 23 +++++++++++--------- 1 file changed, 13 insertions(+), 10 deletions(-) rename apps/clkinfostopw/{clkinfo.js => clkinfo.ts} (64%) diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.ts similarity index 64% rename from apps/clkinfostopw/clkinfo.js rename to apps/clkinfostopw/clkinfo.ts index 71a4431a2..900ecaeba 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.ts @@ -1,22 +1,22 @@ -(() => { +((): ClockInfo.Menu => { let durationOnPause = "---"; - let redrawInterval; - let startTime; + let redrawInterval: number | undefined; + let startTime: number | undefined; const unqueueRedraw = () => { if (redrawInterval) clearInterval(redrawInterval); redrawInterval = undefined; }; - const queueRedraw = function() { + const queueRedraw = function(this: ClockInfo.MenuItem) { unqueueRedraw(); redrawInterval = setInterval(() => this.emit('redraw'), 100); }; - const pad2 = s => ('0' + s.toFixed(0)).slice(-2); + const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); - const duration = () => { - let seconds = (Date.now() - startTime) / 1000; + const duration = (start: number) => { + let seconds = (Date.now() - start) / 1000; if (seconds < 60) return seconds.toFixed(1); @@ -33,22 +33,25 @@ return `${Math.round(hours)}h${pad2(mins)}m${pad2(seconds)}s`; }; + const img = () => atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA=="); + return { name: "timer", + img: img(), items: [ { name: "stopw", get: () => ({ text: startTime - ? duration() + ? duration(startTime) : durationOnPause, - img: atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA==") + img: img(), }), show: queueRedraw, hide: unqueueRedraw, run: function() { // tapped if (startTime) { - durationOnPause = duration(); + durationOnPause = duration(startTime); startTime = undefined; unqueueRedraw(); } else { From f5a9cc578ea160804e04a06121250465fe338a57 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 20 Feb 2023 18:32:25 +0000 Subject: [PATCH 0243/1725] Update clock_info.d.ts - optional hasRange --- typescript/types/clock_info.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/typescript/types/clock_info.d.ts b/typescript/types/clock_info.d.ts index ce8c78d72..9b664a6dc 100644 --- a/typescript/types/clock_info.d.ts +++ b/typescript/types/clock_info.d.ts @@ -20,7 +20,7 @@ declare module ClockInfo { hasRange: true, get(): RangeItem, } | { - hasRange: false, + hasRange?: false, get(): Item, } ); From 70da1d37e513c413086f72f93ba11517f9919565 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 20 Feb 2023 18:32:42 +0000 Subject: [PATCH 0244/1725] Regenerate main.d.ts - String::slice()'s end is optional --- typescript/types/main.d.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index cd7b364a6..1505c6f5a 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -10096,11 +10096,11 @@ interface String { /** * * @param {number} start - The start character index, if negative it is from the end of the string - * @param {any} end - The end character index, if negative it is from the end of the string, and if omitted it is the end of the string + * @param {any} [end] - [optional] The end character index, if negative it is from the end of the string, and if omitted it is the end of the string * @returns {any} Part of this string from start for len characters * @url http://www.espruino.com/Reference#l_String_slice */ - slice(start: number, end: any): any; + slice(start: number, end?: any): any; /** * Return an array made by splitting this string up by the separator. e.g. From d9609a91d0d7544daca9cc4594a3b63e95437c03 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 20 Feb 2023 18:36:49 +0000 Subject: [PATCH 0245/1725] clkinfostopw: generate js --- apps/clkinfostopw/clkinfo.js | 58 ++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 apps/clkinfostopw/clkinfo.js diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js new file mode 100644 index 000000000..370809e15 --- /dev/null +++ b/apps/clkinfostopw/clkinfo.js @@ -0,0 +1,58 @@ +"use strict"; +(function () { + var durationOnPause = "---"; + var redrawInterval; + var startTime; + var unqueueRedraw = function () { + if (redrawInterval) + clearInterval(redrawInterval); + redrawInterval = undefined; + }; + var queueRedraw = function () { + var _this = this; + unqueueRedraw(); + redrawInterval = setInterval(function () { return _this.emit('redraw'); }, 100); + }; + var pad2 = function (s) { return ('0' + s.toFixed(0)).slice(-2); }; + var duration = function (start) { + var seconds = (Date.now() - start) / 1000; + if (seconds < 60) + return seconds.toFixed(1); + var mins = seconds / 60; + seconds %= 60; + if (mins < 60) + return "".concat(pad2(mins), "m").concat(pad2(seconds), "s"); + var hours = mins / 60; + mins %= 60; + return "".concat(Math.round(hours), "h").concat(pad2(mins), "m").concat(pad2(seconds), "s"); + }; + var img = function () { return atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA=="); }; + return { + name: "timer", + img: img(), + items: [ + { + name: "stopw", + get: function () { return ({ + text: startTime + ? duration(startTime) + : durationOnPause, + img: img(), + }); }, + show: queueRedraw, + hide: unqueueRedraw, + run: function () { + if (startTime) { + durationOnPause = duration(startTime); + startTime = undefined; + unqueueRedraw(); + } + else { + queueRedraw.call(this); + startTime = Date.now(); + } + } + } + ] + }; +}); From c5897ca21b42bf560cf3b1c76eecd5755f487e2d Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 20 Feb 2023 18:41:19 +0000 Subject: [PATCH 0246/1725] clkinfostopw: add README --- apps/clkinfostopw/README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 apps/clkinfostopw/README.md diff --git a/apps/clkinfostopw/README.md b/apps/clkinfostopw/README.md new file mode 100644 index 000000000..bfac58dab --- /dev/null +++ b/apps/clkinfostopw/README.md @@ -0,0 +1,11 @@ +# StopW + +A simple stopwatch widget + +## Usage + +Tap to start, tap again to pause. Tap again to restart + +## Requests + +[Contact Rob](https://www.github.com/bobrippling) for features/bugs From ae81d93666a9d6a9e385ad8710ae5ed538920ea1 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 20 Feb 2023 19:39:31 +0100 Subject: [PATCH 0247/1725] powermanager - Approximate LCD power use based on brightness --- apps/powermanager/widget.js | 40 ++++++++++++++++++++++++++----------- 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index 1f9e0de49..56867c13d 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -12,41 +12,57 @@ currently-running apps */ const APPROX_BACKLIGHT = process.HWVERSION == 2 ? 16 : 40; const MAX = APPROX_IDLE + APPROX_HIGH_BW_BLE + APPROX_COMPASS + APPROX_HRM + APPROX_CPU + APPROX_GPS + APPROX_TOUCH + APPROX_BACKLIGHT; + let settings = require("Storage").readJSON("setting.json") || {}; + + let brightnessSetting = settings.brightness || 1; + Bangle.setLCDBrightness = ((o) => (a) => { + brightnessSetting = a; + draw(); + return o(a); + })(Bangle.setLCDBrightness); + + let brightness = () => { + return process.HWVERSION == 2 ? (brightnessSetting * APPROX_BACKLIGHT) : (brightnessSetting * 0.9 * 33 + 7); + }; + function draw() { g.reset(); - g.clearRect(this.x, this.y, this.x+24, this.y+24); + g.clearRect(this.x, this.y, this.x + 24, this.y + 24); let current = APPROX_IDLE; if (Bangle.isGPSOn()) current += APPROX_GPS; if (Bangle.isHRMOn()) current += APPROX_HRM; - if (!Bangle.isLocked()) current += APPROX_TOUCH + APPROX_BACKLIGHT; + if (!Bangle.isLocked()) current += APPROX_TOUCH + brightness(); if (Bangle.isCompassOn()) current += APPROX_COMPASS; - current = current/MAX; - + current = current / MAX; + g.setColor(g.theme.fg); g.setFont6x15(); - g.setFontAlign(0,0); - g.drawString("P", this.x + 12, this.y+15); + g.setFontAlign(0, 0); + g.drawString("P", this.x + 12, this.y + 15); - let end = 135 + (current*(405-135)); + let end = 135 + (current * (405 - 135)); g.setColor(current > 0.7 ? "#f00" : (current > 0.3 ? "#ff0" : "#0f0")); GU.fillArc(g, this.x + 12, this.y + 12, 8, 12, GU.degreesToRadians(135), GU.degreesToRadians(end)); if (this.timeoutId !== undefined) { clearTimeout(this.timeoutId); } - this.timeoutId = setTimeout(()=>{ + this.timeoutId = setTimeout(() => { this.timeoutId = undefined; this.draw(); }, Bangle.isLocked() ? 60000 : 5000); } // add your widget - WIDGETS.powermanager={ - area:"tl", + WIDGETS.powermanager = { + area: "tl", width: 24, - draw:draw + draw: draw }; -})() + + // conserve memory + delete settings; +})(); \ No newline at end of file From b8792ade175d90d76a26f3a962b5f2d392a7543e Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 20 Feb 2023 20:05:28 +0100 Subject: [PATCH 0248/1725] powermanager - Let letter in widget denote most expensive active sensor --- apps/powermanager/widget.js | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index 56867c13d..cec710b59 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -30,10 +30,21 @@ currently-running apps */ g.clearRect(this.x, this.y, this.x + 24, this.y + 24); let current = APPROX_IDLE; - if (Bangle.isGPSOn()) current += APPROX_GPS; - if (Bangle.isHRMOn()) current += APPROX_HRM; + let mostExpensive = "P"; + if (!Bangle.isLocked()) current += APPROX_TOUCH + brightness(); - if (Bangle.isCompassOn()) current += APPROX_COMPASS; + if (Bangle.isCompassOn()) { + current += APPROX_COMPASS; + mostExpensive = "C"; + } + if (Bangle.isHRMOn()) { + current += APPROX_HRM; + mostExpensive = "H"; + } + if (Bangle.isGPSOn()) { + current += APPROX_GPS; + mostExpensive = "G"; + } current = current / MAX; @@ -41,7 +52,7 @@ currently-running apps */ g.setFont6x15(); g.setFontAlign(0, 0); - g.drawString("P", this.x + 12, this.y + 15); + g.drawString(mostExpensive, this.x + 12, this.y + 15); let end = 135 + (current * (405 - 135)); g.setColor(current > 0.7 ? "#f00" : (current > 0.3 ? "#ff0" : "#0f0")); @@ -63,6 +74,8 @@ currently-running apps */ draw: draw }; + Bangle.on("lock", draw); + // conserve memory delete settings; })(); \ No newline at end of file From bef8013342e6af8216ecf8674353ec73a695ffcd Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 20 Feb 2023 20:07:55 +0100 Subject: [PATCH 0249/1725] powermanager - Fix clearing area for widget --- apps/powermanager/widget.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index cec710b59..a60c79941 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -27,7 +27,7 @@ currently-running apps */ function draw() { g.reset(); - g.clearRect(this.x, this.y, this.x + 24, this.y + 24); + g.clearRect(this.x, this.y, this.x + 23, this.y + 23); let current = APPROX_IDLE; let mostExpensive = "P"; From b334b14f402b05cf6413ee36e359056dfb1eab74 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 20 Feb 2023 20:55:33 +0100 Subject: [PATCH 0250/1725] powermanager - Fix drawing in timeout --- apps/powermanager/widget.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index a60c79941..7ed9159fe 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -17,7 +17,7 @@ currently-running apps */ let brightnessSetting = settings.brightness || 1; Bangle.setLCDBrightness = ((o) => (a) => { brightnessSetting = a; - draw(); + draw(WIDGETS.powermanager); return o(a); })(Bangle.setLCDBrightness); @@ -25,7 +25,7 @@ currently-running apps */ return process.HWVERSION == 2 ? (brightnessSetting * APPROX_BACKLIGHT) : (brightnessSetting * 0.9 * 33 + 7); }; - function draw() { + function draw(w) { g.reset(); g.clearRect(this.x, this.y, this.x + 23, this.y + 23); @@ -63,7 +63,7 @@ currently-running apps */ } this.timeoutId = setTimeout(() => { this.timeoutId = undefined; - this.draw(); + w.draw(w); }, Bangle.isLocked() ? 60000 : 5000); } From ce46760922c85b51cc88f6a4c951f7bc8a8060c7 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 20 Feb 2023 20:56:12 +0100 Subject: [PATCH 0251/1725] powermanager - Adds setting for widget --- apps/powermanager/settings.js | 6 ++++++ apps/powermanager/widget.js | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/apps/powermanager/settings.js b/apps/powermanager/settings.js index b0d8ac8b5..41833f3a6 100644 --- a/apps/powermanager/settings.js +++ b/apps/powermanager/settings.js @@ -24,6 +24,12 @@ 'title': 'Power Manager' }, "< Back" : back, + 'Show widget': { + value: !!settings.widget, + onchange: v => { + writeSettings("widget", v); + } + }, 'Monotonic percentage': { value: !!settings.forceMonoPercentage, onchange: v => { diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index 7ed9159fe..b59108f01 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -1,6 +1,10 @@ /* run widgets in their own function scope so they don't interfere with currently-running apps */ (() => { + const s = require("Storage").readJSON("powermanager.json") || {}; + + if (!s.widget) return; + const GU = require("graphics_utils"); const APPROX_IDLE = 0.3; const APPROX_HIGH_BW_BLE = 0.5; From 8e91bb35c45ffef33c8f754ce7c8104a5bdadcf2 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 20 Feb 2023 20:56:52 +0100 Subject: [PATCH 0252/1725] powermanager - Add a bit of readme describing the widget --- apps/powermanager/README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/powermanager/README.md b/apps/powermanager/README.md index 88b3c370a..7a0c110a6 100644 --- a/apps/powermanager/README.md +++ b/apps/powermanager/README.md @@ -7,6 +7,11 @@ Features: * Force monotonic battery percentage or voltage * Automatic calibration on charging uninterrupted longer than 3 hours (reloads of the watch reset the timer). + +## Widget +The widget shows an approximate current power use. There is a power gauge showing the estimation of the currently used power and the currently active sensor with the biggest power draw. +G for GPS, H for pulse sensor and C for compass. + ## Internals Battery calibration offset is set by writing `batFullVoltage` in setting.json From a59f500895af09e1dc14d06b92cb3c2bafe41424 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Mon, 20 Feb 2023 21:35:35 +0100 Subject: [PATCH 0253/1725] gpsmagcourse: README updates --- apps/gpsmagcourse/README.md | 47 +++++++++++++++------------------ apps/gpsmagcourse/metadata.json | 2 +- apps/gpsmagcourse/widget.js | 2 +- 3 files changed, 23 insertions(+), 28 deletions(-) diff --git a/apps/gpsmagcourse/README.md b/apps/gpsmagcourse/README.md index de6c51751..bca039424 100644 --- a/apps/gpsmagcourse/README.md +++ b/apps/gpsmagcourse/README.md @@ -1,9 +1,9 @@ -# GPS Compass heading switcher +# GPS Compass course switcher The GPS course and speed is calculated by the difference of positions. However GPS position is noisy and prone to jump around. This results in randomly jumping GPS course values when speed is slow or standing still. -So in these cases a user might want to get his moving direction from a compass instead. -This is why this app replaces the GPS heading with the compass heading when the speed is slower then 6 km/h (threshold is configurable, see settings). +So in these cases a user might want to get the moving direction from a compass instead. +This is why this app replaces the GPS course with the compass heading when the speed is slower then 6 km/h (threshold is configurable, see settings). ## Important Notes * **Watch orientation** @@ -19,30 +19,25 @@ This is why this app replaces the GPS heading with the compass heading when the However the error from local magnetic interference and from calibration will probably be higher.. ## Widget -The widget indicates if the current GPS heading is provided from GPS or compass. +The widget indicates if the current GPS course is provided from GPS or compass. It can be turned off in the settings. On Bangle.js 2 a click on the widget does reset the built-in compass. ## Settings -* **speed** - - (default = 6 km/h) When lower then this use direction from compass -* **compassSrc** - - off: - - built-in (default): - - Navigation Compass: -* **reset compass on power on** - - off: - - on (default): -* **tilt compensation** - - off: - - on (default): -* **show Widget** - - Never - - Active (default): When replacing GPS course with compass course - - GPS on - -## TODO: -- Document settings with defaults -- Check magnav dependency in settings -- note magnav silently downgrade -- Test on BangleJS +* **Speed threshold** + - (default = 6 km/h) When GPS speed is lower then this threshold use the compass direction. +* **Compass source** + - off: Disables this addon. + - built-in (default): Uses the built-in compass. Its calibration can be restarted by pressing the Widget. When tilt compensation is disabled or "Navigation compass" is not installed the watch must be orientated horizontally for the compass heading to be used. + - magnav (only if "Navigation Compass" is installed): Compass heading is provided by "Navigation Compass" (magnav). Remember to calibrate it regularly. +* **Reset compass when powered on** + - Off: Do nothing when compass is turned on. + - On (default): The calibration of the built-in compass is reset when it is turned on. +* **Tilt compensation on built-in compass** + Only available if "Navigation Compass" is installed. + - Off: Leaves the value of the built-in compass unchanged. + - On (default): Apply the tilt compensation from "Navigation Compass" to the built-in compass in _all_ applications. +* **Show Widget** + - Never: Widget is hidden. + - Active (default): Widget is only visible when replacing GPS course with compass heading. + - GPS on: Widget is shown as soon as GPS is enabled, crossed out when GPS provides the course and displayed normally when the compass heading is used. diff --git a/apps/gpsmagcourse/metadata.json b/apps/gpsmagcourse/metadata.json index 266924bef..057b01383 100644 --- a/apps/gpsmagcourse/metadata.json +++ b/apps/gpsmagcourse/metadata.json @@ -4,7 +4,7 @@ "shortName":"GPS/Compass course", "icon": "app.png", "version":"0.01", - "description": "Replace GPS heading with compass heading when speed is slow or standing still to avoid the heading from jumping around randomly.", + "description": "Replaces the GPS course with the compass heading when speed is slow or standing still to avoid the value from jumping randomly. For best experience also install \"Navigation Compass\", although not a requirement (see README).", "type": "bootloader", "tags": "outdoors,widget", "supports": ["BANGLEJS","BANGLEJS2"], diff --git a/apps/gpsmagcourse/widget.js b/apps/gpsmagcourse/widget.js index 0df33755d..0e00a1a70 100644 --- a/apps/gpsmagcourse/widget.js +++ b/apps/gpsmagcourse/widget.js @@ -71,7 +71,7 @@ // reset compass on click on widget Bangle.on('touch', function(button, touch) { - if (WIDGETS.gpsmagcourse && WIDGETS.gpsmagcourse.x && WIDGETS.gpsmagcourse.width && isInside({x: WIDGETS.gpsmagcourse.x, y: WIDGETS.gpsmagcourse.y, w: WIDGETS.gpsmagcourse.width, h: 24}, touch)) { + if (touch && WIDGETS.gpsmagcourse && WIDGETS.gpsmagcourse.x && WIDGETS.gpsmagcourse.width && isInside({x: WIDGETS.gpsmagcourse.x, y: WIDGETS.gpsmagcourse.y, w: WIDGETS.gpsmagcourse.width, h: 24}, touch)) { Bangle.buzz(50); Bangle.resetCompass(); } From 2edf19251c9d416281f21a1844e847d84068f13f Mon Sep 17 00:00:00 2001 From: BartS23 <10829389+BartS23@users.noreply.github.com> Date: Mon, 20 Feb 2023 21:40:55 +0100 Subject: [PATCH 0254/1725] add dependabot config --- .github/dependabot.yml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 000000000..e2fbf5609 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,7 @@ +version: 2 + +updates: + - package-ecosystem: "gitsubmodule" + directory: "/" + schedule: + interval: "daily" From fa3b20bdf6e26878a555cfc230b9c654b2a57098 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Tue, 21 Feb 2023 00:00:43 +0100 Subject: [PATCH 0255/1725] powermanager - Add CPU indicator to widget --- apps/powermanager/widget.js | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index b59108f01..0eb352ea1 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -5,6 +5,17 @@ currently-running apps */ if (!s.widget) return; + const systickMax = peek32(0xE000E014); + let t, systickNow, tLater, systickLater, systickDiff; + setInterval(() => { + tLater = Date.now(); + systickLater = peek32(0xE000E018); + systickDiff = systickLater - systickNow; + if (systickDiff < 0) systickDiff += systickMax; + t = Date.now(); + systickNow = peek32(0xE000E018); + }, 250); + const GU = require("graphics_utils"); const APPROX_IDLE = 0.3; const APPROX_HIGH_BW_BLE = 0.5; @@ -31,9 +42,9 @@ currently-running apps */ function draw(w) { g.reset(); - g.clearRect(this.x, this.y, this.x + 23, this.y + 23); - let current = APPROX_IDLE; + let cpu = 1 - systickDiff/systickMax; + let current = APPROX_IDLE + cpu * APPROX_CPU; let mostExpensive = "P"; if (!Bangle.isLocked()) current += APPROX_TOUCH + brightness(); @@ -52,6 +63,8 @@ currently-running apps */ current = current / MAX; + g.clearRect(this.x, this.y, this.x + 23, this.y + 23); + g.setColor(g.theme.fg); g.setFont6x15(); @@ -60,7 +73,11 @@ currently-running apps */ let end = 135 + (current * (405 - 135)); g.setColor(current > 0.7 ? "#f00" : (current > 0.3 ? "#ff0" : "#0f0")); - GU.fillArc(g, this.x + 12, this.y + 12, 8, 12, GU.degreesToRadians(135), GU.degreesToRadians(end)); + GU.fillArc(g, this.x + 12, this.y + 12, 9, 12, GU.degreesToRadians(135), GU.degreesToRadians(end)); + + g.setColor(g.theme.fg); + let endCpu = 135 + (cpu * (405 - 135)); + GU.fillArc(g, this.x + 12, this.y + 12, 6, 8, GU.degreesToRadians(135), GU.degreesToRadians(endCpu)); if (this.timeoutId !== undefined) { clearTimeout(this.timeoutId); @@ -68,7 +85,7 @@ currently-running apps */ this.timeoutId = setTimeout(() => { this.timeoutId = undefined; w.draw(w); - }, Bangle.isLocked() ? 60000 : 5000); + }, Bangle.isLocked() ? 60000 : 2000); } // add your widget From fd3deae93e0589d9fcf3f2f4e17f2f751a551456 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Tue, 21 Feb 2023 00:02:42 +0100 Subject: [PATCH 0256/1725] powermanager - Fix calling draw without parameter on lock events --- apps/powermanager/widget.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index 0eb352ea1..8de7a47a3 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -95,7 +95,7 @@ currently-running apps */ draw: draw }; - Bangle.on("lock", draw); + Bangle.on("lock", ()=>{draw(WIDGETS.powermanager);}); // conserve memory delete settings; From 3b3f9d20f054d822f71781ba815af881c6ab7f79 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Wed, 22 Feb 2023 09:13:00 -0600 Subject: [PATCH 0257/1725] Add files via upload --- apps/pokeclk/screenshot.png | Bin 0 -> 2354 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/pokeclk/screenshot.png diff --git a/apps/pokeclk/screenshot.png b/apps/pokeclk/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..1e17a632b5325553e83aecf6bdcfd339b9512d48 GIT binary patch literal 2354 zcma)8dpHwp8)w!`TH7e3mmH=Pjkofq$YBg~m_yDsM#*6xn@_w%nE04P?_Q0HMiMeC zhs`03luL?>9CC<-@`kmM*lWhOzJIwx}N90uIG0>_kI2D`*%OrO?AWCL-woh zmywZyU>s~cq?Yw_gF(`>p0gMzHL|fD_9&UU!C$`0$beTdw$`2rf&7x`_yuDyn!mUA z*IUQf`>&thwsJ`8SgL4@bV89o^fb`wIMaN#5DGo?gPW6f+wNdvs(D%(92Ei8;*ETI znE=cMIVQ=-79KqIT9va@Q8TfozuITp1QSK=Bo{t;&0HvB@5XKrfW2cm% zCkwPo4xW#t$eS3OkUt+j1h651aTjjk>A%vn3>CDD=M|M1isn^6pVXJa)BrZTH%C?* za{mAZV`M1spdt~DXANTwIz1UI?Maz269+Qw4&-q{bKM|2f>XfgoZPUE#!?k)8q^_KPh z`zcbmuDBaHpoW3bfiShTOzO}+&Hu8|CVxH<@AujvorOr_W*a#tBZZ})r=YqQ=_rDf z?Eg^hW2z@y5QUZWx~Fz@ai$hNVjuJkCzMZNBscmvV~opSLzm965B!@RT~jOGW_Hbu zIX&$qk;6lb>8XB2qj?!t0$DT5(xi zmzCbDOt*pU~FZ%G9u9$hXI z9pHc9Qy%2bR8yX;J{X4`Vm0*Ci5|Ywi9>T!jAt4qtRZ9u zC!C21j;d68S06^3T(Bm9S5vm%nk9PmFQN$%ZUT(|*|{m~1IAWdKXxUKf2%02m}bHn zyD-iR__JqfP#PLvpTOqpnO)02G5P+w20%Q@bs3B{&D>n>3vgC~hvhGQHk!C8bt{&2 zC%I!D-@o+es_XkWX*H7aWE~!pl*&Rv)!P(hrI{gF=c@=@_x>ZTrHG~)CDR*6K5l<( z8wiOypV?#|3Ic9wlj+jH{ZmNK7hw|T;zdu=^H9akxRmjDT31$}G}kQ^Ak9;#c9SPNQ`l*lB4Q;){+F_M8y(1#;E;My(lr+!mzMEbwX*)*(&se36pSS6N zf<0JG6OFeU$1Dus&AYU3q-M^FMI?cN&#u!_D<$YvH}TK zz5npDF5nCcu;j3)dUGdviayp_*OS|K<>R-?{I z@I@^FRnnGm`&+PMO?Z>B5!%BrK>iexugLiq69dc{LyQ&~8PoiY<6lXvUZSvbI<~Cnj!ZKag-cbKIf{!C>;4* z~%Y51;t5N3LwQc<2W@*`>l1HBsH9@%eh z(63EKt+Opmn{(D3oN3wl+a!s^6E6Krn3I{MAgps|^`fz;yXMR2W_j(M%56AcNr$}B zKswy-?oy-SGo3#cSgp|x11ULTHRAA2SWH1}Jc@_XiGVCuiJ!dl+HKz2nyQR+g%sC-=)C}n<-$ISvXU>lv}PJgiG{1JEziqR>ancl?^)co z+^oB;JNqa#%6~0y+VF6;6k%I}6|Y8_xxJ&!LM~`uMW$NwmVs?;5+7Z%;Gv;Zs$H}6 zK_xU@H?8qY5;f*A*!*_J0H1AWmO3L;>h7>ggnP&x)AVgUJi4qcC?MnJx(CZ0#IH=WE% zTAqpwj#7epS4(#2F9Ic-Q|P2Q1XxeFcP50vHKMUWc%6E7*LY0pkWay>R6Au+l?q!) zc^#B~0l5miT^stT2O{PN`Xo z8T8RI*0JDZ?;%*84>!k?vn0nf)Knq^pa1s7TzF=cq~fZt8vo-sJYi!py?z(^YTEnz zuIk#Zqyu9w#@PyV$b$Q~q5)2G=r6^UMla0; literal 0 HcmV?d00001 From a65f949a3c1a7897717e1a7d2422be53e9c62c55 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Wed, 22 Feb 2023 09:14:09 -0600 Subject: [PATCH 0258/1725] replaced with proper file and name --- apps/pokeclk/screenshot (1).png | Bin 2354 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 apps/pokeclk/screenshot (1).png diff --git a/apps/pokeclk/screenshot (1).png b/apps/pokeclk/screenshot (1).png deleted file mode 100644 index 1e17a632b5325553e83aecf6bdcfd339b9512d48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2354 zcma)8dpHwp8)w!`TH7e3mmH=Pjkofq$YBg~m_yDsM#*6xn@_w%nE04P?_Q0HMiMeC zhs`03luL?>9CC<-@`kmM*lWhOzJIwx}N90uIG0>_kI2D`*%OrO?AWCL-woh zmywZyU>s~cq?Yw_gF(`>p0gMzHL|fD_9&UU!C$`0$beTdw$`2rf&7x`_yuDyn!mUA z*IUQf`>&thwsJ`8SgL4@bV89o^fb`wIMaN#5DGo?gPW6f+wNdvs(D%(92Ei8;*ETI znE=cMIVQ=-79KqIT9va@Q8TfozuITp1QSK=Bo{t;&0HvB@5XKrfW2cm% zCkwPo4xW#t$eS3OkUt+j1h651aTjjk>A%vn3>CDD=M|M1isn^6pVXJa)BrZTH%C?* za{mAZV`M1spdt~DXANTwIz1UI?Maz269+Qw4&-q{bKM|2f>XfgoZPUE#!?k)8q^_KPh z`zcbmuDBaHpoW3bfiShTOzO}+&Hu8|CVxH<@AujvorOr_W*a#tBZZ})r=YqQ=_rDf z?Eg^hW2z@y5QUZWx~Fz@ai$hNVjuJkCzMZNBscmvV~opSLzm965B!@RT~jOGW_Hbu zIX&$qk;6lb>8XB2qj?!t0$DT5(xi zmzCbDOt*pU~FZ%G9u9$hXI z9pHc9Qy%2bR8yX;J{X4`Vm0*Ci5|Ywi9>T!jAt4qtRZ9u zC!C21j;d68S06^3T(Bm9S5vm%nk9PmFQN$%ZUT(|*|{m~1IAWdKXxUKf2%02m}bHn zyD-iR__JqfP#PLvpTOqpnO)02G5P+w20%Q@bs3B{&D>n>3vgC~hvhGQHk!C8bt{&2 zC%I!D-@o+es_XkWX*H7aWE~!pl*&Rv)!P(hrI{gF=c@=@_x>ZTrHG~)CDR*6K5l<( z8wiOypV?#|3Ic9wlj+jH{ZmNK7hw|T;zdu=^H9akxRmjDT31$}G}kQ^Ak9;#c9SPNQ`l*lB4Q;){+F_M8y(1#;E;My(lr+!mzMEbwX*)*(&se36pSS6N zf<0JG6OFeU$1Dus&AYU3q-M^FMI?cN&#u!_D<$YvH}TK zz5npDF5nCcu;j3)dUGdviayp_*OS|K<>R-?{I z@I@^FRnnGm`&+PMO?Z>B5!%BrK>iexugLiq69dc{LyQ&~8PoiY<6lXvUZSvbI<~Cnj!ZKag-cbKIf{!C>;4* z~%Y51;t5N3LwQc<2W@*`>l1HBsH9@%eh z(63EKt+Opmn{(D3oN3wl+a!s^6E6Krn3I{MAgps|^`fz;yXMR2W_j(M%56AcNr$}B zKswy-?oy-SGo3#cSgp|x11ULTHRAA2SWH1}Jc@_XiGVCuiJ!dl+HKz2nyQR+g%sC-=)C}n<-$ISvXU>lv}PJgiG{1JEziqR>ancl?^)co z+^oB;JNqa#%6~0y+VF6;6k%I}6|Y8_xxJ&!LM~`uMW$NwmVs?;5+7Z%;Gv;Zs$H}6 zK_xU@H?8qY5;f*A*!*_J0H1AWmO3L;>h7>ggnP&x)AVgUJi4qcC?MnJx(CZ0#IH=WE% zTAqpwj#7epS4(#2F9Ic-Q|P2Q1XxeFcP50vHKMUWc%6E7*LY0pkWay>R6Au+l?q!) zc^#B~0l5miT^stT2O{PN`Xo z8T8RI*0JDZ?;%*84>!k?vn0nf)Knq^pa1s7TzF=cq~fZt8vo-sJYi!py?z(^YTEnz zuIk#Zqyu9w#@PyV$b$Q~q5)2G=r6^UMla0; From 02f8284771bf3a80814ad6ecfd18e46f1ff09e36 Mon Sep 17 00:00:00 2001 From: m-p-3 Date: Wed, 22 Feb 2023 12:27:17 -0500 Subject: [PATCH 0259/1725] Update icon_names.json Added jira --- apps/messageicons/icons/icon_names.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/messageicons/icons/icon_names.json b/apps/messageicons/icons/icon_names.json index f7a743e85..7c09cd397 100644 --- a/apps/messageicons/icons/icon_names.json +++ b/apps/messageicons/icons/icon_names.json @@ -42,6 +42,7 @@ { "app":"google play store", "icon":"google play store.png" }, { "app":"home assistant", "icon":"home assistant.png" }, { "app":"instagram", "icon":"instagram.png" }, + { "app":"jira", "icon":"jira.png" }, { "app":"kalender", "icon":"kalender.png" }, { "app":"keep notes", "icon":"google keep.png" }, { "app":"lieferando", "icon":"lieferando.png" }, From 79f391d84dc6754423a22550af35533434313d5e Mon Sep 17 00:00:00 2001 From: m-p-3 Date: Wed, 22 Feb 2023 13:06:43 -0500 Subject: [PATCH 0260/1725] Add Jira color to generate.js --- apps/messageicons/icons/generate.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/messageicons/icons/generate.js b/apps/messageicons/icons/generate.js index e857032af..f4fec1c4a 100755 --- a/apps/messageicons/icons/generate.js +++ b/apps/messageicons/icons/generate.js @@ -107,6 +107,7 @@ exports.getColor = function(msg,options) { "google home": "#fbbc05", // "home assistant": "#41bdf5", // ha-blue is #41bdf5, but that's the background "instagram": "#ff0069", // https://about.instagram.com/brand/gradient + "jira": "#0052cc", //https://atlassian.design/resources/logo-library "lieferando": "#ff8000", "linkedin": "#0a66c2", // https://brand.linkedin.com/ "messenger": "#0078ff", From 8a5450370fdbc4a2ecb9a81dc0ad8d9766213a0f Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 22 Feb 2023 17:55:18 +0100 Subject: [PATCH 0261/1725] powermanager - Use less vertices to draw widget --- apps/powermanager/widget.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index 8de7a47a3..45e7a9645 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -73,11 +73,11 @@ currently-running apps */ let end = 135 + (current * (405 - 135)); g.setColor(current > 0.7 ? "#f00" : (current > 0.3 ? "#ff0" : "#0f0")); - GU.fillArc(g, this.x + 12, this.y + 12, 9, 12, GU.degreesToRadians(135), GU.degreesToRadians(end)); + GU.fillArc(g, this.x + 12, this.y + 12, 9, 12, GU.degreesToRadians(135), GU.degreesToRadians(end), GU.degreesToRadians(30)); g.setColor(g.theme.fg); let endCpu = 135 + (cpu * (405 - 135)); - GU.fillArc(g, this.x + 12, this.y + 12, 6, 8, GU.degreesToRadians(135), GU.degreesToRadians(endCpu)); + GU.fillArc(g, this.x + 12, this.y + 12, 6, 8, GU.degreesToRadians(135), GU.degreesToRadians(endCpu), GU.degreesToRadians(30)); if (this.timeoutId !== undefined) { clearTimeout(this.timeoutId); From 35ddc58b1f5d77270ff29ac6e800dbd3ed9dfe11 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 22 Feb 2023 18:44:49 +0100 Subject: [PATCH 0262/1725] powermanager - Only sample cpu use on drawing --- apps/powermanager/widget.js | 48 ++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index 45e7a9645..774726838 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -5,16 +5,8 @@ currently-running apps */ if (!s.widget) return; - const systickMax = peek32(0xE000E014); - let t, systickNow, tLater, systickLater, systickDiff; - setInterval(() => { - tLater = Date.now(); - systickLater = peek32(0xE000E018); - systickDiff = systickLater - systickNow; - if (systickDiff < 0) systickDiff += systickMax; - t = Date.now(); - systickNow = peek32(0xE000E018); - }, 250); + const SYSTICKMAX = peek32(0xE000E014); + const SYSTICKWAIT = SYSTICKMAX/64000; // 64 MHz clock rate, Systick counting down on every non idle clock const GU = require("graphics_utils"); const APPROX_IDLE = 0.3; @@ -40,10 +32,9 @@ currently-running apps */ return process.HWVERSION == 2 ? (brightnessSetting * APPROX_BACKLIGHT) : (brightnessSetting * 0.9 * 33 + 7); }; - function draw(w) { + function doDraw(w, cpu){ g.reset(); - let cpu = 1 - systickDiff/systickMax; let current = APPROX_IDLE + cpu * APPROX_CPU; let mostExpensive = "P"; @@ -63,29 +54,38 @@ currently-running apps */ current = current / MAX; - g.clearRect(this.x, this.y, this.x + 23, this.y + 23); + g.clearRect(w.x, w.y, w.x + 23, w.y + 23); g.setColor(g.theme.fg); g.setFont6x15(); g.setFontAlign(0, 0); - g.drawString(mostExpensive, this.x + 12, this.y + 15); - + g.drawString(mostExpensive, w.x + 12, w.y + 15); let end = 135 + (current * (405 - 135)); g.setColor(current > 0.7 ? "#f00" : (current > 0.3 ? "#ff0" : "#0f0")); - GU.fillArc(g, this.x + 12, this.y + 12, 9, 12, GU.degreesToRadians(135), GU.degreesToRadians(end), GU.degreesToRadians(30)); + GU.fillArc(g, w.x + 12, w.y + 12, 9, 12, GU.degreesToRadians(135), GU.degreesToRadians(end), GU.degreesToRadians(30)); g.setColor(g.theme.fg); let endCpu = 135 + (cpu * (405 - 135)); - GU.fillArc(g, this.x + 12, this.y + 12, 6, 8, GU.degreesToRadians(135), GU.degreesToRadians(endCpu), GU.degreesToRadians(30)); + GU.fillArc(g, w.x + 12, w.y + 12, 5.5, 8, GU.degreesToRadians(135), GU.degreesToRadians(endCpu), GU.degreesToRadians(30)); + } - if (this.timeoutId !== undefined) { - clearTimeout(this.timeoutId); - } - this.timeoutId = setTimeout(() => { - this.timeoutId = undefined; - w.draw(w); - }, Bangle.isLocked() ? 60000 : 2000); + function draw(w) { + setTimeout((t, systickNow) => { + let tLater = Date.now(); + let systickLater = peek32(0xE000E018); + let systickDiff = systickLater - systickNow; + if (systickDiff < 0) systickDiff += SYSTICKMAX; + doDraw(w, 1 - systickDiff/SYSTICKMAX); + + if (w.timeoutId !== undefined) { + clearTimeout(w.timeoutId); + } + w.timeoutId = setTimeout(() => { + w.timeoutId = undefined; + w.draw(w); + }, Bangle.isLocked() ? 60000 : (s.unlockedRefresh || 1000) - SYSTICKWAIT); + }, SYSTICKWAIT, Date.now(), peek32(0xE000E018)); } // add your widget From 4caaebf450568e99ecac113c58ee2bee3d1b9025 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 22 Feb 2023 18:59:34 +0100 Subject: [PATCH 0263/1725] powermanager - Adds settings for widget in own menu --- apps/powermanager/settings.js | 42 ++++++++++++++++++++++++++++++----- apps/powermanager/widget.js | 2 +- 2 files changed, 38 insertions(+), 6 deletions(-) diff --git a/apps/powermanager/settings.js b/apps/powermanager/settings.js index 41833f3a6..1e6c073be 100644 --- a/apps/powermanager/settings.js +++ b/apps/powermanager/settings.js @@ -24,11 +24,8 @@ 'title': 'Power Manager' }, "< Back" : back, - 'Show widget': { - value: !!settings.widget, - onchange: v => { - writeSettings("widget", v); - } + 'Widget': function() { + E.showMenu(submenu_widget); }, 'Monotonic percentage': { value: !!settings.forceMonoPercentage, @@ -147,5 +144,40 @@ } } + var submenu_widget = { + '': { + title: "Widget", + back: function() { + E.showMenu(mainmenu); + }, + }, + 'Enabled': { + value: !!settings.widget, + onchange: v => { + writeSettings("widget", v); + } + }, + 'Refresh': { + min: 0.5, + max: 60, + step: 0.5, + value: settings.refreshUnlocked || 1, + format: v => v + "s", + onchange: v => { + writeSettings("refreshUnlocked", v); + } + }, + 'Refresh locked': { + min: 5, + max: 120, + step: 5, + value: settings.refreshLocked || 60, + format: v => v + "s", + onchange: v => { + writeSettings("refreshLocked", v); + } + } + } + E.showMenu(mainmenu); }) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index 774726838..ec4f4b55d 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -84,7 +84,7 @@ currently-running apps */ w.timeoutId = setTimeout(() => { w.timeoutId = undefined; w.draw(w); - }, Bangle.isLocked() ? 60000 : (s.unlockedRefresh || 1000) - SYSTICKWAIT); + }, Bangle.isLocked() ? (s.refreshLocked || 60) * 1000 : (s.refreshUnlocked || 1) * 1000 - SYSTICKWAIT); }, SYSTICKWAIT, Date.now(), peek32(0xE000E018)); } From ed3ebf97543d324df6fb16b4808565a641b0e31c Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Wed, 22 Feb 2023 19:33:24 +0100 Subject: [PATCH 0264/1725] gpsmagcourse: Avoid jitter, fix widget --- apps/gpsmagcourse/README.md | 2 +- apps/gpsmagcourse/boot.js | 4 +++- apps/gpsmagcourse/widget.js | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/gpsmagcourse/README.md b/apps/gpsmagcourse/README.md index bca039424..f6e60ea61 100644 --- a/apps/gpsmagcourse/README.md +++ b/apps/gpsmagcourse/README.md @@ -25,7 +25,7 @@ On Bangle.js 2 a click on the widget does reset the built-in compass. ## Settings * **Speed threshold** - - (default = 6 km/h) When GPS speed is lower then this threshold use the compass direction. + - (default = 6 km/h) When GPS speed is lower then this threshold use the compass direction. The speed must be for at least 10 seconds this fast to switch back to GPS course. * **Compass source** - off: Disables this addon. - built-in (default): Uses the built-in compass. Its calibration can be restarted by pressing the Widget. When tilt compensation is disabled or "Navigation compass" is not installed the watch must be orientated horizontally for the compass heading to be used. diff --git a/apps/gpsmagcourse/boot.js b/apps/gpsmagcourse/boot.js index 189dd9e35..ffa9512fa 100644 --- a/apps/gpsmagcourse/boot.js +++ b/apps/gpsmagcourse/boot.js @@ -6,6 +6,7 @@ tiltCompensation: true, // tilt compensation on built-in compass }, require("Storage").readJSON("gpsmagcourse.json", true) || {}); const CALIBDATA = (settings.compassSrc === 2) ? require("Storage").readJSON("magnav.json",1) : undefined; + let cntAboveSpeed = 0; // Check if magnav is installed try { @@ -63,7 +64,8 @@ }; const changeGpsCourse = (gps) => { - if (gps.speed < settings.speed) { + cntAboveSpeed = gps.speed < settings.speed ? 0 : cntAboveSpeed+1; + if (cntAboveSpeed < 10) { // need to stay x events above or equal threshold if (settings.compassSrc === 1 && (settings.tiltCompensation || isFaceUp(Bangle.getAccel()))) { // Use uncompensated built-in compass heading only if face is up const heading = Bangle.getCompass().heading; if (!isNaN(heading)) { diff --git a/apps/gpsmagcourse/widget.js b/apps/gpsmagcourse/widget.js index 0e00a1a70..6317cedcd 100644 --- a/apps/gpsmagcourse/widget.js +++ b/apps/gpsmagcourse/widget.js @@ -49,7 +49,7 @@ if (gps.courseOrig && WIDGETS.gpsmagcourse.show !== 1 && Bangle.isGPSOn()) { WIDGETS.gpsmagcourse.show = 1; WIDGETS.gpsmagcourse.draw(); - } else if (WIDGETS.gpsmagcourse.show) { + } else if (!gps.courseOrig && WIDGETS.gpsmagcourse.show === 1) { WIDGETS.gpsmagcourse.show = settings.showWidget === 1 ? 0 : 2; WIDGETS.gpsmagcourse.draw(); } From 8b51c3102747bd840e73a6bf020ece6759921600 Mon Sep 17 00:00:00 2001 From: m-p-3 Date: Wed, 22 Feb 2023 13:40:57 -0500 Subject: [PATCH 0265/1725] Add generate.js -> lib.js note Left a comment, to make it clearer that you should not modify "lib.js" directly, but to modify "generate.js" instead. --- apps/messageicons/icons/generate.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/messageicons/icons/generate.js b/apps/messageicons/icons/generate.js index f4fec1c4a..0070c66a4 100755 --- a/apps/messageicons/icons/generate.js +++ b/apps/messageicons/icons/generate.js @@ -1,6 +1,7 @@ #!/usr/bin/node // Creates lib.js from icons +// This file is generated by /icons/generate.js, so if you need to modify its content, you should do it there, not directly in lib.js // npm install png-js // default icon must come first in icon_names From 5993d24cc3026c62d57eaa361e86d5884d51e037 Mon Sep 17 00:00:00 2001 From: m-p-3 Date: Wed, 22 Feb 2023 13:42:31 -0500 Subject: [PATCH 0266/1725] oopsie, moved comment to proper location --- apps/messageicons/icons/generate.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/messageicons/icons/generate.js b/apps/messageicons/icons/generate.js index 0070c66a4..b77cfc26e 100755 --- a/apps/messageicons/icons/generate.js +++ b/apps/messageicons/icons/generate.js @@ -1,7 +1,6 @@ #!/usr/bin/node // Creates lib.js from icons -// This file is generated by /icons/generate.js, so if you need to modify its content, you should do it there, not directly in lib.js // npm install png-js // default icon must come first in icon_names @@ -88,6 +87,7 @@ exports.getColor = function(msg,options) { if (st.iconColorMode == 'mono') return options.default; const s = (("string"=== typeof msg) ? msg : (msg.src || "")).toLowerCase(); return { + // This file is generated by /icons/generate.js. If you need to modify its content, you should do it there instead. // generic colors, using B2-safe colors // DO NOT USE BLACK OR WHITE HERE, just leave the declaration out and then the theme's fg color will be used "airbnb": "#ff385c", // https://news.airbnb.com/media-assets/category/brand/ From 6104946a0882ea305b8ca8d765bfbce5f2473f48 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 22 Feb 2023 22:00:31 +0100 Subject: [PATCH 0267/1725] powermanager - Refactor cpu use sampling code --- apps/powermanager/widget.js | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index ec4f4b55d..7a5714fad 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -69,23 +69,26 @@ currently-running apps */ let endCpu = 135 + (cpu * (405 - 135)); GU.fillArc(g, w.x + 12, w.y + 12, 5.5, 8, GU.degreesToRadians(135), GU.degreesToRadians(endCpu), GU.degreesToRadians(30)); } - + let sTimeout; function draw(w) { - setTimeout((t, systickNow) => { + if (sTimeout) clearTimeout(sTimeout); + let systickNow = peek32(0xE000E018); + let t = Date.now(); + sTimeout = setTimeout(() => { let tLater = Date.now(); let systickLater = peek32(0xE000E018); let systickDiff = systickLater - systickNow; if (systickDiff < 0) systickDiff += SYSTICKMAX; doDraw(w, 1 - systickDiff/SYSTICKMAX); + }, SYSTICKWAIT); - if (w.timeoutId !== undefined) { - clearTimeout(w.timeoutId); - } - w.timeoutId = setTimeout(() => { - w.timeoutId = undefined; - w.draw(w); - }, Bangle.isLocked() ? (s.refreshLocked || 60) * 1000 : (s.refreshUnlocked || 1) * 1000 - SYSTICKWAIT); - }, SYSTICKWAIT, Date.now(), peek32(0xE000E018)); + if (w.timeoutId !== undefined) { + clearTimeout(w.timeoutId); + } + w.timeoutId = setTimeout(() => { + w.timeoutId = undefined; + w.draw(w); + }, Bangle.isLocked() ? ((s.refreshLocked || 60) * 1000 ): ((s.refreshUnlocked || 1) * 1000)); } // add your widget From 48ac083189c2528a8027dfeb9e10c567c2249b5f Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 22 Feb 2023 22:01:34 +0100 Subject: [PATCH 0268/1725] powermanager - Cleanup interface UI --- apps/powermanager/boot.js | 53 +++++++++++++++++--------------- apps/powermanager/interface.html | 41 +++++++++++------------- apps/powermanager/metadata.json | 2 +- 3 files changed, 48 insertions(+), 48 deletions(-) diff --git a/apps/powermanager/boot.js b/apps/powermanager/boot.js index abc45c21b..c931a243b 100644 --- a/apps/powermanager/boot.js +++ b/apps/powermanager/boot.js @@ -9,9 +9,9 @@ let def = require('Storage').readJSON("powermanager.def.json", true) || {}; if (!def.start) def.start = Date.now(); if (!def.deferred) def.deferred = {}; - let sen = require('Storage').readJSON("powermanager.sen.json", true) || {}; - if (!sen.start) sen.start = Date.now(); - if (!sen.power) sen.power = {}; + let hw = require('Storage').readJSON("powermanager.hw.json", true) || {}; + if (!hw.start) hw.start = Date.now(); + if (!hw.power) hw.power = {}; const saveEvery = 1000 * 60 * 5; const TO_WRAP = ["GPS","Compass","Barometer","HRM","LCD"]; @@ -22,10 +22,10 @@ def.saved = Date.now(); require('Storage').writeJSON("powermanager.def.json", def); } - let senExists = require("Storage").read("powermanager.sen.json")!==undefined; - if (!(!senExists && sen.saved)){ - sen.saved = Date.now(); - require('Storage').writeJSON("powermanager.sen.json", sen); + let hwExists = require("Storage").read("powermanager.hw.json")!==undefined; + if (!(!hwExists && hw.saved)){ + hw.saved = Date.now(); + require('Storage').writeJSON("powermanager.hw.json", hw); } } @@ -34,7 +34,7 @@ E.on("kill", ()=>{ for (let c of TO_WRAP){ if (lastPowerOn[c] && Bangle["is"+c+"On"]()){ - sen.power[c] += Date.now() - lastPowerOn[c]; + hw.power[c] += Date.now() - lastPowerOn[c]; } } save(); @@ -45,7 +45,7 @@ logFile.write("p," + type + ',' + (oldstate?1:0) + ',' + (state?1:0) + ',' + app + "\n"); }; let logDeferred = (type, duration, source) => { - logFile.write(type + ',' + duration + ',' + source + "\n"); + logFile.write(type + ',' + duration + ',' + source.replace(/\n/g, " ").replace(/,/g,"") + "\n"); }; let lastPowerOn = {}; @@ -66,7 +66,7 @@ lastPowerOn[type] = Date.now(); } else if (lastPowerOn[type] && !result){ //switched off - sen.power[type] += Date.now() - lastPowerOn[type]; + hw.power[type] += Date.now() - lastPowerOn[type]; lastPowerOn[type] = undefined; } @@ -76,23 +76,28 @@ } let functions = {}; - let wrapDeferred = ((o,t) => (a) => { if (a == eval){ return o.apply(this, arguments); } else { - let wrapped = ()=>{ - let start = Date.now(); - let result = a.apply(undefined, arguments.slice(1)); - let end = Date.now()-start; - let f = a.toString().substring(0,100); - if (settings.logDetails) logDeferred(t, end, f); - if (!def.deferred[f]) def.deferred[f] = 0; - def.deferred[f] += end; - return result; - }; - for (let p in a){ - wrapped[p] = a[p]; + let wrapped = a; + if (!a.__wrapped){ + wrapped = ()=>{ + let start = Date.now(); + let result = a.apply(undefined, arguments.slice(1)); + let end = Date.now()-start; + let f = a.toString().substring(0,100); + if (settings.logDetails) logDeferred(t, end, f); + if (!def.deferred[f]) def.deferred[f] = 0; + def.deferred[f] += end; + return result; + }; + //copy over properties of functions + for (let p in a){ + wrapped[p] = a[p]; + } + //mark function as wrapped + wrapped.__wrapped = true; } let newArgs = arguments.slice(); newArgs[0] = wrapped; @@ -156,4 +161,4 @@ if (!charging) chargeStart = undefined; }); } -})(); +})(); \ No newline at end of file diff --git a/apps/powermanager/interface.html b/apps/powermanager/interface.html index 9434ac16f..7a00af993 100644 --- a/apps/powermanager/interface.html +++ b/apps/powermanager/interface.html @@ -21,7 +21,7 @@ function show() { Util.showModal("Loading..."); domContent.innerHTML = ""; var htmlOverview = ` -
    This needs "Log" to be enabled in power manager settings. The deferred function calls table is only updated on the bangle on reloads.
    +
    This needs "Logging" to be enabled in power manager settings. The deferred function calls table is only updated on the bangle on reloads.
    @@ -37,14 +37,14 @@ function show() { - + - + - ` + ` } let duration = parsed.saved - parsed.start; @@ -165,15 +165,15 @@ function viewDeferredTable(filename) { } -function viewSensorsTable(filename) { - Puck.eval(`require("Storage").list("powermanager.sen.json").length > 0`, (f)=>{ +function viewHardwareTable(filename) { + Puck.eval(`require("Storage").list("powermanager.hw.json").length > 0`, (f)=>{ if (f) { - Util.showModal("Reading sensor info..."); + Util.showModal("Reading hardware info..."); Util.readStorage( filename, data => { Util.hideModal(); let parsed = JSON.parse(data); - console.log("Sensors", parsed); + console.log("Hardware", parsed); let duration = parsed.saved - parsed.start; let rows = []; @@ -191,7 +191,7 @@ function viewSensorsTable(filename) { } - var htmlOverview = `

    Sensor power

    + var htmlOverview = `

    Hardware power

    Recorded in a time span of ${Math.round(duration/1000)}s. Percentages are calculated from recording time. @@ -201,7 +201,7 @@ function viewSensorsTable(filename) {
    - + \n`; @@ -213,7 +213,7 @@ function viewSensorsTable(filename) { }); }); } else { - var htmlOverview = `

    Sensor power

    + var htmlOverview = `

    Hardware power

    No data available. @@ -234,16 +234,11 @@ function viewDetailsTable(filename) { Util.hideModal(); var htmlOverview = `

    Detailed logging

    + + This is a trace log of all logged power entries, first column denotes the type. p for power, i for interval and t for timeout. Power is logged with old state, new state and calling app if available. Functions are logged with execution duraion and source if available. +
    Type
    SensorsHardware - - + +
    DetailsDetails (Trace) @@ -78,8 +78,8 @@ function show() { if (task=="deftable") { viewDeferredTable(filename); } - if (task=="sensorstable") { - viewSensorsTable(filename); + if (task=="hardwaretable") { + viewHardwareTable(filename); } if (task=="detailstable") { viewDetailsTable(filename); @@ -110,7 +110,7 @@ function viewDeferredTable(filename) { tableRows += `
    ${(c.time/1000).toFixed(2)}s ${(c.time/sum*100).toFixed(2)}%${c.func}
    ${c.func}
    Time PercentageSensorDevice
    - - - - - - - - \n`; let rows = data.trim().split("\n"); for (var row of rows) { diff --git a/apps/powermanager/metadata.json b/apps/powermanager/metadata.json index ff2ea9670..efb290892 100644 --- a/apps/powermanager/metadata.json +++ b/apps/powermanager/metadata.json @@ -18,7 +18,7 @@ {"name":"powermanager.default.json","url":"default.json"} ], "data": [ - {"name":"powermanager.sen.json"}, + {"name":"powermanager.hw.json"}, {"name":"powermanager.def.json"}, {"name":"powermanager.log"} ] From 8b7a63b718c8199ca0ac5d6f5d0adda9ca72fb0a Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 22 Feb 2023 22:19:25 +0100 Subject: [PATCH 0269/1725] powermanager - Update readme --- apps/powermanager/ChangeLog | 3 ++- apps/powermanager/README.md | 11 +++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/apps/powermanager/ChangeLog b/apps/powermanager/ChangeLog index 00784aa5d..fd8ce0679 100644 --- a/apps/powermanager/ChangeLog +++ b/apps/powermanager/ChangeLog @@ -4,4 +4,5 @@ 0.04: Remove calibration with current voltage (Calibrate->Auto) as it is now handled by settings app Allow automatic calibration on every charge longer than 3 hours 0.05: Add back button to settings menu. -0.06: Allow logging of some things using power \ No newline at end of file +0.06: Allow logging of some things using power + Add widget for live monitoring of power use diff --git a/apps/powermanager/README.md b/apps/powermanager/README.md index 7a0c110a6..043b5ca8c 100644 --- a/apps/powermanager/README.md +++ b/apps/powermanager/README.md @@ -9,9 +9,16 @@ Features: ## Widget + The widget shows an approximate current power use. There is a power gauge showing the estimation of the currently used power and the currently active sensor with the biggest power draw. G for GPS, H for pulse sensor and C for compass. +## Logging + +You can switch on logging in the options to diagnose unexpected power use. Currently the logging can capture the code running from timeouts and intervals and the power up and down of some devices. The captured times are probably not perfect but should be good enough to indicate problems. + +Do not use trace logging for extended time, it uses a lot of storage and can fill up the flash quite quick. + ## Internals Battery calibration offset is set by writing `batFullVoltage` in setting.json @@ -19,6 +26,10 @@ Battery calibration offset is set by writing `batFullVoltage` in setting.json ## TODO * Optionally keep battery history and show as graph +* Capture some more stuff in logging + * Event driven code execution + * Buzzer + * Better tracking of display on time ## Creator From b58b0133aa7d81d2b05bb6576ece42258f459959 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 22 Feb 2023 22:57:49 +0100 Subject: [PATCH 0270/1725] powermanager - Fix widget drawing over other things if widgets hidden --- apps/powermanager/widget.js | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/apps/powermanager/widget.js b/apps/powermanager/widget.js index 7a5714fad..116f1703e 100644 --- a/apps/powermanager/widget.js +++ b/apps/powermanager/widget.js @@ -70,17 +70,28 @@ currently-running apps */ GU.fillArc(g, w.x + 12, w.y + 12, 5.5, 8, GU.degreesToRadians(135), GU.degreesToRadians(endCpu), GU.degreesToRadians(30)); } let sTimeout; + let s2Timeout; + let systickDiff; function draw(w) { + let nextRefresh = Bangle.isLocked() ? ((s.refreshLocked || 60) * 1000 ): ((s.refreshUnlocked || 1) * 1000) + + if (s2Timeout) clearTimeout(s2Timeout); if (sTimeout) clearTimeout(sTimeout); - let systickNow = peek32(0xE000E018); - let t = Date.now(); - sTimeout = setTimeout(() => { + + let t,systickNow; + sTimeout = setTimeout(()=>{ + systickNow = peek32(0xE000E018); + t = Date.now(); + }, nextRefresh - SYSTICKWAIT - 100); + + s2Timeout = setTimeout(() => { let tLater = Date.now(); let systickLater = peek32(0xE000E018); - let systickDiff = systickLater - systickNow; + systickDiff = systickLater - systickNow; if (systickDiff < 0) systickDiff += SYSTICKMAX; - doDraw(w, 1 - systickDiff/SYSTICKMAX); - }, SYSTICKWAIT); + }, nextRefresh - 100); + + doDraw(w, systickDiff ? (1 - systickDiff/SYSTICKMAX) : 0); if (w.timeoutId !== undefined) { clearTimeout(w.timeoutId); @@ -88,7 +99,7 @@ currently-running apps */ w.timeoutId = setTimeout(() => { w.timeoutId = undefined; w.draw(w); - }, Bangle.isLocked() ? ((s.refreshLocked || 60) * 1000 ): ((s.refreshUnlocked || 1) * 1000)); + }, nextRefresh); } // add your widget @@ -98,7 +109,7 @@ currently-running apps */ draw: draw }; - Bangle.on("lock", ()=>{draw(WIDGETS.powermanager);}); + Bangle.on("lock", ()=>{WIDGETS.powermanager.draw(WIDGETS.powermanager);}); // conserve memory delete settings; From 87a448f76c425d4d8854e5719a347c14320a8381 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 22 Feb 2023 22:02:54 +0000 Subject: [PATCH 0271/1725] Add TypeScript details to READMEs And in some cases, add READMEs (this is a follow-up to #2589) --- apps/btadv/README.md | 16 ++++++++++++++++ apps/clkinfostopw/README.md | 4 ++++ apps/widChargingStatus/README.md | 8 ++++++++ 3 files changed, 28 insertions(+) create mode 100644 apps/btadv/README.md create mode 100644 apps/widChargingStatus/README.md diff --git a/apps/btadv/README.md b/apps/btadv/README.md new file mode 100644 index 000000000..7b1afcefe --- /dev/null +++ b/apps/btadv/README.md @@ -0,0 +1,16 @@ +# Bluetooth Advert + +This app advertises and exports (over Bluetooth) live data from the bangle's sensors: + +- Heart Rate +- Accelerometer readings +- Pressure +- GPS information +- Magnetic flux + +Swipe in any direction to access settings, and tap a setting to toggle it. +Hit back to return to the details screen, which shows sensor data being exported. + +# TypeScript + +This app is written in TypeScript, see [typescript/README.md](/typescript/README.md) for more info diff --git a/apps/clkinfostopw/README.md b/apps/clkinfostopw/README.md index bfac58dab..e92eee3ef 100644 --- a/apps/clkinfostopw/README.md +++ b/apps/clkinfostopw/README.md @@ -9,3 +9,7 @@ Tap to start, tap again to pause. Tap again to restart ## Requests [Contact Rob](https://www.github.com/bobrippling) for features/bugs + +# TypeScript + +This app is written in TypeScript, see [typescript/README.md](/typescript/README.md) for more info diff --git a/apps/widChargingStatus/README.md b/apps/widChargingStatus/README.md new file mode 100644 index 000000000..a5ac62811 --- /dev/null +++ b/apps/widChargingStatus/README.md @@ -0,0 +1,8 @@ +# Charging Status + +This widget shows a yellow lightning icon to indicate that the watch is charging. A short buzz is also emitted on initial charging connection. +Nothing is shown when not charging. + +# TypeScript + +This app is written in TypeScript, see [typescript/README.md](/typescript/README.md) for more info From 2b39b1e2855f94aebb894581f16fadf9006d69bd Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 22 Feb 2023 22:19:20 +0000 Subject: [PATCH 0272/1725] btadv: manually setup TS helpers - use Object.assign() Currently we have `tsc` [generate code for es5], because we don't yet have es6 destructuring support in JSV (used [here], for example). As a follow on from #2587, this disables the TS poiyfill and points it at our `Object.assign`, so we benefit from these new features, while still keeping the target at es5. [generate code for es5]: https://github.com/espruino/BangleApps/blob/380af9c600121f50b940b83cdb83a5f83914b8a6/tsconfig.json#L4-L4 [here]: https://github.com/espruino/BangleApps/blob/380af9c600121f50b940b83cdb83a5f83914b8a6/apps/btadv/app.ts#L235 --- apps/btadv/app.js | 12 +----------- apps/btadv/app.ts | 3 +++ tsconfig.json | 2 +- 3 files changed, 5 insertions(+), 12 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 7f9300923..ced701d79 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -1,15 +1,5 @@ "use strict"; -var __assign = (this && this.__assign) || function () { - __assign = Object.assign || function(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) - t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); -}; +var __assign = Object.assign; var Layout = require("Layout"); Bangle.loadWidgets(); Bangle.drawWidgets(); diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index b3a25305c..15128e484 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -1,3 +1,6 @@ +// ts helpers: +const __assign = Object.assign; + const Layout = require("Layout") as Layout_.Layout; Bangle.loadWidgets(); diff --git a/tsconfig.json b/tsconfig.json index 3bfd79e41..7f6a96fef 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -13,7 +13,7 @@ "removeComments": true, "newLine": "lf", - "noEmitHelpers": false, + "noEmitHelpers": true, // we link to specific banglejs implementations "noEmitOnError": false, "preserveConstEnums": false, "importsNotUsedAsValues": "error", From 77065f5b46de55837400acc13a5659b8fd10c1af Mon Sep 17 00:00:00 2001 From: f-teacher <97449225+f-teacher@users.noreply.github.com> Date: Mon, 13 Feb 2023 23:43:34 +1100 Subject: [PATCH 0273/1725] Add files via upload --- apps/run/run.app.karvonnen.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 apps/run/run.app.karvonnen.js diff --git a/apps/run/run.app.karvonnen.js b/apps/run/run.app.karvonnen.js new file mode 100644 index 000000000..8d6918a4e --- /dev/null +++ b/apps/run/run.app.karvonnen.js @@ -0,0 +1,28 @@ +Modules.addCached("Layout",(){p(b,k){d(h){h.id(f[h.id]=h);h.type(h.type="");h.ch.c.forEach(d)}._l=.l=b;.physBtns=2process.env.HWVERSION?1:3;.options=k{};.lazy=.options.lazy!1;a;(2process.env.HWVERSION){a=[];h(m){"btn"m.typea.push(m);m.cm.c.forEach(h)}h(b);a.length(.physBtns=0,.buttons=a,.selectedButton=-1)}(.options.btns)(b=.options.btns,.physBtnsb.length){.b=b;h=Math.floor(Bangle.appRect.h/.physBtns);(2<.physBtns1b.lengthb.unshift({label:""});.physBtns>b.length;)b.push({label:""});._l.width=g.getWidth()-8;._l={type:"h",filly:1,c:[._l,{type:"v",pad:1,filly:1,c:b.map(m(m.type="txt",m.font="6x8",m.height=h,m.r=1,m))}]}}._l.width=g.getWidth()-32,._l={type:"h",c:[._l,{type:"v",c:b.map(h(h.type="btn",h.filly=1,h.width=32,h.r=1,h))}]},aa.push.apply(a,._l.c[1].c);.setUI();f=;d(._l);.updateNeeded=!0}r(b,k,d,a,f){h=b.bgCol?f:g.toColor(b.bgCol);(hf"txt"b.type"btn"b.type"img"b.type"custom"b.type){m=b.c;b.c;c="H"+E.CRC32(E.toJS(b));m(b.c=m);k[c]((a[c]=[b.x,b.y,b.x+b.w-1,b.y+b.h-1]).bg=f?g.theme.bg:f,d(d.push(b),d=))}(b.c)(lb.c)r(l,k,d,a,h)}p.prototype.setUI=(){Bangle.setUI();b;.buttons(Bangle.setUI({mode:"updown",back:.options.back},k{d=.selectedButton,a=.buttons.length;(0k.buttons[d]).buttons[d].cb();.buttons[d](.buttons[d].selected,.render(.buttons[d]));d=(d+a+k)%a;.buttons[d](.buttons[d].selected=1,.render(.buttons[d]));.selectedButton=d}),b=!0);.options.back!bBangle.setUI({mode:"custom",back:.options.back});(.b){k(d,a){.750state.notify.dist.nextstate.distance){stats["dist"].emit("notify",stats["dist"]);state.notify.dist.next=state.notify.dist.next+state.notify.dist.increment;}});Bangle.on("step",(steps){(!state.active);(stats["step"])stats["step"].emit("changed",stats["step"]);state.stepHistory[0]steps-state.lastStepCount;state.lastStepCount=steps;(state.notify.step.increment>0state.notify.step.nextsteps){stats["step"].emit("notify",stats["step"]);state.notify.step.next=state.notify.step.next+state.notify.step.increment;}});Bangle.on("HRM",(h){(h.confidence60){state.BPM=h.bpm;state.BPMage=0;(state.maxBPM60){state.BPM=0;(stats["bpm"])stats["bpm"].emit("changed",stats["bpm"]);}(state.notify.time.increment>0state.notify.time.nextnow){stats["time"].emit("notify",stats["time"]);state.notify.time.next=state.notify.time.next+state.notify.time.increment;}},1000);reset(){state.startTime=Date.now();state.startSteps=state.lastSteps=Bangle.getStepCount();state.lastSteps=0;state.stepHistory.fill(0);state.stepsPerMin=0;state.distance=0;state.avrSpeed=0;state.curSpeed=0;state.BPM=0;state.BPMage=0;state.maxBPM=0;state.alt=;state.alti=0;state.notify=options.notify;(options.notify.dist.increment>0){state.notify.dist.next=state.distance+options.notify.dist.increment;}(options.notify.step.increment>0){state.notify.step.next=state.startSteps+options.notify.step.increment;}(options.notify.time.increment>0){state.notify.time.next=state.startTime+options.notify.time.increment;}}reset();{stats:stats,state:state,start:(){state.active=;reset();},stop:(){state.active=;}};};exports.appendMenuItems=(menu,settings,saveSettings){paceNames=["1000m","1 mile","1/2 Mthn","Marathon",];paceAmts=[1000,1609,21098,42195];menu['Pace']={min:0,max:paceNames.length-1,value:Math.max(paceAmts.indexOf(settings.paceLength),0),format:vpaceNames[v],onchange:v{settings.paceLength=paceAmts[v];saveSettings();},};}exports.appendNotifyMenuItems=(menu,settings,saveSettings){distNames=['Off',"1000m","1 mile","1/2 Mthn","Marathon",];distAmts=[0,1000,1609,21098,42195];menu['Ntfy Dist']={min:0,max:distNames.length-1,value:Math.max(distAmts.indexOf(settings.notify.dist.increment),0),format:vdistNames[v],onchange:v{settings.notify.dist.increment=distAmts[v];saveSettings();},};stepNames=['Off','100','500','1000','5000','10000'];stepAmts=[0,100,500,1000,5000,10000];menu['Ntfy Steps']={min:0,max:stepNames.length-1,value:Math.max(stepAmts.indexOf(settings.notify.step.increment),0),format:vstepNames[v],onchange:v{settings.notify.step.increment=stepAmts[v];saveSettings();},};timeNames=['Off','30s','1min','2min','5min','10min','30min','1hr'];timeAmts=[0,30000,60000,120000,300000,600000,1800000,3600000];menu['Ntfy Time']={min:0,max:timeNames.length-1,value:Math.max(timeAmts.indexOf(settings.notify.time.increment),0),format:vtimeNames[v],onchange:v{settings.notify.time.increment=timeAmts[v];saveSettings();},};};}); +ExStats=require("exstats"); +B2=process.env.HWVERSION2; +Layout=require("Layout"); +locale=require("locale"); +fontHeading="6x8:2"; +fontValue=B2?"6x15:2":"6x8:3"; +headingCol="#888"; +fixCount=0; +isMenuDisplayed=; +g.clear(); +Bangle.loadWidgets(); +Bangle.drawWidgets(); +settings=Object.assign({record:,B1:"dist",B2:"time",B3:"pacea",B4:"bpm",B5:"step",B6:"caden",paceLength:1000,notify:{dist:{value:0,notifications:[],},step:{value:0,notifications:[],},time:{value:0,notifications:[],},},},require("Storage").readJSON("run.json",1){}); +statIDs=[settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(ss""); +exs=ExStats.getStats(statIDs,settings); +onStartStop(){running=!exs.state.active;prepPromises=[];(settings.recordWIDGETS["recorder"]){(running){isMenuDisplayed=;prepPromises.push(WIDGETS["recorder"].setRecording().then((){isMenuDisplayed=;layout.setUI();layout.forgetLazyState();layout.render();}));}{prepPromises.push(WIDGETS["recorder"].setRecording());}}(!prepPromises.length)prepPromises.push(Promise.resolve());Promise.all(prepPromises).then((){(running){exs.start();}{exs.stop();}layout.button.label=running?"STOP":"START";layout.status.label=running?"RUN":"STOP";layout.status.bgCol=running?"#0f0":"#f00";layout.render();});} +lc=[]; +(i=0;i0exs.stats[statType]){configureNotification(exs.stats[statType]);}}); +Bangle.on("GPS",(fix){layout.gps.bgCol=fix.fix?"#0f0":"#f00";(!fix.fix);(fixCount0){Bangle.buzz();}}); +setInterval((){layout.clock.label=locale.time(Date(),1);(!isMenuDisplayed)layout.render();},1000); \ No newline at end of file From 877b94b061192a8946d7d5816d69c88585b3d0dd Mon Sep 17 00:00:00 2001 From: f-teacher <97449225+f-teacher@users.noreply.github.com> Date: Fri, 17 Feb 2023 00:26:21 +1030 Subject: [PATCH 0274/1725] Update run.app.karvonnen.js --- apps/run/run.app.karvonnen.js | 146 +++++++++++++++++++++++++++------- 1 file changed, 119 insertions(+), 27 deletions(-) diff --git a/apps/run/run.app.karvonnen.js b/apps/run/run.app.karvonnen.js index 8d6918a4e..8dabfe60d 100644 --- a/apps/run/run.app.karvonnen.js +++ b/apps/run/run.app.karvonnen.js @@ -1,28 +1,120 @@ -Modules.addCached("Layout",(){p(b,k){d(h){h.id(f[h.id]=h);h.type(h.type="");h.ch.c.forEach(d)}._l=.l=b;.physBtns=2process.env.HWVERSION?1:3;.options=k{};.lazy=.options.lazy!1;a;(2process.env.HWVERSION){a=[];h(m){"btn"m.typea.push(m);m.cm.c.forEach(h)}h(b);a.length(.physBtns=0,.buttons=a,.selectedButton=-1)}(.options.btns)(b=.options.btns,.physBtnsb.length){.b=b;h=Math.floor(Bangle.appRect.h/.physBtns);(2<.physBtns1b.lengthb.unshift({label:""});.physBtns>b.length;)b.push({label:""});._l.width=g.getWidth()-8;._l={type:"h",filly:1,c:[._l,{type:"v",pad:1,filly:1,c:b.map(m(m.type="txt",m.font="6x8",m.height=h,m.r=1,m))}]}}._l.width=g.getWidth()-32,._l={type:"h",c:[._l,{type:"v",c:b.map(h(h.type="btn",h.filly=1,h.width=32,h.r=1,h))}]},aa.push.apply(a,._l.c[1].c);.setUI();f=;d(._l);.updateNeeded=!0}r(b,k,d,a,f){h=b.bgCol?f:g.toColor(b.bgCol);(hf"txt"b.type"btn"b.type"img"b.type"custom"b.type){m=b.c;b.c;c="H"+E.CRC32(E.toJS(b));m(b.c=m);k[c]((a[c]=[b.x,b.y,b.x+b.w-1,b.y+b.h-1]).bg=f?g.theme.bg:f,d(d.push(b),d=))}(b.c)(lb.c)r(l,k,d,a,h)}p.prototype.setUI=(){Bangle.setUI();b;.buttons(Bangle.setUI({mode:"updown",back:.options.back},k{d=.selectedButton,a=.buttons.length;(0k.buttons[d]).buttons[d].cb();.buttons[d](.buttons[d].selected,.render(.buttons[d]));d=(d+a+k)%a;.buttons[d](.buttons[d].selected=1,.render(.buttons[d]));.selectedButton=d}),b=!0);.options.back!bBangle.setUI({mode:"custom",back:.options.back});(.b){k(d,a){.750state.notify.dist.nextstate.distance){stats["dist"].emit("notify",stats["dist"]);state.notify.dist.next=state.notify.dist.next+state.notify.dist.increment;}});Bangle.on("step",(steps){(!state.active);(stats["step"])stats["step"].emit("changed",stats["step"]);state.stepHistory[0]steps-state.lastStepCount;state.lastStepCount=steps;(state.notify.step.increment>0state.notify.step.nextsteps){stats["step"].emit("notify",stats["step"]);state.notify.step.next=state.notify.step.next+state.notify.step.increment;}});Bangle.on("HRM",(h){(h.confidence60){state.BPM=h.bpm;state.BPMage=0;(state.maxBPM60){state.BPM=0;(stats["bpm"])stats["bpm"].emit("changed",stats["bpm"]);}(state.notify.time.increment>0state.notify.time.nextnow){stats["time"].emit("notify",stats["time"]);state.notify.time.next=state.notify.time.next+state.notify.time.increment;}},1000);reset(){state.startTime=Date.now();state.startSteps=state.lastSteps=Bangle.getStepCount();state.lastSteps=0;state.stepHistory.fill(0);state.stepsPerMin=0;state.distance=0;state.avrSpeed=0;state.curSpeed=0;state.BPM=0;state.BPMage=0;state.maxBPM=0;state.alt=;state.alti=0;state.notify=options.notify;(options.notify.dist.increment>0){state.notify.dist.next=state.distance+options.notify.dist.increment;}(options.notify.step.increment>0){state.notify.step.next=state.startSteps+options.notify.step.increment;}(options.notify.time.increment>0){state.notify.time.next=state.startTime+options.notify.time.increment;}}reset();{stats:stats,state:state,start:(){state.active=;reset();},stop:(){state.active=;}};};exports.appendMenuItems=(menu,settings,saveSettings){paceNames=["1000m","1 mile","1/2 Mthn","Marathon",];paceAmts=[1000,1609,21098,42195];menu['Pace']={min:0,max:paceNames.length-1,value:Math.max(paceAmts.indexOf(settings.paceLength),0),format:vpaceNames[v],onchange:v{settings.paceLength=paceAmts[v];saveSettings();},};}exports.appendNotifyMenuItems=(menu,settings,saveSettings){distNames=['Off',"1000m","1 mile","1/2 Mthn","Marathon",];distAmts=[0,1000,1609,21098,42195];menu['Ntfy Dist']={min:0,max:distNames.length-1,value:Math.max(distAmts.indexOf(settings.notify.dist.increment),0),format:vdistNames[v],onchange:v{settings.notify.dist.increment=distAmts[v];saveSettings();},};stepNames=['Off','100','500','1000','5000','10000'];stepAmts=[0,100,500,1000,5000,10000];menu['Ntfy Steps']={min:0,max:stepNames.length-1,value:Math.max(stepAmts.indexOf(settings.notify.step.increment),0),format:vstepNames[v],onchange:v{settings.notify.step.increment=stepAmts[v];saveSettings();},};timeNames=['Off','30s','1min','2min','5min','10min','30min','1hr'];timeAmts=[0,30000,60000,120000,300000,600000,1800000,3600000];menu['Ntfy Time']={min:0,max:timeNames.length-1,value:Math.max(timeAmts.indexOf(settings.notify.time.increment),0),format:vtimeNames[v],onchange:v{settings.notify.time.increment=timeAmts[v];saveSettings();},};};}); -ExStats=require("exstats"); -B2=process.env.HWVERSION2; -Layout=require("Layout"); -locale=require("locale"); -fontHeading="6x8:2"; -fontValue=B2?"6x15:2":"6x8:3"; -headingCol="#888"; -fixCount=0; -isMenuDisplayed=; +//The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. +//Other methods are even more approximative. g.clear(); -Bangle.loadWidgets(); -Bangle.drawWidgets(); -settings=Object.assign({record:,B1:"dist",B2:"time",B3:"pacea",B4:"bpm",B5:"step",B6:"caden",paceLength:1000,notify:{dist:{value:0,notifications:[],},step:{value:0,notifications:[],},time:{value:0,notifications:[],},},},require("Storage").readJSON("run.json",1){}); -statIDs=[settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(ss""); -exs=ExStats.getStats(statIDs,settings); -onStartStop(){running=!exs.state.active;prepPromises=[];(settings.recordWIDGETS["recorder"]){(running){isMenuDisplayed=;prepPromises.push(WIDGETS["recorder"].setRecording().then((){isMenuDisplayed=;layout.setUI();layout.forgetLazyState();layout.render();}));}{prepPromises.push(WIDGETS["recorder"].setRecording());}}(!prepPromises.length)prepPromises.push(Promise.resolve());Promise.all(prepPromises).then((){(running){exs.start();}{exs.stop();}layout.button.label=running?"STOP":"START";layout.status.label=running?"RUN":"STOP";layout.status.bgCol=running?"#0f0":"#f00";layout.render();});} -lc=[]; -(i=0;i0exs.stats[statType]){configureNotification(exs.stats[statType]);}}); -Bangle.on("GPS",(fix){layout.gps.bgCol=fix.fix?"#0f0":"#f00";(!fix.fix);(fixCount0){Bangle.buzz();}}); -setInterval((){layout.clock.label=locale.time(Date(),1);(!isMenuDisplayed)layout.render();},1000); \ No newline at end of file +// ########### The settings section ? How does this work ? ############# +let settings = Object.assign({ + minhr: { + value: 0} + maxhr: { + value: 0} +}, require("Storage").readJSON("run.json", 1) || {}); +// ######## end of settings section + +// ########## listening to swipes ? How does this work ? ######### +//to go back and forth between Run and karvonnen +Bangle.on('swipe', function(directionLR, directionUD) { ... }); + +// ###### The app itself ############ +g.drawLine(40,64,88,52,136,64); +g.drawLine(88,52,136,64); +g.drawLine(40,112,88,124); +g.drawLine(88,124,132,112); +g.setFont("Vector",20); + +//To calculate Heart rate zones, we need to know the heart rate reserve (HRR) +// HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. +//get the hrr (heart rate reserve). +// I put random data here, but this has to come as a menu in the settings section so that users can change it. +let minhr = 48; +let maxhr = 187; + +function calculatehrr(minhr, maxhr) { + return maxhr - minhr;} + +//test input for hrr (it works). +let hrr = calculatehrr(minhr, maxhr); +console.log(hrr); + +//Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. +let hr = 174; +var hr1 = hr; +// These variables display next and previous HR zone. +//get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonnen method +//60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack +var minzone2 = hrr * 0.6 + minhr; +var maxzone2 = hrr * 0.7 + minhr; +var maxzone3 = hrr * 0.8 + minhr; +var maxzone4 = hrr * 0.9 + minhr; +var maxzone5 = hrr * 0.99 + minhr; + +// HR data: large, readable, in the middle of the screen +g.setFont("Vector",50); +g.drawString(hr1, 62,66); + +//To shorten the code, I'll reference some variables and reuse them. +let centreX = 0.5 * g.getWidth(); +let centreY = 0.5 * g.getWidth(); +let minRadius = 0.38 * g.getWidth(); +let maxRadius = 0.50 * g.getWidth(); + +//####### A function to simplify a bit the code ###### +function simplify (sA, eA, Z) { +const zone= require("graphics_utils"); +let startAngle = zone.degreesToRadians(sA); +let endAngle = zone.degreesToRadians(eA); +zone.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); +g.drawString(Z, 29,80);} + +//####### A function to simplify next&previous zones ###### +function zoning (max, min) { +g.drawString(max, 56,28);g.drawString(min, 60,128);} + +//Thenext functions call arcs to display different HR zones. +//draw background image (dithered green zones)(I will draw different zones in different dithered colors) + const HRzones= require("graphics_utils"); + let minRadiusz = 0.44 * g.getWidth(); + let startAngle = HRzones.degreesToRadians(-88.5); + let endAngle = HRzones.degreesToRadians(268.5); + g.setColor("#002200"); + HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + g.setFont("Vector",24); + +function getzone1() {g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} +function getzone2a() {g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} +function getzone2b() {g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} +function getzone2c() {g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} +function getzone3a() {g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} +function getzone3b() {g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} +function getzone3c() {g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} +function getzone4a() {g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} +function getzone4b() {g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} +function getzone4c() {g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} +function getzone5a() {g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} +function getzone5b() {g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} +function getzone5c() {g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} + +function getzonealert() { + const HRzonemax = require("graphics_utils"); + var centreX1,centreY1,maxRadius1 = 1; + let minRadius = 0.40 * g.getWidth(); + let startAngle1 = HRzonemax.degreesToRadians(-90); + let endAngle1 = HRzonemax.degreesToRadians(270); + g.setFont("Vector",38);g.setColor("#ff0000"); + HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); + g.drawString("ALERT", 26,66);} +//Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. + + if (hr <= hrr*0.6 + minhr) {(getzone1()); +} else if (hr <= hrr*0.64 + minhr) {(getzone2a()); +} else if (hr <= hrr*0.67+minhr) {(getzone2b()); +} else if (hr <= hrr * 0.7 + minhr) {(getzone2c()); +} else if (hr <= hrr * 0.74 + minhr) {(getzone3a()); +} else if (hr <= hrr * 0.77 + minhr) {(getzone3b()); +} else if (hr <= hrr * 0.8 + minhr) {(getzone3c()); +} else if (hr <= hrr * 0.84 + minhr) {(getzone4a()); +} else if (hr <= hrr * 0.87 + minhr) {(getzone4b()); +} else if (hr <= hrr * 0.9 + minhr) {(getzone4c()); +} else if (hr <= hrr * 0.94 + minhr) {(getzone5a()); +} else if (hr <= hrr * 0.96 + minhr) {(getzone5b()); +} else if (hr <= hrr * 0.98 + minhr) {(getzone5c()); +} else if (hr >= maxhr - 2) {g.clear();(getzonealert());} From 5f6149863d83de61e6f3ec9f69b3519792bc9166 Mon Sep 17 00:00:00 2001 From: thyttan <97237430+thyttan@users.noreply.github.com> Date: Sat, 18 Feb 2023 21:54:36 +0100 Subject: [PATCH 0275/1725] Move karvonnen code into the run app as discussed in https://forum.espruino.com/conversations/383175/#comment16875073 --- apps/run/app.js | 236 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 196 insertions(+), 40 deletions(-) diff --git a/apps/run/app.js b/apps/run/app.js index 4038b8c1a..4a4956a59 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -1,16 +1,24 @@ -var ExStats = require("exstats"); -var B2 = process.env.HWVERSION===2; -var Layout = require("Layout"); -var locale = require("locale"); -var fontHeading = "6x8:2"; -var fontValue = B2 ? "6x15:2" : "6x8:3"; -var headingCol = "#888"; -var fixCount = 0; -var isMenuDisplayed = false; +// Use widget utils to show/hide widgets +let wu = require("widget_utils"); -g.clear(); +let runInterval; +let karvonnenActive = false; +// Run interface wrapped in a function +//function run() { +let ExStats = require("exstats"); +let B2 = process.env.HWVERSION===2; +let Layout = require("Layout"); +let locale = require("locale"); +let fontHeading = "6x8:2"; +let fontValue = B2 ? "6x15:2" : "6x8:3"; +let headingCol = "#888"; +let fixCount = 0; +let isMenuDisplayed = false; + +g.reset().clear(); Bangle.loadWidgets(); Bangle.drawWidgets(); +wu.show(); // --------------------------- let settings = Object.assign({ @@ -37,14 +45,14 @@ let settings = Object.assign({ }, }, }, require("Storage").readJSON("run.json", 1) || {}); -var statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); -var exs = ExStats.getStats(statIDs, settings); +let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); +let exs = ExStats.getStats(statIDs, settings); // --------------------------- // Called to start/stop running function onStartStop() { - var running = !exs.state.active; - var prepPromises = []; + let running = !exs.state.active; + let prepPromises = []; // start/stop recording // Do this first in case recorder needs to prompt for @@ -72,25 +80,25 @@ function onStartStop() { Promise.all(prepPromises) .then(() => { - if (running) { - exs.start(); - } else { - exs.stop(); - } - layout.button.label = running ? "STOP" : "START"; - layout.status.label = running ? "RUN" : "STOP"; - layout.status.bgCol = running ? "#0f0" : "#f00"; - // if stopping running, don't clear state - // so we can at least refer to what we've done - layout.render(); - }); + if (running) { + exs.start(); + } else { + exs.stop(); + } + layout.button.label = running ? "STOP" : "START"; + layout.status.label = running ? "RUN" : "STOP"; + layout.status.bgCol = running ? "#0f0" : "#f00"; + // if stopping running, don't clear state + // so we can at least refer to what we've done + layout.render(); + }); } -var lc = []; +let lc = []; // Load stats in pair by pair -for (var i=0;i{ settings.notify[e.id].notifications.reduce(function (promise, buzzPattern) { - return promise.then(function () { - return Bangle.buzz(buzzPattern[0], buzzPattern[1]); - }); + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); }, Promise.resolve()); }); } Object.keys(settings.notify).forEach((statType) => { if (settings.notify[statType].increment > 0 && exs.stats[statType]) { - configureNotification(exs.stats[statType]); + configureNotification(exs.stats[statType]); } }); @@ -138,8 +146,156 @@ Bangle.on("GPS", function(fix) { Bangle.buzz(); // first fix, does not need to respect quiet mode } }); -// We always call ourselves once a second to update -setInterval(function() { - layout.clock.label = locale.time(new Date(),1); - if (!isMenuDisplayed) layout.render(); -}, 1000); + +// run() function used to switch between traditional run UI and karvonnen UI +function run() { + if (karvonnenActive) g.reset().clear(); + karvonnenActive = false; + wu.show(); + layout.lazy = false; + layout.render(); + layout.lazy = true; + // We always call ourselves once a second to update + if (!runInterval){ + runInterval = setInterval(function() { + print(runInterval); + layout.clock.label = locale.time(new Date(),1); + if (!isMenuDisplayed && !karvonnenActive) layout.render(); + }, 1000); + } +} +run(); + +/////////////////////////////////////////////// +// Karvonnen +/////////////////////////////////////////////// + +// Korvonnen pasted inside a function +function karvonnen() { + // Attempt to stop listening to button + //clearWatch(); + clearInterval(runInterval); + runInterval = undefined; + karvonnenActive = true; + //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ + //The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. + //Other methods are even more approximative. + wu.hide(); + let R = Bangle.appRect; + + g.reset().clearRect(R); + + g.drawLine(40,64,88,52,136,64); + g.drawLine(88,52,136,64); + g.drawLine(40,112,88,124); + g.drawLine(88,124,132,112); + g.setFont("Vector",20); + + //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) + // HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. + //get the hrr (heart rate reserve). + // I put random data here, but this has to come as a menu in the settings section so that users can change it. + let minhr = 48; + let maxhr = 187; + + function calculatehrr(minhr, maxhr) { + return maxhr - minhr;} + + //test input for hrr (it works). + let hrr = calculatehrr(minhr, maxhr); + console.log(hrr); + + //Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. + let hr = 174; + let hr1 = hr; + // These letiables display next and previous HR zone. + //get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonnen method + //60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack + let minzone2 = hrr * 0.6 + minhr; + let maxzone2 = hrr * 0.7 + minhr; + let maxzone3 = hrr * 0.8 + minhr; + let maxzone4 = hrr * 0.9 + minhr; + let maxzone5 = hrr * 0.99 + minhr; + + // HR data: large, readable, in the middle of the screen + g.setFont("Vector",50); + g.drawString(hr1, 62,66); + //These functions call arcs to show different HR zones. + + //To shorten the code, I'll reference some letiables and reuse them. + let centreX = R.x + 0.5 * R.w; //g.getWidth(); + let centreY = R.y + 0.5 * R.h; //g.getWidth(); + let minRadius = 0.38 * R.h; //g.getWidth(); + let maxRadius = 0.50 * R.h; //g.getWidth(); + + //####### A function to simplify a bit the code ###### + function simplify (sA, eA, Z) { + const zone= require("graphics_utils"); + let startAngle = zone.degreesToRadians(sA); + let endAngle = zone.degreesToRadians(eA); + zone.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); + g.drawString(Z, 29,80);} + + //####### A function to simplify next&previous zones ###### + function zoning (max, min) { + g.drawString(max, 56,28);g.drawString(min, 60,128);} + + //draw background image (dithered green zones)(I should draw different zones in different dithered colors) + const HRzones= require("graphics_utils"); + let minRadiusz = 0.44 * g.getWidth(); + let startAngle = HRzones.degreesToRadians(-88.5); + let endAngle = HRzones.degreesToRadians(268.5); + g.setColor("#002200"); + HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + g.setFont("Vector",24); + + function getzone1() {g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} + function getzone2a() {g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} + function getzone2b() {g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} + function getzone2c() {g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} + function getzone3a() {g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} + function getzone3b() {g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} + function getzone3c() {g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} + function getzone4a() {g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} + function getzone4b() {g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} + function getzone4c() {g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} + function getzone5a() {g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} + function getzone5b() {g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} + function getzone5c() {g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} + + function getzonealert() { + const HRzonemax = require("graphics_utils"); + let centreX1,centreY1,maxRadius1 = 1; + let minRadius = 0.40 * g.getWidth(); + let startAngle1 = HRzonemax.degreesToRadians(-90); + let endAngle1 = HRzonemax.degreesToRadians(270); + g.setFont("Vector",38);g.setColor("#ff0000"); + HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); + g.drawString("ALERT", 26,66); + } + //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. + + if (hr <= hrr*0.6 + minhr) {(getzone1()); + } else if (hr <= hrr*0.64 + minhr) {(getzone2a()); + } else if (hr <= hrr*0.67+minhr) {(getzone2b()); + } else if (hr <= hrr * 0.7 + minhr) {(getzone2c()); + } else if (hr <= hrr * 0.74 + minhr) {(getzone3a()); + } else if (hr <= hrr * 0.77 + minhr) {(getzone3b()); + } else if (hr <= hrr * 0.8 + minhr) {(getzone3c()); + } else if (hr <= hrr * 0.84 + minhr) {(getzone4a()); + } else if (hr <= hrr * 0.87 + minhr) {(getzone4b()); + } else if (hr <= hrr * 0.9 + minhr) {(getzone4c()); + } else if (hr <= hrr * 0.94 + minhr) {(getzone5a()); + } else if (hr <= hrr * 0.96 + minhr) {(getzone5b()); + } else if (hr <= hrr * 0.98 + minhr) {(getzone5c()); + } else if (hr >= maxhr - 2) {g.clear();(getzonealert());} +} + +// Define the function to go back and foth between the different UI's +function swipeHandler(LR,_) { + if (LR==-1 && karvonnenActive && !isMenuDisplayed) run(); + if (LR==1 && !karvonnenActive && !isMenuDisplayed) karvonnen(); +} + +// Listen for swipes with the swipeHandler +Bangle.on("swipe", swipeHandler); From 0375bf594ecab1ec9016c5865352bbba0cb0a028 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sat, 18 Feb 2023 22:03:18 +0100 Subject: [PATCH 0276/1725] version metadata --- apps/run/metadata.json | 38 ++++++++++++++++++++++++++++++-------- 1 file changed, 30 insertions(+), 8 deletions(-) diff --git a/apps/run/metadata.json b/apps/run/metadata.json index 933576a5d..7d1eab128 100644 --- a/apps/run/metadata.json +++ b/apps/run/metadata.json @@ -1,16 +1,38 @@ -{ "id": "run", +{ + "id": "run", "name": "Run", - "version":"0.14", + "version": "0.14", "description": "Displays distance, time, steps, cadence, pace and more for runners.", "icon": "app.png", "tags": "run,running,fitness,outdoors,gps", - "supports" : ["BANGLEJS","BANGLEJS2"], - "screenshots": [{"url":"screenshot.png"}], + "supports": [ + "BANGLEJS", + "BANGLEJS2" + ], + "screenshots": [ + { + "url": "screenshot.png" + } + ], "readme": "README.md", "storage": [ - {"name":"run.app.js","url":"app.js"}, - {"name":"run.img","url":"app-icon.js","evaluate":true}, - {"name":"run.settings.js","url":"settings.js"} + { + "name": "run.app.js", + "url": "app.js" + }, + { + "name": "run.img", + "url": "app-icon.js", + "evaluate": true + }, + { + "name": "run.settings.js", + "url": "settings.js" + } ], - "data": [{"name":"run.json"}] + "data": [ + { + "name": "run.json" + } + ] } From 7fe2d44e8c7c74ab5e5308105b4a44fc7b3a2457 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sat, 18 Feb 2023 22:05:11 +0100 Subject: [PATCH 0277/1725] ChangLog version --- apps/run/ChangeLog | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/run/ChangeLog b/apps/run/ChangeLog index 95945be78..7b42b5ded 100644 --- a/apps/run/ChangeLog +++ b/apps/run/ChangeLog @@ -13,3 +13,5 @@ 0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working +0.15: (alpha) Swipe to intensity interface a la Korvonnen (curtesy of + [FTeacher](https://github.com/f-teacher)) From b1a82286d7ea042ee852ecf8381950cdbc87b3da Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sat, 18 Feb 2023 22:07:11 +0100 Subject: [PATCH 0278/1725] fix version metadata --- apps/run/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/run/metadata.json b/apps/run/metadata.json index 7d1eab128..65be829ee 100644 --- a/apps/run/metadata.json +++ b/apps/run/metadata.json @@ -1,7 +1,7 @@ { "id": "run", "name": "Run", - "version": "0.14", + "version": "0.15", "description": "Displays distance, time, steps, cadence, pace and more for runners.", "icon": "app.png", "tags": "run,running,fitness,outdoors,gps", From f6d2d46e5a26a46d01e0bb58489e6ef3e6cd083e Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sat, 18 Feb 2023 22:09:46 +0100 Subject: [PATCH 0279/1725] remove run.app.karvonnen.js, moved into app.js --- apps/run/run.app.karvonnen.js | 120 ---------------------------------- 1 file changed, 120 deletions(-) delete mode 100644 apps/run/run.app.karvonnen.js diff --git a/apps/run/run.app.karvonnen.js b/apps/run/run.app.karvonnen.js deleted file mode 100644 index 8dabfe60d..000000000 --- a/apps/run/run.app.karvonnen.js +++ /dev/null @@ -1,120 +0,0 @@ -//The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. -//Other methods are even more approximative. -g.clear(); -// ########### The settings section ? How does this work ? ############# -let settings = Object.assign({ - minhr: { - value: 0} - maxhr: { - value: 0} -}, require("Storage").readJSON("run.json", 1) || {}); -// ######## end of settings section - -// ########## listening to swipes ? How does this work ? ######### -//to go back and forth between Run and karvonnen -Bangle.on('swipe', function(directionLR, directionUD) { ... }); - -// ###### The app itself ############ -g.drawLine(40,64,88,52,136,64); -g.drawLine(88,52,136,64); -g.drawLine(40,112,88,124); -g.drawLine(88,124,132,112); -g.setFont("Vector",20); - -//To calculate Heart rate zones, we need to know the heart rate reserve (HRR) -// HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. -//get the hrr (heart rate reserve). -// I put random data here, but this has to come as a menu in the settings section so that users can change it. -let minhr = 48; -let maxhr = 187; - -function calculatehrr(minhr, maxhr) { - return maxhr - minhr;} - -//test input for hrr (it works). -let hrr = calculatehrr(minhr, maxhr); -console.log(hrr); - -//Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. -let hr = 174; -var hr1 = hr; -// These variables display next and previous HR zone. -//get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonnen method -//60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack -var minzone2 = hrr * 0.6 + minhr; -var maxzone2 = hrr * 0.7 + minhr; -var maxzone3 = hrr * 0.8 + minhr; -var maxzone4 = hrr * 0.9 + minhr; -var maxzone5 = hrr * 0.99 + minhr; - -// HR data: large, readable, in the middle of the screen -g.setFont("Vector",50); -g.drawString(hr1, 62,66); - -//To shorten the code, I'll reference some variables and reuse them. -let centreX = 0.5 * g.getWidth(); -let centreY = 0.5 * g.getWidth(); -let minRadius = 0.38 * g.getWidth(); -let maxRadius = 0.50 * g.getWidth(); - -//####### A function to simplify a bit the code ###### -function simplify (sA, eA, Z) { -const zone= require("graphics_utils"); -let startAngle = zone.degreesToRadians(sA); -let endAngle = zone.degreesToRadians(eA); -zone.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); -g.drawString(Z, 29,80);} - -//####### A function to simplify next&previous zones ###### -function zoning (max, min) { -g.drawString(max, 56,28);g.drawString(min, 60,128);} - -//Thenext functions call arcs to display different HR zones. -//draw background image (dithered green zones)(I will draw different zones in different dithered colors) - const HRzones= require("graphics_utils"); - let minRadiusz = 0.44 * g.getWidth(); - let startAngle = HRzones.degreesToRadians(-88.5); - let endAngle = HRzones.degreesToRadians(268.5); - g.setColor("#002200"); - HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); - g.setFont("Vector",24); - -function getzone1() {g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} -function getzone2a() {g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} -function getzone2b() {g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} -function getzone2c() {g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} -function getzone3a() {g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} -function getzone3b() {g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} -function getzone3c() {g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} -function getzone4a() {g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} -function getzone4b() {g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} -function getzone4c() {g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} -function getzone5a() {g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} -function getzone5b() {g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} -function getzone5c() {g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} - -function getzonealert() { - const HRzonemax = require("graphics_utils"); - var centreX1,centreY1,maxRadius1 = 1; - let minRadius = 0.40 * g.getWidth(); - let startAngle1 = HRzonemax.degreesToRadians(-90); - let endAngle1 = HRzonemax.degreesToRadians(270); - g.setFont("Vector",38);g.setColor("#ff0000"); - HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); - g.drawString("ALERT", 26,66);} -//Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. - - if (hr <= hrr*0.6 + minhr) {(getzone1()); -} else if (hr <= hrr*0.64 + minhr) {(getzone2a()); -} else if (hr <= hrr*0.67+minhr) {(getzone2b()); -} else if (hr <= hrr * 0.7 + minhr) {(getzone2c()); -} else if (hr <= hrr * 0.74 + minhr) {(getzone3a()); -} else if (hr <= hrr * 0.77 + minhr) {(getzone3b()); -} else if (hr <= hrr * 0.8 + minhr) {(getzone3c()); -} else if (hr <= hrr * 0.84 + minhr) {(getzone4a()); -} else if (hr <= hrr * 0.87 + minhr) {(getzone4b()); -} else if (hr <= hrr * 0.9 + minhr) {(getzone4c()); -} else if (hr <= hrr * 0.94 + minhr) {(getzone5a()); -} else if (hr <= hrr * 0.96 + minhr) {(getzone5b()); -} else if (hr <= hrr * 0.98 + minhr) {(getzone5c()); -} else if (hr >= maxhr - 2) {g.clear();(getzonealert());} From 96a8da71d55c01e1cc7df9203154dbbaaa7298e3 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sat, 18 Feb 2023 22:31:03 +0100 Subject: [PATCH 0280/1725] remove commented out lines --- apps/run/app.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/apps/run/app.js b/apps/run/app.js index 4a4956a59..91a1dce50 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -4,7 +4,6 @@ let wu = require("widget_utils"); let runInterval; let karvonnenActive = false; // Run interface wrapped in a function -//function run() { let ExStats = require("exstats"); let B2 = process.env.HWVERSION===2; let Layout = require("Layout"); @@ -172,8 +171,6 @@ run(); // Korvonnen pasted inside a function function karvonnen() { - // Attempt to stop listening to button - //clearWatch(); clearInterval(runInterval); runInterval = undefined; karvonnenActive = true; From 3692f0e1b9136f252f1a2d043554b8dc2bc5e72b Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sat, 18 Feb 2023 22:39:36 +0100 Subject: [PATCH 0281/1725] add a comment, remove a print-statement --- apps/run/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/run/app.js b/apps/run/app.js index 91a1dce50..2c12aaa3f 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -157,7 +157,6 @@ function run() { // We always call ourselves once a second to update if (!runInterval){ runInterval = setInterval(function() { - print(runInterval); layout.clock.label = locale.time(new Date(),1); if (!isMenuDisplayed && !karvonnenActive) layout.render(); }, 1000); @@ -171,6 +170,7 @@ run(); // Korvonnen pasted inside a function function karvonnen() { + // stop updating and drawing the traditional run app UI clearInterval(runInterval); runInterval = undefined; karvonnenActive = true; From fdd39bfeef156f626ac2131448a0c491b2fdb9fe Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 09:53:50 +0100 Subject: [PATCH 0282/1725] Revert "remove run.app.karvonnen.js, moved into app.js" This reverts commit f9310b0ded91a0e1fa5d9c8e86cce4357e9cd899. --- apps/run/run.app.karvonnen.js | 120 ++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 apps/run/run.app.karvonnen.js diff --git a/apps/run/run.app.karvonnen.js b/apps/run/run.app.karvonnen.js new file mode 100644 index 000000000..8dabfe60d --- /dev/null +++ b/apps/run/run.app.karvonnen.js @@ -0,0 +1,120 @@ +//The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. +//Other methods are even more approximative. +g.clear(); +// ########### The settings section ? How does this work ? ############# +let settings = Object.assign({ + minhr: { + value: 0} + maxhr: { + value: 0} +}, require("Storage").readJSON("run.json", 1) || {}); +// ######## end of settings section + +// ########## listening to swipes ? How does this work ? ######### +//to go back and forth between Run and karvonnen +Bangle.on('swipe', function(directionLR, directionUD) { ... }); + +// ###### The app itself ############ +g.drawLine(40,64,88,52,136,64); +g.drawLine(88,52,136,64); +g.drawLine(40,112,88,124); +g.drawLine(88,124,132,112); +g.setFont("Vector",20); + +//To calculate Heart rate zones, we need to know the heart rate reserve (HRR) +// HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. +//get the hrr (heart rate reserve). +// I put random data here, but this has to come as a menu in the settings section so that users can change it. +let minhr = 48; +let maxhr = 187; + +function calculatehrr(minhr, maxhr) { + return maxhr - minhr;} + +//test input for hrr (it works). +let hrr = calculatehrr(minhr, maxhr); +console.log(hrr); + +//Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. +let hr = 174; +var hr1 = hr; +// These variables display next and previous HR zone. +//get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonnen method +//60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack +var minzone2 = hrr * 0.6 + minhr; +var maxzone2 = hrr * 0.7 + minhr; +var maxzone3 = hrr * 0.8 + minhr; +var maxzone4 = hrr * 0.9 + minhr; +var maxzone5 = hrr * 0.99 + minhr; + +// HR data: large, readable, in the middle of the screen +g.setFont("Vector",50); +g.drawString(hr1, 62,66); + +//To shorten the code, I'll reference some variables and reuse them. +let centreX = 0.5 * g.getWidth(); +let centreY = 0.5 * g.getWidth(); +let minRadius = 0.38 * g.getWidth(); +let maxRadius = 0.50 * g.getWidth(); + +//####### A function to simplify a bit the code ###### +function simplify (sA, eA, Z) { +const zone= require("graphics_utils"); +let startAngle = zone.degreesToRadians(sA); +let endAngle = zone.degreesToRadians(eA); +zone.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); +g.drawString(Z, 29,80);} + +//####### A function to simplify next&previous zones ###### +function zoning (max, min) { +g.drawString(max, 56,28);g.drawString(min, 60,128);} + +//Thenext functions call arcs to display different HR zones. +//draw background image (dithered green zones)(I will draw different zones in different dithered colors) + const HRzones= require("graphics_utils"); + let minRadiusz = 0.44 * g.getWidth(); + let startAngle = HRzones.degreesToRadians(-88.5); + let endAngle = HRzones.degreesToRadians(268.5); + g.setColor("#002200"); + HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + g.setFont("Vector",24); + +function getzone1() {g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} +function getzone2a() {g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} +function getzone2b() {g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} +function getzone2c() {g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} +function getzone3a() {g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} +function getzone3b() {g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} +function getzone3c() {g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} +function getzone4a() {g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} +function getzone4b() {g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} +function getzone4c() {g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} +function getzone5a() {g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} +function getzone5b() {g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} +function getzone5c() {g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} + +function getzonealert() { + const HRzonemax = require("graphics_utils"); + var centreX1,centreY1,maxRadius1 = 1; + let minRadius = 0.40 * g.getWidth(); + let startAngle1 = HRzonemax.degreesToRadians(-90); + let endAngle1 = HRzonemax.degreesToRadians(270); + g.setFont("Vector",38);g.setColor("#ff0000"); + HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); + g.drawString("ALERT", 26,66);} +//Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. + + if (hr <= hrr*0.6 + minhr) {(getzone1()); +} else if (hr <= hrr*0.64 + minhr) {(getzone2a()); +} else if (hr <= hrr*0.67+minhr) {(getzone2b()); +} else if (hr <= hrr * 0.7 + minhr) {(getzone2c()); +} else if (hr <= hrr * 0.74 + minhr) {(getzone3a()); +} else if (hr <= hrr * 0.77 + minhr) {(getzone3b()); +} else if (hr <= hrr * 0.8 + minhr) {(getzone3c()); +} else if (hr <= hrr * 0.84 + minhr) {(getzone4a()); +} else if (hr <= hrr * 0.87 + minhr) {(getzone4b()); +} else if (hr <= hrr * 0.9 + minhr) {(getzone4c()); +} else if (hr <= hrr * 0.94 + minhr) {(getzone5a()); +} else if (hr <= hrr * 0.96 + minhr) {(getzone5b()); +} else if (hr <= hrr * 0.98 + minhr) {(getzone5c()); +} else if (hr >= maxhr - 2) {g.clear();(getzonealert());} From 9f839273c8d7433d571491176756a8ff5cd59bb2 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 10:19:38 +0100 Subject: [PATCH 0283/1725] move karvonnen out of app.js and require it into run.app.js when loading app to the watch --- apps/run/app.js | 118 +-------------------------------- apps/run/metadata.json | 4 ++ apps/run/run.app.karvonnen.js | 120 ---------------------------------- apps/run/run_karvonnen.js | 115 ++++++++++++++++++++++++++++++++ 4 files changed, 121 insertions(+), 236 deletions(-) delete mode 100644 apps/run/run.app.karvonnen.js create mode 100644 apps/run/run_karvonnen.js diff --git a/apps/run/app.js b/apps/run/app.js index 2c12aaa3f..bea888911 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -156,7 +156,6 @@ function run() { layout.lazy = true; // We always call ourselves once a second to update if (!runInterval){ - runInterval = setInterval(function() { layout.clock.label = locale.time(new Date(),1); if (!isMenuDisplayed && !karvonnenActive) layout.render(); }, 1000); @@ -168,130 +167,17 @@ run(); // Karvonnen /////////////////////////////////////////////// -// Korvonnen pasted inside a function -function karvonnen() { +function stopRunUI() { // stop updating and drawing the traditional run app UI clearInterval(runInterval); runInterval = undefined; karvonnenActive = true; - //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ - //The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. - //Other methods are even more approximative. - wu.hide(); - let R = Bangle.appRect; - - g.reset().clearRect(R); - - g.drawLine(40,64,88,52,136,64); - g.drawLine(88,52,136,64); - g.drawLine(40,112,88,124); - g.drawLine(88,124,132,112); - g.setFont("Vector",20); - - //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) - // HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. - //get the hrr (heart rate reserve). - // I put random data here, but this has to come as a menu in the settings section so that users can change it. - let minhr = 48; - let maxhr = 187; - - function calculatehrr(minhr, maxhr) { - return maxhr - minhr;} - - //test input for hrr (it works). - let hrr = calculatehrr(minhr, maxhr); - console.log(hrr); - - //Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. - let hr = 174; - let hr1 = hr; - // These letiables display next and previous HR zone. - //get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonnen method - //60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack - let minzone2 = hrr * 0.6 + minhr; - let maxzone2 = hrr * 0.7 + minhr; - let maxzone3 = hrr * 0.8 + minhr; - let maxzone4 = hrr * 0.9 + minhr; - let maxzone5 = hrr * 0.99 + minhr; - - // HR data: large, readable, in the middle of the screen - g.setFont("Vector",50); - g.drawString(hr1, 62,66); - //These functions call arcs to show different HR zones. - - //To shorten the code, I'll reference some letiables and reuse them. - let centreX = R.x + 0.5 * R.w; //g.getWidth(); - let centreY = R.y + 0.5 * R.h; //g.getWidth(); - let minRadius = 0.38 * R.h; //g.getWidth(); - let maxRadius = 0.50 * R.h; //g.getWidth(); - - //####### A function to simplify a bit the code ###### - function simplify (sA, eA, Z) { - const zone= require("graphics_utils"); - let startAngle = zone.degreesToRadians(sA); - let endAngle = zone.degreesToRadians(eA); - zone.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); - g.drawString(Z, 29,80);} - - //####### A function to simplify next&previous zones ###### - function zoning (max, min) { - g.drawString(max, 56,28);g.drawString(min, 60,128);} - - //draw background image (dithered green zones)(I should draw different zones in different dithered colors) - const HRzones= require("graphics_utils"); - let minRadiusz = 0.44 * g.getWidth(); - let startAngle = HRzones.degreesToRadians(-88.5); - let endAngle = HRzones.degreesToRadians(268.5); - g.setColor("#002200"); - HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); - g.setFont("Vector",24); - - function getzone1() {g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} - function getzone2a() {g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} - function getzone2b() {g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} - function getzone2c() {g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} - function getzone3a() {g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} - function getzone3b() {g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} - function getzone3c() {g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} - function getzone4a() {g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} - function getzone4b() {g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} - function getzone4c() {g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} - function getzone5a() {g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} - function getzone5b() {g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} - function getzone5c() {g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} - - function getzonealert() { - const HRzonemax = require("graphics_utils"); - let centreX1,centreY1,maxRadius1 = 1; - let minRadius = 0.40 * g.getWidth(); - let startAngle1 = HRzonemax.degreesToRadians(-90); - let endAngle1 = HRzonemax.degreesToRadians(270); - g.setFont("Vector",38);g.setColor("#ff0000"); - HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); - g.drawString("ALERT", 26,66); - } - //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. - - if (hr <= hrr*0.6 + minhr) {(getzone1()); - } else if (hr <= hrr*0.64 + minhr) {(getzone2a()); - } else if (hr <= hrr*0.67+minhr) {(getzone2b()); - } else if (hr <= hrr * 0.7 + minhr) {(getzone2c()); - } else if (hr <= hrr * 0.74 + minhr) {(getzone3a()); - } else if (hr <= hrr * 0.77 + minhr) {(getzone3b()); - } else if (hr <= hrr * 0.8 + minhr) {(getzone3c()); - } else if (hr <= hrr * 0.84 + minhr) {(getzone4a()); - } else if (hr <= hrr * 0.87 + minhr) {(getzone4b()); - } else if (hr <= hrr * 0.9 + minhr) {(getzone4c()); - } else if (hr <= hrr * 0.94 + minhr) {(getzone5a()); - } else if (hr <= hrr * 0.96 + minhr) {(getzone5b()); - } else if (hr <= hrr * 0.98 + minhr) {(getzone5c()); - } else if (hr >= maxhr - 2) {g.clear();(getzonealert());} } // Define the function to go back and foth between the different UI's function swipeHandler(LR,_) { if (LR==-1 && karvonnenActive && !isMenuDisplayed) run(); - if (LR==1 && !karvonnenActive && !isMenuDisplayed) karvonnen(); + if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); require("run_karvonnen").show()}; } // Listen for swipes with the swipeHandler diff --git a/apps/run/metadata.json b/apps/run/metadata.json index 65be829ee..0d94f063f 100644 --- a/apps/run/metadata.json +++ b/apps/run/metadata.json @@ -28,6 +28,10 @@ { "name": "run.settings.js", "url": "settings.js" + }, + { + "name": "run_karvonnen", + "url": "run_karvonnen.js" } ], "data": [ diff --git a/apps/run/run.app.karvonnen.js b/apps/run/run.app.karvonnen.js deleted file mode 100644 index 8dabfe60d..000000000 --- a/apps/run/run.app.karvonnen.js +++ /dev/null @@ -1,120 +0,0 @@ -//The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. -//Other methods are even more approximative. -g.clear(); -// ########### The settings section ? How does this work ? ############# -let settings = Object.assign({ - minhr: { - value: 0} - maxhr: { - value: 0} -}, require("Storage").readJSON("run.json", 1) || {}); -// ######## end of settings section - -// ########## listening to swipes ? How does this work ? ######### -//to go back and forth between Run and karvonnen -Bangle.on('swipe', function(directionLR, directionUD) { ... }); - -// ###### The app itself ############ -g.drawLine(40,64,88,52,136,64); -g.drawLine(88,52,136,64); -g.drawLine(40,112,88,124); -g.drawLine(88,124,132,112); -g.setFont("Vector",20); - -//To calculate Heart rate zones, we need to know the heart rate reserve (HRR) -// HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. -//get the hrr (heart rate reserve). -// I put random data here, but this has to come as a menu in the settings section so that users can change it. -let minhr = 48; -let maxhr = 187; - -function calculatehrr(minhr, maxhr) { - return maxhr - minhr;} - -//test input for hrr (it works). -let hrr = calculatehrr(minhr, maxhr); -console.log(hrr); - -//Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. -let hr = 174; -var hr1 = hr; -// These variables display next and previous HR zone. -//get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonnen method -//60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack -var minzone2 = hrr * 0.6 + minhr; -var maxzone2 = hrr * 0.7 + minhr; -var maxzone3 = hrr * 0.8 + minhr; -var maxzone4 = hrr * 0.9 + minhr; -var maxzone5 = hrr * 0.99 + minhr; - -// HR data: large, readable, in the middle of the screen -g.setFont("Vector",50); -g.drawString(hr1, 62,66); - -//To shorten the code, I'll reference some variables and reuse them. -let centreX = 0.5 * g.getWidth(); -let centreY = 0.5 * g.getWidth(); -let minRadius = 0.38 * g.getWidth(); -let maxRadius = 0.50 * g.getWidth(); - -//####### A function to simplify a bit the code ###### -function simplify (sA, eA, Z) { -const zone= require("graphics_utils"); -let startAngle = zone.degreesToRadians(sA); -let endAngle = zone.degreesToRadians(eA); -zone.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); -g.drawString(Z, 29,80);} - -//####### A function to simplify next&previous zones ###### -function zoning (max, min) { -g.drawString(max, 56,28);g.drawString(min, 60,128);} - -//Thenext functions call arcs to display different HR zones. -//draw background image (dithered green zones)(I will draw different zones in different dithered colors) - const HRzones= require("graphics_utils"); - let minRadiusz = 0.44 * g.getWidth(); - let startAngle = HRzones.degreesToRadians(-88.5); - let endAngle = HRzones.degreesToRadians(268.5); - g.setColor("#002200"); - HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); - g.setFont("Vector",24); - -function getzone1() {g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} -function getzone2a() {g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} -function getzone2b() {g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} -function getzone2c() {g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} -function getzone3a() {g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} -function getzone3b() {g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} -function getzone3c() {g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} -function getzone4a() {g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} -function getzone4b() {g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} -function getzone4c() {g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} -function getzone5a() {g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} -function getzone5b() {g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} -function getzone5c() {g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} - -function getzonealert() { - const HRzonemax = require("graphics_utils"); - var centreX1,centreY1,maxRadius1 = 1; - let minRadius = 0.40 * g.getWidth(); - let startAngle1 = HRzonemax.degreesToRadians(-90); - let endAngle1 = HRzonemax.degreesToRadians(270); - g.setFont("Vector",38);g.setColor("#ff0000"); - HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); - g.drawString("ALERT", 26,66);} -//Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. - - if (hr <= hrr*0.6 + minhr) {(getzone1()); -} else if (hr <= hrr*0.64 + minhr) {(getzone2a()); -} else if (hr <= hrr*0.67+minhr) {(getzone2b()); -} else if (hr <= hrr * 0.7 + minhr) {(getzone2c()); -} else if (hr <= hrr * 0.74 + minhr) {(getzone3a()); -} else if (hr <= hrr * 0.77 + minhr) {(getzone3b()); -} else if (hr <= hrr * 0.8 + minhr) {(getzone3c()); -} else if (hr <= hrr * 0.84 + minhr) {(getzone4a()); -} else if (hr <= hrr * 0.87 + minhr) {(getzone4b()); -} else if (hr <= hrr * 0.9 + minhr) {(getzone4c()); -} else if (hr <= hrr * 0.94 + minhr) {(getzone5a()); -} else if (hr <= hrr * 0.96 + minhr) {(getzone5b()); -} else if (hr <= hrr * 0.98 + minhr) {(getzone5c()); -} else if (hr >= maxhr - 2) {g.clear();(getzonealert());} diff --git a/apps/run/run_karvonnen.js b/apps/run/run_karvonnen.js new file mode 100644 index 000000000..c1673f862 --- /dev/null +++ b/apps/run/run_karvonnen.js @@ -0,0 +1,115 @@ +// Korvonnen pasted inside a function +exports.show = function karvonnen() { + //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ + //The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. + //Other methods are even more approximative. + wu.hide(); + let R = Bangle.appRect; + + g.reset().clearRect(R); + + g.drawLine(40,64,88,52,136,64); + g.drawLine(88,52,136,64); + g.drawLine(40,112,88,124); + g.drawLine(88,124,132,112); + g.setFont("Vector",20); + + //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) + // HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. + //get the hrr (heart rate reserve). + // I put random data here, but this has to come as a menu in the settings section so that users can change it. + let minhr = 48; + let maxhr = 187; + + function calculatehrr(minhr, maxhr) { + return maxhr - minhr;} + + //test input for hrr (it works). + let hrr = calculatehrr(minhr, maxhr); + console.log(hrr); + + //Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. + let hr = 174; + let hr1 = hr; + // These letiables display next and previous HR zone. + //get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonnen method + //60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack + let minzone2 = hrr * 0.6 + minhr; + let maxzone2 = hrr * 0.7 + minhr; + let maxzone3 = hrr * 0.8 + minhr; + let maxzone4 = hrr * 0.9 + minhr; + let maxzone5 = hrr * 0.99 + minhr; + + // HR data: large, readable, in the middle of the screen + g.setFont("Vector",50); + g.drawString(hr1, 62,66); + //These functions call arcs to show different HR zones. + + //To shorten the code, I'll reference some letiables and reuse them. + let centreX = R.x + 0.5 * R.w; //g.getWidth(); + let centreY = R.y + 0.5 * R.h; //g.getWidth(); + let minRadius = 0.38 * R.h; //g.getWidth(); + let maxRadius = 0.50 * R.h; //g.getWidth(); + + //####### A function to simplify a bit the code ###### + function simplify (sA, eA, Z) { + const zone= require("graphics_utils"); + let startAngle = zone.degreesToRadians(sA); + let endAngle = zone.degreesToRadians(eA); + zone.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); + g.drawString(Z, 29,80);} + + //####### A function to simplify next&previous zones ###### + function zoning (max, min) { + g.drawString(max, 56,28);g.drawString(min, 60,128);} + + //draw background image (dithered green zones)(I should draw different zones in different dithered colors) + const HRzones= require("graphics_utils"); + let minRadiusz = 0.44 * g.getWidth(); + let startAngle = HRzones.degreesToRadians(-88.5); + let endAngle = HRzones.degreesToRadians(268.5); + g.setColor("#002200"); + HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + g.setFont("Vector",24); + + function getzone1() {g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} + function getzone2a() {g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} + function getzone2b() {g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} + function getzone2c() {g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} + function getzone3a() {g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} + function getzone3b() {g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} + function getzone3c() {g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} + function getzone4a() {g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} + function getzone4b() {g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} + function getzone4c() {g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} + function getzone5a() {g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} + function getzone5b() {g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} + function getzone5c() {g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} + + function getzonealert() { + const HRzonemax = require("graphics_utils"); + let centreX1,centreY1,maxRadius1 = 1; + let minRadius = 0.40 * g.getWidth(); + let startAngle1 = HRzonemax.degreesToRadians(-90); + let endAngle1 = HRzonemax.degreesToRadians(270); + g.setFont("Vector",38);g.setColor("#ff0000"); + HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); + g.drawString("ALERT", 26,66); + } + //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. + + if (hr <= hrr*0.6 + minhr) {(getzone1()); + } else if (hr <= hrr*0.64 + minhr) {(getzone2a()); + } else if (hr <= hrr*0.67+minhr) {(getzone2b()); + } else if (hr <= hrr * 0.7 + minhr) {(getzone2c()); + } else if (hr <= hrr * 0.74 + minhr) {(getzone3a()); + } else if (hr <= hrr * 0.77 + minhr) {(getzone3b()); + } else if (hr <= hrr * 0.8 + minhr) {(getzone3c()); + } else if (hr <= hrr * 0.84 + minhr) {(getzone4a()); + } else if (hr <= hrr * 0.87 + minhr) {(getzone4b()); + } else if (hr <= hrr * 0.9 + minhr) {(getzone4c()); + } else if (hr <= hrr * 0.94 + minhr) {(getzone5a()); + } else if (hr <= hrr * 0.96 + minhr) {(getzone5b()); + } else if (hr <= hrr * 0.98 + minhr) {(getzone5c()); + } else if (hr >= maxhr - 2) {g.clear();(getzonealert());} +} From 79db22915f77fc29e78b3e0c6561ec2911090b91 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 10:26:04 +0100 Subject: [PATCH 0284/1725] fix accidental removal of interval --- apps/run/app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/run/app.js b/apps/run/app.js index bea888911..3f9cbee89 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -156,6 +156,7 @@ function run() { layout.lazy = true; // We always call ourselves once a second to update if (!runInterval){ + runInterval = setInterval(function() { layout.clock.label = locale.time(new Date(),1); if (!isMenuDisplayed && !karvonnenActive) layout.render(); }, 1000); From 81d281e397f662fdc8e8b332ce23ad5cadc519b6 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 10:28:17 +0100 Subject: [PATCH 0285/1725] add/rm semicolons --- apps/run/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/run/app.js b/apps/run/app.js index 3f9cbee89..0d3b3e57a 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -178,7 +178,7 @@ function stopRunUI() { // Define the function to go back and foth between the different UI's function swipeHandler(LR,_) { if (LR==-1 && karvonnenActive && !isMenuDisplayed) run(); - if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); require("run_karvonnen").show()}; + if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); require("run_karvonnen").show();} } // Listen for swipes with the swipeHandler From b8eca27831fab2c695b2c15a03e7faeacb527392 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 12:04:14 +0100 Subject: [PATCH 0286/1725] add hrm min/max settings --- apps/run/{run_karvonnen.js => karvonnen.js} | 0 apps/run/metadata.json | 2 +- apps/run/settings.js | 28 +++++++++++++++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) rename apps/run/{run_karvonnen.js => karvonnen.js} (100%) diff --git a/apps/run/run_karvonnen.js b/apps/run/karvonnen.js similarity index 100% rename from apps/run/run_karvonnen.js rename to apps/run/karvonnen.js diff --git a/apps/run/metadata.json b/apps/run/metadata.json index 0d94f063f..ad23519e7 100644 --- a/apps/run/metadata.json +++ b/apps/run/metadata.json @@ -31,7 +31,7 @@ }, { "name": "run_karvonnen", - "url": "run_karvonnen.js" + "url": "karvonnen.js" } ], "data": [ diff --git a/apps/run/settings.js b/apps/run/settings.js index 0312200a3..fa7af36dc 100644 --- a/apps/run/settings.js +++ b/apps/run/settings.js @@ -31,6 +31,10 @@ notifications: [], }, }, + HRM: { + min: 65, + max: 165, + }, }, storage.readJSON(SETTINGS_FILE, 1) || {}); function saveSettings() { storage.write(SETTINGS_FILE, settings) @@ -125,5 +129,29 @@ 'Box 6': getBoxChooser("B6"), }); menu[/*LANG*/"Boxes"] = function() { E.showMenu(boxMenu)}; + + var hrmMenu = { + '< Back': function() { E.showMenu(menu) }, + } + + menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; + hrmMenu[/*LANG*/"min"] = { + min: 0, max: 100, + value: settings.HRM.min|65, + format: v => v, + onchange: v => { + settings[HRM][min] = v; + saveSettings(); + }, + } + hrmMenu[/*LANG*/"max"] = { + min: 120, max: 190, + value: settings.HRM.min|165, + format: v => v, + onchange: v => { + settings[HRM][max] = v; + saveSettings(); + }, + } E.showMenu(menu); }) From ef3794cfade6856f0aaa136ccccb1462ee15e29d Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 12:28:33 +0100 Subject: [PATCH 0287/1725] fix hrm max setting --- apps/run/app.js | 2 +- apps/run/karvonnen.js | 6 +++--- apps/run/settings.js | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/run/app.js b/apps/run/app.js index 0d3b3e57a..266b2d90a 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -178,7 +178,7 @@ function stopRunUI() { // Define the function to go back and foth between the different UI's function swipeHandler(LR,_) { if (LR==-1 && karvonnenActive && !isMenuDisplayed) run(); - if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); require("run_karvonnen").show();} + if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); require("run_karvonnen").show(settings.HRM);} } // Listen for swipes with the swipeHandler diff --git a/apps/run/karvonnen.js b/apps/run/karvonnen.js index c1673f862..54be4458c 100644 --- a/apps/run/karvonnen.js +++ b/apps/run/karvonnen.js @@ -1,5 +1,5 @@ // Korvonnen pasted inside a function -exports.show = function karvonnen() { +exports.show = function karvonnen(hrmSettings) { //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ //The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. //Other methods are even more approximative. @@ -18,8 +18,8 @@ exports.show = function karvonnen() { // HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. //get the hrr (heart rate reserve). // I put random data here, but this has to come as a menu in the settings section so that users can change it. - let minhr = 48; - let maxhr = 187; + let minhr = hrmSettings.min; + let maxhr = hrmSettings.max; function calculatehrr(minhr, maxhr) { return maxhr - minhr;} diff --git a/apps/run/settings.js b/apps/run/settings.js index fa7af36dc..8d44293bf 100644 --- a/apps/run/settings.js +++ b/apps/run/settings.js @@ -146,7 +146,7 @@ } hrmMenu[/*LANG*/"max"] = { min: 120, max: 190, - value: settings.HRM.min|165, + value: settings.HRM.max|165, format: v => v, onchange: v => { settings[HRM][max] = v; From 553b2cf7fc6b81ae878ef6d1c2fd6c8bde0baf27 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 12:34:33 +0100 Subject: [PATCH 0288/1725] fix hrm max setting --- apps/run/settings.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/run/settings.js b/apps/run/settings.js index 8d44293bf..e19594f64 100644 --- a/apps/run/settings.js +++ b/apps/run/settings.js @@ -137,7 +137,7 @@ menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; hrmMenu[/*LANG*/"min"] = { min: 0, max: 100, - value: settings.HRM.min|65, + value: 65 | settings.HRM.min, format: v => v, onchange: v => { settings[HRM][min] = v; @@ -146,10 +146,10 @@ } hrmMenu[/*LANG*/"max"] = { min: 120, max: 190, - value: settings.HRM.max|165, + value: 165 | settings.HRM.max, format: v => v, onchange: v => { - settings[HRM][max] = v; + settings.HRM.max = v; saveSettings(); }, } From fd1c3f1f157473098cf509c5d939a7ee8f382b31 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 12:38:56 +0100 Subject: [PATCH 0289/1725] fix hrm min setting --- apps/run/settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/run/settings.js b/apps/run/settings.js index e19594f64..08d4000d3 100644 --- a/apps/run/settings.js +++ b/apps/run/settings.js @@ -140,7 +140,7 @@ value: 65 | settings.HRM.min, format: v => v, onchange: v => { - settings[HRM][min] = v; + settings.HRM.min = v; saveSettings(); }, } From 5575c4e36a010567ed2c2956bf3d968ec735fa30 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 12:50:42 +0100 Subject: [PATCH 0290/1725] fix hrm min setting --- apps/run/settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/run/settings.js b/apps/run/settings.js index 08d4000d3..f8362f5bc 100644 --- a/apps/run/settings.js +++ b/apps/run/settings.js @@ -136,7 +136,7 @@ menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; hrmMenu[/*LANG*/"min"] = { - min: 0, max: 100, + min: 1, max: 100, value: 65 | settings.HRM.min, format: v => v, onchange: v => { From 0d27662f1676ff4ff7d1e61d34a296f8f104a6b3 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 12:57:02 +0100 Subject: [PATCH 0291/1725] try fix settings min --- apps/run/settings.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/run/settings.js b/apps/run/settings.js index f8362f5bc..39bb3cee1 100644 --- a/apps/run/settings.js +++ b/apps/run/settings.js @@ -147,9 +147,9 @@ hrmMenu[/*LANG*/"max"] = { min: 120, max: 190, value: 165 | settings.HRM.max, - format: v => v, - onchange: v => { - settings.HRM.max = v; + format: w => w, + onchange: w => { + settings.HRM.max = w; saveSettings(); }, } From 4be7a7ad2c8c9453009b9b02c3e73acc0ef8c0f3 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 13:11:01 +0100 Subject: [PATCH 0292/1725] settings fix again --- apps/run/settings.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/run/settings.js b/apps/run/settings.js index 39bb3cee1..d87a770e9 100644 --- a/apps/run/settings.js +++ b/apps/run/settings.js @@ -138,18 +138,18 @@ hrmMenu[/*LANG*/"min"] = { min: 1, max: 100, value: 65 | settings.HRM.min, - format: v => v, - onchange: v => { - settings.HRM.min = v; + format: w => w, + onchange: w => { + settings.HRM.min = w; saveSettings(); }, } hrmMenu[/*LANG*/"max"] = { min: 120, max: 190, value: 165 | settings.HRM.max, - format: w => w, - onchange: w => { - settings.HRM.max = w; + format: v => v, + onchange: v => { + settings.HRM.max = v; saveSettings(); }, } From eac4dab5525535c41a666189da5f2b5f2b14baf0 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 13:23:23 +0100 Subject: [PATCH 0293/1725] maybe now hrm setting work... --- apps/run/settings.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/run/settings.js b/apps/run/settings.js index d87a770e9..050eed4b8 100644 --- a/apps/run/settings.js +++ b/apps/run/settings.js @@ -137,7 +137,7 @@ menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; hrmMenu[/*LANG*/"min"] = { min: 1, max: 100, - value: 65 | settings.HRM.min, + value: settings.HRM.min, format: w => w, onchange: w => { settings.HRM.min = w; @@ -146,7 +146,7 @@ } hrmMenu[/*LANG*/"max"] = { min: 120, max: 190, - value: 165 | settings.HRM.max, + value: settings.HRM.max, format: v => v, onchange: v => { settings.HRM.max = v; From 4f0df4c8726abb1ba53f66428d2526d341afa9d2 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 17:48:17 +0100 Subject: [PATCH 0294/1725] karvonnen UI now updates with bpm from hrm --- apps/run/app.js | 19 +++++--- apps/run/karvonnen.js | 103 ++++++++++++++++++++++++++++-------------- 2 files changed, 80 insertions(+), 42 deletions(-) diff --git a/apps/run/app.js b/apps/run/app.js index 266b2d90a..74e2a0f0f 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -96,7 +96,7 @@ function onStartStop() { let lc = []; // Load stats in pair by pair for (let i=0;i= maxhr - 2) {g.clear();(getzonealert());} -} + //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. + function drawZones() { + if (hr <= hrr*0.6 + minhr) getzone1(); + else if (hr <= hrr*0.64 + minhr) getzone2a(); + else if (hr <= hrr*0.67 + minhr) getzone2b(); + else if (hr <= hrr * 0.7 + minhr) getzone2c(); + else if (hr <= hrr * 0.74 + minhr) getzone3a(); + else if (hr <= hrr * 0.77 + minhr) getzone3b(); + else if (hr <= hrr * 0.8 + minhr) getzone3c(); + else if (hr <= hrr * 0.84 + minhr) getzone4a(); + else if (hr <= hrr * 0.87 + minhr) getzone4b(); + else if (hr <= hrr * 0.9 + minhr) getzone4c(); + else if (hr <= hrr * 0.94 + minhr) getzone5a(); + else if (hr <= hrr * 0.96 + minhr) getzone5b(); + else if (hr <= hrr * 0.98 + minhr) getzone5c(); + else if (hr >= maxhr - 2) {g.clear();getzonealert();} + } + drawZones(); + + let hrLast; + function updateUI() { + hrLast = hr; + hr = exsHrmStats.getValue(); + if (hr!=hrLast) { + drawHR(); + drawBackGround(); + drawZones(); + } + } + updateUI(); + + karvonnenInterval = setInterval(function() { + if (!isMenuDisplayed && karvonnenActive) updateUI(); + }, 1000); + + return karvonnenInterval; +}; From 4293d9db485f823efb9e16072496073d6d899dea Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 18:49:39 +0100 Subject: [PATCH 0295/1725] update UI pretty lazily, fix color of bpm --- apps/run/karvonnen.js | 57 ++++++++++++++++++++++--------------------- 1 file changed, 29 insertions(+), 28 deletions(-) diff --git a/apps/run/karvonnen.js b/apps/run/karvonnen.js index 22b5e06d6..5675d5467 100644 --- a/apps/run/karvonnen.js +++ b/apps/run/karvonnen.js @@ -43,6 +43,7 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { // HR data: large, readable, in the middle of the screen function drawHR() { g.clearRect(62,66,62+80,70+40); + g.setColor(1,1,1); g.setFont("Vector",50); g.drawString(hr, 62,66); } @@ -84,19 +85,19 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { } drawBackGround(); - function getzone1() {g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} - function getzone2a() {g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} - function getzone2b() {g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} - function getzone2c() {g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} - function getzone3a() {g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} - function getzone3b() {g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} - function getzone3c() {g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} - function getzone4a() {g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} - function getzone4b() {g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} - function getzone4c() {g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} - function getzone5a() {g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} - function getzone5b() {g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} - function getzone5c() {g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} + function getzone1() {drawBackGround();g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} + function getzone2a() {drawBackGround();g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} + function getzone2b() {drawBackGround();g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} + function getzone2c() {drawBackGround();g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} + function getzone3a() {drawBackGround();g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} + function getzone3b() {drawBackGround();g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} + function getzone3c() {drawBackGround();g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} + function getzone4a() {drawBackGround();g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} + function getzone4b() {drawBackGround();g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} + function getzone4c() {drawBackGround();g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} + function getzone5a() {drawBackGround();g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} + function getzone5b() {drawBackGround();g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} + function getzone5c() {drawBackGround();g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} function getzonealert() { const HRzonemax = require("graphics_utils"); @@ -110,21 +111,22 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { } //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. + let subZoneLast; function drawZones() { - if (hr <= hrr*0.6 + minhr) getzone1(); - else if (hr <= hrr*0.64 + minhr) getzone2a(); - else if (hr <= hrr*0.67 + minhr) getzone2b(); - else if (hr <= hrr * 0.7 + minhr) getzone2c(); - else if (hr <= hrr * 0.74 + minhr) getzone3a(); - else if (hr <= hrr * 0.77 + minhr) getzone3b(); - else if (hr <= hrr * 0.8 + minhr) getzone3c(); - else if (hr <= hrr * 0.84 + minhr) getzone4a(); - else if (hr <= hrr * 0.87 + minhr) getzone4b(); - else if (hr <= hrr * 0.9 + minhr) getzone4c(); - else if (hr <= hrr * 0.94 + minhr) getzone5a(); - else if (hr <= hrr * 0.96 + minhr) getzone5b(); - else if (hr <= hrr * 0.98 + minhr) getzone5c(); - else if (hr >= maxhr - 2) {g.clear();getzonealert();} + if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getzone1();}} + else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getzone2a();}} + else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getzone2b();}} + else if (hr <= hrr * 0.7 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getzone2c();}} + else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getzone3a();}} + else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getzone3b();}} + else if (hr <= hrr * 0.8 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getzone3c();}} + else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getzone4a();}} + else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getzone4b();}} + else if (hr <= hrr * 0.9 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getzone4c();}} + else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getzone5a();}} + else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getzone5b();}} + else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getzone5c();}} + else if (hr >= maxhr - 2) {if (subZoneLast!=13) {subZoneLast=13; g.clear();getzonealert();}} } drawZones(); @@ -134,7 +136,6 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { hr = exsHrmStats.getValue(); if (hr!=hrLast) { drawHR(); - drawBackGround(); drawZones(); } } From 085cc6c84e7112ba9a15d0e411b3034a753fdd12 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 19:23:41 +0100 Subject: [PATCH 0296/1725] add defaults to hrm settings --- apps/run/app.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/run/app.js b/apps/run/app.js index 74e2a0f0f..018bd1bde 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -42,6 +42,10 @@ let settings = Object.assign({ value: 0, notifications: [], }, + HRM: { + min: 65, + max: 170, + }, }, }, require("Storage").readJSON("run.json", 1) || {}); let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); From 2c4129d91f93e4e2b49f3bdc9639ee67e4884b2d Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 19 Feb 2023 22:58:27 +0100 Subject: [PATCH 0297/1725] after many changes and some testing many things seem to function very well --- apps/run/karvonnen.js | 125 ++++++++++++++++++++++++------------------ 1 file changed, 71 insertions(+), 54 deletions(-) diff --git a/apps/run/karvonnen.js b/apps/run/karvonnen.js index 5675d5467..9f45f67b9 100644 --- a/apps/run/karvonnen.js +++ b/apps/run/karvonnen.js @@ -3,16 +3,19 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ //The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. //Other methods are even more approximative. + wu = require("widget_utils"); wu.hide(); let R = Bangle.appRect; g.reset().clearRect(R); - g.drawLine(40,64,88,52,136,64); - g.drawLine(88,52,136,64); - g.drawLine(40,112,88,124); - g.drawLine(88,124,132,112); - g.setFont("Vector",20); + function drawLines() { + g.drawLine(40,64,88,52,136,64); + g.drawLine(88,52,136,64); + g.drawLine(40,112,88,124); + g.drawLine(88,124,132,112); + g.setFont("Vector",20); + } //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) // HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. @@ -42,7 +45,7 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { // HR data: large, readable, in the middle of the screen function drawHR() { - g.clearRect(62,66,62+80,70+40); + g.clearRect(62,66,62+90,70+40); g.setColor(1,1,1); g.setFont("Vector",50); g.drawString(hr, 62,66); @@ -56,26 +59,9 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { let minRadius = 0.38 * R.h; //g.getWidth(); let maxRadius = 0.50 * R.h; //g.getWidth(); - //####### A function to simplify a bit the code ###### - function simplify (sA, eA, Z) { - const zone= require("graphics_utils"); - let startAngle = zone.degreesToRadians(sA); - let endAngle = zone.degreesToRadians(eA); - zone.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); - g.setFont("Vector",24); - g.drawString(Z, 29,80); - } - - //####### A function to simplify next&previous zones ###### - function zoning (max, min) { - g.setFont("Vector",20); - g.clearRect(56,28,56+20*3,28+20).clearRect(60,128,60+20*3,128+20); - g.drawString(max, 56,28);g.drawString(min, 60,128); - } - //draw background image (dithered green zones)(I should draw different zones in different dithered colors) const HRzones= require("graphics_utils"); - let minRadiusz = 0.44 * R.w;//g.getWidth(); + let minRadiusz = 0.44 * R.h;//g.getWidth(); let startAngle = HRzones.degreesToRadians(-88.5); let endAngle = HRzones.degreesToRadians(268.5); @@ -85,24 +71,53 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { } drawBackGround(); - function getzone1() {drawBackGround();g.setColor("#00ffff");{(simplify (-88.5, -20, "Z1"));}zoning(minzone2, minhr);} - function getzone2a() {drawBackGround();g.setColor("#00ff00");{(simplify (-43.5, -21.5, "Z2"));}zoning(maxzone2, minzone2);} - function getzone2b() {drawBackGround();g.setColor("#00ff00");{(simplify (-20, 1.5, "Z2"));}zoning(maxzone2, minzone2);} - function getzone2c() {drawBackGround();g.setColor("#00ff00");{(simplify (3, 24, "Z2"));}zoning(maxzone2, minzone2);} - function getzone3a() {drawBackGround();g.setColor("#ffff00");{(simplify (25.5, 46.5, "Z3"));}zoning(maxzone3, maxzone2);} - function getzone3b() {drawBackGround();g.setColor("#ffff00");{(simplify (48, 69, "Z3"));}zoning(maxzone3, maxzone2);} - function getzone3c() {drawBackGround();g.setColor("#ffff00");{(simplify (70.5, 91.5, "Z3"));}zoning(maxzone3, maxzone2);} - function getzone4a() {drawBackGround();g.setColor("#ff8000");{(simplify (91, 114.5, "Z4"));}zoning(maxzone4, maxzone3);} - function getzone4b() {drawBackGround();g.setColor("#ff8000");{(simplify (116, 137.5, "Z4"));}zoning(maxzone4, maxzone3);} - function getzone4c() {drawBackGround();g.setColor("#ff8000");{(simplify (139, 160, "Z4"));}zoning(maxzone4, maxzone3);} - function getzone5a() {drawBackGround();g.setColor("#ff0000");{(simplify (161.5, 182.5, "Z5"));}zoning(maxzone5, maxzone4);} - function getzone5b() {drawBackGround();g.setColor("#ff0000");{(simplify (184, 205, "Z5"));}zoning(maxzone5, maxzone4);} - function getzone5c() {drawBackGround();g.setColor("#ff0000");{(simplify (206.5, 227.5, "Z5"));}zoning(maxzone5, maxzone4);} + const zones = require("graphics_utils"); + //####### A function to simplify a bit the code ###### + function simplify (sA, eA, Z, currentZone, lastZone) { + let startAngle = zones.degreesToRadians(sA); + let endAngle = zones.degreesToRadians(eA); + if (currentZone == lastZone) zones.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); + else zones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + g.setFont("Vector",24); + g.clearRect(29,80,29+26,80+24); + g.drawString(Z, 29,80); + } + + //####### A function to simplify next&previous zones ###### + function zoning (max, min) { + g.setFont("Vector",20); + g.setColor(1,1,1); + g.clearRect(56,28,56+20*3,28+20).clearRect(60,128,60+20*3,128+20); + g.drawString(max, 56,28);g.drawString(min, 60,128); + } + + function clearInnerRing() { + g.setColor(0,0,0); + HRzones.fillArc(g, centreX, centreY, minRadius-1, minRadiusz, startAngle, endAngle); + } - function getzonealert() { + function getZone(zone) { + drawBackGround(); + clearInnerRing(); + if (zone >= 0) {g.setColor("#00ffff");{(simplify(-88.5, -45, "Z1", 0, zone));}zoning(minzone2, minhr);} + if (zone >= 1) {g.setColor("#00ff00");{(simplify(-43.5, -21.5, "Z2", 1, zone));}zoning(maxzone2, minzone2);} + if (zone >= 2) {g.setColor("#00ff00");{(simplify(-20, 1.5, "Z2", 2, zone));}zoning(maxzone2, minzone2);} + if (zone >= 3) {g.setColor("#00ff00");{(simplify(3, 24, "Z2", 3, zone));}zoning(maxzone2, minzone2);} + if (zone >= 4) {g.setColor("#ffff00");{(simplify(25.5, 46.5, "Z3", 4, zone));}zoning(maxzone3, maxzone2);} + if (zone >= 5) {g.setColor("#ffff00");{(simplify(48, 69, "Z3", 5, zone));}zoning(maxzone3, maxzone2);} + if (zone >= 6) {g.setColor("#ffff00");{(simplify(70.5, 91.5, "Z3", 6, zone));}zoning(maxzone3, maxzone2);} + if (zone >= 7) {g.setColor("#ff8000");{(simplify(93, 114.5, "Z4", 7, zone));}zoning(maxzone4, maxzone3);} + if (zone >= 8) {g.setColor("#ff8000");{(simplify(116, 137.5, "Z4", 8, zone));}zoning(maxzone4, maxzone3);} + if (zone >= 9) {g.setColor("#ff8000");{(simplify(139, 160, "Z4", 9, zone));}zoning(maxzone4, maxzone3);} + if (zone >= 10) {g.setColor("#ff0000");{(simplify(161.5, 182.5, "Z5", 10, zone));}zoning(maxzone5, maxzone4);} + if (zone >= 11) {g.setColor("#ff0000");{(simplify(184, 205, "Z5", 11, zone));}zoning(maxzone5, maxzone4);} + if (zone == 12) {g.setColor("#ff0000");{(simplify(206.5, 227.5, "Z5", 12, zone));}zoning(maxzone5, maxzone4);} + } + + function getZoneAlert() { const HRzonemax = require("graphics_utils"); let centreX1,centreY1,maxRadius1 = 1; - let minRadius = 0.40 * g.getWidth(); + let minRadius = 0.40 * R.h; let startAngle1 = HRzonemax.degreesToRadians(-90); let endAngle1 = HRzonemax.degreesToRadians(270); g.setFont("Vector",38);g.setColor("#ff0000"); @@ -113,23 +128,25 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. let subZoneLast; function drawZones() { - if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getzone1();}} - else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getzone2a();}} - else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getzone2b();}} - else if (hr <= hrr * 0.7 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getzone2c();}} - else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getzone3a();}} - else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getzone3b();}} - else if (hr <= hrr * 0.8 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getzone3c();}} - else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getzone4a();}} - else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getzone4b();}} - else if (hr <= hrr * 0.9 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getzone4c();}} - else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getzone5a();}} - else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getzone5b();}} - else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getzone5c();}} - else if (hr >= maxhr - 2) {if (subZoneLast!=13) {subZoneLast=13; g.clear();getzonealert();}} + if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawLines(); drawHR();} + + if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} + else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} + else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} + else if (hr <= hrr * 0.70 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getZone(subZoneLast);}} + else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getZone(subZoneLast);}} + else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getZone(subZoneLast);}} + else if (hr <= hrr * 0.80 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getZone(subZoneLast);}} + else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getZone(subZoneLast);}} + else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getZone(subZoneLast);}} + else if (hr <= hrr * 0.90 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getZone(subZoneLast);}} + else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getZone(subZoneLast);}} + else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getZone(subZoneLast);}} + else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getZone(subZoneLast);}} + else if (hr >= maxhr - 2) {if (subZoneLast!=13) {subZoneLast=13; g.clear();getZoneAlert();}} } drawZones(); - + let hrLast; function updateUI() { hrLast = hr; From 125a2361c71f372799dc2cf09acc38cc49976b76 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 20 Feb 2023 20:50:27 +0100 Subject: [PATCH 0298/1725] switch to run UI whenever pressing physical button --- apps/run/app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/run/app.js b/apps/run/app.js index 018bd1bde..e4a47ac86 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -45,7 +45,7 @@ let settings = Object.assign({ HRM: { min: 65, max: 170, - }, + } }, }, require("Storage").readJSON("run.json", 1) || {}); let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); @@ -121,7 +121,7 @@ lc.push({ type:"h", filly:1, c:[ // Now calculate the layout let layout = new Layout( { type:"v", c: lc -},{lazy:true, btns:[{ label:"START", cb: onStartStop, id:"button"}]}); +},{lazy:true, btns:[{ label:"START", cb: ()=>{if (karvonnenActive) {stopKarvonnenUI();run();}; onStartStop();}, id:"button"}]}); delete lc; layout.render(); From 8a3be33195a444b41c8049b71fe9b1ca9b4af420 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 20 Feb 2023 21:00:13 +0100 Subject: [PATCH 0299/1725] remove unnecessary semicolon --- apps/run/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/run/app.js b/apps/run/app.js index e4a47ac86..0718ea410 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -121,7 +121,7 @@ lc.push({ type:"h", filly:1, c:[ // Now calculate the layout let layout = new Layout( { type:"v", c: lc -},{lazy:true, btns:[{ label:"START", cb: ()=>{if (karvonnenActive) {stopKarvonnenUI();run();}; onStartStop();}, id:"button"}]}); +},{lazy:true, btns:[{ label:"START", cb: ()=>{if (karvonnenActive) {stopKarvonnenUI();run();} onStartStop();}, id:"button"}]}); delete lc; layout.render(); From 554ce161224c41cb1306c3cf1d2cb3db8858f62b Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 20 Feb 2023 21:10:12 +0100 Subject: [PATCH 0300/1725] ChangeLog: alpha->beta --- apps/run/ChangeLog | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/run/ChangeLog b/apps/run/ChangeLog index 7b42b5ded..44c391d95 100644 --- a/apps/run/ChangeLog +++ b/apps/run/ChangeLog @@ -13,5 +13,5 @@ 0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working -0.15: (alpha) Swipe to intensity interface a la Korvonnen (curtesy of - [FTeacher](https://github.com/f-teacher)) +0.15: (beta) Swipe to intensity interface a la Korvonnen (curtesy of + FTeacher at https://github.com/f-teacher) From 24d058bd9fbd8ad11386beffd5ed72587a04d26e Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Tue, 21 Feb 2023 10:17:07 +0100 Subject: [PATCH 0301/1725] fix HRM settings default --- apps/run/app.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/run/app.js b/apps/run/app.js index 0718ea410..06cdf90d1 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -42,11 +42,11 @@ let settings = Object.assign({ value: 0, notifications: [], }, - HRM: { - min: 65, - max: 170, - } }, + HRM: { + min: 65, + max: 170, + } }, require("Storage").readJSON("run.json", 1) || {}); let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); let exs = ExStats.getStats(statIDs, settings); From be3218517b98c6781dac08745356db1abedac049 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 00:18:38 +0100 Subject: [PATCH 0302/1725] tweaks to placing of things --- apps/run/ChangeLog | 2 +- apps/run/karvonnen.js | 164 +++++++++++++++++++++++++----------------- 2 files changed, 100 insertions(+), 66 deletions(-) diff --git a/apps/run/ChangeLog b/apps/run/ChangeLog index 44c391d95..81678d788 100644 --- a/apps/run/ChangeLog +++ b/apps/run/ChangeLog @@ -13,5 +13,5 @@ 0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working -0.15: (beta) Swipe to intensity interface a la Korvonnen (curtesy of +0.15: (beta) Swipe to intensity interface a la Karvonnen (curtesy of FTeacher at https://github.com/f-teacher) diff --git a/apps/run/karvonnen.js b/apps/run/karvonnen.js index 9f45f67b9..4758d3093 100644 --- a/apps/run/karvonnen.js +++ b/apps/run/karvonnen.js @@ -1,20 +1,27 @@ -// Korvonnen pasted inside a function exports.show = function karvonnen(hrmSettings, exsHrmStats) { //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ //The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. //Other methods are even more approximative. - wu = require("widget_utils"); + let wu = require("widget_utils"); wu.hide(); let R = Bangle.appRect; + - g.reset().clearRect(R); + g.reset().clearRect(R).setFontAlign(0,0,0); + + const x = "x"; const y = "y"; + function Rdiv(xOrY, divisor) { // Used when placing things on the screen + return xOrY=="x" ? (R.x + (R.w-1)/divisor):(R.y + (R.h-1)/divisor); + } function drawLines() { - g.drawLine(40,64,88,52,136,64); - g.drawLine(88,52,136,64); - g.drawLine(40,112,88,124); - g.drawLine(88,124,132,112); - g.setFont("Vector",20); + g.setColor(g.theme.fg); + // Upper + g.drawLine(Rdiv(x,175/40), Rdiv(y,175/64), Rdiv(x,2), Rdiv(y,175/52)); + g.drawLine(Rdiv(x,2), Rdiv(y,175/52), Rdiv(x,175/135), Rdiv(y,175/64)); + // Lower + g.drawLine(Rdiv(x,175/40), Rdiv(y,175/110), Rdiv(x,2), Rdiv(y,175/122)); + g.drawLine(Rdiv(x,2), Rdiv(y,175/122), Rdiv(x,175/135), Rdiv(y,175/110)); } //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) @@ -42,26 +49,44 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { let maxzone3 = hrr * 0.8 + minhr; let maxzone4 = hrr * 0.9 + minhr; let maxzone5 = hrr * 0.99 + minhr; - + // HR data: large, readable, in the middle of the screen function drawHR() { - g.clearRect(62,66,62+90,70+40); - g.setColor(1,1,1); + g.setFontAlign(-1,0,0); + g.clearRect(Rdiv(x,11/4),Rdiv(y,2)-25,Rdiv(x,11/4)+50*2,Rdiv(y,2)+25); + g.setColor(g.theme.fg); g.setFont("Vector",50); - g.drawString(hr, 62,66); + g.drawString(hr, Rdiv(x,11/4), Rdiv(y,2)+4); } - drawHR(); + + function drawWaitHR() { + g.setFontAlign(0,0,0); + //g.clearRect(62,66,62+90,70+40); + g.setColor(g.theme.fg); + g.setFont("Vector",50); + g.drawString("--", Rdiv(x,2), Rdiv(y,2)+4); + + // draw values of upper and lower limit of current zone + g.setFont("Vector",20); + g.setColor(g.theme.fg); + g.drawString("--", Rdiv(x,2), Rdiv(y,9/2)); + g.drawString("--", Rdiv(x,2), Rdiv(y,9/7)); + + g.setFont("Vector",24); + g.drawString("Z-", Rdiv(x,4.3), Rdiv(y,2)+2); + } + //These functions call arcs to show different HR zones. //To shorten the code, I'll reference some letiables and reuse them. - let centreX = R.x + 0.5 * R.w; //g.getWidth(); - let centreY = R.y + 0.5 * R.h; //g.getWidth(); - let minRadius = 0.38 * R.h; //g.getWidth(); - let maxRadius = 0.50 * R.h; //g.getWidth(); + let centreX = R.x + 0.5 * R.w; + let centreY = R.y + 0.5 * R.h; + let minRadius = 0.38 * R.h; + let maxRadius = 0.50 * R.h; //draw background image (dithered green zones)(I should draw different zones in different dithered colors) const HRzones= require("graphics_utils"); - let minRadiusz = 0.44 * R.h;//g.getWidth(); + let minRadiusz = 0.44 * R.h; let startAngle = HRzones.degreesToRadians(-88.5); let endAngle = HRzones.degreesToRadians(268.5); @@ -69,7 +94,6 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { g.setColor("#002200"); HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); } - drawBackGround(); const zones = require("graphics_utils"); //####### A function to simplify a bit the code ###### @@ -79,39 +103,42 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { if (currentZone == lastZone) zones.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); else zones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); g.setFont("Vector",24); - g.clearRect(29,80,29+26,80+24); - g.drawString(Z, 29,80); + g.clearRect(Rdiv(x,4.3)-12, Rdiv(y,2)+2-12,Rdiv(x,4.3)+12, Rdiv(y,2)+2+12); + g.setFontAlign(0,0,0); + g.drawString(Z, Rdiv(x,4.3), Rdiv(y,2)+2); } - //####### A function to simplify next&previous zones ###### - function zoning (max, min) { + function zoning (max, min) { // draw values of upper and lower limit of current zone g.setFont("Vector",20); - g.setColor(1,1,1); - g.clearRect(56,28,56+20*3,28+20).clearRect(60,128,60+20*3,128+20); - g.drawString(max, 56,28);g.drawString(min, 60,128); + g.setColor(g.theme.fg); + g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/2)-10,Rdiv(x,2)+20*2, Rdiv(y,9/2)+10); + g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/7)-10,Rdiv(x,2)+20*2, Rdiv(y,9/7)+10); + g.setFontAlign(0,0,0); + g.drawString(max, Rdiv(x,2), Rdiv(y,9/2)); + g.drawString(min, Rdiv(x,2), Rdiv(y,9/7)); } - function clearInnerRing() { - g.setColor(0,0,0); + function clearCurrentZone() { // Clears the extension of the current zone by painting the extension area in background color + g.setColor(g.theme.bg); HRzones.fillArc(g, centreX, centreY, minRadius-1, minRadiusz, startAngle, endAngle); } function getZone(zone) { drawBackGround(); - clearInnerRing(); - if (zone >= 0) {g.setColor("#00ffff");{(simplify(-88.5, -45, "Z1", 0, zone));}zoning(minzone2, minhr);} - if (zone >= 1) {g.setColor("#00ff00");{(simplify(-43.5, -21.5, "Z2", 1, zone));}zoning(maxzone2, minzone2);} - if (zone >= 2) {g.setColor("#00ff00");{(simplify(-20, 1.5, "Z2", 2, zone));}zoning(maxzone2, minzone2);} - if (zone >= 3) {g.setColor("#00ff00");{(simplify(3, 24, "Z2", 3, zone));}zoning(maxzone2, minzone2);} - if (zone >= 4) {g.setColor("#ffff00");{(simplify(25.5, 46.5, "Z3", 4, zone));}zoning(maxzone3, maxzone2);} - if (zone >= 5) {g.setColor("#ffff00");{(simplify(48, 69, "Z3", 5, zone));}zoning(maxzone3, maxzone2);} - if (zone >= 6) {g.setColor("#ffff00");{(simplify(70.5, 91.5, "Z3", 6, zone));}zoning(maxzone3, maxzone2);} - if (zone >= 7) {g.setColor("#ff8000");{(simplify(93, 114.5, "Z4", 7, zone));}zoning(maxzone4, maxzone3);} - if (zone >= 8) {g.setColor("#ff8000");{(simplify(116, 137.5, "Z4", 8, zone));}zoning(maxzone4, maxzone3);} - if (zone >= 9) {g.setColor("#ff8000");{(simplify(139, 160, "Z4", 9, zone));}zoning(maxzone4, maxzone3);} - if (zone >= 10) {g.setColor("#ff0000");{(simplify(161.5, 182.5, "Z5", 10, zone));}zoning(maxzone5, maxzone4);} - if (zone >= 11) {g.setColor("#ff0000");{(simplify(184, 205, "Z5", 11, zone));}zoning(maxzone5, maxzone4);} - if (zone == 12) {g.setColor("#ff0000");{(simplify(206.5, 227.5, "Z5", 12, zone));}zoning(maxzone5, maxzone4);} + clearCurrentZone(); + if (zone >= 0) {zoning(minzone2, minhr);g.setColor("#00ffff");simplify(-88.5, -45, "Z1", 0, zone);} + if (zone >= 1) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-43.5, -21.5, "Z2", 1, zone);} + if (zone >= 2) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-20, 1.5, "Z2", 2, zone);} + if (zone >= 3) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(3, 24, "Z2", 3, zone);} + if (zone >= 4) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(25.5, 46.5, "Z3", 4, zone);} + if (zone >= 5) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(48, 69, "Z3", 5, zone);} + if (zone >= 6) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(70.5, 91.5, "Z3", 6, zone);} + if (zone >= 7) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(93, 114.5, "Z4", 7, zone);} + if (zone >= 8) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(116, 137.5, "Z4", 8, zone);} + if (zone >= 9) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(139, 160, "Z4", 9, zone);} + if (zone >= 10) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(161.5, 182.5, "Z5", 10, zone);} + if (zone >= 11) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(184, 205, "Z5", 11, zone);} + if (zone == 12) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(206.5, 227.5, "Z5", 12, zone);} } function getZoneAlert() { @@ -128,27 +155,32 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. let subZoneLast; function drawZones() { - if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawLines(); drawHR();} - - if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} - else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} - else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} - else if (hr <= hrr * 0.70 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getZone(subZoneLast);}} - else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getZone(subZoneLast);}} - else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getZone(subZoneLast);}} - else if (hr <= hrr * 0.80 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getZone(subZoneLast);}} - else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getZone(subZoneLast);}} - else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getZone(subZoneLast);}} - else if (hr <= hrr * 0.90 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getZone(subZoneLast);}} - else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getZone(subZoneLast);}} - else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getZone(subZoneLast);}} - else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getZone(subZoneLast);}} - else if (hr >= maxhr - 2) {if (subZoneLast!=13) {subZoneLast=13; g.clear();getZoneAlert();}} + if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawLines(); drawHR();} // Reset UI when coming down from zone alert. + if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} // Z1 + else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} // Z2a + else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} // Z2b + else if (hr <= hrr * 0.70 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getZone(subZoneLast);}} // Z2c + else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getZone(subZoneLast);}} // Z3a + else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getZone(subZoneLast);}} // Z3b + else if (hr <= hrr * 0.80 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getZone(subZoneLast);}} // Z3c + else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getZone(subZoneLast);}} // Z4a + else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getZone(subZoneLast);}} // Z4b + else if (hr <= hrr * 0.90 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getZone(subZoneLast);}} // Z4c + else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getZone(subZoneLast);}} // Z5a + else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getZone(subZoneLast);}} // Z5b + else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getZone(subZoneLast);}} // Z5c + else if (hr >= maxhr - 2) {subZoneLast=13; g.clear();getZoneAlert();} // Alert } - drawZones(); + function initDraw() { + drawLines(); + drawWaitHR(); + drawBackGround(); + //drawZones(); + } + let hrLast; - function updateUI() { + function updateUI() { // Update UI, only draw if warranted by change in HR hrLast = hr; hr = exsHrmStats.getValue(); if (hr!=hrLast) { @@ -156,11 +188,13 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { drawZones(); } } - updateUI(); - - karvonnenInterval = setInterval(function() { - if (!isMenuDisplayed && karvonnenActive) updateUI(); - }, 1000); + initDraw(); + + // check for updates every second. + karvonnenInterval = setInterval(function() { + if (!isMenuDisplayed && karvonnenActive) updateUI(); + }, 1000); + return karvonnenInterval; }; From c9339fff94b744f3575ff4c0c156a992983c4326 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 10:45:43 +0100 Subject: [PATCH 0303/1725] tweaks to colors and placings --- apps/run/karvonnen.js | 67 +++++++++++++++++++++++++++---------------- 1 file changed, 42 insertions(+), 25 deletions(-) diff --git a/apps/run/karvonnen.js b/apps/run/karvonnen.js index 4758d3093..b199259a4 100644 --- a/apps/run/karvonnen.js +++ b/apps/run/karvonnen.js @@ -10,18 +10,33 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { g.reset().clearRect(R).setFontAlign(0,0,0); const x = "x"; const y = "y"; - function Rdiv(xOrY, divisor) { // Used when placing things on the screen - return xOrY=="x" ? (R.x + (R.w-1)/divisor):(R.y + (R.h-1)/divisor); + function Rdiv(axis, divisor) { // Used when placing things on the screen. + return axis=="x" ? (R.x + (R.w-1)/divisor):(R.y + (R.h-1)/divisor); } + + let arrowData = { // Used to update points in the drawArrows function. + x: [ + 175/40, + 2, + 175/135, + ], + y: [ + 175/64, + 175/52, + 175/110, + 175/122, + ], - function drawLines() { + }; + + function drawArrows() { g.setColor(g.theme.fg); // Upper - g.drawLine(Rdiv(x,175/40), Rdiv(y,175/64), Rdiv(x,2), Rdiv(y,175/52)); - g.drawLine(Rdiv(x,2), Rdiv(y,175/52), Rdiv(x,175/135), Rdiv(y,175/64)); + g.drawLine(Rdiv(x,arrowData.x[0]), Rdiv(y,arrowData.y[0]), Rdiv(x,arrowData.x[1]), Rdiv(y,arrowData.y[1])); + g.drawLine(Rdiv(x,arrowData.x[1]), Rdiv(y,arrowData.y[1]), Rdiv(x,arrowData.x[2]), Rdiv(y,arrowData.y[0])); // Lower - g.drawLine(Rdiv(x,175/40), Rdiv(y,175/110), Rdiv(x,2), Rdiv(y,175/122)); - g.drawLine(Rdiv(x,2), Rdiv(y,175/122), Rdiv(x,175/135), Rdiv(y,175/110)); + g.drawLine(Rdiv(x,arrowData.x[0]), Rdiv(y,arrowData.y[2]), Rdiv(x,arrowData.x[1]), Rdiv(y,arrowData.y[3])); + g.drawLine(Rdiv(x,arrowData.x[1]), Rdiv(y,arrowData.y[3]), Rdiv(x,arrowData.x[2]), Rdiv(y,arrowData.y[2])); } //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) @@ -60,20 +75,20 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { } function drawWaitHR() { + g.setColor(g.theme.fg); + // Waiting for HRM g.setFontAlign(0,0,0); - //g.clearRect(62,66,62+90,70+40); - g.setColor(g.theme.fg); g.setFont("Vector",50); - g.drawString("--", Rdiv(x,2), Rdiv(y,2)+4); - - // draw values of upper and lower limit of current zone - g.setFont("Vector",20); - g.setColor(g.theme.fg); - g.drawString("--", Rdiv(x,2), Rdiv(y,9/2)); - g.drawString("--", Rdiv(x,2), Rdiv(y,9/7)); - + g.drawString("--", Rdiv(x,2)+4, Rdiv(y,2)+4); + + // Waiting for current Zone g.setFont("Vector",24); g.drawString("Z-", Rdiv(x,4.3), Rdiv(y,2)+2); + + // waiting for upper and lower limit of current zone + g.setFont("Vector",20); + g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/2)); + g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/7)); } //These functions call arcs to show different HR zones. @@ -90,8 +105,8 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { let startAngle = HRzones.degreesToRadians(-88.5); let endAngle = HRzones.degreesToRadians(268.5); - function drawBackGround() { - g.setColor("#002200"); + function drawBgArc() { + g.setColor(g.theme.dark==false?0xC618:"#002200"); HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); } @@ -124,7 +139,7 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { } function getZone(zone) { - drawBackGround(); + drawBgArc(); clearCurrentZone(); if (zone >= 0) {zoning(minzone2, minhr);g.setColor("#00ffff");simplify(-88.5, -45, "Z1", 0, zone);} if (zone >= 1) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-43.5, -21.5, "Z2", 1, zone);} @@ -155,7 +170,7 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. let subZoneLast; function drawZones() { - if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawLines(); drawHR();} // Reset UI when coming down from zone alert. + if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawArrows(); drawHR();} // Reset UI when coming down from zone alert. if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} // Z1 else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} // Z2a else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} // Z2b @@ -173,20 +188,22 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { } function initDraw() { - drawLines(); + drawArrows(); drawWaitHR(); - drawBackGround(); + drawBgArc(); //drawZones(); } let hrLast; - function updateUI() { // Update UI, only draw if warranted by change in HR + //h = 0; // Used to force hr update to trigger draws, together with `if (h!=0) hr = h;` below. + function updateUI() { // Update UI, only draw if warranted by change in HR. hrLast = hr; hr = exsHrmStats.getValue(); + //if (h!=0) hr = h; if (hr!=hrLast) { drawHR(); drawZones(); - } + } //g.setColor(g.theme.fg).drawLine(175/2,0,175/2,175).drawLine(0,175/2,175,175/2); // Used to align UI elements. } initDraw(); From c41adc704ead69f03a9bb060ce78d582652b4725 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 12:15:20 +0100 Subject: [PATCH 0304/1725] change to use eval for launching karvonnen ui --- apps/run/app.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/run/app.js b/apps/run/app.js index 06cdf90d1..1f1e09915 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -42,11 +42,11 @@ let settings = Object.assign({ value: 0, notifications: [], }, + HRM: { + min: 65, + max: 170, + } }, - HRM: { - min: 65, - max: 170, - } }, require("Storage").readJSON("run.json", 1) || {}); let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); let exs = ExStats.getStats(statIDs, settings); @@ -188,7 +188,7 @@ let karvonnenInterval; // Define the function to go back and foth between the different UI's function swipeHandler(LR,_) { if (LR==-1 && karvonnenActive && !isMenuDisplayed) {stopKarvonnenUI(); run();} - if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); karvonnenInterval = require("run_karvonnen").show(settings.HRM, exs.stats.bpm);} + if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); karvonnenInterval = eval(require("Storage").read("run_karvonnen"))(settings.HRM, exs.stats.bpm);} } // Listen for swipes with the swipeHandler Bangle.on("swipe", swipeHandler); From ce2bd39456e722542efd7de91a562a1a6abfad9e Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 12:33:51 +0100 Subject: [PATCH 0305/1725] remove export in karvonnen.js --- apps/run/karvonnen.js | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/apps/run/karvonnen.js b/apps/run/karvonnen.js index b199259a4..4a7e0914c 100644 --- a/apps/run/karvonnen.js +++ b/apps/run/karvonnen.js @@ -1,4 +1,4 @@ -exports.show = function karvonnen(hrmSettings, exsHrmStats) { +(function karvonnen(hrmSettings, exsHrmStats) { //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ //The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. //Other methods are even more approximative. @@ -10,11 +10,10 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { g.reset().clearRect(R).setFontAlign(0,0,0); const x = "x"; const y = "y"; - function Rdiv(axis, divisor) { // Used when placing things on the screen. + function Rdiv(axis, divisor) { // Used when placing things on the screen return axis=="x" ? (R.x + (R.w-1)/divisor):(R.y + (R.h-1)/divisor); } - - let arrowData = { // Used to update points in the drawArrows function. + let linePoints = { //Not lists of points, but used to update points in the drawArrows function. x: [ 175/40, 2, @@ -32,11 +31,11 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { function drawArrows() { g.setColor(g.theme.fg); // Upper - g.drawLine(Rdiv(x,arrowData.x[0]), Rdiv(y,arrowData.y[0]), Rdiv(x,arrowData.x[1]), Rdiv(y,arrowData.y[1])); - g.drawLine(Rdiv(x,arrowData.x[1]), Rdiv(y,arrowData.y[1]), Rdiv(x,arrowData.x[2]), Rdiv(y,arrowData.y[0])); + g.drawLine(Rdiv(x,linePoints.x[0]), Rdiv(y,linePoints.y[0]), Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[1])); + g.drawLine(Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[1]), Rdiv(x,linePoints.x[2]), Rdiv(y,linePoints.y[0])); // Lower - g.drawLine(Rdiv(x,arrowData.x[0]), Rdiv(y,arrowData.y[2]), Rdiv(x,arrowData.x[1]), Rdiv(y,arrowData.y[3])); - g.drawLine(Rdiv(x,arrowData.x[1]), Rdiv(y,arrowData.y[3]), Rdiv(x,arrowData.x[2]), Rdiv(y,arrowData.y[2])); + g.drawLine(Rdiv(x,linePoints.x[0]), Rdiv(y,linePoints.y[2]), Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[3])); + g.drawLine(Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[3]), Rdiv(x,linePoints.x[2]), Rdiv(y,linePoints.y[2])); } //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) @@ -214,4 +213,4 @@ exports.show = function karvonnen(hrmSettings, exsHrmStats) { }, 1000); return karvonnenInterval; -}; +}) From 753de2cec33f257ec1986e53f39f585b4b623a14 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 17:30:37 +0100 Subject: [PATCH 0306/1725] spelling comment --- apps/run/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/run/app.js b/apps/run/app.js index 1f1e09915..ccfa0749a 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -185,7 +185,7 @@ function stopKarvonnenUI() { } let karvonnenInterval; -// Define the function to go back and foth between the different UI's +// Define the function to go back and forth between the different UI's function swipeHandler(LR,_) { if (LR==-1 && karvonnenActive && !isMenuDisplayed) {stopKarvonnenUI(); run();} if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); karvonnenInterval = eval(require("Storage").read("run_karvonnen"))(settings.HRM, exs.stats.bpm);} From db97ae8129e9ea784902522b089717ea55f53977 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 18:07:02 +0100 Subject: [PATCH 0307/1725] move changes to run to new app runplus --- apps/runplus/ChangeLog | 17 +++ apps/runplus/README.md | 69 ++++++++++++ apps/runplus/app-icon.js | 1 + apps/runplus/app.js | 194 ++++++++++++++++++++++++++++++++ apps/runplus/app.png | Bin 0 -> 1479 bytes apps/runplus/karvonnen.js | 216 ++++++++++++++++++++++++++++++++++++ apps/runplus/metadata.json | 42 +++++++ apps/runplus/screenshot.png | Bin 0 -> 3716 bytes apps/runplus/settings.js | 157 ++++++++++++++++++++++++++ 9 files changed, 696 insertions(+) create mode 100644 apps/runplus/ChangeLog create mode 100644 apps/runplus/README.md create mode 100644 apps/runplus/app-icon.js create mode 100644 apps/runplus/app.js create mode 100644 apps/runplus/app.png create mode 100644 apps/runplus/karvonnen.js create mode 100644 apps/runplus/metadata.json create mode 100644 apps/runplus/screenshot.png create mode 100644 apps/runplus/settings.js diff --git a/apps/runplus/ChangeLog b/apps/runplus/ChangeLog new file mode 100644 index 000000000..81678d788 --- /dev/null +++ b/apps/runplus/ChangeLog @@ -0,0 +1,17 @@ +0.01: New App! +0.02: Set pace format to mm:ss, time format to h:mm:ss, + added settings to opt out of GPS and HRM +0.03: Fixed distance calculation, tested against Garmin Etrex, Amazfit GTS 2 +0.04: Use the exstats module, and make what is displayed configurable +0.05: exstats updated so update 'distance' label is updated, option for 'speed' +0.06: Add option to record a run using the recorder app automatically +0.07: Fix crash if an odd number of active boxes are configured (fix #1473) +0.08: Added support for notifications from exstats. Support all stats from exstats +0.09: Fix broken start/stop if recording not enabled (fix #1561) +0.10: Don't allow the same setting to be chosen for 2 boxes (fix #1578) +0.11: Notifications fixes +0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 +0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) +0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working +0.15: (beta) Swipe to intensity interface a la Karvonnen (curtesy of + FTeacher at https://github.com/f-teacher) diff --git a/apps/runplus/README.md b/apps/runplus/README.md new file mode 100644 index 000000000..7f645b518 --- /dev/null +++ b/apps/runplus/README.md @@ -0,0 +1,69 @@ +# Run App + +This app allows you to display the status of your run, it +shows distance, time, steps, cadence, pace and more. + +To use it, start the app and press the middle button so that +the red `STOP` in the bottom right turns to a green `RUN`. + +## Display + +* `DIST` - the distance travelled based on the GPS (if you have a GPS lock). + * NOTE: this is based on the GPS coordinates which are not 100% accurate, especially initially. As + the GPS updates your position as it gets more satellites your position changes and the distance + shown will increase, even if you are standing still. +* `TIME` - the elapsed time for your run +* `PACE` - the number of minutes it takes you to run a given distance, configured in settings (default 1km) **based on your run so far** +* `HEART (BPM)` - Your current heart rate +* `Max BPM` - Your maximum heart rate reached during the run +* `STEPS` - Steps since you started exercising +* `CADENCE` - Steps per second based on your step rate *over the last minute* +* `GPS` - this is green if you have a GPS lock. GPS is turned on automatically +so if you have no GPS lock you just need to wait. +* The current time is displayed right at the bottom of the screen +* `RUN/STOP` - whether the distance for your run is being displayed or not + +## Recording Tracks + +When the `Recorder` app is installed, `Run` will automatically start and stop tracks +as needed, prompting you to overwrite or begin a new track if necessary. + +## Settings + +Under `Settings` -> `App` -> `Run` you can change settings for this app. + +* `Record Run` (only displayed if `Recorder` app installed) should the Run app automatically +record GPS/HRM/etc data every time you start a run? +* `Pace` is the distance that pace should be shown over - 1km, 1 mile, 1/2 Marathon or 1 Marathon +* `Boxes` leads to a submenu where you can configure what is shown in each of the 6 boxes on the display. + Available stats are "Time", "Distance", "Steps", "Heart (BPM)", "Max BPM", "Pace (avg)", "Pace (curr)", "Speed", and "Cadence". + Any box set to "-" will display no information. + * Box 1 is the top left (defaults to "Distance") + * Box 2 is the top right (defaults to "Time") + * Box 3 is the middle left (defaults to "Pace (avg)") + * Box 4 is the middle right (defaults to "Heart (BPM)") + * Box 5 is the bottom left (defaults to "Steps") + * Box 6 is the bottom right (defaults to "Cadence") +* `Notifications` leads to a submenu where you can configure if the app will notify you after +your distance, steps, or time repeatedly pass your configured thresholds + * `Ntfy Dist`: The distance that you must pass before you are notified. Follows the `Pace` options + * "Off" (default), "1km", "1 mile", "1/2 Marathon", "1 Marathon" + * `Ntfy Steps`: The number of steps that must pass before you are notified. + * "Off" (default), 100, 500, 1000, 5000, 10000 + * `Ntfy Time`: The amount of time that must pass before you are notified. + * "Off" (default), "30 sec", "1 min", "2 min", "5 min", "10 min", "30 min", "1 hour" + * `Dist Pattern`: The vibration pattern to use to notify you about meeting your distance threshold + * `Step Pattern`: The vibration pattern to use to notify you about meeting your step threshold + * `Time Pattern`: The vibration pattern to use to notify you about meeting your time threshold + +## TODO + +* Keep a log of each run's stats (distance/steps/etc) + +## Development + +This app uses the [`exstats` module](https://github.com/espruino/BangleApps/blob/master/modules/exstats.js). When uploaded via the +app loader, the module is automatically included in the app's source. However +when developing via the IDE the module won't get pulled in by default. + +There are some options to fix this easily - please check out the [modules README.md file](https://github.com/espruino/BangleApps/blob/master/modules/README.md) diff --git a/apps/runplus/app-icon.js b/apps/runplus/app-icon.js new file mode 100644 index 000000000..a97d1b8ce --- /dev/null +++ b/apps/runplus/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEw4UA///pH9vEFt9TIW0FqALJitUBZNVqoLqgo4BHZAUBtBTHgILB1XAEREV1WsEQ9AgWq1ALHgEO1WtBYxCBhWq0pdInWq2tABY8q1WVBZGq1XFBZS/IKQRvCDIsP9WsBZP60CTCBYs//+wLxALBTQ4AB///+AKHgYLB/gLK/4LHh//AIIwFitVr/8DIIwFLANXBAILIqogBn7DBEYrXBeQRgIBYKmHDgYLLZRBACBZYKJZIILKKRZeWgJGKAFQA==")) diff --git a/apps/runplus/app.js b/apps/runplus/app.js new file mode 100644 index 000000000..ccfa0749a --- /dev/null +++ b/apps/runplus/app.js @@ -0,0 +1,194 @@ +// Use widget utils to show/hide widgets +let wu = require("widget_utils"); + +let runInterval; +let karvonnenActive = false; +// Run interface wrapped in a function +let ExStats = require("exstats"); +let B2 = process.env.HWVERSION===2; +let Layout = require("Layout"); +let locale = require("locale"); +let fontHeading = "6x8:2"; +let fontValue = B2 ? "6x15:2" : "6x8:3"; +let headingCol = "#888"; +let fixCount = 0; +let isMenuDisplayed = false; + +g.reset().clear(); +Bangle.loadWidgets(); +Bangle.drawWidgets(); +wu.show(); + +// --------------------------- +let settings = Object.assign({ + record: true, + B1: "dist", + B2: "time", + B3: "pacea", + B4: "bpm", + B5: "step", + B6: "caden", + paceLength: 1000, + notify: { + dist: { + value: 0, + notifications: [], + }, + step: { + value: 0, + notifications: [], + }, + time: { + value: 0, + notifications: [], + }, + HRM: { + min: 65, + max: 170, + } + }, +}, require("Storage").readJSON("run.json", 1) || {}); +let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); +let exs = ExStats.getStats(statIDs, settings); +// --------------------------- + +// Called to start/stop running +function onStartStop() { + let running = !exs.state.active; + let prepPromises = []; + + // start/stop recording + // Do this first in case recorder needs to prompt for + // an overwrite before we start tracking exstats + if (settings.record && WIDGETS["recorder"]) { + if (running) { + isMenuDisplayed = true; + prepPromises.push( + WIDGETS["recorder"].setRecording(true).then(() => { + isMenuDisplayed = false; + layout.setUI(); // grab our input handling again + layout.forgetLazyState(); + layout.render(); + }) + ); + } else { + prepPromises.push( + WIDGETS["recorder"].setRecording(false) + ); + } + } + + if (!prepPromises.length) // fix for Promise.all bug in 2v12 + prepPromises.push(Promise.resolve()); + + Promise.all(prepPromises) + .then(() => { + if (running) { + exs.start(); + } else { + exs.stop(); + } + layout.button.label = running ? "STOP" : "START"; + layout.status.label = running ? "RUN" : "STOP"; + layout.status.bgCol = running ? "#0f0" : "#f00"; + // if stopping running, don't clear state + // so we can at least refer to what we've done + layout.render(); + }); +} + +let lc = []; +// Load stats in pair by pair +for (let i=0;ilayout[e.id].label = e.getString()); + if (sb) sb.on('changed', e=>layout[e.id].label = e.getString()); +} +// At the bottom put time/GPS state/etc +lc.push({ type:"h", filly:1, c:[ + {type:"txt", font:fontHeading, label:"GPS", id:"gps", fillx:1, bgCol:"#f00" }, + {type:"txt", font:fontHeading, label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg }, + {type:"txt", font:fontHeading, label:"STOP", id:"status", fillx:1 } +]}); +// Now calculate the layout +let layout = new Layout( { + type:"v", c: lc +},{lazy:true, btns:[{ label:"START", cb: ()=>{if (karvonnenActive) {stopKarvonnenUI();run();} onStartStop();}, id:"button"}]}); +delete lc; +layout.render(); + +function configureNotification(stat) { + stat.on('notify', (e)=>{ + settings.notify[e.id].notifications.reduce(function (promise, buzzPattern) { + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); + }, Promise.resolve()); + }); +} + +Object.keys(settings.notify).forEach((statType) => { + if (settings.notify[statType].increment > 0 && exs.stats[statType]) { + configureNotification(exs.stats[statType]); + } +}); + +// Handle GPS state change for icon +Bangle.on("GPS", function(fix) { + layout.gps.bgCol = fix.fix ? "#0f0" : "#f00"; + if (!fix.fix) return; // only process actual fixes + if (fixCount++ === 0) { + Bangle.buzz(); // first fix, does not need to respect quiet mode + } +}); + +// run() function used to switch between traditional run UI and karvonnen UI +function run() { + wu.show(); + layout.lazy = false; + layout.render(); + layout.lazy = true; + // We always call ourselves once a second to update + if (!runInterval){ + runInterval = setInterval(function() { + layout.clock.label = locale.time(new Date(),1); + if (!isMenuDisplayed && !karvonnenActive) layout.render(); + }, 1000); + } +} +run(); + +/////////////////////////////////////////////// +// Karvonnen +/////////////////////////////////////////////// + +function stopRunUI() { + // stop updating and drawing the traditional run app UI + clearInterval(runInterval); + runInterval = undefined; + karvonnenActive = true; +} + +function stopKarvonnenUI() { + g.reset().clear(); + clearInterval(karvonnenInterval); + karvonnenInterval = undefined; + karvonnenActive = false; +} + +let karvonnenInterval; +// Define the function to go back and forth between the different UI's +function swipeHandler(LR,_) { + if (LR==-1 && karvonnenActive && !isMenuDisplayed) {stopKarvonnenUI(); run();} + if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); karvonnenInterval = eval(require("Storage").read("run_karvonnen"))(settings.HRM, exs.stats.bpm);} +} +// Listen for swipes with the swipeHandler +Bangle.on("swipe", swipeHandler); diff --git a/apps/runplus/app.png b/apps/runplus/app.png new file mode 100644 index 0000000000000000000000000000000000000000..7059b8b015e20039a96de8b65c8a6b68a5e51e18 GIT binary patch literal 1479 zcmV;&1vvVNP)b0~r9hI1hzN2C_Hz2bec46d zz32!1f7|Dr^Zft+eV+5aXV1bTJi@~b@gPX$zNip1Yz1>vN2mz2DMEkvlG@MN zqD@lE?a)(59(>u0=Kppec*EA5(*zQ(EG3+(+KI->CEFJ!ACP%5!I+F&=p{{UFEnH!o7WN}(7DfEF{6T=^qRTOGUUmDCINa`%K?dqCzyBw&^& zdx;n90#h)O*AZj`^*@L)UE%?ZC>&z+*w0Pj=Mr*u5X*l)p2LibbmVEnr6riETg&$lZ8)JSSrFFIvt>|1LfBuoykZR)&GJv4Nif!en;z zv+6Z;L-k`+==0YD>-(E?LK%{G3lE#^`JOB$P&RcWluLnM)#~Vk(_duC*`K_4L>V>S z)_4dF#+CBq(XN1$@$$f&f%ft_-N11%bdLd>txt@&{Fx`lWV(+H188fpdoMWEz{=c= zcS=M^psn$7;>Mk!^KP#d`utPCk6iBMM%oOs0tuJ37nQ16rohH)E z9ia`tY}y~?;W9hY+Ci=jL57GcSZ9mZX%$dBo+%nx{F~SG>u0QvN67NBtqYU0IzJ12 z!D%4xE@^d0`F6j&s+C&7&h>F)stg0CXcP_pe^xQKQS72jOY-(wh zZbX~G&?_#4KvUbwYbW!Gs64aVQ65`xr~;X3@&0)ixmMMvar5@_BseI*>bwB=Hsh4X zYQh$!?Cq~z?1DoTIA3l2sj5-q2GG>pLe-60r0n}JscF?|Pu=!AaWEs^-w{4*u-m|v z)cN}2e|5diF%6APc(zvE@zj|5xTt9M^e(*}a5ghB(al~?Yp}~eT3VX+_&;u68O^;r zFm#Zy>3N^}(KCW>&hyn7OqS~|H4F%<8>aciPOVnaXAj8ih*=;qfnl~5NeLTDd^m8~ zvnv)fz-)*f*%Y>B(}4>B-+uJwvah5;)T5WD&l4qTwmGbG5^Ni*$W&M4^}G>c@+r0 zm&L6n!K$N!Oe1_uD^fG^zOXju@RlWhrFCBC&eabb;-_mPZum831lFJkDuuov#6kU5 z4CF+`AmwiE&BPU?TrL(A+P>=nva%L?1T`4WzcBdbD0fZgQOG$4`W)s&T>c@z;lw?$ z*r#$R-lF#xBG~4P-1p~Z&LlR|e(BYTGQ71roRQk)24wckiNM_6L75_6I@Icn{4O=n ze($4X(0i|)Kwp^SEDqOJAUkp)FsXM?t`S20EwnAT>>nDL9jAl(3m`*#gmZ99% of HRR+minHR = serious risk of heart attack + let minzone2 = hrr * 0.6 + minhr; + let maxzone2 = hrr * 0.7 + minhr; + let maxzone3 = hrr * 0.8 + minhr; + let maxzone4 = hrr * 0.9 + minhr; + let maxzone5 = hrr * 0.99 + minhr; + + // HR data: large, readable, in the middle of the screen + function drawHR() { + g.setFontAlign(-1,0,0); + g.clearRect(Rdiv(x,11/4),Rdiv(y,2)-25,Rdiv(x,11/4)+50*2,Rdiv(y,2)+25); + g.setColor(g.theme.fg); + g.setFont("Vector",50); + g.drawString(hr, Rdiv(x,11/4), Rdiv(y,2)+4); + } + + function drawWaitHR() { + g.setColor(g.theme.fg); + // Waiting for HRM + g.setFontAlign(0,0,0); + g.setFont("Vector",50); + g.drawString("--", Rdiv(x,2)+4, Rdiv(y,2)+4); + + // Waiting for current Zone + g.setFont("Vector",24); + g.drawString("Z-", Rdiv(x,4.3), Rdiv(y,2)+2); + + // waiting for upper and lower limit of current zone + g.setFont("Vector",20); + g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/2)); + g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/7)); + } + + //These functions call arcs to show different HR zones. + + //To shorten the code, I'll reference some letiables and reuse them. + let centreX = R.x + 0.5 * R.w; + let centreY = R.y + 0.5 * R.h; + let minRadius = 0.38 * R.h; + let maxRadius = 0.50 * R.h; + + //draw background image (dithered green zones)(I should draw different zones in different dithered colors) + const HRzones= require("graphics_utils"); + let minRadiusz = 0.44 * R.h; + let startAngle = HRzones.degreesToRadians(-88.5); + let endAngle = HRzones.degreesToRadians(268.5); + + function drawBgArc() { + g.setColor(g.theme.dark==false?0xC618:"#002200"); + HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + } + + const zones = require("graphics_utils"); + //####### A function to simplify a bit the code ###### + function simplify (sA, eA, Z, currentZone, lastZone) { + let startAngle = zones.degreesToRadians(sA); + let endAngle = zones.degreesToRadians(eA); + if (currentZone == lastZone) zones.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); + else zones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + g.setFont("Vector",24); + g.clearRect(Rdiv(x,4.3)-12, Rdiv(y,2)+2-12,Rdiv(x,4.3)+12, Rdiv(y,2)+2+12); + g.setFontAlign(0,0,0); + g.drawString(Z, Rdiv(x,4.3), Rdiv(y,2)+2); + } + + function zoning (max, min) { // draw values of upper and lower limit of current zone + g.setFont("Vector",20); + g.setColor(g.theme.fg); + g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/2)-10,Rdiv(x,2)+20*2, Rdiv(y,9/2)+10); + g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/7)-10,Rdiv(x,2)+20*2, Rdiv(y,9/7)+10); + g.setFontAlign(0,0,0); + g.drawString(max, Rdiv(x,2), Rdiv(y,9/2)); + g.drawString(min, Rdiv(x,2), Rdiv(y,9/7)); + } + + function clearCurrentZone() { // Clears the extension of the current zone by painting the extension area in background color + g.setColor(g.theme.bg); + HRzones.fillArc(g, centreX, centreY, minRadius-1, minRadiusz, startAngle, endAngle); + } + + function getZone(zone) { + drawBgArc(); + clearCurrentZone(); + if (zone >= 0) {zoning(minzone2, minhr);g.setColor("#00ffff");simplify(-88.5, -45, "Z1", 0, zone);} + if (zone >= 1) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-43.5, -21.5, "Z2", 1, zone);} + if (zone >= 2) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-20, 1.5, "Z2", 2, zone);} + if (zone >= 3) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(3, 24, "Z2", 3, zone);} + if (zone >= 4) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(25.5, 46.5, "Z3", 4, zone);} + if (zone >= 5) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(48, 69, "Z3", 5, zone);} + if (zone >= 6) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(70.5, 91.5, "Z3", 6, zone);} + if (zone >= 7) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(93, 114.5, "Z4", 7, zone);} + if (zone >= 8) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(116, 137.5, "Z4", 8, zone);} + if (zone >= 9) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(139, 160, "Z4", 9, zone);} + if (zone >= 10) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(161.5, 182.5, "Z5", 10, zone);} + if (zone >= 11) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(184, 205, "Z5", 11, zone);} + if (zone == 12) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(206.5, 227.5, "Z5", 12, zone);} + } + + function getZoneAlert() { + const HRzonemax = require("graphics_utils"); + let centreX1,centreY1,maxRadius1 = 1; + let minRadius = 0.40 * R.h; + let startAngle1 = HRzonemax.degreesToRadians(-90); + let endAngle1 = HRzonemax.degreesToRadians(270); + g.setFont("Vector",38);g.setColor("#ff0000"); + HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); + g.drawString("ALERT", 26,66); + } + + //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. + let subZoneLast; + function drawZones() { + if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawArrows(); drawHR();} // Reset UI when coming down from zone alert. + if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} // Z1 + else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} // Z2a + else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} // Z2b + else if (hr <= hrr * 0.70 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getZone(subZoneLast);}} // Z2c + else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getZone(subZoneLast);}} // Z3a + else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getZone(subZoneLast);}} // Z3b + else if (hr <= hrr * 0.80 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getZone(subZoneLast);}} // Z3c + else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getZone(subZoneLast);}} // Z4a + else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getZone(subZoneLast);}} // Z4b + else if (hr <= hrr * 0.90 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getZone(subZoneLast);}} // Z4c + else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getZone(subZoneLast);}} // Z5a + else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getZone(subZoneLast);}} // Z5b + else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getZone(subZoneLast);}} // Z5c + else if (hr >= maxhr - 2) {subZoneLast=13; g.clear();getZoneAlert();} // Alert + } + + function initDraw() { + drawArrows(); + drawWaitHR(); + drawBgArc(); + //drawZones(); + } + + let hrLast; + //h = 0; // Used to force hr update to trigger draws, together with `if (h!=0) hr = h;` below. + function updateUI() { // Update UI, only draw if warranted by change in HR. + hrLast = hr; + hr = exsHrmStats.getValue(); + //if (h!=0) hr = h; + if (hr!=hrLast) { + drawHR(); + drawZones(); + } //g.setColor(g.theme.fg).drawLine(175/2,0,175/2,175).drawLine(0,175/2,175,175/2); // Used to align UI elements. + } + + initDraw(); + + // check for updates every second. + karvonnenInterval = setInterval(function() { + if (!isMenuDisplayed && karvonnenActive) updateUI(); + }, 1000); + + return karvonnenInterval; +}) diff --git a/apps/runplus/metadata.json b/apps/runplus/metadata.json new file mode 100644 index 000000000..ad23519e7 --- /dev/null +++ b/apps/runplus/metadata.json @@ -0,0 +1,42 @@ +{ + "id": "run", + "name": "Run", + "version": "0.15", + "description": "Displays distance, time, steps, cadence, pace and more for runners.", + "icon": "app.png", + "tags": "run,running,fitness,outdoors,gps", + "supports": [ + "BANGLEJS", + "BANGLEJS2" + ], + "screenshots": [ + { + "url": "screenshot.png" + } + ], + "readme": "README.md", + "storage": [ + { + "name": "run.app.js", + "url": "app.js" + }, + { + "name": "run.img", + "url": "app-icon.js", + "evaluate": true + }, + { + "name": "run.settings.js", + "url": "settings.js" + }, + { + "name": "run_karvonnen", + "url": "karvonnen.js" + } + ], + "data": [ + { + "name": "run.json" + } + ] +} diff --git a/apps/runplus/screenshot.png b/apps/runplus/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..1a813f19dfe304e3d8bf711692fd2abf1013c391 GIT binary patch literal 3716 zcma)9i8mD5AJ;TuD9kVjVXS4BC1Om*G9ocOV`TT9;vt4!cB3g0*-4fx8I{IZ$M(V) zq7Z|6WGORgB-^u&ERFfi?=SfM?m72dWt=rKSDd*uTr+%eqw4OIaxzdEo;5|cv`pDBSN47K|UJq=6VDzBkHWn*!;PlpF ze(^n}LDM%GMu;}M5I}j(GWAen6Un4xU5>-I1Dx#l>;Z{Cb7j|( zK<4L6>y{&Db9JC52kOi-}{Chnt6Ig+jZL(>VA`ls2Ey8Pr z5g^sQAZ*o1m(Vto)Z+Le8OKl6@3BpBwPY6bEyL(Q`O<}w+4^NdTV2%8y72;!hZNA~ z7e5!Cguz0u9-KA*OW;@CjDsB=R?KtX(W$m2Pvx*tiR%P@tJPcgjyRu_%KN-Z`7dnf9xz8B?mMSbYsWY$ z|DH%HG)k&{8R($3%9yHlny2>;l_#4B@At;kl=anmT@wvY{%ZH)iZ7^cMFZ6px|1Yg zb1ya^vEmFYaQ~Gc6CeBeow@CT2^;E8ZC`kZn$GO9|Vf ze?f%B`R>(U5;Fsxt@F(94D1X_aTMBG42no{a*+^|um0fr6#*HA0O~axgw%v{i~Gn5 z%02Wc*Kf85fv@=eY|eO2I1ODpIx{^8KPD41?X`$RNxNOt5&|Ct2}(i_R_5*k)J zrhRWRGxo0U8uqUHpH^(yB}QuJn>c3B)=f>Nyi6)) zOECeHxpTcTXV<(xwEb zL5K`^0C}h(kXu7@S)!O!?8U`7Pl_6cPWVjLk)lom+B7>(RjvIA_R~F%YcSB-v@x@@ zo{E$!+3*JZls|AoVBq3zHdp=$5cLS`VM7LhB9IgfSO>cieEb*>{Cw_r63#PFK>d_Geiezu=XmOLG9&hHfP!exIkoxY zu=Lu7Kvncq2B?F5C0 z{D1i+DS}UyX&d!9ejkpsod{l>J$TwvhFFasSSQPkFowWX5*(_FQP|JxzZK?LOcV5E zX~~8dj-F(O`rVy3P6gjS8u|#t7oqdOIXV&7Te5bH0+(BI62UQ)vg&QjqWVhPc^yY4 zrRUYvR)Bj}U7G9%6t!ZLxG>P|9aBt$Lkm?E08efy$6AtPvSxHz6D}Q9?={^jc7K*r z4&5>&fd5wdTS!ON-xx&ZXu$K@g$CP74GEv1ZmOa+S(1ZL&0gd z2wA44M^ee5V3>5YQCdwiorujC=%IR07&&Luc{Uk5p#o0>_qSu5UGM`mYg9plqT9k5Fm}m$@z|5W3Y&%BZz_t}4gunQ2dPQS0Ys-Jws1Af4#!lFjbGC3h$ZT>q z$>%JcvLGzd6(e&d1@u`l1kimf#+;zcH`&Ep;Z93=uAfnvj8rc(u{@y(Eh=D4!Y+C=>@{sS#;$nO zBe;o^+DZ0`Jmm7#Y?sguyYwCU(&r>&66>J>stxwllI=Wb(aSHh2K2S$LkQJ76TrDk zd5(p#Kg^YTp#FZFCdyO?ur#Lb?CBpzu3g%`;ty6`vlp+(o>f?e>y@Y*eIFYodI$mw zLF5;$P6`X(G=L(bmr&sLs1?6=sK+gE46(1}ZU#v!VP{1l1Lyqh=Jr1;`(IPq=V()# zY7Mrh#HE@25YZm`j9;9G>v|nruUC9Z#UGG}mNS=m z>8EXdN0Hn`mX}FkxkRd88+u!ECZ*!fsB}iJ!Lm&4MX^b5SJ4csi2S?Ltm$aVx805F zGs!LV4N2rF;F7ZGtN|)AJ3*y9qhf%e`PCm#-*o4BpCY96TsP$EONg{8A;IO91vsd_ zyC6~7Y*mX1Q6j5l>`cK`%%R_>z$oAc z{nAIY*HZF$;qcJvGESyoAuVcn`Tp&Yb-o;D7=08?eGkOjRj$jt0L6bA zwouU#--D%6gA3I*ybKPr+Z73ky6GjlyP=z@J2Q-W1hFDs|3Z_3MbJrVcISm|EgkSx z%#o7kjA(C2g5J$F2bF+t7|s&?%^Z=1zFK3c#L+lk?c20h*jLV|AJ0fDN;@p)mjX-I zx)`35$zn}cwL#_gUk&9jh^*@KP2q|Vwrhw4Vnw~CZ5p|Ak?>Y|A2aw~M?}KMH59^i zSZR_sak%ILj=h}sBL$=UkB(KRiw69X4 z+g3@Rmg66AH^Q{Pzowona#!&QJMkYAmviIum!RTbQzb{v9uCx#&24<4{*OP0sM_FN z^0IFQjCHDo7t|p|(+Bk3y=`Kx)u8r9|7s+-m`fGST>PpeB~wy5h&mC#cEsmGq)ngz zFO_6y=>(POfDggC#%KbX{i%y7Ssj(AoewgPKBvt`u_jGo*G@ek4#&$%9sHd1J7k;f zsxoe5O37SoPSzs`8~ofZ=D-1!$u$t_=L<9QWM2GXs=byV1e2twmJFzYG?>+jA*glEA|wtfm;ZnwmpG>`?G z6yps4eFN}1ZPCm#ivusQObV|16alTM(UWcQdJ1(ktbz3qO#0)|eNrMYGsVSM;-S#V z4;Kgw25E4<;+`jJ>M!AN;E?R?bhWA= zu8Q>QmqvsR*zjp*kg+>Ls(+t&g_#$jSDa1aQo@dQ(`geJV9WA z4_qe|J#kc_=XBxFT2AzD+uwLMxqrPl6+r{a16O}V46{AL6t%%z*i zU*q|ZKiWe83il}i`hXjPa_)rpovkqCjsL2m#{W{nUyJWPy*pfYy1Dn&JHpgTg=0a_ zYjGiKX*)6{I;Es}M569jLPI|f<{43aKv4^0%Rj(kC)AHEDuqeAxmHtte4qVDwV{}3 zqp%Q~Q*)rwkie6*LLvIRc`yT*`SBJY%*D64SP6-#b#1jWmy(1?ew+Jves z*3KaRLi6JQ_7gs$SFslk5g7rMHVp%Cslk@2RirS$?R4(!@hml*pD?%!4Yy&s=qBznd7RQ-OlBXj*JM}W|=r!{x0f1mfQs.id); + + // ...and overwrite them with any saved values + // This way saved values are preserved if a new version adds more settings + const storage = require('Storage') + let settings = Object.assign({ + record: true, + B1: "dist", + B2: "time", + B3: "pacea", + B4: "bpm", + B5: "step", + B6: "caden", + paceLength: 1000, // TODO: Default to either 1km or 1mi based on locale + notify: { + dist: { + increment: 0, + notifications: [], + }, + step: { + increment: 0, + notifications: [], + }, + time: { + increment: 0, + notifications: [], + }, + }, + HRM: { + min: 65, + max: 165, + }, + }, storage.readJSON(SETTINGS_FILE, 1) || {}); + function saveSettings() { + storage.write(SETTINGS_FILE, settings) + } + + function getBoxChooser(boxID) { + return { + min: 0, max: statsIDs.length-1, + value: Math.max(statsIDs.indexOf(settings[boxID]),0), + format: v => statsList[v].name, + onchange: v => { + settings[boxID] = statsIDs[v]; + saveSettings(); + }, + } + } + + function sampleBuzz(buzzPatterns) { + return buzzPatterns.reduce(function (promise, buzzPattern) { + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); + }, Promise.resolve()); + } + + var menu = { + '': { 'title': 'Run' }, + '< Back': back, + }; + if (global.WIDGETS&&WIDGETS["recorder"]) + menu[/*LANG*/"Record Run"] = { + value : !!settings.record, + onchange : v => { + settings.record = v; + saveSettings(); + } + }; + var notificationsMenu = { + '< Back': function() { E.showMenu(menu) }, + } + menu[/*LANG*/"Notifications"] = function() { E.showMenu(notificationsMenu)}; + ExStats.appendMenuItems(menu, settings, saveSettings); + ExStats.appendNotifyMenuItems(notificationsMenu, settings, saveSettings); + var vibPatterns = [/*LANG*/"Off", ".", "-", "--", "-.-", "---"]; + var vibTimes = [ + [], + [[100, 1]], + [[300, 1]], + [[300, 1], [300, 0], [300, 1]], + [[300, 1],[300, 0], [100, 1], [300, 0], [300, 1]], + [[300, 1],[300, 0],[300, 1],[300, 0],[300, 1]], + ]; + notificationsMenu[/*LANG*/"Dist Pattern"] = { + value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.dist.notifications))), + min: 0, max: vibTimes.length - 1, + format: v => vibPatterns[v]||/*LANG*/"Off", + onchange: v => { + settings.notify.dist.notifications = vibTimes[v]; + sampleBuzz(vibTimes[v]); + saveSettings(); + } + } + notificationsMenu[/*LANG*/"Step Pattern"] = { + value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.step.notifications))), + min: 0, max: vibTimes.length - 1, + format: v => vibPatterns[v]||/*LANG*/"Off", + onchange: v => { + settings.notify.step.notifications = vibTimes[v]; + sampleBuzz(vibTimes[v]); + saveSettings(); + } + } + notificationsMenu[/*LANG*/"Time Pattern"] = { + value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.time.notifications))), + min: 0, max: vibTimes.length - 1, + format: v => vibPatterns[v]||/*LANG*/"Off", + onchange: v => { + settings.notify.time.notifications = vibTimes[v]; + sampleBuzz(vibTimes[v]); + saveSettings(); + } + } + var boxMenu = { + '< Back': function() { E.showMenu(menu) }, + } + Object.assign(boxMenu,{ + 'Box 1': getBoxChooser("B1"), + 'Box 2': getBoxChooser("B2"), + 'Box 3': getBoxChooser("B3"), + 'Box 4': getBoxChooser("B4"), + 'Box 5': getBoxChooser("B5"), + 'Box 6': getBoxChooser("B6"), + }); + menu[/*LANG*/"Boxes"] = function() { E.showMenu(boxMenu)}; + + var hrmMenu = { + '< Back': function() { E.showMenu(menu) }, + } + + menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; + hrmMenu[/*LANG*/"min"] = { + min: 1, max: 100, + value: settings.HRM.min, + format: w => w, + onchange: w => { + settings.HRM.min = w; + saveSettings(); + }, + } + hrmMenu[/*LANG*/"max"] = { + min: 120, max: 190, + value: settings.HRM.max, + format: v => v, + onchange: v => { + settings.HRM.max = v; + saveSettings(); + }, + } + E.showMenu(menu); +}) From 37e97a5572ceb750ae0e228ec27394e18b817039 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 18:43:53 +0100 Subject: [PATCH 0308/1725] Revert multiple commits to the run app. Revert "move changes to run to new app runplus" This reverts commit 026b266686238152d6e21944a7a48860c0b92136. Revert "spelling comment" This reverts commit 9824460add766ca48c6e18c1033333dc721fafd4. Revert "remove export in karvonnen.js" This reverts commit c681bd8fadbfb163bb8ec65e52d79040de1e45a2. Revert "change to use eval for launching karvonnen ui" This reverts commit 92a3c48d633304fc2b56f99f3258594d7d9fab6d. Revert "tweaks to colors and placings" This reverts commit ff6337b2eeeeb04fca575df3481713155c54c632. Revert "tweaks to placing of things" This reverts commit 3ee5c239a7d624b0b196ce29f8c9e56f0c282576. Revert "fix HRM settings default" This reverts commit cd001d827644a80d5c9233cecee24ba37b0714d6. Revert "ChangeLog: alpha->beta" This reverts commit 6c1d709a8c0a4b0f9f42ae0bd1f183a85c29e792. Revert "remove unnecessary semicolon" This reverts commit 918ab8158c9380ce595231683baedc6b849385f3. Revert "switch to run UI whenever pressing physical button" This reverts commit ebc2916f6f97f8520e9a3481f6f29107d0e99697. Revert "after many changes and some testing many things seem to function very well" This reverts commit 5a05b47267f7742aca2d36775f1782330f03adc0. Revert "add defaults to hrm settings" This reverts commit 71892cf91730477aa4ce9190034b4fbfc8a23a78. Revert "update UI pretty lazily, fix color of bpm" This reverts commit 2e6489240d828feccd53b72acc2547d71010e544. Revert "karvonnen UI now updates with bpm from hrm" This reverts commit d4db5bed6f29318ee1d2ec65f80f1f7a26a05f99. Revert "maybe now hrm setting work..." This reverts commit 646ffa21fabb4e4b5c0418571b3f4c1943a2b99a. Revert "settings fix again" This reverts commit 5a8046b6b6d6da0ab1ce857228458c5d4574333b. Revert "try fix settings min" This reverts commit 671a407513251a86877552366db8aebabb859ac4. Revert "fix hrm min setting" This reverts commit ea005672f6de1df640557b281714c538a2126a4a. Revert "fix hrm min setting" This reverts commit 7572ddd433c30d7a5523e234146b01eae86c72b8. Revert "fix hrm max setting" This reverts commit 2a83b7bf3226eae88990f5ee069b5709f65a4e40. Revert "fix hrm max setting" This reverts commit 4494b4863f688ade6b5e7958a68c5ba709628adf. Revert "add hrm min/max settings" This reverts commit 52c59702b08316f6572393616a5f6bfe1771c368. Revert "add/rm semicolons" This reverts commit 1d78542167647ed2994262ef87bf4d72f4a08202. Revert "fix accidental removal of interval" This reverts commit f2af13281cab2bff3f4af4d5690dbcc492ac68eb. Revert "move karvonnen out of app.js and require it into run.app.js when loading app to the watch" This reverts commit 1df4962018fc8a31d7ffa5f2ae316cc360de66ac. Revert "Revert "remove run.app.karvonnen.js, moved into app.js"" This reverts commit 2ed76d600b27dcd9d8e791bfc26e0366806f6f22. Revert "add a comment, remove a print-statement" This reverts commit 9035cc3a2723235e625f880e50d79e18655239aa. Revert "remove commented out lines" This reverts commit 32267561a15b8e2c1781d01ab824c9eb5c6ae9ba. Revert "remove run.app.karvonnen.js, moved into app.js" This reverts commit 705c2c53954d3921bacb4d5bd41b8f14d713d355. Revert "fix version metadata" This reverts commit ef7f4d3a963a5ca3b0ce1709992733ca6a69f066. Revert "ChangLog version" This reverts commit 502b992b29ca746a4785444b1acca8f2cbef3bcf. Revert "version metadata" This reverts commit 270c3d3f5b870dc3c5b2a2a3044dedfd305f2657. Revert "Move karvonnen code into the run app" This reverts commit e72a4d3082f7cace8425e503ee20129f8ce41400. Revert "Update run.app.karvonnen.js" This reverts commit 5313d415d5d0f4a79e2728ed42bffc4a87e3a963. Revert "Add files via upload" This reverts commit 51d62c816fa8eaf0a00b7b06957fab1f47d0efb7. --- apps/run/ChangeLog | 2 - apps/run/app.js | 131 +++++++--------------- apps/run/karvonnen.js | 216 ------------------------------------ apps/run/metadata.json | 42 ++----- apps/run/settings.js | 28 ----- apps/runplus/ChangeLog | 17 --- apps/runplus/README.md | 69 ------------ apps/runplus/app-icon.js | 1 - apps/runplus/app.js | 194 -------------------------------- apps/runplus/app.png | Bin 1479 -> 0 bytes apps/runplus/karvonnen.js | 216 ------------------------------------ apps/runplus/metadata.json | 42 ------- apps/runplus/screenshot.png | Bin 3716 -> 0 bytes apps/runplus/settings.js | 157 -------------------------- 14 files changed, 49 insertions(+), 1066 deletions(-) delete mode 100644 apps/run/karvonnen.js delete mode 100644 apps/runplus/ChangeLog delete mode 100644 apps/runplus/README.md delete mode 100644 apps/runplus/app-icon.js delete mode 100644 apps/runplus/app.js delete mode 100644 apps/runplus/app.png delete mode 100644 apps/runplus/karvonnen.js delete mode 100644 apps/runplus/metadata.json delete mode 100644 apps/runplus/screenshot.png delete mode 100644 apps/runplus/settings.js diff --git a/apps/run/ChangeLog b/apps/run/ChangeLog index 81678d788..95945be78 100644 --- a/apps/run/ChangeLog +++ b/apps/run/ChangeLog @@ -13,5 +13,3 @@ 0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working -0.15: (beta) Swipe to intensity interface a la Karvonnen (curtesy of - FTeacher at https://github.com/f-teacher) diff --git a/apps/run/app.js b/apps/run/app.js index ccfa0749a..4038b8c1a 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -1,23 +1,16 @@ -// Use widget utils to show/hide widgets -let wu = require("widget_utils"); +var ExStats = require("exstats"); +var B2 = process.env.HWVERSION===2; +var Layout = require("Layout"); +var locale = require("locale"); +var fontHeading = "6x8:2"; +var fontValue = B2 ? "6x15:2" : "6x8:3"; +var headingCol = "#888"; +var fixCount = 0; +var isMenuDisplayed = false; -let runInterval; -let karvonnenActive = false; -// Run interface wrapped in a function -let ExStats = require("exstats"); -let B2 = process.env.HWVERSION===2; -let Layout = require("Layout"); -let locale = require("locale"); -let fontHeading = "6x8:2"; -let fontValue = B2 ? "6x15:2" : "6x8:3"; -let headingCol = "#888"; -let fixCount = 0; -let isMenuDisplayed = false; - -g.reset().clear(); +g.clear(); Bangle.loadWidgets(); Bangle.drawWidgets(); -wu.show(); // --------------------------- let settings = Object.assign({ @@ -42,20 +35,16 @@ let settings = Object.assign({ value: 0, notifications: [], }, - HRM: { - min: 65, - max: 170, - } }, }, require("Storage").readJSON("run.json", 1) || {}); -let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); -let exs = ExStats.getStats(statIDs, settings); +var statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); +var exs = ExStats.getStats(statIDs, settings); // --------------------------- // Called to start/stop running function onStartStop() { - let running = !exs.state.active; - let prepPromises = []; + var running = !exs.state.active; + var prepPromises = []; // start/stop recording // Do this first in case recorder needs to prompt for @@ -83,25 +72,25 @@ function onStartStop() { Promise.all(prepPromises) .then(() => { - if (running) { - exs.start(); - } else { - exs.stop(); - } - layout.button.label = running ? "STOP" : "START"; - layout.status.label = running ? "RUN" : "STOP"; - layout.status.bgCol = running ? "#0f0" : "#f00"; - // if stopping running, don't clear state - // so we can at least refer to what we've done - layout.render(); - }); + if (running) { + exs.start(); + } else { + exs.stop(); + } + layout.button.label = running ? "STOP" : "START"; + layout.status.label = running ? "RUN" : "STOP"; + layout.status.bgCol = running ? "#0f0" : "#f00"; + // if stopping running, don't clear state + // so we can at least refer to what we've done + layout.render(); + }); } -let lc = []; +var lc = []; // Load stats in pair by pair -for (let i=0;i{if (karvonnenActive) {stopKarvonnenUI();run();} onStartStop();}, id:"button"}]}); +},{lazy:true, btns:[{ label:"START", cb: onStartStop, id:"button"}]}); delete lc; layout.render(); function configureNotification(stat) { stat.on('notify', (e)=>{ settings.notify[e.id].notifications.reduce(function (promise, buzzPattern) { - return promise.then(function () { - return Bangle.buzz(buzzPattern[0], buzzPattern[1]); - }); + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); }, Promise.resolve()); }); } Object.keys(settings.notify).forEach((statType) => { if (settings.notify[statType].increment > 0 && exs.stats[statType]) { - configureNotification(exs.stats[statType]); + configureNotification(exs.stats[statType]); } }); @@ -149,46 +138,8 @@ Bangle.on("GPS", function(fix) { Bangle.buzz(); // first fix, does not need to respect quiet mode } }); - -// run() function used to switch between traditional run UI and karvonnen UI -function run() { - wu.show(); - layout.lazy = false; - layout.render(); - layout.lazy = true; - // We always call ourselves once a second to update - if (!runInterval){ - runInterval = setInterval(function() { - layout.clock.label = locale.time(new Date(),1); - if (!isMenuDisplayed && !karvonnenActive) layout.render(); - }, 1000); - } -} -run(); - -/////////////////////////////////////////////// -// Karvonnen -/////////////////////////////////////////////// - -function stopRunUI() { - // stop updating and drawing the traditional run app UI - clearInterval(runInterval); - runInterval = undefined; - karvonnenActive = true; -} - -function stopKarvonnenUI() { - g.reset().clear(); - clearInterval(karvonnenInterval); - karvonnenInterval = undefined; - karvonnenActive = false; -} - -let karvonnenInterval; -// Define the function to go back and forth between the different UI's -function swipeHandler(LR,_) { - if (LR==-1 && karvonnenActive && !isMenuDisplayed) {stopKarvonnenUI(); run();} - if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); karvonnenInterval = eval(require("Storage").read("run_karvonnen"))(settings.HRM, exs.stats.bpm);} -} -// Listen for swipes with the swipeHandler -Bangle.on("swipe", swipeHandler); +// We always call ourselves once a second to update +setInterval(function() { + layout.clock.label = locale.time(new Date(),1); + if (!isMenuDisplayed) layout.render(); +}, 1000); diff --git a/apps/run/karvonnen.js b/apps/run/karvonnen.js deleted file mode 100644 index 4a7e0914c..000000000 --- a/apps/run/karvonnen.js +++ /dev/null @@ -1,216 +0,0 @@ -(function karvonnen(hrmSettings, exsHrmStats) { - //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ - //The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. - //Other methods are even more approximative. - let wu = require("widget_utils"); - wu.hide(); - let R = Bangle.appRect; - - - g.reset().clearRect(R).setFontAlign(0,0,0); - - const x = "x"; const y = "y"; - function Rdiv(axis, divisor) { // Used when placing things on the screen - return axis=="x" ? (R.x + (R.w-1)/divisor):(R.y + (R.h-1)/divisor); - } - let linePoints = { //Not lists of points, but used to update points in the drawArrows function. - x: [ - 175/40, - 2, - 175/135, - ], - y: [ - 175/64, - 175/52, - 175/110, - 175/122, - ], - - }; - - function drawArrows() { - g.setColor(g.theme.fg); - // Upper - g.drawLine(Rdiv(x,linePoints.x[0]), Rdiv(y,linePoints.y[0]), Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[1])); - g.drawLine(Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[1]), Rdiv(x,linePoints.x[2]), Rdiv(y,linePoints.y[0])); - // Lower - g.drawLine(Rdiv(x,linePoints.x[0]), Rdiv(y,linePoints.y[2]), Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[3])); - g.drawLine(Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[3]), Rdiv(x,linePoints.x[2]), Rdiv(y,linePoints.y[2])); - } - - //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) - // HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. - //get the hrr (heart rate reserve). - // I put random data here, but this has to come as a menu in the settings section so that users can change it. - let minhr = hrmSettings.min; - let maxhr = hrmSettings.max; - - function calculatehrr(minhr, maxhr) { - return maxhr - minhr;} - - //test input for hrr (it works). - let hrr = calculatehrr(minhr, maxhr); - console.log(hrr); - - //Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. - let hr = exsHrmStats.getValue(); - let hr1 = hr; - // These letiables display next and previous HR zone. - //get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonnen method - //60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack - let minzone2 = hrr * 0.6 + minhr; - let maxzone2 = hrr * 0.7 + minhr; - let maxzone3 = hrr * 0.8 + minhr; - let maxzone4 = hrr * 0.9 + minhr; - let maxzone5 = hrr * 0.99 + minhr; - - // HR data: large, readable, in the middle of the screen - function drawHR() { - g.setFontAlign(-1,0,0); - g.clearRect(Rdiv(x,11/4),Rdiv(y,2)-25,Rdiv(x,11/4)+50*2,Rdiv(y,2)+25); - g.setColor(g.theme.fg); - g.setFont("Vector",50); - g.drawString(hr, Rdiv(x,11/4), Rdiv(y,2)+4); - } - - function drawWaitHR() { - g.setColor(g.theme.fg); - // Waiting for HRM - g.setFontAlign(0,0,0); - g.setFont("Vector",50); - g.drawString("--", Rdiv(x,2)+4, Rdiv(y,2)+4); - - // Waiting for current Zone - g.setFont("Vector",24); - g.drawString("Z-", Rdiv(x,4.3), Rdiv(y,2)+2); - - // waiting for upper and lower limit of current zone - g.setFont("Vector",20); - g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/2)); - g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/7)); - } - - //These functions call arcs to show different HR zones. - - //To shorten the code, I'll reference some letiables and reuse them. - let centreX = R.x + 0.5 * R.w; - let centreY = R.y + 0.5 * R.h; - let minRadius = 0.38 * R.h; - let maxRadius = 0.50 * R.h; - - //draw background image (dithered green zones)(I should draw different zones in different dithered colors) - const HRzones= require("graphics_utils"); - let minRadiusz = 0.44 * R.h; - let startAngle = HRzones.degreesToRadians(-88.5); - let endAngle = HRzones.degreesToRadians(268.5); - - function drawBgArc() { - g.setColor(g.theme.dark==false?0xC618:"#002200"); - HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); - } - - const zones = require("graphics_utils"); - //####### A function to simplify a bit the code ###### - function simplify (sA, eA, Z, currentZone, lastZone) { - let startAngle = zones.degreesToRadians(sA); - let endAngle = zones.degreesToRadians(eA); - if (currentZone == lastZone) zones.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); - else zones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); - g.setFont("Vector",24); - g.clearRect(Rdiv(x,4.3)-12, Rdiv(y,2)+2-12,Rdiv(x,4.3)+12, Rdiv(y,2)+2+12); - g.setFontAlign(0,0,0); - g.drawString(Z, Rdiv(x,4.3), Rdiv(y,2)+2); - } - - function zoning (max, min) { // draw values of upper and lower limit of current zone - g.setFont("Vector",20); - g.setColor(g.theme.fg); - g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/2)-10,Rdiv(x,2)+20*2, Rdiv(y,9/2)+10); - g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/7)-10,Rdiv(x,2)+20*2, Rdiv(y,9/7)+10); - g.setFontAlign(0,0,0); - g.drawString(max, Rdiv(x,2), Rdiv(y,9/2)); - g.drawString(min, Rdiv(x,2), Rdiv(y,9/7)); - } - - function clearCurrentZone() { // Clears the extension of the current zone by painting the extension area in background color - g.setColor(g.theme.bg); - HRzones.fillArc(g, centreX, centreY, minRadius-1, minRadiusz, startAngle, endAngle); - } - - function getZone(zone) { - drawBgArc(); - clearCurrentZone(); - if (zone >= 0) {zoning(minzone2, minhr);g.setColor("#00ffff");simplify(-88.5, -45, "Z1", 0, zone);} - if (zone >= 1) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-43.5, -21.5, "Z2", 1, zone);} - if (zone >= 2) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-20, 1.5, "Z2", 2, zone);} - if (zone >= 3) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(3, 24, "Z2", 3, zone);} - if (zone >= 4) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(25.5, 46.5, "Z3", 4, zone);} - if (zone >= 5) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(48, 69, "Z3", 5, zone);} - if (zone >= 6) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(70.5, 91.5, "Z3", 6, zone);} - if (zone >= 7) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(93, 114.5, "Z4", 7, zone);} - if (zone >= 8) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(116, 137.5, "Z4", 8, zone);} - if (zone >= 9) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(139, 160, "Z4", 9, zone);} - if (zone >= 10) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(161.5, 182.5, "Z5", 10, zone);} - if (zone >= 11) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(184, 205, "Z5", 11, zone);} - if (zone == 12) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(206.5, 227.5, "Z5", 12, zone);} - } - - function getZoneAlert() { - const HRzonemax = require("graphics_utils"); - let centreX1,centreY1,maxRadius1 = 1; - let minRadius = 0.40 * R.h; - let startAngle1 = HRzonemax.degreesToRadians(-90); - let endAngle1 = HRzonemax.degreesToRadians(270); - g.setFont("Vector",38);g.setColor("#ff0000"); - HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); - g.drawString("ALERT", 26,66); - } - - //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. - let subZoneLast; - function drawZones() { - if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawArrows(); drawHR();} // Reset UI when coming down from zone alert. - if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} // Z1 - else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} // Z2a - else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} // Z2b - else if (hr <= hrr * 0.70 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getZone(subZoneLast);}} // Z2c - else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getZone(subZoneLast);}} // Z3a - else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getZone(subZoneLast);}} // Z3b - else if (hr <= hrr * 0.80 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getZone(subZoneLast);}} // Z3c - else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getZone(subZoneLast);}} // Z4a - else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getZone(subZoneLast);}} // Z4b - else if (hr <= hrr * 0.90 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getZone(subZoneLast);}} // Z4c - else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getZone(subZoneLast);}} // Z5a - else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getZone(subZoneLast);}} // Z5b - else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getZone(subZoneLast);}} // Z5c - else if (hr >= maxhr - 2) {subZoneLast=13; g.clear();getZoneAlert();} // Alert - } - - function initDraw() { - drawArrows(); - drawWaitHR(); - drawBgArc(); - //drawZones(); - } - - let hrLast; - //h = 0; // Used to force hr update to trigger draws, together with `if (h!=0) hr = h;` below. - function updateUI() { // Update UI, only draw if warranted by change in HR. - hrLast = hr; - hr = exsHrmStats.getValue(); - //if (h!=0) hr = h; - if (hr!=hrLast) { - drawHR(); - drawZones(); - } //g.setColor(g.theme.fg).drawLine(175/2,0,175/2,175).drawLine(0,175/2,175,175/2); // Used to align UI elements. - } - - initDraw(); - - // check for updates every second. - karvonnenInterval = setInterval(function() { - if (!isMenuDisplayed && karvonnenActive) updateUI(); - }, 1000); - - return karvonnenInterval; -}) diff --git a/apps/run/metadata.json b/apps/run/metadata.json index ad23519e7..933576a5d 100644 --- a/apps/run/metadata.json +++ b/apps/run/metadata.json @@ -1,42 +1,16 @@ -{ - "id": "run", +{ "id": "run", "name": "Run", - "version": "0.15", + "version":"0.14", "description": "Displays distance, time, steps, cadence, pace and more for runners.", "icon": "app.png", "tags": "run,running,fitness,outdoors,gps", - "supports": [ - "BANGLEJS", - "BANGLEJS2" - ], - "screenshots": [ - { - "url": "screenshot.png" - } - ], + "supports" : ["BANGLEJS","BANGLEJS2"], + "screenshots": [{"url":"screenshot.png"}], "readme": "README.md", "storage": [ - { - "name": "run.app.js", - "url": "app.js" - }, - { - "name": "run.img", - "url": "app-icon.js", - "evaluate": true - }, - { - "name": "run.settings.js", - "url": "settings.js" - }, - { - "name": "run_karvonnen", - "url": "karvonnen.js" - } + {"name":"run.app.js","url":"app.js"}, + {"name":"run.img","url":"app-icon.js","evaluate":true}, + {"name":"run.settings.js","url":"settings.js"} ], - "data": [ - { - "name": "run.json" - } - ] + "data": [{"name":"run.json"}] } diff --git a/apps/run/settings.js b/apps/run/settings.js index 050eed4b8..0312200a3 100644 --- a/apps/run/settings.js +++ b/apps/run/settings.js @@ -31,10 +31,6 @@ notifications: [], }, }, - HRM: { - min: 65, - max: 165, - }, }, storage.readJSON(SETTINGS_FILE, 1) || {}); function saveSettings() { storage.write(SETTINGS_FILE, settings) @@ -129,29 +125,5 @@ 'Box 6': getBoxChooser("B6"), }); menu[/*LANG*/"Boxes"] = function() { E.showMenu(boxMenu)}; - - var hrmMenu = { - '< Back': function() { E.showMenu(menu) }, - } - - menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; - hrmMenu[/*LANG*/"min"] = { - min: 1, max: 100, - value: settings.HRM.min, - format: w => w, - onchange: w => { - settings.HRM.min = w; - saveSettings(); - }, - } - hrmMenu[/*LANG*/"max"] = { - min: 120, max: 190, - value: settings.HRM.max, - format: v => v, - onchange: v => { - settings.HRM.max = v; - saveSettings(); - }, - } E.showMenu(menu); }) diff --git a/apps/runplus/ChangeLog b/apps/runplus/ChangeLog deleted file mode 100644 index 81678d788..000000000 --- a/apps/runplus/ChangeLog +++ /dev/null @@ -1,17 +0,0 @@ -0.01: New App! -0.02: Set pace format to mm:ss, time format to h:mm:ss, - added settings to opt out of GPS and HRM -0.03: Fixed distance calculation, tested against Garmin Etrex, Amazfit GTS 2 -0.04: Use the exstats module, and make what is displayed configurable -0.05: exstats updated so update 'distance' label is updated, option for 'speed' -0.06: Add option to record a run using the recorder app automatically -0.07: Fix crash if an odd number of active boxes are configured (fix #1473) -0.08: Added support for notifications from exstats. Support all stats from exstats -0.09: Fix broken start/stop if recording not enabled (fix #1561) -0.10: Don't allow the same setting to be chosen for 2 boxes (fix #1578) -0.11: Notifications fixes -0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 -0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) -0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working -0.15: (beta) Swipe to intensity interface a la Karvonnen (curtesy of - FTeacher at https://github.com/f-teacher) diff --git a/apps/runplus/README.md b/apps/runplus/README.md deleted file mode 100644 index 7f645b518..000000000 --- a/apps/runplus/README.md +++ /dev/null @@ -1,69 +0,0 @@ -# Run App - -This app allows you to display the status of your run, it -shows distance, time, steps, cadence, pace and more. - -To use it, start the app and press the middle button so that -the red `STOP` in the bottom right turns to a green `RUN`. - -## Display - -* `DIST` - the distance travelled based on the GPS (if you have a GPS lock). - * NOTE: this is based on the GPS coordinates which are not 100% accurate, especially initially. As - the GPS updates your position as it gets more satellites your position changes and the distance - shown will increase, even if you are standing still. -* `TIME` - the elapsed time for your run -* `PACE` - the number of minutes it takes you to run a given distance, configured in settings (default 1km) **based on your run so far** -* `HEART (BPM)` - Your current heart rate -* `Max BPM` - Your maximum heart rate reached during the run -* `STEPS` - Steps since you started exercising -* `CADENCE` - Steps per second based on your step rate *over the last minute* -* `GPS` - this is green if you have a GPS lock. GPS is turned on automatically -so if you have no GPS lock you just need to wait. -* The current time is displayed right at the bottom of the screen -* `RUN/STOP` - whether the distance for your run is being displayed or not - -## Recording Tracks - -When the `Recorder` app is installed, `Run` will automatically start and stop tracks -as needed, prompting you to overwrite or begin a new track if necessary. - -## Settings - -Under `Settings` -> `App` -> `Run` you can change settings for this app. - -* `Record Run` (only displayed if `Recorder` app installed) should the Run app automatically -record GPS/HRM/etc data every time you start a run? -* `Pace` is the distance that pace should be shown over - 1km, 1 mile, 1/2 Marathon or 1 Marathon -* `Boxes` leads to a submenu where you can configure what is shown in each of the 6 boxes on the display. - Available stats are "Time", "Distance", "Steps", "Heart (BPM)", "Max BPM", "Pace (avg)", "Pace (curr)", "Speed", and "Cadence". - Any box set to "-" will display no information. - * Box 1 is the top left (defaults to "Distance") - * Box 2 is the top right (defaults to "Time") - * Box 3 is the middle left (defaults to "Pace (avg)") - * Box 4 is the middle right (defaults to "Heart (BPM)") - * Box 5 is the bottom left (defaults to "Steps") - * Box 6 is the bottom right (defaults to "Cadence") -* `Notifications` leads to a submenu where you can configure if the app will notify you after -your distance, steps, or time repeatedly pass your configured thresholds - * `Ntfy Dist`: The distance that you must pass before you are notified. Follows the `Pace` options - * "Off" (default), "1km", "1 mile", "1/2 Marathon", "1 Marathon" - * `Ntfy Steps`: The number of steps that must pass before you are notified. - * "Off" (default), 100, 500, 1000, 5000, 10000 - * `Ntfy Time`: The amount of time that must pass before you are notified. - * "Off" (default), "30 sec", "1 min", "2 min", "5 min", "10 min", "30 min", "1 hour" - * `Dist Pattern`: The vibration pattern to use to notify you about meeting your distance threshold - * `Step Pattern`: The vibration pattern to use to notify you about meeting your step threshold - * `Time Pattern`: The vibration pattern to use to notify you about meeting your time threshold - -## TODO - -* Keep a log of each run's stats (distance/steps/etc) - -## Development - -This app uses the [`exstats` module](https://github.com/espruino/BangleApps/blob/master/modules/exstats.js). When uploaded via the -app loader, the module is automatically included in the app's source. However -when developing via the IDE the module won't get pulled in by default. - -There are some options to fix this easily - please check out the [modules README.md file](https://github.com/espruino/BangleApps/blob/master/modules/README.md) diff --git a/apps/runplus/app-icon.js b/apps/runplus/app-icon.js deleted file mode 100644 index a97d1b8ce..000000000 --- a/apps/runplus/app-icon.js +++ /dev/null @@ -1 +0,0 @@ -require("heatshrink").decompress(atob("mEw4UA///pH9vEFt9TIW0FqALJitUBZNVqoLqgo4BHZAUBtBTHgILB1XAEREV1WsEQ9AgWq1ALHgEO1WtBYxCBhWq0pdInWq2tABY8q1WVBZGq1XFBZS/IKQRvCDIsP9WsBZP60CTCBYs//+wLxALBTQ4AB///+AKHgYLB/gLK/4LHh//AIIwFitVr/8DIIwFLANXBAILIqogBn7DBEYrXBeQRgIBYKmHDgYLLZRBACBZYKJZIILKKRZeWgJGKAFQA==")) diff --git a/apps/runplus/app.js b/apps/runplus/app.js deleted file mode 100644 index ccfa0749a..000000000 --- a/apps/runplus/app.js +++ /dev/null @@ -1,194 +0,0 @@ -// Use widget utils to show/hide widgets -let wu = require("widget_utils"); - -let runInterval; -let karvonnenActive = false; -// Run interface wrapped in a function -let ExStats = require("exstats"); -let B2 = process.env.HWVERSION===2; -let Layout = require("Layout"); -let locale = require("locale"); -let fontHeading = "6x8:2"; -let fontValue = B2 ? "6x15:2" : "6x8:3"; -let headingCol = "#888"; -let fixCount = 0; -let isMenuDisplayed = false; - -g.reset().clear(); -Bangle.loadWidgets(); -Bangle.drawWidgets(); -wu.show(); - -// --------------------------- -let settings = Object.assign({ - record: true, - B1: "dist", - B2: "time", - B3: "pacea", - B4: "bpm", - B5: "step", - B6: "caden", - paceLength: 1000, - notify: { - dist: { - value: 0, - notifications: [], - }, - step: { - value: 0, - notifications: [], - }, - time: { - value: 0, - notifications: [], - }, - HRM: { - min: 65, - max: 170, - } - }, -}, require("Storage").readJSON("run.json", 1) || {}); -let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); -let exs = ExStats.getStats(statIDs, settings); -// --------------------------- - -// Called to start/stop running -function onStartStop() { - let running = !exs.state.active; - let prepPromises = []; - - // start/stop recording - // Do this first in case recorder needs to prompt for - // an overwrite before we start tracking exstats - if (settings.record && WIDGETS["recorder"]) { - if (running) { - isMenuDisplayed = true; - prepPromises.push( - WIDGETS["recorder"].setRecording(true).then(() => { - isMenuDisplayed = false; - layout.setUI(); // grab our input handling again - layout.forgetLazyState(); - layout.render(); - }) - ); - } else { - prepPromises.push( - WIDGETS["recorder"].setRecording(false) - ); - } - } - - if (!prepPromises.length) // fix for Promise.all bug in 2v12 - prepPromises.push(Promise.resolve()); - - Promise.all(prepPromises) - .then(() => { - if (running) { - exs.start(); - } else { - exs.stop(); - } - layout.button.label = running ? "STOP" : "START"; - layout.status.label = running ? "RUN" : "STOP"; - layout.status.bgCol = running ? "#0f0" : "#f00"; - // if stopping running, don't clear state - // so we can at least refer to what we've done - layout.render(); - }); -} - -let lc = []; -// Load stats in pair by pair -for (let i=0;ilayout[e.id].label = e.getString()); - if (sb) sb.on('changed', e=>layout[e.id].label = e.getString()); -} -// At the bottom put time/GPS state/etc -lc.push({ type:"h", filly:1, c:[ - {type:"txt", font:fontHeading, label:"GPS", id:"gps", fillx:1, bgCol:"#f00" }, - {type:"txt", font:fontHeading, label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg }, - {type:"txt", font:fontHeading, label:"STOP", id:"status", fillx:1 } -]}); -// Now calculate the layout -let layout = new Layout( { - type:"v", c: lc -},{lazy:true, btns:[{ label:"START", cb: ()=>{if (karvonnenActive) {stopKarvonnenUI();run();} onStartStop();}, id:"button"}]}); -delete lc; -layout.render(); - -function configureNotification(stat) { - stat.on('notify', (e)=>{ - settings.notify[e.id].notifications.reduce(function (promise, buzzPattern) { - return promise.then(function () { - return Bangle.buzz(buzzPattern[0], buzzPattern[1]); - }); - }, Promise.resolve()); - }); -} - -Object.keys(settings.notify).forEach((statType) => { - if (settings.notify[statType].increment > 0 && exs.stats[statType]) { - configureNotification(exs.stats[statType]); - } -}); - -// Handle GPS state change for icon -Bangle.on("GPS", function(fix) { - layout.gps.bgCol = fix.fix ? "#0f0" : "#f00"; - if (!fix.fix) return; // only process actual fixes - if (fixCount++ === 0) { - Bangle.buzz(); // first fix, does not need to respect quiet mode - } -}); - -// run() function used to switch between traditional run UI and karvonnen UI -function run() { - wu.show(); - layout.lazy = false; - layout.render(); - layout.lazy = true; - // We always call ourselves once a second to update - if (!runInterval){ - runInterval = setInterval(function() { - layout.clock.label = locale.time(new Date(),1); - if (!isMenuDisplayed && !karvonnenActive) layout.render(); - }, 1000); - } -} -run(); - -/////////////////////////////////////////////// -// Karvonnen -/////////////////////////////////////////////// - -function stopRunUI() { - // stop updating and drawing the traditional run app UI - clearInterval(runInterval); - runInterval = undefined; - karvonnenActive = true; -} - -function stopKarvonnenUI() { - g.reset().clear(); - clearInterval(karvonnenInterval); - karvonnenInterval = undefined; - karvonnenActive = false; -} - -let karvonnenInterval; -// Define the function to go back and forth between the different UI's -function swipeHandler(LR,_) { - if (LR==-1 && karvonnenActive && !isMenuDisplayed) {stopKarvonnenUI(); run();} - if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); karvonnenInterval = eval(require("Storage").read("run_karvonnen"))(settings.HRM, exs.stats.bpm);} -} -// Listen for swipes with the swipeHandler -Bangle.on("swipe", swipeHandler); diff --git a/apps/runplus/app.png b/apps/runplus/app.png deleted file mode 100644 index 7059b8b015e20039a96de8b65c8a6b68a5e51e18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1479 zcmV;&1vvVNP)b0~r9hI1hzN2C_Hz2bec46d zz32!1f7|Dr^Zft+eV+5aXV1bTJi@~b@gPX$zNip1Yz1>vN2mz2DMEkvlG@MN zqD@lE?a)(59(>u0=Kppec*EA5(*zQ(EG3+(+KI->CEFJ!ACP%5!I+F&=p{{UFEnH!o7WN}(7DfEF{6T=^qRTOGUUmDCINa`%K?dqCzyBw&^& zdx;n90#h)O*AZj`^*@L)UE%?ZC>&z+*w0Pj=Mr*u5X*l)p2LibbmVEnr6riETg&$lZ8)JSSrFFIvt>|1LfBuoykZR)&GJv4Nif!en;z zv+6Z;L-k`+==0YD>-(E?LK%{G3lE#^`JOB$P&RcWluLnM)#~Vk(_duC*`K_4L>V>S z)_4dF#+CBq(XN1$@$$f&f%ft_-N11%bdLd>txt@&{Fx`lWV(+H188fpdoMWEz{=c= zcS=M^psn$7;>Mk!^KP#d`utPCk6iBMM%oOs0tuJ37nQ16rohH)E z9ia`tY}y~?;W9hY+Ci=jL57GcSZ9mZX%$dBo+%nx{F~SG>u0QvN67NBtqYU0IzJ12 z!D%4xE@^d0`F6j&s+C&7&h>F)stg0CXcP_pe^xQKQS72jOY-(wh zZbX~G&?_#4KvUbwYbW!Gs64aVQ65`xr~;X3@&0)ixmMMvar5@_BseI*>bwB=Hsh4X zYQh$!?Cq~z?1DoTIA3l2sj5-q2GG>pLe-60r0n}JscF?|Pu=!AaWEs^-w{4*u-m|v z)cN}2e|5diF%6APc(zvE@zj|5xTt9M^e(*}a5ghB(al~?Yp}~eT3VX+_&;u68O^;r zFm#Zy>3N^}(KCW>&hyn7OqS~|H4F%<8>aciPOVnaXAj8ih*=;qfnl~5NeLTDd^m8~ zvnv)fz-)*f*%Y>B(}4>B-+uJwvah5;)T5WD&l4qTwmGbG5^Ni*$W&M4^}G>c@+r0 zm&L6n!K$N!Oe1_uD^fG^zOXju@RlWhrFCBC&eabb;-_mPZum831lFJkDuuov#6kU5 z4CF+`AmwiE&BPU?TrL(A+P>=nva%L?1T`4WzcBdbD0fZgQOG$4`W)s&T>c@z;lw?$ z*r#$R-lF#xBG~4P-1p~Z&LlR|e(BYTGQ71roRQk)24wckiNM_6L75_6I@Icn{4O=n ze($4X(0i|)Kwp^SEDqOJAUkp)FsXM?t`S20EwnAT>>nDL9jAl(3m`*#gmZ99% of HRR+minHR = serious risk of heart attack - let minzone2 = hrr * 0.6 + minhr; - let maxzone2 = hrr * 0.7 + minhr; - let maxzone3 = hrr * 0.8 + minhr; - let maxzone4 = hrr * 0.9 + minhr; - let maxzone5 = hrr * 0.99 + minhr; - - // HR data: large, readable, in the middle of the screen - function drawHR() { - g.setFontAlign(-1,0,0); - g.clearRect(Rdiv(x,11/4),Rdiv(y,2)-25,Rdiv(x,11/4)+50*2,Rdiv(y,2)+25); - g.setColor(g.theme.fg); - g.setFont("Vector",50); - g.drawString(hr, Rdiv(x,11/4), Rdiv(y,2)+4); - } - - function drawWaitHR() { - g.setColor(g.theme.fg); - // Waiting for HRM - g.setFontAlign(0,0,0); - g.setFont("Vector",50); - g.drawString("--", Rdiv(x,2)+4, Rdiv(y,2)+4); - - // Waiting for current Zone - g.setFont("Vector",24); - g.drawString("Z-", Rdiv(x,4.3), Rdiv(y,2)+2); - - // waiting for upper and lower limit of current zone - g.setFont("Vector",20); - g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/2)); - g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/7)); - } - - //These functions call arcs to show different HR zones. - - //To shorten the code, I'll reference some letiables and reuse them. - let centreX = R.x + 0.5 * R.w; - let centreY = R.y + 0.5 * R.h; - let minRadius = 0.38 * R.h; - let maxRadius = 0.50 * R.h; - - //draw background image (dithered green zones)(I should draw different zones in different dithered colors) - const HRzones= require("graphics_utils"); - let minRadiusz = 0.44 * R.h; - let startAngle = HRzones.degreesToRadians(-88.5); - let endAngle = HRzones.degreesToRadians(268.5); - - function drawBgArc() { - g.setColor(g.theme.dark==false?0xC618:"#002200"); - HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); - } - - const zones = require("graphics_utils"); - //####### A function to simplify a bit the code ###### - function simplify (sA, eA, Z, currentZone, lastZone) { - let startAngle = zones.degreesToRadians(sA); - let endAngle = zones.degreesToRadians(eA); - if (currentZone == lastZone) zones.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); - else zones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); - g.setFont("Vector",24); - g.clearRect(Rdiv(x,4.3)-12, Rdiv(y,2)+2-12,Rdiv(x,4.3)+12, Rdiv(y,2)+2+12); - g.setFontAlign(0,0,0); - g.drawString(Z, Rdiv(x,4.3), Rdiv(y,2)+2); - } - - function zoning (max, min) { // draw values of upper and lower limit of current zone - g.setFont("Vector",20); - g.setColor(g.theme.fg); - g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/2)-10,Rdiv(x,2)+20*2, Rdiv(y,9/2)+10); - g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/7)-10,Rdiv(x,2)+20*2, Rdiv(y,9/7)+10); - g.setFontAlign(0,0,0); - g.drawString(max, Rdiv(x,2), Rdiv(y,9/2)); - g.drawString(min, Rdiv(x,2), Rdiv(y,9/7)); - } - - function clearCurrentZone() { // Clears the extension of the current zone by painting the extension area in background color - g.setColor(g.theme.bg); - HRzones.fillArc(g, centreX, centreY, minRadius-1, minRadiusz, startAngle, endAngle); - } - - function getZone(zone) { - drawBgArc(); - clearCurrentZone(); - if (zone >= 0) {zoning(minzone2, minhr);g.setColor("#00ffff");simplify(-88.5, -45, "Z1", 0, zone);} - if (zone >= 1) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-43.5, -21.5, "Z2", 1, zone);} - if (zone >= 2) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-20, 1.5, "Z2", 2, zone);} - if (zone >= 3) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(3, 24, "Z2", 3, zone);} - if (zone >= 4) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(25.5, 46.5, "Z3", 4, zone);} - if (zone >= 5) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(48, 69, "Z3", 5, zone);} - if (zone >= 6) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(70.5, 91.5, "Z3", 6, zone);} - if (zone >= 7) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(93, 114.5, "Z4", 7, zone);} - if (zone >= 8) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(116, 137.5, "Z4", 8, zone);} - if (zone >= 9) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(139, 160, "Z4", 9, zone);} - if (zone >= 10) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(161.5, 182.5, "Z5", 10, zone);} - if (zone >= 11) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(184, 205, "Z5", 11, zone);} - if (zone == 12) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(206.5, 227.5, "Z5", 12, zone);} - } - - function getZoneAlert() { - const HRzonemax = require("graphics_utils"); - let centreX1,centreY1,maxRadius1 = 1; - let minRadius = 0.40 * R.h; - let startAngle1 = HRzonemax.degreesToRadians(-90); - let endAngle1 = HRzonemax.degreesToRadians(270); - g.setFont("Vector",38);g.setColor("#ff0000"); - HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); - g.drawString("ALERT", 26,66); - } - - //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. - let subZoneLast; - function drawZones() { - if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawArrows(); drawHR();} // Reset UI when coming down from zone alert. - if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} // Z1 - else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} // Z2a - else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} // Z2b - else if (hr <= hrr * 0.70 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getZone(subZoneLast);}} // Z2c - else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getZone(subZoneLast);}} // Z3a - else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getZone(subZoneLast);}} // Z3b - else if (hr <= hrr * 0.80 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getZone(subZoneLast);}} // Z3c - else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getZone(subZoneLast);}} // Z4a - else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getZone(subZoneLast);}} // Z4b - else if (hr <= hrr * 0.90 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getZone(subZoneLast);}} // Z4c - else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getZone(subZoneLast);}} // Z5a - else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getZone(subZoneLast);}} // Z5b - else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getZone(subZoneLast);}} // Z5c - else if (hr >= maxhr - 2) {subZoneLast=13; g.clear();getZoneAlert();} // Alert - } - - function initDraw() { - drawArrows(); - drawWaitHR(); - drawBgArc(); - //drawZones(); - } - - let hrLast; - //h = 0; // Used to force hr update to trigger draws, together with `if (h!=0) hr = h;` below. - function updateUI() { // Update UI, only draw if warranted by change in HR. - hrLast = hr; - hr = exsHrmStats.getValue(); - //if (h!=0) hr = h; - if (hr!=hrLast) { - drawHR(); - drawZones(); - } //g.setColor(g.theme.fg).drawLine(175/2,0,175/2,175).drawLine(0,175/2,175,175/2); // Used to align UI elements. - } - - initDraw(); - - // check for updates every second. - karvonnenInterval = setInterval(function() { - if (!isMenuDisplayed && karvonnenActive) updateUI(); - }, 1000); - - return karvonnenInterval; -}) diff --git a/apps/runplus/metadata.json b/apps/runplus/metadata.json deleted file mode 100644 index ad23519e7..000000000 --- a/apps/runplus/metadata.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "id": "run", - "name": "Run", - "version": "0.15", - "description": "Displays distance, time, steps, cadence, pace and more for runners.", - "icon": "app.png", - "tags": "run,running,fitness,outdoors,gps", - "supports": [ - "BANGLEJS", - "BANGLEJS2" - ], - "screenshots": [ - { - "url": "screenshot.png" - } - ], - "readme": "README.md", - "storage": [ - { - "name": "run.app.js", - "url": "app.js" - }, - { - "name": "run.img", - "url": "app-icon.js", - "evaluate": true - }, - { - "name": "run.settings.js", - "url": "settings.js" - }, - { - "name": "run_karvonnen", - "url": "karvonnen.js" - } - ], - "data": [ - { - "name": "run.json" - } - ] -} diff --git a/apps/runplus/screenshot.png b/apps/runplus/screenshot.png deleted file mode 100644 index 1a813f19dfe304e3d8bf711692fd2abf1013c391..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3716 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.id); - - // ...and overwrite them with any saved values - // This way saved values are preserved if a new version adds more settings - const storage = require('Storage') - let settings = Object.assign({ - record: true, - B1: "dist", - B2: "time", - B3: "pacea", - B4: "bpm", - B5: "step", - B6: "caden", - paceLength: 1000, // TODO: Default to either 1km or 1mi based on locale - notify: { - dist: { - increment: 0, - notifications: [], - }, - step: { - increment: 0, - notifications: [], - }, - time: { - increment: 0, - notifications: [], - }, - }, - HRM: { - min: 65, - max: 165, - }, - }, storage.readJSON(SETTINGS_FILE, 1) || {}); - function saveSettings() { - storage.write(SETTINGS_FILE, settings) - } - - function getBoxChooser(boxID) { - return { - min: 0, max: statsIDs.length-1, - value: Math.max(statsIDs.indexOf(settings[boxID]),0), - format: v => statsList[v].name, - onchange: v => { - settings[boxID] = statsIDs[v]; - saveSettings(); - }, - } - } - - function sampleBuzz(buzzPatterns) { - return buzzPatterns.reduce(function (promise, buzzPattern) { - return promise.then(function () { - return Bangle.buzz(buzzPattern[0], buzzPattern[1]); - }); - }, Promise.resolve()); - } - - var menu = { - '': { 'title': 'Run' }, - '< Back': back, - }; - if (global.WIDGETS&&WIDGETS["recorder"]) - menu[/*LANG*/"Record Run"] = { - value : !!settings.record, - onchange : v => { - settings.record = v; - saveSettings(); - } - }; - var notificationsMenu = { - '< Back': function() { E.showMenu(menu) }, - } - menu[/*LANG*/"Notifications"] = function() { E.showMenu(notificationsMenu)}; - ExStats.appendMenuItems(menu, settings, saveSettings); - ExStats.appendNotifyMenuItems(notificationsMenu, settings, saveSettings); - var vibPatterns = [/*LANG*/"Off", ".", "-", "--", "-.-", "---"]; - var vibTimes = [ - [], - [[100, 1]], - [[300, 1]], - [[300, 1], [300, 0], [300, 1]], - [[300, 1],[300, 0], [100, 1], [300, 0], [300, 1]], - [[300, 1],[300, 0],[300, 1],[300, 0],[300, 1]], - ]; - notificationsMenu[/*LANG*/"Dist Pattern"] = { - value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.dist.notifications))), - min: 0, max: vibTimes.length - 1, - format: v => vibPatterns[v]||/*LANG*/"Off", - onchange: v => { - settings.notify.dist.notifications = vibTimes[v]; - sampleBuzz(vibTimes[v]); - saveSettings(); - } - } - notificationsMenu[/*LANG*/"Step Pattern"] = { - value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.step.notifications))), - min: 0, max: vibTimes.length - 1, - format: v => vibPatterns[v]||/*LANG*/"Off", - onchange: v => { - settings.notify.step.notifications = vibTimes[v]; - sampleBuzz(vibTimes[v]); - saveSettings(); - } - } - notificationsMenu[/*LANG*/"Time Pattern"] = { - value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.time.notifications))), - min: 0, max: vibTimes.length - 1, - format: v => vibPatterns[v]||/*LANG*/"Off", - onchange: v => { - settings.notify.time.notifications = vibTimes[v]; - sampleBuzz(vibTimes[v]); - saveSettings(); - } - } - var boxMenu = { - '< Back': function() { E.showMenu(menu) }, - } - Object.assign(boxMenu,{ - 'Box 1': getBoxChooser("B1"), - 'Box 2': getBoxChooser("B2"), - 'Box 3': getBoxChooser("B3"), - 'Box 4': getBoxChooser("B4"), - 'Box 5': getBoxChooser("B5"), - 'Box 6': getBoxChooser("B6"), - }); - menu[/*LANG*/"Boxes"] = function() { E.showMenu(boxMenu)}; - - var hrmMenu = { - '< Back': function() { E.showMenu(menu) }, - } - - menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; - hrmMenu[/*LANG*/"min"] = { - min: 1, max: 100, - value: settings.HRM.min, - format: w => w, - onchange: w => { - settings.HRM.min = w; - saveSettings(); - }, - } - hrmMenu[/*LANG*/"max"] = { - min: 120, max: 190, - value: settings.HRM.max, - format: v => v, - onchange: v => { - settings.HRM.max = v; - saveSettings(); - }, - } - E.showMenu(menu); -}) From 7a29f78223de67151d2a78835c200e3e2153319f Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 22:18:14 +0100 Subject: [PATCH 0309/1725] fork app "run" to "runplus" --- apps/runplus/ChangeLog | 15 ++++ apps/runplus/README.md | 69 +++++++++++++++++ apps/runplus/app-icon.js | 1 + apps/runplus/app.js | 145 ++++++++++++++++++++++++++++++++++++ apps/runplus/app.png | Bin 0 -> 1479 bytes apps/runplus/metadata.json | 16 ++++ apps/runplus/screenshot.png | Bin 0 -> 3716 bytes apps/runplus/settings.js | 129 ++++++++++++++++++++++++++++++++ 8 files changed, 375 insertions(+) create mode 100644 apps/runplus/ChangeLog create mode 100644 apps/runplus/README.md create mode 100644 apps/runplus/app-icon.js create mode 100644 apps/runplus/app.js create mode 100644 apps/runplus/app.png create mode 100644 apps/runplus/metadata.json create mode 100644 apps/runplus/screenshot.png create mode 100644 apps/runplus/settings.js diff --git a/apps/runplus/ChangeLog b/apps/runplus/ChangeLog new file mode 100644 index 000000000..95945be78 --- /dev/null +++ b/apps/runplus/ChangeLog @@ -0,0 +1,15 @@ +0.01: New App! +0.02: Set pace format to mm:ss, time format to h:mm:ss, + added settings to opt out of GPS and HRM +0.03: Fixed distance calculation, tested against Garmin Etrex, Amazfit GTS 2 +0.04: Use the exstats module, and make what is displayed configurable +0.05: exstats updated so update 'distance' label is updated, option for 'speed' +0.06: Add option to record a run using the recorder app automatically +0.07: Fix crash if an odd number of active boxes are configured (fix #1473) +0.08: Added support for notifications from exstats. Support all stats from exstats +0.09: Fix broken start/stop if recording not enabled (fix #1561) +0.10: Don't allow the same setting to be chosen for 2 boxes (fix #1578) +0.11: Notifications fixes +0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 +0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) +0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working diff --git a/apps/runplus/README.md b/apps/runplus/README.md new file mode 100644 index 000000000..7f645b518 --- /dev/null +++ b/apps/runplus/README.md @@ -0,0 +1,69 @@ +# Run App + +This app allows you to display the status of your run, it +shows distance, time, steps, cadence, pace and more. + +To use it, start the app and press the middle button so that +the red `STOP` in the bottom right turns to a green `RUN`. + +## Display + +* `DIST` - the distance travelled based on the GPS (if you have a GPS lock). + * NOTE: this is based on the GPS coordinates which are not 100% accurate, especially initially. As + the GPS updates your position as it gets more satellites your position changes and the distance + shown will increase, even if you are standing still. +* `TIME` - the elapsed time for your run +* `PACE` - the number of minutes it takes you to run a given distance, configured in settings (default 1km) **based on your run so far** +* `HEART (BPM)` - Your current heart rate +* `Max BPM` - Your maximum heart rate reached during the run +* `STEPS` - Steps since you started exercising +* `CADENCE` - Steps per second based on your step rate *over the last minute* +* `GPS` - this is green if you have a GPS lock. GPS is turned on automatically +so if you have no GPS lock you just need to wait. +* The current time is displayed right at the bottom of the screen +* `RUN/STOP` - whether the distance for your run is being displayed or not + +## Recording Tracks + +When the `Recorder` app is installed, `Run` will automatically start and stop tracks +as needed, prompting you to overwrite or begin a new track if necessary. + +## Settings + +Under `Settings` -> `App` -> `Run` you can change settings for this app. + +* `Record Run` (only displayed if `Recorder` app installed) should the Run app automatically +record GPS/HRM/etc data every time you start a run? +* `Pace` is the distance that pace should be shown over - 1km, 1 mile, 1/2 Marathon or 1 Marathon +* `Boxes` leads to a submenu where you can configure what is shown in each of the 6 boxes on the display. + Available stats are "Time", "Distance", "Steps", "Heart (BPM)", "Max BPM", "Pace (avg)", "Pace (curr)", "Speed", and "Cadence". + Any box set to "-" will display no information. + * Box 1 is the top left (defaults to "Distance") + * Box 2 is the top right (defaults to "Time") + * Box 3 is the middle left (defaults to "Pace (avg)") + * Box 4 is the middle right (defaults to "Heart (BPM)") + * Box 5 is the bottom left (defaults to "Steps") + * Box 6 is the bottom right (defaults to "Cadence") +* `Notifications` leads to a submenu where you can configure if the app will notify you after +your distance, steps, or time repeatedly pass your configured thresholds + * `Ntfy Dist`: The distance that you must pass before you are notified. Follows the `Pace` options + * "Off" (default), "1km", "1 mile", "1/2 Marathon", "1 Marathon" + * `Ntfy Steps`: The number of steps that must pass before you are notified. + * "Off" (default), 100, 500, 1000, 5000, 10000 + * `Ntfy Time`: The amount of time that must pass before you are notified. + * "Off" (default), "30 sec", "1 min", "2 min", "5 min", "10 min", "30 min", "1 hour" + * `Dist Pattern`: The vibration pattern to use to notify you about meeting your distance threshold + * `Step Pattern`: The vibration pattern to use to notify you about meeting your step threshold + * `Time Pattern`: The vibration pattern to use to notify you about meeting your time threshold + +## TODO + +* Keep a log of each run's stats (distance/steps/etc) + +## Development + +This app uses the [`exstats` module](https://github.com/espruino/BangleApps/blob/master/modules/exstats.js). When uploaded via the +app loader, the module is automatically included in the app's source. However +when developing via the IDE the module won't get pulled in by default. + +There are some options to fix this easily - please check out the [modules README.md file](https://github.com/espruino/BangleApps/blob/master/modules/README.md) diff --git a/apps/runplus/app-icon.js b/apps/runplus/app-icon.js new file mode 100644 index 000000000..a97d1b8ce --- /dev/null +++ b/apps/runplus/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEw4UA///pH9vEFt9TIW0FqALJitUBZNVqoLqgo4BHZAUBtBTHgILB1XAEREV1WsEQ9AgWq1ALHgEO1WtBYxCBhWq0pdInWq2tABY8q1WVBZGq1XFBZS/IKQRvCDIsP9WsBZP60CTCBYs//+wLxALBTQ4AB///+AKHgYLB/gLK/4LHh//AIIwFitVr/8DIIwFLANXBAILIqogBn7DBEYrXBeQRgIBYKmHDgYLLZRBACBZYKJZIILKKRZeWgJGKAFQA==")) diff --git a/apps/runplus/app.js b/apps/runplus/app.js new file mode 100644 index 000000000..4038b8c1a --- /dev/null +++ b/apps/runplus/app.js @@ -0,0 +1,145 @@ +var ExStats = require("exstats"); +var B2 = process.env.HWVERSION===2; +var Layout = require("Layout"); +var locale = require("locale"); +var fontHeading = "6x8:2"; +var fontValue = B2 ? "6x15:2" : "6x8:3"; +var headingCol = "#888"; +var fixCount = 0; +var isMenuDisplayed = false; + +g.clear(); +Bangle.loadWidgets(); +Bangle.drawWidgets(); + +// --------------------------- +let settings = Object.assign({ + record: true, + B1: "dist", + B2: "time", + B3: "pacea", + B4: "bpm", + B5: "step", + B6: "caden", + paceLength: 1000, + notify: { + dist: { + value: 0, + notifications: [], + }, + step: { + value: 0, + notifications: [], + }, + time: { + value: 0, + notifications: [], + }, + }, +}, require("Storage").readJSON("run.json", 1) || {}); +var statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); +var exs = ExStats.getStats(statIDs, settings); +// --------------------------- + +// Called to start/stop running +function onStartStop() { + var running = !exs.state.active; + var prepPromises = []; + + // start/stop recording + // Do this first in case recorder needs to prompt for + // an overwrite before we start tracking exstats + if (settings.record && WIDGETS["recorder"]) { + if (running) { + isMenuDisplayed = true; + prepPromises.push( + WIDGETS["recorder"].setRecording(true).then(() => { + isMenuDisplayed = false; + layout.setUI(); // grab our input handling again + layout.forgetLazyState(); + layout.render(); + }) + ); + } else { + prepPromises.push( + WIDGETS["recorder"].setRecording(false) + ); + } + } + + if (!prepPromises.length) // fix for Promise.all bug in 2v12 + prepPromises.push(Promise.resolve()); + + Promise.all(prepPromises) + .then(() => { + if (running) { + exs.start(); + } else { + exs.stop(); + } + layout.button.label = running ? "STOP" : "START"; + layout.status.label = running ? "RUN" : "STOP"; + layout.status.bgCol = running ? "#0f0" : "#f00"; + // if stopping running, don't clear state + // so we can at least refer to what we've done + layout.render(); + }); +} + +var lc = []; +// Load stats in pair by pair +for (var i=0;ilayout[e.id].label = e.getString()); + if (sb) sb.on('changed', e=>layout[e.id].label = e.getString()); +} +// At the bottom put time/GPS state/etc +lc.push({ type:"h", filly:1, c:[ + {type:"txt", font:fontHeading, label:"GPS", id:"gps", fillx:1, bgCol:"#f00" }, + {type:"txt", font:fontHeading, label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg }, + {type:"txt", font:fontHeading, label:"STOP", id:"status", fillx:1 } +]}); +// Now calculate the layout +var layout = new Layout( { + type:"v", c: lc +},{lazy:true, btns:[{ label:"START", cb: onStartStop, id:"button"}]}); +delete lc; +layout.render(); + +function configureNotification(stat) { + stat.on('notify', (e)=>{ + settings.notify[e.id].notifications.reduce(function (promise, buzzPattern) { + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); + }, Promise.resolve()); + }); +} + +Object.keys(settings.notify).forEach((statType) => { + if (settings.notify[statType].increment > 0 && exs.stats[statType]) { + configureNotification(exs.stats[statType]); + } +}); + +// Handle GPS state change for icon +Bangle.on("GPS", function(fix) { + layout.gps.bgCol = fix.fix ? "#0f0" : "#f00"; + if (!fix.fix) return; // only process actual fixes + if (fixCount++ === 0) { + Bangle.buzz(); // first fix, does not need to respect quiet mode + } +}); +// We always call ourselves once a second to update +setInterval(function() { + layout.clock.label = locale.time(new Date(),1); + if (!isMenuDisplayed) layout.render(); +}, 1000); diff --git a/apps/runplus/app.png b/apps/runplus/app.png new file mode 100644 index 0000000000000000000000000000000000000000..7059b8b015e20039a96de8b65c8a6b68a5e51e18 GIT binary patch literal 1479 zcmV;&1vvVNP)b0~r9hI1hzN2C_Hz2bec46d zz32!1f7|Dr^Zft+eV+5aXV1bTJi@~b@gPX$zNip1Yz1>vN2mz2DMEkvlG@MN zqD@lE?a)(59(>u0=Kppec*EA5(*zQ(EG3+(+KI->CEFJ!ACP%5!I+F&=p{{UFEnH!o7WN}(7DfEF{6T=^qRTOGUUmDCINa`%K?dqCzyBw&^& zdx;n90#h)O*AZj`^*@L)UE%?ZC>&z+*w0Pj=Mr*u5X*l)p2LibbmVEnr6riETg&$lZ8)JSSrFFIvt>|1LfBuoykZR)&GJv4Nif!en;z zv+6Z;L-k`+==0YD>-(E?LK%{G3lE#^`JOB$P&RcWluLnM)#~Vk(_duC*`K_4L>V>S z)_4dF#+CBq(XN1$@$$f&f%ft_-N11%bdLd>txt@&{Fx`lWV(+H188fpdoMWEz{=c= zcS=M^psn$7;>Mk!^KP#d`utPCk6iBMM%oOs0tuJ37nQ16rohH)E z9ia`tY}y~?;W9hY+Ci=jL57GcSZ9mZX%$dBo+%nx{F~SG>u0QvN67NBtqYU0IzJ12 z!D%4xE@^d0`F6j&s+C&7&h>F)stg0CXcP_pe^xQKQS72jOY-(wh zZbX~G&?_#4KvUbwYbW!Gs64aVQ65`xr~;X3@&0)ixmMMvar5@_BseI*>bwB=Hsh4X zYQh$!?Cq~z?1DoTIA3l2sj5-q2GG>pLe-60r0n}JscF?|Pu=!AaWEs^-w{4*u-m|v z)cN}2e|5diF%6APc(zvE@zj|5xTt9M^e(*}a5ghB(al~?Yp}~eT3VX+_&;u68O^;r zFm#Zy>3N^}(KCW>&hyn7OqS~|H4F%<8>aciPOVnaXAj8ih*=;qfnl~5NeLTDd^m8~ zvnv)fz-)*f*%Y>B(}4>B-+uJwvah5;)T5WD&l4qTwmGbG5^Ni*$W&M4^}G>c@+r0 zm&L6n!K$N!Oe1_uD^fG^zOXju@RlWhrFCBC&eabb;-_mPZum831lFJkDuuov#6kU5 z4CF+`AmwiE&BPU?TrL(A+P>=nva%L?1T`4WzcBdbD0fZgQOG$4`W)s&T>c@z;lw?$ z*r#$R-lF#xBG~4P-1p~Z&LlR|e(BYTGQ71roRQk)24wckiNM_6L75_6I@Icn{4O=n ze($4X(0i|)Kwp^SEDqOJAUkp)FsXM?t`S20EwnAT>>nDL9jAl(3m`*#gmZdWt=rKSDd*uTr+%eqw4OIaxzdEo;5|cv`pDBSN47K|UJq=6VDzBkHWn*!;PlpF ze(^n}LDM%GMu;}M5I}j(GWAen6Un4xU5>-I1Dx#l>;Z{Cb7j|( zK<4L6>y{&Db9JC52kOi-}{Chnt6Ig+jZL(>VA`ls2Ey8Pr z5g^sQAZ*o1m(Vto)Z+Le8OKl6@3BpBwPY6bEyL(Q`O<}w+4^NdTV2%8y72;!hZNA~ z7e5!Cguz0u9-KA*OW;@CjDsB=R?KtX(W$m2Pvx*tiR%P@tJPcgjyRu_%KN-Z`7dnf9xz8B?mMSbYsWY$ z|DH%HG)k&{8R($3%9yHlny2>;l_#4B@At;kl=anmT@wvY{%ZH)iZ7^cMFZ6px|1Yg zb1ya^vEmFYaQ~Gc6CeBeow@CT2^;E8ZC`kZn$GO9|Vf ze?f%B`R>(U5;Fsxt@F(94D1X_aTMBG42no{a*+^|um0fr6#*HA0O~axgw%v{i~Gn5 z%02Wc*Kf85fv@=eY|eO2I1ODpIx{^8KPD41?X`$RNxNOt5&|Ct2}(i_R_5*k)J zrhRWRGxo0U8uqUHpH^(yB}QuJn>c3B)=f>Nyi6)) zOECeHxpTcTXV<(xwEb zL5K`^0C}h(kXu7@S)!O!?8U`7Pl_6cPWVjLk)lom+B7>(RjvIA_R~F%YcSB-v@x@@ zo{E$!+3*JZls|AoVBq3zHdp=$5cLS`VM7LhB9IgfSO>cieEb*>{Cw_r63#PFK>d_Geiezu=XmOLG9&hHfP!exIkoxY zu=Lu7Kvncq2B?F5C0 z{D1i+DS}UyX&d!9ejkpsod{l>J$TwvhFFasSSQPkFowWX5*(_FQP|JxzZK?LOcV5E zX~~8dj-F(O`rVy3P6gjS8u|#t7oqdOIXV&7Te5bH0+(BI62UQ)vg&QjqWVhPc^yY4 zrRUYvR)Bj}U7G9%6t!ZLxG>P|9aBt$Lkm?E08efy$6AtPvSxHz6D}Q9?={^jc7K*r z4&5>&fd5wdTS!ON-xx&ZXu$K@g$CP74GEv1ZmOa+S(1ZL&0gd z2wA44M^ee5V3>5YQCdwiorujC=%IR07&&Luc{Uk5p#o0>_qSu5UGM`mYg9plqT9k5Fm}m$@z|5W3Y&%BZz_t}4gunQ2dPQS0Ys-Jws1Af4#!lFjbGC3h$ZT>q z$>%JcvLGzd6(e&d1@u`l1kimf#+;zcH`&Ep;Z93=uAfnvj8rc(u{@y(Eh=D4!Y+C=>@{sS#;$nO zBe;o^+DZ0`Jmm7#Y?sguyYwCU(&r>&66>J>stxwllI=Wb(aSHh2K2S$LkQJ76TrDk zd5(p#Kg^YTp#FZFCdyO?ur#Lb?CBpzu3g%`;ty6`vlp+(o>f?e>y@Y*eIFYodI$mw zLF5;$P6`X(G=L(bmr&sLs1?6=sK+gE46(1}ZU#v!VP{1l1Lyqh=Jr1;`(IPq=V()# zY7Mrh#HE@25YZm`j9;9G>v|nruUC9Z#UGG}mNS=m z>8EXdN0Hn`mX}FkxkRd88+u!ECZ*!fsB}iJ!Lm&4MX^b5SJ4csi2S?Ltm$aVx805F zGs!LV4N2rF;F7ZGtN|)AJ3*y9qhf%e`PCm#-*o4BpCY96TsP$EONg{8A;IO91vsd_ zyC6~7Y*mX1Q6j5l>`cK`%%R_>z$oAc z{nAIY*HZF$;qcJvGESyoAuVcn`Tp&Yb-o;D7=08?eGkOjRj$jt0L6bA zwouU#--D%6gA3I*ybKPr+Z73ky6GjlyP=z@J2Q-W1hFDs|3Z_3MbJrVcISm|EgkSx z%#o7kjA(C2g5J$F2bF+t7|s&?%^Z=1zFK3c#L+lk?c20h*jLV|AJ0fDN;@p)mjX-I zx)`35$zn}cwL#_gUk&9jh^*@KP2q|Vwrhw4Vnw~CZ5p|Ak?>Y|A2aw~M?}KMH59^i zSZR_sak%ILj=h}sBL$=UkB(KRiw69X4 z+g3@Rmg66AH^Q{Pzowona#!&QJMkYAmviIum!RTbQzb{v9uCx#&24<4{*OP0sM_FN z^0IFQjCHDo7t|p|(+Bk3y=`Kx)u8r9|7s+-m`fGST>PpeB~wy5h&mC#cEsmGq)ngz zFO_6y=>(POfDggC#%KbX{i%y7Ssj(AoewgPKBvt`u_jGo*G@ek4#&$%9sHd1J7k;f zsxoe5O37SoPSzs`8~ofZ=D-1!$u$t_=L<9QWM2GXs=byV1e2twmJFzYG?>+jA*glEA|wtfm;ZnwmpG>`?G z6yps4eFN}1ZPCm#ivusQObV|16alTM(UWcQdJ1(ktbz3qO#0)|eNrMYGsVSM;-S#V z4;Kgw25E4<;+`jJ>M!AN;E?R?bhWA= zu8Q>QmqvsR*zjp*kg+>Ls(+t&g_#$jSDa1aQo@dQ(`geJV9WA z4_qe|J#kc_=XBxFT2AzD+uwLMxqrPl6+r{a16O}V46{AL6t%%z*i zU*q|ZKiWe83il}i`hXjPa_)rpovkqCjsL2m#{W{nUyJWPy*pfYy1Dn&JHpgTg=0a_ zYjGiKX*)6{I;Es}M569jLPI|f<{43aKv4^0%Rj(kC)AHEDuqeAxmHtte4qVDwV{}3 zqp%Q~Q*)rwkie6*LLvIRc`yT*`SBJY%*D64SP6-#b#1jWmy(1?ew+Jves z*3KaRLi6JQ_7gs$SFslk5g7rMHVp%Cslk@2RirS$?R4(!@hml*pD?%!4Yy&s=qBznd7RQ-OlBXj*JM}W|=r!{x0f1mfQs.id); + + // ...and overwrite them with any saved values + // This way saved values are preserved if a new version adds more settings + const storage = require('Storage') + let settings = Object.assign({ + record: true, + B1: "dist", + B2: "time", + B3: "pacea", + B4: "bpm", + B5: "step", + B6: "caden", + paceLength: 1000, // TODO: Default to either 1km or 1mi based on locale + notify: { + dist: { + increment: 0, + notifications: [], + }, + step: { + increment: 0, + notifications: [], + }, + time: { + increment: 0, + notifications: [], + }, + }, + }, storage.readJSON(SETTINGS_FILE, 1) || {}); + function saveSettings() { + storage.write(SETTINGS_FILE, settings) + } + + function getBoxChooser(boxID) { + return { + min: 0, max: statsIDs.length-1, + value: Math.max(statsIDs.indexOf(settings[boxID]),0), + format: v => statsList[v].name, + onchange: v => { + settings[boxID] = statsIDs[v]; + saveSettings(); + }, + } + } + + function sampleBuzz(buzzPatterns) { + return buzzPatterns.reduce(function (promise, buzzPattern) { + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); + }, Promise.resolve()); + } + + var menu = { + '': { 'title': 'Run' }, + '< Back': back, + }; + if (global.WIDGETS&&WIDGETS["recorder"]) + menu[/*LANG*/"Record Run"] = { + value : !!settings.record, + onchange : v => { + settings.record = v; + saveSettings(); + } + }; + var notificationsMenu = { + '< Back': function() { E.showMenu(menu) }, + } + menu[/*LANG*/"Notifications"] = function() { E.showMenu(notificationsMenu)}; + ExStats.appendMenuItems(menu, settings, saveSettings); + ExStats.appendNotifyMenuItems(notificationsMenu, settings, saveSettings); + var vibPatterns = [/*LANG*/"Off", ".", "-", "--", "-.-", "---"]; + var vibTimes = [ + [], + [[100, 1]], + [[300, 1]], + [[300, 1], [300, 0], [300, 1]], + [[300, 1],[300, 0], [100, 1], [300, 0], [300, 1]], + [[300, 1],[300, 0],[300, 1],[300, 0],[300, 1]], + ]; + notificationsMenu[/*LANG*/"Dist Pattern"] = { + value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.dist.notifications))), + min: 0, max: vibTimes.length - 1, + format: v => vibPatterns[v]||/*LANG*/"Off", + onchange: v => { + settings.notify.dist.notifications = vibTimes[v]; + sampleBuzz(vibTimes[v]); + saveSettings(); + } + } + notificationsMenu[/*LANG*/"Step Pattern"] = { + value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.step.notifications))), + min: 0, max: vibTimes.length - 1, + format: v => vibPatterns[v]||/*LANG*/"Off", + onchange: v => { + settings.notify.step.notifications = vibTimes[v]; + sampleBuzz(vibTimes[v]); + saveSettings(); + } + } + notificationsMenu[/*LANG*/"Time Pattern"] = { + value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.time.notifications))), + min: 0, max: vibTimes.length - 1, + format: v => vibPatterns[v]||/*LANG*/"Off", + onchange: v => { + settings.notify.time.notifications = vibTimes[v]; + sampleBuzz(vibTimes[v]); + saveSettings(); + } + } + var boxMenu = { + '< Back': function() { E.showMenu(menu) }, + } + Object.assign(boxMenu,{ + 'Box 1': getBoxChooser("B1"), + 'Box 2': getBoxChooser("B2"), + 'Box 3': getBoxChooser("B3"), + 'Box 4': getBoxChooser("B4"), + 'Box 5': getBoxChooser("B5"), + 'Box 6': getBoxChooser("B6"), + }); + menu[/*LANG*/"Boxes"] = function() { E.showMenu(boxMenu)}; + E.showMenu(menu); +}) From 4805b37f6896440189caf0da94d0060a63f7c61e Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 22:25:56 +0100 Subject: [PATCH 0310/1725] add changes to runplus --- apps/runplus/ChangeLog | 2 + apps/runplus/app.js | 131 +++++++++++++++------- apps/runplus/karvonnen.js | 216 +++++++++++++++++++++++++++++++++++++ apps/runplus/metadata.json | 42 ++++++-- apps/runplus/settings.js | 28 +++++ 5 files changed, 370 insertions(+), 49 deletions(-) create mode 100644 apps/runplus/karvonnen.js diff --git a/apps/runplus/ChangeLog b/apps/runplus/ChangeLog index 95945be78..81678d788 100644 --- a/apps/runplus/ChangeLog +++ b/apps/runplus/ChangeLog @@ -13,3 +13,5 @@ 0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working +0.15: (beta) Swipe to intensity interface a la Karvonnen (curtesy of + FTeacher at https://github.com/f-teacher) diff --git a/apps/runplus/app.js b/apps/runplus/app.js index 4038b8c1a..ccfa0749a 100644 --- a/apps/runplus/app.js +++ b/apps/runplus/app.js @@ -1,16 +1,23 @@ -var ExStats = require("exstats"); -var B2 = process.env.HWVERSION===2; -var Layout = require("Layout"); -var locale = require("locale"); -var fontHeading = "6x8:2"; -var fontValue = B2 ? "6x15:2" : "6x8:3"; -var headingCol = "#888"; -var fixCount = 0; -var isMenuDisplayed = false; +// Use widget utils to show/hide widgets +let wu = require("widget_utils"); -g.clear(); +let runInterval; +let karvonnenActive = false; +// Run interface wrapped in a function +let ExStats = require("exstats"); +let B2 = process.env.HWVERSION===2; +let Layout = require("Layout"); +let locale = require("locale"); +let fontHeading = "6x8:2"; +let fontValue = B2 ? "6x15:2" : "6x8:3"; +let headingCol = "#888"; +let fixCount = 0; +let isMenuDisplayed = false; + +g.reset().clear(); Bangle.loadWidgets(); Bangle.drawWidgets(); +wu.show(); // --------------------------- let settings = Object.assign({ @@ -35,16 +42,20 @@ let settings = Object.assign({ value: 0, notifications: [], }, + HRM: { + min: 65, + max: 170, + } }, }, require("Storage").readJSON("run.json", 1) || {}); -var statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); -var exs = ExStats.getStats(statIDs, settings); +let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); +let exs = ExStats.getStats(statIDs, settings); // --------------------------- // Called to start/stop running function onStartStop() { - var running = !exs.state.active; - var prepPromises = []; + let running = !exs.state.active; + let prepPromises = []; // start/stop recording // Do this first in case recorder needs to prompt for @@ -72,25 +83,25 @@ function onStartStop() { Promise.all(prepPromises) .then(() => { - if (running) { - exs.start(); - } else { - exs.stop(); - } - layout.button.label = running ? "STOP" : "START"; - layout.status.label = running ? "RUN" : "STOP"; - layout.status.bgCol = running ? "#0f0" : "#f00"; - // if stopping running, don't clear state - // so we can at least refer to what we've done - layout.render(); - }); + if (running) { + exs.start(); + } else { + exs.stop(); + } + layout.button.label = running ? "STOP" : "START"; + layout.status.label = running ? "RUN" : "STOP"; + layout.status.bgCol = running ? "#0f0" : "#f00"; + // if stopping running, don't clear state + // so we can at least refer to what we've done + layout.render(); + }); } -var lc = []; +let lc = []; // Load stats in pair by pair -for (var i=0;i{if (karvonnenActive) {stopKarvonnenUI();run();} onStartStop();}, id:"button"}]}); delete lc; layout.render(); function configureNotification(stat) { stat.on('notify', (e)=>{ settings.notify[e.id].notifications.reduce(function (promise, buzzPattern) { - return promise.then(function () { - return Bangle.buzz(buzzPattern[0], buzzPattern[1]); - }); + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); }, Promise.resolve()); }); } Object.keys(settings.notify).forEach((statType) => { if (settings.notify[statType].increment > 0 && exs.stats[statType]) { - configureNotification(exs.stats[statType]); + configureNotification(exs.stats[statType]); } }); @@ -138,8 +149,46 @@ Bangle.on("GPS", function(fix) { Bangle.buzz(); // first fix, does not need to respect quiet mode } }); -// We always call ourselves once a second to update -setInterval(function() { - layout.clock.label = locale.time(new Date(),1); - if (!isMenuDisplayed) layout.render(); -}, 1000); + +// run() function used to switch between traditional run UI and karvonnen UI +function run() { + wu.show(); + layout.lazy = false; + layout.render(); + layout.lazy = true; + // We always call ourselves once a second to update + if (!runInterval){ + runInterval = setInterval(function() { + layout.clock.label = locale.time(new Date(),1); + if (!isMenuDisplayed && !karvonnenActive) layout.render(); + }, 1000); + } +} +run(); + +/////////////////////////////////////////////// +// Karvonnen +/////////////////////////////////////////////// + +function stopRunUI() { + // stop updating and drawing the traditional run app UI + clearInterval(runInterval); + runInterval = undefined; + karvonnenActive = true; +} + +function stopKarvonnenUI() { + g.reset().clear(); + clearInterval(karvonnenInterval); + karvonnenInterval = undefined; + karvonnenActive = false; +} + +let karvonnenInterval; +// Define the function to go back and forth between the different UI's +function swipeHandler(LR,_) { + if (LR==-1 && karvonnenActive && !isMenuDisplayed) {stopKarvonnenUI(); run();} + if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); karvonnenInterval = eval(require("Storage").read("run_karvonnen"))(settings.HRM, exs.stats.bpm);} +} +// Listen for swipes with the swipeHandler +Bangle.on("swipe", swipeHandler); diff --git a/apps/runplus/karvonnen.js b/apps/runplus/karvonnen.js new file mode 100644 index 000000000..4a7e0914c --- /dev/null +++ b/apps/runplus/karvonnen.js @@ -0,0 +1,216 @@ +(function karvonnen(hrmSettings, exsHrmStats) { + //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ + //The calculation of the Heart Rate Zones is based on the Karvonnen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. + //Other methods are even more approximative. + let wu = require("widget_utils"); + wu.hide(); + let R = Bangle.appRect; + + + g.reset().clearRect(R).setFontAlign(0,0,0); + + const x = "x"; const y = "y"; + function Rdiv(axis, divisor) { // Used when placing things on the screen + return axis=="x" ? (R.x + (R.w-1)/divisor):(R.y + (R.h-1)/divisor); + } + let linePoints = { //Not lists of points, but used to update points in the drawArrows function. + x: [ + 175/40, + 2, + 175/135, + ], + y: [ + 175/64, + 175/52, + 175/110, + 175/122, + ], + + }; + + function drawArrows() { + g.setColor(g.theme.fg); + // Upper + g.drawLine(Rdiv(x,linePoints.x[0]), Rdiv(y,linePoints.y[0]), Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[1])); + g.drawLine(Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[1]), Rdiv(x,linePoints.x[2]), Rdiv(y,linePoints.y[0])); + // Lower + g.drawLine(Rdiv(x,linePoints.x[0]), Rdiv(y,linePoints.y[2]), Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[3])); + g.drawLine(Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[3]), Rdiv(x,linePoints.x[2]), Rdiv(y,linePoints.y[2])); + } + + //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) + // HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. + //get the hrr (heart rate reserve). + // I put random data here, but this has to come as a menu in the settings section so that users can change it. + let minhr = hrmSettings.min; + let maxhr = hrmSettings.max; + + function calculatehrr(minhr, maxhr) { + return maxhr - minhr;} + + //test input for hrr (it works). + let hrr = calculatehrr(minhr, maxhr); + console.log(hrr); + + //Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. + let hr = exsHrmStats.getValue(); + let hr1 = hr; + // These letiables display next and previous HR zone. + //get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonnen method + //60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack + let minzone2 = hrr * 0.6 + minhr; + let maxzone2 = hrr * 0.7 + minhr; + let maxzone3 = hrr * 0.8 + minhr; + let maxzone4 = hrr * 0.9 + minhr; + let maxzone5 = hrr * 0.99 + minhr; + + // HR data: large, readable, in the middle of the screen + function drawHR() { + g.setFontAlign(-1,0,0); + g.clearRect(Rdiv(x,11/4),Rdiv(y,2)-25,Rdiv(x,11/4)+50*2,Rdiv(y,2)+25); + g.setColor(g.theme.fg); + g.setFont("Vector",50); + g.drawString(hr, Rdiv(x,11/4), Rdiv(y,2)+4); + } + + function drawWaitHR() { + g.setColor(g.theme.fg); + // Waiting for HRM + g.setFontAlign(0,0,0); + g.setFont("Vector",50); + g.drawString("--", Rdiv(x,2)+4, Rdiv(y,2)+4); + + // Waiting for current Zone + g.setFont("Vector",24); + g.drawString("Z-", Rdiv(x,4.3), Rdiv(y,2)+2); + + // waiting for upper and lower limit of current zone + g.setFont("Vector",20); + g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/2)); + g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/7)); + } + + //These functions call arcs to show different HR zones. + + //To shorten the code, I'll reference some letiables and reuse them. + let centreX = R.x + 0.5 * R.w; + let centreY = R.y + 0.5 * R.h; + let minRadius = 0.38 * R.h; + let maxRadius = 0.50 * R.h; + + //draw background image (dithered green zones)(I should draw different zones in different dithered colors) + const HRzones= require("graphics_utils"); + let minRadiusz = 0.44 * R.h; + let startAngle = HRzones.degreesToRadians(-88.5); + let endAngle = HRzones.degreesToRadians(268.5); + + function drawBgArc() { + g.setColor(g.theme.dark==false?0xC618:"#002200"); + HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + } + + const zones = require("graphics_utils"); + //####### A function to simplify a bit the code ###### + function simplify (sA, eA, Z, currentZone, lastZone) { + let startAngle = zones.degreesToRadians(sA); + let endAngle = zones.degreesToRadians(eA); + if (currentZone == lastZone) zones.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); + else zones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + g.setFont("Vector",24); + g.clearRect(Rdiv(x,4.3)-12, Rdiv(y,2)+2-12,Rdiv(x,4.3)+12, Rdiv(y,2)+2+12); + g.setFontAlign(0,0,0); + g.drawString(Z, Rdiv(x,4.3), Rdiv(y,2)+2); + } + + function zoning (max, min) { // draw values of upper and lower limit of current zone + g.setFont("Vector",20); + g.setColor(g.theme.fg); + g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/2)-10,Rdiv(x,2)+20*2, Rdiv(y,9/2)+10); + g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/7)-10,Rdiv(x,2)+20*2, Rdiv(y,9/7)+10); + g.setFontAlign(0,0,0); + g.drawString(max, Rdiv(x,2), Rdiv(y,9/2)); + g.drawString(min, Rdiv(x,2), Rdiv(y,9/7)); + } + + function clearCurrentZone() { // Clears the extension of the current zone by painting the extension area in background color + g.setColor(g.theme.bg); + HRzones.fillArc(g, centreX, centreY, minRadius-1, minRadiusz, startAngle, endAngle); + } + + function getZone(zone) { + drawBgArc(); + clearCurrentZone(); + if (zone >= 0) {zoning(minzone2, minhr);g.setColor("#00ffff");simplify(-88.5, -45, "Z1", 0, zone);} + if (zone >= 1) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-43.5, -21.5, "Z2", 1, zone);} + if (zone >= 2) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-20, 1.5, "Z2", 2, zone);} + if (zone >= 3) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(3, 24, "Z2", 3, zone);} + if (zone >= 4) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(25.5, 46.5, "Z3", 4, zone);} + if (zone >= 5) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(48, 69, "Z3", 5, zone);} + if (zone >= 6) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(70.5, 91.5, "Z3", 6, zone);} + if (zone >= 7) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(93, 114.5, "Z4", 7, zone);} + if (zone >= 8) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(116, 137.5, "Z4", 8, zone);} + if (zone >= 9) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(139, 160, "Z4", 9, zone);} + if (zone >= 10) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(161.5, 182.5, "Z5", 10, zone);} + if (zone >= 11) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(184, 205, "Z5", 11, zone);} + if (zone == 12) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(206.5, 227.5, "Z5", 12, zone);} + } + + function getZoneAlert() { + const HRzonemax = require("graphics_utils"); + let centreX1,centreY1,maxRadius1 = 1; + let minRadius = 0.40 * R.h; + let startAngle1 = HRzonemax.degreesToRadians(-90); + let endAngle1 = HRzonemax.degreesToRadians(270); + g.setFont("Vector",38);g.setColor("#ff0000"); + HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); + g.drawString("ALERT", 26,66); + } + + //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. + let subZoneLast; + function drawZones() { + if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawArrows(); drawHR();} // Reset UI when coming down from zone alert. + if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} // Z1 + else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} // Z2a + else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} // Z2b + else if (hr <= hrr * 0.70 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getZone(subZoneLast);}} // Z2c + else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getZone(subZoneLast);}} // Z3a + else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getZone(subZoneLast);}} // Z3b + else if (hr <= hrr * 0.80 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getZone(subZoneLast);}} // Z3c + else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getZone(subZoneLast);}} // Z4a + else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getZone(subZoneLast);}} // Z4b + else if (hr <= hrr * 0.90 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getZone(subZoneLast);}} // Z4c + else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getZone(subZoneLast);}} // Z5a + else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getZone(subZoneLast);}} // Z5b + else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getZone(subZoneLast);}} // Z5c + else if (hr >= maxhr - 2) {subZoneLast=13; g.clear();getZoneAlert();} // Alert + } + + function initDraw() { + drawArrows(); + drawWaitHR(); + drawBgArc(); + //drawZones(); + } + + let hrLast; + //h = 0; // Used to force hr update to trigger draws, together with `if (h!=0) hr = h;` below. + function updateUI() { // Update UI, only draw if warranted by change in HR. + hrLast = hr; + hr = exsHrmStats.getValue(); + //if (h!=0) hr = h; + if (hr!=hrLast) { + drawHR(); + drawZones(); + } //g.setColor(g.theme.fg).drawLine(175/2,0,175/2,175).drawLine(0,175/2,175,175/2); // Used to align UI elements. + } + + initDraw(); + + // check for updates every second. + karvonnenInterval = setInterval(function() { + if (!isMenuDisplayed && karvonnenActive) updateUI(); + }, 1000); + + return karvonnenInterval; +}) diff --git a/apps/runplus/metadata.json b/apps/runplus/metadata.json index 933576a5d..ad23519e7 100644 --- a/apps/runplus/metadata.json +++ b/apps/runplus/metadata.json @@ -1,16 +1,42 @@ -{ "id": "run", +{ + "id": "run", "name": "Run", - "version":"0.14", + "version": "0.15", "description": "Displays distance, time, steps, cadence, pace and more for runners.", "icon": "app.png", "tags": "run,running,fitness,outdoors,gps", - "supports" : ["BANGLEJS","BANGLEJS2"], - "screenshots": [{"url":"screenshot.png"}], + "supports": [ + "BANGLEJS", + "BANGLEJS2" + ], + "screenshots": [ + { + "url": "screenshot.png" + } + ], "readme": "README.md", "storage": [ - {"name":"run.app.js","url":"app.js"}, - {"name":"run.img","url":"app-icon.js","evaluate":true}, - {"name":"run.settings.js","url":"settings.js"} + { + "name": "run.app.js", + "url": "app.js" + }, + { + "name": "run.img", + "url": "app-icon.js", + "evaluate": true + }, + { + "name": "run.settings.js", + "url": "settings.js" + }, + { + "name": "run_karvonnen", + "url": "karvonnen.js" + } ], - "data": [{"name":"run.json"}] + "data": [ + { + "name": "run.json" + } + ] } diff --git a/apps/runplus/settings.js b/apps/runplus/settings.js index 0312200a3..050eed4b8 100644 --- a/apps/runplus/settings.js +++ b/apps/runplus/settings.js @@ -31,6 +31,10 @@ notifications: [], }, }, + HRM: { + min: 65, + max: 165, + }, }, storage.readJSON(SETTINGS_FILE, 1) || {}); function saveSettings() { storage.write(SETTINGS_FILE, settings) @@ -125,5 +129,29 @@ 'Box 6': getBoxChooser("B6"), }); menu[/*LANG*/"Boxes"] = function() { E.showMenu(boxMenu)}; + + var hrmMenu = { + '< Back': function() { E.showMenu(menu) }, + } + + menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; + hrmMenu[/*LANG*/"min"] = { + min: 1, max: 100, + value: settings.HRM.min, + format: w => w, + onchange: w => { + settings.HRM.min = w; + saveSettings(); + }, + } + hrmMenu[/*LANG*/"max"] = { + min: 120, max: 190, + value: settings.HRM.max, + format: v => v, + onchange: v => { + settings.HRM.max = v; + saveSettings(); + }, + } E.showMenu(menu); }) From 1b5717878667da28d70a9ad30edb466f89f875de Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 19:05:09 +0100 Subject: [PATCH 0311/1725] changes to differentiate runplus from run app --- apps/runplus/ChangeLog | 3 +-- apps/runplus/app.js | 4 ++-- apps/runplus/metadata.json | 19 +++++++++---------- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/apps/runplus/ChangeLog b/apps/runplus/ChangeLog index 81678d788..ff8b7198c 100644 --- a/apps/runplus/ChangeLog +++ b/apps/runplus/ChangeLog @@ -13,5 +13,4 @@ 0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working -0.15: (beta) Swipe to intensity interface a la Karvonnen (curtesy of - FTeacher at https://github.com/f-teacher) +0.15: Diverge from the standard "Run" app. Swipe to intensity interface a la Karvonnen (curtesy of FTeacher at https://github.com/f-teacher) diff --git a/apps/runplus/app.js b/apps/runplus/app.js index ccfa0749a..a9793c558 100644 --- a/apps/runplus/app.js +++ b/apps/runplus/app.js @@ -47,7 +47,7 @@ let settings = Object.assign({ max: 170, } }, -}, require("Storage").readJSON("run.json", 1) || {}); +}, require("Storage").readJSON("runplus.json", 1) || {}); let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); let exs = ExStats.getStats(statIDs, settings); // --------------------------- @@ -188,7 +188,7 @@ let karvonnenInterval; // Define the function to go back and forth between the different UI's function swipeHandler(LR,_) { if (LR==-1 && karvonnenActive && !isMenuDisplayed) {stopKarvonnenUI(); run();} - if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); karvonnenInterval = eval(require("Storage").read("run_karvonnen"))(settings.HRM, exs.stats.bpm);} + if (LR==1 && !karvonnenActive && !isMenuDisplayed) {stopRunUI(); karvonnenInterval = eval(require("Storage").read("runplus_karvonnen"))(settings.HRM, exs.stats.bpm);} } // Listen for swipes with the swipeHandler Bangle.on("swipe", swipeHandler); diff --git a/apps/runplus/metadata.json b/apps/runplus/metadata.json index ad23519e7..15492e20c 100644 --- a/apps/runplus/metadata.json +++ b/apps/runplus/metadata.json @@ -1,12 +1,11 @@ { - "id": "run", - "name": "Run", + "id": "runplus", + "name": "Run+", "version": "0.15", - "description": "Displays distance, time, steps, cadence, pace and more for runners.", + "description": "Displays distance, time, steps, cadence, pace and more for runners. Based on the Run app, but extended with additional screen for heart rate interval training.", "icon": "app.png", - "tags": "run,running,fitness,outdoors,gps", + "tags": "run,running,fitness,outdoors,gps,karvonnen", "supports": [ - "BANGLEJS", "BANGLEJS2" ], "screenshots": [ @@ -17,26 +16,26 @@ "readme": "README.md", "storage": [ { - "name": "run.app.js", + "name": "runplus.app.js", "url": "app.js" }, { - "name": "run.img", + "name": "runplus.img", "url": "app-icon.js", "evaluate": true }, { - "name": "run.settings.js", + "name": "runplus.settings.js", "url": "settings.js" }, { - "name": "run_karvonnen", + "name": "runplus_karvonnen", "url": "karvonnen.js" } ], "data": [ { - "name": "run.json" + "name": "runplus.json" } ] } From 0e08d37d3eb14adacbd696df6d175b8b85929bed Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 19:31:24 +0100 Subject: [PATCH 0312/1725] fix default settings fallback for HRM --- apps/runplus/app.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/runplus/app.js b/apps/runplus/app.js index a9793c558..e2c23cafe 100644 --- a/apps/runplus/app.js +++ b/apps/runplus/app.js @@ -41,12 +41,12 @@ let settings = Object.assign({ time: { value: 0, notifications: [], - }, - HRM: { - min: 65, - max: 170, } }, + HRM: { + min: 65, + max: 170, + } }, require("Storage").readJSON("runplus.json", 1) || {}); let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); let exs = ExStats.getStats(statIDs, settings); From 60a631d84f3da786b070ec4db2bf89b1ba346f1f Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 20:29:17 +0100 Subject: [PATCH 0313/1725] fixes to draw correctly and in a timely manner when swiping to the karvonnen ui depending on if we have hrm data or not --- apps/runplus/app.js | 6 +++--- apps/runplus/karvonnen.js | 9 ++++----- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/apps/runplus/app.js b/apps/runplus/app.js index e2c23cafe..15e042759 100644 --- a/apps/runplus/app.js +++ b/apps/runplus/app.js @@ -41,12 +41,12 @@ let settings = Object.assign({ time: { value: 0, notifications: [], - } + }, }, HRM: { min: 65, max: 170, - } + }, }, require("Storage").readJSON("runplus.json", 1) || {}); let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); let exs = ExStats.getStats(statIDs, settings); @@ -100,7 +100,7 @@ function onStartStop() { let lc = []; // Load stats in pair by pair for (let i=0;i Date: Wed, 22 Feb 2023 20:43:52 +0100 Subject: [PATCH 0314/1725] Update ChangeLog --- apps/runplus/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/runplus/ChangeLog b/apps/runplus/ChangeLog index ff8b7198c..d3426428d 100644 --- a/apps/runplus/ChangeLog +++ b/apps/runplus/ChangeLog @@ -13,4 +13,4 @@ 0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working -0.15: Diverge from the standard "Run" app. Swipe to intensity interface a la Karvonnen (curtesy of FTeacher at https://github.com/f-teacher) +0.15: Diverge from the standard "Run" app. Swipe to intensity interface a la Karvonnen (curtesy of FTeacher at https://github.com/f-teacher) From 000373116f4462efadd4b2028e4ec8dc350d449f Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 21:56:59 +0100 Subject: [PATCH 0315/1725] small ui tweak --- apps/runplus/karvonnen.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/runplus/karvonnen.js b/apps/runplus/karvonnen.js index aa996d965..7e7c07050 100644 --- a/apps/runplus/karvonnen.js +++ b/apps/runplus/karvonnen.js @@ -82,7 +82,7 @@ // Waiting for current Zone g.setFont("Vector",24); - g.drawString("Z-", Rdiv(x,4.3), Rdiv(y,2)+2); + g.drawString("Z-", Rdiv(x,4.3)-3, Rdiv(y,2)+2); // waiting for upper and lower limit of current zone g.setFont("Vector",20); From 540b85fba51b2793f83a869dd79a53134494b483 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 23 Feb 2023 10:04:14 +0000 Subject: [PATCH 0316/1725] Update after #2578 --- apps/messageicons/icons.img | Bin 5168 -> 5244 bytes apps/messageicons/lib.js | 5 +++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/messageicons/icons.img b/apps/messageicons/icons.img index 104168357f754ea3bd419eb544afd41ea7d297f9..66ecb53f8eec12eb8eb1859d9c7bb41ee5f77e16 100644 GIT binary patch delta 82 zcmdm>@ke9B9(Gp-2;l$207UG67#ROBFxW8u-vdMp|K~8+&tYKivH#uxMDm{-_&+x= Xd~9I&zyL)B3=9S!{hPP4SMvY>niCt} delta 12 TcmeyPu|Z?Q9`?-~93?yeB~=8o diff --git a/apps/messageicons/lib.js b/apps/messageicons/lib.js index 9b293e608..f7efa2d16 100644 --- a/apps/messageicons/lib.js +++ b/apps/messageicons/lib.js @@ -2,7 +2,7 @@ exports.getImage = function(msg) { if (msg.img) return atob(msg.img); let s = (("string"=== typeof msg) ? msg : (msg.src || "")).toLowerCase(); if (msg.id=="music") s="music"; - let match = ",default|0,airbnb|1,alarm|2,alarmclockreceiver|2,amazon shopping|3,bibel|4,bitwarden|5,1password|5,lastpass|5,dashlane|5,bring|6,calendar|7,etar|7,chat|8,chrome|9,clock|2,corona-warn|10,bmo|11,desjardins|11,rbc mobile|11,nbc|11,rabobank|11,scotiabank|11,td (canada)|11,discord|12,drive|13,element|14,facebook|15,messenger|16,firefox|17,firefox beta|17,firefox nightly|17,f-droid|5,neo store|5,aurora droid|5,github|18,gitlab|19,gmx|20,google|21,google home|22,google play store|23,home assistant|24,instagram|25,kalender|26,keep notes|27,lieferando|28,linkedin|29,maps|30,organic maps|30,osmand|30,mastodon|31,fedilab|31,tooot|31,tusky|31,mattermost|32,n26|33,netflix|34,news|35,cbc news|35,rc info|35,reuters|35,ap news|35,la presse|35,nbc news|35,nextbike|36,nina|37,outlook mail|38,paypal|39,phone|40,plex|41,pocket|42,post & dhl|43,proton mail|44,reddit|45,sync pro|45,sync dev|45,boost|45,infinity|45,slide|45,signal|46,skype|47,slack|48,snapchat|49,starbucks|50,steam|51,teams|52,telegram|53,telegram foss|53,threema|54,tiktok|55,to do|56,opentasks|56,tasks|56,transit|57,twitch|58,twitter|59,uber|60,lyft|60,vlc|61,warnapp|62,whatsapp|63,wordfeud|64,youtube|65,newpipe|65,zoom|66,meet|66,music|67,sms message|0,mail|0,gmail|0,".match(new RegExp(`,${s}\\|(\\d+)`)) + let match = ",default|0,airbnb|1,alarm|2,alarmclockreceiver|2,amazon shopping|3,bibel|4,bitwarden|5,1password|5,lastpass|5,dashlane|5,bring|6,calendar|7,etar|7,chat|8,chrome|9,clock|2,corona-warn|10,bmo|11,desjardins|11,rbc mobile|11,nbc|11,rabobank|11,scotiabank|11,td (canada)|11,discord|12,drive|13,element|14,facebook|15,messenger|16,firefox|17,firefox beta|17,firefox nightly|17,f-droid|5,neo store|5,aurora droid|5,github|18,gitlab|19,gmx|20,google|21,google home|22,google play store|23,home assistant|24,instagram|25,jira|26,kalender|27,keep notes|28,lieferando|29,linkedin|30,maps|31,organic maps|31,osmand|31,mastodon|32,fedilab|32,tooot|32,tusky|32,mattermost|33,n26|34,netflix|35,news|36,cbc news|36,rc info|36,reuters|36,ap news|36,la presse|36,nbc news|36,nextbike|37,nina|38,outlook mail|39,paypal|40,phone|41,plex|42,pocket|43,post & dhl|44,proton mail|45,reddit|46,sync pro|46,sync dev|46,boost|46,infinity|46,slide|46,signal|47,skype|48,slack|49,snapchat|50,starbucks|51,steam|52,teams|53,telegram|54,telegram foss|54,threema|55,tiktok|56,to do|57,opentasks|57,tasks|57,transit|58,twitch|59,twitter|60,uber|61,lyft|61,vlc|62,warnapp|63,whatsapp|64,wordfeud|65,youtube|66,newpipe|66,zoom|67,meet|67,music|68,sms message|0,mail|0,gmail|0,".match(new RegExp(`,${s}\\|(\\d+)`)) return require("Storage").read("messageicons.img", (match===null)?0:match[1]*76, 76); }; @@ -13,6 +13,7 @@ exports.getColor = function(msg,options) { if (st.iconColorMode == 'mono') return options.default; const s = (("string"=== typeof msg) ? msg : (msg.src || "")).toLowerCase(); return { + // This file is generated by /icons/generate.js. If you need to modify its content, you should do it there instead. // generic colors, using B2-safe colors // DO NOT USE BLACK OR WHITE HERE, just leave the declaration out and then the theme's fg color will be used "airbnb": "#ff385c", // https://news.airbnb.com/media-assets/category/brand/ @@ -66,4 +67,4 @@ exports.getColor = function(msg,options) { "youtube": "#f00", // https://www.youtube.com/howyoutubeworks/resources/brand-resources/#logos-icons-and-colors }[s]||options.default; }; - + \ No newline at end of file From 5ebb56e95028ffb41dc65a281e6d65a2948e3809 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 23 Feb 2023 11:00:06 +0000 Subject: [PATCH 0317/1725] run: Keep run state between runs (allowing you to exit and restart the app) --- apps/run/ChangeLog | 1 + apps/run/app.js | 17 +++++++++++------ apps/run/metadata.json | 2 +- apps/runplus/ChangeLog | 1 + apps/runplus/app.js | 17 +++++++++++------ modules/exstats.js | 15 +++++++++++++-- 6 files changed, 38 insertions(+), 15 deletions(-) diff --git a/apps/run/ChangeLog b/apps/run/ChangeLog index 95945be78..3638407ef 100644 --- a/apps/run/ChangeLog +++ b/apps/run/ChangeLog @@ -13,3 +13,4 @@ 0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working +0.15: Keep run state between runs (allowing you to exit and restart the app) diff --git a/apps/run/app.js b/apps/run/app.js index 4038b8c1a..a56fce31c 100644 --- a/apps/run/app.js +++ b/apps/run/app.js @@ -41,6 +41,13 @@ var statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,setti var exs = ExStats.getStats(statIDs, settings); // --------------------------- +function setStatus(running) { + layout.button.label = running ? "STOP" : "START"; + layout.status.label = running ? "RUN" : "STOP"; + layout.status.bgCol = running ? "#0f0" : "#f00"; + layout.render(); +} + // Called to start/stop running function onStartStop() { var running = !exs.state.active; @@ -77,12 +84,9 @@ function onStartStop() { } else { exs.stop(); } - layout.button.label = running ? "STOP" : "START"; - layout.status.label = running ? "RUN" : "STOP"; - layout.status.bgCol = running ? "#0f0" : "#f00"; // if stopping running, don't clear state // so we can at least refer to what we've done - layout.render(); + setStatus(running); }); } @@ -105,13 +109,14 @@ for (var i=0;i{if (karvonnenActive) {stopKarvonnenUI();run();} onStartStop();}, id:"button"}]}); +},{lazy:true, btns:[{ label:"---", cb: ()=>{if (karvonnenActive) {stopKarvonnenUI();run();} onStartStop();}, id:"button"}]}); delete lc; +setStatus(exs.state.active); layout.render(); function configureNotification(stat) { diff --git a/modules/exstats.js b/modules/exstats.js index 461ae727f..1d3e27d0a 100644 --- a/modules/exstats.js +++ b/modules/exstats.js @@ -93,6 +93,16 @@ var state = { // list of active stats (indexed by ID) var stats = {}; +const DATA_FILE = "exstats.json"; +// Load the state from a saved file if there was one +state = Object.assign(state, require("Storage").readJSON(DATA_FILE,1)||{}); +// force step history to a uint8array +state.stepHistory = new Uint8Array(state.stepHistory); +// when we exit, write the current state +E.on('kill', function() { + require("Storage").writeJSON(DATA_FILE, state); +}); + // distance between 2 lat and lons, in meters, Mean Earth Radius = 6371km // https://www.movable-type.co.uk/scripts/latlong.html // (Equirectangular approximation) @@ -359,9 +369,10 @@ exports.getStats = function(statIDs, options) { state.notify.time.next = state.startTime + options.notify.time.increment; } } - reset(); + if (!state.active) reset(); // we might already be active return { - stats : stats, state : state, + stats : stats, + state : state, start : function() { state.active = true; reset(); From 8bc9c5de2583505efaafea45f4883ead1ba50ba6 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 23 Feb 2023 11:19:24 +0000 Subject: [PATCH 0318/1725] messagegui 0.65: Make sure messages are saved if not in the clock app (fix #2460) --- apps/messagegui/ChangeLog | 1 + apps/messagegui/lib.js | 2 +- apps/messagegui/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index d061e6642..f314c72d3 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -87,3 +87,4 @@ 0.62: Remove '.show' field, tidyup and fix .open if fast load not enabled 0.63: Fix messages app loading on clock without fast load 0.64: Ensure we don't get 'undefined' as the message body +0.65: Make sure messages are saved if not in the clock app (fix #2460) diff --git a/apps/messagegui/lib.js b/apps/messagegui/lib.js index a9436a77b..54d79866a 100644 --- a/apps/messagegui/lib.js +++ b/apps/messagegui/lib.js @@ -29,7 +29,7 @@ exports.listener = function(type, msg) { } const appSettings = require("Storage").readJSON("messages.settings.json", 1) || {}; - let loadMessages = (Bangle.CLOCK || event.important); // should we load the messages app? + let loadMessages = (Bangle.CLOCK || msg.important); // should we load the messages app? if (type==="music") { if (Bangle.CLOCK && msg.state && msg.title && appSettings.openMusic) loadMessages = true; else return; diff --git a/apps/messagegui/metadata.json b/apps/messagegui/metadata.json index 3504122f9..1e22f7304 100644 --- a/apps/messagegui/metadata.json +++ b/apps/messagegui/metadata.json @@ -2,7 +2,7 @@ "id": "messagegui", "name": "Message UI", "shortName": "Messages", - "version": "0.64", + "version": "0.65", "description": "Default app to display notifications from iOS and Gadgetbridge/Android", "icon": "app.png", "type": "app", From 0ba8cef33c1a313626e204cd811ed02a58381d11 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 23 Feb 2023 11:46:49 +0000 Subject: [PATCH 0319/1725] Convert Yes/No On/Off in settings to checkboxes, add /*LANG*/ to some more text strings --- apps/accellog/ChangeLog | 1 + apps/accellog/app.js | 3 +-- apps/accellog/metadata.json | 2 +- apps/android/settings.js | 2 +- apps/bthrm/bthrm.js | 2 +- apps/clockcal/ChangeLog | 1 + apps/clockcal/metadata.json | 2 +- apps/clockcal/settings.js | 19 +++++----------- apps/cscsensor/ChangeLog | 1 + apps/cscsensor/metadata.json | 2 +- apps/cscsensor/settings.js | 8 +++---- apps/f9lander/ChangeLog | 1 + apps/f9lander/metadata.json | 2 +- apps/f9lander/settings.js | 4 +--- apps/fileman/fileman.app.js | 2 +- apps/gbridge/settings.js | 14 ++++++------ apps/gipy/ChangeLog | 2 ++ apps/gipy/metadata.json | 2 +- apps/gipy/settings.js | 3 +-- apps/homework/app.js | 4 ++-- apps/info/info.app.js | 10 ++++----- apps/kbtouch/ChangeLog | 1 + apps/kbtouch/metadata.json | 2 +- apps/kbtouch/settings.js | 28 +++++++++--------------- apps/marioclock/marioclock-app.js | 2 +- apps/neonx/ChangeLog | 3 ++- apps/neonx/metadata.json | 2 +- apps/neonx/neonx.settings.js | 26 +++++++++------------- apps/numerals/ChangeLog | 3 ++- apps/numerals/metadata.json | 2 +- apps/numerals/numerals.settings.js | 6 ++--- apps/powermanager/ChangeLog | 1 + apps/powermanager/metadata.json | 2 +- apps/powermanager/settings.js | 1 - apps/recorder/ChangeLog | 1 + apps/recorder/app.js | 1 - apps/recorder/metadata.json | 2 +- apps/setting/ChangeLog | 1 + apps/setting/metadata.json | 2 +- apps/setting/settings.js | 12 ---------- apps/sleepphasealarm/ChangeLog | 1 + apps/sleepphasealarm/metadata.json | 2 +- apps/sleepphasealarm/settings.js | 1 - apps/slidingtext/ChangeLog | 1 + apps/slidingtext/metadata.json | 2 +- apps/slidingtext/slidingtext.settings.js | 5 ++--- apps/slomoclock/settings.js | 14 ++++++------ apps/waypointer/ChangeLog | 1 + apps/waypointer/metadata.json | 2 +- apps/waypointer/settings.js | 1 - apps/widalarmeta/ChangeLog | 1 + apps/widalarmeta/metadata.json | 2 +- apps/widalarmeta/settings.js | 1 - apps/widdst/ChangeLog | 1 + apps/widdst/metadata.json | 2 +- apps/widdst/settings.js | 20 ++++++++--------- 56 files changed, 106 insertions(+), 136 deletions(-) diff --git a/apps/accellog/ChangeLog b/apps/accellog/ChangeLog index 94241c7a7..45469da5c 100644 --- a/apps/accellog/ChangeLog +++ b/apps/accellog/ChangeLog @@ -3,3 +3,4 @@ 0.03: Exit as first menu option, dont show decimal places for seconds 0.04: Localisation, change Exit->Back to allow back-arrow to appear on 2v13 firmware 0.05: Add max G values during recording, record actual G values and magnitude to CSV +0.06: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/accellog/app.js b/apps/accellog/app.js index 147f7503f..ee82f435f 100644 --- a/apps/accellog/app.js +++ b/apps/accellog/app.js @@ -26,8 +26,7 @@ function showMenu() { viewLogs(); }, /*LANG*/"Log raw data" : { - value : logRawData, - format : v => v?/*LANG*/"Yes":/*LANG*/"No", + value : !!logRawData, onchange : v => { logRawData=v; } }, }; diff --git a/apps/accellog/metadata.json b/apps/accellog/metadata.json index 903c57903..907828c7f 100644 --- a/apps/accellog/metadata.json +++ b/apps/accellog/metadata.json @@ -2,7 +2,7 @@ "id": "accellog", "name": "Acceleration Logger", "shortName": "Accel Log", - "version": "0.05", + "version": "0.06", "description": "Logs XYZ acceleration data to a CSV file that can be downloaded to your PC", "icon": "app.png", "tags": "outdoor", diff --git a/apps/android/settings.js b/apps/android/settings.js index 0abb32249..1cfc8927c 100644 --- a/apps/android/settings.js +++ b/apps/android/settings.js @@ -12,7 +12,7 @@ var mainmenu = { "" : { "title" : "Android" }, "< Back" : back, - /*LANG*/"Connected" : { value : NRF.getSecurityStatus().connected?"Yes":"No" }, + /*LANG*/"Connected" : { value : NRF.getSecurityStatus().connected?/*LANG*/"Yes":/*LANG*/"No" }, /*LANG*/"Find Phone" : () => E.showMenu({ "" : { "title" : /*LANG*/"Find Phone" }, "< Back" : ()=>E.showMenu(mainmenu), diff --git a/apps/bthrm/bthrm.js b/apps/bthrm/bthrm.js index b07e7bd37..246b539d4 100644 --- a/apps/bthrm/bthrm.js +++ b/apps/bthrm/bthrm.js @@ -96,7 +96,7 @@ function draw(){ if (!isNaN(bt.battery)) layout.btBattery.label = bt.battery + "%"; if (bt.rr) layout.btRR.label = bt.rr.join(","); if (!isNaN(bt.location)) layout.btLocation.label = BODY_LOCS[bt.location]; - if (bt.contact !== undefined) layout.btContact.label = bt.contact ? "Yes":"No"; + if (bt.contact !== undefined) layout.btContact.label = bt.contact ? /*LANG*/"Yes":/*LANG*/"No"; if (!isNaN(bt.energy)) layout.btEnergy.label = bt.energy.toFixed(0) + "kJ"; } else { layout.bt.label = "--"; diff --git a/apps/clockcal/ChangeLog b/apps/clockcal/ChangeLog index 27d4fc7f4..4c8c13366 100644 --- a/apps/clockcal/ChangeLog +++ b/apps/clockcal/ChangeLog @@ -4,3 +4,4 @@ 0.04: Use default Bangle formatter for booleans 0.05: Improved colors (connected vs disconnected) 0.06: Tell clock widgets to hide. +0.07: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/clockcal/metadata.json b/apps/clockcal/metadata.json index 872211495..03f5c3df2 100644 --- a/apps/clockcal/metadata.json +++ b/apps/clockcal/metadata.json @@ -1,7 +1,7 @@ { "id": "clockcal", "name": "Clock & Calendar", - "version": "0.06", + "version": "0.07", "description": "Clock with Calendar", "readme":"README.md", "icon": "app.png", diff --git a/apps/clockcal/settings.js b/apps/clockcal/settings.js index d4cc4df68..4d8be6fbd 100644 --- a/apps/clockcal/settings.js +++ b/apps/clockcal/settings.js @@ -16,7 +16,7 @@ actions = ["[ignore]","[calend.]","[AI:music]","[AI:messg]"]; require("Storage").list(RegExp(".app.js")).forEach(element => actions.push(element.replace(".app.js",""))); - + function writeSettings() { require('Storage').writeJSON(FILE, settings); } @@ -106,18 +106,11 @@ writeSettings(); } }, - 'Load deafauls?': { - value: 0, - min: 0, max: 1, - format: v => ["No", "Yes"][v], - onchange: v => { - if (v == 1) { - settings = defaults; - writeSettings(); - load(); - } - } - }, + 'Load defaults': () => { + settings = defaults; + writeSettings(); + load(); + } }; // Show the menu E.showMenu(menu); diff --git a/apps/cscsensor/ChangeLog b/apps/cscsensor/ChangeLog index a98be5c0f..5264e8d42 100644 --- a/apps/cscsensor/ChangeLog +++ b/apps/cscsensor/ChangeLog @@ -6,3 +6,4 @@ 0.06: Now read wheel rev as well as cadence sensor Improve connection code 0.07: Make Bangle.js 2 compatible +0.08: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/cscsensor/metadata.json b/apps/cscsensor/metadata.json index 4006789ef..ba250c914 100644 --- a/apps/cscsensor/metadata.json +++ b/apps/cscsensor/metadata.json @@ -2,7 +2,7 @@ "id": "cscsensor", "name": "Cycling speed sensor", "shortName": "CSCSensor", - "version": "0.07", + "version": "0.08", "description": "Read BLE enabled cycling speed and cadence sensor and display readings on watch", "icon": "icons8-cycling-48.png", "tags": "outdoors,exercise,ble,bluetooth", diff --git a/apps/cscsensor/settings.js b/apps/cscsensor/settings.js index d7a7d565d..4fac5d0c1 100644 --- a/apps/cscsensor/settings.js +++ b/apps/cscsensor/settings.js @@ -23,17 +23,17 @@ } } const menu = { - '': { 'title': 'Cycle speed sensor' }, + '': { 'title': /*LANG*/'Cycle speed sensor' }, '< Back': back, - 'Wheel circ.(mm)': { + /*LANG*/'Wheel circ.(mm)': { value: s.wheelcirc, min: 800, max: 2400, step: 5, onchange: save('wheelcirc'), }, - 'Reset total distance': function() { - E.showPrompt("Zero total distance?", {buttons: {"No":false, "Yes":true}}).then(function(v) { + /*LANG*/'Reset total distance': function() { + E.showPrompt(/*LANG*/"Zero total distance?", {buttons: {/*LANG*/"No":false, /*LANG*/"Yes":true}}).then(function(v) { if (v) { s['totaldist'] = 0; storage.write(SETTINGS_FILE, s); diff --git a/apps/f9lander/ChangeLog b/apps/f9lander/ChangeLog index a13f2a313..b5a33bd2e 100644 --- a/apps/f9lander/ChangeLog +++ b/apps/f9lander/ChangeLog @@ -1,2 +1,3 @@ 0.01: New App! 0.02: Add lightning +0.03: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/f9lander/metadata.json b/apps/f9lander/metadata.json index 1db777099..e53805ee0 100644 --- a/apps/f9lander/metadata.json +++ b/apps/f9lander/metadata.json @@ -1,7 +1,7 @@ { "id": "f9lander", "name": "Falcon9 Lander", "shortName":"F9lander", - "version":"0.02", + "version":"0.03", "description": "Land a rocket booster", "icon": "f9lander.png", "screenshots" : [ { "url":"f9lander_screenshot1.png" }, { "url":"f9lander_screenshot2.png" }, { "url":"f9lander_screenshot3.png" }], diff --git a/apps/f9lander/settings.js b/apps/f9lander/settings.js index 0f9fba302..9d85da394 100644 --- a/apps/f9lander/settings.js +++ b/apps/f9lander/settings.js @@ -2,7 +2,6 @@ /** * @param {function} back Use back() to return to settings menu */ -const boolFormat = v => v ? /*LANG*/"On" : /*LANG*/"Off"; (function(back) { const SETTINGS_FILE = 'f9settings.json' // initialize with default settings... @@ -27,8 +26,7 @@ const boolFormat = v => v ? /*LANG*/"On" : /*LANG*/"Off"; '': { 'title': 'OpenWind' }, '< Back': back, 'Lightning': { - value: settings.lightning, - format: boolFormat, + value: !!settings.lightning, onchange: save('lightning'), } } diff --git a/apps/fileman/fileman.app.js b/apps/fileman/fileman.app.js index 6a3c5598d..5baae298b 100644 --- a/apps/fileman/fileman.app.js +++ b/apps/fileman/fileman.app.js @@ -7,7 +7,7 @@ var m; var files; function delete_file(fn) { - E.showPrompt("Delete\n"+fn+"?", {buttons: {"No":false, "Yes":true}}).then(function(v) { + E.showPrompt(/*LANG*/"Delete\n"+fn+"?", {buttons: {/*LANG*/"No":false, /*LANG*/"Yes":true}}).then(function(v) { if (v) { if (fn.charCodeAt(fn.length-1)==1) { var fh = STOR.open(fn.substr(0, fn.length-1), "r"); diff --git a/apps/gbridge/settings.js b/apps/gbridge/settings.js index cf6c84c73..ae63bb0f9 100644 --- a/apps/gbridge/settings.js +++ b/apps/gbridge/settings.js @@ -24,22 +24,22 @@ var mainmenu = { "" : { "title" : "Gadgetbridge" }, "< Back" : back, - "Connected" : { value : NRF.getSecurityStatus().connected?"Yes":"No" }, - "Show Icon" : { + /*LANG*/"Connected" : { value : NRF.getSecurityStatus().connected?/*LANG*/"Yes":/*LANG*/"No" }, + /*LANG*/"Show Icon" : { value: settings().showIcon, onchange: setIcon }, - "Find Phone" : function() { E.showMenu(findPhone); }, - "Record HRM" : { + /*LANG*/"Find Phone" : function() { E.showMenu(findPhone); }, + /*LANG*/"Record HRM" : { value: !!settings().hrm, onchange: v => updateSetting('hrm', v) - } + } }; var findPhone = { "" : { "title" : "-- Find Phone --" }, - "On" : _=>gb({t:"findPhone",n:true}), - "Off" : _=>gb({t:"findPhone",n:false}), + /*LANG*/"On" : _=>gb({t:"findPhone",n:true}), + /*LANG*/"Off" : _=>gb({t:"findPhone",n:false}), "< Back" : function() { E.showMenu(mainmenu); }, }; diff --git a/apps/gipy/ChangeLog b/apps/gipy/ChangeLog index f913c9e58..bfb2f4282 100644 --- a/apps/gipy/ChangeLog +++ b/apps/gipy/ChangeLog @@ -73,3 +73,5 @@ * Display current and next segment in red so that you know where to go. * Avoid angles flickering at low speed at the cost of less refresh. * Splash screen while waiting for gps signal. + +0.17: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/gipy/metadata.json b/apps/gipy/metadata.json index 97d18f5fe..f0581d578 100644 --- a/apps/gipy/metadata.json +++ b/apps/gipy/metadata.json @@ -2,7 +2,7 @@ "id": "gipy", "name": "Gipy", "shortName": "Gipy", - "version": "0.16", + "version": "0.17", "description": "Follow gpx files using the gps. Don't get lost in your bike trips and hikes.", "allow_emulator":false, "icon": "gipy.png", diff --git a/apps/gipy/settings.js b/apps/gipy/settings.js index af9cbef22..d43a557f6 100644 --- a/apps/gipy/settings.js +++ b/apps/gipy/settings.js @@ -19,8 +19,7 @@ "< Back": () => back(), "keep gps alive": { value: !!settings.keep_gps_alive, // !! converts undefined to false - format: (v) => (v ? "Yes" : "No"), - onchange: (v) => { + onchange: v => { settings.keep_gps_alive = v; writeSettings(); }, diff --git a/apps/homework/app.js b/apps/homework/app.js index 3d9be31c9..a6ad331f0 100644 --- a/apps/homework/app.js +++ b/apps/homework/app.js @@ -46,8 +46,8 @@ var mainMenu = { "Reset Homework": function() { E.showPrompt("Are you sure you want to delete homework.txt?", { buttons: { - "No": false, - "Yes": true + /*LANG*/"No": false, + /*LANG*/"Yes": true } }).then(function(v) { if (v) { diff --git a/apps/info/info.app.js b/apps/info/info.app.js index ade3f3ebb..d97f780da 100644 --- a/apps/info/info.app.js +++ b/apps/info/info.app.js @@ -21,11 +21,11 @@ var screens = [ name: "Hardware", items: [ {name: "Battery", fun: () => E.getBattery() + "%"}, - {name: "Charge?", fun: () => Bangle.isCharging() ? "Yes" : "No"}, + {name: "Charge?", fun: () => Bangle.isCharging() ? /*LANG*/"Yes" : /*LANG*/"No"}, {name: "TempInt.", fun: () => locale.temp(parseInt(E.getTemperature()))}, - {name: "Bluetooth", fun: () => NRF.getSecurityStatus().connected ? "Conn" : "NoConn"}, - {name: "GPS", fun: () => Bangle.isGPSOn() ? "On" : "Off"}, - {name: "Compass", fun: () => Bangle.isCompassOn() ? "On" : "Off"}, + {name: "Bluetooth", fun: () => NRF.getSecurityStatus().connected ? /*LANG*/"Conn" : /*LANG*/"NoConn"}, + {name: "GPS", fun: () => Bangle.isGPSOn() ? /*LANG*/"On" : /*LANG*/"Off"}, + {name: "Compass", fun: () => Bangle.isCompassOn() ? /*LANG*/"On" : /*LANG*/"Off"}, ] }, { @@ -160,4 +160,4 @@ Bangle.on('lock', function(isLocked) { }); Bangle.loadWidgets(); -Bangle.drawWidgets(); \ No newline at end of file +Bangle.drawWidgets(); diff --git a/apps/kbtouch/ChangeLog b/apps/kbtouch/ChangeLog index 17e824c00..5bd2159e6 100644 --- a/apps/kbtouch/ChangeLog +++ b/apps/kbtouch/ChangeLog @@ -1,2 +1,3 @@ 0.01: New App! 0.02: Introduced settings to customize the layout and functionality of the keyboard. +0.03: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/kbtouch/metadata.json b/apps/kbtouch/metadata.json index 89d121d63..8d7434e44 100644 --- a/apps/kbtouch/metadata.json +++ b/apps/kbtouch/metadata.json @@ -1,6 +1,6 @@ { "id": "kbtouch", "name": "Touch keyboard", - "version":"0.02", + "version":"0.03", "description": "A library for text input via onscreen keyboard", "icon": "app.png", "type":"textinput", diff --git a/apps/kbtouch/settings.js b/apps/kbtouch/settings.js index 871cc5d32..227efaf2d 100644 --- a/apps/kbtouch/settings.js +++ b/apps/kbtouch/settings.js @@ -8,13 +8,13 @@ if (settings.speedScaling===undefined) settings.speedScaling=24; return settings; } - + function updateSetting(setting, value) { let settings = require('Storage').readJSON("kbtouch.settings.json", true) || {}; settings[setting] = value; require('Storage').writeJSON("kbtouch.settings.json", settings); } - + var mainmenu = { "" : { "title" : /*LANG*/"Touch Keyboard" }, "< Back" : back, @@ -25,22 +25,16 @@ onchange: v => updateSetting("textSize", v) }, /*LANG*/'Offset keyboard': { - value: settings().offsetKeyboard, - min: 0, max: 1, - format: v => [/*LANG*/"No",/*LANG*/"Yes"][v], - onchange: v => updateSetting("offsetKeyboard", v) + value: !!settings().offsetKeyboard, + onchange: v => updateSetting("offsetKeyboard", v?1:0) }, /*LANG*/'Loop around': { - value: settings().loopAround, - min: 0, max: 1, - format: v => [/*LANG*/"No",/*LANG*/"Yes"][v], - onchange: v => updateSetting("loopAround", v) + value: !!settings().loopAround, + onchange: v => updateSetting("loopAround", v?1:0) }, /*LANG*/'One-to-one input and release to select': { - value: settings().oneToOne, - min: 0, max: 1, - format: v => [/*LANG*/"No",/*LANG*/"Yes"][v], - onchange: v => updateSetting("oneToOne", v) + value: !!settings().oneToOne, + onchange: v => updateSetting("oneToOne", v?1:0) }, /*LANG*/'Speed scaling': { value: settings().speedScaling, @@ -49,10 +43,8 @@ onchange: v => updateSetting("speedScaling", v) } ///*LANG*/'Release to select': { - // value: 1|settings().fontSize, - // min: 0, max: 1, - // format: v => [/*LANG*/"No",/*LANG*/"Yes"][v], - // onchange: v => updateSetting("releaseToSelect", v) + // value: !!(1|settings().fontSize), + // onchange: v => updateSetting("releaseToSelect", v?1:0) //} }; E.showMenu(mainmenu); diff --git a/apps/marioclock/marioclock-app.js b/apps/marioclock/marioclock-app.js index 6289a2568..ee6371f4e 100644 --- a/apps/marioclock/marioclock-app.js +++ b/apps/marioclock/marioclock-app.js @@ -73,7 +73,7 @@ let lastTemp = 0; const phone = { get status() { - return NRF.getSecurityStatus().connected ? "Yes" : "No"; + return NRF.getSecurityStatus().connected ? /*LANG*/"Yes" : /*LANG*/"No"; }, message: null, messageTimeout: null, diff --git a/apps/neonx/ChangeLog b/apps/neonx/ChangeLog index e78686a00..b055d6a15 100644 --- a/apps/neonx/ChangeLog +++ b/apps/neonx/ChangeLog @@ -3,4 +3,5 @@ 0.03: Optional show lock status via color 0.04: Ensure that widgets are always hidden in fullscreen mode 0.05: Better lock/unlock animation -0.06: Use widget_utils. +0.06: Use widget_utils +0.07: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/neonx/metadata.json b/apps/neonx/metadata.json index c273cb05a..edd0e76b8 100644 --- a/apps/neonx/metadata.json +++ b/apps/neonx/metadata.json @@ -2,7 +2,7 @@ "id": "neonx", "name": "Neon X & IO X Clock", "shortName": "Neon X Clock", - "version": "0.06", + "version": "0.07", "description": "Pebble Neon X & Neon IO X for Bangle.js", "icon": "neonx.png", "type": "clock", diff --git a/apps/neonx/neonx.settings.js b/apps/neonx/neonx.settings.js index 68e156dae..8edaf5c50 100644 --- a/apps/neonx/neonx.settings.js +++ b/apps/neonx/neonx.settings.js @@ -25,11 +25,9 @@ "" : { "title":"Neon X & IO"}, "< Back": back, "Neon IO X": { - value: 0 | neonXSettings.io, - min: 0, max: 1, - format: v => v ? "On" : "Off", + value: !!neonXSettings.io, onchange: v => { - neonXSettings.io = v; + neonXSettings.io = v?1:0; updateSettings(); } }, @@ -43,27 +41,23 @@ } }, "Date on touch": { - value: 0 | neonXSettings.showDate, - min: 0, max: 1, - format: v => v ? "On" : "Off", + value: !!neonXSettings.showDate, onchange: v => { - neonXSettings.showDate = v; + neonXSettings.showDate = v?1:0; updateSettings(); } }, 'Fullscreen': { - value: false | neonXSettings.fullscreen, - format: () => (neonXSettings.fullscreen ? 'Yes' : 'No'), - onchange: () => { - neonXSettings.fullscreen = !neonXSettings.fullscreen; + value: !!neonXSettings.fullscreen, + onchange: v => { + neonXSettings.fullscreen = v; updateSettings(); }, }, 'Show lock': { - value: false | neonXSettings.showLock, - format: () => (neonXSettings.showLock ? 'Yes' : 'No'), - onchange: () => { - neonXSettings.showLock = !neonXSettings.showLock; + value: !!neonXSettings.showLock, + onchange: v => { + neonXSettings.showLock = v; updateSettings(); }, }, diff --git a/apps/numerals/ChangeLog b/apps/numerals/ChangeLog index 57818c180..d6703a96b 100644 --- a/apps/numerals/ChangeLog +++ b/apps/numerals/ChangeLog @@ -7,4 +7,5 @@ 0.07: Add date on touch and some improvements (see settings and readme) 0.08: Add new draw styles, tidy up draw functionality 0.09: Tweak for faster rendering -0.10: Enhance for use with Bangle2, insert new draw mode 'thickfill' \ No newline at end of file +0.10: Enhance for use with Bangle2, insert new draw mode 'thickfill' +0.11: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/numerals/metadata.json b/apps/numerals/metadata.json index 6ba850d86..6a1adc810 100644 --- a/apps/numerals/metadata.json +++ b/apps/numerals/metadata.json @@ -2,7 +2,7 @@ "id": "numerals", "name": "Numerals Clock", "shortName": "Numerals Clock", - "version": "0.10", + "version": "0.11", "description": "A simple big numerals clock", "icon": "numerals.png", "type": "clock", diff --git a/apps/numerals/numerals.settings.js b/apps/numerals/numerals.settings.js index ae321322a..b4d5d4286 100644 --- a/apps/numerals/numerals.settings.js +++ b/apps/numerals/numerals.settings.js @@ -30,10 +30,8 @@ onchange: v=> { numeralsSettings.drawMode=dm[v]; updateSettings();} }, "Date on touch": { - value: 0|numeralsSettings.showDate, - min:0,max:1, - format: v=>v?"On":"Off", - onchange: v=> { numeralsSettings.showDate=v; updateSettings();} + value: !!numeralsSettings.showDate, + onchange: v=> { numeralsSettings.showDate=v?1:0; updateSettings();} }, "< back": back }; diff --git a/apps/powermanager/ChangeLog b/apps/powermanager/ChangeLog index fd8ce0679..a43558c3f 100644 --- a/apps/powermanager/ChangeLog +++ b/apps/powermanager/ChangeLog @@ -6,3 +6,4 @@ 0.05: Add back button to settings menu. 0.06: Allow logging of some things using power Add widget for live monitoring of power use +0.07: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/powermanager/metadata.json b/apps/powermanager/metadata.json index efb290892..ca5a9f00b 100644 --- a/apps/powermanager/metadata.json +++ b/apps/powermanager/metadata.json @@ -2,7 +2,7 @@ "id": "powermanager", "name": "Power Manager", "shortName": "Power Manager", - "version": "0.06", + "version": "0.07", "description": "Allow configuration of warnings and thresholds for battery charging and display.", "icon": "app.png", "type": "bootloader", diff --git a/apps/powermanager/settings.js b/apps/powermanager/settings.js index 1e6c073be..fa186bfac 100644 --- a/apps/powermanager/settings.js +++ b/apps/powermanager/settings.js @@ -106,7 +106,6 @@ }, 'Enabled': { value: !!settings.warnEnabled, - format: v => settings.warnEnabled ? "On" : "Off", onchange: v => { writeSettings("warnEnabled", v); } diff --git a/apps/recorder/ChangeLog b/apps/recorder/ChangeLog index c4d1fa8c1..c3e20ed34 100644 --- a/apps/recorder/ChangeLog +++ b/apps/recorder/ChangeLog @@ -25,3 +25,4 @@ 0.19: Fix track plotting code 0.20: Automatic translation of some more strings. 0.21: Speed report now uses speed units from locale +0.22: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/recorder/app.js b/apps/recorder/app.js index 8ac3ff627..972a9580d 100644 --- a/apps/recorder/app.js +++ b/apps/recorder/app.js @@ -56,7 +56,6 @@ function showMainMenu() { '< Back': ()=>{load();}, /*LANG*/'RECORD': { value: !!settings.recording, - format: v=>v?/*LANG*/"On":/*LANG*/"Off", onchange: v => { setTimeout(function() { E.showMenu(); diff --git a/apps/recorder/metadata.json b/apps/recorder/metadata.json index 45d588d99..60abeadef 100644 --- a/apps/recorder/metadata.json +++ b/apps/recorder/metadata.json @@ -2,7 +2,7 @@ "id": "recorder", "name": "Recorder", "shortName": "Recorder", - "version": "0.21", + "version": "0.22", "description": "Record GPS position, heart rate and more in the background, then download to your PC.", "icon": "app.png", "tags": "tool,outdoors,gps,widget", diff --git a/apps/setting/ChangeLog b/apps/setting/ChangeLog index 9a5579f07..8f14d0419 100644 --- a/apps/setting/ChangeLog +++ b/apps/setting/ChangeLog @@ -63,3 +63,4 @@ 0.56: make System menu items shorter and more consistant, Eg 'Clock', intead of 'Select Clock' 0.57: Settings.log = 0,1,2,3 for off,display,log,both +0.58: On/Off settings items now use checkboxes diff --git a/apps/setting/metadata.json b/apps/setting/metadata.json index 6d5739d03..ab029f1e5 100644 --- a/apps/setting/metadata.json +++ b/apps/setting/metadata.json @@ -1,7 +1,7 @@ { "id": "setting", "name": "Settings", - "version": "0.57", + "version": "0.58", "description": "A menu for setting up Bangle.js", "icon": "settings.png", "tags": "tool,system", diff --git a/apps/setting/settings.js b/apps/setting/settings.js index bc5f2a74a..db3e476b7 100644 --- a/apps/setting/settings.js +++ b/apps/setting/settings.js @@ -64,8 +64,6 @@ if (("object" != typeof settings) || ("object" != typeof settings.options)) resetSettings(); -const boolFormat = v => v ? /*LANG*/"On" : /*LANG*/"Off"; - function showMainMenu() { const mainmenu = { @@ -102,7 +100,6 @@ function showAlertsMenu() { if (BANGLEJS2) { beepMenuItem = { value: settings.beep!=false, - format: boolFormat, onchange: v => { settings.beep = v; updateSettings(); @@ -134,7 +131,6 @@ function showAlertsMenu() { /*LANG*/'Beep': beepMenuItem, /*LANG*/'Vibration': { value: settings.vibrate, - format: boolFormat, onchange: () => { settings.vibrate = !settings.vibrate; updateSettings(); @@ -169,7 +165,6 @@ function showBLEMenu() { /*LANG*/'Make Connectable': ()=>makeConnectable(), /*LANG*/'BLE': { value: settings.ble, - format: boolFormat, onchange: () => { settings.ble = !settings.ble; updateSettings(); @@ -177,7 +172,6 @@ function showBLEMenu() { }, /*LANG*/'Programmable': { value: settings.blerepl, - format: boolFormat, onchange: () => { settings.blerepl = !settings.blerepl; updateSettings(); @@ -428,7 +422,6 @@ function showLCDMenu() { }, /*LANG*/'Wake on BTN1': { value: settings.options.wakeOnBTN1, - format: boolFormat, onchange: () => { settings.options.wakeOnBTN1 = !settings.options.wakeOnBTN1; updateOptions(); @@ -439,7 +432,6 @@ function showLCDMenu() { Object.assign(lcdMenu, { /*LANG*/'Wake on BTN2': { value: settings.options.wakeOnBTN2, - format: boolFormat, onchange: () => { settings.options.wakeOnBTN2 = !settings.options.wakeOnBTN2; updateOptions(); @@ -447,7 +439,6 @@ function showLCDMenu() { }, /*LANG*/'Wake on BTN3': { value: settings.options.wakeOnBTN3, - format: boolFormat, onchange: () => { settings.options.wakeOnBTN3 = !settings.options.wakeOnBTN3; updateOptions(); @@ -456,7 +447,6 @@ function showLCDMenu() { Object.assign(lcdMenu, { /*LANG*/'Wake on FaceUp': { value: settings.options.wakeOnFaceUp, - format: boolFormat, onchange: () => { settings.options.wakeOnFaceUp = !settings.options.wakeOnFaceUp; updateOptions(); @@ -464,7 +454,6 @@ function showLCDMenu() { }, /*LANG*/'Wake on Touch': { value: settings.options.wakeOnTouch, - format: boolFormat, onchange: () => { settings.options.wakeOnTouch = !settings.options.wakeOnTouch; updateOptions(); @@ -472,7 +461,6 @@ function showLCDMenu() { }, /*LANG*/'Wake on Twist': { value: settings.options.wakeOnTwist, - format: boolFormat, onchange: () => { settings.options.wakeOnTwist = !settings.options.wakeOnTwist; updateOptions(); diff --git a/apps/sleepphasealarm/ChangeLog b/apps/sleepphasealarm/ChangeLog index 4b119b571..b22db7170 100644 --- a/apps/sleepphasealarm/ChangeLog +++ b/apps/sleepphasealarm/ChangeLog @@ -17,3 +17,4 @@ 0.14: Reduce update interval of current time when seconds are not shown Limit logging on Bangle.js 1 to one day due to low memory Add plot logged data to settings +0.15: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/sleepphasealarm/metadata.json b/apps/sleepphasealarm/metadata.json index 147664728..4ad1588ea 100644 --- a/apps/sleepphasealarm/metadata.json +++ b/apps/sleepphasealarm/metadata.json @@ -2,7 +2,7 @@ "id": "sleepphasealarm", "name": "SleepPhaseAlarm", "shortName": "SleepPhaseAlarm", - "version": "0.14", + "version": "0.15", "description": "Uses the accelerometer to estimate sleep and wake states with the principle of Estimation of Stationary Sleep-segments (ESS, see https://ubicomp.eti.uni-siegen.de/home/datasets/ichi14/index.html.en). This app will read the next alarm from the alarm application and will wake you up to 30 minutes early at the best guessed time when you are almost already awake.", "icon": "app.png", "tags": "tool,alarm", diff --git a/apps/sleepphasealarm/settings.js b/apps/sleepphasealarm/settings.js index b6fbdf60b..626de6cd0 100644 --- a/apps/sleepphasealarm/settings.js +++ b/apps/sleepphasealarm/settings.js @@ -91,7 +91,6 @@ "" : { "title" : "SleepPhaseAlarm" }, 'Keep alarm enabled': { value: !!config.settings.disableAlarm, - format: v => v?"No":"Yes", onchange: v => { config.settings.disableAlarm = v; writeSettings(); diff --git a/apps/slidingtext/ChangeLog b/apps/slidingtext/ChangeLog index 5c4a9fa75..42d1b061c 100644 --- a/apps/slidingtext/ChangeLog +++ b/apps/slidingtext/ChangeLog @@ -9,3 +9,4 @@ 0.09: Added button control toggle and other live controls to new settings screen. 0.10: Tell clock widgets to hide. 0.11: Added new styling and watch faces +0.12: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/slidingtext/metadata.json b/apps/slidingtext/metadata.json index 098fdb747..4dc6f1f0c 100644 --- a/apps/slidingtext/metadata.json +++ b/apps/slidingtext/metadata.json @@ -1,7 +1,7 @@ { "id": "slidingtext", "name": "Sliding Clock", - "version": "0.11", + "version": "0.12", "description": "Inspired by the Pebble sliding clock, old times are scrolled off the screen and new times on. You are also able to change language on the fly so you can see the time written in other languages using button 1. Currently English, French, Japanese, Spanish and German are supported", "icon": "slidingtext.png", "screenshots": [{"url":"slidingtext-screenshot.english.png"},{"url":"slidingtext-screenshot.english2.png"},{"url":"slidingtext-screenshot.hybrid.png"}], diff --git a/apps/slidingtext/slidingtext.settings.js b/apps/slidingtext/slidingtext.settings.js index e13c857fd..1eee39bf0 100644 --- a/apps/slidingtext/slidingtext.settings.js +++ b/apps/slidingtext/slidingtext.settings.js @@ -173,12 +173,11 @@ "Colour": stringInSettings("color_scheme", ["black","white", "red","grey","purple","blue"]), "Style": stringInSettings("date_format", locales, (l)=>locale_mappings[l] ), "Live Control": { - value: (settings.enable_live_controls !== undefined ? settings.enable_live_controls : true), - format: v => v ? "On" : "Off", + value: (settings.enable_live_controls !== undefined ? !!settings.enable_live_controls : true), onchange: v => { settings.enable_live_controls = v; writeSettings(); } }, }); -}) \ No newline at end of file +}) diff --git a/apps/slomoclock/settings.js b/apps/slomoclock/settings.js index af67069dc..dcaf0aff6 100644 --- a/apps/slomoclock/settings.js +++ b/apps/slomoclock/settings.js @@ -1,24 +1,24 @@ (function(back) { let settings = require('Storage').readJSON('slomoclock.json',1)||{}; - + function writeSettings() { require('Storage').write('slomoclock.json',settings); } - + function setColour(c) { settings.colour = c; writeSettings(); } - + const appMenu = { '': {'title': 'SloMo Clock'}, '< Back': back, 'Colours' : function() { E.showMenu(colMenu); } - //,'Widget Space Top' : {value : settings.widTop, format : v => v?"On":"Off",onchange : () => { settings.widTop = !settings.widTop; writeSettings(); } - //,'Widget Space Bottom' : {value : settings.widBot, format : v => v?"On":"Off",onchange : () => { settings.widBot = !settings.widBot; writeSettings(); } + //,'Widget Space Top' : {value : settings.widTop, onchange : () => { settings.widTop = !settings.widTop; writeSettings(); } + //,'Widget Space Bottom' : {value : settings.widBot, onchange : () => { settings.widBot = !settings.widBot; writeSettings(); } }; - + const colMenu = { '': {'title': 'Colours'}, '< Back': function() { E.showMenu(appMenu); }, @@ -32,7 +32,7 @@ 'Violet' : function() { setColour(7); }, 'White' : function() { setColour(8); } }; - + E.showMenu(appMenu); }); diff --git a/apps/waypointer/ChangeLog b/apps/waypointer/ChangeLog index 60e8bfab0..8c8a323de 100644 --- a/apps/waypointer/ChangeLog +++ b/apps/waypointer/ChangeLog @@ -6,3 +6,4 @@ 0.06: Added adjustment for Bangle.js magnetometer heading fix 0.07: Add settings file with the option to disable the slow direction updates 0.08: Use tilt compensation from new magnav library +0.09: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/waypointer/metadata.json b/apps/waypointer/metadata.json index e21c5f10f..b8f28fbb9 100644 --- a/apps/waypointer/metadata.json +++ b/apps/waypointer/metadata.json @@ -1,7 +1,7 @@ { "id": "waypointer", "name": "Way Pointer", - "version": "0.08", + "version": "0.09", "description": "Navigate to a waypoint using the GPS for bearing and compass to point way, uses the same waypoint interface as GPS Navigation", "icon": "waypointer.png", "tags": "tool,outdoors,gps", diff --git a/apps/waypointer/settings.js b/apps/waypointer/settings.js index c8b06b9f9..cc521c637 100644 --- a/apps/waypointer/settings.js +++ b/apps/waypointer/settings.js @@ -15,7 +15,6 @@ "< Back" : () => back(), 'Smooth arrow rot': { value: !!settings.smoothDirection, - format: v => v?"Yes":"No", onchange: v => { settings.smoothDirection = v; writeSettings(); diff --git a/apps/widalarmeta/ChangeLog b/apps/widalarmeta/ChangeLog index 1012ee386..66b9a4b8e 100644 --- a/apps/widalarmeta/ChangeLog +++ b/apps/widalarmeta/ChangeLog @@ -5,3 +5,4 @@ 0.03: Fix Bell not appearing on alarms > 24h and redrawing interval Update to match the default alarm widget, and not show itself when an alarm is hidden. 0.04: Fix check for active alarm +0.05: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/widalarmeta/metadata.json b/apps/widalarmeta/metadata.json index aad3c4321..20b54d7c8 100644 --- a/apps/widalarmeta/metadata.json +++ b/apps/widalarmeta/metadata.json @@ -2,7 +2,7 @@ "id": "widalarmeta", "name": "Alarm & Timer ETA", "shortName": "Alarm ETA", - "version": "0.04", + "version": "0.05", "description": "A widget that displays the time to the next Alarm or Timer in hours and minutes, maximum 24h (configurable).", "icon": "widget.png", "type": "widget", diff --git a/apps/widalarmeta/settings.js b/apps/widalarmeta/settings.js index 5922d159d..db9243ae0 100644 --- a/apps/widalarmeta/settings.js +++ b/apps/widalarmeta/settings.js @@ -26,7 +26,6 @@ }, /*LANG*/'Draw bell': { value: !!settings.drawBell, - format: v => v?/*LANG*/"Yes":/*LANG*/"No", onchange: v => { settings.drawBell = v; writeSettings(); diff --git a/apps/widdst/ChangeLog b/apps/widdst/ChangeLog index e350137ee..7cb1016f5 100644 --- a/apps/widdst/ChangeLog +++ b/apps/widdst/ChangeLog @@ -1,2 +1,3 @@ 0.01: Initial version 0.02: Checks for correct firmware; E.setDST(...) moved to boot.js +0.03: Convert Yes/No On/Off in settings to checkboxes diff --git a/apps/widdst/metadata.json b/apps/widdst/metadata.json index 144c02998..b97b61369 100644 --- a/apps/widdst/metadata.json +++ b/apps/widdst/metadata.json @@ -1,6 +1,6 @@ { "id": "widdst", "name": "Daylight Saving", - "version":"0.02", + "version":"0.03", "description": "Widget to set daylight saving rules. Requires Espruino 2v14.49 or later - see the instructions below for more information.", "icon": "icon.png", "type": "widget", diff --git a/apps/widdst/settings.js b/apps/widdst/settings.js index 9a7e579b7..7363aa6bf 100644 --- a/apps/widdst/settings.js +++ b/apps/widdst/settings.js @@ -23,7 +23,7 @@ at: 2 } }, require("Storage").readJSON("widdst.json", true) || {}); - + var dst_start_end = { is_start: true, day_offset: 0, @@ -32,11 +32,11 @@ month: 0, at: 0 }; - + function writeSettings() { require('Storage').writeJSON("widdst.json", settings); } - + function writeSubMenuSettings() { if (dst_start_end.is_start) { settings.dst_start.day_offset = dst_start_end.day_offset; @@ -53,11 +53,11 @@ } writeSettings(); } - + function hoursToString(h) { return (h|0) + ':' + (((6*h)%6)|0) + (((60*h)%10)|0); } - + function getDSTStartEndMenu(start) { dst_start_end.is_start = start; if (start) { @@ -131,23 +131,21 @@ } } } - + var dstMenu = { "": { "Title": /*LANG*/"Daylight Saving" }, "< Back": () => back(), /*LANG*/"Enabled": { - value: settings.has_dst, - format: v => v ? /*LANG*/"Yes" : /*LANG*/"No", + value: !!settings.has_dst, onchange: v => { settings.has_dst = v; writeSettings(); } }, /*LANG*/"Icon": { - value: settings.show_icon, - format: v => v ? /*LANG*/"Yes" : /*LANG*/"No", + value: !!settings.show_icon, onchange: v => { settings.show_icon = v; writeSettings(); @@ -178,7 +176,7 @@ /*LANG*/"DST Start": () => E.showMenu(getDSTStartEndMenu(true)), /*LANG*/"DST End": () => E.showMenu(getDSTStartEndMenu(false)) }; - + E.showMenu(dstMenu); }); From f5d265387232138c43f46ea429859a117c675aac Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 23 Feb 2023 11:47:02 +0000 Subject: [PATCH 0320/1725] More explicit notes on minification --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index cc69781ee..1ed95107e 100644 --- a/index.html +++ b/index.html @@ -148,7 +148,7 @@ - - + ` } @@ -118,7 +118,7 @@ function viewDeferredTable(filename) { var htmlOverview = `

    Deferred function calls

    - This are functions used in timeouts and intervals and their accumulated execution times. Recorded in a time span of ${Math.round((duration)/1000)}s. Timeouts/intervals have run for ${Math.round(sum/1000)}s (${(sum/duration*100).toFixed(2)}%). Percentages are calculated from summarized timeout/interval running time. + This are functions used in timeouts and intervals and their accumulated execution times. Recorded in a time span of ${timeFormat(duration)}. Timeouts/intervals have run for ${timeFormat(sum)} (${(sum/duration*100).toFixed(2)}%). Percentages are calculated from summarized timeout/interval running time.
    Type
    ` + new Date(entry[0] * 6E5).toLocaleTimeString([], {hour: '2-digit', minute: '2-digit'}) + `
    = 60 ? ` style="background-color: hsl(192, 50%, ` + (duration > 480 ? 50 : 100 - Math.floor(duration / 60) * 50 / 8) + `%)">` : `>`) + @@ -84,7 +84,7 @@ function readLog(date, callback) { function deleteFile(filename, callback) { if (window.confirm("Do you really want to remove " + filename)) { - Util.showModal("Deleting..."); + Util.showModal("Deleting " + filename + " ..."); if (filename.endsWith(" (StorageFile)")) { Util.eraseStorageFile(filename, () => { Util.hideModal(); @@ -99,15 +99,29 @@ function deleteFile(filename, callback) { } } +function deleteBefore(dateString) { + date = new Date(dateString); + if (window.confirm("Do you really want to remove all data before" + date.toLocaleDateString(undefined))) { + Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); + Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/).forEach(file => { + date = (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 + print(date < ` + date + `) + })`, () => { + Util.hideModal(); + callback(); + }); + } +} + function viewFiles() { Util.showModal("Loading..."); domTable.innerHTML = ""; - Puck.eval(`require("Storage").list(/^sleeplog_\\d\\d\\d\\d\\.log$/)`, files => { + Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)`, files => { // add active log files.push("" + Math.floor(Date.now() / 12096E5 - 0.25)); files = files.map(file => { return { filename: file.length === 4 ? "sleeplog.log (StorageFile)" : file, - date: (parseInt(file.match(/\d{4}/)[0]) + 0.25) * 12096E5 + date: (parseInt(file.match(/\d+/)[0]) + 0.25) * 12096E5 }}); files = files.sort((a, b) => a.date - b.date); var html = ` @@ -146,10 +160,10 @@ function viewFiles() {
    -
    +
    -
    +
    +
    +
    + +
    +
    +
    `; domTable.innerHTML = html; Util.hideModal(); @@ -172,6 +203,7 @@ function viewFiles() { if (task === "view") readLog(date, logData => viewLog(logData, filename)); else if (task === "csv") readLog(date, logData => saveCSV(logData, date, date + 12096E5)); else if (task === "del") deleteFile(filename, () => viewFiles()); + else if (task === "delBefore") deleteBefore(document.getElementById("delBeforeDate").value); }); } }); diff --git a/apps/sleeplog/lib.js b/apps/sleeplog/lib.js index 83c45de66..8aa1748b1 100644 --- a/apps/sleeplog/lib.js +++ b/apps/sleeplog/lib.js @@ -123,7 +123,7 @@ exports = { // free ram files = undefined; - // check if log from files is available + // check if log from files is available if (filesLog.length) { // remove unwanted entries filesLog = filesLog.filter((entry, index, filesLog) => ( diff --git a/apps/sleeplog/metadata.json b/apps/sleeplog/metadata.json index 353476446..16f51b91e 100644 --- a/apps/sleeplog/metadata.json +++ b/apps/sleeplog/metadata.json @@ -2,7 +2,7 @@ "id":"sleeplog", "name":"Sleep Log", "shortName": "SleepLog", - "version": "0.12", + "version": "0.14", "description": "Log and view your sleeping habits. This app is using the built in movement calculation.", "icon": "app.png", "type": "app", From 7740ab87c20101098be102c7334384579633649a Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 17:03:37 +0200 Subject: [PATCH 0697/1725] [sleeplog] Correct deleteBefore function --- apps/sleeplog/interface.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 3c3c4b376..608086b3d 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -105,7 +105,9 @@ function deleteBefore(dateString) { Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/).forEach(file => { date = (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 - print(date < ` + date + `) + if (date < ` + date + `) { + require("Storage").erase(file) + } })`, () => { Util.hideModal(); callback(); From 4b41d3098780c49cc504336176c26cdad04c26c3 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 17:29:25 +0200 Subject: [PATCH 0698/1725] [sleeplog] Correct deleteBefore function 2 --- apps/sleeplog/interface.html | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 608086b3d..41f2d953b 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -103,15 +103,16 @@ function deleteBefore(dateString) { date = new Date(dateString); if (window.confirm("Do you really want to remove all data before" + date.toLocaleDateString(undefined))) { Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); - Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/).forEach(file => { - date = (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 - if (date < ` + date + `) { - require("Storage").erase(file) - } - })`, () => { - Util.hideModal(); - callback(); + Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)`, files => { + files = files.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < date); + total = "" + files.length + files.forEach((file, i) => { + Util.showModal("Deleting file " + ("" + (i + 1)).padStart(total.length) + "/" + total + ": " + file); + Util.eraseStorage(filename, () => { callback(); }); + }) }); + Util.hideModal(); + callback(); } } From 1b467cfa99d14b09b35225d510aacd74dca13fbf Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 17:40:14 +0200 Subject: [PATCH 0699/1725] [sleeplog] Correct deleteBefore function 3 --- apps/sleeplog/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 41f2d953b..6cc121c4a 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -108,7 +108,7 @@ function deleteBefore(dateString) { total = "" + files.length files.forEach((file, i) => { Util.showModal("Deleting file " + ("" + (i + 1)).padStart(total.length) + "/" + total + ": " + file); - Util.eraseStorage(filename, () => { callback(); }); + Util.eraseStorage(filename); }) }); Util.hideModal(); From 983878647a1351f3507e9d1c97a6172875827676 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 17:52:59 +0200 Subject: [PATCH 0700/1725] [sleeplog] Correct deleteBefore function 4 --- apps/sleeplog/interface.html | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 6cc121c4a..412c2a064 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -101,18 +101,18 @@ function deleteFile(filename, callback) { function deleteBefore(dateString) { date = new Date(dateString); - if (window.confirm("Do you really want to remove all data before" + date.toLocaleDateString(undefined))) { + if (window.confirm("Do you really want to remove all data before " + date.toLocaleDateString(undefined))) { Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); - Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)`, files => { - files = files.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < date); - total = "" + files.length - files.forEach((file, i) => { - Util.showModal("Deleting file " + ("" + (i + 1)).padStart(total.length) + "/" + total + ": " + file); - Util.eraseStorage(filename); - }) - }); - Util.hideModal(); - callback(); + Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/).forEach(file => { + date = (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 + print(date < ` + date + `) + if (date < ` + date + `) { + require("Storage").erase(file) + } + })`, () => { + Util.hideModal(); + callback(); + }) } } @@ -186,7 +186,7 @@ function viewFiles() {
    -
    From f03bd7fc5b7955816adcca0f818b1903f41dfc54 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 18:02:34 +0200 Subject: [PATCH 0701/1725] [sleeplog] Correct deleteBefore function 5 --- apps/sleeplog/interface.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 412c2a064..afcfa4dda 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -99,7 +99,7 @@ function deleteFile(filename, callback) { } } -function deleteBefore(dateString) { +function deleteBefore(dateString, callback) { date = new Date(dateString); if (window.confirm("Do you really want to remove all data before " + date.toLocaleDateString(undefined))) { Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); @@ -206,7 +206,7 @@ function viewFiles() { if (task === "view") readLog(date, logData => viewLog(logData, filename)); else if (task === "csv") readLog(date, logData => saveCSV(logData, date, date + 12096E5)); else if (task === "del") deleteFile(filename, () => viewFiles()); - else if (task === "delBefore") deleteBefore(document.getElementById("delBeforeDate").value); + else if (task === "delBefore") deleteBefore(document.getElementById("delBeforeDate").value, () => viewFiles()); }); } }); From bdf2af9785a706e7aea3b9c38ace395d7d1bd397 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 18:07:36 +0200 Subject: [PATCH 0702/1725] [sleeplog] Correct deleteBefore function 6 --- apps/sleeplog/interface.html | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index afcfa4dda..7e31abe83 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -186,7 +186,7 @@ function viewFiles() {
    -
    @@ -200,13 +200,16 @@ function viewFiles() { buttons[i].addEventListener("click", event => { var button = event.currentTarget; var task = button.getAttribute("task"); - var filename = button.getAttribute("filename"); - var date = button.getAttribute("date") - 0; - if (!task || !filename || !date) return; - if (task === "view") readLog(date, logData => viewLog(logData, filename)); - else if (task === "csv") readLog(date, logData => saveCSV(logData, date, date + 12096E5)); - else if (task === "del") deleteFile(filename, () => viewFiles()); - else if (task === "delBefore") deleteBefore(document.getElementById("delBeforeDate").value, () => viewFiles()); + if (task === "delBefore") { + deleteBefore(document.getElementById("delBeforeDate").value, () => viewFiles()); + } else { + var filename = button.getAttribute("filename"); + var date = button.getAttribute("date") - 0; + if (!task || !filename || !date) return; + if (task === "view") readLog(date, logData => viewLog(logData, filename)); + else if (task === "csv") readLog(date, logData => saveCSV(logData, date, date + 12096E5)); + else if (task === "del") deleteFile(filename, () => viewFiles()); + } }); } }); From b59867ae73bbb2bff87d05883411f008b5f73932 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 18:11:25 +0200 Subject: [PATCH 0703/1725] [sleeplog] Correct deleteBefore function 7 --- apps/sleeplog/interface.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 7e31abe83..c1ffc57ad 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -105,8 +105,7 @@ function deleteBefore(dateString, callback) { Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/).forEach(file => { date = (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 - print(date < ` + date + `) - if (date < ` + date + `) { + if (date < ` + date.valueOf + `) { require("Storage").erase(file) } })`, () => { From 4a6cdacec3383a43d5f6c4d3daa1cfd26418ef9b Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 18:29:06 +0200 Subject: [PATCH 0704/1725] [sleeplog] Correct deleteBefore function 8 --- apps/sleeplog/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index c1ffc57ad..fc7255a7c 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -105,7 +105,7 @@ function deleteBefore(dateString, callback) { Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/).forEach(file => { date = (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 - if (date < ` + date.valueOf + `) { + if (date < ` + date.valueOf() + `) { require("Storage").erase(file) } })`, () => { From 644af8d79264274eca85e4ca623b6bb03a589a81 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 19:03:12 +0200 Subject: [PATCH 0705/1725] [sleeplog] Add feedback to deleteBefore function --- apps/sleeplog/interface.html | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index fc7255a7c..364025a65 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -103,13 +103,11 @@ function deleteBefore(dateString, callback) { date = new Date(dateString); if (window.confirm("Do you really want to remove all data before " + date.toLocaleDateString(undefined))) { Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); - Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/).forEach(file => { - date = (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 - if (date < ` + date.valueOf() + `) { - require("Storage").erase(file) - } - })`, () => { + Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)` + + `.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < ` + date.valueOf() + `)` + + `.forEach(file => require("Storage").erase(file))`, files => { Util.hideModal(); + window.prompt(files.length + " files deleted"); callback(); }) } From a2ce5af0d383375ab71fe0898370b49ba00f0f0a Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 19:15:27 +0200 Subject: [PATCH 0706/1725] [sleeplog] Add feedback to deleteBefore function 2 --- apps/sleeplog/interface.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 364025a65..64fd0c73b 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -105,9 +105,9 @@ function deleteBefore(dateString, callback) { Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)` + `.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < ` + date.valueOf() + `)` + - `.forEach(file => require("Storage").erase(file))`, files => { + `.map(file => require("Storage").erase(file)).length`, count => { Util.hideModal(); - window.prompt(files.length + " files deleted"); + window.prompt(count + " files deleted"); callback(); }) } From 72aee51f1a93b75b3751194cde9f615b064f9b35 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 22:34:28 +0200 Subject: [PATCH 0707/1725] [sleeplog] Add feedback to deleteBefore function 3 --- apps/sleeplog/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 64fd0c73b..7c7fd9002 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -107,7 +107,7 @@ function deleteBefore(dateString, callback) { `.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < ` + date.valueOf() + `)` + `.map(file => require("Storage").erase(file)).length`, count => { Util.hideModal(); - window.prompt(count + " files deleted"); + window.alert(count + " files deleted"); callback(); }) } From 19e0f528863eb52281108e4f61c33fa95c5f28a0 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 22:40:47 +0200 Subject: [PATCH 0708/1725] [sleeplog] Add feedback to deleteBefore function 4 --- apps/sleeplog/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 7c7fd9002..1b8362ca4 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -106,8 +106,8 @@ function deleteBefore(dateString, callback) { Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)` + `.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < ` + date.valueOf() + `)` + `.map(file => require("Storage").erase(file)).length`, count => { - Util.hideModal(); window.alert(count + " files deleted"); + Util.hideModal(); callback(); }) } From 7377da70efaf3fc80aab5a68647eb308359ea8c1 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 22:44:47 +0200 Subject: [PATCH 0709/1725] [sleeplog] Add feedback to deleteBefore function 5 --- apps/sleeplog/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 1b8362ca4..fd948caa9 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -106,7 +106,7 @@ function deleteBefore(dateString, callback) { Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)` + `.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < ` + date.valueOf() + `)` + `.map(file => require("Storage").erase(file)).length`, count => { - window.alert(count + " files deleted"); + window.confirm(count + " files deleted"); Util.hideModal(); callback(); }) From 71ff4d09fd2626c7f35c39dc8bd7ca0a450354a5 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 22:50:27 +0200 Subject: [PATCH 0710/1725] Revert "[sleeplog] Add feedback to deleteBefore function 5" This reverts commit 7377da70efaf3fc80aab5a68647eb308359ea8c1. --- apps/sleeplog/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index fd948caa9..1b8362ca4 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -106,7 +106,7 @@ function deleteBefore(dateString, callback) { Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)` + `.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < ` + date.valueOf() + `)` + `.map(file => require("Storage").erase(file)).length`, count => { - window.confirm(count + " files deleted"); + window.alert(count + " files deleted"); Util.hideModal(); callback(); }) From ce1c8b8ae8557a32903a58ae4bdd7d03d87b03e5 Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 22:50:37 +0200 Subject: [PATCH 0711/1725] Revert "[sleeplog] Add feedback to deleteBefore function 4" This reverts commit 19e0f528863eb52281108e4f61c33fa95c5f28a0. --- apps/sleeplog/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 1b8362ca4..7c7fd9002 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -106,8 +106,8 @@ function deleteBefore(dateString, callback) { Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)` + `.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < ` + date.valueOf() + `)` + `.map(file => require("Storage").erase(file)).length`, count => { - window.alert(count + " files deleted"); Util.hideModal(); + window.alert(count + " files deleted"); callback(); }) } From d00cb89dea1b164babeee94c107f671906c1276a Mon Sep 17 00:00:00 2001 From: Scharf Date: Wed, 5 Apr 2023 23:13:34 +0200 Subject: [PATCH 0712/1725] [sleeplog] Correct deleteBefore function ... last --- apps/sleeplog/README.md | 95 +++++++++++++++++++----------------- apps/sleeplog/interface.html | 2 +- 2 files changed, 50 insertions(+), 47 deletions(-) diff --git a/apps/sleeplog/README.md b/apps/sleeplog/README.md index 77f9981e4..10468200e 100644 --- a/apps/sleeplog/README.md +++ b/apps/sleeplog/README.md @@ -7,11 +7,11 @@ This app logs and displays the following states: It is using the built in movement calculation to decide your sleeping state. While charging it is assumed that you are not wearing the watch and if the status changes to _deep sleep_ the internal heartrate sensor is used to detect if you are wearing the watch. #### Explanations -* __Detection of Sleep__ +* __Detection of Sleep__ The movement value of bangle's build in health event that is triggered every 10 minutes is checked against the thresholds for light and deep sleep. If the measured movement is lower or equal to the __Deep Sleep__-threshold a deep sleep phase is detected for the last 10 minutes. If the threshold is exceeded but not the __Light Sleep__-threshold than the last timeperiod is detected as light sleep phase. On exceeding even this threshold it is assumed that you were awake. -* __True Sleep__ +* __True Sleep__ The true sleep value is a simple addition of all registered sleeping periods. -* __Consecutive Sleep__ +* __Consecutive Sleep__ In addition the consecutive sleep value tries to predict the complete time you were asleep, even the very light sleeping periods when an awake period is detected based on the registered movements. All periods after a sleeping period will be summarized until the first following non sleeping period that is longer then the maximal awake duration (__Max Awake__). If this sum is lower than the minimal consecutive sleep duration (__Min Consecutive__) it is not considered, otherwise it will be added to the consecutive sleep value. Logfiles are not removed on un-/reinstall to prevent data loss. @@ -28,16 +28,16 @@ Logfiles are not removed on un-/reinstall to prevent data loss. --- #### Controls: - - __swipe left & right__ + - __swipe left & right__ to change the displayed day - - __touch the "title"__ (e.g. `Night to Fri 20/05/2022`) + - __touch the "title"__ (e.g. `Night to Fri 20/05/2022`) to enter day selection prompt - - __touch the info area__ + - __touch the info area__ to change the displayed information (by default: consecutive & true sleeping) - - __touch the wrench__ (upper right corner) + - __touch the wrench__ (upper right corner) to enter the settings - - __use back button widget__ (upper left corner) + - __use back button widget__ (upper left corner) exit the app #### View: @@ -55,42 +55,42 @@ Logfiles are not removed on un-/reinstall to prevent data loss. ### Settings Usage --- - - __Thresholds__ submenu + - __Thresholds__ submenu Changes take effect from now on, not retrospective! - - __Max Awake__ | maximal awake duration + - __Max Awake__ | maximal awake duration _10min_ / _20min_ / ... / __60min__ / ... / _120min_ - - __Min Consecutive__ | minimal consecutive sleep duration + - __Min Consecutive__ | minimal consecutive sleep duration _10min_ / _20min_ / ... / __30min__ / ... / _120min_ - - __Deep Sleep__ | deep sleep threshold + - __Deep Sleep__ | deep sleep threshold _30_ / _31_ / ... / __100__ / ... / _200_ - - __Light Sleep__ | light sleep threshold + - __Light Sleep__ | light sleep threshold _100_ / _110_ / ... / __200__ / ... / _400_ - __Reset to Default__ | reset to bold values above - - __BreakToD__ | time of day to break view + - __BreakToD__ | time of day to break view _0:00_ / _1:00_ / ... / __12:00__ / ... / _23:00_ - - __App Timeout__ | app specific lock timeout + - __App Timeout__ | app specific lock timeout __0s__ / _10s_ / ... / _120s_ - - __Enabled__ | completely en-/disables the background service + - __Enabled__ | completely en-/disables the background service __on__ / _off_ - __Debugging__ submenu - - __View log__ | display logfile data + - __View log__ | display logfile data Select the logfile by its starting time. Thresholds are shown as line with its value. - - __swipe left & right__ + - __swipe left & right__ to change displayed duration - - __swipe up & down__ + - __swipe up & down__ to change displayed value range - - __touch the graph__ + - __touch the graph__ to change between light & dark colors - - __use back button widget__ (upper left corner) + - __use back button widget__ (upper left corner) to go back to the logfile selection - - __Enabled__ | en-/disables debugging + - __Enabled__ | en-/disables debugging _on_ / __off__ - - __write File__ | toggles if a logfile is written + - __write File__ | toggles if a logfile is written _on_ / __off__ - - __Duration__ | duration for writing into logfile + - __Duration__ | duration for writing into logfile _1h_ / _2h_ / ... / __12h__ / _96_ - - The following data is logged to a csv-file: + - The following data is logged to a csv-file: _timestamp_ (in days since 1900-01-01 00:00 UTC used by office software) _, movement, status, consecutive, asleepSince, awakeSince, bpm, bpmConfidence_ @@ -101,39 +101,39 @@ Logfiles are not removed on un-/reinstall to prevent data loss. Available through the App Loader when your watch is connected. - A list of all found logfiles with following options for each file: - - __view data__ + - __view data__ Display the data to each timestamp in a table. - - __save csv-file__ - Download a csv-file with the data to each timestamp. + - __save csv-file__ + Download a csv-file with the data to each timestamp. The time format is chooseable beneath the file list. - - __delete file__ + - __delete file__ Deletes the logfile from the watch. __Please backup your data first!__ -- __csv time format__ - __JavaScript (milliseconds since 1970)__ / - _UNIX (seconds since 1970)_ / +- __csv time format__ + __JavaScript (milliseconds since 1970)__ / + _UNIX (seconds since 1970)_ / _Office (days since 1900)_ -- __delete all logfiles before__ +- __delete all logfiles before__ Deletes all logfile before the given date from the watch. __Please backup your data first!__ --- ### Timestamps and Files --- -1. externally visible/usable timestamps (in `global.sleeplog`) are formatted as Bangle timestamps: +1. externally visible/usable timestamps (in `global.sleeplog`) are formatted as Bangle timestamps: seconds since 1970-01-01 00:00 UTC -2. internally used and logged (to `sleeplog.log (StorageFile)`) is within the highest available resolution: +2. internally used and logged (to `sleeplog.log (StorageFile)`) is within the highest available resolution: 10 minutes since 1970-01-01 00:00 UTC (`Bangle / (10 * 60 * 1000)`) -3. debug .csv file ID (`sleeplog_123456.csv`) has a hourly resolution: +3. debug .csv file ID (`sleeplog_123456.csv`) has a hourly resolution: hours since 1970-01-01 00:00 UTC (`Bangle / (60 * 60 * 1000)`) -4. logged timestamps inside the debug .csv file are formatted for office calculation software: +4. logged timestamps inside the debug .csv file are formatted for office calculation software: days since 1900-01-01 00:00 UTC (`Bangle / (24 * 60 * 60 * 1000) + 25569`) -5. every 14 days the `sleeplog.log (StorageFile)` is reduced and old entries are moved into separat files for each fortnight (`sleeplog_1234.log`) but still accessible though the app: +5. every 14 days the `sleeplog.log (StorageFile)` is reduced and old entries are moved into separat files for each fortnight (`sleeplog_1234.log`) but still accessible though the app: fortnights since 1970-01-04 12:00 UTC (converted with `require("sleeplog").msToFn(Bangle)` and `require("sleeplog").fnToMs(fortnight)`) -- __Logfiles from before 0.10:__ +- __Logfiles from before 0.10:__ timestamps and sleeping status of old logfiles are automatically converted on your first consecutive sleep or manually by `require("sleeplog").convertOldLog()` -- __View logged data:__ +- __View logged data:__ if you'd like to view your logged data in the IDE, you can access it with `require("sleeplog").printLog(since, until)` or `require("sleeplog").readLog(since, until)` to view the raw data since & until in Bangle timestamp, e.g. `require("sleeplog").printLog(Date()-24*60*60*1000, Date())` for the last 24h @@ -143,11 +143,11 @@ Available through the App Loader when your watch is connected. --- #### Access statistics -- Last Asleep Time [Date]: +- Last Asleep Time [Date]: `Date(sleeplog.awakeSince)` -- Last Awake Duration [ms]: +- Last Awake Duration [ms]: `Date() - sleeplog.awakeSince` -- Last Statistics [object]: +- Last Statistics [object]: ``` // get stats of the last night (period as displayed inside the app) // as this might be the mostly used function the data is cached inside the global object @@ -197,11 +197,11 @@ if (typeof (global.sleeplog || {}).trigger === "object") { ``` The passed __data__ object has the following properties: -- timestamp: of the status change as date object, +- timestamp: of the status change as date object, (should be around 10min. before "now", the actual call of the function) -- status: value of the new status (0-4), +- status: value of the new status (0-4), (0 = unknown, 1 = not worn, 2 = awake, 3 = light sleep, 4 = deep sleep) -- consecutive: value of the new status (0-2), +- consecutive: value of the new status (0-2), (0 = unknown, 1 = no consecutive sleep, 2 = consecutive sleep) - prevStatus: if changed the value of the previous status (0-4) else undefined, - prevConsecutive: if changed the value of the previous status (0-2) else undefined @@ -214,6 +214,9 @@ If you want to use other variables or functions from the trigger object inside t ### Worth Mentioning --- #### To do list +- Optimize interface.html: + - Open logfile through require("Storage") instead of require("sleeplog"). + - Give feedback how much files have been deleted on "delete all logfiles before". - Check translations. - Add more functionallities to interface.html. - Enable receiving data on the Gadgetbridge side + testing. diff --git a/apps/sleeplog/interface.html b/apps/sleeplog/interface.html index 7c7fd9002..09baefb11 100644 --- a/apps/sleeplog/interface.html +++ b/apps/sleeplog/interface.html @@ -104,7 +104,7 @@ function deleteBefore(dateString, callback) { if (window.confirm("Do you really want to remove all data before " + date.toLocaleDateString(undefined))) { Util.showModal("Deleting all data before" + date.toLocaleDateString(undefined) + " ..."); Puck.eval(`require("Storage").list(/^sleeplog_\\d+.log$/)` + - `.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < ` + date.valueOf() + `)` + + `.filter(file => (parseInt(file.match(/\\d+/)[0]) + 0.25) * 12096E5 < ` + date.valueOf() + ` - 12096E5)` + `.map(file => require("Storage").erase(file)).length`, count => { Util.hideModal(); window.alert(count + " files deleted"); From b0b10592cd915c816d0d365f05eb33a636963db2 Mon Sep 17 00:00:00 2001 From: notEvil Date: Thu, 6 Apr 2023 23:51:16 +0200 Subject: [PATCH 0713/1725] - apps/chargent: added notification --- apps/chargent/boot.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/chargent/boot.js b/apps/chargent/boot.js index c62003a21..666fd3a04 100644 --- a/apps/chargent/boot.js +++ b/apps/chargent/boot.js @@ -24,16 +24,17 @@ lim = sum / cnt; require('Storage').writeJSON('chargent.json', {limit: lim}); } + require('notify').show({id: 'chargent', title: 'Fully charged'}); // TODO ? customizable Bangle.buzz(500); setTimeout(() => Bangle.buzz(500), 1000); } - }, 30*1000); + }, 3e4); } } else { if (id) { - clearInterval(id); - id = undefined; + id = clearInterval(id); + require('notify').hide({id: 'chargent'}); } } }); From bbbbe4ed7655b27af41baba751e13c9de1224e78 Mon Sep 17 00:00:00 2001 From: notEvil Date: Fri, 7 Apr 2023 13:42:11 +0200 Subject: [PATCH 0714/1725] - apps/chargent: updated metadata --- apps/chargent/ChangeLog | 1 + apps/chargent/metadata.json | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/chargent/ChangeLog b/apps/chargent/ChangeLog index 3003cd07d..d7172c8d2 100644 --- a/apps/chargent/ChangeLog +++ b/apps/chargent/ChangeLog @@ -1,3 +1,4 @@ 0.01: First version 0.02: Support BangleJS2 0.03: Added threshold +0.04: Added notification diff --git a/apps/chargent/metadata.json b/apps/chargent/metadata.json index 653cb7d74..dda0369a6 100644 --- a/apps/chargent/metadata.json +++ b/apps/chargent/metadata.json @@ -1,11 +1,12 @@ { "id": "chargent", "name": "Charge Gently", - "version": "0.03", + "version": "0.04", "description": "When charging, reminds you to disconnect the watch to prolong battery life.", "icon": "icon.png", "type": "bootloader", "tags": "battery", "supports": ["BANGLEJS", "BANGLEJS2"], + "dependencies": {"notify": "type"}, "readme": "README.md", "storage": [ {"name": "chargent.boot.js", "url": "boot.js"} From 4bb96f314c74e59f68d2600ef597e8ca85fc820c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 10 Mar 2023 23:20:28 +0000 Subject: [PATCH 0715/1725] low-power-mode: initial app --- apps/lowpower/ChangeLog | 1 + apps/lowpower/README.md | 25 ++++++++++++++++++ apps/lowpower/app.js | 40 ++++++++++++++++++++++++++++ apps/lowpower/app.ts | 52 +++++++++++++++++++++++++++++++++++++ apps/lowpower/boot.js | 8 ++++++ apps/lowpower/boot.ts | 8 ++++++ apps/lowpower/metadata.json | 15 +++++++++++ 7 files changed, 149 insertions(+) create mode 100644 apps/lowpower/ChangeLog create mode 100644 apps/lowpower/README.md create mode 100644 apps/lowpower/app.js create mode 100644 apps/lowpower/app.ts create mode 100644 apps/lowpower/boot.js create mode 100644 apps/lowpower/boot.ts create mode 100644 apps/lowpower/metadata.json diff --git a/apps/lowpower/ChangeLog b/apps/lowpower/ChangeLog new file mode 100644 index 000000000..1a3bc1757 --- /dev/null +++ b/apps/lowpower/ChangeLog @@ -0,0 +1 @@ +0.01: New app! diff --git a/apps/lowpower/README.md b/apps/lowpower/README.md new file mode 100644 index 000000000..e139d3d23 --- /dev/null +++ b/apps/lowpower/README.md @@ -0,0 +1,25 @@ +# Low Power Mode + +With this app installed, your Bangle will automatically switch into low power mode when the battery reaches a specified threshold, displaying a simple clock. + +# Features + +## Time +[x] Show simple date/time +[ ] Disable alarms - with a setting? + +## No backlight (#2502) +[x] LCD brightness +[ ] LCD timeout + +## Peripherals +[x] Disable auto heart rate measurement in health app (#2502) +[x] Overwrite setGPSPower() function (#2502) +[ ] Turn off already-running GPS / HRM + +## Features +[ ] Wake on twist -> off (#2502) + +# Creator + +[bobrippling](https://github.com/bobrippling/) diff --git a/apps/lowpower/app.js b/apps/lowpower/app.js new file mode 100644 index 000000000..63709cc2b --- /dev/null +++ b/apps/lowpower/app.js @@ -0,0 +1,40 @@ +"use strict"; +if (typeof lowpowerInterval !== "undefined") + lowpowerInterval = clearInterval(lowpowerInterval); +Bangle.setLCDBrightness(0); +Bangle.setGPSPower = Bangle.setHRMPower = function (_val, _name) { return false; }; +Bangle.removeAllListeners(); +var nextDraw; +var draw = function () { + var x = g.getWidth() / 2; + var y = g.getHeight() / 2 - 48; + var date = new Date(); + var timeStr = require("locale").time(date, 1); + var dateStr = require("locale").date(date, 0).toUpperCase() + + "\n" + + require("locale").dow(date, 0).toUpperCase(); + g.reset() + .clearRect(Bangle.appRect) + .setFont("Vector", 32) + .setFontAlign(0, 0) + .drawString(timeStr, x, y) + .setFont("Vector", 24) + .drawString(dateStr, x, y + 56) + .drawString("".concat(E.getBattery(), "%"), x, y + 104); + if (nextDraw) + clearTimeout(nextDraw); + nextDraw = setTimeout(function () { + nextDraw = undefined; + draw(); + }, 60000 - (date.getTime() % 60000)); +}; +Bangle.setUI({ + mode: "clock", + remove: function () { + if (nextDraw) + clearTimeout(nextDraw); + nextDraw = undefined; + }, +}); +g.clear(); +draw(); diff --git a/apps/lowpower/app.ts b/apps/lowpower/app.ts new file mode 100644 index 000000000..fadc6ef4a --- /dev/null +++ b/apps/lowpower/app.ts @@ -0,0 +1,52 @@ +// from boot.js +if(typeof lowpowerInterval !== "undefined") + lowpowerInterval = clearInterval(lowpowerInterval) as undefined; + +// backlight +Bangle.setLCDBrightness(0); + +// peripherals +Bangle.setGPSPower = Bangle.setHRMPower = (_val: boolean, _name: string) => false; + +// events +Bangle.removeAllListeners(); + +// clock +let nextDraw: number | undefined; +const draw = () => { + const x = g.getWidth() / 2; + const y = g.getHeight() / 2 - 48; + + const date = new Date(); + + const timeStr = require("locale").time(date, 1); + const dateStr = require("locale").date(date, 0).toUpperCase() + + "\n" + + require("locale").dow(date, 0).toUpperCase(); + + g.reset() + .clearRect(Bangle.appRect) + .setFont("Vector", 32) + .setFontAlign(0, 0) + .drawString(timeStr, x, y) + .setFont("Vector", 24) + .drawString(dateStr, x, y + 56) + .drawString(`${E.getBattery()}%`, x, y + 104); + + if(nextDraw) clearTimeout(nextDraw); + nextDraw = setTimeout(() => { + nextDraw = undefined; + draw(); + }, 60000 - (date.getTime() % 60000)); +}; + +Bangle.setUI({ + mode: "clock", + remove: () => { + if (nextDraw) clearTimeout(nextDraw); + nextDraw = undefined; + }, +}); + +g.clear(); +draw(); diff --git a/apps/lowpower/boot.js b/apps/lowpower/boot.js new file mode 100644 index 000000000..56a02c6ad --- /dev/null +++ b/apps/lowpower/boot.js @@ -0,0 +1,8 @@ +"use strict"; +var lowpowerInterval = setInterval(function () { + if (Bangle.isCharging()) + return; + if (E.getBattery() > 5) + return; + load("lowpower.app.js"); +}, 5 * 60 * 1000); diff --git a/apps/lowpower/boot.ts b/apps/lowpower/boot.ts new file mode 100644 index 000000000..bb4cfa0b4 --- /dev/null +++ b/apps/lowpower/boot.ts @@ -0,0 +1,8 @@ +let lowpowerInterval: number | undefined = setInterval(() => { + if(Bangle.isCharging()) + return; + if(E.getBattery() > 5) + return; + + load("lowpower.app.js"); +}, 5 * 60 * 1000); diff --git a/apps/lowpower/metadata.json b/apps/lowpower/metadata.json new file mode 100644 index 000000000..c231bd495 --- /dev/null +++ b/apps/lowpower/metadata.json @@ -0,0 +1,15 @@ +{ + "id": "lowpower", + "name": "Low Power Mode", + "version": "0.01", + "description": "Switches to displaying a simple clock when the battery percentage is low, nothing more", + "readme": "README.md", + "icon": "TODOOOOOOOOOOOOOOOO.png", + "type": "clock", + "tags": "clock", + "supports": ["BANGLEJS2"], + "storage": [ + {"name":"lowpower.boot.js","url":"boot.js"}, + {"name":"lowpower.app.js","url":"app.js"} + ] +} From 1fa36bd2b838f1bb84c12b26c0b754b86c5e108e Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 17:52:54 +0100 Subject: [PATCH 0716/1725] drained: rename from low-power-mode --- apps/{lowpower => drained}/ChangeLog | 0 apps/{lowpower => drained}/README.md | 2 +- apps/{lowpower => drained}/app.js | 4 ++-- apps/{lowpower => drained}/app.ts | 4 ++-- apps/{lowpower => drained}/boot.js | 4 ++-- apps/{lowpower => drained}/boot.ts | 4 ++-- apps/{lowpower => drained}/metadata.json | 10 +++++----- 7 files changed, 14 insertions(+), 14 deletions(-) rename apps/{lowpower => drained}/ChangeLog (100%) rename apps/{lowpower => drained}/README.md (97%) rename apps/{lowpower => drained}/app.js (91%) rename apps/{lowpower => drained}/app.ts (90%) rename apps/{lowpower => drained}/boot.js (61%) rename apps/{lowpower => drained}/boot.ts (51%) rename apps/{lowpower => drained}/metadata.json (55%) diff --git a/apps/lowpower/ChangeLog b/apps/drained/ChangeLog similarity index 100% rename from apps/lowpower/ChangeLog rename to apps/drained/ChangeLog diff --git a/apps/lowpower/README.md b/apps/drained/README.md similarity index 97% rename from apps/lowpower/README.md rename to apps/drained/README.md index e139d3d23..74300da59 100644 --- a/apps/lowpower/README.md +++ b/apps/drained/README.md @@ -1,4 +1,4 @@ -# Low Power Mode +# Drained With this app installed, your Bangle will automatically switch into low power mode when the battery reaches a specified threshold, displaying a simple clock. diff --git a/apps/lowpower/app.js b/apps/drained/app.js similarity index 91% rename from apps/lowpower/app.js rename to apps/drained/app.js index 63709cc2b..2e9d3be54 100644 --- a/apps/lowpower/app.js +++ b/apps/drained/app.js @@ -1,6 +1,6 @@ "use strict"; -if (typeof lowpowerInterval !== "undefined") - lowpowerInterval = clearInterval(lowpowerInterval); +if (typeof drainedInterval !== "undefined") + drainedInterval = clearInterval(drainedInterval); Bangle.setLCDBrightness(0); Bangle.setGPSPower = Bangle.setHRMPower = function (_val, _name) { return false; }; Bangle.removeAllListeners(); diff --git a/apps/lowpower/app.ts b/apps/drained/app.ts similarity index 90% rename from apps/lowpower/app.ts rename to apps/drained/app.ts index fadc6ef4a..1cb1b9d44 100644 --- a/apps/lowpower/app.ts +++ b/apps/drained/app.ts @@ -1,6 +1,6 @@ // from boot.js -if(typeof lowpowerInterval !== "undefined") - lowpowerInterval = clearInterval(lowpowerInterval) as undefined; +if(typeof drainedInterval !== "undefined") + drainedInterval = clearInterval(drainedInterval) as undefined; // backlight Bangle.setLCDBrightness(0); diff --git a/apps/lowpower/boot.js b/apps/drained/boot.js similarity index 61% rename from apps/lowpower/boot.js rename to apps/drained/boot.js index 56a02c6ad..b6fd3bf35 100644 --- a/apps/lowpower/boot.js +++ b/apps/drained/boot.js @@ -1,8 +1,8 @@ "use strict"; -var lowpowerInterval = setInterval(function () { +var drainedInterval = setInterval(function () { if (Bangle.isCharging()) return; if (E.getBattery() > 5) return; - load("lowpower.app.js"); + load("drained.app.js"); }, 5 * 60 * 1000); diff --git a/apps/lowpower/boot.ts b/apps/drained/boot.ts similarity index 51% rename from apps/lowpower/boot.ts rename to apps/drained/boot.ts index bb4cfa0b4..6ee7c8e92 100644 --- a/apps/lowpower/boot.ts +++ b/apps/drained/boot.ts @@ -1,8 +1,8 @@ -let lowpowerInterval: number | undefined = setInterval(() => { +let drainedInterval: number | undefined = setInterval(() => { if(Bangle.isCharging()) return; if(E.getBattery() > 5) return; - load("lowpower.app.js"); + load("drained.app.js"); }, 5 * 60 * 1000); diff --git a/apps/lowpower/metadata.json b/apps/drained/metadata.json similarity index 55% rename from apps/lowpower/metadata.json rename to apps/drained/metadata.json index c231bd495..32b5e5ce5 100644 --- a/apps/lowpower/metadata.json +++ b/apps/drained/metadata.json @@ -1,15 +1,15 @@ { - "id": "lowpower", - "name": "Low Power Mode", + "id": "drained", + "name": "Drained", "version": "0.01", - "description": "Switches to displaying a simple clock when the battery percentage is low, nothing more", + "description": "Switches to displaying a simple clock when the battery percentage is low, and disables some peripherals", "readme": "README.md", "icon": "TODOOOOOOOOOOOOOOOO.png", "type": "clock", "tags": "clock", "supports": ["BANGLEJS2"], "storage": [ - {"name":"lowpower.boot.js","url":"boot.js"}, - {"name":"lowpower.app.js","url":"app.js"} + {"name":"drained.boot.js","url":"boot.js"}, + {"name":"drained.app.js","url":"app.js"} ] } From 2de5831827467336c8f5540a667b83bbe03d44c5 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 21:16:01 +0100 Subject: [PATCH 0717/1725] drained: add icon --- apps/drained/icon.png | Bin 0 -> 469 bytes apps/drained/metadata.json | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 apps/drained/icon.png diff --git a/apps/drained/icon.png b/apps/drained/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..33311cf2c74616e85e30b1e15cf6520f2d508d5c GIT binary patch literal 469 zcmV;`0V@89P)oJU)Gm0!9uctku-(Y00000 LNkvXXu0mjfc~Z_Y literal 0 HcmV?d00001 diff --git a/apps/drained/metadata.json b/apps/drained/metadata.json index 32b5e5ce5..c4f11f0df 100644 --- a/apps/drained/metadata.json +++ b/apps/drained/metadata.json @@ -4,7 +4,7 @@ "version": "0.01", "description": "Switches to displaying a simple clock when the battery percentage is low, and disables some peripherals", "readme": "README.md", - "icon": "TODOOOOOOOOOOOOOOOO.png", + "icon": "icon.png", "type": "clock", "tags": "clock", "supports": ["BANGLEJS2"], From 39aa8e7e7bdd8491f4c0912a172468857f569268 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 21:26:25 +0100 Subject: [PATCH 0718/1725] drained: enable emulator --- apps/drained/metadata.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/drained/metadata.json b/apps/drained/metadata.json index c4f11f0df..2af347f79 100644 --- a/apps/drained/metadata.json +++ b/apps/drained/metadata.json @@ -8,6 +8,7 @@ "type": "clock", "tags": "clock", "supports": ["BANGLEJS2"], + "allow_emulator": true, "storage": [ {"name":"drained.boot.js","url":"boot.js"}, {"name":"drained.app.js","url":"app.js"} From a36e705d79d41396271d1ab0060688de04d510bd Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 21:27:15 +0100 Subject: [PATCH 0719/1725] drained: force off gps/hrm --- apps/drained/README.md | 4 ++-- apps/drained/app.ts | 15 ++++++++++++++- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/apps/drained/README.md b/apps/drained/README.md index 74300da59..e4217493b 100644 --- a/apps/drained/README.md +++ b/apps/drained/README.md @@ -10,12 +10,12 @@ With this app installed, your Bangle will automatically switch into low power mo ## No backlight (#2502) [x] LCD brightness -[ ] LCD timeout +[ ] LCD timeout? ## Peripherals [x] Disable auto heart rate measurement in health app (#2502) [x] Overwrite setGPSPower() function (#2502) -[ ] Turn off already-running GPS / HRM +[x] Turn off already-running GPS / HRM ## Features [ ] Wake on twist -> off (#2502) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 1cb1b9d44..029c64f47 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -1,3 +1,5 @@ +const app = "drained"; + // from boot.js if(typeof drainedInterval !== "undefined") drainedInterval = clearInterval(drainedInterval) as undefined; @@ -6,7 +8,18 @@ if(typeof drainedInterval !== "undefined") Bangle.setLCDBrightness(0); // peripherals -Bangle.setGPSPower = Bangle.setHRMPower = (_val: boolean, _name: string) => false; +const powerNoop = () => false; + +const forceOff = (name: "GPS" | "HRM" | "Compass" /*| "Barom"*/) => { + (Bangle as any)._PWR[name] = []; + + // if(name === "Barom"){ setBarometerPower(...) } + // ^^^^ + Bangle[`set${name}Power`](false, app); + Bangle[`set${name}Power`] = powerNoop; +}; +forceOff("GPS"); +forceOff("HRM"); // events Bangle.removeAllListeners(); From 92ff678ac057f0b216570ba8d80c11ac67347460 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 21:27:46 +0100 Subject: [PATCH 0720/1725] drained: turn off wake-on-twist etc --- apps/drained/README.md | 2 +- apps/drained/app.ts | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/apps/drained/README.md b/apps/drained/README.md index e4217493b..cb3be81a6 100644 --- a/apps/drained/README.md +++ b/apps/drained/README.md @@ -18,7 +18,7 @@ With this app installed, your Bangle will automatically switch into low power mo [x] Turn off already-running GPS / HRM ## Features -[ ] Wake on twist -> off (#2502) +[x] Wake on twist -> off (#2502) # Creator diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 029c64f47..2f1a72755 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -24,6 +24,13 @@ forceOff("HRM"); // events Bangle.removeAllListeners(); +// UI +Bangle.setOptions({ + wakeOnFaceUp: false, + wakeOnTouch: false, + wakeOnTwist: false, +}); + // clock let nextDraw: number | undefined; const draw = () => { From 1f35c9825a340d244b1826dca0ffe1d26f5dc0d0 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 21:28:23 +0100 Subject: [PATCH 0721/1725] drained: regenerate js --- apps/drained/app.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/apps/drained/app.js b/apps/drained/app.js index 2e9d3be54..59c8ff690 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -1,9 +1,22 @@ "use strict"; +var app = "drained"; if (typeof drainedInterval !== "undefined") drainedInterval = clearInterval(drainedInterval); Bangle.setLCDBrightness(0); -Bangle.setGPSPower = Bangle.setHRMPower = function (_val, _name) { return false; }; +var powerNoop = function () { return false; }; +var forceOff = function (name) { + Bangle._PWR[name] = []; + Bangle["set".concat(name, "Power")](false, app); + Bangle["set".concat(name, "Power")] = powerNoop; +}; +forceOff("GPS"); +forceOff("HRM"); Bangle.removeAllListeners(); +Bangle.setOptions({ + wakeOnFaceUp: false, + wakeOnTouch: false, + wakeOnTwist: false, +}); var nextDraw; var draw = function () { var x = g.getWidth() / 2; From 10881c93362bce5d81a24a3afa38b9f8270d1f93 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 21:34:38 +0100 Subject: [PATCH 0722/1725] drained: tweak readme --- apps/drained/README.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/apps/drained/README.md b/apps/drained/README.md index cb3be81a6..92924393a 100644 --- a/apps/drained/README.md +++ b/apps/drained/README.md @@ -1,25 +1,25 @@ # Drained -With this app installed, your Bangle will automatically switch into low power mode when the battery reaches a specified threshold, displaying a simple clock. +With this app installed, your Bangle will automatically switch into low power mode when the battery reaches 5% battery, displaying a simple clock. # Features ## Time -[x] Show simple date/time -[ ] Disable alarms - with a setting? +- [x] Show simple date/time +- [ ] Disable alarms - with a setting? ## No backlight (#2502) -[x] LCD brightness -[ ] LCD timeout? +- [x] LCD brightness +- [ ] LCD timeout? ## Peripherals -[x] Disable auto heart rate measurement in health app (#2502) -[x] Overwrite setGPSPower() function (#2502) -[x] Turn off already-running GPS / HRM +- [x] Disable auto heart rate measurement in health app (#2502) +- [x] Overwrite setGPSPower() function (#2502) +- [x] Turn off already-running GPS / HRM ## Features -[x] Wake on twist -> off (#2502) +- [x] Wake on twist -> off (#2502) # Creator -[bobrippling](https://github.com/bobrippling/) +- [bobrippling](https://github.com/bobrippling/) From acbd5d3b53e41c1fe512adc364fea160827f779f Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 21:44:34 +0100 Subject: [PATCH 0723/1725] Update main.d.ts - setUI & removeAllListeners() --- typescript/types/main.d.ts | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index 944d55326..c66135d4d 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -174,6 +174,12 @@ type BangleOptions = { btnLoadTimeout: number; }; +type SetUIArg = Mode | { + mode: Mode, + back?: () => void, + remove?: () => void, +}; + type NRFFilters = { services?: string[]; name?: string; @@ -4294,7 +4300,11 @@ declare class Bangle { * @param {any} callback - A function with one argument which is the direction * @url http://www.espruino.com/Reference#l_Bangle_setUI */ - static setUI(type?: "updown" | "leftright" | "clock" | "clockupdown" | { mode: "custom"; back?: () => void; touch?: TouchCallback; swipe?: SwipeCallback; drag?: DragCallback; btn?: (n: number) => void, remove?: () => void, clock?: boolean }, callback?: (direction?: -1 | 1) => void): void; + static setUI(type?: undefined): void; + static setUI(type: SetUIArg<"updown" | "leftright">, callback: (direction?: -1 | 1) => void): void; + static setUI(type: SetUIArg<"clock">): void; + static setUI(type: SetUIArg<"clockupdown">, callback?: (direction: -1 | 1) => void): void; + static setUI(type: SetUIArg<"custom"> & { touch?: TouchCallback; swipe?: SwipeCallback; drag?: DragCallback; btn?: (n: 1 | 2 | 3) => void; clock?: boolean | 0 | 1 }): void; /** * @url http://www.espruino.com/Reference#l_Bangle_setUI @@ -8946,10 +8956,10 @@ interface Object { * ``` * For more information see `Object.on` * - * @param {any} event - The name of the event, for instance `'data'`. If not specified *all* listeners are removed. + * @param {any} [event] - [optional] The name of the event, for instance `'data'`. If not specified *all* listeners are removed. * @url http://www.espruino.com/Reference#l_Object_removeAllListeners */ - removeAllListeners(event: any): void; + removeAllListeners(event?: any): void; } /** From b5fec28e9f59ebd3d862e759622cd45e3a0ac0fb Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 22:32:26 +0100 Subject: [PATCH 0724/1725] drained: handle empty `_PWR` --- apps/drained/app.js | 4 +++- apps/drained/app.ts | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/drained/app.js b/apps/drained/app.js index 59c8ff690..0928f6440 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -5,7 +5,9 @@ if (typeof drainedInterval !== "undefined") Bangle.setLCDBrightness(0); var powerNoop = function () { return false; }; var forceOff = function (name) { - Bangle._PWR[name] = []; + var _a; + if ((_a = Bangle._PWR) === null || _a === void 0 ? void 0 : _a[name]) + Bangle._PWR[name] = []; Bangle["set".concat(name, "Power")](false, app); Bangle["set".concat(name, "Power")] = powerNoop; }; diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 2f1a72755..04f16ef09 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -11,7 +11,8 @@ Bangle.setLCDBrightness(0); const powerNoop = () => false; const forceOff = (name: "GPS" | "HRM" | "Compass" /*| "Barom"*/) => { - (Bangle as any)._PWR[name] = []; + if ((Bangle as any)._PWR?.[name]) + (Bangle as any)._PWR[name] = []; // if(name === "Barom"){ setBarometerPower(...) } // ^^^^ From 512381a2defe31ea8801347698b9ab287085fad4 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 7 Apr 2023 22:32:38 +0100 Subject: [PATCH 0725/1725] drained: increase clock font size --- apps/drained/app.js | 2 +- apps/drained/app.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/drained/app.js b/apps/drained/app.js index 0928f6440..b68a33e44 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -30,7 +30,7 @@ var draw = function () { require("locale").dow(date, 0).toUpperCase(); g.reset() .clearRect(Bangle.appRect) - .setFont("Vector", 32) + .setFont("Vector", 55) .setFontAlign(0, 0) .drawString(timeStr, x, y) .setFont("Vector", 24) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 04f16ef09..0d528113c 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -47,7 +47,7 @@ const draw = () => { g.reset() .clearRect(Bangle.appRect) - .setFont("Vector", 32) + .setFont("Vector", 55) .setFontAlign(0, 0) .drawString(timeStr, x, y) .setFont("Vector", 24) From 0b0c89737fa0fc8c055d486f8618c1cfdf018f23 Mon Sep 17 00:00:00 2001 From: pinq- Date: Sat, 8 Apr 2023 03:11:29 +0300 Subject: [PATCH 0726/1725] Some code fix to make it britty --- apps/rings/app.js | 45 ++++++++++++++++++++++++++++++++++++--------- 1 file changed, 36 insertions(+), 9 deletions(-) diff --git a/apps/rings/app.js b/apps/rings/app.js index 93b9fac6b..1cfe247a9 100644 --- a/apps/rings/app.js +++ b/apps/rings/app.js @@ -12,7 +12,7 @@ const watch = { color:"#000000", dateRing : { size:109, weight:20, color:"#00FF00", numbers: true, range: 30 , bubble:true}, hourRing : { size:82, weight:20, color:"#00FFFF", numbers: true, range: 12, bubble:true}, - minuteRing : { size:55, weight:18, color:"#FFFF00", numbers: false, range: 60, bubble:false}, + minuteRing : { size:55, weight:18, color:"#FFFF00", numbers: true, range: 60, bubble:false}, batteryRing: { size :30, weight:10, color:"#ff3300", numbers: false, range: 100, bubble:false}, screen : { width:g.getWidth(), height:g.getHeight(), centerX: g.getWidth() *0.5, centerY: g.getHeight() * 0.5, cursor: 14, font:"6x8:2" }, }; @@ -27,7 +27,6 @@ if(settings.minute){ watch.dateRing.numbers = settings.date.numbers; watch.dateRing.bubble = settings.date.bubble; } - delete settings; const month= ["JANUARY","FEBRUARY","MARCH","APRIL","MAY","JUNE","JULY", "AUGUST","SEPTEMBER","OCTOBER","NOVEMBER","DECEMBER"]; @@ -58,6 +57,33 @@ function queueDraw() { }, wait - (Date.now() % wait)); } +// Draws a time circle (date, hours, minutes) +function drawTimeCircle(color, size, weight, range, value ) { + // variables for vertex transformations and positioning time + var tver, tobj, tran; + var ttime = (value / range) * (Math.PI * 2); + + // draw circle and line + g.setColor(color).fillCircle(watch.screen.centerX, watch.screen.centerY, size); + g.setColor("#000000").fillCircle(watch.screen.centerX, watch.screen.centerY, size - weight); + + tver = [-watch.screen.cursor, 0, watch.screen.cursor, 0, watch.screen.cursor, -size*1.01, -watch.screen.cursor, -size*1.05]; + + tobj = { x:watch.screen.centerX, y:watch.screen.centerY, scale:1, rotate:ttime }; + tran = g.transformVertices(tver, tobj); + g.fillPoly(tran); + + // Draw numbers + g.setFontAlign(0,0).setFont(watch.screen.font, 2).setColor(1,1,1); + + // size - 21 is the right offset to get the numbers aligned in the circle. + tver = [-1, 0, 1, 0, 1, -size, -1, -(size -21)]; + tran = g.transformVertices(tver, tobj); + g.setColor(1,1,1); + g.drawString(value, (tran[4]+tran[6]) / 2 , (tran[5]+tran[7]) / 2 ); + +} + function drawCircle(ringValues, offset, value ) { // variables for vertex transformations and positioning time @@ -148,7 +174,7 @@ function drawMonthCircleText( text, circleSize, range, value){ grimg.transparent = 1; monthCircleTextBuffer.setColor(1,1,1); - for(z=0; z < text.length; z++){ + for(z=0; z < text.length; z++){ tobj = { x:watch.screen.centerX, y:watch.screen.centerY, scale:1, rotate: ((z + 1) / range) * (Math.PI * 2) }; tver = [-1, 0, 1, 0, 1, -circleSize, -1, -(circleSize -21)]; tran = monthCircleTextBuffer.transformVertices(tver, tobj); @@ -178,7 +204,6 @@ function drawMonthCircleText( text, circleSize, range, value){ function shrinkCircles(toggle){ // If there's a queued draw operation,removeit so animation isn't interrupted. if (drawTimeout) clearTimeout(drawTimeout); - var date = new Date(); var delta = 1; @@ -230,21 +255,23 @@ function draw() { g.fillRect(0, 0, watch.screen.width, watch.screen.height); // If unlocked, draw date ring and text and make hour and minute rings smaller + var days_month = getDays(date.getFullYear(), date.getMonth()+1); if(!Bangle.isLocked()){ unLockedOffset = 24; - var days_month = getDays(date.getFullYear(), date.getMonth()+1); // if the day has changed if(watch.dateRing.range != days_month) watch.dateRing.range = days_month; - drawCircle(watch.dateRing, -unLockedOffset, days_month); + drawCircle(watch.dateRing, -unLockedOffset, date.getDate()); drawMonthCircleText( month[date.getMonth()]+" "+date.getFullYear(), watch.dateRing.size - unLockedOffset, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()) ; } drawCircle(watch.hourRing, -unLockedOffset, date.getHours()); drawCircle(watch.minuteRing, -unLockedOffset, date.getMinutes()); - drawArc(E.getBattery() / 100, watch.batteryRing.color, watch.batteryRing.size); + if(Bangle.isLocked()){ + drawArc(E.getBattery() / 100, watch.batteryRing.color, watch.batteryRing.size); + } queueDraw(); } -// Trigger shrink / expand animation on unlock / lock events +//drawArc(E.getBattery() / 100, watch.batteryRing.color, watch.batteryRing.size); Trigger shrink / expand animation on unlock / lock events Bangle.on('lock', on=>{ if (on) { // locked, expand circles counter = 1; @@ -266,7 +293,7 @@ g.clear(); draw(); -// console.log("Whatevs"); +// .log("Whatevs"); // Show launcher when middle button pressed Bangle.setUI("clock"); \ No newline at end of file From 9c643f6b5dd584d84e0f75843eefb059e3d37407 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 8 Apr 2023 08:25:27 +0100 Subject: [PATCH 0727/1725] drained: configure battery% and check interval --- apps/drained/README.md | 1 + apps/drained/boot.ts | 7 +++++-- apps/drained/metadata.json | 3 ++- apps/drained/settings.ts | 37 +++++++++++++++++++++++++++++++++++++ 4 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 apps/drained/settings.ts diff --git a/apps/drained/README.md b/apps/drained/README.md index 92924393a..da3f16ef8 100644 --- a/apps/drained/README.md +++ b/apps/drained/README.md @@ -7,6 +7,7 @@ With this app installed, your Bangle will automatically switch into low power mo ## Time - [x] Show simple date/time - [ ] Disable alarms - with a setting? +- [ ] Smarter/backoff interval for checking battery percentage ## No backlight (#2502) - [x] LCD brightness diff --git a/apps/drained/boot.ts b/apps/drained/boot.ts index 6ee7c8e92..ceba64bad 100644 --- a/apps/drained/boot.ts +++ b/apps/drained/boot.ts @@ -1,8 +1,11 @@ +const { battery = 5, interval = 10 } = require("Storage") + .readJSON(`${app}.setting.json`, true) || {}; + let drainedInterval: number | undefined = setInterval(() => { if(Bangle.isCharging()) return; - if(E.getBattery() > 5) + if(E.getBattery() > battery) return; load("drained.app.js"); -}, 5 * 60 * 1000); +}, interval * 60 * 1000); diff --git a/apps/drained/metadata.json b/apps/drained/metadata.json index 2af347f79..b665311a4 100644 --- a/apps/drained/metadata.json +++ b/apps/drained/metadata.json @@ -11,6 +11,7 @@ "allow_emulator": true, "storage": [ {"name":"drained.boot.js","url":"boot.js"}, - {"name":"drained.app.js","url":"app.js"} + {"name":"drained.app.js","url":"app.js"}, + {"name":"drained.settings.js","url":"settings.js"} ] } diff --git a/apps/drained/settings.ts b/apps/drained/settings.ts new file mode 100644 index 000000000..f511a16c6 --- /dev/null +++ b/apps/drained/settings.ts @@ -0,0 +1,37 @@ +((back: () => void) => { + const SETTINGS_FILE = "drained.setting.json"; + + const storage = require("Storage") + const settings = storage.readJSON(SETTINGS_FILE, true) || {}; + settings.battery ??= 5; + settings.interval ??= 10; + + const save = () => { + storage.writeJSON(SETTINGS_FILE, settings) + }; + + E.showMenu({ + "": { "title": "Drained" }, + "< Back": back, + "Trigger when battery reaches": { + value: settings.battery, + min: 0, + max: 95, + step: 5, + onchange: (v: number) => { + settings.battery = v; + save(); + }, + }, + "Check every N minutes": { + value: settings.interval, + min: 1, + max: 60 * 2, + step: 5, + onchange: (v: number) => { + settings.interval = v; + save(); + }, + }, + }); +}) From 923b5dbb96dbc99f44e885df51156520493843c0 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 8 Apr 2023 08:25:54 +0100 Subject: [PATCH 0728/1725] drained: clearWatch() and turn off bluetooth --- apps/drained/app.ts | 3 +++ typescript/types/main.d.ts | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 0d528113c..160bed8a8 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -21,9 +21,12 @@ const forceOff = (name: "GPS" | "HRM" | "Compass" /*| "Barom"*/) => { }; forceOff("GPS"); forceOff("HRM"); +NRF.disconnect(); +NRF.sleep(); // events Bangle.removeAllListeners(); +clearWatch(); // UI Bangle.setOptions({ diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index c66135d4d..4541bef9b 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -11450,7 +11450,7 @@ declare function setWatch(func: ((arg: { state: boolean, time: number, lastTime: * @param {any} id - The id returned by a previous call to setWatch. **Only one argument is allowed.** * @url http://www.espruino.com/Reference#l__global_clearWatch */ -declare function clearWatch(id: number): void; +declare function clearWatch(id?: number): void; /** * A variable containing the arguments given to the function: From 105da767b72c6535ca2fa63e66a72c2eecc3b858 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 8 Apr 2023 08:26:10 +0100 Subject: [PATCH 0729/1725] drained: generate js --- apps/drained/app.js | 3 +++ apps/drained/boot.js | 6 ++++-- apps/drained/settings.js | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 apps/drained/settings.js diff --git a/apps/drained/app.js b/apps/drained/app.js index b68a33e44..e8b9bc95d 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -13,7 +13,10 @@ var forceOff = function (name) { }; forceOff("GPS"); forceOff("HRM"); +NRF.disconnect(); +NRF.sleep(); Bangle.removeAllListeners(); +clearWatch(); Bangle.setOptions({ wakeOnFaceUp: false, wakeOnTouch: false, diff --git a/apps/drained/boot.js b/apps/drained/boot.js index b6fd3bf35..8a09441db 100644 --- a/apps/drained/boot.js +++ b/apps/drained/boot.js @@ -1,8 +1,10 @@ "use strict"; +var _a = require("Storage") + .readJSON("".concat(app, ".setting.json"), true) || {}, _b = _a.battery, battery = _b === void 0 ? 5 : _b, _c = _a.interval, interval = _c === void 0 ? 10 : _c; var drainedInterval = setInterval(function () { if (Bangle.isCharging()) return; - if (E.getBattery() > 5) + if (E.getBattery() > battery) return; load("drained.app.js"); -}, 5 * 60 * 1000); +}, interval * 60 * 1000); diff --git a/apps/drained/settings.js b/apps/drained/settings.js new file mode 100644 index 000000000..a2ed58163 --- /dev/null +++ b/apps/drained/settings.js @@ -0,0 +1,36 @@ +"use strict"; +(function (back) { + var _a, _b; + var SETTINGS_FILE = "drained.setting.json"; + var storage = require("Storage"); + var settings = storage.readJSON(SETTINGS_FILE, true) || {}; + (_a = settings.battery) !== null && _a !== void 0 ? _a : (settings.battery = 5); + (_b = settings.interval) !== null && _b !== void 0 ? _b : (settings.interval = 10); + var save = function () { + storage.writeJSON(SETTINGS_FILE, settings); + }; + E.showMenu({ + "": { "title": "Drained" }, + "< Back": back, + "Trigger when battery reaches": { + value: settings.battery, + min: 0, + max: 95, + step: 5, + onchange: function (v) { + settings.battery = v; + save(); + }, + }, + "Check every N minutes": { + value: settings.interval, + min: 1, + max: 60 * 2, + step: 5, + onchange: function (v) { + settings.interval = v; + save(); + }, + }, + }); +}); From 7ee3279a02657299368d2ce318991cbaf2e80993 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 8 Apr 2023 08:30:43 +0100 Subject: [PATCH 0730/1725] Update main.d.ts --- typescript/types/main.d.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index 4541bef9b..f80260a2b 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -11447,10 +11447,11 @@ declare function setWatch(func: ((arg: { state: boolean, time: number, lastTime: * Clear the Watch that was created with setWatch. If no parameter is supplied, all watches will be removed. * To avoid accidentally deleting all Watches, if a parameter is supplied but is `undefined` then an Exception will be thrown. * - * @param {any} id - The id returned by a previous call to setWatch. **Only one argument is allowed.** + * @param {any} id - The id returned by a previous call to setWatch. **Only one argument is allowed.** (or pass nothing to clear all watches) * @url http://www.espruino.com/Reference#l__global_clearWatch */ -declare function clearWatch(id?: number): void; +declare function clearWatch(id: number): void; +declare function clearWatch(): void; /** * A variable containing the arguments given to the function: From 663ea983e4a1baf5d11c90e1b38bdd1db50300f9 Mon Sep 17 00:00:00 2001 From: thyttan <97237430+thyttan@users.noreply.github.com> Date: Sat, 8 Apr 2023 23:56:21 +0200 Subject: [PATCH 0731/1725] Change to 'custom' setUI to not set btn watch > ['clock' - called for clocks. Sets Bangle.CLOCK=1 and allows a button to start the launcher](https://www.espruino.com/Reference#l_Bangle_setUI) --- apps/drained/app.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 160bed8a8..291ff4200 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -65,12 +65,13 @@ const draw = () => { }; Bangle.setUI({ - mode: "clock", + mode: "custom", remove: () => { if (nextDraw) clearTimeout(nextDraw); nextDraw = undefined; }, }); +Bangle.CLOCK=1; g.clear(); draw(); From 01b7f1648b6f24422af17c099fbc7998133b264b Mon Sep 17 00:00:00 2001 From: pancake Date: Mon, 10 Apr 2023 13:21:11 +0200 Subject: [PATCH 0732/1725] Fix exception and glitch in kanawatch --- apps/kanawatch/ChangeLog | 3 ++- apps/kanawatch/app.js | 6 +----- apps/kanawatch/metadata.json | 2 +- 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/apps/kanawatch/ChangeLog b/apps/kanawatch/ChangeLog index f2c991fd0..70a2d18bf 100644 --- a/apps/kanawatch/ChangeLog +++ b/apps/kanawatch/ChangeLog @@ -2,4 +2,5 @@ 0.02: Improve battery life, sprite resolution, fix launcher issue and unaligned text bug 0.03: Reduce code size, refresh once a minute and faster refresh 0.04: Show a random kana every minute to improve learning -0.05: Tell clock widgets to hide. +0.05: Tell clock widgets to hide +0.06: Fix exception when showing missing hiragana 'WO' diff --git a/apps/kanawatch/app.js b/apps/kanawatch/app.js index 088dab785..2793e9a93 100644 --- a/apps/kanawatch/app.js +++ b/apps/kanawatch/app.js @@ -102,6 +102,7 @@ hiragana['RU'] = image(51, 50, "gf/AAXAgF/AoX8gEPBgeAgIFD/EAn4MEg4FD8EACQoACn4lB hiragana['RE'] = image(56, 50, "gEf8AGF+AGigP/wAGDg//GYQGBh//C4M/AYICB/AGDv///gGC+P/AwQKB+YGB/wNC+//w4GDBYMDAwn4AwQ3BFQIGF8AGF4AGFgAGEAYMDHwIGBAYIGDn5XBAwhlBAwd/Axh6CAwSPBAwMHAxEDAwqdBAwidDAw5IBOoQGDU4QGDUAIGE//fAwufCgrmCh4iCAwk4nwGE/EcAwbSBjAGFegReCUgIGJOYIUEQIYGCIYOAAwPgAwIAIA="); hiragana['RO'] = image(50, 50, "AAf4gEB/4AC8EAv4FC/kAj4MDwEHAofwDAgSBDAoACn/+AocfAokP/4FDE4OAApED//AAohJBAAI5BAocAIQIFEHghFCD4QFCBoU/KIQMBNQZ9BOAhOCQYYFE/B8CE4QFBM4JGB4YuDj/7AocD/xIE/+fP4c/84FDh/8QoZyBj5mE4aFDn5yEDAIFDGIIFDIgIXDDwKREv4eEv4eBiAFCDwMH+A8BIQLnEEgLnDSooqBQYQFCDgQ2DAoolCJAgAD"); hiragana['WA'] = image(51, 50, "AAV/4AFDh/4AocB/4DBj/ggE/AQMD/0Ag/8DgWAgH/AQMP+ASB//AgISBAoIDC4Ef///+ASBh4FB/4SBgYFC+E/4IFC/8H/F///9//g/8f/3/x/+j/nAQPwv/j/H/wf+I4N/KAJlBv+P9/4MoMP/f9/xlBAIIqBwAUBn/vFwIdBg40BNIIOBIIR7B+BbC8B7BKoX4uAyCAwM+GQX5//f8IyCn/z/hHCK4N/4/8h/8/4EB/4lBF4P/z5wB8f+RYJjBPoPAFwO/BQP4IQX/wJkCTAUfVYf4gf4BgS4BbQRiCcgbSCAAILEcALkCAAM/DoYeCC4ZLBfoIeD/ASEDAhoBAoYlBDwcAg/ABggAEA="); +hiragana['WO'] = image(50, 52, "/4AE34FE94FE/YFE/wYYGocB/+AAwd/8AFDn/4AocP/gFDgf/KovADAnwDB43B45EE+IFE/F/KAkfBgmHAonhAonwDAn8h4MEN5X/N4l/N4k/KwkfRwgoBDwcHOohoBOoYFBEgY2BEgYFBEgYFBJIYXBFQYpBFQZ3CAoIWCKoQQCGwQLDHgR8CAoQdCAoQvCOYYFFn5gENgKREbYgAGA"); // XXX there's no WO in hiragana, so we fill it with a copy of the katakana char hiragana['N'] = image(54, 50, "AAVgAYUP8EHwAGCv/Av4RD/8D/wFCgf8g/8DQf4j/4AwU/8E/+AaDwF//4VBgIfB/4GCD4MPAwcf+YFB/4jBn4FC/4jBAof/4AYC//n/+DBYeD/wZC/f/FgIrCGIQsCKYU/444CKYP/z4xCvxOBv+/8EBQQP4B4KFCCoJeCNIYPBQgQKBj53CAYSbBCYQDBHgJbCTYUDOQZHBM4QTBTYX/GQQxBP4Y8BDQRGBTYY4Eh5MDHgZTDAojdEbAYGEHgIGEv7/DHgIhFfAh1EEIg8GEIg8GTYYhDHhYAF"); /// ///////////////////////////////////////// @@ -123,7 +124,6 @@ function next () { } } curkana = 'KA'; - kana = hiramode ? hiragana[curkana] : katakana[curkana]; updateWatch(ohhmm); } @@ -133,7 +133,6 @@ function randKana() { const total = keys.length; let index = 0 | (Math.random() * total); curkana = keys[index]; - kana = hiramode ? hiragana[curkana] : katakana[curkana]; } catch (e) { randKana(); } @@ -146,7 +145,6 @@ function prev () { if (curkana === k) { if (count > 0) { curkana = oldk; - kana = katakana[curkana]; return; } } @@ -154,7 +152,6 @@ function prev () { count++; } curkana = oldk; - kana = katakana[curkana]; updateWatch(ohhmm); } @@ -270,4 +267,3 @@ Bangle.loadWidgets(); tickWatch(); setInterval(tickWatch, 1000 * 60); - diff --git a/apps/kanawatch/metadata.json b/apps/kanawatch/metadata.json index b14703979..c0b048a37 100644 --- a/apps/kanawatch/metadata.json +++ b/apps/kanawatch/metadata.json @@ -2,7 +2,7 @@ "id": "kanawatch", "name": "Kanawatch", "shortName": "Kanawatch", - "version": "0.05", + "version": "0.06", "type": "clock", "description": "Learn Hiragana and Katakana", "icon": "app.png", From 089a9a7d0df5eb8b5e1f46e4ce51e4f74913d5d0 Mon Sep 17 00:00:00 2001 From: mgellner Date: Mon, 10 Apr 2023 18:01:59 +0200 Subject: [PATCH 0733/1725] Initial release of widtemp temperature widget --- apps/widtemp/ChangeLog | 1 + apps/widtemp/README.md | 7 +++++++ apps/widtemp/metadata.json | 17 +++++++++++++++++ apps/widtemp/screenshot.jpg | Bin 0 -> 80640 bytes apps/widtemp/wid.js | 34 ++++++++++++++++++++++++++++++++++ apps/widtemp/widtemp.png | Bin 0 -> 498 bytes 6 files changed, 59 insertions(+) create mode 100644 apps/widtemp/ChangeLog create mode 100644 apps/widtemp/README.md create mode 100644 apps/widtemp/metadata.json create mode 100644 apps/widtemp/screenshot.jpg create mode 100644 apps/widtemp/wid.js create mode 100644 apps/widtemp/widtemp.png diff --git a/apps/widtemp/ChangeLog b/apps/widtemp/ChangeLog new file mode 100644 index 000000000..af7f83942 --- /dev/null +++ b/apps/widtemp/ChangeLog @@ -0,0 +1 @@ +0.01: Initial release diff --git a/apps/widtemp/README.md b/apps/widtemp/README.md new file mode 100644 index 000000000..54ff4eebd --- /dev/null +++ b/apps/widtemp/README.md @@ -0,0 +1,7 @@ +# Temperature widget +A simple temperature widget, showing the current microcontroller's internal temperature (E.getTemperature()). + +It updates every minute. If the current temperature is above the last 10 minutes average, the text is shown in red. If below, the text is shown in blue and black otherwise. + +![](screenshot.jpg) + diff --git a/apps/widtemp/metadata.json b/apps/widtemp/metadata.json new file mode 100644 index 000000000..7b28acd38 --- /dev/null +++ b/apps/widtemp/metadata.json @@ -0,0 +1,17 @@ +{ + "id": "widtemp", + "name": "Temperature widget", + "version": "0.01", + "description": "A temperature widget, showing the current internal temperature", + "readme": "README.md", + "icon": "widtemp.png", + "screenshots": [{"url":"screenshot.jpg"}], + "type": "widget", + "tags": "widget,health", + "supports": ["BANGLEJS","BANGLEJS2"], + "dependencies" : {}, + "allow_emulator":true, + "storage": [ + {"name":"widtemp.wid.js","url":"widtemp.wid.js"} + ] + } diff --git a/apps/widtemp/screenshot.jpg b/apps/widtemp/screenshot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4a1ab64e6f4862dd6dea9369757acc54c83bc1c9 GIT binary patch literal 80640 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⪻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 { + const width = 38; + const max_temps_len = 10; + let temps = []; + + function push_temp(temp, length) { + temps.unshift(temp) > length ? temps.pop() : null; + } + + function draw() { + const temp = Math.round(E.getTemperature()); + const sum = temps.reduce((a, b) => a + b, 0); + const avg = (sum / temps.length) || 0; + + g.reset(); + g.setFont("6x8", 2); + g.clearRect(this.x, this.y, this.x + width, this.y + 18); + + if (temp > avg) { + g.setColor("#ff0000"); // red + } else if (temp < avg) { + g.setColor("#0096ff"); // blue + } + + push_temp(temp, max_temps_len); + g.drawString(temp + "°", this.x + 3, this.y + 4); + } + + setInterval(function() { + WIDGETS["widtemp"].draw(WIDGETS["widtemp"]); + }, 60000); // update every minute + + WIDGETS["widtemp"]={area:"tl", width: width, draw:draw}; +})() diff --git a/apps/widtemp/widtemp.png b/apps/widtemp/widtemp.png new file mode 100644 index 0000000000000000000000000000000000000000..25b1e4c65a517690030a645dba5cfda91b6b36d0 GIT binary patch literal 498 zcmVEOgu@FH}6tT!Xh*zPt))Gaq z5yX!udJ&2Q#YPdW4PqcgNM{=37Z!pMZC3`)!ppL&yH;mp{&1M#oOj@TcxHxShDM{& zX#8i)VF_CiPjEzqBEI4x_F#YXzeKGXmT-AUzKD6GBDQc~NWSF0tBBq|*3!|0WTQEf zjpj%;nj={qIfD<_#OZ-r74)LrjDCst1GOsXb=q!pYgN$ev`t6`nj_h0j%1^HN2YKc z@BScUBfcr$req2)@DMXNH$+Iu?ZZ<%&no679>hJ?$`BF#c#FMwh8vP`I1Yz1@uQf)p zlrcM_O~X1)#B>=~$TCi0O(O2#5-v<2DEM}(NGV+0bKg> Date: Mon, 10 Apr 2023 18:58:47 +0200 Subject: [PATCH 0734/1725] Fix widget.js filename to match name in metadata.json --- apps/widtemp/{wid.js => widtemp.wid.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename apps/widtemp/{wid.js => widtemp.wid.js} (100%) diff --git a/apps/widtemp/wid.js b/apps/widtemp/widtemp.wid.js similarity index 100% rename from apps/widtemp/wid.js rename to apps/widtemp/widtemp.wid.js From f648a7250d9fbd5480a278583acaa8807b9ca75a Mon Sep 17 00:00:00 2001 From: pinq- Date: Mon, 10 Apr 2023 21:29:13 +0300 Subject: [PATCH 0735/1725] Some settings changes Made bubble option global Added date to text --- apps/rings/app.js | 53 ++++++++++-------------------------------- apps/rings/settings.js | 36 ++++++++-------------------- 2 files changed, 22 insertions(+), 67 deletions(-) diff --git a/apps/rings/app.js b/apps/rings/app.js index 1cfe247a9..dc47dd72f 100644 --- a/apps/rings/app.js +++ b/apps/rings/app.js @@ -3,29 +3,27 @@ // by Amos Blanton // Remixed from / inspired by Rinkulainen watch face by Jukio Kallio // 2023: pinq- added new futures + // To Do: // Make Month / year text buffer 1/2 size // Optimize text positioning transforms - -const watch = { +const watch = { color:"#000000", - dateRing : { size:109, weight:20, color:"#00FF00", numbers: true, range: 30 , bubble:true}, - hourRing : { size:82, weight:20, color:"#00FFFF", numbers: true, range: 12, bubble:true}, - minuteRing : { size:55, weight:18, color:"#FFFF00", numbers: true, range: 60, bubble:false}, - batteryRing: { size :30, weight:10, color:"#ff3300", numbers: false, range: 100, bubble:false}, - screen : { width:g.getWidth(), height:g.getHeight(), centerX: g.getWidth() *0.5, centerY: g.getHeight() * 0.5, cursor: 14, font:"6x8:2" }, + dateRing : { size:109, weight:20, color:"#00FF00", numbers: true, range: 30 }, + hourRing : { size:82, weight:20, color:"#00FFFF", numbers: true, range: 12}, + minuteRing : { size:55, weight:18, color:"#FFFF00", numbers: true, range: 60}, + batteryRing: { size :30, weight:10, color:"#ff3300", numbers: false, range: 100}, + screen : { width:g.getWidth(), height:g.getHeight(), centerX: g.getWidth() *0.5, centerY: g.getHeight() * 0.5, cursor: 14, font:"Vector:18", bubble:false }, }; var settings = require('Storage').readJSON("rings.settings.json", true) || {}; if(settings.minute){ watch.minuteRing.numbers = settings.minute.numbers; - watch.minuteRing.bubble = settings.minute.bubble; watch.hourRing.numbers = settings.hour.numbers; - watch.hourRing.bubble = settings.hour.bubble; watch.dateRing.numbers = settings.date.numbers; - watch.dateRing.bubble = settings.date.bubble; + watch.screen.bubble = settings.bubble; } delete settings; const month= ["JANUARY","FEBRUARY","MARCH","APRIL","MAY","JUNE","JULY", @@ -57,34 +55,7 @@ function queueDraw() { }, wait - (Date.now() % wait)); } -// Draws a time circle (date, hours, minutes) -function drawTimeCircle(color, size, weight, range, value ) { - // variables for vertex transformations and positioning time - var tver, tobj, tran; - var ttime = (value / range) * (Math.PI * 2); - - // draw circle and line - g.setColor(color).fillCircle(watch.screen.centerX, watch.screen.centerY, size); - g.setColor("#000000").fillCircle(watch.screen.centerX, watch.screen.centerY, size - weight); - - tver = [-watch.screen.cursor, 0, watch.screen.cursor, 0, watch.screen.cursor, -size*1.01, -watch.screen.cursor, -size*1.05]; - - tobj = { x:watch.screen.centerX, y:watch.screen.centerY, scale:1, rotate:ttime }; - tran = g.transformVertices(tver, tobj); - g.fillPoly(tran); - - // Draw numbers - g.setFontAlign(0,0).setFont(watch.screen.font, 2).setColor(1,1,1); - - // size - 21 is the right offset to get the numbers aligned in the circle. - tver = [-1, 0, 1, 0, 1, -size, -1, -(size -21)]; - tran = g.transformVertices(tver, tobj); - g.setColor(1,1,1); - g.drawString(value, (tran[4]+tran[6]) / 2 , (tran[5]+tran[7]) / 2 ); - -} - - +// Draws a circles (date, hours, minutes) function drawCircle(ringValues, offset, value ) { // variables for vertex transformations and positioning time let tver, tobj, tran; @@ -95,7 +66,7 @@ function drawCircle(ringValues, offset, value ) { g.setColor("#000000").fillCircle(watch.screen.centerX, watch.screen.centerY, ringValues.size - ringValues.weight + offset); tobj = { x:watch.screen.centerX, y:watch.screen.centerY, scale:1, rotate:ttime }; - if(ringValues.bubble){ + if(watch.screen.bubble){ tver = [-1, 0, 1, 0, 1, -ringValues.size-offset, -1, -(ringValues.size + offset -21)]; tran = g.transformVertices(tver, tobj); if(ringValues.numbers){ @@ -165,8 +136,8 @@ function drawMonthCircleText( text, circleSize, range, value){ monthCircleTextBuffer.clear(); monthCircleTextBuffer.fillRect(0,0,watch.screen.width,watch.screen.height); - var tver, tobj, tran; + // From here: https://forum.espruino.com/comments/16781795/ var gr = Graphics.createArrayBuffer(24,16,1,{msb:true}); @@ -230,7 +201,7 @@ function shrinkCircles(toggle){ drawCircle(watch.dateRing, delta, date.getDate()); // Draw month and year in date ring - drawMonthCircleText( month[date.getMonth()]+" "+date.getFullYear(), watch.dateRing.size - 24, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()) ; + drawMonthCircleText( date.getDate() + " " + month[date.getMonth()] + " " +date.getFullYear(), watch.dateRing.size - 24, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()) ; } drawCircle(watch.hourRing, delta, date.getHours()); diff --git a/apps/rings/settings.js b/apps/rings/settings.js index 38a916456..8d3fce37d 100644 --- a/apps/rings/settings.js +++ b/apps/rings/settings.js @@ -3,17 +3,15 @@ // Load settings var settings = Object.assign({ minute: { - bubble: true, numbers: true, }, hour: { - bubble: true, numbers: true }, date: { - bubble: true, numbers: true, - }, + }, + bubble: true, }, require('Storage').readJSON(FILE, true) || {}); function writeSettings(key, value) { @@ -26,13 +24,6 @@ /*LANG*/"Minute" : () => E.showMenu({ "" : { "title" : /*LANG*/"Minute" }, "< Back" : ()=>E.showMenu(mainmenu), - /*LANG*/"Bubble" : { - value: settings.minute.bubble, - onchange: (m) => { - settings.minute.bubble = m, - writeSettings(); - }, - }, /*LANG*/"Number" : { value: settings.minute.numbers, onchange: (m) => { @@ -44,13 +35,6 @@ /*LANG*/"Hour" : () => E.showMenu({ "" : { "title" : /*LANG*/"Hour" }, "< Back" : ()=>E.showMenu(mainmenu), - /*LANG*/"Bubble" : { - value: settings.hour.bubble, - onchange: (m) => { - settings.hour.bubble = m, - writeSettings(); - }, - }, /*LANG*/"Number" : { value: settings.hour.numbers, onchange: (m) => { @@ -62,13 +46,6 @@ /*LANG*/"Date" : () => E.showMenu({ "" : { "title" : /*LANG*/"Date" }, "< Back" : ()=>E.showMenu(mainmenu), - /*LANG*/"Bubble" : { - value: settings.date.bubble, - onchange: (m) => { - settings.date.bubble = m, - writeSettings(); - }, - }, /*LANG*/"Number" : { value: settings.date.numbers, onchange: (m) => { @@ -76,7 +53,14 @@ writeSettings(); }, } - }), + }), + /*LANG*/"BG Bubble?" : { + value : settings.bubble, + onchange: (m) => { + settings.bubble = m; + writeSettings(); + } + }, } // Show the menu From 2889a73ff5d2f7264015c7b215307f8da3749092 Mon Sep 17 00:00:00 2001 From: pinq- Date: Mon, 10 Apr 2023 21:38:47 +0300 Subject: [PATCH 0736/1725] change of default values --- apps/rings/app.js | 2 +- apps/rings/settings.js | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/rings/app.js b/apps/rings/app.js index dc47dd72f..472aefb8e 100644 --- a/apps/rings/app.js +++ b/apps/rings/app.js @@ -232,7 +232,7 @@ function draw() { // if the day has changed if(watch.dateRing.range != days_month) watch.dateRing.range = days_month; drawCircle(watch.dateRing, -unLockedOffset, date.getDate()); - drawMonthCircleText( month[date.getMonth()]+" "+date.getFullYear(), watch.dateRing.size - unLockedOffset, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()) ; + drawMonthCircleText( date.getDate() + " " + month[date.getMonth()] + " " +date.getFullYear(), watch.dateRing.size - 24, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()); } drawCircle(watch.hourRing, -unLockedOffset, date.getHours()); drawCircle(watch.minuteRing, -unLockedOffset, date.getMinutes()); diff --git a/apps/rings/settings.js b/apps/rings/settings.js index 8d3fce37d..2b1abb476 100644 --- a/apps/rings/settings.js +++ b/apps/rings/settings.js @@ -3,15 +3,15 @@ // Load settings var settings = Object.assign({ minute: { - numbers: true, + numbers: false, }, hour: { - numbers: true + numbers: false }, date: { - numbers: true, + numbers: false, }, - bubble: true, + bubble: false, }, require('Storage').readJSON(FILE, true) || {}); function writeSettings(key, value) { From a89ea65410b918626a34821c251e29c48620fa41 Mon Sep 17 00:00:00 2001 From: pinq- Date: Mon, 10 Apr 2023 21:48:13 +0300 Subject: [PATCH 0737/1725] No need for this --- apps/rings/battery.js | 284 ------------------------------------------ 1 file changed, 284 deletions(-) delete mode 100644 apps/rings/battery.js diff --git a/apps/rings/battery.js b/apps/rings/battery.js deleted file mode 100644 index c628199ec..000000000 --- a/apps/rings/battery.js +++ /dev/null @@ -1,284 +0,0 @@ -// Rings watch face -// for Bangle.js 2 -// by Amos Blanton -// Remixed from / inspired by Rinkulainen watch face by Jukio Kallio - -// To Do: -// Make Month / year text buffer 1/2 size -// Optimize text positioning transforms - -const watch = { - x:0, y:0, w:0, h:0, - color:"#000000", - dateRing : { size:109, weight:20, color:"#00FF00", numbers: true, range: 30 , bubble:true}, - hourRing : { size:82, weight:20, color:"#00FFFF", numbers: true, range: 12, bubble:true}, - minuteRing : { size:55, weight:18, color:"#FFFF00", numbers: true, range: 60, bubble:false}, - batteryRing: { size :30, weight:10, color:"#ff3300", numbers: false, range: 100, bubble:false}, - screen : { width:g.getWidth(), height:g.getHeight(), centerX: g.getWidth() *0.5, centerY: g.getHeight() * 0.5, cursor: 14, font:"6x8:2" }, -}; - -const month= ["JANUARY","FEBRUARY","MARCH","APRIL","MAY","JUNE","JULY", - "AUGUST","SEPTEMBER","OCTOBER","NOVEMBER","DECEMBER"]; - -var wait = 60000; // wait time, normally a minute -// timeout used to update every minute -var drawTimeout; -// Global for use in shrink / unshrink animations -var counter = 1; - -// Buffer for month circle text, 1/2 screen size (will be scaled up) -var monthCircleTextBuffer= Graphics.createArrayBuffer(watch.screen.width,watch.screen.height,1,{msb:true}); -var monthCircleTextImg = monthCircleTextBuffer.asImage(); -monthCircleTextImg.transparent = 1; -var lastMonthCircleImageText = ""; - -// Calculate number of days in this month / year for date ring -const getDays = (year, thisMonth) => { - return new Date(year, thisMonth, 0).getDate(); // getMonth() Jan = 0. -}; - -// Schedule a draw for the next minute -function queueDraw() { - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = setTimeout(function() { - drawTimeout = undefined; - draw(); - }, wait - (Date.now() % wait)); -} - -// Draws a time circle (date, hours, minutes) -function drawTimeCircle(color, size, weight, range, value ) { - // variables for vertex transformations and positioning time - var tver, tobj, tran; - var ttime = (value / range) * (Math.PI * 2); - - // draw circle and line - g.setColor(color).fillCircle(watch.screen.centerX, watch.screen.centerY, size); - g.setColor("#000000").fillCircle(watch.screen.centerX, watch.screen.centerY, size - weight); - - tver = [-watch.screen.cursor, 0, watch.screen.cursor, 0, watch.screen.cursor, -size*1.01, -watch.screen.cursor, -size*1.05]; - - tobj = { x:watch.screen.centerX, y:watch.screen.centerY, scale:1, rotate:ttime }; - tran = g.transformVertices(tver, tobj); - g.fillPoly(tran); - - // Draw numbers - g.setFontAlign(0,0).setFont(watch.screen.font, 2).setColor(1,1,1); - - // size - 21 is the right offset to get the numbers aligned in the circle. - tver = [-1, 0, 1, 0, 1, -size, -1, -(size -21)]; - tran = g.transformVertices(tver, tobj); - g.setColor(1,1,1); - g.drawString(value, (tran[4]+tran[6]) / 2 , (tran[5]+tran[7]) / 2 ); - -} - -function drawArc(percent, color, ArchR) { - let offset = 0; - let end = 360; - let radius = ArchR + 2; - - if (percent <= 0) return; // no gauge needed - if (percent > 1) percent = 1; - - let startRotation = -offset; - let endRotation = startRotation - (end * percent); - - g.setColor(color); - // convert to radians - startRotation *= Math.PI / 180; - let amt = Math.PI / 10; - endRotation = (endRotation * Math.PI / 180) - amt; - // all we need to draw is an arc, because we'll fill the center - let poly = [watch.screen.centerX, watch.screen.centerY]; - for (let r = startRotation; r > endRotation; r -= amt) - poly.push( - watch.screen.centerX - radius * Math.sin(r), - watch.screen.centerY - radius * Math.cos(r) - ); - g.fillPoly(poly); - g.setColor("#000000").fillCircle(watch.screen.centerX, watch.screen.centerY, ArchR - 10); - g.setColor(color).fillCircle(watch.screen.centerX - (radius -5) * Math.sin(endRotation + amt), watch.screen.centerY - (radius -5) * Math.cos(endRotation + amt), 4); -} - - -function drawCircle(ringValues, offset, value ) { - // variables for vertex transformations and positioning time - let tver, tobj, tran; - let ttime = (value / ringValues.range) * (Math.PI * 2); - - // draw circle - g.setColor(ringValues.color).fillCircle(watch.screen.centerX, watch.screen.centerY, ringValues.size + offset); - g.setColor("#000000").fillCircle(watch.screen.centerX, watch.screen.centerY, ringValues.size - ringValues.weight + offset); - // draw line - //let location_x = watch.screen.centerX +(ringValues.size + offset) * Math.cos((-(value / ringValues.range)+0.25)*2*Math.PI); - //let location_y = watch.screen.centerY -(ringValues.size + offset) * Math.sin((-(value / ringValues.range)+0.25)*2*Math.PI); - tobj = { x:watch.screen.centerX, y:watch.screen.centerY, scale:1, rotate:ttime }; - if(ringValues.bubble){ - tver = [-1, 0, 1, 0, 1, -ringValues.size-offset, -1, -(ringValues.size + offset -21)]; - tran = g.transformVertices(tver, tobj); - g.setColor("#000000").fillCircle((tran[4]+tran[6]) / 2 , (tran[5]+tran[7]) / 2, 17 + offset/10); - }else{ - tver = [-watch.screen.cursor, 0, watch.screen.cursor, 0, watch.screen.cursor, -ringValues.size*1.01 - offset, -watch.screen.cursor, -ringValues.size*1.05 - offset]; - tran = g.transformVertices(tver, tobj); - g.fillPoly(tran); - - } - - // Draw numbers - if(ringValues.numbers){ - // size - 21 is the right offset to get the numbers aligned in the circle. - tver = [-1, 0, 1, 0, 1, -ringValues.size-offset, -1, -(ringValues.size + offset -21)]; - tran = g.transformVertices(tver, tobj); - //g.setColor(1,1,1); - g.setFontAlign(0,0).setFont(watch.screen.font, 2).setColor(1,1,1); - g.drawString(value, (tran[4]+tran[6]) / 2 , (tran[5]+tran[7]) / 2 ); - - } - - -} - -// Draws text for month and year in date circle -function drawMonthCircleText( text, circleSize, range, value, delta){ - - // If the text isn't the same as last time, write it into a graphic object. - if(text != lastMonthCircleImageText){ - - monthCircleTextBuffer.clear(); - monthCircleTextBuffer.fillRect(0,0,watch.screen.width,watch.screen.height); - - var tver, tobj, tran; - - // From here: https://forum.espruino.com/comments/16781795/ - var gr = Graphics.createArrayBuffer(24,16,1,{msb:true}); - var grimg = gr.asImage(); - grimg.transparent = 1; - monthCircleTextBuffer.setColor(1,1,1); - - for(z=0; z < text.length; z++){ - tobj = { x:watch.screen.centerX, y:watch.screen.centerY, scale:1, rotate: ((z + 1) / range) * (Math.PI * 2) }; - tver = [-1, 0, 1, 0, 1, -circleSize, -1, -(circleSize -21)]; - tran = monthCircleTextBuffer.transformVertices(tver, tobj); - gr.clear().setColor(1,1,1).fillRect(0,0,24,16).setColor(0,0,0).setFont(watch.screen.font).setFontAlign(0,0).drawString(text[z],12,8); - - monthCircleTextBuffer.drawImage(grimg, - (tran[4]+tran[6]) / 2, - (tran[5]+tran[7]) / 2, - {rotate:((z+1) / range) * (Math.PI * 2) }); - } - - lastMonthCircleImageText = text; - } - - // Determine correct rotation for text in ring ( opposite the date position ) - var offset = value + (range / 2) - (text.length / 2); - if(offset > range) - offset = offset - range; - var rotation = (offset / range) * (Math.PI * 2); - - // Draw the image of text to the screen at that rotation - g.drawImage(monthCircleTextImg, watch.screen.centerX, watch.screen.centerY, {scale:1, rotate:rotation }); - -} - -// Animate by shrinking or expanding circles -function shrinkCircles(toggle){ - // If there's a queued draw operation,removeit so animation isn't interrupted. - if (drawTimeout) clearTimeout(drawTimeout); - var date = new Date(); - var delta = 1; - - if(counter > 12) - { - counter = 1; - // We're finished, so queue next draw. - queueDraw(); - return; - } - - if(toggle) // We are shrinking - delta = counter * 2 * -1; - else // We are expanding - delta = counter *2 - 24; - - // Clear space on screen. - g.setColor(watch.color); - g.fillRect(0, 0, watch.screen.width, watch.screen.height); - - // Draw the date ring (unless it's the last run of an expansion). - if(counter < 11 || toggle){ - drawTimeCircle(watch.dateRing.color, watch.dateRing.size + delta, watch.dateRing.weight, getDays(date.getFullYear(), date.getMonth()+1), date.getDate() ); - //drawCircle(watch.dateRing, delta, date.getDate()); - // Draw month and year in date ring - drawMonthCircleText( month[date.getMonth()]+" "+date.getFullYear(), watch.dateRing.size - 24, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()) ; - } - - drawCircle(watch.hourRing, delta, date.getHours()); - drawCircle(watch.minuteRing, delta, date.getMinutes()); - - - counter += 1; - setTimeout(shrinkCircles, 10, toggle); -} - - -// main draw function -function draw() { - // make date object - var date = new Date(); - var unLockedOffset = 0; - - // Reset the state of the graphics library - g.reset(); - - // Clear the area where we want to draw the time - g.setColor(watch.color); - g.fillRect(0, 0, watch.screen.width, watch.screen.height); - - // If unlocked, draw date ring and text and make hour and minute rings smaller - if(!Bangle.isLocked()){ - unLockedOffset = 24; - var days_month = getDays(date.getFullYear(), date.getMonth()+1); - // if the day has changed - if(watch.dateRing.range != days_month) watch.dateRing.range = days_month; - //drawTimeCircle(watch.dateRing.color, watch.dateRing.size - unLockedOffset, watch.dateRing.weight, getDays(date.getFullYear(), date.getMonth()+1), date.getDate() ); - drawCircle(watch.dateRing, -unLockedOffset, days_month); - drawMonthCircleText( month[date.getMonth()]+" "+date.getFullYear(), watch.dateRing.size - unLockedOffset, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()) ; - } - - //drawTimeCircle(watch.hourRing.color, watch.hourRing.size - unLockedOffset, watch.hourRing.weight, 12, date.getHours() ); - //drawTimeCircle(watch.minuteRing.color, watch.minuteRing.size -unLockedOffset , watch.minuteRing.weight, 60, date.getMinutes() ); - drawCircle(watch.hourRing, -unLockedOffset, date.getHours()); - drawCircle(watch.minuteRing, -unLockedOffset, date.getMinutes()); - drawArc(1, watch.batteryRing.color, watch.batteryRing.size); - //drawCircle(watch.batteryRing, -unLockedOffset, E.getBattery()); - queueDraw(); -} - -// Trigger shrink / expand animation on unlock / lock events -Bangle.on('lock', on=>{ - if (on) { // locked, expand circles - counter = 1; - shrinkCircles(false); - } else - { // unlocked, shrink circles and show date ring - counter = 1; - shrinkCircles(true); - } -}); - - -// End function definitions / start of initial execution. - -// Clear the screen once, at startup -g.clear(); - -// draw immediately at first -draw(); - - -// console.log("Whatevs"); - -// Show launcher when middle button pressed -Bangle.setUI("clock"); \ No newline at end of file From ed998b8b8192591710e05a110d4afc04475ca908 Mon Sep 17 00:00:00 2001 From: pinq- Date: Mon, 10 Apr 2023 22:08:28 +0300 Subject: [PATCH 0738/1725] change of the default values Added images and change default values --- apps/rings/README.md | 13 ++++++++++++- apps/rings/app.js | 8 ++++---- apps/rings/screenshot1.png | Bin 2950 -> 3349 bytes apps/rings/screenshot3.png | Bin 0 -> 4072 bytes apps/rings/screenshot4.png | Bin 0 -> 3454 bytes apps/rings/screenshot5.png | Bin 0 -> 3458 bytes 6 files changed, 16 insertions(+), 5 deletions(-) create mode 100644 apps/rings/screenshot3.png create mode 100644 apps/rings/screenshot4.png create mode 100644 apps/rings/screenshot5.png diff --git a/apps/rings/README.md b/apps/rings/README.md index 1f689623f..8c72baa17 100644 --- a/apps/rings/README.md +++ b/apps/rings/README.md @@ -7,5 +7,16 @@ By Amos Blanton, inspired by and remixed from Rinkulainen by Jukio Kallio. ![](screenshot1.png) View when watch is locked. +![](screenshot4.png) +View when watch is locked with numbers and bubble settings on + +![](screenshot5.png) +View when watch is locked with numbers settings on + +![](screenshot3.png) +Watch unlocked, without numbers + ![](screenshot2.png) -Watch unlocked, showing the date. \ No newline at end of file +Watch unlocked, showing the date. + + diff --git a/apps/rings/app.js b/apps/rings/app.js index 472aefb8e..72485a763 100644 --- a/apps/rings/app.js +++ b/apps/rings/app.js @@ -10,9 +10,9 @@ const watch = { color:"#000000", - dateRing : { size:109, weight:20, color:"#00FF00", numbers: true, range: 30 }, - hourRing : { size:82, weight:20, color:"#00FFFF", numbers: true, range: 12}, - minuteRing : { size:55, weight:18, color:"#FFFF00", numbers: true, range: 60}, + dateRing : { size:109, weight:20, color:"#00FF00", numbers: false, range: 30 }, + hourRing : { size:82, weight:20, color:"#00FFFF", numbers: false, range: 12}, + minuteRing : { size:55, weight:18, color:"#FFFF00", numbers: false, range: 60}, batteryRing: { size :30, weight:10, color:"#ff3300", numbers: false, range: 100}, screen : { width:g.getWidth(), height:g.getHeight(), centerX: g.getWidth() *0.5, centerY: g.getHeight() * 0.5, cursor: 14, font:"Vector:18", bubble:false }, }; @@ -232,7 +232,7 @@ function draw() { // if the day has changed if(watch.dateRing.range != days_month) watch.dateRing.range = days_month; drawCircle(watch.dateRing, -unLockedOffset, date.getDate()); - drawMonthCircleText( date.getDate() + " " + month[date.getMonth()] + " " +date.getFullYear(), watch.dateRing.size - 24, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()); + drawMonthCircleText( date.getDate() + " " + month[date.getMonth()] + " " + date.getFullYear(), watch.dateRing.size - 24, getDays(date.getFullYear(), date.getMonth()+1), date.getDate()); } drawCircle(watch.hourRing, -unLockedOffset, date.getHours()); drawCircle(watch.minuteRing, -unLockedOffset, date.getMinutes()); diff --git a/apps/rings/screenshot1.png b/apps/rings/screenshot1.png index 26f2521fcd79501401e881112e236d4095ef3912..520a483639f85e6921a7ac6d7ff3864ffd1ef662 100644 GIT binary patch delta 3333 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 P00000NkvXXu0mjfnE)K% delta 2931 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 diff --git a/apps/rings/screenshot3.png b/apps/rings/screenshot3.png new file mode 100644 index 0000000000000000000000000000000000000000..28bcc45572431fb657399e9758a990abbcdca470 GIT binary patch literal 4072 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�#@YwqXo!_T z)@H-3#-1zAvF|-j+0|(cn7j>GIwGjFL>ZnJ-$2;LkIajk+D#Q9K925)YFtEI>Ta6)i%w-DFTl^e&w zoEY9Y9Jrjg;O!`o?-YV6SGh5z(D>)cUH9}I%Ip95|Cnc7;%@WvdUD6TCOF?I1YM%@h-xohKboEB zhx*L=t`G2&U3p<}*KQ%GRlKq*KLFY_&VeaN(a%?a`C-r&z$=_9KN#8q7V!Z07*qoM6N<$g1!x30ssI2 literal 0 HcmV?d00001 diff --git a/apps/rings/screenshot5.png b/apps/rings/screenshot5.png new file mode 100644 index 0000000000000000000000000000000000000000..57973b76a4968086b218b2ff5a26c981422928e3 GIT binary patch literal 3458 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 literal 0 HcmV?d00001 From f68abbd33d845700f57089e7a70c5d1eabc84ccc Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 11 Apr 2023 18:07:46 +0100 Subject: [PATCH 0739/1725] Regenerate types: ShortBoolean --- typescript/types/main.d.ts | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index f80260a2b..806725535 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -90,6 +90,8 @@ type Widget = { }; declare const WIDGETS: { [key: string]: Widget }; +type ShortBoolean = boolean | 0 | 1; + type AccelData = { x: number; y: number; @@ -153,13 +155,13 @@ type LCDMode = | "120x120" | "80x80" -type BangleOptions = { - wakeOnBTN1: boolean; - wakeOnBTN2: boolean; - wakeOnBTN3: boolean; - wakeOnFaceUp: boolean; - wakeOnTouch: boolean; - wakeOnTwist: boolean; +type BangleOptions = { + wakeOnBTN1: Boolean; + wakeOnBTN2: Boolean; + wakeOnBTN3: Boolean; + wakeOnFaceUp: Boolean; + wakeOnTouch: Boolean; + wakeOnTwist: Boolean; twistThreshold: number; twistMaxY: number; twistTimeout: number; @@ -3789,7 +3791,7 @@ declare class Bangle { * @param {any} options * @url http://www.espruino.com/Reference#l_Bangle_setOptions */ - static setOptions(options: { [key in keyof BangleOptions]?: BangleOptions[key] }): void; + static setOptions(options: { [key in keyof BangleOptions]?: BangleOptions[key] }): void; /** * Return the current state of options as set by `Bangle.setOptions` @@ -3850,7 +3852,7 @@ declare class Bangle { * @returns {boolean} Is HRM on? * @url http://www.espruino.com/Reference#l_Bangle_setHRMPower */ - static setHRMPower(isOn: boolean, appID: string): boolean; + static setHRMPower(isOn: ShortBoolean, appID: string): boolean; /** * Is the Heart rate monitor powered? @@ -3874,7 +3876,7 @@ declare class Bangle { * @returns {boolean} Is the GPS on? * @url http://www.espruino.com/Reference#l_Bangle_setGPSPower */ - static setGPSPower(isOn: boolean, appID: string): boolean; + static setGPSPower(isOn: ShortBoolean, appID: string): boolean; /** * Is the GPS powered? @@ -3906,7 +3908,7 @@ declare class Bangle { * @returns {boolean} Is the Compass on? * @url http://www.espruino.com/Reference#l_Bangle_setCompassPower */ - static setCompassPower(isOn: boolean, appID: string): boolean; + static setCompassPower(isOn: ShortBoolean, appID: string): boolean; /** * Is the compass powered? @@ -3934,7 +3936,7 @@ declare class Bangle { * @returns {boolean} Is the Barometer on? * @url http://www.espruino.com/Reference#l_Bangle_setBarometerPower */ - static setBarometerPower(isOn: boolean, appID: string): boolean; + static setBarometerPower(isOn: ShortBoolean, appID: string): boolean; /** * Is the Barometer powered? @@ -4326,7 +4328,7 @@ declare class Bangle { */ static appRect: { x: number, y: number, w: number, h: number, x2: number, y2: number }; - static CLOCK: boolean; + static CLOCK: ShortBoolean; static strokes: undefined | { [key: string]: Unistroke }; } From 1aed25f05ff957a52f26c84ca4f4c811e0c6d41a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 11 Apr 2023 18:15:25 +0100 Subject: [PATCH 0740/1725] drained: use short booleans --- apps/drained/app.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 291ff4200..cfac5bacf 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -16,7 +16,7 @@ const forceOff = (name: "GPS" | "HRM" | "Compass" /*| "Barom"*/) => { // if(name === "Barom"){ setBarometerPower(...) } // ^^^^ - Bangle[`set${name}Power`](false, app); + Bangle[`set${name}Power`](0, app); Bangle[`set${name}Power`] = powerNoop; }; forceOff("GPS"); @@ -30,9 +30,9 @@ clearWatch(); // UI Bangle.setOptions({ - wakeOnFaceUp: false, - wakeOnTouch: false, - wakeOnTwist: false, + wakeOnFaceUp: 0, + wakeOnTouch: 0, + wakeOnTwist: 0, }); // clock From d1fe165c8078a91809511e8300243fbf077f94d7 Mon Sep 17 00:00:00 2001 From: pinq- Date: Wed, 12 Apr 2023 17:35:27 +0300 Subject: [PATCH 0741/1725] Removed screenshots and added Contributors --- apps/rings/README.md | 12 +++--------- apps/rings/screenshot2.png | Bin 5230 -> 0 bytes apps/rings/screenshot3.png | Bin 4072 -> 17138 bytes apps/rings/screenshot4.png | Bin 3454 -> 0 bytes 4 files changed, 3 insertions(+), 9 deletions(-) delete mode 100644 apps/rings/screenshot2.png delete mode 100644 apps/rings/screenshot4.png diff --git a/apps/rings/README.md b/apps/rings/README.md index 8c72baa17..8136cb542 100644 --- a/apps/rings/README.md +++ b/apps/rings/README.md @@ -1,22 +1,16 @@ # Rings watchface Ring based watchface, read from the outside in. When the watch is unlocked the circles shrink to show the date ring. - -By Amos Blanton, inspired by and remixed from Rinkulainen by Jukio Kallio. +Contributors: Amos Blanton, pinq-. Inspired by Rinkulainen by Julio Kallio. ![](screenshot1.png) View when watch is locked. -![](screenshot4.png) +![](screenshot5.png) View when watch is locked with numbers and bubble settings on -![](screenshot5.png) -View when watch is locked with numbers settings on - ![](screenshot3.png) -Watch unlocked, without numbers - -![](screenshot2.png) Watch unlocked, showing the date. + diff --git a/apps/rings/screenshot2.png b/apps/rings/screenshot2.png deleted file mode 100644 index 8edbf79aca2fd4b8ea025c12d8c137c30d116844..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5230 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

    JL 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 S=Scsdf{*7?Qu*ST?EeFaj$jD@ literal 4072 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�#@YwqXo!_T z)@H-3#-1zAvF|-j+0|(cn7j>GIwGjFL>ZnJ-$2;LkIajk+D#Q9K925)YFtEI>Ta6)i%w-DFTl^e&w zoEY9Y9Jrjg;O!`o?-YV6SGh5z(D>)cUH9}I%Ip95|Cnc7;%@WvdUD6TCOF?I1YM%@h-xohKboEB zhx*L=t`G2&U3p<}*KQ%GRlKq*KLFY_&VeaN(a%?a`C-r&z$=_9KN#8q7V!Z07*qoM6N<$g1!x30ssI2 From ebf27aa14f73d3eaa7162f884da5c45ee2815818 Mon Sep 17 00:00:00 2001 From: Rarder44 Date: Wed, 12 Apr 2023 17:43:12 +0200 Subject: [PATCH 0742/1725] fix for #2689 commented out of the old code (it could be useful during the re-implementation of the music interface) --- apps/messages_light/messages_light.app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/messages_light/messages_light.app.js b/apps/messages_light/messages_light.app.js index 40f94dd0f..efb07f097 100644 --- a/apps/messages_light/messages_light.app.js +++ b/apps/messages_light/messages_light.app.js @@ -467,7 +467,7 @@ const updateTimeout = function(){ if (settings.timeOut!="Off"){ removeTimeout(); if( callInProgress) return; //c'è una chiamata in corso -> no timeout - if( music!=undefined && EventQueue.length==0 ) return; //ho aperto l'interfaccia della musica e non ho messaggi davanti -> no timeout + //if( typeof music !== 'undefined' && EventQueue.length==0 ) return; //ho aperto l'interfaccia della musica e non ho messaggi davanti -> no timeout let time=parseInt(settings.timeOut); //the "s" will be trimmed by the parseInt From 423d22c273cb3a8b91f4b1203fdb754fa2ee4d2b Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 13 Apr 2023 10:36:20 +0100 Subject: [PATCH 0743/1725] tweak screenshots --- apps/rings/metadata.json | 4 +++- apps/rings/{screenshot5.png => screenshot2.png} | Bin 2 files changed, 3 insertions(+), 1 deletion(-) rename apps/rings/{screenshot5.png => screenshot2.png} (100%) diff --git a/apps/rings/metadata.json b/apps/rings/metadata.json index 1e3742a6c..706ccbcda 100644 --- a/apps/rings/metadata.json +++ b/apps/rings/metadata.json @@ -9,6 +9,8 @@ "url": "screenshot1.png" }, { "url": "screenshot2.png" + }, { + "url": "screenshot3.png" }], "type": "clock", "tags": "clock", @@ -31,4 +33,4 @@ "data": [{ "name": "rings.settings.json" }] -} \ No newline at end of file +} diff --git a/apps/rings/screenshot5.png b/apps/rings/screenshot2.png similarity index 100% rename from apps/rings/screenshot5.png rename to apps/rings/screenshot2.png From cdb441d40fef1ca7788977c86fad1fbdff782eec Mon Sep 17 00:00:00 2001 From: Kendell R Date: Thu, 13 Apr 2023 09:02:29 -0400 Subject: [PATCH 0744/1725] Fix some logic in the health app --- apps/health/boot.js | 46 ++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/apps/health/boot.js b/apps/health/boot.js index ae9a7cdc9..c5751bf7d 100644 --- a/apps/health/boot.js +++ b/apps/health/boot.js @@ -1,28 +1,28 @@ -(function(){ - var settings = require("Storage").readJSON("health.json",1)||{}; +(function() { + var settings = require("Storage").readJSON("health.json", 1) || {}; var hrm = 0|settings.hrm; if (hrm == 1 || hrm == 2) { - function onHealth() { - Bangle.setHRMPower(1, "health"); - setTimeout(()=>Bangle.setHRMPower(0, "health"),hrm*60000); // give it 1 minute detection time for 3 min setting and 2 minutes for 10 min setting - if (hrm == 1){ - for (var i = 1; i <= 2; i++){ - setTimeout(()=>{ - Bangle.setHRMPower(1, "health"); - setTimeout(()=>{ - Bangle.setHRMPower(0, "health"); - }, 60000); - }, (i * 200000)); - } - } - } - Bangle.on("health", onHealth); - Bangle.on('HRM', h => { - if (h.confidence>80) Bangle.setHRMPower(0, "health"); - }); - if (Bangle.getHealthStatus().bpmConfidence) return; - onHealth(); - } else Bangle.setHRMPower(hrm!=0, "health"); + function onHealth() { + Bangle.setHRMPower(1, "health"); + setTimeout(() => Bangle.setHRMPower(0, "health"), hrm * 60000); // give it 1 minute detection time for 3 min setting and 2 minutes for 10 min setting + if (hrm == 1) { + function startMeasurement() { + Bangle.setHRMPower(1, "health"); + setTimeout(() => { + Bangle.setHRMPower(0, "health"); + }, 60000); + } + setTimeout(startMeasurement, 200000); + setTimeout(startMeasurement, 400000); + } + } + Bangle.on("health", onHealth); + Bangle.on("HRM", (h) => { + if (h.confidence > 80 && Bangle.getHealthStatus().bpm == h.bpm) Bangle.setHRMPower(0, "health"); + }); + if (Bangle.getHealthStatus().bpmConfidence > 80) return; + onHealth(); + } else Bangle.setHRMPower(!!hrm, "health"); })(); Bangle.on("health", health => { From a21b6827ff6fd73ac6669016ebae3e858b38e2d3 Mon Sep 17 00:00:00 2001 From: Kendell R Date: Thu, 13 Apr 2023 09:05:06 -0400 Subject: [PATCH 0745/1725] bump version --- apps/health/ChangeLog | 3 ++- apps/health/metadata.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/health/ChangeLog b/apps/health/ChangeLog index 921b2b682..12740959a 100644 --- a/apps/health/ChangeLog +++ b/apps/health/ChangeLog @@ -20,4 +20,5 @@ 0.19: Can show notification when daily step goal is reached 0.20: Fix the settings page, it would not update settings correctly. 0.21: Update boot.min.js. -0.22: Fix timeout for heartrate sensor on 3 minute setting (#2435) \ No newline at end of file +0.22: Fix timeout for heartrate sensor on 3 minute setting (#2435) +0.23: Fix HRM logic diff --git a/apps/health/metadata.json b/apps/health/metadata.json index d80585200..30e4b4276 100644 --- a/apps/health/metadata.json +++ b/apps/health/metadata.json @@ -2,7 +2,7 @@ "id": "health", "name": "Health Tracking", "shortName": "Health", - "version": "0.22", + "version": "0.23", "description": "Logs health data and provides an app to view it", "icon": "app.png", "tags": "tool,system,health", From f7d8ab1a5bff7df77bbf17de9b64ba1ea6cf0e77 Mon Sep 17 00:00:00 2001 From: Kendell R Date: Thu, 13 Apr 2023 09:09:44 -0400 Subject: [PATCH 0746/1725] turns out the two bpms can be a bit off --- apps/health/boot.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/health/boot.js b/apps/health/boot.js index c5751bf7d..e369cb5bd 100644 --- a/apps/health/boot.js +++ b/apps/health/boot.js @@ -18,7 +18,7 @@ } Bangle.on("health", onHealth); Bangle.on("HRM", (h) => { - if (h.confidence > 80 && Bangle.getHealthStatus().bpm == h.bpm) Bangle.setHRMPower(0, "health"); + if (h.confidence > 80 && Math.abs(Bangle.getHealthStatus().bpm - h.bpm) < 1) Bangle.setHRMPower(0, "health"); }); if (Bangle.getHealthStatus().bpmConfidence > 80) return; onHealth(); From ecd7ba57c16b58cd5787532e61a49816c85bd775 Mon Sep 17 00:00:00 2001 From: Rarder44 Date: Thu, 13 Apr 2023 18:37:27 +0200 Subject: [PATCH 0747/1725] [messages_light] changelog and metadata --- apps/messages_light/ChangeLog | 3 ++- apps/messages_light/metadata.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/messages_light/ChangeLog b/apps/messages_light/ChangeLog index 23d9ba053..e4e91cb3f 100644 --- a/apps/messages_light/ChangeLog +++ b/apps/messages_light/ChangeLog @@ -6,4 +6,5 @@ removed lib no longer used 1.3: icon changed 1.4: new management of events implemented; removed code no longer used (from now the music will be managed by the Messagesgui app) -1.5: Fix graphic bug; View via popup while there are other open apps \ No newline at end of file +1.5: Fix graphic bug; View via popup while there are other open apps +1.6: fix for #2689; ( white screen ) \ No newline at end of file diff --git a/apps/messages_light/metadata.json b/apps/messages_light/metadata.json index eeab7d9f4..f5f883ae2 100644 --- a/apps/messages_light/metadata.json +++ b/apps/messages_light/metadata.json @@ -1,7 +1,7 @@ { "id": "messages_light", "name": "Messages Light", - "version": "1.5", + "version": "1.6", "description": "A light implementation of messages App (display notifications from iOS and Gadgetbridge/Android)", "icon": "app.png", "type": "app", From 4a8cd6e7a86183907b53ebe7726ef9227d6d00cb Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 11 Apr 2023 18:16:01 +0100 Subject: [PATCH 0748/1725] Regenerate typescript --- apps/drained/app.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/apps/drained/app.js b/apps/drained/app.js index e8b9bc95d..ef1a00db0 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -8,7 +8,7 @@ var forceOff = function (name) { var _a; if ((_a = Bangle._PWR) === null || _a === void 0 ? void 0 : _a[name]) Bangle._PWR[name] = []; - Bangle["set".concat(name, "Power")](false, app); + Bangle["set".concat(name, "Power")](0, app); Bangle["set".concat(name, "Power")] = powerNoop; }; forceOff("GPS"); @@ -18,9 +18,9 @@ NRF.sleep(); Bangle.removeAllListeners(); clearWatch(); Bangle.setOptions({ - wakeOnFaceUp: false, - wakeOnTouch: false, - wakeOnTwist: false, + wakeOnFaceUp: 0, + wakeOnTouch: 0, + wakeOnTwist: 0, }); var nextDraw; var draw = function () { @@ -47,12 +47,13 @@ var draw = function () { }, 60000 - (date.getTime() % 60000)); }; Bangle.setUI({ - mode: "clock", + mode: "custom", remove: function () { if (nextDraw) clearTimeout(nextDraw); nextDraw = undefined; }, }); +Bangle.CLOCK = 1; g.clear(); draw(); From 671ee4af7af8fcd4acff14abe0ffd3f19a4de074 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 11 Apr 2023 18:25:11 +0100 Subject: [PATCH 0749/1725] drained: fit settings prompts into screen (and format) --- apps/drained/settings.js | 6 ++++-- apps/drained/settings.ts | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/drained/settings.js b/apps/drained/settings.js index a2ed58163..e5a30163c 100644 --- a/apps/drained/settings.js +++ b/apps/drained/settings.js @@ -12,21 +12,23 @@ E.showMenu({ "": { "title": "Drained" }, "< Back": back, - "Trigger when battery reaches": { + "Trigger at batt%": { value: settings.battery, min: 0, max: 95, step: 5, + format: function (v) { return "".concat(v, "%"); }, onchange: function (v) { settings.battery = v; save(); }, }, - "Check every N minutes": { + "Poll interval": { value: settings.interval, min: 1, max: 60 * 2, step: 5, + format: function (v) { return "".concat(v, " mins"); }, onchange: function (v) { settings.interval = v; save(); diff --git a/apps/drained/settings.ts b/apps/drained/settings.ts index f511a16c6..77ee800f8 100644 --- a/apps/drained/settings.ts +++ b/apps/drained/settings.ts @@ -13,21 +13,23 @@ E.showMenu({ "": { "title": "Drained" }, "< Back": back, - "Trigger when battery reaches": { + "Trigger at batt%": { value: settings.battery, min: 0, max: 95, step: 5, + format: (v: number) => `${v}%`, onchange: (v: number) => { settings.battery = v; save(); }, }, - "Check every N minutes": { + "Poll interval": { value: settings.interval, min: 1, max: 60 * 2, step: 5, + format: (v: number) => `${v} mins`, onchange: (v: number) => { settings.interval = v; save(); From 14ad4b760a1912930a8048336a35deb300412b54 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 13 Apr 2023 17:51:04 +0100 Subject: [PATCH 0750/1725] drained: add settings type --- apps/drained/app.ts | 1 + apps/drained/boot.ts | 2 +- apps/drained/settings.ts | 7 ++++++- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index cfac5bacf..65966ed6e 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -1,6 +1,7 @@ const app = "drained"; // from boot.js +declare var drainedInterval: number | undefined; if(typeof drainedInterval !== "undefined") drainedInterval = clearInterval(drainedInterval) as undefined; diff --git a/apps/drained/boot.ts b/apps/drained/boot.ts index ceba64bad..6252edafb 100644 --- a/apps/drained/boot.ts +++ b/apps/drained/boot.ts @@ -1,4 +1,4 @@ -const { battery = 5, interval = 10 } = require("Storage") +const { battery = 5, interval = 10 }: DrainedSettings = require("Storage") .readJSON(`${app}.setting.json`, true) || {}; let drainedInterval: number | undefined = setInterval(() => { diff --git a/apps/drained/settings.ts b/apps/drained/settings.ts index 77ee800f8..f763a8fe7 100644 --- a/apps/drained/settings.ts +++ b/apps/drained/settings.ts @@ -1,8 +1,13 @@ +type DrainedSettings = { + battery?: number, + interval?: number, +}; + ((back: () => void) => { const SETTINGS_FILE = "drained.setting.json"; const storage = require("Storage") - const settings = storage.readJSON(SETTINGS_FILE, true) || {}; + const settings: DrainedSettings = storage.readJSON(SETTINGS_FILE, true) || {}; settings.battery ??= 5; settings.interval ??= 10; From 49527fbd22d174ac1d4dba5dc1b1794b5e30ce1f Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 13 Apr 2023 17:51:23 +0100 Subject: [PATCH 0751/1725] drained: add ability to disable other boot code --- apps/drained/boot.ts | 15 ++++++++++++--- apps/drained/settings.ts | 10 ++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/apps/drained/boot.ts b/apps/drained/boot.ts index 6252edafb..faedd3153 100644 --- a/apps/drained/boot.ts +++ b/apps/drained/boot.ts @@ -1,7 +1,16 @@ -const { battery = 5, interval = 10 }: DrainedSettings = require("Storage") - .readJSON(`${app}.setting.json`, true) || {}; +const { battery = 5, interval = 10, disableBoot = false }: DrainedSettings + = require("Storage").readJSON(`drained.setting.json`, true) || {}; -let drainedInterval: number | undefined = setInterval(() => { +if(disableBoot){ + require("Storage").erase(".boot0"); + + Bangle.on("charging", charging => { + if (charging) + eval(require('Storage').read('bootupdate.js')); + }); +} + +drainedInterval = setInterval(() => { if(Bangle.isCharging()) return; if(E.getBattery() > battery) diff --git a/apps/drained/settings.ts b/apps/drained/settings.ts index f763a8fe7..a3b377045 100644 --- a/apps/drained/settings.ts +++ b/apps/drained/settings.ts @@ -1,6 +1,7 @@ type DrainedSettings = { battery?: number, interval?: number, + disableBoot?: ShortBoolean, }; ((back: () => void) => { @@ -10,6 +11,7 @@ type DrainedSettings = { const settings: DrainedSettings = storage.readJSON(SETTINGS_FILE, true) || {}; settings.battery ??= 5; settings.interval ??= 10; + settings.disableBoot ??= false; const save = () => { storage.writeJSON(SETTINGS_FILE, settings) @@ -18,6 +20,14 @@ type DrainedSettings = { E.showMenu({ "": { "title": "Drained" }, "< Back": back, + "Keep startup code": { + value: settings.disableBoot, + format: () => settings.disableBoot ? "No" : "Yes", + onchange: () => { + settings.disableBoot = !settings.disableBoot; + save(); + }, + }, "Trigger at batt%": { value: settings.battery, min: 0, From ab75d5b3530d9622ab275f52b62c9033182f6b61 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 13 Apr 2023 18:05:59 +0100 Subject: [PATCH 0752/1725] Regenerate JS --- apps/drained/boot.js | 12 +++++++++--- apps/drained/settings.js | 11 ++++++++++- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/apps/drained/boot.js b/apps/drained/boot.js index 8a09441db..a02b20e4f 100644 --- a/apps/drained/boot.js +++ b/apps/drained/boot.js @@ -1,7 +1,13 @@ "use strict"; -var _a = require("Storage") - .readJSON("".concat(app, ".setting.json"), true) || {}, _b = _a.battery, battery = _b === void 0 ? 5 : _b, _c = _a.interval, interval = _c === void 0 ? 10 : _c; -var drainedInterval = setInterval(function () { +var _a = require("Storage").readJSON("drained.setting.json", true) || {}, _b = _a.battery, battery = _b === void 0 ? 5 : _b, _c = _a.interval, interval = _c === void 0 ? 10 : _c, _d = _a.disableBoot, disableBoot = _d === void 0 ? false : _d; +if (disableBoot) { + require("Storage").erase(".boot0"); + Bangle.on("charging", function (charging) { + if (charging) + eval(require('Storage').read('bootupdate.js')); + }); +} +drainedInterval = setInterval(function () { if (Bangle.isCharging()) return; if (E.getBattery() > battery) diff --git a/apps/drained/settings.js b/apps/drained/settings.js index e5a30163c..4461f8965 100644 --- a/apps/drained/settings.js +++ b/apps/drained/settings.js @@ -1,17 +1,26 @@ "use strict"; (function (back) { - var _a, _b; + var _a, _b, _c; var SETTINGS_FILE = "drained.setting.json"; var storage = require("Storage"); var settings = storage.readJSON(SETTINGS_FILE, true) || {}; (_a = settings.battery) !== null && _a !== void 0 ? _a : (settings.battery = 5); (_b = settings.interval) !== null && _b !== void 0 ? _b : (settings.interval = 10); + (_c = settings.disableBoot) !== null && _c !== void 0 ? _c : (settings.disableBoot = false); var save = function () { storage.writeJSON(SETTINGS_FILE, settings); }; E.showMenu({ "": { "title": "Drained" }, "< Back": back, + "Keep startup code": { + value: settings.disableBoot, + format: function () { return settings.disableBoot ? "No" : "Yes"; }, + onchange: function () { + settings.disableBoot = !settings.disableBoot; + save(); + }, + }, "Trigger at batt%": { value: settings.battery, min: 0, From 80a77772e8ebc4e9db55b3a26c62c398d86fdc23 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 13 Apr 2023 18:30:49 +0100 Subject: [PATCH 0753/1725] drained: emit "drained" event --- apps/drained/README.md | 1 + apps/drained/app.js | 1 + apps/drained/app.ts | 3 +++ apps/drained/boot.js | 18 +++++++++--------- apps/drained/boot.ts | 22 +++++++++++----------- 5 files changed, 25 insertions(+), 20 deletions(-) diff --git a/apps/drained/README.md b/apps/drained/README.md index da3f16ef8..3ddee5907 100644 --- a/apps/drained/README.md +++ b/apps/drained/README.md @@ -20,6 +20,7 @@ With this app installed, your Bangle will automatically switch into low power mo ## Features - [x] Wake on twist -> off (#2502) +- [x] Emit `"drained"` event # Creator diff --git a/apps/drained/app.js b/apps/drained/app.js index ef1a00db0..529d51639 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -57,3 +57,4 @@ Bangle.setUI({ Bangle.CLOCK = 1; g.clear(); draw(); +Bangle.emit("drained", E.getBattery()); diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 65966ed6e..a7b53d2b8 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -76,3 +76,6 @@ Bangle.CLOCK=1; g.clear(); draw(); + +// permit other apps to put themselves into low-power mode +Bangle.emit("drained", E.getBattery()); diff --git a/apps/drained/boot.js b/apps/drained/boot.js index a02b20e4f..9ed524b7f 100644 --- a/apps/drained/boot.js +++ b/apps/drained/boot.js @@ -1,16 +1,16 @@ "use strict"; -var _a = require("Storage").readJSON("drained.setting.json", true) || {}, _b = _a.battery, battery = _b === void 0 ? 5 : _b, _c = _a.interval, interval = _c === void 0 ? 10 : _c, _d = _a.disableBoot, disableBoot = _d === void 0 ? false : _d; -if (disableBoot) { - require("Storage").erase(".boot0"); - Bangle.on("charging", function (charging) { - if (charging) - eval(require('Storage').read('bootupdate.js')); - }); -} +var _a = require("Storage").readJSON("drained.setting.json", true) || {}, _b = _a.battery, threshold = _b === void 0 ? 5 : _b, _c = _a.interval, interval = _c === void 0 ? 10 : _c, _d = _a.disableBoot, disableBoot = _d === void 0 ? false : _d; drainedInterval = setInterval(function () { if (Bangle.isCharging()) return; - if (E.getBattery() > battery) + if (E.getBattery() > threshold) return; + if (disableBoot) { + require("Storage").erase(".boot0"); + Bangle.on("charging", function (charging) { + if (charging) + eval(require('Storage').read('bootupdate.js')); + }); + } load("drained.app.js"); }, interval * 60 * 1000); diff --git a/apps/drained/boot.ts b/apps/drained/boot.ts index faedd3153..46c6811fd 100644 --- a/apps/drained/boot.ts +++ b/apps/drained/boot.ts @@ -1,20 +1,20 @@ -const { battery = 5, interval = 10, disableBoot = false }: DrainedSettings +const { battery: threshold = 5, interval = 10, disableBoot = false }: DrainedSettings = require("Storage").readJSON(`drained.setting.json`, true) || {}; -if(disableBoot){ - require("Storage").erase(".boot0"); - - Bangle.on("charging", charging => { - if (charging) - eval(require('Storage').read('bootupdate.js')); - }); -} - drainedInterval = setInterval(() => { if(Bangle.isCharging()) return; - if(E.getBattery() > battery) + if(E.getBattery() > threshold) return; + if(disableBoot){ + require("Storage").erase(".boot0"); + + Bangle.on("charging", charging => { + if (charging) + eval(require('Storage').read('bootupdate.js')); + }); + } + load("drained.app.js"); }, interval * 60 * 1000); From ea5acf0b12c978b0fadc4691a1347a02af5bd569 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 13 Apr 2023 18:38:39 +0100 Subject: [PATCH 0754/1725] drained: rearrange disabling/enabling bootcode --- apps/drained/app.js | 7 +++++++ apps/drained/app.ts | 11 +++++++++++ apps/drained/boot.js | 27 ++++++++++++--------------- apps/drained/boot.ts | 10 +++------- 4 files changed, 33 insertions(+), 22 deletions(-) diff --git a/apps/drained/app.js b/apps/drained/app.js index 529d51639..133d5e192 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -58,3 +58,10 @@ Bangle.CLOCK = 1; g.clear(); draw(); Bangle.emit("drained", E.getBattery()); +var _a = (require("Storage").readJSON("".concat(app, ".setting.json"), true) || {}).disableBoot, disableBoot = _a === void 0 ? false : _a; +if (disableBoot) { + Bangle.on("charging", function (charging) { + if (charging) + eval(require('Storage').read('bootupdate.js')); + }); +} diff --git a/apps/drained/app.ts b/apps/drained/app.ts index a7b53d2b8..14fa3e378 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -79,3 +79,14 @@ draw(); // permit other apps to put themselves into low-power mode Bangle.emit("drained", E.getBattery()); + +// restore normal boot on charge +const { disableBoot = false }: DrainedSettings + = require("Storage").readJSON(`${app}.setting.json`, true) || {}; + +if(disableBoot){ + Bangle.on("charging", charging => { + if (charging) + eval(require('Storage').read('bootupdate.js')); + }); +} diff --git a/apps/drained/boot.js b/apps/drained/boot.js index 9ed524b7f..d1c64780b 100644 --- a/apps/drained/boot.js +++ b/apps/drained/boot.js @@ -1,16 +1,13 @@ "use strict"; -var _a = require("Storage").readJSON("drained.setting.json", true) || {}, _b = _a.battery, threshold = _b === void 0 ? 5 : _b, _c = _a.interval, interval = _c === void 0 ? 10 : _c, _d = _a.disableBoot, disableBoot = _d === void 0 ? false : _d; -drainedInterval = setInterval(function () { - if (Bangle.isCharging()) - return; - if (E.getBattery() > threshold) - return; - if (disableBoot) { - require("Storage").erase(".boot0"); - Bangle.on("charging", function (charging) { - if (charging) - eval(require('Storage').read('bootupdate.js')); - }); - } - load("drained.app.js"); -}, interval * 60 * 1000); +{ + var _a = require("Storage").readJSON("drained.setting.json", true) || {}, _b = _a.battery, threshold_1 = _b === void 0 ? 5 : _b, _c = _a.interval, interval = _c === void 0 ? 10 : _c, _d = _a.disableBoot, disableBoot_1 = _d === void 0 ? false : _d; + drainedInterval = setInterval(function () { + if (Bangle.isCharging()) + return; + if (E.getBattery() > threshold_1) + return; + if (disableBoot_1) + require("Storage").erase(".boot0"); + load("drained.app.js"); + }, interval * 60 * 1000); +} diff --git a/apps/drained/boot.ts b/apps/drained/boot.ts index 46c6811fd..c269bf08a 100644 --- a/apps/drained/boot.ts +++ b/apps/drained/boot.ts @@ -1,3 +1,4 @@ +{ const { battery: threshold = 5, interval = 10, disableBoot = false }: DrainedSettings = require("Storage").readJSON(`drained.setting.json`, true) || {}; @@ -7,14 +8,9 @@ drainedInterval = setInterval(() => { if(E.getBattery() > threshold) return; - if(disableBoot){ + if(disableBoot) require("Storage").erase(".boot0"); - Bangle.on("charging", charging => { - if (charging) - eval(require('Storage').read('bootupdate.js')); - }); - } - load("drained.app.js"); }, interval * 60 * 1000); +} From 82b78d5b69242a6470112dcf486e3fbba03db604 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Fri, 14 Apr 2023 23:54:09 +0100 Subject: [PATCH 0755/1725] clkinfostopw - set format to h:mm:ss to shorten string --- apps/clkinfostopw/ChangeLog | 1 + apps/clkinfostopw/clkinfo.js | 4 ++-- apps/clkinfostopw/metadata.json | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/clkinfostopw/ChangeLog b/apps/clkinfostopw/ChangeLog index 1f72aa73b..9ef47266a 100644 --- a/apps/clkinfostopw/ChangeLog +++ b/apps/clkinfostopw/ChangeLog @@ -1 +1,2 @@ 0.01: New clkinfo! +0.02: changed format to h:mm:ss, to reduce size of text string diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js index 370809e15..0073543b4 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.js @@ -21,10 +21,10 @@ var mins = seconds / 60; seconds %= 60; if (mins < 60) - return "".concat(pad2(mins), "m").concat(pad2(seconds), "s"); + return "".concat(mins.toFixed(0)+":").concat(pad2(seconds)); var hours = mins / 60; mins %= 60; - return "".concat(Math.round(hours), "h").concat(pad2(mins), "m").concat(pad2(seconds), "s"); + return "".concat(hours.toFixed(0)+":").concat(pad2(mins)).concat(pad2(seconds)); }; var img = function () { return atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA=="); }; return { diff --git a/apps/clkinfostopw/metadata.json b/apps/clkinfostopw/metadata.json index 2cdf69495..a1a5ebbfe 100644 --- a/apps/clkinfostopw/metadata.json +++ b/apps/clkinfostopw/metadata.json @@ -1,7 +1,7 @@ { "id": "clkinfostopw", "name": "Stop Watch Clockinfo", - "version":"0.01", + "version":"0.02", "description": "A simple stopwatch, shown via clockinfo", "icon": "app.png", "type": "clkinfo", From 9ece2165e430dc839f61c6f97c49c48ff81f03af Mon Sep 17 00:00:00 2001 From: Christian Mauderer Date: Sun, 16 Apr 2023 14:24:13 +0200 Subject: [PATCH 0756/1725] widalarmeta: Selectable font. Optional hour padding. Allow to select between segment, teletext and bitmap font. Allow to disable the hour padding. FIXME --- apps/widalarmeta/ChangeLog | 1 + apps/widalarmeta/metadata.json | 2 +- apps/widalarmeta/settings.js | 18 ++++++++++++++++++ apps/widalarmeta/widget.js | 30 ++++++++++++++++++++++-------- 4 files changed, 42 insertions(+), 9 deletions(-) diff --git a/apps/widalarmeta/ChangeLog b/apps/widalarmeta/ChangeLog index 2b74766c8..f412fc45f 100644 --- a/apps/widalarmeta/ChangeLog +++ b/apps/widalarmeta/ChangeLog @@ -9,3 +9,4 @@ 0.06: Remember next alarm to reduce calculation amount Redraw only every hour when no alarm in next 24h 0.07: Fix when no alarms are present +0.08: Selectable font. Allow to disable hour padding. diff --git a/apps/widalarmeta/metadata.json b/apps/widalarmeta/metadata.json index 6b3d8978b..5bb7f7795 100644 --- a/apps/widalarmeta/metadata.json +++ b/apps/widalarmeta/metadata.json @@ -2,7 +2,7 @@ "id": "widalarmeta", "name": "Alarm & Timer ETA", "shortName": "Alarm ETA", - "version": "0.07", + "version": "0.08", "description": "A widget that displays the time to the next Alarm or Timer in hours and minutes, maximum 24h (configurable).", "icon": "widget.png", "type": "widget", diff --git a/apps/widalarmeta/settings.js b/apps/widalarmeta/settings.js index db9243ae0..b9fa062b3 100644 --- a/apps/widalarmeta/settings.js +++ b/apps/widalarmeta/settings.js @@ -4,7 +4,9 @@ const settings = Object.assign({ maxhours: 24, drawBell: false, + padHours: true, showSeconds: 0, // 0=never, 1=only when display is unlocked, 2=for less than a minute + font: 0, // 0=segment style font, 1=teletest font, 2=4x5 }, require("Storage").readJSON(CONFIGFILE,1) || {}); function writeSettings() { @@ -40,5 +42,21 @@ writeSettings(); } }, + /*LANG*/'Pad hours': { + value: !!settings.padHours, + onchange: v => { + settings.padHours = v; + writeSettings(); + } + }, + /*LANG*/'Font': { + value: settings.font, + min: 0, max: 2, + format: v => [/*LANG*/"Segment", /*LANG*/"Teletext", /*LANG*/"4x5"][v || 0], + onchange: v => { + settings.font = v; + writeSettings(); + } + }, }); }); diff --git a/apps/widalarmeta/widget.js b/apps/widalarmeta/widget.js index 0104eb3b1..77b7ebb88 100644 --- a/apps/widalarmeta/widget.js +++ b/apps/widalarmeta/widget.js @@ -1,9 +1,13 @@ (() => { require("Font5x9Numeric7Seg").add(Graphics); + require("FontTeletext5x9Ascii").add(Graphics); + require("Font4x5").add(Graphics); const config = Object.assign({ maxhours: 24, drawBell: false, + padHours: true, showSeconds: 0, // 0=never, 1=only when display is unlocked, 2=for less than a minute + font: 0, // 0=segment style font, 1=teletest font, 2=4x5 }, require("Storage").readJSON("widalarmeta.json",1) || {}); function getNextAlarm(date) { @@ -46,20 +50,30 @@ drawSeconds = (config.showSeconds & 0b01 && !Bangle.isLocked()) || (config.showSeconds & 0b10 && next <= 1000*60); g.reset(); // reset the graphics context to defaults (color/font/etc) - g.setFontAlign(0,0); // center fonts + g.setFontAlign(-1,0); // center font in y direction g.clearRect(this.x, this.y, this.x+this.width-1, this.y+23); - var text = hours.padStart(2, '0') + ":" + minutes.padStart(2, '0'); + var text = ""; + if (config.padHours) { + text += hours.padStart(2, '0'); + } else { + text += hours; + } + text += ":" + minutes.padStart(2, '0'); if (drawSeconds) { text += ":" + seconds.padStart(2, '0'); } - g.setFont("5x9Numeric7Seg:1x2"); - g.drawString(text, this.x+this.width/2, this.y+12); - - calcWidth = 5*5+2; - if (drawSeconds) { - calcWidth += 3*5; + if (config.font == 1) { + g.setFont("Teletext5x9Ascii:1x2"); + } else if (config.font == 2) { + g.setFont("4x5"); + } else { + // Default to this if no other font is set. + g.setFont("5x9Numeric7Seg:1x2"); } + g.drawString(text, this.x+1, this.y+12); + + calcWidth = g.stringWidth(text) + 2; // One pixel on each side this.bellVisible = false; } else if (config.drawBell && this.numActiveAlarms > 0) { calcWidth = 24; From 2216398bb85ecac115a4484ea2bcf15d43d6710f Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sun, 16 Apr 2023 17:01:30 +0100 Subject: [PATCH 0757/1725] Yet Another Battery Widget --- apps/widbatc/README.md | 11 +++++++++++ apps/widbatc/icon.png | Bin 0 -> 9333 bytes apps/widbatc/metadata.json | 17 +++++++++++++++++ apps/widbatc/screenshot.png | Bin 0 -> 2703 bytes apps/widbatc/widget.js | 26 ++++++++++++++++++++++++++ 5 files changed, 54 insertions(+) create mode 100644 apps/widbatc/README.md create mode 100644 apps/widbatc/icon.png create mode 100644 apps/widbatc/metadata.json create mode 100644 apps/widbatc/screenshot.png create mode 100644 apps/widbatc/widget.js diff --git a/apps/widbatc/README.md b/apps/widbatc/README.md new file mode 100644 index 000000000..9b8bb992f --- /dev/null +++ b/apps/widbatc/README.md @@ -0,0 +1,11 @@ +# Yet Another Battery Widget + +Shows the current battery level status in the top right in digits using the Lato font + +* Works with Bangle 2 +* Simple design, no settings +* Uses current colour theme to match clock + +![](screenshot.png) + +Written by: [Hugh Barney](https://github.com/hughbarney) For support and discussion please post in the [Bangle JS Forum](http://forum.espruino.com/microcosms/1424/) diff --git a/apps/widbatc/icon.png b/apps/widbatc/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..92710fb4bc85a216ed230da4f680a95f6ee81d7c GIT binary patch literal 9333 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 B!Ds*g literal 0 HcmV?d00001 diff --git a/apps/widbatc/widget.js b/apps/widbatc/widget.js new file mode 100644 index 000000000..978edc8e8 --- /dev/null +++ b/apps/widbatc/widget.js @@ -0,0 +1,26 @@ +setInterval(()=>WIDGETS["batc"].draw(), 60000); +Bangle.on('lcdPower', function(on) { + if (on) WIDGETS["bata"].draw(); +}); +WIDGETS["bata"]={area:"tr",sortorder:10,width:48,draw:function() { + g.reset(); + // Lato from fonts.google.com, Actual height 17 (17 - 1), Numeric only + const scale = 1; + g.setFontCustom(atob("AAAAABwAAOAAAgAAHAADwAD4AB8AB8AA+AAeAADAAAAOAAP+AH/8B4DwMAGBgAwMAGBgAwOAOA//gD/4AD4AAAAAAAABgAAcAwDAGAwAwP/+B//wAAGAAAwAAGAAAAAAAAIAwHgOA4DwMA+BgOwMDmBg4wOeGA/gwDwGAAAAAAAAAGAHA8A4DwMAGBhAwMMGBjgwOcOA+/gDj4AAAAABgAAcAAHgADsAA5gAOMAHBgBwMAP/+B//wABgAAMAAAAAAAgD4OB/AwOYGBjAwMYGBjBwMe8Bh/AIHwAAAAAAAAAfAAP8AHxwB8GAdgwPMGBxgwMOOAB/gAH4AAAAAAABgAAMAABgAwMAeBgPgMHwBj4AN8AB+AAPAABAAAAAAAMfAH38B/xwMcGBhgwMMGBjgwP+OA+/gDj4AAAAAAAAOAAH4AA/gQMMGBgzwME8BhvAOPgA/4AD8AAEAAAAAAGAwA4OAHBwAAA="), 46, atob("BAgMDAwMDAwMDAwMBQ=="), 21+(scale<<8)+(1<<16)); + var bp = "" + E.getBattery().toString(); + var text_w = g.stringWidth(bp); + var bw = 7; // battery width + var w = text_w + 3 + bw + 2; + // we need this to be able to shrink or grow on the 3,2,1 digit battery levels + if (w != this.width) {this.width = w; setTimeout(() => Bangle.drawWidgets(),10); return;} + var h = 12; // height + var x = this.x, y = this.y + 4; + g.setColor(g.theme.bg); + g.fillRect(this.x, this.y, this.x + this.width, this.y + 23); // erase background + g.setColor(g.theme.fg); + g.setFontAlign(-1, 0); + g.drawString(bp, this.x, this.y + 12); + x = x + text_w + 3; + g.fillRect(x+2,y,x+5,y+1); // contact + g.fillRect(x,y+2,x+bw,y+2+h); // outer +}}; From b627945751835ce2b48c73298785c75c40c4b635 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sun, 16 Apr 2023 17:11:45 +0100 Subject: [PATCH 0758/1725] corrected metadata.json --- apps/widbatc/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/widbatc/metadata.json b/apps/widbatc/metadata.json index a3601d8b1..b4e45d521 100644 --- a/apps/widbatc/metadata.json +++ b/apps/widbatc/metadata.json @@ -1,5 +1,5 @@ { - "id": "widbatac", + "id": "widbatc", "name": "Yet Another Battery Widget", "shortName":"Battery Level", "icon": "icon.png", From e5c6707e150c1bfb84dcd47487b1912dc6854bde Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sun, 16 Apr 2023 17:15:54 +0100 Subject: [PATCH 0759/1725] added ChangeLog --- apps/widbatc/Changelog | 1 + 1 file changed, 1 insertion(+) create mode 100644 apps/widbatc/Changelog diff --git a/apps/widbatc/Changelog b/apps/widbatc/Changelog new file mode 100644 index 000000000..51575d3b4 --- /dev/null +++ b/apps/widbatc/Changelog @@ -0,0 +1 @@ +0.01: Created From 7ec885008d1c8b4518e1a1f36a2efb79c6539527 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sun, 16 Apr 2023 18:02:38 +0100 Subject: [PATCH 0760/1725] reverted to clkinfostopw 0.1 to avoid clash with widbatc PR --- apps/clkinfostopw/ChangeLog | 1 - apps/clkinfostopw/clkinfo.js | 4 ++-- apps/clkinfostopw/metadata.json | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/apps/clkinfostopw/ChangeLog b/apps/clkinfostopw/ChangeLog index 9ef47266a..1f72aa73b 100644 --- a/apps/clkinfostopw/ChangeLog +++ b/apps/clkinfostopw/ChangeLog @@ -1,2 +1 @@ 0.01: New clkinfo! -0.02: changed format to h:mm:ss, to reduce size of text string diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js index 0073543b4..370809e15 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.js @@ -21,10 +21,10 @@ var mins = seconds / 60; seconds %= 60; if (mins < 60) - return "".concat(mins.toFixed(0)+":").concat(pad2(seconds)); + return "".concat(pad2(mins), "m").concat(pad2(seconds), "s"); var hours = mins / 60; mins %= 60; - return "".concat(hours.toFixed(0)+":").concat(pad2(mins)).concat(pad2(seconds)); + return "".concat(Math.round(hours), "h").concat(pad2(mins), "m").concat(pad2(seconds), "s"); }; var img = function () { return atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA=="); }; return { diff --git a/apps/clkinfostopw/metadata.json b/apps/clkinfostopw/metadata.json index a1a5ebbfe..2cdf69495 100644 --- a/apps/clkinfostopw/metadata.json +++ b/apps/clkinfostopw/metadata.json @@ -1,7 +1,7 @@ { "id": "clkinfostopw", "name": "Stop Watch Clockinfo", - "version":"0.02", + "version":"0.01", "description": "A simple stopwatch, shown via clockinfo", "icon": "app.png", "type": "clkinfo", From ac219f241f476c12b93018fa20572a9e857eb6b1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 16 Apr 2023 21:04:13 +0100 Subject: [PATCH 0761/1725] clkinfo stopw: add option for format --- apps/clkinfostopw/ChangeLog | 2 +- apps/clkinfostopw/clkinfo.ts | 10 ++++++++-- apps/clkinfostopw/metadata.json | 3 ++- apps/clkinfostopw/settings.ts | 32 ++++++++++++++++++++++++++++++++ 4 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 apps/clkinfostopw/settings.ts diff --git a/apps/clkinfostopw/ChangeLog b/apps/clkinfostopw/ChangeLog index 9ef47266a..2626fb51e 100644 --- a/apps/clkinfostopw/ChangeLog +++ b/apps/clkinfostopw/ChangeLog @@ -1,2 +1,2 @@ 0.01: New clkinfo! -0.02: changed format to h:mm:ss, to reduce size of text string +0.02: Added format option, reduced battery usage diff --git a/apps/clkinfostopw/clkinfo.ts b/apps/clkinfostopw/clkinfo.ts index 900ecaeba..fa4309bb4 100644 --- a/apps/clkinfostopw/clkinfo.ts +++ b/apps/clkinfostopw/clkinfo.ts @@ -2,6 +2,8 @@ let durationOnPause = "---"; let redrawInterval: number | undefined; let startTime: number | undefined; + let { format = StopWatchFormat.HMS }: StopWatchSettings + = require("Storage").readJSON("clkinfostopw.setting.json", true) || {}; const unqueueRedraw = () => { if (redrawInterval) clearInterval(redrawInterval); @@ -25,12 +27,16 @@ seconds %= 60; if (mins < 60) - return `${pad2(mins)}m${pad2(seconds)}s`; + return format === StopWatchFormat.HMS + ? `${pad2(mins)}m${pad2(seconds)}s` + : `${mins.toFixed(0)}:${pad2(seconds)}`; let hours = mins / 60; mins %= 60; - return `${Math.round(hours)}h${pad2(mins)}m${pad2(seconds)}s`; + return format === StopWatchFormat.HMS + ? `${hours.toFixed(0)}h${pad2(mins)}m${pad2(seconds)}s` + : `${hours.toFixed(0)}:${pad2(mins)}:${pad2(seconds)}`; }; const img = () => atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA=="); diff --git a/apps/clkinfostopw/metadata.json b/apps/clkinfostopw/metadata.json index a1a5ebbfe..654493e64 100644 --- a/apps/clkinfostopw/metadata.json +++ b/apps/clkinfostopw/metadata.json @@ -10,6 +10,7 @@ "readme":"README.md", "allow_emulator": true, "storage": [ - {"name":"stopw.clkinfo.js","url":"clkinfo.js"} + {"name":"stopw.clkinfo.js","url":"clkinfo.js"}, + {"name":"stopw.settings.js","url":"settings.js"} ] } diff --git a/apps/clkinfostopw/settings.ts b/apps/clkinfostopw/settings.ts new file mode 100644 index 000000000..352c02677 --- /dev/null +++ b/apps/clkinfostopw/settings.ts @@ -0,0 +1,32 @@ +const enum StopWatchFormat { + HMS, + Colon, +} +type StopWatchSettings = { + format: StopWatchFormat, +}; + +((back: () => void) => { + const SETTINGS_FILE = "clkinfostopw.setting.json"; + + const storage = require("Storage"); + const settings: StopWatchSettings = storage.readJSON(SETTINGS_FILE, true) || {}; + settings.format ??= StopWatchFormat.HMS; + + const save = () => { + storage.writeJSON(SETTINGS_FILE, settings) + }; + + E.showMenu({ + "": { "title": "stopwatch" }, + "< Back": back, + "Format": { + value: settings.format, + format: () => settings.format == StopWatchFormat.HMS ? "12h34m56s" : "12:34:56", + onchange: () => { + settings.format = (settings.format + 1) % 2; + save(); + }, + }, + }); +}) From 2443000117344325f4f48c759053e6799f257107 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 16 Apr 2023 21:05:04 +0100 Subject: [PATCH 0762/1725] clkinfo stopw: drop interval to 1s --- apps/clkinfostopw/clkinfo.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/clkinfostopw/clkinfo.ts b/apps/clkinfostopw/clkinfo.ts index fa4309bb4..39a0637bc 100644 --- a/apps/clkinfostopw/clkinfo.ts +++ b/apps/clkinfostopw/clkinfo.ts @@ -12,7 +12,7 @@ const queueRedraw = function(this: ClockInfo.MenuItem) { unqueueRedraw(); - redrawInterval = setInterval(() => this.emit('redraw'), 100); + redrawInterval = setInterval(() => this.emit('redraw'), 1000); }; const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); From efd6ec5083b98715c222666c26e03ef52fece63c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 16 Apr 2023 21:06:05 +0100 Subject: [PATCH 0763/1725] clkinfo stopw: fix redrawing when paused --- apps/clkinfostopw/clkinfo.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/apps/clkinfostopw/clkinfo.ts b/apps/clkinfostopw/clkinfo.ts index 39a0637bc..6051e106e 100644 --- a/apps/clkinfostopw/clkinfo.ts +++ b/apps/clkinfostopw/clkinfo.ts @@ -53,7 +53,13 @@ : durationOnPause, img: img(), }), - show: queueRedraw, + show: function(this: ClockInfo.MenuItem) { + if(startTime){ // only queue if active + queueRedraw.call(this); + }else{ + this.emit('redraw') + } + }, hide: unqueueRedraw, run: function() { // tapped if (startTime) { From 1ac5942a931441f2160412fc52c76ecffaa82262 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 16 Apr 2023 21:06:23 +0100 Subject: [PATCH 0764/1725] clkinfo stopw: regenerate JS --- apps/clkinfostopw/clkinfo.js | 20 ++++++++++++++++---- apps/clkinfostopw/settings.js | 23 +++++++++++++++++++++++ 2 files changed, 39 insertions(+), 4 deletions(-) create mode 100644 apps/clkinfostopw/settings.js diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js index 0073543b4..e89c18505 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.js @@ -3,6 +3,7 @@ var durationOnPause = "---"; var redrawInterval; var startTime; + var _a = (require("Storage").readJSON("clkinfostopw.setting.json", true) || {}).format, format = _a === void 0 ? 0 : _a; var unqueueRedraw = function () { if (redrawInterval) clearInterval(redrawInterval); @@ -11,7 +12,7 @@ var queueRedraw = function () { var _this = this; unqueueRedraw(); - redrawInterval = setInterval(function () { return _this.emit('redraw'); }, 100); + redrawInterval = setInterval(function () { return _this.emit('redraw'); }, 1000); }; var pad2 = function (s) { return ('0' + s.toFixed(0)).slice(-2); }; var duration = function (start) { @@ -21,10 +22,14 @@ var mins = seconds / 60; seconds %= 60; if (mins < 60) - return "".concat(mins.toFixed(0)+":").concat(pad2(seconds)); + return format === 0 + ? "".concat(pad2(mins), "m").concat(pad2(seconds), "s") + : "".concat(mins.toFixed(0), ":").concat(pad2(seconds)); var hours = mins / 60; mins %= 60; - return "".concat(hours.toFixed(0)+":").concat(pad2(mins)).concat(pad2(seconds)); + return format === 0 + ? "".concat(hours.toFixed(0), "h").concat(pad2(mins), "m").concat(pad2(seconds), "s") + : "".concat(hours.toFixed(0), ":").concat(pad2(mins), ":").concat(pad2(seconds)); }; var img = function () { return atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA=="); }; return { @@ -39,7 +44,14 @@ : durationOnPause, img: img(), }); }, - show: queueRedraw, + show: function () { + if (startTime) { + queueRedraw.call(this); + } + else { + this.emit('redraw'); + } + }, hide: unqueueRedraw, run: function () { if (startTime) { diff --git a/apps/clkinfostopw/settings.js b/apps/clkinfostopw/settings.js new file mode 100644 index 000000000..89b234f3b --- /dev/null +++ b/apps/clkinfostopw/settings.js @@ -0,0 +1,23 @@ +"use strict"; +(function (back) { + var _a; + var SETTINGS_FILE = "clkinfostopw.setting.json"; + var storage = require("Storage"); + var settings = storage.readJSON(SETTINGS_FILE, true) || {}; + (_a = settings.format) !== null && _a !== void 0 ? _a : (settings.format = 0); + var save = function () { + storage.writeJSON(SETTINGS_FILE, settings); + }; + E.showMenu({ + "": { "title": "stopwatch" }, + "< Back": back, + "Format": { + value: settings.format, + format: function () { return settings.format == 0 ? "12h34m56s" : "12:34:56"; }, + onchange: function () { + settings.format = (settings.format + 1) % 2; + save(); + }, + }, + }); +}); From 685aedad41519be25c47d269bf8a8e3d481ca434 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 17 Apr 2023 08:52:10 +0100 Subject: [PATCH 0765/1725] clkinfo stopw: better settings --- apps/clkinfostopw/settings.js | 8 +++++--- apps/clkinfostopw/settings.ts | 8 +++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/apps/clkinfostopw/settings.js b/apps/clkinfostopw/settings.js index 89b234f3b..df51cd705 100644 --- a/apps/clkinfostopw/settings.js +++ b/apps/clkinfostopw/settings.js @@ -13,9 +13,11 @@ "< Back": back, "Format": { value: settings.format, - format: function () { return settings.format == 0 ? "12h34m56s" : "12:34:56"; }, - onchange: function () { - settings.format = (settings.format + 1) % 2; + min: 0, + max: 1, + format: function (v) { return v === 0 ? "12m34s" : "12:34"; }, + onchange: function (v) { + settings.format = v; save(); }, }, diff --git a/apps/clkinfostopw/settings.ts b/apps/clkinfostopw/settings.ts index 352c02677..3d7ff5c05 100644 --- a/apps/clkinfostopw/settings.ts +++ b/apps/clkinfostopw/settings.ts @@ -22,9 +22,11 @@ type StopWatchSettings = { "< Back": back, "Format": { value: settings.format, - format: () => settings.format == StopWatchFormat.HMS ? "12h34m56s" : "12:34:56", - onchange: () => { - settings.format = (settings.format + 1) % 2; + min: StopWatchFormat.HMS, + max: StopWatchFormat.Colon, + format: v => v === StopWatchFormat.HMS ? "12m34s" : "12:34", + onchange: v => { + settings.format = v; save(); }, }, From a67f819cf3adaf63e801aa10c497042cff619a3a Mon Sep 17 00:00:00 2001 From: Kendell R Date: Mon, 17 Apr 2023 06:00:09 -0400 Subject: [PATCH 0766/1725] Raise threshold to 90% confidence --- apps/health/boot.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/health/boot.js b/apps/health/boot.js index e369cb5bd..62e8b87ab 100644 --- a/apps/health/boot.js +++ b/apps/health/boot.js @@ -18,9 +18,9 @@ } Bangle.on("health", onHealth); Bangle.on("HRM", (h) => { - if (h.confidence > 80 && Math.abs(Bangle.getHealthStatus().bpm - h.bpm) < 1) Bangle.setHRMPower(0, "health"); + if (h.confidence > 90 && Math.abs(Bangle.getHealthStatus().bpm - h.bpm) < 1) Bangle.setHRMPower(0, "health"); }); - if (Bangle.getHealthStatus().bpmConfidence > 80) return; + if (Bangle.getHealthStatus().bpmConfidence > 90) return; onHealth(); } else Bangle.setHRMPower(!!hrm, "health"); })(); From 0e461352d115a0cbcaa77be65606cbf1a4f6954b Mon Sep 17 00:00:00 2001 From: Kendell R Date: Mon, 17 Apr 2023 06:24:47 -0400 Subject: [PATCH 0767/1725] Update boot.min.js --- apps/health/boot.min.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/health/boot.min.js b/apps/health/boot.min.js index e3e45c400..651231195 100644 --- a/apps/health/boot.min.js +++ b/apps/health/boot.min.js @@ -1,5 +1,5 @@ function l(){var a=require("Storage").readJSON("health.json",1)||{},d=Bangle.getHealthStatus("day").steps;a.stepGoalNotification&&0=a.stepGoal&&(d=(new Date(Date.now())).toISOString().split("T")[0],!a.stepGoalNotificationDate||a.stepGoalNotificationDateBangle.setHRMPower(0,"health"),6E4*a);if(1==a)for(var b=1;2>=b;b++)setTimeout(()=>{Bangle.setHRMPower(1,"health");setTimeout(()=>{Bangle.setHRMPower(0,"health")},6E4)},2E5*b)}Bangle.on("health",d);Bangle.on("HRM",b=>{80{function d(c){return String.fromCharCode(c.steps>>8,c.steps&255,c.bpm,Math.min(c.movement/8,255))}var b=new Date(Date.now()-59E4);a&&0k;k++)e=g.substr(h,4),"\u00ff\u00ff\u00ff\u00ff"!=e&&(a.steps+=(e.charCodeAt(0)<<8)+e.charCodeAt(1),a.movement+=e.charCodeAt(2),a.movCnt++,e=e.charCodeAt(2),a.bpm+=e,e&&a.bpmCnt++),h-=4;a.bpmCnt&&(a.bpm/=a.bpmCnt);a.movCnt&&(a.movement/=a.movCnt); -require("Storage").write(b,d(a),f,17988)}}) \ No newline at end of file +a))}(function(){var a=0|(require("Storage").readJSON("health.json",1)||{}).hrm;if(1==a||2==a){var d=function(){Bangle.setHRMPower(1,"health");setTimeout(function(){return Bangle.setHRMPower(0,"health")},6E4*a);if(1==a){var b=function(){Bangle.setHRMPower(1,"health");setTimeout(function(){Bangle.setHRMPower(0,"health")},6E4)};setTimeout(b,2E5);setTimeout(b,4E5)}};Bangle.on("health",d);Bangle.on("HRM",function(b){90Math.abs(Bangle.getHealthStatus().bpm-b.bpm)&&Bangle.setHRMPower(0, +"health")});90>8,c.steps&255,c.bpm,Math.min(c.movement/8,255))}var b=new Date(Date.now()-59E4);a&&0k;k++)e=g.substr(h,4),"\u00ff\u00ff\u00ff\u00ff"!=e&&(a.steps+=(e.charCodeAt(0)<<8)+e.charCodeAt(1),a.movement+=e.charCodeAt(2), +a.movCnt++,e=e.charCodeAt(2),a.bpm+=e,e&&a.bpmCnt++),h-=4;a.bpmCnt&&(a.bpm/=a.bpmCnt);a.movCnt&&(a.movement/=a.movCnt);require("Storage").write(b,d(a),f,17988)}}) From 9767eb6594de573432daa259e1fa308cb7f7db0c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 17 Apr 2023 12:02:31 +0100 Subject: [PATCH 0768/1725] typescript: drop "use strict" generation --- apps/btadv/app.js | 1 - apps/clkinfostopw/clkinfo.js | 1 - apps/clkinfostopw/settings.js | 1 - apps/widChargingStatus/widget.js | 1 - apps/widbtstates/widget.js | 1 - tsconfig.json | 10 +++++++++- 6 files changed, 9 insertions(+), 6 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index ced701d79..67899370e 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -1,4 +1,3 @@ -"use strict"; var __assign = Object.assign; var Layout = require("Layout"); Bangle.loadWidgets(); diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js index e89c18505..84d7dfecc 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.js @@ -1,4 +1,3 @@ -"use strict"; (function () { var durationOnPause = "---"; var redrawInterval; diff --git a/apps/clkinfostopw/settings.js b/apps/clkinfostopw/settings.js index df51cd705..86bf09cdd 100644 --- a/apps/clkinfostopw/settings.js +++ b/apps/clkinfostopw/settings.js @@ -1,4 +1,3 @@ -"use strict"; (function (back) { var _a; var SETTINGS_FILE = "clkinfostopw.setting.json"; diff --git a/apps/widChargingStatus/widget.js b/apps/widChargingStatus/widget.js index 46119cc5c..628fac043 100644 --- a/apps/widChargingStatus/widget.js +++ b/apps/widChargingStatus/widget.js @@ -1,4 +1,3 @@ -"use strict"; (function () { var icon = require('heatshrink').decompress(atob('ikggMAiEAgYIBmEAg4EB+EAh0AgPggEeCAIEBnwQBAgP+gEP//x///j//8f//k///H//4BYOP/4lBv4bDvwEB4EAvAEBwEAuA7DCAI7BgAQBhEAA')); var iconWidth = 18; diff --git a/apps/widbtstates/widget.js b/apps/widbtstates/widget.js index 1d32e1bc4..e80da4082 100644 --- a/apps/widbtstates/widget.js +++ b/apps/widbtstates/widget.js @@ -1,4 +1,3 @@ -"use strict"; (function () { "ram"; var _a; diff --git a/tsconfig.json b/tsconfig.json index a383f7346..1158f887e 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -15,6 +15,7 @@ "declaration": false, "emitDeclarationOnly": false, "removeComments": true, + "noImplicitUseStrict": true, // disable "use strict" "newLine": "lf", "noEmitHelpers": true, // we link to specific banglejs implementations @@ -35,7 +36,14 @@ "noImplicitOverride": true, "exactOptionalPropertyTypes": true, "useUnknownInCatchVariables": true, - "strict": true, + //"strict": true, // can't have this with noImplicitUseStrict, instead: + "strictNullChecks": true, + "strictBindCallApply": true, + "strictFunctionTypes": true, + "strictPropertyInitialization": true, + "noImplicitAny": true, + "noImplicitThis": true, + "useUnknownInCatchVariables": true, // simple type checking "noUnusedLocals": true, From 894591df6831c46791a2293d6eeb2da2d91844d1 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Tue, 18 Apr 2023 20:09:15 +0100 Subject: [PATCH 0769/1725] renamed Changelog to ChangeLog as the tests are case sensitive --- apps/widbatc/{Changelog => ChangeLog} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename apps/widbatc/{Changelog => ChangeLog} (100%) diff --git a/apps/widbatc/Changelog b/apps/widbatc/ChangeLog similarity index 100% rename from apps/widbatc/Changelog rename to apps/widbatc/ChangeLog From 529eb7c380bc47c3f2a7cff4eff6adde62632615 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Tue, 18 Apr 2023 20:18:54 +0100 Subject: [PATCH 0770/1725] merge --- apps/clkinfostopw/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/clkinfostopw/metadata.json b/apps/clkinfostopw/metadata.json index 45131d734..654493e64 100644 --- a/apps/clkinfostopw/metadata.json +++ b/apps/clkinfostopw/metadata.json @@ -1,7 +1,7 @@ { "id": "clkinfostopw", "name": "Stop Watch Clockinfo", - "version":"0.01", + "version":"0.02", "description": "A simple stopwatch, shown via clockinfo", "icon": "app.png", "type": "clkinfo", From 24dd468edba4c6b3c364bc7e5616bbf89b96d254 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Tue, 18 Apr 2023 20:28:57 +0100 Subject: [PATCH 0771/1725] ensure widget is referenced as batc throughout --- apps/widbatc/widget.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/apps/widbatc/widget.js b/apps/widbatc/widget.js index 978edc8e8..2bb9040d8 100644 --- a/apps/widbatc/widget.js +++ b/apps/widbatc/widget.js @@ -1,12 +1,11 @@ setInterval(()=>WIDGETS["batc"].draw(), 60000); Bangle.on('lcdPower', function(on) { - if (on) WIDGETS["bata"].draw(); + if (on) WIDGETS["batc"].draw(); }); -WIDGETS["bata"]={area:"tr",sortorder:10,width:48,draw:function() { +WIDGETS["batc"]={area:"tr",sortorder:10,width:48,draw:function() { g.reset(); // Lato from fonts.google.com, Actual height 17 (17 - 1), Numeric only - const scale = 1; - g.setFontCustom(atob("AAAAABwAAOAAAgAAHAADwAD4AB8AB8AA+AAeAADAAAAOAAP+AH/8B4DwMAGBgAwMAGBgAwOAOA//gD/4AD4AAAAAAAABgAAcAwDAGAwAwP/+B//wAAGAAAwAAGAAAAAAAAIAwHgOA4DwMA+BgOwMDmBg4wOeGA/gwDwGAAAAAAAAAGAHA8A4DwMAGBhAwMMGBjgwOcOA+/gDj4AAAAABgAAcAAHgADsAA5gAOMAHBgBwMAP/+B//wABgAAMAAAAAAAgD4OB/AwOYGBjAwMYGBjBwMe8Bh/AIHwAAAAAAAAAfAAP8AHxwB8GAdgwPMGBxgwMOOAB/gAH4AAAAAAABgAAMAABgAwMAeBgPgMHwBj4AN8AB+AAPAABAAAAAAAMfAH38B/xwMcGBhgwMMGBjgwP+OA+/gDj4AAAAAAAAOAAH4AA/gQMMGBgzwME8BhvAOPgA/4AD8AAEAAAAAAGAwA4OAHBwAAA="), 46, atob("BAgMDAwMDAwMDAwMBQ=="), 21+(scale<<8)+(1<<16)); + g.setFontCustom(atob("AAAAABwAAOAAAgAAHAADwAD4AB8AB8AA+AAeAADAAAAOAAP+AH/8B4DwMAGBgAwMAGBgAwOAOA//gD/4AD4AAAAAAAABgAAcAwDAGAwAwP/+B//wAAGAAAwAAGAAAAAAAAIAwHgOA4DwMA+BgOwMDmBg4wOeGA/gwDwGAAAAAAAAAGAHA8A4DwMAGBhAwMMGBjgwOcOA+/gDj4AAAAABgAAcAAHgADsAA5gAOMAHBgBwMAP/+B//wABgAAMAAAAAAAgD4OB/AwOYGBjAwMYGBjBwMe8Bh/AIHwAAAAAAAAAfAAP8AHxwB8GAdgwPMGBxgwMOOAB/gAH4AAAAAAABgAAMAABgAwMAeBgPgMHwBj4AN8AB+AAPAABAAAAAAAMfAH38B/xwMcGBhgwMMGBjgwP+OA+/gDj4AAAAAAAAOAAH4AA/gQMMGBgzwME8BhvAOPgA/4AD8AAEAAAAAAGAwA4OAHBwAAA="), 46, atob("BAgMDAwMDAwMDAwMBQ=="), 21+(1<<8)+(1<<16)); var bp = "" + E.getBattery().toString(); var text_w = g.stringWidth(bp); var bw = 7; // battery width From 1893345d37254dd3b7e4041d9a13f13ec4a7115e Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 08:37:41 +0100 Subject: [PATCH 0772/1725] stopw: only show milliseconds for the first second --- apps/clkinfostopw/clkinfo.js | 20 +++++++++++++++++--- apps/clkinfostopw/clkinfo.ts | 21 +++++++++++++++++---- 2 files changed, 34 insertions(+), 7 deletions(-) diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js index 84d7dfecc..6fca381e2 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.js @@ -2,6 +2,7 @@ var durationOnPause = "---"; var redrawInterval; var startTime; + var over1s = false; var _a = (require("Storage").readJSON("clkinfostopw.setting.json", true) || {}).format, format = _a === void 0 ? 0 : _a; var unqueueRedraw = function () { if (redrawInterval) @@ -11,13 +12,26 @@ var queueRedraw = function () { var _this = this; unqueueRedraw(); - redrawInterval = setInterval(function () { return _this.emit('redraw'); }, 1000); + redrawInterval = setInterval(function () { + if (startTime) { + if (!over1s && Date.now() - startTime > 1000) { + over1s = true; + changeInterval(redrawInterval, 1000); + } + } + else { + unqueueRedraw(); + } + _this.emit('redraw'); + }, 100); }; var pad2 = function (s) { return ('0' + s.toFixed(0)).slice(-2); }; var duration = function (start) { var seconds = (Date.now() - start) / 1000; - if (seconds < 60) + if (seconds <= 1) return seconds.toFixed(1); + if (seconds < 60) + return seconds.toFixed(0); var mins = seconds / 60; seconds %= 60; if (mins < 60) @@ -56,10 +70,10 @@ if (startTime) { durationOnPause = duration(startTime); startTime = undefined; - unqueueRedraw(); } else { queueRedraw.call(this); + over1s = false; startTime = Date.now(); } } diff --git a/apps/clkinfostopw/clkinfo.ts b/apps/clkinfostopw/clkinfo.ts index 6051e106e..6e5b072ad 100644 --- a/apps/clkinfostopw/clkinfo.ts +++ b/apps/clkinfostopw/clkinfo.ts @@ -2,6 +2,7 @@ let durationOnPause = "---"; let redrawInterval: number | undefined; let startTime: number | undefined; + let over1s = false; let { format = StopWatchFormat.HMS }: StopWatchSettings = require("Storage").readJSON("clkinfostopw.setting.json", true) || {}; @@ -12,7 +13,17 @@ const queueRedraw = function(this: ClockInfo.MenuItem) { unqueueRedraw(); - redrawInterval = setInterval(() => this.emit('redraw'), 1000); + redrawInterval = setInterval(() => { + if (startTime) { + if (!over1s && Date.now() - startTime > 1000) { + over1s = true; + changeInterval(redrawInterval, 1000); + } + } else { + unqueueRedraw(); + } + this.emit('redraw') + }, 100); }; const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); @@ -20,8 +31,10 @@ const duration = (start: number) => { let seconds = (Date.now() - start) / 1000; - if (seconds < 60) + if (seconds <= 1) return seconds.toFixed(1); + if (seconds < 60) + return seconds.toFixed(0); let mins = seconds / 60; seconds %= 60; @@ -64,10 +77,10 @@ run: function() { // tapped if (startTime) { durationOnPause = duration(startTime); - startTime = undefined; - unqueueRedraw(); + startTime = undefined; // this also unqueues the redraw } else { queueRedraw.call(this); + over1s = false; startTime = Date.now(); } } From 55441d5ef54f10a1d1ef7622ca9fbdbeb0fdecdf Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 08:58:21 +0100 Subject: [PATCH 0773/1725] powermanager: format seconds into days/hours/minutes/seconds --- apps/powermanager/interface.html | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/apps/powermanager/interface.html b/apps/powermanager/interface.html index 7a00af993..fac49694c 100644 --- a/apps/powermanager/interface.html +++ b/apps/powermanager/interface.html @@ -108,7 +108,7 @@ function viewDeferredTable(filename) { for (var i in rows) { let c = rows[i]; tableRows += `

    ${(c.time/1000).toFixed(2)}s${timeFormat(c.time)} ${(c.time/sum*100).toFixed(2)}%
    ${c.func}
    @@ -185,7 +185,7 @@ function viewHardwareTable(filename) { for (var i in rows) { let c = rows[i]; tableRows += ` - + ` } @@ -194,7 +194,7 @@ function viewHardwareTable(filename) { var htmlOverview = `

    Hardware power

    - Recorded in a time span of ${Math.round(duration/1000)}s. Percentages are calculated from recording time. + Recorded in a time span of ${timeFormat(duration)}. Percentages are calculated from recording time.
    ${(c.time/1000).toFixed(2)}s${timeFormat(c.time)} ${(c.time/duration*100).toFixed(2)}% ${c.func}
    @@ -263,6 +263,27 @@ function onInit() { show(); } +function timeFormat(time) { + let secs = time / 1000; + + if (secs < 60) + return secs.toFixed(2) + "s"; + + let mins = secs / 60; + secs %= 60; + if (mins < 60) + return mins.toFixed(0) + "m" + secs.toFixed(0) + "s"; + + let hrs = mins / 60; + mins %= 60; + if (hrs < 24) + return hrs.toFixed(0) + "h" + mins.toFixed(0) + "m" + secs.toFixed(0) + "s"; + + let days = hrs / 24; + hrs %= 24; + return days.toFixed(0) + "d" + hrs.toFixed(0) + "h" + mins.toFixed(0) + "m" + secs.toFixed(0) + "s"; +} + From 3ac91b5feefac1cded021d7cdf0ae87d47114c15 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 19 Apr 2023 18:51:02 +0200 Subject: [PATCH 0774/1725] make clock_info border one pixel wider --- apps/bwclklite/ChangeLog | 1 + apps/bwclklite/app.js | 2 +- apps/bwclklite/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/bwclklite/ChangeLog b/apps/bwclklite/ChangeLog index c728997da..eca453be0 100644 --- a/apps/bwclklite/ChangeLog +++ b/apps/bwclklite/ChangeLog @@ -34,3 +34,4 @@ clkinfo.addInteractive that would cause ReferenceError. 0.32: Diverge from BW Clock. Change out the custom font for a standard bitmap one to speed up loading times. Remove invertion of theme as this doesn'twork very well with fastloading. Do an quick inital fillRect on theclock info area. +0.33: Make the border of the clock_info box extend all the way to the right of the screen. diff --git a/apps/bwclklite/app.js b/apps/bwclklite/app.js index 1008eae9c..697776ea0 100644 --- a/apps/bwclklite/app.js +++ b/apps/bwclklite/app.js @@ -95,7 +95,7 @@ let clockInfoMenu = clock_info.addInteractive(clockInfoItems, { app: "bwclklite", x : 0, y: 135, - w: W, + w: W+1, h: H-135, draw : (itm, info, options) => { let hideClkInfo = info.text == null; diff --git a/apps/bwclklite/metadata.json b/apps/bwclklite/metadata.json index bab852623..8932274d4 100644 --- a/apps/bwclklite/metadata.json +++ b/apps/bwclklite/metadata.json @@ -1,7 +1,7 @@ { "id": "bwclklite", "name": "BW Clock Lite", - "version": "0.32", + "version": "0.33", "description": "A very minimalistic clock. This version of BW Clock is quicker at the cost of the custom font.", "readme": "README.md", "icon": "app.png", From d0ad4cd8df69746d77b01ea15d84f7496a077c2a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 18:13:23 +0100 Subject: [PATCH 0775/1725] drained: restore normal operation on sufficient charge --- apps/drained/app.ts | 16 +++++++++++++--- apps/drained/settings.ts | 13 +++++++++++++ 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 14fa3e378..7f019da81 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -81,12 +81,22 @@ draw(); Bangle.emit("drained", E.getBattery()); // restore normal boot on charge -const { disableBoot = false }: DrainedSettings +const { disableBoot = false, restore = 20 }: DrainedSettings = require("Storage").readJSON(`${app}.setting.json`, true) || {}; +// re-enable normal boot code when we're above a threshold: if(disableBoot){ + const checkCharge = () => { + if(E.getBattery() < restore) return; + + eval(require('Storage').read('bootupdate.js')); + load(); // necessary after updating boot.0 + }; + + if (Bangle.isCharging()) + checkCharge(); + Bangle.on("charging", charging => { - if (charging) - eval(require('Storage').read('bootupdate.js')); + if(charging) checkCharge(); }); } diff --git a/apps/drained/settings.ts b/apps/drained/settings.ts index a3b377045..5b7523fc9 100644 --- a/apps/drained/settings.ts +++ b/apps/drained/settings.ts @@ -1,5 +1,6 @@ type DrainedSettings = { battery?: number, + restore?: number, interval?: number, disableBoot?: ShortBoolean, }; @@ -10,6 +11,7 @@ type DrainedSettings = { const storage = require("Storage") const settings: DrainedSettings = storage.readJSON(SETTINGS_FILE, true) || {}; settings.battery ??= 5; + settings.restore ??= 20; settings.interval ??= 10; settings.disableBoot ??= false; @@ -50,5 +52,16 @@ type DrainedSettings = { save(); }, }, + "Restore watch at %": { + value: settings.restore, + min: 0, + max: 95, + step: 5, + format: (v: number) => `${v}%`, + onchange: (v: number) => { + settings.restore = v; + save(); + }, + }, }); }) From 6830e5ed16afcc6b576974063cc13fdebd241ed6 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 19 Apr 2023 19:02:55 +0200 Subject: [PATCH 0776/1725] make clock_info border one pixel wider --- apps/bwclk/ChangeLog | 1 + apps/bwclk/app.js | 2 +- apps/bwclk/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/bwclk/ChangeLog b/apps/bwclk/ChangeLog index 06f94854e..a5458d2da 100644 --- a/apps/bwclk/ChangeLog +++ b/apps/bwclk/ChangeLog @@ -31,3 +31,4 @@ clkinfo.addInteractive that would cause ReferenceError. 0.29: use setItem of clockInfoMenu to change the active item 0.30: Use widget_utils 0.31: Use clock_info module as an app +0.32: Make the border of the clock_info box extend all the way to the right of the screen. diff --git a/apps/bwclk/app.js b/apps/bwclk/app.js index 770c053c2..359baebae 100644 --- a/apps/bwclk/app.js +++ b/apps/bwclk/app.js @@ -135,7 +135,7 @@ let clockInfoMenu = clock_info.addInteractive(clockInfoItems, { app: "bwclk", x : 0, y: 135, - w: W, + w: W+1, h: H-135, draw : (itm, info, options) => { var hideClkInfo = info.text == null; diff --git a/apps/bwclk/metadata.json b/apps/bwclk/metadata.json index 430f466b2..6b8230555 100644 --- a/apps/bwclk/metadata.json +++ b/apps/bwclk/metadata.json @@ -1,7 +1,7 @@ { "id": "bwclk", "name": "BW Clock", - "version": "0.31", + "version": "0.32", "description": "A very minimalistic clock.", "readme": "README.md", "icon": "app.png", From a28891e6dfb89d32cc32bf8148215701c1fe1221 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 18:13:48 +0100 Subject: [PATCH 0777/1725] drained: guard against BLE exceptions --- apps/drained/app.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 7f019da81..f8b2bee2a 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -22,8 +22,12 @@ const forceOff = (name: "GPS" | "HRM" | "Compass" /*| "Barom"*/) => { }; forceOff("GPS"); forceOff("HRM"); -NRF.disconnect(); -NRF.sleep(); +try{ + NRF.disconnect(); + NRF.sleep(); +}catch(e){ + console.log(`couldn't disable ble: ${e}`); +} // events Bangle.removeAllListeners(); From c7aa2b36553dd6f36fb203e74a8f51ddd7b9426d Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 18:14:10 +0100 Subject: [PATCH 0778/1725] drained: load self on startup this allows us to then control restoring normal operation --- apps/drained/boot.ts | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/apps/drained/boot.ts b/apps/drained/boot.ts index c269bf08a..4dc885c20 100644 --- a/apps/drained/boot.ts +++ b/apps/drained/boot.ts @@ -8,9 +8,14 @@ drainedInterval = setInterval(() => { if(E.getBattery() > threshold) return; - if(disableBoot) - require("Storage").erase(".boot0"); + const app = "drained.app.js"; - load("drained.app.js"); + if(disableBoot) + require("Storage").write( + ".boot0", + `if(typeof __FILE__ === "undefined" || __FILE__ !== "${app}") setTimeout(load, 100, "${app}");` + ); + + load(app); }, interval * 60 * 1000); } From 99a211a93751dd0d5383848f8ed402397d081990 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 18:16:21 +0100 Subject: [PATCH 0779/1725] drained: publicise `drainedRestore()` --- apps/drained/app.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index f8b2bee2a..8dc4a77c8 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -90,11 +90,14 @@ const { disableBoot = false, restore = 20 }: DrainedSettings // re-enable normal boot code when we're above a threshold: if(disableBoot){ - const checkCharge = () => { - if(E.getBattery() < restore) return; - + function drainedRestore() { // "public", to allow users to call eval(require('Storage').read('bootupdate.js')); load(); // necessary after updating boot.0 + } + + const checkCharge = () => { + if(E.getBattery() < restore) return; + drainedRestore(); }; if (Bangle.isCharging()) From 73d41a40ff26099f058146a2a2d32ad589da11dd Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 18:33:30 +0100 Subject: [PATCH 0780/1725] drained: allow user to restore full-power mode --- apps/drained/app.ts | 40 +++++++++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 13 deletions(-) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 8dc4a77c8..af97454a4 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -69,17 +69,29 @@ const draw = () => { }, 60000 - (date.getTime() % 60000)); }; -Bangle.setUI({ - mode: "custom", - remove: () => { - if (nextDraw) clearTimeout(nextDraw); - nextDraw = undefined; - }, -}); -Bangle.CLOCK=1; +const reload = () => { + Bangle.setUI({ + mode: "custom", + remove: () => { + if (nextDraw) clearTimeout(nextDraw); + nextDraw = undefined; + }, + btn: () => { + E.showPrompt("Restore watch to full power?").then(v => { + if(v){ + drainedRestore(); + }else{ + reload(); + } + }) + } + }); + Bangle.CLOCK=1; -g.clear(); -draw(); + g.clear(); + draw(); +}; +reload(); // permit other apps to put themselves into low-power mode Bangle.emit("drained", E.getBattery()); @@ -89,12 +101,14 @@ const { disableBoot = false, restore = 20 }: DrainedSettings = require("Storage").readJSON(`${app}.setting.json`, true) || {}; // re-enable normal boot code when we're above a threshold: -if(disableBoot){ - function drainedRestore() { // "public", to allow users to call +function drainedRestore() { // "public", to allow users to call + if(disableBoot){ eval(require('Storage').read('bootupdate.js')); - load(); // necessary after updating boot.0 } + load(); // necessary after updating boot.0 +} +if(disableBoot){ const checkCharge = () => { if(E.getBattery() < restore) return; drainedRestore(); From f8fc93301e78f614382757e3f8c2e5cbbe0f6950 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 18:36:03 +0100 Subject: [PATCH 0781/1725] drained: handle errors from bootupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Such as: ``` Uncaught ReferenceError: "bleServiceOptions" is not defined  at line 4 col 228 in .boot0 ...ECwA=="));bleServiceOptions.hid=Bangle.HID;                               ^ at line 68 col 50 in drained.app.js eval(require('Storage').read('bootupdate.js'));                                              ^ ``` --- apps/drained/app.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/drained/app.ts b/apps/drained/app.ts index af97454a4..9fc2665ee 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -103,7 +103,11 @@ const { disableBoot = false, restore = 20 }: DrainedSettings // re-enable normal boot code when we're above a threshold: function drainedRestore() { // "public", to allow users to call if(disableBoot){ - eval(require('Storage').read('bootupdate.js')); + try{ + eval(require('Storage').read('bootupdate.js')); + }catch(e){ + console.log("error restoring bootupdate:" + e); + } } load(); // necessary after updating boot.0 } From 96c8b9e49dde8a9fdb10bb944b2ffe3b998a288f Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 18:14:41 +0100 Subject: [PATCH 0782/1725] drained: regenerate JS --- apps/drained/app.js | 66 +++++++++++++++++++++++++++++++--------- apps/drained/boot.js | 5 +-- apps/drained/settings.js | 18 +++++++++-- 3 files changed, 69 insertions(+), 20 deletions(-) diff --git a/apps/drained/app.js b/apps/drained/app.js index 133d5e192..000727e19 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -13,8 +13,13 @@ var forceOff = function (name) { }; forceOff("GPS"); forceOff("HRM"); -NRF.disconnect(); -NRF.sleep(); +try { + NRF.disconnect(); + NRF.sleep(); +} +catch (e) { + console.log("couldn't disable ble: ".concat(e)); +} Bangle.removeAllListeners(); clearWatch(); Bangle.setOptions({ @@ -46,22 +51,53 @@ var draw = function () { draw(); }, 60000 - (date.getTime() % 60000)); }; -Bangle.setUI({ - mode: "custom", - remove: function () { - if (nextDraw) - clearTimeout(nextDraw); - nextDraw = undefined; - }, -}); -Bangle.CLOCK = 1; -g.clear(); -draw(); +var reload = function () { + Bangle.setUI({ + mode: "custom", + remove: function () { + if (nextDraw) + clearTimeout(nextDraw); + nextDraw = undefined; + }, + btn: function () { + E.showPrompt("Restore watch to full power?").then(function (v) { + if (v) { + drainedRestore(); + } + else { + reload(); + } + }); + } + }); + Bangle.CLOCK = 1; + g.clear(); + draw(); +}; +reload(); Bangle.emit("drained", E.getBattery()); -var _a = (require("Storage").readJSON("".concat(app, ".setting.json"), true) || {}).disableBoot, disableBoot = _a === void 0 ? false : _a; +var _a = require("Storage").readJSON("".concat(app, ".setting.json"), true) || {}, _b = _a.disableBoot, disableBoot = _b === void 0 ? false : _b, _c = _a.restore, restore = _c === void 0 ? 20 : _c; +function drainedRestore() { + if (disableBoot) { + try { + eval(require('Storage').read('bootupdate.js')); + } + catch (e) { + console.log("error restoring bootupdate:" + e); + } + } + load(); +} if (disableBoot) { + var checkCharge_1 = function () { + if (E.getBattery() < restore) + return; + drainedRestore(); + }; + if (Bangle.isCharging()) + checkCharge_1(); Bangle.on("charging", function (charging) { if (charging) - eval(require('Storage').read('bootupdate.js')); + checkCharge_1(); }); } diff --git a/apps/drained/boot.js b/apps/drained/boot.js index d1c64780b..639b39ef3 100644 --- a/apps/drained/boot.js +++ b/apps/drained/boot.js @@ -6,8 +6,9 @@ return; if (E.getBattery() > threshold_1) return; + var app = "drained.app.js"; if (disableBoot_1) - require("Storage").erase(".boot0"); - load("drained.app.js"); + require("Storage").write(".boot0", "if(typeof __FILE__ === \"undefined\" || __FILE__ !== \"".concat(app, "\") setTimeout(load, 100, \"").concat(app, "\");")); + load(app); }, interval * 60 * 1000); } diff --git a/apps/drained/settings.js b/apps/drained/settings.js index 4461f8965..310570455 100644 --- a/apps/drained/settings.js +++ b/apps/drained/settings.js @@ -1,12 +1,13 @@ "use strict"; (function (back) { - var _a, _b, _c; + var _a, _b, _c, _d; var SETTINGS_FILE = "drained.setting.json"; var storage = require("Storage"); var settings = storage.readJSON(SETTINGS_FILE, true) || {}; (_a = settings.battery) !== null && _a !== void 0 ? _a : (settings.battery = 5); - (_b = settings.interval) !== null && _b !== void 0 ? _b : (settings.interval = 10); - (_c = settings.disableBoot) !== null && _c !== void 0 ? _c : (settings.disableBoot = false); + (_b = settings.restore) !== null && _b !== void 0 ? _b : (settings.restore = 20); + (_c = settings.interval) !== null && _c !== void 0 ? _c : (settings.interval = 10); + (_d = settings.disableBoot) !== null && _d !== void 0 ? _d : (settings.disableBoot = false); var save = function () { storage.writeJSON(SETTINGS_FILE, settings); }; @@ -43,5 +44,16 @@ save(); }, }, + "Restore watch at %": { + value: settings.restore, + min: 0, + max: 95, + step: 5, + format: function (v) { return "".concat(v, "%"); }, + onchange: function (v) { + settings.restore = v; + save(); + }, + }, }); }); From a467a81c33a2e1de8b6197d8ef93532de5afe7f9 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 17:42:36 +0100 Subject: [PATCH 0783/1725] stopw: remove padding from minute formatting --- apps/clkinfostopw/clkinfo.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/clkinfostopw/clkinfo.ts b/apps/clkinfostopw/clkinfo.ts index 6e5b072ad..05d160c30 100644 --- a/apps/clkinfostopw/clkinfo.ts +++ b/apps/clkinfostopw/clkinfo.ts @@ -41,7 +41,7 @@ if (mins < 60) return format === StopWatchFormat.HMS - ? `${pad2(mins)}m${pad2(seconds)}s` + ? `${mins.toFixed(0)}m${pad2(seconds)}s` : `${mins.toFixed(0)}:${pad2(seconds)}`; let hours = mins / 60; From 05094f6c511991dc41755184166c8361bd666fd5 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 21:50:51 +0100 Subject: [PATCH 0784/1725] stopw: show millis for the first minute --- apps/clkinfostopw/clkinfo.js | 10 +++++----- apps/clkinfostopw/clkinfo.ts | 8 ++++---- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js index 6fca381e2..43cd8d52f 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.js @@ -2,7 +2,7 @@ var durationOnPause = "---"; var redrawInterval; var startTime; - var over1s = false; + var showMillis = true; var _a = (require("Storage").readJSON("clkinfostopw.setting.json", true) || {}).format, format = _a === void 0 ? 0 : _a; var unqueueRedraw = function () { if (redrawInterval) @@ -14,8 +14,8 @@ unqueueRedraw(); redrawInterval = setInterval(function () { if (startTime) { - if (!over1s && Date.now() - startTime > 1000) { - over1s = true; + if (showMillis && Date.now() - startTime > 60000) { + showMillis = false; changeInterval(redrawInterval, 1000); } } @@ -36,7 +36,7 @@ seconds %= 60; if (mins < 60) return format === 0 - ? "".concat(pad2(mins), "m").concat(pad2(seconds), "s") + ? "".concat(mins.toFixed(0), "m").concat(pad2(seconds), "s") : "".concat(mins.toFixed(0), ":").concat(pad2(seconds)); var hours = mins / 60; mins %= 60; @@ -73,7 +73,7 @@ } else { queueRedraw.call(this); - over1s = false; + showMillis = true; startTime = Date.now(); } } diff --git a/apps/clkinfostopw/clkinfo.ts b/apps/clkinfostopw/clkinfo.ts index 05d160c30..4a5f36e52 100644 --- a/apps/clkinfostopw/clkinfo.ts +++ b/apps/clkinfostopw/clkinfo.ts @@ -2,7 +2,7 @@ let durationOnPause = "---"; let redrawInterval: number | undefined; let startTime: number | undefined; - let over1s = false; + let showMillis = true; let { format = StopWatchFormat.HMS }: StopWatchSettings = require("Storage").readJSON("clkinfostopw.setting.json", true) || {}; @@ -15,8 +15,8 @@ unqueueRedraw(); redrawInterval = setInterval(() => { if (startTime) { - if (!over1s && Date.now() - startTime > 1000) { - over1s = true; + if (showMillis && Date.now() - startTime > 60000) { + showMillis = false; changeInterval(redrawInterval, 1000); } } else { @@ -80,7 +80,7 @@ startTime = undefined; // this also unqueues the redraw } else { queueRedraw.call(this); - over1s = false; + showMillis = true; startTime = Date.now(); } } From 524b204a30b3f6bf564d0bc9a41b9098c0b209b6 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 19 Apr 2023 22:40:54 +0100 Subject: [PATCH 0785/1725] drained: document features in README --- apps/drained/README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/apps/drained/README.md b/apps/drained/README.md index 3ddee5907..7bef74d81 100644 --- a/apps/drained/README.md +++ b/apps/drained/README.md @@ -1,9 +1,15 @@ # Drained -With this app installed, your Bangle will automatically switch into low power mode when the battery reaches 5% battery, displaying a simple clock. +With this app installed, your Bangle will automatically switch into low power mode when the battery reaches 5% battery (or a preconfigured percentage), displaying a simple clock. When the battery is then charged above 20% (also configurable), normal operation is restored. + +Low power mode can also be exited manually, by tapping the primary watch button (an initial tap may be required to unlock the watch). # Features +## Persistence +- [x] Restore normal operation with sufficient charge +- [x] Reactivate on watch startup + ## Time - [x] Show simple date/time - [ ] Disable alarms - with a setting? From 45ec4dddd4c1634f307c1246ec286c5be96b6b3c Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 20 Apr 2023 08:58:51 +0100 Subject: [PATCH 0786/1725] remind about latest version --- loader.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/loader.js b/loader.js index 414aa99d1..1fcae8da6 100644 --- a/loader.js +++ b/loader.js @@ -16,7 +16,7 @@ if (window.location.host=="banglejs.com") { 'This is not the official Bangle.js App Loader - you can try the Official Version here.'; } -var RECOMMENDED_VERSION = "2v16"; +var RECOMMENDED_VERSION = "2v17"; // could check http://www.espruino.com/json/BANGLEJS.json for this // We're only interested in Bangles From fc82d3b13bc49c49de145802731f2b44d5293ef4 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 20 Apr 2023 13:06:29 +0100 Subject: [PATCH 0787/1725] Update typescript & remove "use strict"s --- apps/clkinfostopw/clkinfo.ts | 4 +- apps/clkinfostopw/settings.ts | 4 +- apps/drained/app.js | 1 - apps/drained/boot.js | 1 - apps/drained/settings.js | 1 - apps/drained/settings.ts | 4 +- typescript/types/funcs.d.ts | 2 + typescript/types/main.d.ts | 120 +++++++++++++++++++++++++--------- 8 files changed, 97 insertions(+), 40 deletions(-) create mode 100644 typescript/types/funcs.d.ts diff --git a/apps/clkinfostopw/clkinfo.ts b/apps/clkinfostopw/clkinfo.ts index 6051e106e..e5361644d 100644 --- a/apps/clkinfostopw/clkinfo.ts +++ b/apps/clkinfostopw/clkinfo.ts @@ -1,4 +1,4 @@ -((): ClockInfo.Menu => { +(() => { let durationOnPause = "---"; let redrawInterval: number | undefined; let startTime: number | undefined; @@ -74,4 +74,4 @@ } ] }; -}) +}) satisfies ClockInfoFunc diff --git a/apps/clkinfostopw/settings.ts b/apps/clkinfostopw/settings.ts index 3d7ff5c05..a9a35f245 100644 --- a/apps/clkinfostopw/settings.ts +++ b/apps/clkinfostopw/settings.ts @@ -6,7 +6,7 @@ type StopWatchSettings = { format: StopWatchFormat, }; -((back: () => void) => { +(back => { const SETTINGS_FILE = "clkinfostopw.setting.json"; const storage = require("Storage"); @@ -31,4 +31,4 @@ type StopWatchSettings = { }, }, }); -}) +}) satisfies SettingsFunc diff --git a/apps/drained/app.js b/apps/drained/app.js index 000727e19..f9ae04605 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -1,4 +1,3 @@ -"use strict"; var app = "drained"; if (typeof drainedInterval !== "undefined") drainedInterval = clearInterval(drainedInterval); diff --git a/apps/drained/boot.js b/apps/drained/boot.js index 639b39ef3..97f405123 100644 --- a/apps/drained/boot.js +++ b/apps/drained/boot.js @@ -1,4 +1,3 @@ -"use strict"; { var _a = require("Storage").readJSON("drained.setting.json", true) || {}, _b = _a.battery, threshold_1 = _b === void 0 ? 5 : _b, _c = _a.interval, interval = _c === void 0 ? 10 : _c, _d = _a.disableBoot, disableBoot_1 = _d === void 0 ? false : _d; drainedInterval = setInterval(function () { diff --git a/apps/drained/settings.js b/apps/drained/settings.js index 310570455..fe4ab9c4b 100644 --- a/apps/drained/settings.js +++ b/apps/drained/settings.js @@ -1,4 +1,3 @@ -"use strict"; (function (back) { var _a, _b, _c, _d; var SETTINGS_FILE = "drained.setting.json"; diff --git a/apps/drained/settings.ts b/apps/drained/settings.ts index 5b7523fc9..c79e6605c 100644 --- a/apps/drained/settings.ts +++ b/apps/drained/settings.ts @@ -5,7 +5,7 @@ type DrainedSettings = { disableBoot?: ShortBoolean, }; -((back: () => void) => { +(back => { const SETTINGS_FILE = "drained.setting.json"; const storage = require("Storage") @@ -64,4 +64,4 @@ type DrainedSettings = { }, }, }); -}) +}) satisfies SettingsFunc diff --git a/typescript/types/funcs.d.ts b/typescript/types/funcs.d.ts new file mode 100644 index 000000000..81c4646ea --- /dev/null +++ b/typescript/types/funcs.d.ts @@ -0,0 +1,2 @@ +type SettingsFunc = (back: () => void) => void; +type ClockInfoFunc = () => ClockInfo.Menu; diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index 806725535..29118b7c6 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -304,6 +304,12 @@ type VariableSizeInformation = { more?: VariableSizeInformation; }; +type PipeOptions = { + chunkSize?: number, + end?: boolean, + complete?: () => void, +}; + // CLASSES @@ -802,6 +808,29 @@ declare class NRF { */ static on(event: "security", callback: (status: any) => void): void; + /** + * Called when Bluetooth advertising starts or stops on Espruino + * @param {string} event - The event to listen to. + * @param {(isAdvertising: boolean) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `isAdvertising` Whether we are advertising or not + * @url http://www.espruino.com/Reference#l_NRF_advertising + */ + static on(event: "advertising", callback: (isAdvertising: boolean) => void): void; + + /** + * Called during the bonding process to update on status + * `status` is one of: + * * `"request"` - Bonding has been requested in code via `NRF.startBonding` + * * `"start"` - The bonding procedure has started + * * `"success"` - The bonding procedure has succeeded (`NRF.startBonding`'s promise resolves) + * * `"fail"` - The bonding procedure has failed (`NRF.startBonding`'s promise rejects) + * @param {string} event - The event to listen to. + * @param {(status: any) => void} callback - A function that is executed when the event occurs. Its arguments are: + * * `status` One of `'request'/'start'/'success'/'fail'` + * @url http://www.espruino.com/Reference#l_NRF_bond + */ + static on(event: "bond", callback: (status: any) => void): void; + /** * Called with a single byte value when Espruino is set up as a HID device and the * computer it is connected to sends a HID report back to Espruino. This is usually @@ -993,15 +1022,17 @@ declare class NRF { * `options` is an object, which can contain: * ``` * { - * name: "Hello" // The name of the device - * showName: true/false // include full name, or nothing - * discoverable: true/false // general discoverable, or limited - default is limited - * connectable: true/false // whether device is connectable - default is true - * scannable : true/false // whether device can be scanned for scan response packets - default is true - * interval: 600 // Advertising interval in msec, between 20 and 10000 (default is 375ms) - * manufacturer: 0x0590 // IF sending manufacturer data, this is the manufacturer ID - * manufacturerData: [...] // IF sending manufacturer data, this is an array of data - * phy: "1mbps/2mbps/coded" // (NRF52840 only) use the long-range coded phy for transmission (1mbps default) + * name: "Hello" // The name of the device + * showName: true/false // include full name, or nothing + * discoverable: true/false // general discoverable, or limited - default is limited + * connectable: true/false // whether device is connectable - default is true + * scannable : true/false // whether device can be scanned for scan response packets - default is true + * whenConnected : true/false // keep advertising when connected (nRF52 only) + * // switches to advertising as non-connectable when it is connected + * interval: 600 // Advertising interval in msec, between 20 and 10000 (default is 375ms) + * manufacturer: 0x0590 // IF sending manufacturer data, this is the manufacturer ID + * manufacturerData: [...] // IF sending manufacturer data, this is an array of data + * phy: "1mbps/2mbps/coded" // (NRF52840 only) use the long-range coded phy for transmission (1mbps default) * } * ``` * Setting `connectable` and `scannable` to false gives the lowest power @@ -2282,7 +2313,7 @@ declare class Socket { * end : call the 'end' function on the destination when the source is finished * @url http://www.espruino.com/Reference#l_Socket_pipe */ - pipe(destination: any, options?: any): void; + pipe(destination: any, options?: PipeOptions): void /** * This function writes the `data` argument as a string. Data that is passed in @@ -2477,7 +2508,7 @@ declare class httpSRq { * end : call the 'end' function on the destination when the source is finished * @url http://www.espruino.com/Reference#l_httpSRq_pipe */ - pipe(destination: any, options?: any): void; + pipe(dest: any, options?: PipeOptions): void } /** @@ -2700,7 +2731,7 @@ declare class httpCRs { * end : call the 'end' function on the destination when the source is finished * @url http://www.espruino.com/Reference#l_httpCRs_pipe */ - pipe(destination: any, options?: any): void; + pipe(destination: any, options?: PipeOptions): void } /** @@ -2914,20 +2945,11 @@ declare class Microbit { } -/** - * This is the File object - it allows you to stream data to and from files (As - * opposed to the `require('fs').readFile(..)` style functions that read an entire - * file). - * To create a File object, you must type ```var fd = - * E.openFile('filepath','mode')``` - see [E.openFile](#l_E_openFile) for more - * information. - * **Note:** If you want to remove an SD card after you have started using it, you - * *must* call `E.unmountSD()` or you may cause damage to the card. - * @url http://www.espruino.com/Reference#File - */ -declare class File { +interface FileConstructor { +} +interface File { /** * Close an open file. * @url http://www.espruino.com/Reference#l_File_close @@ -2984,9 +3006,22 @@ declare class File { * end : call the 'end' function on the destination when the source is finished * @url http://www.espruino.com/Reference#l_File_pipe */ - pipe(destination: any, options?: any): void; + pipe(destination: any, options?: PipeOptions): void } +/** + * This is the File object - it allows you to stream data to and from files (As + * opposed to the `require('fs').readFile(..)` style functions that read an entire + * file). + * To create a File object, you must type ```var fd = + * E.openFile('filepath','mode')``` - see [E.openFile](#l_E_openFile) for more + * information. + * **Note:** If you want to remove an SD card after you have started using it, you + * *must* call `E.unmountSD()` or you may cause damage to the card. + * @url http://www.espruino.com/Reference#File + */ +declare const File: FileConstructor + /** * Class containing [Puck.js's](http://www.puck-js.com) utility functions. * @url http://www.espruino.com/Reference#Puck @@ -3527,7 +3562,7 @@ declare class Bangle { * @param {string} event - The event to listen to. * @param {(button: number, xy: any) => void} callback - A function that is executed when the event occurs. Its arguments are: * * `button` `1` for left, `2` for right - * * `xy` Object of form `{x,y}` containing touch coordinates (if the device supports full touch). Clipped to 0..175 (LCD pixel coordinates) on firmware 2v13 and later. + * * `xy` Object of form `{x,y,type}` containing touch coordinates (if the device supports full touch). Clipped to 0..175 (LCD pixel coordinates) on firmware 2v13 and later.`type` is only available on Bangle.js 2 and is an integer, either 0 for swift touches or 2 for longer ones. * @url http://www.espruino.com/Reference#l_Bangle_touch */ static on(event: "touch", callback: TouchCallback): void; @@ -7984,7 +8019,7 @@ declare class E { * end : call the 'end' function on the destination when the source is finished * @url http://www.espruino.com/Reference#l_E_pipe */ - static pipe(source: any, destination: any, options?: { chunkSize?: number, end?: boolean, complete?: () => void }): void + static pipe(source: any, destination: any, options?: PipeOptions): void /** * Create an ArrayBuffer from the given string. This is done via a reference, not a @@ -8621,6 +8656,12 @@ declare class E { /** * This class provides a software-defined OneWire master. It is designed to be * similar to Arduino's OneWire library. + * **Note:** OneWire commands are very timing-sensitive, and on nRF52 devices + * (Bluetooth LE Espruino boards) the bluetooth stack can get in the way. Before + * version 2v18 of Espruino OneWire could be unreliable, but as of firmware 2v18 + * Espruino now schedules OneWire accesses with the bluetooth stack to ensure it doesn't interfere. + * OneWire is now reliable but some functions such as `OneWire.search` can now take + * a while to execute (around 1 second). * @url http://www.espruino.com/Reference#OneWire */ declare class OneWire { @@ -9680,6 +9721,19 @@ declare class StorageFile { * @url http://www.espruino.com/Reference#l_StorageFile_erase */ erase(): void; + + /** + * Pipe this file to a stream (an object with a 'write' method) + * + * @param {any} destination - The destination file/stream that will receive content from the source. + * @param {any} [options] + * [optional] An object `{ chunkSize : int=32, end : bool=true, complete : function }` + * chunkSize : The amount of data to pipe from source to destination at a time + * complete : a function to call when the pipe activity is complete + * end : call the 'end' function on the destination when the source is finished + * @url http://www.espruino.com/Reference#l_StorageFile_pipe + */ + pipe(destination: any, options?: PipeOptions): void } interface processConstructor { @@ -10014,7 +10068,7 @@ declare class Serial { * end : call the 'end' function on the destination when the source is finished * @url http://www.espruino.com/Reference#l_Serial_pipe */ - pipe(destination: any, options?: any): void; + pipe(destination: any, options?: PipeOptions): void } interface StringConstructor { @@ -12004,6 +12058,10 @@ declare module "neopixel" { * white). These are still supported but the array of data supplied must still be a * multiple of 3 bytes long. Just round the size up - it won't cause any problems. * * On some platforms like STM32, pins capable of hardware SPI MOSI are required. + * * On STM32, `neopixel.write` chooses a hardware SPI device to output the signal on + * and uses that. However in order to avoid spikes in the output, if that hardware device is *already + * initialised* it will not be re-initialised. This means that if the SPI device was already in use, + * you may have to use `SPIx.setup({baud:3200000, mosi:the_pin})` to force it to be re-setup on the pin. * * Espruino devices tend to have 3.3v IO, while WS2812/etc run off of 5v. Many * WS2812 will only register a logic '1' at 70% of their input voltage - so if * powering them off 5v you will not be able to send them data reliably. You can @@ -12928,7 +12986,7 @@ declare module "fs" { * end : call the 'end' function on the destination when the source is finished * @url http://www.espruino.com/Reference#l_fs_pipe */ - function pipe(source: any, destination: any, options?: any): void; + function pipe(destination: any, options?: PipeOptions): void } /** @@ -13285,7 +13343,7 @@ declare module "Storage" { /** * The Flash Storage system is journaling. To make the most of the limited write - * cycles of Flash memory, Espruino marks deleted/replaced files as garbage and + * cycles of Flash memory, Espruino marks deleted/replaced files as garbage/trash files and * moves on to a fresh part of flash memory. Espruino only fully erases those files * when it is running low on flash, or when `compact` is called. * `compact` may fail if there isn't enough RAM free on the stack to use as swap @@ -13324,7 +13382,7 @@ declare module "Storage" { * fileBytes // How many bytes of allocated files do we have? * fileCount // How many allocated files do we have? * trashBytes // How many bytes of trash files do we have? - * trashCount // How many trash files do we have? + * trashCount // How many trash files do we have? (can be cleared with .compact) * } * ``` * @returns {any} An object containing info about the current Storage system From 079598bc4884b2b58436ff8288b0cc9baa40b3ae Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 21 Apr 2023 11:38:27 +0100 Subject: [PATCH 0788/1725] Merge in https://github.com/espruino/BangleApps/pull/2702 (PR included a bunch of other stuff not required) --- apps/xxlmessage/ChangeLog | 2 + apps/xxlmessage/README.md | 13 ++ apps/xxlmessage/app-icon.js | 1 + apps/xxlmessage/app.js | 42 +++++++ apps/xxlmessage/app.png | Bin 0 -> 315 bytes apps/xxlmessage/boot.js | 1 + apps/xxlmessage/lib-unbuffered.js | 133 ++++++++++++++++++++ apps/xxlmessage/lib.js | 194 ++++++++++++++++++++++++++++++ apps/xxlmessage/metadata.json | 20 +++ apps/xxlmessage/screenshot.png | Bin 0 -> 2032 bytes 10 files changed, 406 insertions(+) create mode 100644 apps/xxlmessage/ChangeLog create mode 100644 apps/xxlmessage/README.md create mode 100644 apps/xxlmessage/app-icon.js create mode 100644 apps/xxlmessage/app.js create mode 100644 apps/xxlmessage/app.png create mode 100644 apps/xxlmessage/boot.js create mode 100644 apps/xxlmessage/lib-unbuffered.js create mode 100644 apps/xxlmessage/lib.js create mode 100644 apps/xxlmessage/metadata.json create mode 100644 apps/xxlmessage/screenshot.png diff --git a/apps/xxlmessage/ChangeLog b/apps/xxlmessage/ChangeLog new file mode 100644 index 000000000..4c587db52 --- /dev/null +++ b/apps/xxlmessage/ChangeLog @@ -0,0 +1,2 @@ +0.01: New App! +0.02: Display icon of the message origin's app \ No newline at end of file diff --git a/apps/xxlmessage/README.md b/apps/xxlmessage/README.md new file mode 100644 index 000000000..40e62fdd2 --- /dev/null +++ b/apps/xxlmessage/README.md @@ -0,0 +1,13 @@ +# XXL Message app +This app displays an incomming message with a very large +font and scrolls the text. For people who can't read the +menu font without glasses, this might be an alternative +to the default messages UI app. + +When arrived, new messages are displayed instantly on the screen. +When the message fully scrolled two times or +if you touch the screen or press the button, +the default clock is loaded. + +Nothing more, nothing less. + diff --git a/apps/xxlmessage/app-icon.js b/apps/xxlmessage/app-icon.js new file mode 100644 index 000000000..ee6642f11 --- /dev/null +++ b/apps/xxlmessage/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwcA/4A/AH4A/AH2SpMkAQ1/CI3+CI+fB4v5AQQRFk4JB84REBAXkCIgLFEAYsCIgo+BCIwLEC4oRHF4w7CCJAIRGQaDECLQIRLKB9QUKDFRdKB3GQYwAFBwpKFAAhEFAQokHAH4A/AH4A/ABA")) \ No newline at end of file diff --git a/apps/xxlmessage/app.js b/apps/xxlmessage/app.js new file mode 100644 index 000000000..207221fc6 --- /dev/null +++ b/apps/xxlmessage/app.js @@ -0,0 +1,42 @@ + + +if (require("Storage").read("messagegui")){ // "messagegui" module is installed + require("messages").openGUI(); + console.log("Opened Messages UI"); + Bangle.load("messagegui"); +} + + +function stop() { + g.setBgColor(0, 1, 1); + g.clear(); + g.reset(); + load(); +} +var txt = 'No Messages'; +try{ + console.log("try delete messages"); + var MESSAGES = require("messages").getMessages(); + MESSAGES = []; + txt = 'Deleted all messages'; + console.log("worked"); +}catch(e){} +g.setBgColor('#ffff00'); +g.setColor('#000000'); +g.clear(); + +g.setFont('6x8:3'); +g.setFontAlign(0, 0); +g.setColor('#000000'); +g.drawString(g.wrapString(txt, g.getWidth()).join("\n"), g.getWidth()/2, g.getHeight()/2); + +Bangle.loadWidgets(); +Bangle.drawWidgets(); + +//E.showMessage(txt,{ +// title:"XXL Messages", +// img:atob("FBQBAfgAf+Af/4P//D+fx/n+f5/v+f//n//5//+f//n////3//5/n+P//D//wf/4B/4AH4A=") // (i) +//}) + +setTimeout(stop, 4000); + diff --git a/apps/xxlmessage/app.png b/apps/xxlmessage/app.png new file mode 100644 index 0000000000000000000000000000000000000000..88dae4c66789915451183a6f1d860be86908d95c GIT binary patch literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@H(7p!ia> zONTwMEm$OyW6_ei6DE~8rHHtIHFqeSGMwv?xhz%Ssl^tp);j&N#?N0*`(22B`J%RZ rSEbdLHKLpU|8Ru32<|l7-~X7dHq;*x?>3YG`i;TU)z4*}Q$iB}(i3^k literal 0 HcmV?d00001 diff --git a/apps/xxlmessage/boot.js b/apps/xxlmessage/boot.js new file mode 100644 index 000000000..62053a0b9 --- /dev/null +++ b/apps/xxlmessage/boot.js @@ -0,0 +1 @@ +Bangle.on("message", (type, msg) => require("xxlmessage.lib.js").listener(type, msg)); \ No newline at end of file diff --git a/apps/xxlmessage/lib-unbuffered.js b/apps/xxlmessage/lib-unbuffered.js new file mode 100644 index 000000000..68fb2a7a2 --- /dev/null +++ b/apps/xxlmessage/lib-unbuffered.js @@ -0,0 +1,133 @@ +// GB({"t":"notify","id":1575479849,"src":"Hangouts","title":"A Name","body":"message contents"}) +var xxl = { +// private: + msg: [], + drawTimeout: undefined, + xpos : 0, + loopCount : 0, + txt:'', + wtot:0, + img:undefined, + imgcol:'#ffffff', + + setFont: function(){ + g.setFont('6x8:5x9'); // TODO this is a bottleneck. How to prepare the font once? + }, + +//public: + show: function(theMessage){ + console.log("theMessage is:"); + console.log(theMessage); + xxl.msg = theMessage; + // prepare string and metrics + xxl.txt = xxl.msg.src + ": " + xxl.msg.body; + xxl.setFont(); + xxl.wtot = g.stringMetrics(xxl.txt).width; + xxl.xpos = 2 * g.getWidth(); + + // get icon + xxl.img = require("messageicons").getImage(xxl.msg); + xxl.imgcol = require("messageicons").getColor(xxl.msg, '#ffffff'); + + Bangle.loadWidgets(); + + Bangle.on('touch', function (b, xy) { + xxl.stop(); + }); + setWatch(xxl.stop, BTN1); + Bangle.buzz(500,1); + + xxl.draw(); + }, + +//private: + // schedule a draw for 30 FPS + queueDraw: function() { + if (xxl.drawTimeout) { return; } // clearTimeout(xxl.drawTimeout); } + xxl.drawTimeout = setTimeout(function () { + xxl.drawTimeout = undefined; + xxl.draw(); + }, 33 - (Date.now() % 33)); + }, + + + stop:function() { + console.log("stop"); + if (xxl.drawTimeout) { clearTimeout(xxl.drawTimeout); } + xxl.drawTimeout = undefined; + g.reset(); + g.setBgColor('#ffff00'); + g.clear(); + + // Bangle.setLCDPower(0); // light off + // Bangle.setLocked(true); // disable touch + + setTimeout(load, 100); + }, + + draw: function() { + wh = 24; // widgets height + var gw = g.getWidth(); + var h = (g.getHeight() - wh)/2; // height of drawing area per stripe + + Bangle.setLCDPower(1); // light on + Bangle.setLocked(false); // keep the touch input active + g.setBgColor('#000000'); + g.clear(); + + if (xxl.img) { // 24x24 + g.setColor(xxl.imgcol); + g.drawImage(xxl.img + , gw/2, wh+h // center point + ,{rotate:0,scale:2} + ); + } + + xxl.setFont(); + g.setFontAlign(-1, -1); + + // draw both lines + g.setBgColor('#000000'); + g.setColor('#ffffff'); + g.drawString(xxl.txt, xxl.xpos, wh); + g.drawString(xxl.txt, xxl.xpos - gw - 32, h + wh); + + g.reset(); + // widget redraw + Bangle.drawWidgets(); + + // scroll + xxl.xpos -= 25; + if (xxl.xpos < -xxl.wtot - gw * 2) { + ++xxl.loopCount; + if (xxl.loopCount > 2) { + xxl.stop(); + return; + } + xxl.xpos = 3 * gw; + } + // loop drawing + xxl.queueDraw(); + } +}; + + +// for IDE +// var exports={}; + +exports.listener = function (type, msg) { + // msg = {t:"add",id:int, src,title,subject,body,sender,tel, important:bool, new:bool} + if (!msg) return; + if (type === 'text' && msg.t !== 'remove') { + msg.handled = true; // don't do anything else with the message + xxl.show(msg); + } +}; + +// debug +// Bangle.on("message", (type, msg) => exports.listener(type, msg)); + + + + + diff --git a/apps/xxlmessage/lib.js b/apps/xxlmessage/lib.js new file mode 100644 index 000000000..9aa85462d --- /dev/null +++ b/apps/xxlmessage/lib.js @@ -0,0 +1,194 @@ +// GB({t:"notify",id:1680248072,src:"SMS Messenger",title:"Fabia",body:"Nein"}) +// msg = {"t":"add","id":1680248072,"src":"SMS Messenger","title":"Fabia","body":"Nein","new":true,"handled":true} +var xxl = { +// private: + msg: [], + drawTimeout: undefined, + xpos : 0, + loopCount : 0, + txt:'', + wtot:0, + img:undefined, + imgcol:'#ffffff', + + // gfx buffer + bufimg:undefined, + bufpal4color:undefined, + buffnt:'6x15', // font to use. Built-in: 4x6, 6x8,12x20,6x15,Vector + bufw:0, // width of buffer for all lines + bufh:0, // height of buffer + buflin:0, // number of lines to print + bufscale:0, // scale factor for buffer to screen + +// public: + show: function(theMessage){ + // console.log("theMessage is:"); + // console.log(theMessage); + xxl.msg = theMessage; + + // get icon + try{ + xxl.img = require("messageicons").getImage(xxl.msg); + xxl.imgcol = (require("messageicons").getColor(xxl.msg, '#ffffff')||'#00ffff'); + }catch(e){} + + Bangle.loadWidgets(); + + Bangle.on('touch', function (b, xy) { + xxl.stop(); + }); + setWatch(xxl.stop, BTN1); + Bangle.buzz(500,1); + + + // offscreen gfx buffer + // screen is 176x176 + // font should be scaled 5x9=30x72px + // built in fonts are 4x6, 6x8,12x20,6x15,Vector + xxl.bufpal4color = new Uint16Array([0x0000,0xFFFF,0x7BEF,0xAFE5],0,2); // b,w,grey,greenyellow + g.setFont(xxl.buffnt); + var hfont = g.getFontHeight(); + xxl.bufscale=parseInt((g.getHeight() - 24/*widgets*/)/2) / hfont; + xxl.buflin=2; // number of lines + xxl.bufw=(g.getWidth() * xxl.buflin) / xxl.bufscale; // 6x15 font scaled by 5 on 176 screen width + xxl.bufh=hfont; + + xxl.bufimg = Graphics.createArrayBuffer(xxl.bufw,xxl.bufh,2,{msb:true}); + + // prepare string and metrics + xxl.txt = (xxl.msg.title||(xxl.msg.src||"MSG")) + ": " + (xxl.msg.body||"-x-"); + g.setFont(xxl.buffnt); + xxl.wtot = g.stringMetrics(xxl.txt).width; + xxl.xpos = xxl.bufw; // g.getWidth(); + + xxl.draw(); + }, + +//private: + // schedule a draw for 60 FPS + queueDraw: function() { + if (xxl.drawTimeout) { return; } // clearTimeout(xxl.drawTimeout); } + xxl.drawTimeout = setTimeout(function () { + xxl.drawTimeout = undefined; + xxl.draw(); + }, 16 - (Date.now() % 16)); + }, + + + stop:function() { + // console.log("stop"); + if (xxl.drawTimeout) { clearTimeout(xxl.drawTimeout); } + xxl.drawTimeout = undefined; + g.reset(); + g.setBgColor('#ffff00'); + g.clear(); + + // Bangle.setLCDPower(0); // light off + // Bangle.setLocked(true); // disable touch + + setTimeout(function(){Bangle.showClock();}, 100); + }, + + // this is even slower than the scaled printing :( + // megaPrintBufferd: function(txt, x, y){ + // xxl.bufimg.setFont(xxl.buffnt); + // xxl.bufimg.setFontAlign(-1, -1); + // xxl.bufimg.setColor(1); // index in palette + // xxl.bufimg.clear(); + // xxl.bufimg.drawString(txt, x, 0); + // for(var i = 0; i 2) { + xxl.stop(); + return; + } + xxl.xpos = (3*xxl.bufw)/2; + } + // loop drawing + xxl.queueDraw(); + } +}; + + +// for IDE +// var exports={}; + +exports.listener = function (type, msg) { + // msg = {t:"add",id:int, src,title,subject,body,sender,tel, important:bool, new:bool} + if (!msg) return; + if (type === 'text' && msg.t !== 'remove') { + msg.handled = true; // don't do anything else with the message + xxl.show(msg); + } +}; + +// debug +// var msg = {t:"add",id:12341, src:"SMS",title:undefined,subject:undefined,body:"yes",sender:"phoo",tel:undefined, important:false, new:true}; +// exports.listener('text', msg); + + + + + + + diff --git a/apps/xxlmessage/metadata.json b/apps/xxlmessage/metadata.json new file mode 100644 index 000000000..f8150f0e7 --- /dev/null +++ b/apps/xxlmessage/metadata.json @@ -0,0 +1,20 @@ +{ + "id": "xxlmessage", + "name": "XXL Message", + "version": "0.02", + "shortName": "XXL Msg", + "description": "App to display large notifications from iOS and Gadgetbridge/Android", + "icon": "app.png", + "type": "app", + "tags": "tool,system", + "supports": ["BANGLEJS","BANGLEJS2"], + "dependencies" : {"messages":"module", "messageicons":"module" }, + "readme": "README.md", + "screenshots": [{"url":"screenshot.png"}], + "storage": [ + {"name":"xxlmessage.app.js","url":"app.js"}, + {"name":"xxlmessage.lib.js","url":"lib.js"}, + {"name":"xxlmessage.boot.js","url":"boot.js"}, + {"name":"xxlmessage.img","url":"app-icon.js","evaluate":true} + ] +} \ No newline at end of file diff --git a/apps/xxlmessage/screenshot.png b/apps/xxlmessage/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..5d9fbcf55317dae1572772bd31abbf209720acdc GIT binary patch literal 2032 zcmd^=i8~tx1ID9TN0GIqTgA0%&1aNsG~y_8WRW`Bs-ud84~b}rtHSDN=Tl#crf92* zm^kYQ77`T|v|>`Et&xxer7R_jI|wrSFZMipp5Obv&+jjI?_c(UYa9g~1pojV2sc;n zgKhacDoO|4Oq)XbXa^R}5ZUG4Z0PxMf^o8RilT$A z<*0yECh1@mLvrzS;IXgrt8zA-P8$`DU%h-V7 z*XFK?U>0vn?^ZH~aJ6NJ@>FKm?~Ye~K4GYCrEjuAnn=BfJ#IYQT~V))eU%~KEHGCD zJ^8ZLvD^wZ-mVF6i}Xocb&oR9Z*}y1VC^${qA$n7_?q*y*&7Or)mWnqH3|9%v#YzI zs?g?~8j;`f;Xh|W+MaAZ=akpLJbEHc7`qIklNw9|M zew}(zM!0M9$8yA#!-DPt{pK~FOQ!GX#3ag)k!#Ry{SZ^!ta)gp6EUWJDiWise9!98 zKbYY=codiB2w!ral+Ha)D?znnZd|};YURgue`*M_j(uDn&j@1ylLT2X9jb)+0^%2u zOVO?cqh9V6ZRdT+IuC^)^=NjuG8;u)G;fAgpH}|LH#Jt;kj1YP1j{}_T(X;|c=%VFga#E zIt2ZDa2W5X({JrVEuNGOX1ab!K$$@5$BpN;L&u=AN!a&tac}PK9E?@?3kmFqIYJZA zlABi#AA5J#a{18)kPs+eHI;=W^zQJhvk5U{P@VJtos74f!7f*&;8#_zCR4++d$ChP zZFE$xDa`v9jfbOlQmzt{U)*FQ%iq8&zpcwWNxMJ|DO$M4*VZU|rD>hYA$OG~VWLX% zKu_qwJ88zKee1@{>JgJW5`vb+;0G?$Wn2zk#k0*HW4KUxxXLGeVLOu6M4~7HJ^2l3 z5Zfj}S^Qzh$|aEzbbpnxk1`<@PcOWFJt$uu1{qtmhG+H%*tbO~Bi!pYj_{-uiHA_h zm`{B)@&)u+p1JTvqiRN)?P7ZiDl>*B#iZlX*+62WQf(z9mNBkZ#T*zE5X>ux1L#mk zzdE994B7ehbcp8`=REDC{UZZ*I)*Hr4>u`2X&tyzMs7vWp}NS+`5XU>N-hmiz4fxo zg%%}y|2k}uEvEC1F9oLF+-qI&Nrd%4?7fNimtMz=a(dzA4o@M>A1~hcZARy*sd=DZ z(=oGvhr(AT;zYsA{Fls|&_JNY0sQOK;+~-_wh&L-uZ|#bjy~mI)mIHZ%=Q z_{(ehxjzS=;K$_{PJaX4dA3gGcGx`)ETHQN5TIWj418QEOdHWwXnR4(fcS+ll+y91 z3iPMs&pWYi^{q0@Xj@EIMa$r;Oq--@=N^4u*dTgvM-8_JbWc^X3v;rnrqOhQFc54h zOS7V14#d={9om!xWr0dmO)XY9OU@~qlN6Kze;$jLu3pJU=Zyy2I!ssYj&xnc4!mQW5AldtEpSL{AkOXyz_`?VD1v&8;x*WveIFkEkW%*$>B2 z-2FMXv%(Oeuw8^~J8#x94vY+SSapqLRn(rQ#|olj#8%56rW)fC2bFcx zJ$~JFRPB>6a1)$~>eYn^8T!km&kO#d+x!{hah3s{PwlI;k%4q@8P!_2xJK)h2|ODp zkVJV&%U|z0d=a8TO0ugJCt^fc4 literal 0 HcmV?d00001 From 737bdd996c5a1fc62bf05da7e3a9f4fa88ef04c2 Mon Sep 17 00:00:00 2001 From: KungPhoo Date: Fri, 21 Apr 2023 14:08:28 +0200 Subject: [PATCH 0789/1725] -glbasic clock: changed font, so '5' and '6' don't look similar. --- apps/glbasic/ChangeLog | 2 +- apps/glbasic/glbasic.app.js | 75 ++++++++++++++++++++++++++++++------- apps/glbasic/metadata.json | 2 +- 3 files changed, 64 insertions(+), 15 deletions(-) diff --git a/apps/glbasic/ChangeLog b/apps/glbasic/ChangeLog index d97fd44d5..1f3a1b643 100644 --- a/apps/glbasic/ChangeLog +++ b/apps/glbasic/ChangeLog @@ -1,3 +1,3 @@ 0.20: New App! 0.21: Tell clock widgets to hide. - +0.22: Changed font so 5 and 6 are not similar diff --git a/apps/glbasic/glbasic.app.js b/apps/glbasic/glbasic.app.js index c1f82f74c..4f6c9ffb3 100644 --- a/apps/glbasic/glbasic.app.js +++ b/apps/glbasic/glbasic.app.js @@ -1,13 +1,36 @@ -Graphics.prototype.setFontLECO1976Regular42 = function (scale) { + +Graphics.prototype.setFontLECO1976Regular5fix42 = function(scale) { // Actual height 42 (41 - 0) - g.setFontCustom(atob("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAA/AAAAAAAAH/AAAAAAAA//AAAAAAAP//AAAAAAB///AAAAAAP///AAAAAB////AAAAAf////AAAAD////4AAAAf////AAAAH////4AAAA////+AAAAA////wAAAAA///+AAAAAA///gAAAAAA//8AAAAAAA//gAAAAAAA/4AAAAAAAA/AAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAH/AAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//h////AAA//h////AAA//h////AAA//h////AAA//h////AAA//h////AAA//h////AAA//h////AAA//h////AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////gD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4AAAH/AAA/4B/gH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////wAAAAA////wAAAAA////wAAAAA////wAAAAA////wAAAAA////wAAAAA////wAAAAA////wAAAAA////wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAAAAB/wAAAAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////x//AAA////x//AAA////x//AAA////x//AAA////x//AAA////x//AAA////x//AAA////x//AAA////x//AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/wB////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/4B////AAA/wB////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//gAAAAAAA//gAAAAAAA//gAAAAAAA//gAAAAAAA//gAAAAAAA//gAAAAAAA//gAAAAAAA//gAAAAAAA//gAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA/4AAAAAAAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA////wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA/4B/wH/AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAA///////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+AAH/AAAAP+AAH/AAAAP+AAH/AAAAP+AAH/AAAAP+AAH/AAAAP+AAH/AAAAP+AAH/AAAAP+AAH/AAAAH+AAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"), 46, atob("ERkmHyYmJiYmJCYmEQ=="), 60 + (scale << 8) + (1 << 16)); + this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ADMD/gHFv/AAwkHB3QAtngGFj47Fh5KFh//BwkH/4OEgf/BwgGCBwcBAwIOEAwQODAwX/wB7CCos/Awo/BAAPgDgvwJwgGEBwX4LoplFAw0P/yCF/4GFh6YGKgQAhNAZGDAwZ4CB3ibCg4ODZoYO/BwyV/BxIA7YX7C/YRRZCAAZZDB2AAgNAMHO4v4O42PB3P4AIL+EwABBQwQO/BwgABBwgGBB34A0h/wAYMDSogDBSogGBUgoOOd/4O2AAbgEAAIO+AGY7C/AHDIIWAB3wQCBwjiDB34OGf1gOdAGbgDgZKFwF/JQn4g4O3/ABBBwmAB34OLcAgOBd4oO6AGY5CJQoADd4gO5f2wOdf1IOdAEgqBA4v//AOGwAO5AwqGCB34OJAAbRCAwbgDB3QAzO/4OL/ABBg4ODwABBv4O/BwyV/BxIAzHYX4gZKFSogOCSowOxf2gOdf1YOdAGkH/EAgY7DSgMASoSWCCIIO3ADg='))), + 46, + atob("ERkmICYmJiYmJCYmEQ=="), + 60+(scale<<8)+(1<<16) + ); + return this; }; -Graphics.prototype.setFontLECO1976Regular22 = function (scale) { +Graphics.prototype.setFontLECO1976Regular5fix22 = function(scale) { // Actual height 22 (21 - 0) - g.setFontCustom(atob("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/nA/+cD/5wP/nAAAAAAAAPwAA/gAD+AAPwAAAAAD+AAP4AA/gAAAAAAAAAAAAAcOAP//A//8D//wP//AHDgAcOAP//A//8D//wP//AHDgAAAAAAAAH/jgf+OB/44H/jj8OP/w4//Dj/8OPxw/4HD/gcP+Bw/4AAAAAAAP+AA/8AD/wQOHHA4c8D//wP/8A//gAD4AAfAAH/8A//wP//A84cDjhwIP/AA/8AB/wAAAAAAAD//wP//A//8D//wOHHA4ccDhxwOHHA4f8Dh/wOH/A4f8ABwAAAAAAAAD8AAP4AA/gAD8AAAAAAAAAAAEAAD+AB//A///v/D//gB/wABwAAAAAADgAA/wAf/4P8///wf/4AP8AAOAAAAAAAAAyAAHcAAPwAD/gAP/AA/8AA/AAH8AAMwAAAAAAAAAAAAADgAAOAAA4AAf8AD/wAP/AA/8AAOAAA4AADgAAAAAAAAAAD8AAfwAB/AAD8AAAAAAAADgAAOAAA4AADgAAOAAA4AADgAAAAAAAAAADgAAOAAA4AADgAAAAAAAAABwAB/AA/8A//gP/gA/wADwAAIAAAAAAD//wP//A//8D//wOAHA4AcDgBwOAHA//8D//wP//A//8AAAAAAAA4AcDgBwOAHA//8D//wP//A//8AABwAAHAAAcAAAAAAAA+f8D5/wPn/A+f8DhxwOHHA4ccDhxwP/HA/8cD/xwP/HAAAAAAAAOAHA4AcDhxwOHHA4ccDhxwOHHA4ccD//wP//A//8D//wAAAAAAAD/wAP/AA/8AD/wAAHAAAcAABwAAHAA//8D//wP//A//8AAAAAAAA/98D/3wP/fA/98DhxwOHHA4ccDhxwOH/A4f8Dh/wOH/AAAAAAAAP//A//8D//wP//A4ccDhxwOHHA4ccDh/wOH/A4f8Dh/wAAAAAAAD4AAPgAA+AADgAAOAAA4AADgAAP//A//8D//wP//AAAAAAAAP//A//8D//wP//A4ccDhxwOHHA4ccD//wP//A//8D//wAAAAAAAD/xwP/HA/8cD/xwOHHA4ccDhxwOHHA//8D//wP//A//8AAAAAAAAOA4A4DgDgOAOA4AAAAAAAAOA/A4H8DgfwOA/AAAAAAAAB4AAPwAA/AAD8AAf4ABzgAPPAA8cAHh4AAAAAAAAAAAAHHAAccABxwAHHAAccABxwAHHAAccABxwAHHAAAAAAAAAOHAA4cADzwAPPAAf4AB/gAD8AAPwAAeAAB4AAAAAAAAA+AAD4AAPgAA+ecDh9wOH3A4fcDhwAP/AA/8AD/wAP/AAAAAAAAAP//4///j//+P//44ADjn/OOf845/zjnHOP8c4//zj//OP/84AAAAAAAP//A//8D//wP//A4cADhwAOHAA4cAD//wP//A//8D//wAAAAAAAD//wP//A//8D//wOHHA4ccDhxwOHHA//8D//wP9/A/j8AAAAAAAA//8D//wP//A//8DgBwOAHA4AcDgBwOAHA4AcDgBwOAHAAAAAAAAP//A//8D//wP//A4AcDgBwOAHA8A8D//wH/+AP/wAf+AAAAAAAAD//wP//A//8D//wOHHA4ccDhxwOHHA4ccDhxwOAHA4AcAAAAAAAA//8D//wP//A//8DhwAOHAA4cADhwAOHAA4cADgAAOAAAAAAD//wP//A//8D//wOAHA4ccDhxwOHHA4f8Dh/wOH/A4f8AAAAAAAA//8D//wP//A//8ABwAAHAAAcAABwAP//A//8D//wP//AAAAAAAAP//A//8D//wP//AAAAAAAAOAHA4AcDgBwOAHA4AcDgBwOAHA//8D//wP//A//8AAAAAAAA//8D//wP//A//8AHwAA/AAP8AB/wAPn/A8f8DB/wIH/AAAAAAAAP//A//8D//wP//AAAcAABwAAHAAAcAABwAAHAAAAAAAAP//A//8D//wP//Af8AAP+AAH/AAD8AAHwAD/AB/wAf8AP+AA//8D//wP//AAAAAAAAP//A//8D//wP//AfwAAfwAAfwAAfwAAfwP//A//8D//wAAAAAAAAAAAP//A//8D//wP//A4AcDgBwOAHA4AcD//wP//A//8D//wAAAAAAAD//wP//A//8D//wOHAA4cADhwAOHAA/8AD/wAP/AA/8AAAAAP//A//8D//wP//A4AcDgBwOAHA4AcD//+P//4///j//+AAA4AADgAAAP//A//8D//wP//A4eADh+AOH8A4f4D/3wP/HA/8MD/wQAAAAAAAD/xwP/HA/8cD/xwOHHA4ccDhxwOHHA4f8Dh/wOH/A4f8AAAAAAAA4AADgAAOAAA//8D//wP//A//8DgAAOAAA4AADgAAAAAA//8D//wP//A//8AABwAAHAAAcAABwP//A//8D//wP//AAAADAAAPgAA/wAD/4AB/8AA/8AAfwAB/AA/8Af+AP/AA/wAD4AAMAAA4AAD+AAP/gA//8AH/wAB/AAf8Af/wP/4A/4AD/gAP/4AH/8AB/wAB/AB/8D//wP/gA/gADgAAIABA4AcDwDwPw/Afn4Af+AA/wAD/AA//AH5+A/D8DwDwOAHAgAEAAAAP/AA/8AD/wAP/AAAf8AB/wAH/AAf8D/wAP/AA/8AD/wAAAAAAAADh/wOH/A4f8Dh/wOHHA4ccDhxwOHHA/8cD/xwP/HA/8cAAAAAAAAf//9///3///f//9wAA3AADcAAMAAAOAAA/gAD/wAH/8AB/8AA/wAAPAAAEAAAAHAADcAANwAB3///f//9///wAA"), 32, atob("BwYLDg4UDwYJCQwMBgkGCQ4MDg4ODg4NDg4GBgwMDA4PDg4ODg4NDg4GDQ4MEg8ODQ8ODgwODhQODg4ICQg="), 22 + (scale << 8) + (1 << 16)); + this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('AAs8AYV8AaQjOgP8AYMPAYV/AYMH/4DBn///EA///4ADB/wSB//gAYQlCCIIABCIIAFDYIjBAaYjBLYIDTF64AH+CDCGdLLV/i7C/wfCAZ/4/BPCAaTiBAaaHBABaPIIaxPMcbxbBAapgCAahPhVYLDTUbA7CAZ/wv5PKN6xPzAof+AaTuXdcCbuJ8H4ngDCE4QDOJ+8PgBPBh+AE4IDPAA4'))), + 46, + atob("CQ0UERQUFBQUExQUCQ=="), + 32+(scale<<8)+(1<<16) + ); + return this; }; +Graphics.prototype.setFontLECO1976Regular5fix11 = function(scale) { + // Actual height 11 (10 - 0) + this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('AAMBwEDgEGgECgF8g/4v/w/+B+ARBg//h/+j/8mEYsEw//h//D/+AgEMg0Yhk/DofggHAFwMAh9+j38nv4scw41h/nD/OH+YdC5kxzAODxgsBw47CIIM/wF/gAGBhkAjBKFCAN/mH+FgUZw0zhl+jH8mP4CAJZEBwVmBwdj+HwgPggfAQoIxBFgJoDSwUDJQhZDO4QsB4CVB+cP80fNAiVGgaWDmAA=='))), + 46, + atob("BAYJCAkJCQkJCQkJBA=="), + 15+(scale<<8)+(1<<16) + ); + return this; +}; require("Font7x11Numeric7Seg").add(Graphics); @@ -60,7 +83,7 @@ function drawCal() { const CAL_Y = g.getHeight() - 44; // Bangle.appRect.y+this.DATE_FONT_SIZE()+10+this.TIME_FONT_SIZE()+3; const CAL_AREA_H = 44; // g.getHeight()-CAL_Y+24; //+24: top widgtes only const CELL_W = g.getWidth() / 7; //cell width - const CELL_H = (CAL_AREA_H - DAY_NAME_FONT_SIZE) / 3; //cell heigth + const CELL_H = 1+parseInt((CAL_AREA_H - DAY_NAME_FONT_SIZE) / 3); //cell heigth const DAY_NUM_FONT_SIZE = Math.min(CELL_H + 3, 15); //size down, max 15 const wdStrt = 1; @@ -73,11 +96,14 @@ function drawCal() { const tdyNumClr = 0; // today fg g.setFont("Vector", DAY_NAME_FONT_SIZE + 3); + + + g.setColor(nrgb[1]); g.setFontAlign(-1, -1); // g.clearRect(Bangle.appRect.x, CAL_Y, Bangle.appRect.x2, CAL_Y+CAL_AREA_H); - //draw grid & Headline + // == draw grid & Headline == const dNames = ABR_DAY.map((a) => a.length <= 2 ? a : a.substr(0, 2)); //force shrt 2 for (var dNo = 0; dNo < dNames.length; dNo++) { const dIdx = wdStrt >= 0 ? ((wdStrt + dNo) % 7) : ((dNo + d.getDay() + 4) % 7); @@ -103,9 +129,10 @@ function drawCal() { // horizontal lines // for(i=0; i<3; i++){ const y=nextY+i*CELL_H; g.drawLine(Bangle.appRect.x, y, Bangle.appRect.x2, y); } - g.setFont("Vector", DAY_NUM_FONT_SIZE); + // g.setFont("Vector", DAY_NUM_FONT_SIZE); - g.setFont("7x11Numeric7Seg", 1); + // g.setFont("7x11Numeric7Seg", 1); + g.setFontLECO1976Regular5fix11(); //write days const tdyDate = d.getDate(); @@ -113,16 +140,38 @@ function drawCal() { var rD = new Date(d.getTime()); rD.setDate(rD.getDate() - days); var rDate = rD.getDate(); + + // == today background rectangle == for (var y = 0; y < 3; y++) { for (var x = 0; x < dNames.length; x++) { if (rDate === tdyDate) { //today g.setColor(nrgb[tdyMrkClr]); //today marker color or fg color // rectangle - g.fillRect(x * CELL_W, nextY + CELL_H - 1, x * CELL_W + CELL_W, nextY + CELL_H + CELL_H - 1); - g.setColor(nrgb[tdyNumClr]); //today color or fg color + var frm=3; // fame pixels + g.drawRect(x * CELL_W-frm, nextY + CELL_H - 1-frm, x * CELL_W + CELL_W+frm, nextY + CELL_H + CELL_H - 1+frm); + } + rD.setDate(rDate + 1); + rDate = rD.getDate(); + } + } + + // == individual days == + rD = new Date(d.getTime()); + rD.setDate(rD.getDate() - days); + rDate = rD.getDate(); + for (var y = 0; y < 3; y++) { + for (var x = 0; x < dNames.length; x++) { + if (rDate === tdyDate) { //today + g.setColor(nrgb[tdyMrkClr]); //today marker color or fg color + + // rectangle + // g.fillRect(x * CELL_W, nextY + CELL_H - 1, x * CELL_W + CELL_W, nextY + CELL_H + CELL_H - 1); + // g.setColor(nrgb[tdyNumClr]); //today color or fg color + // g.drawRect(x * CELL_W, nextY + CELL_H - 1, x * CELL_W + CELL_W, nextY + CELL_H + CELL_H - 1); // simulate "bold" + // g.setColor(nrgb[tdyNumClr]); //today color or fg color g.drawString(rDate, 1 + x * CELL_W + ((CELL_W - g.stringWidth(rDate)) / 2) + 2, nextY + ((CELL_H - DAY_NUM_FONT_SIZE + 2) / 2) + (CELL_H * y)); } else if (IS_SUNDAY[rD.getDay()]) { //sundays @@ -153,7 +202,7 @@ function draw() { // g.setFont('Vector', 30); // g.setFont("7x11Numeric7Seg", 5); - g.setFontLECO1976Regular42(); + g.setFontLECO1976Regular5fix42(); g.setFontAlign(0, -1); g.drawString(timeString(h, m), g.getWidth() / 2, 28); g.drawString(dayString(d), g.getWidth() * 3 / 4, 88); @@ -162,7 +211,7 @@ function draw() { g.reset(); // Steps - g.setFontLECO1976Regular22(); + g.setFontLECO1976Regular5fix22(); g.setFontAlign(-1, -1); g.drawString(getSteps(), 8, 88); @@ -200,4 +249,4 @@ Bangle.on('lcdPower', on => { }); -Bangle.drawWidgets(); +Bangle.drawWidgets(); \ No newline at end of file diff --git a/apps/glbasic/metadata.json b/apps/glbasic/metadata.json index 6d4c562a3..2636deefa 100644 --- a/apps/glbasic/metadata.json +++ b/apps/glbasic/metadata.json @@ -2,7 +2,7 @@ "id": "glbasic", "name": "GLBasic Clock", "shortName": "GLBasic", - "version": "0.21", + "version": "0.22", "description": "A clock with large numbers", "dependencies": {"widpedom":"app"}, "icon": "icon48.png", From f3a02082df84b23902636a4e24772345698cf1c7 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 21 Apr 2023 18:02:01 +0100 Subject: [PATCH 0790/1725] stopw: fix format and show milliseconds up to 1min --- apps/clkinfostopw/clkinfo.js | 16 +++++----------- apps/clkinfostopw/clkinfo.ts | 17 +++++------------ apps/clkinfostopw/metadata.json | 3 +-- apps/clkinfostopw/settings.js | 24 ----------------------- apps/clkinfostopw/settings.ts | 34 --------------------------------- 5 files changed, 11 insertions(+), 83 deletions(-) delete mode 100644 apps/clkinfostopw/settings.js delete mode 100644 apps/clkinfostopw/settings.ts diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js index 43cd8d52f..fbbe80a55 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.js @@ -3,7 +3,7 @@ var redrawInterval; var startTime; var showMillis = true; - var _a = (require("Storage").readJSON("clkinfostopw.setting.json", true) || {}).format, format = _a === void 0 ? 0 : _a; + var milliTime = 60; var unqueueRedraw = function () { if (redrawInterval) clearInterval(redrawInterval); @@ -14,7 +14,7 @@ unqueueRedraw(); redrawInterval = setInterval(function () { if (startTime) { - if (showMillis && Date.now() - startTime > 60000) { + if (showMillis && Date.now() - startTime > milliTime * 1000) { showMillis = false; changeInterval(redrawInterval, 1000); } @@ -28,21 +28,15 @@ var pad2 = function (s) { return ('0' + s.toFixed(0)).slice(-2); }; var duration = function (start) { var seconds = (Date.now() - start) / 1000; - if (seconds <= 1) + if (seconds < milliTime) return seconds.toFixed(1); - if (seconds < 60) - return seconds.toFixed(0); var mins = seconds / 60; seconds %= 60; if (mins < 60) - return format === 0 - ? "".concat(mins.toFixed(0), "m").concat(pad2(seconds), "s") - : "".concat(mins.toFixed(0), ":").concat(pad2(seconds)); + return "".concat(mins.toFixed(0), ":").concat(pad2(seconds)); var hours = mins / 60; mins %= 60; - return format === 0 - ? "".concat(hours.toFixed(0), "h").concat(pad2(mins), "m").concat(pad2(seconds), "s") - : "".concat(hours.toFixed(0), ":").concat(pad2(mins), ":").concat(pad2(seconds)); + return "".concat(hours.toFixed(0), ":").concat(pad2(mins), ":").concat(pad2(seconds)); }; var img = function () { return atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA=="); }; return { diff --git a/apps/clkinfostopw/clkinfo.ts b/apps/clkinfostopw/clkinfo.ts index 4a5f36e52..93eebe4af 100644 --- a/apps/clkinfostopw/clkinfo.ts +++ b/apps/clkinfostopw/clkinfo.ts @@ -3,8 +3,7 @@ let redrawInterval: number | undefined; let startTime: number | undefined; let showMillis = true; - let { format = StopWatchFormat.HMS }: StopWatchSettings - = require("Storage").readJSON("clkinfostopw.setting.json", true) || {}; + const milliTime = 60; const unqueueRedraw = () => { if (redrawInterval) clearInterval(redrawInterval); @@ -15,7 +14,7 @@ unqueueRedraw(); redrawInterval = setInterval(() => { if (startTime) { - if (showMillis && Date.now() - startTime > 60000) { + if (showMillis && Date.now() - startTime > milliTime * 1000) { showMillis = false; changeInterval(redrawInterval, 1000); } @@ -31,25 +30,19 @@ const duration = (start: number) => { let seconds = (Date.now() - start) / 1000; - if (seconds <= 1) + if (seconds < milliTime) return seconds.toFixed(1); - if (seconds < 60) - return seconds.toFixed(0); let mins = seconds / 60; seconds %= 60; if (mins < 60) - return format === StopWatchFormat.HMS - ? `${mins.toFixed(0)}m${pad2(seconds)}s` - : `${mins.toFixed(0)}:${pad2(seconds)}`; + return `${mins.toFixed(0)}:${pad2(seconds)}`; let hours = mins / 60; mins %= 60; - return format === StopWatchFormat.HMS - ? `${hours.toFixed(0)}h${pad2(mins)}m${pad2(seconds)}s` - : `${hours.toFixed(0)}:${pad2(mins)}:${pad2(seconds)}`; + return `${hours.toFixed(0)}:${pad2(mins)}:${pad2(seconds)}`; }; const img = () => atob("GBiBAAAAAAB+AAB+AAAAAAB+AAH/sAOB8AcA4A4YcAwYMBgYGBgYGBg8GBg8GBgYGBgAGAwAMA4AcAcA4AOBwAH/gAB+AAAAAAAAAA=="); diff --git a/apps/clkinfostopw/metadata.json b/apps/clkinfostopw/metadata.json index 654493e64..a1a5ebbfe 100644 --- a/apps/clkinfostopw/metadata.json +++ b/apps/clkinfostopw/metadata.json @@ -10,7 +10,6 @@ "readme":"README.md", "allow_emulator": true, "storage": [ - {"name":"stopw.clkinfo.js","url":"clkinfo.js"}, - {"name":"stopw.settings.js","url":"settings.js"} + {"name":"stopw.clkinfo.js","url":"clkinfo.js"} ] } diff --git a/apps/clkinfostopw/settings.js b/apps/clkinfostopw/settings.js deleted file mode 100644 index 86bf09cdd..000000000 --- a/apps/clkinfostopw/settings.js +++ /dev/null @@ -1,24 +0,0 @@ -(function (back) { - var _a; - var SETTINGS_FILE = "clkinfostopw.setting.json"; - var storage = require("Storage"); - var settings = storage.readJSON(SETTINGS_FILE, true) || {}; - (_a = settings.format) !== null && _a !== void 0 ? _a : (settings.format = 0); - var save = function () { - storage.writeJSON(SETTINGS_FILE, settings); - }; - E.showMenu({ - "": { "title": "stopwatch" }, - "< Back": back, - "Format": { - value: settings.format, - min: 0, - max: 1, - format: function (v) { return v === 0 ? "12m34s" : "12:34"; }, - onchange: function (v) { - settings.format = v; - save(); - }, - }, - }); -}); diff --git a/apps/clkinfostopw/settings.ts b/apps/clkinfostopw/settings.ts deleted file mode 100644 index 3d7ff5c05..000000000 --- a/apps/clkinfostopw/settings.ts +++ /dev/null @@ -1,34 +0,0 @@ -const enum StopWatchFormat { - HMS, - Colon, -} -type StopWatchSettings = { - format: StopWatchFormat, -}; - -((back: () => void) => { - const SETTINGS_FILE = "clkinfostopw.setting.json"; - - const storage = require("Storage"); - const settings: StopWatchSettings = storage.readJSON(SETTINGS_FILE, true) || {}; - settings.format ??= StopWatchFormat.HMS; - - const save = () => { - storage.writeJSON(SETTINGS_FILE, settings) - }; - - E.showMenu({ - "": { "title": "stopwatch" }, - "< Back": back, - "Format": { - value: settings.format, - min: StopWatchFormat.HMS, - max: StopWatchFormat.Colon, - format: v => v === StopWatchFormat.HMS ? "12m34s" : "12:34", - onchange: v => { - settings.format = v; - save(); - }, - }, - }); -}) From bff6a4d14500ef6ae4fe1ae01f650852c7706b17 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sat, 22 Apr 2023 00:51:30 +0100 Subject: [PATCH 0791/1725] Added clkinfogps --- apps/clkinfogps/ChangeLog | 1 + apps/clkinfogps/README.md | 5 ++ apps/clkinfogps/app.png | Bin 0 -> 1018 bytes apps/clkinfogps/clkinfo.js | 96 +++++++++++++++++++++++++ apps/clkinfogps/geotools.js | 128 ++++++++++++++++++++++++++++++++++ apps/clkinfogps/metadata.json | 15 ++++ 6 files changed, 245 insertions(+) create mode 100644 apps/clkinfogps/ChangeLog create mode 100644 apps/clkinfogps/README.md create mode 100644 apps/clkinfogps/app.png create mode 100644 apps/clkinfogps/clkinfo.js create mode 100644 apps/clkinfogps/geotools.js create mode 100644 apps/clkinfogps/metadata.json diff --git a/apps/clkinfogps/ChangeLog b/apps/clkinfogps/ChangeLog new file mode 100644 index 000000000..7f837e50e --- /dev/null +++ b/apps/clkinfogps/ChangeLog @@ -0,0 +1 @@ +0.01: First version diff --git a/apps/clkinfogps/README.md b/apps/clkinfogps/README.md new file mode 100644 index 000000000..8526114f7 --- /dev/null +++ b/apps/clkinfogps/README.md @@ -0,0 +1,5 @@ +# GPS Clock Info + +## Screenshots + +Written by: [Hugh Barney](https://github.com/hughbarney) For support and discussion please post in the [Bangle JS Forum](http://forum.espruino.com/microcosms/1424/) diff --git a/apps/clkinfogps/app.png b/apps/clkinfogps/app.png new file mode 100644 index 0000000000000000000000000000000000000000..4082be18f43e8d2a46a4c39dc01ff6811f7fdb18 GIT binary patch literal 1018 zcmVN7uzIWe!YESNg1Mi*R zoHOU#nK?6a28bx4h$2cQO0#}108k8|6hJ;@+5B%foovgb4X9HJU?Xk0`bY|80jLLX z4?rGeI{|zGFa==D3g9VahO@}F>@nM}qOQmW0hCiNecT67N8M0l9Q_4g4P{3FOjr)J zQ@-2ds20E!?F!woWMcC$<*vAuy< zoh5GzGPM>0=&+RgIge%Te)M!W4j>ai4u8iRfH=B@x?a5j>WCljJR>cB#H1S@gH@ED zbU4yWtipl$1u$jJ`CbRsNbG<|em$1+`#cI?0Av7I3}D#N(FN+YBoII|b(JnZ1uw8h*OrTq^N&_DGuYfpEZ>23S?M!R z!G#x*H9U_t+7;aFFRczte4eIDKB=xonZqB5Z&C1AYe0AtZFsYr;e$RYTGrik&j0FY z(4=G~!_Sn3A0&WE+IX(uChIggupzTIXkV~|%6$snN&I+-0P1Puu7bZHUg9@`XB2P+ zmAyN!VY5cghX~*tZL}%494CZUD!61N^f-V?=HTT%otr)2N{9e1$Jj@Nm(rI>ZJoYx z06%DWosVG|IiXu20=P*VXMNh3L*$49dnv$A2k@Fo+vAwOogo6~pp6EfHrv=n{m{7% zmctpii{>gU`5ipuX>HQT8lFuXi+tLM51>yjJoN(@aSV+N7dU)#J%zTiO}_*CF2E}X zAVHa%(OfU$0=99j)jn;THfeO(e~?CVeA1}gopCyaH?pQ=93>iN;V7{~!HdmdZg`Fk zb9<9g4bMVZ zr6opLWhh8l1zh>I!hXsdXR)w#f>^ajF8f7HO6Q_7N^h;w;($+SaV){o;vYw`zwf z04kL7dX04x9A&x1e4vCWljU{$fuqc-<=77#PvQvRk@dhaZf%P4S_AeWeH~@rGy23- ol!PayqM3eTiYTIpBEpQ(KRUF6gJC-nnE(I)07*qoM6N<$f^hE02mk;8 literal 0 HcmV?d00001 diff --git a/apps/clkinfogps/clkinfo.js b/apps/clkinfogps/clkinfo.js new file mode 100644 index 000000000..962cb613e --- /dev/null +++ b/apps/clkinfogps/clkinfo.js @@ -0,0 +1,96 @@ +(function () { + var timeout; + var last_fix; + + var resetLastFix = function() { + last_fix = { + fix: 0, + alt: 0, + lat: 0, + lon: 0, + speed: 0, + time: 0, + course: 0, + satellites: 0 + }; + }; + + var formatTime = function(now) { + try { + var fd = now.toUTCString().split(" "); + return fd[4]; + } catch (e) { + return "00:00:00"; + } + }; + + var onGPS = function(fix) { + console.log(fix); + last_fix.time = fix.time; + + // we got a fix + if (fix.fix) { + last_fix = fix; + // cancel the timeout, if not already timed out + if (this.timeout) { + clearTimeout(timeout); + this.timeout = undefined; + } + // power off the GPS + Bangle.setGPSPower(0,"clkinfo"); + // power on the GPS again in 3 minutes + timeout = setTimeout(function() { + timeout = undefined; + Bangle.setGPSPower(1,"clkinfo"); + }, 180000); + } + info.items[0].emit("redraw"); + }; + + var gpsText = function() { + if (last_fix === undefined) + return '----- , -----'; + + if (!last_fix.fix) + return formatTime(last_fix.time); + + // use basic lat,lon for now + return last_fix.lat.toFixed(3) + ' , ' + last_fix.lon.toFixed(3); + }; + + var info = { + name: "Gps", + items: [ + { + name: "gridref", + get: function () { return ({ + text: gpsText() + }); }, + run : function() { + Bangle.setGPSPower(1,"clkinfo"); + /* turn off after 5 minutes, sooner if we get a fix */ + this.timeout = setTimeout(function() { + this.timeout = undefined; + Bangle.setGPSPower(0,"clkinfo"); + }, 300000); + }, + show: function () { + resetLastFix(); + Bangle.on("GPS",onGPS); + this.run(); + }, + hide: function() { + Bangle.setGPSPower(0,"clkinfo"); + Bangle.removeListener("GPS", onGPS); + if (this.timeout) { + clearTimeout(this.timeout); + this.timeout = undefined; + } + resetLastFix(); + } + } + ] + }; + + return info; +}); diff --git a/apps/clkinfogps/geotools.js b/apps/clkinfogps/geotools.js new file mode 100644 index 000000000..5adc57872 --- /dev/null +++ b/apps/clkinfogps/geotools.js @@ -0,0 +1,128 @@ +/** + * + * A module of Geo functions for use with gps fixes + * + * let geo = require("geotools"); + * let os = geo.gpsToOSGrid(fix); + * let ref = geo.gpsToOSMapRef(fix); + * + */ + +Number.prototype.toRad = function() { return this*Math.PI/180; }; +/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ +/* Ordnance Survey Grid Reference functions (c) Chris Veness 2005-2014 */ +/* - www.movable-type.co.uk/scripts/gridref.js */ +/* - www.movable-type.co.uk/scripts/latlon-gridref.html */ +/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ +function OsGridRef(easting, northing) { + this.easting = 0|easting; + this.northing = 0|northing; +} +OsGridRef.latLongToOsGrid = function(point) { + var lat = point.lat.toRad(); + var lon = point.lon.toRad(); + + var a = 6377563.396, b = 6356256.909; // Airy 1830 major & minor semi-axes + var F0 = 0.9996012717; // NatGrid scale factor on central meridian + var lat0 = (49).toRad(), lon0 = (-2).toRad(); // NatGrid true origin is 49�N,2�W + var N0 = -100000, E0 = 400000; // northing & easting of true origin, metres + var e2 = 1 - (b*b)/(a*a); // eccentricity squared + var n = (a-b)/(a+b), n2 = n*n, n3 = n*n*n; + + var cosLat = Math.cos(lat), sinLat = Math.sin(lat); + var nu = a*F0/Math.sqrt(1-e2*sinLat*sinLat); // transverse radius of curvature + var rho = a*F0*(1-e2)/Math.pow(1-e2*sinLat*sinLat, 1.5); // meridional radius of curvature + var eta2 = nu/rho-1; + + var Ma = (1 + n + (5/4)*n2 + (5/4)*n3) * (lat-lat0); + var Mb = (3*n + 3*n*n + (21/8)*n3) * Math.sin(lat-lat0) * Math.cos(lat+lat0); + var Mc = ((15/8)*n2 + (15/8)*n3) * Math.sin(2*(lat-lat0)) * Math.cos(2*(lat+lat0)); + var Md = (35/24)*n3 * Math.sin(3*(lat-lat0)) * Math.cos(3*(lat+lat0)); + var M = b * F0 * (Ma - Mb + Mc - Md); // meridional arc + + var cos3lat = cosLat*cosLat*cosLat; + var cos5lat = cos3lat*cosLat*cosLat; + var tan2lat = Math.tan(lat)*Math.tan(lat); + var tan4lat = tan2lat*tan2lat; + + var I = M + N0; + var II = (nu/2)*sinLat*cosLat; + var III = (nu/24)*sinLat*cos3lat*(5-tan2lat+9*eta2); + var IIIA = (nu/720)*sinLat*cos5lat*(61-58*tan2lat+tan4lat); + var IV = nu*cosLat; + var V = (nu/6)*cos3lat*(nu/rho-tan2lat); + var VI = (nu/120) * cos5lat * (5 - 18*tan2lat + tan4lat + 14*eta2 - 58*tan2lat*eta2); + + var dLon = lon-lon0; + var dLon2 = dLon*dLon, dLon3 = dLon2*dLon, dLon4 = dLon3*dLon, dLon5 = dLon4*dLon, dLon6 = dLon5*dLon; + + var N = I + II*dLon2 + III*dLon4 + IIIA*dLon6; + var E = E0 + IV*dLon + V*dLon3 + VI*dLon5; + + return new OsGridRef(E, N); +}; + +/* + * converts northing, easting to standard OS grid reference. + * + * [digits=10] - precision (10 digits = metres) + * to_map_ref(8, 651409, 313177); => 'TG 5140 1317' + * to_map_ref(0, 651409, 313177); => '651409,313177' + * + */ +function to_map_ref(digits, easting, northing) { + if (![ 0,2,4,6,8,10,12,14,16 ].includes(Number(digits))) throw new RangeError(`invalid precision '${digits}'`); // eslint-disable-line comma-spacing + + let e = easting; + let n = northing; + + // use digits = 0 to return numeric format (in metres) - note northing may be >= 1e7 + if (digits == 0) { + const format = { useGrouping: false, minimumIntegerDigits: 6, maximumFractionDigits: 3 }; + const ePad = e.toLocaleString('en', format); + const nPad = n.toLocaleString('en', format); + return `${ePad},${nPad}`; + } + + // get the 100km-grid indices + const e100km = Math.floor(e / 100000), n100km = Math.floor(n / 100000); + + // translate those into numeric equivalents of the grid letters + let l1 = (19 - n100km) - (19 - n100km) % 5 + Math.floor((e100km + 10) / 5); + let l2 = (19 - n100km) * 5 % 25 + e100km % 5; + + // compensate for skipped 'I' and build grid letter-pairs + if (l1 > 7) l1++; + if (l2 > 7) l2++; + const letterPair = String.fromCharCode(l1 + 'A'.charCodeAt(0), l2 + 'A'.charCodeAt(0)); + + // strip 100km-grid indices from easting & northing, and reduce precision + e = Math.floor((e % 100000) / Math.pow(10, 5 - digits / 2)); + n = Math.floor((n % 100000) / Math.pow(10, 5 - digits / 2)); + + // pad eastings & northings with leading zeros + e = e.toString().padStart(digits/2, '0'); + n = n.toString().padStart(digits/2, '0'); + + return `${letterPair} ${e} ${n}`; +} + +/** + * + * Module exports section, example code below + * + * let geo = require("geotools"); + * let os = geo.gpsToOSGrid(fix); + * let ref = geo.gpsToOSMapRef(fix); + */ + +// get easting and northings +exports.gpsToOSGrid = function(gps_fix) { + return OsGridRef.latLongToOsGrid(gps_fix); +} + +// string with an OS Map grid reference +exports.gpsToOSMapRef = function(gps_fix) { + let os = OsGridRef.latLongToOsGrid(last_fix); + return to_map_ref(6, os.easting, os.northing); +} diff --git a/apps/clkinfogps/metadata.json b/apps/clkinfogps/metadata.json new file mode 100644 index 000000000..535cf50fc --- /dev/null +++ b/apps/clkinfogps/metadata.json @@ -0,0 +1,15 @@ +{ + "id": "clkinfogps", + "name": "GPS Grid Ref Clockinfo", + "version":"0.01", + "description": "Clockinfo that display the GPS OS Grid Refernce", + "icon": "app.png", + "type": "clkinfo", + "tags": "clkinfo,gps", + "supports" : ["BANGLEJS2"], + "readme":"README.md", + "storage": [ + {"name":"geotools","url":"geotools.js"}, + {"name":"gps.clkinfo.js","url":"clkinfo.js"} + ] +} From 07fd9ffe62bbedb2a8621474d2613eff1296c481 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sat, 22 Apr 2023 01:12:49 +0100 Subject: [PATCH 0792/1725] added geotools module --- apps/clkinfogps/clkinfo.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/clkinfogps/clkinfo.js b/apps/clkinfogps/clkinfo.js index 962cb613e..b33f8f084 100644 --- a/apps/clkinfogps/clkinfo.js +++ b/apps/clkinfogps/clkinfo.js @@ -1,6 +1,7 @@ (function () { var timeout; var last_fix; + var geo = require("geotools"); var resetLastFix = function() { last_fix = { @@ -49,13 +50,12 @@ var gpsText = function() { if (last_fix === undefined) - return '----- , -----'; + return ''; if (!last_fix.fix) return formatTime(last_fix.time); - // use basic lat,lon for now - return last_fix.lat.toFixed(3) + ' , ' + last_fix.lon.toFixed(3); + return gpsToOSMapRef(last_fix), }; var info = { From f0e863dfcd27beb8b68b33cc8df36b1820c48979 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sat, 22 Apr 2023 01:39:11 +0100 Subject: [PATCH 0793/1725] clkinfogps call geo.xx correctly --- apps/clkinfogps/clkinfo.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/clkinfogps/clkinfo.js b/apps/clkinfogps/clkinfo.js index b33f8f084..092a70215 100644 --- a/apps/clkinfogps/clkinfo.js +++ b/apps/clkinfogps/clkinfo.js @@ -55,7 +55,7 @@ if (!last_fix.fix) return formatTime(last_fix.time); - return gpsToOSMapRef(last_fix), + return geo.gpsToOSMapRef(last_fix); }; var info = { From b673479736ce17b7b42e21206c69f3f50537d73b Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sat, 22 Apr 2023 01:48:53 +0100 Subject: [PATCH 0794/1725] clkinfogps fixes --- apps/clkinfogps/clkinfo.js | 4 ++-- apps/clkinfogps/geotools.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/clkinfogps/clkinfo.js b/apps/clkinfogps/clkinfo.js index 092a70215..6daeea8a0 100644 --- a/apps/clkinfogps/clkinfo.js +++ b/apps/clkinfogps/clkinfo.js @@ -26,7 +26,7 @@ }; var onGPS = function(fix) { - console.log(fix); + //console.log(fix); last_fix.time = fix.time; // we got a fix @@ -55,7 +55,7 @@ if (!last_fix.fix) return formatTime(last_fix.time); - return geo.gpsToOSMapRef(last_fix); + return geo.gpsToOSMapRef(last_fix.fix); }; var info = { diff --git a/apps/clkinfogps/geotools.js b/apps/clkinfogps/geotools.js index 5adc57872..d251c1f95 100644 --- a/apps/clkinfogps/geotools.js +++ b/apps/clkinfogps/geotools.js @@ -123,6 +123,6 @@ exports.gpsToOSGrid = function(gps_fix) { // string with an OS Map grid reference exports.gpsToOSMapRef = function(gps_fix) { - let os = OsGridRef.latLongToOsGrid(last_fix); + let os = OsGridRef.latLongToOsGrid(gps_fix); return to_map_ref(6, os.easting, os.northing); } From 0d188678cc967b58e44d4352cb7c469301d1c5fb Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sat, 22 Apr 2023 02:00:01 +0100 Subject: [PATCH 0795/1725] clkinfogps fixes --- apps/clkinfogps/clkinfo.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/clkinfogps/clkinfo.js b/apps/clkinfogps/clkinfo.js index 6daeea8a0..15235531c 100644 --- a/apps/clkinfogps/clkinfo.js +++ b/apps/clkinfogps/clkinfo.js @@ -55,7 +55,7 @@ if (!last_fix.fix) return formatTime(last_fix.time); - return geo.gpsToOSMapRef(last_fix.fix); + return geo.gpsToOSMapRef(last_fix); }; var info = { From 84a85b6de9d93b0da0ee9d96903017abd68f6a83 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sat, 22 Apr 2023 02:14:18 +0100 Subject: [PATCH 0796/1725] clkinfogps set gps power on to 90 seconds after getting fix --- apps/clkinfogps/clkinfo.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/clkinfogps/clkinfo.js b/apps/clkinfogps/clkinfo.js index 15235531c..589d708e9 100644 --- a/apps/clkinfogps/clkinfo.js +++ b/apps/clkinfogps/clkinfo.js @@ -39,11 +39,11 @@ } // power off the GPS Bangle.setGPSPower(0,"clkinfo"); - // power on the GPS again in 3 minutes + // power on the GPS again in 90 seconds timeout = setTimeout(function() { timeout = undefined; Bangle.setGPSPower(1,"clkinfo"); - }, 180000); + }, 90000); } info.items[0].emit("redraw"); }; From 7d9a6a2a8ab63c14c2ea39422e9222415b4878c7 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 22 Apr 2023 12:01:53 +0100 Subject: [PATCH 0797/1725] stopw: update changelog / version --- apps/clkinfostopw/ChangeLog | 1 + apps/clkinfostopw/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/clkinfostopw/ChangeLog b/apps/clkinfostopw/ChangeLog index 2626fb51e..20742562f 100644 --- a/apps/clkinfostopw/ChangeLog +++ b/apps/clkinfostopw/ChangeLog @@ -1,2 +1,3 @@ 0.01: New clkinfo! 0.02: Added format option, reduced battery usage +0.03: Hardcode colon-format, show milliseconds for the first minute diff --git a/apps/clkinfostopw/metadata.json b/apps/clkinfostopw/metadata.json index a1a5ebbfe..f33f61dbb 100644 --- a/apps/clkinfostopw/metadata.json +++ b/apps/clkinfostopw/metadata.json @@ -1,7 +1,7 @@ { "id": "clkinfostopw", "name": "Stop Watch Clockinfo", - "version":"0.02", + "version":"0.03", "description": "A simple stopwatch, shown via clockinfo", "icon": "app.png", "type": "clkinfo", From 03f5b12cf20afc4ba1aa3bf128331b3d027aed27 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sat, 22 Apr 2023 14:33:31 +0100 Subject: [PATCH 0798/1725] clkinfogps clear fixTime/display if no fix for 4 minutes --- apps/clkinfogps/clkinfo.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/apps/clkinfogps/clkinfo.js b/apps/clkinfogps/clkinfo.js index 589d708e9..2752126e2 100644 --- a/apps/clkinfogps/clkinfo.js +++ b/apps/clkinfogps/clkinfo.js @@ -1,6 +1,7 @@ (function () { var timeout; var last_fix; + var fixTs; var geo = require("geotools"); var resetLastFix = function() { @@ -32,6 +33,7 @@ // we got a fix if (fix.fix) { last_fix = fix; + fixTs = Math.round(getTime()); // cancel the timeout, if not already timed out if (this.timeout) { clearTimeout(timeout); @@ -45,6 +47,13 @@ Bangle.setGPSPower(1,"clkinfo"); }, 90000); } + + // if our last fix was more than 4 minutes ago, reset the fix to show gps time + satelites + if (Math.round(getTime()) - fixTs > 240) { + resetLastFix(); + fixTs = Math.round(getTime()); + } + info.items[0].emit("redraw"); }; @@ -52,8 +61,9 @@ if (last_fix === undefined) return ''; + // show gps time and satelite count if (!last_fix.fix) - return formatTime(last_fix.time); + return formatTime(last_fix.time) + '.' + formatTime(last_fix.satelites); return geo.gpsToOSMapRef(last_fix); }; @@ -72,10 +82,12 @@ this.timeout = setTimeout(function() { this.timeout = undefined; Bangle.setGPSPower(0,"clkinfo"); + resetLastFix(); }, 300000); }, show: function () { resetLastFix(); + fixTs = Math.round(getTime()); Bangle.on("GPS",onGPS); this.run(); }, From 31c0f0059a9f5b602ff75555785ab2752aec7ad1 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sat, 22 Apr 2023 14:40:11 +0100 Subject: [PATCH 0799/1725] clkinfogps clear fixTime/display if no fix for 4 minutes --- apps/clkinfogps/clkinfo.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/clkinfogps/clkinfo.js b/apps/clkinfogps/clkinfo.js index 2752126e2..7c955e6b9 100644 --- a/apps/clkinfogps/clkinfo.js +++ b/apps/clkinfogps/clkinfo.js @@ -63,7 +63,7 @@ // show gps time and satelite count if (!last_fix.fix) - return formatTime(last_fix.time) + '.' + formatTime(last_fix.satelites); + return formatTime(last_fix.time) + '.' + last_fix.satelites; return geo.gpsToOSMapRef(last_fix); }; From 8416f6e5c535ea1ad1dbcdb8865267968d021a3a Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sun, 23 Apr 2023 13:30:15 +0100 Subject: [PATCH 0800/1725] clkinfogps added screenshots, debug, consistant timer handling --- apps/clkinfogps/README.md | 56 +++++++++++++++++++++++++++ apps/clkinfogps/clkinfo.js | 66 ++++++++++++++++++++++---------- apps/clkinfogps/screenshot0.png | Bin 0 -> 2989 bytes apps/clkinfogps/screenshot1.png | Bin 0 -> 2952 bytes apps/clkinfogps/screenshot2.png | Bin 0 -> 3122 bytes apps/clkinfogps/screenshot3.png | Bin 0 -> 2744 bytes 6 files changed, 101 insertions(+), 21 deletions(-) create mode 100644 apps/clkinfogps/screenshot0.png create mode 100644 apps/clkinfogps/screenshot1.png create mode 100644 apps/clkinfogps/screenshot2.png create mode 100644 apps/clkinfogps/screenshot3.png diff --git a/apps/clkinfogps/README.md b/apps/clkinfogps/README.md index 8526114f7..6cee9d47e 100644 --- a/apps/clkinfogps/README.md +++ b/apps/clkinfogps/README.md @@ -1,5 +1,61 @@ # GPS Clock Info +![](app.png) + +A clock info that displays the Ordanance Survey (OS) grid reference + +- The primary use is for walking where a GPS fix that is 2 minutes old is + perfectly fine for providing an OS map grid reference. +- Saves power by only turning the GPS on for the time it takes to get a fix. +- It then switches the GPS off for 90 seconds before trying to get the next fix +- At the start of the walk update the GPS with using one of the AGPS apps. This will + significantly reduce the time to the first fix. +- Displays the GPS time and number of satelites while waiting for a fix. +- The fix is invalidated after 4 minutes and will display 00:00:00 0 + or the gps time while the gps is powered on and searching for a fix. +- If the display is shows solid 00:00:00 0 then tap the clkinfo to restart it + as it will have timed out after 4 minutes +- I suggest installing the GPS power widget so that you can be assured + when the GPS is draining power. +- It is unlikley that this style of gps clock info will work well with the Recorder + app as that would hold the GPS power permantly on all the time during the + recording. + + ## Screenshots + +![](screenshot0.png) + +- Above: The GPS is powered on and waiting for a fix. +- The GPS widget shows yellow indicating powered on +- The time from the GPS chip is displayed with the satellite count +- The time from the GPS chip is incrementing approximately every second +- Note the time on the GPS is in UTC and not the current timezone + + +![](screenshot1.png) + +- Above: The GPS has a fix +- The OS grid reference has been calculated +- The GPS has been turned off for 90 seconds +- The GPS widget is grey showing the GPS is off +- You will not see the GPS widget turn green as the GPS is turned off after a fix + + +![](screenshot2.png) + +- Above: The GPS has been powered on after 90 seconds and is waiting for a fix + + +![](screenshot3.png) + +- Above: The GPS has not had a fix for 4 minutes and the cycle has stopped +- The time from the GPS is 00:00:00 0, indicating that the GPS not on +- The GPS widget is grey showing the GPS is off +- Tap the clock_info to restart the GPS clock info + + + + Written by: [Hugh Barney](https://github.com/hughbarney) For support and discussion please post in the [Bangle JS Forum](http://forum.espruino.com/microcosms/1424/) diff --git a/apps/clkinfogps/clkinfo.js b/apps/clkinfogps/clkinfo.js index 7c955e6b9..349cf13b6 100644 --- a/apps/clkinfogps/clkinfo.js +++ b/apps/clkinfogps/clkinfo.js @@ -4,6 +4,10 @@ var fixTs; var geo = require("geotools"); + var debug = function(o) { + console.log(o); + }; + var resetLastFix = function() { last_fix = { fix: 0, @@ -26,6 +30,35 @@ } }; + var clearTimer = function() { + if (timeout) { + clearTimeout(timeout); + timeout = undefined; + debug("timer cleared"); + } + }; + + var queueGPSon = function() { + clearTimer(); + // power on the GPS again in 90 seconds + timeout = setTimeout(function() { + timeout = undefined; + Bangle.setGPSPower(1,"clkinfo"); + }, 90000); + debug("gps on queued"); + }; + + var queueGPSoff = function() { + // turn off after 5 minutes, sooner if we get a fix + clearTimer(); + timeout = setTimeout(function() { + timeout = undefined; + Bangle.setGPSPower(0,"clkinfo"); + resetLastFix(); + }, 300000); + debug("gps off queued"); + }; + var onGPS = function(fix) { //console.log(fix); last_fix.time = fix.time; @@ -35,17 +68,10 @@ last_fix = fix; fixTs = Math.round(getTime()); // cancel the timeout, if not already timed out - if (this.timeout) { - clearTimeout(timeout); - this.timeout = undefined; - } + clearTimer(); // power off the GPS Bangle.setGPSPower(0,"clkinfo"); - // power on the GPS again in 90 seconds - timeout = setTimeout(function() { - timeout = undefined; - Bangle.setGPSPower(1,"clkinfo"); - }, 90000); + queueGPSon(); } // if our last fix was more than 4 minutes ago, reset the fix to show gps time + satelites @@ -63,8 +89,8 @@ // show gps time and satelite count if (!last_fix.fix) - return formatTime(last_fix.time) + '.' + last_fix.satelites; - + return formatTime(last_fix.time) + ' ' + last_fix.satellites; + return geo.gpsToOSMapRef(last_fix); }; @@ -77,27 +103,25 @@ text: gpsText() }); }, run : function() { + console.log("run"); + // if the timer is already runnuing reset it, we can get multiple run calls by tapping + clearTimer(); Bangle.setGPSPower(1,"clkinfo"); - /* turn off after 5 minutes, sooner if we get a fix */ - this.timeout = setTimeout(function() { - this.timeout = undefined; - Bangle.setGPSPower(0,"clkinfo"); - resetLastFix(); - }, 300000); + // turn GPS off after 5 mins if we dont get a fix, sooner if we get a fix + queueGPSoff(); }, show: function () { + console.log("show"); resetLastFix(); fixTs = Math.round(getTime()); Bangle.on("GPS",onGPS); this.run(); }, hide: function() { + console.log("hide"); + clearTimer(); Bangle.setGPSPower(0,"clkinfo"); Bangle.removeListener("GPS", onGPS); - if (this.timeout) { - clearTimeout(this.timeout); - this.timeout = undefined; - } resetLastFix(); } } diff --git a/apps/clkinfogps/screenshot0.png b/apps/clkinfogps/screenshot0.png new file mode 100644 index 0000000000000000000000000000000000000000..cfe9358d39be981324535631f5c0a86180b0f631 GIT binary patch literal 2989 zcmeHJX;jh+9{sb3ChjIGf>u^er9OM^2%0^GN_%CSrl};ko7$M>9=K-W(()2iG_t3e zs3LzZHqALRU*??oHfKJ~hu^*Do^wC_&hMVz%{l%nK~)*4 z3;=-Y;X^JbelYtVqXheb^-stAeh?_;1mPf1*M<5F0Px_$F3zXo{bm@S8c{W>87ae? z%#?7Ep(q0w(n`A#Cw97d3V)zR&ZIP?tSx;J)l1sGx~XlAl@b8m+R_VcXbm2i`3M4T zy1cS;V-wg|PfFdnv67&wzd4mhAl3EHl9EXH0oqD^gFA~YMa}mOoXCyKdy={du}E7! z(g_wt2!?j=+!|U!$+3ZX)+Kt})qRnH=T2QP)6n%L6D$OAT{3;Ry4Dn3BHm66ghN{; z74@4Uh;bom8AtIQGI*(GdLo=`TLz9AL8_b#>OQ%=18RxFCRlXV4qU`xd$H#ei2p`+rr4om)BB~>z2 zZW&>GKAd7lAt<>i;(?)Z$`x^eJ2__omFIOC}Jas-jYX}{menE5_{4vmH!?~&r;xv8@ zNbOjGe0jb-Zo^(GYFd$S?F)g13}CnWi9>#h(CFcTL;9b{|Cj%^jSfStg=1^@iH{#R zU&`e;@ciL)p_3N(!~C6!KX zxO=cItOM@8tu#>~23;wiqDlY@NQpeHQ}C=JOS2^4v(gLR>d!HRMedFiWu9hc;JWi< z-`RCq!>|LKQ$748sX)WDwF+>2d^pYs9rt}){>CAHAuKjhmxqYIg2;Hbo#Q~?zj{g# z=3!i*(J~D42wsXNC-J8DDuJ7Jv{tAZ-N>y{E8E|f_q-9W$FofLgf<2xcdQh>6KPLY zrw3C{i#w3!WU)D=`PKCUebflxX<{KEqHN!#KFqYEqYKJ-5b&WsLI%^5f?l3{U;4(j zqoThE3R)A54=FI-6_}USl&5(YzEAwkrgyfP>7a75q(H_~Lb^TmR!|8&%aGjcoZ9CN zI1N&8?a%q~&YjTthX~L)J>rDCSG=v}Ju9MFXwo!XDuC(m+ClkQGzuSLF<`Z9Z-#_M zYmo`ABzV-G@3O(q^z=;n+gF_DfFsnxN9HkT4xEW?7}Z}dGdCsY0MI>5G~?1yGqYRXJ7bOq|)@808z5rm~rA?B+Ge8)EKTK4Tio zs_eDvj)IqeebI6Um@WLY=i6SQ3EyXX1HXPu>gxumpIb&YpLjh)sx?@;uQ>b|I#scJ2x>*ZiU*m(jyP;1yA>T9QDE!+Wrhrx`#R?6@&fMuvj+Uv%m;(3vnEY~o`z^Jb0& z%+g8wmjhkCqL$@CJ`LxeU_7mt`_~4WES)?fQ1t8YJ&F0l6LcMA9Zj5(PS0vONSG)~ zs8MXMnDn@tKanu4B-}k~J>n<3W`A5485=wi8=1gifl1Dya#o|C`?7O+sNTyyaPlWNCz{! zVy-&23^E_H41%HR1IJ}+ku%bLQ8Xnxx_t*YV%?iZyVOp_NM)>Mh?MTvnMI7DzqpEV za;rT8qAF*X`B0zzanHE(Gq`>%RKG?oVjE1qvlO1xxxL9Nha2E{nmDG@@%EuXLeoRV z&kWp8VoLx08!OXTncK?1LkU3_F0N}cAmn`5Y*z8LUm@Tb)J zO>_fOZ^oT!?c}y5f?%5$IE5A9dy{tp_7~n8rJPp3PUx;(IXl{>OuVe$B5;srC+Oi2 zW@gfhCXsWRf`u@fiO_h-3O7~##gP;jY|cB`{2}ad`IkLCArSW6cN^H(zUnQ^V1t_s(q-zR>^$-7Yb=aSVDaBj`amGl i-T$MT{SRqaQ&cnbPdFO7wf;x{1`fOa>QZ-*nD%#v4|%Ns literal 0 HcmV?d00001 diff --git a/apps/clkinfogps/screenshot1.png b/apps/clkinfogps/screenshot1.png new file mode 100644 index 0000000000000000000000000000000000000000..ab17af5728f1cf64f60e85b6232ae9c967fa2c55 GIT binary patch literal 2952 zcmeH}*(1~o8^?e18?r=^nL?bD^)1R$ob1HNlI<{BZ9Eff<&Lko^A=_rmR#*$?y zYhf4?V#GvatRW0pGs9ShIo^x+A9%0ci}&Jrz89a1XSw>s+gh6m3rY$C03d9B)x`cF z-~PM!4;}Q%`Wg3wfP~na83Pqxq!s|+u(7#`kptF!IeR#GTvNoPkjwQeu5i7lCK9*e z@>ayJrQoa-V(vYe6m6Elp{62}pSqN>iRXMUezbr$;MntGUYl*@ zlauFMAQUK0IGa}62URr^J+U_e6)~w?i?}eA9=~%> z_yMRVq}tHuF7O~Fu~;XG4Wo;Fbas?IUAG>iFZ39K*1z%Ee33L%vl6sKg<_@H-47D^9+wZc({#Qa*Ar34kmeOOsxg|Bejn;+_=6OxXZR_P z!M-MgS0kTjqCT9y`cOrARejd2F|_ndM^xk!Lts2tmI1yBituPuYVwO2st~g&KF8dy zJ*24@O+8|aC%8SK5g3_dO}Z$K$`ERzcw3W_U6&+<2f zUK3jfBs1q<+}@Wvk`y#}3oSc{GnqixSr_Y>t(oRluce0$M{+lgu}zwNe%4k%k=!L~ zU18gz38ez!#(cNS+)&vn%ZVSMI$TaLw80LQ*mKP~EJ#=TW_jW+MGw4l`8f5)#;>{z zPOjGJSBrv8Czlj{I8OGr@1_dz@~jDcgKJ!aK(Z7HrFv}*fj(O|wE>vO|M7p`GAm_9 zYiYZ0oxYcU1cEK-nqNgGU-jSK&6mB~kHRFSHWA<1uFx1t>=mG%$MCaD!XBLsYcgw2 zmn76aSWoGw8FZ>Py&T3X4o`W`gr#_eXfGd(kDZfS+dOLQwz*vS_dEqq3sT`8Id)))$CB{+1n#6?-{H&gWpuSS1={K<)z9yUKFTZPD_yPD6!w%$XT;p{4_(|L^WRANHmc8@ z)f#Y0X^{0Ou?IHEyVViR22;%a!S$}>)R)WE#etJmdp-do(ON#BEY<)pP4ng*m7eTE zyTYfHPUZ0#M; zoWAOa_uLfte$0sf1?90yr)+nE=qTn7ny$vnvZtbvo~&-lM`6{p`KwdN24io{u6&Iu zx6_qNQgy(4dBN~0&NeJ<3kru_&^Qim?l&=pk`i^B8Ulsin$mk{=j615syGn=-8ldC zj@7>&0a5dDCuZP^YZU`*28)BE#x0#i2W^sy6XRds2reJS${;>qap6p};;?Tk|SFU7Sm`kKv}(w4Xb5;~X%i z!w10;3hL>0GAfHsC4~&u_?-Ngug>0$7C-EAh>Ws9)iX!0O$rK-iV-~4HK9Bgm10vp z40zTMKnr9d_ol%w#axgM+^O4IlDoNtjA5s(zWKunFz8n+g$QMJ&8e(yiUZ)*EKqr9 zwQHfQQY4AG`BZ?TfQ_*7fN;Fx7;7sGIx*6>mT)N#o#tN(`$)#5D1j?V<;|@2qaYm;)xU8f8F`h_k zpUjyjw8sjn!Od;VL>ttEcK-Kh(p?)=y&hTd60;q}yB6>E{S6w@WT#=HYzpMkHES5cHU2lWfR>ThG9p?r)yx5UeJM zdNiHC;WvUNM|_IgH*WJ&A);a-9CHxvC90==Hz19j<00@$KFk5r6XpPQa4NZe@x)Saq$Z%@3+1i*r7pi1^9ro-Dzc$Vjbq_w2cUMNu_ITwvXy=03_js{eM1 zH}l4F_d*wELqJbUJxvRGCq>(tTo0v>tfkvh51AFoiZ$Ms_PpnL^KB><=j^u{`VrXY z|MRh7pR6Ia-DvwYgNPILM1Du^?)pE=wtUc*7Y5qg-p`)Pt-LDAM-%9fG7oH>D1%mmrvou=Op7(P3B$}L10Sp5g zDBWRiM%A9B)Y<+Kq0I_P45i)owAtUVYlT{K_5&H?a)BvPEh)rPS7z+p)wCzGrF_fC$Qg9*VKS6bp0tI+Tb`zl?hb@h z0>_;L6k{0$hH6x%;_qgRmOg&RjlELc*8IamaVs-c?i7b|&7$>3vB>f2;P`f*U3!%mx!_Nv2-WFnahX`dAK@}9 z*_MaB6f}opN?n}rvhn^znCF28BwAFtAR&;ZK+Fqq0v=$nS}eA672I1MYQ~ zEE4Su0gbbt(JluDQbn}$N(8}IcIKKrXJzm&gOZNj{4YmyA&a@O4_X(uiw@KpFgLX} JsWA48`3EE9kc9vM literal 0 HcmV?d00001 diff --git a/apps/clkinfogps/screenshot2.png b/apps/clkinfogps/screenshot2.png new file mode 100644 index 0000000000000000000000000000000000000000..c912a37ea628c1616f270dbc788d50a55e13b6ea GIT binary patch literal 3122 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 Date: Sun, 23 Apr 2023 16:05:53 +0200 Subject: [PATCH 0801/1725] widmsggrid: Don't turn on LCD There's really no need for the widget to turn on the screen. --- apps/widmsggrid/ChangeLog | 3 ++- apps/widmsggrid/metadata.json | 2 +- apps/widmsggrid/widget.js | 1 - 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/widmsggrid/ChangeLog b/apps/widmsggrid/ChangeLog index 9be40817a..544b4ff4f 100644 --- a/apps/widmsggrid/ChangeLog +++ b/apps/widmsggrid/ChangeLog @@ -1,4 +1,5 @@ 0.01: New widget! 0.02: Adjust to message icons moving to messageicons lib 0.03: Use new message library -0.04: Remove library stub \ No newline at end of file +0.04: Remove library stub +0.05: Don't turn on LCD diff --git a/apps/widmsggrid/metadata.json b/apps/widmsggrid/metadata.json index 17d3573ad..015da533c 100644 --- a/apps/widmsggrid/metadata.json +++ b/apps/widmsggrid/metadata.json @@ -1,7 +1,7 @@ { "id": "widmsggrid", "name": "Messages Grid Widget", - "version": "0.04", + "version": "0.05", "description": "Widget that displays notification icons in a grid", "icon": "widget.png", "type": "widget", diff --git a/apps/widmsggrid/widget.js b/apps/widmsggrid/widget.js index 6a5b175ac..c2f36a87d 100644 --- a/apps/widmsggrid/widget.js +++ b/apps/widmsggrid/widget.js @@ -70,7 +70,6 @@ w.total = w.srcs.length; w.srcs = w.srcs.filter((src, i, uniq) => uniq.indexOf(src) === i); // keep unique entries only Bangle.drawWidgets(); - Bangle.setLCDPower(1); // turns screen on }, hide: function () { w.hidden = true; w.width = 0; From 662df4beb635e21b4ba252c2a9629329c8abb607 Mon Sep 17 00:00:00 2001 From: Hugh Barney Date: Sun, 23 Apr 2023 18:51:30 +0100 Subject: [PATCH 0802/1725] clkinfogps updated screenshots, added image, fixed reset if no fix code --- apps/clkinfogps/app.png | Bin 1018 -> 789 bytes apps/clkinfogps/clkinfo.js | 21 ++++++++------------- apps/clkinfogps/screenshot0.png | Bin 2989 -> 3285 bytes apps/clkinfogps/screenshot1.png | Bin 2952 -> 3230 bytes apps/clkinfogps/screenshot2.png | Bin 3122 -> 3152 bytes apps/clkinfogps/screenshot3.png | Bin 2744 -> 3068 bytes 6 files changed, 8 insertions(+), 13 deletions(-) diff --git a/apps/clkinfogps/app.png b/apps/clkinfogps/app.png index 4082be18f43e8d2a46a4c39dc01ff6811f7fdb18..ab4aa46e5775064ccdda70fe6326ba6cec1ad5d1 100644 GIT binary patch delta 745 zcmV2@NJwa{;N4LOxGnhW5;!9-U{9d;D4t=z;|Go@Oz)YGY_nihk!v(GREexN0Gc6J;Lv*hj*#olFgL?fvx zxqCm)=B`7k>V7XXI`;8Dcr$c;-p|iQt(erz3Id{$RCewsW&9 zb_ay5({seMA>oK=AW|0^hBn|7@FH@^*B>L`u&_7TgTd1_Mj?+``|J_xCtzPuk6BBU bV1eU59u+Gu^(1_C00000NkvXXu0mjfKb%xO delta 976 zcmV;>126oQ2Kon(IDZ4INkl@nM}qOQmW0hCiNecT67N8M0l9Q_4g4P{3F zOjr)JQ@-2ds20E!?F!woWMcC$<* zvAuyr+de#E33 z9)nespL96VORU0y`2{d#&G}vj)=2DtM}9q)^ZPssUjSqPSPWp;(a{C!wImQgGj*FC z*f(nwK6|iAzW{0hoU&NHtWbeRZn%(mm4auGU6>i!LVpD>utwLGi;wel$+)6Cp zfpuBwGf%;V7m+nQk2cyB-0Ux{4orNWrb|Alu11-|ABb;J@K|d=coS`Svzy_AJ}Fw( z-E_|X>S)lUWF^DTl!YH8fJ)kUuHYu?G&!&#vo~m8u!PEe3f@Wlc!&V%Y2&VfzaU=X zH-cvraDN4ry*saAvqsK`2;dxTv?;h8CxliixMU^tIDkp!;N?D@n?2x4hyX6f*hhqy z(w9kXoxX7ZKWKQJk6{@(p<5vWxJeslecG5q2jRv1K z+t^0^(76tl!x^}X<|-`t9X#Y|ZPLgZo=qEze1F=A51>yjJoN(@aSV+N7dU)#J%zTi zO}_*CF2E}XAVHa%(OfU$0=99j)jn;THfeO(e~?CVeA1}gopCyaH?pQ=93>iN;V7{~ z!HdmdZg`Fkb9<9f)(&B(mX>lyU z(&8USvA}%&_m=#2yro4jzuLQ_6k5T;t5)3Y4iLZtrMUYWz?*$BA-RfB-6#@_LPR6C7o^#eATIDM^#%b^C#%%&O(s4;)Y82;h 240) { resetLastFix(); fixTs = Math.round(getTime()); + // cancel the timeout and power off the gps, tap required to restart + clearTimer(); + Bangle.setGPSPower(0,"clkinfo"); } info.items[0].emit("redraw"); }; + var img = function() { + return atob("GBgBAAAAAAAAABgAAb2ABzzgB37gD37wHn54AAAADEwIPn58Pn58Pv58Pn58FmA4AAAAHn54D37wD37gBzzAAb2AABgAAAAAAAAA"); + }; + var gpsText = function() { if (last_fix === undefined) return ''; @@ -100,6 +96,7 @@ { name: "gridref", get: function () { return ({ + img: img(), text: gpsText() }); }, run : function() { @@ -107,8 +104,6 @@ // if the timer is already runnuing reset it, we can get multiple run calls by tapping clearTimer(); Bangle.setGPSPower(1,"clkinfo"); - // turn GPS off after 5 mins if we dont get a fix, sooner if we get a fix - queueGPSoff(); }, show: function () { console.log("show"); diff --git a/apps/clkinfogps/screenshot0.png b/apps/clkinfogps/screenshot0.png index cfe9358d39be981324535631f5c0a86180b0f631..9429c369d262e701ad7b693294853c973613c681 100644 GIT binary patch literal 3285 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 literal 2989 zcmeHJX;jh+9{sb3ChjIGf>u^er9OM^2%0^GN_%CSrl};ko7$M>9=K-W(()2iG_t3e zs3LzZHqALRU*??oHfKJ~hu^*Do^wC_&hMVz%{l%nK~)*4 z3;=-Y;X^JbelYtVqXheb^-stAeh?_;1mPf1*M<5F0Px_$F3zXo{bm@S8c{W>87ae? z%#?7Ep(q0w(n`A#Cw97d3V)zR&ZIP?tSx;J)l1sGx~XlAl@b8m+R_VcXbm2i`3M4T zy1cS;V-wg|PfFdnv67&wzd4mhAl3EHl9EXH0oqD^gFA~YMa}mOoXCyKdy={du}E7! z(g_wt2!?j=+!|U!$+3ZX)+Kt})qRnH=T2QP)6n%L6D$OAT{3;Ry4Dn3BHm66ghN{; z74@4Uh;bom8AtIQGI*(GdLo=`TLz9AL8_b#>OQ%=18RxFCRlXV4qU`xd$H#ei2p`+rr4om)BB~>z2 zZW&>GKAd7lAt<>i;(?)Z$`x^eJ2__omFIOC}Jas-jYX}{menE5_{4vmH!?~&r;xv8@ zNbOjGe0jb-Zo^(GYFd$S?F)g13}CnWi9>#h(CFcTL;9b{|Cj%^jSfStg=1^@iH{#R zU&`e;@ciL)p_3N(!~C6!KX zxO=cItOM@8tu#>~23;wiqDlY@NQpeHQ}C=JOS2^4v(gLR>d!HRMedFiWu9hc;JWi< z-`RCq!>|LKQ$748sX)WDwF+>2d^pYs9rt}){>CAHAuKjhmxqYIg2;Hbo#Q~?zj{g# z=3!i*(J~D42wsXNC-J8DDuJ7Jv{tAZ-N>y{E8E|f_q-9W$FofLgf<2xcdQh>6KPLY zrw3C{i#w3!WU)D=`PKCUebflxX<{KEqHN!#KFqYEqYKJ-5b&WsLI%^5f?l3{U;4(j zqoThE3R)A54=FI-6_}USl&5(YzEAwkrgyfP>7a75q(H_~Lb^TmR!|8&%aGjcoZ9CN zI1N&8?a%q~&YjTthX~L)J>rDCSG=v}Ju9MFXwo!XDuC(m+ClkQGzuSLF<`Z9Z-#_M zYmo`ABzV-G@3O(q^z=;n+gF_DfFsnxN9HkT4xEW?7}Z}dGdCsY0MI>5G~?1yGqYRXJ7bOq|)@808z5rm~rA?B+Ge8)EKTK4Tio zs_eDvj)IqeebI6Um@WLY=i6SQ3EyXX1HXPu>gxumpIb&YpLjh)sx?@;uQ>b|I#scJ2x>*ZiU*m(jyP;1yA>T9QDE!+Wrhrx`#R?6@&fMuvj+Uv%m;(3vnEY~o`z^Jb0& z%+g8wmjhkCqL$@CJ`LxeU_7mt`_~4WES)?fQ1t8YJ&F0l6LcMA9Zj5(PS0vONSG)~ zs8MXMnDn@tKanu4B-}k~J>n<3W`A5485=wi8=1gifl1Dya#o|C`?7O+sNTyyaPlWNCz{! zVy-&23^E_H41%HR1IJ}+ku%bLQ8Xnxx_t*YV%?iZyVOp_NM)>Mh?MTvnMI7DzqpEV za;rT8qAF*X`B0zzanHE(Gq`>%RKG?oVjE1qvlO1xxxL9Nha2E{nmDG@@%EuXLeoRV z&kWp8VoLx08!OXTncK?1LkU3_F0N}cAmn`5Y*z8LUm@Tb)J zO>_fOZ^oT!?c}y5f?%5$IE5A9dy{tp_7~n8rJPp3PUx;(IXl{>OuVe$B5;srC+Oi2 zW@gfhCXsWRf`u@fiO_h-3O7~##gP;jY|cB`{2}ad`IkLCArSW6cN^H(zUnQ^V1t_s(q-zR>^$-7Yb=aSVDaBj`amGl i-T$MT{SRqaQ&cnbPdFO7wf;x{1`fOa>QZ-*nD%#v4|%Ns diff --git a/apps/clkinfogps/screenshot1.png b/apps/clkinfogps/screenshot1.png index ab17af5728f1cf64f60e85b6232ae9c967fa2c55..9e1d019bab296f0899679f12cde9c37c6d454277 100644 GIT binary patch literal 3230 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 G%6|c#yy{f| literal 2952 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 JsWA48`3EE9kc9vM diff --git a/apps/clkinfogps/screenshot2.png b/apps/clkinfogps/screenshot2.png index c912a37ea628c1616f270dbc788d50a55e13b6ea..7bb5bee36e2302afb9902e9c3b1613eaea31ca83 100644 GIT binary patch literal 3152 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 Date: Sun, 23 Apr 2023 18:56:17 +0100 Subject: [PATCH 0803/1725] clkinfogps updated screenshots, added image, fixed reset if no fix code --- apps/clkinfogps/metadata.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/clkinfogps/metadata.json b/apps/clkinfogps/metadata.json index 535cf50fc..7e51ed069 100644 --- a/apps/clkinfogps/metadata.json +++ b/apps/clkinfogps/metadata.json @@ -2,8 +2,9 @@ "id": "clkinfogps", "name": "GPS Grid Ref Clockinfo", "version":"0.01", - "description": "Clockinfo that display the GPS OS Grid Refernce", + "description": "Clockinfo that displays the GPS OS Grid Reference", "icon": "app.png", + "screenshots": [{"url":"screenshot1.png"}], "type": "clkinfo", "tags": "clkinfo,gps", "supports" : ["BANGLEJS2"], From 82ea342d390a8715be68cd48560192d72888d6bd Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 24 Apr 2023 10:42:16 +0100 Subject: [PATCH 0804/1725] resurface original bthrm app as bthrmlite - for https://forum.espruino.com/conversations/385841/#comment16951663 --- apps/bthrmlite/ChangeLog | 1 + apps/bthrmlite/README.md | 42 +++++++++++++++++++++ apps/bthrmlite/app-icon.js | 1 + apps/bthrmlite/app.png | Bin 0 -> 2756 bytes apps/bthrmlite/boot.js | 71 +++++++++++++++++++++++++++++++++++ apps/bthrmlite/metadata.json | 15 ++++++++ 6 files changed, 130 insertions(+) create mode 100644 apps/bthrmlite/ChangeLog create mode 100644 apps/bthrmlite/README.md create mode 100644 apps/bthrmlite/app-icon.js create mode 100644 apps/bthrmlite/app.png create mode 100644 apps/bthrmlite/boot.js create mode 100644 apps/bthrmlite/metadata.json diff --git a/apps/bthrmlite/ChangeLog b/apps/bthrmlite/ChangeLog new file mode 100644 index 000000000..2286a7f70 --- /dev/null +++ b/apps/bthrmlite/ChangeLog @@ -0,0 +1 @@ +0.01: New App! \ No newline at end of file diff --git a/apps/bthrmlite/README.md b/apps/bthrmlite/README.md new file mode 100644 index 000000000..7dd1751a7 --- /dev/null +++ b/apps/bthrmlite/README.md @@ -0,0 +1,42 @@ +# Bluetooth Heart Rate Monitor - Lite + +When this app is installed it overrides Bangle.js's built in heart rate monitor with an external Bluetooth one. + +The [`bthrm` app](https://banglejs.com/apps/?id=bthrm) is a much more sophisticated version of this app, however is uses a lot more +RAM so may not be suitable for Bangle.js 1. + +HRM is requested it searches on Bluetooth for a heart rate monitor, connects, and sends data back using the `Bangle.on('HRM'` event as if it came from the on board monitor. + +This means it's compatible with many Bangle.js apps including: + +* [Heart Rate Widget](https://banglejs.com/apps/#widhrt) +* [Heart Rate Recorder](https://banglejs.com/apps/#heart) + +It it NOT COMPATIBLE with [Heart Rate Monitor](https://banglejs.com/apps/#hrm) +as that requires live sensor data (rather than just BPM readings). + +## Usage + +Just install the app, then install an app that uses the heart rate monitor. + +Once an app requests Heart Rate `bthrmlite` will automatically try and connect to the first bluetooth +heart rate monitor it finds. + +**To disable this and return to normal HRM, uninstall the app** + +## Compatible Heart Rate Monitors + +This works with any heart rate monitor providing the standard Bluetooth +Heart Rate Service (`180D`) and characteristic (`2A37`). + +So far it has been tested on: + +* CooSpo Bluetooth Heart Rate Monitor + +## Internals + +This replaces `Bangle.setHRMPower` with its own implementation. + +## Creator + +Gordon Williams \ No newline at end of file diff --git a/apps/bthrmlite/app-icon.js b/apps/bthrmlite/app-icon.js new file mode 100644 index 000000000..04a5ee610 --- /dev/null +++ b/apps/bthrmlite/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEw4UA///g3yy06AoIZNitUAg8AgtVqtQAgoRCAwITBAggABAoIABAgsAgIGDoIEDoApDAAwwBFIV1BYo1E+oLTAgQLGJon9BZNXBatdBYRVFBYN/r9fHoxTBBYYlEL4QLFq/a1WUgE///fr4xBv/+1Wq1EAh/3/tX6/fv/6BYOqwCzBBYf9tWq9QLF79X+oLBDIOgKgILEEIIxBGAMVNAP/BYf/BYUFBYJSB6wLC9QLBeAQLBqwLCGAL9BBYmr9X+GAILBbIIlBBYP6/wwBBYMFBYZGB/4XDGAILD34vEcwYLB15HBBYYkBBYWrFwILDKoRTCVIQLCEgQXIEgVaF44YCoRHHAAMUgQuBNgILFgECO4W/BZCPFBYinGBY6/CAArXFBY7vDAAsq1QuB0ALIOwOABY0KEgJGGGAguHDAYDBA==")) diff --git a/apps/bthrmlite/app.png b/apps/bthrmlite/app.png new file mode 100644 index 0000000000000000000000000000000000000000..40c2ab024622fd92cf3908991804eb1def70e7ac GIT binary patch literal 2756 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 KMNUMnLSTaZ|1XvR literal 0 HcmV?d00001 diff --git a/apps/bthrmlite/boot.js b/apps/bthrmlite/boot.js new file mode 100644 index 000000000..96996b0a7 --- /dev/null +++ b/apps/bthrmlite/boot.js @@ -0,0 +1,71 @@ +(function() { + var log = function() {};//print + var gatt; + + Bangle.setHRMPower = function(isOn, app) { + // Do app power handling + if (!app) app="?"; + log("setHRMPower ->", isOn, app); + if (Bangle._PWR===undefined) Bangle._PWR={}; + if (Bangle._PWR.HRM===undefined) Bangle._PWR.HRM=[]; + if (isOn && !Bangle._PWR.HRM.includes(app)) Bangle._PWR.HRM.push(app); + if (!isOn && Bangle._PWR.HRM.includes(app)) Bangle._PWR.HRM = Bangle._PWR.HRM.filter(a=>a!=app); + isOn = Bangle._PWR.HRM.length; + // so now we know if we're really on + if (isOn) { + log("setHRMPower on", app); + if (!gatt) { + log("HRM not already on"); + NRF.requestDevice({ filters: [{ services: ['180D'] }] }).then(function(device) { + log("Found device "+device.id); + device.on('gattserverdisconnected', function(reason) { + gatt = undefined; + }); + return device.gatt.connect(); + }).then(function(g) { + log("Connected"); + gatt = g; + return gatt.getPrimaryService(0x180D); + }).then(function(service) { + return service.getCharacteristic(0x2A37); + }).then(function(characteristic) { + log("Got characteristic"); + characteristic.on('characteristicvaluechanged', function(event) { + var dv = event.target.value; + var flags = dv.getUint8(0); + // 0 = 8 or 16 bit + // 1,2 = sensor contact + // 3 = energy expended shown + // 4 = RR interval + var bpm = (flags&1) ? (dv.getUint16(1)/100/* ? */) : dv.getUint8(1); // 8 or 16 bit + /* var idx = 2 + (flags&1); // index of next field + if (flags&8) idx += 2; // energy expended + if (flags&16) { + var interval = dv.getUint16(idx,1); // in milliseconds + }*/ + Bangle.emit('HRM',{ + bpm:bpm, + confidence:100 + }); + }); + return characteristic.startNotifications(); + }).then(function() { + log("Ready"); + console.log("Done!"); + }).catch(function(err) { + console.log("Error",err); + gatt = undefined; + }); + } + } else { // not on + log("setHRMPower off", app); + if (gatt) { + log("HRM connected - disconnecting"); + try {gatt.disconnect();}catch(e) { + log("HRM disconnect error", e); + } + gatt = undefined; + } + } + }; +})(); \ No newline at end of file diff --git a/apps/bthrmlite/metadata.json b/apps/bthrmlite/metadata.json new file mode 100644 index 000000000..e4b95cca8 --- /dev/null +++ b/apps/bthrmlite/metadata.json @@ -0,0 +1,15 @@ +{ "id": "bthrmlite", + "name": "Bluetooth Heart Rate Monitor (Lite)", + "shortName":"BT HRM", + "version":"0.01", + "description": "Overrides Bangle.js's build in heart rate monitor with an external Bluetooth one. Cut-down version that uses less RAM.", + "icon": "app.png", + "tags": "health,bluetooth", + "type": "bootloader", + "supports" : ["BANGLEJS","BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"bthrmlite.boot.js","url":"boot.js"}, + {"name":"bthrmlite.img","url":"app-icon.js","evaluate":true} + ] +} \ No newline at end of file From b7d49cbbf8411b2373b13366eaff642246fb4939 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 24 Apr 2023 10:56:01 +0100 Subject: [PATCH 0805/1725] allow log messages --- apps/bthrm/README.md | 4 ++-- apps/bthrmlite/README.md | 2 ++ apps/bthrmlite/boot.js | 4 ++++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/apps/bthrm/README.md b/apps/bthrm/README.md index f4eaf43af..6234f3b78 100644 --- a/apps/bthrm/README.md +++ b/apps/bthrm/README.md @@ -1,6 +1,6 @@ # Bluetooth Heart Rate Monitor -When this app is installed it overrides Bangle.js's build in heart rate monitor with an external Bluetooth one. +When this app is installed it overrides Bangle.js's built in heart rate monitor with an external Bluetooth one. HRM is requested it searches on Bluetooth for a heart rate monitor, connects, and sends data back using the `Bangle.on('HRM')` event as if it came from the on board monitor. @@ -44,7 +44,7 @@ So far it has been tested on: ## Recorder plugin -The recorder plugin can record the BT HRM event (blue) and the original unchanged HRM event (green). This is mainly useful for debugging purposes or comparing the BT with the internal HRM, as the resulting "merged" HRM can be recordet using the default HRM recorder. +The recorder plugin can record the BT HRM event (blue) and the original unchanged HRM event (green). This is mainly useful for debugging purposes or comparing the BT with the internal HRM, as the resulting "merged" HRM can be recorded using the default HRM recorder. ## Internals diff --git a/apps/bthrmlite/README.md b/apps/bthrmlite/README.md index 7dd1751a7..5bfdc9a83 100644 --- a/apps/bthrmlite/README.md +++ b/apps/bthrmlite/README.md @@ -37,6 +37,8 @@ So far it has been tested on: This replaces `Bangle.setHRMPower` with its own implementation. +To get debug info, you can call `Bangle.enableBTHRMLog()` in the IDE to enable log messages. + ## Creator Gordon Williams \ No newline at end of file diff --git a/apps/bthrmlite/boot.js b/apps/bthrmlite/boot.js index 96996b0a7..89ca49c38 100644 --- a/apps/bthrmlite/boot.js +++ b/apps/bthrmlite/boot.js @@ -2,6 +2,10 @@ var log = function() {};//print var gatt; + Bangle.enableBTHRMLog = function() { + log = print; + }; + Bangle.setHRMPower = function(isOn, app) { // Do app power handling if (!app) app="?"; From d42a80da00883a86cb74be2f62f69c803b499d96 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 24 Apr 2023 11:27:08 +0100 Subject: [PATCH 0806/1725] add workaround for connection timeout issue --- apps/bthrmlite/boot.js | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/apps/bthrmlite/boot.js b/apps/bthrmlite/boot.js index 89ca49c38..d10266789 100644 --- a/apps/bthrmlite/boot.js +++ b/apps/bthrmlite/boot.js @@ -1,6 +1,6 @@ -(function() { - var log = function() {};//print - var gatt; +{ + let log = function() {};//print + let gatt; Bangle.enableBTHRMLog = function() { log = print; @@ -57,8 +57,11 @@ log("Ready"); console.log("Done!"); }).catch(function(err) { - console.log("Error",err); + console.log("BTHRM Error",err); gatt = undefined; + // retry connection if we got a connect timeout + if (err == "Connection Timeout") + setTimeout(Bangle.setHRMPower, 1000, isOn, app); }); } } else { // not on @@ -72,4 +75,15 @@ } } }; -})(); \ No newline at end of file +// disconnect when swapping apps +E.on("kill", function() { + if (gatt) { + log("HRM connected - disconnecting"); + try {gatt.disconnect();}catch(e) { + log("HRM disconnect error", e); + } + gatt = undefined; + } +}); + +} \ No newline at end of file From c39a88f37bd9e984cea8747fd5e416812dbb75a5 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 24 Apr 2023 21:51:02 +0100 Subject: [PATCH 0807/1725] drained: add app icon --- apps/drained/app-icon.js | 1 + apps/drained/metadata.json | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 apps/drained/app-icon.js diff --git a/apps/drained/app-icon.js b/apps/drained/app-icon.js new file mode 100644 index 000000000..36c3683a2 --- /dev/null +++ b/apps/drained/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwxH+AH4AwqwAHF84HOF/6OQA5pe/F/4v2X1AvHL1crF9srwMrMwWJAAIvlFwIABAwQvCGEJXCFwYvBSQIvDGEAuHqySBF4gwfK4IuDF4IDClowjFwovEMMYuHF4gwhFw16q16BAoweFwwvJGAwueGAQJIGAgufABYvYFypfYFy3+F6wuXF6wuYF6ouZL9QuEX9IuFF64wQFwwvYGBwuHF7IwMFxAvaGBQuJF7YwIFxQvcGAwuLF7owEFxgveGAQuNF74wBB5wvfAB4v/FDgANM1YA/AH4A/AHI")) diff --git a/apps/drained/metadata.json b/apps/drained/metadata.json index b665311a4..89a069b2f 100644 --- a/apps/drained/metadata.json +++ b/apps/drained/metadata.json @@ -12,6 +12,7 @@ "storage": [ {"name":"drained.boot.js","url":"boot.js"}, {"name":"drained.app.js","url":"app.js"}, - {"name":"drained.settings.js","url":"settings.js"} + {"name":"drained.settings.js","url":"settings.js"}, + {"name":"drained.img","url":"app-icon.js","evaluate":true} ] } From 67d89761b53e8273f55ded723616ed1c0f7f8344 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 24 Apr 2023 20:47:12 +0100 Subject: [PATCH 0808/1725] Fix wid_edit draw() - pass WIDGET as first argument When attempting to edit a widget whose `draw` function takes the widget as an argument, we get an exception from that `draw` function. This fixes that by catering for both APIs. The back button widget expects this, as does [`widsleepstatus`], [`widlock`] and [`widlockunlock`]. There are other widgets ([`widmessages`], [`widbatpc`] and [`widalarmeta`]) which use something else for the first parameter, however these are type-checked and used to distinguish calls from `Bangle.drawWidgets()` and elsewhere. [`widsleepstatus`]: https://github.com/espruino/BangleApps/blob/2f6862024d6b92a11fd05a5183a1dd9a53dc5e48/apps/widsleepstatus/widget.js#L20 [`widlock`]: https://github.com/espruino/BangleApps/blob/2f6862024d6b92a11fd05a5183a1dd9a53dc5e48/apps/widlock/widget.js#L5 [`widlockunlock`]: https://github.com/espruino/BangleApps/blob/2f6862024d6b92a11fd05a5183a1dd9a53dc5e48/apps/widlockunlock/widget.js#L27 [`widmessages`]: https://github.com/espruino/BangleApps/blob/2f6862024d6b92a11fd05a5183a1dd9a53dc5e48/apps/widmessages/widget.js#L14 [`widbatpc`]: https://github.com/espruino/BangleApps/blob/2f6862024d6b92a11fd05a5183a1dd9a53dc5e48/apps/widbatpc/widget.js#L89 [`widalarmeta`]: https://github.com/espruino/BangleApps/blob/2f6862024d6b92a11fd05a5183a1dd9a53dc5e48/apps/widalarmeta/widget.js#L28 --- apps/wid_edit/settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wid_edit/settings.js b/apps/wid_edit/settings.js index 1d34ae0ca..be09923f2 100644 --- a/apps/wid_edit/settings.js +++ b/apps/wid_edit/settings.js @@ -67,7 +67,7 @@ function highlight() { if (WIDGET.width > 0) { // draw widget, then draw a highlighted border on top - WIDGET.draw(); + WIDGET.draw(WIDGET); g.setColor(g.theme.fgH) .drawRect(WIDGET.x, WIDGET.y, WIDGET.x+WIDGET.width-1, WIDGET.y+23); } else { From c7d60250a6cc2672dfccb7393fbb8ed8d283a08b Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Tue, 25 Apr 2023 10:09:07 +0100 Subject: [PATCH 0809/1725] Misc recorder/openstmap tweaks --- apps/openstmap/ChangeLog | 2 ++ apps/openstmap/app.js | 7 +++++- apps/openstmap/interface.html | 4 +-- apps/openstmap/metadata.json | 2 +- apps/recorder/ChangeLog | 3 +++ apps/recorder/README.md | 19 ++++++++++++++ apps/recorder/app.js | 37 +++++++++++++++++++++------ apps/recorder/metadata.json | 2 +- apps/recorder/widget.js | 47 +++++++++++++++++++++++++---------- 9 files changed, 97 insertions(+), 26 deletions(-) diff --git a/apps/openstmap/ChangeLog b/apps/openstmap/ChangeLog index a256b459c..d8ab55482 100644 --- a/apps/openstmap/ChangeLog +++ b/apps/openstmap/ChangeLog @@ -17,3 +17,5 @@ Satellite count moved to widget bar to leave more room for the map 0.15: Make track drawing an option (default off) 0.16: Draw waypoints, too. +0.17: With new Recorder app allow track to be drawn in the background + Switch tile layer URL for faster/more reliable map tiles \ No newline at end of file diff --git a/apps/openstmap/app.js b/apps/openstmap/app.js index a5130d23e..c69ccece3 100644 --- a/apps/openstmap/app.js +++ b/apps/openstmap/app.js @@ -5,6 +5,7 @@ var fix = {}; var mapVisible = false; var hasScrolled = false; var settings = require("Storage").readJSON("openstmap.json",1)||{}; +var plotTrack; // Redraw the whole page function redraw() { @@ -20,7 +21,9 @@ function redraw() { } if (HASWIDGETS && WIDGETS["recorder"] && WIDGETS["recorder"].plotTrack) { g.setColor("#f00").flip(); // force immediate draw on double-buffered screens - track will update later - WIDGETS["recorder"].plotTrack(m); + plotTrack = WIDGETS["recorder"].plotTrack(m, { async : true, callback : function() { + plotTrack = undefined; + }}); } } g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); @@ -79,6 +82,7 @@ function showMap() { g.reset().clearRect(R); redraw(); Bangle.setUI({mode:"custom",drag:e=>{ + if (plotTrack && plotTrack.stop) plotTrack.stop(); if (e.b) { g.setClipRect(R.x,R.y,R.x2,R.y2); g.scroll(e.dx,e.dy); @@ -90,6 +94,7 @@ function showMap() { redraw(); } }, btn: btn=>{ + if (plotTrack && plotTrack.stop) plotTrack.stop(); mapVisible = false; var menu = {"":{title:"Map"}, "< Back": ()=> showMap(), diff --git a/apps/openstmap/interface.html b/apps/openstmap/interface.html index 0bf2268a4..ba1246d9f 100644 --- a/apps/openstmap/interface.html +++ b/apps/openstmap/interface.html @@ -87,8 +87,8 @@ TODO: However some don't allow cross-origin use */ //var TILELAYER = 'https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png'; // simple, high contrast, TOO SLOW //var TILELAYER = 'http://a.tile.stamen.com/toner/{z}/{x}/{y}.png'; // black and white - var TILELAYER = 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'; - var PREVIEWTILELAYER = 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'; + var TILELAYER = 'https://tile.openstreetmap.org/{z}/{x}/{y}.png'; + var PREVIEWTILELAYER = 'https://tile.openstreetmap.org/{z}/{x}/{y}.png'; var loadedMaps = []; diff --git a/apps/openstmap/metadata.json b/apps/openstmap/metadata.json index 4419cd411..97bc7cc05 100644 --- a/apps/openstmap/metadata.json +++ b/apps/openstmap/metadata.json @@ -2,7 +2,7 @@ "id": "openstmap", "name": "OpenStreetMap", "shortName": "OpenStMap", - "version": "0.16", + "version": "0.17", "description": "Loads map tiles from OpenStreetMap onto your Bangle.js and displays a map of where you are. Once installed this also adds map functionality to `GPS Recorder` and `Recorder` apps", "readme": "README.md", "icon": "app.png", diff --git a/apps/recorder/ChangeLog b/apps/recorder/ChangeLog index c3e20ed34..5f1b7a492 100644 --- a/apps/recorder/ChangeLog +++ b/apps/recorder/ChangeLog @@ -26,3 +26,6 @@ 0.20: Automatic translation of some more strings. 0.21: Speed report now uses speed units from locale 0.22: Convert Yes/No On/Off in settings to checkboxes +0.23: Add graphing for HRM, fix some other graphs + Altitude graphing now uses barometer altitude if it exists + plotTrack in widget allows track to be drawn in the background (doesn't block execution) \ No newline at end of file diff --git a/apps/recorder/README.md b/apps/recorder/README.md index 87be34424..34955b986 100644 --- a/apps/recorder/README.md +++ b/apps/recorder/README.md @@ -20,10 +20,29 @@ You can record * **BAT** Battery percentage and voltage * **Core** CoreTemp body temperature +You can then start/stop recording from the Recorder app itself (and as long as widgets are +enabled in the app you're using, you can move to another app and continue recording). +Some apps like the [Run app](https://banglejs.com/apps/?id=run) are able to automatically start/stop the Recorder too. + **Note:** It is possible for other apps to record information using this app as well. They need to define a `foobar.recorder.js` file - see the `getRecorders` function in `widget.js` for more information. +## Graphing + +You can download the information to the PC using [the App Loader](https://banglejs.com/apps/?id=recorder). Connect +to your Bangle, then in `My Apps` click the disk icon next to the `Recorder` app to download data. + +You can also view some information on the watch. + +* Tap `View Tracks` +* Tap on the Track number you're interested in, and you'll see a page with information about that track... + * `Plot Map` plots a map using GPS coordinates + * `Plot OpenStMap` plots a map using GPS coordinates on top of an OpenStreetMap map (if the app is installed) + * `Plot Alt` plots altitude over time + * `Plot Speed` plots speed over time + * `Plot HRM` plots heart rate over time + ## Tips When recording GPS, it usually takes several minutes for the watch to get a [GPS fix](https://en.wikipedia.org/wiki/Time_to_first_fix). There is a red satellite symbol, which you will see turn green when you get an actual GPS Fix. You can [upload assistant files](https://banglejs.com/apps/#assisted%20gps%20update) to speed up the time spent on getting a GPS fix. diff --git a/apps/recorder/app.js b/apps/recorder/app.js index 972a9580d..9e9b58f78 100644 --- a/apps/recorder/app.js +++ b/apps/recorder/app.js @@ -60,9 +60,9 @@ function showMainMenu() { setTimeout(function() { E.showMenu(); WIDGETS["recorder"].setRecording(v).then(function() { - print(/*LANG*/"Complete"); + //print("Record start Complete"); loadSettings(); - print(settings.recording); + print("Recording: "+settings.recording); showMainMenu(); }); }, 1); @@ -185,7 +185,7 @@ function viewTrack(filename, info) { '': { 'title': /*LANG*/'Track '+info.fn } }; if (info.time) - menu[info.time.toISOString().substr(0,16).replace("T"," ")] = function(){}; + menu[info.time.toISOString().substr(0,16).replace("T"," ")] = {}; menu["Duration"] = { value : asTime(info.duration)}; menu["Records"] = { value : ""+info.records }; if (info.fields.includes("Latitude")) @@ -198,7 +198,8 @@ function viewTrack(filename, info) { info.qOSTM = true; plotTrack(info); } - if (info.fields.includes("Altitude")) + if (info.fields.includes("Altitude") || + info.fields.includes("Barometer Altitude")) menu[/*LANG*/'Plot Alt.'] = function() { plotGraph(info, "Altitude"); }; @@ -206,6 +207,10 @@ function viewTrack(filename, info) { menu[/*LANG*/'Plot Speed'] = function() { plotGraph(info, "Speed"); }; + if (info.fields.includes("Heartrate")) + menu[/*LANG*/'Plot HRM'] = function() { + plotGraph(info, "Heartrate"); + }; // TODO: steps, heart rate? menu[/*LANG*/'Erase'] = function() { E.showPrompt(/*LANG*/"Delete Track?").then(function(v) { @@ -331,14 +336,26 @@ function viewTrack(filename, info) { var l = f.readLine(f); l = f.readLine(f); // skip headers var nl = 0, c, i; + var factor = 1; // multiplier used for values when graphing var timeIdx = info.fields.indexOf("Time"); if (l!==undefined) { c = l.split(","); strt = c[timeIdx]; } - if (style=="Altitude") { - title = /*LANG*/"Altitude (m)"; - var altIdx = info.fields.indexOf("Altitude"); + if (style=="Heartrate") { + title = /*LANG*/"Heartrate (bpm)"; + var hrmIdx = info.fields.indexOf("Heartrate"); + while(l!==undefined) { + ++nl;c=l.split(",");l = f.readLine(f); + if (c[hrmIdx]=="") continue; + i = Math.round(80*(c[timeIdx] - strt)/dur); + infn[i]+=+c[hrmIdx]; + infc[i]++; + } + } else if (style=="Altitude") { + title = /*LANG*/"Altitude (m)"; + var altIdx = info.fields.indexOf("Barometer Altitude"); + if (altIdx<0) altIdx = info.fields.indexOf("Altitude"); while(l!==undefined) { ++nl;c=l.split(",");l = f.readLine(f); if (c[altIdx]=="") continue; @@ -350,7 +367,7 @@ function viewTrack(filename, info) { // use locate to work out units var localeStr = require("locale").speed(1,5); // get what 1kph equates to let units = localeStr.replace(/[0-9.]*/,""); - var factor = parseFloat(localeStr)*3.6; // m/sec to whatever out units are + factor = parseFloat(localeStr)*3.6; // m/sec to whatever out units are // title title = /*LANG*/"Speed"+` (${units})`; var latIdx = info.fields.indexOf("Latitude"); @@ -386,6 +403,10 @@ function viewTrack(filename, info) { var min=100000,max=-100000; for (var i=0;i0) infn[i]=factor*infn[i]/infc[i]; + else { // no data - search back and see if we can find something + for (var j=i-1;j>=0;j--) + if (infc[j]) { infn[i]=infn[j]; break; } + } var n = infn[i]; if (n>max) max=n; if (n Date: Tue, 25 Apr 2023 22:09:05 +0100 Subject: [PATCH 0810/1725] Fix ABI of widget.draw() --- apps/widalarmeta/widget.js | 7 ++++--- apps/widbatpc/widget.js | 2 +- apps/widmessages/widget.js | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/apps/widalarmeta/widget.js b/apps/widalarmeta/widget.js index 77b7ebb88..d24b185d9 100644 --- a/apps/widalarmeta/widget.js +++ b/apps/widalarmeta/widget.js @@ -25,7 +25,7 @@ } } // getNextAlarm - function draw(fromInterval) { + function draw(_w, fromInterval) { if (this.nextAlarm === undefined) { let alarm = getNextAlarm(); if (alarm === undefined) { @@ -101,8 +101,9 @@ clearTimeout(this.timeoutId); } this.timeoutId = setTimeout(()=>{ - WIDGETS["widalarmeta"].timeoutId = undefined; - WIDGETS["widalarmeta"].draw(true); + var w = WIDGETS["widalarmeta"]; + w.timeoutId = undefined; + w.draw(w, true); }, timeout); } /* draw */ diff --git a/apps/widbatpc/widget.js b/apps/widbatpc/widget.js index b508cce8b..7ba060d6d 100644 --- a/apps/widbatpc/widget.js +++ b/apps/widbatpc/widget.js @@ -181,7 +181,7 @@ if (on) update(); }); - var id = setInterval(()=>WIDGETS["batpc"].draw(true), intervalLow); + var id = setInterval(()=>WIDGETS["batpc"].draw(WIDGETS["batpc"], true), intervalLow); WIDGETS["batpc"]={area:"tr",width:40,draw:draw,reload:reload}; setWidth(); diff --git a/apps/widmessages/widget.js b/apps/widmessages/widget.js index 44f525ec8..357ca06e3 100644 --- a/apps/widmessages/widget.js +++ b/apps/widmessages/widget.js @@ -11,7 +11,7 @@ // the name still needs to be "messages": the library calls WIDGETS["messages'].hide()/show() // see e.g. widmsggrid WIDGETS["messages"] = { - area: "tl", width: 0, srcs: [], draw: function(recall) { + area: "tl", width: 0, srcs: [], draw: function(_w, recall) { // If we had a setTimeout queued from the last time we were called, remove it if (WIDGETS["messages"].i) { clearTimeout(WIDGETS["messages"].i); @@ -42,7 +42,7 @@ this.x+12+i*24, this.y+12, {rotate: 0/*force centering*/}); } } - WIDGETS["messages"].i = setTimeout(() => WIDGETS["messages"].draw(true), 1000); + WIDGETS["messages"].i = setTimeout(() => WIDGETS["messages"].draw(WIDGETS["messages"], true), 1000); if (process.env.HWVERSION>1) Bangle.on("touch", this.touch); }, onMsg: function(type, msg) { if (this.hidden) return; From d56de3048bc30b2a2e4669d8106d1708ed3a7a9a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 25 Apr 2023 22:23:17 +0100 Subject: [PATCH 0811/1725] Move minify setting into expandable area, and warn This moves the minify option to an expandable advanced section, and changes the warning ("may" -> "will") See #2562 for more details. --- index.html | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/index.html b/index.html index 1ed95107e..e7b7c7bd4 100644 --- a/index.html +++ b/index.html @@ -146,10 +146,6 @@ Pretokenise apps before upload (smaller, faster apps) - +
    + Advanced Options + +
    + +   Translations (BETA - more info). Any apps that are uploaded to Bangle.js after changing this will have any text automatically translated. +
    Advanced Options
    -
    -   Translations (BETA - more info). Any apps that are uploaded to Bangle.js after changing this will have any text automatically translated. -
    @@ -134,7 +136,8 @@ -

    + +

    Settings

    @@ -147,12 +150,24 @@ Always update time when we connect +
    privacy policy. +
      Translations (BETA - more info). Any apps that are uploaded to Bangle.js after changing this will have any text automatically translated.
    - +
    + Advanced Options + + +
    - - - - - - - - - - - + + + + + + + + + + + +
    @@ -132,14 +133,14 @@

    Using Espruino, Icons from icons8.com

    Utilities

    -

    - - - - -

    -

    -

    +

    + + + + +

    +

    +

    Settings

    - - - - - - - - - - - + + + + + + + + + + + +
    @@ -132,14 +133,14 @@

    Using Espruino, Icons from icons8.com

    Utilities

    -

    - - - - -

    -

    -

    +

    + + + + +

    +

    +

    Settings

    + + + + + + + + + +
    DateHoliday
    + +

    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    + + + + + diff --git a/apps/calendar/metadata.json b/apps/calendar/metadata.json index bf5c67b09..b7e40a1fd 100644 --- a/apps/calendar/metadata.json +++ b/apps/calendar/metadata.json @@ -9,10 +9,11 @@ "supports": ["BANGLEJS","BANGLEJS2"], "readme": "README.md", "allow_emulator": true, + "interface": "interface.html", "storage": [ {"name":"calendar.app.js","url":"calendar.js"}, {"name":"calendar.settings.js","url":"settings.js"}, {"name":"calendar.img","url":"calendar-icon.js","evaluate":true} ], - "data": [{"name":"calendar.json"}] + "data": [{"name":"calendar.json"}, {"name":"calendar.holiday.json"}] } From 2d752832b734aa85052c63211f7e9ea8be53a7b6 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Tue, 2 May 2023 22:31:21 +0200 Subject: [PATCH 0858/1725] sched/interface: fix date format --- apps/sched/interface.html | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 366e597a2..f1ace7d0c 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -3,7 +3,7 @@ - + -

    Holidays

    +

    Holidays

    - +
    + + diff --git a/apps/calendar/metadata.json b/apps/calendar/metadata.json index b7e40a1fd..44a68d879 100644 --- a/apps/calendar/metadata.json +++ b/apps/calendar/metadata.json @@ -15,5 +15,5 @@ {"name":"calendar.settings.js","url":"settings.js"}, {"name":"calendar.img","url":"calendar-icon.js","evaluate":true} ], - "data": [{"name":"calendar.json"}, {"name":"calendar.holiday.json"}] + "data": [{"name":"calendar.json"}, {"name":"calendar.days.json"}] } From f9710e75e1b87202f8b58fc029e2f62591a097b1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 3 May 2023 08:08:58 +0100 Subject: [PATCH 0904/1725] popcon: update README & metadata --- apps/popconlaunch/README.md | 7 +------ apps/popconlaunch/metadata.json | 2 +- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/apps/popconlaunch/README.md b/apps/popconlaunch/README.md index 7804ebd73..416151751 100644 --- a/apps/popconlaunch/README.md +++ b/apps/popconlaunch/README.md @@ -1,9 +1,4 @@ Popcon ====== -Display apps sorted by regular use. - -Settings --------- - -- `Show Clocks` - Whether clocks are shown in the app list. Default `Yes`. +Display apps sorted by regular use. No config - install the app and all your launchers will sort apps by most popular, based off launch counts within the last month, and then sort them by the most recently launched app. diff --git a/apps/popconlaunch/metadata.json b/apps/popconlaunch/metadata.json index 5963cc44c..4088f8dc0 100644 --- a/apps/popconlaunch/metadata.json +++ b/apps/popconlaunch/metadata.json @@ -3,7 +3,7 @@ "name": "Popcon Launcher", "shortName": "Popcon", "version": "0.01", - "description": "Launcher displaying your favourite (popular) apps first", + "description": "Launcher modification - your launchers will display your favourite (popular) apps first", "readme": "README.md", "icon": "app.png", "type": "bootloader", From d888b80ea125b75939759ff2865aa66db2c90865 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 3 May 2023 22:03:07 +0100 Subject: [PATCH 0905/1725] Ratchet launch: bump version --- apps/powermanager/ChangeLog | 3 ++- apps/powermanager/metadata.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/powermanager/ChangeLog b/apps/powermanager/ChangeLog index ee31195b2..d1c288f97 100644 --- a/apps/powermanager/ChangeLog +++ b/apps/powermanager/ChangeLog @@ -8,4 +8,5 @@ Add widget for live monitoring of power use 0.07: Convert Yes/No On/Off in settings to checkboxes 0.08: Fix the wrapping of intervals/timeouts with parameters - Fix the widget drawing if widgets are hidden and Bangle.setLCDBrightness is called \ No newline at end of file + Fix the widget drawing if widgets are hidden and Bangle.setLCDBrightness is called +0.09: Cache the app-launch info \ No newline at end of file diff --git a/apps/powermanager/metadata.json b/apps/powermanager/metadata.json index 5487c2278..92c471fd6 100644 --- a/apps/powermanager/metadata.json +++ b/apps/powermanager/metadata.json @@ -2,7 +2,7 @@ "id": "powermanager", "name": "Power Manager", "shortName": "Power Manager", - "version": "0.08", + "version": "0.09", "description": "Allow configuration of warnings and thresholds for battery charging and display.", "icon": "app.png", "type": "bootloader", From 09c3445ac3d5608db4d2d8b39e0c5cf2aac5f370 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 3 May 2023 22:14:41 +0100 Subject: [PATCH 0906/1725] popcon: make orderChanged local --- apps/popconlaunch/boot.ts | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/apps/popconlaunch/boot.ts b/apps/popconlaunch/boot.ts index 8b2e9fe18..ef522b9f1 100644 --- a/apps/popconlaunch/boot.ts +++ b/apps/popconlaunch/boot.ts @@ -10,7 +10,6 @@ let cache: undefined | { last: Timestamp, } }; -let orderchanged = false; const ensureCache = (): NonNull => { if(!cache){ @@ -21,7 +20,7 @@ const ensureCache = (): NonNull => { return cache; }; -const saveCache = () => { +const saveCache = (orderChanged: boolean) => { require("Storage").writeJSON("popcon.cache.json", cache); if(orderchanged){ // wipe launcher cache @@ -58,10 +57,12 @@ const sortCache = () => { }); let i = 0; + let orderChanged = false; for(const ent of ents){ - if(ent.sortorder !== i) orderchanged = true; + if(ent.sortorder !== i) orderChanged = true; ent.sortorder = i++; } + return orderChanged; }; require("Storage").readJSON = ((fname, skipExceptions) => { @@ -92,8 +93,8 @@ global.load = (src: string) => { }; ent.pop++; ent.last = Date.now(); - sortCache(); - saveCache(); + const orderChanged = sortCache(); + saveCache(orderChanged); } return oldLoad(src); From eb0af982c5f7006eba1f190f40d311f520c3aef1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 3 May 2023 22:14:54 +0100 Subject: [PATCH 0907/1725] popcon: use own .info file to bust launcher cache --- apps/popconlaunch/boot.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/popconlaunch/boot.ts b/apps/popconlaunch/boot.ts index ef522b9f1..10ea38b61 100644 --- a/apps/popconlaunch/boot.ts +++ b/apps/popconlaunch/boot.ts @@ -22,11 +22,11 @@ const ensureCache = (): NonNull => { const saveCache = (orderChanged: boolean) => { require("Storage").writeJSON("popcon.cache.json", cache); - if(orderchanged){ - // wipe launcher cache - require("Storage") - .list(/launch.*cache/) - .forEach(f => require("Storage").erase(f)) + if(orderChanged){ + // ensure launchers reload their caches: + const info: AppInfo & { cacheBuster?: boolean } = oldRead("popcon.info", true); + info.cacheBuster = !info.cacheBuster; + require("Storage").writeJSON("popcon.info", info); } }; From 988945f0dcd6845807875606c8f1565987e9d3b1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 3 May 2023 22:16:29 +0100 Subject: [PATCH 0908/1725] popcon: regenerate JS --- apps/popconlaunch/boot.js | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/apps/popconlaunch/boot.js b/apps/popconlaunch/boot.js index 613cb3474..d7ba2e525 100644 --- a/apps/popconlaunch/boot.js +++ b/apps/popconlaunch/boot.js @@ -1,7 +1,6 @@ var oldRead = require("Storage").readJSON; var monthAgo = Date.now() - 1000 * 86400 * 28; var cache; -var orderchanged = false; var ensureCache = function () { if (!cache) { cache = oldRead("popcon.cache.json", true); @@ -10,12 +9,12 @@ var ensureCache = function () { } return cache; }; -var saveCache = function () { +var saveCache = function (orderChanged) { require("Storage").writeJSON("popcon.cache.json", cache); - if (orderchanged) { - require("Storage") - .list(/launch.*cache/) - .forEach(function (f) { return require("Storage").erase(f); }); + if (orderChanged) { + var info = oldRead("popcon.info", true); + info.cacheBuster = !info.cacheBuster; + require("Storage").writeJSON("popcon.info", info); } }; var sortCache = function () { @@ -40,12 +39,14 @@ var sortCache = function () { return 0; }); var i = 0; + var orderChanged = false; for (var _i = 0, ents_1 = ents; _i < ents_1.length; _i++) { var ent = ents_1[_i]; if (ent.sortorder !== i) - orderchanged = true; + orderChanged = true; ent.sortorder = i++; } + return orderChanged; }; require("Storage").readJSON = (function (fname, skipExceptions) { var _a; @@ -71,8 +72,8 @@ global.load = function (src) { }); ent.pop++; ent.last = Date.now(); - sortCache(); - saveCache(); + var orderChanged = sortCache(); + saveCache(orderChanged); } return oldLoad(src); }; From f1f590a3f5d6d47bf4feb97c4a736f594da8d4a2 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 4 May 2023 12:06:31 +0100 Subject: [PATCH 0909/1725] Allow installation of a backup without an erase --- backup.js | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/backup.js b/backup.js index 06d98a366..09f65af99 100644 --- a/backup.js +++ b/backup.js @@ -70,7 +70,7 @@ function bangleUpload() { var zip = new JSZip(); var cmds = ""; zip.loadAsync(data).then(function(zip) { - return showPrompt("Restore from ZIP","Are you sure? This will remove all existing apps"); + return showPrompt("Restore from ZIP","Are you sure? This will overwrite existing apps"); }).then(()=>{ Progress.show({title:`Reading ZIP`}); zip.forEach(function (path, file){ @@ -91,10 +91,15 @@ function bangleUpload() { }); return promise; }) - .then(() => { - Progress.hide({sticky:true}); - Progress.show({title:`Erasing...`}); - return Comms.removeAllApps(); }) + .then(()=>new Promise(resolve => { + showPrompt("Erase Storage","Erase Storage? If restoring a complete backup you should erase storage, but in some cases you may want to upload files from a ZIP while keeping your Bangle's existing data.").then(()=>resolve(true), ()=>resolve(false)); + })) + .then(eraseStorage => { + if (eraseStorage) { + Progress.hide({sticky:true}); + Progress.show({title:`Erasing...`}); + return Comms.removeAllApps(); + }}) .then(() => { Progress.hide({sticky:true}); Progress.show({title:`Restoring...`, sticky:true}); From bf82abd1045785daa4cb93d041c11d9418f20824 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 4 May 2023 12:07:01 +0100 Subject: [PATCH 0910/1725] Add button to reset Bangle's settings --- index.html | 14 +++++++++----- loader.js | 11 ++++++++++- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/index.html b/index.html index d7ca4169f..0808f31fa 100644 --- a/index.html +++ b/index.html @@ -133,14 +133,18 @@

    Using Espruino, Icons from icons8.com

    Utilities

    -

    +

    + -

    -

    -

    +

    + + + + +

    Settings

    - +
    From d3ce1a21a266218e2bd153f2ebfbc73c7ba84df0 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 18 May 2023 23:36:43 +0200 Subject: [PATCH 1195/1725] gpstrek - Fix redrawing for compass values --- apps/gpstrek/app.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 532e08b49..2bbdf5ddd 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -196,8 +196,8 @@ let getMapSlice = function(){ graphics.setClipRect(x,y,x+width,y+height); let course = WIDGETS.gpstrek.getState().currentPos.course; - if (course === undefined) course = WIDGETS.gpstrek.getState().avgComp; - if (course === undefined) course = 0; + if (isNaN(course)) course = getAveragedCompass();; + if (isNaN(course)) course = 0; let route = WIDGETS.gpstrek.getState().route; if (!route) return; @@ -414,7 +414,6 @@ let getCompassSlice = function(){ return (Math.abs(lastDrawnValue - compassDataSource.getCourse()) > 2); }, draw: function (graphics, x,y,height,width){ - lastDrawn = Date.now(); const max = 180; const increment=width/max; @@ -1079,9 +1078,13 @@ let draw = function(){ if (global.screen == 1) { let split = s.route?(Bangle.appRect.h/4):Bangle.appRect.h; + g.reset(); compassSlice.draw(g,Bangle.appRect.x,ypos,split,Bangle.appRect.w); ypos += split + 1; - if (s.route) mapSlice.draw(g,0,ypos, Bangle.appRect.h - split,Bangle.appRect.w); + if (s.route){ + g.reset(); + mapSlice.draw(g,0,ypos, Bangle.appRect.h - split,Bangle.appRect.w); + } } else { let sliceHeight = getSliceHeight(); let slicesToDraw = slices.slice(firstSlice,firstSlice + s.numberOfSlices); From 6d9d8254601181ff7a523905d8b32202a0df1656 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 19 May 2023 09:54:24 +0200 Subject: [PATCH 1196/1725] gpstrek - Fix overlap of circular compass with error margins --- apps/gpstrek/app.js | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 2bbdf5ddd..2694adb03 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -256,6 +256,8 @@ let getMapSlice = function(){ drawPath(getPrev,true); graphics.setColor(graphics.theme.fg); + + const errorMarkerSize=3; if (WIDGETS.gpstrek.getState().currentPos.lat) { current.x = startingPoint.x - current.x; @@ -265,27 +267,29 @@ let getMapSlice = function(){ current.x += mapCenterX; current.y += y + height*0.7; - if (current.x < x) { current.x = x + height*0.15; graphics.setColor(1,0,0).fillRect(x,y,x+height*0.1,y+height);} - if (current.x > x + width) {current.x = x + width - height*0.15; graphics.setColor(1,0,0).fillRect(x + width - height * 0.1,y,x + width ,y+height);} - if (current.y < y) {current.y = y + height*0.15; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+height*0.1);} - if (current.y > y + height) { current.y = y + height - height*0.15; graphics.setColor(1,0,0).fillRect(x,y + height * 0.9,x + width ,y+height);} + if (current.x < x) { current.x = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} + if (current.x > x + width) {current.x = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} + if (current.y < y) {current.y = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} + if (current.y > y + height) { current.y = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} - graphics.drawImage(arrow, current.x-5,current.y); + graphics.drawImage(arrow, current.x-5,current.y-2); } else { graphics.drawImage(point, mapCenterX-5,y + height*0.7-4); } let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; + let compassCenterX = x + errorMarkerSize + 5 + compassHeight; + let compassCenterY = y + errorMarkerSize + 5 + compassHeight + 3; compass = graphics.transformVertices(compass, { rotate:require("graphics_utils").degreesToRadians(180-course), - x: x + 5 + compassHeight, - y: y + 5 + compassHeight + x: compassCenterX, + y: compassCenterY }); graphics.setFontAlign(0,0); graphics.setColor(graphics.theme.bg); - graphics.fillCircle(x+5+compassHeight,y+5+compassHeight,compassHeight+8); + graphics.fillCircle(compassCenterX, compassCenterY,compassHeight+5); graphics.setColor(graphics.theme.fg); - graphics.drawCircle(x+5+compassHeight,y+5+compassHeight,compassHeight); + graphics.drawCircle(compassCenterX, compassCenterY,compassHeight); graphics.drawString("N", compass[2], compass[3], true); graphics.drawString("S", compass[4], compass[5], true); graphics.drawString("W", compass[6], compass[7], true); From 201e38d1a04872279e19e04067ffb82224d6011b Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 19 May 2023 15:00:23 +0200 Subject: [PATCH 1197/1725] gpstrek - Show gps course decimals --- apps/gpstrek/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 2694adb03..d0ef6b5fe 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -994,7 +994,7 @@ let status2Slice = getDoubleLineSlice("Compass","GPS",()=>{ },()=>{ let course = "---°"; let s = WIDGETS.gpstrek.getState(); - if (s.currentPos && s.currentPos.course) course = s.currentPos.course + "°"; + if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + "°"; return course; }); From 3e92c04223d6433a0a7d0796ee2f425a12e65a60 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 19 May 2023 17:29:22 +0200 Subject: [PATCH 1198/1725] gpstrek - Draw finish icon at the end of route --- apps/gpstrek/app.js | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index d0ef6b5fe..d52682e0b 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -157,6 +157,11 @@ let getDoubleLineSlice = function(title1,title2,provider1,provider2){ }; }; +const dot = Graphics.createImage(` +XX +XX +`); + const arrow = Graphics.createImage(` X XXX @@ -189,6 +194,8 @@ XXX XXX XXX `); +const mapScale = 0.03; + let getMapSlice = function(){ return { draw: function (graphics, x, y, height, width){ @@ -196,7 +203,7 @@ let getMapSlice = function(){ graphics.setClipRect(x,y,x+width,y+height); let course = WIDGETS.gpstrek.getState().currentPos.course; - if (isNaN(course)) course = getAveragedCompass();; + if (isNaN(course)) course = getAveragedCompass(); if (isNaN(course)) course = 0; let route = WIDGETS.gpstrek.getState().route; @@ -209,12 +216,14 @@ let getMapSlice = function(){ let mapCenterX = x+(width-10)/2+compassHeight+5; let mapRot = require("graphics_utils").degreesToRadians(180-course); let mapTrans = { - scale: 0.05, + scale: mapScale, rotate: mapRot, x: mapCenterX, y: y+height*0.7 }; + const maxPoints = 50; + let drawPath = function(iter, reverse){ let i = 0; @@ -222,6 +231,7 @@ let getMapSlice = function(){ let poly; let breakLoop = false; + let finish; graphics.setFont6x15(); do { poly = []; @@ -235,17 +245,23 @@ let getMapSlice = function(){ } let toDraw = Bangle.project(p); if (p.name) named.push({i:poly.length,n:p.name}); + if (route.index + i + 1 == route.count - 1) finish = true; + poly.push(startingPoint.x-toDraw.x); poly.push((startingPoint.y-toDraw.y)*-1); } poly = graphics.transformVertices(poly, mapTrans); graphics.drawPoly(poly, false); + for (let c of named){ graphics.drawImage(cross, poly[c.i]-5, poly[c.i+1]-4.5); graphics.drawString(c.n, poly[c.i] + 10, poly[c.i+1]); } + + if (finish) graphics.drawImage(finishIcon, poly[poly.length - 2] - 3, poly[poly.length - 1] - 3); + i -= 1; - if (i > 50 || breakLoop) break; + if (i > maxPoints || breakLoop) break; } while (poly[poly.length - 2] > x && poly[poly.length - 2] < x + width && poly[poly.length - 1] > y @@ -256,14 +272,14 @@ let getMapSlice = function(){ drawPath(getPrev,true); graphics.setColor(graphics.theme.fg); - + const errorMarkerSize=3; if (WIDGETS.gpstrek.getState().currentPos.lat) { current.x = startingPoint.x - current.x; current.y = (startingPoint.y - current.y)*-1; - current.x *= 0.05; - current.y *= 0.05; + current.x *= mapScale; + current.y *= mapScale; current.x += mapCenterX; current.y += y + height*0.7; From a4d474c01f2143f39a1ac805e1c501bd48ae7373 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 19 May 2023 17:45:54 +0200 Subject: [PATCH 1199/1725] gpstrek - Center icons better --- apps/gpstrek/app.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index d52682e0b..016f9b37c 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -254,11 +254,11 @@ let getMapSlice = function(){ graphics.drawPoly(poly, false); for (let c of named){ - graphics.drawImage(cross, poly[c.i]-5, poly[c.i+1]-4.5); + graphics.drawImage(cross, poly[c.i]-cross.width/2, poly[c.i+1]-cross.height/2); graphics.drawString(c.n, poly[c.i] + 10, poly[c.i+1]); } - if (finish) graphics.drawImage(finishIcon, poly[poly.length - 2] - 3, poly[poly.length - 1] - 3); + if (finish) graphics.drawImage(finishIcon, poly[poly.length - 2] -5, poly[poly.length - 1] - 4); i -= 1; if (i > maxPoints || breakLoop) break; @@ -288,9 +288,9 @@ let getMapSlice = function(){ if (current.y < y) {current.y = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} if (current.y > y + height) { current.y = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} - graphics.drawImage(arrow, current.x-5,current.y-2); + graphics.drawImage(arrow, current.x-arrow.width/2,current.y); } else { - graphics.drawImage(point, mapCenterX-5,y + height*0.7-4); + graphics.drawImage(point, mapCenterX-point.width/2,y + height*0.7-point.height/2); } let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; From 7a268a3b517181718d8dfdb0d5b9173e921b1496 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 19 May 2023 17:56:54 +0200 Subject: [PATCH 1200/1725] gpstrek - Draw compass lines slimmer --- apps/gpstrek/app.js | 47 +++++++++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 21 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 016f9b37c..8b37dbcae 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -2,6 +2,9 @@ { //run in own scope for fast switch const STORAGE = require("Storage"); const BAT_FULL = require("Storage").readJSON("setting.json").batFullVoltage || 0.3144; +const SETTINGS = { + mapCompass: false +}; let init = function(){ global.screen = 1; @@ -293,23 +296,25 @@ let getMapSlice = function(){ graphics.drawImage(point, mapCenterX-point.width/2,y + height*0.7-point.height/2); } - let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; - let compassCenterX = x + errorMarkerSize + 5 + compassHeight; - let compassCenterY = y + errorMarkerSize + 5 + compassHeight + 3; - compass = graphics.transformVertices(compass, { - rotate:require("graphics_utils").degreesToRadians(180-course), - x: compassCenterX, - y: compassCenterY - }); - graphics.setFontAlign(0,0); - graphics.setColor(graphics.theme.bg); - graphics.fillCircle(compassCenterX, compassCenterY,compassHeight+5); - graphics.setColor(graphics.theme.fg); - graphics.drawCircle(compassCenterX, compassCenterY,compassHeight); - graphics.drawString("N", compass[2], compass[3], true); - graphics.drawString("S", compass[4], compass[5], true); - graphics.drawString("W", compass[6], compass[7], true); - graphics.drawString("E", compass[8], compass[9], true); + if (SETTINGS.mapCompass){ + let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; + let compassCenterX = x + errorMarkerSize + 5 + compassHeight; + let compassCenterY = y + errorMarkerSize + 5 + compassHeight + 3; + compass = graphics.transformVertices(compass, { + rotate:require("graphics_utils").degreesToRadians(180-course), + x: compassCenterX, + y: compassCenterY + }); + graphics.setFontAlign(0,0); + graphics.setColor(graphics.theme.bg); + graphics.fillCircle(compassCenterX, compassCenterY,compassHeight+5); + graphics.setColor(graphics.theme.fg); + graphics.drawCircle(compassCenterX, compassCenterY,compassHeight); + graphics.drawString("N", compass[2], compass[3], true); + graphics.drawString("S", compass[4], compass[5], true); + graphics.drawString("W", compass[6], compass[7], true); + graphics.drawString("E", compass[8], compass[9], true); + } } }; }; @@ -386,11 +391,11 @@ let drawCompass = function(graphics, x, y, height, width, increment, start){ for (let i=start;i<=720;i+=15){ var res = i + frag; if (res%90==0) { - graphics.drawString(labels[Math.floor(res/45)%8],xpos,y+2); - graphics.fillRect(xpos-2,Math.floor(y+height*0.8),xpos+2,Math.floor(y+height)); + graphics.drawString(labels[Math.floor(res/45)%8],xpos,y+height*0.1); + graphics.fillRect(xpos-1,Math.floor(y+height*0.8),xpos+1,Math.floor(y+height)); } else if (res%45==0) { - graphics.drawString(labels[Math.floor(res/45)%8],xpos,y+2); - graphics.fillRect(xpos-2,Math.floor(y+height*0.7),xpos+2,Math.floor(y+height)); + graphics.drawString(labels[Math.floor(res/45)%8],xpos,y+height*0.1); + graphics.fillRect(xpos-1,Math.floor(y+height*0.7),xpos+1,Math.floor(y+height)); } else if (res%15==0) { graphics.fillRect(xpos,Math.floor(y+height*0.9),xpos+1,Math.floor(y+height)); } From 8fb08a73c05a8d2e16a31c4a54070667a4a955b1 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 19 May 2023 19:05:40 +0200 Subject: [PATCH 1201/1725] gpstrek - Fix map plotting when there are multiple polys --- apps/gpstrek/app.js | 35 ++++++++++++++++++++++++----------- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 8b37dbcae..151b9d866 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -197,7 +197,7 @@ XXX XXX XXX `); -const mapScale = 0.03; +const mapScale = 0.09; let getMapSlice = function(){ return { @@ -215,6 +215,7 @@ let getMapSlice = function(){ let current = Bangle.project(WIDGETS.gpstrek.getState().currentPos); let compassHeight = height*0.4; + if (!SETTINGS.mapCompass) compassHeight=0; if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; let mapCenterX = x+(width-10)/2+compassHeight+5; let mapRot = require("graphics_utils").degreesToRadians(180-course); @@ -232,12 +233,13 @@ let getMapSlice = function(){ let time = Date.now(); - let poly; + //Adds starting point on first iteration + let poly = [0,0]; let breakLoop = false; let finish; + let toDraw; graphics.setFont6x15(); do { - poly = []; let named = []; for (let j = 0; j < 10; j++){ i = i + (reverse?-1:1); @@ -246,24 +248,33 @@ let getMapSlice = function(){ breakLoop = true; break; } - let toDraw = Bangle.project(p); + toDraw = Bangle.project(p); if (p.name) named.push({i:poly.length,n:p.name}); if (route.index + i + 1 == route.count - 1) finish = true; - poly.push(startingPoint.x-toDraw.x); poly.push((startingPoint.y-toDraw.y)*-1); } + poly = graphics.transformVertices(poly, mapTrans); + graphics.drawPoly(poly, false); for (let c of named){ - graphics.drawImage(cross, poly[c.i]-cross.width/2, poly[c.i+1]-cross.height/2); - graphics.drawString(c.n, poly[c.i] + 10, poly[c.i+1]); + if (i != 0 || WIDGETS.gpstrek.getState().currentPos.lat){ + graphics.drawImage(point, poly[c.i]-point.width/2, poly[c.i+1]-point.height/2); + graphics.drawString(c.n, poly[c.i] + 10, poly[c.i+1]); + } } - if (finish) graphics.drawImage(finishIcon, poly[poly.length - 2] -5, poly[poly.length - 1] - 4); + if (!reverse){ + if (finish) + graphics.drawImage(finishIcon, poly[poly.length - 2] -5, poly[poly.length - 1] - 4); + else + graphics.drawImage(cross, poly[poly.length - 2] - cross.width/2, poly[poly.length - 1] - cross.height/2); + } + //Add last drawn point to get closed path + if (toDraw) poly = [ startingPoint.x-toDraw.x, (startingPoint.y-toDraw.y)*-1]; - i -= 1; if (i > maxPoints || breakLoop) break; } while (poly[poly.length - 2] > x && poly[poly.length - 2] < x + width @@ -292,10 +303,12 @@ let getMapSlice = function(){ if (current.y > y + height) { current.y = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} graphics.drawImage(arrow, current.x-arrow.width/2,current.y); - } else { - graphics.drawImage(point, mapCenterX-point.width/2,y + height*0.7-point.height/2); } + graphics.setColor(0,1,0); + graphics.fillCircle(mapCenterX,y + height*0.7, 5); + graphics.setColor(graphics.theme.fg); + if (SETTINGS.mapCompass){ let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; let compassCenterX = x + errorMarkerSize + 5 + compassHeight; From 0ec18b6f8a07277dc218710ac2ca873dc69213a7 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 07:31:31 +0200 Subject: [PATCH 1202/1725] gpstrek - Fix drawing only the first 10 waypoints --- apps/gpstrek/app.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 151b9d866..1f6111e67 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -269,17 +269,17 @@ let getMapSlice = function(){ if (!reverse){ if (finish) graphics.drawImage(finishIcon, poly[poly.length - 2] -5, poly[poly.length - 1] - 4); - else + else if (breakLoop) graphics.drawImage(cross, poly[poly.length - 2] - cross.width/2, poly[poly.length - 1] - cross.height/2); } + //Add last drawn point to get closed path if (toDraw) poly = [ startingPoint.x-toDraw.x, (startingPoint.y-toDraw.y)*-1]; - if (i > maxPoints || breakLoop) break; - } while (poly[poly.length - 2] > x - && poly[poly.length - 2] < x + width - && poly[poly.length - 1] > y - && poly[poly.length - 1] < y + height); + } while (i < maxPoints && !breakLoop && !(poly[poly.length - 2] < x + && poly[poly.length - 2] > x + width + && poly[poly.length - 1] < y + && poly[poly.length - 1] > y + height)); }; drawPath(getNext,false); From 828b8911b1f07dc571b13be231cc35d8f7c2a5cd Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 10:52:31 +0200 Subject: [PATCH 1203/1725] gpstrek - Fix wrong indices being used for map --- apps/gpstrek/app.js | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 1f6111e67..4d5e384d4 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -77,6 +77,7 @@ let cache = {}; let cacheInsertion = []; let getEntry = function(filename, offset, result){ + if (offset < 0) return offset; if(cache.filename != filename) cache = {}; if(filename && cache[offset]) { Object.assign(result, cache[offset]); @@ -212,7 +213,9 @@ let getMapSlice = function(){ let route = WIDGETS.gpstrek.getState().route; if (!route) return; let startingPoint = Bangle.project(route.currentWaypoint); - let current = Bangle.project(WIDGETS.gpstrek.getState().currentPos); + let current = startingPoint; + let prevPoint = getPrev(route, route.index); + if (prevPoint && prevPoint.lat) startingPoint = Bangle.project(prevPoint); let compassHeight = height*0.4; if (!SETTINGS.mapCompass) compassHeight=0; @@ -256,7 +259,6 @@ let getMapSlice = function(){ } poly = graphics.transformVertices(poly, mapTrans); - graphics.drawPoly(poly, false); for (let c of named){ @@ -274,7 +276,10 @@ let getMapSlice = function(){ } //Add last drawn point to get closed path - if (toDraw) poly = [ startingPoint.x-toDraw.x, (startingPoint.y-toDraw.y)*-1]; + if (toDraw) { + poly = [ startingPoint.x-toDraw.x, (startingPoint.y-toDraw.y)*-1]; + toDraw = null; + } } while (i < maxPoints && !breakLoop && !(poly[poly.length - 2] < x && poly[poly.length - 2] > x + width @@ -664,19 +669,19 @@ let parseRouteData = function(filename, progressMonitor){ }; let hasPrev = function(route, index){ - if (!index) index = route.index; + if (isNaN(index)) index = route.index; if (route.mirror) return route.index < (route.count - 1); - return route.index > 0; + return index > 0; }; let hasNext = function(route, index){ - if (!index) index = route.index; + if (isNaN(index)) index = route.index; if (route.mirror) return route.index > 0; return index < (route.count - 1); }; let getNext = function(route, index){ - if (!index) index = route.index; + if (isNaN(index)) index = route.index; if (!hasNext(route, index)) return; if (route.mirror) --index; if (!route.mirror) ++index; @@ -686,7 +691,7 @@ let getNext = function(route, index){ }; let getPrev = function(route, index){ - if (!index) index = route.index; + if (isNaN(index)) index = route.index; if (!hasPrev(route, index)) return; if (route.mirror) ++index; if (!route.mirror) --index; From ddae2830d73f0ab7b2805d674d0070f5f9482986 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 11:24:16 +0200 Subject: [PATCH 1204/1725] gpstrek - Give map an own screen --- apps/gpstrek/app.js | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 4d5e384d4..8a22163f9 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -3,7 +3,7 @@ const STORAGE = require("Storage"); const BAT_FULL = require("Storage").readJSON("setting.json").batFullVoltage || 0.3144; const SETTINGS = { - mapCompass: false + mapCompass: true }; let init = function(){ @@ -232,6 +232,7 @@ let getMapSlice = function(){ const maxPoints = 50; let drawPath = function(iter, reverse){ + "ram"; let i = 0; let time = Date.now(); @@ -1087,7 +1088,7 @@ let updateRouting = function() { let updateSlices = function(){ let s = WIDGETS.gpstrek.getState(); - slices = []; + slices = [ compassSlice ]; if (s.currentPos && s.currentPos.lat && s.route && s.route.currentWaypoint && s.route.index < s.route.count - 1) { slices.push(waypointSlice); } @@ -1102,15 +1103,16 @@ let updateSlices = function(){ slices.push(healthSlice); slices.push(systemSlice); slices.push(system2Slice); - maxScreens = Math.ceil(slices.length/s.numberOfSlices) + 1; + let hasMapScreen = s.route ? 1:0; + maxScreens = Math.ceil(slices.length/s.numberOfSlices) + hasMapScreen; }; let draw = function(){ if (!global.screen) return; let ypos = Bangle.appRect.y; let s = WIDGETS.gpstrek.getState(); - - let firstSlice = (screen-2)*s.numberOfSlices; + let hasMapScreen = s.route ? 2:1; + let firstSlice = (screen-hasMapScreen)*s.numberOfSlices; let force = lastDrawnScreen != screen || firstDraw; if (force){ clear(); @@ -1119,15 +1121,9 @@ let draw = function(){ lastDrawnScreen = screen; updateSlices(); - if (global.screen == 1) { - let split = s.route?(Bangle.appRect.h/4):Bangle.appRect.h; + if (global.screen == 1 && s.route) { g.reset(); - compassSlice.draw(g,Bangle.appRect.x,ypos,split,Bangle.appRect.w); - ypos += split + 1; - if (s.route){ - g.reset(); - mapSlice.draw(g,0,ypos, Bangle.appRect.h - split,Bangle.appRect.w); - } + mapSlice.draw(g,Bangle.appRect.x,Bangle.appRect.y, Bangle.appRect.h,Bangle.appRect.w); } else { let sliceHeight = getSliceHeight(); let slicesToDraw = slices.slice(firstSlice,firstSlice + s.numberOfSlices); From 3d69e297bd70b1efad9bf1723dffb31ba8715c78 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 11:52:37 +0200 Subject: [PATCH 1205/1725] gpstrek - Add positioning indicator to map screen for compass --- apps/gpstrek/app.js | 168 ++++++++++++++++++++++++-------------------- 1 file changed, 91 insertions(+), 77 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 8a22163f9..665b17bd2 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -200,7 +200,12 @@ XXX XXX const mapScale = 0.09; +let isGpsCourse = function(){ + return WIDGETS.gpstrek.getState().currentPos && !isNaN(WIDGETS.gpstrek.getState().currentPos.course); +}; + let getMapSlice = function(){ + let lastDrawn = 0; return { draw: function (graphics, x, y, height, width){ graphics.clearRect(x,y,x+width,y+height); @@ -217,104 +222,107 @@ let getMapSlice = function(){ let prevPoint = getPrev(route, route.index); if (prevPoint && prevPoint.lat) startingPoint = Bangle.project(prevPoint); + + const errorMarkerSize=3; let compassHeight = height*0.4; if (!SETTINGS.mapCompass) compassHeight=0; if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; - let mapCenterX = x+(width-10)/2+compassHeight+5; - let mapRot = require("graphics_utils").degreesToRadians(180-course); - let mapTrans = { - scale: mapScale, - rotate: mapRot, - x: mapCenterX, - y: y+height*0.7 - }; - const maxPoints = 50; + if (Date.now() - lastDrawn > 500){ + lastDrawn = Date.now(); + let mapCenterX = x+(width-10)/2+compassHeight+5; + let mapRot = require("graphics_utils").degreesToRadians(180-course); + let mapTrans = { + scale: mapScale, + rotate: mapRot, + x: mapCenterX, + y: y+height*0.7 + }; - let drawPath = function(iter, reverse){ - "ram"; - let i = 0; + const maxPoints = 50; - let time = Date.now(); + let drawPath = function(iter, reverse){ + "ram"; + let i = 0; - //Adds starting point on first iteration - let poly = [0,0]; - let breakLoop = false; - let finish; - let toDraw; - graphics.setFont6x15(); - do { - let named = []; - for (let j = 0; j < 10; j++){ - i = i + (reverse?-1:1); - let p = iter(route, route.index + i); - if (!p || !p.lat) { - breakLoop = true; - break; + let time = Date.now(); + + //Adds starting point on first iteration + let poly = [0,0]; + let breakLoop = false; + let finish; + let toDraw; + graphics.setFont6x15(); + do { + let named = []; + for (let j = 0; j < 10; j++){ + i = i + (reverse?-1:1); + let p = iter(route, route.index + i); + if (!p || !p.lat) { + breakLoop = true; + break; + } + toDraw = Bangle.project(p); + if (p.name) named.push({i:poly.length,n:p.name}); + if (route.index + i + 1 == route.count - 1) finish = true; + poly.push(startingPoint.x-toDraw.x); + poly.push((startingPoint.y-toDraw.y)*-1); } - toDraw = Bangle.project(p); - if (p.name) named.push({i:poly.length,n:p.name}); - if (route.index + i + 1 == route.count - 1) finish = true; - poly.push(startingPoint.x-toDraw.x); - poly.push((startingPoint.y-toDraw.y)*-1); - } - poly = graphics.transformVertices(poly, mapTrans); - graphics.drawPoly(poly, false); + poly = graphics.transformVertices(poly, mapTrans); + graphics.drawPoly(poly, false); - for (let c of named){ - if (i != 0 || WIDGETS.gpstrek.getState().currentPos.lat){ - graphics.drawImage(point, poly[c.i]-point.width/2, poly[c.i+1]-point.height/2); - graphics.drawString(c.n, poly[c.i] + 10, poly[c.i+1]); + for (let c of named){ + if (i != 0 || WIDGETS.gpstrek.getState().currentPos.lat){ + graphics.drawImage(point, poly[c.i]-point.width/2, poly[c.i+1]-point.height/2); + graphics.drawString(c.n, poly[c.i] + 10, poly[c.i+1]); + } } - } - if (!reverse){ - if (finish) - graphics.drawImage(finishIcon, poly[poly.length - 2] -5, poly[poly.length - 1] - 4); - else if (breakLoop) - graphics.drawImage(cross, poly[poly.length - 2] - cross.width/2, poly[poly.length - 1] - cross.height/2); - } + if (!reverse){ + if (finish) + graphics.drawImage(finishIcon, poly[poly.length - 2] -5, poly[poly.length - 1] - 4); + else if (breakLoop) + graphics.drawImage(cross, poly[poly.length - 2] - cross.width/2, poly[poly.length - 1] - cross.height/2); + } - //Add last drawn point to get closed path - if (toDraw) { - poly = [ startingPoint.x-toDraw.x, (startingPoint.y-toDraw.y)*-1]; - toDraw = null; - } + //Add last drawn point to get closed path + if (toDraw) { + poly = [ startingPoint.x-toDraw.x, (startingPoint.y-toDraw.y)*-1]; + toDraw = null; + } - } while (i < maxPoints && !breakLoop && !(poly[poly.length - 2] < x - && poly[poly.length - 2] > x + width - && poly[poly.length - 1] < y - && poly[poly.length - 1] > y + height)); - }; + } while (i < maxPoints && !breakLoop && !(poly[poly.length - 2] < x + && poly[poly.length - 2] > x + width + && poly[poly.length - 1] < y + && poly[poly.length - 1] > y + height)); + }; - drawPath(getNext,false); - drawPath(getPrev,true); + drawPath(getNext,false); + drawPath(getPrev,true); - graphics.setColor(graphics.theme.fg); + graphics.setColor(graphics.theme.fg); - const errorMarkerSize=3; + if (WIDGETS.gpstrek.getState().currentPos.lat) { + current.x = startingPoint.x - current.x; + current.y = (startingPoint.y - current.y)*-1; + current.x *= mapScale; + current.y *= mapScale; + current.x += mapCenterX; + current.y += y + height*0.7; - if (WIDGETS.gpstrek.getState().currentPos.lat) { - current.x = startingPoint.x - current.x; - current.y = (startingPoint.y - current.y)*-1; - current.x *= mapScale; - current.y *= mapScale; - current.x += mapCenterX; - current.y += y + height*0.7; + if (current.x < x) { current.x = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} + if (current.x > x + width) {current.x = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} + if (current.y < y) {current.y = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} + if (current.y > y + height) { current.y = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} - if (current.x < x) { current.x = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} - if (current.x > x + width) {current.x = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} - if (current.y < y) {current.y = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} - if (current.y > y + height) { current.y = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} + graphics.drawImage(arrow, current.x-arrow.width/2,current.y); + } - graphics.drawImage(arrow, current.x-arrow.width/2,current.y); + graphics.setColor(0,1,0); + graphics.fillCircle(mapCenterX,y + height*0.7, 5); + graphics.setColor(graphics.theme.fg); } - - graphics.setColor(0,1,0); - graphics.fillCircle(mapCenterX,y + height*0.7, 5); - graphics.setColor(graphics.theme.fg); - if (SETTINGS.mapCompass){ let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; let compassCenterX = x + errorMarkerSize + 5 + compassHeight; @@ -333,6 +341,12 @@ let getMapSlice = function(){ graphics.drawString("S", compass[4], compass[5], true); graphics.drawString("W", compass[6], compass[7], true); graphics.drawString("E", compass[8], compass[9], true); + + if(!isGpsCourse()) { + let xh = E.clip(((WIDGETS.gpstrek.getState().acc.x))*compassHeight, -compassHeight, compassHeight); + let yh = E.clip(((WIDGETS.gpstrek.getState().acc.y))*compassHeight, -compassHeight, compassHeight); + graphics.fillCircle(compassCenterX + xh, compassCenterY + yh,3); + } } } }; From e9e6d9471a32b38eec3250a7fc762dedbee0d142 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 12:28:02 +0200 Subject: [PATCH 1206/1725] gpstrek - Fix rendering all waypoints all the time --- apps/gpstrek/app.js | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 665b17bd2..e30f8c3cc 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -208,7 +208,6 @@ let getMapSlice = function(){ let lastDrawn = 0; return { draw: function (graphics, x, y, height, width){ - graphics.clearRect(x,y,x+width,y+height); graphics.setClipRect(x,y,x+width,y+height); let course = WIDGETS.gpstrek.getState().currentPos.course; @@ -229,6 +228,7 @@ let getMapSlice = function(){ if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; if (Date.now() - lastDrawn > 500){ + graphics.clearRect(x,y,x+width,y+height); lastDrawn = Date.now(); let mapCenterX = x+(width-10)/2+compassHeight+5; let mapRot = require("graphics_utils").degreesToRadians(180-course); @@ -272,6 +272,11 @@ let getMapSlice = function(){ poly = graphics.transformVertices(poly, mapTrans); graphics.drawPoly(poly, false); + if (poly[poly.length-2] < x + || poly[poly.length-2] > (x + width) + || poly[poly.length-1] < y + || poly[poly.length-1] > (y + height)) breakLoop = true; + for (let c of named){ if (i != 0 || WIDGETS.gpstrek.getState().currentPos.lat){ graphics.drawImage(point, poly[c.i]-point.width/2, poly[c.i+1]-point.height/2); @@ -292,10 +297,7 @@ let getMapSlice = function(){ toDraw = null; } - } while (i < maxPoints && !breakLoop && !(poly[poly.length - 2] < x - && poly[poly.length - 2] > x + width - && poly[poly.length - 1] < y - && poly[poly.length - 1] > y + height)); + } while (i < maxPoints && !breakLoop); }; drawPath(getNext,false); @@ -324,6 +326,7 @@ let getMapSlice = function(){ graphics.setColor(graphics.theme.fg); } if (SETTINGS.mapCompass){ + graphics.setFont6x15(); let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; let compassCenterX = x + errorMarkerSize + 5 + compassHeight; let compassCenterY = y + errorMarkerSize + 5 + compassHeight + 3; @@ -334,7 +337,7 @@ let getMapSlice = function(){ }); graphics.setFontAlign(0,0); graphics.setColor(graphics.theme.bg); - graphics.fillCircle(compassCenterX, compassCenterY,compassHeight+5); + graphics.fillCircle(compassCenterX, compassCenterY,compassHeight+7); graphics.setColor(graphics.theme.fg); graphics.drawCircle(compassCenterX, compassCenterY,compassHeight); graphics.drawString("N", compass[2], compass[3], true); @@ -942,7 +945,7 @@ let drawInTimeout = function(){ drawTimeout = setTimeout(()=>{ drawTimeout = undefined; draw(); - },250); + },100); }; let switchNav = function(){ From fce51291dda26aa6aa3c10b727a8a4c9bac46a5c Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 12:47:11 +0200 Subject: [PATCH 1207/1725] gpstrek - Cleanup and more settings preparation --- apps/gpstrek/app.js | 41 +++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index e30f8c3cc..00cf7df02 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -3,7 +3,12 @@ const STORAGE = require("Storage"); const BAT_FULL = require("Storage").readJSON("setting.json").batFullVoltage || 0.3144; const SETTINGS = { - mapCompass: true + mapCompass: true, + mapScale:0.09, + mapRefresh:500, + refresh:100, + cacheMinFreeMem:1000, + cacheMaxEntries:0, }; let init = function(){ @@ -30,13 +35,6 @@ let cleanup = function(){ delete global.maxScreens; }; -let rotate = function(point, rotation, center){ - return { - x: ((point.x - center.x) * Math.cos(rotation) - (point.y - center.y) * Math.sin(rotation)) + center.x, - y: ((point.y - center.y) * Math.cos(rotation) + (point.x - center.x) * Math.sin(rotation)) + center.y - }; -}; - init(); scheduleDraw = true; @@ -109,9 +107,14 @@ let getEntry = function(filename, offset, result){ result.fileLength = offset - result.fileOffset; cache[result.fileOffset] = result; cacheInsertion.push(result.fileOffset); - if (process.memory(false).free < 1000){ + if (SETTINGS.cacheMinFreeMem && process.memory(false).free < SETTINGS.cacheMinFreeMem){ if (cacheInsertion.length > 0) cache[cacheInsertion.shift()] = undefined; } + if (SETTINGS.cacheMaxEntries){ + while (cacheInsertion.length > SETTINGS.cacheMaxEntries){ + cache[cacheInsertion.shift()] = undefined; + } + } cache.filename = filename; return offset; }; @@ -198,8 +201,6 @@ XXX XXX XXX `); -const mapScale = 0.09; - let isGpsCourse = function(){ return WIDGETS.gpstrek.getState().currentPos && !isNaN(WIDGETS.gpstrek.getState().currentPos.course); }; @@ -227,13 +228,13 @@ let getMapSlice = function(){ if (!SETTINGS.mapCompass) compassHeight=0; if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; - if (Date.now() - lastDrawn > 500){ + if (Date.now() - lastDrawn > SETTINGS.mapRefresh) { graphics.clearRect(x,y,x+width,y+height); lastDrawn = Date.now(); let mapCenterX = x+(width-10)/2+compassHeight+5; let mapRot = require("graphics_utils").degreesToRadians(180-course); let mapTrans = { - scale: mapScale, + scale: SETTINGS.mapScale, rotate: mapRot, x: mapCenterX, y: y+height*0.7 @@ -308,8 +309,8 @@ let getMapSlice = function(){ if (WIDGETS.gpstrek.getState().currentPos.lat) { current.x = startingPoint.x - current.x; current.y = (startingPoint.y - current.y)*-1; - current.x *= mapScale; - current.y *= mapScale; + current.x *= SETTINGS.mapScale; + current.y *= SETTINGS.mapScale; current.x += mapCenterX; current.y += y + height*0.7; @@ -945,7 +946,7 @@ let drawInTimeout = function(){ drawTimeout = setTimeout(()=>{ drawTimeout = undefined; draw(); - },100); + },SETTINGS.refresh); }; let switchNav = function(){ @@ -1061,17 +1062,17 @@ let healthSlice = getDoubleLineSlice("Heart","Steps",()=>{ return !isNaN(WIDGETS.gpstrek.getState().steps)? WIDGETS.gpstrek.getState().steps: "---"; }); -let system2Slice = getDoubleLineSlice("Bat","",()=>{ +let system2Slice = getDoubleLineSlice("Bat","Storage",()=>{ return (Bangle.isCharging()?"+":"") + E.getBattery().toFixed(0)+"% " + (analogRead(D3)*4.2/BAT_FULL).toFixed(2) + "V"; },()=>{ - return ""; + return (STORAGE.getFree()/1024).toFixed(0)+"kB"; }); -let systemSlice = getDoubleLineSlice("RAM","Storage",()=>{ +let systemSlice = getDoubleLineSlice("RAM","WP Cache",()=>{ let ram = process.memory(false); return ((ram.blocksize * ram.free)/1024).toFixed(0)+"kB"; },()=>{ - return (STORAGE.getFree()/1024).toFixed(0)+"kB"; + return cacheInsertion.length?cacheInsertion.length:0; }); let clear = function() { From 434971239eea6705cbd0837c4ac803fa6b97a222 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 12:54:02 +0200 Subject: [PATCH 1208/1725] gpstrek - Update map only if change big enough --- apps/gpstrek/app.js | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 00cf7df02..326109d45 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -9,6 +9,7 @@ const SETTINGS = { refresh:100, cacheMinFreeMem:1000, cacheMaxEntries:0, + minCourseChange: 5 }; let init = function(){ @@ -207,6 +208,9 @@ let isGpsCourse = function(){ let getMapSlice = function(){ let lastDrawn = 0; + let lastCourse = 0; + let lastStart; + let lastCurrent; return { draw: function (graphics, x, y, height, width){ graphics.setClipRect(x,y,x+width,y+height); @@ -228,9 +232,15 @@ let getMapSlice = function(){ if (!SETTINGS.mapCompass) compassHeight=0; if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; - if (Date.now() - lastDrawn > SETTINGS.mapRefresh) { + if (Date.now() - lastDrawn > SETTINGS.mapRefresh && + (Math.abs(lastCourse - course) > SETTINGS.minCourseChange + || (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y) + || (!lastCurrent || (Math.abs(lastCurrent.x - current.x)) > 10 || (Math.abs(lastCurrent.y - current.y)) > 10))) { graphics.clearRect(x,y,x+width,y+height); lastDrawn = Date.now(); + lastCourse = course; + lastStart = startingPoint; + lastCurrent = current; let mapCenterX = x+(width-10)/2+compassHeight+5; let mapRot = require("graphics_utils").degreesToRadians(180-course); let mapTrans = { @@ -473,7 +483,7 @@ let getCompassSlice = function(){ let buf = []; return { refresh : function (){ - return (Math.abs(lastDrawnValue - compassDataSource.getCourse()) > 2); + return (Math.abs(lastDrawnValue - compassDataSource.getCourse()) > SETTINGS.minCourseChange); }, draw: function (graphics, x,y,height,width){ const max = 180; From d0c3649b2dfda06f9ea48e404ce7b35f5b4c7d9d Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 13:29:18 +0200 Subject: [PATCH 1209/1725] gpstrek - More code cleanup --- apps/gpstrek/app.js | 120 +++++++++++++++++++++++--------------------- 1 file changed, 63 insertions(+), 57 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 326109d45..840d6c47f 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -6,6 +6,7 @@ const SETTINGS = { mapCompass: true, mapScale:0.09, mapRefresh:500, + mapChunkSize: 10, refresh:100, cacheMinFreeMem:1000, cacheMaxEntries:0, @@ -214,12 +215,12 @@ let getMapSlice = function(){ return { draw: function (graphics, x, y, height, width){ graphics.setClipRect(x,y,x+width,y+height); - - let course = WIDGETS.gpstrek.getState().currentPos.course; + let s = WIDGETS.gpstrek.getState(); + let course = s.currentPos.course; if (isNaN(course)) course = getAveragedCompass(); if (isNaN(course)) course = 0; - let route = WIDGETS.gpstrek.getState().route; + let route = s.route; if (!route) return; let startingPoint = Bangle.project(route.currentWaypoint); let current = startingPoint; @@ -266,7 +267,7 @@ let getMapSlice = function(){ graphics.setFont6x15(); do { let named = []; - for (let j = 0; j < 10; j++){ + for (let j = 0; j < SETTINGS.mapChunkSize; j++){ i = i + (reverse?-1:1); let p = iter(route, route.index + i); if (!p || !p.lat) { @@ -283,13 +284,13 @@ let getMapSlice = function(){ poly = graphics.transformVertices(poly, mapTrans); graphics.drawPoly(poly, false); - if (poly[poly.length-2] < x - || poly[poly.length-2] > (x + width) - || poly[poly.length-1] < y - || poly[poly.length-1] > (y + height)) breakLoop = true; + if (poly[poly.length-2] < (x - 10) + || poly[poly.length-2] > (x + width + 10) + || poly[poly.length-1] < (y - 10) + || poly[poly.length-1] > (y + height + 10)) breakLoop = true; for (let c of named){ - if (i != 0 || WIDGETS.gpstrek.getState().currentPos.lat){ + if (i != 0 || s.currentPos.lat){ graphics.drawImage(point, poly[c.i]-point.width/2, poly[c.i+1]-point.height/2); graphics.drawString(c.n, poly[c.i] + 10, poly[c.i+1]); } @@ -316,7 +317,7 @@ let getMapSlice = function(){ graphics.setColor(graphics.theme.fg); - if (WIDGETS.gpstrek.getState().currentPos.lat) { + if (s.currentPos.lat) { current.x = startingPoint.x - current.x; current.y = (startingPoint.y - current.y)*-1; current.x *= SETTINGS.mapScale; @@ -357,8 +358,8 @@ let getMapSlice = function(){ graphics.drawString("E", compass[8], compass[9], true); if(!isGpsCourse()) { - let xh = E.clip(((WIDGETS.gpstrek.getState().acc.x))*compassHeight, -compassHeight, compassHeight); - let yh = E.clip(((WIDGETS.gpstrek.getState().acc.y))*compassHeight, -compassHeight, compassHeight); + let xh = E.clip(s.acc.x*compassHeight, -compassHeight, compassHeight); + let yh = E.clip(s.acc.y*compassHeight, -compassHeight, compassHeight); graphics.fillCircle(compassCenterX + xh, compassCenterY + yh,3); } } @@ -453,11 +454,8 @@ let drawCompass = function(graphics, x, y, height, width, increment, start){ let getCompassSlice = function(){ let compassDataSource = { - getCourseType: function(){ - return (WIDGETS.gpstrek.getState().currentPos && WIDGETS.gpstrek.getState().currentPos.course) ? "GPS" : "MAG"; - }, getCourse: function (){ - if(compassDataSource.getCourseType() == "GPS") return WIDGETS.gpstrek.getState().currentPos.course; + if(isGpsCourse()) return WIDGETS.gpstrek.getState().currentPos.course; return getAveragedCompass(); }, getPoints: function (){ @@ -482,23 +480,25 @@ let getCompassSlice = function(){ const buffers = 4; let buf = []; return { - refresh : function (){ - return (Math.abs(lastDrawnValue - compassDataSource.getCourse()) > SETTINGS.minCourseChange); - }, draw: function (graphics, x,y,height,width){ const max = 180; const increment=width/max; + let s = WIDGETS.gpstrek.getState(); + + let course = isGpsCourse() ? s.currentPos.course : getAveragedCompass(); + + if (Math.abs(lastDrawnValue - compassDataSource.getCourse()) < SETTINGS.minCourseChange) return; + lastDrawnValue = course; + graphics.clearRect(x,y,x+width,y+height); - lastDrawnValue = compassDataSource.getCourse(); - - var start = lastDrawnValue - 90; - if (isNaN(lastDrawnValue)) start = -90; + var start = course - 90; + if (isNaN(course)) start = -90; if (start<0) start+=360; start = start % 360; - if (WIDGETS.gpstrek.getState().acc && compassDataSource.getCourseType() == "MAG"){ + if (s.acc && !isGpsCourse()){ drawCompass(graphics,0,y+width*0.05,height-width*0.05,width,increment,start); } else { drawCompass(graphics,0,y,height,width,increment,start); @@ -509,7 +509,7 @@ let getCompassSlice = function(){ let points = compassDataSource.getPoints(); //storing this in a variable works around a minifier bug causing a problem in the next line: for(let a of a.getPoints()) for (let p of points){ g.reset(); - var bpos = p.bearing - lastDrawnValue; + var bpos = p.bearing - course; if (bpos>180) bpos -=360; if (bpos<-180) bpos +=360; bpos+=120; @@ -548,9 +548,9 @@ let getCompassSlice = function(){ graphics.setColor(g.theme.fg); graphics.fillRect(x,y,Math.floor(width*0.05),y+height); graphics.fillRect(Math.ceil(width*0.95),y,width,y+height); - if (WIDGETS.gpstrek.getState().acc && compassDataSource.getCourseType() == "MAG") { - let xh = E.clip(width*0.5-height/2+(((WIDGETS.gpstrek.getState().acc.x+1)/2)*height),width*0.5 - height/2, width*0.5 + height/2); - let yh = E.clip(y+(((WIDGETS.gpstrek.getState().acc.y+1)/2)*height),y,y+height); + if (s.acc && !isGpsCourse()) { + let xh = E.clip(width*0.5-height/2+(((s.acc.x+1)/2)*height),width*0.5 - height/2, width*0.5 + height/2); + let yh = E.clip(y+(((s.acc.y+1)/2)*height),y,y+height); graphics.fillRect(width*0.5 - height/2, y, width*0.5 + height/2, y + Math.floor(width*0.05)); @@ -782,9 +782,10 @@ let showProgress = function(progress, title, max){ let handleLoading = function(c){ E.showMenu(); - WIDGETS.gpstrek.getState().route = parseRouteData(c, showProgress); - WIDGETS.gpstrek.getState().waypoint = null; - WIDGETS.gpstrek.getState().route.mirror = false; + let s = WIDGETS.gpstrek.getState(); + s.route = parseRouteData(c, showProgress); + s.waypoint = null; + s.route.mirror = false; removeMenu(); }; @@ -811,44 +812,46 @@ let showRouteMenu = function(){ "Select file" : showRouteSelector }; - if (WIDGETS.gpstrek.getState().route){ + let s = WIDGETS.gpstrek.getState(); + + if (s.route){ menu.Mirror = { - value: WIDGETS.gpstrek.getState() && WIDGETS.gpstrek.getState().route && !!WIDGETS.gpstrek.getState().route.mirror || false, + value: s && s.route && !!s.route.mirror || false, onchange: v=>{ - WIDGETS.gpstrek.getState().route.mirror = v; + s.route.mirror = v; } }; menu['Select closest waypoint'] = function () { - if (WIDGETS.gpstrek.getState().currentPos && WIDGETS.gpstrek.getState().currentPos.lat){ - setClosestWaypoint(WIDGETS.gpstrek.getState().route, null, showProgress); removeMenu(); + if (s.currentPos && s.currentPos.lat){ + setClosestWaypoint(s.route, null, showProgress); removeMenu(); } else { E.showAlert("No position").then(()=>{E.showMenu(menu);}); } }; menu['Select closest waypoint (not visited)'] = function () { - if (WIDGETS.gpstrek.getState().currentPos && WIDGETS.gpstrek.getState().currentPos.lat){ - setClosestWaypoint(WIDGETS.gpstrek.getState().route, WIDGETS.gpstrek.getState().route.index, showProgress); removeMenu(); + if (s.currentPos && s.currentPos.lat){ + setClosestWaypoint(s.route, s.route.index, showProgress); removeMenu(); } else { E.showAlert("No position").then(()=>{E.showMenu(menu);}); } }; menu['Select waypoint'] = { - value : WIDGETS.gpstrek.getState().route.index, - min:1,max:WIDGETS.gpstrek.getState().route.count,step:1, - onchange : v => { set(WIDGETS.gpstrek.getState().route, v-1); } + value : s.route.index, + min:1,max:s.route.count,step:1, + onchange : v => { set(s.route, v-1); } }; menu['Select waypoint as current position'] = function (){ - WIDGETS.gpstrek.getState().currentPos.lat = WIDGETS.gpstrek.getState().route.currentWaypoint.lat; - WIDGETS.gpstrek.getState().currentPos.lon = WIDGETS.gpstrek.getState().route.currentWaypoint.lon; - WIDGETS.gpstrek.getState().currentPos.alt = WIDGETS.gpstrek.getState().route.currentWaypoint.alt; + s.currentPos.lat = s.route.currentWaypoint.lat; + s.currentPos.lon = s.route.currentWaypoint.lon; + s.currentPos.alt = s.route.currentWaypoint.alt; removeMenu(); }; } - if (WIDGETS.gpstrek.getState().route && hasPrev(WIDGETS.gpstrek.getState().route)) - menu['Previous waypoint'] = function() { prev(WIDGETS.gpstrek.getState().route); removeMenu(); }; - if (WIDGETS.gpstrek.getState().route && hasNext(WIDGETS.gpstrek.getState().route)) - menu['Next waypoint'] = function() { next(WIDGETS.gpstrek.getState().route); removeMenu(); }; + if (s.route && hasPrev(s.route)) + menu['Previous waypoint'] = function() { prev(s.route); removeMenu(); }; + if (s.route && hasNext(s.route)) + menu['Next waypoint'] = function() { next(s.route); removeMenu(); }; E.showMenu(menu); }; @@ -862,9 +865,10 @@ let showWaypointSelector = function(){ waypoints.forEach((wp,c)=>{ menu[waypoints[c].name] = function (){ - WIDGETS.gpstrek.getState().waypoint = waypoints[c]; - WIDGETS.gpstrek.getState().waypointIndex = c; - WIDGETS.gpstrek.getState().route = null; + let s = WIDGETS.gpstrek.getState(); + s.waypoint = waypoints[c]; + s.waypointIndex = c; + s.route = null; removeMenu(); }; }); @@ -879,11 +883,12 @@ let showCalibrationMenu = function(){ back : showMenu, }, "Barometer (GPS)" : ()=>{ - if (!WIDGETS.gpstrek.getState().currentPos || isNaN(WIDGETS.gpstrek.getState().currentPos.alt)){ + let s = WIDGETS.gpstrek.getState(); + if (!s.currentPos || isNaN(s.currentPos.alt)){ E.showAlert("No GPS altitude").then(()=>{E.showMenu(menu);}); } else { - WIDGETS.gpstrek.getState().calibAltDiff = WIDGETS.gpstrek.getState().altitude - WIDGETS.gpstrek.getState().currentPos.alt; - E.showAlert("Calibrated Altitude Difference: " + WIDGETS.gpstrek.getState().calibAltDiff.toFixed(0)).then(()=>{removeMenu();}); + s.calibAltDiff = s.altitude - s.currentPos.alt; + E.showAlert("Calibrated Altitude Difference: " + s.calibAltDiff.toFixed(0)).then(()=>{removeMenu();}); } }, "Barometer (Manual)" : { @@ -976,8 +981,9 @@ let nextScreen = function(){ }; let setClosestWaypoint = function(route, startindex, progress){ - if (startindex >= WIDGETS.gpstrek.getState().route.count) startindex = WIDGETS.gpstrek.getState().route.count - 1; - if (!WIDGETS.gpstrek.getState().currentPos.lat){ + let s = WIDGETS.gpstrek.getState(); + if (startindex >= s.route.count) startindex = s.route.count - 1; + if (!s.currentPos.lat){ set(route, startindex); return; } @@ -987,7 +993,7 @@ let setClosestWaypoint = function(route, startindex, progress){ if (progress && (i % 5 == 0)) progress(i-(startindex?startindex:0), "Searching", route.count); let wp = {}; getEntry(route.filename, route.refs[i], wp); - let curDist = distance(WIDGETS.gpstrek.getState().currentPos, wp); + let curDist = distance(s.currentPos, wp); if (curDist < minDist){ minDist = curDist; minIndex = i; From fe88f676d93c85cf15f0086c09d3775be91bb1e7 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 15:13:02 +0200 Subject: [PATCH 1210/1725] gpstrek - Adds scrolling overview mode to map screen --- apps/gpstrek/app.js | 100 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 78 insertions(+), 22 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 840d6c47f..db9e378a6 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -7,6 +7,8 @@ const SETTINGS = { mapScale:0.09, mapRefresh:500, mapChunkSize: 10, + overviewScroll: 30, + overviewScale: 0.01, refresh:100, cacheMinFreeMem:1000, cacheMaxEntries:0, @@ -207,7 +209,10 @@ let isGpsCourse = function(){ return WIDGETS.gpstrek.getState().currentPos && !isNaN(WIDGETS.gpstrek.getState().currentPos.course); }; +let isMapOverview = false; + let getMapSlice = function(){ + let lastMode = isMapOverview; let lastDrawn = 0; let lastCourse = 0; let lastStart; @@ -216,9 +221,12 @@ let getMapSlice = function(){ draw: function (graphics, x, y, height, width){ graphics.setClipRect(x,y,x+width,y+height); let s = WIDGETS.gpstrek.getState(); - let course = s.currentPos.course; - if (isNaN(course)) course = getAveragedCompass(); - if (isNaN(course)) course = 0; + let course = 0; + if (!isMapOverview){ + course = s.currentPos.course; + if (isNaN(course)) course = getAveragedCompass(); + if (isNaN(course)) course = 0; + } let route = s.route; if (!route) return; @@ -227,6 +235,8 @@ let getMapSlice = function(){ let prevPoint = getPrev(route, route.index); if (prevPoint && prevPoint.lat) startingPoint = Bangle.project(prevPoint); + let mapScale = isMapOverview ? mapOverviewScale : SETTINGS.mapScale; + const errorMarkerSize=3; let compassHeight = height*0.4; @@ -236,19 +246,22 @@ let getMapSlice = function(){ if (Date.now() - lastDrawn > SETTINGS.mapRefresh && (Math.abs(lastCourse - course) > SETTINGS.minCourseChange || (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y) - || (!lastCurrent || (Math.abs(lastCurrent.x - current.x)) > 10 || (Math.abs(lastCurrent.y - current.y)) > 10))) { + || (!lastCurrent || (Math.abs(lastCurrent.x - current.x)) > 10 || (Math.abs(lastCurrent.y - current.y)) > 10)) + || isMapOverview || lastMode != isMapOverview) { + lastMode = isMapOverview; graphics.clearRect(x,y,x+width,y+height); lastDrawn = Date.now(); lastCourse = course; lastStart = startingPoint; lastCurrent = current; - let mapCenterX = x+(width-10)/2+compassHeight+5; + let mapCenterX = isMapOverview?mapOverviewX:x+(width-10)/2+compassHeight+5; + let mapCenterY = isMapOverview?mapOverviewY:y+height*0.7; let mapRot = require("graphics_utils").degreesToRadians(180-course); let mapTrans = { - scale: SETTINGS.mapScale, + scale: mapScale, rotate: mapRot, x: mapCenterX, - y: y+height*0.7 + y: mapCenterY }; const maxPoints = 50; @@ -284,10 +297,10 @@ let getMapSlice = function(){ poly = graphics.transformVertices(poly, mapTrans); graphics.drawPoly(poly, false); - if (poly[poly.length-2] < (x - 10) + if (!isMapOverview && (poly[poly.length-2] < (x - 10) || poly[poly.length-2] > (x + width + 10) || poly[poly.length-1] < (y - 10) - || poly[poly.length-1] > (y + height + 10)) breakLoop = true; + || poly[poly.length-1] > (y + height + 10))) breakLoop = true; for (let c of named){ if (i != 0 || s.currentPos.lat){ @@ -309,7 +322,7 @@ let getMapSlice = function(){ toDraw = null; } - } while (i < maxPoints && !breakLoop); + } while ((i < maxPoints || isMapOverview) && !breakLoop); }; drawPath(getNext,false); @@ -320,10 +333,10 @@ let getMapSlice = function(){ if (s.currentPos.lat) { current.x = startingPoint.x - current.x; current.y = (startingPoint.y - current.y)*-1; - current.x *= SETTINGS.mapScale; - current.y *= SETTINGS.mapScale; + current.x *= mapScale; + current.y *= mapScale; current.x += mapCenterX; - current.y += y + height*0.7; + current.y += mapCenterY; if (current.x < x) { current.x = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} if (current.x > x + width) {current.x = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} @@ -334,7 +347,7 @@ let getMapSlice = function(){ } graphics.setColor(0,1,0); - graphics.fillCircle(mapCenterX,y + height*0.7, 5); + graphics.fillCircle(mapCenterX,mapCenterY, 5); graphics.setColor(graphics.theme.fg); } if (SETTINGS.mapCompass){ @@ -357,10 +370,23 @@ let getMapSlice = function(){ graphics.drawString("W", compass[6], compass[7], true); graphics.drawString("E", compass[8], compass[9], true); - if(!isGpsCourse()) { + if(!isGpsCourse() && !isMapOverview) { let xh = E.clip(s.acc.x*compassHeight, -compassHeight, compassHeight); let yh = E.clip(s.acc.y*compassHeight, -compassHeight, compassHeight); graphics.fillCircle(compassCenterX + xh, compassCenterY + yh,3); + } else if (isMapOverview) { + graphics.setColor(0,0,1); + graphics.fillCircle(compassCenterX, compassCenterY,3); + + graphics.setFont("Vector",20); + graphics.setColor(graphics.theme.fg); + graphics.clearRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); + graphics.drawRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); + graphics.drawString("-", x+width*0.125,y+height-g.getHeight()*0.1); + + graphics.clearRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); + graphics.drawRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); + graphics.drawString("+", x+width*0.875,y+height-g.getHeight()*0.1); } } } @@ -613,22 +639,52 @@ let triangle = function(x, y, width, height){ ]; }; -let onSwipe = function(dir){ - if (dir < 0) { - nextScreen(); - } else if (dir > 0) { - switchMenu(); +mapOverviewX = g.getWidth()/2; +mapOverviewY = g.getHeight()/2; +mapOverviewScale = SETTINGS.overviewScale; + +let onAction = function(_,xy){ + if (WIDGETS.gpstrek.getState().route && global.screen == 1){ + if (xy.y > Bangle.appRect.y+Bangle.appRect.h-g.getHeight()*0.2 && xy.y <= Bangle.appRect.y2){ + if (xy.x < Bangle.appRect.x + Bangle.appRect.w/2) + mapOverviewScale *=0.3; + else + mapOverviewScale *=1.5; + } else { + isMapOverview = !isMapOverview; + if (!isMapOverview){ + mapOverviewX = g.getWidth()/2; + mapOverviewY = g.getHeight()/2; + mapOverviewScale = SETTINGS.overviewScale; + } + } } else { nextScreen(); } }; +let onSwipe = function(dirLR,dirUD){ + if (WIDGETS.gpstrek.getState().route && global.screen == 1 && isMapOverview){ + if (dirLR) mapOverviewX += SETTINGS.overviewScroll*dirLR; + if (dirUD) mapOverviewY += SETTINGS.overviewScroll*dirUD; + } else { + if (dirLR < 0) { + nextScreen(); + } else if (dirLR > 0) { + switchMenu(); + } else { + nextScreen(); + } + } +}; + + let setButtons = function(){ let options = { mode: "custom", swipe: onSwipe, - btn: nextScreen, - touch: nextScreen + btn: onAction, + touch: onAction }; Bangle.setUI(options); }; From 67647c61fedd1bb4ec44e3004e321c3d29283c49 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 16:12:54 +0200 Subject: [PATCH 1211/1725] gpstrek - Update map overview only on changes --- apps/gpstrek/app.js | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index db9e378a6..8b16b2d68 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -197,10 +197,10 @@ XX XX const point = Graphics.createImage(` XXX XXXXXXX -XXX XXX -XX XX -XX XX -XXX XXX +XXX XXX +XX XX +XX XX +XXX XXX XXXXXXX XXX `); @@ -210,6 +210,7 @@ let isGpsCourse = function(){ }; let isMapOverview = false; +let isMapOverviewChanged = true; let getMapSlice = function(){ let lastMode = isMapOverview; @@ -221,6 +222,7 @@ let getMapSlice = function(){ draw: function (graphics, x, y, height, width){ graphics.setClipRect(x,y,x+width,y+height); let s = WIDGETS.gpstrek.getState(); + let course = 0; if (!isMapOverview){ course = s.currentPos.course; @@ -247,8 +249,9 @@ let getMapSlice = function(){ (Math.abs(lastCourse - course) > SETTINGS.minCourseChange || (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y) || (!lastCurrent || (Math.abs(lastCurrent.x - current.x)) > 10 || (Math.abs(lastCurrent.y - current.y)) > 10)) - || isMapOverview || lastMode != isMapOverview) { + || isMapOverviewChanged) { lastMode = isMapOverview; + isMapOverviewChanged = false; graphics.clearRect(x,y,x+width,y+height); lastDrawn = Date.now(); lastCourse = course; @@ -645,11 +648,12 @@ mapOverviewScale = SETTINGS.overviewScale; let onAction = function(_,xy){ if (WIDGETS.gpstrek.getState().route && global.screen == 1){ - if (xy.y > Bangle.appRect.y+Bangle.appRect.h-g.getHeight()*0.2 && xy.y <= Bangle.appRect.y2){ + if (xy && xy.y > Bangle.appRect.y+Bangle.appRect.h-g.getHeight()*0.2 && xy.y <= Bangle.appRect.y2){ if (xy.x < Bangle.appRect.x + Bangle.appRect.w/2) mapOverviewScale *=0.3; else mapOverviewScale *=1.5; + isMapOverviewChanged = true; } else { isMapOverview = !isMapOverview; if (!isMapOverview){ @@ -667,6 +671,7 @@ let onSwipe = function(dirLR,dirUD){ if (WIDGETS.gpstrek.getState().route && global.screen == 1 && isMapOverview){ if (dirLR) mapOverviewX += SETTINGS.overviewScroll*dirLR; if (dirUD) mapOverviewY += SETTINGS.overviewScroll*dirUD; + isMapOverviewChanged = true; } else { if (dirLR < 0) { nextScreen(); @@ -1237,4 +1242,3 @@ switchNav(); clear(); } - From 76db481c613257b25fc918ec7ce10f47fb5dd2e3 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 20 May 2023 22:48:10 +0200 Subject: [PATCH 1212/1725] gpstrek - Allow zooming live map as well --- apps/gpstrek/app.js | 102 +++++++++++++++++++++++++++++--------------- 1 file changed, 67 insertions(+), 35 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 8b16b2d68..4125f17d4 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -174,16 +174,16 @@ XX `); const arrow = Graphics.createImage(` - X + X XXX - XXXXX + XXXXX XXX XXX - XXX XXX + XXX XXX XXX XXX `); const cross = Graphics.createImage(` -XX XX +XX XX XX XX XX XX XX XX @@ -191,18 +191,18 @@ XX XX XX XX XX XX XX XX -XX XX +XX XX `); const point = Graphics.createImage(` - XXX - XXXXXXX -XXX XXX -XX XX -XX XX -XXX XXX - XXXXXXX - XXX + XX + XXXX + XX XX +XX XX +XX XX + XX XX + XXXX + XX `); let isGpsCourse = function(){ @@ -211,6 +211,7 @@ let isGpsCourse = function(){ let isMapOverview = false; let isMapOverviewChanged = true; +let isMapLiveChanged = true; let getMapSlice = function(){ let lastMode = isMapOverview; @@ -237,7 +238,7 @@ let getMapSlice = function(){ let prevPoint = getPrev(route, route.index); if (prevPoint && prevPoint.lat) startingPoint = Bangle.project(prevPoint); - let mapScale = isMapOverview ? mapOverviewScale : SETTINGS.mapScale; + let mapScale = isMapOverview ? mapOverviewScale : mapLiveScale; const errorMarkerSize=3; @@ -249,9 +250,11 @@ let getMapSlice = function(){ (Math.abs(lastCourse - course) > SETTINGS.minCourseChange || (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y) || (!lastCurrent || (Math.abs(lastCurrent.x - current.x)) > 10 || (Math.abs(lastCurrent.y - current.y)) > 10)) - || isMapOverviewChanged) { + || isMapOverviewChanged + || isMapLiveChanged) { lastMode = isMapOverview; isMapOverviewChanged = false; + isMapLiveChanged = false; graphics.clearRect(x,y,x+width,y+height); lastDrawn = Date.now(); lastCourse = course; @@ -352,6 +355,33 @@ let getMapSlice = function(){ graphics.setColor(0,1,0); graphics.fillCircle(mapCenterX,mapCenterY, 5); graphics.setColor(graphics.theme.fg); + + graphics.setFont("Vector",25).setFontAlign(0,0); + graphics.setColor(graphics.theme.fg); + graphics.clearRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); + graphics.drawRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); + graphics.drawString("-", x+width*0.125,y+height-g.getHeight()*0.1); + + graphics.clearRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); + graphics.drawRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); + graphics.drawString("+", x+width*0.875,y+height-g.getHeight()*0.1); + + let refs = [100,200,300,400,500,800,1000,2000,5000,10000,50000]; + let l = width*0.4; + let scale = "<100"; + for (let c of refs){ + if (c*mapScale > l) + break; + else + scale = c; + } + graphics.setFontAlign(-1,1).setFont("Vector",14); + graphics.drawString(scale+"m",x+width*0.3,y+height-g.getHeight()*0.1); + if (!isNaN(scale)){ + graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1); + graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3,y+height-g.getHeight()*0.05); + graphics.drawLine(x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.05); + } } if (SETTINGS.mapCompass){ graphics.setFont6x15(); @@ -377,21 +407,12 @@ let getMapSlice = function(){ let xh = E.clip(s.acc.x*compassHeight, -compassHeight, compassHeight); let yh = E.clip(s.acc.y*compassHeight, -compassHeight, compassHeight); graphics.fillCircle(compassCenterX + xh, compassCenterY + yh,3); - } else if (isMapOverview) { + } else if (isMapOverview){ graphics.setColor(0,0,1); graphics.fillCircle(compassCenterX, compassCenterY,3); - - graphics.setFont("Vector",20); - graphics.setColor(graphics.theme.fg); - graphics.clearRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); - graphics.drawRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); - graphics.drawString("-", x+width*0.125,y+height-g.getHeight()*0.1); - - graphics.clearRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); - graphics.drawRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); - graphics.drawString("+", x+width*0.875,y+height-g.getHeight()*0.1); } } + } }; }; @@ -414,7 +435,7 @@ let getTargetSlice = function(targetDataSource){ let dist = distance(start,target); if (isNaN(dist)) dist = Infinity; - let bearingString = bearing(start,target) + "°"; + let bearingString = bearing(start,target) + ""; if (target.name) { graphics.setFont("Vector",Math.floor(height*0.5)); let scrolledName = (target.name || "").substring(nameIndex); @@ -432,7 +453,7 @@ let getTargetSlice = function(targetDataSource){ graphics.drawString(distanceString, x + width, y+(height*0.5)); } else { graphics.setFont("Vector",Math.floor(height*1)); - let bearingString = bearing(start,target) + "°"; + let bearingString = bearing(start,target) + ""; let formattedDist = loc.distance(dist,2); let distNum = (formattedDist.match(/[0-9\.]+/) || [Infinity])[0]; let size = 0.8; @@ -645,21 +666,32 @@ let triangle = function(x, y, width, height){ mapOverviewX = g.getWidth()/2; mapOverviewY = g.getHeight()/2; mapOverviewScale = SETTINGS.overviewScale; +mapLiveScale = SETTINGS.mapScale; let onAction = function(_,xy){ if (WIDGETS.gpstrek.getState().route && global.screen == 1){ if (xy && xy.y > Bangle.appRect.y+Bangle.appRect.h-g.getHeight()*0.2 && xy.y <= Bangle.appRect.y2){ if (xy.x < Bangle.appRect.x + Bangle.appRect.w/2) - mapOverviewScale *=0.3; + if (isMapOverview) { + mapOverviewScale /= 1.5; + } else { + mapLiveScale /= 1.5; + } else - mapOverviewScale *=1.5; - isMapOverviewChanged = true; + if (isMapOverview) { + mapOverviewScale *= 1.5; + } else { + mapLiveScale *= 1.5; + } + if (isMapOverview) + isMapOverviewChanged = true; + else + isMapLiveChanged = true; } else { isMapOverview = !isMapOverview; if (!isMapOverview){ mapOverviewX = g.getWidth()/2; mapOverviewY = g.getHeight()/2; - mapOverviewScale = SETTINGS.overviewScale; } } } else { @@ -1125,11 +1157,11 @@ let statusSlice = getDoubleLineSlice("Speed","Alt",()=>{ }); let status2Slice = getDoubleLineSlice("Compass","GPS",()=>{ - return getAveragedCompass() + "°"; + return getAveragedCompass() + ""; },()=>{ - let course = "---°"; + let course = "---"; let s = WIDGETS.gpstrek.getState(); - if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + "°"; + if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + ""; return course; }); From 8fd1e26befb0c423e5e014d02ba271cc5a685b5c Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 21 May 2023 09:07:52 +0200 Subject: [PATCH 1213/1725] gpstrek - Allow changing file name before uploading --- apps/gpstrek/interface.html | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/apps/gpstrek/interface.html b/apps/gpstrek/interface.html index c81e706a4..700b16e9a 100644 --- a/apps/gpstrek/interface.html +++ b/apps/gpstrek/interface.html @@ -10,13 +10,18 @@

    Upload tracks to your watch

    Allows uploading a GPX format track file to your watch. Converts tracks containing "trkpt"-nodes into the GPS Trekking format.

    - +
    + +
    +
    From fcb1b0d15e05b9a33e034950cd7c029aa0193421 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 21 May 2023 15:46:58 +0200 Subject: [PATCH 1214/1725] gpstrek - In case of GPS show only a small waypoint marker --- apps/gpstrek/app.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 4125f17d4..c42d9e62e 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -350,11 +350,15 @@ let getMapSlice = function(){ if (current.y > y + height) { current.y = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} graphics.drawImage(arrow, current.x-arrow.width/2,current.y); + graphics.setColor(0,1,0); + graphics.fillRect(mapCenterX-1,mapCenterY-1, mapCenterX+1,mapCenterY+1); + graphics.setColor(graphics.theme.fg); + } else { + graphics.setColor(0,1,0); + graphics.fillCircle(mapCenterX,mapCenterY, 5); + graphics.setColor(graphics.theme.fg); } - graphics.setColor(0,1,0); - graphics.fillCircle(mapCenterX,mapCenterY, 5); - graphics.setColor(graphics.theme.fg); graphics.setFont("Vector",25).setFontAlign(0,0); graphics.setColor(graphics.theme.fg); From acfd5f1363fff4dce3af3a0439292bf8f94ccd8c Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 21 May 2023 16:04:48 +0200 Subject: [PATCH 1215/1725] gpstrek - Fix current position marker placement --- apps/gpstrek/app.js | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index c42d9e62e..3402c6d2a 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -241,6 +241,10 @@ let getMapSlice = function(){ let mapScale = isMapOverview ? mapOverviewScale : mapLiveScale; + if (s.currentPos.lat) { + current = Bangle.project(s.currentPos); + } + const errorMarkerSize=3; let compassHeight = height*0.4; if (!SETTINGS.mapCompass) compassHeight=0; @@ -337,19 +341,16 @@ let getMapSlice = function(){ graphics.setColor(graphics.theme.fg); if (s.currentPos.lat) { - current.x = startingPoint.x - current.x; - current.y = (startingPoint.y - current.y)*-1; - current.x *= mapScale; - current.y *= mapScale; - current.x += mapCenterX; - current.y += mapCenterY; + let proj = Bangle.project(s.currentPos); + let pos = graphics.transformVertices([ startingPoint.x - proj.x, (startingPoint.y - proj.y)*-1 ], mapTrans); - if (current.x < x) { current.x = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} - if (current.x > x + width) {current.x = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} - if (current.y < y) {current.y = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} - if (current.y > y + height) { current.y = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} - graphics.drawImage(arrow, current.x-arrow.width/2,current.y); + if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} + if (pos[0] > x + width) {pos[0] = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} + if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} + if (pos[1] > y + height) { pos[1] = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} + + graphics.drawImage(arrow, pos[0]-arrow.width/2,pos[1]); graphics.setColor(0,1,0); graphics.fillRect(mapCenterX-1,mapCenterY-1, mapCenterX+1,mapCenterY+1); graphics.setColor(graphics.theme.fg); From 3e56d1026c8ee927c3d26c0fcbae6ef0e0f52a48 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 21 May 2023 16:15:23 +0200 Subject: [PATCH 1216/1725] gpstrek - Show circle around waypoint for triggering next --- apps/gpstrek/app.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 3402c6d2a..ba0189a3b 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -4,7 +4,7 @@ const STORAGE = require("Storage"); const BAT_FULL = require("Storage").readJSON("setting.json").batFullVoltage || 0.3144; const SETTINGS = { mapCompass: true, - mapScale:0.09, + mapScale:0.2, mapRefresh:500, mapChunkSize: 10, overviewScroll: 30, @@ -12,7 +12,8 @@ const SETTINGS = { refresh:100, cacheMinFreeMem:1000, cacheMaxEntries:0, - minCourseChange: 5 + minCourseChange: 5, + waypointChangeDist: 50 }; let init = function(){ @@ -353,6 +354,7 @@ let getMapSlice = function(){ graphics.drawImage(arrow, pos[0]-arrow.width/2,pos[1]); graphics.setColor(0,1,0); graphics.fillRect(mapCenterX-1,mapCenterY-1, mapCenterX+1,mapCenterY+1); + graphics.drawCircle(mapCenterX,mapCenterY, mapScale*SETTINGS.waypointChangeDist); graphics.setColor(graphics.theme.fg); } else { graphics.setColor(0,1,0); @@ -1204,10 +1206,10 @@ let updateRouting = function() { minimumDistance = currentDistanceToTarget; } let nextAvailable = hasNext(s.route); - if (currentDistanceToTarget < 30 && nextAvailable){ + if (currentDistanceToTarget < SETTINGS.waypointChangeDist && nextAvailable){ next(s.route); minimumDistance = Number.MAX_VALUE; - } else if (lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - 30){ + } else if (lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ stopDrawing(); Bangle.buzz(1000); setClosestWaypoint(s.route, s.route.index, showProgress); From 7a22d8bed4f4a2e0ff8e8141c40d633c7948c47e Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 22 May 2023 08:22:23 +0200 Subject: [PATCH 1217/1725] gpstrek - Fix cross icon --- apps/gpstrek/app.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index ba0189a3b..92eabe715 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -184,15 +184,15 @@ XXX XXX `); const cross = Graphics.createImage(` -XX XX - XX XX +XX XX + XX XX XX XX - XX XX - XXX - XX XX + XX XX + XX + XX XX XX XX - XX XX -XX XX + XX XX +XX XX `); const point = Graphics.createImage(` From ca8c8fc1d27e2ff46038b5c1d341f7aadc855019 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 22 May 2023 08:24:32 +0200 Subject: [PATCH 1218/1725] gpstrek - Fix cross icon --- apps/gpstrek/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 92eabe715..ea3f6623e 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -188,7 +188,7 @@ XX XX XX XX XX XX XX XX - XX + XXX XX XX XX XX XX XX From c263f1a0be747d69c7f53e72bca437e47688c57a Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 22 May 2023 10:53:52 +0200 Subject: [PATCH 1219/1725] gpstrek - Implements drawing in timeouts for responsiveness --- apps/gpstrek/app.js | 274 +++++++++++++++++++++++++++----------------- 1 file changed, 167 insertions(+), 107 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index ea3f6623e..0aa081cc0 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -10,10 +10,11 @@ const SETTINGS = { overviewScroll: 30, overviewScale: 0.01, refresh:100, - cacheMinFreeMem:1000, + cacheMinFreeMem:2000, cacheMaxEntries:0, minCourseChange: 5, - waypointChangeDist: 50 + waypointChangeDist: 50, + maxPoints: 50 }; let init = function(){ @@ -214,6 +215,42 @@ let isMapOverview = false; let isMapOverviewChanged = true; let isMapLiveChanged = true; +let activeTimeouts = []; +let timeoutQueue = []; +let queueProcessing = false; + +let addToTimeoutQueue = function (func, data){ + if (queueProcessing) return; + timeoutQueue.push({f:func,d:data}); +}; + +let prependTimeoutQueue = function (func, data){ + if (queueProcessing) return; + timeoutQueue.unshift({f:func,d:data}); +}; + +let processTimeoutQueue = function(){ + queueProcessing = true; + addToTimeoutQueue(()=>{queueProcessing=false;}); + if (timeoutQueue.length > 0){ + let current = timeoutQueue.shift(); + let id = setTimeout(()=>{ + current.f(current.d); + activeTimeouts = activeTimeouts.filter((c)=>c!=id); + processTimeoutQueue(); + },0); + activeTimeouts.push(id); + } +}; + +let clearTimeoutQueue = function(){ + timeoutQueue = []; + for (let c of activeTimeouts){ + clearTimeout(c); + } + queueProcessing = false; +}; + let getMapSlice = function(){ let lastMode = isMapOverview; let lastDrawn = 0; @@ -222,6 +259,7 @@ let getMapSlice = function(){ let lastCurrent; return { draw: function (graphics, x, y, height, width){ + if (queueProcessing) return; graphics.setClipRect(x,y,x+width,y+height); let s = WIDGETS.gpstrek.getState(); @@ -260,7 +298,6 @@ let getMapSlice = function(){ lastMode = isMapOverview; isMapOverviewChanged = false; isMapLiveChanged = false; - graphics.clearRect(x,y,x+width,y+height); lastDrawn = Date.now(); lastCourse = course; lastStart = startingPoint; @@ -275,151 +312,170 @@ let getMapSlice = function(){ y: mapCenterY }; - const maxPoints = 50; - let drawPath = function(iter, reverse){ "ram"; - let i = 0; - let time = Date.now(); + let data = { + i:0, + poly:[0,0], + breakLoop: false + }; - //Adds starting point on first iteration - let poly = [0,0]; - let breakLoop = false; - let finish; - let toDraw; - graphics.setFont6x15(); - do { + let drawChunk = function(data){ + if (data.breakLoop) return; + let finish; + let toDraw; let named = []; for (let j = 0; j < SETTINGS.mapChunkSize; j++){ - i = i + (reverse?-1:1); - let p = iter(route, route.index + i); + data.i = data.i + (reverse?-1:1); + let p = iter(route, route.index + data.i); if (!p || !p.lat) { - breakLoop = true; + data.breakLoop = true; break; } toDraw = Bangle.project(p); - if (p.name) named.push({i:poly.length,n:p.name}); - if (route.index + i + 1 == route.count - 1) finish = true; - poly.push(startingPoint.x-toDraw.x); - poly.push((startingPoint.y-toDraw.y)*-1); + if (p.name) named.push({i:data.poly.length,n:p.name}); + if (route.index + data.i + 1 == route.count - 1) finish = true; + data.poly.push(startingPoint.x-toDraw.x); + data.poly.push((startingPoint.y-toDraw.y)*-1); } - poly = graphics.transformVertices(poly, mapTrans); - graphics.drawPoly(poly, false); + data.poly = graphics.transformVertices(data.poly, mapTrans); + graphics.drawPoly(data.poly, false); - if (!isMapOverview && (poly[poly.length-2] < (x - 10) - || poly[poly.length-2] > (x + width + 10) - || poly[poly.length-1] < (y - 10) - || poly[poly.length-1] > (y + height + 10))) breakLoop = true; + if (!isMapOverview && (data.poly[data.poly.length-2] < (x - 10) + || data.poly[data.poly.length-2] > (x + width + 10) + || data.poly[data.poly.length-1] < (y - 10) + || data.poly[data.poly.length-1] > (y + height + 10))) data.breakLoop = true; + graphics.setFont6x15(); for (let c of named){ - if (i != 0 || s.currentPos.lat){ - graphics.drawImage(point, poly[c.i]-point.width/2, poly[c.i+1]-point.height/2); - graphics.drawString(c.n, poly[c.i] + 10, poly[c.i+1]); + if (data.i != 0 || s.currentPos.lat){ + graphics.drawImage(point, data.poly[c.i]-point.width/2, data.poly[c.i+1]-point.height/2); + graphics.drawString(c.n, data.poly[c.i] + 10, data.poly[c.i+1]); } } if (!reverse){ if (finish) - graphics.drawImage(finishIcon, poly[poly.length - 2] -5, poly[poly.length - 1] - 4); - else if (breakLoop) - graphics.drawImage(cross, poly[poly.length - 2] - cross.width/2, poly[poly.length - 1] - cross.height/2); + graphics.drawImage(finishIcon, data.poly[data.poly.length - 2] -5, data.poly[data.poly.length - 1] - 4); + else if (data.breakLoop) + graphics.drawImage(cross, data.poly[data.poly.length - 2] - cross.width/2, data.poly[data.poly.length - 1] - cross.height/2); } //Add last drawn point to get closed path if (toDraw) { - poly = [ startingPoint.x-toDraw.x, (startingPoint.y-toDraw.y)*-1]; + data.poly = [ startingPoint.x-toDraw.x, (startingPoint.y-toDraw.y)*-1]; toDraw = null; } - } while ((i < maxPoints || isMapOverview) && !breakLoop); + }; + let startIndex = 0; + do { + addToTimeoutQueue(drawChunk, data); + startIndex += SETTINGS.mapChunkSize; + } while ((startIndex < SETTINGS.maxPoints || (isMapOverview && startIndex < route.count))); }; drawPath(getNext,false); drawPath(getPrev,true); - graphics.setColor(graphics.theme.fg); - - if (s.currentPos.lat) { - let proj = Bangle.project(s.currentPos); - let pos = graphics.transformVertices([ startingPoint.x - proj.x, (startingPoint.y - proj.y)*-1 ], mapTrans); - - - if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} - if (pos[0] > x + width) {pos[0] = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} - if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} - if (pos[1] > y + height) { pos[1] = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} - - graphics.drawImage(arrow, pos[0]-arrow.width/2,pos[1]); - graphics.setColor(0,1,0); - graphics.fillRect(mapCenterX-1,mapCenterY-1, mapCenterX+1,mapCenterY+1); - graphics.drawCircle(mapCenterX,mapCenterY, mapScale*SETTINGS.waypointChangeDist); + let drawCurrentPos = function(){ graphics.setColor(graphics.theme.fg); - } else { - graphics.setColor(0,1,0); - graphics.fillCircle(mapCenterX,mapCenterY, 5); + + if (s.currentPos.lat) { + let proj = Bangle.project(s.currentPos); + let pos = graphics.transformVertices([ startingPoint.x - proj.x, (startingPoint.y - proj.y)*-1 ], mapTrans); + + + if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} + if (pos[0] > x + width) {pos[0] = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} + if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} + if (pos[1] > y + height) { pos[1] = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} + + graphics.drawImage(arrow, pos[0]-arrow.width/2,pos[1]); + graphics.setColor(0,1,0); + graphics.fillRect(mapCenterX-1,mapCenterY-1, mapCenterX+1,mapCenterY+1); + graphics.drawCircle(mapCenterX,mapCenterY, mapScale*SETTINGS.waypointChangeDist); + graphics.setColor(graphics.theme.fg); + } else { + graphics.setColor(0,1,0); + graphics.fillCircle(mapCenterX,mapCenterY, 5); + graphics.setColor(graphics.theme.fg); + } + }; + + addToTimeoutQueue(drawCurrentPos); + + let drawInterface = function(){ + graphics.setFont("Vector",25).setFontAlign(0,0); graphics.setColor(graphics.theme.fg); - } + graphics.clearRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); + graphics.drawRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); + graphics.drawString("-", x+width*0.125,y+height-g.getHeight()*0.1); + graphics.clearRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); + graphics.drawRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); + graphics.drawString("+", x+width*0.875,y+height-g.getHeight()*0.1); - graphics.setFont("Vector",25).setFontAlign(0,0); - graphics.setColor(graphics.theme.fg); - graphics.clearRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); - graphics.drawRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); - graphics.drawString("-", x+width*0.125,y+height-g.getHeight()*0.1); - - graphics.clearRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); - graphics.drawRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); - graphics.drawString("+", x+width*0.875,y+height-g.getHeight()*0.1); - - let refs = [100,200,300,400,500,800,1000,2000,5000,10000,50000]; - let l = width*0.4; - let scale = "<100"; - for (let c of refs){ - if (c*mapScale > l) - break; - else - scale = c; - } - graphics.setFontAlign(-1,1).setFont("Vector",14); - graphics.drawString(scale+"m",x+width*0.3,y+height-g.getHeight()*0.1); - if (!isNaN(scale)){ - graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1); - graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3,y+height-g.getHeight()*0.05); - graphics.drawLine(x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.05); - } + let refs = [100,200,300,400,500,800,1000,2000,5000,10000,50000]; + let l = width*0.4; + let scale = "<100"; + for (let c of refs){ + if (c*mapScale > l) + break; + else + scale = c; + } + graphics.setFontAlign(-1,1).setFont("Vector",14); + graphics.drawString(scale+"m",x+width*0.3,y+height-g.getHeight()*0.1); + if (!isNaN(scale)){ + graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1); + graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3,y+height-g.getHeight()*0.05); + graphics.drawLine(x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.05); + } + }; + addToTimeoutQueue(drawInterface); + prependTimeoutQueue(drawInterface); } if (SETTINGS.mapCompass){ - graphics.setFont6x15(); - let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; - let compassCenterX = x + errorMarkerSize + 5 + compassHeight; - let compassCenterY = y + errorMarkerSize + 5 + compassHeight + 3; - compass = graphics.transformVertices(compass, { - rotate:require("graphics_utils").degreesToRadians(180-course), - x: compassCenterX, - y: compassCenterY - }); - graphics.setFontAlign(0,0); - graphics.setColor(graphics.theme.bg); - graphics.fillCircle(compassCenterX, compassCenterY,compassHeight+7); - graphics.setColor(graphics.theme.fg); - graphics.drawCircle(compassCenterX, compassCenterY,compassHeight); - graphics.drawString("N", compass[2], compass[3], true); - graphics.drawString("S", compass[4], compass[5], true); - graphics.drawString("W", compass[6], compass[7], true); - graphics.drawString("E", compass[8], compass[9], true); + let drawMapCompass = function(){ + graphics.setFont6x15(); + let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; + let compassCenterX = x + errorMarkerSize + 5 + compassHeight; + let compassCenterY = y + errorMarkerSize + 5 + compassHeight + 3; + compass = graphics.transformVertices(compass, { + rotate:require("graphics_utils").degreesToRadians(180-course), + x: compassCenterX, + y: compassCenterY + }); + graphics.setFontAlign(0,0); + graphics.setColor(graphics.theme.bg); + graphics.fillCircle(compassCenterX, compassCenterY,compassHeight+7); + graphics.setColor(graphics.theme.fg); + graphics.drawCircle(compassCenterX, compassCenterY,compassHeight); + graphics.drawString("N", compass[2], compass[3], true); + graphics.drawString("S", compass[4], compass[5], true); + graphics.drawString("W", compass[6], compass[7], true); + graphics.drawString("E", compass[8], compass[9], true); - if(!isGpsCourse() && !isMapOverview) { - let xh = E.clip(s.acc.x*compassHeight, -compassHeight, compassHeight); - let yh = E.clip(s.acc.y*compassHeight, -compassHeight, compassHeight); - graphics.fillCircle(compassCenterX + xh, compassCenterY + yh,3); - } else if (isMapOverview){ - graphics.setColor(0,0,1); - graphics.fillCircle(compassCenterX, compassCenterY,3); - } + if(!isGpsCourse() && !isMapOverview) { + let xh = E.clip(s.acc.x*compassHeight, -compassHeight, compassHeight); + let yh = E.clip(s.acc.y*compassHeight, -compassHeight, compassHeight); + graphics.fillCircle(compassCenterX + xh, compassCenterY + yh,3); + } else if (isMapOverview){ + graphics.setColor(0,0,1); + graphics.fillCircle(compassCenterX, compassCenterY,3); + } + }; + addToTimeoutQueue(drawMapCompass); + prependTimeoutQueue(drawMapCompass); } + prependTimeoutQueue(()=>{ + graphics.clearRect(x,y,x+width,y+height); + }); + processTimeoutQueue(); } }; }; @@ -677,6 +733,7 @@ mapLiveScale = SETTINGS.mapScale; let onAction = function(_,xy){ if (WIDGETS.gpstrek.getState().route && global.screen == 1){ + clearTimeoutQueue(); if (xy && xy.y > Bangle.appRect.y+Bangle.appRect.h-g.getHeight()*0.2 && xy.y <= Bangle.appRect.y2){ if (xy.x < Bangle.appRect.x + Bangle.appRect.w/2) if (isMapOverview) { @@ -701,6 +758,7 @@ let onAction = function(_,xy){ mapOverviewY = g.getHeight()/2; } } + if (scheduleDraw) draw(); } else { nextScreen(); } @@ -708,9 +766,11 @@ let onAction = function(_,xy){ let onSwipe = function(dirLR,dirUD){ if (WIDGETS.gpstrek.getState().route && global.screen == 1 && isMapOverview){ + clearTimeoutQueue(); if (dirLR) mapOverviewX += SETTINGS.overviewScroll*dirLR; if (dirUD) mapOverviewY += SETTINGS.overviewScroll*dirUD; isMapOverviewChanged = true; + if (scheduleDraw) draw(); } else { if (dirLR < 0) { nextScreen(); From 5f25972211873e4a561b91cfb95bc7b1d0192842 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 22 May 2023 15:49:34 +0200 Subject: [PATCH 1220/1725] gpstrek - Less flicker during redraws in timeouts --- apps/gpstrek/app.js | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 0aa081cc0..7a343fb7b 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -212,8 +212,7 @@ let isGpsCourse = function(){ }; let isMapOverview = false; -let isMapOverviewChanged = true; -let isMapLiveChanged = true; +let forceMapRedraw = false; let activeTimeouts = []; let timeoutQueue = []; @@ -260,7 +259,6 @@ let getMapSlice = function(){ return { draw: function (graphics, x, y, height, width){ if (queueProcessing) return; - graphics.setClipRect(x,y,x+width,y+height); let s = WIDGETS.gpstrek.getState(); let course = 0; @@ -293,11 +291,9 @@ let getMapSlice = function(){ (Math.abs(lastCourse - course) > SETTINGS.minCourseChange || (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y) || (!lastCurrent || (Math.abs(lastCurrent.x - current.x)) > 10 || (Math.abs(lastCurrent.y - current.y)) > 10)) - || isMapOverviewChanged - || isMapLiveChanged) { + || forceMapRedraw) { lastMode = isMapOverview; - isMapOverviewChanged = false; - isMapLiveChanged = false; + forceMapRedraw = false; lastDrawn = Date.now(); lastCourse = course; lastStart = startingPoint; @@ -323,6 +319,7 @@ let getMapSlice = function(){ let drawChunk = function(data){ if (data.breakLoop) return; + graphics.setClipRect(x,y,x+width,y+height); let finish; let toDraw; let named = []; @@ -381,6 +378,7 @@ let getMapSlice = function(){ drawPath(getPrev,true); let drawCurrentPos = function(){ + graphics.setClipRect(x,y,x+width,y+height); graphics.setColor(graphics.theme.fg); if (s.currentPos.lat) { @@ -408,6 +406,7 @@ let getMapSlice = function(){ addToTimeoutQueue(drawCurrentPos); let drawInterface = function(){ + graphics.setClipRect(x,y,x+width,y+height); graphics.setFont("Vector",25).setFontAlign(0,0); graphics.setColor(graphics.theme.fg); graphics.clearRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); @@ -440,6 +439,7 @@ let getMapSlice = function(){ } if (SETTINGS.mapCompass){ let drawMapCompass = function(){ + graphics.setClipRect(x,y,x+width,y+height); graphics.setFont6x15(); let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; let compassCenterX = x + errorMarkerSize + 5 + compassHeight; @@ -473,7 +473,10 @@ let getMapSlice = function(){ } prependTimeoutQueue(()=>{ - graphics.clearRect(x,y,x+width,y+height); + //clear map view + graphics.clearRect(x,y,x+width,y+height-g.getHeight()*0.2-1); + //clear space between buttons + graphics.clearRect(x+width/4+1,y+height-g.getHeight()*0.2,x+width*0.75-1,y+height-1); }); processTimeoutQueue(); } @@ -732,8 +735,9 @@ mapOverviewScale = SETTINGS.overviewScale; mapLiveScale = SETTINGS.mapScale; let onAction = function(_,xy){ + clearTimeoutQueue(); + forceMapRedraw = true; if (WIDGETS.gpstrek.getState().route && global.screen == 1){ - clearTimeoutQueue(); if (xy && xy.y > Bangle.appRect.y+Bangle.appRect.h-g.getHeight()*0.2 && xy.y <= Bangle.appRect.y2){ if (xy.x < Bangle.appRect.x + Bangle.appRect.w/2) if (isMapOverview) { @@ -747,10 +751,6 @@ let onAction = function(_,xy){ } else { mapLiveScale *= 1.5; } - if (isMapOverview) - isMapOverviewChanged = true; - else - isMapLiveChanged = true; } else { isMapOverview = !isMapOverview; if (!isMapOverview){ @@ -758,19 +758,19 @@ let onAction = function(_,xy){ mapOverviewY = g.getHeight()/2; } } - if (scheduleDraw) draw(); + if (scheduleDraw) drawInTimeout(); } else { nextScreen(); } }; let onSwipe = function(dirLR,dirUD){ + clearTimeoutQueue(); + forceMapRedraw = true; if (WIDGETS.gpstrek.getState().route && global.screen == 1 && isMapOverview){ - clearTimeoutQueue(); if (dirLR) mapOverviewX += SETTINGS.overviewScroll*dirLR; if (dirUD) mapOverviewY += SETTINGS.overviewScroll*dirUD; - isMapOverviewChanged = true; - if (scheduleDraw) draw(); + if (scheduleDraw) drawInTimeout(); } else { if (dirLR < 0) { nextScreen(); From e4a973e3cb55373387cc03a917cced1fec5cfc20 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 22 May 2023 16:40:30 +0200 Subject: [PATCH 1221/1725] gpstrek - Completely stop drawing during input events --- apps/gpstrek/app.js | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 7a343fb7b..9713b6498 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -228,20 +228,24 @@ let prependTimeoutQueue = function (func, data){ timeoutQueue.unshift({f:func,d:data}); }; -let processTimeoutQueue = function(){ - queueProcessing = true; - addToTimeoutQueue(()=>{queueProcessing=false;}); +let runNextTimeout = function(){ if (timeoutQueue.length > 0){ let current = timeoutQueue.shift(); let id = setTimeout(()=>{ current.f(current.d); activeTimeouts = activeTimeouts.filter((c)=>c!=id); - processTimeoutQueue(); + runNextTimeout(); },0); activeTimeouts.push(id); } }; +let processTimeoutQueue = function(){ + queueProcessing = true; + addToTimeoutQueue(()=>{queueProcessing=false;}); + runNextTimeout(); +}; + let clearTimeoutQueue = function(){ timeoutQueue = []; for (let c of activeTimeouts){ @@ -738,6 +742,7 @@ let onAction = function(_,xy){ clearTimeoutQueue(); forceMapRedraw = true; if (WIDGETS.gpstrek.getState().route && global.screen == 1){ + stopDrawing(); if (xy && xy.y > Bangle.appRect.y+Bangle.appRect.h-g.getHeight()*0.2 && xy.y <= Bangle.appRect.y2){ if (xy.x < Bangle.appRect.x + Bangle.appRect.w/2) if (isMapOverview) { @@ -758,7 +763,7 @@ let onAction = function(_,xy){ mapOverviewY = g.getHeight()/2; } } - if (scheduleDraw) drawInTimeout(); + startDrawing(); } else { nextScreen(); } @@ -768,9 +773,10 @@ let onSwipe = function(dirLR,dirUD){ clearTimeoutQueue(); forceMapRedraw = true; if (WIDGETS.gpstrek.getState().route && global.screen == 1 && isMapOverview){ + stopDrawing(); if (dirLR) mapOverviewX += SETTINGS.overviewScroll*dirLR; if (dirUD) mapOverviewY += SETTINGS.overviewScroll*dirUD; - if (scheduleDraw) drawInTimeout(); + startDrawing(); } else { if (dirLR < 0) { nextScreen(); @@ -1116,6 +1122,12 @@ let stopDrawing = function(){ scheduleDraw = false; }; +let startDrawing = function(){ + scheduleDraw = true; + draw(); + drawInTimeout(); +}; + let drawInTimeout = function(){ if (global.drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(()=>{ From ee383789e9fc88b1faed115e812a10ab5939fd28 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 22 May 2023 21:02:36 +0200 Subject: [PATCH 1222/1725] gpstrek - Do not switch modes for touches on widget bar --- apps/gpstrek/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 9713b6498..659b57e73 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -756,7 +756,7 @@ let onAction = function(_,xy){ } else { mapLiveScale *= 1.5; } - } else { + } else if (xy && xy.y > Bangle.appRect.y){ isMapOverview = !isMapOverview; if (!isMapOverview){ mapOverviewX = g.getWidth()/2; From 2813a43c12e566c849796635a8ab598478325be8 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 22 May 2023 21:07:13 +0200 Subject: [PATCH 1223/1725] gpstrek - Sort file names in route loading menu --- apps/gpstrek/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 659b57e73..956bdfaad 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -962,7 +962,7 @@ let showRouteSelector = function(){ } }; - STORAGE.list(/\.trf$/).forEach((file)=>{ + STORAGE.list(/\.trf$/).sort().forEach((file)=>{ menu[file] = ()=>{handleLoading(file);}; }); From 8d0e6b3827374bb48555d1fd29a9f59a3de21a18 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 24 May 2023 09:03:06 +0200 Subject: [PATCH 1224/1725] gpstrek - Interface enables upload button only after input validation --- apps/gpstrek/interface.html | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/apps/gpstrek/interface.html b/apps/gpstrek/interface.html index 700b16e9a..d7a51da5a 100644 --- a/apps/gpstrek/interface.html +++ b/apps/gpstrek/interface.html @@ -10,10 +10,12 @@

    Upload tracks to your watch

    Allows uploading a GPX format track file to your watch. Converts tracks containing "trkpt"-nodes into the GPS Trekking format.

    -
    - -
    -
    +
    +
    + +
    +
    + @@ -66,6 +68,10 @@ if (document.getElementById('fileName').value == ""){ document.getElementById('fileName').value = filename; } + + if (converted && converted.length > 0){ + document.getElementById('upload').disabled = false; + } } @@ -73,9 +79,14 @@ document.getElementById('upload').addEventListener('click', event => { Util.showModal("Saving..."); - Util.writeStorage(document.getElementById('fileName').value, converted, function() { - Util.hideModal(); - }); + let name = document.getElementById('fileName').value; + if (!name || name.length == 0) + name = document.getElementById('fileName').placeholder; + if (name && converted && converted.length > 0){ + Util.writeStorage(name, converted, function() { + Util.hideModal(); + }); + } }); function onInit() { } From c2a3d7b11ee341865acd024e2eec790a2b709281 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 24 May 2023 10:51:55 +0200 Subject: [PATCH 1225/1725] gpstrek - Fix map view not refreshing --- apps/gpstrek/app.js | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 956bdfaad..f03965a80 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -241,8 +241,9 @@ let runNextTimeout = function(){ }; let processTimeoutQueue = function(){ - queueProcessing = true; + if (queueProcessing) return; addToTimeoutQueue(()=>{queueProcessing=false;}); + queueProcessing = true; runNextTimeout(); }; @@ -263,6 +264,7 @@ let getMapSlice = function(){ return { draw: function (graphics, x, y, height, width){ if (queueProcessing) return; + print("DRAW"); let s = WIDGETS.gpstrek.getState(); let course = 0; @@ -291,11 +293,13 @@ let getMapSlice = function(){ if (!SETTINGS.mapCompass) compassHeight=0; if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; - if (Date.now() - lastDrawn > SETTINGS.mapRefresh && + let refreshMap = Date.now() - lastDrawn > SETTINGS.mapRefresh && (Math.abs(lastCourse - course) > SETTINGS.minCourseChange || (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y) || (!lastCurrent || (Math.abs(lastCurrent.x - current.x)) > 10 || (Math.abs(lastCurrent.y - current.y)) > 10)) - || forceMapRedraw) { + || forceMapRedraw; + + if (refreshMap) { lastMode = isMapOverview; forceMapRedraw = false; lastDrawn = Date.now(); @@ -312,6 +316,13 @@ let getMapSlice = function(){ y: mapCenterY }; + prependTimeoutQueue(()=>{ + //clear map view + graphics.clearRect(x,y,x+width,y+height-g.getHeight()*0.2-1); + //clear space between buttons + graphics.clearRect(x+width/4+1,y+height-g.getHeight()*0.2,x+width*0.75-1,y+height-1); + }); + let drawPath = function(iter, reverse){ "ram"; @@ -476,12 +487,6 @@ let getMapSlice = function(){ prependTimeoutQueue(drawMapCompass); } - prependTimeoutQueue(()=>{ - //clear map view - graphics.clearRect(x,y,x+width,y+height-g.getHeight()*0.2-1); - //clear space between buttons - graphics.clearRect(x+width/4+1,y+height-g.getHeight()*0.2,x+width*0.75-1,y+height-1); - }); processTimeoutQueue(); } }; From 26a5e93e24f00b4fb43ed5f8d9e6c615c5ab49c6 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 24 May 2023 11:02:08 +0200 Subject: [PATCH 1226/1725] gpstrek - Fix flicker on redraws of map --- apps/gpstrek/app.js | 129 ++++++++++++++++++++++---------------------- 1 file changed, 65 insertions(+), 64 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index f03965a80..3c73deb8c 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -264,7 +264,6 @@ let getMapSlice = function(){ return { draw: function (graphics, x, y, height, width){ if (queueProcessing) return; - print("DRAW"); let s = WIDGETS.gpstrek.getState(); let course = 0; @@ -293,6 +292,68 @@ let getMapSlice = function(){ if (!SETTINGS.mapCompass) compassHeight=0; if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; + let drawInterface = function(){ + graphics.setClipRect(x,y,x+width,y+height); + graphics.setFont("Vector",25).setFontAlign(0,0); + graphics.setColor(graphics.theme.fg); + graphics.clearRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); + graphics.drawRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); + graphics.drawString("-", x+width*0.125,y+height-g.getHeight()*0.1); + + graphics.clearRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); + graphics.drawRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); + graphics.drawString("+", x+width*0.875,y+height-g.getHeight()*0.1); + + let refs = [100,200,300,400,500,800,1000,2000,5000,10000,50000]; + let l = width*0.4; + let scale = "<100"; + for (let c of refs){ + if (c*mapScale > l) + break; + else + scale = c; + } + graphics.setFontAlign(-1,1).setFont("Vector",14); + graphics.drawString(scale+"m",x+width*0.3,y+height-g.getHeight()*0.1); + if (!isNaN(scale)){ + graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1); + graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3,y+height-g.getHeight()*0.05); + graphics.drawLine(x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.05); + } + }; + + let drawMapCompass = function(){ + graphics.setClipRect(x,y,x+width,y+height); + graphics.setFont6x15(); + let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; + let compassCenterX = x + errorMarkerSize + 5 + compassHeight; + let compassCenterY = y + errorMarkerSize + 5 + compassHeight + 3; + compass = graphics.transformVertices(compass, { + rotate:require("graphics_utils").degreesToRadians(180-course), + x: compassCenterX, + y: compassCenterY + }); + graphics.setFontAlign(0,0); + graphics.setColor(graphics.theme.bg); + graphics.fillCircle(compassCenterX, compassCenterY,compassHeight+7); + graphics.setColor(graphics.theme.fg); + graphics.drawCircle(compassCenterX, compassCenterY,compassHeight); + graphics.drawString("N", compass[2], compass[3], true); + graphics.drawString("S", compass[4], compass[5], true); + graphics.drawString("W", compass[6], compass[7], true); + graphics.drawString("E", compass[8], compass[9], true); + + if(!isGpsCourse() && !isMapOverview) { + let xh = E.clip(s.acc.x*compassHeight, -compassHeight, compassHeight); + let yh = E.clip(s.acc.y*compassHeight, -compassHeight, compassHeight); + graphics.fillCircle(compassCenterX + xh, compassCenterY + yh,3); + } else if (isMapOverview){ + graphics.setColor(0,0,1); + graphics.fillCircle(compassCenterX, compassCenterY,3); + } + }; + + let refreshMap = Date.now() - lastDrawn > SETTINGS.mapRefresh && (Math.abs(lastCourse - course) > SETTINGS.minCourseChange || (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y) @@ -321,6 +382,9 @@ let getMapSlice = function(){ graphics.clearRect(x,y,x+width,y+height-g.getHeight()*0.2-1); //clear space between buttons graphics.clearRect(x+width/4+1,y+height-g.getHeight()*0.2,x+width*0.75-1,y+height-1); + + drawInterface(); + drawMapCompass(); }); let drawPath = function(iter, reverse){ @@ -419,74 +483,11 @@ let getMapSlice = function(){ }; addToTimeoutQueue(drawCurrentPos); - - let drawInterface = function(){ - graphics.setClipRect(x,y,x+width,y+height); - graphics.setFont("Vector",25).setFontAlign(0,0); - graphics.setColor(graphics.theme.fg); - graphics.clearRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); - graphics.drawRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); - graphics.drawString("-", x+width*0.125,y+height-g.getHeight()*0.1); - - graphics.clearRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); - graphics.drawRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); - graphics.drawString("+", x+width*0.875,y+height-g.getHeight()*0.1); - - let refs = [100,200,300,400,500,800,1000,2000,5000,10000,50000]; - let l = width*0.4; - let scale = "<100"; - for (let c of refs){ - if (c*mapScale > l) - break; - else - scale = c; - } - graphics.setFontAlign(-1,1).setFont("Vector",14); - graphics.drawString(scale+"m",x+width*0.3,y+height-g.getHeight()*0.1); - if (!isNaN(scale)){ - graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1); - graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3,y+height-g.getHeight()*0.05); - graphics.drawLine(x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.05); - } - }; addToTimeoutQueue(drawInterface); - prependTimeoutQueue(drawInterface); } if (SETTINGS.mapCompass){ - let drawMapCompass = function(){ - graphics.setClipRect(x,y,x+width,y+height); - graphics.setFont6x15(); - let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; - let compassCenterX = x + errorMarkerSize + 5 + compassHeight; - let compassCenterY = y + errorMarkerSize + 5 + compassHeight + 3; - compass = graphics.transformVertices(compass, { - rotate:require("graphics_utils").degreesToRadians(180-course), - x: compassCenterX, - y: compassCenterY - }); - graphics.setFontAlign(0,0); - graphics.setColor(graphics.theme.bg); - graphics.fillCircle(compassCenterX, compassCenterY,compassHeight+7); - graphics.setColor(graphics.theme.fg); - graphics.drawCircle(compassCenterX, compassCenterY,compassHeight); - graphics.drawString("N", compass[2], compass[3], true); - graphics.drawString("S", compass[4], compass[5], true); - graphics.drawString("W", compass[6], compass[7], true); - graphics.drawString("E", compass[8], compass[9], true); - - if(!isGpsCourse() && !isMapOverview) { - let xh = E.clip(s.acc.x*compassHeight, -compassHeight, compassHeight); - let yh = E.clip(s.acc.y*compassHeight, -compassHeight, compassHeight); - graphics.fillCircle(compassCenterX + xh, compassCenterY + yh,3); - } else if (isMapOverview){ - graphics.setColor(0,0,1); - graphics.fillCircle(compassCenterX, compassCenterY,3); - } - }; addToTimeoutQueue(drawMapCompass); - prependTimeoutQueue(drawMapCompass); } - processTimeoutQueue(); } }; From 7fc433d4fde1e51e1951400b1f368c31094305bc Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 24 May 2023 21:08:39 +0200 Subject: [PATCH 1227/1725] gpstrek - Fix flicker for out of view position markers --- apps/gpstrek/app.js | 71 +++++++++++++++++++++++---------------------- 1 file changed, 37 insertions(+), 34 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 3c73deb8c..4cbad0156 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -6,10 +6,11 @@ const SETTINGS = { mapCompass: true, mapScale:0.2, mapRefresh:500, - mapChunkSize: 10, + mapChunkSize: 5, overviewScroll: 30, overviewScale: 0.01, - refresh:100, + refresh:200, + refreshLocked:3000, cacheMinFreeMem:2000, cacheMaxEntries:0, minCourseChange: 5, @@ -291,6 +292,8 @@ let getMapSlice = function(){ let compassHeight = height*0.4; if (!SETTINGS.mapCompass) compassHeight=0; if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; + let mapCenterX = isMapOverview?mapOverviewX:x+(width-10)/2+compassHeight+5; + let mapCenterY = isMapOverview?mapOverviewY:y+height*0.7; let drawInterface = function(){ graphics.setClipRect(x,y,x+width,y+height); @@ -352,8 +355,33 @@ let getMapSlice = function(){ graphics.fillCircle(compassCenterX, compassCenterY,3); } }; - - + + let drawCurrentPos = function(){ + graphics.setClipRect(x,y,x+width,y+height); + graphics.setColor(graphics.theme.fg); + + if (s.currentPos.lat) { + let proj = Bangle.project(s.currentPos); + let pos = graphics.transformVertices([ startingPoint.x - proj.x, (startingPoint.y - proj.y)*-1 ], mapTrans); + + + if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} + if (pos[0] > x + width) {pos[0] = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} + if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} + if (pos[1] > y + height) { pos[1] = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} + + graphics.drawImage(arrow, pos[0]-arrow.width/2,pos[1]); + graphics.setColor(0,1,0); + graphics.fillRect(mapCenterX-1,mapCenterY-1, mapCenterX+1,mapCenterY+1); + graphics.drawCircle(mapCenterX,mapCenterY, mapScale*SETTINGS.waypointChangeDist); + graphics.setColor(graphics.theme.fg); + } else { + graphics.setColor(0,1,0); + graphics.fillCircle(mapCenterX,mapCenterY, 5); + graphics.setColor(graphics.theme.fg); + } + }; + let refreshMap = Date.now() - lastDrawn > SETTINGS.mapRefresh && (Math.abs(lastCourse - course) > SETTINGS.minCourseChange || (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y) @@ -367,8 +395,6 @@ let getMapSlice = function(){ lastCourse = course; lastStart = startingPoint; lastCurrent = current; - let mapCenterX = isMapOverview?mapOverviewX:x+(width-10)/2+compassHeight+5; - let mapCenterY = isMapOverview?mapOverviewY:y+height*0.7; let mapRot = require("graphics_utils").degreesToRadians(180-course); let mapTrans = { scale: mapScale, @@ -383,8 +409,11 @@ let getMapSlice = function(){ //clear space between buttons graphics.clearRect(x+width/4+1,y+height-g.getHeight()*0.2,x+width*0.75-1,y+height-1); + drawCurrentPos(); drawInterface(); - drawMapCompass(); + if (SETTINGS.mapCompass){ + drawMapCompass(); + } }); let drawPath = function(iter, reverse){ @@ -456,32 +485,6 @@ let getMapSlice = function(){ drawPath(getNext,false); drawPath(getPrev,true); - let drawCurrentPos = function(){ - graphics.setClipRect(x,y,x+width,y+height); - graphics.setColor(graphics.theme.fg); - - if (s.currentPos.lat) { - let proj = Bangle.project(s.currentPos); - let pos = graphics.transformVertices([ startingPoint.x - proj.x, (startingPoint.y - proj.y)*-1 ], mapTrans); - - - if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} - if (pos[0] > x + width) {pos[0] = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} - if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} - if (pos[1] > y + height) { pos[1] = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} - - graphics.drawImage(arrow, pos[0]-arrow.width/2,pos[1]); - graphics.setColor(0,1,0); - graphics.fillRect(mapCenterX-1,mapCenterY-1, mapCenterX+1,mapCenterY+1); - graphics.drawCircle(mapCenterX,mapCenterY, mapScale*SETTINGS.waypointChangeDist); - graphics.setColor(graphics.theme.fg); - } else { - graphics.setColor(0,1,0); - graphics.fillCircle(mapCenterX,mapCenterY, 5); - graphics.setColor(graphics.theme.fg); - } - }; - addToTimeoutQueue(drawCurrentPos); addToTimeoutQueue(drawInterface); } @@ -1139,7 +1142,7 @@ let drawInTimeout = function(){ drawTimeout = setTimeout(()=>{ drawTimeout = undefined; draw(); - },SETTINGS.refresh); + },Bangle.isLocked()?SETTINGS.refreshLocked:SETTINGS.refresh); }; let switchNav = function(){ From 0cee458de8094c53cdedcd1c2c7eeb342f169ab9 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 24 May 2023 22:19:05 +0200 Subject: [PATCH 1228/1725] gpstrek - Do not disable upload button --- apps/gpstrek/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/interface.html b/apps/gpstrek/interface.html index d7a51da5a..a4903cc20 100644 --- a/apps/gpstrek/interface.html +++ b/apps/gpstrek/interface.html @@ -14,7 +14,7 @@

    -
    +
    From ca4d1534eb171e8a34d17360a1e11cd8be544c26 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 25 May 2023 17:59:58 +0200 Subject: [PATCH 1229/1725] gpstrek - Fix map display when gps events are received --- apps/gpstrek/app.js | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 4cbad0156..8fdac9496 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -281,9 +281,6 @@ let getMapSlice = function(){ let prevPoint = getPrev(route, route.index); if (prevPoint && prevPoint.lat) startingPoint = Bangle.project(prevPoint); - let mapScale = isMapOverview ? mapOverviewScale : mapLiveScale; - - if (s.currentPos.lat) { current = Bangle.project(s.currentPos); } @@ -294,6 +291,14 @@ let getMapSlice = function(){ if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; let mapCenterX = isMapOverview?mapOverviewX:x+(width-10)/2+compassHeight+5; let mapCenterY = isMapOverview?mapOverviewY:y+height*0.7; + let mapScale = isMapOverview?mapOverviewScale : mapLiveScale; + let mapRot = require("graphics_utils").degreesToRadians(180-course); + let mapTrans = { + scale: mapScale, + rotate: mapRot, + x: mapCenterX, + y: mapCenterY + }; let drawInterface = function(){ graphics.setClipRect(x,y,x+width,y+height); @@ -395,13 +400,6 @@ let getMapSlice = function(){ lastCourse = course; lastStart = startingPoint; lastCurrent = current; - let mapRot = require("graphics_utils").degreesToRadians(180-course); - let mapTrans = { - scale: mapScale, - rotate: mapRot, - x: mapCenterX, - y: mapCenterY - }; prependTimeoutQueue(()=>{ //clear map view @@ -514,7 +512,7 @@ let getTargetSlice = function(targetDataSource){ let dist = distance(start,target); if (isNaN(dist)) dist = Infinity; - let bearingString = bearing(start,target) + ""; + let bearingString = bearing(start,target) + ""; if (target.name) { graphics.setFont("Vector",Math.floor(height*0.5)); let scrolledName = (target.name || "").substring(nameIndex); @@ -532,7 +530,7 @@ let getTargetSlice = function(targetDataSource){ graphics.drawString(distanceString, x + width, y+(height*0.5)); } else { graphics.setFont("Vector",Math.floor(height*1)); - let bearingString = bearing(start,target) + ""; + let bearingString = bearing(start,target) + ""; let formattedDist = loc.distance(dist,2); let distNum = (formattedDist.match(/[0-9\.]+/) || [Infinity])[0]; let size = 0.8; @@ -1245,11 +1243,11 @@ let statusSlice = getDoubleLineSlice("Speed","Alt",()=>{ }); let status2Slice = getDoubleLineSlice("Compass","GPS",()=>{ - return getAveragedCompass() + ""; + return getAveragedCompass() + ""; },()=>{ - let course = "---"; + let course = "---"; let s = WIDGETS.gpstrek.getState(); - if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + ""; + if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + ""; return course; }); From f09aa53abd3e037f18b0a531fce807a4a8747c1e Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 25 May 2023 18:03:07 +0200 Subject: [PATCH 1230/1725] gpstrek - Fix wrong color of map segments when drawing after widgets or compass --- apps/gpstrek/app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 8fdac9496..22d3c4f48 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -425,6 +425,7 @@ let getMapSlice = function(){ let drawChunk = function(data){ if (data.breakLoop) return; + graphics.setColor(graphics.theme.fg); graphics.setClipRect(x,y,x+width,y+height); let finish; let toDraw; From efb28d16a2c3c61819a8b7e56d1a5f21eebb27e2 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 25 May 2023 20:19:46 +0200 Subject: [PATCH 1231/1725] gpstrek - Fix out of memory with long routes (hundreds of waypoints) --- apps/gpstrek/app.js | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 22d3c4f48..811b9bf92 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -220,12 +220,12 @@ let timeoutQueue = []; let queueProcessing = false; let addToTimeoutQueue = function (func, data){ - if (queueProcessing) return; + if (queueProcessing) print("Adding during processing, this should not happen"); timeoutQueue.push({f:func,d:data}); }; -let prependTimeoutQueue = function (func, data){ - if (queueProcessing) return; +let prependTimeoutQueue = function (func, data, force){ + if (queueProcessing && !force) print("Prepending during processing, this should not happen"); timeoutQueue.unshift({f:func,d:data}); }; @@ -473,14 +473,17 @@ let getMapSlice = function(){ toDraw = null; } + if (!isMapOverview && Math.abs(data.i) > SETTINGS.maxPoints) + data.breakLoop = true; + if (!data.breakLoop){ + //be careful when modifying the queue during processing + prependTimeoutQueue(drawChunk, data, true); + } }; - let startIndex = 0; - do { - addToTimeoutQueue(drawChunk, data); - startIndex += SETTINGS.mapChunkSize; - } while ((startIndex < SETTINGS.maxPoints || (isMapOverview && startIndex < route.count))); + addToTimeoutQueue(drawChunk, data); }; + drawPath(getNext,false); drawPath(getPrev,true); From 82296ca0f678b3959eb309570bac0850aca60f0c Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 25 May 2023 22:11:35 +0200 Subject: [PATCH 1232/1725] gpstrek - Fix incorrect indices for drawing the route --- apps/gpstrek/app.js | 80 +++++++++++++++++++++++++-------------------- 1 file changed, 44 insertions(+), 36 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 811b9bf92..ad81fc069 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -216,40 +216,45 @@ let isMapOverview = false; let forceMapRedraw = false; let activeTimeouts = []; -let timeoutQueue = []; +let taskQueue = []; let queueProcessing = false; -let addToTimeoutQueue = function (func, data){ +let addToTaskQueue = function (func, data){ if (queueProcessing) print("Adding during processing, this should not happen"); - timeoutQueue.push({f:func,d:data}); + taskQueue.push({f:func,d:data}); }; -let prependTimeoutQueue = function (func, data, force){ +let prependTaskQueue = function (func, data, force){ if (queueProcessing && !force) print("Prepending during processing, this should not happen"); - timeoutQueue.unshift({f:func,d:data}); + taskQueue.unshift({f:func,d:data}); }; -let runNextTimeout = function(){ - if (timeoutQueue.length > 0){ - let current = timeoutQueue.shift(); - let id = setTimeout(()=>{ +let runQueue = function(inTimeouts){ + if (taskQueue.length > 0){ + let current = taskQueue.shift(); + if (inTimeouts){ + let id = setTimeout(()=>{ + current.f(current.d); + activeTimeouts = activeTimeouts.filter((c)=>c!=id); + runQueue(); + },0); + activeTimeouts.push(id); + } else { current.f(current.d); - activeTimeouts = activeTimeouts.filter((c)=>c!=id); - runNextTimeout(); - },0); - activeTimeouts.push(id); + runQueue(); + } } }; -let processTimeoutQueue = function(){ +let processTaskQueue = function(inTimeouts){ if (queueProcessing) return; - addToTimeoutQueue(()=>{queueProcessing=false;}); + addToTaskQueue(()=>{queueProcessing=false;}); queueProcessing = true; - runNextTimeout(); + runQueue(inTimeouts); }; let clearTimeoutQueue = function(){ - timeoutQueue = []; + taskQueue = []; for (let c of activeTimeouts){ clearTimeout(c); } @@ -276,13 +281,17 @@ let getMapSlice = function(){ let route = s.route; if (!route) return; - let startingPoint = Bangle.project(route.currentWaypoint); + let waypoint = {}; + getEntry(route.filename, route.refs[route.index], waypoint); + let startingPoint = Bangle.project(waypoint); let current = startingPoint; - let prevPoint = getPrev(route, route.index); - if (prevPoint && prevPoint.lat) startingPoint = Bangle.project(prevPoint); if (s.currentPos.lat) { current = Bangle.project(s.currentPos); + } else { + // in case of no actual position assume previous waypoint as current + let prevPoint = getPrev(route, route.index); + if (prevPoint && prevPoint.lat) current = Bangle.project(prevPoint); } const errorMarkerSize=3; @@ -290,7 +299,7 @@ let getMapSlice = function(){ if (!SETTINGS.mapCompass) compassHeight=0; if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; let mapCenterX = isMapOverview?mapOverviewX:x+(width-10)/2+compassHeight+5; - let mapCenterY = isMapOverview?mapOverviewY:y+height*0.7; + let mapCenterY = isMapOverview?mapOverviewY:y+height*0.4; let mapScale = isMapOverview?mapOverviewScale : mapLiveScale; let mapRot = require("graphics_utils").degreesToRadians(180-course); let mapTrans = { @@ -401,7 +410,7 @@ let getMapSlice = function(){ lastStart = startingPoint; lastCurrent = current; - prependTimeoutQueue(()=>{ + prependTaskQueue(()=>{ //clear map view graphics.clearRect(x,y,x+width,y+height-g.getHeight()*0.2-1); //clear space between buttons @@ -418,7 +427,7 @@ let getMapSlice = function(){ "ram"; let data = { - i:0, + i:reverse?0:-1, poly:[0,0], breakLoop: false }; @@ -431,7 +440,6 @@ let getMapSlice = function(){ let toDraw; let named = []; for (let j = 0; j < SETTINGS.mapChunkSize; j++){ - data.i = data.i + (reverse?-1:1); let p = iter(route, route.index + data.i); if (!p || !p.lat) { data.breakLoop = true; @@ -442,6 +450,7 @@ let getMapSlice = function(){ if (route.index + data.i + 1 == route.count - 1) finish = true; data.poly.push(startingPoint.x-toDraw.x); data.poly.push((startingPoint.y-toDraw.y)*-1); + data.i = data.i + (reverse?-1:1); } data.poly = graphics.transformVertices(data.poly, mapTrans); @@ -476,24 +485,23 @@ let getMapSlice = function(){ if (!isMapOverview && Math.abs(data.i) > SETTINGS.maxPoints) data.breakLoop = true; if (!data.breakLoop){ - //be careful when modifying the queue during processing - prependTimeoutQueue(drawChunk, data, true); + prependTaskQueue(drawChunk, data, true); } }; - addToTimeoutQueue(drawChunk, data); + addToTaskQueue(drawChunk, data); }; drawPath(getNext,false); drawPath(getPrev,true); - addToTimeoutQueue(drawCurrentPos); - addToTimeoutQueue(drawInterface); + addToTaskQueue(drawCurrentPos); + addToTaskQueue(drawInterface); } if (SETTINGS.mapCompass){ - addToTimeoutQueue(drawMapCompass); + addToTaskQueue(drawMapCompass); } - processTimeoutQueue(); + processTaskQueue(true); } }; }; @@ -516,7 +524,7 @@ let getTargetSlice = function(targetDataSource){ let dist = distance(start,target); if (isNaN(dist)) dist = Infinity; - let bearingString = bearing(start,target) + ""; + let bearingString = bearing(start,target) + ""; if (target.name) { graphics.setFont("Vector",Math.floor(height*0.5)); let scrolledName = (target.name || "").substring(nameIndex); @@ -534,7 +542,7 @@ let getTargetSlice = function(targetDataSource){ graphics.drawString(distanceString, x + width, y+(height*0.5)); } else { graphics.setFont("Vector",Math.floor(height*1)); - let bearingString = bearing(start,target) + ""; + let bearingString = bearing(start,target) + ""; let formattedDist = loc.distance(dist,2); let distNum = (formattedDist.match(/[0-9\.]+/) || [Infinity])[0]; let size = 0.8; @@ -1247,11 +1255,11 @@ let statusSlice = getDoubleLineSlice("Speed","Alt",()=>{ }); let status2Slice = getDoubleLineSlice("Compass","GPS",()=>{ - return getAveragedCompass() + ""; + return getAveragedCompass() + ""; },()=>{ - let course = "---"; + let course = "---"; let s = WIDGETS.gpstrek.getState(); - if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + ""; + if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + ""; return course; }); From 4585df251924c7cbbf15f879a29cd8f66b0abf18 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 25 May 2023 21:46:28 +0100 Subject: [PATCH 1233/1725] bikespeedo: automatically create new recording if initial time --- apps/bikespeedo/app.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/apps/bikespeedo/app.js b/apps/bikespeedo/app.js index 6e22cc7a1..327f1c754 100644 --- a/apps/bikespeedo/app.js +++ b/apps/bikespeedo/app.js @@ -510,6 +510,7 @@ function start() { if (emulator) setInterval(updateClock, 2000); else setInterval(updateClock, 10000); + let createdRecording = false; Bangle.setUI({ mode: "custom", touch: nextMode, @@ -517,10 +518,12 @@ function start() { const rec = WIDGETS["recorder"]; if(rec){ const active = rec.isRecording(); - if(active) + if(active){ + createdRecording = true; rec.setRecording(false); - else - rec.setRecording(true, { force: "append" }); + }else{ + rec.setRecording(true, { force: createdRecording ? "append" : "new" }); + } }else{ nextMode(); } From 41e3b15a86a5db476790c55d13164030af0e1408 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 25 May 2023 22:55:12 +0200 Subject: [PATCH 1234/1725] gpstrek - Fix labels for named waypoints --- apps/gpstrek/app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index ad81fc069..8af32e09e 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -461,12 +461,12 @@ let getMapSlice = function(){ || data.poly[data.poly.length-1] < (y - 10) || data.poly[data.poly.length-1] > (y + height + 10))) data.breakLoop = true; - graphics.setFont6x15(); + graphics.setFont6x15().setFontAlign(-1,0); for (let c of named){ if (data.i != 0 || s.currentPos.lat){ graphics.drawImage(point, data.poly[c.i]-point.width/2, data.poly[c.i+1]-point.height/2); - graphics.drawString(c.n, data.poly[c.i] + 10, data.poly[c.i+1]); } + graphics.drawString(c.n, data.poly[c.i] + 10, data.poly[c.i+1]); } if (!reverse){ From 74d91c60a1a5e3e13e428d69d9385ea782703650 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 25 May 2023 21:58:33 +0100 Subject: [PATCH 1235/1725] settings: permit temporarily allowing a BLE connection --- apps/setting/settings.js | 35 ++++++++++++++++++++++++----------- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/apps/setting/settings.js b/apps/setting/settings.js index ffea3ddbb..a53cf4777 100644 --- a/apps/setting/settings.js +++ b/apps/setting/settings.js @@ -363,17 +363,6 @@ function showWhitelistMenu() { }; } - if (settings.whitelist) settings.whitelist.forEach(function(d){ - menu[d.substr(0,17)] = function() { - E.showPrompt(/*LANG*/'Remove\n'+d).then((v) => { - if (v) { - settings.whitelist.splice(settings.whitelist.indexOf(d),1); - updateSettings(); - } - setTimeout(showWhitelistMenu, 50); - }); - } - }); menu[/*LANG*/'Add Device']=function() { E.showAlert(/*LANG*/"Connect device\nto add to\nwhitelist",/*LANG*/"Whitelist").then(function() { NRF.removeAllListeners('connect'); @@ -389,6 +378,30 @@ function showWhitelistMenu() { showWhitelistMenu(); }); }; + + menu[/*LANG*/'Temporarily Add Device']=function() { + E.showAlert(/*LANG*/"Whitelist disabled\nConnect device",/*LANG*/"Whitelist").then(function() { + NRF.removeAllListeners('connect'); + showWhitelistMenu(); + }); + NRF.removeAllListeners('connect'); // this is sufficient to allow any device to connect + NRF.on('connect', function(addr) { + showWhitelistMenu(); + }); + }; + + if (settings.whitelist) settings.whitelist.forEach(function(d){ + menu[d.substr(0,17)] = function() { + E.showPrompt(/*LANG*/'Remove\n'+d).then((v) => { + if (v) { + settings.whitelist.splice(settings.whitelist.indexOf(d),1); + updateSettings(); + } + setTimeout(showWhitelistMenu, 50); + }); + } + }); + E.showMenu(menu); } From 974ab7f5252666758bce7954e8101cafff536bf8 Mon Sep 17 00:00:00 2001 From: NovaDawn999 <106365882+NovaDawn999@users.noreply.github.com> Date: Fri, 26 May 2023 00:15:42 -0500 Subject: [PATCH 1236/1725] Create app.js --- apps/guitar/app.js | 159 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 159 insertions(+) create mode 100644 apps/guitar/app.js diff --git a/apps/guitar/app.js b/apps/guitar/app.js new file mode 100644 index 000000000..d48d9009a --- /dev/null +++ b/apps/guitar/app.js @@ -0,0 +1,159 @@ +const stringInterval = 24; +const stringLength = 138; +const fretHeight = 35; +const fingerOffset = 17; +const x = 30; +const y = 32; + +//chords +const cc = [ + "C", + "0X", + "33", + "22", + "x", + "11", + "x" +]; + +const dd = [ + "D", + "0X", + "0X", + "x", + "21", + "33", + "22" +]; + +const gg = [ + "G", + "32", + "21", + "x", + "x", + "x", + "33" +]; + +const am = [ + "Am", + "0x", + "x", + "22", + "23", + "11" +]; + +const em = [ + "Em", + "x", + "22", + "23", + "x", + "x", + "x" +]; + +const aa = [ + "A", + "0X", + "x", + "21", + "22", + "23", + "x" +]; + +const ff = [ + "F", + "0X", + "33", + "34", + "22", + "11", + "11" +]; + +var ee = [ + "E", + "x", + "22", + "23", + "11", + "x", + "x" +]; + +var index = 0; +var chords = []; +var menu = { + "" : { + "title" : "Guitar Chords" + }, + "C" : function() { draw(cc); }, + "D" : function() { draw(dd); }, + "E" : function() { draw(ee); }, + "Em" : function() { draw(em); }, + "A" : function() { draw(aa); }, + "Am" : function() { draw(am); }, + "F" : function() { draw(ff); }, + "G" : function() { draw(gg); }, + "About" : function() { + E.showMessage( + "Created By:\nNovaDawn999", { + title:"About" + } + ); + } +}; + + + +function drawBase() { + for (let i = 0; i < 6; i++) { + g.drawLine(x + i * stringInterval, y, x + i * stringInterval, y + stringLength); + g.fillRect(x- 1, y + i * fretHeight - 1, x + stringInterval * 5 + 1, y + i * fretHeight + 1); + } +} + +function drawChord(chord) { + g.drawString(chord[0], g.getWidth() * 0.5 - 3, 18); + for (let i = 0; i < chord.length; i++) { + if (i === 0 || chord[i][0] === "x") { + continue; + } + if (chord[i][0] === "0") { + g.drawString(chord[i][1], x + (i - 1) * stringInterval - 5, y + fretHeight * chord[i][0] + 2, true); + g.drawCircle(x + (i - 1) * stringInterval -1, y + fretHeight * chord[i][0], 10); + } + else { + g.drawString(chord[i][1], x + (i - 1) * stringInterval -5, y -fingerOffset + fretHeight * chord[i][0] + 2, true); + g.drawCircle(x + (i - 1) * stringInterval -1, y -fingerOffset + fretHeight * chord[i][0], 10); + } + } +} + +function buttonPress() { + setWatch(() => { + buttonPress(); + }, BTN); + E.showMenu(menu); +} + +function draw(chord) { + g.clear(); + drawBase(); + drawChord(chord); +} + + + +function main() { + E.showMenu(menu); + setWatch(() => { + buttonPress(); + }, BTN); +} + +main(); From def056b496b89324b6fbcad58514035f9d985603 Mon Sep 17 00:00:00 2001 From: NovaDawn999 <106365882+NovaDawn999@users.noreply.github.com> Date: Fri, 26 May 2023 00:16:32 -0500 Subject: [PATCH 1237/1725] Create ChangeLog --- apps/guitar/ChangeLog | 1 + 1 file changed, 1 insertion(+) create mode 100644 apps/guitar/ChangeLog diff --git a/apps/guitar/ChangeLog b/apps/guitar/ChangeLog new file mode 100644 index 000000000..5560f00bc --- /dev/null +++ b/apps/guitar/ChangeLog @@ -0,0 +1 @@ +0.01: New App! From 6dc94b96cae6b41289b451b27e518ed7496108a3 Mon Sep 17 00:00:00 2001 From: NovaDawn999 <106365882+NovaDawn999@users.noreply.github.com> Date: Fri, 26 May 2023 00:17:16 -0500 Subject: [PATCH 1238/1725] Create README.md --- apps/guitar/README.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 apps/guitar/README.md diff --git a/apps/guitar/README.md b/apps/guitar/README.md new file mode 100644 index 000000000..ad4ecca4a --- /dev/null +++ b/apps/guitar/README.md @@ -0,0 +1,12 @@ +# Guitar Chords + +An app that simply describes finger placements on a Guitar to form common chords. + +## Usage + +Select a chord to view. +Use the button to return to the chord selection menu. + +## Creator + +NovaDawn999 From 724937205ec00a4fc76532c078674c357fbf2c05 Mon Sep 17 00:00:00 2001 From: NovaDawn999 <106365882+NovaDawn999@users.noreply.github.com> Date: Fri, 26 May 2023 00:19:19 -0500 Subject: [PATCH 1239/1725] Create app-icon.js --- apps/guitar/app-icon.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 apps/guitar/app-icon.js diff --git a/apps/guitar/app-icon.js b/apps/guitar/app-icon.js new file mode 100644 index 000000000..7a5487de6 --- /dev/null +++ b/apps/guitar/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("AJhMMJApEAPwBjJKEF1aJRBcrRKaMFKJQhgoXQYoMQSMpRRiCF1COCjVRcsplaJFFIoLgnWsLkO73RcpJO7TQwDFKoLkgAD1KpEQsfLQuGRQYkF0+pFBcgRg+o0ki6I0we70i4iXQqIFzQqJ1aiFghmCLUKquwWAC2wxcZ3u7BIjUQQGLjvb3apRaAF0RcD3aDRIICAjuUJQ/IWgepEK6Xwl0euQe77hcaFxYiiw16j3uiMAiKYvh6ivDguP1AuERjCQKvwS8eFxQAIFziQKXjxgUFzxgOFzxgMXjhgQFkAwKLkQAFJAsqAPwAyA")) From 52d45afc1cfc61eeea4cfc9a0042eca08737523e Mon Sep 17 00:00:00 2001 From: NovaDawn999 <106365882+NovaDawn999@users.noreply.github.com> Date: Fri, 26 May 2023 00:20:08 -0500 Subject: [PATCH 1240/1725] Add files via upload --- apps/guitar/app.png | Bin 0 -> 1798 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/guitar/app.png diff --git a/apps/guitar/app.png b/apps/guitar/app.png new file mode 100644 index 0000000000000000000000000000000000000000..6ff5d79ca34164a3a66ddd3b8a0f8eae81286cd2 GIT binary patch literal 1798 zcmV+h2l@DkP)S(*QIL}#iWQ94#XV3&4bxd^y%O~VVPdERfK z%$jBzz-5Lr^Ue;i!*|a6ob$ZT`vLvvM?bt0%VtiRSgaZMpVy3AXu*BxOZX;v`29yC z$F`i;jFeTZ84sVcJTm}&0f{e6p7mMun5trv@%HA|Ce)mY8S}FeVlozbeI=I82$^$s zQQ(DQld&WBji9fOMvaa*6K8DwJZ7v-uSDQxcq`6Dj~sk5dbF$9WaR0X(dLX<6TUcW zGB%3{sf5Q$`{1p(5EnR8NFI+GSIO}r$P5IadGO0-Es;H`+79y)&YTVYM>BB$|qY|ypNN{F2#6A3e>%!Id-PhSwm zw0U7%J3ovk;)2{F;*01p)rl`nnuESV-ZDRoY41#H5<3;g8()!Nqpy*VnjShH-VU!N zZ;!_lHVp^uacHo`p}8~`r%I#nbe|yaNJOwB30Iv-pe#os_)7w4UxE&M9P)pfi$PvX zzG4;pTr1$HUIogklC=VKrGOR5x|rga2fkh7jpPNj={SDH0$y3`Sr)K19jsZS3;NDH zgc6PT`GLg`*0lc~qyqfJ<8^MP4VBI?KV#*L^ymKe{bZ;T=&cWO6Ex6gZ6>Q1_ zo3`nn^7F4-z#miZCZDw+MA@lC!@zq&x@D&-N z=lTF%w)iu1e#l+q#ZJ!mK)VS$dyTZig26SZc%wcO$J{w+ZOqe&w-tcD?E%|%8)(ZI z$=X~$wptBr-EH8R)uU*+gM6s6Q}qX6#rt}9DviNYJxaVX8UB?i*jk;6rut0Kouk`C zc3g;G`w;wnA6T9_l8t)@(DJ4aLr3}X-RBq^Ga1#@tHHVqJ)E-hio6xP{xR783D{)yWkbFn*S+P#36DR@MK6zK z!kqDZclsz6Xpivhnm}H%Jft!q!Ith+wGzrkHWS=ELcS~(!45N8q?gMB<-xz^>b8-c z7xFhg0dE}!YqkaO#$f}eKIx~(Cr1P`>GfcmXOCm_^COgeu4une@vzP__^&WCReO)~12=S$a!UyKmJ!fAgSDzT+6!y5E%zs`4PsxID*rj)HBg&9YEW<5o|3$R|UjE zRjW|`iy1-PPTnKnHyOsnr}8j)sOmgopO19=q(+QoA95vC?X#<*MD!#YyxQN;C{~CZbY8+;s*>7uq2sgXi?!?-6kb zyqNQ#%7g@4x>I{6d8;m3_5Tfc5xohA8R3;FxGl$i*9al=&)-G}v6B#1t5E-){7t?i zfOBDR zEyrQGRY{oT(xODN8&_E+WNp5`L*(bt+!Ny+VnGfv%M}C00@**6X_} z1pn<4BY#)7u?%&kY%EKJ5AG!#77VUhiLay*VkfyK3cf1ZvX%Q literal 0 HcmV?d00001 From cfa6321f71030e0a11216fe59be5198899109924 Mon Sep 17 00:00:00 2001 From: NovaDawn999 <106365882+NovaDawn999@users.noreply.github.com> Date: Fri, 26 May 2023 00:21:13 -0500 Subject: [PATCH 1241/1725] Create metadata.json --- apps/guitar/metadata.json | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 apps/guitar/metadata.json diff --git a/apps/guitar/metadata.json b/apps/guitar/metadata.json new file mode 100644 index 000000000..50c55bece --- /dev/null +++ b/apps/guitar/metadata.json @@ -0,0 +1,14 @@ +{ "id": "Guitar", + "name": "Guitar Chords", + "shortName":"Guitar", + "version":"0.01", + "description": "Wrist mounted guitar chords", + "icon": "app.png", + "tags": "guitar, chords", + "supports" : ["BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"guitar.app.js","url":"app.js"}, + {"name":"guitar.img","url":"app-icon.js","evaluate":true} + ] +} From a25c98d3ad4f351474b9775c45bec57a10300d9c Mon Sep 17 00:00:00 2001 From: NovaDawn999 <106365882+NovaDawn999@users.noreply.github.com> Date: Fri, 26 May 2023 00:25:09 -0500 Subject: [PATCH 1242/1725] Update metadata.json --- apps/guitar/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/guitar/metadata.json b/apps/guitar/metadata.json index 50c55bece..8f98ce44e 100644 --- a/apps/guitar/metadata.json +++ b/apps/guitar/metadata.json @@ -1,4 +1,4 @@ -{ "id": "Guitar", +{ "id": "guitar", "name": "Guitar Chords", "shortName":"Guitar", "version":"0.01", From 6f63528a612c7814b16f59c896ea8f560727b166 Mon Sep 17 00:00:00 2001 From: NovaDawn999 <106365882+NovaDawn999@users.noreply.github.com> Date: Fri, 26 May 2023 00:26:21 -0500 Subject: [PATCH 1243/1725] Update app-icon.js --- apps/guitar/app-icon.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/guitar/app-icon.js b/apps/guitar/app-icon.js index 7a5487de6..490541b44 100644 --- a/apps/guitar/app-icon.js +++ b/apps/guitar/app-icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("AJhMMJApEAPwBjJKEF1aJRBcrRKaMFKJQhgoXQYoMQSMpRRiCF1COCjVRcsplaJFFIoLgnWsLkO73RcpJO7TQwDFKoLkgAD1KpEQsfLQuGRQYkF0+pFBcgRg+o0ki6I0we70i4iXQqIFzQqJ1aiFghmCLUKquwWAC2wxcZ3u7BIjUQQGLjvb3apRaAF0RcD3aDRIICAjuUJQ/IWgepEK6Xwl0euQe77hcaFxYiiw16j3uiMAiKYvh6ivDguP1AuERjCQKvwS8eFxQAIFziQKXjxgUFzxgOFzxgMXjhgQFkAwKLkQAFJAsqAPwAyA")) +require("heatshrink").decompress(atob("mEwwkCkQA/AGMkoQXVptEFytEogwUCoIYBLqlUGIIXTopHVknUoXULylNpouUIoKmUUi0hoMUailEiMSCR/d7pdECx8tC4IYBolULqAWC7qLSFwfdiKMRC4dEoK6RFwYWBppdW7vSLiPd6gXPConVgIWCYYYtM9vdosUqgXOFwndilBqoGDLh/eqtEioXR9xHCoIXDO5SKEpvU6kVppeQ73kqgwB7wuNOwosEXqSlB9xFNR49RpwXV6pICIxhIF73ePAIXTAAgXOJApePGBQXPGA4XPGAxeOGBAWQDAouRDAgWUAH4AZ")) From b784dd9c87b31ee227efc1affd30fedeaaee23e9 Mon Sep 17 00:00:00 2001 From: Romanist Date: Fri, 26 May 2023 13:33:40 +0400 Subject: [PATCH 1244/1725] Update metadata.json --- apps/pebbled/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/pebbled/metadata.json b/apps/pebbled/metadata.json index 9e71a914b..62fabc3e7 100644 --- a/apps/pebbled/metadata.json +++ b/apps/pebbled/metadata.json @@ -2,7 +2,7 @@ "id": "pebbled", "name": "Pebble Clock with distance", "shortName": "Pebble + distance", - "version": "0.03", + "version": "0.04", "description": "Fork of Pebble Clock with distance in KM. Both step count and the distance are on the main screen. Default step length = 0.75m (can be changed in settings).", "readme": "README.md", "icon": "pebbled.png", From ea18926dc86bd61f8f3afa92a1f7cf6c43db0d74 Mon Sep 17 00:00:00 2001 From: Romanist Date: Fri, 26 May 2023 13:34:30 +0400 Subject: [PATCH 1245/1725] Update ChangeLog --- apps/pebbled/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/pebbled/ChangeLog b/apps/pebbled/ChangeLog index d2f71f908..a0127ffce 100644 --- a/apps/pebbled/ChangeLog +++ b/apps/pebbled/ChangeLog @@ -2,3 +2,4 @@ 0.02: Tell clock widgets to hide. 0.03: Swipe down to see widgets Support for fast loading +0.04: Localisation request: added Miles and AM/PM From 48a2671ff8fd1b4e4a7fe4594590ef686602b6e6 Mon Sep 17 00:00:00 2001 From: Romanist Date: Fri, 26 May 2023 13:37:00 +0400 Subject: [PATCH 1246/1725] Update pebbled.settings.js --- apps/pebbled/pebbled.settings.js | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/pebbled/pebbled.settings.js b/apps/pebbled/pebbled.settings.js index d6c84d5d1..f4ca1d394 100644 --- a/apps/pebbled/pebbled.settings.js +++ b/apps/pebbled/pebbled.settings.js @@ -2,7 +2,7 @@ const SETTINGS_FILE = "pebbleDistance.json"; // initialize with default settings... - let s = {'bg': '#0f0', 'color': 'Green', 'avStep': 0.75}; + let s = {'bg': '#0f0', 'color': 'Green', 'avStep': 0.75, 'localization': 'World'}; // ...and overwrite them with any saved values // This way saved values are preserved if a new version adds more settings @@ -20,9 +20,10 @@ var color_options = ['Green','Orange','Cyan','Purple','Red','Blue']; var bg_code = ['#0f0','#ff0','#0ff','#f0f','#f00','#00f']; + var local_options = ['World', 'US']; E.showMenu({ - '': { 'title': 'Pebble Clock' }, + '': { 'title': 'PebbleD Clock' }, '< Back': back, 'Color': { value: 0 | color_options.indexOf(s.color), @@ -43,6 +44,15 @@ s.avStep = v; save(); } + }, + 'Localization': { + value: 0 | local_options.indexOf(s.localization), + min: 0, max: 1, + format: v => local_options[v], + onchange: v => { + s.localization = local_options[v]; + save(); + }, } }); }); From 311c35a8b8a684b8de934a37cb3d09438585e8a1 Mon Sep 17 00:00:00 2001 From: Romanist Date: Fri, 26 May 2023 13:41:03 +0400 Subject: [PATCH 1247/1725] Update pebbled.app.js --- apps/pebbled/pebbled.app.js | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/apps/pebbled/pebbled.app.js b/apps/pebbled/pebbled.app.js index 627a7651c..54b56712c 100644 --- a/apps/pebbled/pebbled.app.js +++ b/apps/pebbled/pebbled.app.js @@ -16,6 +16,15 @@ let drawTimeout; let loadSettings = function() { settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#0f0', 'color': 'Green', 'avStep': 0.75}; }; + +let tConv24 = function(time24) { + var ts = time24; + var H = +ts.substr(0, 2); + var h = (H % 12) || 12; + h = (h < 10)?("0"+h):h; + ts = h + ts.substr(2, 3); + return ts; +} const img = require("heatshrink").decompress(atob("oFAwkEogA/AH4A/AH4A/AH4A/AE8AAAoeXoAfeDQUBmcyD7A+Dh///8QD649CiAfaHwUvD4sEHy0DDYIfEICg+Cn4fHICY+DD4nxcgojOHwgfEIAYfRCIQaDD4ZAFD5r7DH4//kAfRCIZ/GAAnwD5p9DX44fTHgYSBf4ofVDAQEBl4fFUAgfOXoQzBgIfFBAIfPP4RAEAoYAB+cRiK/SG4h/WIBAfXIA7CBAAswD55AHn6fUIBMCD65AHl4gCmcziAfQQJqfQQJpiDgk0IDXxQLRAEECaBM+QgRYRYgUIA0CD4ggSQJiDCiAKBICszAAswD55AHABKBVD7BAFABIqBD5pAFABPxD55AOD6BADiIAJQAyxLABwf/gaAPAH4A/AH4ARA==")); @@ -30,16 +39,19 @@ let batteryWarning = false; let draw = function() { let date = new Date(); let da = date.toString().split(" "); - let timeStr = da[4].substr(0,5); + let timeStr = settings.localization === "US" ? tConv24(da[4].substr(0,5)) : da[4].substr(0,5); const t = 6; let stps = Bangle.getHealthStatus("day").steps; + const distInKm = (stps / 1000 * settings.avStep).toFixed(2); + const distance = settings.localization === "US" ? (distInKm / 1.609).toFixed(2) : distInKm; + const distanceStr = settings.localization === "US" ? distance + ' MI' : distance + ' KM'; - // turn the warning on once we have dipped below 15% - if (E.getBattery() < 15) + // turn the warning on once we have dipped below 25% + if (E.getBattery() < 25) batteryWarning = true; - // turn the warning off once we have dipped above 20% - if (E.getBattery() > 20) + // turn the warning off once we have dipped above 30% + if (E.getBattery() > 30) batteryWarning = false; g.reset(); @@ -88,7 +100,7 @@ let draw = function() { g.setColor('#fff'); // white on blue or red best contrast else g.setColor('#000'); // otherwise black regardless of theme - g.drawString((stps / 1000 * settings.avStep).toFixed(2) + ' KM', w/2, ha + 107); + g.drawString(distanceStr, w/2, ha + 107); // queue next draw if (drawTimeout) clearTimeout(drawTimeout); From 201cbdd84382e498e5942bd4e65109725016d352 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 26 May 2023 17:45:07 +0100 Subject: [PATCH 1248/1725] bikespeedo: version bump --- apps/bikespeedo/ChangeLog | 1 + apps/bikespeedo/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/bikespeedo/ChangeLog b/apps/bikespeedo/ChangeLog index b47f8cdc3..52459d312 100644 --- a/apps/bikespeedo/ChangeLog +++ b/apps/bikespeedo/ChangeLog @@ -2,3 +2,4 @@ 0.02: Barometer altitude adjustment setting 0.03: Use default Bangle formatter for booleans 0.04: Add options for units in locale and recording GPS +0.05: Allow toggling of "max" values (screen tap) and recording (button press) diff --git a/apps/bikespeedo/metadata.json b/apps/bikespeedo/metadata.json index ea74db9a1..87c0ed542 100644 --- a/apps/bikespeedo/metadata.json +++ b/apps/bikespeedo/metadata.json @@ -2,7 +2,7 @@ "id": "bikespeedo", "name": "Bike Speedometer (beta)", "shortName": "Bike Speedometer", - "version": "0.04", + "version": "0.05", "description": "Shows GPS speed, GPS heading, Compass heading, GPS altitude and Barometer altitude from internal sources", "icon": "app.png", "screenshots": [{"url":"Screenshot.png"}], From b69f2224b858b917bc4c6e9f364e687f20b7013e Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 26 May 2023 21:31:59 +0100 Subject: [PATCH 1249/1725] recorder: bump version --- apps/recorder/ChangeLog | 3 ++- apps/recorder/metadata.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/recorder/ChangeLog b/apps/recorder/ChangeLog index 874e4699c..9a696a8c2 100644 --- a/apps/recorder/ChangeLog +++ b/apps/recorder/ChangeLog @@ -29,4 +29,5 @@ 0.23: Add graphing for HRM, fix some other graphs Altitude graphing now uses barometer altitude if it exists plotTrack in widget allows track to be drawn in the background (doesn't block execution) -0.24: Can now specify `setRecording(true, {force:...` to not show a menu \ No newline at end of file +0.24: Can now specify `setRecording(true, {force:...` to not show a menu +0.25: Widget now has `isRecording()` for retrieving recording status. diff --git a/apps/recorder/metadata.json b/apps/recorder/metadata.json index 99f1539c6..00c1c965e 100644 --- a/apps/recorder/metadata.json +++ b/apps/recorder/metadata.json @@ -2,7 +2,7 @@ "id": "recorder", "name": "Recorder", "shortName": "Recorder", - "version": "0.24", + "version": "0.25", "description": "Record GPS position, heart rate and more in the background, then download to your PC.", "icon": "app.png", "tags": "tool,outdoors,gps,widget", From 78484bc2e551693199ee71e97c4721119ac1bf9a Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 27 May 2023 13:15:51 +0200 Subject: [PATCH 1250/1725] gpstrek - Fix parts of queue not being processed in timeouts --- apps/gpstrek/app.js | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 8af32e09e..883619014 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -236,12 +236,12 @@ let runQueue = function(inTimeouts){ let id = setTimeout(()=>{ current.f(current.d); activeTimeouts = activeTimeouts.filter((c)=>c!=id); - runQueue(); + runQueue(inTimeouts); },0); activeTimeouts.push(id); } else { current.f(current.d); - runQueue(); + runQueue(inTimeouts); } } }; @@ -269,7 +269,6 @@ let getMapSlice = function(){ let lastCurrent; return { draw: function (graphics, x, y, height, width){ - if (queueProcessing) return; let s = WIDGETS.gpstrek.getState(); let course = 0; @@ -403,6 +402,7 @@ let getMapSlice = function(){ || forceMapRedraw; if (refreshMap) { + clearTimeoutQueue(); lastMode = isMapOverview; forceMapRedraw = false; lastDrawn = Date.now(); @@ -424,8 +424,6 @@ let getMapSlice = function(){ }); let drawPath = function(iter, reverse){ - "ram"; - let data = { i:reverse?0:-1, poly:[0,0], From 1f5f074845d7b2beec45e88fe591407138e691d7 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 27 May 2023 13:17:23 +0200 Subject: [PATCH 1251/1725] gpstrek - Keep route index the same for whole draw --- apps/gpstrek/app.js | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 883619014..e345118ba 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -281,7 +281,8 @@ let getMapSlice = function(){ let route = s.route; if (!route) return; let waypoint = {}; - getEntry(route.filename, route.refs[route.index], waypoint); + let currentRouteIndex = route.index; + getEntry(route.filename, route.refs[currentRouteIndex], waypoint); let startingPoint = Bangle.project(waypoint); let current = startingPoint; @@ -289,7 +290,7 @@ let getMapSlice = function(){ current = Bangle.project(s.currentPos); } else { // in case of no actual position assume previous waypoint as current - let prevPoint = getPrev(route, route.index); + let prevPoint = getPrev(route, currentRouteIndex); if (prevPoint && prevPoint.lat) current = Bangle.project(prevPoint); } @@ -438,14 +439,14 @@ let getMapSlice = function(){ let toDraw; let named = []; for (let j = 0; j < SETTINGS.mapChunkSize; j++){ - let p = iter(route, route.index + data.i); + let p = iter(route, currentRouteIndex + data.i); if (!p || !p.lat) { data.breakLoop = true; break; } toDraw = Bangle.project(p); if (p.name) named.push({i:data.poly.length,n:p.name}); - if (route.index + data.i + 1 == route.count - 1) finish = true; + if (currentRouteIndex + data.i + 1 == route.count - 1) finish = true; data.poly.push(startingPoint.x-toDraw.x); data.poly.push((startingPoint.y-toDraw.y)*-1); data.i = data.i + (reverse?-1:1); @@ -522,7 +523,7 @@ let getTargetSlice = function(targetDataSource){ let dist = distance(start,target); if (isNaN(dist)) dist = Infinity; - let bearingString = bearing(start,target) + ""; + let bearingString = bearing(start,target) + ""; if (target.name) { graphics.setFont("Vector",Math.floor(height*0.5)); let scrolledName = (target.name || "").substring(nameIndex); @@ -540,7 +541,7 @@ let getTargetSlice = function(targetDataSource){ graphics.drawString(distanceString, x + width, y+(height*0.5)); } else { graphics.setFont("Vector",Math.floor(height*1)); - let bearingString = bearing(start,target) + ""; + let bearingString = bearing(start,target) + ""; let formattedDist = loc.distance(dist,2); let distNum = (formattedDist.match(/[0-9\.]+/) || [Infinity])[0]; let size = 0.8; @@ -1253,11 +1254,11 @@ let statusSlice = getDoubleLineSlice("Speed","Alt",()=>{ }); let status2Slice = getDoubleLineSlice("Compass","GPS",()=>{ - return getAveragedCompass() + ""; + return getAveragedCompass() + ""; },()=>{ - let course = "---"; + let course = "---"; let s = WIDGETS.gpstrek.getState(); - if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + ""; + if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + ""; return course; }); From 4bcf8baf68dfe39e1aade3e6e0def8440dab8acd Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 27 May 2023 13:34:30 +0200 Subject: [PATCH 1252/1725] gpstrek - Fix course degree sign --- apps/gpstrek/app.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index e345118ba..3feff1151 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -523,7 +523,7 @@ let getTargetSlice = function(targetDataSource){ let dist = distance(start,target); if (isNaN(dist)) dist = Infinity; - let bearingString = bearing(start,target) + ""; + let bearingString = bearing(start,target) + "°"; if (target.name) { graphics.setFont("Vector",Math.floor(height*0.5)); let scrolledName = (target.name || "").substring(nameIndex); @@ -541,7 +541,7 @@ let getTargetSlice = function(targetDataSource){ graphics.drawString(distanceString, x + width, y+(height*0.5)); } else { graphics.setFont("Vector",Math.floor(height*1)); - let bearingString = bearing(start,target) + ""; + let bearingString = bearing(start,target) + "°"; let formattedDist = loc.distance(dist,2); let distNum = (formattedDist.match(/[0-9\.]+/) || [Infinity])[0]; let size = 0.8; @@ -1254,11 +1254,11 @@ let statusSlice = getDoubleLineSlice("Speed","Alt",()=>{ }); let status2Slice = getDoubleLineSlice("Compass","GPS",()=>{ - return getAveragedCompass() + ""; + return getAveragedCompass() + "°"; },()=>{ - let course = "---"; + let course = "---°"; let s = WIDGETS.gpstrek.getState(); - if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + ""; + if (s.currentPos && s.currentPos.course) course = s.currentPos.course.toFixed(0) + "°"; return course; }); From cc64cd964864d3e0ab2f5073716b2b9702fdd3b5 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 27 May 2023 13:52:49 +0200 Subject: [PATCH 1253/1725] gpstrek - Refresh only when needed --- apps/gpstrek/app.js | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 3feff1151..549a72934 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -253,7 +253,7 @@ let processTaskQueue = function(inTimeouts){ runQueue(inTimeouts); }; -let clearTimeoutQueue = function(){ +let clearTaskQueue = function(){ taskQueue = []; for (let c of activeTimeouts){ clearTimeout(c); @@ -403,13 +403,7 @@ let getMapSlice = function(){ || forceMapRedraw; if (refreshMap) { - clearTimeoutQueue(); - lastMode = isMapOverview; - forceMapRedraw = false; - lastDrawn = Date.now(); - lastCourse = course; - lastStart = startingPoint; - lastCurrent = current; + clearTaskQueue(); prependTaskQueue(()=>{ //clear map view @@ -424,6 +418,13 @@ let getMapSlice = function(){ } }); + lastMode = isMapOverview; + forceMapRedraw = false; + lastDrawn = Date.now(); + lastCourse = course; + lastStart = startingPoint; + lastCurrent = current; + let drawPath = function(iter, reverse){ let data = { i:reverse?0:-1, @@ -496,10 +497,13 @@ let getMapSlice = function(){ addToTaskQueue(drawCurrentPos); addToTaskQueue(drawInterface); + } else { + drawInterface(); + if (SETTINGS.mapCompass){ + drawMapCompass(); + } } - if (SETTINGS.mapCompass){ - addToTaskQueue(drawMapCompass); - } + processTaskQueue(true); } }; @@ -757,7 +761,7 @@ mapOverviewScale = SETTINGS.overviewScale; mapLiveScale = SETTINGS.mapScale; let onAction = function(_,xy){ - clearTimeoutQueue(); + clearTaskQueue(); forceMapRedraw = true; if (WIDGETS.gpstrek.getState().route && global.screen == 1){ stopDrawing(); @@ -788,7 +792,7 @@ let onAction = function(_,xy){ }; let onSwipe = function(dirLR,dirUD){ - clearTimeoutQueue(); + clearTaskQueue(); forceMapRedraw = true; if (WIDGETS.gpstrek.getState().route && global.screen == 1 && isMapOverview){ stopDrawing(); From 408d57a5f0a5ebf088bbb5d5eee03d248334bbac Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 27 May 2023 15:57:23 +0200 Subject: [PATCH 1254/1725] gpstrek - Write index file to trf instead of keeping an im memory index --- apps/gpstrek/app.js | 82 +++++++++++++++++++++++++++------------------ 1 file changed, 50 insertions(+), 32 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 549a72934..432ac789d 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -79,7 +79,7 @@ let parseWaypointWithElevationAndName = function(filename, offset, result){ }; let cache = {}; -let cacheInsertion = []; +let cachedOffsets = []; let getEntry = function(filename, offset, result){ if (offset < 0) return offset; @@ -113,13 +113,13 @@ let getEntry = function(filename, offset, result){ result.fileLength = offset - result.fileOffset; cache[result.fileOffset] = result; - cacheInsertion.push(result.fileOffset); + cachedOffsets.push(result.fileOffset); if (SETTINGS.cacheMinFreeMem && process.memory(false).free < SETTINGS.cacheMinFreeMem){ - if (cacheInsertion.length > 0) cache[cacheInsertion.shift()] = undefined; + if (cachedOffsets.length > 0) cache[cachedOffsets.shift()] = undefined; } if (SETTINGS.cacheMaxEntries){ - while (cacheInsertion.length > SETTINGS.cacheMaxEntries){ - cache[cacheInsertion.shift()] = undefined; + while (cachedOffsets.length > SETTINGS.cacheMaxEntries){ + cache[cachedOffsets.shift()] = undefined; } } cache.filename = filename; @@ -282,7 +282,7 @@ let getMapSlice = function(){ if (!route) return; let waypoint = {}; let currentRouteIndex = route.index; - getEntry(route.filename, route.refs[currentRouteIndex], waypoint); + getEntry(route.filename, route.indexToOffset[currentRouteIndex], waypoint); let startingPoint = Bangle.project(waypoint); let current = startingPoint; @@ -821,27 +821,28 @@ let setButtons = function(){ Bangle.setUI(options); }; -let getApproxFileSize = function(name){ - let currentStart = STORAGE.getStats().totalBytes; - let currentSize = 0; - for (let i = currentStart; i > 500; i/=2){ - let currentDiff = i; - //print("Searching", currentDiff); - while (STORAGE.read(name, currentSize+currentDiff, 1) == ""){ - //print("Loop", currentDiff); - currentDiff = Math.ceil(currentDiff/2); - } - i = currentDiff*2; - currentSize += currentDiff; - } - return currentSize; +let getFileSize = function(filename){ + return STORAGE.readArrayBuffer(filename).byteLength; }; -let parseRouteData = function(filename, progressMonitor){ +let writeUint24 = function(filename, number, offset, size){ + let b = new ArrayBuffer(3); + let n = new Uint24Array(b,0,1); + n[0] = number; + STORAGE.write(filename,b,offset,size); +}; + +let writeUint32 = function(filename, number, offset, size){ + let b = new ArrayBuffer(4); + let n = new Uint32Array(b,0,1); + n[0] = number; + STORAGE.write(filename,b,offset,size); +}; + +let loadRouteData = function(filename, progressMonitor){ let routeInfo = {}; routeInfo.filename = filename; - routeInfo.refs = []; let c = {}; let scanOffset = 0; @@ -855,7 +856,22 @@ let parseRouteData = function(filename, progressMonitor){ routeInfo.up = 0; routeInfo.down = 0; - let size = getApproxFileSize(filename); + let trfHash = E.CRC32(STORAGE.read(filename)); + let size = getFileSize(filename); + let indexFileName = filename.substring(0,filename.length-1) + "i"; + //shortest possible entry is 24 characters + linebreak, 3 bytes per entry, 4 bytes hash in front + let indexFileSize = Math.ceil(size/25*3 + 4); + let createIndexFile = !STORAGE.read(indexFileName); + if (!createIndexFile){ + let currentHash = new Uint32Array(STORAGE.readArrayBuffer(indexFileName),0,1)[0]; + if (currentHash != trfHash){ + createIndexFile = true; + } + } + + // write hash into index file, will be recreated by this + if (createIndexFile) + writeUint32(indexFileName, trfHash, 0, indexFileSize); while ((scanOffset = getEntry(filename, scanOffset, waypoint)) > 0) { if (routeInfo.count % 5 == 0) progressMonitor(scanOffset, "Loading", size); @@ -874,13 +890,15 @@ let parseRouteData = function(filename, progressMonitor){ } } } + if (createIndexFile) writeUint24(indexFileName, waypoint.fileOffset, 4 + routeInfo.count * 3, indexFileSize); routeInfo.count++; - routeInfo.refs.push(waypoint.fileOffset); lastSeenWaypoint = waypoint; if (!isNaN(waypoint.alt)) lastSeenAlt = waypoint.alt; waypoint = {}; } + routeInfo.indexToOffset = new Uint24Array(STORAGE.readArrayBuffer(indexFileName),4); + set(routeInfo, 0); return routeInfo; }; @@ -903,7 +921,7 @@ let getNext = function(route, index){ if (route.mirror) --index; if (!route.mirror) ++index; let result = {}; - getEntry(route.filename, route.refs[index], result); + getEntry(route.filename, route.indexToOffset[index], result); return result; }; @@ -913,7 +931,7 @@ let getPrev = function(route, index){ if (route.mirror) ++index; if (!route.mirror) --index; let result = {}; - getEntry(route.filename, route.refs[index], result); + getEntry(route.filename, route.indexToOffset[index], result); return result; }; @@ -927,7 +945,7 @@ let set = function(route, index){ if (!route) return; route.currentWaypoint = {}; route.index = index; - getEntry(route.filename, route.refs[index], route.currentWaypoint); + getEntry(route.filename, route.indexToOffset[index], route.currentWaypoint); }; let prev = function(route){ @@ -942,8 +960,8 @@ let cachedLast; let getLast = function(route){ let wp = {}; if (lastMirror != route.mirror){ - if (route.mirror) getEntry(route.filename, route.refs[0], wp); - if (!route.mirror) getEntry(route.filename, route.refs[route.count - 1], wp); + if (route.mirror) getEntry(route.filename, route.indexToOffset[0], wp); + if (!route.mirror) getEntry(route.filename, route.indexToOffset[route.count - 1], wp); lastMirror = route.mirror; cachedLast = wp; } @@ -971,7 +989,7 @@ let showProgress = function(progress, title, max){ let handleLoading = function(c){ E.showMenu(); let s = WIDGETS.gpstrek.getState(); - s.route = parseRouteData(c, showProgress); + s.route = loadRouteData(c, showProgress); s.waypoint = null; s.route.mirror = false; removeMenu(); @@ -1186,7 +1204,7 @@ let setClosestWaypoint = function(route, startindex, progress){ for (let i = startindex?startindex:0; i < route.count - 1; i++){ if (progress && (i % 5 == 0)) progress(i-(startindex?startindex:0), "Searching", route.count); let wp = {}; - getEntry(route.filename, route.refs[i], wp); + getEntry(route.filename, route.indexToOffset[i], wp); let curDist = distance(s.currentPos, wp); if (curDist < minDist){ minDist = curDist; @@ -1282,7 +1300,7 @@ let systemSlice = getDoubleLineSlice("RAM","WP Cache",()=>{ let ram = process.memory(false); return ((ram.blocksize * ram.free)/1024).toFixed(0)+"kB"; },()=>{ - return cacheInsertion.length?cacheInsertion.length:0; + return cachedOffsets.length?cachedOffsets.length:0; }); let clear = function() { From f268596c19b756bb0c14aab350c2e3caea69006c Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 27 May 2023 16:59:02 +0200 Subject: [PATCH 1255/1725] gpstrek - Remove artififial limit for waypoints to draw --- apps/gpstrek/app.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 432ac789d..c14853858 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -14,8 +14,7 @@ const SETTINGS = { cacheMinFreeMem:2000, cacheMaxEntries:0, minCourseChange: 5, - waypointChangeDist: 50, - maxPoints: 50 + waypointChangeDist: 50 }; let init = function(){ @@ -482,8 +481,6 @@ let getMapSlice = function(){ toDraw = null; } - if (!isMapOverview && Math.abs(data.i) > SETTINGS.maxPoints) - data.breakLoop = true; if (!data.breakLoop){ prependTaskQueue(drawChunk, data, true); } From a1c5142ecc54c26e4c11918ac1ec7aa412de96a5 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 27 May 2023 18:15:37 +0200 Subject: [PATCH 1256/1725] gpstrek - Be a bit smarter about caching --- apps/gpstrek/app.js | 54 ++++++++++++++++++++++++++++++--------------- 1 file changed, 36 insertions(+), 18 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index c14853858..be49148c3 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -80,14 +80,42 @@ let parseWaypointWithElevationAndName = function(filename, offset, result){ let cache = {}; let cachedOffsets = []; -let getEntry = function(filename, offset, result){ - if (offset < 0) return offset; - if(cache.filename != filename) cache = {}; - if(filename && cache[offset]) { +let getFromCache = function(filename, offset, result){ + if(filename == cache.filename && cache[offset]) { Object.assign(result, cache[offset]); result.access = Date.now(); return offset + cache[offset].fileLength; } + return offset; +}; + +let cacheCleanup = function (){ + if (SETTINGS.cacheMinFreeMem){ + while (cachedOffsets.length > 0 && process.memory(false).free < SETTINGS.cacheMinFreeMem){ + cache[cachedOffsets.shift()] = undefined; + } + } + if (SETTINGS.cacheMaxEntries){ + while (cachedOffsets.length > SETTINGS.cacheMaxEntries){ + cache[cachedOffsets.shift()] = undefined; + } + } +}; + +let cacheAdd = function (filename, result) { + cacheCleanup(); + if(cache.filename != filename) { + cache = {}; + cache.filename = filename; + } + cache[result.fileOffset] = result; + cachedOffsets.push(result.fileOffset); +}; + +let getEntry = function(filename, offset, result, noCaching){ + if (offset < 0) return offset; + let cacheOffset = getFromCache(filename, offset, result); + if (cacheOffset != offset) return cacheOffset; result.fileOffset = offset; let type = STORAGE.read(filename, offset++, 1); if (type == "") return -1; @@ -111,17 +139,9 @@ let getEntry = function(filename, offset, result){ offset++; result.fileLength = offset - result.fileOffset; - cache[result.fileOffset] = result; - cachedOffsets.push(result.fileOffset); - if (SETTINGS.cacheMinFreeMem && process.memory(false).free < SETTINGS.cacheMinFreeMem){ - if (cachedOffsets.length > 0) cache[cachedOffsets.shift()] = undefined; + if (!noCaching && (SETTINGS.cacheMaxEntries || SETTINGS.cacheMinFreeMem)){ + cacheAdd(filename, result); } - if (SETTINGS.cacheMaxEntries){ - while (cachedOffsets.length > SETTINGS.cacheMaxEntries){ - cache[cachedOffsets.shift()] = undefined; - } - } - cache.filename = filename; return offset; }; @@ -870,7 +890,7 @@ let loadRouteData = function(filename, progressMonitor){ if (createIndexFile) writeUint32(indexFileName, trfHash, 0, indexFileSize); - while ((scanOffset = getEntry(filename, scanOffset, waypoint)) > 0) { + while ((scanOffset = getEntry(filename, scanOffset, waypoint, true)) > 0) { if (routeInfo.count % 5 == 0) progressMonitor(scanOffset, "Loading", size); if (lastSeenWaypoint){ routeInfo.length += distance(lastSeenWaypoint, waypoint); @@ -952,7 +972,6 @@ let prev = function(route){ }; let lastMirror; -let cachedLast; let getLast = function(route){ let wp = {}; @@ -960,9 +979,8 @@ let getLast = function(route){ if (route.mirror) getEntry(route.filename, route.indexToOffset[0], wp); if (!route.mirror) getEntry(route.filename, route.indexToOffset[route.count - 1], wp); lastMirror = route.mirror; - cachedLast = wp; } - return cachedLast; + return wp; }; let removeMenu = function(){ From 90276239cbbe8c8fa5bbc5dd13c761c8ca31210d Mon Sep 17 00:00:00 2001 From: pancake Date: Sun, 28 May 2023 20:37:15 +0200 Subject: [PATCH 1257/1725] Fix autogenerated hiragana bitmaps and speedup next/prev kanas --- apps/kanawatch/ChangeLog | 1 + apps/kanawatch/README.md | 2 +- apps/kanawatch/app.js | 78 ++++++++++++++++++++---------------- apps/kanawatch/metadata.json | 2 +- 4 files changed, 46 insertions(+), 37 deletions(-) diff --git a/apps/kanawatch/ChangeLog b/apps/kanawatch/ChangeLog index b2d2bab86..9144364d9 100644 --- a/apps/kanawatch/ChangeLog +++ b/apps/kanawatch/ChangeLog @@ -5,3 +5,4 @@ 0.05: Tell clock widgets to hide 0.06: Fix exception when showing missing hiragana 'WO' 0.07: Fix regression in bitmap selection on some code paths +0.08: Speedup next/prev and fix autogenerated hiragana bitmaps diff --git a/apps/kanawatch/README.md b/apps/kanawatch/README.md index e213949dc..87a9750b1 100644 --- a/apps/kanawatch/README.md +++ b/apps/kanawatch/README.md @@ -12,7 +12,7 @@ cards for learning. ## Author -Written by pancake in 2022, powered by insomnia +Written by pancake in 2022, maintained during 2023 and powered by insomnia ## Screenshots diff --git a/apps/kanawatch/app.js b/apps/kanawatch/app.js index 264058230..793104def 100644 --- a/apps/kanawatch/app.js +++ b/apps/kanawatch/app.js @@ -58,62 +58,76 @@ katakana['RE'] = image(51, 51, "//AAocf/AFDgf/CQl/8AFDh/8AocB/+AAwc/+AFDg/+GX4EC katakana['RO'] = image(50, 47, "/4AEn4FE94FE/YFE/wYF34YS4A1BgIYB+A8Cv/v/gFCj4YBAoUHDH4Y/DEbglDBQ8CAAYA=="); katakana['YU'] = image(59, 46, "gP/AAX+A4M/A4fggEHAwf8BwIGD/4GBj4VFgYVGv4HDwEAh4GD+A+Eg46CAAf/4AGEj/4Coo6CCqJFBCot/KAIADh5QCQAhQBCrM/Myk/M3JQGh5QFMyIRBAH6NB"); katakana['YO'] = image(50, 49, "v//AAefAonnAon5Aon+DDA1DgP/wA8E8AFDj/4AocHDFZjfDCJjxDD5WE/+/AonvAon7PgoYX/g3DAAQ"); + +// hiragana + hiragana['A'] = image(52, 50, "gEB/wGEn/AAocD/gMcg//AAfgv4FD/wMYFIRNa54HDgYyCBgYsEBgX/+AGBHQYpBCQQaCh4JBJQPwgIdBBAP/wASB4H/j/8MIP8j5fBBIP/4P8gf+j/7/hVBj/jA4PH/C/Bn4RBv8Aj/3/Ef55FB/9/wI+D+/wj40BHwIWBL4QJB+BFBwAmB/4MBD4M/94MBD4JAB/4cBNYN/BgM//AsB/n/z4bBQgOHX4QVB/B3B/CQCAQTSC8BFCB4Q4CB4UAgIIBRQOAXojREn/gaIgAC"); hiragana['I'] = image(58, 50, "v/gAgUggEf/AGCnkAg/+AwU/gEB/+AAwQZBDgcP/gcECQIcFCQIJCCol/4AGBgYLBj/wCokHCAIABFAIQCCon/DgQECn4cDCoItCAAI+BDggVCLoZeB+BgCCocPPQZUBwZdDJAQcEGAIcEGAIcEGQPDDghIBDggyBDggyBx4cBjxIC8aaCCAIyBLAMDM4IyBSARnC//HUIk/+IyBCASdBLAJKCGQOf/kDJQV/GQRKCJ4XgEYRPC/CoCDgOHNwl/8P/84jCDgM//5HCDgMHAwIjBgP8DwIsBQgYVBSQgVBaYZnCTIgtBbQhDCUAYkCfwYOCGIgAHA"); hiragana['U'] = image(46, 50, "h//Aoc////8AFBAgIABgEDAofACwIAB/wWD//4CwgdBCIeAFQUfCwIADCwIAMj//+AEBv4tDAgQLBHAYFBAgf/8YFE54FECwRTB/wkCAoP7IAd/OgR2CKwcBQ4kH/hMEJYQcC4AWIh4WEn4tJg6EEj6EEVgIQDE4l/CAbABCAZqBBQgQDBQIQCXwIyCYYTIFeIhlCBQjxCLIQWBMgbdFvzYJ"); hiragana['E'] = image(55, 50, "gF//4GE/4AB+AFBgIGC/+AgEDAwYNBg4FC/wGBh4GC/gGF/ArFFIQAD4BRVn42FLAIGEJQYGBLAhEBLAhEBLAf/8ArDBIIyEj5fCRYZYEEgJYEN4JNFDQouFDQKcBFwYGFMIIGDLQRJFAwgaBOYQuC8Y2DFwODAwcP/0HXAc//EPcQnAj5LCPAU/MwR4Cv5ECPAQ9CLoUBd4auE/guBVwf5PARaC+5qCAwXnJwSXB//HI4QGCw5ACAwUHNIn+gj/HAAg"); hiragana['O'] = image(54, 50, "gEB/0AggGCg/4gE8AwUf8EA/gGCv+AB4QaDv/wDQn/CwIaCgP/4AaDgf/wAaCgPn/4PBAAXv/0HAwef/kfAoX+n/4v4GCAgPxCYfg/4jBAAWBGwQ1BgEDJoJQCJoJRBLYcPCAJrCgEcKAaGEHgSGDF4QPCJYYxCHoYMBn5YDBgoGBDIP8FQKiBDwabBFoIzCv/gEAJQCMwWfKAIbBh58BDQMH/l/4IaCh/xTgIaCn/P/BrD/8/4CGD/i3BDQfz/gaDv/P+AaCCAIaEHQQaDv/hGoV4h//g4VB8JnBa4ePZYRkBBwKNCbwPwCYR/C44CB4BtBfgSaD8ACBYQQWBAAYA=="); + hiragana['KA'] = image(55, 49, "gEH/AGEh/wAwkf8AGEn/AAwl/wEAhgGC/4CBngCBgP+AQP8AwMDAYIyDAYUPAwQ2CAwY2Cj/4gP/AAP4j/wgYGC/gGBg4GC/0/8EPAwsfCgd/4E/Awt/FIf/LgJmBE4IGCMwMf8JjBHwIPB4IDBgZmBv+DAYMHMwP/BQRfBOwIKCL4J2BOIQvBAgJxCGQIEBHAKPCCwIYDCwQBBQoRGBviIDIQJRC4AdCXAYdCKIcHboQ/CboY4BboghBboZKCFAYhBjAoDh/8nzME+CfBF4V/RgP/EgKVBwYGBFAMH/zIBFAQeBAwIoDboRRD4DrBJQUHAQJsDAAwA="); hiragana['KI'] = image(48, 50, "AAMB+AFDh4FL/AFDg4FIn//AAX4ArpHC/xNEAov/LQgFCDgYAlF4UfPx8/g/8CoQbBKgQhCAoMDFAkHAoeAh4FEDgQAB4E/FgIUBwE/HwQdBn/gAoM+AoPAAoMMAohFCAqIpCgI7C4BEBI4oICAoZfE4C9BAob2EAoISCaQgACA="); hiragana['KU'] = image(33, 45, "AAsB4ADC+ADC/wDBgf/wADMg//CYIDDh4DDD4UfAY/8AY34AZRDCh4DCg4DCgYbCgI/CgH/BgU/BgREBBgIQB8AMCFIRNDLoJ2Cv42DJwQdDFQIdDFQQdDFQIdDHYRkDgYhCgADDnwDChyzE"); hiragana['KE'] = image(50, 49, "AAUB/0Ag/gAwN/wAICgEfBIIIBB4P4BAYPCh/wDAcD/gYE/4FBDAU/4AYEGIgOCDAQOBh//AAP+v+DAoX/7/AAof3+E/AoX9/gYD/9/gYFD/4YE/5QCGIJQDHYRvCJQU/N4JKCKAYYCKAQYWmAYEjwYEx6lDh/zUocDMgIYDv6cBKgUf/4yBBAMH/4eC4EBNQUfAQN/DYMPE4TjCAQQkCYgSJBDYLEBn7QCAQIbCE4UDDYP/PIV/CgLpD4EPP4UH+AkBAoIACCgIADh6LCAAMDAoYA=="); hiragana['KO'] = image(52, 50, "h//AAX+gAFD//gBgn/BgvwBiWAAon4GwUBDIQACCQQFCn//4AFCg4lBCQc/DwYfBKQJdEDwYAB8CIihAFEgJJDIgQFEg5KEMgITEj/8D4hwED4JqEOIIfEv5eEg4fEFg0PHIwsEBigmFCYkOv65CJYPnbgn+ZgIAD8IMFewvgCYjRBE4IMDegQABIoUfAoK7HA=="); + hiragana['SA'] = image(51, 50, "AAMB/gFE/+AAwcf+AFDgf+DIl/4AFDg4fEgAfLgIfCj//AFQzCn/gLJYMELI5mEh6GGBgUHGAP4CAQ3COYILCBgUDIgYZBAoYmBn5REDwPgQQPgDAIVBj4fBJ4d+CQI1CgeAXhgSDKoYSEQQp1GQQpFBawXwD4IGBg42BaQngBgRlDBgmABgjzBRYZDCPIYvCv//MQoACA=="); hiragana['SI'] = image(45, 50, "v/AAgUD/wKDj/wAof/wAECg/8BQc/8AbD/4bE/AbEFgcHFgk/FgcBFgkPDYhIgFgIKDFh8eFgn+FgcH/4sDv+/FgUD/osDn/vFgQ2BFgcf+YsD/+fFgUP/gsDv/HFgSKBLId/8IsCHgIXBSod/EIIKBwIhCv/4h4WBAQOAv/+IIP8AQIAC4AYBAAIkBn4KDJQIKDCwYpBCwRWCAoJhDAoK1DAAg="); hiragana['SU'] = image(52, 50, "AAUf8AFDgP+BjH/AYP/AAnvAon+BjJAUgf9BgZFB/4MDn4kEg4MFGIwMED4QME+E/+AyC/x0DFgPABwIMC/gMGDIn8gYMFv/4EwcP/+AKYf/BgRACBgYRB/4mCgF/AwJ6DBgoTCRohNDTZE/VAkP/gFDE4PAUQhGCI4YeEUIgYBD4gMBEpI4GgIFEAAo"); hiragana['SE'] = image(56, 50, "AAcP/ADB//AAwP8AwkHA34FBAAn+A1JalmAGFvinFv4GF//PXghEBAwfBAwoNGEQP/+AGDn4GFh//8AGDg5PCgF/AYP/wAGEgj/CAwQADAw4mCAwZCCAAQ8BFQgGBAAQGBj4GFJQIGEJQIGEgYGFGIIGCIQQVDHQgACA"); hiragana['SO'] = image(53, 50, "gP/AAXggEPAweAgF/AoX+gEDBgfwgEfCYoFD/EAg4MFAAQMCAAQwBBhQpBJQozBAAU/IAIACIYJUBAAV//gsJD4IsEn4sEOAn+NIn/+4FEAA39AwvvAwqQDAAP7UYhmCx5bDuBVB4BCDg5bEJ4JoEgJ1EEQKCESwIFEg5vEEA4TFh4TFv4TGYgiLBCYrFG/5dDd4YHCOQKkBDQjbDDQQwDWgR5DAwSGEEAgAEA=="); + hiragana['TA'] = image(52, 50, "gEP+AGE/4Mjgf/AAXAgE/AoX8BjUAgP+GYkf8AFDBhHnEIQMBEQQhBn/jFAWAgYMD/AMH/gMF4f/F4UH/kQGYd/KIIACg4VBBgmAQ4gMFUJcB/8DDQZgBv6iD/wuEn/gKIJGDEIl/4KCDC4KPE/+BBgYXBBgY5BAIImCj4MBTIKFB/wMBAAKSB8EPAwXnUYIMDCwLYD95RBEAIZCFQN/AwPBKISpBwEGQAgAGA=="); hiragana['TI'] = image(51, 49, "gED/wGEv/AAocP/AFDgP/CQk/8AFDg/8Bgn/wAFDj/wBQYAqJ4M/LBZrMJYZ+Ch5aDv/f/4bCBQIABCoMDHAYTBv4+Ej4MEg4DB4IMCAoIcCwE/TwU/+ASBEQI8BVQJLCv/gS4cP/kBMgYWBjyoEgLbJEYYSCQQkHCQg2EHASCEv4SBgYOBOQ70BQoYrBEQIABFYR/DJASRED4YFCBgJDDA="); hiragana['TU'] = image(59, 45, "AAUP/4FFAAIGCAoX//EAg4GD//ACYYAB/kBAwgOBn4OFDgoOBAYX+BYP8j4GBwEAAgPDGwQ+C/F/BgIABCwOMLQl/+AGEg/+NIv/8BwF/gGEKwIqDAAM/HAYzDEhkfEgsDEgxJGh5JFHQPACqQrBCpkfCopXBCogcBCog5BK4jSCAwxtDDYK8EZIQcCAoQcDCYTjCJgQGCEYT0DIAYGGEgQGDEgRcEv5UEA="); hiragana['TE'] = image(57, 50, "/4AFv4GF34GF74GF94GF+4GF/YGF/oGF/w7Cn//4BCDAwOAAwpQEj4ZDAxP8AyUPAwwiFg4GMgZFFAw0BLQqlBNAkAv4GG8AGEn/wKgv4KhZGGHALeGH4oxNh4xFOJBjGEYt/VQwVFg//BwhOBAAI7Dv4GBHYYcBCwgcB/5CEDgQyFGYgrCUwkPKAwAC"); hiragana['TO'] = image(46, 49, "gEH/AFDj/wAod/4AECgP/Cwn8C0cICwcDBoIWC/4NBCwMfEgV/4f/BoIWBv//LAMH/4AB8AWBAoWAgE/BQYlBDYUAh4FBHwQPEEIJQDFYJhCgYwCLQQqCDYQKDDYIKDn5xEEAYQB/x8JDYkDCAkPYIk/JoQWTAol/AocZQwR6B8aNCAAOPAgf+TIZqBAongT4QfCBYY9BW4R1BA="); -hiragana['NA'] = image(55, 50, "AAd/wEAn4CBgH/BIXAgEB/wJEgf8AQIJCg/4AQIJBgEP+ACBBIMAj/gAQYsBEoIoCGwf/GwkB/8P/4AC4f+j4GDw/4n4GDj/wv4FC/0/8AMD/l/4IGD/H/wYGD+P/g4vELARtCMQRtDMQQKDL4YKCMQQKDMQQKDR4QKCTIYKCFYQ2bOoI2C4BgCGwWASAQ2BGQKJC8DNBBAIAB+DNBPYf4ZoKrDAgPwT4K7BAwRdBB4K3BVYIqCVYY6BAwKrB/0DVY3+v/hAwf8n4SBdIXwnxEBAwXgnBEBAwShBO4IbBSYSVCOYQAHA"); -hiragana['NI'] = image(57, 50, "AAMPwAGE//gAocf//wgFwgEH////kH/AZBAwP+gf+Bof/wP/gEDAwWAAIMBAwc/FgIGDj4sBv4GBE4P8HAIdBE4IqBAwYgBKAIGCKAYKBAwN/EYIGDn4jBAwZfBDAQfBLIPAAwZZBDgItENYN/CAIfBIAIGCLIRfDLIXwAwc/RQJmCHAPv/0PEoI4B+f/AwcH/P/w50D/l/wZ0CgP+j/BK4Q4Bg/gJoQ4BwIGBIwU/4EwAQI4CIYICCAYY/EJQMHHATcCbAQKEHARGBGgQqBCIc/D4IGDaITCDT4PAAQJfCQQRYDeQQGDSIIGEYYIGEE4IGEDgYFCcAQ+CGQZsCABAA="); -hiragana['NU'] = image(58, 50, "gEP/AGEgf//wHE/4ABAwc/AwIPDh4OC8AGBg4GCEwUBAwX8Dod/EgoHC4AsF+BJFjAGDg4iEFgRfF/+AAwk/IwQjDFIgjDvAjDMYJlCgRHB4ABBFIUf/ABBFIXH/0HCoUf+BcBLwQpBCogpBCYIVDv+ACohNBn/wCoRxBCohNCMoIVBOIQVBAIJNCCAIVCEYIQBCoOAb4QtDCAQtC/gjCdIIXCN4QwBC4SVBDQIXBEYUP/gXBI4QEBHwPD/8ODgR/CwZNCCYN/8P/5/4GQOf+DtBKgXv/jtBKgX5/0PAwJxB/0/DAL8CvkDJYP/IYMMgFgg//fot/VYQACgYGFAAoA=="); -hiragana['NE'] = image(67, 45, "AAXwA43/4AHFn/8A4sPCA0B//+CAt///gA4kfCA0H/4QGA4IyFn4IBGQg5BIYsD//nCAt//F/CAkf/wzBCAYFBwH//BaE8ArBwBzFCAgNBLoQQCHIPADYIQD/6dBCAk/OQIQEHIQQEHIQkCCARaBO4YUCSYQQDHIQQFHIQQERQgQCLQQQEHIKBDCAPAn5fDCAP8gbNECAaJDCAbVECAPgvj+Gg72GdoqYFCAgHFKIoQDDA0AKIjODDA0ARYQAEhwHGAAIA=="); -hiragana['NO'] = image(54, 50, "h4GFn+AAocB/0IAwcH/F//4AB+Ef8IFC//A/+PAwcD/0fAoX8h/wDQk/4ITDAgMDAwcH/hGC/EAj/wIwXggF/4AGB/+AJIIFBGQJJCDQoWBDQf/wZlBDQIWBh41Dx5kE/0/Mgn4IgIGD8f8MgYaBL4IaEPQJrD/6RCGoRkCKAR/BKAgaBKAoaFNYoWCKIIaC8BKCDQWAIYQaCgJCCDQRyDDQRXDEoOBK4ahBW4K+CAgKcBDgLcBMwIwC/1/4JHBCYP5CoQwC4aND/atBRofDAgPgdQaSBHgX4hxXBHQXAhAOBAwKXCAAJlBbIIAH"); -hiragana['HA'] = image(50, 50, "AAMH/gFDgP/Bgl/4AFDj/wDBsH/4AD/oFE/9/AwoARJVXhAon4JQn+j4MEw4YLn4YEJTIfCAooYCAoX4DgQwCwBdEBgMDHoYMB//3Bgd/8AUC4A7BJQP//kHBwQGB4JYBFoX8KgMP/gGBz/+h//AIPjGAXA//wAoXwh/4DgX4gP8IgQnCF4QFBgOAEIKIEv6SCAA4A=="); -hiragana['HI'] = image(59, 50, "gP/AAOAA4U/AwPwAwUHAwP+CwYVC4AGCj4GB/AGCgYOCCod/AwPgGokH/g8GHQY8CHQYVCHQg8CwEfCAYEBgYQDAgV/JYYEBh5LDj/4GoJKEGoJLCAwP4JYZ9C/BLCNwSGDQgSGDOoaGDAwg6BEYQHDh//EomDAIP+ToaQBEIIvCKoJyCJgPH/yDCEIIVB4BNBMwIgB+CZCn/n4f+h5jBAQMw/+BOgKyCCoN/PIICBS4I0BCoQJBJQJqCBIP5NQfgD4KACn5tDGQSDEwADBTIJaBGQKZEDISvCToR8BeAQDBAQLbCb4RSCAAcHcQYACvwGFg45BAAj/DAAw="); -hiragana['HU'] = image(55, 50, "gED/gGEg/4AwkP+EAhwGCj/ggF+AwU/4EB/wGCv+Ag4GD/4kBAwM//4AB84GBv4GC54GBAoX/x/+gIGDh/+gYFC/0P/kHAwX8AwMPAwX4j5cCGwJOBAwJIDj5jBv4QCAwIpBNoU/+AiBNoIGCJYJtBAwPhFwPANQXjAwOAgEEv+P/A2C/H+CoI2BTIIhBwY2Bh/xwH+UgUf+CwBUgSgBBYKkCn/gh/gToI1B4Ef4AvCBIM/4ZmCIAN/44oBSgKdCFAJ3CLAY0BUgQoBGgIGBEIUPAwSID+AGBQIZHBJQRECd4Q9DI4QvBJwQ2Cj4sBGATRBJwLcDFgTcDC4QGEEILqEAwIbDIARoCBgQAGA="); -hiragana['HE'] = image(55, 50, "AAUf+AGEn/gAwl/4AECBQP/wAYC4EB/4YDwED/wYDwEH/gGCCIMP/AFBgIRBGwcDCIN/GwUH/EP/4bCDAP/AAI2C+4GCHwMfAoX/JgM/AwYjBv4GI8YGCFoN/wIGBgYCBFwIiBHYJfBNAPAn/8IwIGBwAaBh/wAwOD//4R4IfBg//+B2BDoJKB+AoBg/+JQPjOwMP/n/z/nQIMf/IOB76BBn/3/gVBMgN/94nBOQX/7/gAwKbBOwSOCHoJMCEIMH/v/CAJxBh/7/hcCF4X4KYLEC5/wj5KBEIOfGwJRCL4PzF4V/JIQvBCYJJCH4JxB4AGB/xCCFQIJDDoIMBBIRNBAQJdCIwKUCeAb5CPgQACSgIFDSgIFEAAg="); -hiragana['HO'] = image(51, 50, "AAN+AokP+AFDgf+Bgl/4ASE/ASVv//AAX8h4FD/+BAonwn4FD/0HBgnAAogoBgP/HAk/8AFDg5LEgASM/gSFwADBFQIAC8E4Iof+/5FE5/wAof5/0fAwc/8YFD8f8PAYEB54MDJ4SRDJ4KRDj/gNYaoCLAYWBLAYWCLAQWCDYJvDgYSCCwV/NYQWBGQc/+AyDg4yBj4MBgYSBAQP4OwPwbIglBQAgpBBgZiBBgYYBBgY1CU4S0DFoIRCAAo="); -hiragana['MA'] = image(55, 49, "gEP+AGEj/gAwk/4EAkAGCv+AgAPD/8AgYdCgP+EgkD/gdB/AGBg4DBv4GCj/w/wGCv////8AwQFB//4AwMBAwXwEQMDAwXgAwMHAwXAAwMPAwWAG4QvBLgQGBL4X/AwRfBKgIGCL4X8n/gLARUBn5YDMwM8NQaLBQYIoCAQSIDAQRZBRYaBDRYQhBFAIJCKIYyCDwKoBToZkBOAIJBPYKLCGwMH/h2CAwMfKoKKCI4PgSIYYB4afDJQMP/gpB+AhBMgIjB/AhC4EfAwIhCEoIGCwJdBaIIZBMgSkCjhMBgakBG4LICUgKDBAwQuBPgRKCjgGE4EQAwgEBAAIbBRAQACQgIDB"); -hiragana['MI'] = image(50, 50, "h+AAocD/gFDgP/CQl/4AFDn/gv//AAOP/E/AoXj/0HAoX4/+BAoX+DAuf+EfAoXn/gYD/P/gYEBG48f+AFDg5QMMYkf8BvE/BvE/wYE/4YEKAIYYgZSCDAMBJgQYCCgYDBFoYDBj4tCDAJlDDAMBGYYYBNYYYBn4xCg/4h6ECPgIHBPgfBDwaVBQgYvBToYYCFYauBaIIwB5/wcAfz/0PAoX8cAn/IgQFC55dBAoXxFILtC/grBGgL5BYIoAGA=="); -hiragana['MU'] = image(58, 50, "AAV/4AGEj/wAwkH/gGEgP/Aod+Dgv/wAcEj/gDgkH/AcEgP+Dgt/Dg3wn4mBHwYGBDAIyCAwP/8AGBAoQODh4GC/4sBgYGD/AcCAAO/IQQcC4IkCDgI7Bj5YBg//w/8EAIjCwIEBv/gMQPgLAMPFYP//h1BgZpC/4LCNwIxB4YoBFoIxB/AjBNIMH/v+n5UB/4qBn/fIoIJBv+PLYUPQwPhOIUD/gvBGYMH/3/BAX/457CBAP/84GBDgIlB/YGBCYJwB/qECDgKREwBCC34YBDgfvLYP+HIM/+YYCIwM/MoIYB/hGBMoQEBz4nBKQfDAwODGQXwKQQMB/P4j4GBAQP+ngtBUgIRBg6aBRwKiBwOAf4TNBAobjCAogAEA"); -hiragana['ME'] = image(57, 50, "gEP+AGEg/4AwkD/gGEgP+Dgv/Awt/wAGEn/Agf/BIUf8EP/40CHAMf/4tBAYP4AQImBCIP8n4GB4EH//+AwXgEwP/v4CB/EBAYIPBg4jBAwX8BYJFBCQRKDFYIGBJQJxBIgUfAQIrBAYMPCAIfBBQR8CAwR8DMAZ8Cv4GCGIQGDGIU/AwR8BAwKqCWoU/FoS1Cj4tCHASEBWogGBUAQKBAwItBHARpB8BlBBQKuCAQIKBO4SqCBQX8AwX4h/9/wGC/kP/n/DYSlCv+P/ArB4K+B4/4SIV+j/jWIX8n0P+JSBDoMOMwJWBAwOCMwM//ZOCMwI4C75nB/5bC45nBv+DAwPhTgXAb4PAoCfCQQifBYoYAHA"); -hiragana['MO'] = image(60, 50, "AAX//4GEv4HFj4GB/wGCg4GB//4AwMBAwX/4AcEDwcPAwYWBgYGDCwQVC54tCCoX8F4PgFYP4CYI+BgE//0P/gaB/ARB4F/4ApBwAVBg4OBj/8EgITB4AiB4InBBwQgBCAIOCPQPjD4MPJ4MH/0/+ALBwARB84kBBwQ0Bv/gBwc/+5bBj5tEHAR8Bn5lBBwInBBxY2CBwcDWIQOEGwIODJwIOFIoRKC4CNCBQP3AgKwCDIIOBKIQKB8/8IQJgBj4OB8E/MAfD/ytBEgX8J4KeBZwWDIgJCBCoP4ZgIzCAYIqBeYRQB8DnCK4gGBGoIDBwAyBF4IKCCQWBAwIVBEoPgF4RFBg/4F4Q2BAAQOBTwIADHoQADbIQAIA"); -hiragana['YA'] = image(54, 50, "gEf+AGEv/AAocB/4MEg/8DUv///Aj//wEDAwIcBAwMP//8BgIGBn//+IFBAwICB54GCDQQAC/0HAgXAn45BD4IDBn45Bv4MBAYPgGYJKCFAIbB8EAgf+DQRbEv/4LYYaBOQU/4EPCwIhCCYJrCgf8CYkP+BlBCYQaBv6GDOwQaECYIaEKwIaD4JWDgP+CYIaCg/4NQYTB8Z+BFwef+4aCMgN/74aCn/z/zXCIAOH/IaCh5CB44aBJoU+a4QyBwFwDQLGBCAOBX4adBGIJMBRIQaBUYI4CDQJnDFYJ7EDQKzCDQYECAA4"); -hiragana['YU'] = image(52, 49, "AAMf+AFDgP+Bgk/8AFDgYMM/gkD/4AC+EBAof/BkA5FhEAg45Cg/AgF/AQMBBIMP/4DB//gE4Xwn5dBn4GB74IBgY0Fv4FD8AfBAoYfB/gbBIAIiBg///A7B/+A/4rBCQIxBBAISB/ghBCQeBEoIMBCQI0BBgQSCDIYSB54MBgIlB+AMCj0H/0PBgIABHQQMBOgP4BgZBBBwTDCMYIMDKIIMRWQQmDAwUMYYqyBAoaxBN4IMEV4QMCcggMBWwbZCAweA"); -hiragana['YO'] = image(55, 50, "AAMHAwsP+AGEn/gAwl/4AFDgP/BgkD/whF/AGEj4oFEIsA/+AEIgoFg/8EIooFJQ3/JRcHJSgoGJQxEEg//FIkfAws/Cgv/AwUGJQX/HwMP8AoB74GBj/gh/+IoU/4BzBBQJBCJQIKBNQRzBv+AWoIIDJAP4SoMBIgIkBOYMDHoKTBAIIRBXgQBBB4IfBEIQYBFALgCCwMP/iVCJAXwJ4QfDcAX/4JRBSoRvBEIZ2DcAQGCFQIhBPoIYBcAQGBDAJqBCgQ6Bg7rIAAY="); -hiragana['RA'] = image(48, 50, "gEP4AFDj//wAFE/gFE/4TCn4FBBgQFCBgQRC//gBgN/BYUP/EBAog3BGIIFCgH/BAIFCh4FEgQFEBoXwAqsfAoIuBAoROBEwIFBIwP+AoPnLIWALwZfBNQf/+AFE/AFBEIM/AoR6Bh/8OoIzBg4FBRgQFCL4UD/wlBAoikCAoM/W4QFBj5dCAoMGAohpDg4FEHYJ1EAog5DDgJWCb4Y/Cg7RDaARFCAoZFBAobiEeoruCAoQtCAoI+DAAgA="); -hiragana['RI'] = image(40, 49, "ngEDn/AAg9/4Ef/AEBwF//4EBwP//4HBw4EB4F/x4EB8F/z4EB+H/n4EDAQIjBCwUPAgUAAgX+gEH/n//gEDHIMDAg3wAgP+AgvgAhBeBAhmAAiJ3BAhf8AgRUBAhBXBAAJtBAgSgCVgRcBAAJXCEwIEDj5SCBoJDCBAKSBBASSBXwKICAgQmCAgIcCv4SCAgI0DeAY="); -hiragana['RU'] = image(51, 50, "gf/AAXAgF/AoX8gEPBgeAgIFD/EAn4MEg4FD8EACQoACn4lBAAUf/4FDDYOAAoQuBHwIACv/wDwgkEh/+DwoFDDw5ECDwRLDMwg5BLIZMBNgh/FGgIeB+AVB4AeBEYJmBBAJQBDgPBOocf/AoCVIU/Kwc/+5WDg/+Kwl/5/wh4mBh/4/A2CFgMOAoJDC8GBMgUHGAJQCCQKpCBgISBgf+SQMPCQN/4H/4YSBGIIwBCgMBDoTMCn/AEIROCLoKFEAIJvBTwZvCTAarFNIQFCXASyCYoYxBAoYAEA="); -hiragana['RE'] = image(56, 50, "gEf8AGF+AGigP/wAGDg//GYQGBh//C4M/AYICB/AGDv///gGC+P/AwQKB+YGB/wNC+//w4GDBYMDAwn4AwQ3BFQIGF8AGF4AGFgAGEAYMDHwIGBAYIGDn5XBAwhlBAwd/Axh6CAwSPBAwMHAxEDAwqdBAwidDAw5IBOoQGDU4QGDUAIGE//fAwufCgrmCh4iCAwk4nwGE/EcAwbSBjAGFegReCUgIGJOYIUEQIYGCIYOAAwPgAwIAIA="); -hiragana['RO'] = image(50, 50, "AAf4gEB/4AC8EAv4FC/kAj4MDwEHAofwDAgSBDAoACn/+AocfAokP/4FDE4OAApED//AAohJBAAI5BAocAIQIFEHghFCD4QFCBoU/KIQMBNQZ9BOAhOCQYYFE/B8CE4QFBM4JGB4YuDj/7AocD/xIE/+fP4c/84FDh/8QoZyBj5mE4aFDn5yEDAIFDGIIFDIgIXDDwKREv4eEv4eBiAFCDwMH+A8BIQLnEEgLnDSooqBQYQFCDgQ2DAoolCJAgAD"); -hiragana['WA'] = image(51, 50, "AAV/4AFDh/4AocB/4DBj/ggE/AQMD/0Ag/8DgWAgH/AQMP+ASB//AgISBAoIDC4Ef///+ASBh4FB/4SBgYFC+E/4IFC/8H/F///9//g/8f/3/x/+j/nAQPwv/j/H/wf+I4N/KAJlBv+P9/4MoMP/f9/xlBAIIqBwAUBn/vFwIdBg40BNIIOBIIR7B+BbC8B7BKoX4uAyCAwM+GQX5//f8IyCn/z/hHCK4N/4/8h/8/4EB/4lBF4P/z5wB8f+RYJjBPoPAFwO/BQP4IQX/wJkCTAUfVYf4gf4BgS4BbQRiCcgbSCAAILEcALkCAAM/DoYeCC4ZLBfoIeD/ASEDAhoBAoYlBDwcAg/ABggAEA="); -hiragana['WO'] = image(50, 52, "/4AE34FE94FE/YFE/wYYGocB/+AAwd/8AFDn/4AocP/gFDgf/KovADAnwDB43B45EE+IFE/F/KAkfBgmHAonhAonwDAn8h4MEN5X/N4l/N4k/KwkfRwgoBDwcHOohoBOoYFBEgY2BEgYFBEgYFBJIYXBFQYpBFQZ3CAoIWCKoQQCGwQLDHgR8CAoQdCAoQvCOYYFFn5gENgKREbYgAGA"); // XXX there's no WO in hiragana, so we fill it with a copy of the katakana char -hiragana['N'] = image(54, 50, "AAVgAYUP8EHwAGCv/Av4RD/8D/wFCgf8g/8DQf4j/4AwU/8E/+AaDwF//4VBgIfB/4GCD4MPAwcf+YFB/4jBn4FC/4jBAof/4AYC//n/+DBYeD/wZC/f/FgIrCGIQsCKYU/444CKYP/z4xCvxOBv+/8EBQQP4B4KFCCoJeCNIYPBQgQKBj53CAYSbBCYQDBHgJbCTYUDOQZHBM4QTBTYX/GQQxBP4Y8BDQRGBTYY4Eh5MDHgZTDAojdEbAYGEHgIGEv7/DHgIhFfAh1EEIg8GEIg8GTYYhDHhYAF"); + + +hiragana['NA'] = image(55, 49, "gEP+AGEj/gAwk/4EAkAGCv+AgAPD/8AgYdCgP+EgkD/gdB/AGBg4DBv4GCj/w/wGCv////8AwQFB//4AwMBAwXwEQMDAwXgAwMHAwXAAwMPAwWAG4QvBLgQGBL4X/AwRfBKgIGCL4X8n/gLARUBn5YDMwM8NQaLBQYIoCAQSIDAQRZBRYaBDRYQhBFAIJCKIYyCDwKoBToZkBOAIJBPYKLCGwMH/h2CAwMfKoKKCI4PgSIYYB4afDJQMP/gpB+AhBMgIjB/AhC4EfAwIhCEoIGCwJdBaIIZBMgSkCjhMBgakBG4LICUgKDBAwQuBPgRKCjgGE4EQAwgEBAAIbBRAQACQgIDB"); +hiragana['NI'] = image(50, 50, "h+AAocD/gFDgP/CQl/4AFDn/gv//AAOP/E/AoXj/0HAoX4/+BAoX+DAuf+EfAoXn/gYD/P/gYEBG48f+AFDg5QMMYkf8BvE/BvE/wYE/4YEKAIYYgZSCDAMBJgQYCCgYDBFoYDBj4tCDAJlDDAMBGYYYBNYYYBn4xCg/4h6ECPgIHBPgfBDwaVBQgYvBToYYCFYauBaIIwB5/wcAfz/0PAoX8cAn/IgQFC55dBAoXxFILtC/grBGgL5BYIoAGA=="); +hiragana['NU'] = image(58, 50, "AAV/4AGEj/wAwkH/gGEgP/Aod+Dgv/wAcEj/gDgkH/AcEgP+Dgt/Dg3wn4mBHwYGBDAIyCAwP/8AGBAoQODh4GC/4sBgYGD/AcCAAO/IQQcC4IkCDgI7Bj5YBg//w/8EAIjCwIEBv/gMQPgLAMPFYP//h1BgZpC/4LCNwIxB4YoBFoIxB/AjBNIMH/v+n5UB/4qBn/fIoIJBv+PLYUPQwPhOIUD/gvBGYMH/3/BAX/457CBAP/84GBDgIlB/YGBCYJwB/qECDgKREwBCC34YBDgfvLYP+HIM/+YYCIwM/MoIYB/hGBMoQEBz4nBKQfDAwODGQXwKQQMB/P4j4GBAQP+ngtBUgIRBg6aBRwKiBwOAf4TNBAobjCAogAEA"); +hiragana['NE'] = image(57, 50, "gEP+AGEg/4AwkD/gGEgP+Dgv/Awt/wAGEn/Agf/BIUf8EP/40CHAMf/4tBAYP4AQImBCIP8n4GB4EH//+AwXgEwP/v4CB/EBAYIPBg4jBAwX8BYJFBCQRKDFYIGBJQJxBIgUfAQIrBAYMPCAIfBBQR8CAwR8DMAZ8Cv4GCGIQGDGIU/AwR8BAwKqCWoU/FoS1Cj4tCHASEBWogGBUAQKBAwItBHARpB8BlBBQKuCAQIKBO4SqCBQX8AwX4h/9/wGC/kP/n/DYSlCv+P/ArB4K+B4/4SIV+j/jWIX8n0P+JSBDoMOMwJWBAwOCMwM//ZOCMwI4C75nB/5bC45nBv+DAwPhTgXAb4PAoCfCQQifBYoYAHA"); +hiragana['NO'] = image(60, 50, "AAX//4GEv4HFj4GB/wGCg4GB//4AwMBAwX/4AcEDwcPAwYWBgYGDCwQVC54tCCoX8F4PgFYP4CYI+BgE//0P/gaB/ARB4F/4ApBwAVBg4OBj/8EgITB4AiB4InBBwQgBCAIOCPQPjD4MPJ4MH/0/+ALBwARB84kBBwQ0Bv/gBwc/+5bBj5tEHAR8Bn5lBBwInBBxY2CBwcDWIQOEGwIODJwIOFIoRKC4CNCBQP3AgKwCDIIOBKIQKB8/8IQJgBj4OB8E/MAfD/ytBEgX8J4KeBZwWDIgJCBCoP4ZgIzCAYIqBeYRQB8DnCK4gGBGoIDBwAyBF4IKCCQWBAwIVBEoPgF4RFBg/4F4Q2BAAQOBTwIADHoQADbIQAIA"); + +hiragana['HA'] = image(55, 50, "AAd/wEAn4CBgH/BIXAgEB/wJEgf8AQIJCg/4AQIJBgEP+ACBBIMAj/gAQYsBEoIoCGwf/GwkB/8P/4AC4f+j4GDw/4n4GDj/wv4FC/0/8AMD/l/4IGD/H/wYGD+P/g4vELARtCMQRtDMQQKDL4YKCMQQKDMQQKDR4QKCTIYKCFYQ2bOoI2C4BgCGwWASAQ2BGQKJC8DNBBAIAB+DNBPYf4ZoKrDAgPwT4K7BAwRdBB4K3BVYIqCVYY6BAwKrB/0DVY3+v/hAwf8n4SBdIXwnxEBAwXgnBEBAwShBO4IbBSYSVCOYQAHA"); +hiragana['HI'] = image(57, 50, "AAMPwAGE//gAocf//wgFwgEH////kH/AZBAwP+gf+Bof/wP/gEDAwWAAIMBAwc/FgIGDj4sBv4GBE4P8HAIdBE4IqBAwYgBKAIGCKAYKBAwN/EYIGDn4jBAwZfBDAQfBLIPAAwZZBDgItENYN/CAIfBIAIGCLIRfDLIXwAwc/RQJmCHAPv/0PEoI4B+f/AwcH/P/w50D/l/wZ0CgP+j/BK4Q4Bg/gJoQ4BwIGBIwU/4EwAQI4CIYICCAYY/EJQMHHATcCbAQKEHARGBGgQqBCIc/D4IGDaITCDT4PAAQJfCQQRYDeQQGDSIIGEYYIGEE4IGEDgYFCcAQ+CGQZsCABAA="); +hiragana['HU'] = image(58, 50, "gEP/AGEgf//wHE/4ABAwc/AwIPDh4OC8AGBg4GCEwUBAwX8Dod/EgoHC4AsF+BJFjAGDg4iEFgRfF/+AAwk/IwQjDFIgjDvAjDMYJlCgRHB4ABBFIUf/ABBFIXH/0HCoUf+BcBLwQpBCogpBCYIVDv+ACohNBn/wCoRxBCohNCMoIVBOIQVBAIJNCCAIVCEYIQBCoOAb4QtDCAQtC/gjCdIIXCN4QwBC4SVBDQIXBEYUP/gXBI4QEBHwPD/8ODgR/CwZNCCYN/8P/5/4GQOf+DtBKgXv/jtBKgX5/0PAwJxB/0/DAL8CvkDJYP/IYMMgFgg//fot/VYQACgYGFAAoA=="); +hiragana['HE'] = image(67, 45, "AAXwA43/4AHFn/8A4sPCA0B//+CAt///gA4kfCA0H/4QGA4IyFn4IBGQg5BIYsD//nCAt//F/CAkf/wzBCAYFBwH//BaE8ArBwBzFCAgNBLoQQCHIPADYIQD/6dBCAk/OQIQEHIQQEHIQkCCARaBO4YUCSYQQDHIQQFHIQQERQgQCLQQQEHIKBDCAPAn5fDCAP8gbNECAaJDCAbVECAPgvj+Gg72GdoqYFCAgHFKIoQDDA0AKIjODDA0ARYQAEhwHGAAIA=="); +hiragana['HO'] = image(53, 49, "h4GFv4FEg/4kAGDn/D/4ACwP+j4FC/kf+IMD8H/w4GDEAM/AoQEB4IMD4f+g4FCEoPwGIXggH/wEAgP/IIP8KQX4B4PAKQXAgP+AoMDAYMPEAQkC/+DEIIkBEAJVD/8/8IFD/P/h4GD5/wv5IDv+DBgfz/gTEz/gCYf4KIIABGgRRBLIZVDNIJVDNIRVDNIRlBNIZlCKwIDC+EDGYJpCwClCNIQMCCYIwBBgX8GAIBBJwRIBPofwJAIeBLwKCBBwIiCx/4H4IVCv/BFYIFB/f+KYIMCx6RD94YBwLfDwYTBGYV8LgJICgI5CBgUCgaGBLYQACAwLVBgA"); + +hiragana['MA'] = image(50, 49, "AAMH/gFDgP/Bgl/4AFDj/wDBsH/4AD/oFE/9/AwoARJVXhAon4JQn+j4MEw4YLn4YEJTIfCAooYCAoX4DgQwCwBdEBgMDHoYMB//3Bgd/8AUC4A7BJQP//kHBwQGB4JYBFoX8KgMP/gGBz/+h//AIPjGAXA//wAoXwh/4DgX4gP8IgQnCF4QFBgOAEIKIEv6SCAAIA=="); +hiragana['MI'] = image(58, 49, "gP/AAOAA4V/AwPgAwUfAwP4AwUHAwP+DjAABgYcDDwYcDDwQcDDwQcFg/8gAXDDgMAn4XDv/Ah4XDj/wGgkPDgpQBDghPB+AcDMoXjDgQGCNwZsCNwYGEDgM/AwYcBPQQAC/kP/4IEw//MgIYC+f/wZHBCAP8//AGwMDEgKGBRAQVBz/4NYI2C44sBNYMP/PxFQI9BAQMY/+BFQKvCOoIsBEYKSCFQU/SQP8WYQCCGYIqCEwI0BFQQmBMgIDBJwOAfgXAAYItBRAJVCKIIVBAYN/FQIYBAYN/FoIrBTQSzCdgRfCAAg0BAAkfbwQACgY4BAAgGDA"); +hiragana['MU'] = image(55, 49, "gED/gGEg/4AwkP+EAhwGCj/ggF+AwU/4EB/wGCv+Ag4GD/4kBAwM//4AB84GBv4GC54GBAoX/x/+gIGDh/+gYFC/0P/kHAwX8AwMPAwX4j5cCGwJOBAwJIDj5jBv4QCAwIpBNoU/+AiBNoIGCJYJtBAwPhFwPANQXjAwOAgEEv+P/A2C/H+CoI2BTIIhBwY2Bh/xwH+UgUf+CwBUgSgBBYKkCn/gh/gToI1B4Ef4AvCBIM/4ZmCIAN/44oBSgKdCFAJ3CLAY0BUgQoBGgIGBEIUPAwSID+AGBQIZHBJQRECd4Q9DI4QvBJwQ2Cj4sBGATRBJwLcDFgTcDC4QGEEILqEAwIbDIARoCBgQ"); +hiragana['ME'] = image(55, 49, "AAUf+AGEn/gAwl/4AECBQP/wAYC4EB/4YDwED/wYDwEH/gGCCIMP/AFBgIRBGwcDCIN/GwUH/EP/4bCDAP/AAI2C+4GCHwMfAoX/JgM/AwYjBv4GI8YGCFoN/wIGBgYCBFwIiBHYJfBNAPAn/8IwIGBwAaBh/wAwOD//4R4IfBg//+B2BDoJKB+AoBg/+JQPjOwMP/n/z/nQIMf/IOB76BBn/3/gVBMgN/94nBOQX/7/gAwKbBOwSOCHoJMCEIMH/v/CAJxBh/7/hcCF4X4KYLEC5/wj5KBEIOfGwJRCL4PzF4V/JIQvBCYJJCH4JxB4AGB/xCCFQIJDDoIMBBIRNBAQJdCIwKUCeAb5CPgQACSgIFDSgIDC"); +hiragana['MO'] = image(50, 49, "AAN+Aokf8AFDh/4AocD/wSE/+AAod/4AeE+AFDg/8CAf/AAX8j4FD/8HAonBAonwDBY3OKwkBKxc/N5M/GwcHh42D3/DAofn/AFD/P+DAf+v/PBgeP+YFD8f+NAuAG4axBU4ZaCKAUBOAJQDOYIYE+AYEVYKFCDAaICDASICDAsPDAQxBgYYBj4rBAoOAYQPwPQPgE4JYDRQo6BAoglBPoQ0CAogMCAoYvBIwQA="); + +hiragana['YA'] = image(53, 49, "AAVgAYUf4EPAoUB/8B/gGCg/4j/wAwU/4F/4ATDgf/BgUP/EPDQYRBn///wTBAQP//4OBCYMfAwP4CYPPAoP/8AnBAAeAh4FD/gMD/n/+ALD8H/z4EB/v/wf+CIUH/kP+4+CLoN/CYJhBCYmAgfwCYP7CYMeIwOcOoYiBBAOAPYXggZuCIwIrCTgQrCCYIMBFYP8gYZBC4Mf8B3CTQIPBQgYwBg4MDGAKYBGITABBgZnCL4QTCj5EFAAbUBAwgTBAoYTGYAITFcwQTPfQYTCTAITYMAQTDVgUAA="); +hiragana['YU'] = image(51, 49, "AAV/4AFDh/4AocB/4DBj/ggE/AQMD/0Ag/8DgWAgH/AQMP+ASB//AgISBAoIDC4Ef///+ASBh4FB/4SBgYFC+E/4IFC/8H/F///9//g/8f/3/x/+j/nAQPwv/j/H/wf+I4N/KAJlBv+P9/4MoMP/f9/xlBAIIqBwAUBn/vFwIdBg40BNIIOBIIR7B+BbC8B7BKoX4uAyCAwM+GQX5//f8IyCn/z/hHCK4N/4/8h/8/4EB/4lBF4P/z5wB8f+RYJjBPoPAFwO/BQP4IQX/wJkCTAUfVYf4gf4BgS4BbQRiCcgbSCAAILEcALkCAAM/DoYeCC4ZLBfoIeD/ASEDAhoBAoYlBDwcAg/AAoY"); +hiragana['YO'] = image(49, 49, "AAMP/AFDg/8AocD/wFDgP/DAn/wAFDv/AAoc/8AFDj/wGCH/AAIwDAAImCAoQmCv4FBEwU/AoImCj4FBEwUPAoJXCMO4wEM4IWDI4IwCKYQwCL4oFCDAQFDCQIXCNgQFDEoMP/iSC+EHEIJ5CAoSSCwYaBEwXhFoMf8Y4BEAJnBCYN/+Ef/AuBz41CLoPPUQd/4YFDj/AAocD4AuBPIXgDQJ/En6REA="); + +hiragana['RA'] = image(47, 49, "gEP4AFDn//Aod///wAoX///+AgMDAoP/DIMHAoX4AowjC//gh/4gIXCj4mBj4wBn/gEoP8GYI/CvAzBwAFBkAaBIgYTCAAUHGARcCJ4YrBFAJcD4AZDFAI/CFAMPJYQOBK4XwLgZdBJwIFDMIQFCQod/+AIBOIXzO4nnRIQRB55dDDYJdDHgQEBIgM/OgUD/0+Nof8jBtDOYk/OYgyDYgQhCPwLOCFoQ4DMwIcCPYSBCAATkECwKBDCwIVCFoQFCIgSNCHASNBGIQA=="); +hiragana['RI'] = image(39, 49, "ngEDv+AAgX/AYUD/wGB4EH/EH//wh/wn4EBj/h/4EBn/HAgV/z4EB+P+v4EB8YCB4F/8//E4N/54VBFgIWB4AEB346BgP/v/8AgP+//4IQP9//ggBABC4UPAgJRBj4qCgBKBC4IwBF4QrBDgQrB/5vBgYcDEwIcCEwI5BEwP3EIU/94hCv/fEIImBn4+BRYKWCg/8EwSLBTQU/CwScCUYSoDj4zCBoIzCHoIuDKARjBJYJUCQAR7DQAQbDEASABbgU/BATqE"); +hiragana['RU'] = image(51, 49, "gf/AAXAgF/AoX8gEPBgeAgIFD/EAn4MEg4FD8EACQoACn4lBAAUf/4FDDYOAAoQuBHwIACv/wDwgkEh/+DwoFDDw5ECDwRLDMwg5BLIZMBNgh/FGgIeB+AVB4AeBEYJmBBAJQBDgPBOocf/AoCVIU/Kwc/+5WDg/+Kwl/5/wh4mBh/4/A2CFgMOAoJDC8GBMgUHGAJQCCQKpCBgISBgf+SQMPCQN/4H/4YSBGIIwBCgMBDoTMCn/AEIROCLoKFEAIJvBTwZvCTAarFNIQFCXASyCYoYxBAoQ"); +hiragana['RE'] = image(55, 49, "gEf8AGEn4GFv/AAwn/wAFDgP/BgkD/wGEg/8DoIkCh/4gf/+A2C+EPAwV///gAQIGB///4ICB+AuB/+PAQPgg4DBn4GE/wSB//AEoIABwABBj4FB/hODA4PwJwYgB4BOCHwROCNoQDBJwJtCLoM/PwJdBPYN/AQMPEoQvDDQMBBIV/DwMDF4QhCg4QBEIIlBh4QBLIIlBWoRRBWol/F4eAIYIlBMwR7BEoQQBUIYvCNgIlBF4SBBEoLsBHgI2DSwP9GwaWB+ZmEj/HGwIvCj+PFgKWBjk+RgSWB/E4Lgn4sBcCIII+CGwTjDWoZFBSYYRBYYgDBYYa5CLgIGBAAI"); +hiragana['RO'] = image(50, 49, "AAf4gEB/4AC8EAv4FC/kAj4MDwEHAofwDAgSBDAoACn/+AocfAokP/4FDE4OAApED//AAohJBAAI5BAocAIQIFEHghFCD4QFCBoU/KIQMBNQZ9BOAhOCQYYFE/B8CE4QFBM4JGB4YuDj/7AocD/xIE/+fP4c/84FDh/8QoZyBj5mE4aFDn5yEDAIFDGIIFDIgIXDDwKREv4eEv4eBiAFCDwMH+A8BIQLnEEgLnDSooqBQYQFCDgQ2DAoolCJAQA="); + +hiragana['WA'] = image(54, 49, "gEf+AGEv/AAocB/4MEg/8DUv///Aj//wEDAwIcBAwMP//8BgIGBn//+IFBAwICB54GCDQQAC/0HAgXAn45BD4IDBn45Bv4MBAYPgGYJKCFAIbB8EAgf+DQRbEv/4LYYaBOQU/4EPCwIhCCYJrCgf8CYkP+BlBCYQaBv6GDOwQaECYIaEKwIaD4JWDgP+CYIaCg/4NQYTB8Z+BFwef+4aCMgN/74aCn/z/zXCIAOH/IaCh5CB44aBJoU+a4QyBwFwDQLGBCAOBX4adBGIJMBRIQaBUYI4CDQJnDFYJ7EDQKzCDQYECgA="); +hiragana['WO'] = image(52, 49, "AAMf+AFDgP+Bgk/8AFDgYMM/gkD/4AC+EBAof/BkA5FhEAg45Cg/AgF/AQMBBIMP/4DB//gE4Xwn5dBn4GB74IBgY0Fv4FD8AfBAoYfB/gbBIAIiBg///A7B/+A/4rBCQIxBBAISB/ghBCQeBEoIMBCQI0BBgQSCDIYSB54MBgIlB+AMCj0H/0PBgIABHQQMBOgP4BgZBBBwTDCMYIMDKIIMRWQQmDAwUMYYqyBAoaxBN4IMEV4QMCcggMBWwbZCAweA"); // XXX there's no WO in hiragana, so we fill it with a copy of the katakana char +hiragana['N'] = image(54, 49, "AAMHAwsf8AGE/+AAocD/wTF+AGEv/ACZUP/ATKgP/CYv8Awk/IQgTBIQkHCYxCFCYxWTIQxWGFAhCBAwkPAwJCE/5KDCYQiBhhCBAwJlBn+Aj/+/49BDoP/8IDBgf8IQIDBKgUf/EPLAJUBv/gn/AFgKZCAIMHCIP4DQSXBAIIaC/+BCIIaBYwKZCLwIuBCYLRCFwIKBEYX/CYUfEYP4TIRACCYQ+BwZUBDwIYBOgITCRAQVCEIP//0BYISjB+CtDUYRNBAwQ5Bg7gDBQIA="); /// ///////////////////////////////////////// let kana = katakana.KA; let scroll = 0; - +const keys = Object.keys(katakana).sort(); let hiramode = false; let curkana = 'KA'; + function next () { let found = false; - for (const k of Object.keys(katakana).sort()) { + for (const k of keys) { if (found) { kana = hiramode ? hiragana[k] : katakana[k]; curkana = k; @@ -129,7 +143,6 @@ function next () { function randKana() { try { - const keys = Object.keys(katakana); const total = keys.length; let index = 0 | (Math.random() * total); curkana = keys[index]; @@ -141,7 +154,7 @@ function randKana() { function prev () { let oldk = ''; let count = 0; - for (const k of Object.keys(katakana).sort()) { + for (const k of keys) { if (curkana === k) { if (count > 0) { curkana = oldk; @@ -155,11 +168,6 @@ function prev () { updateWatch(ohhmm); } -const kanacolors = { - A: [] -}; - - function updateWatch (hhmm) { g.setFontAlign(-1, -1, 0); g.setBgColor(0, 0, 0); diff --git a/apps/kanawatch/metadata.json b/apps/kanawatch/metadata.json index d7a6f8c23..d1fb70b53 100644 --- a/apps/kanawatch/metadata.json +++ b/apps/kanawatch/metadata.json @@ -2,7 +2,7 @@ "id": "kanawatch", "name": "Kanawatch", "shortName": "Kanawatch", - "version": "0.07", + "version": "0.08", "type": "clock", "description": "Learn Hiragana and Katakana", "icon": "app.png", From bef0f2c05fce96bb8195a9ffade2a198ee9fea63 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 27 May 2023 23:54:24 +0200 Subject: [PATCH 1258/1725] gpstrek - Tweak drawing code --- apps/gpstrek/app.js | 259 +++++++++++++++++++++++++------------------- 1 file changed, 146 insertions(+), 113 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index be49148c3..8d4d0d54a 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -4,17 +4,19 @@ const STORAGE = require("Storage"); const BAT_FULL = require("Storage").readJSON("setting.json").batFullVoltage || 0.3144; const SETTINGS = { mapCompass: true, - mapScale:0.2, - mapRefresh:500, - mapChunkSize: 5, - overviewScroll: 30, - overviewScale: 0.01, - refresh:200, - refreshLocked:3000, + mapScale:0.2, //initial value + mapRefresh:1000, //minimum time in ms between refreshs of the map + mapChunkSize: 5, //render this many waypoints at a time + overviewScroll: 30, //scroll this amount on swipe in pixels + overviewScale: 0.02, //initial value + refresh:500, //general refresh interval in ms + refreshLocked:3000, //general refresh interval when Bangle is locked cacheMinFreeMem:2000, cacheMaxEntries:0, - minCourseChange: 5, - waypointChangeDist: 50 + minCourseChange: 5, //course change needed in degrees before redrawing the map + minPosChange: 5, //position change needed in pixels before redrawing the map + waypointChangeDist: 50, //distance in m to next waypoint before advancing automatically + queueWaitingTime: 5 // waiting time during processing of task queue items when running with timeouts }; let init = function(){ @@ -228,7 +230,7 @@ XX XX `); let isGpsCourse = function(){ - return WIDGETS.gpstrek.getState().currentPos && !isNaN(WIDGETS.gpstrek.getState().currentPos.course); + return WIDGETS.gpstrek.getState().currentPos && isFinite(WIDGETS.gpstrek.getState().currentPos.course); }; let isMapOverview = false; @@ -256,7 +258,7 @@ let runQueue = function(inTimeouts){ current.f(current.d); activeTimeouts = activeTimeouts.filter((c)=>c!=id); runQueue(inTimeouts); - },0); + },SETTINGS.queueWaitingTime); activeTimeouts.push(id); } else { current.f(current.d); @@ -281,7 +283,6 @@ let clearTaskQueue = function(){ }; let getMapSlice = function(){ - let lastMode = isMapOverview; let lastDrawn = 0; let lastCourse = 0; let lastStart; @@ -292,9 +293,10 @@ let getMapSlice = function(){ let course = 0; if (!isMapOverview){ - course = s.currentPos.course; - if (isNaN(course)) course = getAveragedCompass(); - if (isNaN(course)) course = 0; + if (isGpsCourse()) + course = s.currentPos.course; + else + course = getAveragedCompass(); } let route = s.route; @@ -304,9 +306,10 @@ let getMapSlice = function(){ getEntry(route.filename, route.indexToOffset[currentRouteIndex], waypoint); let startingPoint = Bangle.project(waypoint); let current = startingPoint; - + let currentPosFromGPS = false; if (s.currentPos.lat) { current = Bangle.project(s.currentPos); + currentPosFromGPS = true; } else { // in case of no actual position assume previous waypoint as current let prevPoint = getPrev(route, currentRouteIndex); @@ -350,8 +353,8 @@ let getMapSlice = function(){ scale = c; } graphics.setFontAlign(-1,1).setFont("Vector",14); - graphics.drawString(scale+"m",x+width*0.3,y+height-g.getHeight()*0.1); - if (!isNaN(scale)){ + graphics.drawString(scale+"m",x+width*0.3,y+height-g.getHeight()*0.1, true); + if (isFinite(scale)){ graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1); graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3,y+height-g.getHeight()*0.05); graphics.drawLine(x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.05); @@ -393,9 +396,8 @@ let getMapSlice = function(){ graphics.setClipRect(x,y,x+width,y+height); graphics.setColor(graphics.theme.fg); - if (s.currentPos.lat) { - let proj = Bangle.project(s.currentPos); - let pos = graphics.transformVertices([ startingPoint.x - proj.x, (startingPoint.y - proj.y)*-1 ], mapTrans); + if (currentPosFromGPS) { + let pos = graphics.transformVertices([ startingPoint.x - current.x, (startingPoint.y - current.y)*-1 ], mapTrans); if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} @@ -415,39 +417,40 @@ let getMapSlice = function(){ } }; - let refreshMap = Date.now() - lastDrawn > SETTINGS.mapRefresh && - (Math.abs(lastCourse - course) > SETTINGS.minCourseChange - || (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y) - || (!lastCurrent || (Math.abs(lastCurrent.x - current.x)) > 10 || (Math.abs(lastCurrent.y - current.y)) > 10)) - || forceMapRedraw; + let courseChanged = Math.abs(lastCourse - course) > SETTINGS.minCourseChange; + let oldEnough = Date.now() - lastDrawn > SETTINGS.mapRefresh; + let startChanged = (!lastStart || lastStart.x != startingPoint.x || lastStart.y != startingPoint.y); + let neededChange = (SETTINGS.minPosChange/(isMapOverview?mapOverviewScale:mapLiveScale)); + let currentChanged = (!lastCurrent || (Math.abs(lastCurrent.x - current.x)) > neededChange|| (Math.abs(lastCurrent.y - current.y)) > neededChange); + let liveChanged = !isMapOverview && (startChanged || currentChanged || courseChanged); + let refreshMap = forceMapRedraw || (oldEnough && (liveChanged)); + + let renderInTimeouts = isMapOverview || !Bangle.isLocked(); if (refreshMap) { clearTaskQueue(); - prependTaskQueue(()=>{ - //clear map view - graphics.clearRect(x,y,x+width,y+height-g.getHeight()*0.2-1); - //clear space between buttons - graphics.clearRect(x+width/4+1,y+height-g.getHeight()*0.2,x+width*0.75-1,y+height-1); + //clear map view + graphics.clearRect(x,y,x+width,y+height-g.getHeight()*0.2-1); + //clear space between buttons + graphics.clearRect(x+width/4+1,y+height-g.getHeight()*0.2,x+width*0.75-1,y+height-1); + if (!isMapOverview){ drawCurrentPos(); - drawInterface(); - if (SETTINGS.mapCompass){ - drawMapCompass(); - } - }); + } + if (!isMapOverview && renderInTimeouts){ + drawMapCompass(); + } + if (renderInTimeouts) drawInterface(); - lastMode = isMapOverview; forceMapRedraw = false; lastDrawn = Date.now(); - lastCourse = course; - lastStart = startingPoint; - lastCurrent = current; - let drawPath = function(iter, reverse){ + let drawPath = function(reverse, startingIndex, maxWaypoints){ let data = { - i:reverse?0:-1, - poly:[0,0], + i:startingIndex, + poly:[], + maxWaypoints: maxWaypoints, breakLoop: false }; @@ -456,17 +459,22 @@ let getMapSlice = function(){ graphics.setColor(graphics.theme.fg); graphics.setClipRect(x,y,x+width,y+height); let finish; + let last; let toDraw; let named = []; for (let j = 0; j < SETTINGS.mapChunkSize; j++){ - let p = iter(route, currentRouteIndex + data.i); + let p = get(route, currentRouteIndex + data.i); if (!p || !p.lat) { data.breakLoop = true; break; } + if (data.maxWaypoints && Math.abs(data.i) > data.maxWaypoints) { + data.breakLoop = true; + last = true; + break; + } toDraw = Bangle.project(p); if (p.name) named.push({i:data.poly.length,n:p.name}); - if (currentRouteIndex + data.i + 1 == route.count - 1) finish = true; data.poly.push(startingPoint.x-toDraw.x); data.poly.push((startingPoint.y-toDraw.y)*-1); data.i = data.i + (reverse?-1:1); @@ -482,17 +490,19 @@ let getMapSlice = function(){ graphics.setFont6x15().setFontAlign(-1,0); for (let c of named){ - if (data.i != 0 || s.currentPos.lat){ + if (data.i != 0 || currentPosFromGPS){ graphics.drawImage(point, data.poly[c.i]-point.width/2, data.poly[c.i+1]-point.height/2); } graphics.drawString(c.n, data.poly[c.i] + 10, data.poly[c.i+1]); } - if (!reverse){ - if (finish) - graphics.drawImage(finishIcon, data.poly[data.poly.length - 2] -5, data.poly[data.poly.length - 1] - 4); - else if (data.breakLoop) - graphics.drawImage(cross, data.poly[data.poly.length - 2] - cross.width/2, data.poly[data.poly.length - 1] - cross.height/2); + finish = (route.mirror && currentRouteIndex + data.i == -1) || (!route.mirror && currentRouteIndex + data.i == route.indexToOffset.length) + + if (finish) + graphics.drawImage(finishIcon, data.poly[data.poly.length - 2] -5, data.poly[data.poly.length - 1] - 4); + + if (last) { + graphics.drawImage(cross, data.poly[data.poly.length - 2] - cross.width/2, data.poly[data.poly.length - 1] - cross.height/2); } //Add last drawn point to get closed path @@ -508,20 +518,20 @@ let getMapSlice = function(){ addToTaskQueue(drawChunk, data); }; + drawPath(true, 0); + drawPath(false, 0); - drawPath(getNext,false); - drawPath(getPrev,true); - - addToTaskQueue(drawCurrentPos); addToTaskQueue(drawInterface); - } else { - drawInterface(); - if (SETTINGS.mapCompass){ - drawMapCompass(); - } + addToTaskQueue(()=>{ + lastCourse = course; + lastStart = startingPoint; + lastCurrent = current; + }) + processTaskQueue(renderInTimeouts); + } + if (SETTINGS.mapCompass && !isMapOverview){ + drawMapCompass(); } - - processTaskQueue(true); } }; }; @@ -581,7 +591,7 @@ let getTargetSlice = function(targetDataSource){ graphics.drawString(targetDataSource.getProgress(), x + 2, y + height); } graphics.setFontAlign(1,1); - if (!isNaN(distNum) && distNum != Infinity) + if (isFinite(distNum) && distNum != Infinity) graphics.drawString(formattedDist.match(/[a-zA-Z]+/), x + width, y + height); } } @@ -864,11 +874,11 @@ let loadRouteData = function(filename, progressMonitor){ let c = {}; let scanOffset = 0; routeInfo.length = 0; - routeInfo.count = 0; routeInfo.mirror = false; let lastSeenWaypoint; let lastSeenAlt; let waypoint = {}; + let count = 0; routeInfo.up = 0; routeInfo.down = 0; @@ -891,30 +901,26 @@ let loadRouteData = function(filename, progressMonitor){ writeUint32(indexFileName, trfHash, 0, indexFileSize); while ((scanOffset = getEntry(filename, scanOffset, waypoint, true)) > 0) { - if (routeInfo.count % 5 == 0) progressMonitor(scanOffset, "Loading", size); + if (count % 5 == 0) progressMonitor(scanOffset, "Loading", size); if (lastSeenWaypoint){ routeInfo.length += distance(lastSeenWaypoint, waypoint); let diff = waypoint.alt - lastSeenAlt; - //print("Distance", routeInfo.length, "alt", lastSeenAlt, waypoint.alt, diff); if (waypoint.alt && lastSeenAlt && diff > 3){ if (lastSeenAlt < waypoint.alt){ - //print("Up", diff); routeInfo.up += diff; } else { - //print("Down", diff); routeInfo.down += diff; } } } - if (createIndexFile) writeUint24(indexFileName, waypoint.fileOffset, 4 + routeInfo.count * 3, indexFileSize); - routeInfo.count++; + if (createIndexFile) writeUint24(indexFileName, waypoint.fileOffset, 4 + count * 3, indexFileSize); + count++; lastSeenWaypoint = waypoint; - if (!isNaN(waypoint.alt)) lastSeenAlt = waypoint.alt; + if (isFinite(waypoint.alt)) lastSeenAlt = waypoint.alt; waypoint = {}; } - - routeInfo.indexToOffset = new Uint24Array(STORAGE.readArrayBuffer(indexFileName),4); + routeInfo.indexToOffset = new Uint24Array(STORAGE.readArrayBuffer(indexFileName),4,count); set(routeInfo, 0); return routeInfo; @@ -922,26 +928,40 @@ let loadRouteData = function(filename, progressMonitor){ let hasPrev = function(route, index){ if (isNaN(index)) index = route.index; - if (route.mirror) return route.index < (route.count - 1); + if (route.mirror) return index < (route.indexToOffset.length - 1); return index > 0; }; -let hasNext = function(route, index){ +let hasNext = function(route, index, count){ + if (!count) count = 1; if (isNaN(index)) index = route.index; - if (route.mirror) return route.index > 0; - return index < (route.count - 1); + if (route.mirror) return index - count > 0; + return index + count < (route.indexToOffset.length - 1); }; -let getNext = function(route, index){ +let getNext = function(route, index, count){ + if (!count) count = 1; if (isNaN(index)) index = route.index; - if (!hasNext(route, index)) return; - if (route.mirror) --index; - if (!route.mirror) ++index; + if (!hasNext(route, index, count)) return; + if (route.mirror) index -= count; + if (!route.mirror) index += count; let result = {}; getEntry(route.filename, route.indexToOffset[index], result); return result; }; +let get = function(route, index){ + if (isNaN(index)) index = route.index; + if (index >= route.indexToOffset.length || index < 0) return; + let result = {}; + getEntry(route.filename, route.indexToOffset[index], result); + return result; +}; + +let getIndex = function(route){ + return route.mirror?route.length-route.index:route.index; +}; + let getPrev = function(route, index){ if (isNaN(index)) index = route.index; if (!hasPrev(route, index)) return; @@ -971,15 +991,13 @@ let prev = function(route){ if (!route.mirror) set(route, --route.index); }; -let lastMirror; - let getLast = function(route){ let wp = {}; - if (lastMirror != route.mirror){ - if (route.mirror) getEntry(route.filename, route.indexToOffset[0], wp); - if (!route.mirror) getEntry(route.filename, route.indexToOffset[route.count - 1], wp); - lastMirror = route.mirror; - } + if (route.mirror) + getEntry(route.filename, route.indexToOffset[0], wp); + else + getEntry(route.filename, route.indexToOffset[route.indexToOffset.length - 1], wp); + lastMirror = route.mirror; return wp; }; @@ -989,7 +1007,6 @@ let removeMenu = function(){ }; let showProgress = function(progress, title, max){ - //print("Progress",progress,max) let message = title? title: "Loading"; if (max){ message += " " + E.clip((progress/max*100),0,100).toFixed(0) +"%"; @@ -1006,7 +1023,6 @@ let handleLoading = function(c){ let s = WIDGETS.gpstrek.getState(); s.route = loadRouteData(c, showProgress); s.waypoint = null; - s.route.mirror = false; removeMenu(); }; @@ -1039,7 +1055,13 @@ let showRouteMenu = function(){ menu.Mirror = { value: s && s.route && !!s.route.mirror || false, onchange: v=>{ - s.route.mirror = v; + if (s.route.mirror != v){ + s.route.mirror = v; + if (v) s.route.index = 0; + else s.route.index = s.route.indexToOffset.lenght - 1; + setClosestWaypoint(s.route, null, showProgress); + setTimeout(removeMenu,0); + } } }; menu['Select closest waypoint'] = function () { @@ -1058,7 +1080,7 @@ let showRouteMenu = function(){ }; menu['Select waypoint'] = { value : s.route.index, - min:1,max:s.route.count,step:1, + min:1,max:s.route.indexToOffset.length,step:1, onchange : v => { set(s.route, v-1); } }; menu['Select waypoint as current position'] = function (){ @@ -1113,7 +1135,7 @@ let showCalibrationMenu = function(){ } }, "Barometer (Manual)" : { - value : Math.round(WIDGETS.gpstrek.getState().currentPos && (WIDGETS.gpstrek.getState().currentPos.alt != undefined && !isNaN(WIDGETS.gpstrek.getState().currentPos.alt)) ? WIDGETS.gpstrek.getState().currentPos.alt: WIDGETS.gpstrek.getState().altitude), + value : Math.round(WIDGETS.gpstrek.getState().currentPos && (WIDGETS.gpstrek.getState().currentPos.alt != undefined && isFinite(WIDGETS.gpstrek.getState().currentPos.alt)) ? WIDGETS.gpstrek.getState().currentPos.alt: WIDGETS.gpstrek.getState().altitude), min:-2000,max: 10000,step:1, onchange : v => { WIDGETS.gpstrek.getState().calibAltDiff = WIDGETS.gpstrek.getState().altitude - v; } }, @@ -1173,7 +1195,8 @@ let switchMenu = function(){ }; let stopDrawing = function(){ - if (drawTimeout) clearTimeout(drawTimeout); + if (global.drawTimeout) clearTimeout(global.drawTimeout); + global.drawTimeout = undefined; scheduleDraw = false; }; @@ -1184,7 +1207,7 @@ let startDrawing = function(){ }; let drawInTimeout = function(){ - if (global.drawTimeout) clearTimeout(drawTimeout); + if (global.drawTimeout) return; drawTimeout = setTimeout(()=>{ drawTimeout = undefined; draw(); @@ -1209,26 +1232,35 @@ let nextScreen = function(){ let setClosestWaypoint = function(route, startindex, progress){ let s = WIDGETS.gpstrek.getState(); - if (startindex >= s.route.count) startindex = s.route.count - 1; + + let searchAfterMin = !startindex; + if (!startindex) startindex = 0; + if (startindex >= s.route.indexToOffset.length) startindex = s.route.indexToOffset.length - 1; + if (startindex < 0) startindex = 0; if (!s.currentPos.lat){ set(route, startindex); return; } - let minDist = 100000000000000; - let minIndex = 0; - for (let i = startindex?startindex:0; i < route.count - 1; i++){ - if (progress && (i % 5 == 0)) progress(i-(startindex?startindex:0), "Searching", route.count); - let wp = {}; - getEntry(route.filename, route.indexToOffset[i], wp); - let curDist = distance(s.currentPos, wp); + let minDist = Number.MAX_VALUE; + let mincount = 0; + + let currentPos = s.currentPos; + let count = 0; + let wp; + do { + count++; + if (progress && (count % 5 == 0)) progress(count+startindex, "Searching", route.indexToOffset.length); + wp = getNext(route, startindex, count); + if (!wp) break; + let curDist = distance(currentPos, wp); if (curDist < minDist){ minDist = curDist; - minIndex = i; + mincount = count; } else { - if (startindex) break; + if (searchAfterMin) break; } - } - set(route, minIndex); + } while (wp); + set(route, startindex + (route.mirror?-mincount+1:mincount)); }; const finishIcon = atob("CggB//meZmeZ+Z5n/w=="); @@ -1236,7 +1268,7 @@ const finishIcon = atob("CggB//meZmeZ+Z5n/w=="); const waypointData = { icon: atob("EBCBAAAAAAAAAAAAcIB+zg/uAe4AwACAAAAAAAAAAAAAAAAA"), getProgress: function() { - return (WIDGETS.gpstrek.getState().route.index + 1) + "/" + WIDGETS.gpstrek.getState().route.count; + return (WIDGETS.gpstrek.getState().route.index + 1) + "/" + WIDGETS.gpstrek.getState().route.indexToOffset.length; }, getTarget: function (){ return WIDGETS.gpstrek.getState().route.currentWaypoint; @@ -1282,7 +1314,7 @@ let statusSlice = getDoubleLineSlice("Speed","Alt",()=>{ },()=>{ let alt = Infinity; let s = WIDGETS.gpstrek.getState(); - if (!isNaN(s.altitude)){ + if (isFinite(s.altitude)){ alt = isNaN(s.calibAltDiff) ? s.altitude : (s.altitude - s.calibAltDiff); } if (s.currentPos && s.currentPos.alt) alt = s.currentPos.alt; @@ -1302,7 +1334,7 @@ let status2Slice = getDoubleLineSlice("Compass","GPS",()=>{ let healthSlice = getDoubleLineSlice("Heart","Steps",()=>{ return WIDGETS.gpstrek.getState().bpm || "---"; },()=>{ - return !isNaN(WIDGETS.gpstrek.getState().steps)? WIDGETS.gpstrek.getState().steps: "---"; + return isFinite(WIDGETS.gpstrek.getState().steps)? WIDGETS.gpstrek.getState().steps: "---"; }); let system2Slice = getDoubleLineSlice("Bat","Storage",()=>{ @@ -1336,10 +1368,11 @@ let updateRouting = function() { if (currentDistanceToTarget < SETTINGS.waypointChangeDist && nextAvailable){ next(s.route); minimumDistance = Number.MAX_VALUE; - } else if (lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ + } else if (!isMapOverview && lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ stopDrawing(); Bangle.buzz(1000); - setClosestWaypoint(s.route, s.route.index, showProgress); + setClosestWaypoint(s.route, getIndex(s.route), showProgress); + next(s.route); minimumDistance = Number.MAX_VALUE; lastSearch = Date.now(); switchNav(); @@ -1350,7 +1383,7 @@ let updateRouting = function() { let updateSlices = function(){ let s = WIDGETS.gpstrek.getState(); slices = [ compassSlice ]; - if (s.currentPos && s.currentPos.lat && s.route && s.route.currentWaypoint && s.route.index < s.route.count - 1) { + if (s.currentPos && s.currentPos.lat && s.route && s.route.currentWaypoint && s.route.index < s.route.indexToOffset.length - 1) { slices.push(waypointSlice); } if (s.currentPos && s.currentPos.lat && (s.route || s.waypoint)) { From 77fd3a0c7d8c16b71f53999d4f94054ed153df80 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 10:12:46 +0100 Subject: [PATCH 1259/1725] Revert "settings: permit temporarily allowing a BLE connection" This reverts commit 74d91c60a1a5e3e13e428d69d9385ea782703650. --- apps/setting/settings.js | 35 +++++++++++------------------------ 1 file changed, 11 insertions(+), 24 deletions(-) diff --git a/apps/setting/settings.js b/apps/setting/settings.js index a53cf4777..ffea3ddbb 100644 --- a/apps/setting/settings.js +++ b/apps/setting/settings.js @@ -363,6 +363,17 @@ function showWhitelistMenu() { }; } + if (settings.whitelist) settings.whitelist.forEach(function(d){ + menu[d.substr(0,17)] = function() { + E.showPrompt(/*LANG*/'Remove\n'+d).then((v) => { + if (v) { + settings.whitelist.splice(settings.whitelist.indexOf(d),1); + updateSettings(); + } + setTimeout(showWhitelistMenu, 50); + }); + } + }); menu[/*LANG*/'Add Device']=function() { E.showAlert(/*LANG*/"Connect device\nto add to\nwhitelist",/*LANG*/"Whitelist").then(function() { NRF.removeAllListeners('connect'); @@ -378,30 +389,6 @@ function showWhitelistMenu() { showWhitelistMenu(); }); }; - - menu[/*LANG*/'Temporarily Add Device']=function() { - E.showAlert(/*LANG*/"Whitelist disabled\nConnect device",/*LANG*/"Whitelist").then(function() { - NRF.removeAllListeners('connect'); - showWhitelistMenu(); - }); - NRF.removeAllListeners('connect'); // this is sufficient to allow any device to connect - NRF.on('connect', function(addr) { - showWhitelistMenu(); - }); - }; - - if (settings.whitelist) settings.whitelist.forEach(function(d){ - menu[d.substr(0,17)] = function() { - E.showPrompt(/*LANG*/'Remove\n'+d).then((v) => { - if (v) { - settings.whitelist.splice(settings.whitelist.indexOf(d),1); - updateSettings(); - } - setTimeout(showWhitelistMenu, 50); - }); - } - }); - E.showMenu(menu); } From 37c0571b972c3621af796b1c576c8dba839cc7bd Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 10:13:41 +0100 Subject: [PATCH 1260/1725] settings: Make Connectable temporarily bypasses the whitelist --- apps/boot/ChangeLog | 1 + apps/boot/bootupdate.js | 2 +- apps/boot/metadata.json | 2 +- apps/setting/ChangeLog | 3 ++- apps/setting/metadata.json | 2 +- apps/setting/settings.js | 2 ++ 6 files changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/boot/ChangeLog b/apps/boot/ChangeLog index 82e55fa91..d7405e763 100644 --- a/apps/boot/ChangeLog +++ b/apps/boot/ChangeLog @@ -66,3 +66,4 @@ If settings.bootDebug is set, output timing for each section of .boot0 0.56: Settings.log = 0,1,2,3 for off,display, log, both 0.57: Handle the whitelist being disabled +0.58: "Make Connectable" temporarily bypasses the whitelist diff --git a/apps/boot/bootupdate.js b/apps/boot/bootupdate.js index 84745b792..a12d41e1b 100644 --- a/apps/boot/bootupdate.js +++ b/apps/boot/bootupdate.js @@ -79,7 +79,7 @@ if (global.save) boot += `global.save = function() { throw new Error("You can't if (s.options) boot+=`Bangle.setOptions(${E.toJS(s.options)});\n`; if (s.brightness && s.brightness!=1) boot+=`Bangle.setLCDBrightness(${s.brightness});\n`; if (s.passkey!==undefined && s.passkey.length==6) boot+=`NRF.setSecurity({passkey:${E.toJS(s.passkey.toString())}, mitm:1, display:1});\n`; -if (s.whitelist && !s.whitelist_disabled) boot+=`NRF.on('connect', function(addr) { if (!(require('Storage').readJSON('setting.json',1)||{}).whitelist.includes(addr)) NRF.disconnect(); });\n`; +if (s.whitelist && !s.whitelist_disabled) boot+=`NRF.on('connect', function(addr) { if (!NRF.ignoreWhitelist && !(require('Storage').readJSON('setting.json',1)||{}).whitelist.includes(addr)) NRF.disconnect(); });\n`; if (s.rotate) boot+=`g.setRotation(${s.rotate&3},${s.rotate>>2});\n` // screen rotation // ================================================== FIXING OLDER FIRMWARES if (FWVERSION<215.068) // 2v15.68 and before had compass heading inverted. diff --git a/apps/boot/metadata.json b/apps/boot/metadata.json index c652f6136..0a4e7e9d1 100644 --- a/apps/boot/metadata.json +++ b/apps/boot/metadata.json @@ -1,7 +1,7 @@ { "id": "boot", "name": "Bootloader", - "version": "0.57", + "version": "0.58", "description": "This is needed by Bangle.js to automatically load the clock, menu, widgets and settings", "icon": "bootloader.png", "type": "bootloader", diff --git a/apps/setting/ChangeLog b/apps/setting/ChangeLog index 42bac0ea7..d090add58 100644 --- a/apps/setting/ChangeLog +++ b/apps/setting/ChangeLog @@ -66,4 +66,5 @@ of 'Select Clock' 0.58: On/Off settings items now use checkboxes 0.59: Preserve BLE whitelist even when disabled 0.60: Moved LCD calibration to top of menu, and use 12 taps (not 8) - LCD calibration will now error if the calibration is obviously wrong \ No newline at end of file + LCD calibration will now error if the calibration is obviously wrong +0.61: Permit temporary bypass of the BLE whitelist diff --git a/apps/setting/metadata.json b/apps/setting/metadata.json index 20213e81f..b2b19dd6b 100644 --- a/apps/setting/metadata.json +++ b/apps/setting/metadata.json @@ -1,7 +1,7 @@ { "id": "setting", "name": "Settings", - "version": "0.60", + "version": "0.61", "description": "A menu for setting up Bangle.js", "icon": "settings.png", "tags": "tool,system", diff --git a/apps/setting/settings.js b/apps/setting/settings.js index ffea3ddbb..d22f28412 100644 --- a/apps/setting/settings.js +++ b/apps/setting/settings.js @@ -658,6 +658,7 @@ function showUtilMenu() { function makeConnectable() { try { NRF.wake(); } catch (e) { } Bluetooth.setConsole(1); + NRF.ignoreWhitelist = 1; var name = "Bangle.js " + NRF.getAddress().substr(-5).replace(":", ""); E.showPrompt(name + /*LANG*/"\nStay Connectable?", { title: /*LANG*/"Connectable" }).then(r => { if (settings.ble != r) { @@ -665,6 +666,7 @@ function makeConnectable() { updateSettings(); } if (!r) try { NRF.sleep(); } catch (e) { } + delete NRF.ignoreWhitelist; showMainMenu(); }); } From 78995305cbca71e1dab05260261b5b92189e8faa Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 11:16:59 +0100 Subject: [PATCH 1261/1725] kbmulti: add ability to lowercase after first capital --- apps/kbmulti/ChangeLog | 1 + apps/kbmulti/lib.js | 11 +++++++++++ apps/kbmulti/metadata.json | 2 +- apps/kbmulti/settings.js | 4 ++++ 4 files changed, 17 insertions(+), 1 deletion(-) diff --git a/apps/kbmulti/ChangeLog b/apps/kbmulti/ChangeLog index 4ef8f7bda..defae902b 100644 --- a/apps/kbmulti/ChangeLog +++ b/apps/kbmulti/ChangeLog @@ -3,3 +3,4 @@ 0.03: Use default Bangle formatter for booleans 0.04: Allow moving the cursor 0.05: Switch swipe directions for Caps Lock and moving cursor. +0.06: Add ability to auto-lowercase after a capital letter insertion. diff --git a/apps/kbmulti/lib.js b/apps/kbmulti/lib.js index 9b642a132..01be03feb 100644 --- a/apps/kbmulti/lib.js +++ b/apps/kbmulti/lib.js @@ -96,12 +96,14 @@ exports.input = function(options) { } function onKeyPad(key) { + var retire = 0; deactivateTimeout(charTimeout); // work out which char was pressed if (key==charCurrent) { charIndex = (charIndex+1) % letters[charCurrent].length; text = text.slice(0, -1); } else { + retire = charCurrent !== undefined; newCharacter(key); } var newLetter = letters[charCurrent][charIndex]; @@ -109,15 +111,24 @@ exports.input = function(options) { let post = text.slice(textIndex, text.length); text = pre + (caps ? newLetter.toUpperCase() : newLetter.toLowerCase()) + post; + + if(retire) + retireCurrent(); // set a timeout charTimeout = setTimeout(function() { charTimeout = undefined; newCharacter(); + retireCurrent(); }, settings.charTimeout); displayText(charTimeout); } + function retireCurrent(why) { + if (caps && settings.autoLowercase) + setCaps(); + } + var moveMode = false; function onSwipe(dirLeftRight, dirUpDown) { diff --git a/apps/kbmulti/metadata.json b/apps/kbmulti/metadata.json index 510454f79..0b44b0306 100644 --- a/apps/kbmulti/metadata.json +++ b/apps/kbmulti/metadata.json @@ -1,6 +1,6 @@ { "id": "kbmulti", "name": "Multitap keyboard", - "version":"0.05", + "version":"0.06", "description": "A library for text input via multitap/T9 style keypad", "icon": "app.png", "type":"textinput", diff --git a/apps/kbmulti/settings.js b/apps/kbmulti/settings.js index 96e72b290..0a70bab23 100644 --- a/apps/kbmulti/settings.js +++ b/apps/kbmulti/settings.js @@ -21,6 +21,10 @@ format: v => v, onchange: v => updateSetting("charTimeout", v), }, + /*LANG*/'Lowercase after first uppercase': { + value: !!settings().autoLowercase, + onchange: v => updateSetting("autoLowercase", v) + }, /*LANG*/'Show help button?': { value: !!settings().showHelpBtn, onchange: v => updateSetting("showHelpBtn", v) From 192adef634e4c29f92e5dc2fcfff28b96efa9785 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 11:39:55 +0100 Subject: [PATCH 1262/1725] kbmulti: remove displayText() false - use undefined --- apps/kbmulti/lib.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/kbmulti/lib.js b/apps/kbmulti/lib.js index 01be03feb..519860b51 100644 --- a/apps/kbmulti/lib.js +++ b/apps/kbmulti/lib.js @@ -89,7 +89,7 @@ exports.input = function(options) { } function newCharacter(ch) { - displayText(); + displayText(false); if (ch && textIndex < text.length) textIndex ++; charCurrent = ch; charIndex = 0; @@ -121,7 +121,7 @@ exports.input = function(options) { newCharacter(); retireCurrent(); }, settings.charTimeout); - displayText(charTimeout); + displayText(true); } function retireCurrent(why) { From 6edcae393cf856320afffca097a84eae5b12e21a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 12:00:48 +0100 Subject: [PATCH 1263/1725] multitimer: allow one-shot alarms (delete after) --- apps/multitimer/ChangeLog | 1 + apps/multitimer/README.md | 1 + apps/multitimer/alarm.js | 8 +++++++- apps/multitimer/app.js | 22 ++++++++++++++-------- apps/multitimer/metadata.json | 2 +- 5 files changed, 24 insertions(+), 10 deletions(-) diff --git a/apps/multitimer/ChangeLog b/apps/multitimer/ChangeLog index 9a2ab0ff4..c682077e4 100644 --- a/apps/multitimer/ChangeLog +++ b/apps/multitimer/ChangeLog @@ -1,3 +1,4 @@ 0.01: Initial version 0.02: Update for time_utils module 0.03: Use default Bangle formatter for booleans +0.04: Add "Oneshot" setting to delete an alarm/timer after it sounds diff --git a/apps/multitimer/README.md b/apps/multitimer/README.md index f1e2eb281..4dcc4a8fd 100644 --- a/apps/multitimer/README.md +++ b/apps/multitimer/README.md @@ -2,6 +2,7 @@ With this app, you can set timers and chronographs (stopwatches) and watch them count down/up in real time. You can also set alarms - swipe left or right to switch between the three functions. "Hard mode" is also available for timers and alarms. It will double the number of buzz counts and you will have to swipe the screen five to eight times correctly - make a mistake, and you will need to start over. +"Oneshot" can be set on timers and alarms to have it delete itself once it's sounded. ## WARNING * Editing timers in another app (such as the default Alarm app) is not recommended. Editing alarms should not be a problem (in theory). diff --git a/apps/multitimer/alarm.js b/apps/multitimer/alarm.js index eb1b3b259..8c3b1cdd4 100644 --- a/apps/multitimer/alarm.js +++ b/apps/multitimer/alarm.js @@ -105,7 +105,13 @@ function showAlarm(alarm) { alarm.t = alarm.ot; delete alarm.ot; } - if (!alarm.rp) alarm.on = false; + if (!alarm.rp) { + alarm.on = false; + if (alarm.data.oneshot) { + const i = alarms.indexOf(alarm); + if (i >= 0) alarms.splice(i, 1); + } + } } //reset timer value if (alarm.timer) alarm.timer = alarm.data.ot; diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index 8832d1a25..b066607be 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -228,8 +228,7 @@ function editTimer(idx, a) { else a = timers[idx]; } if (!a.data) { - a.data = {}; - a.data.hm = false; + a.data = { hm: false, oneshot: false }; } var t = decodeTime(a.timer); @@ -291,10 +290,14 @@ function editTimer(idx, a) { } }, "Hard Mode": { - value: a.data.hm, + value: !!a.data.hm, onchange: v => a.data.hm = v }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), + "Oneshot": { + value: !!a.data.oneshot, + onchange: v => a.data.oneshot = v + }, "Msg": { value: !a.msg ? "" : a.msg.length > 6 ? a.msg.substring(0, 6)+"..." : a.msg, //menu glitch? setTimeout required here @@ -556,8 +559,7 @@ function editAlarm(idx, a) { else a = require("sched").newDefaultAlarm(); } if (!a.data) { - a.data = {}; - a.data.hm = false; + a.data = { hm: false, oneshot: false }; } var t = decodeTime(a.t); @@ -582,8 +584,8 @@ function editAlarm(idx, a) { var menu = { "": { "title": "Alarm" }, "< Back": () => { - if (a.data.hm == true) a.js = "(require('Storage').read('multitimer.alarm.js') !== undefined) ? load('multitimer.alarm.js') : load('sched.js')"; - if (a.data.hm == false && a.js) delete a.js; + if (a.data.hm || a.data.oneshot) a.js = "(require('Storage').read('multitimer.alarm.js') !== undefined) ? load('multitimer.alarm.js') : load('sched.js')"; + else if (a.js) delete a.js; if (idx >= 0) alarms[alarmIdx[idx]] = a; else alarms.push(a); require("sched").setAlarms(alarms); @@ -617,10 +619,14 @@ function editAlarm(idx, a) { onchange: () => editDOW(a.dow, d=>{a.dow=d;editAlarm(idx,a);}) }, "Hard Mode": { - value: a.data.hm, + value: !!a.data.hm, onchange: v => a.data.hm = v }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), + "Oneshot": { + value: !!a.data.oneshot, + onchange: v => a.data.oneshot = v + }, "Auto Snooze": { value: a.as, onchange: v => a.as = v diff --git a/apps/multitimer/metadata.json b/apps/multitimer/metadata.json index ee77d2ecb..0c9eddc9e 100644 --- a/apps/multitimer/metadata.json +++ b/apps/multitimer/metadata.json @@ -1,7 +1,7 @@ { "id": "multitimer", "name": "Multi Timer", - "version": "0.03", + "version": "0.04", "description": "Set timers and chronographs (stopwatches) and watch them count down in real time. Pause, create, edit, and delete timers and chronos, and add custom labels/messages. Also sets alarms.", "icon": "app.png", "screenshots": [ From f3f223eff52c68cda2198561c3081c7ac2057d27 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 16:20:13 +0100 Subject: [PATCH 1264/1725] notify: permit 0x0 colour and fallback depending on theme --- apps/notify/ChangeLog | 1 + apps/notify/metadata.json | 2 +- apps/notify/notify_bjs1.js | 2 +- apps/notify/notify_bjs2.js | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/notify/ChangeLog b/apps/notify/ChangeLog index d7b754ff9..f40490488 100644 --- a/apps/notify/ChangeLog +++ b/apps/notify/ChangeLog @@ -9,3 +9,4 @@ 0.10: Improvements to help notifications work with themes 0.11: Fix regression that caused no notifications and corrupted background 0.12: Add Bangle.js 2 support with Bangle.setLCDOverlay +0.13: Add a default title background for the dark theme diff --git a/apps/notify/metadata.json b/apps/notify/metadata.json index 1cc8f52c1..bab68127c 100644 --- a/apps/notify/metadata.json +++ b/apps/notify/metadata.json @@ -2,7 +2,7 @@ "id": "notify", "name": "Notifications (default)", "shortName": "Notifications", - "version": "0.12", + "version": "0.13", "description": "Provides the default `notify` module used by applications to display notifications on the screen. This module is installed by default by client applications such as the Gadgetbridge app. Installing `Fullscreen Notifications` replaces this module with a version that displays the notifications using the full screen", "icon": "notify.png", "type": "notify", diff --git a/apps/notify/notify_bjs1.js b/apps/notify/notify_bjs1.js index fb56e4bbc..4ff8f88e9 100644 --- a/apps/notify/notify_bjs1.js +++ b/apps/notify/notify_bjs1.js @@ -103,7 +103,7 @@ exports.show = function(options) { b -= 2;h -= 2; // title bar if (options.title || options.src) { - g.setColor(options.titleBgColor||0x39C7).fillRect(x,y, r,y+20); + g.setColor("titleBgColor" in options ? options.titleBgColor : g.theme.dark ? 0x1 : 0x39C7).fillRect(x,y, r,y+20); const title = options.title||options.src; g.setColor(g.theme.fg).setFontAlign(-1, -1, 0).setFont("6x8", 2); g.drawString(title.trim().substring(0, 13), x+25,y+3); diff --git a/apps/notify/notify_bjs2.js b/apps/notify/notify_bjs2.js index c202e8c55..456c4e929 100644 --- a/apps/notify/notify_bjs2.js +++ b/apps/notify/notify_bjs2.js @@ -100,7 +100,7 @@ exports.show = function(options) { gg.clearRect(x,y, r,b); // title bar if (options.title || options.src) { - gg.setColor(options.titleBgColor||0x39C7).fillRect(x,y, r,y+20); + gg.setColor("titleBgColor" in options ? options.titleBgColor : g.theme.dark ? 0x1 : 0x39C7).fillRect(x,y, r,y+20); const title = options.title||options.src; gg.setColor(g.theme.fg).setFontAlign(-1, -1, 0).setFont("6x8", 2); gg.drawString(title.trim().substring(0, 13), x+25,y+3); From 6e48f7074aad8f88a30ac30d08da0ffdbf5dd69f Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 21:12:04 +0100 Subject: [PATCH 1265/1725] kbmulti: default autoLowercase to true --- apps/kbmulti/lib.js | 1 + apps/kbmulti/settings.js | 1 + 2 files changed, 2 insertions(+) diff --git a/apps/kbmulti/lib.js b/apps/kbmulti/lib.js index 519860b51..505132040 100644 --- a/apps/kbmulti/lib.js +++ b/apps/kbmulti/lib.js @@ -9,6 +9,7 @@ exports.input = function(options) { if (settings.firstLaunch===undefined) { settings.firstLaunch = true; } if (settings.charTimeout===undefined) { settings.charTimeout = 500; } if (settings.showHelpBtn===undefined) { settings.showHelpBtn = true; } + if (settings.autoLowercase===undefined) { settings.autoLowercase = true; } var fontSize = "6x15"; var Layout = require("Layout"); diff --git a/apps/kbmulti/settings.js b/apps/kbmulti/settings.js index 0a70bab23..08dbb1925 100644 --- a/apps/kbmulti/settings.js +++ b/apps/kbmulti/settings.js @@ -3,6 +3,7 @@ var settings = require('Storage').readJSON("kbmulti.settings.json", true) || {}; if (settings.showHelpBtn===undefined) { settings.showHelpBtn = true; } if (settings.charTimeout===undefined) { settings.charTimeout = 500; } + if (settings.autoLowercase===undefined) { settings.autoLowercase = true; } return settings; } From eab0e8c620f7175f83e7be05a9d52a2a40e50938 Mon Sep 17 00:00:00 2001 From: storm64 Date: Mon, 29 May 2023 23:45:27 +0200 Subject: [PATCH 1266/1725] [sleeplogalarm] Correct hide + replace all `var` --- apps/sleeplogalarm/ChangeLog | 3 ++- apps/sleeplogalarm/README.md | 4 ++-- apps/sleeplogalarm/lib.js | 20 ++++++++++---------- apps/sleeplogalarm/metadata.json | 2 +- apps/sleeplogalarm/settings.js | 20 ++++++++++---------- apps/sleeplogalarm/widget.js | 11 +++++++---- 6 files changed, 32 insertions(+), 28 deletions(-) diff --git a/apps/sleeplogalarm/ChangeLog b/apps/sleeplogalarm/ChangeLog index 80f8bd7e4..e45667697 100644 --- a/apps/sleeplogalarm/ChangeLog +++ b/apps/sleeplogalarm/ChangeLog @@ -1,4 +1,5 @@ 0.01: New App! 0.02: Add "from Consec."-setting 0.03: Correct how to ignore last triggered alarm -0.04: Make "disable alarm" possible on next day; correct alarm filtering; improve settings \ No newline at end of file +0.04: Make "disable alarm" possible on next day; correct alarm filtering; improve settings +0.041: Correct hide function + replace all `var` with `let`. diff --git a/apps/sleeplogalarm/README.md b/apps/sleeplogalarm/README.md index 005377fb1..8da369eb3 100644 --- a/apps/sleeplogalarm/README.md +++ b/apps/sleeplogalarm/README.md @@ -1,6 +1,6 @@ # Sleep Log Alarm -This widget searches for active alarms and raises an own alarm event up to the defined time earlier, if in light sleep or awake phase. Optional the earlier alarm will only be triggered if comming from or in consecutive sleep. The settings of the earlier alarm can be adjusted and it is possible to filter the targeting alarms by time and message. By default the time of the targeting alarm is displayed inside the widget which can be adjusted, too. +This widget searches for active alarms and raises an own alarm event up to the defined time earlier, if in light sleep or awake phase. Optional the earlier alarm will only be triggered if comming from or in consecutive sleep. The settings of the earlier alarm can be adjusted and it is possible to filter the targeting alarms by time and message. The widget is only displayed if an active alarm is detected. The time of the targeting alarm is displayed inside the widget, too. The time or the complete widget can be hidden in the options. _This widget does not detect sleep on its own and can not create alarms. It requires the [sleeplog](/apps/?id=sleeplog) app and any alarm app that uses [sched](/apps/?id=sched) to be installed._ @@ -30,7 +30,7 @@ _This widget does not detect sleep on its own and can not create alarms. It requ - __msg includes__ | include only alarms including this string in msg __""__ / ... - __Widget__ submenu - - __hide__ | completely hide the widget + - __hide always__ | completely hide the widget _on_ / __off__ - __show time__ | show the time of the targeting alarm __on__ / _off_ diff --git a/apps/sleeplogalarm/lib.js b/apps/sleeplogalarm/lib.js index 343e811af..48fecdb5f 100644 --- a/apps/sleeplogalarm/lib.js +++ b/apps/sleeplogalarm/lib.js @@ -1,5 +1,5 @@ // load library -var sched = require("sched"); +let sched = require("sched"); // find next active alarm in range function getNextAlarm(allAlarms, fo, withId) { @@ -10,7 +10,7 @@ function getNextAlarm(allAlarms, fo, withId) { // return next active alarms in range, filter for // active && not timer && not own alarm && // after from && before to && includes msg - var ret = allAlarms.filter( + let ret = allAlarms.filter( a => a.on && !a.timer && a.id !== "sleeplog" && a.t >= fo.from && a.t < fo.to && (!fo.msg || a.msg.includes(fo.msg)) ).map(a => { // add time to alarm @@ -21,7 +21,7 @@ function getNextAlarm(allAlarms, fo, withId) { ).sort((a, b) => a.tTo - b.tTo); // prevent triggering for an already triggered alarm again if available if (fo.lastDate) { - var toLast = fo.lastDate - new Date().valueOf() + 1000; + let toLast = fo.lastDate - new Date().valueOf() + 1000; if (toLast > 0) ret = ret.filter(a => a.tTo > toLast); } // return first entry @@ -59,7 +59,7 @@ exports = { if (typeof (global.sleeplog || {}).trigger !== "object") return; // read settings to calculate alarm range - var settings = exports.getSettings(); + let settings = exports.getSettings(); // set the alarm time this.time = getNextAlarm(sched.getAlarms(), settings.filter).t; @@ -68,7 +68,7 @@ exports = { if (!this.time) return; // set widget width if not hidden - if (!this.hidden) this.width = 8; + if (!settings.hidden) this.width = 8; // insert sleeplogalarm conditions and function sleeplog.trigger.sleeplogalarm = { @@ -87,22 +87,22 @@ exports = { // trigger function trigger: function() { // read settings - var settings = exports.getSettings(); + let settings = exports.getSettings(); // read all alarms - var allAlarms = sched.getAlarms(); + let allAlarms = sched.getAlarms(); // find first active alarm - var alarm = getNextAlarm(sched.getAlarms(), settings.filter, settings.disableOnAlarm); + let alarm = getNextAlarm(sched.getAlarms(), settings.filter, settings.disableOnAlarm); // return if no alarm is found if (!alarm) return; // get now - var now = new Date(); + let now = new Date(); // get date of the alarm - var aDate = new Date(now + alarm.tTo); + let aDate = new Date(now + alarm.tTo); // disable earlier triggered alarm if set if (settings.disableOnAlarm) { diff --git a/apps/sleeplogalarm/metadata.json b/apps/sleeplogalarm/metadata.json index fd85507e6..989579d58 100644 --- a/apps/sleeplogalarm/metadata.json +++ b/apps/sleeplogalarm/metadata.json @@ -2,7 +2,7 @@ "id":"sleeplogalarm", "name":"Sleep Log Alarm", "shortName": "SleepLogAlarm", - "version": "0.04", + "version": "0.041", "description": "Enhance your morning and let your alarms wake you up when you are in light sleep.", "icon": "app.png", "type": "widget", diff --git a/apps/sleeplogalarm/settings.js b/apps/sleeplogalarm/settings.js index 1f3a13272..d797ae6bc 100644 --- a/apps/sleeplogalarm/settings.js +++ b/apps/sleeplogalarm/settings.js @@ -1,6 +1,6 @@ (function(back) { // read settings - var settings = require("sleeplogalarm").getSettings(); + let settings = require("sleeplogalarm").getSettings(); // write change to storage function writeSetting() { @@ -23,7 +23,7 @@ // show widget menu function showFilterMenu() { // set menu - var filterMenu = { + let filterMenu = { "": { title: "Filter Alarm" }, @@ -64,22 +64,22 @@ }) } }; - var menu = E.showMenu(filterMenu); + let menu = E.showMenu(filterMenu); } // show widget menu function showWidMenu() { // define color values and names - var colName = ["red", "yellow", "green", "cyan", "blue", "magenta", "black", "white"]; - var colVal = [63488, 65504, 2016, 2047, 31, 63519, 0, 65535]; + let colName = ["red", "yellow", "green", "cyan", "blue", "magenta", "black", "white"]; + let colVal = [63488, 65504, 2016, 2047, 31, 63519, 0, 65535]; // set menu - var widgetMenu = { + let widgetMenu = { "": { title: "Widget Settings" }, /*LANG*/"< Back": () => showMain(9), - /*LANG*/"hide": { + /*LANG*/"hide always": { value: settings.wid.hide, onchange: v => { settings.wid.hide = v; @@ -105,13 +105,13 @@ } } }; - var menu = E.showMenu(widgetMenu); + let menu = E.showMenu(widgetMenu); } // show main menu function showMain(selected) { // set menu - var mainMenu = { + let mainMenu = { "": { title: "Sleep Log Alarm", selected: selected @@ -184,7 +184,7 @@ } } }; - var menu = E.showMenu(mainMenu); + let menu = E.showMenu(mainMenu); } // draw main menu diff --git a/apps/sleeplogalarm/widget.js b/apps/sleeplogalarm/widget.js index e3171751f..9bed913c1 100644 --- a/apps/sleeplogalarm/widget.js +++ b/apps/sleeplogalarm/widget.js @@ -10,10 +10,13 @@ if ((require("Storage").readJSON("sleeplogalarm.settings.json", true) || {enable time: 0, earlier: settings.earlier, draw: function () { - // draw zzz - g.reset().setColor(settings.wid.color).drawImage(atob("BwoBD8SSSP4EEEDg"), this.x + 1, this.y); - // call function to draw the time of alarm if a alarm is found - if (this.time) this.drawTime(this.time + 1); + // draw if width is set + if (this.width) { + // draw zzz + g.reset().setColor(settings.wid.color).drawImage(atob("BwoBD8SSSP4EEEDg"), this.x + 1, this.y); + // call function to draw the time of alarm if a alarm is found + if (this.time) this.drawTime(this.time + 1); + } }, drawTime: () => {}, reload: require("sleeplogalarm").widReload From 68a7047a8ce7f5fe2cb4af84441bd6f6e3ef8853 Mon Sep 17 00:00:00 2001 From: storm64 Date: Mon, 29 May 2023 23:52:46 +0200 Subject: [PATCH 1267/1725] [sleeplogalarm] Second try --- apps/sleeplogalarm/ChangeLog | 2 +- apps/sleeplogalarm/lib.js | 2 +- apps/sleeplogalarm/metadata.json | 2 +- apps/sleeplogalarm/widget.js | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/sleeplogalarm/ChangeLog b/apps/sleeplogalarm/ChangeLog index e45667697..cf79179c4 100644 --- a/apps/sleeplogalarm/ChangeLog +++ b/apps/sleeplogalarm/ChangeLog @@ -2,4 +2,4 @@ 0.02: Add "from Consec."-setting 0.03: Correct how to ignore last triggered alarm 0.04: Make "disable alarm" possible on next day; correct alarm filtering; improve settings -0.041: Correct hide function + replace all `var` with `let`. +0.042: Correct hide function + replace all `var` with `let`. diff --git a/apps/sleeplogalarm/lib.js b/apps/sleeplogalarm/lib.js index 48fecdb5f..609a45fde 100644 --- a/apps/sleeplogalarm/lib.js +++ b/apps/sleeplogalarm/lib.js @@ -68,7 +68,7 @@ exports = { if (!this.time) return; // set widget width if not hidden - if (!settings.hidden) this.width = 8; + if (!settings.wid.hide) this.width = 8; // insert sleeplogalarm conditions and function sleeplog.trigger.sleeplogalarm = { diff --git a/apps/sleeplogalarm/metadata.json b/apps/sleeplogalarm/metadata.json index 989579d58..3079435b0 100644 --- a/apps/sleeplogalarm/metadata.json +++ b/apps/sleeplogalarm/metadata.json @@ -2,7 +2,7 @@ "id":"sleeplogalarm", "name":"Sleep Log Alarm", "shortName": "SleepLogAlarm", - "version": "0.041", + "version": "0.042", "description": "Enhance your morning and let your alarms wake you up when you are in light sleep.", "icon": "app.png", "type": "widget", diff --git a/apps/sleeplogalarm/widget.js b/apps/sleeplogalarm/widget.js index 9bed913c1..a62782604 100644 --- a/apps/sleeplogalarm/widget.js +++ b/apps/sleeplogalarm/widget.js @@ -1,7 +1,7 @@ // check if enabled in settings if ((require("Storage").readJSON("sleeplogalarm.settings.json", true) || {enabled: true}).enabled) { // read settings - settings = require("sleeplogalarm").getSettings(); // is undefined if used with var + let settings = require("sleeplogalarm").getSettings(); // insert neccessary settings into widget WIDGETS.sleeplogalarm = { From 6529533aee8cf9130b31f8d3bc761d2a33253f59 Mon Sep 17 00:00:00 2001 From: storm64 Date: Tue, 30 May 2023 00:01:08 +0200 Subject: [PATCH 1268/1725] [sleeplogalarm] Correct version after testing --- apps/sleeplogalarm/ChangeLog | 2 +- apps/sleeplogalarm/metadata.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/sleeplogalarm/ChangeLog b/apps/sleeplogalarm/ChangeLog index cf79179c4..286221777 100644 --- a/apps/sleeplogalarm/ChangeLog +++ b/apps/sleeplogalarm/ChangeLog @@ -2,4 +2,4 @@ 0.02: Add "from Consec."-setting 0.03: Correct how to ignore last triggered alarm 0.04: Make "disable alarm" possible on next day; correct alarm filtering; improve settings -0.042: Correct hide function + replace all `var` with `let`. +0.05: Correct hide function + replace all `var` with `let`. diff --git a/apps/sleeplogalarm/metadata.json b/apps/sleeplogalarm/metadata.json index 3079435b0..30d3dcda7 100644 --- a/apps/sleeplogalarm/metadata.json +++ b/apps/sleeplogalarm/metadata.json @@ -2,7 +2,7 @@ "id":"sleeplogalarm", "name":"Sleep Log Alarm", "shortName": "SleepLogAlarm", - "version": "0.042", + "version": "0.05", "description": "Enhance your morning and let your alarms wake you up when you are in light sleep.", "icon": "app.png", "type": "widget", From 7be4bfb05edf9916b372fce9ca1fc21f8aab6d72 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Mon, 29 May 2023 18:17:06 -0500 Subject: [PATCH 1269/1725] Update messagegui.app.js To include "toward" as well for better compatibility when splitting street name directions up --- apps/messagegui/app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index 7ce568f82..ccc6acec6 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -84,8 +84,8 @@ function showMapMessage(msg) { if (msg.distance!==undefined) distance = require("locale").distance(msg.distance); if (msg.instr) { - if (msg.instr.includes("towards")) { - m = msg.instr.split("towards"); + if (msg.instr.includes("towards") || msg.instr.includes("toward")) { + m = msg.instr.split(/towards|toward/); target = m[0].trim(); street = m[1].trim(); }else From 2b66f370451b4bd0ddf6e462d71891fc4e910ee5 Mon Sep 17 00:00:00 2001 From: pancake Date: Tue, 30 May 2023 03:08:02 +0200 Subject: [PATCH 1270/1725] kanawatch: Optimize loading+rendering and add transition animations --- apps/kanawatch/ChangeLog | 2 + apps/kanawatch/app.js | 450 +++++++++++++++++++----------- apps/kanawatch/metadata.json | 5 +- apps/kanawatch/screenshot.old.png | Bin 0 -> 2992 bytes apps/kanawatch/screenshot.png | Bin 2992 -> 2653 bytes apps/kanawatch/screenshot2.png | Bin 0 -> 2689 bytes 6 files changed, 297 insertions(+), 160 deletions(-) create mode 100644 apps/kanawatch/screenshot.old.png create mode 100644 apps/kanawatch/screenshot2.png diff --git a/apps/kanawatch/ChangeLog b/apps/kanawatch/ChangeLog index 9144364d9..1521bed73 100644 --- a/apps/kanawatch/ChangeLog +++ b/apps/kanawatch/ChangeLog @@ -6,3 +6,5 @@ 0.06: Fix exception when showing missing hiragana 'WO' 0.07: Fix regression in bitmap selection on some code paths 0.08: Speedup next/prev and fix autogenerated hiragana bitmaps +0.09: Optimize loading and rendering times, introduce transition animations +0.10: Swipe up/down for Hiragana/Katakana, right/left for next/prev letter diff --git a/apps/kanawatch/app.js b/apps/kanawatch/app.js index 793104def..2aa5c2a3c 100644 --- a/apps/kanawatch/app.js +++ b/apps/kanawatch/app.js @@ -3,121 +3,134 @@ const stripe_pos = 40; const stripe2_pos = 110; const h = g.getHeight(); const w = g.getWidth(); +const decompress = require("heatshrink").decompress; -/// ///////////////////////////////////////// -const katakana = {}; -const hiragana = {}; + +function benchStart() { + return { + now : +Date.now(), + diff: function() { + return (0+Date.now()) - this.now; + } + }; +} +const startupTime = benchStart(); function image(x,y,b) { return { bpp:1, width:x,height:y, - buffer:require('heatshrink').decompress(atob(b)) + buffer: decompress(atob(b)), }; } -katakana['A'] = image(56, 51, "v//AAfwAon//AGF/wGT/gGM/A3F/BDEn/wJQoGCj4RB//gAxUB//AAwcDAwsH/+AAwcP/4tCAwMf/wGEn/8Awl/JYYGBKQkf/I9DAwJgBGwQGDGwRlBAwJsE+42DAwPzGwYGB+J7EQIIvDQIIFEAw5DEAwRDDgCIEAxCPBKIcAR4IhER4hnCLAg9BLAgoBAwgoBcQiCBMwj0BHogGBHogGBfoooEQQREFEIgGBAokAhAGFA="); -katakana['I'] = image(54, 55, "AAkEAws+AokB/wGEg//Awk//gTE//gAwcPCYt/CYkDCYsfCYv//A0F4A0ECYg0BCYggBCYn/KwhBBGgl/EAgtBEAgMBEAZOBEAgMBEAYZB/+ABggTDBgQnDAoIaDJoIaDFgIABDQQFC74aBBgX8v4aBEwWBDQQgB/EHDQQ6BwEfGoX/+AJBDQMDWAKMBDQMPAQIaDiBFCPAgaDU4hrDDQiuDDX4acSAIaCA="); -katakana['U'] = image(52, 55, "AAMP/gGE//ABlH/AAnvAon+Bk5EDv/vIgcHBkHPBgZwBBgn/Bi8B/+PBgcf/AMFw/wBgYEDgED/6qEv4MEKYK3F8AFDj7EED4LREv/4CQn/wASEFginBDAgfEDAIfDn67BC4YABH4QXBCQcHZoQkEEoYMCHAYlBFYZEBLwk/MgpQEAAw"); -katakana['E'] = image(58, 45, "h//AAfwgYGE/0AAwn/wE/AwngDgv4DjhDCv/wJQkf/gGEg//AwkB//AA4gc/Dn4cjbAv/34GF94GF/YGF/wcjwA="); -katakana['O'] = image(57, 54, "AAcf+AGEh/8AwkH/wGEgf/AwkB/+AA4n/4AGEv/gAwk/GIsf/A4P/4AE+F/Awn4n4GE/kfAwn+h4cFg4GFwYGF4IGFKwYFBMQpxFAwJxEAwJxEAwJxEAwJxEK4JxEAwKqEMoQGE/o4En/8HAl//iqEAwKqEv/+VQgNBVQgNBcYgNBcYhLBcYhSCHAQKBAwI4CAwY4CD4IGBHASxBAYI4CAwY4CYwIGBHAQGBD4I4CBIJfCHASmDHAV/PYQ4Cj5QCHAUPLwQ4CgQGCOIgABOIgABHAIGEAAY="); -katakana['KA'] = image(54, 54, "AAMP/AGEv/gAocB/+AAwcH/wTEj4arg//AAf+j4GE/F/AwnhAon/w4aZHAMP/hTEn/wKYn/4BTDgf/KYgQCDQYQCBIQQDBIQQCBIc/DQouCDQQuCEghJBEhITBH4RTBLoRTEBIJTGCAUPNwoTCDQQWBDoIuCj4TCJIX/CYQ/BZQInBH4U//0HwBTBGgPwXAXwh4PBXAXAv4PCZIIgBEYTJBn5SBDQXABAIzBCYJcCDQXwgbOCAwIDBQgI4CgEOJwIADkAGFA"); -katakana['KI'] = image(58, 55, "AAU+Awv/4AGEn/wAwkP/gGEgf/Dkk/CAc//4ABwAGBj4GC8ATBAAf4h4GE/woBAAmAAwvgFAYcIwAcD/BFDFARFD/kBIoYACv5FBAAcfRL94DgkfHgf/95EBD4RgDD4MHLwf8AogAd+CPFGwiJCS4XHJgSGB8CJEkCJJUwYABg5pDD4amTNwKmXYbgcDLoY="); -katakana['KU'] = image(55, 55, "AAMHwAGEh/8Awkf/AGEv/wAwn/4AFDgf/EQkH/whF/4ACAwM/AoQQCBgY5BgIGDHIMHAwY5Bh4GD8AhEIAQFDIAIhBBIJACEIJpEj45CNIV/NgRpBDQIrBEoPgDQJlBEoQaDEoV/RwUP/wPBQ4Uf/gPBQ4QsBKAKSD8BvCSQXDDQYYBNYIaCGYIqBDQU//kPXoYYBj5QCEIPgj60DKoMcWga7FKoYABKogaDbojPBbojMDGob/ECYJBCbgYaDE4IaEPoIaDEAI1EbYQZECYgtBCZQGCLol/KwxxEAwJqEgIMFgIZEgA="); -katakana['KE'] = image(60, 54, "AAMcAwsD/4HFn/wBxl/8AGEg/+BxkP/gOF//ABxcB/+AA4kf/BCGAAZOBv4HEIQIOGAwgOBh4OFGYIOFn4OFEgoOBAwvgh52BKgYDBOwJUDv5nBBwY6BAYM/BwIKBJgJjBBQSbCWoQVBRgK1D/4oDBwJJBWos/WIS1CgIVCJoRGBWowCCj61HYgpRCdIjEGLgTLEIwTLEfAv/GYqtBEghyBGYjoCAwwkDAwQVEYwYjEHQt/CopeBQgQOEIIgOBPgxeFgZ7FA"); -katakana['KO'] = image(49, 46, "v//AAYFF34FE74FE94FE+4FE/IFE/gFE/w0Dgf/AocB/+AAwf/4BHE8AFDn/wAocf/AFDh/8AocHGH4w6YZf7Aon9YYoFEejBhEAAIA="); -katakana['SA'] = image(58, 53, "AAcD/wDBg4DC//AgEB/+AgE/+AKBv/ggEP/gGBj/4DgP/DnU//4A34CQ+DAIcEDAIcDDAQDDDAYDCDAYDD/4cDIgJADAAUfIAQACh4jCAAUHD4QACJwIfBAAQtBEYgGBI4QUDFQkP/4qEVYQvEAAIxCEIK5CBwV/AwsfAwocCAwYcCJogcBNIp3F"); -katakana['SI'] = image(56, 52, "gFwAwt+Awv/8AGF/gFDgP//4GGCocDAwIVDBoX/wAHCn4VFg4GB4AxEAwsfAworBEQYABv4GFj4DCjgrCBQYRFn/4JQfAIgIGD+F/JQcD/gGBMARQCOwcH/wNBCoUP/0PAwIrBj/8OwQGBn4fBGIIGCAQIlB+BcBAQKvDBIQRB8AfBIQUH4AXBP4RXBGgJmERoJsFAwv//yaFbYghBQIYaCeAi9FPQTZGdxKFCFASECFAZPBEIgNCJQaZEAwhDDAwRJDTAYGEQAiQBPIgAGA"); -katakana['SU'] = image(60, 51, "gH/AAYGBh4GD/AOG4AOF/gONDo+ABxAACgY7CAAd/+AGEg4OG//gAwkP/wGEgJCCAAcfKIQzEIQIzEIQozOj4zFEgIzFn4kHGYv/M4okIGYt/IQqXBFghuBHYs/bAY6DCwrJECod/HgYVB8ZLEcoMfLQYECCwYVB+BTBCwT7CCwYrBAYIKCCoQDC8BXBEIQSBNoQVBBYP4EAIoCOQPHCoYTB/xdBIwQ8B+6SET4N/dYn/4aCFFgKRFgC+EgPghivEAoI"); -katakana['SE'] = image(57, 53, "gEH/wGEgf/AwkB/+AA4n/4AGEv/gAwk/+AGEj/4AwkP/g4JjA4EBQQ4D/4DD4E/AwIuBv/vAoP/FwILCAAIuBv4GEBgn//wFEAwITEh//CgfwAwMfCIRGB/4BB/5xBAgJTBIQQGBwP/75CBAwOAD4JCBAwRmDDIKYBOIQGDOIQGDOIQbBAwSqBAwiqBAwiqBDYg4Cv4GCHAUfAwQ4Cg4GCHAUBbwbjnHAgADcYYADUYQxEEYq6CVwbDBdQi6CZQYqBAAZcCAwY1BEYi5DAAQ8CegfgA="); -katakana['SO'] = image(52, 52, "gGAAol8AYUD/Ef4AGCn/3/wFCg/+v/wAwV/8//Bgk//AMD8f/FoQMBj/8Bgfg//gBgcPFoYMBFocP/kHFof/4AtDBgMDFoYMBFoYMBgIIBgADBwAtDj4dBHQQMCFoYqCHQQqCFoc/BIIPCCwQtDKYIpBB4IwDIAQwCh45CBIVAFgSmDFIaaDOIYfCVgYfBRYYfCTASTCUoY1BQgZPCD4l/D4kfH4g4BH4YYBH4gFBGQd//4yDBYIyDn4SEJQIlEBgRXEHAg+BFYZRGZYQADBYgAG"); -katakana['TA'] = image(55, 56, "AAMHwAGEh/8Awkf/AGEv/gAwn/4AFDgf/EQkH/4oF/4ACAwM/AoX+FAQGCHIMBCYY5BEIIAC+AhFIAIhDHIQFDF4IhBJQMHF4JDDNIUfHIRpCv5sCn/wDQJsCDwIaBEIIKBwEf/9gOAQaB/gbBFAIPB+YsC/AaB54RBFAIaBAIOAEoJvBOgPh/+DNAJWB+//DQPBQIZyBM4f4LQSQC8EPKAIpBFAMPPgKKCgEcYIZwBiAGDbohwEZ4bdEFILxFf4ghBXwLjEDQhLBCYoaEE4IaDdIQaDBgLBCDIRQENYYTIewRkEAwJCFHYicBOIkAEAhDBS4IAJ"); -katakana['TI'] = image(57, 54, "AAkGAwsfwAGE//gAocP//wBgn//gEBgIFBAAIeBAof/wAYBAwkHAof+gEDAwf4E4YAB4AGBv4TDAAM/AwoxDKQhABLQwiCAAV/MIglBMIglBHwRwDNARbF//3Awv7Awv9Awv+Awv/MQQAD34GF74GFKAUHOIYABSAJxGaYp4Uv54FP40/P4oGHQwQGKKgt/AwrUEMIQGEVYIGLg4bMFII+Fv5TGNAsPQgsHTIoAG"); -katakana['TU'] = image(54, 53, "AAMBwAGEj4FEgf8AYPwgFgn/4BIP/g+Av/ggEP/n/gP/4EAv/v/wQBFQP/z/4CAMAg/+DAMfEIICBDAN/FgN/8YYBBAIaBw4hDDQIVBAYMAn/wDAIhCCwIhDCwIBBwAIBHAIYBEIQYDBAIuBwAjBFQghCJgQhEAIIhDEYQPBh5HBM4IhDQQQhCwYeBCwMBCoSPB/0CIQQhBAQKWDvytBCYTBDv5tBZYYTCAAQTCAAYTFHAITEj4TF/4TEh4TFv4TEg//JgIMDMYIMEO4ImD/53BAAM/AwIsEEAgFBEAZNBIIgTCFocfJwo6BPgpHEgZAEgEOAogAGA=="); -katakana['TE'] = image(57, 51, "h//AAfwg4GE/kDAwn+gIGE/8AAwuAv4GE4E/Awngj4GFNWJNF/gGF/5UF/+/AwvfAwvvAwv3Awv7GJn8IQV/4BJEv59Fn/wAwkf/DJFEAYABg/+AwjJBAxbQBwAGFH4gGBH4gGIIwgGNG4IGEg//LYjyBAwiyBAxc/EQoGGFIJTLdYJvEgF+fIsYAwo="); -katakana['TO'] = image(42, 54, "//AAgU/+AECh/8AgUD/4U/CgYPDn//wAUC/4VCCgIlDAgIKCCgIKCCgP//wUD//gCgQKCn/zBQQ+BDYP8CgMBEAQBBj4KBKYIKC54yBBQP7KYIKCG4QKB35YBBQIUCGQPjNAUD+BXDnB9Dgy8/CicAA="); -katakana['MA'] = image(57, 50, "/4AE/l/A4s/AwvfAwoAN/YGF/oxGHokf/wGLh4GN/4GSg4GChgGDwARBAw3gAwv4Awo7BAwn/4ACBAwIKB+AGDgJtBAwcAUgOPAwYLB94GDgaFCAwTBDAwcfAwoyBAwgyBAwgyCAwgcBAwgyBNgL0ENgIADn6oHDijhFW4wcB4AGDKwPwBwl/fwzUJDgZOFgAGGngGFhADCA"); -katakana['MI'] = image(52, 53, "gPwAwkf/wFDgf///gAwU/AwIVCBgX//AME//8gEHAoQGCBgYGCv4GDFIMPBggoE4A2CCoIuCAweAAwc/BghYBMwswNw0PNwkBGAIbEG4gMCOoYMCOoQMDAwRnE4BYDKYQTEKYRuCKYY8GgCjDAAV+LAtgcTMDbYhTCHobICBwbBDBghZDZwmAZoYGCAogGBCYgiBEIidCBwQ2DS4QMCVYT2CSAb2DBoLpFn72EdJAA=="); -katakana['MU'] = image(59, 54, "AAMDwAHFv/AAwkf/gVF/4VG8AGEh4VHFgoVPFdZBdRogVBgP4CokBFogVBn/wTIkHEwYrCv4ODCoMP/wVDFIP/JYQVCBwgVBGYLICCoTIDCoQCBBwQhCn5RCCoR/DNoZCDDIRRDCoQODg4+CIQYvGCoZCCCoZRDAQV//4SBRAM//4ABwEfAgQAB/ARBAAkPAwvxAwv+Dgv/8YGF/gkD/xCB543DH4P5AoaBBewsAvgGFhgGFAAQ="); -katakana['ME'] = image(55, 54, "AAcB8AGEgf/AwkP/wGEj/8Awk/+AGEv4iF//AFAuAAwcHFAsPFA34AYNwFAQvBgICCFAUHCAIoDDwQoDn4DBKIf/MYIoCDwIGB/5RBAwWDKIYGB456Dv//75RDAwP/JQQmBAwJ6Dj4GBOYYGCOYcP/5zEg//OYgGNDYw3BAwgvBAwaABAwgaBOARZC/wGDOoP8MQI1D+AGDFwPAAwJaBDAQNCJIc/AQJsBTYL3COQc/4ATBXoYdCSgU8J4SNCmCNCNQqoDAwQuBAwgFDFAITEAwK1DAAKZEAAIMFAA4="); -katakana['MO'] = image(55, 49, "j//AAfAv4GFAon/wIGFgYFE/0HAwn8h4GE/AvF8A4Bv4DCAAQzBAocB/+AAwYxBCYkH/wGEh/8MIv4Awk/+AGEGyJfFAFP9AwpOBNuikeAwxfEHoLpFNoZACAwZABIgIACJYYABIAYGCIAYwCHIoABA="); -katakana['NA'] = image(57, 55, "AAV/8AGEn/wAwkf/AGEh/8AwkH/wGEgf/AwkB/+AA4n/4A4rGoIAE/IGF/wGF/9/Awu/AwvfAwvvAwv3AwpQCOOqqEWLV/H4pGGn5GFAw0fJosfJooGGn4GGKgq6BLQoGEg4GFh4GFPoIpEDYIwFv5MFLQ4GFg6EFgaZFAAw"); -katakana['NI'] = image(56, 43, "h//AAf4A25+/AH4AuWggA5A="); -katakana['NU'] = image(55, 51, "g//AAcAh4GFj4FD/0An4GD/kAv4GD/EADQnwgIGE8EDAwnAAwuAIIgvBAAcPF4IADn4vBAAd/8AGEFAIDBAQIsBFAMDCAIoDh4eBj4oCj4GBFAd/CIJRBgBZCAQIlD/+HQIIGD54oCNwZKDPQZPDOYRdDOYqmBOYi0BOYjCBBogGGYQSAEAwimDGATdDAwQTBH4JFBLIP8AwYTB+AqBAwITB4AGBE4bADBIJyBUIJ6CVgXgJAQzBg+BAoJkCgxcBCYRIEPArlEH4YGDO4ibBeQs+AokAsAGF"); -katakana['NE'] = image(61, 55, "AAX/4AGEg/+Bws/+AGEgP/wAHEh/8Cwt/8AGEgf/Bwsf/AMEAAYnBj4GDHwQOEDAMHA4hVBn4WFJIIADHwMPA4hgCAwZkFCQKCGBwpHBPQwOFFAJyGBwt/BwozBBwpwDGYiYEEgP+iAkF4IPDCoP8j7WCUAXhbwYVB/4RBU4n4QISfD54vBS4f+FASPD+AEB+AFB/IjBFIPnA4LzCGAfAeYIjBGAP4eYQCBwZuBeYUH/EfIwJRCAoIDBg6ACnCmDR4oqBDIKfEHgKuFS4g5CBwo8CWwqOCAAQ8DcYg8Vn48FAAo="); -katakana['NO'] = image(47, 52, "AAcHAokP/gFDj/4Aod/+AFD//gAgUB//AAoUD/4oE/woJn4oLEQYoBwAoIh4oEj4oFJZ8HERU/EQhFEDgIiDH4JFDh4iEH4t/NAYcFHII/Dj4cEv4/DCwIcDCwIcDCwI5DCwhEBHIYQBKwf/GYYhBCwc/FoYKBFoYEBFoQKCE4RrBE4YFCHwQyBHAYnBJ4YFBcBN/AgcAPgYABA="); -katakana['HA'] = image(62, 52, "AAP/wEH/gGCgf/gE/+AHCh4MB//AA4QMBCIQeD4ARCDwv4Dwt/8AeEgI4BDwkH/weFj4eEAgIeF8AeEAgQeEAgQeEAgQeEAgQeGMggeCMggeCQYiACQYYbCDwgbCIogbCIoZZDIoYTCMggTCEwn/CYJFDBYZFDBYYmDv4LBEwYDDg4aCh5JCDQYiDaIQWBNAQ5CMAYLDcgYmCCwgqCGIYTBFwL7EJIIWEAgPgh4WDNAPACwgMBCwiHB/wWEFwV/CwZVB/YWEDgPHXgYuBDwLbDKQPwh60CGwWAngGDgAFBkAHEsAFEAAQA=="); -katakana['HI'] = image(47, 51, "//AAgUB/+AAoUD/4QDg/+AocP/gFDj/4Aoc/+AFDv/gFw8BwIuDj+DFwf/FwcP/4uD///FwQKB/wuBJwIFBFwM/AoP8//PAgP/+IDCAAJdBAAXwg4FDEoQKCIIIgCLoQFBKYV//5qDB4aMuF1YFDFwIRDUIQAC+YFE8YFE44FEw4FEUgn+Aon8WwhKBXggA="); -katakana['HU'] = image(49, 50, "/4AEv4FE34FE74FE94FE+4FE/YFE/oFE/w0Dg//AocD/+AAoUB//AI4ngAod/+AFDn4FEj/4Aon8AocPAokHHgg2BHhYFDHgJCLJBZCEAopIFAoxIEAoxOEApc/AojSBbwplEAoZxBAocPAojICBQhBCGYIFDBYRZCa4P/NYQuCPoYFBSoZGFZYsPAgYABA="); -katakana['HE'] = image(61, 43, "AAMH8AHF/4HFh//wAOF/wOG/AHEv4eFg//DwoOBDwgOCDwk//YeEgf/x4eEn/8n4eDgP/4AeEj/8DAIeCBwPgLgkfDYIeECYQeDh4LBIwIeC//wDIIeCBYJdCDwV/BwIwBDwIOBCQYeBn4pCDwRIBIAQeCMIJPD/AOB4CED4BhBMwf/MISbD/kHPovwj4ODDwV/UYhYBKQJ2DRoIGDHQINEcARCCWYgGEDwIOFgb+FDwL2EDwQGFIQoeCBw0YA40AA=="); -katakana['HO'] = image(61, 54, "AAV/8AGEgf/Bwsf/AHF//AAwkH/wOFn/wAwkB/+AA4kP/g8Rg//AAngv4HFCYIAE/EfA4vAAwv+Eo3wn4HFwAGFJwZ5UgfAPIJzDn/x/+PEgR/BAoJzDP4N/8JzD//D/6KDFYI8BCwYrCCAItBPQOH/wWDCgIQBCwf/4P/wIWCCQIBDWgYBCZ4KJBE4LPDEYInBh5sBBgKLBNgQ0CJoIWB4ACCBgIiBBwP8EYU/TQLXBHQQECFAI8BCwIqB8DzCDYMPAgQbCMoI3BF4IRB44OBWwQUBv4TBJIV//InBHgQCBw4OBHgUH/EfNgKOCj0A3BsCQwNgeaSdCABA="); -katakana['N'] = image(54, 50, "ggGFngFEgP+AwkPAws/AwkB/4GEh4GFn4Gaj///gNF/AGF4BEJAwITBgOAAwQTBh4GCnwJCCgVwLgRwMHAgTBHAgTGv4TEgYTFMIITEMAsHMBY0B+ClFCYiPFEAITEv//OIQMCTg3gBgggEDIIgDGYIgDMIJVDDAIABIIILCFoYYCJwZ0BHQgsBBgZnBBggnCKgYhBMIi3FgAFFgAA=="); -katakana['WA'] = image(51, 50, "/4Ay4A3E/AFCh4GBAoUBAoPgAwU///8AoUHBgOAD4nwAoUf//+AoUDGRYSBGQYSCGQd/94yDh/9GQZFB34yDn/zGQcPAgYSCG4YSBC4YSNv4SKJYJwDLwISEn5QDS4QSDDAJjDDAJ2DGIJ2DUYQ+DQYKcFFYYXBDASOCGIQFDGIQRCDwTaCG4YFBEgbHHN4hiFg6HEA="); -katakana['WO'] = image(50, 52, "/4AE34FE94FE/YFE/wYYGocB/+AAwd/8AFDn/4AocP/gFDgf/KovADAnwDB43B45EE+IFE/F/KAkfBgmHAonhAonwDAn8h4MEN5X/N4l/N4k/KwkfRwgoBDwcHOohoBOoYFBEgY2BEgYFBEgYFBJIYXBFQYpBFQZ3CAoIWCKoQQCGwQLDHgR8CAoQdCAoQvCOYYFFn5gENgKREbYgAGA"); -katakana['RA'] = image(51, 50, "n//AAcHAongAon8j4GEwYFE+F/Aof+h4ME4IFE/BYr+4FE/wFE//fAon7BgpYE//vAon9CQo3Ev/gAocP/gFDgP/wASX+ASJgYSFXwJ2ECQivBDAoSEWIs//wFDbYIrDAoI+DAoIYDQ4IYCFIIABDALlDGIJhBewS/EJQQYCG4YkED4QFDD4JJF4AFDA"); -katakana['RI'] = image(43, 53, "AAf/7/4AgMf/f/AgMD/9/8AFBv/v/gEBh/9/+AgEB/+/+AKBn/3/wEBg/+//AFX4q3v4qDh/8FQQPBz4PDAYQvBEYQvCEYI/CGYRPBB4cfIYQpBB4cH/5TCDwJjD/4kCn4EBCgN/AgIUBDoP/FIJHBAAIyCDIYjBIYYaBQ4QaBJoZHDAAoA="); -katakana['RU'] = image(61, 53, "AAUH/wHFn/wAgUB/+B/+AA4UP/gBBCgd/8ABBAwUD/4BBBwcf/ABBA4f/4ABBHQg8FHQI8/HksYHgwYBHgkPF4I8EvwlCHwOAg4gBEYI8CCIQjBHgITBCIP+HgU/CwIRBDAIgB4AMCAgMfEAIMBDAIOCBgQYCIwQMCPYJTBAQI8BBwUHEoN/8P/IYN/+AvBj4LBBwOAj/7BwZGB/4ABBwXAAQIODM4QOFHgIOC/4OBh4OCAYJGBv4OCn4OBHgJKBAYJkBIQISBaIYhCCwIOBSoTqBJQISBeYUHd4U+bYUwcAYAKA"); -katakana['RE'] = image(51, 51, "//AAocf/AFDgf/CQl/8AFDh/8AocB/+AAwc/+AFDg/+GX4ECgwyEgPgGQk+GQkP+IyDC4IyE//3GQc//gyDh//GQYYB8YyD//4GQc//wyDDAOBGQUH//gGQRvB/BlD/4DBGQU/CwIyCj4YBMoQkBBIIyBBAIYBGQIkBDAIDBGgIiD+AFBGoIyBv4eCGQIABJwQvBAAJnDEgTLCEgY8CIYLLDEgZVCAoZuBb4iaBfAj+EgE4AokAA"); -katakana['RO'] = image(50, 47, "/4AEn4FE94FE/YFE/wYF34YS4A1BgIYB+A8Cv/v/gFCj4YBAoUHDH4Y/DEbglDBQ8CAAYA=="); -katakana['YU'] = image(59, 46, "gP/AAX+A4M/A4fggEHAwf8BwIGD/4GBj4VFgYVGv4HDwEAh4GD+A+Eg46CAAf/4AGEj/4Coo6CCqJFBCot/KAIADh5QCQAhQBCrM/Myk/M3JQGh5QFMyIRBAH6NB"); -katakana['YO'] = image(50, 49, "v//AAefAonnAon5Aon+DDA1DgP/wA8E8AFDj/4AocHDFZjfDCJjxDD5WE/+/AonvAon7PgoYX/g3DAAQ"); + +const katakana = { +A: image(56, 51, "v//AAfwAon//AGF/wGT/gGM/A3F/BDEn/wJQoGCj4RB//gAxUB//AAwcDAwsH/+AAwcP/4tCAwMf/wGEn/8Awl/JYYGBKQkf/I9DAwJgBGwQGDGwRlBAwJsE+42DAwPzGwYGB+J7EQIIvDQIIFEAw5DEAwRDDgCIEAxCPBKIcAR4IhER4hnCLAg9BLAgoBAwgoBcQiCBMwj0BHogGBHogGBfoooEQQREFEIgGBAokAhAGFA="), +I: image(54, 55, "AAkEAws+AokB/wGEg//Awk//gTE//gAwcPCYt/CYkDCYsfCYv//A0F4A0ECYg0BCYggBCYn/KwhBBGgl/EAgtBEAgMBEAZOBEAgMBEAYZB/+ABggTDBgQnDAoIaDJoIaDFgIABDQQFC74aBBgX8v4aBEwWBDQQgB/EHDQQ6BwEfGoX/+AJBDQMDWAKMBDQMPAQIaDiBFCPAgaDU4hrDDQiuDDX4acSAIaCA="), +U: image(52, 55, "AAMP/gGE//ABlH/AAnvAon+Bk5EDv/vIgcHBkHPBgZwBBgn/Bi8B/+PBgcf/AMFw/wBgYEDgED/6qEv4MEKYK3F8AFDj7EED4LREv/4CQn/wASEFginBDAgfEDAIfDn67BC4YABH4QXBCQcHZoQkEEoYMCHAYlBFYZEBLwk/MgpQEAAw"), +E: image(58, 45, "h//AAfwgYGE/0AAwn/wE/AwngDgv4DjhDCv/wJQkf/gGEg//AwkB//AA4gc/Dn4cjbAv/34GF94GF/YGF/wcjwA="), + O: image(57, 54, "AAcf+AGEh/8AwkH/wGEgf/AwkB/+AA4n/4AGEv/gAwk/GIsf/A4P/4AE+F/Awn4n4GE/kfAwn+h4cFg4GFwYGF4IGFKwYFBMQpxFAwJxEAwJxEAwJxEAwJxEK4JxEAwKqEMoQGE/o4En/8HAl//iqEAwKqEv/+VQgNBVQgNBcYgNBcYhLBcYhSCHAQKBAwI4CAwY4CD4IGBHASxBAYI4CAwY4CYwIGBHAQGBD4I4CBIJfCHASmDHAV/PYQ4Cj5QCHAUPLwQ4CgQGCOIgABOIgABHAIGEAAY="), +KA: image(54, 54, "AAMP/AGEv/gAocB/+AAwcH/wTEj4arg//AAf+j4GE/F/AwnhAon/w4aZHAMP/hTEn/wKYn/4BTDgf/KYgQCDQYQCBIQQDBIQQCBIc/DQouCDQQuCEghJBEhITBH4RTBLoRTEBIJTGCAUPNwoTCDQQWBDoIuCj4TCJIX/CYQ/BZQInBH4U//0HwBTBGgPwXAXwh4PBXAXAv4PCZIIgBEYTJBn5SBDQXABAIzBCYJcCDQXwgbOCAwIDBQgI4CgEOJwIADkAGFA"), +KI: image(58, 55, "AAU+Awv/4AGEn/wAwkP/gGEgf/Dkk/CAc//4ABwAGBj4GC8ATBAAf4h4GE/woBAAmAAwvgFAYcIwAcD/BFDFARFD/kBIoYACv5FBAAcfRL94DgkfHgf/95EBD4RgDD4MHLwf8AogAd+CPFGwiJCS4XHJgSGB8CJEkCJJUwYABg5pDD4amTNwKmXYbgcDLoY="), +KU: image(55, 55, "AAMHwAGEh/8Awkf/AGEv/wAwn/4AFDgf/EQkH/whF/4ACAwM/AoQQCBgY5BgIGDHIMHAwY5Bh4GD8AhEIAQFDIAIhBBIJACEIJpEj45CNIV/NgRpBDQIrBEoPgDQJlBEoQaDEoV/RwUP/wPBQ4Uf/gPBQ4QsBKAKSD8BvCSQXDDQYYBNYIaCGYIqBDQU//kPXoYYBj5QCEIPgj60DKoMcWga7FKoYABKogaDbojPBbojMDGob/ECYJBCbgYaDE4IaEPoIaDEAI1EbYQZECYgtBCZQGCLol/KwxxEAwJqEgIMFgIZEgA="), + KE: image(60, 54, "AAMcAwsD/4HFn/wBxl/8AGEg/+BxkP/gOF//ABxcB/+AA4kf/BCGAAZOBv4HEIQIOGAwgOBh4OFGYIOFn4OFEgoOBAwvgh52BKgYDBOwJUDv5nBBwY6BAYM/BwIKBJgJjBBQSbCWoQVBRgK1D/4oDBwJJBWos/WIS1CgIVCJoRGBWowCCj61HYgpRCdIjEGLgTLEIwTLEfAv/GYqtBEghyBGYjoCAwwkDAwQVEYwYjEHQt/CopeBQgQOEIIgOBPgxeFgZ7FA"), +KO: image(49, 46, "v//AAYFF34FE74FE94FE+4FE/IFE/gFE/w0Dgf/AocB/+AAwf/4BHE8AFDn/wAocf/AFDh/8AocHGH4w6YZf7Aon9YYoFEejBhEAAIA="), +SA: image(58, 53, "AAcD/wDBg4DC//AgEB/+AgE/+AKBv/ggEP/gGBj/4DgP/DnU//4A34CQ+DAIcEDAIcDDAQDDDAYDCDAYDD/4cDIgJADAAUfIAQACh4jCAAUHD4QACJwIfBAAQtBEYgGBI4QUDFQkP/4qEVYQvEAAIxCEIK5CBwV/AwsfAwocCAwYcCJogcBNIp3F"), +SI: image(56, 52, "gFwAwt+Awv/8AGF/gFDgP//4GGCocDAwIVDBoX/wAHCn4VFg4GB4AxEAwsfAworBEQYABv4GFj4DCjgrCBQYRFn/4JQfAIgIGD+F/JQcD/gGBMARQCOwcH/wNBCoUP/0PAwIrBj/8OwQGBn4fBGIIGCAQIlB+BcBAQKvDBIQRB8AfBIQUH4AXBP4RXBGgJmERoJsFAwv//yaFbYghBQIYaCeAi9FPQTZGdxKFCFASECFAZPBEIgNCJQaZEAwhDDAwRJDTAYGEQAiQBPIgAGA"), +SU: image(60, 51, "gH/AAYGBh4GD/AOG4AOF/gONDo+ABxAACgY7CAAd/+AGEg4OG//gAwkP/wGEgJCCAAcfKIQzEIQIzEIQozOj4zFEgIzFn4kHGYv/M4okIGYt/IQqXBFghuBHYs/bAY6DCwrJECod/HgYVB8ZLEcoMfLQYECCwYVB+BTBCwT7CCwYrBAYIKCCoQDC8BXBEIQSBNoQVBBYP4EAIoCOQPHCoYTB/xdBIwQ8B+6SET4N/dYn/4aCFFgKRFgC+EgPghivEAoI"), +SE: image(57, 53, "gEH/wGEgf/AwkB/+AA4n/4AGEv/gAwk/+AGEj/4AwkP/g4JjA4EBQQ4D/4DD4E/AwIuBv/vAoP/FwILCAAIuBv4GEBgn//wFEAwITEh//CgfwAwMfCIRGB/4BB/5xBAgJTBIQQGBwP/75CBAwOAD4JCBAwRmDDIKYBOIQGDOIQGDOIQbBAwSqBAwiqBAwiqBDYg4Cv4GCHAUfAwQ4Cg4GCHAUBbwbjnHAgADcYYADUYQxEEYq6CVwbDBdQi6CZQYqBAAZcCAwY1BEYi5DAAQ8CegfgA="), +SO: image(52, 52, "gGAAol8AYUD/Ef4AGCn/3/wFCg/+v/wAwV/8//Bgk//AMD8f/FoQMBj/8Bgfg//gBgcPFoYMBFocP/kHFof/4AtDBgMDFoYMBFoYMBgIIBgADBwAtDj4dBHQQMCFoYqCHQQqCFoc/BIIPCCwQtDKYIpBB4IwDIAQwCh45CBIVAFgSmDFIaaDOIYfCVgYfBRYYfCTASTCUoY1BQgZPCD4l/D4kfH4g4BH4YYBH4gFBGQd//4yDBYIyDn4SEJQIlEBgRXEHAg+BFYZRGZYQADBYgAG"), +TA: image(55, 56, "AAMHwAGEh/8Awkf/AGEv/gAwn/4AFDgf/EQkH/4oF/4ACAwM/AoX+FAQGCHIMBCYY5BEIIAC+AhFIAIhDHIQFDF4IhBJQMHF4JDDNIUfHIRpCv5sCn/wDQJsCDwIaBEIIKBwEf/9gOAQaB/gbBFAIPB+YsC/AaB54RBFAIaBAIOAEoJvBOgPh/+DNAJWB+//DQPBQIZyBM4f4LQSQC8EPKAIpBFAMPPgKKCgEcYIZwBiAGDbohwEZ4bdEFILxFf4ghBXwLjEDQhLBCYoaEE4IaDdIQaDBgLBCDIRQENYYTIewRkEAwJCFHYicBOIkAEAhDBS4IAJ"), +TI: image(57, 54, "AAkGAwsfwAGE//gAocP//wBgn//gEBgIFBAAIeBAof/wAYBAwkHAof+gEDAwf4E4YAB4AGBv4TDAAM/AwoxDKQhABLQwiCAAV/MIglBMIglBHwRwDNARbF//3Awv7Awv9Awv+Awv/MQQAD34GF74GFKAUHOIYABSAJxGaYp4Uv54FP40/P4oGHQwQGKKgt/AwrUEMIQGEVYIGLg4bMFII+Fv5TGNAsPQgsHTIoAG"), +TU: image(54, 53, "AAMBwAGEj4FEgf8AYPwgFgn/4BIP/g+Av/ggEP/n/gP/4EAv/v/wQBFQP/z/4CAMAg/+DAMfEIICBDAN/FgN/8YYBBAIaBw4hDDQIVBAYMAn/wDAIhCCwIhDCwIBBwAIBHAIYBEIQYDBAIuBwAjBFQghCJgQhEAIIhDEYQPBh5HBM4IhDQQQhCwYeBCwMBCoSPB/0CIQQhBAQKWDvytBCYTBDv5tBZYYTCAAQTCAAYTFHAITEj4TF/4TEh4TFv4TEg//JgIMDMYIMEO4ImD/53BAAM/AwIsEEAgFBEAZNBIIgTCFocfJwo6BPgpHEgZAEgEOAogAGA=="), +TE: image(57, 51, "h//AAfwg4GE/kDAwn+gIGE/8AAwuAv4GE4E/Awngj4GFNWJNF/gGF/5UF/+/AwvfAwvvAwv3Awv7GJn8IQV/4BJEv59Fn/wAwkf/DJFEAYABg/+AwjJBAxbQBwAGFH4gGBH4gGIIwgGNG4IGEg//LYjyBAwiyBAxc/EQoGGFIJTLdYJvEgF+fIsYAwo="), +TO: image(42, 54, "//AAgU/+AECh/8AgUD/4U/CgYPDn//wAUC/4VCCgIlDAgIKCCgIKCCgP//wUD//gCgQKCn/zBQQ+BDYP8CgMBEAQBBj4KBKYIKC54yBBQP7KYIKCG4QKB35YBBQIUCGQPjNAUD+BXDnB9Dgy8/CicAA="), +MA: image(57, 50, "/4AE/l/A4s/AwvfAwoAN/YGF/oxGHokf/wGLh4GN/4GSg4GChgGDwARBAw3gAwv4Awo7BAwn/4ACBAwIKB+AGDgJtBAwcAUgOPAwYLB94GDgaFCAwTBDAwcfAwoyBAwgyBAwgyCAwgcBAwgyBNgL0ENgIADn6oHDijhFW4wcB4AGDKwPwBwl/fwzUJDgZOFgAGGngGFhADCA"), +MI: image(52, 53, "gPwAwkf/wFDgf///gAwU/AwIVCBgX//AME//8gEHAoQGCBgYGCv4GDFIMPBggoE4A2CCoIuCAweAAwc/BghYBMwswNw0PNwkBGAIbEG4gMCOoYMCOoQMDAwRnE4BYDKYQTEKYRuCKYY8GgCjDAAV+LAtgcTMDbYhTCHobICBwbBDBghZDZwmAZoYGCAogGBCYgiBEIidCBwQ2DS4QMCVYT2CSAb2DBoLpFn72EdJAA=="), +MU: image(59, 54, "AAMDwAHFv/AAwkf/gVF/4VG8AGEh4VHFgoVPFdZBdRogVBgP4CokBFogVBn/wTIkHEwYrCv4ODCoMP/wVDFIP/JYQVCBwgVBGYLICCoTIDCoQCBBwQhCn5RCCoR/DNoZCDDIRRDCoQODg4+CIQYvGCoZCCCoZRDAQV//4SBRAM//4ABwEfAgQAB/ARBAAkPAwvxAwv+Dgv/8YGF/gkD/xCB543DH4P5AoaBBewsAvgGFhgGFAAQ="), +ME: image(55, 54, "AAcB8AGEgf/AwkP/wGEj/8Awk/+AGEv4iF//AFAuAAwcHFAsPFA34AYNwFAQvBgICCFAUHCAIoDDwQoDn4DBKIf/MYIoCDwIGB/5RBAwWDKIYGB456Dv//75RDAwP/JQQmBAwJ6Dj4GBOYYGCOYcP/5zEg//OYgGNDYw3BAwgvBAwaABAwgaBOARZC/wGDOoP8MQI1D+AGDFwPAAwJaBDAQNCJIc/AQJsBTYL3COQc/4ATBXoYdCSgU8J4SNCmCNCNQqoDAwQuBAwgFDFAITEAwK1DAAKZEAAIMFAA4="), +MO: image(55, 49, "j//AAfAv4GFAon/wIGFgYFE/0HAwn8h4GE/AvF8A4Bv4DCAAQzBAocB/+AAwYxBCYkH/wGEh/8MIv4Awk/+AGEGyJfFAFP9AwpOBNuikeAwxfEHoLpFNoZACAwZABIgIACJYYABIAYGCIAYwCHIoABA="), +NA: image(57, 55, "AAV/8AGEn/wAwkf/AGEh/8AwkH/wGEgf/AwkB/+AA4n/4A4rGoIAE/IGF/wGF/9/Awu/AwvfAwvvAwv3AwpQCOOqqEWLV/H4pGGn5GFAw0fJosfJooGGn4GGKgq6BLQoGEg4GFh4GFPoIpEDYIwFv5MFLQ4GFg6EFgaZFAAw"), +NI: image(56, 43, "h//AAf4A25+/AH4AuWggA5A="), +NU: image(55, 51, "g//AAcAh4GFj4FD/0An4GD/kAv4GD/EADQnwgIGE8EDAwnAAwuAIIgvBAAcPF4IADn4vBAAd/8AGEFAIDBAQIsBFAMDCAIoDh4eBj4oCj4GBFAd/CIJRBgBZCAQIlD/+HQIIGD54oCNwZKDPQZPDOYRdDOYqmBOYi0BOYjCBBogGGYQSAEAwimDGATdDAwQTBH4JFBLIP8AwYTB+AqBAwITB4AGBE4bADBIJyBUIJ6CVgXgJAQzBg+BAoJkCgxcBCYRIEPArlEH4YGDO4ibBeQs+AokAsAGF"), +NE: image(61, 55, "AAX/4AGEg/+Bws/+AGEgP/wAHEh/8Cwt/8AGEgf/Bwsf/AMEAAYnBj4GDHwQOEDAMHA4hVBn4WFJIIADHwMPA4hgCAwZkFCQKCGBwpHBPQwOFFAJyGBwt/BwozBBwpwDGYiYEEgP+iAkF4IPDCoP8j7WCUAXhbwYVB/4RBU4n4QISfD54vBS4f+FASPD+AEB+AFB/IjBFIPnA4LzCGAfAeYIjBGAP4eYQCBwZuBeYUH/EfIwJRCAoIDBg6ACnCmDR4oqBDIKfEHgKuFS4g5CBwo8CWwqOCAAQ8DcYg8Vn48FAAo="), +NO: image(47, 52, "AAcHAokP/gFDj/4Aod/+AFD//gAgUB//AAoUD/4oE/woJn4oLEQYoBwAoIh4oEj4oFJZ8HERU/EQhFEDgIiDH4JFDh4iEH4t/NAYcFHII/Dj4cEv4/DCwIcDCwIcDCwI5DCwhEBHIYQBKwf/GYYhBCwc/FoYKBFoYEBFoQKCE4RrBE4YFCHwQyBHAYnBJ4YFBcBN/AgcAPgYABA="), +HA: image(62, 52, "AAP/wEH/gGCgf/gE/+AHCh4MB//AA4QMBCIQeD4ARCDwv4Dwt/8AeEgI4BDwkH/weFj4eEAgIeF8AeEAgQeEAgQeEAgQeEAgQeGMggeCMggeCQYiACQYYbCDwgbCIogbCIoZZDIoYTCMggTCEwn/CYJFDBYZFDBYYmDv4LBEwYDDg4aCh5JCDQYiDaIQWBNAQ5CMAYLDcgYmCCwgqCGIYTBFwL7EJIIWEAgPgh4WDNAPACwgMBCwiHB/wWEFwV/CwZVB/YWEDgPHXgYuBDwLbDKQPwh60CGwWAngGDgAFBkAHEsAFEAAQA=="), +HI: image(47, 51, "//AAgUB/+AAoUD/4QDg/+AocP/gFDj/4Aoc/+AFDv/gFw8BwIuDj+DFwf/FwcP/4uD///FwQKB/wuBJwIFBFwM/AoP8//PAgP/+IDCAAJdBAAXwg4FDEoQKCIIIgCLoQFBKYV//5qDB4aMuF1YFDFwIRDUIQAC+YFE8YFE44FEw4FEUgn+Aon8WwhKBXggA="), +HU: image(49, 50, "/4AEv4FE34FE74FE94FE+4FE/YFE/oFE/w0Dg//AocD/+AAoUB//AI4ngAod/+AFDn4FEj/4Aon8AocPAokHHgg2BHhYFDHgJCLJBZCEAopIFAoxIEAoxOEApc/AojSBbwplEAoZxBAocPAojICBQhBCGYIFDBYRZCa4P/NYQuCPoYFBSoZGFZYsPAgYABA="), +HE: image(61, 43, "AAMH8AHF/4HFh//wAOF/wOG/AHEv4eFg//DwoOBDwgOCDwk//YeEgf/x4eEn/8n4eDgP/4AeEj/8DAIeCBwPgLgkfDYIeECYQeDh4LBIwIeC//wDIIeCBYJdCDwV/BwIwBDwIOBCQYeBn4pCDwRIBIAQeCMIJPD/AOB4CED4BhBMwf/MISbD/kHPovwj4ODDwV/UYhYBKQJ2DRoIGDHQINEcARCCWYgGEDwIOFgb+FDwL2EDwQGFIQoeCBw0YA40AA=="), +HO: image(61, 54, "AAV/8AGEgf/Bwsf/AHF//AAwkH/wOFn/wAwkB/+AA4kP/g8Rg//AAngv4HFCYIAE/EfA4vAAwv+Eo3wn4HFwAGFJwZ5UgfAPIJzDn/x/+PEgR/BAoJzDP4N/8JzD//D/6KDFYI8BCwYrCCAItBPQOH/wWDCgIQBCwf/4P/wIWCCQIBDWgYBCZ4KJBE4LPDEYInBh5sBBgKLBNgQ0CJoIWB4ACCBgIiBBwP8EYU/TQLXBHQQECFAI8BCwIqB8DzCDYMPAgQbCMoI3BF4IRB44OBWwQUBv4TBJIV//InBHgQCBw4OBHgUH/EfNgKOCj0A3BsCQwNgeaSdCABA="), +N: image(54, 50, "ggGFngFEgP+AwkPAws/AwkB/4GEh4GFn4Gaj///gNF/AGF4BEJAwITBgOAAwQTBh4GCnwJCCgVwLgRwMHAgTBHAgTGv4TEgYTFMIITEMAsHMBY0B+ClFCYiPFEAITEv//OIQMCTg3gBgggEDIIgDGYIgDMIJVDDAIABIIILCFoYYCJwZ0BHQgsBBgZnBBggnCKgYhBMIi3FgAFFgAA=="), +WA: image(51, 50, "/4Ay4A3E/AFCh4GBAoUBAoPgAwU///8AoUHBgOAD4nwAoUf//+AoUDGRYSBGQYSCGQd/94yDh/9GQZFB34yDn/zGQcPAgYSCG4YSBC4YSNv4SKJYJwDLwISEn5QDS4QSDDAJjDDAJ2DGIJ2DUYQ+DQYKcFFYYXBDASOCGIQFDGIQRCDwTaCG4YFBEgbHHN4hiFg6HEA="), +WO: image(50, 52, "/4AE34FE94FE/YFE/wYYGocB/+AAwd/8AFDn/4AocP/gFDgf/KovADAnwDB43B45EE+IFE/F/KAkfBgmHAonhAonwDAn8h4MEN5X/N4l/N4k/KwkfRwgoBDwcHOohoBOoYFBEgY2BEgYFBEgYFBJIYXBFQYpBFQZ3CAoIWCKoQQCGwQLDHgR8CAoQdCAoQvCOYYFFn5gENgKREbYgAGA"), +RA: image(51, 50, "n//AAcHAongAon8j4GEwYFE+F/Aof+h4ME4IFE/BYr+4FE/wFE//fAon7BgpYE//vAon9CQo3Ev/gAocP/gFDgP/wASX+ASJgYSFXwJ2ECQivBDAoSEWIs//wFDbYIrDAoI+DAoIYDQ4IYCFIIABDALlDGIJhBewS/EJQQYCG4YkED4QFDD4JJF4AFDA"), +RI: image(43, 53, "AAf/7/4AgMf/f/AgMD/9/8AFBv/v/gEBh/9/+AgEB/+/+AKBn/3/wEBg/+//AFX4q3v4qDh/8FQQPBz4PDAYQvBEYQvCEYI/CGYRPBB4cfIYQpBB4cH/5TCDwJjD/4kCn4EBCgN/AgIUBDoP/FIJHBAAIyCDIYjBIYYaBQ4QaBJoZHDAAoA="), +RU: image(61, 53, "AAUH/wHFn/wAgUB/+B/+AA4UP/gBBCgd/8ABBAwUD/4BBBwcf/ABBA4f/4ABBHQg8FHQI8/HksYHgwYBHgkPF4I8EvwlCHwOAg4gBEYI8CCIQjBHgITBCIP+HgU/CwIRBDAIgB4AMCAgMfEAIMBDAIOCBgQYCIwQMCPYJTBAQI8BBwUHEoN/8P/IYN/+AvBj4LBBwOAj/7BwZGB/4ABBwXAAQIODM4QOFHgIOC/4OBh4OCAYJGBv4OCn4OBHgJKBAYJkBIQISBaIYhCCwIOBSoTqBJQISBeYUHd4U+bYUwcAYAKA"), +RE: image(51, 51, "//AAocf/AFDgf/CQl/8AFDh/8AocB/+AAwc/+AFDg/+GX4ECgwyEgPgGQk+GQkP+IyDC4IyE//3GQc//gyDh//GQYYB8YyD//4GQc//wyDDAOBGQUH//gGQRvB/BlD/4DBGQU/CwIyCj4YBMoQkBBIIyBBAIYBGQIkBDAIDBGgIiD+AFBGoIyBv4eCGQIABJwQvBAAJnDEgTLCEgY8CIYLLDEgZVCAoZuBb4iaBfAj+EgE4AokAA"), +RO: image(50, 47, "/4AEn4FE94FE/YFE/wYF34YS4A1BgIYB+A8Cv/v/gFCj4YBAoUHDH4Y/DEbglDBQ8CAAYA=="), +YU: image(59, 46, "gP/AAX+A4M/A4fggEHAwf8BwIGD/4GBj4VFgYVGv4HDwEAh4GD+A+Eg46CAAf/4AGEj/4Coo6CCqJFBCot/KAIADh5QCQAhQBCrM/Myk/M3JQGh5QFMyIRBAH6NB"), +YO: image(50, 49, "v//AAefAonnAon5Aon+DDA1DgP/wA8E8AFDj/4AocHDFZjfDCJjxDD5WE/+/AonvAon7PgoYX/g3DAAQ"), + +}; +const hiragana = { // hiragana -hiragana['A'] = image(52, 50, "gEB/wGEn/AAocD/gMcg//AAfgv4FD/wMYFIRNa54HDgYyCBgYsEBgX/+AGBHQYpBCQQaCh4JBJQPwgIdBBAP/wASB4H/j/8MIP8j5fBBIP/4P8gf+j/7/hVBj/jA4PH/C/Bn4RBv8Aj/3/Ef55FB/9/wI+D+/wj40BHwIWBL4QJB+BFBwAmB/4MBD4M/94MBD4JAB/4cBNYN/BgM//AsB/n/z4bBQgOHX4QVB/B3B/CQCAQTSC8BFCB4Q4CB4UAgIIBRQOAXojREn/gaIgAC"); -hiragana['I'] = image(58, 50, "v/gAgUggEf/AGCnkAg/+AwU/gEB/+AAwQZBDgcP/gcECQIcFCQIJCCol/4AGBgYLBj/wCokHCAIABFAIQCCon/DgQECn4cDCoItCAAI+BDggVCLoZeB+BgCCocPPQZUBwZdDJAQcEGAIcEGAIcEGQPDDghIBDggyBDggyBx4cBjxIC8aaCCAIyBLAMDM4IyBSARnC//HUIk/+IyBCASdBLAJKCGQOf/kDJQV/GQRKCJ4XgEYRPC/CoCDgOHNwl/8P/84jCDgM//5HCDgMHAwIjBgP8DwIsBQgYVBSQgVBaYZnCTIgtBbQhDCUAYkCfwYOCGIgAHA"); -hiragana['U'] = image(46, 50, "h//Aoc////8AFBAgIABgEDAofACwIAB/wWD//4CwgdBCIeAFQUfCwIADCwIAMj//+AEBv4tDAgQLBHAYFBAgf/8YFE54FECwRTB/wkCAoP7IAd/OgR2CKwcBQ4kH/hMEJYQcC4AWIh4WEn4tJg6EEj6EEVgIQDE4l/CAbABCAZqBBQgQDBQIQCXwIyCYYTIFeIhlCBQjxCLIQWBMgbdFvzYJ"); -hiragana['E'] = image(55, 50, "gF//4GE/4AB+AFBgIGC/+AgEDAwYNBg4FC/wGBh4GC/gGF/ArFFIQAD4BRVn42FLAIGEJQYGBLAhEBLAhEBLAf/8ArDBIIyEj5fCRYZYEEgJYEN4JNFDQouFDQKcBFwYGFMIIGDLQRJFAwgaBOYQuC8Y2DFwODAwcP/0HXAc//EPcQnAj5LCPAU/MwR4Cv5ECPAQ9CLoUBd4auE/guBVwf5PARaC+5qCAwXnJwSXB//HI4QGCw5ACAwUHNIn+gj/HAAg"); -hiragana['O'] = image(54, 50, "gEB/0AggGCg/4gE8AwUf8EA/gGCv+AB4QaDv/wDQn/CwIaCgP/4AaDgf/wAaCgPn/4PBAAXv/0HAwef/kfAoX+n/4v4GCAgPxCYfg/4jBAAWBGwQ1BgEDJoJQCJoJRBLYcPCAJrCgEcKAaGEHgSGDF4QPCJYYxCHoYMBn5YDBgoGBDIP8FQKiBDwabBFoIzCv/gEAJQCMwWfKAIbBh58BDQMH/l/4IaCh/xTgIaCn/P/BrD/8/4CGD/i3BDQfz/gaDv/P+AaCCAIaEHQQaDv/hGoV4h//g4VB8JnBa4ePZYRkBBwKNCbwPwCYR/C44CB4BtBfgSaD8ACBYQQWBAAYA=="); +A: image(52, 50, "gEB/wGEn/AAocD/gMcg//AAfgv4FD/wMYFIRNa54HDgYyCBgYsEBgX/+AGBHQYpBCQQaCh4JBJQPwgIdBBAP/wASB4H/j/8MIP8j5fBBIP/4P8gf+j/7/hVBj/jA4PH/C/Bn4RBv8Aj/3/Ef55FB/9/wI+D+/wj40BHwIWBL4QJB+BFBwAmB/4MBD4M/94MBD4JAB/4cBNYN/BgM//AsB/n/z4bBQgOHX4QVB/B3B/CQCAQTSC8BFCB4Q4CB4UAgIIBRQOAXojREn/gaIgAC"), +I:image(58, 50, "v/gAgUggEf/AGCnkAg/+AwU/gEB/+AAwQZBDgcP/gcECQIcFCQIJCCol/4AGBgYLBj/wCokHCAIABFAIQCCon/DgQECn4cDCoItCAAI+BDggVCLoZeB+BgCCocPPQZUBwZdDJAQcEGAIcEGAIcEGQPDDghIBDggyBDggyBx4cBjxIC8aaCCAIyBLAMDM4IyBSARnC//HUIk/+IyBCASdBLAJKCGQOf/kDJQV/GQRKCJ4XgEYRPC/CoCDgOHNwl/8P/84jCDgM//5HCDgMHAwIjBgP8DwIsBQgYVBSQgVBaYZnCTIgtBbQhDCUAYkCfwYOCGIgAHA"), +U: image(46, 50, "h//Aoc////8AFBAgIABgEDAofACwIAB/wWD//4CwgdBCIeAFQUfCwIADCwIAMj//+AEBv4tDAgQLBHAYFBAgf/8YFE54FECwRTB/wkCAoP7IAd/OgR2CKwcBQ4kH/hMEJYQcC4AWIh4WEn4tJg6EEj6EEVgIQDE4l/CAbABCAZqBBQgQDBQIQCXwIyCYYTIFeIhlCBQjxCLIQWBMgbdFvzYJ"), +E:image(55, 50, "gF//4GE/4AB+AFBgIGC/+AgEDAwYNBg4FC/wGBh4GC/gGF/ArFFIQAD4BRVn42FLAIGEJQYGBLAhEBLAhEBLAf/8ArDBIIyEj5fCRYZYEEgJYEN4JNFDQouFDQKcBFwYGFMIIGDLQRJFAwgaBOYQuC8Y2DFwODAwcP/0HXAc//EPcQnAj5LCPAU/MwR4Cv5ECPAQ9CLoUBd4auE/guBVwf5PARaC+5qCAwXnJwSXB//HI4QGCw5ACAwUHNIn+gj/HAAg"), +O: image(54, 50, "gEB/0AggGCg/4gE8AwUf8EA/gGCv+AB4QaDv/wDQn/CwIaCgP/4AaDgf/wAaCgPn/4PBAAXv/0HAwef/kfAoX+n/4v4GCAgPxCYfg/4jBAAWBGwQ1BgEDJoJQCJoJRBLYcPCAJrCgEcKAaGEHgSGDF4QPCJYYxCHoYMBn5YDBgoGBDIP8FQKiBDwabBFoIzCv/gEAJQCMwWfKAIbBh58BDQMH/l/4IaCh/xTgIaCn/P/BrD/8/4CGD/i3BDQfz/gaDv/P+AaCCAIaEHQQaDv/hGoV4h//g4VB8JnBa4ePZYRkBBwKNCbwPwCYR/C44CB4BtBfgSaD8ACBYQQWBAAYA=="), -hiragana['KA'] = image(55, 49, "gEH/AGEh/wAwkf8AGEn/AAwl/wEAhgGC/4CBngCBgP+AQP8AwMDAYIyDAYUPAwQ2CAwY2Cj/4gP/AAP4j/wgYGC/gGBg4GC/0/8EPAwsfCgd/4E/Awt/FIf/LgJmBE4IGCMwMf8JjBHwIPB4IDBgZmBv+DAYMHMwP/BQRfBOwIKCL4J2BOIQvBAgJxCGQIEBHAKPCCwIYDCwQBBQoRGBviIDIQJRC4AdCXAYdCKIcHboQ/CboY4BboghBboZKCFAYhBjAoDh/8nzME+CfBF4V/RgP/EgKVBwYGBFAMH/zIBFAQeBAwIoDboRRD4DrBJQUHAQJsDAAwA="); -hiragana['KI'] = image(48, 50, "AAMB+AFDh4FL/AFDg4FIn//AAX4ArpHC/xNEAov/LQgFCDgYAlF4UfPx8/g/8CoQbBKgQhCAoMDFAkHAoeAh4FEDgQAB4E/FgIUBwE/HwQdBn/gAoM+AoPAAoMMAohFCAqIpCgI7C4BEBI4oICAoZfE4C9BAob2EAoISCaQgACA="); -hiragana['KU'] = image(33, 45, "AAsB4ADC+ADC/wDBgf/wADMg//CYIDDh4DDD4UfAY/8AY34AZRDCh4DCg4DCgYbCgI/CgH/BgU/BgREBBgIQB8AMCFIRNDLoJ2Cv42DJwQdDFQIdDFQQdDFQIdDHYRkDgYhCgADDnwDChyzE"); -hiragana['KE'] = image(50, 49, "AAUB/0Ag/gAwN/wAICgEfBIIIBB4P4BAYPCh/wDAcD/gYE/4FBDAU/4AYEGIgOCDAQOBh//AAP+v+DAoX/7/AAof3+E/AoX9/gYD/9/gYFD/4YE/5QCGIJQDHYRvCJQU/N4JKCKAYYCKAQYWmAYEjwYEx6lDh/zUocDMgIYDv6cBKgUf/4yBBAMH/4eC4EBNQUfAQN/DYMPE4TjCAQQkCYgSJBDYLEBn7QCAQIbCE4UDDYP/PIV/CgLpD4EPP4UH+AkBAoIACCgIADh6LCAAMDAoYA=="); -hiragana['KO'] = image(52, 50, "h//AAX+gAFD//gBgn/BgvwBiWAAon4GwUBDIQACCQQFCn//4AFCg4lBCQc/DwYfBKQJdEDwYAB8CIihAFEgJJDIgQFEg5KEMgITEj/8D4hwED4JqEOIIfEv5eEg4fEFg0PHIwsEBigmFCYkOv65CJYPnbgn+ZgIAD8IMFewvgCYjRBE4IMDegQABIoUfAoK7HA=="); +KA: image(55, 49, "gEH/AGEh/wAwkf8AGEn/AAwl/wEAhgGC/4CBngCBgP+AQP8AwMDAYIyDAYUPAwQ2CAwY2Cj/4gP/AAP4j/wgYGC/gGBg4GC/0/8EPAwsfCgd/4E/Awt/FIf/LgJmBE4IGCMwMf8JjBHwIPB4IDBgZmBv+DAYMHMwP/BQRfBOwIKCL4J2BOIQvBAgJxCGQIEBHAKPCCwIYDCwQBBQoRGBviIDIQJRC4AdCXAYdCKIcHboQ/CboY4BboghBboZKCFAYhBjAoDh/8nzME+CfBF4V/RgP/EgKVBwYGBFAMH/zIBFAQeBAwIoDboRRD4DrBJQUHAQJsDAAwA="), +KI: image(48, 50, "AAMB+AFDh4FL/AFDg4FIn//AAX4ArpHC/xNEAov/LQgFCDgYAlF4UfPx8/g/8CoQbBKgQhCAoMDFAkHAoeAh4FEDgQAB4E/FgIUBwE/HwQdBn/gAoM+AoPAAoMMAohFCAqIpCgI7C4BEBI4oICAoZfE4C9BAob2EAoISCaQgACA="), +KU: image(33, 45, "AAsB4ADC+ADC/wDBgf/wADMg//CYIDDh4DDD4UfAY/8AY34AZRDCh4DCg4DCgYbCgI/CgH/BgU/BgREBBgIQB8AMCFIRNDLoJ2Cv42DJwQdDFQIdDFQQdDFQIdDHYRkDgYhCgADDnwDChyzE"), +KE: image(50, 49, "AAUB/0Ag/gAwN/wAICgEfBIIIBB4P4BAYPCh/wDAcD/gYE/4FBDAU/4AYEGIgOCDAQOBh//AAP+v+DAoX/7/AAof3+E/AoX9/gYD/9/gYFD/4YE/5QCGIJQDHYRvCJQU/N4JKCKAYYCKAQYWmAYEjwYEx6lDh/zUocDMgIYDv6cBKgUf/4yBBAMH/4eC4EBNQUfAQN/DYMPE4TjCAQQkCYgSJBDYLEBn7QCAQIbCE4UDDYP/PIV/CgLpD4EPP4UH+AkBAoIACCgIADh6LCAAMDAoYA=="), +KO: image(52, 50, "h//AAX+gAFD//gBgn/BgvwBiWAAon4GwUBDIQACCQQFCn//4AFCg4lBCQc/DwYfBKQJdEDwYAB8CIihAFEgJJDIgQFEg5KEMgITEj/8D4hwED4JqEOIIfEv5eEg4fEFg0PHIwsEBigmFCYkOv65CJYPnbgn+ZgIAD8IMFewvgCYjRBE4IMDegQABIoUfAoK7HA=="), -hiragana['SA'] = image(51, 50, "AAMB/gFE/+AAwcf+AFDgf+DIl/4AFDg4fEgAfLgIfCj//AFQzCn/gLJYMELI5mEh6GGBgUHGAP4CAQ3COYILCBgUDIgYZBAoYmBn5REDwPgQQPgDAIVBj4fBJ4d+CQI1CgeAXhgSDKoYSEQQp1GQQpFBawXwD4IGBg42BaQngBgRlDBgmABgjzBRYZDCPIYvCv//MQoACA=="); -hiragana['SI'] = image(45, 50, "v/AAgUD/wKDj/wAof/wAECg/8BQc/8AbD/4bE/AbEFgcHFgk/FgcBFgkPDYhIgFgIKDFh8eFgn+FgcH/4sDv+/FgUD/osDn/vFgQ2BFgcf+YsD/+fFgUP/gsDv/HFgSKBLId/8IsCHgIXBSod/EIIKBwIhCv/4h4WBAQOAv/+IIP8AQIAC4AYBAAIkBn4KDJQIKDCwYpBCwRWCAoJhDAoK1DAAg="); -hiragana['SU'] = image(52, 50, "AAUf8AFDgP+BjH/AYP/AAnvAon+BjJAUgf9BgZFB/4MDn4kEg4MFGIwMED4QME+E/+AyC/x0DFgPABwIMC/gMGDIn8gYMFv/4EwcP/+AKYf/BgRACBgYRB/4mCgF/AwJ6DBgoTCRohNDTZE/VAkP/gFDE4PAUQhGCI4YeEUIgYBD4gMBEpI4GgIFEAAo"); -hiragana['SE'] = image(56, 50, "AAcP/ADB//AAwP8AwkHA34FBAAn+A1JalmAGFvinFv4GF//PXghEBAwfBAwoNGEQP/+AGDn4GFh//8AGDg5PCgF/AYP/wAGEgj/CAwQADAw4mCAwZCCAAQ8BFQgGBAAQGBj4GFJQIGEJQIGEgYGFGIIGCIQQVDHQgACA"); -hiragana['SO'] = image(53, 50, "gP/AAXggEPAweAgF/AoX+gEDBgfwgEfCYoFD/EAg4MFAAQMCAAQwBBhQpBJQozBAAU/IAIACIYJUBAAV//gsJD4IsEn4sEOAn+NIn/+4FEAA39AwvvAwqQDAAP7UYhmCx5bDuBVB4BCDg5bEJ4JoEgJ1EEQKCESwIFEg5vEEA4TFh4TFv4TGYgiLBCYrFG/5dDd4YHCOQKkBDQjbDDQQwDWgR5DAwSGEEAgAEA=="); +SA:image(51, 50, "AAMB/gFE/+AAwcf+AFDgf+DIl/4AFDg4fEgAfLgIfCj//AFQzCn/gLJYMELI5mEh6GGBgUHGAP4CAQ3COYILCBgUDIgYZBAoYmBn5REDwPgQQPgDAIVBj4fBJ4d+CQI1CgeAXhgSDKoYSEQQp1GQQpFBawXwD4IGBg42BaQngBgRlDBgmABgjzBRYZDCPIYvCv//MQoACA=="), +SI: image(45, 50, "v/AAgUD/wKDj/wAof/wAECg/8BQc/8AbD/4bE/AbEFgcHFgk/FgcBFgkPDYhIgFgIKDFh8eFgn+FgcH/4sDv+/FgUD/osDn/vFgQ2BFgcf+YsD/+fFgUP/gsDv/HFgSKBLId/8IsCHgIXBSod/EIIKBwIhCv/4h4WBAQOAv/+IIP8AQIAC4AYBAAIkBn4KDJQIKDCwYpBCwRWCAoJhDAoK1DAAg="), +SU: image(52, 50, "AAUf8AFDgP+BjH/AYP/AAnvAon+BjJAUgf9BgZFB/4MDn4kEg4MFGIwMED4QME+E/+AyC/x0DFgPABwIMC/gMGDIn8gYMFv/4EwcP/+AKYf/BgRACBgYRB/4mCgF/AwJ6DBgoTCRohNDTZE/VAkP/gFDE4PAUQhGCI4YeEUIgYBD4gMBEpI4GgIFEAAo"), +SE: image(56, 50, "AAcP/ADB//AAwP8AwkHA34FBAAn+A1JalmAGFvinFv4GF//PXghEBAwfBAwoNGEQP/+AGDn4GFh//8AGDg5PCgF/AYP/wAGEgj/CAwQADAw4mCAwZCCAAQ8BFQgGBAAQGBj4GFJQIGEJQIGEgYGFGIIGCIQQVDHQgACA"), +SO: image(53, 50, "gP/AAXggEPAweAgF/AoX+gEDBgfwgEfCYoFD/EAg4MFAAQMCAAQwBBhQpBJQozBAAU/IAIACIYJUBAAV//gsJD4IsEn4sEOAn+NIn/+4FEAA39AwvvAwqQDAAP7UYhmCx5bDuBVB4BCDg5bEJ4JoEgJ1EEQKCESwIFEg5vEEA4TFh4TFv4TGYgiLBCYrFG/5dDd4YHCOQKkBDQjbDDQQwDWgR5DAwSGEEAgAEA=="), -hiragana['TA'] = image(52, 50, "gEP+AGE/4Mjgf/AAXAgE/AoX8BjUAgP+GYkf8AFDBhHnEIQMBEQQhBn/jFAWAgYMD/AMH/gMF4f/F4UH/kQGYd/KIIACg4VBBgmAQ4gMFUJcB/8DDQZgBv6iD/wuEn/gKIJGDEIl/4KCDC4KPE/+BBgYXBBgY5BAIImCj4MBTIKFB/wMBAAKSB8EPAwXnUYIMDCwLYD95RBEAIZCFQN/AwPBKISpBwEGQAgAGA=="); -hiragana['TI'] = image(51, 49, "gED/wGEv/AAocP/AFDgP/CQk/8AFDg/8Bgn/wAFDj/wBQYAqJ4M/LBZrMJYZ+Ch5aDv/f/4bCBQIABCoMDHAYTBv4+Ej4MEg4DB4IMCAoIcCwE/TwU/+ASBEQI8BVQJLCv/gS4cP/kBMgYWBjyoEgLbJEYYSCQQkHCQg2EHASCEv4SBgYOBOQ70BQoYrBEQIABFYR/DJASRED4YFCBgJDDA="); -hiragana['TU'] = image(59, 45, "AAUP/4FFAAIGCAoX//EAg4GD//ACYYAB/kBAwgOBn4OFDgoOBAYX+BYP8j4GBwEAAgPDGwQ+C/F/BgIABCwOMLQl/+AGEg/+NIv/8BwF/gGEKwIqDAAM/HAYzDEhkfEgsDEgxJGh5JFHQPACqQrBCpkfCopXBCogcBCog5BK4jSCAwxtDDYK8EZIQcCAoQcDCYTjCJgQGCEYT0DIAYGGEgQGDEgRcEv5UEA="); -hiragana['TE'] = image(57, 50, "/4AFv4GF34GF74GF94GF+4GF/YGF/oGF/w7Cn//4BCDAwOAAwpQEj4ZDAxP8AyUPAwwiFg4GMgZFFAw0BLQqlBNAkAv4GG8AGEn/wKgv4KhZGGHALeGH4oxNh4xFOJBjGEYt/VQwVFg//BwhOBAAI7Dv4GBHYYcBCwgcB/5CEDgQyFGYgrCUwkPKAwAC"); -hiragana['TO'] = image(46, 49, "gEH/AFDj/wAod/4AECgP/Cwn8C0cICwcDBoIWC/4NBCwMfEgV/4f/BoIWBv//LAMH/4AB8AWBAoWAgE/BQYlBDYUAh4FBHwQPEEIJQDFYJhCgYwCLQQqCDYQKDDYIKDn5xEEAYQB/x8JDYkDCAkPYIk/JoQWTAol/AocZQwR6B8aNCAAOPAgf+TIZqBAongT4QfCBYY9BW4R1BA="); +TA: image(52, 50, "gEP+AGE/4Mjgf/AAXAgE/AoX8BjUAgP+GYkf8AFDBhHnEIQMBEQQhBn/jFAWAgYMD/AMH/gMF4f/F4UH/kQGYd/KIIACg4VBBgmAQ4gMFUJcB/8DDQZgBv6iD/wuEn/gKIJGDEIl/4KCDC4KPE/+BBgYXBBgY5BAIImCj4MBTIKFB/wMBAAKSB8EPAwXnUYIMDCwLYD95RBEAIZCFQN/AwPBKISpBwEGQAgAGA=="), +TI: image(51, 49, "gED/wGEv/AAocP/AFDgP/CQk/8AFDg/8Bgn/wAFDj/wBQYAqJ4M/LBZrMJYZ+Ch5aDv/f/4bCBQIABCoMDHAYTBv4+Ej4MEg4DB4IMCAoIcCwE/TwU/+ASBEQI8BVQJLCv/gS4cP/kBMgYWBjyoEgLbJEYYSCQQkHCQg2EHASCEv4SBgYOBOQ70BQoYrBEQIABFYR/DJASRED4YFCBgJDDA="), +TU: image(59, 45, "AAUP/4FFAAIGCAoX//EAg4GD//ACYYAB/kBAwgOBn4OFDgoOBAYX+BYP8j4GBwEAAgPDGwQ+C/F/BgIABCwOMLQl/+AGEg/+NIv/8BwF/gGEKwIqDAAM/HAYzDEhkfEgsDEgxJGh5JFHQPACqQrBCpkfCopXBCogcBCog5BK4jSCAwxtDDYK8EZIQcCAoQcDCYTjCJgQGCEYT0DIAYGGEgQGDEgRcEv5UEA="), +TE: image(57, 50, "/4AFv4GF34GF74GF94GF+4GF/YGF/oGF/w7Cn//4BCDAwOAAwpQEj4ZDAxP8AyUPAwwiFg4GMgZFFAw0BLQqlBNAkAv4GG8AGEn/wKgv4KhZGGHALeGH4oxNh4xFOJBjGEYt/VQwVFg//BwhOBAAI7Dv4GBHYYcBCwgcB/5CEDgQyFGYgrCUwkPKAwAC"), +TO: image(46, 49, "gEH/AFDj/wAod/4AECgP/Cwn8C0cICwcDBoIWC/4NBCwMfEgV/4f/BoIWBv//LAMH/4AB8AWBAoWAgE/BQYlBDYUAh4FBHwQPEEIJQDFYJhCgYwCLQQqCDYQKDDYIKDn5xEEAYQB/x8JDYkDCAkPYIk/JoQWTAol/AocZQwR6B8aNCAAOPAgf+TIZqBAongT4QfCBYY9BW4R1BA="), + +NA: image(55, 49, "gEP+AGEj/gAwk/4EAkAGCv+AgAPD/8AgYdCgP+EgkD/gdB/AGBg4DBv4GCj/w/wGCv////8AwQFB//4AwMBAwXwEQMDAwXgAwMHAwXAAwMPAwWAG4QvBLgQGBL4X/AwRfBKgIGCL4X8n/gLARUBn5YDMwM8NQaLBQYIoCAQSIDAQRZBRYaBDRYQhBFAIJCKIYyCDwKoBToZkBOAIJBPYKLCGwMH/h2CAwMfKoKKCI4PgSIYYB4afDJQMP/gpB+AhBMgIjB/AhC4EfAwIhCEoIGCwJdBaIIZBMgSkCjhMBgakBG4LICUgKDBAwQuBPgRKCjgGE4EQAwgEBAAIbBRAQACQgIDB"), +NI: image(50, 50, "h+AAocD/gFDgP/CQl/4AFDn/gv//AAOP/E/AoXj/0HAoX4/+BAoX+DAuf+EfAoXn/gYD/P/gYEBG48f+AFDg5QMMYkf8BvE/BvE/wYE/4YEKAIYYgZSCDAMBJgQYCCgYDBFoYDBj4tCDAJlDDAMBGYYYBNYYYBn4xCg/4h6ECPgIHBPgfBDwaVBQgYvBToYYCFYauBaIIwB5/wcAfz/0PAoX8cAn/IgQFC55dBAoXxFILtC/grBGgL5BYIoAGA=="), +NU: image(58, 50, "AAV/4AGEj/wAwkH/gGEgP/Aod+Dgv/wAcEj/gDgkH/AcEgP+Dgt/Dg3wn4mBHwYGBDAIyCAwP/8AGBAoQODh4GC/4sBgYGD/AcCAAO/IQQcC4IkCDgI7Bj5YBg//w/8EAIjCwIEBv/gMQPgLAMPFYP//h1BgZpC/4LCNwIxB4YoBFoIxB/AjBNIMH/v+n5UB/4qBn/fIoIJBv+PLYUPQwPhOIUD/gvBGYMH/3/BAX/457CBAP/84GBDgIlB/YGBCYJwB/qECDgKREwBCC34YBDgfvLYP+HIM/+YYCIwM/MoIYB/hGBMoQEBz4nBKQfDAwODGQXwKQQMB/P4j4GBAQP+ngtBUgIRBg6aBRwKiBwOAf4TNBAobjCAogAEA"), +NE: image(57, 50, "gEP+AGEg/4AwkD/gGEgP+Dgv/Awt/wAGEn/Agf/BIUf8EP/40CHAMf/4tBAYP4AQImBCIP8n4GB4EH//+AwXgEwP/v4CB/EBAYIPBg4jBAwX8BYJFBCQRKDFYIGBJQJxBIgUfAQIrBAYMPCAIfBBQR8CAwR8DMAZ8Cv4GCGIQGDGIU/AwR8BAwKqCWoU/FoS1Cj4tCHASEBWogGBUAQKBAwItBHARpB8BlBBQKuCAQIKBO4SqCBQX8AwX4h/9/wGC/kP/n/DYSlCv+P/ArB4K+B4/4SIV+j/jWIX8n0P+JSBDoMOMwJWBAwOCMwM//ZOCMwI4C75nB/5bC45nBv+DAwPhTgXAb4PAoCfCQQifBYoYAHA"), +NO: image(60, 50, "AAX//4GEv4HFj4GB/wGCg4GB//4AwMBAwX/4AcEDwcPAwYWBgYGDCwQVC54tCCoX8F4PgFYP4CYI+BgE//0P/gaB/ARB4F/4ApBwAVBg4OBj/8EgITB4AiB4InBBwQgBCAIOCPQPjD4MPJ4MH/0/+ALBwARB84kBBwQ0Bv/gBwc/+5bBj5tEHAR8Bn5lBBwInBBxY2CBwcDWIQOEGwIODJwIOFIoRKC4CNCBQP3AgKwCDIIOBKIQKB8/8IQJgBj4OB8E/MAfD/ytBEgX8J4KeBZwWDIgJCBCoP4ZgIzCAYIqBeYRQB8DnCK4gGBGoIDBwAyBF4IKCCQWBAwIVBEoPgF4RFBg/4F4Q2BAAQOBTwIADHoQADbIQAIA"), + +HA: image(55, 50, "AAd/wEAn4CBgH/BIXAgEB/wJEgf8AQIJCg/4AQIJBgEP+ACBBIMAj/gAQYsBEoIoCGwf/GwkB/8P/4AC4f+j4GDw/4n4GDj/wv4FC/0/8AMD/l/4IGD/H/wYGD+P/g4vELARtCMQRtDMQQKDL4YKCMQQKDMQQKDR4QKCTIYKCFYQ2bOoI2C4BgCGwWASAQ2BGQKJC8DNBBAIAB+DNBPYf4ZoKrDAgPwT4K7BAwRdBB4K3BVYIqCVYY6BAwKrB/0DVY3+v/hAwf8n4SBdIXwnxEBAwXgnBEBAwShBO4IbBSYSVCOYQAHA"), +HI: image(57, 50, "AAMPwAGE//gAocf//wgFwgEH////kH/AZBAwP+gf+Bof/wP/gEDAwWAAIMBAwc/FgIGDj4sBv4GBE4P8HAIdBE4IqBAwYgBKAIGCKAYKBAwN/EYIGDn4jBAwZfBDAQfBLIPAAwZZBDgItENYN/CAIfBIAIGCLIRfDLIXwAwc/RQJmCHAPv/0PEoI4B+f/AwcH/P/w50D/l/wZ0CgP+j/BK4Q4Bg/gJoQ4BwIGBIwU/4EwAQI4CIYICCAYY/EJQMHHATcCbAQKEHARGBGgQqBCIc/D4IGDaITCDT4PAAQJfCQQRYDeQQGDSIIGEYYIGEE4IGEDgYFCcAQ+CGQZsCABAA="), +HU: image(58, 50, "gEP/AGEgf//wHE/4ABAwc/AwIPDh4OC8AGBg4GCEwUBAwX8Dod/EgoHC4AsF+BJFjAGDg4iEFgRfF/+AAwk/IwQjDFIgjDvAjDMYJlCgRHB4ABBFIUf/ABBFIXH/0HCoUf+BcBLwQpBCogpBCYIVDv+ACohNBn/wCoRxBCohNCMoIVBOIQVBAIJNCCAIVCEYIQBCoOAb4QtDCAQtC/gjCdIIXCN4QwBC4SVBDQIXBEYUP/gXBI4QEBHwPD/8ODgR/CwZNCCYN/8P/5/4GQOf+DtBKgXv/jtBKgX5/0PAwJxB/0/DAL8CvkDJYP/IYMMgFgg//fot/VYQACgYGFAAoA=="), +HE: image(67, 45, "AAXwA43/4AHFn/8A4sPCA0B//+CAt///gA4kfCA0H/4QGA4IyFn4IBGQg5BIYsD//nCAt//F/CAkf/wzBCAYFBwH//BaE8ArBwBzFCAgNBLoQQCHIPADYIQD/6dBCAk/OQIQEHIQQEHIQkCCARaBO4YUCSYQQDHIQQFHIQQERQgQCLQQQEHIKBDCAPAn5fDCAP8gbNECAaJDCAbVECAPgvj+Gg72GdoqYFCAgHFKIoQDDA0AKIjODDA0ARYQAEhwHGAAIA=="), +HO: image(53, 49, "h4GFv4FEg/4kAGDn/D/4ACwP+j4FC/kf+IMD8H/w4GDEAM/AoQEB4IMD4f+g4FCEoPwGIXggH/wEAgP/IIP8KQX4B4PAKQXAgP+AoMDAYMPEAQkC/+DEIIkBEAJVD/8/8IFD/P/h4GD5/wv5IDv+DBgfz/gTEz/gCYf4KIIABGgRRBLIZVDNIJVDNIRVDNIRlBNIZlCKwIDC+EDGYJpCwClCNIQMCCYIwBBgX8GAIBBJwRIBPofwJAIeBLwKCBBwIiCx/4H4IVCv/BFYIFB/f+KYIMCx6RD94YBwLfDwYTBGYV8LgJICgI5CBgUCgaGBLYQACAwLVBgA"), + +MA: image(50, 49, "AAMH/gFDgP/Bgl/4AFDj/wDBsH/4AD/oFE/9/AwoARJVXhAon4JQn+j4MEw4YLn4YEJTIfCAooYCAoX4DgQwCwBdEBgMDHoYMB//3Bgd/8AUC4A7BJQP//kHBwQGB4JYBFoX8KgMP/gGBz/+h//AIPjGAXA//wAoXwh/4DgX4gP8IgQnCF4QFBgOAEIKIEv6SCAAIA=="), +MI: image(58, 49, "gP/AAOAA4V/AwPgAwUfAwP4AwUHAwP+DjAABgYcDDwYcDDwQcDDwQcFg/8gAXDDgMAn4XDv/Ah4XDj/wGgkPDgpQBDghPB+AcDMoXjDgQGCNwZsCNwYGEDgM/AwYcBPQQAC/kP/4IEw//MgIYC+f/wZHBCAP8//AGwMDEgKGBRAQVBz/4NYI2C44sBNYMP/PxFQI9BAQMY/+BFQKvCOoIsBEYKSCFQU/SQP8WYQCCGYIqCEwI0BFQQmBMgIDBJwOAfgXAAYItBRAJVCKIIVBAYN/FQIYBAYN/FoIrBTQSzCdgRfCAAg0BAAkfbwQACgY4BAAgGDA"), +MU: image(55, 49, "gED/gGEg/4AwkP+EAhwGCj/ggF+AwU/4EB/wGCv+Ag4GD/4kBAwM//4AB84GBv4GC54GBAoX/x/+gIGDh/+gYFC/0P/kHAwX8AwMPAwX4j5cCGwJOBAwJIDj5jBv4QCAwIpBNoU/+AiBNoIGCJYJtBAwPhFwPANQXjAwOAgEEv+P/A2C/H+CoI2BTIIhBwY2Bh/xwH+UgUf+CwBUgSgBBYKkCn/gh/gToI1B4Ef4AvCBIM/4ZmCIAN/44oBSgKdCFAJ3CLAY0BUgQoBGgIGBEIUPAwSID+AGBQIZHBJQRECd4Q9DI4QvBJwQ2Cj4sBGATRBJwLcDFgTcDC4QGEEILqEAwIbDIARoCBgQ"), +ME: image(55, 49, "AAUf+AGEn/gAwl/4AECBQP/wAYC4EB/4YDwED/wYDwEH/gGCCIMP/AFBgIRBGwcDCIN/GwUH/EP/4bCDAP/AAI2C+4GCHwMfAoX/JgM/AwYjBv4GI8YGCFoN/wIGBgYCBFwIiBHYJfBNAPAn/8IwIGBwAaBh/wAwOD//4R4IfBg//+B2BDoJKB+AoBg/+JQPjOwMP/n/z/nQIMf/IOB76BBn/3/gVBMgN/94nBOQX/7/gAwKbBOwSOCHoJMCEIMH/v/CAJxBh/7/hcCF4X4KYLEC5/wj5KBEIOfGwJRCL4PzF4V/JIQvBCYJJCH4JxB4AGB/xCCFQIJDDoIMBBIRNBAQJdCIwKUCeAb5CPgQACSgIFDSgIDC"), +MO: image(50, 49, "AAN+Aokf8AFDh/4AocD/wSE/+AAod/4AeE+AFDg/8CAf/AAX8j4FD/8HAonBAonwDBY3OKwkBKxc/N5M/GwcHh42D3/DAofn/AFD/P+DAf+v/PBgeP+YFD8f+NAuAG4axBU4ZaCKAUBOAJQDOYIYE+AYEVYKFCDAaICDASICDAsPDAQxBgYYBj4rBAoOAYQPwPQPgE4JYDRQo6BAoglBPoQ0CAogMCAoYvBIwQA="), -hiragana['NA'] = image(55, 49, "gEP+AGEj/gAwk/4EAkAGCv+AgAPD/8AgYdCgP+EgkD/gdB/AGBg4DBv4GCj/w/wGCv////8AwQFB//4AwMBAwXwEQMDAwXgAwMHAwXAAwMPAwWAG4QvBLgQGBL4X/AwRfBKgIGCL4X8n/gLARUBn5YDMwM8NQaLBQYIoCAQSIDAQRZBRYaBDRYQhBFAIJCKIYyCDwKoBToZkBOAIJBPYKLCGwMH/h2CAwMfKoKKCI4PgSIYYB4afDJQMP/gpB+AhBMgIjB/AhC4EfAwIhCEoIGCwJdBaIIZBMgSkCjhMBgakBG4LICUgKDBAwQuBPgRKCjgGE4EQAwgEBAAIbBRAQACQgIDB"); -hiragana['NI'] = image(50, 50, "h+AAocD/gFDgP/CQl/4AFDn/gv//AAOP/E/AoXj/0HAoX4/+BAoX+DAuf+EfAoXn/gYD/P/gYEBG48f+AFDg5QMMYkf8BvE/BvE/wYE/4YEKAIYYgZSCDAMBJgQYCCgYDBFoYDBj4tCDAJlDDAMBGYYYBNYYYBn4xCg/4h6ECPgIHBPgfBDwaVBQgYvBToYYCFYauBaIIwB5/wcAfz/0PAoX8cAn/IgQFC55dBAoXxFILtC/grBGgL5BYIoAGA=="); -hiragana['NU'] = image(58, 50, "AAV/4AGEj/wAwkH/gGEgP/Aod+Dgv/wAcEj/gDgkH/AcEgP+Dgt/Dg3wn4mBHwYGBDAIyCAwP/8AGBAoQODh4GC/4sBgYGD/AcCAAO/IQQcC4IkCDgI7Bj5YBg//w/8EAIjCwIEBv/gMQPgLAMPFYP//h1BgZpC/4LCNwIxB4YoBFoIxB/AjBNIMH/v+n5UB/4qBn/fIoIJBv+PLYUPQwPhOIUD/gvBGYMH/3/BAX/457CBAP/84GBDgIlB/YGBCYJwB/qECDgKREwBCC34YBDgfvLYP+HIM/+YYCIwM/MoIYB/hGBMoQEBz4nBKQfDAwODGQXwKQQMB/P4j4GBAQP+ngtBUgIRBg6aBRwKiBwOAf4TNBAobjCAogAEA"); -hiragana['NE'] = image(57, 50, "gEP+AGEg/4AwkD/gGEgP+Dgv/Awt/wAGEn/Agf/BIUf8EP/40CHAMf/4tBAYP4AQImBCIP8n4GB4EH//+AwXgEwP/v4CB/EBAYIPBg4jBAwX8BYJFBCQRKDFYIGBJQJxBIgUfAQIrBAYMPCAIfBBQR8CAwR8DMAZ8Cv4GCGIQGDGIU/AwR8BAwKqCWoU/FoS1Cj4tCHASEBWogGBUAQKBAwItBHARpB8BlBBQKuCAQIKBO4SqCBQX8AwX4h/9/wGC/kP/n/DYSlCv+P/ArB4K+B4/4SIV+j/jWIX8n0P+JSBDoMOMwJWBAwOCMwM//ZOCMwI4C75nB/5bC45nBv+DAwPhTgXAb4PAoCfCQQifBYoYAHA"); -hiragana['NO'] = image(60, 50, "AAX//4GEv4HFj4GB/wGCg4GB//4AwMBAwX/4AcEDwcPAwYWBgYGDCwQVC54tCCoX8F4PgFYP4CYI+BgE//0P/gaB/ARB4F/4ApBwAVBg4OBj/8EgITB4AiB4InBBwQgBCAIOCPQPjD4MPJ4MH/0/+ALBwARB84kBBwQ0Bv/gBwc/+5bBj5tEHAR8Bn5lBBwInBBxY2CBwcDWIQOEGwIODJwIOFIoRKC4CNCBQP3AgKwCDIIOBKIQKB8/8IQJgBj4OB8E/MAfD/ytBEgX8J4KeBZwWDIgJCBCoP4ZgIzCAYIqBeYRQB8DnCK4gGBGoIDBwAyBF4IKCCQWBAwIVBEoPgF4RFBg/4F4Q2BAAQOBTwIADHoQADbIQAIA"); +YA: image(53, 49, "AAVgAYUf4EPAoUB/8B/gGCg/4j/wAwU/4F/4ATDgf/BgUP/EPDQYRBn///wTBAQP//4OBCYMfAwP4CYPPAoP/8AnBAAeAh4FD/gMD/n/+ALD8H/z4EB/v/wf+CIUH/kP+4+CLoN/CYJhBCYmAgfwCYP7CYMeIwOcOoYiBBAOAPYXggZuCIwIrCTgQrCCYIMBFYP8gYZBC4Mf8B3CTQIPBQgYwBg4MDGAKYBGITABBgZnCL4QTCj5EFAAbUBAwgTBAoYTGYAITFcwQTPfQYTCTAITYMAQTDVgUAA="), +YU: image(51, 49, "AAV/4AFDh/4AocB/4DBj/ggE/AQMD/0Ag/8DgWAgH/AQMP+ASB//AgISBAoIDC4Ef///+ASBh4FB/4SBgYFC+E/4IFC/8H/F///9//g/8f/3/x/+j/nAQPwv/j/H/wf+I4N/KAJlBv+P9/4MoMP/f9/xlBAIIqBwAUBn/vFwIdBg40BNIIOBIIR7B+BbC8B7BKoX4uAyCAwM+GQX5//f8IyCn/z/hHCK4N/4/8h/8/4EB/4lBF4P/z5wB8f+RYJjBPoPAFwO/BQP4IQX/wJkCTAUfVYf4gf4BgS4BbQRiCcgbSCAAILEcALkCAAM/DoYeCC4ZLBfoIeD/ASEDAhoBAoYlBDwcAg/AAoY"), +YO: image(49, 49, "AAMP/AFDg/8AocD/wFDgP/DAn/wAFDv/AAoc/8AFDj/wGCH/AAIwDAAImCAoQmCv4FBEwU/AoImCj4FBEwUPAoJXCMO4wEM4IWDI4IwCKYQwCL4oFCDAQFDCQIXCNgQFDEoMP/iSC+EHEIJ5CAoSSCwYaBEwXhFoMf8Y4BEAJnBCYN/+Ef/AuBz41CLoPPUQd/4YFDj/AAocD4AuBPIXgDQJ/En6REA="), -hiragana['HA'] = image(55, 50, "AAd/wEAn4CBgH/BIXAgEB/wJEgf8AQIJCg/4AQIJBgEP+ACBBIMAj/gAQYsBEoIoCGwf/GwkB/8P/4AC4f+j4GDw/4n4GDj/wv4FC/0/8AMD/l/4IGD/H/wYGD+P/g4vELARtCMQRtDMQQKDL4YKCMQQKDMQQKDR4QKCTIYKCFYQ2bOoI2C4BgCGwWASAQ2BGQKJC8DNBBAIAB+DNBPYf4ZoKrDAgPwT4K7BAwRdBB4K3BVYIqCVYY6BAwKrB/0DVY3+v/hAwf8n4SBdIXwnxEBAwXgnBEBAwShBO4IbBSYSVCOYQAHA"); -hiragana['HI'] = image(57, 50, "AAMPwAGE//gAocf//wgFwgEH////kH/AZBAwP+gf+Bof/wP/gEDAwWAAIMBAwc/FgIGDj4sBv4GBE4P8HAIdBE4IqBAwYgBKAIGCKAYKBAwN/EYIGDn4jBAwZfBDAQfBLIPAAwZZBDgItENYN/CAIfBIAIGCLIRfDLIXwAwc/RQJmCHAPv/0PEoI4B+f/AwcH/P/w50D/l/wZ0CgP+j/BK4Q4Bg/gJoQ4BwIGBIwU/4EwAQI4CIYICCAYY/EJQMHHATcCbAQKEHARGBGgQqBCIc/D4IGDaITCDT4PAAQJfCQQRYDeQQGDSIIGEYYIGEE4IGEDgYFCcAQ+CGQZsCABAA="); -hiragana['HU'] = image(58, 50, "gEP/AGEgf//wHE/4ABAwc/AwIPDh4OC8AGBg4GCEwUBAwX8Dod/EgoHC4AsF+BJFjAGDg4iEFgRfF/+AAwk/IwQjDFIgjDvAjDMYJlCgRHB4ABBFIUf/ABBFIXH/0HCoUf+BcBLwQpBCogpBCYIVDv+ACohNBn/wCoRxBCohNCMoIVBOIQVBAIJNCCAIVCEYIQBCoOAb4QtDCAQtC/gjCdIIXCN4QwBC4SVBDQIXBEYUP/gXBI4QEBHwPD/8ODgR/CwZNCCYN/8P/5/4GQOf+DtBKgXv/jtBKgX5/0PAwJxB/0/DAL8CvkDJYP/IYMMgFgg//fot/VYQACgYGFAAoA=="); -hiragana['HE'] = image(67, 45, "AAXwA43/4AHFn/8A4sPCA0B//+CAt///gA4kfCA0H/4QGA4IyFn4IBGQg5BIYsD//nCAt//F/CAkf/wzBCAYFBwH//BaE8ArBwBzFCAgNBLoQQCHIPADYIQD/6dBCAk/OQIQEHIQQEHIQkCCARaBO4YUCSYQQDHIQQFHIQQERQgQCLQQQEHIKBDCAPAn5fDCAP8gbNECAaJDCAbVECAPgvj+Gg72GdoqYFCAgHFKIoQDDA0AKIjODDA0ARYQAEhwHGAAIA=="); -hiragana['HO'] = image(53, 49, "h4GFv4FEg/4kAGDn/D/4ACwP+j4FC/kf+IMD8H/w4GDEAM/AoQEB4IMD4f+g4FCEoPwGIXggH/wEAgP/IIP8KQX4B4PAKQXAgP+AoMDAYMPEAQkC/+DEIIkBEAJVD/8/8IFD/P/h4GD5/wv5IDv+DBgfz/gTEz/gCYf4KIIABGgRRBLIZVDNIJVDNIRVDNIRlBNIZlCKwIDC+EDGYJpCwClCNIQMCCYIwBBgX8GAIBBJwRIBPofwJAIeBLwKCBBwIiCx/4H4IVCv/BFYIFB/f+KYIMCx6RD94YBwLfDwYTBGYV8LgJICgI5CBgUCgaGBLYQACAwLVBgA"); +RA: image(47, 49, "gEP4AFDn//Aod///wAoX///+AgMDAoP/DIMHAoX4AowjC//gh/4gIXCj4mBj4wBn/gEoP8GYI/CvAzBwAFBkAaBIgYTCAAUHGARcCJ4YrBFAJcD4AZDFAI/CFAMPJYQOBK4XwLgZdBJwIFDMIQFCQod/+AIBOIXzO4nnRIQRB55dDDYJdDHgQEBIgM/OgUD/0+Nof8jBtDOYk/OYgyDYgQhCPwLOCFoQ4DMwIcCPYSBCAATkECwKBDCwIVCFoQFCIgSNCHASNBGIQA=="), +RI: image(39, 49, "ngEDv+AAgX/AYUD/wGB4EH/EH//wh/wn4EBj/h/4EBn/HAgV/z4EB+P+v4EB8YCB4F/8//E4N/54VBFgIWB4AEB346BgP/v/8AgP+//4IQP9//ggBABC4UPAgJRBj4qCgBKBC4IwBF4QrBDgQrB/5vBgYcDEwIcCEwI5BEwP3EIU/94hCv/fEIImBn4+BRYKWCg/8EwSLBTQU/CwScCUYSoDj4zCBoIzCHoIuDKARjBJYJUCQAR7DQAQbDEASABbgU/BATqE"), +RU: image(51, 49, "gf/AAXAgF/AoX8gEPBgeAgIFD/EAn4MEg4FD8EACQoACn4lBAAUf/4FDDYOAAoQuBHwIACv/wDwgkEh/+DwoFDDw5ECDwRLDMwg5BLIZMBNgh/FGgIeB+AVB4AeBEYJmBBAJQBDgPBOocf/AoCVIU/Kwc/+5WDg/+Kwl/5/wh4mBh/4/A2CFgMOAoJDC8GBMgUHGAJQCCQKpCBgISBgf+SQMPCQN/4H/4YSBGIIwBCgMBDoTMCn/AEIROCLoKFEAIJvBTwZvCTAarFNIQFCXASyCYoYxBAoQ"), +RE: image(55, 49, "gEf8AGEn4GFv/AAwn/wAFDgP/BgkD/wGEg/8DoIkCh/4gf/+A2C+EPAwV///gAQIGB///4ICB+AuB/+PAQPgg4DBn4GE/wSB//AEoIABwABBj4FB/hODA4PwJwYgB4BOCHwROCNoQDBJwJtCLoM/PwJdBPYN/AQMPEoQvDDQMBBIV/DwMDF4QhCg4QBEIIlBh4QBLIIlBWoRRBWol/F4eAIYIlBMwR7BEoQQBUIYvCNgIlBF4SBBEoLsBHgI2DSwP9GwaWB+ZmEj/HGwIvCj+PFgKWBjk+RgSWB/E4Lgn4sBcCIII+CGwTjDWoZFBSYYRBYYgDBYYa5CLgIGBAAI"), +RO: image(50, 49, "AAf4gEB/4AC8EAv4FC/kAj4MDwEHAofwDAgSBDAoACn/+AocfAokP/4FDE4OAApED//AAohJBAAI5BAocAIQIFEHghFCD4QFCBoU/KIQMBNQZ9BOAhOCQYYFE/B8CE4QFBM4JGB4YuDj/7AocD/xIE/+fP4c/84FDh/8QoZyBj5mE4aFDn5yEDAIFDGIIFDIgIXDDwKREv4eEv4eBiAFCDwMH+A8BIQLnEEgLnDSooqBQYQFCDgQ2DAoolCJAQA="), +WA: image(54, 49, "gEf+AGEv/AAocB/4MEg/8DUv///Aj//wEDAwIcBAwMP//8BgIGBn//+IFBAwICB54GCDQQAC/0HAgXAn45BD4IDBn45Bv4MBAYPgGYJKCFAIbB8EAgf+DQRbEv/4LYYaBOQU/4EPCwIhCCYJrCgf8CYkP+BlBCYQaBv6GDOwQaECYIaEKwIaD4JWDgP+CYIaCg/4NQYTB8Z+BFwef+4aCMgN/74aCn/z/zXCIAOH/IaCh5CB44aBJoU+a4QyBwFwDQLGBCAOBX4adBGIJMBRIQaBUYI4CDQJnDFYJ7EDQKzCDQYECgA="), +WO: image(52, 49, "AAMf+AFDgP+Bgk/8AFDgYMM/gkD/4AC+EBAof/BkA5FhEAg45Cg/AgF/AQMBBIMP/4DB//gE4Xwn5dBn4GB74IBgY0Fv4FD8AfBAoYfB/gbBIAIiBg///A7B/+A/4rBCQIxBBAISB/ghBCQeBEoIMBCQI0BBgQSCDIYSB54MBgIlB+AMCj0H/0PBgIABHQQMBOgP4BgZBBBwTDCMYIMDKIIMRWQQmDAwUMYYqyBAoaxBN4IMEV4QMCcggMBWwbZCAweA"), +N: image(54, 49, "AAMHAwsf8AGE/+AAocD/wTF+AGEv/ACZUP/ATKgP/CYv8Awk/IQgTBIQkHCYxCFCYxWTIQxWGFAhCBAwkPAwJCE/5KDCYQiBhhCBAwJlBn+Aj/+/49BDoP/8IDBgf8IQIDBKgUf/EPLAJUBv/gn/AFgKZCAIMHCIP4DQSXBAIIaC/+BCIIaBYwKZCLwIuBCYLRCFwIKBEYX/CYUfEYP4TIRACCYQ+BwZUBDwIYBOgITCRAQVCEIP//0BYISjB+CtDUYRNBAwQ5Bg7gDBQIA="), -hiragana['MA'] = image(50, 49, "AAMH/gFDgP/Bgl/4AFDj/wDBsH/4AD/oFE/9/AwoARJVXhAon4JQn+j4MEw4YLn4YEJTIfCAooYCAoX4DgQwCwBdEBgMDHoYMB//3Bgd/8AUC4A7BJQP//kHBwQGB4JYBFoX8KgMP/gGBz/+h//AIPjGAXA//wAoXwh/4DgX4gP8IgQnCF4QFBgOAEIKIEv6SCAAIA=="); -hiragana['MI'] = image(58, 49, "gP/AAOAA4V/AwPgAwUfAwP4AwUHAwP+DjAABgYcDDwYcDDwQcDDwQcFg/8gAXDDgMAn4XDv/Ah4XDj/wGgkPDgpQBDghPB+AcDMoXjDgQGCNwZsCNwYGEDgM/AwYcBPQQAC/kP/4IEw//MgIYC+f/wZHBCAP8//AGwMDEgKGBRAQVBz/4NYI2C44sBNYMP/PxFQI9BAQMY/+BFQKvCOoIsBEYKSCFQU/SQP8WYQCCGYIqCEwI0BFQQmBMgIDBJwOAfgXAAYItBRAJVCKIIVBAYN/FQIYBAYN/FoIrBTQSzCdgRfCAAg0BAAkfbwQACgY4BAAgGDA"); -hiragana['MU'] = image(55, 49, "gED/gGEg/4AwkP+EAhwGCj/ggF+AwU/4EB/wGCv+Ag4GD/4kBAwM//4AB84GBv4GC54GBAoX/x/+gIGDh/+gYFC/0P/kHAwX8AwMPAwX4j5cCGwJOBAwJIDj5jBv4QCAwIpBNoU/+AiBNoIGCJYJtBAwPhFwPANQXjAwOAgEEv+P/A2C/H+CoI2BTIIhBwY2Bh/xwH+UgUf+CwBUgSgBBYKkCn/gh/gToI1B4Ef4AvCBIM/4ZmCIAN/44oBSgKdCFAJ3CLAY0BUgQoBGgIGBEIUPAwSID+AGBQIZHBJQRECd4Q9DI4QvBJwQ2Cj4sBGATRBJwLcDFgTcDC4QGEEILqEAwIbDIARoCBgQ"); -hiragana['ME'] = image(55, 49, "AAUf+AGEn/gAwl/4AECBQP/wAYC4EB/4YDwED/wYDwEH/gGCCIMP/AFBgIRBGwcDCIN/GwUH/EP/4bCDAP/AAI2C+4GCHwMfAoX/JgM/AwYjBv4GI8YGCFoN/wIGBgYCBFwIiBHYJfBNAPAn/8IwIGBwAaBh/wAwOD//4R4IfBg//+B2BDoJKB+AoBg/+JQPjOwMP/n/z/nQIMf/IOB76BBn/3/gVBMgN/94nBOQX/7/gAwKbBOwSOCHoJMCEIMH/v/CAJxBh/7/hcCF4X4KYLEC5/wj5KBEIOfGwJRCL4PzF4V/JIQvBCYJJCH4JxB4AGB/xCCFQIJDDoIMBBIRNBAQJdCIwKUCeAb5CPgQACSgIFDSgIDC"); -hiragana['MO'] = image(50, 49, "AAN+Aokf8AFDh/4AocD/wSE/+AAod/4AeE+AFDg/8CAf/AAX8j4FD/8HAonBAonwDBY3OKwkBKxc/N5M/GwcHh42D3/DAofn/AFD/P+DAf+v/PBgeP+YFD8f+NAuAG4axBU4ZaCKAUBOAJQDOYIYE+AYEVYKFCDAaICDASICDAsPDAQxBgYYBj4rBAoOAYQPwPQPgE4JYDRQo6BAoglBPoQ0CAogMCAoYvBIwQA="); - -hiragana['YA'] = image(53, 49, "AAVgAYUf4EPAoUB/8B/gGCg/4j/wAwU/4F/4ATDgf/BgUP/EPDQYRBn///wTBAQP//4OBCYMfAwP4CYPPAoP/8AnBAAeAh4FD/gMD/n/+ALD8H/z4EB/v/wf+CIUH/kP+4+CLoN/CYJhBCYmAgfwCYP7CYMeIwOcOoYiBBAOAPYXggZuCIwIrCTgQrCCYIMBFYP8gYZBC4Mf8B3CTQIPBQgYwBg4MDGAKYBGITABBgZnCL4QTCj5EFAAbUBAwgTBAoYTGYAITFcwQTPfQYTCTAITYMAQTDVgUAA="); -hiragana['YU'] = image(51, 49, "AAV/4AFDh/4AocB/4DBj/ggE/AQMD/0Ag/8DgWAgH/AQMP+ASB//AgISBAoIDC4Ef///+ASBh4FB/4SBgYFC+E/4IFC/8H/F///9//g/8f/3/x/+j/nAQPwv/j/H/wf+I4N/KAJlBv+P9/4MoMP/f9/xlBAIIqBwAUBn/vFwIdBg40BNIIOBIIR7B+BbC8B7BKoX4uAyCAwM+GQX5//f8IyCn/z/hHCK4N/4/8h/8/4EB/4lBF4P/z5wB8f+RYJjBPoPAFwO/BQP4IQX/wJkCTAUfVYf4gf4BgS4BbQRiCcgbSCAAILEcALkCAAM/DoYeCC4ZLBfoIeD/ASEDAhoBAoYlBDwcAg/AAoY"); -hiragana['YO'] = image(49, 49, "AAMP/AFDg/8AocD/wFDgP/DAn/wAFDv/AAoc/8AFDj/wGCH/AAIwDAAImCAoQmCv4FBEwU/AoImCj4FBEwUPAoJXCMO4wEM4IWDI4IwCKYQwCL4oFCDAQFDCQIXCNgQFDEoMP/iSC+EHEIJ5CAoSSCwYaBEwXhFoMf8Y4BEAJnBCYN/+Ef/AuBz41CLoPPUQd/4YFDj/AAocD4AuBPIXgDQJ/En6REA="); - -hiragana['RA'] = image(47, 49, "gEP4AFDn//Aod///wAoX///+AgMDAoP/DIMHAoX4AowjC//gh/4gIXCj4mBj4wBn/gEoP8GYI/CvAzBwAFBkAaBIgYTCAAUHGARcCJ4YrBFAJcD4AZDFAI/CFAMPJYQOBK4XwLgZdBJwIFDMIQFCQod/+AIBOIXzO4nnRIQRB55dDDYJdDHgQEBIgM/OgUD/0+Nof8jBtDOYk/OYgyDYgQhCPwLOCFoQ4DMwIcCPYSBCAATkECwKBDCwIVCFoQFCIgSNCHASNBGIQA=="); -hiragana['RI'] = image(39, 49, "ngEDv+AAgX/AYUD/wGB4EH/EH//wh/wn4EBj/h/4EBn/HAgV/z4EB+P+v4EB8YCB4F/8//E4N/54VBFgIWB4AEB346BgP/v/8AgP+//4IQP9//ggBABC4UPAgJRBj4qCgBKBC4IwBF4QrBDgQrB/5vBgYcDEwIcCEwI5BEwP3EIU/94hCv/fEIImBn4+BRYKWCg/8EwSLBTQU/CwScCUYSoDj4zCBoIzCHoIuDKARjBJYJUCQAR7DQAQbDEASABbgU/BATqE"); -hiragana['RU'] = image(51, 49, "gf/AAXAgF/AoX8gEPBgeAgIFD/EAn4MEg4FD8EACQoACn4lBAAUf/4FDDYOAAoQuBHwIACv/wDwgkEh/+DwoFDDw5ECDwRLDMwg5BLIZMBNgh/FGgIeB+AVB4AeBEYJmBBAJQBDgPBOocf/AoCVIU/Kwc/+5WDg/+Kwl/5/wh4mBh/4/A2CFgMOAoJDC8GBMgUHGAJQCCQKpCBgISBgf+SQMPCQN/4H/4YSBGIIwBCgMBDoTMCn/AEIROCLoKFEAIJvBTwZvCTAarFNIQFCXASyCYoYxBAoQ"); -hiragana['RE'] = image(55, 49, "gEf8AGEn4GFv/AAwn/wAFDgP/BgkD/wGEg/8DoIkCh/4gf/+A2C+EPAwV///gAQIGB///4ICB+AuB/+PAQPgg4DBn4GE/wSB//AEoIABwABBj4FB/hODA4PwJwYgB4BOCHwROCNoQDBJwJtCLoM/PwJdBPYN/AQMPEoQvDDQMBBIV/DwMDF4QhCg4QBEIIlBh4QBLIIlBWoRRBWol/F4eAIYIlBMwR7BEoQQBUIYvCNgIlBF4SBBEoLsBHgI2DSwP9GwaWB+ZmEj/HGwIvCj+PFgKWBjk+RgSWB/E4Lgn4sBcCIII+CGwTjDWoZFBSYYRBYYgDBYYa5CLgIGBAAI"); -hiragana['RO'] = image(50, 49, "AAf4gEB/4AC8EAv4FC/kAj4MDwEHAofwDAgSBDAoACn/+AocfAokP/4FDE4OAApED//AAohJBAAI5BAocAIQIFEHghFCD4QFCBoU/KIQMBNQZ9BOAhOCQYYFE/B8CE4QFBM4JGB4YuDj/7AocD/xIE/+fP4c/84FDh/8QoZyBj5mE4aFDn5yEDAIFDGIIFDIgIXDDwKREv4eEv4eBiAFCDwMH+A8BIQLnEEgLnDSooqBQYQFCDgQ2DAoolCJAQA="); - -hiragana['WA'] = image(54, 49, "gEf+AGEv/AAocB/4MEg/8DUv///Aj//wEDAwIcBAwMP//8BgIGBn//+IFBAwICB54GCDQQAC/0HAgXAn45BD4IDBn45Bv4MBAYPgGYJKCFAIbB8EAgf+DQRbEv/4LYYaBOQU/4EPCwIhCCYJrCgf8CYkP+BlBCYQaBv6GDOwQaECYIaEKwIaD4JWDgP+CYIaCg/4NQYTB8Z+BFwef+4aCMgN/74aCn/z/zXCIAOH/IaCh5CB44aBJoU+a4QyBwFwDQLGBCAOBX4adBGIJMBRIQaBUYI4CDQJnDFYJ7EDQKzCDQYECgA="); -hiragana['WO'] = image(52, 49, "AAMf+AFDgP+Bgk/8AFDgYMM/gkD/4AC+EBAof/BkA5FhEAg45Cg/AgF/AQMBBIMP/4DB//gE4Xwn5dBn4GB74IBgY0Fv4FD8AfBAoYfB/gbBIAIiBg///A7B/+A/4rBCQIxBBAISB/ghBCQeBEoIMBCQI0BBgQSCDIYSB54MBgIlB+AMCj0H/0PBgIABHQQMBOgP4BgZBBBwTDCMYIMDKIIMRWQQmDAwUMYYqyBAoaxBN4IMEV4QMCcggMBWwbZCAweA"); // XXX there's no WO in hiragana, so we fill it with a copy of the katakana char -hiragana['N'] = image(54, 49, "AAMHAwsf8AGE/+AAocD/wTF+AGEv/ACZUP/ATKgP/CYv8Awk/IQgTBIQkHCYxCFCYxWTIQxWGFAhCBAwkPAwJCE/5KDCYQiBhhCBAwJlBn+Aj/+/49BDoP/8IDBgf8IQIDBKgUf/EPLAJUBv/gn/AFgKZCAIMHCIP4DQSXBAIIaC/+BCIIaBYwKZCLwIuBCYLRCFwIKBEYX/CYUfEYP4TIRACCYQ+BwZUBDwIYBOgITCRAQVCEIP//0BYISjB+CtDUYRNBAwQ5Bg7gDBQIA="); -/// ///////////////////////////////////////// +}; let kana = katakana.KA; let scroll = 0; @@ -125,68 +138,69 @@ const keys = Object.keys(katakana).sort(); let hiramode = false; let curkana = 'KA'; +console.log("StartupTime: "+startupTime.diff()); + + function next () { - let found = false; - for (const k of keys) { - if (found) { - kana = hiramode ? hiragana[k] : katakana[k]; - curkana = k; - return; - } - if (curkana === k) { - found = true; - } + const off = keys.indexOf(curkana); + if (off !== -1 && off + 1 < keys.length) { + return keys[off + 1]; } - curkana = 'KA'; - updateWatch(ohhmm); + return keys[0]; } function randKana() { try { - const total = keys.length; - let index = 0 | (Math.random() * total); + let index = 0 | (Math.random() * keys.length); curkana = keys[index]; } catch (e) { randKana(); } } +// const bench = benchStart(); +// console.log("-->" + bench.diff()); function prev () { - let oldk = ''; - let count = 0; - for (const k of keys) { - if (curkana === k) { - if (count > 0) { - curkana = oldk; - return; - } - } - oldk = k; - count++; + const off = keys.indexOf(curkana); + if (off > 0) { + return keys[off - 1]; + } + return keys[keys.length - 1]; +} +let color = 0; +const colors = [ + () => g.setColor(0,1,0), + () => g.setColor(1,1,0), + () => g.setColor(0,1,1), + () => g.setColor(1,1,1), + // too dark + () => g.setColor(0,0,1), + () => g.setColor(0,0,0), + () => g.setColor(1,0,0), +]; + +function nextColor() { + if (color + 1 >= colors.length) { + color = 0; + } else { + color++; + } +} +function prevColor() { + if (color < 1) { + color = colors.length - 1; + } else { + color--; } - curkana = oldk; - updateWatch(ohhmm); } -function updateWatch (hhmm) { +function render(hhmm) { g.setFontAlign(-1, -1, 0); g.setBgColor(0, 0, 0); g.setColor(0, 0, 0); - var whitecolor = false; - if (curkana.indexOf('A') != -1) { - g.setColor(1, 0, 0); - whitecolor = true; - } else if (curkana.indexOf('I') != -1) { - g.setColor(0, 1, 0); - } else if (curkana.indexOf('U') != -1) { - g.setColor(0, 0, 1); - whitecolor = true; - } else if (curkana.indexOf('E') != -1) { - g.setColor(1, 1, 0); - } else { - g.setColor(0, 1, 1); - } - g.fillRect(0, 0, w, h); + const whitecolor = color > 3; + colors[color](); + g.fillRect(0, 30, w, h); g.setFont('Vector', 50); if (whitecolor) { @@ -204,9 +218,9 @@ function updateWatch (hhmm) { } g.drawString(hhmm, x, y - 1); - drawKana(4 + (g.getWidth() / 6), 60); + drawKana(); drawMonthDay(); - Bangle.drawWidgets(); + // Bangle.drawWidgets(); // :? always draw? } function drawMonthDay() { @@ -227,21 +241,47 @@ function getPhoneme(k) { } return k; } - + +var ohhmm = ''; +var ypos = 0; +var xpos = 0; +var zpos = 1; function drawKana (x, y) { + if (!x) { + x = 4 + (g.getWidth() / 6); + } + if (!y) { + y = 40; + } + x += xpos; + y += ypos; g.setColor(0, 0, 0); - g.fillRect(0, 0, g.getWidth(), 6 * (h / 8) + 1); + g.fillRect(0, 30, g.getWidth(), 6 * (h / 8) + 1); g.setColor(1, 1, 1); + x -= ((zpos) - 1)*50; + y -= (zpos - 1)*50; kana = hiramode ? hiragana[curkana] : katakana[curkana]; - g.drawImage(kana, x + 20, 40, { scale: 1.6 }); + if (guard) { + g.setColor(0.8,0.8,0.8); + } + g.drawImage(kana, x + 20, y, { scale: 1.6 * zpos }); g.setColor(1, 1, 1); g.setFont('Vector', 24); g.drawString(getPhoneme(curkana), 4, 32); - g.drawString(hiramode ? 'H' : 'K', w - 20, 32); + if (hiramode) { + g.setColor(0.2,0.2,0.2) + g.drawString('K', w - 20, 32); + g.setColor(1, 1, 1); + g.drawString('H', w - 20, 32+24); + } else { + g.setColor(1, 1, 1); + g.drawString('K', w - 20, 32); + g.setColor(0.2,0.2,0.2) + g.drawString('H', w - 20, 32+24); + } + // g.drawString(hiramode ? 'H' : 'K', w - 20, 32); } -var ohhmm = ''; - function tickWatch () { const now = Date(); month = now.getMonth() + 1; @@ -251,27 +291,119 @@ function tickWatch () { } const hhmm = zpad(now.getHours()) + ':' + zpad(now.getMinutes()); if (hhmm !== ohhmm) { - randKana(); - updateWatch(hhmm); ohhmm = hhmm; + randKana(); + render(hhmm); } } +let guard = false; +function hiraPush(d,dx) { + if (guard) { + return; + } + xpos = 0; + ypos = 0; + zpos = 1; + guard = true; + var count = 2; + function paint() { + count--; + if (count < 0) { + guard = false; + xpos = 0; + ypos = 0; + zpos = 1; + render(ohhmm); + return; + } + zpos -= 0.04; + render(ohhmm); + setTimeout(paint, 5); + } + setTimeout (paint, 5); +} + +function hiraSwipe(d,dx, dostuff) { + if (guard) { + return; + } + if (dx) { + ypos = 0; + } else { + ypos = (d * 4); + } + xpos = 0; + guard = true; + var count = 2; + function paint() { + count--; + if (count < 0) { + if (dx) { + curkana = d>0?prev():next(); + } else { + if (dostuff) { + hiramode = !hiramode; + } + } + guard = false; + xpos = 0; + ypos = 0; + render(ohhmm); + return; + } + if (dx) { + xpos += (4*d); + } else { + ypos -= (4*d); + } + render(ohhmm); + setTimeout(paint, 5); + } + setTimeout (paint, 5); +} Bangle.on('touch', function (tap, top) { - if (top.x < w / 4) { - prev(); - } else if (top.x > (w - (w / 4))) { - next(); + if (top.y < (h / 1.5)) { + if (top.x > w /2) { + //hiramode = !hiramode; + if (hiramode) { + hiraSwipe(1,0, hiramode); + } else { + hiraSwipe(-1,0, !hiramode); + } + } else { + hiraSwipe(1,1,1); + } + } else if (top.x < w / 2) { + nextColor(); + hiraPush(); + // curkana = prev(); } else { - hiramode = !hiramode; + prevColor(); + hiraPush(); + // curkana = next(); } - kana = hiramode ? hiragana[curkana] : katakana[curkana]; - updateWatch(ohhmm); + render(ohhmm); +}); +Bangle.on('swipe', function (x,y) { + if (x > 0) { + // nextColor(); + hiraSwipe(1, 1); + } else if (x < 0) { + // prevColor(); + hiraSwipe(-1,1); + } else if (y < 0) { + hiraSwipe(1, 0, hiramode); + } else if (y > 0) { + hiraSwipe(-1, 0, !hiramode); + } + render(ohhmm); }); g.clear(true); // show launcher when button pressed Bangle.setUI('clock'); Bangle.loadWidgets(); +Bangle.drawWidgets(); tickWatch(); setInterval(tickWatch, 1000 * 60); diff --git a/apps/kanawatch/metadata.json b/apps/kanawatch/metadata.json index d1fb70b53..0a7fd8e4a 100644 --- a/apps/kanawatch/metadata.json +++ b/apps/kanawatch/metadata.json @@ -2,7 +2,7 @@ "id": "kanawatch", "name": "Kanawatch", "shortName": "Kanawatch", - "version": "0.08", + "version": "0.10", "type": "clock", "description": "Learn Hiragana and Katakana", "icon": "app.png", @@ -26,6 +26,9 @@ "screenshots": [ { "url": "screenshot.png" + }, + { + "url": "screenshot2.png" } ] } diff --git a/apps/kanawatch/screenshot.old.png b/apps/kanawatch/screenshot.old.png new file mode 100644 index 0000000000000000000000000000000000000000..b1ed879aa1a3b8bef32bb80f4c08b1443530a177 GIT binary patch literal 2992 zcmc&$=|7Z>8s=f7LAIGt7;9!IOR|?r7?WMu!@PE3MrpCNJds@nS+fi?vW>*CX7EHv zmQW^ZrV@pWUdt%rc+c;5{(|%2e7NuHcVG8)eY&p?cY=)-Rsenk&cVSUfHO0;+sEhs z6fe(yuW6cd-v`c6JFF4Mvmwdv92|UCamME_hq?bK_#RQE&u{XCeec_*{0WR~V}n+h z(DL?LPc*$=sE4YTT2oWQQrpD>xPzzBA)^Bt%SxPZ3t>A^GF0)dmx)oAGPAr7lv$yo z%b*)FTAc8F{X6`Hz&r3gH#%f-T_X%`ap3h;=g-a$9pghOlAOrfwEM08f>u|Vd@$d;*nlML|D06 zzvZ!C@^|jKlPZD01AZ{~p`!1c4U% zJ!MIk7Cp_n-y4&+iq%eTCfL5t^DgmvhW?>(Y%mYAx-I3llDi-FEx{5ZRq*Qb?@NM5$sz42xp17GRwGy&@8FJevc){AFRq61>BUd7fI-ssr1U zr9y^xS3V-f<4C~vR!ih1Jj&>Q5cRV+-DTQf&Swm*9}s`~NDInPS&I*7(x}d6Ml2Bd z?azjr8)@vz8ukAEV9Vr)XqQDlPo4c2dl5<4*gB0NL(&m6h;u#af(;(k@wJK=YY?LZ zLyTWgd$|b$2BJ|LD-xU85}x%Do$w&VZ125(__D?7SgT(-;lE@rd|5&4T>)UA=ldV> zDF__x3ojin`|-y_dId~5*dC!%1IfRd2_<11s�Pi)X@SJ7PR%+Tce2<*}39l{e#% zPUgwTaWk5=4m^mtSnWUcc$(`dB=*7v&xPIhe*KDxk$vgNG6FyJsjEDf6LY_YE&L;$ z{WT$Sea0y5k>4daO=e#Bul08JA*?^bNtVcH^X^Hq$~f$Rzn|s!z}Yp9CMHEncNB&5 z50^k3RGcMRo#Ug*>cD~Gfm*JLPZ#pJ`&1xWoQ~luTy9(60wSyxSF??363U!5jyGui z{kJS(hOZ{j+xG7v#CU6L?)ELq>&_rwJ-zSjAw6?$))C+C>NK{qOylhQ@U0hDBZ;Gq zLTpt*;Ly^x6>WO<$J2#_f6Jx6kBg8X=+#TGJcT!+T-_6a&E-60{xsbqSX8nQ`4XL`Ew^B^}RW%e1o0%_KnU} zx6vJ!BGRS_s0dLGALp#NquN~~r4!LM@-yH=Xb`Hc(eC(Y#9Iyj$xC>d?Gap-2zLyE zp%4-L4rbUH>?R?9c%?7hF}-kUt!Ms|$c9W}4|xMOwMzk5T zxoxVatOD97sL@kDmxD*DjRKav3el^e5UjDhoFzXq;VSmG9@Y{}6L}_h&plNnXJT}S zqT%O@bN5by*)#1tU48ByIy6Ib3_mwk9g)I_Z}tlhggpkL@9EW=F0Nt0H<1YO6XZ&- z`emeU2VBpQ{PWnd_>ZXM;)8NZzNRzL_Zd%IwkP*G=BnnT6PP*Lz_$_RwSJk6fECbu z;fBNzGB|9aN{18IbLZ|l-Q>>-HdKxBTKv=1t+~KZ*3e|+hMMO;J(&C_ah$j{A}1e;eTz{n+0+wRTAF*Uk1L%W zXc;Nx7i$jJy7!@B;*qr+wQ_Lw^h)mPV)(JL+)&Er_D8d(!Ll@)A-=lAAQAQ+$*zBF z`tCnFS5Tk=QVp+UJM8c*6yCFe-RgDrg!LGP5~}E~9T_}C*Uy^3 zPM`@ckcW5nXzi6(%HaaX6?2_IgUd{vZw+FiZ!U6s1Pv;E`fX}V>wJjHcOZJ8SJmpI zw=bG+q*Zo#JpbxTf$_L==}hcamu!UA4;P$oAtY$1gs|YpeK>Ze-9XN3BxU|sS0c}= z;@oIJNmzU`%PjZ6+=N1`a>c3a>nMWsBf)E(jnuC8!91E{2Se;`awIdAz|f<1bBd*% zdi68ZftieKPXDVs;wtx|Y_0EI$QvFd3l{0{1@Pg8(RSYbI|6B#RT%8BwJ1%5Q;t=J zuvId#6MhPbA)7I^_V|~_zEKszRuBL?;_V?$)T)r!#t$vN{b-txA%D@UpzXqeO9Gc` zlrtUK$^c5QAR~4+KPxW7(ev$eJasTSv#{6S9kj>uXI?h}PefwXlzzfYDe7Sh?(TSF z&vlRf_w<$Ojtw>Wz!bNn8V9Lrq@_s3fwF?0ftE8Ow`YxHfW5!H;zUc8D0 zr(){(qUiPsQ=GW0FAJU7^-WKU*X&t7ds?W<-E&&}DXy}lEp6)zR99Dn@77<)trKWw z${~7u5`5>%9*33vkmf>c#@TOdu=O0EJZ?zzS3G(d>{1Og`FcWiP`>Uq;oO`aa!WFY zCmojP8^z&Li#zd*d=_Kp=*?HgnAGB@ED&Bb#6o+eb<&jw5_xvt0POh~+RU#n(XSDC r+JOgY3HiY|{QHiy^P>vGNswTL^R&j#U}O6J3(kQvu`+&Ugn#gF@6nHi literal 0 HcmV?d00001 diff --git a/apps/kanawatch/screenshot.png b/apps/kanawatch/screenshot.png index b1ed879aa1a3b8bef32bb80f4c08b1443530a177..4ef0ecbf286c92361988b55513459dba2dec9dcf 100644 GIT binary patch literal 2653 zcmc&$`8(A67k|%Z7L4VRY}t||yG9|)wM3I`kfp2*vhNIyeNbq@wS=;TOzDoT7<4V4 zy7nx|PR2ynE~CX#->a|wf$y*1AI^C_&+9qQd7g95>paivwiN--jXj110C1aJGP-<- zb-#igbC_$JKDr(PBK$Jm5Y!Bbtpb1*GBGl+CA)4GuSPCvaV3xLCaesZP=mzroce)} zZ|#Q<2R2y2vJdl$chvqL?{2icA%DwJ*4-g(yWIBR=lbpBaNjmoEcr z3M7o?4@^ZpRo}h*C@;~!aodhtn20f@ZnkZV_<1P+!~oPsFKzP~Y$7B&W4zS1>LG+q z-<$V?o3(tmq~DlGr4&)IbuxvH-*4Kg@RPVFY@1w$`f5d*?fEC0PeZYv2G|uT`+D*H zD^6+=PlnwnrR9%Ka1s$kvqqz8tZmKAs&P~uD2WhwIsxO4v*lhA6ohr)0f8VvG3h0T zFzmK7J5pve^5!Lp?y>auVnR%=0ewZvyoQdSOjyK)p3gHik!x@Xn+=fWUB(UbEESbm zV@h7!@}c&tPL^V!&MHQ+5(ceQM-A||&Ih<{CAB(qZs=6EaMZ-bda}(O3(&*# zC+9-s=FUA-o=Zk%{BRyLl~oHBXn3IEJUzEimj|ZojCH3SUN|Gb4zo1K3%7dx9nDU3 zbwmvKtJ6}!Ql-HEpk^Gvm#q6SE5g-HUL(|mf zfWA7>mJjGA@|3`r+^e36KcVfuBjl>(B>bs9=`m z>J-euD*m9WKU-Neg=LDv0?@h$1UZi2X`|bf*sFg;1p6L(T=7BgBp}eQ#=({!+to+S;iMb)U)TY{7m5Hcz4_ zkxh8!!r>@Wgv{iUL)mD)1LJ} z&um&AS-LrkUfRT|`fa$}G?)}UcO&Za?YLAC-=A5D))#a+Mj@e>jJ)&qJKvZ#7K{G( z%ztbm2(Rq;LuCHgcs~nmxP72Gw9RlbT}|61UGi|7+YYOt}Q4 zK{`8*WvH0fsz&9XPaT6HvQX?qZ8$p|z}M!AF=jd-@?`08+a}IypICBv1SuWqMFqO^ z^z{02U(<*m+YU4(bdpiw7Ue$UeeKBr_X%>_;)2@md9n@v(zlR58XTt~{DG$450_3MBc}c$yfIBHQni?-W*cX8 z)f9;)?oM|jVLnnAGK9amRIVkqu{BmJ{8KN88S~|UCyVFo3a)(bzqV&Tl>T~M3W*v`dh3+Y$Bo~i;08txZM}Q->}mo z((3l}0EyRD>hL$HodHfnwo(G9nzYAqpV1kIFSp>~FbvZjk%2hz8J} z?30CwUJkyWS6c9yzipH$TiDY)R+8_PaIT#fT%Y*G4%bZ1#CK_-RIN(|gTn|{vNtXy z4mhW6H*TGv|L)afSoo69IKr>^iyb39R+Re;m6Q?FmZf!&V5<}@a29<6w~M7DG_D$; z&!^bQhCRF^?Y?84fwm1?^HYYYm<6c$z z^!iD-k0hqdCI0&R035u5=aC1abImpn=3XZagLLDTI&|rdno>g#%tGIc_I1M zhuPJ`CeJ>6bFEPf>ByAMq_atX{QU0R&t97}HKWs{-Y6w4!N7sn*<}Lm&rm*Sav4D~ zmW(OD{S&5hl!Gym-kw7kMO+-Hikk&m{k{Y8K3v|2@cE=Vuh9z0??TaG`NSmy%wHoh zYe&m(>Vtz)oj2cX8{?IL^SV=^HmB)QvNf2uc%lj_cngJcDUvTmH7pBOdfQ#>_s~+q zBmRX$M_;NHoBKDDjzwcbOa6?E3UIuq=J9Ayno_8!r)7!UyYZSaT?xIe3)l(O*iH@P zgtb@4l9{WZBdMk>w2QVu1zV5!J;G}?k5Mvx9Q85r`7`rp`Q!Z!pB&Tl9kYnI^IIMI z`WvZePVlt9rI`|Z{gI8;l^P$dS0`FEoC_0c4K&(03&)wtKw6XmDdTGR>N10rwq@K| p=n$2xvqS2K1}>1+zHImt@!)~m8TlMx(xG1jCdLG#8be~ze*wopz;*xt literal 2992 zcmc&$=|7Z>8s=f7LAIGt7;9!IOR|?r7?WMu!@PE3MrpCNJds@nS+fi?vW>*CX7EHv zmQW^ZrV@pWUdt%rc+c;5{(|%2e7NuHcVG8)eY&p?cY=)-Rsenk&cVSUfHO0;+sEhs z6fe(yuW6cd-v`c6JFF4Mvmwdv92|UCamME_hq?bK_#RQE&u{XCeec_*{0WR~V}n+h z(DL?LPc*$=sE4YTT2oWQQrpD>xPzzBA)^Bt%SxPZ3t>A^GF0)dmx)oAGPAr7lv$yo z%b*)FTAc8F{X6`Hz&r3gH#%f-T_X%`ap3h;=g-a$9pghOlAOrfwEM08f>u|Vd@$d;*nlML|D06 zzvZ!C@^|jKlPZD01AZ{~p`!1c4U% zJ!MIk7Cp_n-y4&+iq%eTCfL5t^DgmvhW?>(Y%mYAx-I3llDi-FEx{5ZRq*Qb?@NM5$sz42xp17GRwGy&@8FJevc){AFRq61>BUd7fI-ssr1U zr9y^xS3V-f<4C~vR!ih1Jj&>Q5cRV+-DTQf&Swm*9}s`~NDInPS&I*7(x}d6Ml2Bd z?azjr8)@vz8ukAEV9Vr)XqQDlPo4c2dl5<4*gB0NL(&m6h;u#af(;(k@wJK=YY?LZ zLyTWgd$|b$2BJ|LD-xU85}x%Do$w&VZ125(__D?7SgT(-;lE@rd|5&4T>)UA=ldV> zDF__x3ojin`|-y_dId~5*dC!%1IfRd2_<11s�Pi)X@SJ7PR%+Tce2<*}39l{e#% zPUgwTaWk5=4m^mtSnWUcc$(`dB=*7v&xPIhe*KDxk$vgNG6FyJsjEDf6LY_YE&L;$ z{WT$Sea0y5k>4daO=e#Bul08JA*?^bNtVcH^X^Hq$~f$Rzn|s!z}Yp9CMHEncNB&5 z50^k3RGcMRo#Ug*>cD~Gfm*JLPZ#pJ`&1xWoQ~luTy9(60wSyxSF??363U!5jyGui z{kJS(hOZ{j+xG7v#CU6L?)ELq>&_rwJ-zSjAw6?$))C+C>NK{qOylhQ@U0hDBZ;Gq zLTpt*;Ly^x6>WO<$J2#_f6Jx6kBg8X=+#TGJcT!+T-_6a&E-60{xsbqSX8nQ`4XL`Ew^B^}RW%e1o0%_KnU} zx6vJ!BGRS_s0dLGALp#NquN~~r4!LM@-yH=Xb`Hc(eC(Y#9Iyj$xC>d?Gap-2zLyE zp%4-L4rbUH>?R?9c%?7hF}-kUt!Ms|$c9W}4|xMOwMzk5T zxoxVatOD97sL@kDmxD*DjRKav3el^e5UjDhoFzXq;VSmG9@Y{}6L}_h&plNnXJT}S zqT%O@bN5by*)#1tU48ByIy6Ib3_mwk9g)I_Z}tlhggpkL@9EW=F0Nt0H<1YO6XZ&- z`emeU2VBpQ{PWnd_>ZXM;)8NZzNRzL_Zd%IwkP*G=BnnT6PP*Lz_$_RwSJk6fECbu z;fBNzGB|9aN{18IbLZ|l-Q>>-HdKxBTKv=1t+~KZ*3e|+hMMO;J(&C_ah$j{A}1e;eTz{n+0+wRTAF*Uk1L%W zXc;Nx7i$jJy7!@B;*qr+wQ_Lw^h)mPV)(JL+)&Er_D8d(!Ll@)A-=lAAQAQ+$*zBF z`tCnFS5Tk=QVp+UJM8c*6yCFe-RgDrg!LGP5~}E~9T_}C*Uy^3 zPM`@ckcW5nXzi6(%HaaX6?2_IgUd{vZw+FiZ!U6s1Pv;E`fX}V>wJjHcOZJ8SJmpI zw=bG+q*Zo#JpbxTf$_L==}hcamu!UA4;P$oAtY$1gs|YpeK>Ze-9XN3BxU|sS0c}= z;@oIJNmzU`%PjZ6+=N1`a>c3a>nMWsBf)E(jnuC8!91E{2Se;`awIdAz|f<1bBd*% zdi68ZftieKPXDVs;wtx|Y_0EI$QvFd3l{0{1@Pg8(RSYbI|6B#RT%8BwJ1%5Q;t=J zuvId#6MhPbA)7I^_V|~_zEKszRuBL?;_V?$)T)r!#t$vN{b-txA%D@UpzXqeO9Gc` zlrtUK$^c5QAR~4+KPxW7(ev$eJasTSv#{6S9kj>uXI?h}PefwXlzzfYDe7Sh?(TSF z&vlRf_w<$Ojtw>Wz!bNn8V9Lrq@_s3fwF?0ftE8Ow`YxHfW5!H;zUc8D0 zr(){(qUiPsQ=GW0FAJU7^-WKU*X&t7ds?W<-E&&}DXy}lEp6)zR99Dn@77<)trKWw z${~7u5`5>%9*33vkmf>c#@TOdu=O0EJZ?zzS3G(d>{1Og`FcWiP`>Uq;oO`aa!WFY zCmojP8^z&Li#zd*d=_Kp=*?HgnAGB@ED&Bb#6o+eb<&jw5_xvt0POh~+RU#n(XSDC r+JOgY3HiY|{QHiy^P>vGNswTL^R&j#U}O6J3(kQvu`+&Ugn#gF@6nHi diff --git a/apps/kanawatch/screenshot2.png b/apps/kanawatch/screenshot2.png new file mode 100644 index 0000000000000000000000000000000000000000..3e85485de6cda33947b54c915308dc3e897dfded GIT binary patch literal 2689 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 Gg}(uZY{0(& literal 0 HcmV?d00001 From 9a91595e416736273884ad6d02df3ae2189da66c Mon Sep 17 00:00:00 2001 From: pancake Date: Tue, 30 May 2023 03:26:19 +0200 Subject: [PATCH 1271/1725] Sort kanas by AIUEO instead of AEIOU --- apps/kanawatch/ChangeLog | 1 + apps/kanawatch/README.md | 22 ++++++++++++++-------- apps/kanawatch/app.js | 28 +++++++++++++++++++++++----- apps/kanawatch/metadata.json | 2 +- 4 files changed, 39 insertions(+), 14 deletions(-) diff --git a/apps/kanawatch/ChangeLog b/apps/kanawatch/ChangeLog index 1521bed73..a50406917 100644 --- a/apps/kanawatch/ChangeLog +++ b/apps/kanawatch/ChangeLog @@ -8,3 +8,4 @@ 0.08: Speedup next/prev and fix autogenerated hiragana bitmaps 0.09: Optimize loading and rendering times, introduce transition animations 0.10: Swipe up/down for Hiragana/Katakana, right/left for next/prev letter +0.11: Sort by 'AIUEO' instead of 'AEIOU', draw Widgets every minute :? diff --git a/apps/kanawatch/README.md b/apps/kanawatch/README.md index 87a9750b1..d13550f4d 100644 --- a/apps/kanawatch/README.md +++ b/apps/kanawatch/README.md @@ -1,14 +1,19 @@ # kanawatch -A simple watchface design with hiragana and katakana -cards for learning. +A simple watchface design perfect for learning hiragana and katakana. -## Changelog +* Interact with the interface using swipes +* Swipe up/down to switch between hiragana (H) and katakana (K) +* Swipe right/left to display the next or previous letter +* Tap to change accent color (always 24h, not configurable) +* Non-intrustive transition animations +* Low battery consumption -0.01: First release -0.02: Improve battery life, sprite resolution, fix launcher issue and unaligned text bug -0.03: Reduce code size, refresh once a minute and faster refresh -0.04: Show a random kana every minute to improve learning +## TODO + +* Only render what needs to be repainted +* Dont redraw the widgets if not necessary +* Minigame to guess kata/hira phonem ## Author @@ -16,4 +21,5 @@ Written by pancake in 2022, maintained during 2023 and powered by insomnia ## Screenshots -![hiragana and katakana](screenshot.png) +![katakana](screenshot.png) +![hiragana ](screenshot2.png) diff --git a/apps/kanawatch/app.js b/apps/kanawatch/app.js index 2aa5c2a3c..a81852b1b 100644 --- a/apps/kanawatch/app.js +++ b/apps/kanawatch/app.js @@ -131,16 +131,26 @@ WO: image(52, 49, "AAMf+AFDgP+Bgk/8AFDgYMM/gkD/4AC+EBAof/BkA5FhEAg45Cg/AgF/AQMBB N: image(54, 49, "AAMHAwsf8AGE/+AAocD/wTF+AGEv/ACZUP/ATKgP/CYv8Awk/IQgTBIQkHCYxCFCYxWTIQxWGFAhCBAwkPAwJCE/5KDCYQiBhhCBAwJlBn+Aj/+/49BDoP/8IDBgf8IQIDBKgUf/EPLAJUBv/gn/AFgKZCAIMHCIP4DQSXBAIIaC/+BCIIaBYwKZCLwIuBCYLRCFwIKBEYX/CYUfEYP4TIRACCYQ+BwZUBDwIYBOgITCRAQVCEIP//0BYISjB+CtDUYRNBAwQ5Bg7gDBQIA="), }; - +const keys = [ + "A","I","U","E","O", + "HA","HI","HU","HE","HO", + "KA","KI","KU","KE","KO", + "MA","MI","MU","ME","MO", + "NA","NI","NU","NE","NO", + "RA","RI","RU","RE","RO", + "SA","SI","SU","SE","SO", + "TA","TI","TU","TE","TO", + "WA","WO","YO","YU","N", + ]; let kana = katakana.KA; let scroll = 0; -const keys = Object.keys(katakana).sort(); +// const keys = Object.keys(katakana).sort(); +// console.log(keys); let hiramode = false; let curkana = 'KA'; console.log("StartupTime: "+startupTime.diff()); - function next () { const off = keys.indexOf(curkana); if (off !== -1 && off + 1 < keys.length) { @@ -318,7 +328,7 @@ function hiraPush(d,dx) { } zpos -= 0.04; render(ohhmm); - setTimeout(paint, 5); + setTimeout(paint, 100); } setTimeout (paint, 5); } @@ -352,7 +362,7 @@ function hiraSwipe(d,dx, dostuff) { return; } if (dx) { - xpos += (4*d); + xpos += (8*d); } else { ypos -= (4*d); } @@ -405,5 +415,13 @@ g.clear(true); Bangle.setUI('clock'); Bangle.loadWidgets(); Bangle.drawWidgets(); + +// redraw widgets every 10 minutes +setInterval(function() { + // maybe not always necessary + Bangle.drawWidgets(); +}, 1000 * 60 * 10); tickWatch(); setInterval(tickWatch, 1000 * 60); + + diff --git a/apps/kanawatch/metadata.json b/apps/kanawatch/metadata.json index 0a7fd8e4a..f3aaeae92 100644 --- a/apps/kanawatch/metadata.json +++ b/apps/kanawatch/metadata.json @@ -2,7 +2,7 @@ "id": "kanawatch", "name": "Kanawatch", "shortName": "Kanawatch", - "version": "0.10", + "version": "0.11", "type": "clock", "description": "Learn Hiragana and Katakana", "icon": "app.png", From 790db2f44251347fffef33300416085102196157 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Tue, 30 May 2023 18:05:20 -0500 Subject: [PATCH 1272/1725] Update locales.js to add "ft" to en_US locale --- apps/locale/locales.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/locale/locales.js b/apps/locale/locales.js index 7b3146e15..cd720ba62 100644 --- a/apps/locale/locales.js +++ b/apps/locale/locales.js @@ -1,6 +1,7 @@ /* jshint esversion: 6 */ const distanceUnits = { // how many meters per X? "m": 1, + "ft": 0.3048, "yd": 0.9144, "mi": 1609.34, "km": 1000, @@ -160,7 +161,7 @@ var locales = { currency_symbol: "$", currency_first: true, int_curr_symbol: "USD", speed: "mph", - distance: { 0: "m", 1: "mi" }, + distance: { 0: "ft", 1: "mi" }, temperature: "°F", ampm: { 0: "am", 1: "pm" }, timePattern: { 0: "%HH:%MM:%SS ", 1: "%HH:%MM" }, From 39f9d66041042a7cb16e8a007b20d3328e7672bc Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Tue, 30 May 2023 19:00:26 -0500 Subject: [PATCH 1273/1725] Update locale.html to remove leading zero in 12 hour mode --- apps/locale/locale.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/locale/locale.html b/apps/locale/locale.html index 6eb0d94ea..f9d89f846 100644 --- a/apps/locale/locale.html +++ b/apps/locale/locale.html @@ -156,7 +156,7 @@ exports = { name : "en_GB", currencySym:"£", "%-m": "d.getMonth()+1", "%d": "('0'+d.getDate()).slice(-2)", "%-d": "d.getDate()", - "%HH": "('0'+getHours(d)).slice(-2)", + "%HH": "getHours(d)", "%MM": "('0'+d.getMinutes()).slice(-2)", "%SS": "('0'+d.getSeconds()).slice(-2)", "%A": `${js(locale.day)}.split(',')[d.getDay()]`, @@ -191,9 +191,9 @@ function round(n, dp) { var is12; function getHours(d) { var h = d.getHours(); - if (is12===undefined) is12 = (require('Storage').readJSON('setting.json',1)||{})["12hour"]; - if (!is12) return h; - return (h%12==0) ? 12 : h%12; + if (is12 === undefined) is12 = (require('Storage').readJSON('setting.json', 1) || {})["12hour"]; + if (!is12) return ('0'+h).slice(-2); // return with leading zero in 24-hour format + return (h % 12 == 0) ? 12 : h % 12; } exports = { name: ${js(locale.lang)}, From 7df499d2772d03c6b2fe66d5c69eb0a9702844e0 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 31 May 2023 01:44:26 -0500 Subject: [PATCH 1274/1725] Update locale.html - fixes missing lead zero in 24 hour mode --- apps/locale/locale.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/locale/locale.html b/apps/locale/locale.html index f9d89f846..72c862da0 100644 --- a/apps/locale/locale.html +++ b/apps/locale/locale.html @@ -192,8 +192,8 @@ var is12; function getHours(d) { var h = d.getHours(); if (is12 === undefined) is12 = (require('Storage').readJSON('setting.json', 1) || {})["12hour"]; - if (!is12) return ('0'+h).slice(-2); // return with leading zero in 24-hour format - return (h % 12 == 0) ? 12 : h % 12; + if (!is12) return ('0' + h).slice(-2); + return ((h % 12 == 0) ? 12 : h % 12).toString(); } exports = { name: ${js(locale.lang)}, From d7f95a4ff59fd9b090eba9fc0067f8d9f538bac1 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 31 May 2023 02:10:07 -0500 Subject: [PATCH 1275/1725] [shadowclk] - Better settings and hour formatting --- apps/shadowclk/ChangeLog | 1 + apps/shadowclk/app.js | 26 ++++++-------------------- apps/shadowclk/metadata.json | 4 ++-- apps/shadowclk/settings.js | 24 ++++++++++++++++++------ 4 files changed, 27 insertions(+), 28 deletions(-) diff --git a/apps/shadowclk/ChangeLog b/apps/shadowclk/ChangeLog index 7ba343b2f..ce2933f0c 100644 --- a/apps/shadowclk/ChangeLog +++ b/apps/shadowclk/ChangeLog @@ -1,3 +1,4 @@ 0.01: New App! 0.02: New 'Settings Menu' to choose your favorite color and switch between light or dark themes 0.03: New 'Leading Zero' and 'Date Suffix' options in 'Settings Menu' +0.04: Updated settings menu to better maintain app settings and system settings diff --git a/apps/shadowclk/app.js b/apps/shadowclk/app.js index 7ffdc4683..dd47caf7b 100644 --- a/apps/shadowclk/app.js +++ b/apps/shadowclk/app.js @@ -37,7 +37,6 @@ let color = appSettings.color !== undefined ? appSettings.color : "#0ff"; let enableLeadingZero = appSettings.enableLeadingZero !== undefined ? appSettings.enableLeadingZero : false; let enableSuffix = appSettings.enableSuffix !== undefined ? appSettings.enableSuffix : true; -// Draw the time and date (function () { let drawTimeout; @@ -46,30 +45,17 @@ let enableSuffix = appSettings.enableSuffix !== undefined ? appSettings.enableSu var y = g.getHeight() / 2; g.reset().clearRect(Bangle.appRect); var date = new Date(); - var hour = date.getHours(); - var minutes = String(date.getMinutes()).padStart(2, '0'); + var locale = require("locale"); + var timeStr = locale.time(date, 1); - // Handle 12-hour format - if (is12Hour) { - hour = hour % 12 || 12; // Convert 0 to 12 for 12-hour format - } else { - // If the leading zero option is enabled and hour is less than 10, add leading zero - if (enableLeadingZero && hour < 10) { - hour = '0' + hour; - } - } - - var timeStr = hour + ':' + minutes; - - // Handle midnight in 12-hour format specifically - if (is12Hour && hour === 0) { - timeStr = '12' + timeStr.substring(2); + // If 24-hour format and leading zero should be removed + if (!is12Hour && !enableLeadingZero && timeStr.charAt(0) === '0') { + timeStr = timeStr.substr(1); } g.setFontAlign(0, 0).setFont("LondrinaSolid").setColor(color).drawString(timeStr, x - 1, y); g.reset().setFontAlign(0, 0).setFont("LondrinaShadow").drawString(timeStr, x - 1, y); - var locale = require("locale"); var dayOfMonth = date.getDate(); var month = locale.month(date, 1).slice(0, 1).toUpperCase() + locale.month(date, 1).slice(1).toLowerCase(); var year = date.getFullYear(); @@ -110,4 +96,4 @@ let enableSuffix = appSettings.enableSuffix !== undefined ? appSettings.enableSu Bangle.loadWidgets(); draw(); setTimeout(Bangle.drawWidgets, 0); -})(); \ No newline at end of file +})(); diff --git a/apps/shadowclk/metadata.json b/apps/shadowclk/metadata.json index 4e47b9845..432558b95 100644 --- a/apps/shadowclk/metadata.json +++ b/apps/shadowclk/metadata.json @@ -1,7 +1,7 @@ { "id": "shadowclk", "name": "Shadow Clock", - "version": "0.03", + "version": "0.04", "description": "A simple clock using the Londrina font in color with a shadowed outline. Based on the Anton Clock.", "icon": "app.png", "screenshots": [{ @@ -32,4 +32,4 @@ "data": [{ "name": "shadowclk.json" }] -} \ No newline at end of file +} diff --git a/apps/shadowclk/settings.js b/apps/shadowclk/settings.js index 21b4826a5..af94c8494 100644 --- a/apps/shadowclk/settings.js +++ b/apps/shadowclk/settings.js @@ -9,9 +9,18 @@ theme: 'light', enableSuffix: true, enableLeadingZero: false, - enable12Hour: false // default time mode + enable12Hour: false }, require('Storage').readJSON("shadowclk.json", true) || {}); + // Check if shadowclk is the selected clock + if (sysSettings.clock === "shadowclk.app.js") { + // Sync app settings with system settings + appSettings.theme = sysSettings.theme.dark ? 'dark' : 'light'; + if (sysSettings['12hour'] !== undefined) { + appSettings.enable12Hour = sysSettings['12hour']; + } + } + // Colors from 'Light BW' and 'Dark BW' themes function createThemeColors(mode) { let cl = x => g.setColor(x).getColor(); @@ -37,9 +46,10 @@ // Switch theme and save to storage function switchTheme(mode) { if (mode === g.theme.dark) return; - let s = require('Storage').readJSON("setting.json", 1) || {}; - s.theme = createThemeColors(mode); - require('Storage').writeJSON("setting.json", s); + sysSettings.theme = createThemeColors(mode); + if (sysSettings.clock && sysSettings.clock === "shadowclk.app.js") { + require('Storage').writeJSON("setting.json", sysSettings); + } updateTheme(mode); } @@ -85,8 +95,10 @@ } function writeTimeModeSetting() { - sysSettings['12hour'] = appSettings.enable12Hour; - require('Storage').writeJSON("setting.json", sysSettings); + if (sysSettings.clock && sysSettings.clock === "shadowclk.app.js") { + sysSettings['12hour'] = appSettings.enable12Hour; + require('Storage').writeJSON("setting.json", sysSettings); + } } function showMenu() { From 4ec93084b2ecac63c23c1c648cb70ab6caf9f34a Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 31 May 2023 05:35:28 -0500 Subject: [PATCH 1276/1725] Update settings.js - remove unnecessary code --- apps/shadowclk/settings.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/shadowclk/settings.js b/apps/shadowclk/settings.js index af94c8494..3fb774892 100644 --- a/apps/shadowclk/settings.js +++ b/apps/shadowclk/settings.js @@ -47,7 +47,7 @@ function switchTheme(mode) { if (mode === g.theme.dark) return; sysSettings.theme = createThemeColors(mode); - if (sysSettings.clock && sysSettings.clock === "shadowclk.app.js") { + if (sysSettings.clock === "shadowclk.app.js") { require('Storage').writeJSON("setting.json", sysSettings); } updateTheme(mode); @@ -95,7 +95,7 @@ } function writeTimeModeSetting() { - if (sysSettings.clock && sysSettings.clock === "shadowclk.app.js") { + if (sysSettings.clock === "shadowclk.app.js") { sysSettings['12hour'] = appSettings.enable12Hour; require('Storage').writeJSON("setting.json", sysSettings); } From 721df7cf286e798f99919524fd58b55f03a275b7 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 31 May 2023 21:47:16 +0200 Subject: [PATCH 1277/1725] Delete runplus (will readd soon) --- apps/runplus/ChangeLog | 22 ---- apps/runplus/README.md | 76 ------------- apps/runplus/app-icon.js | 1 - apps/runplus/app.js | 198 --------------------------------- apps/runplus/app.png | Bin 1479 -> 0 bytes apps/runplus/karvonen.js | 215 ------------------------------------ apps/runplus/metadata.json | 20 ---- apps/runplus/screenshot.png | Bin 3716 -> 0 bytes apps/runplus/settings.js | 157 -------------------------- 9 files changed, 689 deletions(-) delete mode 100644 apps/runplus/ChangeLog delete mode 100644 apps/runplus/README.md delete mode 100644 apps/runplus/app-icon.js delete mode 100644 apps/runplus/app.js delete mode 100644 apps/runplus/app.png delete mode 100644 apps/runplus/karvonen.js delete mode 100644 apps/runplus/metadata.json delete mode 100644 apps/runplus/screenshot.png delete mode 100644 apps/runplus/settings.js diff --git a/apps/runplus/ChangeLog b/apps/runplus/ChangeLog deleted file mode 100644 index d920a3eca..000000000 --- a/apps/runplus/ChangeLog +++ /dev/null @@ -1,22 +0,0 @@ -0.01: New App! -0.02: Set pace format to mm:ss, time format to h:mm:ss, - added settings to opt out of GPS and HRM -0.03: Fixed distance calculation, tested against Garmin Etrex, Amazfit GTS 2 -0.04: Use the exstats module, and make what is displayed configurable -0.05: exstats updated so update 'distance' label is updated, option for 'speed' -0.06: Add option to record a run using the recorder app automatically -0.07: Fix crash if an odd number of active boxes are configured (fix #1473) -0.08: Added support for notifications from exstats. Support all stats from exstats -0.09: Fix broken start/stop if recording not enabled (fix #1561) -0.10: Don't allow the same setting to be chosen for 2 boxes (fix #1578) -0.11: Notifications fixes -0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 -0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) -0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working -0.15: Diverge from the standard "Run" app. Swipe to intensity interface a la Karvonen (curtesy of FTeacher at https://github.com/f-teacher) - Keep run state between runs (allowing you to exit and restart the app) -0.16: Don't clear zone 2b indicator segment when updating HRM reading. - Write to correct settings file, fixing settings not working. -0.17: Fix typo in variable name preventing starting a run. -0.18: Tweak HRM min/max defaults. Extend min/max intervals in settings. Fix - another typo. diff --git a/apps/runplus/README.md b/apps/runplus/README.md deleted file mode 100644 index 659cd964d..000000000 --- a/apps/runplus/README.md +++ /dev/null @@ -1,76 +0,0 @@ -# Run App - -This app allows you to display the status of your run, it -shows distance, time, steps, cadence, pace and more. - -To use it, start the app and press the middle button so that -the red `STOP` in the bottom right turns to a green `RUN`. - -## Display - -* `DIST` - the distance travelled based on the GPS (if you have a GPS lock). - * NOTE: this is based on the GPS coordinates which are not 100% accurate, especially initially. As - the GPS updates your position as it gets more satellites your position changes and the distance - shown will increase, even if you are standing still. -* `TIME` - the elapsed time for your run -* `PACE` - the number of minutes it takes you to run a given distance, configured in settings (default 1km) **based on your run so far** -* `HEART (BPM)` - Your current heart rate -* `Max BPM` - Your maximum heart rate reached during the run -* `STEPS` - Steps since you started exercising -* `CADENCE` - Steps per second based on your step rate *over the last minute* -* `GPS` - this is green if you have a GPS lock. GPS is turned on automatically -so if you have no GPS lock you just need to wait. -* The current time is displayed right at the bottom of the screen -* `RUN/STOP` - whether the distance for your run is being displayed or not - -## Recording Tracks - -When the `Recorder` app is installed, `Run` will automatically start and stop tracks -as needed, prompting you to overwrite or begin a new track if necessary. - -## Settings - -Under `Settings` -> `App` -> `Run` you can change settings for this app. - -* `Record Run` (only displayed if `Recorder` app installed) should the Run app automatically -record GPS/HRM/etc data every time you start a run? -* `Pace` is the distance that pace should be shown over - 1km, 1 mile, 1/2 Marathon or 1 Marathon -* `Boxes` leads to a submenu where you can configure what is shown in each of the 6 boxes on the display. - Available stats are "Time", "Distance", "Steps", "Heart (BPM)", "Max BPM", "Pace (avg)", "Pace (curr)", "Speed", and "Cadence". - Any box set to "-" will display no information. - * Box 1 is the top left (defaults to "Distance") - * Box 2 is the top right (defaults to "Time") - * Box 3 is the middle left (defaults to "Pace (avg)") - * Box 4 is the middle right (defaults to "Heart (BPM)") - * Box 5 is the bottom left (defaults to "Steps") - * Box 6 is the bottom right (defaults to "Cadence") -* `Notifications` leads to a submenu where you can configure if the app will notify you after -your distance, steps, or time repeatedly pass your configured thresholds - * `Ntfy Dist`: The distance that you must pass before you are notified. Follows the `Pace` options - * "Off" (default), "1km", "1 mile", "1/2 Marathon", "1 Marathon" - * `Ntfy Steps`: The number of steps that must pass before you are notified. - * "Off" (default), 100, 500, 1000, 5000, 10000 - * `Ntfy Time`: The amount of time that must pass before you are notified. - * "Off" (default), "30 sec", "1 min", "2 min", "5 min", "10 min", "30 min", "1 hour" - * `Dist Pattern`: The vibration pattern to use to notify you about meeting your distance threshold - * `Step Pattern`: The vibration pattern to use to notify you about meeting your step threshold - * `Time Pattern`: The vibration pattern to use to notify you about meeting your time threshold - -## TODO - -* Keep a log of each run's stats (distance/steps/etc) - -## Development - -This app uses the [`exstats` module](https://github.com/espruino/BangleApps/blob/master/modules/exstats.js). When uploaded via the -app loader, the module is automatically included in the app's source. However -when developing via the IDE the module won't get pulled in by default. - -There are some options to fix this easily - please check out the [modules README.md file](https://github.com/espruino/BangleApps/blob/master/modules/README.md) -## Contributors (Run and Run+) -gfwilliams -hughbarney -GrandVizierOlaf -BartS23 -f-teacher -thyttan diff --git a/apps/runplus/app-icon.js b/apps/runplus/app-icon.js deleted file mode 100644 index a97d1b8ce..000000000 --- a/apps/runplus/app-icon.js +++ /dev/null @@ -1 +0,0 @@ -require("heatshrink").decompress(atob("mEw4UA///pH9vEFt9TIW0FqALJitUBZNVqoLqgo4BHZAUBtBTHgILB1XAEREV1WsEQ9AgWq1ALHgEO1WtBYxCBhWq0pdInWq2tABY8q1WVBZGq1XFBZS/IKQRvCDIsP9WsBZP60CTCBYs//+wLxALBTQ4AB///+AKHgYLB/gLK/4LHh//AIIwFitVr/8DIIwFLANXBAILIqogBn7DBEYrXBeQRgIBYKmHDgYLLZRBACBZYKJZIILKKRZeWgJGKAFQA==")) diff --git a/apps/runplus/app.js b/apps/runplus/app.js deleted file mode 100644 index 7cb5d4381..000000000 --- a/apps/runplus/app.js +++ /dev/null @@ -1,198 +0,0 @@ -// Use widget utils to show/hide widgets -let wu = require("widget_utils"); - -let runInterval; -let karvonenActive = false; -// Run interface wrapped in a function -let ExStats = require("exstats"); -let B2 = process.env.HWVERSION===2; -let Layout = require("Layout"); -let locale = require("locale"); -let fontHeading = "6x8:2"; -let fontValue = B2 ? "6x15:2" : "6x8:3"; -let headingCol = "#888"; -let fixCount = 0; -let isMenuDisplayed = false; - -g.reset().clear(); -Bangle.loadWidgets(); -Bangle.drawWidgets(); -wu.show(); - -// --------------------------- -let settings = Object.assign({ - record: true, - B1: "dist", - B2: "time", - B3: "pacea", - B4: "bpm", - B5: "step", - B6: "caden", - paceLength: 1000, - notify: { - dist: { - value: 0, - notifications: [], - }, - step: { - value: 0, - notifications: [], - }, - time: { - value: 0, - notifications: [], - }, - }, - HRM: { - min: 55, - max: 185, - }, -}, require("Storage").readJSON("runplus.json", 1) || {}); -let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); -let exs = ExStats.getStats(statIDs, settings); -// --------------------------- - -function setStatus(running) { - layout.button.label = running ? "STOP" : "START"; - layout.status.label = running ? "RUN" : "STOP"; - layout.status.bgCol = running ? "#0f0" : "#f00"; - layout.render(); -} - -// Called to start/stop running -function onStartStop() { - let running = !exs.state.active; - let prepPromises = []; - // start/stop recording - // Do this first in case recorder needs to prompt for - // an overwrite before we start tracking exstats - if (settings.record && WIDGETS["recorder"]) { - if (running) { - isMenuDisplayed = true; - prepPromises.push( - WIDGETS["recorder"].setRecording(true).then(() => { - isMenuDisplayed = false; - layout.setUI(); // grab our input handling again - layout.forgetLazyState(); - layout.render(); - }) - ); - } else { - prepPromises.push( - WIDGETS["recorder"].setRecording(false) - ); - } - } - - if (!prepPromises.length) // fix for Promise.all bug in 2v12 - prepPromises.push(Promise.resolve()); - - Promise.all(prepPromises) - .then(() => { - if (running) { - exs.start(); - } else { - exs.stop(); - } - // if stopping running, don't clear state - // so we can at least refer to what we've done - setStatus(running); - }); -} - -let lc = []; -// Load stats in pair by pair -for (let i=0;ilayout[e.id].label = e.getString()); - if (sb) sb.on('changed', e=>layout[e.id].label = e.getString()); -} -// At the bottom put time/GPS state/etc -lc.push({ type:"h", filly:1, c:[ - {type:"txt", font:fontHeading, label:"GPS", id:"gps", fillx:1, bgCol:"#f00" }, - {type:"txt", font:fontHeading, label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg }, - {type:"txt", font:fontHeading, label:"---", id:"status", fillx:1 } -]}); -// Now calculate the layout -let layout = new Layout( { - type:"v", c: lc -},{lazy:true, btns:[{ label:"---", cb: (()=>{if (karvonenActive) {stopKarvonenUI();run();} onStartStop();}), id:"button"}]}); -delete lc; -setStatus(exs.state.active); -layout.render(); - -function configureNotification(stat) { - stat.on('notify', (e)=>{ - settings.notify[e.id].notifications.reduce(function (promise, buzzPattern) { - return promise.then(function () { - return Bangle.buzz(buzzPattern[0], buzzPattern[1]); - }); - }, Promise.resolve()); - }); -} - -Object.keys(settings.notify).forEach((statType) => { - if (settings.notify[statType].increment > 0 && exs.stats[statType]) { - configureNotification(exs.stats[statType]); - } -}); - -// Handle GPS state change for icon -Bangle.on("GPS", function(fix) { - layout.gps.bgCol = fix.fix ? "#0f0" : "#f00"; - if (!fix.fix) return; // only process actual fixes - if (fixCount++ === 0) { - Bangle.buzz(); // first fix, does not need to respect quiet mode - } -}); - -// run() function used to switch between traditional run UI and karvonen UI -function run() { - wu.show(); - layout.lazy = false; - layout.render(); - layout.lazy = true; - // We always call ourselves once a second to update - if (!runInterval){ - runInterval = setInterval(function() { - layout.clock.label = locale.time(new Date(),1); - if (!isMenuDisplayed && !karvonenActive) layout.render(); - }, 1000); - } -} -run(); - -/////////////////////////////////////////////// -// Karvonen -/////////////////////////////////////////////// - -function stopRunUI() { - // stop updating and drawing the traditional run app UI - clearInterval(runInterval); - runInterval = undefined; - karvonenActive = true; -} - -function stopKarvonenUI() { - g.reset().clear(); - clearInterval(karvonenInterval); - karvonenInterval = undefined; - karvonenActive = false; -} - -let karvonenInterval; -// Define the function to go back and forth between the different UI's -function swipeHandler(LR,_) { - if (LR==-1 && karvonenActive && !isMenuDisplayed) {stopKarvonenUI(); run();} - if (LR==1 && !karvonenActive && !isMenuDisplayed) {stopRunUI(); karvonenInterval = eval(require("Storage").read("runplus_karvonen"))(settings.HRM, exs.stats.bpm);} -} -// Listen for swipes with the swipeHandler -Bangle.on("swipe", swipeHandler); diff --git a/apps/runplus/app.png b/apps/runplus/app.png deleted file mode 100644 index 7059b8b015e20039a96de8b65c8a6b68a5e51e18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1479 zcmV;&1vvVNP)b0~r9hI1hzN2C_Hz2bec46d zz32!1f7|Dr^Zft+eV+5aXV1bTJi@~b@gPX$zNip1Yz1>vN2mz2DMEkvlG@MN zqD@lE?a)(59(>u0=Kppec*EA5(*zQ(EG3+(+KI->CEFJ!ACP%5!I+F&=p{{UFEnH!o7WN}(7DfEF{6T=^qRTOGUUmDCINa`%K?dqCzyBw&^& zdx;n90#h)O*AZj`^*@L)UE%?ZC>&z+*w0Pj=Mr*u5X*l)p2LibbmVEnr6riETg&$lZ8)JSSrFFIvt>|1LfBuoykZR)&GJv4Nif!en;z zv+6Z;L-k`+==0YD>-(E?LK%{G3lE#^`JOB$P&RcWluLnM)#~Vk(_duC*`K_4L>V>S z)_4dF#+CBq(XN1$@$$f&f%ft_-N11%bdLd>txt@&{Fx`lWV(+H188fpdoMWEz{=c= zcS=M^psn$7;>Mk!^KP#d`utPCk6iBMM%oOs0tuJ37nQ16rohH)E z9ia`tY}y~?;W9hY+Ci=jL57GcSZ9mZX%$dBo+%nx{F~SG>u0QvN67NBtqYU0IzJ12 z!D%4xE@^d0`F6j&s+C&7&h>F)stg0CXcP_pe^xQKQS72jOY-(wh zZbX~G&?_#4KvUbwYbW!Gs64aVQ65`xr~;X3@&0)ixmMMvar5@_BseI*>bwB=Hsh4X zYQh$!?Cq~z?1DoTIA3l2sj5-q2GG>pLe-60r0n}JscF?|Pu=!AaWEs^-w{4*u-m|v z)cN}2e|5diF%6APc(zvE@zj|5xTt9M^e(*}a5ghB(al~?Yp}~eT3VX+_&;u68O^;r zFm#Zy>3N^}(KCW>&hyn7OqS~|H4F%<8>aciPOVnaXAj8ih*=;qfnl~5NeLTDd^m8~ zvnv)fz-)*f*%Y>B(}4>B-+uJwvah5;)T5WD&l4qTwmGbG5^Ni*$W&M4^}G>c@+r0 zm&L6n!K$N!Oe1_uD^fG^zOXju@RlWhrFCBC&eabb;-_mPZum831lFJkDuuov#6kU5 z4CF+`AmwiE&BPU?TrL(A+P>=nva%L?1T`4WzcBdbD0fZgQOG$4`W)s&T>c@z;lw?$ z*r#$R-lF#xBG~4P-1p~Z&LlR|e(BYTGQ71roRQk)24wckiNM_6L75_6I@Icn{4O=n ze($4X(0i|)Kwp^SEDqOJAUkp)FsXM?t`S20EwnAT>>nDL9jAl(3m`*#gmZ99% of HRR+minHR = serious risk of heart attack - let minzone2 = hrr * 0.6 + minhr; - let maxzone2 = hrr * 0.7 + minhr; - let maxzone3 = hrr * 0.8 + minhr; - let maxzone4 = hrr * 0.9 + minhr; - let maxzone5 = hrr * 0.99 + minhr; - - // HR data: large, readable, in the middle of the screen - function drawHR() { - g.setFontAlign(-1,0,0); - g.clearRect(Rdiv(x,11/4),Rdiv(y,2)-25,Rdiv(x,11/4)+50*2-14,Rdiv(y,2)+25); - g.setColor(g.theme.fg); - g.setFont("Vector",50); - g.drawString(hr, Rdiv(x,11/4), Rdiv(y,2)+4); - } - - function drawWaitHR() { - g.setColor(g.theme.fg); - // Waiting for HRM - g.setFontAlign(0,0,0); - g.setFont("Vector",50); - g.drawString("--", Rdiv(x,2)+4, Rdiv(y,2)+4); - - // Waiting for current Zone - g.setFont("Vector",24); - g.drawString("Z-", Rdiv(x,4.3)-3, Rdiv(y,2)+2); - - // waiting for upper and lower limit of current zone - g.setFont("Vector",20); - g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/2)); - g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/7)); - } - - //These functions call arcs to show different HR zones. - - //To shorten the code, I'll reference some letiables and reuse them. - let centreX = R.x + 0.5 * R.w; - let centreY = R.y + 0.5 * R.h; - let minRadius = 0.38 * R.h; - let maxRadius = 0.50 * R.h; - - //draw background image (dithered green zones)(I should draw different zones in different dithered colors) - const HRzones= require("graphics_utils"); - let minRadiusz = 0.44 * R.h; - let startAngle = HRzones.degreesToRadians(-88.5); - let endAngle = HRzones.degreesToRadians(268.5); - - function drawBgArc() { - g.setColor(g.theme.dark==false?0xC618:"#002200"); - HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); - } - - const zones = require("graphics_utils"); - //####### A function to simplify a bit the code ###### - function simplify (sA, eA, Z, currentZone, lastZone) { - let startAngle = zones.degreesToRadians(sA); - let endAngle = zones.degreesToRadians(eA); - if (currentZone == lastZone) zones.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); - else zones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); - g.setFont("Vector",24); - g.clearRect(Rdiv(x,4.3)-12, Rdiv(y,2)+2-12,Rdiv(x,4.3)+12, Rdiv(y,2)+2+12); - g.setFontAlign(0,0,0); - g.drawString(Z, Rdiv(x,4.3), Rdiv(y,2)+2); - } - - function zoning (max, min) { // draw values of upper and lower limit of current zone - g.setFont("Vector",20); - g.setColor(g.theme.fg); - g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/2)-10,Rdiv(x,2)+20*2, Rdiv(y,9/2)+10); - g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/7)-10,Rdiv(x,2)+20*2, Rdiv(y,9/7)+10); - g.setFontAlign(0,0,0); - g.drawString(max, Rdiv(x,2), Rdiv(y,9/2)); - g.drawString(min, Rdiv(x,2), Rdiv(y,9/7)); - } - - function clearCurrentZone() { // Clears the extension of the current zone by painting the extension area in background color - g.setColor(g.theme.bg); - HRzones.fillArc(g, centreX, centreY, minRadius-1, minRadiusz, startAngle, endAngle); - } - - function getZone(zone) { - drawBgArc(); - clearCurrentZone(); - if (zone >= 0) {zoning(minzone2, minhr);g.setColor("#00ffff");simplify(-88.5, -45, "Z1", 0, zone);} - if (zone >= 1) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-43.5, -21.5, "Z2", 1, zone);} - if (zone >= 2) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-20, 1.5, "Z2", 2, zone);} - if (zone >= 3) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(3, 24, "Z2", 3, zone);} - if (zone >= 4) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(25.5, 46.5, "Z3", 4, zone);} - if (zone >= 5) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(48, 69, "Z3", 5, zone);} - if (zone >= 6) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(70.5, 91.5, "Z3", 6, zone);} - if (zone >= 7) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(93, 114.5, "Z4", 7, zone);} - if (zone >= 8) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(116, 137.5, "Z4", 8, zone);} - if (zone >= 9) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(139, 160, "Z4", 9, zone);} - if (zone >= 10) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(161.5, 182.5, "Z5", 10, zone);} - if (zone >= 11) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(184, 205, "Z5", 11, zone);} - if (zone == 12) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(206.5, 227.5, "Z5", 12, zone);} - } - - function getZoneAlert() { - const HRzonemax = require("graphics_utils"); - let centreX1,centreY1,maxRadius1 = 1; - let minRadius = 0.40 * R.h; - let startAngle1 = HRzonemax.degreesToRadians(-90); - let endAngle1 = HRzonemax.degreesToRadians(270); - g.setFont("Vector",38);g.setColor("#ff0000"); - HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); - g.drawString("ALERT", 26,66); - } - - //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. - let subZoneLast; - function drawZones() { - if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawArrows(); drawHR();} // Reset UI when coming down from zone alert. - if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} // Z1 - else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} // Z2a - else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} // Z2b - else if (hr <= hrr * 0.70 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getZone(subZoneLast);}} // Z2c - else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getZone(subZoneLast);}} // Z3a - else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getZone(subZoneLast);}} // Z3b - else if (hr <= hrr * 0.80 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getZone(subZoneLast);}} // Z3c - else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getZone(subZoneLast);}} // Z4a - else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getZone(subZoneLast);}} // Z4b - else if (hr <= hrr * 0.90 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getZone(subZoneLast);}} // Z4c - else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getZone(subZoneLast);}} // Z5a - else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getZone(subZoneLast);}} // Z5b - else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getZone(subZoneLast);}} // Z5c - else if (hr >= maxhr - 2) {subZoneLast=13; g.clear();getZoneAlert();} // Alert - } - - function initDraw() { - drawArrows(); - if (hr!=0) updateUI(true); else {drawWaitHR(); drawBgArc();} - //drawZones(); - } - - let hrLast; - //h = 0; // Used to force hr update via web ui console field to trigger draws, together with `if (h!=0) hr = h;` below. - function updateUI(resetHrLast) { // Update UI, only draw if warranted by change in HR. - hrLast = resetHrLast?0:hr; // Handles correct updating on init depending on if we've got HRM readings yet or not. - hr = exsHrmStats.getValue(); - //if (h!=0) hr = h; - if (hr!=hrLast) { - drawHR(); - drawZones(); - } //g.setColor(g.theme.fg).drawLine(175/2,0,175/2,175).drawLine(0,175/2,175,175/2); // Used to align UI elements. - } - - initDraw(); - - // check for updates every second. - karvonenInterval = setInterval(function() { - if (!isMenuDisplayed && karvonenActive) updateUI(); - }, 1000); - - return karvonenInterval; -}) diff --git a/apps/runplus/metadata.json b/apps/runplus/metadata.json deleted file mode 100644 index 60860dc07..000000000 --- a/apps/runplus/metadata.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "id": "runplus", - "name": "Run+", - "version": "0.18", - "description": "Displays distance, time, steps, cadence, pace and more for runners. Based on the Run app, but extended with additional screen for heart rate interval training.", - "icon": "app.png", - "tags": "run,running,fitness,outdoors,gps,karvonen,karvonnen", - "supports": ["BANGLEJS2"], - "screenshots": [{"url": "screenshot.png"}], - "readme": "README.md", - "storage": [ - {"name": "runplus.app.js", "url": "app.js"}, - {"name": "runplus.img", "url": "app-icon.js", "evaluate": true}, - {"name": "runplus.settings.js", "url": "settings.js"}, - {"name": "runplus_karvonen", "url": "karvonen.js"} - ], - "data": [ - {"name": "runplus.json"} - ] -} diff --git a/apps/runplus/screenshot.png b/apps/runplus/screenshot.png deleted file mode 100644 index 1a813f19dfe304e3d8bf711692fd2abf1013c391..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3716 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.id); - - // ...and overwrite them with any saved values - // This way saved values are preserved if a new version adds more settings - const storage = require('Storage') - let settings = Object.assign({ - record: true, - B1: "dist", - B2: "time", - B3: "pacea", - B4: "bpm", - B5: "step", - B6: "caden", - paceLength: 1000, // TODO: Default to either 1km or 1mi based on locale - notify: { - dist: { - increment: 0, - notifications: [], - }, - step: { - increment: 0, - notifications: [], - }, - time: { - increment: 0, - notifications: [], - }, - }, - HRM: { - min: 55, - max: 185, - }, - }, storage.readJSON(SETTINGS_FILE, 1) || {}); - function saveSettings() { - storage.write(SETTINGS_FILE, settings) - } - - function getBoxChooser(boxID) { - return { - min: 0, max: statsIDs.length-1, - value: Math.max(statsIDs.indexOf(settings[boxID]),0), - format: v => statsList[v].name, - onchange: v => { - settings[boxID] = statsIDs[v]; - saveSettings(); - }, - } - } - - function sampleBuzz(buzzPatterns) { - return buzzPatterns.reduce(function (promise, buzzPattern) { - return promise.then(function () { - return Bangle.buzz(buzzPattern[0], buzzPattern[1]); - }); - }, Promise.resolve()); - } - - var menu = { - '': { 'title': 'Run' }, - '< Back': back, - }; - if (global.WIDGETS&&WIDGETS["recorder"]) - menu[/*LANG*/"Record Run"] = { - value : !!settings.record, - onchange : v => { - settings.record = v; - saveSettings(); - } - }; - var notificationsMenu = { - '< Back': function() { E.showMenu(menu) }, - } - menu[/*LANG*/"Notifications"] = function() { E.showMenu(notificationsMenu)}; - ExStats.appendMenuItems(menu, settings, saveSettings); - ExStats.appendNotifyMenuItems(notificationsMenu, settings, saveSettings); - var vibPatterns = [/*LANG*/"Off", ".", "-", "--", "-.-", "---"]; - var vibTimes = [ - [], - [[100, 1]], - [[300, 1]], - [[300, 1], [300, 0], [300, 1]], - [[300, 1],[300, 0], [100, 1], [300, 0], [300, 1]], - [[300, 1],[300, 0],[300, 1],[300, 0],[300, 1]], - ]; - notificationsMenu[/*LANG*/"Dist Pattern"] = { - value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.dist.notifications))), - min: 0, max: vibTimes.length - 1, - format: v => vibPatterns[v]||/*LANG*/"Off", - onchange: v => { - settings.notify.dist.notifications = vibTimes[v]; - sampleBuzz(vibTimes[v]); - saveSettings(); - } - } - notificationsMenu[/*LANG*/"Step Pattern"] = { - value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.step.notifications))), - min: 0, max: vibTimes.length - 1, - format: v => vibPatterns[v]||/*LANG*/"Off", - onchange: v => { - settings.notify.step.notifications = vibTimes[v]; - sampleBuzz(vibTimes[v]); - saveSettings(); - } - } - notificationsMenu[/*LANG*/"Time Pattern"] = { - value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.time.notifications))), - min: 0, max: vibTimes.length - 1, - format: v => vibPatterns[v]||/*LANG*/"Off", - onchange: v => { - settings.notify.time.notifications = vibTimes[v]; - sampleBuzz(vibTimes[v]); - saveSettings(); - } - } - var boxMenu = { - '< Back': function() { E.showMenu(menu) }, - } - Object.assign(boxMenu,{ - 'Box 1': getBoxChooser("B1"), - 'Box 2': getBoxChooser("B2"), - 'Box 3': getBoxChooser("B3"), - 'Box 4': getBoxChooser("B4"), - 'Box 5': getBoxChooser("B5"), - 'Box 6': getBoxChooser("B6"), - }); - menu[/*LANG*/"Boxes"] = function() { E.showMenu(boxMenu)}; - - var hrmMenu = { - '< Back': function() { E.showMenu(menu) }, - } - - menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; - hrmMenu[/*LANG*/"min"] = { - min: 1, max: 100, - value: settings.HRM.min, - format: w => w, - onchange: w => { - settings.HRM.min = w; - saveSettings(); - }, - } - hrmMenu[/*LANG*/"max"] = { - min: 101, max: 220, - value: settings.HRM.max, - format: v => v, - onchange: v => { - settings.HRM.max = v; - saveSettings(); - }, - } - E.showMenu(menu); -}) From 6822d8ed709b484c37118d28f31bd3da004f3df7 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 31 May 2023 21:58:19 +0200 Subject: [PATCH 1278/1725] Forking run to runplus (2nd time) --- apps/runplus/ChangeLog | 17 ++++ apps/runplus/README.md | 69 ++++++++++++++++ apps/runplus/app-icon.js | 1 + apps/runplus/app.js | 160 ++++++++++++++++++++++++++++++++++++ apps/runplus/app.png | Bin 0 -> 1479 bytes apps/runplus/metadata.json | 16 ++++ apps/runplus/screenshot.png | Bin 0 -> 3716 bytes apps/runplus/settings.js | 129 +++++++++++++++++++++++++++++ 8 files changed, 392 insertions(+) create mode 100644 apps/runplus/ChangeLog create mode 100644 apps/runplus/README.md create mode 100644 apps/runplus/app-icon.js create mode 100644 apps/runplus/app.js create mode 100644 apps/runplus/app.png create mode 100644 apps/runplus/metadata.json create mode 100644 apps/runplus/screenshot.png create mode 100644 apps/runplus/settings.js diff --git a/apps/runplus/ChangeLog b/apps/runplus/ChangeLog new file mode 100644 index 000000000..e79696c78 --- /dev/null +++ b/apps/runplus/ChangeLog @@ -0,0 +1,17 @@ +0.01: New App! +0.02: Set pace format to mm:ss, time format to h:mm:ss, + added settings to opt out of GPS and HRM +0.03: Fixed distance calculation, tested against Garmin Etrex, Amazfit GTS 2 +0.04: Use the exstats module, and make what is displayed configurable +0.05: exstats updated so update 'distance' label is updated, option for 'speed' +0.06: Add option to record a run using the recorder app automatically +0.07: Fix crash if an odd number of active boxes are configured (fix #1473) +0.08: Added support for notifications from exstats. Support all stats from exstats +0.09: Fix broken start/stop if recording not enabled (fix #1561) +0.10: Don't allow the same setting to be chosen for 2 boxes (fix #1578) +0.11: Notifications fixes +0.12: Fix for recorder not stopping at end of run. Bug introduced in 0.11 +0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) +0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working +0.15: Keep run state between runs (allowing you to exit and restart the app) +0.16: Added ability to resume a run that was stopped previously (fix #1907) \ No newline at end of file diff --git a/apps/runplus/README.md b/apps/runplus/README.md new file mode 100644 index 000000000..7f645b518 --- /dev/null +++ b/apps/runplus/README.md @@ -0,0 +1,69 @@ +# Run App + +This app allows you to display the status of your run, it +shows distance, time, steps, cadence, pace and more. + +To use it, start the app and press the middle button so that +the red `STOP` in the bottom right turns to a green `RUN`. + +## Display + +* `DIST` - the distance travelled based on the GPS (if you have a GPS lock). + * NOTE: this is based on the GPS coordinates which are not 100% accurate, especially initially. As + the GPS updates your position as it gets more satellites your position changes and the distance + shown will increase, even if you are standing still. +* `TIME` - the elapsed time for your run +* `PACE` - the number of minutes it takes you to run a given distance, configured in settings (default 1km) **based on your run so far** +* `HEART (BPM)` - Your current heart rate +* `Max BPM` - Your maximum heart rate reached during the run +* `STEPS` - Steps since you started exercising +* `CADENCE` - Steps per second based on your step rate *over the last minute* +* `GPS` - this is green if you have a GPS lock. GPS is turned on automatically +so if you have no GPS lock you just need to wait. +* The current time is displayed right at the bottom of the screen +* `RUN/STOP` - whether the distance for your run is being displayed or not + +## Recording Tracks + +When the `Recorder` app is installed, `Run` will automatically start and stop tracks +as needed, prompting you to overwrite or begin a new track if necessary. + +## Settings + +Under `Settings` -> `App` -> `Run` you can change settings for this app. + +* `Record Run` (only displayed if `Recorder` app installed) should the Run app automatically +record GPS/HRM/etc data every time you start a run? +* `Pace` is the distance that pace should be shown over - 1km, 1 mile, 1/2 Marathon or 1 Marathon +* `Boxes` leads to a submenu where you can configure what is shown in each of the 6 boxes on the display. + Available stats are "Time", "Distance", "Steps", "Heart (BPM)", "Max BPM", "Pace (avg)", "Pace (curr)", "Speed", and "Cadence". + Any box set to "-" will display no information. + * Box 1 is the top left (defaults to "Distance") + * Box 2 is the top right (defaults to "Time") + * Box 3 is the middle left (defaults to "Pace (avg)") + * Box 4 is the middle right (defaults to "Heart (BPM)") + * Box 5 is the bottom left (defaults to "Steps") + * Box 6 is the bottom right (defaults to "Cadence") +* `Notifications` leads to a submenu where you can configure if the app will notify you after +your distance, steps, or time repeatedly pass your configured thresholds + * `Ntfy Dist`: The distance that you must pass before you are notified. Follows the `Pace` options + * "Off" (default), "1km", "1 mile", "1/2 Marathon", "1 Marathon" + * `Ntfy Steps`: The number of steps that must pass before you are notified. + * "Off" (default), 100, 500, 1000, 5000, 10000 + * `Ntfy Time`: The amount of time that must pass before you are notified. + * "Off" (default), "30 sec", "1 min", "2 min", "5 min", "10 min", "30 min", "1 hour" + * `Dist Pattern`: The vibration pattern to use to notify you about meeting your distance threshold + * `Step Pattern`: The vibration pattern to use to notify you about meeting your step threshold + * `Time Pattern`: The vibration pattern to use to notify you about meeting your time threshold + +## TODO + +* Keep a log of each run's stats (distance/steps/etc) + +## Development + +This app uses the [`exstats` module](https://github.com/espruino/BangleApps/blob/master/modules/exstats.js). When uploaded via the +app loader, the module is automatically included in the app's source. However +when developing via the IDE the module won't get pulled in by default. + +There are some options to fix this easily - please check out the [modules README.md file](https://github.com/espruino/BangleApps/blob/master/modules/README.md) diff --git a/apps/runplus/app-icon.js b/apps/runplus/app-icon.js new file mode 100644 index 000000000..a97d1b8ce --- /dev/null +++ b/apps/runplus/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEw4UA///pH9vEFt9TIW0FqALJitUBZNVqoLqgo4BHZAUBtBTHgILB1XAEREV1WsEQ9AgWq1ALHgEO1WtBYxCBhWq0pdInWq2tABY8q1WVBZGq1XFBZS/IKQRvCDIsP9WsBZP60CTCBYs//+wLxALBTQ4AB///+AKHgYLB/gLK/4LHh//AIIwFitVr/8DIIwFLANXBAILIqogBn7DBEYrXBeQRgIBYKmHDgYLLZRBACBZYKJZIILKKRZeWgJGKAFQA==")) diff --git a/apps/runplus/app.js b/apps/runplus/app.js new file mode 100644 index 000000000..507e8581a --- /dev/null +++ b/apps/runplus/app.js @@ -0,0 +1,160 @@ +var ExStats = require("exstats"); +var B2 = process.env.HWVERSION===2; +var Layout = require("Layout"); +var locale = require("locale"); +var fontHeading = "6x8:2"; +var fontValue = B2 ? "6x15:2" : "6x8:3"; +var headingCol = "#888"; +var fixCount = 0; +var isMenuDisplayed = false; + +g.clear(); +Bangle.loadWidgets(); +Bangle.drawWidgets(); + +// --------------------------- +let settings = Object.assign({ + record: true, + B1: "dist", + B2: "time", + B3: "pacea", + B4: "bpm", + B5: "step", + B6: "caden", + paceLength: 1000, + notify: { + dist: { + value: 0, + notifications: [], + }, + step: { + value: 0, + notifications: [], + }, + time: { + value: 0, + notifications: [], + }, + }, +}, require("Storage").readJSON("run.json", 1) || {}); +var statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); +var exs = ExStats.getStats(statIDs, settings); +// --------------------------- + +function setStatus(running) { + layout.button.label = running ? "STOP" : "START"; + layout.status.label = running ? "RUN" : "STOP"; + layout.status.bgCol = running ? "#0f0" : "#f00"; + layout.render(); +} + +// Called to start/stop running +function onStartStop() { + var running = !exs.state.active; + var shouldResume = false; + var promise = Promise.resolve(); + + if (running && exs.state.duration > 10000) { // if more than 10 seconds of duration, ask if we should resume? + promise = promise. + then(() => { + isMenuDisplayed = true; + return E.showPrompt("Resume run?",{title:"Run"}); + }).then(r => { + isMenuDisplayed=false;shouldResume=r; + }); + } + + // start/stop recording + // Do this first in case recorder needs to prompt for + // an overwrite before we start tracking exstats + if (settings.record && WIDGETS["recorder"]) { + if (running) { + isMenuDisplayed = true; + promise = promise. + then(() => WIDGETS["recorder"].setRecording(true, { force : shouldResume?"append":undefined })). + then(() => { + isMenuDisplayed = false; + layout.setUI(); // grab our input handling again + layout.forgetLazyState(); + layout.render(); + }); + } else { + promise = promise.then( + () => WIDGETS["recorder"].setRecording(false) + ); + } + } + + promise = promise.then(() => { + if (running) { + if (shouldResume) + exs.resume() + else + exs.start(); + } else { + exs.stop(); + } + // if stopping running, don't clear state + // so we can at least refer to what we've done + setStatus(running); + }); +} + +var lc = []; +// Load stats in pair by pair +for (var i=0;ilayout[e.id].label = e.getString()); + if (sb) sb.on('changed', e=>layout[e.id].label = e.getString()); +} +// At the bottom put time/GPS state/etc +lc.push({ type:"h", filly:1, c:[ + {type:"txt", font:fontHeading, label:"GPS", id:"gps", fillx:1, bgCol:"#f00" }, + {type:"txt", font:fontHeading, label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg }, + {type:"txt", font:fontHeading, label:"---", id:"status", fillx:1 } +]}); +// Now calculate the layout +var layout = new Layout( { + type:"v", c: lc +},{lazy:true, btns:[{ label:"---", cb: onStartStop, id:"button"}]}); +delete lc; +setStatus(exs.state.active); +layout.render(); + +function configureNotification(stat) { + stat.on('notify', (e)=>{ + settings.notify[e.id].notifications.reduce(function (promise, buzzPattern) { + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); + }, Promise.resolve()); + }); +} + +Object.keys(settings.notify).forEach((statType) => { + if (settings.notify[statType].increment > 0 && exs.stats[statType]) { + configureNotification(exs.stats[statType]); + } +}); + +// Handle GPS state change for icon +Bangle.on("GPS", function(fix) { + layout.gps.bgCol = fix.fix ? "#0f0" : "#f00"; + if (!fix.fix) return; // only process actual fixes + if (fixCount++ === 0) { + Bangle.buzz(); // first fix, does not need to respect quiet mode + } +}); +// We always call ourselves once a second to update +setInterval(function() { + layout.clock.label = locale.time(new Date(),1); + if (!isMenuDisplayed) layout.render(); +}, 1000); diff --git a/apps/runplus/app.png b/apps/runplus/app.png new file mode 100644 index 0000000000000000000000000000000000000000..7059b8b015e20039a96de8b65c8a6b68a5e51e18 GIT binary patch literal 1479 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.id); + + // ...and overwrite them with any saved values + // This way saved values are preserved if a new version adds more settings + const storage = require('Storage') + let settings = Object.assign({ + record: true, + B1: "dist", + B2: "time", + B3: "pacea", + B4: "bpm", + B5: "step", + B6: "caden", + paceLength: 1000, // TODO: Default to either 1km or 1mi based on locale + notify: { + dist: { + increment: 0, + notifications: [], + }, + step: { + increment: 0, + notifications: [], + }, + time: { + increment: 0, + notifications: [], + }, + }, + }, storage.readJSON(SETTINGS_FILE, 1) || {}); + function saveSettings() { + storage.write(SETTINGS_FILE, settings) + } + + function getBoxChooser(boxID) { + return { + min: 0, max: statsIDs.length-1, + value: Math.max(statsIDs.indexOf(settings[boxID]),0), + format: v => statsList[v].name, + onchange: v => { + settings[boxID] = statsIDs[v]; + saveSettings(); + }, + } + } + + function sampleBuzz(buzzPatterns) { + return buzzPatterns.reduce(function (promise, buzzPattern) { + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); + }, Promise.resolve()); + } + + var menu = { + '': { 'title': 'Run' }, + '< Back': back, + }; + if (global.WIDGETS&&WIDGETS["recorder"]) + menu[/*LANG*/"Record Run"] = { + value : !!settings.record, + onchange : v => { + settings.record = v; + saveSettings(); + } + }; + var notificationsMenu = { + '< Back': function() { E.showMenu(menu) }, + } + menu[/*LANG*/"Notifications"] = function() { E.showMenu(notificationsMenu)}; + ExStats.appendMenuItems(menu, settings, saveSettings); + ExStats.appendNotifyMenuItems(notificationsMenu, settings, saveSettings); + var vibPatterns = [/*LANG*/"Off", ".", "-", "--", "-.-", "---"]; + var vibTimes = [ + [], + [[100, 1]], + [[300, 1]], + [[300, 1], [300, 0], [300, 1]], + [[300, 1],[300, 0], [100, 1], [300, 0], [300, 1]], + [[300, 1],[300, 0],[300, 1],[300, 0],[300, 1]], + ]; + notificationsMenu[/*LANG*/"Dist Pattern"] = { + value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.dist.notifications))), + min: 0, max: vibTimes.length - 1, + format: v => vibPatterns[v]||/*LANG*/"Off", + onchange: v => { + settings.notify.dist.notifications = vibTimes[v]; + sampleBuzz(vibTimes[v]); + saveSettings(); + } + } + notificationsMenu[/*LANG*/"Step Pattern"] = { + value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.step.notifications))), + min: 0, max: vibTimes.length - 1, + format: v => vibPatterns[v]||/*LANG*/"Off", + onchange: v => { + settings.notify.step.notifications = vibTimes[v]; + sampleBuzz(vibTimes[v]); + saveSettings(); + } + } + notificationsMenu[/*LANG*/"Time Pattern"] = { + value: Math.max(0,vibTimes.findIndex((p) => JSON.stringify(p) === JSON.stringify(settings.notify.time.notifications))), + min: 0, max: vibTimes.length - 1, + format: v => vibPatterns[v]||/*LANG*/"Off", + onchange: v => { + settings.notify.time.notifications = vibTimes[v]; + sampleBuzz(vibTimes[v]); + saveSettings(); + } + } + var boxMenu = { + '< Back': function() { E.showMenu(menu) }, + } + Object.assign(boxMenu,{ + 'Box 1': getBoxChooser("B1"), + 'Box 2': getBoxChooser("B2"), + 'Box 3': getBoxChooser("B3"), + 'Box 4': getBoxChooser("B4"), + 'Box 5': getBoxChooser("B5"), + 'Box 6': getBoxChooser("B6"), + }); + menu[/*LANG*/"Boxes"] = function() { E.showMenu(boxMenu)}; + E.showMenu(menu); +}) From e1a51d7c68aeb4a260a11541e1d1f6996e021d04 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Thu, 1 Jun 2023 20:02:43 +0200 Subject: [PATCH 1279/1725] kbswipe: Redone patterns a,e,m,w,z. --- apps/kbswipe/ChangeLog | 1 + apps/kbswipe/lib.js | 17 +++++++++-------- apps/kbswipe/metadata.json | 2 +- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/apps/kbswipe/ChangeLog b/apps/kbswipe/ChangeLog index a7b2d44c2..38d71986e 100644 --- a/apps/kbswipe/ChangeLog +++ b/apps/kbswipe/ChangeLog @@ -5,3 +5,4 @@ 0.05: Keep drag-function in ram, hopefully improving performance and input reliability somewhat. 0.06: Support input of numbers and uppercase characters. 0.07: Support input of symbols. +0.08: Redone patterns a,e,m,w,z. diff --git a/apps/kbswipe/lib.js b/apps/kbswipe/lib.js index ea6d78255..4c652e9a9 100644 --- a/apps/kbswipe/lib.js +++ b/apps/kbswipe/lib.js @@ -10,11 +10,11 @@ on the left of the IDE, then do a stroke and copy out the Uint8Array line */ exports.getStrokes = function(mode, cb) { if (mode === exports.INPUT_MODE_ALPHA) { - cb("a", new Uint8Array([58, 159, 58, 155, 62, 144, 69, 127, 77, 106, 86, 90, 94, 77, 101, 68, 108, 62, 114, 59, 121, 59, 133, 61, 146, 70, 158, 88, 169, 107, 176, 124, 180, 135, 183, 144, 185, 152])); + cb("a", new Uint8Array([31, 157, 33, 149, 37, 131, 42, 112, 46, 97, 49, 83, 52, 72, 56, 64, 59, 59, 63, 53, 68, 48, 74, 47, 80, 47, 88, 50, 98, 63, 109, 94, 114, 115, 116, 130, 117, 141])); cb("b", new Uint8Array([51, 47, 51, 77, 56, 123, 60, 151, 65, 163, 68, 164, 68, 144, 67, 108, 67, 76, 72, 43, 104, 51, 121, 74, 110, 87, 109, 95, 131, 117, 131, 140, 109, 152, 88, 157])); cb("c", new Uint8Array([153, 62, 150, 62, 145, 62, 136, 62, 123, 62, 106, 65, 85, 70, 65, 75, 50, 82, 42, 93, 37, 106, 36, 119, 36, 130, 40, 140, 49, 147, 61, 153, 72, 156, 85, 157, 106, 158, 116, 158])); cb("d", new Uint8Array([57, 178, 57, 176, 55, 171, 52, 163, 50, 154, 49, 146, 47, 135, 45, 121, 44, 108, 44, 97, 44, 85, 44, 75, 44, 66, 44, 58, 44, 48, 44, 38, 46, 31, 48, 26, 58, 21, 75, 20, 99, 26, 120, 35, 136, 51, 144, 70, 144, 88, 137, 110, 124, 131, 106, 145, 88, 153])); - cb("e", new Uint8Array([150, 72, 141, 69, 114, 68, 79, 69, 48, 77, 32, 81, 31, 85, 46, 91, 73, 95, 107, 100, 114, 103, 83, 117, 58, 134, 66, 143, 105, 148, 133, 148, 144, 148])); + cb("e", new Uint8Array([107, 50, 101, 46, 94, 42, 85, 40, 75, 40, 65, 40, 58, 40, 51, 40, 47, 40, 44, 43, 45, 54, 52, 68, 63, 79, 70, 84, 70, 85, 59, 89, 52, 96, 45, 108, 39, 119, 37, 126, 37, 132, 37, 137, 41, 143, 48, 147, 60, 148, 69, 148, 78, 148, 84, 148, 89, 148])); cb("f", new Uint8Array([157, 52, 155, 52, 148, 52, 137, 52, 124, 52, 110, 52, 96, 52, 83, 52, 74, 52, 67, 52, 61, 52, 57, 52, 55, 52, 52, 52, 52, 54, 52, 58, 52, 64, 54, 75, 58, 97, 59, 117, 60, 130])); cb("g", new Uint8Array([160, 66, 153, 62, 129, 58, 90, 56, 58, 57, 38, 65, 31, 86, 43, 125, 69, 152, 116, 166, 145, 154, 146, 134, 112, 116, 85, 108, 97, 106, 140, 106, 164, 106])); cb("h", new Uint8Array([58, 50, 58, 55, 58, 64, 58, 80, 58, 102, 58, 122, 58, 139, 58, 153, 58, 164, 58, 171, 58, 177, 58, 179, 58, 181, 58, 180, 58, 173, 58, 163, 59, 154, 61, 138, 64, 114, 68, 95, 72, 84, 80, 79, 91, 79, 107, 82, 123, 93, 137, 111, 145, 130, 149, 147, 150, 154, 150, 159])); @@ -22,7 +22,7 @@ exports.getStrokes = function(mode, cb) { cb("j", new Uint8Array([130, 57, 130, 61, 130, 73, 130, 91, 130, 113, 130, 133, 130, 147, 130, 156, 130, 161, 130, 164, 130, 166, 129, 168, 127, 168, 120, 168, 110, 168, 91, 167, 81, 167, 68, 167])); cb("k", new Uint8Array([149, 63, 147, 68, 143, 76, 136, 89, 126, 106, 114, 123, 100, 136, 86, 147, 72, 153, 57, 155, 45, 152, 36, 145, 29, 131, 26, 117, 26, 104, 27, 93, 30, 86, 35, 80, 45, 77, 62, 80, 88, 96, 113, 116, 130, 131, 140, 142, 145, 149, 148, 153])); cb("l", new Uint8Array([42, 55, 42, 59, 42, 69, 44, 87, 44, 107, 44, 128, 44, 143, 44, 156, 44, 163, 44, 167, 44, 169, 45, 170, 49, 170, 59, 169, 76, 167, 100, 164, 119, 162, 139, 160, 163, 159])); - cb("m", new Uint8Array([49, 165, 48, 162, 46, 156, 44, 148, 42, 138, 42, 126, 42, 113, 43, 101, 45, 91, 47, 82, 49, 75, 51, 71, 54, 70, 57, 70, 61, 74, 69, 81, 75, 91, 84, 104, 94, 121, 101, 132, 103, 137, 106, 130, 110, 114, 116, 92, 125, 75, 134, 65, 139, 62, 144, 66, 148, 83, 151, 108, 155, 132, 157, 149])); + cb("m", new Uint8Array([36, 139, 36, 120, 36, 99, 36, 79, 36, 61, 41, 45, 56, 43, 71, 46, 77, 66, 77, 93, 77, 97, 84, 69, 93, 51, 107, 47, 118, 53, 123, 79, 124, 115, 124, 140])); cb("n", new Uint8Array([50, 165, 50, 160, 50, 153, 50, 140, 50, 122, 50, 103, 50, 83, 50, 65, 50, 52, 50, 45, 50, 43, 52, 52, 57, 67, 66, 90, 78, 112, 93, 131, 104, 143, 116, 152, 127, 159, 135, 160, 141, 150, 148, 125, 154, 96, 158, 71, 161, 56, 162, 49])); cb("o", new Uint8Array([107, 58, 104, 58, 97, 61, 87, 68, 75, 77, 65, 88, 58, 103, 54, 116, 53, 126, 55, 135, 61, 143, 75, 149, 91, 150, 106, 148, 119, 141, 137, 125, 143, 115, 146, 104, 146, 89, 142, 78, 130, 70, 116, 65, 104, 62])); cb("p", new Uint8Array([29, 47, 29, 55, 29, 75, 29, 110, 29, 145, 29, 165, 29, 172, 29, 164, 30, 149, 37, 120, 50, 91, 61, 74, 72, 65, 85, 61, 103, 61, 118, 63, 126, 69, 129, 76, 130, 87, 126, 98, 112, 108, 97, 114, 87, 116])); @@ -32,10 +32,10 @@ exports.getStrokes = function(mode, cb) { cb("t", new Uint8Array([45, 55, 48, 55, 55, 55, 72, 55, 96, 55, 120, 55, 136, 55, 147, 55, 152, 55, 155, 55, 157, 55, 158, 56, 158, 60, 156, 70, 154, 86, 151, 102, 150, 114, 148, 125, 148, 138, 148, 146])); cb("u", new Uint8Array([35, 52, 35, 59, 35, 73, 35, 90, 36, 114, 38, 133, 42, 146, 49, 153, 60, 157, 73, 158, 86, 156, 100, 152, 112, 144, 121, 131, 127, 114, 132, 97, 134, 85, 135, 73, 136, 61, 136, 56])); cb("v", new Uint8Array([36, 55, 37, 59, 40, 68, 45, 83, 51, 100, 58, 118, 64, 132, 69, 142, 71, 149, 73, 156, 76, 158, 77, 160, 77, 159, 80, 151, 82, 137, 84, 122, 86, 111, 90, 91, 91, 78, 91, 68, 91, 63, 92, 61, 97, 61, 111, 61, 132, 61, 150, 61, 162, 61])); - cb("w", new Uint8Array([25, 46, 25, 82, 25, 119, 33, 143, 43, 153, 60, 147, 73, 118, 75, 91, 76, 88, 85, 109, 96, 134, 107, 143, 118, 137, 129, 112, 134, 81, 134, 64, 134, 55])); + cb("w", new Uint8Array([35, 37, 35, 44, 35, 58, 35, 81, 35, 110, 35, 129, 39, 136, 45, 140, 51, 141, 60, 137, 70, 121, 76, 99, 78, 79, 78, 70, 78, 69, 83, 89, 89, 112, 93, 127, 97, 135, 102, 136, 108, 131, 115, 116, 119, 93, 122, 72, 123, 55, 123, 43])); cb("x", new Uint8Array([56, 63, 56, 67, 57, 74, 60, 89, 66, 109, 74, 129, 85, 145, 96, 158, 107, 164, 117, 167, 128, 164, 141, 155, 151, 140, 159, 122, 166, 105, 168, 89, 170, 81, 170, 73, 169, 66, 161, 63, 141, 68, 110, 83, 77, 110, 55, 134, 47, 145])); cb("y", new Uint8Array([30, 41, 30, 46, 30, 52, 30, 63, 30, 79, 33, 92, 38, 100, 47, 104, 54, 107, 66, 105, 79, 94, 88, 82, 92, 74, 94, 77, 96, 98, 96, 131, 94, 151, 91, 164, 85, 171, 75, 171, 71, 162, 74, 146, 84, 130, 95, 119, 106, 113])); - cb("z", new Uint8Array([29, 62, 35, 62, 43, 62, 63, 62, 87, 62, 110, 62, 125, 62, 134, 62, 138, 62, 136, 63, 122, 68, 103, 77, 85, 91, 70, 107, 59, 120, 50, 132, 47, 138, 43, 143, 41, 148, 42, 151, 53, 155, 80, 157, 116, 158, 146, 158, 163, 158])); + cb("z", new Uint8Array([39, 38, 45, 38, 53, 38, 62, 38, 72, 38, 82, 38, 89, 38, 96, 38, 99, 39, 95, 48, 82, 68, 70, 87, 60, 100, 50, 117, 42, 132, 42, 140, 45, 143, 53, 143, 67, 143, 81, 143])); cb("SHIFT", new Uint8Array([100, 160, 100, 50])); } else if (mode === exports.INPUT_MODE_NUM) { cb("0", new Uint8Array([82, 50, 76, 50, 67, 50, 59, 50, 50, 51, 43, 57, 38, 68, 34, 83, 33, 95, 33, 108, 34, 121, 42, 136, 57, 148, 72, 155, 85, 157, 98, 155, 110, 149, 120, 139, 128, 127, 134, 119, 137, 114, 138, 107, 138, 98, 138, 88, 138, 77, 137, 71, 134, 65, 128, 60, 123, 58])); @@ -210,7 +210,7 @@ exports.input = function(options) { if (o.stroke!==undefined && o.xy.length >= 6 && isStrokeInside(R, o.xy)) { var ch = o.stroke; if (ch=="\b") text = text.slice(0,-1); - else if (ch==="SHIFT") { shift=!shift; Bangle.drawWidgets(); } + else if (ch==="SHIFT") { shift=!shift; WIDGETS.kbswipe.draw(); } else text += shift ? ch.toUpperCase() : ch; } lastDrag = undefined; @@ -226,7 +226,7 @@ exports.input = function(options) { shift = false; setupStrokes(); show(); - Bangle.drawWidgets(); + WIDGETS.kbswipe.draw(); } Bangle.on('stroke',strokeHandler); @@ -239,7 +239,7 @@ exports.input = function(options) { area:"tl", width: 36, // 3 chars, 6*2 px/char draw: function() { - g.reset(); + g.reset().clearRect(this.x, this.y, this.x + this.width, this.y + 24); g.setFont("6x8:2x3"); g.setColor("#f00"); if (input_mode === exports.INPUT_MODE_ALPHA) { @@ -251,6 +251,7 @@ exports.input = function(options) { } } }; + Bangle.drawWidgets(); return new Promise((resolve,reject) => { Bangle.setUI({mode:"custom", drag:e=>{ diff --git a/apps/kbswipe/metadata.json b/apps/kbswipe/metadata.json index 6b597a371..3f3fbffa3 100644 --- a/apps/kbswipe/metadata.json +++ b/apps/kbswipe/metadata.json @@ -1,6 +1,6 @@ { "id": "kbswipe", "name": "Swipe keyboard", - "version":"0.07", + "version":"0.08", "description": "A library for text input via PalmOS style swipe gestures (beta!)", "icon": "app.png", "type":"textinput", From dc069b0ec9c528b24e29e411521ea34358330f96 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 2 Jun 2023 07:33:44 +0200 Subject: [PATCH 1280/1725] kbswipe: Fix off-by-one error --- apps/kbswipe/lib.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/kbswipe/lib.js b/apps/kbswipe/lib.js index 4c652e9a9..7d05d7a8e 100644 --- a/apps/kbswipe/lib.js +++ b/apps/kbswipe/lib.js @@ -239,7 +239,7 @@ exports.input = function(options) { area:"tl", width: 36, // 3 chars, 6*2 px/char draw: function() { - g.reset().clearRect(this.x, this.y, this.x + this.width, this.y + 24); + g.reset().clearRect(this.x, this.y, this.x + this.width-1, this.y + 23); g.setFont("6x8:2x3"); g.setColor("#f00"); if (input_mode === exports.INPUT_MODE_ALPHA) { From d5f114762f331237befbdedc39f4b079e8bd2dc3 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 22 Feb 2023 22:25:56 +0100 Subject: [PATCH 1281/1725] add changes to runplus changes to differentiate runplus from run app fix default settings fallback for HRM fixes to draw correctly and in a timely manner when swiping to the karvonnen ui depending on if we have hrm data or not Update ChangeLog small ui tweak run: Keep run state between runs (allowing you to exit and restart the app) tweak clearRect width to not clear the indicator segment bump version write to correct settings file add tag karvonen change spelling karvonnen -> karvonen in app.js, karvonen.js spelling karvonnen -> karvonen in metadata runplus - Fix typo in variable name preventing starting a run tweak and align HRM min/max defaults, change allowed min/max interval in settings bump version, fix typo follow the preferred metadata.json style Readd contributors to README.md Tweak ChangeLog --- apps/run/ChangeLog | 2 +- apps/runplus/ChangeLog | 9 +- apps/runplus/README.md | 7 ++ apps/runplus/app.js | 105 +++++++++++++----- apps/runplus/karvonen.js | 215 +++++++++++++++++++++++++++++++++++++ apps/runplus/metadata.json | 26 +++-- apps/runplus/settings.js | 30 +++++- 7 files changed, 352 insertions(+), 42 deletions(-) create mode 100644 apps/runplus/karvonen.js diff --git a/apps/run/ChangeLog b/apps/run/ChangeLog index e79696c78..ab2803ec6 100644 --- a/apps/run/ChangeLog +++ b/apps/run/ChangeLog @@ -14,4 +14,4 @@ 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working 0.15: Keep run state between runs (allowing you to exit and restart the app) -0.16: Added ability to resume a run that was stopped previously (fix #1907) \ No newline at end of file +0.16: Added ability to resume a run that was stopped previously (fix #1907) diff --git a/apps/runplus/ChangeLog b/apps/runplus/ChangeLog index e79696c78..05d24b96d 100644 --- a/apps/runplus/ChangeLog +++ b/apps/runplus/ChangeLog @@ -14,4 +14,11 @@ 0.13: Revert #1578 (stop duplicate entries) as with 2v12 menus it causes other boxes to be wiped (fix #1643) 0.14: Fix Bangle.js 1 issue where after the 'overwrite track' menu, the start/stop button stopped working 0.15: Keep run state between runs (allowing you to exit and restart the app) -0.16: Added ability to resume a run that was stopped previously (fix #1907) \ No newline at end of file +0.16: Added ability to resume a run that was stopped previously (fix #1907) +0.17: Diverge from the standard "Run" app. Swipe to intensity interface a la Karvonen (curtesy of FTeacher at https://github.com/f-teacher) +0.18: Don't clear zone 2b indicator segment when updating HRM reading. +Write to correct settings file, fixing settings not working. +0.19: Fix typo in variable name preventing starting a run +0.20: Tweak HRM min/max defaults. Extend min/max intervals in settings. Fix + another typo. +0.21: Rebase on "Run" app ver. 0.16. diff --git a/apps/runplus/README.md b/apps/runplus/README.md index 7f645b518..659cd964d 100644 --- a/apps/runplus/README.md +++ b/apps/runplus/README.md @@ -67,3 +67,10 @@ app loader, the module is automatically included in the app's source. However when developing via the IDE the module won't get pulled in by default. There are some options to fix this easily - please check out the [modules README.md file](https://github.com/espruino/BangleApps/blob/master/modules/README.md) +## Contributors (Run and Run+) +gfwilliams +hughbarney +GrandVizierOlaf +BartS23 +f-teacher +thyttan diff --git a/apps/runplus/app.js b/apps/runplus/app.js index 507e8581a..41fab7ae2 100644 --- a/apps/runplus/app.js +++ b/apps/runplus/app.js @@ -1,16 +1,23 @@ -var ExStats = require("exstats"); -var B2 = process.env.HWVERSION===2; -var Layout = require("Layout"); -var locale = require("locale"); -var fontHeading = "6x8:2"; -var fontValue = B2 ? "6x15:2" : "6x8:3"; -var headingCol = "#888"; -var fixCount = 0; -var isMenuDisplayed = false; +// Use widget utils to show/hide widgets +let wu = require("widget_utils"); -g.clear(); +let runInterval; +let karvonenActive = false; +// Run interface wrapped in a function +let ExStats = require("exstats"); +let B2 = process.env.HWVERSION===2; +let Layout = require("Layout"); +let locale = require("locale"); +let fontHeading = "6x8:2"; +let fontValue = B2 ? "6x15:2" : "6x8:3"; +let headingCol = "#888"; +let fixCount = 0; +let isMenuDisplayed = false; + +g.reset().clear(); Bangle.loadWidgets(); Bangle.drawWidgets(); +wu.show(); // --------------------------- let settings = Object.assign({ @@ -36,9 +43,13 @@ let settings = Object.assign({ notifications: [], }, }, -}, require("Storage").readJSON("run.json", 1) || {}); -var statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); -var exs = ExStats.getStats(statIDs, settings); + HRM: { + min: 55, + max: 185, + }, +}, require("Storage").readJSON("runplus.json", 1) || {}); +let statIDs = [settings.B1,settings.B2,settings.B3,settings.B4,settings.B5,settings.B6].filter(s=>s!==""); +let exs = ExStats.getStats(statIDs, settings); // --------------------------- function setStatus(running) { @@ -100,11 +111,11 @@ function onStartStop() { }); } -var lc = []; +let lc = []; // Load stats in pair by pair -for (var i=0;i{if (karvonenActive) {stopKarvonenUI();run();} onStartStop();}), id:"button"}]}); delete lc; setStatus(exs.state.active); layout.render(); @@ -132,16 +143,16 @@ layout.render(); function configureNotification(stat) { stat.on('notify', (e)=>{ settings.notify[e.id].notifications.reduce(function (promise, buzzPattern) { - return promise.then(function () { - return Bangle.buzz(buzzPattern[0], buzzPattern[1]); - }); + return promise.then(function () { + return Bangle.buzz(buzzPattern[0], buzzPattern[1]); + }); }, Promise.resolve()); }); } Object.keys(settings.notify).forEach((statType) => { if (settings.notify[statType].increment > 0 && exs.stats[statType]) { - configureNotification(exs.stats[statType]); + configureNotification(exs.stats[statType]); } }); @@ -153,8 +164,46 @@ Bangle.on("GPS", function(fix) { Bangle.buzz(); // first fix, does not need to respect quiet mode } }); -// We always call ourselves once a second to update -setInterval(function() { - layout.clock.label = locale.time(new Date(),1); - if (!isMenuDisplayed) layout.render(); -}, 1000); + +// run() function used to switch between traditional run UI and karvonen UI +function run() { + wu.show(); + layout.lazy = false; + layout.render(); + layout.lazy = true; + // We always call ourselves once a second to update + if (!runInterval){ + runInterval = setInterval(function() { + layout.clock.label = locale.time(new Date(),1); + if (!isMenuDisplayed && !karvonenActive) layout.render(); + }, 1000); + } +} +run(); + +/////////////////////////////////////////////// +// Karvonen +/////////////////////////////////////////////// + +function stopRunUI() { + // stop updating and drawing the traditional run app UI + clearInterval(runInterval); + runInterval = undefined; + karvonenActive = true; +} + +function stopKarvonenUI() { + g.reset().clear(); + clearInterval(karvonenInterval); + karvonenInterval = undefined; + karvonenActive = false; +} + +let karvonenInterval; +// Define the function to go back and forth between the different UI's +function swipeHandler(LR,_) { + if (LR==-1 && karvonenActive && !isMenuDisplayed) {stopKarvonenUI(); run();} + if (LR==1 && !karvonenActive && !isMenuDisplayed) {stopRunUI(); karvonenInterval = eval(require("Storage").read("runplus_karvonen"))(settings.HRM, exs.stats.bpm);} +} +// Listen for swipes with the swipeHandler +Bangle.on("swipe", swipeHandler); diff --git a/apps/runplus/karvonen.js b/apps/runplus/karvonen.js new file mode 100644 index 000000000..de81494bb --- /dev/null +++ b/apps/runplus/karvonen.js @@ -0,0 +1,215 @@ +(function karvonen(hrmSettings, exsHrmStats) { + //This app is an extra feature implementation for the Run.app of the bangle.js. It's called run+ + //The calculation of the Heart Rate Zones is based on the Karvonen method. It requires to know maximum and minimum heart rates. More precise calculation methods require a lab. + //Other methods are even more approximative. + let wu = require("widget_utils"); + wu.hide(); + let R = Bangle.appRect; + + + g.reset().clearRect(R).setFontAlign(0,0,0); + + const x = "x"; const y = "y"; + function Rdiv(axis, divisor) { // Used when placing things on the screen + return axis=="x" ? (R.x + (R.w-1)/divisor):(R.y + (R.h-1)/divisor); + } + let linePoints = { //Not lists of points, but used to update points in the drawArrows function. + x: [ + 175/40, + 2, + 175/135, + ], + y: [ + 175/64, + 175/52, + 175/110, + 175/122, + ], + + }; + + function drawArrows() { + g.setColor(g.theme.fg); + // Upper + g.drawLine(Rdiv(x,linePoints.x[0]), Rdiv(y,linePoints.y[0]), Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[1])); + g.drawLine(Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[1]), Rdiv(x,linePoints.x[2]), Rdiv(y,linePoints.y[0])); + // Lower + g.drawLine(Rdiv(x,linePoints.x[0]), Rdiv(y,linePoints.y[2]), Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[3])); + g.drawLine(Rdiv(x,linePoints.x[1]), Rdiv(y,linePoints.y[3]), Rdiv(x,linePoints.x[2]), Rdiv(y,linePoints.y[2])); + } + + //To calculate Heart rate zones, we need to know the heart rate reserve (HRR) + // HRR = maximum HR - Minimum HR. minhr is minimum hr, maxhr is maximum hr. + //get the hrr (heart rate reserve). + // I put random data here, but this has to come as a menu in the settings section so that users can change it. + let minhr = hrmSettings.min; + let maxhr = hrmSettings.max; + + function calculatehrr(minhr, maxhr) { + return maxhr - minhr;} + + //test input for hrr (it works). + let hrr = calculatehrr(minhr, maxhr); + console.log(hrr); + + //Test input to verify the zones work. The following value for "hr" has to be deleted and replaced with the Heart Rate Monitor input. + let hr = exsHrmStats.getValue(); + let hr1 = hr; + // These letiables display next and previous HR zone. + //get the hrzones right. The calculation of the Heart rate zones here is based on the Karvonen method + //60-70% of HRR+minHR = zone2. //70-80% of HRR+minHR = zone3. //80-90% of HRR+minHR = zone4. //90-99% of HRR+minHR = zone5. //=>99% of HRR+minHR = serious risk of heart attack + let minzone2 = hrr * 0.6 + minhr; + let maxzone2 = hrr * 0.7 + minhr; + let maxzone3 = hrr * 0.8 + minhr; + let maxzone4 = hrr * 0.9 + minhr; + let maxzone5 = hrr * 0.99 + minhr; + + // HR data: large, readable, in the middle of the screen + function drawHR() { + g.setFontAlign(-1,0,0); + g.clearRect(Rdiv(x,11/4),Rdiv(y,2)-25,Rdiv(x,11/4)+50*2-14,Rdiv(y,2)+25); + g.setColor(g.theme.fg); + g.setFont("Vector",50); + g.drawString(hr, Rdiv(x,11/4), Rdiv(y,2)+4); + } + + function drawWaitHR() { + g.setColor(g.theme.fg); + // Waiting for HRM + g.setFontAlign(0,0,0); + g.setFont("Vector",50); + g.drawString("--", Rdiv(x,2)+4, Rdiv(y,2)+4); + + // Waiting for current Zone + g.setFont("Vector",24); + g.drawString("Z-", Rdiv(x,4.3)-3, Rdiv(y,2)+2); + + // waiting for upper and lower limit of current zone + g.setFont("Vector",20); + g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/2)); + g.drawString("--", Rdiv(x,2)+2, Rdiv(y,9/7)); + } + + //These functions call arcs to show different HR zones. + + //To shorten the code, I'll reference some letiables and reuse them. + let centreX = R.x + 0.5 * R.w; + let centreY = R.y + 0.5 * R.h; + let minRadius = 0.38 * R.h; + let maxRadius = 0.50 * R.h; + + //draw background image (dithered green zones)(I should draw different zones in different dithered colors) + const HRzones= require("graphics_utils"); + let minRadiusz = 0.44 * R.h; + let startAngle = HRzones.degreesToRadians(-88.5); + let endAngle = HRzones.degreesToRadians(268.5); + + function drawBgArc() { + g.setColor(g.theme.dark==false?0xC618:"#002200"); + HRzones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + } + + const zones = require("graphics_utils"); + //####### A function to simplify a bit the code ###### + function simplify (sA, eA, Z, currentZone, lastZone) { + let startAngle = zones.degreesToRadians(sA); + let endAngle = zones.degreesToRadians(eA); + if (currentZone == lastZone) zones.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle, endAngle); + else zones.fillArc(g, centreX, centreY, minRadiusz, maxRadius, startAngle, endAngle); + g.setFont("Vector",24); + g.clearRect(Rdiv(x,4.3)-12, Rdiv(y,2)+2-12,Rdiv(x,4.3)+12, Rdiv(y,2)+2+12); + g.setFontAlign(0,0,0); + g.drawString(Z, Rdiv(x,4.3), Rdiv(y,2)+2); + } + + function zoning (max, min) { // draw values of upper and lower limit of current zone + g.setFont("Vector",20); + g.setColor(g.theme.fg); + g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/2)-10,Rdiv(x,2)+20*2, Rdiv(y,9/2)+10); + g.clearRect(Rdiv(x,2)-20*2, Rdiv(y,9/7)-10,Rdiv(x,2)+20*2, Rdiv(y,9/7)+10); + g.setFontAlign(0,0,0); + g.drawString(max, Rdiv(x,2), Rdiv(y,9/2)); + g.drawString(min, Rdiv(x,2), Rdiv(y,9/7)); + } + + function clearCurrentZone() { // Clears the extension of the current zone by painting the extension area in background color + g.setColor(g.theme.bg); + HRzones.fillArc(g, centreX, centreY, minRadius-1, minRadiusz, startAngle, endAngle); + } + + function getZone(zone) { + drawBgArc(); + clearCurrentZone(); + if (zone >= 0) {zoning(minzone2, minhr);g.setColor("#00ffff");simplify(-88.5, -45, "Z1", 0, zone);} + if (zone >= 1) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-43.5, -21.5, "Z2", 1, zone);} + if (zone >= 2) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(-20, 1.5, "Z2", 2, zone);} + if (zone >= 3) {zoning(maxzone2, minzone2);g.setColor("#00ff00");simplify(3, 24, "Z2", 3, zone);} + if (zone >= 4) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(25.5, 46.5, "Z3", 4, zone);} + if (zone >= 5) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(48, 69, "Z3", 5, zone);} + if (zone >= 6) {zoning(maxzone3, maxzone2);g.setColor("#ffff00");simplify(70.5, 91.5, "Z3", 6, zone);} + if (zone >= 7) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(93, 114.5, "Z4", 7, zone);} + if (zone >= 8) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(116, 137.5, "Z4", 8, zone);} + if (zone >= 9) {zoning(maxzone4, maxzone3);g.setColor("#ff8000");simplify(139, 160, "Z4", 9, zone);} + if (zone >= 10) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(161.5, 182.5, "Z5", 10, zone);} + if (zone >= 11) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(184, 205, "Z5", 11, zone);} + if (zone == 12) {zoning(maxzone5, maxzone4);g.setColor("#ff0000");simplify(206.5, 227.5, "Z5", 12, zone);} + } + + function getZoneAlert() { + const HRzonemax = require("graphics_utils"); + let centreX1,centreY1,maxRadius1 = 1; + let minRadius = 0.40 * R.h; + let startAngle1 = HRzonemax.degreesToRadians(-90); + let endAngle1 = HRzonemax.degreesToRadians(270); + g.setFont("Vector",38);g.setColor("#ff0000"); + HRzonemax.fillArc(g, centreX, centreY, minRadius, maxRadius, startAngle1, endAngle1); + g.drawString("ALERT", 26,66); + } + + //Subdivided zones for better readability of zones when calling the images. //Changing HR zones will trigger the function with the image and previous&next HR zones. + let subZoneLast; + function drawZones() { + if ((hr < maxhr - 2) && subZoneLast==13) {g.clear(); drawArrows(); drawHR();} // Reset UI when coming down from zone alert. + if (hr <= hrr * 0.6 + minhr) {if (subZoneLast!=0) {subZoneLast=0; getZone(subZoneLast);}} // Z1 + else if (hr <= hrr * 0.64 + minhr) {if (subZoneLast!=1) {subZoneLast=1; getZone(subZoneLast);}} // Z2a + else if (hr <= hrr * 0.67 + minhr) {if (subZoneLast!=2) {subZoneLast=2; getZone(subZoneLast);}} // Z2b + else if (hr <= hrr * 0.70 + minhr) {if (subZoneLast!=3) {subZoneLast=3; getZone(subZoneLast);}} // Z2c + else if (hr <= hrr * 0.74 + minhr) {if (subZoneLast!=4) {subZoneLast=4; getZone(subZoneLast);}} // Z3a + else if (hr <= hrr * 0.77 + minhr) {if (subZoneLast!=5) {subZoneLast=5; getZone(subZoneLast);}} // Z3b + else if (hr <= hrr * 0.80 + minhr) {if (subZoneLast!=6) {subZoneLast=6; getZone(subZoneLast);}} // Z3c + else if (hr <= hrr * 0.84 + minhr) {if (subZoneLast!=7) {subZoneLast=7; getZone(subZoneLast);}} // Z4a + else if (hr <= hrr * 0.87 + minhr) {if (subZoneLast!=8) {subZoneLast=8; getZone(subZoneLast);}} // Z4b + else if (hr <= hrr * 0.90 + minhr) {if (subZoneLast!=9) {subZoneLast=9; getZone(subZoneLast);}} // Z4c + else if (hr <= hrr * 0.94 + minhr) {if (subZoneLast!=10) {subZoneLast=10; getZone(subZoneLast);}} // Z5a + else if (hr <= hrr * 0.96 + minhr) {if (subZoneLast!=11) {subZoneLast=11; getZone(subZoneLast);}} // Z5b + else if (hr <= hrr * 0.98 + minhr) {if (subZoneLast!=12) {subZoneLast=12; getZone(subZoneLast);}} // Z5c + else if (hr >= maxhr - 2) {subZoneLast=13; g.clear();getZoneAlert();} // Alert + } + + function initDraw() { + drawArrows(); + if (hr!=0) updateUI(true); else {drawWaitHR(); drawBgArc();} + //drawZones(); + } + + let hrLast; + //h = 0; // Used to force hr update via web ui console field to trigger draws, together with `if (h!=0) hr = h;` below. + function updateUI(resetHrLast) { // Update UI, only draw if warranted by change in HR. + hrLast = resetHrLast?0:hr; // Handles correct updating on init depending on if we've got HRM readings yet or not. + hr = exsHrmStats.getValue(); + //if (h!=0) hr = h; + if (hr!=hrLast) { + drawHR(); + drawZones(); + } //g.setColor(g.theme.fg).drawLine(175/2,0,175/2,175).drawLine(0,175/2,175,175/2); // Used to align UI elements. + } + + initDraw(); + + // check for updates every second. + karvonenInterval = setInterval(function() { + if (!isMenuDisplayed && karvonenActive) updateUI(); + }, 1000); + + return karvonenInterval; +}) diff --git a/apps/runplus/metadata.json b/apps/runplus/metadata.json index ed253a319..40256e595 100644 --- a/apps/runplus/metadata.json +++ b/apps/runplus/metadata.json @@ -1,16 +1,20 @@ -{ "id": "run", - "name": "Run", - "version":"0.16", - "description": "Displays distance, time, steps, cadence, pace and more for runners.", +{ + "id": "runplus", + "name": "Run+", + "version": "0.21", + "description": "Displays distance, time, steps, cadence, pace and more for runners. Based on the Run app, but extended with additional screen for heart rate interval training.", "icon": "app.png", - "tags": "run,running,fitness,outdoors,gps", - "supports" : ["BANGLEJS","BANGLEJS2"], - "screenshots": [{"url":"screenshot.png"}], + "tags": "run,running,fitness,outdoors,gps,karvonen,karvonnen", + "supports": ["BANGLEJS2"], + "screenshots": [{"url": "screenshot.png"}], "readme": "README.md", "storage": [ - {"name":"run.app.js","url":"app.js"}, - {"name":"run.img","url":"app-icon.js","evaluate":true}, - {"name":"run.settings.js","url":"settings.js"} + {"name": "runplus.app.js", "url": "app.js"}, + {"name": "runplus.img", "url": "app-icon.js", "evaluate": true}, + {"name": "runplus.settings.js", "url": "settings.js"}, + {"name": "runplus_karvonen", "url": "karvonen.js"} ], - "data": [{"name":"run.json"}] + "data": [ + {"name": "runplus.json"} + ] } diff --git a/apps/runplus/settings.js b/apps/runplus/settings.js index 0312200a3..539391a27 100644 --- a/apps/runplus/settings.js +++ b/apps/runplus/settings.js @@ -1,5 +1,5 @@ (function(back) { - const SETTINGS_FILE = "run.json"; + const SETTINGS_FILE = "runplus.json"; var ExStats = require("exstats"); var statsList = ExStats.getList(); statsList.unshift({name:"-",id:""}); // add blank menu item @@ -31,6 +31,10 @@ notifications: [], }, }, + HRM: { + min: 55, + max: 185, + }, }, storage.readJSON(SETTINGS_FILE, 1) || {}); function saveSettings() { storage.write(SETTINGS_FILE, settings) @@ -125,5 +129,29 @@ 'Box 6': getBoxChooser("B6"), }); menu[/*LANG*/"Boxes"] = function() { E.showMenu(boxMenu)}; + + var hrmMenu = { + '< Back': function() { E.showMenu(menu) }, + } + + menu[/*LANG*/"HRM min/max"] = function() { E.showMenu(hrmMenu)}; + hrmMenu[/*LANG*/"min"] = { + min: 1, max: 100, + value: settings.HRM.min, + format: w => w, + onchange: w => { + settings.HRM.min = w; + saveSettings(); + }, + } + hrmMenu[/*LANG*/"max"] = { + min: 101, max: 220, + value: settings.HRM.max, + format: v => v, + onchange: v => { + settings.HRM.max = v; + saveSettings(); + }, + } E.showMenu(menu); }) From 7c647add8b666fdca52f9f5128482268e93e37e9 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 2 Jun 2023 21:45:51 +0100 Subject: [PATCH 1282/1725] kbmulti: update readme --- apps/kbmulti/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/kbmulti/README.md b/apps/kbmulti/README.md index b6754711d..88b91fa80 100644 --- a/apps/kbmulti/README.md +++ b/apps/kbmulti/README.md @@ -12,6 +12,6 @@ Uses the multitap keypad logic originally from here: http://www.espruino.com/Mor ![](screenshot_2.png) ![](screenshot_3.png) -Written by: [Sir Indy](https://github.com/sir-indy) and [Thyttan](https://github.com/thyttan) +Written by: [Sir Indy](https://github.com/sir-indy), [Thyttan](https://github.com/thyttan) and [bobrippling](https://github.com/bobrippling). For support and discussion please post in the [Bangle JS Forum](http://forum.espruino.com/microcosms/1424/) From bd540380a5e4e87018b88adda541c6eace305a8c Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Fri, 2 Jun 2023 18:09:55 -0500 Subject: [PATCH 1283/1725] Add files via upload --- apps/ohmcalc/ChangeLog | 1 + apps/ohmcalc/README.md | 22 +++ apps/ohmcalc/app-icon.js | 1 + apps/ohmcalc/app.js | 300 +++++++++++++++++++++++++++++++++++++ apps/ohmcalc/app.png | Bin 0 -> 2098 bytes apps/ohmcalc/metadata.json | 22 +++ apps/ohmcalc/ohmcalc.js | 300 +++++++++++++++++++++++++++++++++++++ 7 files changed, 646 insertions(+) create mode 100644 apps/ohmcalc/ChangeLog create mode 100644 apps/ohmcalc/README.md create mode 100644 apps/ohmcalc/app-icon.js create mode 100644 apps/ohmcalc/app.js create mode 100644 apps/ohmcalc/app.png create mode 100644 apps/ohmcalc/metadata.json create mode 100644 apps/ohmcalc/ohmcalc.js diff --git a/apps/ohmcalc/ChangeLog b/apps/ohmcalc/ChangeLog new file mode 100644 index 000000000..5560f00bc --- /dev/null +++ b/apps/ohmcalc/ChangeLog @@ -0,0 +1 @@ +0.01: New App! diff --git a/apps/ohmcalc/README.md b/apps/ohmcalc/README.md new file mode 100644 index 000000000..f45b8e977 --- /dev/null +++ b/apps/ohmcalc/README.md @@ -0,0 +1,22 @@ +# Ohm's Law Calculator + +This is a simple and intuitive Ohm's Law Calculator application designed for the Bangle.js 2 Smartwatch. The calculator focuses on providing an easy-to-navigate user interface with automatic calculation logic, allowing you to quickly and efficiently calculate electrical measurements, including Voltage, Current, Resistance, and Power. + +## Usage Guide + +* __Select the Electrical Measurement:__ On the main menu, select the electrical measurement that you wish to calculate (Voltage, Current, Resistance, or Power). +* __Enter Known Values:__ You will then be prompted to enter the known values. The application will present a menu listing the remaining electrical measurements. Select one and you will be taken to a numeric input screen. Repeat this step for the second known value. +* __View Results:__ Once the two known values have been entered, the application will automatically calculate and display the value of the selected electrical measurement. The Results menu will show the calculated value, the unit of measurement, and the formula used for calculation. +* __Navigation:__ Whether you're deep in calculations or perusing the results, the 'Back' button is always available to help you step back through the app. In case you'd like to start afresh from the Results menu, just tap on 'Main Menu'. + +## Compatibility + +This app was built and tested with Bangle.js 2. + +## Feedback + +If you have any issues or suggestions, please open an issue on this GitHub repository. Contributions to improve the application are also welcomed. + +## Creator + +[stweedo](https://github.com/stweedo) diff --git a/apps/ohmcalc/app-icon.js b/apps/ohmcalc/app-icon.js new file mode 100644 index 000000000..091392f44 --- /dev/null +++ b/apps/ohmcalc/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwxH+AH4AyQBIvmnM/AAk5F8pWBFwoABMDweGgEHF48HCAw2VE4MGDAgvCRIIACSoIvFgEGG4wuPKAYZCgENn8UgFVqsAik/hoNDC4ouUAAMOLAYoBF4Ok0gGEFwUOTJQuPAAM4DIIJCFAI2GRYM4ZRguNg7pIh0NhpXDAwIVIGBguFdwJlHABbTCgwwPCIgQB1V6dYSXGQ4zzCvWqIwhNBMBwvBvVPbokUKQQADg7BBSQUAp5FBDojANFAQmCAoTxCgEsmc0mkzlgxCMoQwBFwYFBFxgvBgAaCcYcUgEBmdfAA0zCoJiCegc4BIIvNeQwuCg4qEg8rAwowDdhwvLI4IuFLIIHFGAT4EF5rdEJAkHgImHF41fI4p2BAAYtIg8HhpGECwK7FXAQvHBQJIEikNEYIxGgE5UQh2FLw0rlYvHMAwAEnIvDGgIJDigABAwUAlhTGwAvBmgABnQMDlgfDDwRVDMAYvETocOAwSOFLwPVp6wEGAY8BC4MOBgYvMqukgENXwU0Lw3V5+kAALDFBoLaBhsA0lVF6U4F4rFBFgXP6uANoovVR5U6RQlP6ryGR6jvMnTqCYQJeGd6AwBBIYAFRIIiEeQheGr7FBDxE5FwZgCCQMHhqkBIwZTGYYYKGRwJ4DDIMNEYIoCF4YxEAAIWEMBAIBLxhIBAAYtFGYwXEnAmHF4JeFA4J4EAwIrLF5JICGAq9GE4J2EF6JsBI4UNhx5EYY67CFwcOhp3DGB0AFQTQCAoU4AwUsmYAClgHBg5EChwGCAoaNQE4N6p4wDMQIxCAAcHRYYoBp96DoouLgyjE1QZBPYQAEnDmEAAUNIoOqbYkGGBTsFCIL0GABhsCJoZgOFAkHFxEOAASZDNwYVFFxgwHdogJCii+DXoIGCgyXGFxwwHboIoG0mkAwgWBgBnDFyIwFVYQICQgIoBqtVF4TrBBoQXFFyAwDeAI4GnJmDnImGSYIuUJQbKMKxAXGAC4eBF44oeGBCJBAAiVBF0hgCAA4vlGI4tnADg=")) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js new file mode 100644 index 000000000..28f3eb9d5 --- /dev/null +++ b/apps/ohmcalc/app.js @@ -0,0 +1,300 @@ +let Layout = require("Layout"); + +// Definitions for units and formulas for electrical measurements. +const UNITS = { + "Voltage (V)": "Volts", + "Current (I)": "Amps", + "Resistance (R)": "Ohms", + "Power (P)": "Watts", +}; +const FORMULAS = { + 'Voltage (V)': { + 'Current (I), Resistance (R)': "{0} * {1}", + 'Power (P), Current (I)': "{0} / {1}", + 'Power (P), Resistance (R)': "Math.sqrt({0} * {1})" + }, + 'Current (I)': { + 'Voltage (V), Resistance (R)': "{0} / {1}", + 'Power (P), Voltage (V)': "{0} / {1}", + 'Power (P), Resistance (R)': "Math.sqrt({0} / {1})" + }, + 'Resistance (R)': { + 'Voltage (V), Current (I)': "{0} / {1}", + 'Power (P), Current (I)': "{0} / (Math.pow({1}, 2))", + 'Power (P), Voltage (V)': "(Math.pow({0}, 2)) / {1}" + }, + 'Power (P)': { + 'Voltage (V), Current (I)': "{0} * {1}", + 'Current (I), Resistance (R)': "(Math.pow({0}, 2)) * {1}", + 'Voltage (V), Resistance (R)': "(Math.pow({0}, 2)) / {1}" + }, +}; + +// Screen positioning settings +let btnSize = 23; +let xCenter = g.getWidth() / 2; +let yCenter = g.getHeight() / 2; + +// Variables to hold state +let lastStringWidth = 0; +let halfStringWidth = lastStringWidth / 2; +let calculatedVariable; +let selectedVariable; +let variableValues = {}; +let inputStr = ""; + +// Function references +let handleEnter; +let showVariableSelectionMenu; +let showInputMenu; +let resultsMenu; + +// Setup the layout for input buttons +let layout = new Layout({ + type: "v", + c: [ + { type: "txt", font: "6x8:3", label: "", id: "label" }, + { type: "h", c: "123".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, + { type: "h", c: "456".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, + { type: "h", c: "789".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, + { type: "h", c: ".0C".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, + { type: "h", c: [{ type: "btn", font: "6x8:2", label: "Enter", cb: () => { handleEnter(); }, fillx: 1, filly: 1 }] } + ] +}, { lazy: false }); + +// Clears area at the top of the screen where the text is displayed +function clearTextArea() { // Except Back Button + let x2 = g.getWidth(); + g.clearRect(0, 0, x2, btnSize); +} + +// Function to clear the entire screen, except for the Back button +function clearScreen() { + let x2 = g.getWidth(); + let y2 = g.getHeight(); + g.clearRect(btnSize, 0, x2, btnSize); + g.clearRect(0, btnSize, x2, y2); +} + +// Function to set up and display the calculator input screen +function showCalculatorInputScreen(variable) { + selectedVariable = variable; + layout.setUI(); + layout.render(); +} + +// Function to set and display the current value of the input +// Adjusts the font size to fit the screen width +function setValue(newStr) { + clearTextArea(); + inputStr = newStr; + + // Here we check the width of the string and adjust the font size + // Start with a standard font size and increase if the string is too wide + let fontSize = "6x8:3"; // start with a standard size + g.setFont(fontSize); + + // If the string is too long to fit on the screen, adjust the font size + while (g.stringWidth(inputStr) > g.getWidth() - 10 && fontSize !== "6x8:1") { + fontSize = "6x8:" + (Number(fontSize.split(":")[1]) - 1).toString(); + g.setFont(fontSize); + } + + layout.label.label = inputStr; + g.drawString(inputStr, layout.label.x, layout.label.y + 11); + lastStringWidth = g.stringWidth(inputStr); +} + +// Function to handle the press of a button and append its value to the current input +function handleButtonPress(value) { + inputStr = value === 'C' ? '' : inputStr + value; + setValue(inputStr); +} + +// Function to format the unit of measurement +function formatUnit(unit, value) { + return parseFloat(value) === 1 ? unit.slice(0, -1) : unit; +} + +// Calculates the value of the selected variable based on the entered values +// Also handles rounding and trimming of long decimal numbers +function calculateValue(calculatedVariable, variableValues) { + let formulas = FORMULAS[calculatedVariable]; + let formulaKeys = Object.keys(formulas); + for (let i = 0; i < formulaKeys.length; i++) { + let formulaKey = formulaKeys[i]; + let variables = formulaKey.split(', '); + if (variables.every(variable => variableValues.hasOwnProperty(variable))) { + let formula = formulas[formulaKey]; + let formulaValues = variables.map(variable => variableValues[variable]); + let calculatedValue = eval(formula.replace(/\{(\d+)\}/g, (_, index) => formulaValues[index])); + + // Check if the number is an integer + let isInteger = Math.floor(calculatedValue) === calculatedValue; + + // Round and trim long decimal numbers + if (!isInteger) { + calculatedValue = Math.round(calculatedValue * 1000) / 1000; + calculatedValue = calculatedValue.toString().replace(/(\.\d*?)0+$/, '$1'); + } else { + calculatedValue = calculatedValue.toFixed(0); + } + + let result = Object.entries(variableValues).map(function (entry) { + let variable = entry[0]; + let value = entry[1]; + return [variable, `${value} ${formatUnit(UNITS[variable], value.toString())}`]; + }); + result.push([calculatedVariable, `${calculatedValue} ${formatUnit(UNITS[calculatedVariable], calculatedValue.toString())}`]); + return { + formula: formula.replace(/\{(\d+)\}/g, (_, index) => formulaValues[index]), + value: calculatedValue, + unit: formatUnit(UNITS[calculatedVariable], calculatedValue), + result: result, + }; + } + } +} + +// Main function to initialize the application and setup the main menu +(function () { + let mainMenu = { + '': { 'title': 'Ohm\'s Law Calc' }, + '< Back': () => Bangle.showClock() + }; + + Object.keys(UNITS).forEach(unit => { + mainMenu[unit] = () => handleUnitSelection(unit); + }); + + // Function to present the menu for selecting the variable + // Filters out the calculated variable and already set variables from the menu + showVariableSelectionMenu = function () { + clearScreen(); + let variableSelectionMenu = { + '': { 'title': 'Select Variable' }, + '< Back': () => E.showMenu(mainMenu) + }; + let variables = Object.keys(UNITS); + let remainingVariables = variables.filter(v => v !== calculatedVariable && !variableValues[v]); + remainingVariables.forEach(variable => { + variableSelectionMenu[variable] = function () { + showInputMenu(variable); + }; + }); + E.showMenu(variableSelectionMenu); + }; + + // Function to handle the input of variable values + // It sets the current selected variable and displays the calculator input screen + showInputMenu = function (variable) { + setValue(""); + selectedVariable = variable; + let inputMenu = { + '': { 'title': variable }, + }; + E.showMenu(inputMenu); + showCalculatorInputScreen(variable); + }; + + // Function to handle the event of pressing 'Enter' + // It checks if the input is valid, if so, it saves the value and + // either calculates the result (if enough variables are present) or opens variable selection menu + handleEnter = function () { + // Check if the input is valid + if (inputStr === "" || isNaN(inputStr) || (inputStr.match(/\./g) || []).length > 1) { + // Show error message + setValue("Invalid Input"); + // Clear error message after 2 seconds + setTimeout(() => setValue(''), 2000); + return; + } + + if (calculatedVariable === null) { + return; + } + variableValues[selectedVariable] = parseFloat(inputStr); + if (Object.keys(variableValues).length === 2) { + let result = calculateValue(calculatedVariable, variableValues); + showResultsScreen(result); + calculatedVariable = null; + variableValues = {}; + } else { + setValue(""); + showVariableSelectionMenu(); + return; + } + return; + }; + + // Function to handle the selection of a unit of electical measurement + function handleUnitSelection(unit) { + calculatedVariable = unit; + showVariableSelectionMenu(); + } + + // Function to display the results screen with the calculated value + function drawValueScreen + (result) { + let drawPage = function () { + clearScreen(); + let fontSize = g.getHeight() / 3; + g.setFontVector(fontSize); + + // Reduce the font size until both the value and unit fit on the screen + while (g.stringWidth(result.value) > g.getWidth() - 20 || g.getFontHeight() > g.getHeight() / 2) { + fontSize--; + g.setFontVector(fontSize); + } + + let valueY = yCenter - g.getFontHeight() / 2; + let unitY = yCenter + g.getFontHeight() / 2; + let valueWidth = g.stringWidth(result.value); + let unitWidth = g.stringWidth(result.unit); + let valueX = (g.getWidth() - valueWidth) / 2; + let unitX = (g.getWidth() - unitWidth) / 2; + + g.drawString(result.value, valueX, valueY); + g.drawString(result.unit, unitX, unitY); + g.flip(); + }; + + // Shows the back button on the value screen + return function () { + clearScreen(); + let valueMenu = { + '': { 'title': 'Results' }, + '< Back': function () { + E.showMenu(resultsMenu); + } + }; + E.showMenu(valueMenu); + drawPage(); + }; + } + + // Shows the results menu with the calculated results and options + function showResultsScreen(result) { + let backButton = function () { + clearScreen(); + E.showMenu(resultsMenu); + }; + g.clear(); + resultsMenu = { + '': { 'title': 'Results' }, + 'Main Menu': function () { + E.showMenu(mainMenu); + }, + }; + resultsMenu[result.value + ' ' + result.unit] = drawValueScreen(result); + resultsMenu[result.formula + " = " + calculatedVariable] = {}; + resultsMenu['Exit'] = function () { + Bangle.showClock(); + }; + E.showMenu(resultsMenu); + } + + clearTextArea(); + E.showMenu(mainMenu); + +})(); diff --git a/apps/ohmcalc/app.png b/apps/ohmcalc/app.png new file mode 100644 index 0000000000000000000000000000000000000000..65d6c2bf2076b7e692e26259f617c01b76fad0a7 GIT binary patch literal 2098 zcmV-22+jA2P)ATK5s4{Aq^rCB(0@ja{@PX1KkkoJ zndvdlx%W=*y>n+erA6!RzR5|Z@5gzcbMAT1d(L@F^#A5)bBL&eh#pBn9p;>I*`lPh zABl+5k};=(#$kH^083waoTq)T&yz4_3WB-guI*LXfmkZ=7O5OPMnrpl3xGG0Pklj3 z{ey_=J;vYiSCz$w6Tm++631MR_4UHrr#_dx#<(?+rp5e~W$~=3!5DrMQ6~|p#0;PM zDyOl|FqM}dWnZ?QuzUPQAI2~Tb8Wm85p4!f@b*Vb<0k*6u>yY!7zXA{k4O4oBAP-(6ELTs^?Ct0W#2Mkgzy`E7%OPKj!7eY1wRo5Nz;yFJiB4; zVC0>rx%}N{Sg(yj2+V026V2;274h;@yB(%b)Y-z?gseCz^)Dhi01%<4?sW*z|JRK| zb^(IjYppM{4r{>!yzIQ8q(IG#QGbb);4KRGZDD_Pc}&al4d$-6d~n)8k0HQ81GJsc zhq039HYNJ9N{eIQ;l+EjLfmM8pWy&s_Qnp@qf(!a}?f2N0XS6t3|v{d$R2{C92F@l5bQ=j9&y1@s^Lagf(M0+{c z)TR|8Qz}2xBfP*9y!A*ZNeDUEKJ{7V0x0znJc6Ym5Hzn}v#~Z>xx5A* zNKC;FX7aB4IA{3+_T}XyodNWL$K>7Zjy1upcL*==v=oDR*0^{)!-TxK zKo92*xlbn%xQz2u4{18uXSjTm(2f2RZYeMtyI>6H#S~-wkY?#WtD2I=A zIX#-v4AZ>2mdoGYo9H(cu$j)IDblnPaC6}ox)SyZv$1Qw__0=20Y6_<80NZlhq&oz zjGOyd=%(IpdDZ^!5`Q-xIVXbYlS)|WIu~zmb9@Q#w$2p<)cjfSLMI#-<_KFcDfPYG zlOv4@XtzZ~M%Ojuq zXU@`O0bn-JJixCx{8JLhh3zlO=MPmkB#nWvCRnvdzJ&FK?S!*LO8uLNCT0pYYKFOc zCD=l|g2SWKV9CLbqzz#6FdMh#?b=T#fMsHO!4%eOtCIMa9D3L~Z!t4=ddtN2fLA^- z$4W+2wjT3WMdAp$5Zi>GPrfPPZ7>%$?*+`#e!!oVR)FR{mIIEtlb^XiX`j%}dn9&( z1t8KzxNb{|F0~8LIb1U0{=D!u_5;iSFJ2fOR)D4>=fpeZUUx-Cd)tyCU{17d zblN9Qefd$Iyl1@-0try9biiT)gBi z_T}gCw1Hm3+r76(_O$i~7CSamfbO&c*yDLn;ri8ykV4F-^`N)*OJ{L))l`muv!7Qk zo8y@mFW>%&%Z&C*f7$UTWDo4+xCFEHkqdyoZ)>`OPyXdW`CYKii1kYj8_{Ha$LlGz z|KhW4%x4eqcb`5j>p>^}yq=2+b45T1YF}5s;Z<1|KH4dJU@!cQb->_-?Ysp*Y$F0} zd@V`)1*NmNs4!2!TEHO$gn>|42O-^pFWT^mDZu8j6JR(Kg7>h4ShnqBPji78!JJ@L zUfOSl3EgRcDtmJbO(^LQpLQSO)+8V}p!NeR2l&cLInb%J-;6`Nc&+mgpC0)k9+4YG zvUQ%7k1*O%V+Fx_zXZGh6NkTIkH#&RhA`2K7+0yyOMP}Ni^CD|c z>51F|;4(|6{ma(&roPCYG%vEoIw{BCk~J@~|F|zQGOuUPP{PV*9ihbBs6>?r%+d)U z4j_g0|Jd`jT!@~b#Iuf2;!7erZWhGuC!*;z>R_&K3oAV!QKeTfXBWUr`)i*2k&7x9 z3Xe3w+z*0b6fJ!?y{*m2%&HbiVCDviP#R%{Tl>&_u<{SG)}9l1gwtn0gN;blZekdN&BJWu>upby(DZFF>Q0*W_W33>nWvP;x>%oAX+)qC zgA&^yJirYL0%*8OcpFJ6YpWb)Q-st}GgHc|<_)Ekn{Kr{4zSRLPwIEKi#zm9%uP<} z^YdiP?QMd?CH0N-t)zbOuUJ;;HOeYSJB5t0ig8J~DZgdu1t_cd)MuWBtw@Li7r3w$ zD03FJfB{&@r#`)4rA4-rdgw?A;4 z3(U4Za4g8^f#dGm>xJwBV2Kj{pDw07*qoM6N<$f@2pO;Q#;t literal 0 HcmV?d00001 diff --git a/apps/ohmcalc/metadata.json b/apps/ohmcalc/metadata.json new file mode 100644 index 000000000..1e1985a8b --- /dev/null +++ b/apps/ohmcalc/metadata.json @@ -0,0 +1,22 @@ +{ + "id": "ohmcalc", + "name": "Ohm's Law Calculator", + "version": "0.01", + "description": "A smart and simple calculator for Ohm's Law calculations, designed specifically for Bangle.js 2 smartwatches. Handles voltage, current, resistance, and power calculations with smart logic to prevent invalid inputs.", + "icon": "app.png", + "type": "app", + "tags": "calculator, utilities, electric", + "supports": ["BANGLEJS2"], + "readme": "README.md", + "allow_emulator": true, + "storage": [{ + "name": "ohmcalc.app.js", + "url": "app.js" + }, + { + "name": "ohmcalc.img", + "url": "app-icon.js", + "evaluate": true + } + ] +} diff --git a/apps/ohmcalc/ohmcalc.js b/apps/ohmcalc/ohmcalc.js new file mode 100644 index 000000000..d3dc25cfd --- /dev/null +++ b/apps/ohmcalc/ohmcalc.js @@ -0,0 +1,300 @@ +let Layout = require("Layout"); + +// Definitions for units and formulas for electrical measurements. +const UNITS = { + "Voltage (V)": "Volts", + "Current (I)": "Amps", + "Resistance (R)": "Ohms", + "Power (P)": "Watts", +}; +const FORMULAS = { + 'Voltage (V)': { + 'Current (I), Resistance (R)': "{0} * {1}", + 'Power (P), Current (I)': "{0} / {1}", + 'Power (P), Resistance (R)': "Math.sqrt({0} * {1})" + }, + 'Current (I)': { + 'Voltage (V), Resistance (R)': "{0} / {1}", + 'Power (P), Voltage (V)': "{0} / {1}", + 'Power (P), Resistance (R)': "Math.sqrt({0} / {1})" + }, + 'Resistance (R)': { + 'Voltage (V), Current (I)': "{0} / {1}", + 'Power (P), Current (I)': "{0} / (Math.pow({1}, 2))", + 'Power (P), Voltage (V)': "(Math.pow({0}, 2)) / {1}" + }, + 'Power (P)': { + 'Voltage (V), Current (I)': "{0} * {1}", + 'Current (I), Resistance (R)': "(Math.pow({0}, 2)) * {1}", + 'Voltage (V), Resistance (R)': "(Math.pow({0}, 2)) / {1}" + }, +}; + +// Screen positioning settings +let btnSize = 23; +let xCenter = g.getWidth() / 2; +let yCenter = g.getHeight() / 2; + +// Variables to hold state +let lastStringWidth = 0; +let halfStringWidth = lastStringWidth / 2; +let calculatedVariable; +let selectedVariable; +let variableValues = {}; +let inputStr = ""; + +// Function references +let handleEnter; +let showVariableSelectionMenu; +let showInputMenu; +let resultsMenu; + +// Setup the layout for input buttons +let layout = new Layout({ + type: "v", + c: [ + { type: "txt", font: "6x8:3", label: "", id: "label" }, + { type: "h", c: "123".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, + { type: "h", c: "456".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, + { type: "h", c: "789".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, + { type: "h", c: ".0C".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, + { type: "h", c: [{ type: "btn", font: "6x8:2", label: "Enter", cb: () => { handleEnter(); }, fillx: 1, filly: 1 }] } + ] +}, { lazy: false }); + +// Clears area at the top of the screen where the text is displayed +function clearTextArea() { // Except Back Button + let x2 = g.getWidth(); + g.clearRect(0, 0, x2, btnSize); +} + +// Function to clear the entire screen, except for the Back button +function clearScreen() { + let x2 = g.getWidth(); + let y2 = g.getHeight(); + g.clearRect(btnSize, 0, x2, btnSize); + g.clearRect(0, btnSize, x2, y2); +} + +// Function to set up and display the calculator input screen +function showCalculatorInputScreen(variable) { + selectedVariable = variable; + layout.setUI(); + layout.render(); +} + +// Function to set and display the current value of the input +// Adjusts the font size to fit the screen width +function setValue(newStr) { + clearTextArea(); + inputStr = newStr; + + // Here we check the width of the string and adjust the font size + // Start with a standard font size and increase if the string is too wide + let fontSize = "6x8:3"; // start with a standard size + g.setFont(fontSize); + + // If the string is too long to fit on the screen, adjust the font size + while (g.stringWidth(inputStr) > g.getWidth() - 10 && fontSize !== "6x8:1") { + fontSize = "6x8:" + (Number(fontSize.split(":")[1]) - 1).toString(); + g.setFont(fontSize); + } + + layout.label.label = inputStr; + g.drawString(inputStr, layout.label.x, layout.label.y + 11); + lastStringWidth = g.stringWidth(inputStr); +} + +// Function to handle the press of a button and append its value to the current input +function handleButtonPress(value) { + inputStr = value === 'C' ? '' : inputStr + value; + setValue(inputStr); +} + +// Function to format the unit of measurement +function formatUnit(unit, value) { + return parseFloat(value) === 1 ? unit.slice(0, -1) : unit; +} + +// Calculates the value of the selected variable based on the entered values +// Also handles rounding and trimming of long decimal numbers +function calculateValue(calculatedVariable, variableValues) { + let formulas = FORMULAS[calculatedVariable]; + let formulaKeys = Object.keys(formulas); + for (let i = 0; i < formulaKeys.length; i++) { + let formulaKey = formulaKeys[i]; + let variables = formulaKey.split(', '); + if (variables.every(variable => variableValues.hasOwnProperty(variable))) { + let formula = formulas[formulaKey]; + let formulaValues = variables.map(variable => variableValues[variable]); + let calculatedValue = eval(formula.replace(/\{(\d+)\}/g, (_, index) => formulaValues[index])); + + // Check if the number is an integer + let isInteger = Math.floor(calculatedValue) === calculatedValue; + + // Round and trim long decimal numbers + if (!isInteger) { + calculatedValue = Math.round(calculatedValue * 1000) / 1000; + calculatedValue = calculatedValue.toString().replace(/(\.\d*?)0+$/, '$1'); + } else { + calculatedValue = calculatedValue.toFixed(0); + } + + let result = Object.entries(variableValues).map(function (entry) { + let variable = entry[0]; + let value = entry[1]; + return [variable, `${value} ${formatUnit(UNITS[variable], value.toString())}`]; + }); + result.push([calculatedVariable, `${calculatedValue} ${formatUnit(UNITS[calculatedVariable], calculatedValue.toString())}`]); + return { + formula: formula.replace(/\{(\d+)\}/g, (_, index) => formulaValues[index]), + value: calculatedValue, + unit: formatUnit(UNITS[calculatedVariable], calculatedValue), + result: result, + }; + } + } +} + +// Main function to initialize the application and setup the main menu +(function () { + let mainMenu = { + '': { 'title': 'Ohm\'s Law Calc' }, + '< Back': () => Bangle.showClock() + }; + + Object.keys(UNITS).forEach(unit => { + mainMenu[unit] = () => handleUnitSelection(unit); + }); + + // Function to present the menu for selecting the variable + // Filters out the calculated variable and already set variables from the menu + showVariableSelectionMenu = function () { + clearScreen(); + let variableSelectionMenu = { + '': { 'title': 'Select Variable' }, + '< Back': () => E.showMenu(mainMenu) + }; + let variables = Object.keys(UNITS); + let remainingVariables = variables.filter(v => v !== calculatedVariable && !variableValues[v]); + remainingVariables.forEach(variable => { + variableSelectionMenu[variable] = function () { + showInputMenu(variable); + }; + }); + E.showMenu(variableSelectionMenu); + }; + + // Function to handle the input of variable values + // It sets the current selected variable and displays the calculator input screen + showInputMenu = function (variable) { + setValue(""); + selectedVariable = variable; + let inputMenu = { + '': { 'title': variable }, + }; + E.showMenu(inputMenu); + showCalculatorInputScreen(variable); + }; + + // Function to handle the event of pressing 'Enter' + // It checks if the input is valid, if so, it saves the value and + // either calculates the result (if enough variables are present) or opens variable selection menu + handleEnter = function () { + // Check if the input is valid + if (inputStr === "" || isNaN(inputStr) || (inputStr.match(/\./g) || []).length > 1) { + // Show error message + setValue("Invalid Input"); + // Clear error message after 2 seconds + setTimeout(() => setValue(''), 2000); + return; + } + + if (calculatedVariable === null) { + return; + } + variableValues[selectedVariable] = parseFloat(inputStr); + if (Object.keys(variableValues).length === 2) { + let result = calculateValue(calculatedVariable, variableValues); + showResultsScreen(result); + calculatedVariable = null; + variableValues = {}; + } else { + setValue(""); + showVariableSelectionMenu(); + return; + } + return; + }; + + // Function to handle the selection of a unit of electical measurement + function handleUnitSelection(unit) { + calculatedVariable = unit; + showVariableSelectionMenu(); + } + + // Function to display the results screen with the calculated value + function drawValueScreenpage + (result) { + let drawPage = function () { + clearScreen(); + let fontSize = g.getHeight() / 3; + g.setFontVector(fontSize); + + // Reduce the font size until both the value and unit fit on the screen + while (g.stringWidth(result.value) > g.getWidth() - 20 || g.getFontHeight() > g.getHeight() / 2) { + fontSize--; + g.setFontVector(fontSize); + } + + let valueY = yCenter - g.getFontHeight() / 2; + let unitY = yCenter + g.getFontHeight() / 2; + let valueWidth = g.stringWidth(result.value); + let unitWidth = g.stringWidth(result.unit); + let valueX = (g.getWidth() - valueWidth) / 2; + let unitX = (g.getWidth() - unitWidth) / 2; + + g.drawString(result.value, valueX, valueY); + g.drawString(result.unit, unitX, unitY); + g.flip(); + }; + + // Shows the back button on the value screen + return function () { + clearScreen(); + let valueMenu = { + '': { 'title': 'Results' }, + '< Back': function () { + E.showMenu(resultsMenu); + } + }; + E.showMenu(valueMenu); + drawPage(); + }; + } + + // Shows the results menu with the calculated results and options + function showResultsScreen(result) { + let backButton = function () { + clearScreen(); + E.showMenu(resultsMenu); + }; + g.clear(); + resultsMenu = { + '': { 'title': 'Results' }, + 'Main Menu': function () { + E.showMenu(mainMenu); + }, + }; + resultsMenu[result.value + ' ' + result.unit] = drawValueScreen(result); + resultsMenu[result.formula + " = " + calculatedVariable] = {}; + resultsMenu['Exit'] = function () { + Bangle.showClock(); + }; + E.showMenu(resultsMenu); + } + + clearTextArea(); + E.showMenu(mainMenu); + +})(); \ No newline at end of file From c4fd9ca09612c2a0d73949cb8a5156c444ebf1db Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Fri, 2 Jun 2023 18:15:55 -0500 Subject: [PATCH 1284/1725] Delete ohmcalc.js --- apps/ohmcalc/ohmcalc.js | 300 ---------------------------------------- 1 file changed, 300 deletions(-) delete mode 100644 apps/ohmcalc/ohmcalc.js diff --git a/apps/ohmcalc/ohmcalc.js b/apps/ohmcalc/ohmcalc.js deleted file mode 100644 index d3dc25cfd..000000000 --- a/apps/ohmcalc/ohmcalc.js +++ /dev/null @@ -1,300 +0,0 @@ -let Layout = require("Layout"); - -// Definitions for units and formulas for electrical measurements. -const UNITS = { - "Voltage (V)": "Volts", - "Current (I)": "Amps", - "Resistance (R)": "Ohms", - "Power (P)": "Watts", -}; -const FORMULAS = { - 'Voltage (V)': { - 'Current (I), Resistance (R)': "{0} * {1}", - 'Power (P), Current (I)': "{0} / {1}", - 'Power (P), Resistance (R)': "Math.sqrt({0} * {1})" - }, - 'Current (I)': { - 'Voltage (V), Resistance (R)': "{0} / {1}", - 'Power (P), Voltage (V)': "{0} / {1}", - 'Power (P), Resistance (R)': "Math.sqrt({0} / {1})" - }, - 'Resistance (R)': { - 'Voltage (V), Current (I)': "{0} / {1}", - 'Power (P), Current (I)': "{0} / (Math.pow({1}, 2))", - 'Power (P), Voltage (V)': "(Math.pow({0}, 2)) / {1}" - }, - 'Power (P)': { - 'Voltage (V), Current (I)': "{0} * {1}", - 'Current (I), Resistance (R)': "(Math.pow({0}, 2)) * {1}", - 'Voltage (V), Resistance (R)': "(Math.pow({0}, 2)) / {1}" - }, -}; - -// Screen positioning settings -let btnSize = 23; -let xCenter = g.getWidth() / 2; -let yCenter = g.getHeight() / 2; - -// Variables to hold state -let lastStringWidth = 0; -let halfStringWidth = lastStringWidth / 2; -let calculatedVariable; -let selectedVariable; -let variableValues = {}; -let inputStr = ""; - -// Function references -let handleEnter; -let showVariableSelectionMenu; -let showInputMenu; -let resultsMenu; - -// Setup the layout for input buttons -let layout = new Layout({ - type: "v", - c: [ - { type: "txt", font: "6x8:3", label: "", id: "label" }, - { type: "h", c: "123".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, - { type: "h", c: "456".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, - { type: "h", c: "789".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, - { type: "h", c: ".0C".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, - { type: "h", c: [{ type: "btn", font: "6x8:2", label: "Enter", cb: () => { handleEnter(); }, fillx: 1, filly: 1 }] } - ] -}, { lazy: false }); - -// Clears area at the top of the screen where the text is displayed -function clearTextArea() { // Except Back Button - let x2 = g.getWidth(); - g.clearRect(0, 0, x2, btnSize); -} - -// Function to clear the entire screen, except for the Back button -function clearScreen() { - let x2 = g.getWidth(); - let y2 = g.getHeight(); - g.clearRect(btnSize, 0, x2, btnSize); - g.clearRect(0, btnSize, x2, y2); -} - -// Function to set up and display the calculator input screen -function showCalculatorInputScreen(variable) { - selectedVariable = variable; - layout.setUI(); - layout.render(); -} - -// Function to set and display the current value of the input -// Adjusts the font size to fit the screen width -function setValue(newStr) { - clearTextArea(); - inputStr = newStr; - - // Here we check the width of the string and adjust the font size - // Start with a standard font size and increase if the string is too wide - let fontSize = "6x8:3"; // start with a standard size - g.setFont(fontSize); - - // If the string is too long to fit on the screen, adjust the font size - while (g.stringWidth(inputStr) > g.getWidth() - 10 && fontSize !== "6x8:1") { - fontSize = "6x8:" + (Number(fontSize.split(":")[1]) - 1).toString(); - g.setFont(fontSize); - } - - layout.label.label = inputStr; - g.drawString(inputStr, layout.label.x, layout.label.y + 11); - lastStringWidth = g.stringWidth(inputStr); -} - -// Function to handle the press of a button and append its value to the current input -function handleButtonPress(value) { - inputStr = value === 'C' ? '' : inputStr + value; - setValue(inputStr); -} - -// Function to format the unit of measurement -function formatUnit(unit, value) { - return parseFloat(value) === 1 ? unit.slice(0, -1) : unit; -} - -// Calculates the value of the selected variable based on the entered values -// Also handles rounding and trimming of long decimal numbers -function calculateValue(calculatedVariable, variableValues) { - let formulas = FORMULAS[calculatedVariable]; - let formulaKeys = Object.keys(formulas); - for (let i = 0; i < formulaKeys.length; i++) { - let formulaKey = formulaKeys[i]; - let variables = formulaKey.split(', '); - if (variables.every(variable => variableValues.hasOwnProperty(variable))) { - let formula = formulas[formulaKey]; - let formulaValues = variables.map(variable => variableValues[variable]); - let calculatedValue = eval(formula.replace(/\{(\d+)\}/g, (_, index) => formulaValues[index])); - - // Check if the number is an integer - let isInteger = Math.floor(calculatedValue) === calculatedValue; - - // Round and trim long decimal numbers - if (!isInteger) { - calculatedValue = Math.round(calculatedValue * 1000) / 1000; - calculatedValue = calculatedValue.toString().replace(/(\.\d*?)0+$/, '$1'); - } else { - calculatedValue = calculatedValue.toFixed(0); - } - - let result = Object.entries(variableValues).map(function (entry) { - let variable = entry[0]; - let value = entry[1]; - return [variable, `${value} ${formatUnit(UNITS[variable], value.toString())}`]; - }); - result.push([calculatedVariable, `${calculatedValue} ${formatUnit(UNITS[calculatedVariable], calculatedValue.toString())}`]); - return { - formula: formula.replace(/\{(\d+)\}/g, (_, index) => formulaValues[index]), - value: calculatedValue, - unit: formatUnit(UNITS[calculatedVariable], calculatedValue), - result: result, - }; - } - } -} - -// Main function to initialize the application and setup the main menu -(function () { - let mainMenu = { - '': { 'title': 'Ohm\'s Law Calc' }, - '< Back': () => Bangle.showClock() - }; - - Object.keys(UNITS).forEach(unit => { - mainMenu[unit] = () => handleUnitSelection(unit); - }); - - // Function to present the menu for selecting the variable - // Filters out the calculated variable and already set variables from the menu - showVariableSelectionMenu = function () { - clearScreen(); - let variableSelectionMenu = { - '': { 'title': 'Select Variable' }, - '< Back': () => E.showMenu(mainMenu) - }; - let variables = Object.keys(UNITS); - let remainingVariables = variables.filter(v => v !== calculatedVariable && !variableValues[v]); - remainingVariables.forEach(variable => { - variableSelectionMenu[variable] = function () { - showInputMenu(variable); - }; - }); - E.showMenu(variableSelectionMenu); - }; - - // Function to handle the input of variable values - // It sets the current selected variable and displays the calculator input screen - showInputMenu = function (variable) { - setValue(""); - selectedVariable = variable; - let inputMenu = { - '': { 'title': variable }, - }; - E.showMenu(inputMenu); - showCalculatorInputScreen(variable); - }; - - // Function to handle the event of pressing 'Enter' - // It checks if the input is valid, if so, it saves the value and - // either calculates the result (if enough variables are present) or opens variable selection menu - handleEnter = function () { - // Check if the input is valid - if (inputStr === "" || isNaN(inputStr) || (inputStr.match(/\./g) || []).length > 1) { - // Show error message - setValue("Invalid Input"); - // Clear error message after 2 seconds - setTimeout(() => setValue(''), 2000); - return; - } - - if (calculatedVariable === null) { - return; - } - variableValues[selectedVariable] = parseFloat(inputStr); - if (Object.keys(variableValues).length === 2) { - let result = calculateValue(calculatedVariable, variableValues); - showResultsScreen(result); - calculatedVariable = null; - variableValues = {}; - } else { - setValue(""); - showVariableSelectionMenu(); - return; - } - return; - }; - - // Function to handle the selection of a unit of electical measurement - function handleUnitSelection(unit) { - calculatedVariable = unit; - showVariableSelectionMenu(); - } - - // Function to display the results screen with the calculated value - function drawValueScreenpage - (result) { - let drawPage = function () { - clearScreen(); - let fontSize = g.getHeight() / 3; - g.setFontVector(fontSize); - - // Reduce the font size until both the value and unit fit on the screen - while (g.stringWidth(result.value) > g.getWidth() - 20 || g.getFontHeight() > g.getHeight() / 2) { - fontSize--; - g.setFontVector(fontSize); - } - - let valueY = yCenter - g.getFontHeight() / 2; - let unitY = yCenter + g.getFontHeight() / 2; - let valueWidth = g.stringWidth(result.value); - let unitWidth = g.stringWidth(result.unit); - let valueX = (g.getWidth() - valueWidth) / 2; - let unitX = (g.getWidth() - unitWidth) / 2; - - g.drawString(result.value, valueX, valueY); - g.drawString(result.unit, unitX, unitY); - g.flip(); - }; - - // Shows the back button on the value screen - return function () { - clearScreen(); - let valueMenu = { - '': { 'title': 'Results' }, - '< Back': function () { - E.showMenu(resultsMenu); - } - }; - E.showMenu(valueMenu); - drawPage(); - }; - } - - // Shows the results menu with the calculated results and options - function showResultsScreen(result) { - let backButton = function () { - clearScreen(); - E.showMenu(resultsMenu); - }; - g.clear(); - resultsMenu = { - '': { 'title': 'Results' }, - 'Main Menu': function () { - E.showMenu(mainMenu); - }, - }; - resultsMenu[result.value + ' ' + result.unit] = drawValueScreen(result); - resultsMenu[result.formula + " = " + calculatedVariable] = {}; - resultsMenu['Exit'] = function () { - Bangle.showClock(); - }; - E.showMenu(resultsMenu); - } - - clearTextArea(); - E.showMenu(mainMenu); - -})(); \ No newline at end of file From 1ff9ae7271a21cb1086d1fd0cb29504c78a4a653 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 2 Jun 2023 20:55:37 -0500 Subject: [PATCH 1285/1725] Fixed incorrect formula --- apps/ohmcalc/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index 28f3eb9d5..1fb157b5c 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -21,7 +21,7 @@ const FORMULAS = { 'Resistance (R)': { 'Voltage (V), Current (I)': "{0} / {1}", 'Power (P), Current (I)': "{0} / (Math.pow({1}, 2))", - 'Power (P), Voltage (V)': "(Math.pow({0}, 2)) / {1}" + 'Power (P), Voltage (V)': "(Math.pow({1}, 2)) / {0}" }, 'Power (P)': { 'Voltage (V), Current (I)': "{0} * {1}", From c562097aba5e334d47d3866132bc20664243a489 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 11:21:56 -0500 Subject: [PATCH 1286/1725] Update app.js - New results menu item --- apps/ohmcalc/app.js | 98 ++++++++++++++++++++++++++++++++++++++------- 1 file changed, 83 insertions(+), 15 deletions(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index 1fb157b5c..9cc7b86c8 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -7,26 +7,27 @@ const UNITS = { "Resistance (R)": "Ohms", "Power (P)": "Watts", }; + const FORMULAS = { 'Voltage (V)': { - 'Current (I), Resistance (R)': "{0} * {1}", - 'Power (P), Current (I)': "{0} / {1}", - 'Power (P), Resistance (R)': "Math.sqrt({0} * {1})" + 'Current (I), Resistance (R)': { equation: "{0} * {1}", display: "V = I * R" }, + 'Power (P), Current (I)': { equation: "{0} / {1}", display: "V = P / I" }, + 'Power (P), Resistance (R)': { equation: "Math.sqrt({0} * {1})", display: "V = sqrt(P * R)" } }, 'Current (I)': { - 'Voltage (V), Resistance (R)': "{0} / {1}", - 'Power (P), Voltage (V)': "{0} / {1}", - 'Power (P), Resistance (R)': "Math.sqrt({0} / {1})" + 'Voltage (V), Resistance (R)': { equation: "{0} / {1}", display: "I = V / R" }, + 'Power (P), Voltage (V)': { equation: "{0} / {1}", display: "I = P / V" }, + 'Power (P), Resistance (R)': { equation: "Math.sqrt({0} / {1})", display: "I = sqrt(P / R)" } }, 'Resistance (R)': { - 'Voltage (V), Current (I)': "{0} / {1}", - 'Power (P), Current (I)': "{0} / (Math.pow({1}, 2))", - 'Power (P), Voltage (V)': "(Math.pow({1}, 2)) / {0}" + 'Voltage (V), Current (I)': { equation: "{0} / {1}", display: "R = V / I" }, + 'Power (P), Current (I)': { equation: "{0} / (Math.pow({1}, 2))", display: "R = P / I^2" }, + 'Power (P), Voltage (V)': { equation: "(Math.pow({1}, 2)) / {0}", display: "R = V^2 / P" } }, 'Power (P)': { - 'Voltage (V), Current (I)': "{0} * {1}", - 'Current (I), Resistance (R)': "(Math.pow({0}, 2)) * {1}", - 'Voltage (V), Resistance (R)': "(Math.pow({0}, 2)) / {1}" + 'Voltage (V), Current (I)': { equation: "{0} * {1}", display: "P = V * I" }, + 'Current (I), Resistance (R)': { equation: "(Math.pow({0}, 2)) * {1}", display: "P = I^2 * R" }, + 'Voltage (V), Resistance (R)': { equation: "(Math.pow({0}, 2)) / {1}", display: "P = V^2 / R" } }, }; @@ -125,7 +126,9 @@ function calculateValue(calculatedVariable, variableValues) { let formulaKey = formulaKeys[i]; let variables = formulaKey.split(', '); if (variables.every(variable => variableValues.hasOwnProperty(variable))) { - let formula = formulas[formulaKey]; + let formulaData = formulas[formulaKey]; + let formula = formulaData.equation; + let formulaDisplay = formulaData.display; let formulaValues = variables.map(variable => variableValues[variable]); let calculatedValue = eval(formula.replace(/\{(\d+)\}/g, (_, index) => formulaValues[index])); @@ -147,7 +150,7 @@ function calculateValue(calculatedVariable, variableValues) { }); result.push([calculatedVariable, `${calculatedValue} ${formatUnit(UNITS[calculatedVariable], calculatedValue.toString())}`]); return { - formula: formula.replace(/\{(\d+)\}/g, (_, index) => formulaValues[index]), + formula: formulaDisplay.replace(/\{(\d+)\}/g, (_, index) => formulaValues[index]), value: calculatedValue, unit: formatUnit(UNITS[calculatedVariable], calculatedValue), result: result, @@ -273,6 +276,70 @@ function calculateValue(calculatedVariable, variableValues) { }; } + // Function to display the results screen with the values from the result.result array + function drawResultScreen(result) { + let drawPage = function() { + clearScreen(); + let fontSize = 30; // Adjust to fit the display + let lineSpacing = 15; // Space between lines + + // Define the vertical positions of the titles + let titlePositions = [10, 72, 132]; + + for (let i = 0; i < result.result.length; i++) { + let currentResult = result.result[i]; + let resultTitle = currentResult[0]; + let resultValue = currentResult[1]; + + // Draw title + g.setFontVector(fontSize / 2); // Small font for title + let titleX = (g.getWidth() - g.stringWidth(resultTitle)) / 2; + let titleY = titlePositions[i]; // Get the vertical position for the title + g.drawString(resultTitle, titleX, titleY); // Draw at the desired position + + let underlineYPosition = titleY + g.getFontHeight() - 3; + g.drawLine(titleX, underlineYPosition, titleX + g.stringWidth(resultTitle), underlineYPosition); // Draw underline + + let valueX; + let valueY = titleY + g.getFontHeight(); // Draw below the title + let valueFontSize = fontSize; + + // Draw value with smaller font size if necessary + g.setFontVector(valueFontSize); // Large font for value + if (g.stringWidth(resultValue) > g.getWidth()) { + valueFontSize /= 1.5; // Small font for value + g.setFontVector(valueFontSize); + if (g.stringWidth(resultValue) > g.getWidth()) { + valueFontSize /= 1.5; // Smallest font for value + g.setFontVector(valueFontSize); + } + } + + valueY += g.getFontHeight() / 2 + 2; + valueX = (g.getWidth() - g.stringWidth(resultValue)) / 2; + g.drawString(resultValue, valueX, valueY); // Draw at the desired position + + // Move down for the next entry + let nextTitleY = (i + 1 < titlePositions.length) ? titlePositions[i + 1] : titleY + 1.5 * fontSize + lineSpacing; + yPosition = nextTitleY; + } + g.flip(); + }; + + // Shows the back button on the result screen + return function() { + clearScreen(); + let resultMenu = { + '': { 'title': 'Results' }, + '< Back': function() { + E.showMenu(resultsMenu); + } + }; + E.showMenu(resultMenu); + drawPage(); + }; + } + // Shows the results menu with the calculated results and options function showResultsScreen(result) { let backButton = function () { @@ -286,8 +353,9 @@ function calculateValue(calculatedVariable, variableValues) { E.showMenu(mainMenu); }, }; + console.log(result); resultsMenu[result.value + ' ' + result.unit] = drawValueScreen(result); - resultsMenu[result.formula + " = " + calculatedVariable] = {}; + resultsMenu[result.formula] = drawResultScreen(result); resultsMenu['Exit'] = function () { Bangle.showClock(); }; From b0ad5522ce3830deb93f800f11db4ef8d0318c93 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 11:22:55 -0500 Subject: [PATCH 1287/1725] Update ChangeLog --- apps/ohmcalc/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/ohmcalc/ChangeLog b/apps/ohmcalc/ChangeLog index 5560f00bc..68790afee 100644 --- a/apps/ohmcalc/ChangeLog +++ b/apps/ohmcalc/ChangeLog @@ -1 +1,2 @@ 0.01: New App! +0.02: New Results menu item to show the formula and values used. From 8baafd0809590fa67f254d1bf656937e9fac7145 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 11:23:09 -0500 Subject: [PATCH 1288/1725] Update metadata.json --- apps/ohmcalc/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ohmcalc/metadata.json b/apps/ohmcalc/metadata.json index 1e1985a8b..822203024 100644 --- a/apps/ohmcalc/metadata.json +++ b/apps/ohmcalc/metadata.json @@ -1,7 +1,7 @@ { "id": "ohmcalc", "name": "Ohm's Law Calculator", - "version": "0.01", + "version": "0.02", "description": "A smart and simple calculator for Ohm's Law calculations, designed specifically for Bangle.js 2 smartwatches. Handles voltage, current, resistance, and power calculations with smart logic to prevent invalid inputs.", "icon": "app.png", "type": "app", From acd6c4aa39137e0fa6311a6f9a826b45cb753dd8 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 11:30:49 -0500 Subject: [PATCH 1289/1725] Update metadata.json - shorten launcher name --- apps/ohmcalc/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ohmcalc/metadata.json b/apps/ohmcalc/metadata.json index 822203024..51a21b9d5 100644 --- a/apps/ohmcalc/metadata.json +++ b/apps/ohmcalc/metadata.json @@ -1,6 +1,6 @@ { "id": "ohmcalc", - "name": "Ohm's Law Calculator", + "name": "Ohm's Law Calc", "version": "0.02", "description": "A smart and simple calculator for Ohm's Law calculations, designed specifically for Bangle.js 2 smartwatches. Handles voltage, current, resistance, and power calculations with smart logic to prevent invalid inputs.", "icon": "app.png", From feafb53854d736ff189d93c39dd1fd4bc0f6c1cc Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 11:34:40 -0500 Subject: [PATCH 1290/1725] Update metadata.json - Added shortened name --- apps/ohmcalc/metadata.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/ohmcalc/metadata.json b/apps/ohmcalc/metadata.json index 51a21b9d5..1272b9f91 100644 --- a/apps/ohmcalc/metadata.json +++ b/apps/ohmcalc/metadata.json @@ -1,6 +1,7 @@ { "id": "ohmcalc", - "name": "Ohm's Law Calc", + "name": "Ohm's Law Calculator", + "shortName": "Ohm's Law Calc", "version": "0.02", "description": "A smart and simple calculator for Ohm's Law calculations, designed specifically for Bangle.js 2 smartwatches. Handles voltage, current, resistance, and power calculations with smart logic to prevent invalid inputs.", "icon": "app.png", From 79c98c2eac081a64302fee7c5f00f812347b1fab Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 12:42:40 -0500 Subject: [PATCH 1291/1725] Update app.js - Fixed back button bug and disallow input during message --- apps/ohmcalc/app.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index 9cc7b86c8..3bd225baf 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -43,6 +43,7 @@ let calculatedVariable; let selectedVariable; let variableValues = {}; let inputStr = ""; +let invalidInput = false; // Function references let handleEnter; @@ -108,6 +109,9 @@ function setValue(newStr) { // Function to handle the press of a button and append its value to the current input function handleButtonPress(value) { + if (invalidInput) { + return; // Don't allow input if an invalid input error message is displayed + } inputStr = value === 'C' ? '' : inputStr + value; setValue(inputStr); } @@ -176,7 +180,10 @@ function calculateValue(calculatedVariable, variableValues) { clearScreen(); let variableSelectionMenu = { '': { 'title': 'Select Variable' }, - '< Back': () => E.showMenu(mainMenu) + '< Back': () => { + E.showMenu(mainMenu); + variableValues = {}; + } }; let variables = Object.keys(UNITS); let remainingVariables = variables.filter(v => v !== calculatedVariable && !variableValues[v]); @@ -208,8 +215,12 @@ function calculateValue(calculatedVariable, variableValues) { if (inputStr === "" || isNaN(inputStr) || (inputStr.match(/\./g) || []).length > 1) { // Show error message setValue("Invalid Input"); + invalidInput = true; // Prevent further input // Clear error message after 2 seconds - setTimeout(() => setValue(''), 2000); + setTimeout(() => { + setValue(''); + invalidInput = false; // Allow input again + }, 2000); return; } From 0c5d339e26ed27f53253ca37c2dae7fd2405af9b Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 15:17:49 -0500 Subject: [PATCH 1292/1725] Update app.js- remove console log --- apps/ohmcalc/app.js | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index 3bd225baf..4a3d97e8c 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -364,7 +364,6 @@ function calculateValue(calculatedVariable, variableValues) { E.showMenu(mainMenu); }, }; - console.log(result); resultsMenu[result.value + ' ' + result.unit] = drawValueScreen(result); resultsMenu[result.formula] = drawResultScreen(result); resultsMenu['Exit'] = function () { From 225b4be09de364f32ca79f9876adfc74b52af9fa Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 21:11:55 -0500 Subject: [PATCH 1293/1725] Update README.md --- apps/ohmcalc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ohmcalc/README.md b/apps/ohmcalc/README.md index f45b8e977..a890e590a 100644 --- a/apps/ohmcalc/README.md +++ b/apps/ohmcalc/README.md @@ -7,7 +7,7 @@ This is a simple and intuitive Ohm's Law Calculator application designed for the * __Select the Electrical Measurement:__ On the main menu, select the electrical measurement that you wish to calculate (Voltage, Current, Resistance, or Power). * __Enter Known Values:__ You will then be prompted to enter the known values. The application will present a menu listing the remaining electrical measurements. Select one and you will be taken to a numeric input screen. Repeat this step for the second known value. * __View Results:__ Once the two known values have been entered, the application will automatically calculate and display the value of the selected electrical measurement. The Results menu will show the calculated value, the unit of measurement, and the formula used for calculation. -* __Navigation:__ Whether you're deep in calculations or perusing the results, the 'Back' button is always available to help you step back through the app. In case you'd like to start afresh from the Results menu, just tap on 'Main Menu'. +* __Navigation:__ Even when you're deeply involved in entering calculations or examining the results, the power to navigate the app remains in your hands. While the 'Back' button is present in most scenarios, it isn't available in the Results menu and the Input screen. However, you can always return to the beginning by selecting 'Main Menu' from the Results menu. And if you're on the numeric Input screen, simply hold down the 'Clear' button to navigate back. ## Compatibility From ad0b24a597ce51a60ed358cc471db7bc5445f37e Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 22:22:00 -0500 Subject: [PATCH 1294/1725] Update app.js - Adds haptics to Input screen and long press "C" to go back --- apps/ohmcalc/app.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index 4a3d97e8c..61ab4a0be 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -50,6 +50,7 @@ let handleEnter; let showVariableSelectionMenu; let showInputMenu; let resultsMenu; +let mainMenu; // Setup the layout for input buttons let layout = new Layout({ @@ -59,7 +60,7 @@ let layout = new Layout({ { type: "h", c: "123".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, { type: "h", c: "456".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, { type: "h", c: "789".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, - { type: "h", c: ".0C".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, + { type: "h", c: ".0C".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, cbl: i === "C" ? () => { E.showMenu(mainMenu); Bangle.buzz(20); } : undefined, fillx: 1, filly: 1 })) }, { type: "h", c: [{ type: "btn", font: "6x8:2", label: "Enter", cb: () => { handleEnter(); }, fillx: 1, filly: 1 }] } ] }, { lazy: false }); @@ -109,6 +110,7 @@ function setValue(newStr) { // Function to handle the press of a button and append its value to the current input function handleButtonPress(value) { + Bangle.buzz(20); if (invalidInput) { return; // Don't allow input if an invalid input error message is displayed } @@ -165,7 +167,7 @@ function calculateValue(calculatedVariable, variableValues) { // Main function to initialize the application and setup the main menu (function () { - let mainMenu = { + mainMenu = { '': { 'title': 'Ohm\'s Law Calc' }, '< Back': () => Bangle.showClock() }; From dcf3a33a29181b59e8c0b24956dbff8538902f95 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 22:22:42 -0500 Subject: [PATCH 1295/1725] Update ChangeLog --- apps/ohmcalc/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/ohmcalc/ChangeLog b/apps/ohmcalc/ChangeLog index 68790afee..af752b896 100644 --- a/apps/ohmcalc/ChangeLog +++ b/apps/ohmcalc/ChangeLog @@ -1,2 +1,3 @@ 0.01: New App! 0.02: New Results menu item to show the formula and values used. +0.03: Adds haptics to Input screen and long press "C" to go back. From a0fcef0b92a1511ecd58db5055756fbb6efa49e7 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 22:22:57 -0500 Subject: [PATCH 1296/1725] Update metadata.json --- apps/ohmcalc/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ohmcalc/metadata.json b/apps/ohmcalc/metadata.json index 1272b9f91..de81ec6d7 100644 --- a/apps/ohmcalc/metadata.json +++ b/apps/ohmcalc/metadata.json @@ -2,7 +2,7 @@ "id": "ohmcalc", "name": "Ohm's Law Calculator", "shortName": "Ohm's Law Calc", - "version": "0.02", + "version": "0.03", "description": "A smart and simple calculator for Ohm's Law calculations, designed specifically for Bangle.js 2 smartwatches. Handles voltage, current, resistance, and power calculations with smart logic to prevent invalid inputs.", "icon": "app.png", "type": "app", From 02a5f81a0efbbade9cfcdf39875224052893b9ee Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 22:24:45 -0500 Subject: [PATCH 1297/1725] Update README.md --- apps/ohmcalc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ohmcalc/README.md b/apps/ohmcalc/README.md index a890e590a..3add03736 100644 --- a/apps/ohmcalc/README.md +++ b/apps/ohmcalc/README.md @@ -7,7 +7,7 @@ This is a simple and intuitive Ohm's Law Calculator application designed for the * __Select the Electrical Measurement:__ On the main menu, select the electrical measurement that you wish to calculate (Voltage, Current, Resistance, or Power). * __Enter Known Values:__ You will then be prompted to enter the known values. The application will present a menu listing the remaining electrical measurements. Select one and you will be taken to a numeric input screen. Repeat this step for the second known value. * __View Results:__ Once the two known values have been entered, the application will automatically calculate and display the value of the selected electrical measurement. The Results menu will show the calculated value, the unit of measurement, and the formula used for calculation. -* __Navigation:__ Even when you're deeply involved in entering calculations or examining the results, the power to navigate the app remains in your hands. While the 'Back' button is present in most scenarios, it isn't available in the Results menu and the Input screen. However, you can always return to the beginning by selecting 'Main Menu' from the Results menu. And if you're on the numeric Input screen, simply hold down the 'Clear' button to navigate back. +* __Navigation:__ Whether you're deep in calculations or perusing the results, the power to navigate the app remains in your hands. While the 'Back' button is present in most scenarios, it isn't available in the Results menu and the Input screen. However, you can always return to the beginning by selecting 'Main Menu' from the Results menu. And if you're on the numeric Input screen, simply hold down the 'Clear' button to navigate back. ## Compatibility From ae174c6860d7b0376b8d6e4d1675b566793c6778 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sat, 3 Jun 2023 22:53:49 -0500 Subject: [PATCH 1298/1725] Update app.js - Fixes small rounding bug --- apps/ohmcalc/app.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index 61ab4a0be..b0a28854b 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -143,10 +143,7 @@ function calculateValue(calculatedVariable, variableValues) { // Round and trim long decimal numbers if (!isInteger) { - calculatedValue = Math.round(calculatedValue * 1000) / 1000; - calculatedValue = calculatedValue.toString().replace(/(\.\d*?)0+$/, '$1'); - } else { - calculatedValue = calculatedValue.toFixed(0); + calculatedValue = calculatedValue.toFixed(3); } let result = Object.entries(variableValues).map(function (entry) { From 592b6777889c5e5c47848513e885deb8dbed6d8f Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 4 Jun 2023 00:53:14 -0500 Subject: [PATCH 1299/1725] Update app.js - Fixed a small rounding error --- apps/ohmcalc/app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index b0a28854b..63829d42a 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -144,6 +144,7 @@ function calculateValue(calculatedVariable, variableValues) { // Round and trim long decimal numbers if (!isInteger) { calculatedValue = calculatedValue.toFixed(3); + calculatedValue = calculatedValue.replace(/\.0+$/, '').replace(/(\.\d*[1-9])0+$/, '$1'); } let result = Object.entries(variableValues).map(function (entry) { From caec426589b53898da8704b3a2a9cb53a30ed65f Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 4 Jun 2023 01:10:15 -0500 Subject: [PATCH 1300/1725] Update app.js - Fixes "C" back button --- apps/ohmcalc/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index 63829d42a..4101fba11 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -60,7 +60,7 @@ let layout = new Layout({ { type: "h", c: "123".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, { type: "h", c: "456".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, { type: "h", c: "789".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, fillx: 1, filly: 1 })) }, - { type: "h", c: ".0C".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, cbl: i === "C" ? () => { E.showMenu(mainMenu); Bangle.buzz(20); } : undefined, fillx: 1, filly: 1 })) }, + { type: "h", c: ".0C".split("").map(i => ({ type: "btn", font: "6x8:3", label: i, cb: () => { handleButtonPress(i); }, cbl: i === "C" ? () => { showVariableSelectionMenu(); Bangle.buzz(20); } : undefined, fillx: 1, filly: 1 })) }, { type: "h", c: [{ type: "btn", font: "6x8:2", label: "Enter", cb: () => { handleEnter(); }, fillx: 1, filly: 1 }] } ] }, { lazy: false }); From bbbd200e2fcb2564015792747334bbc8590b580d Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 4 Jun 2023 01:25:21 -0500 Subject: [PATCH 1301/1725] Update app.js - Dynamically adjust Results screen font size --- apps/ohmcalc/app.js | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index 4101fba11..fc6bda81c 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -291,7 +291,7 @@ function calculateValue(calculatedVariable, variableValues) { function drawResultScreen(result) { let drawPage = function() { clearScreen(); - let fontSize = 30; // Adjust to fit the display + let fontSize = 30; // Initial font size let lineSpacing = 15; // Space between lines // Define the vertical positions of the titles @@ -313,17 +313,13 @@ function calculateValue(calculatedVariable, variableValues) { let valueX; let valueY = titleY + g.getFontHeight(); // Draw below the title - let valueFontSize = fontSize; - // Draw value with smaller font size if necessary - g.setFontVector(valueFontSize); // Large font for value - if (g.stringWidth(resultValue) > g.getWidth()) { - valueFontSize /= 1.5; // Small font for value + // Calculate the font size for value dynamically + let valueFontSize = fontSize; // Initialize with maximum possible font size + g.setFontVector(valueFontSize); + while (g.stringWidth(resultValue) > g.getWidth() && valueFontSize > 1) { + valueFontSize *= 0.9; // Reduce the font size by 10% g.setFontVector(valueFontSize); - if (g.stringWidth(resultValue) > g.getWidth()) { - valueFontSize /= 1.5; // Smallest font for value - g.setFontVector(valueFontSize); - } } valueY += g.getFontHeight() / 2 + 2; From 38711975540d7957275cde1aec19657dbde97fdf Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 4 Jun 2023 02:02:42 -0500 Subject: [PATCH 1302/1725] Update app.js - Minor font sizing changes --- apps/ohmcalc/app.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index fc6bda81c..600c12431 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -256,7 +256,7 @@ function calculateValue(calculatedVariable, variableValues) { g.setFontVector(fontSize); // Reduce the font size until both the value and unit fit on the screen - while (g.stringWidth(result.value) > g.getWidth() - 20 || g.getFontHeight() > g.getHeight() / 2) { + while (g.stringWidth(result.value) > g.getWidth() - 10 || g.getFontHeight() > g.getHeight() / 2) { fontSize--; g.setFontVector(fontSize); } @@ -317,8 +317,8 @@ function calculateValue(calculatedVariable, variableValues) { // Calculate the font size for value dynamically let valueFontSize = fontSize; // Initialize with maximum possible font size g.setFontVector(valueFontSize); - while (g.stringWidth(resultValue) > g.getWidth() && valueFontSize > 1) { - valueFontSize *= 0.9; // Reduce the font size by 10% + while (g.stringWidth(resultValue) > g.getWidth() - 10) { + valueFontSize--; // Reduce the font size by 1 g.setFontVector(valueFontSize); } From e480f21b288c7b0a9fec32243bdf16e729b4e94f Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 4 Jun 2023 02:17:10 -0500 Subject: [PATCH 1303/1725] Update app.js - Remove unnecessary variable --- apps/ohmcalc/app.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index 600c12431..aa470401c 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -315,11 +315,10 @@ function calculateValue(calculatedVariable, variableValues) { let valueY = titleY + g.getFontHeight(); // Draw below the title // Calculate the font size for value dynamically - let valueFontSize = fontSize; // Initialize with maximum possible font size - g.setFontVector(valueFontSize); + g.setFontVector(fontSize); while (g.stringWidth(resultValue) > g.getWidth() - 10) { - valueFontSize--; // Reduce the font size by 1 - g.setFontVector(valueFontSize); + fontSize--; // Reduce the font size by 1 + g.setFontVector(fontSize); } valueY += g.getFontHeight() / 2 + 2; From 1a82f314cefd3fef8c8152f54aedce98a878d226 Mon Sep 17 00:00:00 2001 From: novadawn999 Date: Sun, 4 Jun 2023 15:38:28 -0500 Subject: [PATCH 1304/1725] added 13 new chords support for fret offsets more formatting refinements --- apps/guitar/ChangeLog | 1 + apps/guitar/app.js | 241 +++++++++++++++++++++++++++++++++----- apps/guitar/metadata.json | 2 +- 3 files changed, 213 insertions(+), 31 deletions(-) diff --git a/apps/guitar/ChangeLog b/apps/guitar/ChangeLog index 5560f00bc..22c67383d 100644 --- a/apps/guitar/ChangeLog +++ b/apps/guitar/ChangeLog @@ -1 +1,2 @@ 0.01: New App! +0.02: More Chords, formatting, fret offset support. \ No newline at end of file diff --git a/apps/guitar/app.js b/apps/guitar/app.js index d48d9009a..6c172f920 100644 --- a/apps/guitar/app.js +++ b/apps/guitar/app.js @@ -2,10 +2,9 @@ const stringInterval = 24; const stringLength = 138; const fretHeight = 35; const fingerOffset = 17; -const x = 30; -const y = 32; +const xOffset = 26; +const yOffset = 34; -//chords const cc = [ "C", "0X", @@ -13,7 +12,8 @@ const cc = [ "22", "x", "11", - "x" + "x", + "0" ]; const dd = [ @@ -23,7 +23,8 @@ const dd = [ "x", "21", "33", - "22" + "22", + "0" ]; const gg = [ @@ -33,16 +34,19 @@ const gg = [ "x", "x", "x", - "33" + "33", + "0" ]; const am = [ "Am", "0x", "x", - "22", "23", - "11" + "22", + "11", + "x", + "0" ]; const em = [ @@ -52,7 +56,8 @@ const em = [ "23", "x", "x", - "x" + "x", + "0" ]; const aa = [ @@ -62,17 +67,8 @@ const aa = [ "21", "22", "23", - "x" -]; - -const ff = [ - "F", - "0X", - "33", - "34", - "22", - "11", - "11" + "x", + "0" ]; var ee = [ @@ -82,9 +78,177 @@ var ee = [ "23", "11", "x", - "x" + "x", + "0" ]; +var dm = [ + "Dm", + "0x", + "0x", + "x", + "22", + "33", + "11", + "0" +]; + +var ff = [ + "F", + "0x", + "0x", + "33", + "22", + "11", + "11", + "0" +]; + +var b7 = [ + "B7", + "0x", + "22", + "11", + "23", + "x", + "24", + "0" +]; + +var cadd9 = [ + "Cadd9", + "0x", + "32", + "21", + "x", + "33", + "34", + "0" +]; + +var dadd11 = [ + "Dadd11", + "0x", + "33", + "22", + "x", + "11", + "x", + "3" +]; + +var csus2 = [ + "Csus2", + "0x", + "33", + "x", + "x", + "11", + "0x", + "0" +]; + +var gadd9 = [ + "Gadd9", + "32", + "0x", + "x", + "21", + "x", + "33", + "0" +]; + +var aadd9 = [ + "Aadd9", + "11", + "33", + "34", + "22", + "x", + "x", + "5" +]; + +var fsharp7add11 = [ + "F#7add11", + "21", + "43", + "44", + "32", + "x", + "x", + "0" +]; + +var d9 = [ + "D9", + "0x", + "22", + "11", + "23", + "23", + "0x", + "4" +]; + +var g7 = [ + "G7", + "33", + "22", + "x", + "x", + "34", + "11", + "0" +]; + +var bflatd = [ + "Bb/D", + "0x", + "33", + "11", + "11", + "11", + "0x", + "3" +]; + +var e7sharp9 = [ + "E7#9", + "0x", + "22", + "11", + "23", + "34", + "0x", + "6" +]; + +var a11 = [ + "A11 3rd fret", + "33", + "0x", + "34", + "22", + "11", + "0x", + "0" +]; + +var a9 = [ + "A9", + "32", + "0x", + "33", + "21", + "34", + "0x", + "3" +]; + + + var index = 0; var chords = []; var menu = { @@ -99,6 +263,20 @@ var menu = { "Am" : function() { draw(am); }, "F" : function() { draw(ff); }, "G" : function() { draw(gg); }, + "Dm" : function() { draw(dm); }, + "B7" : function () { draw(b7); }, + "Cadd9" : function () { draw(cadd9); }, + "Dadd11" : function () { draw(dadd11); }, + "Csus2" : function () { draw(csus2); }, + "Gadd9" : function () { draw(gadd9); }, + "Aadd9" : function () { draw(aadd9); }, + "F#7add11" : function () { draw(fsharp7add11); }, + "D9" : function () { draw(d9); }, + "G7" : function () { draw(g7); }, + "Bb/D" : function () { draw(bflatd); }, + "E7#9" : function () { draw(e7sharp9); }, + "A11" : function () { draw(a11); }, + "A9" : function () { draw(a9); }, "About" : function() { E.showMessage( "Created By:\nNovaDawn999", { @@ -112,26 +290,29 @@ var menu = { function drawBase() { for (let i = 0; i < 6; i++) { - g.drawLine(x + i * stringInterval, y, x + i * stringInterval, y + stringLength); - g.fillRect(x- 1, y + i * fretHeight - 1, x + stringInterval * 5 + 1, y + i * fretHeight + 1); + g.drawLine(xOffset + i * stringInterval, yOffset, xOffset + i * stringInterval, yOffset + stringLength); + g.fillRect(xOffset- 1, yOffset + i * fretHeight - 1, xOffset + stringInterval * 5 + 1, yOffset + i * fretHeight + 1); } } function drawChord(chord) { - g.drawString(chord[0], g.getWidth() * 0.5 - 3, 18); - for (let i = 0; i < chord.length; i++) { + g.drawString(chord[0], g.getWidth() * 0.5 - (chord[0].length * 5), 16); + for (let i = 0; i < chord.length - 1; i++) { if (i === 0 || chord[i][0] === "x") { continue; } if (chord[i][0] === "0") { - g.drawString(chord[i][1], x + (i - 1) * stringInterval - 5, y + fretHeight * chord[i][0] + 2, true); - g.drawCircle(x + (i - 1) * stringInterval -1, y + fretHeight * chord[i][0], 10); + g.drawString(chord[i][1], xOffset + (i - 1) * stringInterval - 5, yOffset + fretHeight * chord[i][0] + 2, true); + g.drawCircle(xOffset + (i - 1) * stringInterval -1, yOffset + fretHeight * chord[i][0], 10); } else { - g.drawString(chord[i][1], x + (i - 1) * stringInterval -5, y -fingerOffset + fretHeight * chord[i][0] + 2, true); - g.drawCircle(x + (i - 1) * stringInterval -1, y -fingerOffset + fretHeight * chord[i][0], 10); + g.drawString(chord[i][1], xOffset + (i - 1) * stringInterval -5, yOffset -fingerOffset + fretHeight * chord[i][0] + 2, true); + g.drawCircle(xOffset + (i - 1) * stringInterval -1, yOffset -fingerOffset + fretHeight * chord[i][0], 10); } } + if (chord[7] !== "0") { + g.drawString(chord[7], 9, 50); + } } function buttonPress() { @@ -156,4 +337,4 @@ function main() { }, BTN); } -main(); +main(); \ No newline at end of file diff --git a/apps/guitar/metadata.json b/apps/guitar/metadata.json index 8f98ce44e..6ab3ffc51 100644 --- a/apps/guitar/metadata.json +++ b/apps/guitar/metadata.json @@ -1,7 +1,7 @@ { "id": "guitar", "name": "Guitar Chords", "shortName":"Guitar", - "version":"0.01", + "version":"0.02", "description": "Wrist mounted guitar chords", "icon": "app.png", "tags": "guitar, chords", From e21fc018b43367e9d5dbfaa872cb6ce656e1b5cd Mon Sep 17 00:00:00 2001 From: novadawn999 Date: Sun, 4 Jun 2023 16:26:35 -0500 Subject: [PATCH 1305/1725] added 13 more chords --- apps/Uke/ChangeLog | 1 + apps/Uke/app.js | 235 ++++++++++++++++++++++++++++++----------- apps/Uke/metadata.json | 2 +- 3 files changed, 178 insertions(+), 60 deletions(-) diff --git a/apps/Uke/ChangeLog b/apps/Uke/ChangeLog index 366158b0e..ef5ffa3fe 100644 --- a/apps/Uke/ChangeLog +++ b/apps/Uke/ChangeLog @@ -1,2 +1,3 @@ 0.01: New App! 0.02: Increased Legibility, GUI rework +0.03: 13 new chords diff --git a/apps/Uke/app.js b/apps/Uke/app.js index 3c28381c0..411a39b70 100644 --- a/apps/Uke/app.js +++ b/apps/Uke/app.js @@ -16,52 +16,12 @@ const cc = [ const dd = [ "D", + "22", "23", - "22", "24", "x" ]; -const gg = [ - "G", - "x", - "21", - "33", - "22", -]; - -const am = [ - "Am", - "22", - "x", - "x", - "x" -]; - -const em = [ - "Em", - "x", - "43", - "32", - "21" -]; - -const aa = [ - "A", - "22", - "11", - "x", - "x" -]; - -const ff = [ - "F", - "22", - "x", - "11", - "x" -]; - var ee = [ "E", "33", @@ -70,27 +30,184 @@ var ee = [ "11" ]; +const ff = [ + "F", + "22", + "x", + "11", + "x" +]; + +const gg = [ + "G", + "x", + "21", + "33", + "22", +]; + +const aa = [ + "A", + "22", + "11", + "x", + "x" +]; + +const bb = [ + "B", + "42", + "43", + "44", + "21" +]; + +const cm = [ + "Cm", + "11", + "x", + "12", + "34" +]; + +const dm = [ + "Dm", + "x", + "22", + "33", + "11" +]; + +const em = [ + "Em", + "x", + "43", + "32", + "21" +]; + +const fm = [ + "Fm", + "33", + "11", + "11", + "11" +]; + +const gm = [ + "Gm", + "x", + "22", + "33", + "11" +]; + +const am = [ + "Am", + "22", + "23", + "11", + "x" +]; + +const bm = [ + "Bm", + "x", + "43", + "32", + "21" +]; + +const c7 = [ + "C7", + "22", + "33", + "11", + "x" +]; + +const d7 = [ + "D7", + "x", + "22", + "11", + "23" +]; + +const e7 = [ + "E7", + "x", + "11", + "x", + "x" +]; + +const f7 = [ + "F7", + "11", + "22", + "11", + "11" +]; + +const g7 = [ + "G7", + "x", + "x", + "x", + "11" +]; + +const a7 = [ + "A7", + "21", + "21", + "21", + "32" +]; + +const b7 = [ + "B7", + "11", + "22", + "x", + "23" +]; + + + var index = 0; var chords = []; var menu = { - "" : { - "title" : "Uke Chords" - }, - "C" : function() { draw(cc); }, - "D" : function() { draw(dd); }, - "E" : function() { draw(ee); }, - "Em" : function() { draw(em); }, - "A" : function() { draw(aa); }, - "Am" : function() { draw(am); }, - "F" : function() { draw(ff); }, - "G" : function() { draw(gg); }, - "About" : function() { - E.showMessage( - "Created By:\nNovaDawn999", { - title:"About" - } - ); - } + "" : { "title" : "Uke Chords" }, + "C" : function() { draw(cc); }, + "D" : function() { draw(dd); }, + "E" : function() { draw(ee); }, + "F" : function() { draw(ff); }, + "G" : function() { draw(gg); }, + "A" : function() { draw(aa); }, + "B" : function() { draw(bb); }, + "C7" : function() { draw(c7); }, + "D7" : function() { draw(d7); }, + "E7" : function() { draw(e7); }, + "F7" : function() { draw(f7); }, + "G7" : function() { draw(g7); }, + "A7" : function() { draw(a7); }, + "B7" : function() { draw(b7); }, + "Cm" : function() { draw(cm); }, + "Dm" : function() { draw(dm); }, + "Em" : function() { draw(em); }, + "Fm" : function() { draw(fm); }, + "Gm" : function() { draw(gm); }, + "Am" : function() { draw(am); }, + "Bm" : function() { draw(bm); }, + "About" : function() { + E.showMessage( + "Created By:\nNovaDawn999", { + title:"About" + } + ); + } }; diff --git a/apps/Uke/metadata.json b/apps/Uke/metadata.json index 8d92718c3..ef31e3663 100644 --- a/apps/Uke/metadata.json +++ b/apps/Uke/metadata.json @@ -1,7 +1,7 @@ { "id": "Uke", "name": "Uke Chords", "shortName":"Uke", - "version":"0.02", + "version":"0.03", "description": "Wrist mounted ukulele chords", "icon": "app.png", "tags": "uke, chords", From 14a4dfcd968aab7bd30b5934a380257cf93329fb Mon Sep 17 00:00:00 2001 From: novadawn999 Date: Sun, 4 Jun 2023 16:45:23 -0500 Subject: [PATCH 1306/1725] bugfix --- apps/Uke/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/Uke/app.js b/apps/Uke/app.js index 411a39b70..095477f3f 100644 --- a/apps/Uke/app.js +++ b/apps/Uke/app.js @@ -220,7 +220,7 @@ function drawBase() { } function drawChord(chord) { - g.drawString(chord[0], g.getWidth() * 0.5 - 3, 18); + g.drawString(chord[0], g.getWidth() * 0.5 - (chord[0].length * 5), 16); for (let i = 0; i < chord.length; i++) { if (i === 0 || chord[i][0] === "x") { continue; From b4abf8571cba7cdb87bf417014d650a2ae94329a Mon Sep 17 00:00:00 2001 From: stweedo Date: Sun, 4 Jun 2023 20:43:19 -0500 Subject: [PATCH 1307/1725] [rescalc] - update to v0.02 --- apps/rescalc/ChangeLog | 1 + apps/rescalc/app.js | 224 ++++++++++++++----------------------- apps/rescalc/metadata.json | 2 +- 3 files changed, 83 insertions(+), 144 deletions(-) diff --git a/apps/rescalc/ChangeLog b/apps/rescalc/ChangeLog index 5560f00bc..43f41aa76 100644 --- a/apps/rescalc/ChangeLog +++ b/apps/rescalc/ChangeLog @@ -1 +1,2 @@ 0.01: New App! +0.02: Fixes colors not matching user input from color menu in some cases, 3 bands are now shown larger, various code improvements. \ No newline at end of file diff --git a/apps/rescalc/app.js b/apps/rescalc/app.js index cfb88e015..1986ac2db 100644 --- a/apps/rescalc/app.js +++ b/apps/rescalc/app.js @@ -3,75 +3,19 @@ // https://icons8.com/icon/ISAVBnskZod0/resistor let colorData = { - black: { - value: 0, - multiplier: Math.pow(10, 0), - hex: '#000' - }, - brown: { - value: 1, - multiplier: Math.pow(10, 1), - tolerance: 1, - hex: '#8B4513' - }, - red: { - value: 2, - multiplier: Math.pow(10, 2), - tolerance: 2, - hex: '#f00' - }, - orange: { - value: 3, - multiplier: Math.pow(10, 3), - hex: '#FF9900' - }, - yellow: { - value: 4, - multiplier: Math.pow(10, 4), - hex: '#ff0' - }, - green: { - value: 5, - multiplier: Math.pow(10, 5), - tolerance: 0.5, - hex: '#0f0' - }, - blue: { - value: 6, - multiplier: Math.pow(10, 6), - tolerance: 0.25, - hex: '#00f' - }, - violet: { - value: 7, - multiplier: Math.pow(10, 7), - tolerance: 0.1, - hex: '#f0f' - }, - grey: { - value: 8, - multiplier: Math.pow(10, 8), - tolerance: 0.05, - hex: '#808080' - }, - white: { - value: 9, - multiplier: Math.pow(10, 9), - hex: '#fff' - }, - gold: { - multiplier: Math.pow(10, -1), - tolerance: 5, - hex: '#FFD700' - }, - silver: { - multiplier: Math.pow(10, -2), - tolerance: 10, - hex: '#C0C0C0' - }, - none: { - tolerance: 20 - }, + black: { value: 0, multiplier: 1, hex: '#000' }, + brown: { value: 1, multiplier: 10, tolerance: 1, hex: '#8B4513' }, + red: { value: 2, multiplier: 100, tolerance: 2, hex: '#f00' }, + orange: { value: 3, multiplier: 1000, hex: '#FF9900' }, + yellow: { value: 4, multiplier: 10000, hex: '#ff0' }, + green: { value: 5, multiplier: 100000, tolerance: 0.5, hex: '#0f0' }, + blue: { value: 6, multiplier: 1000000, tolerance: 0.25, hex: '#00f' }, + violet: { value: 7, multiplier: 10000000, tolerance: 0.1, hex: '#f0f' }, + grey: { value: 8, multiplier: 100000000, tolerance: 0.05, hex: '#808080' }, + white: { value: 9, multiplier: 1000000000, hex: '#fff' }, + gold: { multiplier: 0.1, tolerance: 5, hex: '#FFD700' }, + silver: { multiplier: 0.01, tolerance: 10, hex: '#C0C0C0' }, + none: { tolerance: 20 }, }; function clearScreen() { // Except Back Button @@ -91,20 +35,26 @@ function colorBandsToResistance(colorBands) { return [resistance, tolerance]; } -function log10(val) { - return Math.log(val) / Math.log(10); -} - function resistanceToColorBands(resistance, tolerance) { - let multiplier = Math.floor(log10(resistance)); - let firstDigit = Math.floor(resistance / Math.pow(10, multiplier)); - resistance -= firstDigit * Math.pow(10, multiplier); - multiplier--; // for the next digit - let secondDigit = Math.floor(resistance / Math.pow(10, multiplier)); - resistance -= secondDigit * Math.pow(10, multiplier); - console.log("First Digit: " + firstDigit); - console.log("Second Digit: " + secondDigit); - console.log("Multiplier: " + multiplier); + let resistanceStr = resistance.toString(); + let firstDigit, secondDigit, multiplier; + if (resistanceStr.length === 1) { // Check if resistance is a single digit + firstDigit = 0; + secondDigit = Number(resistanceStr.charAt(0)); + multiplier = 0; + } else if (resistance >= 100) { + // Extract the first two digits from the resistance value + firstDigit = Number(resistanceStr.charAt(0)); + secondDigit = Number(resistanceStr.charAt(1)); + // Calculate the multiplier + multiplier = resistanceStr.length - 2; + } else { + // For values between 10-99, shift the color to the first band + firstDigit = Number(resistanceStr.charAt(0)); + secondDigit = Number(resistanceStr.charAt(1)); + multiplier = 0; + } + let firstBandEntry = Object.entries(colorData).find(function(entry) { return entry[1].value === firstDigit; }); @@ -121,8 +71,9 @@ function resistanceToColorBands(resistance, tolerance) { return entry[1].tolerance === tolerance; }); let toleranceBand = toleranceBandEntry ? toleranceBandEntry[1].hex : undefined; - console.log("Color bands: " + [firstBand, secondBand, multiplierBand, toleranceBand]); - return [firstBand, secondBand, multiplierBand, toleranceBand]; + let bands = [firstBand, secondBand, multiplierBand]; + if (toleranceBand) bands.push(toleranceBand); + return bands; } function drawResistor(colorBands, tolerance) { @@ -130,32 +81,27 @@ function drawResistor(colorBands, tolerance) { let resistorBodyWidth = 51; let resistorBodyHeight = 43; let resistorStartX = 52; - var bandColors = colorBands; - var numcolorBands = bandColors.length; - var resistorStartY = ((g.getHeight() - resistorBodyHeight) / 2) + 48; + let bandColors = colorBands; + let numColorBands = bandColors.length; + let resistorStartY = ((g.getHeight() - resistorBodyHeight) / 2) + 48; clearScreen(); g.drawImage(img, 0, 112); - var bandWidth = (resistorBodyWidth - (numcolorBands * 2 - 1)) / numcolorBands; // width of each band, accounting for the spacing - var bandHeight = resistorBodyHeight; // height of each band - var currentX = resistorStartX; // starting point for the first band + let bandWidth = (resistorBodyWidth - (numColorBands * 2 - 1)) / numColorBands; // width of each band, accounting for the spacing + let bandHeight = resistorBodyHeight; // height of each band + let currentX = resistorStartX; // starting point for the first band // Define the tolerance values that will trigger the fourth band - var validTolerances = [1, 2, 0.5, 0.25, 0.1, 0.05, 5, 10]; - - for (var i = 0; i < numcolorBands; i++) { + let validTolerances = [1, 2, 0.5, 0.25, 0.1, 0.05, 5, 10]; + for (let i = 0; i < numColorBands; i++) { // Skip the fourth band and its outlines if the tolerance is not in the valid list if (i === 3 && !validTolerances.includes(tolerance)) continue; - - var bandX = currentX; // calculate the x-coordinate of the band - var bandY = resistorStartY; // y-coordinate of the band - + let bandX = currentX; // calculate the x-coordinate of the band + let bandY = resistorStartY; // y-coordinate of the band g.setColor(bandColors[i]); // set the color for the band g.fillRect(bandX, bandY, bandX + bandWidth, bandY + bandHeight); - // Draw band outlines g.setColor('#000'); // set the color for the outline g.drawLine(bandX, bandY, bandX, bandY + bandHeight); // left outline g.drawLine(bandX + bandWidth, bandY, bandX + bandWidth, bandY + bandHeight); // right outline - // if it's the fourth band, shift it over by an additional 12 pixels if (i === 2) { currentX = bandX + bandWidth + 5 + 12; // update the current X position for the next band, accounting for the spacing @@ -170,14 +116,14 @@ function omega() { } function formatResistance(resistance) { - var units = ["", "k", "M", "G"]; - var unitIndex = 0; + let units = ["", "k", "M", "G"]; + let unitIndex = 0; while (resistance >= 1000 && unitIndex < units.length - 1) { resistance /= 1000; unitIndex++; } // Convert to string and truncate unnecessary zeroes - var resistanceStr = String(resistance); + let resistanceStr = String(resistance); if (resistanceStr.length > 5) { // if length is more than 5 including decimal point resistanceStr = resistance.toFixed(2); } @@ -188,49 +134,40 @@ function formatResistance(resistance) { } function drawResistance(resistance, tolerance) { - var x = g.getWidth() / 2; - var y = 40; - var formattedResistance = formatResistance(resistance); - var resistanceStr = formattedResistance.value; - var unit = formattedResistance.unit; + let x = g.getWidth() / 2; + let y = 40; + let formattedResistance = formatResistance(resistance); + let resistanceStr = formattedResistance.value; + let unit = formattedResistance.unit; g.reset(); - // draw resistance value g.setFontAlign(0, 0).setFont("Vector", 54); g.clearRect(0, y - 15, g.getWidth(), y + 25); // clear the background g.drawString(resistanceStr, x + 4, y); - - // draw unit, symbol and tolerance + // draw unit, symbol, and tolerance y += 46; g.setFontAlign(-1, 0).setFont("Vector", 27); - - var toleranceShift = tolerance.toString().replace('.', '').length > 2 ? 8 : 0; - var unitX = ((unit === "M" || unit === "G") ? 0 : 8) - toleranceShift; - var omegaX = (unit ? 46 : 36) - toleranceShift; // Shift the Omega symbol to the left if there is no unit - + let toleranceShift = tolerance.toString().replace('.', '').length > 2 ? 8 : 0; + let unitX = ((unit === "M" || unit === "G") ? 0 : 8) - toleranceShift; + let omegaX = (unit ? 46 : 36) - toleranceShift; // Shift the Omega symbol to the left if there is no unit g.drawString(unit.padStart(3), unitX, y); - // Draw the Ohm symbol to the right of the unit - g.drawImage(omega(), omegaX, y - 13, { - scale: 0.45 - }); - + g.drawImage(omega(), omegaX, y - 13, { scale: 0.45 }); g.setFontAlign(1, 0).setFont("Vector", 27); - // Define the tolerance values that will trigger the fourth band - var validTolerances = [1, 2, 0.5, 0.25, 0.1, 0.05, 5, 10]; - + let validTolerances = [1, 2, 0.5, 0.25, 0.1, 0.05, 5, 10]; // Check if the tolerance is not in the valid list, and if it's not, set it to 20 if (!validTolerances.includes(tolerance)) { tolerance = 20; } - - var toleranceStr = "±" + tolerance + "%"; - var toleranceX = tolerance.toString().replace('.', '').length > 2 ? 10 : 14; + let toleranceStr = "±" + tolerance + "%"; + let toleranceX = tolerance.toString().replace('.', '').length > 2 ? 10 : 14; g.drawString(toleranceStr.padEnd(4), 176 - toleranceX, y); } (function() { + let colorBands; + let inputColorBands; let settings = { resistance: 0, tolerance: 0, @@ -244,6 +181,8 @@ function drawResistance(resistance, tolerance) { colorBands: ["", "", "", ""] }; settings = emptySettings; + colorBands = null; + inputColorBands = null; } function showColorBandMenu(bandNumber) { @@ -289,11 +228,8 @@ function drawResistance(resistance, tolerance) { function setBandColor(bandNumber, color) { settings.colorBands[bandNumber - 1] = color; // arrays are 0-indexed - console.log(`Band ${bandNumber} color set to ${color}`); - // Update the color band in the colorEntryMenu colorEntryMenu[`${bandNumber}:`].value = color; - showColorEntryMenu(); } @@ -339,8 +275,8 @@ function drawResistance(resistance, tolerance) { } }, 'Draw Resistor': function() { - let colorBands = settings.colorBands; - let values = colorBandsToResistance(colorBands); + inputColorBands = settings.colorBands; + let values = colorBandsToResistance(inputColorBands); settings.resistance = values[0]; settings.tolerance = values[1]; showDrawingMenu(); @@ -367,7 +303,6 @@ function drawResistance(resistance, tolerance) { let formattedMultiplier = formatMultiplier(multiplierValue); multiplierMenu[`${formattedMultiplier}`] = () => { settings.multiplier = multiplierValue; - console.log(`Multiplier changed to: ${settings.multiplier}`); // Update the value of 'Multiplier' in resistanceEntryMenu resistanceEntryMenu["Multiplier"] = function() { showMultiplierMenu(); @@ -406,7 +341,6 @@ function drawResistance(resistance, tolerance) { let tolerance = parseFloat(colorData[color].tolerance); // Parse the tolerance as a float toleranceMenu[`${tolerance}%`] = () => { settings.tolerance = tolerance; - console.log(settings.tolerance); // Update the value of 'Tolerance (%)' in resistanceEntryMenu resistanceEntryMenu["Tolerance (%)"] = function() { showToleranceMenu(); @@ -415,13 +349,21 @@ function drawResistance(resistance, tolerance) { }; } } - E.showMenu(toleranceMenu); } - function drawResistorAndResistance(resistance, tolerance, multipliedResistance) { - console.log('Draw Resistor clicked'); - let colorBands = resistanceToColorBands(multipliedResistance || resistance, tolerance); + function drawResistorAndResistance(resistance, tolerance) { + if (inputColorBands) { + colorBands = inputColorBands.map(color => { + if (colorData.hasOwnProperty(color)) { + return colorData[color].hex; + } else { + return; + } + }); + } else { + colorBands = resistanceToColorBands(resistance, tolerance); + } drawResistor(colorBands, tolerance); drawResistance(resistance, tolerance); resetSettings(); @@ -469,25 +411,21 @@ function drawResistance(resistance, tolerance) { }; resistanceEntryMenu['Ohms'].onchange = v => { settings.resistance = v || 0; - console.log('Resistance changed to: ', settings.resistance); }; - E.showMenu(resistanceEntryMenu); } function showDrawingMenu() { let drawingMenu = { '': { - 'title': 'Resistor Drawing' + 'title': '' }, '< Back': function() { clearScreen(); E.showMenu(mainMenu); }, }; - E.showMenu(drawingMenu); - let resistance = settings.resistance * (settings.multiplier || 1); let tolerance = settings.tolerance; drawResistorAndResistance(resistance, tolerance); @@ -508,4 +446,4 @@ function drawResistance(resistance, tolerance) { }, }; E.showMenu(mainMenu); -})(); +})(); \ No newline at end of file diff --git a/apps/rescalc/metadata.json b/apps/rescalc/metadata.json index c14bbd6e5..aaa5f2acf 100644 --- a/apps/rescalc/metadata.json +++ b/apps/rescalc/metadata.json @@ -3,7 +3,7 @@ "name": "Resistor Calculator", "shortName": "Resistor Calc", "icon": "rescalc.png", - "version":"0.01", + "version":"0.02", "screenshots": [ {"url": "screenshot.png"}, {"url": "screenshot-1.png"}, From 2f0f5e8dd7dea229c211487075aa54fbd796ed4a Mon Sep 17 00:00:00 2001 From: stweedo Date: Mon, 5 Jun 2023 00:31:08 -0500 Subject: [PATCH 1308/1725] [rescalc] - bugfix with decimal values to colors --- apps/rescalc/app.js | 49 ++++++++++++++++++++++++++++----------------- 1 file changed, 31 insertions(+), 18 deletions(-) diff --git a/apps/rescalc/app.js b/apps/rescalc/app.js index 1986ac2db..6805589b2 100644 --- a/apps/rescalc/app.js +++ b/apps/rescalc/app.js @@ -36,25 +36,35 @@ function colorBandsToResistance(colorBands) { } function resistanceToColorBands(resistance, tolerance) { - let resistanceStr = resistance.toString(); let firstDigit, secondDigit, multiplier; - if (resistanceStr.length === 1) { // Check if resistance is a single digit - firstDigit = 0; - secondDigit = Number(resistanceStr.charAt(0)); - multiplier = 0; - } else if (resistance >= 100) { - // Extract the first two digits from the resistance value - firstDigit = Number(resistanceStr.charAt(0)); - secondDigit = Number(resistanceStr.charAt(1)); - // Calculate the multiplier - multiplier = resistanceStr.length - 2; + if (resistance < 1) { + // The resistance is less than 1, so we need to handle this case specially + let count = 0; + while (resistance < 1) { + resistance *= 10; + count++; + } + // Now, resistance is a whole number and count is how many times we had to multiply by 10 + let resistanceStr = resistance.toString(); + firstDigit = 0; // Set the first band color to be black + secondDigit = Number(resistanceStr.charAt(0)); // Set the second band color to be the significant digit + // Use count to determine the multiplier + multiplier = count === 1 ? 0.1 : 0.01; } else { - // For values between 10-99, shift the color to the first band - firstDigit = Number(resistanceStr.charAt(0)); - secondDigit = Number(resistanceStr.charAt(1)); - multiplier = 0; + // Convert the resistance to a string so we can manipulate it easily + let resistanceStr = resistance.toString(); + if (resistanceStr.length === 1) { // Check if resistance is a single digit + firstDigit = 0; + secondDigit = Number(resistanceStr.charAt(0)); + multiplier = 1; // Set multiplier to 1 for single digit resistance values + } else { + // Extract the first two digits from the resistance value + firstDigit = Number(resistanceStr.charAt(0)); + secondDigit = Number(resistanceStr.charAt(1)); + // Calculate the multiplier by matching it directly with the length of digits + multiplier = resistanceStr.length - 2 >= 0 ? Math.pow(10, resistanceStr.length - 2) : Math.pow(10, resistanceStr.length - 1); + } } - let firstBandEntry = Object.entries(colorData).find(function(entry) { return entry[1].value === firstDigit; }); @@ -64,7 +74,7 @@ function resistanceToColorBands(resistance, tolerance) { }); let secondBand = secondBandEntry ? secondBandEntry[1].hex : undefined; let multiplierBandEntry = Object.entries(colorData).find(function(entry) { - return entry[1].multiplier === Math.pow(10, multiplier); + return entry[1].multiplier === multiplier; }); let multiplierBand = multiplierBandEntry ? multiplierBandEntry[1].hex : undefined; let toleranceBandEntry = Object.entries(colorData).find(function(entry) { @@ -352,7 +362,7 @@ function drawResistance(resistance, tolerance) { E.showMenu(toleranceMenu); } - function drawResistorAndResistance(resistance, tolerance) { + function drawResistorAndResistance(resistance, tolerance) { if (inputColorBands) { colorBands = inputColorBands.map(color => { if (colorData.hasOwnProperty(color)) { @@ -362,8 +372,11 @@ function drawResistance(resistance, tolerance) { } }); } else { + console.log("Using colorBands = resistanceToColorBands(resistance, tolerance)" + "\nResistance: " + resistance + "\nTolerance: " + tolerance); colorBands = resistanceToColorBands(resistance, tolerance); } + console.log(inputColorBands); + console.log(colorBands); drawResistor(colorBands, tolerance); drawResistance(resistance, tolerance); resetSettings(); From b62d8baf75e13f77f9892db11cd533cad7ad2ac6 Mon Sep 17 00:00:00 2001 From: stweedo Date: Mon, 5 Jun 2023 00:34:44 -0500 Subject: [PATCH 1309/1725] [rescalc] - Remove console logs and formatting --- apps/rescalc/app.js | 57 +++++++++++++++++++++------------------------ 1 file changed, 27 insertions(+), 30 deletions(-) diff --git a/apps/rescalc/app.js b/apps/rescalc/app.js index 6805589b2..566809837 100644 --- a/apps/rescalc/app.js +++ b/apps/rescalc/app.js @@ -65,19 +65,19 @@ function resistanceToColorBands(resistance, tolerance) { multiplier = resistanceStr.length - 2 >= 0 ? Math.pow(10, resistanceStr.length - 2) : Math.pow(10, resistanceStr.length - 1); } } - let firstBandEntry = Object.entries(colorData).find(function(entry) { + let firstBandEntry = Object.entries(colorData).find(function (entry) { return entry[1].value === firstDigit; }); let firstBand = firstBandEntry ? firstBandEntry[1].hex : undefined; - let secondBandEntry = Object.entries(colorData).find(function(entry) { + let secondBandEntry = Object.entries(colorData).find(function (entry) { return entry[1].value === secondDigit; }); let secondBand = secondBandEntry ? secondBandEntry[1].hex : undefined; - let multiplierBandEntry = Object.entries(colorData).find(function(entry) { + let multiplierBandEntry = Object.entries(colorData).find(function (entry) { return entry[1].multiplier === multiplier; }); let multiplierBand = multiplierBandEntry ? multiplierBandEntry[1].hex : undefined; - let toleranceBandEntry = Object.entries(colorData).find(function(entry) { + let toleranceBandEntry = Object.entries(colorData).find(function (entry) { return entry[1].tolerance === tolerance; }); let toleranceBand = toleranceBandEntry ? toleranceBandEntry[1].hex : undefined; @@ -175,7 +175,7 @@ function drawResistance(resistance, tolerance) { g.drawString(toleranceStr.padEnd(4), 176 - toleranceX, y); } -(function() { +(function () { let colorBands; let inputColorBands; let settings = { @@ -200,7 +200,7 @@ function drawResistance(resistance, tolerance) { '': { 'title': `Band ${bandNumber}` }, - '< Back': function() { + '< Back': function () { E.showMenu(colorEntryMenu); }, }; @@ -209,24 +209,24 @@ function drawResistance(resistance, tolerance) { for (let color in colorData) { if (bandNumber === 1 || bandNumber === 2) { if (color !== 'none' && color !== 'gold' && color !== 'silver') { - (function(color) { - colorBandMenu[color.charAt(0).toUpperCase() + color.slice(1)] = function() { + (function (color) { + colorBandMenu[color.charAt(0).toUpperCase() + color.slice(1)] = function () { setBandColor(bandNumber, color); }; })(color); } } else if (bandNumber === 3) { if (color !== 'none') { - (function(color) { - colorBandMenu[color.charAt(0).toUpperCase() + color.slice(1)] = function() { + (function (color) { + colorBandMenu[color.charAt(0).toUpperCase() + color.slice(1)] = function () { setBandColor(bandNumber, color); }; })(color); } } else if (bandNumber === 4) { if (colorData[color].hasOwnProperty('tolerance')) { - (function(color) { - colorBandMenu[color.charAt(0).toUpperCase() + color.slice(1)] = function() { + (function (color) { + colorBandMenu[color.charAt(0).toUpperCase() + color.slice(1)] = function () { setBandColor(bandNumber, color); }; })(color); @@ -248,7 +248,7 @@ function drawResistance(resistance, tolerance) { '': { 'title': 'Band Color' }, - '< Back': function() { + '< Back': function () { clearScreen(); E.showMenu(mainMenu); }, @@ -284,7 +284,7 @@ function drawResistance(resistance, tolerance) { setTimeout(() => showColorBandMenu(4), 5); } }, - 'Draw Resistor': function() { + 'Draw Resistor': function () { inputColorBands = settings.colorBands; let values = colorBandsToResistance(inputColorBands); settings.resistance = values[0]; @@ -301,7 +301,7 @@ function drawResistance(resistance, tolerance) { '': { 'title': 'Multiplier' }, - '< Back': function() { + '< Back': function () { showResistanceEntryMenu(); } }; @@ -314,7 +314,7 @@ function drawResistance(resistance, tolerance) { multiplierMenu[`${formattedMultiplier}`] = () => { settings.multiplier = multiplierValue; // Update the value of 'Multiplier' in resistanceEntryMenu - resistanceEntryMenu["Multiplier"] = function() { + resistanceEntryMenu["Multiplier"] = function () { showMultiplierMenu(); }; showResistanceEntryMenu(); @@ -340,7 +340,7 @@ function drawResistance(resistance, tolerance) { '': { 'title': 'Tolerance' }, - '< Back': function() { + '< Back': function () { showResistanceEntryMenu(); } }; @@ -352,7 +352,7 @@ function drawResistance(resistance, tolerance) { toleranceMenu[`${tolerance}%`] = () => { settings.tolerance = tolerance; // Update the value of 'Tolerance (%)' in resistanceEntryMenu - resistanceEntryMenu["Tolerance (%)"] = function() { + resistanceEntryMenu["Tolerance (%)"] = function () { showToleranceMenu(); }; showResistanceEntryMenu(); @@ -362,7 +362,7 @@ function drawResistance(resistance, tolerance) { E.showMenu(toleranceMenu); } - function drawResistorAndResistance(resistance, tolerance) { + function drawResistorAndResistance(resistance, tolerance) { if (inputColorBands) { colorBands = inputColorBands.map(color => { if (colorData.hasOwnProperty(color)) { @@ -372,11 +372,8 @@ function drawResistance(resistance, tolerance) { } }); } else { - console.log("Using colorBands = resistanceToColorBands(resistance, tolerance)" + "\nResistance: " + resistance + "\nTolerance: " + tolerance); colorBands = resistanceToColorBands(resistance, tolerance); } - console.log(inputColorBands); - console.log(colorBands); drawResistor(colorBands, tolerance); drawResistance(resistance, tolerance); resetSettings(); @@ -386,7 +383,7 @@ function drawResistance(resistance, tolerance) { '': { 'title': 'Resistance' }, - '< Back': function() { + '< Back': function () { clearScreen(); E.showMenu(mainMenu); }, @@ -396,15 +393,15 @@ function drawResistance(resistance, tolerance) { max: 99, wrap: true, format: v => '', - onchange: v => {} + onchange: v => { } }, - 'Multiplier': function() { + 'Multiplier': function () { showMultiplierMenu(); }, - 'Tolerance (%)': function() { + 'Tolerance (%)': function () { showToleranceMenu(); }, - 'Draw Resistor': function() { + 'Draw Resistor': function () { showDrawingMenu(); } }; @@ -433,7 +430,7 @@ function drawResistance(resistance, tolerance) { '': { 'title': '' }, - '< Back': function() { + '< Back': function () { clearScreen(); E.showMenu(mainMenu); }, @@ -449,11 +446,11 @@ function drawResistance(resistance, tolerance) { 'title': 'Resistor Calc' }, '< Back': () => Bangle.showClock(), // return to the clock app - 'Resistance': function() { + 'Resistance': function () { resetSettings(); showResistanceEntryMenu(); }, - 'Colors': function() { + 'Colors': function () { resetSettings(); showColorEntryMenu(); }, From a81c3678276d7df93e08913e50d1fa3610393209 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 5 Jun 2023 09:30:42 +0100 Subject: [PATCH 1310/1725] using filenames based on date --- apps/recorder/ChangeLog | 3 ++- apps/recorder/app.js | 24 ++++++------------------ apps/recorder/metadata.json | 2 +- apps/recorder/widget.js | 14 ++++++++------ 4 files changed, 17 insertions(+), 26 deletions(-) diff --git a/apps/recorder/ChangeLog b/apps/recorder/ChangeLog index 874e4699c..eedf353b7 100644 --- a/apps/recorder/ChangeLog +++ b/apps/recorder/ChangeLog @@ -29,4 +29,5 @@ 0.23: Add graphing for HRM, fix some other graphs Altitude graphing now uses barometer altitude if it exists plotTrack in widget allows track to be drawn in the background (doesn't block execution) -0.24: Can now specify `setRecording(true, {force:...` to not show a menu \ No newline at end of file +0.24: Can now specify `setRecording(true, {force:...` to not show a menu +0.25: Now record filename based on date \ No newline at end of file diff --git a/apps/recorder/app.js b/apps/recorder/app.js index 9e9b58f78..ca3eec525 100644 --- a/apps/recorder/app.js +++ b/apps/recorder/app.js @@ -33,10 +33,8 @@ function updateSettings() { function getTrackNumber(filename) { var trackNum = 0; var matches = filename.match(/^recorder\.log(.*)\.csv$/); - if (matches) { - trackNum = parseInt(matches[1]||0); - } - return trackNum; + if (matches) return matches[1]; + return 0; } function showMainMenu() { @@ -62,23 +60,13 @@ function showMainMenu() { WIDGETS["recorder"].setRecording(v).then(function() { //print("Record start Complete"); loadSettings(); - print("Recording: "+settings.recording); + //print("Recording: "+settings.recording); showMainMenu(); }); }, 1); } }, - /*LANG*/'File #': { - value: getTrackNumber(settings.file), - min: 0, - max: 99, - step: 1, - onchange: v => { - settings.recording = false; // stop recording if we change anything - settings.file = "recorder.log"+v+".csv"; - updateSettings(); - } - }, + /*LANG*/'File' : {value:getTrackNumber(settings.file)}, /*LANG*/'View Tracks': ()=>{viewTracks();}, /*LANG*/'Time Period': { value: settings.period||10, @@ -110,7 +98,7 @@ function viewTracks() { var found = false; require("Storage").list(/^recorder\.log.*\.csv$/,{sf:true}).forEach(filename=>{ found = true; - menu[/*LANG*/"Track "+getTrackNumber(filename)] = ()=>viewTrack(filename,false); + menu[/*LANG*/getTrackNumber(filename)] = ()=>viewTrack(filename,false); }); if (!found) menu[/*LANG*/"No Tracks found"] = function(){}; @@ -353,7 +341,7 @@ function viewTrack(filename, info) { infc[i]++; } } else if (style=="Altitude") { - title = /*LANG*/"Altitude (m)"; + title = /*LANG*/"Altitude (m)"; var altIdx = info.fields.indexOf("Barometer Altitude"); if (altIdx<0) altIdx = info.fields.indexOf("Altitude"); while(l!==undefined) { diff --git a/apps/recorder/metadata.json b/apps/recorder/metadata.json index 99f1539c6..00c1c965e 100644 --- a/apps/recorder/metadata.json +++ b/apps/recorder/metadata.json @@ -2,7 +2,7 @@ "id": "recorder", "name": "Recorder", "shortName": "Recorder", - "version": "0.24", + "version": "0.25", "description": "Record GPS position, heart rate and more in the background, then download to your PC.", "icon": "app.png", "tags": "tool,outdoors,gps,widget", diff --git a/apps/recorder/widget.js b/apps/recorder/widget.js index e57f293c7..609bc1d36 100644 --- a/apps/recorder/widget.js +++ b/apps/recorder/widget.js @@ -244,7 +244,7 @@ if (!options.force) { // if not forced, ask the question g.reset(); // work around bug in 2v17 and earlier where bg color wasn't reset return E.showPrompt( - /*LANG*/"Overwrite\nLog " + settings.file.match(/\d+/)[0] + "?", + /*LANG*/"Overwrite\nLog " + settings.file.match(/^recorder\.log(.*)\.csv$/)[1] + "?", { title:/*LANG*/"Recorder", buttons:{/*LANG*/"Yes":"overwrite",/*LANG*/"No":"cancel",/*LANG*/"New":"new",/*LANG*/"Append":"append"} }).then(selection=>{ @@ -260,11 +260,13 @@ // wipe the file require("Storage").open(settings.file,"r").erase(); } else if (options.force=="new") { - // new file - find the max log file number and add one - var maxNumber=0; - require("Storage").list(/recorder.log.*/).forEach( fn => maxNumber = Math.max(maxNumber, fn.match(/\d+/)[0]) ); - var newFileName = "recorder.log" + (maxNumber + 1) + ".csv"; - // FIXME: use date? + // new file - use the current date + var date=(new Date()).toISOString().substr(0,10).replace(/-/g,""), trackNo=10; + var newFileName; + do { // while a file exists, add one to the letter after the date + newFileName = "recorder.log" + date + trackNo.toString(36) + ".csv"; + trackNo++; + } while (require("Storage").list(newFileName).length); settings.file = newFileName; } else throw new Error("Unknown options.force, "+options.force); } From 2f6a1b8bfafc1b42c82b1dde575d3b4bf999f20e Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 5 Jun 2023 09:31:12 +0100 Subject: [PATCH 1311/1725] remind users about 2v18 now! --- loader.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/loader.js b/loader.js index 9b1b3ee84..77a186af7 100644 --- a/loader.js +++ b/loader.js @@ -16,7 +16,7 @@ if (window.location.host=="banglejs.com") { 'This is not the official Bangle.js App Loader - you can try the
    Official Version here.'; } -var RECOMMENDED_VERSION = "2v17"; +var RECOMMENDED_VERSION = "2v18"; // could check http://www.espruino.com/json/BANGLEJS.json for this // We're only interested in Bangles From ed9d4d47c50878e0aea5497d0c934bd750ed1e5b Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 13:32:25 +0100 Subject: [PATCH 1312/1725] sched: interface.html, show timers & non-date alarms too --- apps/sched/interface.html | 74 +++++++++++++++++++++++++++++++-------- 1 file changed, 60 insertions(+), 14 deletions(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index f1ace7d0c..0b3c0d986 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -93,24 +93,53 @@ function upload() { } function renderAlarm(alarm, exists) { - const localDate = dateFromAlarm(alarm); + const localDate = alarm.date ? dateFromAlarm(alarm) : null; const tr = document.createElement('tr'); tr.classList.add('event-row'); tr.dataset.uid = alarm.id; - const tdTime = document.createElement('td'); - tr.appendChild(tdTime); + const tdType = document.createElement('td'); + tdType.type = "text"; + tdType.classList.add('event-summary'); + tr.appendChild(tdType); const inputTime = document.createElement('input'); - inputTime.type = "datetime-local"; + if (localDate) { + tdType.textContent = "Alarm"; + inputTime.type = "datetime-local"; + inputTime.value = localDate.toISOString().slice(0,16); + inputTime.onchange = (e => { + const date = new Date(inputTime.value); + alarm.t = dateToMsSinceMidnight(date); + alarm.date = formatDate(date); + }); + } else { + const [hours, mins, secs] = msToHMS(alarm.timer || alarm.t); + + inputTime.type = "time"; + inputTime.step = 1; // display seconds + inputTime.value = `${hours}:${mins}:${secs}`; + + if (alarm.timer) { + tdType.textContent = "Timer"; + inputTime.onchange = e => { + alarm.timer = hmsToMs(inputTime.value); + const now = new Date(); + const currentTime = (now.getHours()*3600000)+(now.getMinutes()*60000)+(now.getSeconds()*1000); + alarm.t = currentTime + alarm.timer; + }; + } else { + tdType.textContent = "Alarm"; + inputTime.onchange = e => { + alarm.t = hmsToMs(inputTime.value); + }; + } + } + if (!exists) tdType.textContent = "* " + tdType.textContent; inputTime.classList.add('event-date'); inputTime.classList.add('form-input'); inputTime.dataset.uid = alarm.id; - inputTime.value = localDate.toISOString().slice(0,16); - inputTime.onchange = (e => { - const date = new Date(inputTime.value); - alarm.t = dateToMsSinceMidnight(date); - alarm.date = formatDate(date); - }); + const tdTime = document.createElement('td'); + tr.appendChild(tdTime); tdTime.appendChild(inputTime); const tdSummary = document.createElement('td'); @@ -150,6 +179,24 @@ function renderAlarm(alarm, exists) { document.getElementById('upload').disabled = false; } +function msToHMS(ms) { + let secs = Math.floor(ms / 1000) % 60; + let mins = Math.floor(ms / 1000 / 60) % 60; + let hours = Math.floor(ms / 1000 / 60 / 60); + if (secs < 10) secs = "0" + secs; + if (mins < 10) mins = "0" + mins; + if (hours < 10) hours = "0" + hours; + return [hours, mins, secs]; +} + +function hmsToMs(hms) { + let [hours, mins, secs] = hms.split(":"); + hours = Number(hours); + mins = Number(mins); + secs = Number(secs); + return ((hours * 60 + mins) * 60 + secs) * 1000; +} + function addAlarm() { const alarm = getAlarmDefaults(); renderAlarm(alarm); @@ -165,9 +212,7 @@ function getData() { schedSettings = JSON.parse(data || "{}") || {}; Util.hideModal(); alarms.forEach(alarm => { - if (alarm.date) { - renderAlarm(alarm, true); - } + renderAlarm(alarm, true); }); }); }); @@ -191,7 +236,8 @@ function onInit() {
    Date HolidayTypeRepeat
    - + + From 138a607a1b0f76428fa3120b8d0425eaf278beda Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 13:32:39 +0100 Subject: [PATCH 1313/1725] sched: interface.html, sort by type, then time --- apps/sched/interface.html | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 0b3c0d986..0896fbd4e 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -211,6 +211,17 @@ function getData() { Util.readStorage('sched.settings.json',data=>{ schedSettings = JSON.parse(data || "{}") || {}; Util.hideModal(); + alarms.sort((a, b) => { + let x; + + x = !!b.date - !!a.date; + if(x) return x; + + x = !!a.timer - !!b.timer; + if(x) return x; + + return a.t - b.t; + }); alarms.forEach(alarm => { renderAlarm(alarm, true); }); From bd416eb0df6b59a85b2602f7a381e54db78308b6 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 13:49:33 +0100 Subject: [PATCH 1314/1725] sched: interface.html can create timers & daily alarms --- apps/sched/interface.html | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 0896fbd4e..ee5303bf0 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -203,6 +203,29 @@ function addAlarm() { alarms.push(alarm); } +function addDailyAlarm() { + const alarm = getAlarmDefaults(); + delete alarm.date; + renderAlarm(alarm); + alarms.push(alarm); +} + +function addTimer() { + const alarmDefaults = getAlarmDefaults(); + const timer = { + timer: hmsToMs("00:00:30"), + on: false, + t: 0, + dow: alarmDefaults.dow, + last: alarmDefaults.last, + rp: alarmDefaults.rp, + vibrate: alarmDefaults.vibrate, + as: alarmDefaults.as, + };; + renderAlarm(timer); + alarms.push(timer); +} + function getData() { Util.showModal("Loading..."); Util.readStorage('sched.json',data=>{ @@ -241,6 +264,15 @@ function onInit() {
    + +
    From 64a8f50b76348cc27be80a1c784a95dad44b44c4 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 13:58:06 +0100 Subject: [PATCH 1315/1725] sched: interface.html reloads watch to apply alarms --- apps/sched/interface.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index ee5303bf0..69d1a8bc9 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -88,7 +88,9 @@ function eventToAlarm(event, offsetMs) { function upload() { Util.showModal("Saving..."); Util.writeStorage("sched.json", JSON.stringify(alarms), () => { - location.reload(); // reload so we see current data + Puck.write(`\x10load()\n`, () => { // reload watch to load alarms + location.reload(); // reload so we see current data + }); }); } From 4d01587c107c1af6acd6d86154a4c2c35f0f2e04 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 14:09:23 +0100 Subject: [PATCH 1316/1725] sched: interface.html can turn alarms on/off --- apps/sched/interface.html | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 69d1a8bc9..0e3dad8d3 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -164,10 +164,24 @@ function renderAlarm(alarm, exists) { const tdInfo = document.createElement('td'); tr.appendChild(tdInfo); + const onOffCheck = document.createElement('input'); + onOffCheck.type = 'checkbox'; + onOffCheck.checked = alarm.on; + onOffCheck.onchange = e => { + alarm.on = !alarm.on; + }; + const onOffIcon = document.createElement('i'); + onOffIcon.classList.add('form-icon'); + const onOff = document.createElement('label'); + onOff.classList.add('form-switch'); + onOff.appendChild(onOffCheck); + onOff.appendChild(onOffIcon); + tdInfo.appendChild(onOff); + const buttonDelete = document.createElement('button'); buttonDelete.classList.add('btn'); buttonDelete.classList.add('btn-action'); - tdInfo.prepend(buttonDelete); + tdInfo.appendChild(buttonDelete); const iconDelete = document.createElement('i'); iconDelete.classList.add('icon'); iconDelete.classList.add('icon-delete'); From 81e810bcd7d84199635c49030d819831d8cb7f8c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 14:18:01 +0100 Subject: [PATCH 1317/1725] sched: separate on/off button from delete --- apps/sched/interface.html | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 0e3dad8d3..c5db6806a 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -161,8 +161,8 @@ function renderAlarm(alarm, exists) { tdSummary.appendChild(inputSummary); inputSummary.onchange(); - const tdInfo = document.createElement('td'); - tr.appendChild(tdInfo); + const tdOptions = document.createElement('td'); + tr.appendChild(tdOptions); const onOffCheck = document.createElement('input'); onOffCheck.type = 'checkbox'; @@ -176,7 +176,10 @@ function renderAlarm(alarm, exists) { onOff.classList.add('form-switch'); onOff.appendChild(onOffCheck); onOff.appendChild(onOffIcon); - tdInfo.appendChild(onOff); + tdOptions.appendChild(onOff); + + const tdInfo = document.createElement('td'); + tr.appendChild(tdInfo); const buttonDelete = document.createElement('button'); buttonDelete.classList.add('btn'); @@ -299,6 +302,7 @@ function onInit() {
    + From f8d1de16ce904b974c2f1831ad670bd3c74167f6 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 15:53:07 +0100 Subject: [PATCH 1318/1725] sched: wait before reloading to avoid `load()` output --- apps/sched/interface.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index c5db6806a..8bfeeed13 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -89,7 +89,9 @@ function upload() { Util.showModal("Saving..."); Util.writeStorage("sched.json", JSON.stringify(alarms), () => { Puck.write(`\x10load()\n`, () => { // reload watch to load alarms - location.reload(); // reload so we see current data + setTimeout(() => { + location.reload(); // reload so we see current data + }, 500); }); }); } From 4fdef7bd8c66c4dc1091251348b3b700c8cd61da Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 20:50:38 +0100 Subject: [PATCH 1319/1725] sched: add th for active --- apps/sched/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 8bfeeed13..edfb8e0b3 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -303,7 +303,7 @@ function onInit() { - + From b6829b65cc04e6b050b6e9710d5e992ed3267746 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 20:51:01 +0100 Subject: [PATCH 1320/1725] sched: default timers to on --- apps/sched/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index edfb8e0b3..9ee1fb649 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -235,8 +235,8 @@ function addTimer() { const alarmDefaults = getAlarmDefaults(); const timer = { timer: hmsToMs("00:00:30"), - on: false, t: 0, + on: alarmDefaults.on, dow: alarmDefaults.dow, last: alarmDefaults.last, rp: alarmDefaults.rp, From bbd93f530c15cbf713e3fadf5ab191dc7ee8d5cf Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 20:51:23 +0100 Subject: [PATCH 1321/1725] sched: rename dated-alarms to events --- apps/sched/interface.html | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 9ee1fb649..0560a524b 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -108,7 +108,7 @@ function renderAlarm(alarm, exists) { tr.appendChild(tdType); const inputTime = document.createElement('input'); if (localDate) { - tdType.textContent = "Alarm"; + tdType.textContent = "Event"; inputTime.type = "datetime-local"; inputTime.value = localDate.toISOString().slice(0,16); inputTime.onchange = (e => { @@ -218,13 +218,13 @@ function hmsToMs(hms) { return ((hours * 60 + mins) * 60 + secs) * 1000; } -function addAlarm() { - const alarm = getAlarmDefaults(); - renderAlarm(alarm); - alarms.push(alarm); +function addEvent() { + const event = getAlarmDefaults(); + renderAlarm(event); + alarms.push(event); } -function addDailyAlarm() { +function addAlarm() { const alarm = getAlarmDefaults(); delete alarm.date; renderAlarm(alarm); @@ -283,11 +283,11 @@ function onInit() {

    Manage dated events

    - - From 1749b4c2f1668a5a11f9d3b21ed30aabc20d8d4c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 29 May 2023 21:01:17 +0100 Subject: [PATCH 1322/1725] sched: superscript asterisk (for space) --- apps/sched/interface.html | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 0560a524b..7fe04b7c1 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -138,7 +138,11 @@ function renderAlarm(alarm, exists) { }; } } - if (!exists) tdType.textContent = "* " + tdType.textContent; + if (!exists) { + const asterisk = document.createElement('sup'); + asterisk.textContent = '*'; + tdType.appendChild(asterisk); + } inputTime.classList.add('event-date'); inputTime.classList.add('form-input'); inputTime.dataset.uid = alarm.id; From 7ec932c77a4e9b71afd6e2dae962a81d29f85250 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 5 Jun 2023 16:42:37 +0100 Subject: [PATCH 1323/1725] ensure clockinfo widget requires the module --- apps/widclkinfo/metadata.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/widclkinfo/metadata.json b/apps/widclkinfo/metadata.json index 282e80b76..aca046d90 100644 --- a/apps/widclkinfo/metadata.json +++ b/apps/widclkinfo/metadata.json @@ -6,6 +6,7 @@ "screenshots" : [ { "url":"screenshot.png" }], "type": "widget", "tags": "widget,clkinfo", + "dependencies" : { "clock_info":"module" }, "supports" : ["BANGLEJS2"], "storage": [ {"name":"widclkinfo.wid.js","url":"widget.js"} From 64cb8f04d9b26d8341bc7519936265557c17ba0b Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 5 Jun 2023 16:52:57 +0100 Subject: [PATCH 1324/1725] Fix search for non-app apps --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index dfba8b301..127c90aaa 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit dfba8b30128b100f900763241ec1790033f76dbb +Subproject commit 127c90aaa9e3d23f8853807e1ad17451a37dc3c1 From e7ad9ca2f13c615fabc1e115e7c20666d6d13efa Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 5 Jun 2023 16:54:12 +0100 Subject: [PATCH 1325/1725] remove sortorder tag - this has no app, so all it did was push the entry to the top of the app loader --- apps/popconlaunch/metadata.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/popconlaunch/metadata.json b/apps/popconlaunch/metadata.json index 9e1f096d4..f3e8ef4fb 100644 --- a/apps/popconlaunch/metadata.json +++ b/apps/popconlaunch/metadata.json @@ -16,6 +16,5 @@ ], "data": [ {"name":"popcon.cache.json"} - ], - "sortorder": -10 + ] } From 4616d533b4bd0ce9b9ac97fdeac1f399f5e15b5c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 5 Jun 2023 11:02:25 +0100 Subject: [PATCH 1326/1725] sched: don't force reload on alarm save --- apps/sched/interface.html | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 7fe04b7c1..a16cecc38 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -88,10 +88,8 @@ function eventToAlarm(event, offsetMs) { function upload() { Util.showModal("Saving..."); Util.writeStorage("sched.json", JSON.stringify(alarms), () => { - Puck.write(`\x10load()\n`, () => { // reload watch to load alarms - setTimeout(() => { - location.reload(); // reload so we see current data - }, 500); + Puck.write(`\x10E.showMessage("Hold button to\\nreload alarms")\n`, () => { + location.reload(); // reload so we see current data }); }); } From a299ac1c58cba7590dba28ee4d9e89d8cf9dfd63 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Tue, 6 Jun 2023 19:48:11 +0100 Subject: [PATCH 1327/1725] More navigation icons (for roundabouts) --- apps/messagegui/ChangeLog | 3 ++- apps/messagegui/app.js | 18 ++++++++++++------ apps/messagegui/metadata.json | 2 +- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index 3a61b87fe..4231a9f26 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -90,4 +90,5 @@ 0.65: Make sure messages are saved if not in the clock app (fix #2460) 0.66: Updated Navigation handling to work with new Gadgetbridge release 0.67: Support for 'Ignore' for messages from Gadgetbridge - Message view is now taller, and we use swipe left/right to dismiss messages rather than buttons \ No newline at end of file + Message view is now taller, and we use swipe left/right to dismiss messages rather than buttons +0.68: More navigation icons (for roundabouts) \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index ccc6acec6..d88fba6df 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -91,12 +91,18 @@ function showMapMessage(msg) { }else target = msg.instr; } - if (msg.action=="continue") img = "EBgBAIABwAPgD/Af+D/8f/773/PPY8cDwAPAA8ADwAPAA8AAAAPAA8ADwAAAA8ADwAPA"; - else if (msg.action=="left") img = "GhcBAYAAAPAAAHwAAD4AAB8AAA+AAAf//8P///x///+PAAPx4AA8fAAHD4ABwfAAcDwAHAIABwAAAcAAAHAAABwAAAcAAAHAAABwAAAc"; - else if (msg.action=="right") img = "GhcBAABgAAA8AAAPgAAB8AAAPgAAB8D///j///9///+/AAPPAAHjgAD44AB8OAA+DgAPA4ABAOAAADgAAA4AAAOAAADgAAA4AAAOAAAA"; - else if (msg.action=="left_slight") img = "ERgB//B/+D/8H4AP4Af4A74Bz4Dj4HD4OD4cD4AD4ADwADwADgAHgAPAAOAAcAA4ABwADgAH"; - else if (msg.action=="right_slight") img = "ERgBB/+D/8H/4APwA/gD/APuA+cD44Phw+Dj4HPgAeAB4ADgAPAAeAA4ABwADgAHAAOAAcAA"; - else if (msg.action=="finish") img = "HhsBAcAAAD/AAAH/wAAPB4AAeA4AAcAcAAYIcAA4cMAA48MAA4cMAAYAcAAcAcAAcA4AAOA4AAOBxjwHBzjwHjj/4Dnn/4B3P/4B+Pj4A8fj8Acfj8AI//8AA//+AA/j+AB/j+AB/j/A"; + switch (msg.action) { + case "continue": img = "EBgBAIABwAPgD/Af+D/8f/773/PPY8cDwAPAA8ADwAPAA8AAAAPAA8ADwAAAA8ADwAPA";break; + case "left": img = "GhcBAYAAAPAAAHwAAD4AAB8AAA+AAAf//8P///x///+PAAPx4AA8fAAHD4ABwfAAcDwAHAIABwAAAcAAAHAAABwAAAcAAAHAAABwAAAc";break; + case "right": img = "GhcBAABgAAA8AAAPgAAB8AAAPgAAB8D///j///9///+/AAPPAAHjgAD44AB8OAA+DgAPA4ABAOAAADgAAA4AAAOAAADgAAA4AAAOAAAA";break; + case "left_slight": img = "ERgB//B/+D/8H4AP4Af4A74Bz4Dj4HD4OD4cD4AD4ADwADwADgAHgAPAAOAAcAA4ABwADgAH";break; + case "right_slight": img = "ERgBB/+D/8H/4APwA/gD/APuA+cD44Phw+Dj4HPgAeAB4ADgAPAAeAA4ABwADgAHAAOAAcAA";break; + case "finish": img = "HhsBAcAAAD/AAAH/wAAPB4AAeA4AAcAcAAYIcAA4cMAA48MAA4cMAAYAcAAcAcAAcA4AAOA4AAOBxjwHBzjwHjj/4Dnn/4B3P/4B+Pj4A8fj8Acfj8AI//8AA//+AA/j+AB/j+AB/j/A";break; + case "roundabout_left": img = "HhcCAAAAAAAAAAAADwAAAEAAAAP8AAGqkAAA/8ABqqqAAD/wAGqqqgAP/AAKpAakA/8AAakAGoD/////QACpP/////gABpP/////gABpD/////wACpA/8AAv4AGoAP/AAf/QakAD/wAL//qgAA/8AC//qAAAP8AAf/kAAADwAAB/AAAAAAAAB/AAAAAAAAB/AAAAAAAAB/AAAAAAAAB/AAAAAAAAB/AAAAAAAAB/AAA=";break; + case "roundabout_right": img = "HhcCAAAAAAAAAAAAZAAADwAAAf/9AAP8AAB///gAP/AAH///4AD/wAP/Rv9AA/8Af8AH/AAP/AvwAD/////w/wAC/////8/wAC/////8vwAB/////wf8AGpAAP/AP/QaoAA/8AH//qkAD/wAB//6QAP/AAAf/0AAP8AAAA/QAADwAAAA/QAAAAAAAA/QAAAAAAAA/QAAAAAAAA/QAAAAAAAA/QAAAAAAAA/QAAAAAAA=";break; + case "roundabout_straight": img = "EhwCAABQAAAAH0AAAAf9AAAB//QAAH//0AAf//9AB////QH/v+/0P+P8v8L4P8L4CQP8BgAC/+QAAP/+kAA//+pAC/4GqQD/AAqgH+AAagL8AAKkL8AAKkH+AAagD/AAqgC/4GqQA//+pAAP/+kAAC/+QAAAP8AAAAP8AAAAP8AA";break; + } + //FIXME: what about countries where we drive on the right? How will we know to flip the icons? layout = new Layout({ type:"v", c: [ {type:"txt", font:street?fontMedium:fontLarge, label:target, bgCol:g.theme.bg2, col: g.theme.fg2, fillx:1, pad:3 }, diff --git a/apps/messagegui/metadata.json b/apps/messagegui/metadata.json index 5743dad50..f18f39096 100644 --- a/apps/messagegui/metadata.json +++ b/apps/messagegui/metadata.json @@ -2,7 +2,7 @@ "id": "messagegui", "name": "Message UI", "shortName": "Messages", - "version": "0.67", + "version": "0.68", "description": "Default app to display notifications from iOS and Gadgetbridge/Android", "icon": "app.png", "type": "app", From aa8ecc7e2c4e3fc345ae3b1ba29ca8fabfd03bf0 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 7 Jun 2023 10:06:39 +0100 Subject: [PATCH 1328/1725] sched: fix enabling an alarm that's sounded today --- apps/sched/interface.html | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index a16cecc38..3a8d99849 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -173,6 +173,7 @@ function renderAlarm(alarm, exists) { onOffCheck.checked = alarm.on; onOffCheck.onchange = e => { alarm.on = !alarm.on; + if (alarm.on) delete alarm.last; }; const onOffIcon = document.createElement('i'); onOffIcon.classList.add('form-icon'); From 4a48511fe933b2cb1e5c70f539eb89401ed6ab87 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 7 Jun 2023 10:10:10 +0100 Subject: [PATCH 1329/1725] sched: reload after uploading sched.json --- apps/sched/interface.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 3a8d99849..5730b5741 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -88,7 +88,7 @@ function eventToAlarm(event, offsetMs) { function upload() { Util.showModal("Saving..."); Util.writeStorage("sched.json", JSON.stringify(alarms), () => { - Puck.write(`\x10E.showMessage("Hold button to\\nreload alarms")\n`, () => { + Puck.write(`\x10require("sched").reload();\n`, () => { location.reload(); // reload so we see current data }); }); From 6edb52ec56e474710fe744288bf33d760088558a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 7 Jun 2023 17:26:32 +0100 Subject: [PATCH 1330/1725] chimer: fix typo --- apps/chimer/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/chimer/metadata.json b/apps/chimer/metadata.json index d5bc04950..e54560c93 100644 --- a/apps/chimer/metadata.json +++ b/apps/chimer/metadata.json @@ -2,7 +2,7 @@ "id": "chimer", "name": "Chimer", "version": "0.02", - "description": "A fork of Hour Chime that adds extra features such as: \n - Buzz or beep on every 60, 30 or 15 minutes. \n - Reapeat Chime up to 3 times \n - Set hours to disable chime", + "description": "A fork of Hour Chime that adds extra features such as: \n - Buzz or beep on every 60, 30 or 15 minutes. \n - Repeat Chime up to 3 times \n - Set hours to disable chime", "icon": "widget.png", "type": "widget", "tags": "widget", From 0834cc358ff9bf30516da329f61dc80963860b6a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 7 Jun 2023 17:27:48 +0100 Subject: [PATCH 1331/1725] chimer: avoid busy-loop when queuing next chime --- apps/chimer/widget.js | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/apps/chimer/widget.js b/apps/chimer/widget.js index 18358df9e..9a29c80f6 100644 --- a/apps/chimer/widget.js +++ b/apps/chimer/widget.js @@ -16,16 +16,10 @@ var settings = readSettings(); - function sleep(milliseconds) { - const date = Date.now(); - let currentDate = null; - do { - currentDate = Date.now(); - } while (currentDate - date < milliseconds); - } - function chime() { - for (var i = 0; i < settings.repeat; i++) { + let count = settings.repeat; + + const chime1 = () => { if (settings.type === 1) { Bangle.buzz(100); } else if (settings.type === 2) { @@ -33,8 +27,11 @@ } else { return; } - sleep(150); - } + if (--count > 0) + setTimeout(chime1, 150); + }; + + chime1(); } let lastHour = new Date().getHours(); From a82163fc88b80fc92d5947db0ac4a7250361ad5c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 7 Jun 2023 17:29:12 +0100 Subject: [PATCH 1332/1725] chimer: simplify logic for next chime --- apps/chimer/widget.js | 124 +++++++++++++++--------------------------- 1 file changed, 45 insertions(+), 79 deletions(-) diff --git a/apps/chimer/widget.js b/apps/chimer/widget.js index 9a29c80f6..a587b61de 100644 --- a/apps/chimer/widget.js +++ b/apps/chimer/widget.js @@ -34,6 +34,19 @@ chime1(); } + function queueNextCheckMins(mins) { + const now = new Date(), + m = now.getMinutes(), + s = now.getSeconds(), + ms = now.getMilliseconds(); + + const mLeft = mins - (m + mins * 2) % mins, + sLeft = mLeft * 60 - s, + msLeft = sLeft * 1000 - ms; + + setTimeout(check, msLeft); + } + let lastHour = new Date().getHours(); let lastMinute = new Date().getMinutes(); // don't chime when (re)loaded at a whole hour function check() { @@ -42,88 +55,41 @@ m = now.getMinutes(), s = now.getSeconds(), ms = now.getMilliseconds(); - if ( - (settings.sleep && h > settings.end) || - (settings.sleep && h >= settings.end && m !== 0) || - (settings.sleep && h < settings.start) + if (settings.sleep && ( + h > settings.end || + (h >= settings.end && m !== 0) || + h < settings.start) ) { - var mLeft = 60 - m, - sLeft = mLeft * 60 - s, - msLeft = sLeft * 1000 - ms; - setTimeout(check, msLeft); + queueNextCheckMins(60); return; } - if (settings.freq === 1) { - if ((m !== lastMinute && m === 0) || (m !== lastMinute && m === 30)) - chime(); - lastHour = h; - lastMinute = m; - // check again in 30 minutes - switch (true) { - case m / 30 >= 1: - var mLeft = 30 - (m - 30), - sLeft = mLeft * 60 - s, - msLeft = sLeft * 1000 - ms; - break; - case m / 30 < 1: - var mLeft = 30 - m, - sLeft = mLeft * 60 - s, - msLeft = sLeft * 1000 - ms; - break; - } - setTimeout(check, msLeft); - } else if (settings.freq === 2) { - if ( - (m !== lastMinute && m === 0) || - (m !== lastMinute && m === 15) || - (m !== lastMinute && m === 30) || - (m !== lastMinute && m === 45) - ) - chime(); - lastHour = h; - lastMinute = m; - // check again in 15 minutes - switch (true) { - case m / 15 >= 3: - var mLeft = 15 - (m - 45), - sLeft = mLeft * 60 - s, - msLeft = sLeft * 1000 - ms; - break; - case m / 15 >= 2: - var mLeft = 15 - (m - 30), - sLeft = mLeft * 60 - s, - msLeft = sLeft * 1000 - ms; - break; - case m / 15 >= 1: - var mLeft = 15 - (m - 15), - sLeft = mLeft * 60 - s, - msLeft = sLeft * 1000 - ms; - break; - case m / 15 < 1: - var mLeft = 15 - m, - sLeft = mLeft * 60 - s, - msLeft = sLeft * 1000 - ms; - break; - } - setTimeout(check, msLeft); - } else if (settings.freq === 3) { - if (m !== lastMinute) chime(); - lastHour = h; - lastMinute = m; - // check again in 1 minute - - var mLeft = 1, - sLeft = mLeft * 60 - s, - msLeft = sLeft * 1000 - ms; - setTimeout(check, msLeft); - } else { - if (h !== lastHour && m === 0) chime(); - lastHour = h; - // check again in 60 minutes - var mLeft = 60 - m, - sLeft = mLeft * 60 - s, - msLeft = sLeft * 1000 - ms; - setTimeout(check, msLeft); + switch (settings.freq) { + case 1: + if (m !== lastMinute && m % 30 === 0) + chime(); + lastHour = h; + lastMinute = m; + queueNextCheckMins(30); + break; + case 2: + if (m !== lastMinute && m % 15 === 0) + chime(); + lastHour = h; + lastMinute = m; + queueNextCheckMins(15); + break; + case 3: + // unreachable - not available in settings + if (m !== lastMinute) chime(); + lastHour = h; + lastMinute = m; + queueNextCheckMins(1); + break; + default: + if (h !== lastHour && m === 0) chime(); + lastHour = h; + queueNextCheckMins(60); + break; } } From 3aaff4b460e74d692d45e306c2e28069cd9e1e4c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 7 Jun 2023 17:45:05 +0100 Subject: [PATCH 1333/1725] multitimer: update from sched.js --- apps/multitimer/alarm.js | 91 ++++++++++++++++++++++++++++++---------- 1 file changed, 68 insertions(+), 23 deletions(-) diff --git a/apps/multitimer/alarm.js b/apps/multitimer/alarm.js index 8c3b1cdd4..77aa416b9 100644 --- a/apps/multitimer/alarm.js +++ b/apps/multitimer/alarm.js @@ -70,14 +70,19 @@ function startHM() { } function showAlarm(alarm) { + const alarmIndex = alarms.indexOf(alarm); const settings = require("sched").getSettings(); - let msg = ""; - if (alarm.timer) msg += require("time_utils").formatTime(alarm.timer); + let message = ""; + message += alarm.timer ? require("time_utils").formatDuration(alarm.timer) : require("time_utils").formatTime(alarm.t); if (alarm.msg) { - msg += "\n"+alarm.msg; + message += "\n" + alarm.msg; + } else { + message = (alarm.timer + ? atob("ACQswgD//33vRcGHIQAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAAAP/wAAAAAAAAAP/wAAAAAAAAAqqoAPAAAAAAqqqqoP8AAAAKqqqqqv/AAACqqqqqqq/wAAKqqqlWqqvwAAqqqqlVaqrAACqqqqlVVqqAAKqqqqlVVaqgAKqaqqlVVWqgAqpWqqlVVVqoAqlWqqlVVVaoCqlV6qlVVVaqCqVVfqlVVVWqCqVVf6lVVVWqKpVVX/lVVVVqqpVVV/+VVVVqqpVVV//lVVVqqpVVVfr1VVVqqpVVVfr1VVVqqpVVVb/lVVVqqpVVVW+VVVVqqpVVVVVVVVVqiqVVVVVVVVWqCqVVVVVVVVWqCqlVVVVVVVaqAqlVVVVVVVaoAqpVVVVVVVqoAKqVVVVVVWqgAKqlVVVVVaqgACqpVVVVVqqAAAqqlVVVaqoAAAKqqVVWqqgAAACqqqqqqqAAAAAKqqqqqgAAAAAAqqqqoAAAAAAAAqqoAAAAA==") + : atob("AC0swgF97///RcEpMlVVVVVVf9VVVVVVVVX/9VVf9VVf/1VVV///1Vf9VX///VVX///VWqqlV///1Vf//9aqqqqpf//9V///2qqqqqqn///V///6qqqqqqr///X//+qqoAAKqqv//3//6qoAAAAKqr//3//qqAAAAAAqq//3/+qoAADwAAKqv/3/+qgAADwAACqv/3/aqAAADwAAAqp/19qoAAADwAAAKqfV1qgAAADwAAACqXVWqgAAADwAAACqlVWqAAAADwAAAAqlVWqAAAADwAAAAqlVWqAAAADwAAAAqlVaoAAAADwAAAAKpVaoAAAADwAAAAKpVaoAAAADwAAAAKpVaoAAAAOsAAAAKpVaoAAAAOsAAAAKpVaoAAAAL/AAAAKpVaoAAAAgPwAAAKpVaoAAACAD8AAAKpVWqAAAIAA/AAAqlVWqAAAgAAPwAAqlVWqAACAAADwAAqlVWqgAIAAAAAACqlVVqgAgAAAAAACqVVVqoAAAAAAAAKqVVVaqAAAAAAAAqpVVVWqgAAAAAACqlVVVWqoAAAAAAKqlVVVVqqAAAAAAqqVVVVVaqoAAAAKqpVVVVVeqqoAAKqqtVVVVV/6qqqqqqr/VVVVX/2qqqqqqn/1VVVf/VaqqqqpV/9VVVf9VVWqqlVVf9VVVf1VVVVVVVVX9VQ==") + ) + " " + message } - else msg = atob("ACQswgD//33vRcGHIQAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAAAP/wAAAAAAAAAP/wAAAAAAAAAqqoAPAAAAAAqqqqoP8AAAAKqqqqqv/AAACqqqqqqq/wAAKqqqlWqqvwAAqqqqlVaqrAACqqqqlVVqqAAKqqqqlVVaqgAKqaqqlVVWqgAqpWqqlVVVqoAqlWqqlVVVaoCqlV6qlVVVaqCqVVfqlVVVWqCqVVf6lVVVWqKpVVX/lVVVVqqpVVV/+VVVVqqpVVV//lVVVqqpVVVfr1VVVqqpVVVfr1VVVqqpVVVb/lVVVqqpVVVW+VVVVqqpVVVVVVVVVqiqVVVVVVVVWqCqVVVVVVVVWqCqlVVVVVVVaqAqlVVVVVVVaoAqpVVVVVVVqoAKqVVVVVVWqgAKqlVVVVVaqgACqpVVVVVqqAAAqqlVVVaqoAAAKqqVVWqqgAAACqqqqqqqAAAAAKqqqqqgAAAAAAqqqqoAAAAAAAAqqoAAAAA==")+" "+msg; Bangle.loadWidgets(); Bangle.drawWidgets(); @@ -91,31 +96,42 @@ function showAlarm(alarm) { } else { - E.showPrompt(msg,{ - title: "TIMER!", - buttons : {"Snooze":true,"Ok":false} // default is sleep so it'll come back in 10 mins - }).then(function(sleep) { + E.showPrompt(message, { + title: alarm.timer ? /*LANG*/"TIMER!" : /*LANG*/"ALARM!", + buttons: { /*LANG*/"Snooze": true, /*LANG*/"Stop": false } // default is sleep so it'll come back in some mins + }).then(function (sleep) { buzzCount = 0; + if (sleep) { - if(alarm.ot===undefined) alarm.ot = alarm.t; - alarm.t += settings.defaultSnoozeMillis; - } else { - if (!alarm.timer) alarm.last = (new Date()).getDate(); - if (alarm.ot!==undefined) { - alarm.t = alarm.ot; - delete alarm.ot; + if (alarm.ot === undefined) { + alarm.ot = alarm.t; } - if (!alarm.rp) { - alarm.on = false; - if (alarm.data.oneshot) { - const i = alarms.indexOf(alarm); - if (i >= 0) alarms.splice(i, 1); + alarm.t += settings.defaultSnoozeMillis; + Bangle.emit("alarmSnooze", alarm); + } else { + let del = alarm.del === undefined ? settings.defaultDeleteExpiredTimers : alarm.del; + if (del) { + if (alarmIndex >= 0) alarms.splice(alarmIndex, 1); + } else { + if (alarm.date && alarm.rp) { + setNextRepeatDate(alarm); + } else if (!alarm.timer) { + alarm.last = new Date().getDate(); + } + if (alarm.ot !== undefined) { + alarm.t = alarm.ot; + delete alarm.ot; + } + if (!alarm.rp) { + alarm.on = false; } } + Bangle.emit("alarmDismiss", alarm); } //reset timer value if (alarm.timer) alarm.timer = alarm.data.ot; - // alarm is still a member of 'alarms', so writing to array writes changes back directly + // The updated alarm is still a member of 'alarms' + // so writing to array writes changes back directly require("sched").setAlarms(alarms); load(); }); @@ -126,7 +142,8 @@ function showAlarm(alarm) { Bangle.setLocked(false); } - require("buzz").pattern(alarm.vibrate === undefined ? "::" : alarm.vibrate).then(() => { + const pattern = alarm.vibrate || (alarm.timer ? settings.defaultTimerPattern : settings.defaultAlarmPattern); + require("buzz").pattern(pattern).then(() => { if (buzzCount--) { setTimeout(buzz, settings.buzzIntervalMillis); } else if (alarm.as) { // auto-snooze @@ -136,13 +153,41 @@ function showAlarm(alarm) { }); } + function setNextRepeatDate(alarm) { + let date = new Date(alarm.date); + let rp = alarm.rp; + if (rp===true) { // fallback in case rp is set wrong + date.setDate(date.getDate() + 1); + } else switch(rp.interval) { // rp is an object + case "day": + date.setDate(date.getDate() + rp.num); + break; + case "week": + date.setDate(date.getDate() + (rp.num * 7)); + break; + case "month": + if (!alarm.od) alarm.od = date.getDate(); + date = new Date(date.getFullYear(), date.getMonth() + rp.num, alarm.od); + if (date.getDate() != alarm.od) date.setDate(0); + break; + case "year": + if (!alarm.od) alarm.od = date.getDate(); + date = new Date(date.getFullYear() + rp.num, date.getMonth(), alarm.od); + if (date.getDate() != alarm.od) date.setDate(0); + break; + default: + console.log(`sched: unknown repeat '${JSON.stringify(rp)}'`); + break; + } + alarm.date = date.toLocalISOString().slice(0,10); + } + if ((require("Storage").readJSON("setting.json", 1) || {}).quiet > 1) return; buzz(); } -// Check for alarms let alarms = require("sched").getAlarms(); let active = require("sched").getActiveAlarms(alarms); if (active.length) { From 508808cc3d86edcb7c8803c098638c9106fe06e3 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 7 Jun 2023 17:57:00 +0100 Subject: [PATCH 1334/1725] sched: only splice out alarm, if it's present in alarms --- apps/sched/sched.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sched/sched.js b/apps/sched/sched.js index 3deb9d1f0..6eea4add5 100644 --- a/apps/sched/sched.js +++ b/apps/sched/sched.js @@ -40,7 +40,7 @@ function showAlarm(alarm) { } else { let del = alarm.del === undefined ? settings.defaultDeleteExpiredTimers : alarm.del; if (del) { - alarms.splice(alarmIndex, 1); + if (alarmIndex >= 0) alarms.splice(alarmIndex, 1); } else { if (alarm.date && alarm.rp) { setNextRepeatDate(alarm); From 70ea8df149688d7f45ce2ca4e5dc0da1bc31f7c8 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 7 Jun 2023 17:57:43 +0100 Subject: [PATCH 1335/1725] multitimer: align with alarm app --- apps/multitimer/ChangeLog | 2 +- apps/multitimer/README.md | 2 +- apps/multitimer/app.js | 12 ++++++------ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/apps/multitimer/ChangeLog b/apps/multitimer/ChangeLog index c682077e4..3100146e9 100644 --- a/apps/multitimer/ChangeLog +++ b/apps/multitimer/ChangeLog @@ -1,4 +1,4 @@ 0.01: Initial version 0.02: Update for time_utils module 0.03: Use default Bangle formatter for booleans -0.04: Add "Oneshot" setting to delete an alarm/timer after it sounds +0.04: Merge in alarm app's newer changes: diff --git a/apps/multitimer/README.md b/apps/multitimer/README.md index 4dcc4a8fd..d5bf957a6 100644 --- a/apps/multitimer/README.md +++ b/apps/multitimer/README.md @@ -2,7 +2,7 @@ With this app, you can set timers and chronographs (stopwatches) and watch them count down/up in real time. You can also set alarms - swipe left or right to switch between the three functions. "Hard mode" is also available for timers and alarms. It will double the number of buzz counts and you will have to swipe the screen five to eight times correctly - make a mistake, and you will need to start over. -"Oneshot" can be set on timers and alarms to have it delete itself once it's sounded. +"Oneshot" can be set on timers and alarms to have it delete itself once it's sounded (uses the "Delete after expiration" setting from the alarm app). ## WARNING * Editing timers in another app (such as the default Alarm app) is not recommended. Editing alarms should not be a problem (in theory). diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index b066607be..d8459eaa6 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -228,7 +228,7 @@ function editTimer(idx, a) { else a = timers[idx]; } if (!a.data) { - a.data = { hm: false, oneshot: false }; + a.data = { hm: false }; } var t = decodeTime(a.timer); @@ -295,8 +295,8 @@ function editTimer(idx, a) { }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), "Oneshot": { - value: !!a.data.oneshot, - onchange: v => a.data.oneshot = v + value: !!a.del, + onchange: v => a.del = v }, "Msg": { value: !a.msg ? "" : a.msg.length > 6 ? a.msg.substring(0, 6)+"..." : a.msg, @@ -584,7 +584,7 @@ function editAlarm(idx, a) { var menu = { "": { "title": "Alarm" }, "< Back": () => { - if (a.data.hm || a.data.oneshot) a.js = "(require('Storage').read('multitimer.alarm.js') !== undefined) ? load('multitimer.alarm.js') : load('sched.js')"; + if (a.data.hm) a.js = "(require('Storage').read('multitimer.alarm.js') !== undefined) ? load('multitimer.alarm.js') : load('sched.js')"; else if (a.js) delete a.js; if (idx >= 0) alarms[alarmIdx[idx]] = a; else alarms.push(a); @@ -624,8 +624,8 @@ function editAlarm(idx, a) { }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), "Oneshot": { - value: !!a.data.oneshot, - onchange: v => a.data.oneshot = v + value: !!a.del, + onchange: v => a.del = v }, "Auto Snooze": { value: a.as, From e6f61ccc6b9c2ccd1d168137d604760c2a81a4c9 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 7 Jun 2023 17:57:52 +0100 Subject: [PATCH 1336/1725] multitimer: trim whitespace --- apps/multitimer/README.md | 2 +- apps/multitimer/app.js | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/multitimer/README.md b/apps/multitimer/README.md index d5bf957a6..cbbe5c92c 100644 --- a/apps/multitimer/README.md +++ b/apps/multitimer/README.md @@ -6,6 +6,6 @@ With this app, you can set timers and chronographs (stopwatches) and watch them ## WARNING * Editing timers in another app (such as the default Alarm app) is not recommended. Editing alarms should not be a problem (in theory). -* This app uses the [Scheduler library](https://banglejs.com/apps/?id=sched). +* This app uses the [Scheduler library](https://banglejs.com/apps/?id=sched). * To avoid potential conflicts with other apps that uses sched (especially ones that make use of the data and js field), this app only lists timers and alarms that it created - any made outside the app will be ignored. GB alarms are currently an exception as they do not make use of the data and js field. * A keyboard app is only used for adding messages to timers and is therefore not strictly needed. diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index d8459eaa6..841b7b6e9 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -232,7 +232,7 @@ function editTimer(idx, a) { } var t = decodeTime(a.timer); - function editMsg(idx, a) { + function editMsg(idx, a) { g.clear(); idx < 0 ? msg = "" : msg = a.msg; require("textinput").input({text:msg}).then(result => { @@ -385,7 +385,7 @@ function swMenu(idx, a) { }, 100 - (a.t % 100)); } - function editMsg(idx, a) { + function editMsg(idx, a) { g.clear(); msg = a.msg; require("textinput").input({text:msg}).then(result => { @@ -559,11 +559,11 @@ function editAlarm(idx, a) { else a = require("sched").newDefaultAlarm(); } if (!a.data) { - a.data = { hm: false, oneshot: false }; + a.data = { hm: false }; } var t = decodeTime(a.t); - function editMsg(idx, a) { + function editMsg(idx, a) { g.clear(); idx < 0 ? msg = "" : msg = a.msg; require("textinput").input({text:msg}).then(result => { @@ -659,7 +659,7 @@ Bangle.on("drag", e=>{ if (layer < 0) return; if (!drag) { // start dragging drag = {x: e.x, y: e.y}; - } + } else if (!e.b) { // released const dx = e.x-drag.x, dy = e.y-drag.y; drag = null; From 11e751fee7f217dca097002024fb05f6399e78fa Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 8 Jun 2023 09:07:49 +0100 Subject: [PATCH 1337/1725] chimer: version bump --- apps/chimer/ChangeLog | 3 ++- apps/chimer/metadata.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/chimer/ChangeLog b/apps/chimer/ChangeLog index 01bd00a0a..51842b5cd 100644 --- a/apps/chimer/ChangeLog +++ b/apps/chimer/ChangeLog @@ -1,2 +1,3 @@ 0.01: Initial Creation -0.02: Fixed some sleep bugs. Added a sleep mode toggle \ No newline at end of file +0.02: Fixed some sleep bugs. Added a sleep mode toggle +0.03: Reduce busy-loop and code diff --git a/apps/chimer/metadata.json b/apps/chimer/metadata.json index e54560c93..dfbabf405 100644 --- a/apps/chimer/metadata.json +++ b/apps/chimer/metadata.json @@ -1,7 +1,7 @@ { "id": "chimer", "name": "Chimer", - "version": "0.02", + "version": "0.03", "description": "A fork of Hour Chime that adds extra features such as: \n - Buzz or beep on every 60, 30 or 15 minutes. \n - Repeat Chime up to 3 times \n - Set hours to disable chime", "icon": "widget.png", "type": "widget", From 2f69e045194f30f50e7ec2285ee197ed4a28e92a Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 8 Jun 2023 14:59:26 +0200 Subject: [PATCH 1338/1725] gpstrek - Better UI code --- apps/gpstrek/app.js | 253 ++++++++++++++++++++++++++++++-------------- 1 file changed, 174 insertions(+), 79 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 8d4d0d54a..95a64cadd 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -1,5 +1,10 @@ { //run in own scope for fast switch + +const MODE_MENU = 0; +const MODE_MAP = 1; +const MODE_SLICES = 2; + const STORAGE = require("Storage"); const BAT_FULL = require("Storage").readJSON("setting.json").batFullVoltage || 0.3144; const SETTINGS = { @@ -25,12 +30,13 @@ let init = function(){ global.lastDrawnScreen = 0; global.firstDraw = true; global.slices = []; - global.maxScreens = 1; + global.maxSlicePages = 1; global.scheduleDraw = false; Bangle.loadWidgets(); WIDGETS.gpstrek.start(false); if (!WIDGETS.gpstrek.getState().numberOfSlices) WIDGETS.gpstrek.getState().numberOfSlices = 2; + if (!WIDGETS.gpstrek.getState().mode) WIDGETS.gpstrek.getState().mode = MODE_MENU; }; let cleanup = function(){ @@ -40,7 +46,7 @@ let cleanup = function(){ delete global.lastDrawnScreen; delete global.firstDraw; delete global.slices; - delete global.maxScreens; + delete global.maxSlicePages; }; init(); @@ -301,9 +307,8 @@ let getMapSlice = function(){ let route = s.route; if (!route) return; - let waypoint = {}; - let currentRouteIndex = route.index; - getEntry(route.filename, route.indexToOffset[currentRouteIndex], waypoint); + let waypoint = get(route); + let currentRouteIndex = getIndex(route); let startingPoint = Bangle.project(waypoint); let current = startingPoint; let currentPosFromGPS = false; @@ -477,7 +482,7 @@ let getMapSlice = function(){ if (p.name) named.push({i:data.poly.length,n:p.name}); data.poly.push(startingPoint.x-toDraw.x); data.poly.push((startingPoint.y-toDraw.y)*-1); - data.i = data.i + (reverse?-1:1); + if (j < SETTINGS.mapChunkSize - 1) data.i = data.i + (reverse?-1:1); } data.poly = graphics.transformVertices(data.poly, mapTrans); @@ -496,7 +501,7 @@ let getMapSlice = function(){ graphics.drawString(c.n, data.poly[c.i] + 10, data.poly[c.i+1]); } - finish = (route.mirror && currentRouteIndex + data.i == -1) || (!route.mirror && currentRouteIndex + data.i == route.indexToOffset.length) + finish = isLast(route, currentRouteIndex + data.i); if (finish) graphics.drawImage(finishIcon, data.poly[data.poly.length - 2] -5, data.poly[data.poly.length - 1] - 4); @@ -636,8 +641,8 @@ let getCompassSlice = function(){ if (s.currentPos && s.currentPos.lon && s.waypoint){ points.push({bearing:bearing(s.currentPos, s.waypoint), icon: finishIcon}); } - if (s.currentPos && s.currentPos.lon && s.route && s.route.currentWaypoint){ - points.push({bearing:bearing(s.currentPos, s.route.currentWaypoint), color:"#0f0"}); + if (s.currentPos && s.currentPos.lon && s.route){ + points.push({bearing:bearing(s.currentPos, get(s.route)), color:"#0f0"}); } return points; }, @@ -790,7 +795,7 @@ mapLiveScale = SETTINGS.mapScale; let onAction = function(_,xy){ clearTaskQueue(); forceMapRedraw = true; - if (WIDGETS.gpstrek.getState().route && global.screen == 1){ + if (WIDGETS.gpstrek.getState().mode == MODE_MAP){ stopDrawing(); if (xy && xy.y > Bangle.appRect.y+Bangle.appRect.h-g.getHeight()*0.2 && xy.y <= Bangle.appRect.y2){ if (xy.x < Bangle.appRect.x + Bangle.appRect.w/2) @@ -813,28 +818,65 @@ let onAction = function(_,xy){ } } startDrawing(); - } else { - nextScreen(); } }; let onSwipe = function(dirLR,dirUD){ + let s = WIDGETS.gpstrek.getState(); clearTaskQueue(); forceMapRedraw = true; + + if (s.mode == MODE_MAP){ + if (dirLR > 0) { + switchMode(MODE_MENU); + } else if (dirLR < 0) { + switchMode(MODE_SLICES); + } + if (dirUD){ + isMapOverview = !isMapOverview; + startDrawing(); + } + } else if (s.mode == MODE_SLICES){ + if (dirLR > 0) { + if (s.route){ + switchMode(MODE_MAP); + } else { + switchMode(MODE_MENU); + } + } else if (dirLR < 0) { + switchMode(MODE_MENU); + } + if (dirUD){ + setSlicesPage(dirUD); + } + } else if (s.mode == MODE_MENU){ + if (dirLR > 0) { + switchMode(MODE_SLICES); + } else if (dirLR < 0) { + if (s.route){ + switchMode(MODE_MAP); + } else { + switchMode(MODE_SLICES); + } + } + } + + +/* if (WIDGETS.gpstrek.getState().route && global.screen == 1 && isMapOverview){ stopDrawing(); if (dirLR) mapOverviewX += SETTINGS.overviewScroll*dirLR; if (dirUD) mapOverviewY += SETTINGS.overviewScroll*dirUD; startDrawing(); } else { - if (dirLR < 0) { - nextScreen(); - } else if (dirLR > 0) { - switchMenu(); + if (dirUD < 0) { + nextSlicePage(); + } else if (dirUD > 0) { + prevSlicePage(); } else { nextScreen(); } - } + }*/ }; @@ -843,7 +885,7 @@ let setButtons = function(){ mode: "custom", swipe: onSwipe, btn: onAction, - touch: onAction + touch: onAction, }; Bangle.setUI(options); }; @@ -954,12 +996,24 @@ let get = function(route, index){ if (isNaN(index)) index = route.index; if (index >= route.indexToOffset.length || index < 0) return; let result = {}; - getEntry(route.filename, route.indexToOffset[index], result); + getEntry(route.filename, route.indexToOffset[getIndex(route, index)], result); return result; }; -let getIndex = function(route){ - return route.mirror?route.length-route.index:route.index; +/* +return the current waypoint +*/ +let getIndex = function(route, index){ + if (isNaN(index)) index = route.index; + print("getIndex", route.mirror?route.indexToOffset.length-1-index:index); + return route.mirror?route.indexToOffset.length-1-index:index; +}; + +let setIndex = function(route, waypointIndex){ + if (route.mirror) + route.index = route.indexToOffset.length - 1 - waypointIndex; + else + route.index = waypointIndex; }; let getPrev = function(route, index){ @@ -980,9 +1034,7 @@ let next = function(route){ let set = function(route, index){ if (!route) return; - route.currentWaypoint = {}; route.index = index; - getEntry(route.filename, route.indexToOffset[index], route.currentWaypoint); }; let prev = function(route){ @@ -993,17 +1045,19 @@ let prev = function(route){ let getLast = function(route){ let wp = {}; - if (route.mirror) - getEntry(route.filename, route.indexToOffset[0], wp); - else - getEntry(route.filename, route.indexToOffset[route.indexToOffset.length - 1], wp); + getEntry(route.filename, route.indexToOffset[getIndex(route, route.index)], wp); lastMirror = route.mirror; return wp; }; +let isLast = function(route, index){ + if (isNaN(index)) index = route.index; + return route.indexToOffset.length - 1 == index; +}; + let removeMenu = function(){ E.showMenu(); - switchNav(); + onSwipe(-1,0); }; let showProgress = function(progress, title, max){ @@ -1057,10 +1111,8 @@ let showRouteMenu = function(){ onchange: v=>{ if (s.route.mirror != v){ s.route.mirror = v; - if (v) s.route.index = 0; - else s.route.index = s.route.indexToOffset.lenght - 1; - setClosestWaypoint(s.route, null, showProgress); - setTimeout(removeMenu,0); + setIndex(route, 0); + removeMenu(); } } }; @@ -1073,20 +1125,21 @@ let showRouteMenu = function(){ }; menu['Select closest waypoint (not visited)'] = function () { if (s.currentPos && s.currentPos.lat){ - setClosestWaypoint(s.route, s.route.index, showProgress); removeMenu(); + setClosestWaypoint(s.route, getIndex(s.route), showProgress); removeMenu(); } else { E.showAlert("No position").then(()=>{E.showMenu(menu);}); } }; menu['Select waypoint'] = { - value : s.route.index, - min:1,max:s.route.indexToOffset.length,step:1, - onchange : v => { set(s.route, v-1); } + value : getIndex(s.route), + min:0,max:s.route.indexToOffset.length-1,step:1, + onchange : v => { set(s.route, v); } }; menu['Select waypoint as current position'] = function (){ - s.currentPos.lat = s.route.currentWaypoint.lat; - s.currentPos.lon = s.route.currentWaypoint.lon; - s.currentPos.alt = s.route.currentWaypoint.alt; + let c = get(s.route); + s.currentPos.lat = c.lat; + s.currentPos.lon = c.lon; + s.currentPos.alt = c.alt; removeMenu(); }; } @@ -1201,6 +1254,7 @@ let stopDrawing = function(){ }; let startDrawing = function(){ + firstDraw = true; scheduleDraw = true; draw(); drawInTimeout(); @@ -1215,17 +1269,18 @@ let drawInTimeout = function(){ }; let switchNav = function(){ - if (!screen) screen = 1; setButtons(); - scheduleDraw = true; - firstDraw = true; - drawInTimeout(); + startDrawing(); }; -let nextScreen = function(){ - screen++; - if (screen > maxScreens){ - screen = 1; +let setSlicesPage = function(change){ + print("ssp", change, maxSlicePages, page_slices); + page_slices -= change; + if (page_slices >= maxSlicePages){ + page_slices = 0; + } + if (page_slices < 0){ + page_slices = maxSlicePages - 1; } drawInTimeout(); }; @@ -1260,7 +1315,7 @@ let setClosestWaypoint = function(route, startindex, progress){ if (searchAfterMin) break; } } while (wp); - set(route, startindex + (route.mirror?-mincount+1:mincount)); + set(route, startindex + mincount); }; const finishIcon = atob("CggB//meZmeZ+Z5n/w=="); @@ -1268,10 +1323,10 @@ const finishIcon = atob("CggB//meZmeZ+Z5n/w=="); const waypointData = { icon: atob("EBCBAAAAAAAAAAAAcIB+zg/uAe4AwACAAAAAAAAAAAAAAAAA"), getProgress: function() { - return (WIDGETS.gpstrek.getState().route.index + 1) + "/" + WIDGETS.gpstrek.getState().route.indexToOffset.length; + return (getIndex(WIDGETS.gpstrek.getState().route) + 1) + "/" + WIDGETS.gpstrek.getState().route.indexToOffset.length; }, getTarget: function (){ - return WIDGETS.gpstrek.getState().route.currentWaypoint; + return get(WIDGETS.gpstrek.getState().route); }, getStart: function (){ return WIDGETS.gpstrek.getState().currentPos; @@ -1360,7 +1415,7 @@ let lastSearch = 0; let updateRouting = function() { let s = WIDGETS.gpstrek.getState(); if (s.route && s.currentPos.lat) { - let currentDistanceToTarget = distance(s.currentPos,s.route.currentWaypoint); + let currentDistanceToTarget = distance(s.currentPos,get(s.route)); if (currentDistanceToTarget < minimumDistance){ minimumDistance = currentDistanceToTarget; } @@ -1375,7 +1430,7 @@ let updateRouting = function() { next(s.route); minimumDistance = Number.MAX_VALUE; lastSearch = Date.now(); - switchNav(); + startDrawing(); } } }; @@ -1383,7 +1438,7 @@ let updateRouting = function() { let updateSlices = function(){ let s = WIDGETS.gpstrek.getState(); slices = [ compassSlice ]; - if (s.currentPos && s.currentPos.lat && s.route && s.route.currentWaypoint && s.route.index < s.route.indexToOffset.length - 1) { + if (s.currentPos && s.currentPos.lat && s.route && !isLast(s.route)) { slices.push(waypointSlice); } if (s.currentPos && s.currentPos.lat && (s.route || s.waypoint)) { @@ -1397,47 +1452,87 @@ let updateSlices = function(){ slices.push(healthSlice); slices.push(systemSlice); slices.push(system2Slice); - let hasMapScreen = s.route ? 1:0; - maxScreens = Math.ceil(slices.length/s.numberOfSlices) + hasMapScreen; + maxSlicePages = Math.ceil(slices.length/s.numberOfSlices); }; -let draw = function(){ - if (!global.screen) return; - let ypos = Bangle.appRect.y; +let page_slices = 0; + +let switchMode = function(targetMode){ + switch (targetMode){ + case MODE_MENU: + WIDGETS.gpstrek.getState().mode = MODE_MENU; + switchMenu(); + break; + case MODE_MAP: + case MODE_SLICES: + WIDGETS.gpstrek.getState().mode = targetMode; + E.showMenu(); + switchNav(); + break; + } +} + +let lastDrawnMode; +let lastDrawnPage; + +let drawMap = function(){ + g.reset(); + mapSlice.draw(g,Bangle.appRect.x,Bangle.appRect.y, Bangle.appRect.h,Bangle.appRect.w); +} + +let drawSlices = function(){ let s = WIDGETS.gpstrek.getState(); - let hasMapScreen = s.route ? 2:1; - let firstSlice = (screen-hasMapScreen)*s.numberOfSlices; - let force = lastDrawnScreen != screen || firstDraw; + updateSlices(); + let ypos = Bangle.appRect.y; + let force = lastDrawnPage != page_slices || firstDraw; if (force){ clear(); } - if (firstDraw) Bangle.drawWidgets(); - lastDrawnScreen = screen; - updateSlices(); - - if (global.screen == 1 && s.route) { + let firstSlice = page_slices*s.numberOfSlices; + let sliceHeight = getSliceHeight(); + let slicesToDraw = slices.slice(firstSlice,firstSlice + s.numberOfSlices); + for (let slice of slicesToDraw) { g.reset(); - mapSlice.draw(g,Bangle.appRect.x,Bangle.appRect.y, Bangle.appRect.h,Bangle.appRect.w); - } else { - let sliceHeight = getSliceHeight(); - let slicesToDraw = slices.slice(firstSlice,firstSlice + s.numberOfSlices); - for (let slice of slicesToDraw) { - g.reset(); - if (!slice.refresh || slice.refresh() || force) slice.draw(g,0,ypos,sliceHeight,g.getWidth()); - ypos += sliceHeight+1; - g.drawLine(0,ypos-1,g.getWidth(),ypos-1); - } + if (!slice.refresh || slice.refresh() || force) + slice.draw(g,0,ypos,sliceHeight,g.getWidth()); + ypos += sliceHeight+1; + g.drawLine(0,ypos-1,g.getWidth(),ypos-1); + } + lastDrawnPage = page_slices; +} + +let draw = function(){ + let s = WIDGETS.gpstrek.getState(); + if (s.mode == MODE_MENU) return; + + if (lastDrawnMode != s.mode) + firstDraw = true; + + if (firstDraw) { + g.clear(); + Bangle.drawWidgets(); } + switch (s.mode) { + case MODE_MAP: + drawMap(); + break; + case MODE_SLICES: + drawSlices(); + break; + } + + firstDraw = false; + updateRouting(); + lastDrawnMode = s.mode; + if (scheduleDraw){ drawInTimeout(); } - firstDraw = false; }; - -switchNav(); +switchMode(MODE_SLICES); clear(); } From 2b6f7765cc69db5e8dd34fa9ad86051914e26601 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 8 Jun 2023 19:26:12 +0100 Subject: [PATCH 1339/1725] Fix buzz.js - whenever called this used to keep firing an interval every 100ms, and they would build up! --- apps/messages/ChangeLog | 1 + apps/messages/metadata.json | 2 +- modules/buzz.js | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/messages/ChangeLog b/apps/messages/ChangeLog index f08357673..416363c45 100644 --- a/apps/messages/ChangeLog +++ b/apps/messages/ChangeLog @@ -3,3 +3,4 @@ 0.57: Optimize saving empty message list 0.58: show/hide "messages" widget directly, instead of through library stub 0.59: fixes message timeout by using setinterval, as it was intended. So the buzz is triggered every x seconds until the timeout occours. +0.60: Bump version to allow new buzz.js module to be loaded - fixes memory/performance hog when buzz called diff --git a/apps/messages/metadata.json b/apps/messages/metadata.json index 00e95e44e..e8aacd976 100644 --- a/apps/messages/metadata.json +++ b/apps/messages/metadata.json @@ -1,7 +1,7 @@ { "id": "messages", "name": "Messages", - "version": "0.59", + "version": "0.60", "description": "Library to handle, load and store message events received from Android/iOS", "icon": "app.png", "type": "module", diff --git a/modules/buzz.js b/modules/buzz.js index aed0e2e7b..99364fc1a 100644 --- a/modules/buzz.js +++ b/modules/buzz.js @@ -16,7 +16,7 @@ */ exports.pattern = pattern => new Promise(resolve => { function doBuzz() { - if (pattern == "") resolve(); + if (pattern == "") return resolve(); var c = pattern[0]; pattern = pattern.substr(1); const BUZZ_WEAK = 0.25, BUZZ_STRONG = 1; From 6ed7db97be952b1f74f0cd5de577a07a0bc8a07d Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 8 Jun 2023 21:52:50 +0200 Subject: [PATCH 1340/1725] gpstrek - Fix mirroring --- apps/gpstrek/app.js | 83 +++++++++++++++++++++------------------------ 1 file changed, 38 insertions(+), 45 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 95a64cadd..f8e90053a 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -21,7 +21,9 @@ const SETTINGS = { minCourseChange: 5, //course change needed in degrees before redrawing the map minPosChange: 5, //position change needed in pixels before redrawing the map waypointChangeDist: 50, //distance in m to next waypoint before advancing automatically - queueWaitingTime: 5 // waiting time during processing of task queue items when running with timeouts + queueWaitingTime: 5, // waiting time during processing of task queue items when running with timeouts + autosearch: false, + maxDistForWaypointSearch: 300 }; let init = function(){ @@ -120,6 +122,8 @@ let cacheAdd = function (filename, result) { cachedOffsets.push(result.fileOffset); }; + + let getEntry = function(filename, offset, result, noCaching){ if (offset < 0) return offset; let cacheOffset = getFromCache(filename, offset, result); @@ -308,7 +312,7 @@ let getMapSlice = function(){ let route = s.route; if (!route) return; let waypoint = get(route); - let currentRouteIndex = getIndex(route); + let currentRouteIndex = getWaypointIndex(route); let startingPoint = Bangle.project(waypoint); let current = startingPoint; let currentPosFromGPS = false; @@ -430,7 +434,6 @@ let getMapSlice = function(){ let liveChanged = !isMapOverview && (startChanged || currentChanged || courseChanged); let refreshMap = forceMapRedraw || (oldEnough && (liveChanged)); - let renderInTimeouts = isMapOverview || !Bangle.isLocked(); if (refreshMap) { clearTaskQueue(); @@ -468,7 +471,7 @@ let getMapSlice = function(){ let toDraw; let named = []; for (let j = 0; j < SETTINGS.mapChunkSize; j++){ - let p = get(route, currentRouteIndex + data.i); + let p = get(route, data.i); if (!p || !p.lat) { data.breakLoop = true; break; @@ -523,8 +526,8 @@ let getMapSlice = function(){ addToTaskQueue(drawChunk, data); }; - drawPath(true, 0); - drawPath(false, 0); + drawPath(true, currentRouteIndex); + drawPath(false, currentRouteIndex); addToTaskQueue(drawInterface); addToTaskQueue(()=>{ @@ -969,47 +972,40 @@ let loadRouteData = function(filename, progressMonitor){ }; let hasPrev = function(route, index){ - if (isNaN(index)) index = route.index; - if (route.mirror) return index < (route.indexToOffset.length - 1); + if (isNaN(index)) index = getWaypointIndex(route); return index > 0; }; let hasNext = function(route, index, count){ if (!count) count = 1; if (isNaN(index)) index = route.index; - if (route.mirror) return index - count > 0; - return index + count < (route.indexToOffset.length - 1); + return getWaypointIndex(route, index) + count < (route.indexToOffset.length - 1); }; let getNext = function(route, index, count){ if (!count) count = 1; - if (isNaN(index)) index = route.index; - if (!hasNext(route, index, count)) return; - if (route.mirror) index -= count; - if (!route.mirror) index += count; + if (isNaN(index)) index = getWaypointIndex(route); + index += count; + if (index >= route.indexToOffset.length) return; let result = {}; - getEntry(route.filename, route.indexToOffset[index], result); + getEntry(route.filename, route.indexToOffset[getWaypointIndex(route, index)], result); return result; }; let get = function(route, index){ - if (isNaN(index)) index = route.index; + if (isNaN(index)) index = getWaypointIndex(route); if (index >= route.indexToOffset.length || index < 0) return; let result = {}; - getEntry(route.filename, route.indexToOffset[getIndex(route, index)], result); + getEntry(route.filename, route.indexToOffset[getWaypointIndex(route, index)], result); return result; }; -/* -return the current waypoint -*/ -let getIndex = function(route, index){ +let getWaypointIndex = function(route, index){ if (isNaN(index)) index = route.index; - print("getIndex", route.mirror?route.indexToOffset.length-1-index:index); return route.mirror?route.indexToOffset.length-1-index:index; }; -let setIndex = function(route, waypointIndex){ +let setWaypointIndex = function(route, waypointIndex){ if (route.mirror) route.index = route.indexToOffset.length - 1 - waypointIndex; else @@ -1017,7 +1013,7 @@ let setIndex = function(route, waypointIndex){ }; let getPrev = function(route, index){ - if (isNaN(index)) index = route.index; + if (isNaN(index)) index = getWaypointIndex(route); if (!hasPrev(route, index)) return; if (route.mirror) ++index; if (!route.mirror) --index; @@ -1028,13 +1024,12 @@ let getPrev = function(route, index){ let next = function(route){ if (!hasNext(route)) return; - if (route.mirror) set(route, --route.index); - if (!route.mirror) set(route, ++route.index); + set(route, getWaypointIndex(route)+1); }; let set = function(route, index){ if (!route) return; - route.index = index; + route.index = getWaypointIndex(route, index); }; let prev = function(route){ @@ -1044,10 +1039,8 @@ let prev = function(route){ }; let getLast = function(route){ - let wp = {}; - getEntry(route.filename, route.indexToOffset[getIndex(route, route.index)], wp); lastMirror = route.mirror; - return wp; + return get(route, route.indexToOffset.length - 1); }; let isLast = function(route, index){ @@ -1111,29 +1104,29 @@ let showRouteMenu = function(){ onchange: v=>{ if (s.route.mirror != v){ s.route.mirror = v; - setIndex(route, 0); + setWaypointIndex(s.route, 0); removeMenu(); } } }; menu['Select closest waypoint'] = function () { if (s.currentPos && s.currentPos.lat){ - setClosestWaypoint(s.route, null, showProgress); removeMenu(); + setClosestWaypoint(s.route, 0, showProgress); removeMenu(); } else { E.showAlert("No position").then(()=>{E.showMenu(menu);}); } }; menu['Select closest waypoint (not visited)'] = function () { if (s.currentPos && s.currentPos.lat){ - setClosestWaypoint(s.route, getIndex(s.route), showProgress); removeMenu(); + setClosestWaypoint(s.route, getWaypointIndex(s.route), showProgress); removeMenu(); } else { E.showAlert("No position").then(()=>{E.showMenu(menu);}); } }; menu['Select waypoint'] = { - value : getIndex(s.route), + value : getWaypointIndex(s.route), min:0,max:s.route.indexToOffset.length-1,step:1, - onchange : v => { set(s.route, v); } + onchange : v => { setWaypointIndex(s.route, v); } }; menu['Select waypoint as current position'] = function (){ let c = get(s.route); @@ -1274,7 +1267,6 @@ let switchNav = function(){ }; let setSlicesPage = function(change){ - print("ssp", change, maxSlicePages, page_slices); page_slices -= change; if (page_slices >= maxSlicePages){ page_slices = 0; @@ -1288,22 +1280,22 @@ let setSlicesPage = function(change){ let setClosestWaypoint = function(route, startindex, progress){ let s = WIDGETS.gpstrek.getState(); - let searchAfterMin = !startindex; + let stopSearchAfterFirstMatch = !isFinite(startindex); if (!startindex) startindex = 0; if (startindex >= s.route.indexToOffset.length) startindex = s.route.indexToOffset.length - 1; if (startindex < 0) startindex = 0; + if (!s.currentPos.lat){ set(route, startindex); return; } - let minDist = Number.MAX_VALUE; + let minDist = SETTINGS.maxDistForWaypointSearch; let mincount = 0; let currentPos = s.currentPos; let count = 0; let wp; do { - count++; if (progress && (count % 5 == 0)) progress(count+startindex, "Searching", route.indexToOffset.length); wp = getNext(route, startindex, count); if (!wp) break; @@ -1312,8 +1304,9 @@ let setClosestWaypoint = function(route, startindex, progress){ minDist = curDist; mincount = count; } else { - if (searchAfterMin) break; + if (stopSearchAfterFirstMatch) break; } + count++; } while (wp); set(route, startindex + mincount); }; @@ -1323,7 +1316,7 @@ const finishIcon = atob("CggB//meZmeZ+Z5n/w=="); const waypointData = { icon: atob("EBCBAAAAAAAAAAAAcIB+zg/uAe4AwACAAAAAAAAAAAAAAAAA"), getProgress: function() { - return (getIndex(WIDGETS.gpstrek.getState().route) + 1) + "/" + WIDGETS.gpstrek.getState().route.indexToOffset.length; + return (getWaypointIndex(WIDGETS.gpstrek.getState().route) + 1) + "/" + WIDGETS.gpstrek.getState().route.indexToOffset.length; }, getTarget: function (){ return get(WIDGETS.gpstrek.getState().route); @@ -1419,14 +1412,14 @@ let updateRouting = function() { if (currentDistanceToTarget < minimumDistance){ minimumDistance = currentDistanceToTarget; } - let nextAvailable = hasNext(s.route); - if (currentDistanceToTarget < SETTINGS.waypointChangeDist && nextAvailable){ + while (hasNext(s.route) && distance(s.currentPos,get(s.route)) < SETTINGS.waypointChangeDist) { next(s.route); minimumDistance = Number.MAX_VALUE; - } else if (!isMapOverview && lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ + } + if (SETTINGS.autosearch && !isMapOverview && lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ stopDrawing(); Bangle.buzz(1000); - setClosestWaypoint(s.route, getIndex(s.route), showProgress); + setClosestWaypoint(s.route, getWaypointIndex(s.route)); next(s.route); minimumDistance = Number.MAX_VALUE; lastSearch = Date.now(); From b027e220bd334cf1eea5e8973e6855a3bb9258a2 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 8 Jun 2023 22:13:09 +0200 Subject: [PATCH 1341/1725] gpstrek - Reimplement scrolling for overview --- apps/gpstrek/app.js | 53 +++++++++++++++++++-------------------------- 1 file changed, 22 insertions(+), 31 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index f8e90053a..f0fa3196f 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -813,31 +813,39 @@ let onAction = function(_,xy){ } else { mapLiveScale *= 1.5; } - } else if (xy && xy.y > Bangle.appRect.y){ - isMapOverview = !isMapOverview; - if (!isMapOverview){ - mapOverviewX = g.getWidth()/2; - mapOverviewY = g.getHeight()/2; - } + } else if (isMapOverview && xy && xy.y > Bangle.appRect.y){ + scrolling = !scrolling; } startDrawing(); } }; +let scrolling = false; + let onSwipe = function(dirLR,dirUD){ let s = WIDGETS.gpstrek.getState(); clearTaskQueue(); forceMapRedraw = true; if (s.mode == MODE_MAP){ - if (dirLR > 0) { - switchMode(MODE_MENU); - } else if (dirLR < 0) { - switchMode(MODE_SLICES); - } - if (dirUD){ - isMapOverview = !isMapOverview; - startDrawing(); + if (!scrolling){ + if (dirLR > 0) { + switchMode(MODE_MENU); + } else if (dirLR < 0) { + switchMode(MODE_SLICES); + } + if (dirUD){ + isMapOverview = !isMapOverview; + if (!isMapOverview){ + mapOverviewX = g.getWidth()/2; + mapOverviewY = g.getHeight()/2; + scrolling = false; + } + startDrawing(); + } + } else { + mapOverviewX += dirLR * SETTINGS.overviewScroll; + mapOverviewY += dirUD * SETTINGS.overviewScroll; } } else if (s.mode == MODE_SLICES){ if (dirLR > 0) { @@ -863,23 +871,6 @@ let onSwipe = function(dirLR,dirUD){ } } } - - -/* - if (WIDGETS.gpstrek.getState().route && global.screen == 1 && isMapOverview){ - stopDrawing(); - if (dirLR) mapOverviewX += SETTINGS.overviewScroll*dirLR; - if (dirUD) mapOverviewY += SETTINGS.overviewScroll*dirUD; - startDrawing(); - } else { - if (dirUD < 0) { - nextSlicePage(); - } else if (dirUD > 0) { - prevSlicePage(); - } else { - nextScreen(); - } - }*/ }; From c497598dbdb6fe215566e2eb1e0b8a696328dc7a Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 8 Jun 2023 22:40:52 +0200 Subject: [PATCH 1342/1725] gpstrek - Redraw position over map at the end --- apps/gpstrek/app.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index f0fa3196f..1861eaf8b 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -530,6 +530,9 @@ let getMapSlice = function(){ drawPath(false, currentRouteIndex); addToTaskQueue(drawInterface); + + addToTaskQueue(drawCurrentPos); + addToTaskQueue(()=>{ lastCourse = course; lastStart = startingPoint; From 8c912f44e517a699fe9749aca45891bd88aba91c Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Thu, 8 Jun 2023 22:58:37 -0500 Subject: [PATCH 1343/1725] [lightswitch] - Update widget.js to use g.getBgColor for inner bulb when off --- apps/lightswitch/widget.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/lightswitch/widget.js b/apps/lightswitch/widget.js index 6b573355b..5b542f509 100644 --- a/apps/lightswitch/widget.js +++ b/apps/lightswitch/widget.js @@ -57,7 +57,8 @@ ); } else { // backlight off - g.setColor(0); + let innerColorWhenOff = g.getBgColor(); + g.setColor(innerColorWhenOff); } // draw circle g.drawImage(atob("CwuBAB8H8f9/////////f8fwfAA="), this.x + 6, this.y + 6); From b7cbdf269d2b5fd88d1e3527b91ed402ad350cdf Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Fri, 9 Jun 2023 02:19:35 -0500 Subject: [PATCH 1344/1725] [widbt] - fixes widget not showing on blue background --- apps/widbt/widget.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/apps/widbt/widget.js b/apps/widbt/widget.js index c7ef8c0ad..31b8e12d8 100644 --- a/apps/widbt/widget.js +++ b/apps/widbt/widget.js @@ -1,9 +1,14 @@ WIDGETS["bluetooth"]={area:"tr",width:15,draw:function() { g.reset(); - if (NRF.getSecurityStatus().connected) - g.setColor((g.getBPP()>8) ? "#07f" : (g.theme.dark ? "#0ff" : "#00f")); - else + if (NRF.getSecurityStatus().connected) { + if (g.getBgColor() === 31) { // If background color is blue use cyan instead + g.setColor("#0ff"); + } else { + g.setColor((g.getBPP()>8) ? "#07f" : (g.theme.dark ? "#0ff" : "#00f")); + } + } else { g.setColor(g.theme.dark ? "#666" : "#999"); + } g.drawImage(atob("CxQBBgDgFgJgR4jZMawfAcA4D4NYybEYIwTAsBwDAA=="),2+this.x,2+this.y); },changed:function() { WIDGETS["bluetooth"].draw(); From 465097b54b8c7e23db5dc5b1e1f2718b57bc1398 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Fri, 9 Jun 2023 02:27:49 -0500 Subject: [PATCH 1345/1725] Update ChangeLog --- apps/widbt/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/widbt/ChangeLog b/apps/widbt/ChangeLog index 4c2132122..292d1347e 100644 --- a/apps/widbt/ChangeLog +++ b/apps/widbt/ChangeLog @@ -5,3 +5,4 @@ 0.06: Tweaking colors for dark/light themes and low bpp screens 0.07: Memory usage improvements 0.08: Disable LCD on, on bluetooth status change +0.09: Fixes widget not showing on blue background From bed497a3bfa724027a885f98da0c002d7ac0f5bf Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Fri, 9 Jun 2023 02:28:13 -0500 Subject: [PATCH 1346/1725] Update ChangeLog --- apps/widbt/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/widbt/ChangeLog b/apps/widbt/ChangeLog index 292d1347e..74d31ada6 100644 --- a/apps/widbt/ChangeLog +++ b/apps/widbt/ChangeLog @@ -5,4 +5,4 @@ 0.06: Tweaking colors for dark/light themes and low bpp screens 0.07: Memory usage improvements 0.08: Disable LCD on, on bluetooth status change -0.09: Fixes widget not showing on blue background +0.09: Fix widget not showing on blue background From 030279dc317a7e63b2b30f7c90e22f930863e62e Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Fri, 9 Jun 2023 02:29:16 -0500 Subject: [PATCH 1347/1725] Update metadata.json --- apps/widbt/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/widbt/metadata.json b/apps/widbt/metadata.json index 1623db7a1..ec03fb353 100644 --- a/apps/widbt/metadata.json +++ b/apps/widbt/metadata.json @@ -1,7 +1,7 @@ { "id": "widbt", "name": "Bluetooth Widget", - "version": "0.08", + "version": "0.09", "description": "Show the current Bluetooth connection status in the top right of the clock", "icon": "widget.png", "type": "widget", From 0930464b189e2d6f0389d8ba3c56f8a851024271 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Fri, 9 Jun 2023 02:55:46 -0500 Subject: [PATCH 1348/1725] Safer way to get bg color from theme --- apps/lightswitch/widget.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/lightswitch/widget.js b/apps/lightswitch/widget.js index 5b542f509..6c0550065 100644 --- a/apps/lightswitch/widget.js +++ b/apps/lightswitch/widget.js @@ -57,8 +57,7 @@ ); } else { // backlight off - let innerColorWhenOff = g.getBgColor(); - g.setColor(innerColorWhenOff); + g.setColor(g.theme.bg); } // draw circle g.drawImage(atob("CwuBAB8H8f9/////////f8fwfAA="), this.x + 6, this.y + 6); From f1ae6c92157f71ebd24495495339aa6e180f11cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20B=C3=BCsgen?= Date: Thu, 8 Jun 2023 20:50:56 +0200 Subject: [PATCH 1349/1725] feat: :sparkles: add gatthrm bootloader code --- apps/bootgatthrm/ChangeLog | 1 + apps/bootgatthrm/README.md | 16 ++++++++++++ apps/bootgatthrm/bluetooth.png | Bin 0 -> 1119 bytes apps/bootgatthrm/boot.js | 43 +++++++++++++++++++++++++++++++++ apps/bootgatthrm/metadata.json | 15 ++++++++++++ 5 files changed, 75 insertions(+) create mode 100644 apps/bootgatthrm/ChangeLog create mode 100644 apps/bootgatthrm/README.md create mode 100644 apps/bootgatthrm/bluetooth.png create mode 100644 apps/bootgatthrm/boot.js create mode 100644 apps/bootgatthrm/metadata.json diff --git a/apps/bootgatthrm/ChangeLog b/apps/bootgatthrm/ChangeLog new file mode 100644 index 000000000..2a37193a3 --- /dev/null +++ b/apps/bootgatthrm/ChangeLog @@ -0,0 +1 @@ +0.01: Initial release. diff --git a/apps/bootgatthrm/README.md b/apps/bootgatthrm/README.md new file mode 100644 index 000000000..3e559c0a5 --- /dev/null +++ b/apps/bootgatthrm/README.md @@ -0,0 +1,16 @@ +# BLE GATT Battery Service + +Adds the GATT Battery Service to advertise the percentage of battery currently remaining over Bluetooth. + +## Usage + +This boot code runs in the background and has no user interface. + +## Requests + +If you have any suggestions or ideas please post in [this forum thread](http://forum.espruino.com/conversations/351959/), +or [@jjok](https://github.com/jjok) in your Github issue. + +## Creator + +[Jonathan Jefferies](https://github.com/jjok) diff --git a/apps/bootgatthrm/bluetooth.png b/apps/bootgatthrm/bluetooth.png new file mode 100644 index 0000000000000000000000000000000000000000..1a884a62c1029ae43243f8f58ef9dc3a3327e437 GIT binary patch literal 1119 zcmV-l1fctgP)cE5(396`@Dz$wLqIPzYppJ*B(brZX|I zHChYW;Hm1lL~9feUi^283bm!!Ka0DG`v(zZvk8h?W%2@c?XT zES*ZPJU3a{7h{cB0RRrPTh=dGr*a^!0&xQX?DMczGEQwQ4)Y`c0EQJR_Oa?r)W%5x z0HhI_x1HK2pc0j7k^sKW*iQXQ=2YX6D9n-q_%qO+(!1;R%(3!ggBm9SkZ!j|fYm^E zR%O?(qZ5_=gLo$b@WZ#`wXJ`4=)@t~Y>Yv)Y!7y;OB zeO8rs?l*_RK!7NCKLhRU0}||esEhzCyx)O;I=Y5XtC(@B$NTljy45^tT?SHJ10ruX zOS$(<@@!=?P@`0+S)vnkL!=bB)DOg{Q*}L+GO)XAK;&$g@DSo22n#XlR9!)?07D(! zDxz;SOSunBbNCAVm!5U2c~9jVx@WU3=u3)pJ!ur3cu;sm-)NQ!pM}i;0{{TnZpA^Z ztASvff%b#?JdoF$<=hv8)Q159pyx{LBoBD4SyIzhb(HlW;>}!J+1=AqCDO_A6&XN}=e)0!pcibn z_HtD9d_@BAknp}zDCb9=>MK#y^fmCZ_8GoYkv>KTT7e$nHy?0mXP*UpX*>1PgVgRc z3#Fdn#d~2}5mATky^{qxZ#%U!Ve5AonQN!;&C-!_@cJGbKmk6^xYakqWbkDSU>e?6 zF9=onXw<2mHO=A62q0{DUp*iYB(+@Ja7a-n2aQU$C-1do)^M)j_l7Z`m-DHf;N2WNgeIsEr6@kFmJ z8_YbwGn3bL?QPY+LOBr_TDRcEMmfJ|;s=HR0IQ!ry9xAti1(G5Y&@#1^&${_&Hfi+ z9c`2jUpMuHhg{we{KebpwXs3NLqaRiAr)b6sg!$n>kZxDN)lj0k<-mm?qZatNdeqJ z)Lky+8&Ml40dUjvB)_tlzY&Ld+&A&{bh~wEWib~^c!+ZagoS&X-t=l^d_A@r#J2*U lKABp3ezkHW*6{xc{R@3@kib`1LqGrk002ovPDHLkV1l684mkh- literal 0 HcmV?d00001 diff --git a/apps/bootgatthrm/boot.js b/apps/bootgatthrm/boot.js new file mode 100644 index 000000000..9f1ec1584 --- /dev/null +++ b/apps/bootgatthrm/boot.js @@ -0,0 +1,43 @@ +(() => { + function setupHRMAdvertising() { + /* + * This function preparse BLE heart rate Advertisement. + */ + NRF.setServices({ + 0x180D: { // heart_rate + 0x2A37: { // heart_rate_measurement + notify: true, + value: [0x06, 0], + } + } + }, { advertise: ['180D'] }); + + } + + function updateBLEHeartRate(hrm) { + /* + * Send updated heart rate measurement via BLE + */ + if (hrm === undefined) return; + try { + NRF.updateServices({ + '180d': { + '2a37': { + value: [ + 0x06, // + hrm + ], + notify: true + } + } + }); + } catch (error) { + // After setupHRMAdvertising() BLE needs to restart. + // We force a disconnect if the Bangle was connected while setting HRM + NRF.disconnect(); + } + } + + setupHRMAdvertising(); + Bangle.on("HRM", function (hrm) { updateBLEHeartRate(hrm.bpm); }); +})(); diff --git a/apps/bootgatthrm/metadata.json b/apps/bootgatthrm/metadata.json new file mode 100644 index 000000000..e7bfb0762 --- /dev/null +++ b/apps/bootgatthrm/metadata.json @@ -0,0 +1,15 @@ +{ + "id": "bootgatthrm", + "name": "BLE GATT HRM Service", + "shortName": "BLE HRM Service", + "version": "0.01", + "description": "Adds the GATT HRM Service to advertise the measured HRM over Bluetooth.\n", + "icon": "bluetooth.png", + "type": "bootloader", + "tags": "hrm,health,ble,bluetooth,gatt", + "supports": ["BANGLEJS","BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"gatthrm.boot.js","url":"boot.js"} + ] +} From dbeb391e6965d1d9990b035054c47bcde5847df0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20B=C3=BCsgen?= Date: Fri, 9 Jun 2023 10:43:50 +0200 Subject: [PATCH 1350/1725] feat: :sparkles: Added new bootloader "bootgatthrm" which exposes HRM data via BLE --- apps/bootgatthrm/boot.js | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/apps/bootgatthrm/boot.js b/apps/bootgatthrm/boot.js index 9f1ec1584..391f245b9 100644 --- a/apps/bootgatthrm/boot.js +++ b/apps/bootgatthrm/boot.js @@ -1,8 +1,9 @@ (() => { function setupHRMAdvertising() { /* - * This function preparse BLE heart rate Advertisement. + * This function prepares BLE heart rate Advertisement. */ + NRF.setServices({ 0x180D: { // heart_rate 0x2A37: { // heart_rate_measurement @@ -10,34 +11,44 @@ value: [0x06, 0], } } - }, { advertise: ['180D'] }); + }, { advertise: [0x180d] }); } - function updateBLEHeartRate(hrm) { /* * Send updated heart rate measurement via BLE */ - if (hrm === undefined) return; + if (hrm === undefined || hrm.confidence < 50) return; try { NRF.updateServices({ - '180d': { - '2a37': { + 0x180D: { + 0x2A37: { value: [ 0x06, // - hrm + hrm.bpm ], notify: true } } }); } catch (error) { - // After setupHRMAdvertising() BLE needs to restart. - // We force a disconnect if the Bangle was connected while setting HRM - NRF.disconnect(); + if (error.message.includes("BLE restart")) { + /* + * BLE has to restart after service setup. + */ + NRF.disconnect(); + } + else if (error.message.includes("UUID 0x2a37")) { + /* + * Setup service if it wasn't setup correctly for some reason + */ + setupHRMAdvertising(); + } else { + console.log("[bootgatthrm]: Unexpected error occured while updating HRM over BLE! Error: " + error.message); + } } } setupHRMAdvertising(); - Bangle.on("HRM", function (hrm) { updateBLEHeartRate(hrm.bpm); }); + Bangle.on("HRM", function (hrm) { updateBLEHeartRate(hrm); }); })(); From b424e0cb27fc33770a2ab5079e61879590eb888c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20B=C3=BCsgen?= Date: Fri, 9 Jun 2023 11:03:44 +0200 Subject: [PATCH 1351/1725] docs: :memo: Update Readme --- apps/bootgatthrm/README.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/apps/bootgatthrm/README.md b/apps/bootgatthrm/README.md index 3e559c0a5..15bb2b670 100644 --- a/apps/bootgatthrm/README.md +++ b/apps/bootgatthrm/README.md @@ -1,16 +1,16 @@ -# BLE GATT Battery Service +# BLE GATT HRM Service -Adds the GATT Battery Service to advertise the percentage of battery currently remaining over Bluetooth. +Adds the GATT HRM Service to advertise the current HRM over Bluetooth. ## Usage This boot code runs in the background and has no user interface. -## Requests - -If you have any suggestions or ideas please post in [this forum thread](http://forum.espruino.com/conversations/351959/), -or [@jjok](https://github.com/jjok) in your Github issue. - ## Creator -[Jonathan Jefferies](https://github.com/jjok) +[Another Stranger](https://github.com/anotherstranger) + +## Aknowledgements + +Special thanks to [Jonathan Jefferies](https://github.com/jjok) for creating the +bootgattbat app, which was the inspiration for this App! From 7be8b4638d839e7eec323305e5fd939c63591e2f Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 9 Jun 2023 10:39:47 +0100 Subject: [PATCH 1352/1725] Improved nav icons for roundabouts (not bothering with a version bump for this) --- apps/messagegui/app.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index d88fba6df..1f61743ef 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -98,9 +98,9 @@ function showMapMessage(msg) { case "left_slight": img = "ERgB//B/+D/8H4AP4Af4A74Bz4Dj4HD4OD4cD4AD4ADwADwADgAHgAPAAOAAcAA4ABwADgAH";break; case "right_slight": img = "ERgBB/+D/8H/4APwA/gD/APuA+cD44Phw+Dj4HPgAeAB4ADgAPAAeAA4ABwADgAHAAOAAcAA";break; case "finish": img = "HhsBAcAAAD/AAAH/wAAPB4AAeA4AAcAcAAYIcAA4cMAA48MAA4cMAAYAcAAcAcAAcA4AAOA4AAOBxjwHBzjwHjj/4Dnn/4B3P/4B+Pj4A8fj8Acfj8AI//8AA//+AA/j+AB/j+AB/j/A";break; - case "roundabout_left": img = "HhcCAAAAAAAAAAAADwAAAEAAAAP8AAGqkAAA/8ABqqqAAD/wAGqqqgAP/AAKpAakA/8AAakAGoD/////QACpP/////gABpP/////gABpD/////wACpA/8AAv4AGoAP/AAf/QakAD/wAL//qgAA/8AC//qAAAP8AAf/kAAADwAAB/AAAAAAAAB/AAAAAAAAB/AAAAAAAAB/AAAAAAAAB/AAAAAAAAB/AAAAAAAAB/AAA=";break; - case "roundabout_right": img = "HhcCAAAAAAAAAAAAZAAADwAAAf/9AAP8AAB///gAP/AAH///4AD/wAP/Rv9AA/8Af8AH/AAP/AvwAD/////w/wAC/////8/wAC/////8vwAB/////wf8AGpAAP/AP/QaoAA/8AH//qkAD/wAB//6QAP/AAAf/0AAP8AAAA/QAADwAAAA/QAAAAAAAA/QAAAAAAAA/QAAAAAAAA/QAAAAAAAA/QAAAAAAAA/QAAAAAAA=";break; - case "roundabout_straight": img = "EhwCAABQAAAAH0AAAAf9AAAB//QAAH//0AAf//9AB////QH/v+/0P+P8v8L4P8L4CQP8BgAC/+QAAP/+kAA//+pAC/4GqQD/AAqgH+AAagL8AAKkL8AAKkH+AAagD/AAqgC/4GqQA//+pAAP/+kAAC/+QAAAP8AAAAP8AAAAP8AA";break; + case "roundabout_left": img = "HBaCAAADwAAAAAAAD/AAAVUAAD/wABVVUAD/wABVVVQD/wAAVABUD/wAAVAAFT/////wABX/////8AAF//////AABT/////wABUP/AAD/AAVA/8AA/8AVAD/wAD//VQAP/AAP/1QAA/wAA/9AAADwAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AA=";break; + case "roundabout_right": img = "HRaCAAAAAAAA8AAAP/8AAP8AAD///AA/8AA////AA/8AP/A/8AA/8A/wAP8AA/8P8AA/////8/wAD///////AAD//////8AAP////8P8ABUAAP/A/8AVQAD/wA//1UAA/8AA//VAAP/AAA/9AAA/wAAAPwAAA8AAAA/AAAAAAAAD8AAAAAAAAPwAAAAAAAA/AAAAAAAAD8AAAAAAAAPwAAAAAAA=";break; + case "roundabout_straight": img = "EBuCAAADwAAAD/AAAD/8AAD//wAD///AD///8D/P8/z/D/D//A/wPzAP8AwA//UAA//1QA//9VA/8AFUP8AAVD8AAFQ/AABUPwAAVD8AAFQ/wABUP/ABVA//9VAD//VAAP/1AAAP8AAAD/AAAA/wAA==";break; } //FIXME: what about countries where we drive on the right? How will we know to flip the icons? @@ -208,7 +208,7 @@ function showMessageScroller(msg) { var bodyFont = fontBig; g.setFont(bodyFont); var lines = []; - if (msg.title) lines = g.wrapString(msg.title, g.getWidth()-10) + if (msg.title) lines = g.wrapString(msg.title, g.getWidth()-10); var titleCnt = lines.length; if (titleCnt) lines.push(""); // add blank line after title lines = lines.concat(g.wrapString(msg.body, g.getWidth()-10),["",/*LANG*/"< Back"]); From 6bdb7dc0ad5312c0214f0ea7f058b46a007cc2c2 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 9 Jun 2023 11:04:06 +0100 Subject: [PATCH 1353/1725] Fix widgets that clear too low, and make widget swipeOn have a 2px border at the bottom --- apps/widbatv/ChangeLog | 1 + apps/widbatv/metadata.json | 2 +- apps/widbatv/widget.js | 2 +- apps/widclkinfo/ChangeLog | 3 ++- apps/widclkinfo/metadata.json | 2 +- apps/widclkinfo/widget.js | 2 +- modules/widget_utils.js | 6 +++--- 7 files changed, 10 insertions(+), 8 deletions(-) diff --git a/apps/widbatv/ChangeLog b/apps/widbatv/ChangeLog index f7ced965b..1282b846f 100644 --- a/apps/widbatv/ChangeLog +++ b/apps/widbatv/ChangeLog @@ -1,2 +1,3 @@ 0.01: New widget 0.02: Make color depend on level +0.03: Stop battery widget clearing too far down \ No newline at end of file diff --git a/apps/widbatv/metadata.json b/apps/widbatv/metadata.json index 74e374601..d4cbf46ac 100644 --- a/apps/widbatv/metadata.json +++ b/apps/widbatv/metadata.json @@ -1,7 +1,7 @@ { "id": "widbatv", "name": "Battery Level Widget (Vertical)", - "version": "0.02", + "version": "0.03", "description": "Slim, vertical battery widget that only takes up 14px", "icon": "widget.png", "type": "widget", diff --git a/apps/widbatv/widget.js b/apps/widbatv/widget.js index efc42fdad..f26733648 100644 --- a/apps/widbatv/widget.js +++ b/apps/widbatv/widget.js @@ -12,7 +12,7 @@ WIDGETS["batv"]={area:"tr",width:14,draw:function() { if (Bangle.isCharging()) { g.setColor("#0f0").drawImage(atob("DhgBHOBzgc4HOP////////////////////3/4HgB4AeAHgB4AeAHgB4AeAHg"),x,y); } else { - g.clearRect(x,y,x+14,y+24); + g.clearRect(x,y,x+14,y+23); g.setColor(g.theme.fg).fillRect(x+2,y+2,x+12,y+22).clearRect(x+4,y+4,x+10,y+20).fillRect(x+5,y+1,x+9,y+2); var battery = E.getBattery(); if (battery < 20) {g.setColor("#f00");} diff --git a/apps/widclkinfo/ChangeLog b/apps/widclkinfo/ChangeLog index 3ca502120..6c3b85b00 100644 --- a/apps/widclkinfo/ChangeLog +++ b/apps/widclkinfo/ChangeLog @@ -1,2 +1,3 @@ 0.01: New Widget! -0.02: Now use an app ID (to avoid conflicts with clocks that also use ClockInfo) \ No newline at end of file +0.02: Now use an app ID (to avoid conflicts with clocks that also use ClockInfo) +0.03: Fix widget clearing too far down \ No newline at end of file diff --git a/apps/widclkinfo/metadata.json b/apps/widclkinfo/metadata.json index aca046d90..4ba9b2444 100644 --- a/apps/widclkinfo/metadata.json +++ b/apps/widclkinfo/metadata.json @@ -1,6 +1,6 @@ { "id": "widclkinfo", "name": "Clock Info Widget", - "version":"0.02", + "version":"0.03", "description": "Use 'Clock Info' in the Widget bar. Tap on the widget to select, then drag up/down/left/right to choose what information is displayed.", "icon": "widget.png", "screenshots" : [ { "url":"screenshot.png" }], diff --git a/apps/widclkinfo/widget.js b/apps/widclkinfo/widget.js index 95bc9a111..a802ba872 100644 --- a/apps/widclkinfo/widget.js +++ b/apps/widclkinfo/widget.js @@ -32,7 +32,7 @@ if (!require("clock_info").loadCount) { // don't load if a clock_info was alread // indicate focus - make background reddish //if (clockInfoMenu.focus) g.setBgColor(g.blendColor(g.theme.bg, "#f00", 0.25)); if (clockInfoMenu.focus) g.setColor("#f00"); - g.clearRect(o.x, o.y, o.x+o.w-1, o.y+o.h); + g.clearRect(o.x, o.y, o.x+o.w-1, o.y+o.h-1); if (clockInfoInfo) { var x = o.x; if (clockInfoInfo.img) { diff --git a/modules/widget_utils.js b/modules/widget_utils.js index e83555729..7124ac8c8 100644 --- a/modules/widget_utils.js +++ b/modules/widget_utils.js @@ -70,13 +70,13 @@ exports.swipeOn = function(autohide) { // force app rect to be fullscreen Bangle.appRect = { x: 0, y: 0, w: g.getWidth(), h: g.getHeight(), x2: g.getWidth()-1, y2: g.getHeight()-1 }; // setup offscreen graphics for widgets - let og = Graphics.createArrayBuffer(g.getWidth(),24,16,{msb:true}); + let og = Graphics.createArrayBuffer(g.getWidth(),26,16,{msb:true}); og.theme = g.theme; og._reset = og.reset; og.reset = function() { return this._reset().setColor(g.theme.fg).setBgColor(g.theme.bg); }; - og.reset().clearRect(0,0,og.getWidth(),og.getHeight()); + og.reset().clearRect(0,0,og.getWidth(),23).fillRect(0,24,og.getWidth(),25); let _g = g; let offset = -24; // where on the screen are we? -24=hidden, 0=full visible @@ -146,4 +146,4 @@ exports.swipeOn = function(autohide) { }; Bangle.on("swipe", exports.swipeHandler); Bangle.drawWidgets(); -}; +}; \ No newline at end of file From 38e3fe40e51519d3c0b9966b3079a555c153a2f1 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 9 Jun 2023 14:10:02 +0100 Subject: [PATCH 1354/1725] More navigation icons (keep/uturn left/right)Added icon for uturn --- apps/messagegui/ChangeLog | 3 ++- apps/messagegui/app.js | 5 +++++ apps/messagegui/metadata.json | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index 4231a9f26..ace1d3091 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -91,4 +91,5 @@ 0.66: Updated Navigation handling to work with new Gadgetbridge release 0.67: Support for 'Ignore' for messages from Gadgetbridge Message view is now taller, and we use swipe left/right to dismiss messages rather than buttons -0.68: More navigation icons (for roundabouts) \ No newline at end of file +0.68: More navigation icons (for roundabouts) +0.69: More navigation icons (keep/uturn left/right) \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index 1f61743ef..614552371 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -97,10 +97,15 @@ function showMapMessage(msg) { case "right": img = "GhcBAABgAAA8AAAPgAAB8AAAPgAAB8D///j///9///+/AAPPAAHjgAD44AB8OAA+DgAPA4ABAOAAADgAAA4AAAOAAADgAAA4AAAOAAAA";break; case "left_slight": img = "ERgB//B/+D/8H4AP4Af4A74Bz4Dj4HD4OD4cD4AD4ADwADwADgAHgAPAAOAAcAA4ABwADgAH";break; case "right_slight": img = "ERgBB/+D/8H/4APwA/gD/APuA+cD44Phw+Dj4HPgAeAB4ADgAPAAeAA4ABwADgAHAAOAAcAA";break; + case "keep_left": img = "ERmBAACAAOAB+AD+AP+B/+H3+PO+8c8w4wBwADgAHgAPAAfAAfAAfAAfAAeAAeAAcAA8AA4ABwADgA==";break; + case "keep_right": img = "ERmBAACAAOAA/AD+AP+A//D/fPueeceY4YBwADgAPAAeAB8AHwAfAB8ADwAPAAcAB4ADgAHAAOAAAA==";break; + case "uturn_left": img = "GRiBAAAH4AAP/AAP/wAPj8APAfAPAHgHgB4DgA8BwAOA4AHAcADsOMB/HPA7zvgd9/gOf/gHH/gDh/gBwfgA4DgAcBgAOAAAHAAADgAABw==";break; + case "uturn_right": img = "GRiBAAPwAAf+AAf/gAfj4AfAeAPAHgPADwHgA4DgAcBwAOA4AHAcBjhuB5x/A+57gP99wD/84A/8cAP8OAD8HAA4DgAMBwAAA4AAAcAAAA==";break; case "finish": img = "HhsBAcAAAD/AAAH/wAAPB4AAeA4AAcAcAAYIcAA4cMAA48MAA4cMAAYAcAAcAcAAcA4AAOA4AAOBxjwHBzjwHjj/4Dnn/4B3P/4B+Pj4A8fj8Acfj8AI//8AA//+AA/j+AB/j+AB/j/A";break; case "roundabout_left": img = "HBaCAAADwAAAAAAAD/AAAVUAAD/wABVVUAD/wABVVVQD/wAAVABUD/wAAVAAFT/////wABX/////8AAF//////AABT/////wABUP/AAD/AAVA/8AA/8AVAD/wAD//VQAP/AAP/1QAA/wAA/9AAADwAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AA=";break; case "roundabout_right": img = "HRaCAAAAAAAA8AAAP/8AAP8AAD///AA/8AA////AA/8AP/A/8AA/8A/wAP8AA/8P8AA/////8/wAD///////AAD//////8AAP////8P8ABUAAP/A/8AVQAD/wA//1UAA/8AA//VAAP/AAA/9AAA/wAAAPwAAA8AAAA/AAAAAAAAD8AAAAAAAAPwAAAAAAAA/AAAAAAAAD8AAAAAAAAPwAAAAAAA=";break; case "roundabout_straight": img = "EBuCAAADwAAAD/AAAD/8AAD//wAD///AD///8D/P8/z/D/D//A/wPzAP8AwA//UAA//1QA//9VA/8AFUP8AAVD8AAFQ/AABUPwAAVD8AAFQ/wABUP/ABVA//9VAD//VAAP/1AAAP8AAAD/AAAA/wAA==";break; + case "roundabout_uturn": img = "ICCBAAAAAAAAAAAAAAAAAAAP4AAAH/AAAD/4AAB4fAAA8DwAAPAcAADgHgAA4B4AAPAcAADwPAAAeHwAADz4AAAc8AAABPAAAADwAAAY8YAAPPPAAD73gAAf/4AAD/8AABf8AAAb+AAAHfAAABzwAAAcYAAAAAAAAAAAAAAAAAAAAAAA";break; } //FIXME: what about countries where we drive on the right? How will we know to flip the icons? diff --git a/apps/messagegui/metadata.json b/apps/messagegui/metadata.json index f18f39096..dffff0c58 100644 --- a/apps/messagegui/metadata.json +++ b/apps/messagegui/metadata.json @@ -2,7 +2,7 @@ "id": "messagegui", "name": "Message UI", "shortName": "Messages", - "version": "0.68", + "version": "0.69", "description": "Default app to display notifications from iOS and Gadgetbridge/Android", "icon": "app.png", "type": "app", From 0f431d53cfe0a8269c9752b68e99237e70abc4d8 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 9 Jun 2023 14:16:27 +0100 Subject: [PATCH 1355/1725] Nav messages with '/' now get split on newlines --- apps/messagegui/ChangeLog | 3 ++- apps/messagegui/app.js | 8 +++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index ace1d3091..2e8f9bb3c 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -92,4 +92,5 @@ 0.67: Support for 'Ignore' for messages from Gadgetbridge Message view is now taller, and we use swipe left/right to dismiss messages rather than buttons 0.68: More navigation icons (for roundabouts) -0.69: More navigation icons (keep/uturn left/right) \ No newline at end of file +0.69: More navigation icons (keep/uturn left/right) + Nav messages with '/' now get split on newlines \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index 614552371..97396496f 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -17,6 +17,7 @@ require("messages").pushMessage({"t":"add","id":1575479849,"src":"Skype","title" // maps GB({t:"nav",src:"maps",title:"Navigation",instr:"High St towards Tollgate Rd",distance:966,action:"continue",eta:"08:39"}) GB({t:"nav",src:"maps",title:"Navigation",instr:"High St",distance:12345,action:"left_slight",eta:"08:39"}) +GB({t:"nav",src:"maps",title:"Navigation",instr:"Main St / I-29 ALT / Centerpoint Dr",distance:12345,action:"left_slight",eta:"08:39"}) // call require("messages").pushMessage({"t":"add","id":"call","src":"Phone","title":"Bob","body":"12421312",positive:true,negative:true}) */ @@ -84,12 +85,13 @@ function showMapMessage(msg) { if (msg.distance!==undefined) distance = require("locale").distance(msg.distance); if (msg.instr) { - if (msg.instr.includes("towards") || msg.instr.includes("toward")) { - m = msg.instr.split(/towards|toward/); + var instr = msg.instr.replace(/\s*\/\s*/g," \/\n"); // convert slashes to newlines + if (instr.includes("towards") || instr.includes("toward")) { + m = instr.split(/towards|toward/); target = m[0].trim(); street = m[1].trim(); }else - target = msg.instr; + target = instr; } switch (msg.action) { case "continue": img = "EBgBAIABwAPgD/Af+D/8f/773/PPY8cDwAPAA8ADwAPAA8AAAAPAA8ADwAAAA8ADwAPA";break; From f0fef28fca008b4e6f6c762e66eecea0ab788104 Mon Sep 17 00:00:00 2001 From: pancake Date: Fri, 9 Jun 2023 14:33:17 +0200 Subject: [PATCH 1356/1725] Initial import of the sunrise watchface --- apps/sunrise/ChangeLog | 1 + apps/sunrise/README.md | 27 + apps/sunrise/app-icon.js | 1 + apps/sunrise/app.js | 321 ++++++ apps/sunrise/app.png | Bin 0 -> 1563 bytes apps/sunrise/metadata.json | 31 + apps/sunrise/screenshot.png | Bin 0 -> 2592 bytes package-lock.json | 2181 ++++++++++++++++++++++++++++++++++- 8 files changed, 2551 insertions(+), 11 deletions(-) create mode 100644 apps/sunrise/ChangeLog create mode 100644 apps/sunrise/README.md create mode 100644 apps/sunrise/app-icon.js create mode 100644 apps/sunrise/app.js create mode 100644 apps/sunrise/app.png create mode 100644 apps/sunrise/metadata.json create mode 100644 apps/sunrise/screenshot.png diff --git a/apps/sunrise/ChangeLog b/apps/sunrise/ChangeLog new file mode 100644 index 000000000..7b83706bf --- /dev/null +++ b/apps/sunrise/ChangeLog @@ -0,0 +1 @@ +0.01: First release diff --git a/apps/sunrise/README.md b/apps/sunrise/README.md new file mode 100644 index 000000000..7a60b681d --- /dev/null +++ b/apps/sunrise/README.md @@ -0,0 +1,27 @@ +# sunrise watchface + +This app mimics the Apple Watch watchface that shows the sunrise and sunset time. + +This is a work-in-progress app, so you may expect missfeatures, bugs and heavy +battery draining. There's still a lot of things to optimize and improve, so take +this into account before complaining :-) + +* Lat/Lon hardcoded to Barcelona, but it's configurable if you install the "mylocation app" +* Shows sea level and make the sun/moon glow depending on the x position +* The sinus is fixed, so the sea level is curved to match the sunrise/sunset positions) + +## TODO + +* Access GPS on first start to cache lat+lon to compute sunrise/sunset times +* Cache constant values once +* Show month and day too? +* Improved gradients +* Faster rendering, by reducing sinus stepsize, only refreshing whats needed, etc + +## Author + +Written by pancake in 2023 + +## Screenshots + +![sunrise](screenshot.png) diff --git a/apps/sunrise/app-icon.js b/apps/sunrise/app-icon.js new file mode 100644 index 000000000..79e0fded7 --- /dev/null +++ b/apps/sunrise/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwkEIf4A/AH4A/AH4ADgMiAAMgCyoABiAXQiUjkQBCkIXQFYMzAAIEBIyMjn8z+cyMKECFwM+93uGAJIPgUzn4WBC4IwBIx0jC4njmQvOkUSkQXTicQL4JHSgSFBgUyO6QkCU4YWBF4KnLFwTXGIwMQRZQ7EC4IxBAYRHKgQjEVIIXCkcgiQwJQQxhBAAJQCGBBdEABIwIfJwmHFxwnFAYQuOFAuIcAMwC54pE1WpWgURMKUxhUKzWqDYLOKVQh1FGoOTnQaKdAR1HhWqzWKkUykK7GkKkM1WZyRsCGAikPhWZ1EzGoKHBaZ5rEGoQWRNgoXVAH4A5")) diff --git a/apps/sunrise/app.js b/apps/sunrise/app.js new file mode 100644 index 000000000..b6dd71702 --- /dev/null +++ b/apps/sunrise/app.js @@ -0,0 +1,321 @@ +// banglejs app made by pancake +// sunrise/sunset script by Matt Kane from https://github.com/Triggertrap/sun-js + +const LOCATION_FILE = 'mylocation.json'; +let location; + +// requires the myLocation app +function loadLocation () { + try { + return require('Storage').readJSON(LOCATION_FILE, 1) || {}; + } catch (e) { + return { }; + } +} + +const latlon = loadLocation(); +const lat = latlon.lat || 41.38; +const lon = latlon.lon || 2.168; + +/** + * Sunrise/sunset script. By Matt Kane. + * + * Based loosely and indirectly on Kevin Boone's SunTimes Java implementation + * of the US Naval Observatory's algorithm. + * + * Copyright © 2012 Triggertrap Ltd. All rights reserved. + * + * This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General + * Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) + * any later version. + * + * This library 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 Lesser General Public License for more + * details. + * You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA, + * or connect to: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + */ + +Date.prototype.sunrise = function (latitude, longitude, zenith) { + return this.sunriseSet(latitude, longitude, true, zenith); +}; + +Date.prototype.sunset = function (latitude, longitude, zenith) { + return this.sunriseSet(latitude, longitude, false, zenith); +}; + +Date.prototype.sunriseSet = function (latitude, longitude, sunrise, zenith) { + if (!zenith) { + zenith = 90.8333; + } + + const hoursFromMeridian = longitude / Date.DEGREES_PER_HOUR; + const dayOfYear = this.getDayOfYear(); + let approxTimeOfEventInDays; + let sunMeanAnomaly; + let sunTrueLongitude; + let ascension; + let rightAscension; + let lQuadrant; + let raQuadrant; + let sinDec; + let cosDec; + let localHourAngle; + let localHour; + let localMeanTime; + let time; + + if (sunrise) { + approxTimeOfEventInDays = dayOfYear + ((6 - hoursFromMeridian) / 24); + } else { + approxTimeOfEventInDays = dayOfYear + ((18.0 - hoursFromMeridian) / 24); + } + + sunMeanAnomaly = (0.9856 * approxTimeOfEventInDays) - 3.289; + + sunTrueLongitude = sunMeanAnomaly + (1.916 * Math.sinDeg(sunMeanAnomaly)) + (0.020 * Math.sinDeg(2 * sunMeanAnomaly)) + 282.634; + sunTrueLongitude = Math.mod(sunTrueLongitude, 360); + + ascension = 0.91764 * Math.tanDeg(sunTrueLongitude); + rightAscension = 360 / (2 * Math.PI) * Math.atan(ascension); + rightAscension = Math.mod(rightAscension, 360); + + lQuadrant = Math.floor(sunTrueLongitude / 90) * 90; + raQuadrant = Math.floor(rightAscension / 90) * 90; + rightAscension = rightAscension + (lQuadrant - raQuadrant); + rightAscension /= Date.DEGREES_PER_HOUR; + + sinDec = 0.39782 * Math.sinDeg(sunTrueLongitude); + cosDec = Math.cosDeg(Math.asinDeg(sinDec)); + cosLocalHourAngle = ((Math.cosDeg(zenith)) - (sinDec * (Math.sinDeg(latitude)))) / (cosDec * (Math.cosDeg(latitude))); + + localHourAngle = Math.acosDeg(cosLocalHourAngle); + + if (sunrise) { + localHourAngle = 360 - localHourAngle; + } + + localHour = localHourAngle / Date.DEGREES_PER_HOUR; + + localMeanTime = localHour + rightAscension - (0.06571 * approxTimeOfEventInDays) - 6.622; + + time = localMeanTime - (longitude / Date.DEGREES_PER_HOUR); + time = Math.mod(time, 24); + + const midnight = new Date(0); + // midnight.setUTCFullYear(this.getUTCFullYear()); + // midnight.setUTCMonth(this.getUTCMonth()); + // midnight.setUTCDate(this.getUTCDate()); + + const milli = midnight.getTime() + (time * 60 * 60 * 1000); + + return new Date(milli); +}; + +Date.DEGREES_PER_HOUR = 360 / 24; + +// Utility functions + +Date.prototype.getDayOfYear = function () { + const onejan = new Date(this.getFullYear(), 0, 1); + return Math.ceil((this - onejan) / 86400000); +}; + +Math.degToRad = function (num) { + return num * Math.PI / 180; +}; + +Math.radToDeg = function (radians) { + return radians * 180.0 / Math.PI; +}; + +Math.sinDeg = function (deg) { + return Math.sin(deg * 2.0 * Math.PI / 360.0); +}; + +Math.acosDeg = function (x) { + return Math.acos(x) * 360.0 / (2 * Math.PI); +}; + +Math.asinDeg = function (x) { + return Math.asin(x) * 360.0 / (2 * Math.PI); +}; + +Math.tanDeg = function (deg) { + return Math.tan(deg * 2.0 * Math.PI / 360.0); +}; + +Math.cosDeg = function (deg) { + return Math.cos(deg * 2.0 * Math.PI / 360.0); +}; + +Math.mod = function (a, b) { + let result = a % b; + if (result < 0) { + result += b; + } + return result; +}; + +const delta = 2; +const sunrise = new Date().sunrise(lat, lon); +const sr = sunrise.getHours() + ':' + sunrise.getMinutes(); +console.log('sunrise', sunrise); +const sunset = new Date().sunset(lat, lon); +const ss = sunset.getHours() + ':' + sunset.getMinutes(); +console.log('sunset', sunset); + +const w = g.getWidth(); +const h = g.getHeight(); +const oy = h / 1.7; + +function ypos (x) { + const pc = (x * 100 / w); + return oy + (32 * Math.sin(1.7 + (pc / 16))); +} + +let sunRiseX = 0; +let sunSetX = 0; + +function drawSinuses () { + let x = 0; + + g.setColor(0, 0, 0); + // g.fillRect(0,oy,w, h); + g.setColor(1, 1, 1); + let y = oy; + for (i = 0; i < w; i++) { + x = i; + x2 = x + 6; + y2 = ypos(i); + if (x == 0) { + y = y2; + } + g.drawLine(x, y, x2, y2); + y = y2; + i += 5; // no need to draw all steps + } + + // sea level line + const sl0 = seaLevel(sunrise.getHours()); + const sl1 = seaLevel(sunset.getHours()); + sunRiseX = xfromTime(sunrise.getHours()); + sunSetX = xfromTime(sunset.getHours()); + g.setColor(0.5, 0.5, 1); + g.drawLine(0, sl0, w, sl1); + g.setColor(0, 0, 1); + g.drawLine(0, sl0 + 1, w, sl1 + 1); + g.setColor(0, 0, 0.5); + g.drawLine(0, sl0 + 2, w, sl1 + 2); +} + +function drawTimes () { + g.setColor(1, 1, 1); + g.setFont('Vector', 20); + g.drawString(sr, 10, h - 20); + g.drawString(ss, w - 60, h - 20); +} + +let pos = 0; +let realTime = true; +const r = 10; + +function drawGlow () { + const now = new Date(); + if (realTime) { + pos = xfromTime(now.getHours()); + } + const x = pos; + const y = ypos(x - (r / 2)); + const r2 = (x > sunRiseX && x < sunSetX) ? r + 20 : r + 10; + + g.setColor(0.3, 0.3, 0.3); + g.fillCircle(x, y, r2); + g.setColor(0.5, 0.5, 0.5); + g.fillCircle(x, y, r + 3); +} + +function seaLevel (hour) { + // hour goes from 0 to 24 + // to get the X we divide the screen in 24 + return ypos(xfromTime(hour)); +} + +function xfromTime (t) { + return (w / 24) * t; +} + +function drawBall () { + let x = pos; + const now = new Date(); + if (realTime) { + x = xfromTime(now.getHours()); + pos = x; + } + const y = ypos(x - (r / 2)); + + // glow + g.setColor(1, 1, 0); + if (x < sunRiseX) { + g.setColor(0.2, 0.2, 0); + } else if (x > sunSetX) { + g.setColor(0.2, 0.2, 0); + } + g.fillCircle(x, y, r); + g.setColor(1, 1, 1); + g.drawCircle(x, y, r); + let curTime = ''; + let fhours = 0.0; + let fmins = 0.0; + if (realTime) { + fhours = now.getHours(); + fmins = now.getMinutes(); + } else { + fhours = 24 * (pos / w); + if (fhours > 23) { + fhours = 0; + } + fmins = (24 - fhours) % 60; + if (fmins < 0) { + fmins = 0; + } + } + const hours = ((fhours < 10) ? '0' : '') + (0 | fhours); + const mins = ((fmins < 10) ? '0' : '') + (0 | fmins); + curTime = hours + ':' + mins; + g.setFont('Vector', 30); + g.setColor(1, 1, 1); + g.drawString(curTime, w / 1.9, 32); +} + +function renderScreen () { + g.setBgColor(0, 0, 0); + g.clear(); + if (realTime) { + Bangle.loadWidgets(); + Bangle.drawWidgets(); + } + drawGlow(); + drawSinuses(); + drawTimes(); + drawBall(); +} + +Bangle.on('drag', function (tap, top) { + pos = tap.x; + realTime = false; + renderScreen(); +}); + +Bangle.on('lock', () => { + realTime = Bangle.isLocked(); + renderScreen(); +}); +Bangle.on('tap', () => { + realTime = true; + renderScreen(); +}); +renderScreen(); + +setInterval(renderScreen, 60 * 1000); diff --git a/apps/sunrise/app.png b/apps/sunrise/app.png new file mode 100644 index 0000000000000000000000000000000000000000..a170dfa35c8ace11d424b8a6fd0c3dd74d7c5087 GIT binary patch literal 1563 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.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", + "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/array-includes": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz", + "integrity": "sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz", + "integrity": "sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.2", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/confusing-browser-globals": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", + "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/es-abstract": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz", + "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "regexp.prototype.flags": "^1.4.3", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.17.0.tgz", + "integrity": "sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw==", + "dev": true, + "dependencies": { + "@eslint/eslintrc": "^1.3.0", + "@humanwhocodes/config-array": "^0.9.2", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.2", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^6.0.1", + "globals": "^13.15.0", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-airbnb-base": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", + "integrity": "sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==", + "dev": true, + "dependencies": { + "confusing-browser-globals": "^1.0.10", + "object.assign": "^4.1.2", + "object.entries": "^1.1.5", + "semver": "^6.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "peerDependencies": { + "eslint": "^7.32.0 || ^8.2.0", + "eslint-plugin-import": "^2.25.2" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz", + "integrity": "sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", + "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.3", + "has": "^1.0.3", + "is-core-module": "^2.8.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.values": "^1.1.5", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/espree": { + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", + "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==", + "dev": true, + "dependencies": { + "acorn": "^8.7.1", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/espree/node_modules/acorn": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", + "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", + "dev": true + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", + "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "13.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", + "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/nodemon": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.20.tgz", + "integrity": "sha512-Km2mWHKKY5GzRg6i1j5OxOHQtuvVsgskLfigG25yTtbyfRGn/GNvIbRyOf1PSCKJ2aT/58TiuUsuOU5UToVViw==", + "dev": true, + "dependencies": { + "chokidar": "^3.5.2", + "debug": "^3.2.7", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.1.2", + "pstree.remy": "^1.1.8", + "semver": "^5.7.1", + "simple-update-notifier": "^1.0.7", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5" + }, + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=8.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" + } + }, + "node_modules/nodemon/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/nodemon/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/nodemon/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/nodemon/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-watch": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/npm-watch/-/npm-watch-0.11.0.tgz", + "integrity": "sha512-wAOd0moNX2kSA2FNvt8+7ORwYaJpQ1ZoWjUYdb1bBCxq4nkWuU0IiJa9VpVxrj5Ks+FGXQd62OC/Bjk0aSr+dg==", + "dev": true, + "dependencies": { + "nodemon": "^2.0.7", + "through2": "^4.0.2" + }, + "bin": { + "npm-watch": "cli.js" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", + "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", + "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/resolve": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/simple-update-notifier": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.0.7.tgz", + "integrity": "sha512-BBKgR84BJQJm6WjWFMHgLVuo61FBDSj1z/xSFUIozqO6wO7ii0JxCqlIud7Enr/+LhlbNI0whErq96P2qHNWew==", + "dev": true, + "dependencies": { + "semver": "~7.0.0" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/simple-update-notifier/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", + "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", + "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "dependencies": { + "readable-stream": "3" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "dev": true, + "dependencies": { + "nopt": "~1.0.10" + }, + "bin": { + "nodetouch": "bin/nodetouch.js" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", + "dev": true + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + } + }, "dependencies": { "@eslint/eslintrc": { "version": "1.3.0", @@ -59,7 +2217,8 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true + "dev": true, + "requires": {} }, "ajv": { "version": "6.12.6", @@ -1391,6 +3550,15 @@ } } }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, "string.prototype.trimend": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", @@ -1413,15 +3581,6 @@ "es-abstract": "^1.19.5" } }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", From de3fbe6578f93342e7355a4efb6ab24946938f62 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 9 Jun 2023 14:55:11 +0100 Subject: [PATCH 1357/1725] Update app.js as per https://github.com/espruino/BangleApps/commit/f0fef28fca008b4e6f6c762e66eecea0ab788104#r117262688 --- apps/sunrise/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sunrise/app.js b/apps/sunrise/app.js index b6dd71702..30b344c56 100644 --- a/apps/sunrise/app.js +++ b/apps/sunrise/app.js @@ -7,7 +7,7 @@ let location; // requires the myLocation app function loadLocation () { try { - return require('Storage').readJSON(LOCATION_FILE, 1) || {}; + return require('Storage').readJSON(LOCATION_FILE, 1); } catch (e) { return { }; } From c62ccf27e15bf0485b9fa68a5b5b40ee49a18293 Mon Sep 17 00:00:00 2001 From: pancake Date: Fri, 9 Jun 2023 16:41:11 +0200 Subject: [PATCH 1358/1725] Release sunrise 0.02, faster sinus and fix menu button --- apps/sunrise/ChangeLog | 1 + apps/sunrise/app.js | 6 ++++-- apps/sunrise/metadata.json | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/apps/sunrise/ChangeLog b/apps/sunrise/ChangeLog index 7b83706bf..19e3bb33b 100644 --- a/apps/sunrise/ChangeLog +++ b/apps/sunrise/ChangeLog @@ -1 +1,2 @@ 0.01: First release +0.02: Faster sinus line and fix button to open menu diff --git a/apps/sunrise/app.js b/apps/sunrise/app.js index 30b344c56..2fa2a7502 100644 --- a/apps/sunrise/app.js +++ b/apps/sunrise/app.js @@ -177,6 +177,7 @@ function ypos (x) { let sunRiseX = 0; let sunSetX = 0; +const sinStep = 12; function drawSinuses () { let x = 0; @@ -187,14 +188,14 @@ function drawSinuses () { let y = oy; for (i = 0; i < w; i++) { x = i; - x2 = x + 6; + x2 = x + sinStep + 1; y2 = ypos(i); if (x == 0) { y = y2; } g.drawLine(x, y, x2, y2); y = y2; - i += 5; // no need to draw all steps + i += sinStep; // no need to draw all steps } // sea level line @@ -318,4 +319,5 @@ Bangle.on('tap', () => { }); renderScreen(); +Bangle.setUI("clock"); setInterval(renderScreen, 60 * 1000); diff --git a/apps/sunrise/metadata.json b/apps/sunrise/metadata.json index 61fe45520..f3012144a 100644 --- a/apps/sunrise/metadata.json +++ b/apps/sunrise/metadata.json @@ -2,7 +2,7 @@ "id": "sunrise", "name": "Sunrise", "shortName": "Sunrise", - "version": "0.01", + "version": "0.02", "type": "clock", "description": "Show sunrise and sunset times", "icon": "app.png", From 84bde38d89414868963b72d3e26b6ab227a0a62d Mon Sep 17 00:00:00 2001 From: pancake Date: Fri, 9 Jun 2023 16:58:51 +0200 Subject: [PATCH 1359/1725] Call setUI before loadWidgets --- apps/sunrise/app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/sunrise/app.js b/apps/sunrise/app.js index 2fa2a7502..57fb1c2dc 100644 --- a/apps/sunrise/app.js +++ b/apps/sunrise/app.js @@ -13,6 +13,8 @@ function loadLocation () { } } +Bangle.setUI("clock"); +Bangle.loadWidgets(); const latlon = loadLocation(); const lat = latlon.lat || 41.38; const lon = latlon.lon || 2.168; @@ -294,7 +296,6 @@ function renderScreen () { g.setBgColor(0, 0, 0); g.clear(); if (realTime) { - Bangle.loadWidgets(); Bangle.drawWidgets(); } drawGlow(); @@ -319,5 +320,4 @@ Bangle.on('tap', () => { }); renderScreen(); -Bangle.setUI("clock"); setInterval(renderScreen, 60 * 1000); From f8ccc2f59659b26eb4078deff6809ef1009c051f Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 9 Jun 2023 16:58:00 +0100 Subject: [PATCH 1360/1725] 0.27: Fix first ever recorded filename being log0 (now all are dated) --- apps/recorder/ChangeLog | 1 + apps/recorder/metadata.json | 2 +- apps/recorder/widget.js | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/recorder/ChangeLog b/apps/recorder/ChangeLog index 46ea05918..94e2f28c2 100644 --- a/apps/recorder/ChangeLog +++ b/apps/recorder/ChangeLog @@ -32,3 +32,4 @@ 0.24: Can now specify `setRecording(true, {force:...` to not show a menu 0.25: Widget now has `isRecording()` for retrieving recording status. 0.26: Now record filename based on date +0.27: Fix first ever recorded filename being log0 (now all are dated) \ No newline at end of file diff --git a/apps/recorder/metadata.json b/apps/recorder/metadata.json index 598318e29..beb5648c8 100644 --- a/apps/recorder/metadata.json +++ b/apps/recorder/metadata.json @@ -2,7 +2,7 @@ "id": "recorder", "name": "Recorder", "shortName": "Recorder", - "version": "0.26", + "version": "0.27", "description": "Record GPS position, heart rate and more in the background, then download to your PC.", "icon": "app.png", "tags": "tool,outdoors,gps,widget", diff --git a/apps/recorder/widget.js b/apps/recorder/widget.js index 061859f9c..c2e04fd09 100644 --- a/apps/recorder/widget.js +++ b/apps/recorder/widget.js @@ -240,8 +240,9 @@ var settings = loadSettings(); options = options||{}; if (isOn && !settings.recording) { + var date=(new Date()).toISOString().substr(0,10).replace(/-/g,""), trackNo=10; if (!settings.file) { // if no filename set - settings.file = "recorder.log0.csv"; + settings.file = "recorder.log" + date + trackNo.toString(36) + ".csv";; } else if (require("Storage").list(settings.file).length){ // if file exists if (!options.force) { // if not forced, ask the question g.reset(); // work around bug in 2v17 and earlier where bg color wasn't reset @@ -263,7 +264,6 @@ require("Storage").open(settings.file,"r").erase(); } else if (options.force=="new") { // new file - use the current date - var date=(new Date()).toISOString().substr(0,10).replace(/-/g,""), trackNo=10; var newFileName; do { // while a file exists, add one to the letter after the date newFileName = "recorder.log" + date + trackNo.toString(36) + ".csv"; From d620ff25be2566d88ae1b0346f57dacc455b46ab Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 9 Jun 2023 16:59:37 +0100 Subject: [PATCH 1361/1725] oops --- apps/recorder/widget.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/recorder/widget.js b/apps/recorder/widget.js index c2e04fd09..3c9afcf70 100644 --- a/apps/recorder/widget.js +++ b/apps/recorder/widget.js @@ -242,7 +242,7 @@ if (isOn && !settings.recording) { var date=(new Date()).toISOString().substr(0,10).replace(/-/g,""), trackNo=10; if (!settings.file) { // if no filename set - settings.file = "recorder.log" + date + trackNo.toString(36) + ".csv";; + settings.file = "recorder.log" + date + trackNo.toString(36) + ".csv"; } else if (require("Storage").list(settings.file).length){ // if file exists if (!options.force) { // if not forced, ask the question g.reset(); // work around bug in 2v17 and earlier where bg color wasn't reset From 239c2777b1af7b8b26f1191c9079c4fd6a545d7d Mon Sep 17 00:00:00 2001 From: Luc Tielen Date: Fri, 9 Jun 2023 20:36:43 +0200 Subject: [PATCH 1362/1725] Update the sunrise watchface --- apps/sunrise/ChangeLog | 1 + apps/sunrise/README.md | 8 +- apps/sunrise/app.js | 147 ++++++++++++++++++++++++++----------- apps/sunrise/metadata.json | 2 +- 4 files changed, 111 insertions(+), 47 deletions(-) diff --git a/apps/sunrise/ChangeLog b/apps/sunrise/ChangeLog index 19e3bb33b..b2c5a2ae1 100644 --- a/apps/sunrise/ChangeLog +++ b/apps/sunrise/ChangeLog @@ -1,2 +1,3 @@ 0.01: First release 0.02: Faster sinus line and fix button to open menu +0.03: Show day/month, add animations, fix !mylocation and text glitch diff --git a/apps/sunrise/README.md b/apps/sunrise/README.md index 7a60b681d..bafe9f76c 100644 --- a/apps/sunrise/README.md +++ b/apps/sunrise/README.md @@ -6,17 +6,15 @@ This is a work-in-progress app, so you may expect missfeatures, bugs and heavy battery draining. There's still a lot of things to optimize and improve, so take this into account before complaining :-) -* Lat/Lon hardcoded to Barcelona, but it's configurable if you install the "mylocation app" +* Requires to configure the location in Settings -> Apps -> My Location * Shows sea level and make the sun/moon glow depending on the x position * The sinus is fixed, so the sea level is curved to match the sunrise/sunset positions) ## TODO -* Access GPS on first start to cache lat+lon to compute sunrise/sunset times -* Cache constant values once -* Show month and day too? -* Improved gradients +* Improved gradients and add support for banglejs1 * Faster rendering, by reducing sinus stepsize, only refreshing whats needed, etc +* Show red vertical lines or dots inside the sinus if there are alarms ## Author diff --git a/apps/sunrise/app.js b/apps/sunrise/app.js index 57fb1c2dc..fd6274129 100644 --- a/apps/sunrise/app.js +++ b/apps/sunrise/app.js @@ -4,18 +4,20 @@ const LOCATION_FILE = 'mylocation.json'; let location; +Bangle.setUI('clock'); +Bangle.loadWidgets(); // requires the myLocation app function loadLocation () { try { return require('Storage').readJSON(LOCATION_FILE, 1); } catch (e) { - return { }; + return { lat: 41.38, lon: 2.168 }; } } - -Bangle.setUI("clock"); -Bangle.loadWidgets(); -const latlon = loadLocation(); +let frames = 0; // amount of pending frames to render (0 if none) +let curPos = 0; // x position of the sun +let realPos = 0; // x position of the sun depending on currentime +const latlon = loadLocation() || {}; const lat = latlon.lat || 41.38; const lon = latlon.lon || 2.168; @@ -172,11 +174,6 @@ const w = g.getWidth(); const h = g.getHeight(); const oy = h / 1.7; -function ypos (x) { - const pc = (x * 100 / w); - return oy + (32 * Math.sin(1.7 + (pc / 16))); -} - let sunRiseX = 0; let sunSetX = 0; const sinStep = 12; @@ -201,21 +198,27 @@ function drawSinuses () { } // sea level line - const sl0 = seaLevel(sunrise.getHours()); - const sl1 = seaLevel(sunset.getHours()); - sunRiseX = xfromTime(sunrise.getHours()); - sunSetX = xfromTime(sunset.getHours()); - g.setColor(0.5, 0.5, 1); + const hh0 = sunrise.getHours(); + const hh1 = sunset.getHours(); + const sl0 = seaLevel(hh0); + const sl1 = seaLevel(hh1); + sunRiseX = xfromTime(hh0) + (r / 2); + sunSetX = xfromTime(hh1) + (r / 2); + g.setColor(0, 0, 1); g.drawLine(0, sl0, w, sl1); g.setColor(0, 0, 1); g.drawLine(0, sl0 + 1, w, sl1 + 1); + /* + g.setColor(0, 0, 1); + g.drawLine(0, sl0 + 1, w, sl1 + 1); g.setColor(0, 0, 0.5); g.drawLine(0, sl0 + 2, w, sl1 + 2); + */ } function drawTimes () { g.setColor(1, 1, 1); - g.setFont('Vector', 20); + g.setFont('6x8', 2); g.drawString(sr, 10, h - 20); g.drawString(ss, w - 60, h - 20); } @@ -226,17 +229,23 @@ const r = 10; function drawGlow () { const now = new Date(); - if (realTime) { + if (frames < 1 && realTime) { pos = xfromTime(now.getHours()); } + const rh = r / 2; const x = pos; - const y = ypos(x - (r / 2)); - const r2 = (x > sunRiseX && x < sunSetX) ? r + 20 : r + 10; - - g.setColor(0.3, 0.3, 0.3); - g.fillCircle(x, y, r2); - g.setColor(0.5, 0.5, 0.5); - g.fillCircle(x, y, r + 3); + const y = ypos(x - r); + const r2 = 0; + if (x > sunRiseX && x < sunSetX) { + g.setColor(0.2, 0.2, 0); + g.fillCircle(x, y, r + 20); + g.setColor(0.5, 0.5, 0); + // wide glow + } else { + g.setColor(0.2, 0.2, 0); + } + // smol glow + g.fillCircle(x, y, r + 8); } function seaLevel (hour) { @@ -245,6 +254,11 @@ function seaLevel (hour) { return ypos(xfromTime(hour)); } +function ypos (x) { + const pc = (x * 100 / w); + return oy + (32 * Math.sin(1.7 + (pc / 16))); +} + function xfromTime (t) { return (w / 24) * t; } @@ -252,47 +266,66 @@ function xfromTime (t) { function drawBall () { let x = pos; const now = new Date(); - if (realTime) { + if (frames < 1 && realTime) { x = xfromTime(now.getHours()); - pos = x; } - const y = ypos(x - (r / 2)); + const y = ypos(x - r); // glow - g.setColor(1, 1, 0); - if (x < sunRiseX) { - g.setColor(0.2, 0.2, 0); - } else if (x > sunSetX) { - g.setColor(0.2, 0.2, 0); + if (x < sunRiseX || x > sunSetX) { + g.setColor(0.5, 0.5, 0); + } else { + g.setColor(1, 1, 1); } + const rh = r / 2; g.fillCircle(x, y, r); - g.setColor(1, 1, 1); + g.setColor(1, 1, 0); g.drawCircle(x, y, r); +} +function drawClock () { + const now = new Date(); + let curTime = ''; let fhours = 0.0; let fmins = 0.0; + let ypos = 32; if (realTime) { fhours = now.getHours(); fmins = now.getMinutes(); } else { + ypos = 32; fhours = 24 * (pos / w); if (fhours > 23) { fhours = 0; } - fmins = (24 - fhours) % 60; + const nexth = 24 * 60 * (pos / w); + fmins = 59 - ((24 * 60) - nexth) % 60; if (fmins < 0) { fmins = 0; } } + if (fmins > 59) { + fmins = 59; + } const hours = ((fhours < 10) ? '0' : '') + (0 | fhours); const mins = ((fmins < 10) ? '0' : '') + (0 | fmins); curTime = hours + ':' + mins; g.setFont('Vector', 30); g.setColor(1, 1, 1); - g.drawString(curTime, w / 1.9, 32); + g.drawString(curTime, w / 1.9, ypos); + // day-month + if (realTime) { + const mo = now.getMonth() + 1; + const da = now.getDate(); + const daymonth = '' + da + '/' + mo; + g.setFont('6x8', 2); + g.drawString(daymonth, 5, 30); + } } function renderScreen () { + realPos = xfromTime((new Date()).getHours()); + g.setFontAlign(-1, -1, 0); g.setBgColor(0, 0, 0); g.clear(); if (realTime) { @@ -301,23 +334,55 @@ function renderScreen () { drawGlow(); drawSinuses(); drawTimes(); + drawClock(); drawBall(); } Bangle.on('drag', function (tap, top) { - pos = tap.x; - realTime = false; + if (tap.y < h / 3) { + curPos = pos; + initialAnimation(); + } else { + pos = tap.x - 5; + realTime = false; + } renderScreen(); }); Bangle.on('lock', () => { + // TODO: render animation here realTime = Bangle.isLocked(); renderScreen(); }); -Bangle.on('tap', () => { - realTime = true; - renderScreen(); -}); + renderScreen(); +realPos = xfromTime((new Date()).getHours()); + +function initialAnimationFrame () { + curPos += (realPos - curPos) / 3; + pos = curPos; + renderScreen(); + if (curPos >= realPos) { + frame = 0; + } + frames--; + if (frames-- > 0) { + setTimeout(initialAnimationFrame, 50); + } else { + realTime = true; + renderScreen(); + } +} + +function initialAnimation () { + const distance = Math.abs(realPos - pos); + frames = distance / 4; + realTime = false; + initialAnimationFrame(); +} + setInterval(renderScreen, 60 * 1000); + +pos = 0; +initialAnimation(); diff --git a/apps/sunrise/metadata.json b/apps/sunrise/metadata.json index f3012144a..d9d7533b6 100644 --- a/apps/sunrise/metadata.json +++ b/apps/sunrise/metadata.json @@ -2,7 +2,7 @@ "id": "sunrise", "name": "Sunrise", "shortName": "Sunrise", - "version": "0.02", + "version": "0.03", "type": "clock", "description": "Show sunrise and sunset times", "icon": "app.png", From 0535229f53adf2c312d96285ad375d77f8ad135d Mon Sep 17 00:00:00 2001 From: Luc Tielen Date: Fri, 9 Jun 2023 20:45:16 +0200 Subject: [PATCH 1363/1725] sunrise 0.04 --- apps/sunrise/ChangeLog | 1 + apps/sunrise/app.js | 37 +++++++++++++++++++++++++------------ apps/sunrise/metadata.json | 2 +- 3 files changed, 27 insertions(+), 13 deletions(-) diff --git a/apps/sunrise/ChangeLog b/apps/sunrise/ChangeLog index b2c5a2ae1..490992812 100644 --- a/apps/sunrise/ChangeLog +++ b/apps/sunrise/ChangeLog @@ -1,3 +1,4 @@ 0.01: First release 0.02: Faster sinus line and fix button to open menu 0.03: Show day/month, add animations, fix !mylocation and text glitch +0.04: Always show the widgets, swifter animations and lighter sea line diff --git a/apps/sunrise/app.js b/apps/sunrise/app.js index fd6274129..3feb4dfd4 100644 --- a/apps/sunrise/app.js +++ b/apps/sunrise/app.js @@ -204,9 +204,9 @@ function drawSinuses () { const sl1 = seaLevel(hh1); sunRiseX = xfromTime(hh0) + (r / 2); sunSetX = xfromTime(hh1) + (r / 2); - g.setColor(0, 0, 1); + g.setColor(0, 0.5, 1); g.drawLine(0, sl0, w, sl1); - g.setColor(0, 0, 1); + g.setColor(0, 0.5, 1); g.drawLine(0, sl0 + 1, w, sl1 + 1); /* g.setColor(0, 0, 1); @@ -311,7 +311,11 @@ function drawClock () { const mins = ((fmins < 10) ? '0' : '') + (0 | fmins); curTime = hours + ':' + mins; g.setFont('Vector', 30); - g.setColor(1, 1, 1); + if (realTime) { + g.setColor(1, 1, 1); + } else { + g.setColor(0, 1, 1); + } g.drawString(curTime, w / 1.9, ypos); // day-month if (realTime) { @@ -324,13 +328,13 @@ function drawClock () { } function renderScreen () { + g.setColor(0, 0, 0); + g.fillRect(0, 30, w, h); realPos = xfromTime((new Date()).getHours()); g.setFontAlign(-1, -1, 0); - g.setBgColor(0, 0, 0); - g.clear(); - if (realTime) { - Bangle.drawWidgets(); - } + + Bangle.drawWidgets(); + drawGlow(); drawSinuses(); drawTimes(); @@ -360,7 +364,11 @@ renderScreen(); realPos = xfromTime((new Date()).getHours()); function initialAnimationFrame () { - curPos += (realPos - curPos) / 3; + let distance = (realPos - curPos) / 4; + if (distance > 20) { + distance = 20; + } + curPos += distance; pos = curPos; renderScreen(); if (curPos >= realPos) { @@ -382,7 +390,12 @@ function initialAnimation () { initialAnimationFrame(); } -setInterval(renderScreen, 60 * 1000); +function main () { + g.setBgColor(0, 0, 0); + g.clear(); + setInterval(renderScreen, 60 * 1000); + pos = 0; + initialAnimation(); +} -pos = 0; -initialAnimation(); +main(); diff --git a/apps/sunrise/metadata.json b/apps/sunrise/metadata.json index d9d7533b6..051ff99bd 100644 --- a/apps/sunrise/metadata.json +++ b/apps/sunrise/metadata.json @@ -2,7 +2,7 @@ "id": "sunrise", "name": "Sunrise", "shortName": "Sunrise", - "version": "0.03", + "version": "0.04", "type": "clock", "description": "Show sunrise and sunset times", "icon": "app.png", From 8271b7472dab8dd26b20f6c6d67924d6b6a71273 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20B=C3=BCsgen?= Date: Fri, 9 Jun 2023 20:50:51 +0200 Subject: [PATCH 1364/1725] feat: :sparkles: tune service advertisement so apps like OpenTracks can find the hrm service --- apps/bootgatthrm/boot.js | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/apps/bootgatthrm/boot.js b/apps/bootgatthrm/boot.js index 391f245b9..aad210f6f 100644 --- a/apps/bootgatthrm/boot.js +++ b/apps/bootgatthrm/boot.js @@ -4,14 +4,30 @@ * This function prepares BLE heart rate Advertisement. */ + NRF.setAdvertising( + { + 0x180d: undefined + }, + { + // We need custom Advertisement settings for Apps like OpenTracks + connectable: true, + discoverable: true, + scannable: true, + whenConnected: true, + } + ); + NRF.setServices({ 0x180D: { // heart_rate 0x2A37: { // heart_rate_measurement notify: true, value: [0x06, 0], + }, + 0x2A38: { // Sensor Location: Wrist + value: 0x02, } } - }, { advertise: [0x180d] }); + }); } function updateBLEHeartRate(hrm) { @@ -23,11 +39,11 @@ NRF.updateServices({ 0x180D: { 0x2A37: { - value: [ - 0x06, // - hrm.bpm - ], + value: [0x06, hrm.bpm], notify: true + }, + 0x2A38: { + value: 0x02, } } }); From 132c49841788ac1d3bcf05e364a62002afbf8fe7 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 10 Jun 2023 00:41:44 -0500 Subject: [PATCH 1365/1725] Fix typo, formatting, and titles not showing --- apps/lightswitch/settings.js | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/apps/lightswitch/settings.js b/apps/lightswitch/settings.js index aff45a444..e83e51562 100644 --- a/apps/lightswitch/settings.js +++ b/apps/lightswitch/settings.js @@ -33,7 +33,7 @@ var w = WIDGETS.lightswitch; // assign changes to widget w = Object.assign(w, settings); - // redraw widgets if neccessary + // redraw widgets if necessary if (drawWidgets) Bangle.drawWidgets(); } } @@ -46,9 +46,9 @@ // return entry for string value return { value: entry.value.indexOf(settings[key]), - min : 0, - max : entry.value.length - 1, - wrap : true, + min: 0, + max: entry.value.length - 1, + wrap: true, format: v => entry.title ? entry.title[v] : entry.value[v], onchange: function(v) { writeSetting(key, entry.value[v], entry.drawWidgets); @@ -59,10 +59,10 @@ // return entry for numerical value return { value: settings[key] * entry.factor, - min : entry.min, - max : entry.max, + min: entry.min, + max: entry.max, step: entry.step, - wrap : true, + wrap: true, format: v => v > 0 ? v + entry.unit : "off", onchange: function(v) { writeSetting(key, v / entry.factor, entry.drawWidgets); @@ -152,18 +152,18 @@ title: "Light Switch" }, "< Back": () => back(), - "-- Widget": 0, + "-- Widget": {}, "Bulb col": getEntry("colors"), "Image": getEntry("image"), - "-- Control": 0, + "-- Control": {}, "Touch": getEntry("touchOn"), "Oversize": getEntry("oversize"), "Drag Delay": getEntry("dragDelay"), "Min Value": getEntry("minValue"), "Tap to lock": getEntry("tapToLock"), - "-- Unlock": 0, + "-- Unlock": {}, "TapSide": getEntry("unlockSide"), - "-- Flash": 0, + "-- Flash": {}, "TapSide ": getEntry("tapSide"), "Tap": getEntry("tapOn"), "Timeout": getEntry("tOut"), From 9d4d43def271c645d8df99eb1a35006112e4e6bc Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 11:07:21 +0200 Subject: [PATCH 1366/1725] gpstrek - Update routing info in background --- apps/gpstrek/app.js | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 1861eaf8b..14ca1da00 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -22,7 +22,7 @@ const SETTINGS = { minPosChange: 5, //position change needed in pixels before redrawing the map waypointChangeDist: 50, //distance in m to next waypoint before advancing automatically queueWaitingTime: 5, // waiting time during processing of task queue items when running with timeouts - autosearch: false, + autosearch: true, maxDistForWaypointSearch: 300 }; @@ -1401,24 +1401,22 @@ let lastSearch = 0; let updateRouting = function() { let s = WIDGETS.gpstrek.getState(); - if (s.route && s.currentPos.lat) { + if (s.mode != MODE_MENU && s.route && s.currentPos.lat) { let currentDistanceToTarget = distance(s.currentPos,get(s.route)); if (currentDistanceToTarget < minimumDistance){ minimumDistance = currentDistanceToTarget; } + if (SETTINGS.autosearch && !isMapOverview && lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ + Bangle.buzz(1000); + setClosestWaypoint(s.route, getWaypointIndex(s.route)); + minimumDistance = Number.MAX_VALUE; + lastSearch = Date.now(); + } + let counter = 0; while (hasNext(s.route) && distance(s.currentPos,get(s.route)) < SETTINGS.waypointChangeDist) { next(s.route); minimumDistance = Number.MAX_VALUE; } - if (SETTINGS.autosearch && !isMapOverview && lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ - stopDrawing(); - Bangle.buzz(1000); - setClosestWaypoint(s.route, getWaypointIndex(s.route)); - next(s.route); - minimumDistance = Number.MAX_VALUE; - lastSearch = Date.now(); - startDrawing(); - } } }; @@ -1510,8 +1508,6 @@ let draw = function(){ } firstDraw = false; - - updateRouting(); lastDrawnMode = s.mode; if (scheduleDraw){ @@ -1521,5 +1517,7 @@ let draw = function(){ switchMode(MODE_SLICES); +setInterval(updateRouting, 500); + clear(); } From 4d55da2f7979f0da80fc7510436edb811ec6d155 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 11:11:56 +0200 Subject: [PATCH 1367/1725] gpstrek - Better center named waypoint icon --- apps/gpstrek/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 14ca1da00..e44537b0d 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -499,7 +499,7 @@ let getMapSlice = function(){ graphics.setFont6x15().setFontAlign(-1,0); for (let c of named){ if (data.i != 0 || currentPosFromGPS){ - graphics.drawImage(point, data.poly[c.i]-point.width/2, data.poly[c.i+1]-point.height/2); + graphics.drawImage(point, Math.round(data.poly[c.i]-point.width/2), Math.round(data.poly[c.i+1]-point.height/2)); } graphics.drawString(c.n, data.poly[c.i] + 10, data.poly[c.i+1]); } From ef197a5133ea37ba7a881b34587d5ec2a1dee1e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20B=C3=BCsgen?= Date: Sat, 10 Jun 2023 12:36:59 +0200 Subject: [PATCH 1368/1725] docs: :bookmark: Increment version number and add ChangeLog --- apps/bootgatthrm/ChangeLog | 1 + apps/bootgatthrm/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/bootgatthrm/ChangeLog b/apps/bootgatthrm/ChangeLog index 2a37193a3..1e772af29 100644 --- a/apps/bootgatthrm/ChangeLog +++ b/apps/bootgatthrm/ChangeLog @@ -1 +1,2 @@ 0.01: Initial release. +0.02: Added compatibility to OpenTracks and added HRM Location \ No newline at end of file diff --git a/apps/bootgatthrm/metadata.json b/apps/bootgatthrm/metadata.json index e7bfb0762..450066622 100644 --- a/apps/bootgatthrm/metadata.json +++ b/apps/bootgatthrm/metadata.json @@ -2,7 +2,7 @@ "id": "bootgatthrm", "name": "BLE GATT HRM Service", "shortName": "BLE HRM Service", - "version": "0.01", + "version": "0.02", "description": "Adds the GATT HRM Service to advertise the measured HRM over Bluetooth.\n", "icon": "bluetooth.png", "type": "bootloader", From 059d00d09938034a4baa1bf14550137289f10985 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 13:19:11 +0200 Subject: [PATCH 1369/1725] gpstrek - Limit autosearches --- apps/gpstrek/app.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index e44537b0d..769a88ee3 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -23,7 +23,8 @@ const SETTINGS = { waypointChangeDist: 50, //distance in m to next waypoint before advancing automatically queueWaitingTime: 5, // waiting time during processing of task queue items when running with timeouts autosearch: true, - maxDistForWaypointSearch: 300 + maxDistForWaypointSearch: 300, + autosearchLimit: 3 }; let init = function(){ @@ -1398,6 +1399,7 @@ let clear = function() { let minimumDistance = Number.MAX_VALUE; let lastSearch = 0; +let autosearchCounter = 0; let updateRouting = function() { let s = WIDGETS.gpstrek.getState(); @@ -1406,16 +1408,18 @@ let updateRouting = function() { if (currentDistanceToTarget < minimumDistance){ minimumDistance = currentDistanceToTarget; } - if (SETTINGS.autosearch && !isMapOverview && lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ + if (SETTINGS.autosearch && autosearchCounter < SETTINGS.autosearchLimit && !isMapOverview && lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ Bangle.buzz(1000); setClosestWaypoint(s.route, getWaypointIndex(s.route)); minimumDistance = Number.MAX_VALUE; lastSearch = Date.now(); + autosearchCounter++; } let counter = 0; while (hasNext(s.route) && distance(s.currentPos,get(s.route)) < SETTINGS.waypointChangeDist) { next(s.route); minimumDistance = Number.MAX_VALUE; + autosearchCounter = 0; } } }; From cf37d66fa8204a984fac0718b3b41ca8d99be453 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 13:20:49 +0200 Subject: [PATCH 1370/1725] gpstrek - Draw interface smaller --- apps/gpstrek/app.js | 46 +++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 769a88ee3..8bb1c83f1 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -326,6 +326,7 @@ let getMapSlice = function(){ if (prevPoint && prevPoint.lat) current = Bangle.project(prevPoint); } + const interfaceHeight = g.getHeight()*0.1; const errorMarkerSize=3; let compassHeight = height*0.4; if (!SETTINGS.mapCompass) compassHeight=0; @@ -342,16 +343,17 @@ let getMapSlice = function(){ }; let drawInterface = function(){ + graphics.setClipRect(x,y,x+width,y+height); graphics.setFont("Vector",25).setFontAlign(0,0); graphics.setColor(graphics.theme.fg); - graphics.clearRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); - graphics.drawRect(x,y+height-g.getHeight()*0.2,x+width/4,y+height-1); - graphics.drawString("-", x+width*0.125,y+height-g.getHeight()*0.1); + graphics.clearRect(x,y+height-interfaceHeight,x+width,y+height-1); - graphics.clearRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); - graphics.drawRect(x+width*0.75,y+height-g.getHeight()*0.2,x+width-1,y+height-1); - graphics.drawString("+", x+width*0.875,y+height-g.getHeight()*0.1); + graphics.drawRect(x,y+height-interfaceHeight,x+width/4,y+height-1); + graphics.drawString("-", x+width*0.125,y+height-interfaceHeight*0.5); + + graphics.drawRect(x+width*0.75,y+height-interfaceHeight,x+width-1,y+height-1); + graphics.drawString("+", x+width*0.875,y+height-interfaceHeight*0.5); let refs = [100,200,300,400,500,800,1000,2000,5000,10000,50000]; let l = width*0.4; @@ -362,17 +364,19 @@ let getMapSlice = function(){ else scale = c; } - graphics.setFontAlign(-1,1).setFont("Vector",14); - graphics.drawString(scale+"m",x+width*0.3,y+height-g.getHeight()*0.1, true); + + let scaleHeight = interfaceHeight * 0.2; + graphics.setFontAlign(-1,-1).setFont("Vector",12); + graphics.drawString(scale+"m",x+width*0.31,y+height-interfaceHeight, true); if (isFinite(scale)){ - graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1); - graphics.drawLine(x+width*0.3,y+height-g.getHeight()*0.1,x+width*0.3,y+height-g.getHeight()*0.05); - graphics.drawLine(x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.1,x+width*0.3+scale*mapScale,y+height-g.getHeight()*0.05); + graphics.drawLine(x+width*0.3,y+height-scaleHeight,x+width*0.3+scale*mapScale,y+height-scaleHeight); + graphics.drawLine(x+width*0.3,y+height-scaleHeight,x+width*0.3,y+height-interfaceHeight); + graphics.drawLine(x+width*0.3+scale*mapScale,y+height-scaleHeight,x+width*0.3+scale*mapScale,y+height-interfaceHeight); } }; let drawMapCompass = function(){ - graphics.setClipRect(x,y,x+width,y+height); + graphics.setClipRect(x,y,x+width,y+height-interfaceHeight-1); graphics.setFont6x15(); let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; let compassCenterX = x + errorMarkerSize + 5 + compassHeight; @@ -403,7 +407,7 @@ let getMapSlice = function(){ }; let drawCurrentPos = function(){ - graphics.setClipRect(x,y,x+width,y+height); + graphics.setClipRect(x,y,x+width,y+height-interfaceHeight-1); graphics.setColor(graphics.theme.fg); if (currentPosFromGPS) { @@ -413,7 +417,7 @@ let getMapSlice = function(){ if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} if (pos[0] > x + width) {pos[0] = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} - if (pos[1] > y + height) { pos[1] = y + height - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize,x + width ,y+height);} + if (pos[1] > y + height - interfaceHeight -1) { pos[1] = y + height - errorMarkerSize - 5-interfaceHeight-1; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize-interfaceHeight-1,x + width ,y+height-interfaceHeight-1);} graphics.drawImage(arrow, pos[0]-arrow.width/2,pos[1]); graphics.setColor(0,1,0); @@ -440,9 +444,7 @@ let getMapSlice = function(){ clearTaskQueue(); //clear map view - graphics.clearRect(x,y,x+width,y+height-g.getHeight()*0.2-1); - //clear space between buttons - graphics.clearRect(x+width/4+1,y+height-g.getHeight()*0.2,x+width*0.75-1,y+height-1); + graphics.clearRect(x,y,x+width,y+height-interfaceHeight-1); if (!isMapOverview){ drawCurrentPos(); @@ -466,7 +468,7 @@ let getMapSlice = function(){ let drawChunk = function(data){ if (data.breakLoop) return; graphics.setColor(graphics.theme.fg); - graphics.setClipRect(x,y,x+width,y+height); + graphics.setClipRect(x,y,x+width,y+height-interfaceHeight-1); let finish; let last; let toDraw; @@ -807,15 +809,15 @@ let onAction = function(_,xy){ if (xy && xy.y > Bangle.appRect.y+Bangle.appRect.h-g.getHeight()*0.2 && xy.y <= Bangle.appRect.y2){ if (xy.x < Bangle.appRect.x + Bangle.appRect.w/2) if (isMapOverview) { - mapOverviewScale /= 1.5; + mapOverviewScale /= 1.33; } else { - mapLiveScale /= 1.5; + mapLiveScale /= 1.33; } else if (isMapOverview) { - mapOverviewScale *= 1.5; + mapOverviewScale *= 1.33; } else { - mapLiveScale *= 1.5; + mapLiveScale *= 1.33; } } else if (isMapOverview && xy && xy.y > Bangle.appRect.y){ scrolling = !scrolling; From d683cff4fc19cb9f15030fae1ef366f13a4f133f Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 14:51:14 +0200 Subject: [PATCH 1371/1725] gpstrek - Show icon for scrolling --- apps/gpstrek/app.js | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 8bb1c83f1..5a84eac1d 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -229,6 +229,24 @@ XX XX XX XX `); +const move = Graphics.createImage(` + X + XXX + X X X + X + X + X X X + X X X +XXXXXXXXXXXXX + X X X + X X X + X + X + X X X + XXX + X +`); + const point = Graphics.createImage(` XX XXXX @@ -331,6 +349,8 @@ let getMapSlice = function(){ let compassHeight = height*0.4; if (!SETTINGS.mapCompass) compassHeight=0; if (compassHeight > g.getHeight()*0.1) compassHeight = g.getHeight()*0.1; + let compassCenterX = x + errorMarkerSize + 8 + compassHeight; + let compassCenterY = y + errorMarkerSize + 8 + compassHeight; let mapCenterX = isMapOverview?mapOverviewX:x+(width-10)/2+compassHeight+5; let mapCenterY = isMapOverview?mapOverviewY:y+height*0.4; let mapScale = isMapOverview?mapOverviewScale : mapLiveScale; @@ -379,8 +399,6 @@ let getMapSlice = function(){ graphics.setClipRect(x,y,x+width,y+height-interfaceHeight-1); graphics.setFont6x15(); let compass = [ 0,0, 0, compassHeight, 0, -compassHeight, compassHeight,0,-compassHeight,0 ]; - let compassCenterX = x + errorMarkerSize + 5 + compassHeight; - let compassCenterY = y + errorMarkerSize + 5 + compassHeight + 3; compass = graphics.transformVertices(compass, { rotate:require("graphics_utils").degreesToRadians(180-course), x: compassCenterX, @@ -446,6 +464,13 @@ let getMapSlice = function(){ //clear map view graphics.clearRect(x,y,x+width,y+height-interfaceHeight-1); + if (isMapOverview && scrolling){ + addToTaskQueue(()=>{ + graphics.setColor(graphics.theme.fg); + graphics.drawImage(move, compassCenterX-move.width/2, compassCenterY-move.height/2); + }); + } + if (!isMapOverview){ drawCurrentPos(); } From e6785f1f65c71ce13f330ceb76060b0ece44562c Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 14:54:22 +0200 Subject: [PATCH 1372/1725] gpstrek - Autosearch for a limited distance to keep it fast --- apps/gpstrek/app.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 5a84eac1d..6da3231cf 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -23,7 +23,7 @@ const SETTINGS = { waypointChangeDist: 50, //distance in m to next waypoint before advancing automatically queueWaitingTime: 5, // waiting time during processing of task queue items when running with timeouts autosearch: true, - maxDistForWaypointSearch: 300, + maxDistForAutosearch: 300, autosearchLimit: 3 }; @@ -1299,7 +1299,7 @@ let setSlicesPage = function(change){ drawInTimeout(); }; -let setClosestWaypoint = function(route, startindex, progress){ +let setClosestWaypoint = function(route, startindex, progress, maxDist){ let s = WIDGETS.gpstrek.getState(); let stopSearchAfterFirstMatch = !isFinite(startindex); @@ -1311,7 +1311,8 @@ let setClosestWaypoint = function(route, startindex, progress){ set(route, startindex); return; } - let minDist = SETTINGS.maxDistForWaypointSearch; + if (!maxDist) maxDist = Number.MAX_VALUE; + let minDist = maxDist; let mincount = 0; let currentPos = s.currentPos; @@ -1322,6 +1323,9 @@ let setClosestWaypoint = function(route, startindex, progress){ wp = getNext(route, startindex, count); if (!wp) break; let curDist = distance(currentPos, wp); + if (curDist > maxDist) { + break; + } if (curDist < minDist){ minDist = curDist; mincount = count; @@ -1437,7 +1441,7 @@ let updateRouting = function() { } if (SETTINGS.autosearch && autosearchCounter < SETTINGS.autosearchLimit && !isMapOverview && lastSearch + 15000 < Date.now() && minimumDistance < currentDistanceToTarget - SETTINGS.waypointChangeDist){ Bangle.buzz(1000); - setClosestWaypoint(s.route, getWaypointIndex(s.route)); + setClosestWaypoint(s.route, getWaypointIndex(s.route), null, SETTINGS.maxDistForAutosearch); minimumDistance = Number.MAX_VALUE; lastSearch = Date.now(); autosearchCounter++; From 50abb6c362d3f47a8b798d61b0deddf91f3fbc56 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 15:39:41 +0200 Subject: [PATCH 1373/1725] gpstrek - Update README --- apps/gpstrek/README.md | 12 +++++++++--- apps/gpstrek/metadata.json | 2 +- apps/gpstrek/screenLost.png | Bin 0 -> 2685 bytes apps/gpstrek/screenMap.png | Bin 0 -> 2527 bytes 4 files changed, 10 insertions(+), 4 deletions(-) create mode 100644 apps/gpstrek/screenLost.png create mode 100644 apps/gpstrek/screenMap.png diff --git a/apps/gpstrek/README.md b/apps/gpstrek/README.md index c55f5a8bf..c811cd5d2 100644 --- a/apps/gpstrek/README.md +++ b/apps/gpstrek/README.md @@ -6,11 +6,17 @@ This app is inspired by and uses code from "GPS Navigation" and "Navigation comp ## Usage -Tapping or button to switch to the next information display, swipe right for the menu. +Swipe left and right to change between map, info and menu. Swipe up and down in map and info display to change the displayed information. -Choose either a route or a waypoint as basis for the display. +### Menu +Choose either a route or a waypoint as basis for the display and configure settings to your liking. -After this selection and availability of a GPS fix the compass will show a checkered flag for your destination and a green dot for possibly available waypoints on the way. +### Map +The map shows the loaded route. Current waypoint is a green dot with a circle around it that denotes how close you need to be to autoselect the next waypoint as target. +Secondary map mode is an overview map. Tap the overview to enter scrolling mode and move it around. Tap again to get back to normal function navigation. + +### Info +After selecting a target and availability of a GPS fix the compass will show a checkered flag for your destination and a green dot for possibly available waypoints on the way. Waypoints are shown with name if available and distance to waypoint. As long as no GPS signal is available the compass shows the heading from the build in magnetometer. When a GPS fix becomes available, the compass display shows the GPS course. This can be differentiated by the display of bubble levels on top and sides of the compass. diff --git a/apps/gpstrek/metadata.json b/apps/gpstrek/metadata.json index f4ce0f283..c52005d13 100644 --- a/apps/gpstrek/metadata.json +++ b/apps/gpstrek/metadata.json @@ -4,7 +4,7 @@ "version": "0.10", "description": "Helper for tracking the status/progress during hiking. Do NOT depend on this for navigation!", "icon": "icon.png", - "screenshots": [{"url":"screen1.png"},{"url":"screen2.png"},{"url":"screen3.png"},{"url":"screen4.png"}], + "screenshots": [{"url":"screenMap.png"},{"url":"screenLost.png"},{"url":"screen1.png"},{"url":"screen2.png"},{"url":"screen3.png"},{"url":"screen4.png"}], "tags": "tool,outdoors,gps", "supports": ["BANGLEJS2"], "readme": "README.md", diff --git a/apps/gpstrek/screenLost.png b/apps/gpstrek/screenLost.png new file mode 100644 index 0000000000000000000000000000000000000000..1ff4ec1be646b3060ab15d7bc17b69596322c97e GIT binary patch literal 2685 zcmeHJ`#;kQ19sM&X6i6P*JVu3Avr2iW~5v@h%<8^C$VBKxox&ZU+H3LQ@x~=9Zk1m z8)Bw&n7xjB9ZP+Tj9G|WH>^$O@_PS__w#w5&*yob&-48F{Pg6X_4C{g-3`^!(%SCr zbvkgaA3{kBW<>^Z*F-YX?zYfRkx#`QIgdf}UGls?3w5J^4mS;O;; zwmkZfVR)ga$6zNXm z#vzF_k_DDs4hdW_dZ1J-!Xx6~te4kbjfVEa1}fi>G*h5vHNuH08s3xrW?J%!_a(HC z(e8ADyO0Vi_i(kiloh{FqF2WXLIDB!rRaBX7hjJQJgCVaYTlDJAAy{RGrVB*apk+( zYMVS~_b^nxtD4c5lS#O2hsw81i_8=10wyna{LMCSjcyHjs0Ff(M1Sw{6_G?qL*~Sk zudaJ9Gg0aX8D)nQ4$G@YjQlS@-v&%xC=jMKU|D80a8)|MH#%lCKc!7wS^c__y_UXM zmnI7wvNlP%8r?K=B?X?o%MVr5kb2{v4&oa)yu(TOI{X9wv`;I-WUyCUAzFtW(Ip zKa}nA(fG*$X0Yt&+uGCOF%MZevnrKwJm&mYS$^ z`sed6NuIB-gVB|y_|Fd_|Ml0~7za!L)g-{2c1P9T-1D7#vwhbV4nGlGE3M(aPd*N? zdI~&sX^kxK%-UaIx|Ih8r@d0t!7bTf?}VUk5nv|3j z-c|Pc%6%Bg9fsYz6fvyq{TnQ$l?uY7zTpAajXK!DgrrskK+(mhYDYu*C(WiAg6Reg zo|-M%Y)4`jcZffzsMO5%zK&$k&-HE9LT3ZMF^?B{(9KB`Iq{oFxoT_x+-sFEZ8V{0 zR_a`mZfBq!ay*c#BMDOoLr06H&R~fy1qZeoB4QJ30m8Z&P1%zdT3{-}@!e(5za$w}F@%Jb$D0;dCD45i@M)YdPmB z%4^7Ns=>EJICiSp6O4pcnu8b%d*++06}@u*;Xm5@OSM2zu6a=gmX{dF#EWS_)?+&` z7=1PM6rJBHA&-Veik7uS+hZ7nT;Uz%(h&1-Hg$art!IlAbe9b-(FrYuE8}`9F;#yV z3c?$NX;=P0tlL0-U-o*I$2(`Ls2H`s!69s6KiTI!)W^@N7F;i@F|B6IWrWFRW1QP^ z{3o1x0-B4%)1@0PF26A@cPMTui9K1*!AKnY-iwj)B}Gse7yyqTWGuNPVAu)Y|&C zORloOcTE!Y3n7owLfKlk&m5b5@o5pmXn9+JI(08(wKlO+@48E6M#E!$-63-fIw(OK z9bd{tq*VNlO#-hYTA_rl)V7)J;Wrln@1|>=$s?Y6L9;;Bk7t!7yZsPk_$XcVfH(HS z`FJ>eI3B{FH^N4Q@cUo#?nCd@LIuCR@zTSu$OJaRt*q;Y8C#y^?jGG^5+vfV*kzZ(-Sk zPoCZ;xc2{$Ck*C@dOsFUK6l`raOrK(4*}o(*$%Alc-<+~9sK|FKeGgGKQqeirKVPZ zlgx0}dA^fh$T{K!6-Gp~-zNoCVNxoizkPkR^Bam%73mvu>jtrLnj~EX-c?XEDFrU^nw~K zqoJ|hWMnnZy_z0NcFGae2(XzV!Rr(_FxiJcCu$|qhMb476#&LCa*Xivlg zcJ5qcFaZ%?nU=_KHml%QwT-b!#ali*?x<`e=n=N#>;}L>tB^mF61B;}vRC^-IYI5I zT0pZ72`s&ey&6d?Q9BQkO%>b0D(N$iK|b_R)c}R^fn|7o(7s+@(7m8rQ#qVn&T+W_;mIV%*Qz@7KN4d7%dyb zJ$8ij*+ey6E4eKzwpI`>5E)ew0KV2u_A$?-pt(X=c?l~$99*iIT_BGHlsdz$*K>#+ Xw4W8Z=TB{3NG)%7ztdc|=-mGR?*7ob literal 0 HcmV?d00001 diff --git a/apps/gpstrek/screenMap.png b/apps/gpstrek/screenMap.png new file mode 100644 index 0000000000000000000000000000000000000000..f463578200b946e6a8a37cf7046e469310693828 GIT binary patch literal 2527 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 literal 0 HcmV?d00001 From 13393cc1b7571d59d161a9095927583db14ea4ee Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 16:17:28 +0200 Subject: [PATCH 1374/1725] gpstrek - Always draw elevation slice --- apps/gpstrek/app.js | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 6da3231cf..ead6206c3 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -172,14 +172,7 @@ let matchFontSize = function(graphics, text, height, width){ }; let getDoubleLineSlice = function(title1,title2,provider1,provider2){ - let lastValue1 = 0; - let lastValue2 = 0; return { - refresh: function (){ - let bigChange1 = (Math.abs(lastValue1 - provider1()) > 1); - let bigChange2 = (Math.abs(lastValue2 - provider2()) > 1); - return (bigChange1 || bigChange2); - }, draw: function (graphics, x, y, height, width){ lastDrawn = Date.now(); if (typeof title1 == "function") title1 = title1(); @@ -1464,9 +1457,7 @@ let updateSlices = function(){ if (s.currentPos && s.currentPos.lat && (s.route || s.waypoint)) { slices.push(finishSlice); } - if ((s.route && s.route.down !== undefined) || s.down != undefined) { - slices.push(eleSlice); - } + slices.push(eleSlice); slices.push(statusSlice); slices.push(status2Slice); slices.push(healthSlice); From 40324e2be2ea5d6b80054d5e91c53048902bee89 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 16:19:39 +0200 Subject: [PATCH 1375/1725] gpstrek - Remove obsolete script --- apps/gpstrek/README.md | 6 +----- apps/gpstrek/createRoute.sh | 14 -------------- 2 files changed, 1 insertion(+), 19 deletions(-) delete mode 100755 apps/gpstrek/createRoute.sh diff --git a/apps/gpstrek/README.md b/apps/gpstrek/README.md index c811cd5d2..32dc3512a 100644 --- a/apps/gpstrek/README.md +++ b/apps/gpstrek/README.md @@ -24,13 +24,9 @@ If they are on display, the source is the magnetometer and you should keep the b ### Route -Routes can be created from .gpx files containing "trkpt" elements with this script: [createRoute.sh](createRoute.sh) - -The resulting file needs to be uploaded to the watch and will be shown in the file selection menu. - The route can be mirrored to switch start and destination. -If the GPS position is closer than 30m to the next waypoint, the route is automatically advanced to the next waypoint. +If the GPS position is close enough to the next waypoint, the route is automatically advanced to the next waypoint. ### Waypoints diff --git a/apps/gpstrek/createRoute.sh b/apps/gpstrek/createRoute.sh deleted file mode 100755 index 729e6af00..000000000 --- a/apps/gpstrek/createRoute.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash -[ -z "$1" ] && echo Give gpx file name - - -xmlstarlet select -t -m '//_:trkpt' \ - --if '_:name and _:ele' -o D \ - --elif '_:ele and not(_:name)' -o C \ - --elif 'not(_:ele) and _:name' -o B \ - --else -o A -b \ - -v 'format-number(@lat,"+00.0000000;-00.0000000")' \ - -v 'format-number(@lon,"+000.0000000;-000.0000000")' \ - --if '_:ele' -v 'format-number(_:ele,"+00000;-00000")' -b \ - --if _:name -v 'format-number(string-length(_:name),"00")' -v '_:name' -b \ - -n "$1" | iconv -f utf8 -t iso8859-1 > "$(basename "$1" | sed -e "s|.gpx||").trf" From 3891e6db52efe962b4aee87827894602cfdb81c3 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 16:21:36 +0200 Subject: [PATCH 1376/1725] gpstrek - Update changelog --- apps/gpstrek/ChangeLog | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/gpstrek/ChangeLog b/apps/gpstrek/ChangeLog index 6bed50e08..0d7c06ab4 100644 --- a/apps/gpstrek/ChangeLog +++ b/apps/gpstrek/ChangeLog @@ -14,4 +14,5 @@ Averaging for smoothing compass headings Save state if route or waypoint has been chosen 0.09: Workaround a minifier issue allowing to install gpstrek with minification enabled -0.10: Automatically search for new waypoint if moving away from current target \ No newline at end of file +0.10: Adds map view of loaded route + Automatically search for new waypoint if moving away from current target \ No newline at end of file From 238542669911d81b55706a4176bc47cd2786b0c6 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Sat, 10 Jun 2023 11:14:04 -0400 Subject: [PATCH 1377/1725] Implement Matryoshka Keyboard --- apps/kbmatry/ChangeLog | 7 + apps/kbmatry/README.md | 119 +++++++++ apps/kbmatry/app-icon.js | 1 + apps/kbmatry/help.png | Bin 0 -> 5578 bytes apps/kbmatry/icon.png | Bin 0 -> 852 bytes apps/kbmatry/lib.js | 489 +++++++++++++++++++++++++++++++++++ apps/kbmatry/metadata.json | 14 + apps/kbmatry/screenshot.png | Bin 0 -> 3562 bytes apps/kbmatry/screenshot2.png | Bin 0 -> 2977 bytes apps/kbmatry/screenshot3.png | Bin 0 -> 3359 bytes apps/kbmatry/screenshot4.png | Bin 0 -> 2989 bytes apps/kbmatry/screenshot5.png | Bin 0 -> 3458 bytes apps/kbmatry/screenshot6.png | Bin 0 -> 3576 bytes 13 files changed, 630 insertions(+) create mode 100644 apps/kbmatry/ChangeLog create mode 100644 apps/kbmatry/README.md create mode 100644 apps/kbmatry/app-icon.js create mode 100644 apps/kbmatry/help.png create mode 100644 apps/kbmatry/icon.png create mode 100644 apps/kbmatry/lib.js create mode 100644 apps/kbmatry/metadata.json create mode 100644 apps/kbmatry/screenshot.png create mode 100644 apps/kbmatry/screenshot2.png create mode 100644 apps/kbmatry/screenshot3.png create mode 100644 apps/kbmatry/screenshot4.png create mode 100644 apps/kbmatry/screenshot5.png create mode 100644 apps/kbmatry/screenshot6.png diff --git a/apps/kbmatry/ChangeLog b/apps/kbmatry/ChangeLog new file mode 100644 index 000000000..98d0187ab --- /dev/null +++ b/apps/kbmatry/ChangeLog @@ -0,0 +1,7 @@ +1.00: New keyboard +1.01: Change swipe interface to taps, speed up responses (efficiency tweaks). +1.02: Generalize drawing and letter scaling. Allow custom and auto-generated character sets. Improve documentation. +1.03: Attempt to improve keyboard load time. +1.04: Make code asynchronous and improve load time. +1.05: Fix layout issue and rename library +1.06: Touch up readme, prep for IPO, add screenshots \ No newline at end of file diff --git a/apps/kbmatry/README.md b/apps/kbmatry/README.md new file mode 100644 index 000000000..73767828d --- /dev/null +++ b/apps/kbmatry/README.md @@ -0,0 +1,119 @@ +# Matryoshka Keyboard + +![icon](icon.png) + +![screenshot](screenshot.png) ![screenshot](screenshot6.png) + +![screenshot](screenshot5.png) ![screenshot](screenshot2.png) +![screenshot](screenshot3.png) ![screenshot](screenshot4.png) + +Nested key input utility. + +## How to type + +Press your finger down on the letter group that contains the character you would like to type, then tap the letter you +want to enter. Once you are touching the letter you want, release your +finger. + +![help](help.png) + +Press "shft" or "caps" to access alternative characters, including upper case letters, punctuation, and special +characters. +Pressing "shft" also reveals a cancel button if you would like to terminate input without saving. + +Press "ok" to finish typing and send your text to whatever app called this keyboard. + +Press "del" to delete the leftmost character. + +## Themes and Colors + +This keyboard will attempt to use whatever theme or colorscheme is being used by your Bangle device. + +## How to use in a program + +This was developed to match the interface implemented for kbtouch, kbswipe, etc. + +In your app's metadata, add: + +```json + "dependencies": {"textinput": "type"} +``` + +From inside your app, call: + +```js +const textInput = require("textinput"); + +textInput.input({text: ""}) + .then(result => { + console.log("The user entered: ", result); + }); +``` + +Alternatively, if you want to improve the load time of the keyboard, you can pre-generate the data the keyboard needs +to function and render like so: + +```js +const textInput = require("textinput"); + +const defaultKeyboard = textInput.generateKeyboard(textInput.defaultCharSet); +const defaultShiftKeyboard = textInput.generateKeyboard(textInput.defaultCharSetShift); +// ... +textInput.input({text: "", keyboardMain: defaultKeyboard, keyboardShift: defaultShiftKeyboard}) + .then(result => { + console.log("The user entered: ", result); + // And it was faster! + }); +``` + +This isn't required, but if you are using a large character set, and the user is interacting with the keyboard a lot, +it can really smooth the experience. + +The default keyboard has a full set of alphanumeric characters as well as special characters and buttons in a +pre-defined layout. If your application needs something different, or you want to have a custom layout, you can do so: + +```js +const textInput = require("textinput"); + +const customKeyboard = textInput.generateKeyboard([ + ["1", "2", "3", "4"], ["5", "6", "7", "8"], ["9", "0", ".", "-"], "ok", "del", "cncl" +]); +// ... +textInput.input({text: "", keyboardMain: customKeyboard}) + .then(result => { + console.log("The user entered: ", result); + // And they could only enter numbers, periods, and dashes! + }); +``` + +This will give you a keyboard with six buttons. The first three buttons will open up a 2x2 keyboard. The second three +buttons are special keys for submitting, deleting, and cancelling respectively. + +Finally if you are like, super lazy, or have a dynamic set of keys you want to be using at any given time, you can +generate keysets from strings like so: + +```js +const textInput = require("textinput"); + +const customKeyboard = textInput.generateKeyboard(createCharSet("ABCDEFGHIJKLMNOP", ["ok", "shft", "cncl"])); +const customShiftKeyboard = textInput.generateKeyboard(createCharSet("abcdefghijklmnop", ["ok", "shft", "cncl"])); +// ... +textInput.input({text: "", keyboardMain: customKeyboard, keyboardShift: customShiftKeyboard}) + .then(result => { + console.log("The user entered: ", result); + // And the keyboard was automatically generated to include "ABCDEFGHIJKLMNOP" plus an OK button, a shift button, and a cancel button! + }); +``` + +The promise resolves when the user hits "ok" on the input or if they cancel. If the user cancels, undefined is +returned, although the user can hit "OK" with an empty string as well. If you define a custom character set and +do not include the "ok" button your user will be soft-locked by the keyboard. Fair warning! + +At some point I may add swipe-for-space and swipe-for-delete as well as swipe-for-submit and swipe-for-cancel +however I want to have a good strategy for the touch screen +[affordance](https://careerfoundry.com/en/blog/ux-design/affordances-ux-design/). + +## Secret features + +If you long press a key with characters on it, that will enable "Shift" mode. + diff --git a/apps/kbmatry/app-icon.js b/apps/kbmatry/app-icon.js new file mode 100644 index 000000000..a4b0ecc16 --- /dev/null +++ b/apps/kbmatry/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwcBkmSpICVz//ABARGCBIRByA/Dk+AAgUH8AECgP4kmRCwX4n+PAoXH8YEC+IRC4HguE4/+P/EfCIXwgARHn4RG+P/j4RDJwgRBGQIRIEYNxCIRECGpV/CIXAgY1P4/8v41JOgeOn4RDGo4jER5Y1FCJWQg4RDYpeSNIQAMkmTCBwRBz4IG9YRIyA8COgJHBhMgI4+QyVJAYJrC9Mkw5rHwFAkEQCImSCJvAhIRBpazFGo3HEYVJkIjGCIIUCAQu/CKGSGo4jPLIhHMNayPLYo6zBYozpH9MvdI+TfaGSv4KHCI+Qg4GDI4IABg5HGyIYENYIAB45rGyPACKIIDx/4gF/CIPx/8fCIY1F4H8CJPA8BtCa4I1DCJFxCIYXBCILXBGpXHGplwn5HPuE4NaH4n6PLyC6CgEnYpeSpICDdJYRFz4RQARQ")) \ No newline at end of file diff --git a/apps/kbmatry/help.png b/apps/kbmatry/help.png new file mode 100644 index 0000000000000000000000000000000000000000..6eef5694b06410b6cf8af39f59702b5b5bb441e6 GIT binary patch literal 5578 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 literal 0 HcmV?d00001 diff --git a/apps/kbmatry/icon.png b/apps/kbmatry/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..058df4487310ce3148fd3b3af424639896ea742b GIT binary patch literal 852 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!phSslL`iUdT1k0gQ7S`0VrE{6US4X6f{C7? zo@t7E1kf6$qn<8~AsNnBrzI9W4&Z36o@ML%{>mMjwH;5n7NtM_TD4K9e#flks&y^$xi7jCm+d>ct7T>G#G04}g_~C|?f&7rezxMj>s%w4!srKy65vw$yKkMO#^wA z3p*a!E&IP}Lh-(fJga^M_+Ah=>Uf4x^qa%t8J8@#hOcz;t9{{dLBv(~@|y&Hm;S2I z6TLNB-^1irb!G)zv~b#6+E;!4!@^k$6uX2jZ)yD&es#{dD^f{Ixh%gfRCWv&nLeY< z_Qridu(Ou(B^S3FcbA0LzJ8=Ki96@bqI-P7HD4JHE!%%CTAx2|)1T+(Gp5f!c$x9n z_G^l~#-$C+9nZekC{H>s`{DiScD~0B>b4I2H$Pj3#z*}N{2#kcxcJ63rFRUQo)%xq zSMob;|EicTLB60nT;pq_){`jqk_(CN7*6ThIMw?7@;&nU5sRnZ@f)=-vfK{&E}!CyUdwZf2Dr?`vZxu9h#$Me%jvec(R&(gN1PHovY_RlpGLskJ)Ikk)7fC zAMwhlJAc=f2IjYG+LbqSot0fx?p-=@-KzZ9IRz0YVFQdZ4MX4P4f7xIEIM@iXUu$1 zT!b`t9TR-j`|#=7L)A}$-~I%}4kRL$Y!rSaJHL80|5X;=K$#;l0g3z}$+gZ_$G>W6 z?YY{XwMfeCk$@{w5WUk zRJ8r^it;x7X< num - mandatoryExtraKeys); + let keyIndex = 0, charIndex = 0; + let keySpace = preferredNumChars[charIndex] * preferredNumKeys[keyIndex]; + while (keySpace < text.length) { + const numKeys = preferredNumKeys[keyIndex]; + const numChars = preferredNumChars[charIndex]; + const nextNumKeys = preferredNumKeys[keyIndex]; + const nextNumChars = preferredNumChars[charIndex]; + if (numChars <= numKeys) { + charIndex++; + } else if ((text.length / nextNumChars) < nextNumKeys) { + charIndex++; + } else { + keyIndex++; + } + keySpace = preferredNumChars[charIndex] * preferredNumKeys[keyIndex]; + } + const charsPerKey = preferredNumChars[charIndex]; + let charSet = []; + for (let i = 0; i < text.length; i += charsPerKey) { + charSet.push(text.slice(i, i + charsPerKey) + .split("")); + } + charSet = charSet.concat(specials); + return charSet; +} + +/** + * Given the width, height, padding (between chars) and number of characters that need to fit horizontally / + * vertically, this function attempts to select the largest font it can that will still fit within the bounds when + * drawing a grid of characters. Does not handle multi-letter entries well, assumes we are laying out a grid of + * single characters. + * @param width The total width available for letters (px) + * @param height The total height available for letters (px) + * @param padding The amount of space required between characters (px) + * @param gridWidth The number of characters wide the rendering is going to be + * @param gridHeight The number of characters high the rendering is going to be + * @returns {{w: number, h: number, font: string}} + */ +function getBestFont(width, height, padding, gridWidth, gridHeight) { + let font = "4x6"; + let w = 4; + let h = 6; + const charMaxWidth = width / gridWidth - padding * gridWidth; + const charMaxHeight = height / gridHeight - padding * gridHeight; + if (charMaxWidth >= 6 && charMaxHeight >= 8) { + w = 6; + h = 8; + font = "6x8"; + } + if (charMaxWidth >= 12 && charMaxHeight >= 16) { + w = 12; + h = 16; + font = "6x8:2"; + } + if (charMaxWidth >= 12 && charMaxHeight >= 20) { + w = 12; + h = 20; + font = "12x20"; + } + if (charMaxWidth >= 20 && charMaxHeight >= 20) { + font = "Vector" + Math.floor(Math.min(charMaxWidth, charMaxHeight)); + const dims = g.setFont(font) + .stringMetrics("W"); + w = dims.width + h = dims.height; + } + return {w, h, font}; +} + + +/** + * Generate a set of key objects given an array of arrays of characters to make available for typing. + * @param characterArrays + * @returns {Promise} + */ +function getKeys(characterArrays) { + if (Array.isArray(characterArrays)) { + return Promise.all(characterArrays.map((chars, i) => generateKeyFromChars(characterArrays, i))); + } else { + return generateKeyFromChars(characterArrays, 0); + } +} + +function generateKeyFromChars(chars, i) { + return new Promise((resolve, reject) => { + let special; + if (!Array.isArray(chars[i]) && chars[i].length > 1) { + // If it's not an array we assume it's a string. Fingers crossed I guess, lol. Be nice to my functions! + special = chars[i]; + } + const key = getKeyByIndex(chars, i, special); + if (!special) { + key.chars = chars[i]; + } + if (key.chars.length > 1) { + key.pendingSubKeys = true; + key.getSubKeys = () => getKeys(key.chars); + resolve(key) + } else { + resolve(key); + } + }) +} + + +/** + * Given a set of characters (or sets of characters) get the position and dimensions of the i'th key in that set. + * @param charSet An array where each element represents a key on the hypothetical keyboard. + * @param i The index of the key in the set you want to get dimensions for. + * @param special The special property of the key - for example "del" for a key used for deleting characters. + * @returns {{special, bord: number, pad: number, w: number, x: number, h: number, y: number, chars: *[]}} + */ +function getKeyByIndex(charSet, i, special) { + // Key dimensions + const keyboardOffsetY = 40; + const margin = 3; + const padding = 4; + const border = 2; + const gridWidth = Math.ceil(Math.sqrt(charSet.length)); + const gridHeight = Math.ceil(charSet.length / gridWidth); + const keyWidth = Math.floor((g.getWidth()) / gridWidth) - margin; + const keyHeight = Math.floor((g.getHeight() - keyboardOffsetY) / gridHeight) - margin; + const gridx = i % gridWidth; + const gridy = Math.floor(i / gridWidth) % gridWidth; + const x = gridx * (keyWidth + margin); + const y = gridy * (keyHeight + margin) + keyboardOffsetY; + const w = keyWidth; + const h = keyHeight; + // internal Character spacing + const numChars = charSet[i].length; + const subGridWidth = Math.ceil(Math.sqrt(numChars)); + const subGridHeight = Math.ceil(numChars / subGridWidth); + const bestFont = getBestFont(w - padding, h - padding, 0, subGridWidth, subGridHeight); + const letterWidth = bestFont.w; + const letterHeight = bestFont.h; + const totalWidth = (subGridWidth - 1) * (w / subGridWidth) + padding + letterWidth + 1; + const totalHeight = (subGridHeight - 1) * (h / subGridHeight) + padding + letterHeight + 1; + const extraPadH = (w - totalWidth) / 2; + const extraPadV = (h - totalHeight) / 2; + return { + x, + y, + w, + h, + pad : padding, + bord : border, + chars: [], + special, + subGridWidth, + subGridHeight, + extraPadH, + extraPadV, + font : bestFont.font + }; +} + + +/** + * This is probably the most intense part of this keyboard library. If you don't do it ahead of time, it will happen + * when you call the keyboard, and it can take up to 1.5 seconds for a full keyboard. Not a super great user experience + * SO if you have a tiny keyset, don't worry about it so much, but if you want to maximize performance, generate + * a keyboard ahead of time and pass it into the "keyboard" argument of the object in the "input" function. + * @param charSets + * @returns {Promise} + */ +function generateKeyboard(charSets) { + if (!Array.isArray(charSets)) { + // User passed a string. We will divvy it up into a real set of subdivided characters. + charSets = createCharSet(charSets, ["ok", "del", "shft"]); + } + return getKeys(charSets); +} + +const defaultCharSet = [ + ["a", "b", "c", "d", "e", "f", "g", "h", "i"], + ["j", "k", "l", "m", "n", "o", "p", "q", "r"], + ["s", "t", "u", "v", "w", "x", "y", "z", "0"], + ["1", "2", "3", "4", "5", "6", "7", "8", "9"], + [" ", "`", "-", "=", "[", "]", "\\", ";", "'"], + [",", ".", "/"], + "ok", + "shft", + "del" +]; + +const defaultCharSetShift = [ + ["A", "B", "C", "D", "E", "F", "G", "H", "I"], + ["J", "K", "L", "M", "N", "O", "P", "Q", "R"], + ["S", "T", "U", "V", "W", "X", "Y", "Z", ")"], + ["!", "@", "#", "$", "%", "^", "&", "*", "("], + ["~", "_", "+", "{", "}", "|", ":", "\"", "<"], + [">", "?"], + "ok", + "shft", + "del" +]; + +/** + * Given initial options, allow the user to type a set of characters and return their entry in a promise. If you do not + * submit your own character set, a default alphanumeric keyboard will display. + * @param options The object containing initial options for the keyboard. + * @param {string} options.text The initial text to display / edit in the keyboard + * @param {array[]|string[]} [options.keyboardMain] The primary keyboard generated with generateKeyboard() + * @param {array[]|string[]} [options.keyboardShift] Like keyboardMain, but displayed when shift / capslock is pressed. + * @returns {Promise} + */ +function input(options) { + options = options || {}; + let typed = options.text || ""; + let resolveFunction = () => {}; + let shift = false; + let caps = false; + let activeKeySet; + + const offsetX = 0; + const offsetY = 40; + + E.showMessage("Loading..."); + let keyboardPromise; + if (options.keyboardMain) { + keyboardPromise = Promise.all([options.keyboardMain, options.keyboardShift || Promise.resolve([])]); + } else { + keyboardPromise = Promise.all([generateKeyboard(defaultCharSet), generateKeyboard(defaultCharSetShift)]) + } + + let mainKeys; + let mainKeysShift; + + /** + * Draw an individual keyboard key - handles special formatting and the rectangle pad, followed by the character + * rendering. Returns a promise so that you can do many of these in a loop without blocking the thread. + * @param key + */ + function drawKey(key) { + let bgColor = g.theme.bg; + if (key.special) { + if (key.special === "ok") bgColor = "#0F0"; + if (key.special === "cncl") bgColor = "#F00"; + if (key.special === "del") bgColor = g.theme.bg2; + if (key.special === "spc") bgColor = g.theme.bg2; + if (key.special === "shft") { + bgColor = shift ? g.theme.bgH : g.theme.bg2; + } + if (key.special === "caps") { + bgColor = caps ? g.theme.bgH : g.theme.bg2; + } + g.setColor(bgColor) + .fillRect({x: key.x, y: key.y, w: key.w, h: key.h}); + } + g.setColor(g.theme.fg) + .drawRect({x: key.x, y: key.y, w: key.w, h: key.h}); + drawChars(key); + } + + /** + * Draw the characters for a given key - this handles the layout of all characters needed for the key, whether the + * key has 12 characters, 1, or if it represents a special key. + * @param key + */ + function drawChars(key) { + const numChars = key.chars.length; + if (key.special) { + g.setColor(g.theme.fg) + .setFont("12x20") + .setFontAlign(-1, -1) + .drawString(key.special, key.x + key.w / 2 - g.stringWidth(key.special) / 2, key.y + key.h / 2 - 10, false); + } else { + g.setColor(g.theme.fg) + .setFont(key.font) + .setFontAlign(-1, -1); + for (let i = 0; i < numChars; i++) { + const gridX = i % key.subGridWidth; + const gridY = Math.floor(i / key.subGridWidth) % key.subGridWidth; + const charOffsetX = gridX * (key.w / key.subGridWidth); + const charOffsetY = gridY * (key.h / key.subGridHeight); + const posX = key.x + key.pad + charOffsetX + key.extraPadH; + const posY = key.y + key.pad + charOffsetY + key.extraPadV; + g.drawString(key.chars[i], posX, posY, false); + } + } + } + + /** + * Get the key set corresponding to the indicated shift state. Allows easy switching between capital letters and + * lower case by just switching the boolean passed here. + * @param shift + * @returns {*[]} + */ + function getMainKeySet(shift) { + return shift ? mainKeysShift : mainKeys; + } + + /** + * Draw all the given keys on the screen. + * @param keys + */ + function drawKeys(keys) { + keys.forEach(key => { + drawKey(key); + }); + } + + /** + * Draw the text that the user has typed so far, includes a cursor and automatic truncation when the string is too + * long. + * @param text + * @param cursorChar + */ + function drawTyped(text, cursorChar) { + let visibleText = text; + let ellipsis = false; + const maxWidth = 176 - 40; + while (g.setFont("12x20") + .stringWidth(visibleText) > maxWidth) { + ellipsis = true; + visibleText = visibleText.slice(1); + } + if (ellipsis) { + visibleText = "..." + visibleText; + } + g.setColor(g.theme.bg2) + .fillRect(5, 5, 171, 30); + g.setColor(g.theme.fg2) + .setFont("12x20") + .drawString(visibleText + cursorChar, 15, 10, false); + } + + /** + * Clear the space on the screen that the keyboard occupies (not the text the user has written). + */ + function clearKeySpace() { + g.setColor(g.theme.bg) + .fillRect(offsetX, offsetY, 176, 176); + } + + /** + * Based on a touch even, determine which key was pressed by the user. + * @param touchEvent + * @param keys + * @returns {*} + */ + function getTouchedKey(touchEvent, keys) { + return keys.find((key) => { + let relX = touchEvent.x - key.x; + let relY = touchEvent.y - key.y; + return relX > 0 && relX < key.w && relY > 0 && relY < key.h; + }) + } + + /** + * On a touch event, determine whether a key is touched and take appropriate action if it is. + * @param button + * @param touchEvent + */ + function keyTouch(button, touchEvent) { + const pressedKey = getTouchedKey(touchEvent, activeKeySet); + if (pressedKey == null) { + // User tapped empty space. + swapKeySet(getMainKeySet(shift !== caps)); + return; + } + if (pressedKey.pendingSubKeys) { + // We have to generate the subkeys for this key still, but we decided to wait until we needed it! + pressedKey.pendingSubKeys = false; + pressedKey.getSubKeys() + .then(subkeys => { + pressedKey.subKeys = subkeys; + keyTouch(undefined, touchEvent); + }) + return; + } + // Haptic feedback + Bangle.buzz(25, 1); + if (pressedKey.subKeys) { + // Hold press for "shift!" + if (touchEvent.type > 1) { + shift = !shift; + swapKeySet(getMainKeySet(shift !== caps)); + } else { + swapKeySet(pressedKey.subKeys); + } + } else { + if (pressedKey.special) { + evaluateSpecialFunctions(pressedKey); + } else { + typed = typed + pressedKey.chars; + shift = false; + drawTyped(typed, ""); + swapKeySet(getMainKeySet(shift !== caps)); + } + } + } + + /** + * Manage setting, generating, and rendering new keys when a key set is changed. + * @param newKeys + */ + function swapKeySet(newKeys) { + activeKeySet = newKeys; + clearKeySpace(); + drawKeys(activeKeySet); + } + + /** + * Determine if the key contains any of the special strings that have their own special behaviour when pressed. + * @param key + */ + function evaluateSpecialFunctions(key) { + switch (key.special) { + case "ok": + setTimeout(() => resolveFunction(typed), 50); + break; + case "del": + typed = typed.slice(0, -1); + drawTyped(typed, ""); + break; + case "shft": + shift = !shift; + swapKeySet(getMainKeySet(shift !== caps)); + break; + case "caps": + caps = !caps; + swapKeySet(getMainKeySet(shift !== caps)); + break; + case "cncl": + setTimeout(() => resolveFunction(), 50); + break; + case "spc": + typed = typed + " "; + break; + } + } + + let isCursorVisible = true; + + const blinkInterval = setInterval(() => { + if (!activeKeySet) return; + isCursorVisible = !isCursorVisible; + if (isCursorVisible) { + drawTyped(typed, "_"); + } else { + drawTyped(typed, ""); + } + }, 200); + + + /** + * We return a promise but the resolve function is assigned to a variable in the higher function scope. That allows + * us to return the promise and resolve it after we are done typing without having to return the entire scope of the + * application within the promise. + */ + return new Promise((resolve, reject) => { + g.clear(true); + resolveFunction = resolve; + keyboardPromise.then((result) => { + mainKeys = result[0]; + mainKeysShift = result[1]; + swapKeySet(getMainKeySet(shift !== caps)); + Bangle.setUI({ + mode: "custom", touch: keyTouch + }); + Bangle.setLocked(false); + }) + }).then((result) => { + g.clearRect(Bangle.appRect); + clearInterval(blinkInterval); + Bangle.setUI(); + return result; + }); +} + +exports.input = input; +exports.generateKeyboard = generateKeyboard; +exports.defaultCharSet = defaultCharSet; +exports.defaultCharSetShift = defaultCharSetShift; +exports.createCharSet = createCharSet; \ No newline at end of file diff --git a/apps/kbmatry/metadata.json b/apps/kbmatry/metadata.json new file mode 100644 index 000000000..793286180 --- /dev/null +++ b/apps/kbmatry/metadata.json @@ -0,0 +1,14 @@ +{ "id": "kbmatry", + "name": "Matryoshka Keyboard", + "version":"1.06", + "description": "A library for text input via onscreen keyboard. Easily enter characters with nested keyboards.", + "icon": "icon.png", + "type":"textinput", + "tags": "keyboard", + "supports" : ["BANGLEJS2"], + "screenshots": [{"url":"screenshot.png"},{"url":"screenshot6.png"},{"url":"screenshot2.png"},{"url":"screenshot3.png"},{"url":"screenshot4.png"},{"url":"screenshot5.png"},{"url": "help.png"}], + "readme": "README.md", + "storage": [ + {"name":"textinput","url":"lib.js"} + ] +} diff --git a/apps/kbmatry/screenshot.png b/apps/kbmatry/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..08bb366e48d3f7b5b1f35d063fba50e2dc97e11a GIT binary patch literal 3562 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 S%sYGD03!o4RJ9)V$$tR#q^i*X literal 0 HcmV?d00001 diff --git a/apps/kbmatry/screenshot2.png b/apps/kbmatry/screenshot2.png new file mode 100644 index 0000000000000000000000000000000000000000..21874244d9b17efb3469606b6423eaa34a070dce GIT binary patch literal 2977 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 literal 0 HcmV?d00001 diff --git a/apps/kbmatry/screenshot3.png b/apps/kbmatry/screenshot3.png new file mode 100644 index 0000000000000000000000000000000000000000..1f0c732657e405ed8e4b0c8264c32f76e272f086 GIT binary patch literal 3359 zcmXw6c{tST`~J*k88t*SYV4(uEp@UDvW@MKFoQERl`TRjYZxN?(qgI5qE5;TW1W$0 zDv`pNFt#z~n2vob%gEMG*Z2JXxS!{_uJ?Wac<%Rp@8^2c&f8=5!w{n{~_vq@RGxe?LanGn2Se7Fha+7n$J>5c+t8on;FKMTYDXSx{bN5$jdC^sC&5WaFjGC0=vn)jJL+d zYjfDq`S;Wb_sW7e%t8~xw!^(GEJb$euwMRPCn=mY=QlMnCKtWUjuZ{! zUePaKyxKro(;pcQ=cma2>WQ>P+#=OFW)1KDvQu~WcW?+ypAVjtXBk@ZkjLugtyt2} z#u_Xa=E7N3S0Vy)LVTV=Fl@~U)rTVuSx*)ip`vO*Uh~7nAGX+b5&^RL2wc?8R|MYt zhrY#}E_2FoK?zYr_V#6vSI67CvqgC?h8g)q^K>40m9JdNk!^kUW2biX4SzWGh+Ci% z!tl`mDJO3i7p`(qV4dn7&gJFPYpT_!rpG#>QB}<^Q&*jej!u|kw>Q_U@JrjcP5!se zu(_2Jf{O$1&;^vDQqRV_^$U*}hDV~>{S89(7(G|UtQkG1W?%J=y2iy6; z*8>6&o>TRx!P$;d{%{}x!EVf&)}x&H=fiOIEB>&-?fkGoUU0`y<9?M+Ik}#e2>IYf zW}uBst8B-KprvBkx=c57oYCyD%n^~08A^1jv<20I&kMG6z}G8Q`To8O2TNKiF!9T2&*ee;o95fUuSI?>RGanexvz zGc{yE^NvR20s_n0(4%cNfg%kHtgmhvr)u)tfhi|Gzq4z@aHnP>db55+h%1*|m~nYf z9V&7fix;tH%&8DZy>ygmqX`T!a(KzAX259Zr-w9OoZc)F?JQl@DByFnGc2nfj;n;e z2_vR5dfV@hmq4hugt>nwnW)nhTU;PYK>3zGLs4i$Oxqpl0Es-R8-0%>{G4c(^9v4? zP9~-6=xfD6qb?xt(Q^0Zbc*VDT9 z%Lg7%@ytvE3AG~kbplD z*-@qRC5$`r-7m&IEjFPGaj*UPCvt*p1}B7WLbY%NP}e}jMxLUjhjq#4V;@8aq3)!^ zh3p;P?=l_szYVx?8&28Ms?_Ch&Bx6bi@LkRMA?m)uGx>X4v3=e)FnMCBt|?FI^6dJ zSU>i&ll&AI2bDRVaucycba@zEBKkfV_X09++;r$nTyy{~qPV9Fmwb;k^$o{5e4cdx zVsuIZsPlAiq(;-4J^P=H%#XJ--8xL$1BYMNEiX=L5pxiC?>BxWci6aH0e-JXnQ5$xhM;~6ej-6U-$;-4MjA<%O&R?sk);fPB8DO(c2?=4T z=$tE2_vEtr>I)z_5r2C=6!SP}3-HsgLz||L>=#WU!NLUSXONEaqz~BU#}Dcs7V+Ej zwBKvdb&#hdIz6jMsb_7)LlNEzi>eB<$vI6nW^5@}5hVjpBt5e&rbuF7NdiTi&I_r2 z$WkI67-2}I9B(;75ViAP!6i5fha4xnW{ie%P7G&nFw}L! zdsW9j0Dl#XVE83-q5*}ny68YsoMptTPf@F!Ps`bJstd9piXcaEL$&SqS`+XoVaf(A z&ShdixPQ>4No8B+4Z&$Dg6ktzO~s8#L(O3H;_Ow4yGh!Z0s7s2ZKH6mO-(T{m?7FM z)@)FCsK9ZCR^699iRwOw*=JfgtpHH~)9_5MEth9Z;RY<8@vB(TtJE8*K z@Dh|&PdtgrOn!$ySO64;B#uY%n2k1H!2MvoHwl=ai&VbutuY^|ur)$Dr`TRiA=*?6 z#96a!U;InRXDov~>z1)~0pQ~a1Mdul*K5;g$PsVDGs|!6n}2Fkw_T10A8M-?e?NEr zM44fTVIb!K*U_yCEEgRT9KmIFn=IMJshPT|J@{vx6c|c{@a4@CJF*8BQ6*!Yu_8>{ zA6;XH#f%a@t^8HiV1o3`?I0pX+3B>&ze$psPK_xbpNt#%5MvnEGYuA zai{&;q>PqI-bG=03eH@Gg4r{3jPIK11#Y>3^2fM2imC!_=2vTyE?|kb4@-%uoYrp( zS$P?7x}xQ+LC}6z9~j4tUUfigw?R3qZlUNcyt9l(bsS2`J^PQ$zSAqKl<}pCy{Dar>L8i!;_R<%<5`?*DOvtaC0F1|{!_d9~onAMd zBt74BYi}Sl1*h^Ctr1<_PxcrnkKtx*zFkb{1pXf{$nY| zUsyp<`8Z$Z{g;FWw|q$0S{@|0AD5#0A8l58TDXgP%a*bK(xFv*aKxc#5!Dv#{)pMte4gHS^}D>Q<2Vqfw}wDL;>AXQstg4 z{%&H$rE%|WnpYA20-+9`9Ks{^;s_qVNM_U>+Vh0>d!FE0-3tNh9>q0P0oegkQKkT< z-=)%bOyZoN;_}fkJj_jjKQkFjaVePX^ zib12~$-w>SuD<_i<#QR%jn^MBLAtgWi{5wLqg*!Lvhs40Q@uALw1^2Ip$bKAzzK`F zC6YUK#3wJk;{N~_7I}lZBwc~9wd8oE+lK7X}VXz#@Cph5pt|3)VrF!TT)< zmAwC#1j0`2uRYYkRRsTgT&P0%`aR61Lv)O&^ynD<&3a8Ue^A%?wX>6?FdFp<&f;tjSm#0{KJNTfqyWnPCy8kj zd-qNYjE%?2^gQ`D3SE{YAD}5X3EvhZ1Vt=KH@8^EIKXH%yR8C7Ht--^x&|x~-UQWh fz*|hJEz2qAeHE27kuuo(@c`Bq_U09)gv9>?)dX^_ literal 0 HcmV?d00001 diff --git a/apps/kbmatry/screenshot4.png b/apps/kbmatry/screenshot4.png new file mode 100644 index 0000000000000000000000000000000000000000..de2f90bee69987f37b68a5b629cb0d4cc8f15b96 GIT binary patch literal 2989 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

    =)K0Lp-la>Tmr)hS0c^U1GDq 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 VzP=*r(cV%85X{b+mKu|y{twp1VzmGO literal 0 HcmV?d00001 diff --git a/apps/kbmatry/screenshot6.png b/apps/kbmatry/screenshot6.png new file mode 100644 index 0000000000000000000000000000000000000000..20de7ddc1c44ec14693caf9dfa5316eb7ebad0f7 GIT binary patch literal 3576 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 y@?+nz!eHyM4De&$vHY_2U|N~u0000 Date: Sat, 10 Jun 2023 11:47:11 -0400 Subject: [PATCH 1378/1725] kbmatry: Fix jsdoc inaccuracies, add comments --- apps/kbmatry/lib.js | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/apps/kbmatry/lib.js b/apps/kbmatry/lib.js index 6c32e5a81..a7a434dad 100644 --- a/apps/kbmatry/lib.js +++ b/apps/kbmatry/lib.js @@ -94,6 +94,14 @@ function getKeys(characterArrays) { } } +/** + * Given a set of characters, determine whether or not this needs to be a matryoshka key, a basic key, or a special key. + * Then generate that key. If the key is a matryoshka key, we queue up the generation of its sub-keys for later to + * improve load times. + * @param chars + * @param i + * @returns {Promise} + */ function generateKeyFromChars(chars, i) { return new Promise((resolve, reject) => { let special; @@ -170,9 +178,11 @@ function getKeyByIndex(charSet, i, special) { /** * This is probably the most intense part of this keyboard library. If you don't do it ahead of time, it will happen - * when you call the keyboard, and it can take up to 1.5 seconds for a full keyboard. Not a super great user experience - * SO if you have a tiny keyset, don't worry about it so much, but if you want to maximize performance, generate - * a keyboard ahead of time and pass it into the "keyboard" argument of the object in the "input" function. + * when you call the keyboard, and it can take up to 0.5 seconds for a full alphanumeric keyboard. Depending on what + * is an acceptable user experience for you, and how many keys you are actually generating, you may choose to do this + * ahead of time and pass the result to the "input" function of this library. NOTE: This function would need to be + * called once per key set - so if you have a keyboard with a "shift" key you'd need to run it once for your base + * keyset and once for your shift keyset. * @param charSets * @returns {Promise} */ @@ -184,6 +194,7 @@ function generateKeyboard(charSets) { return getKeys(charSets); } +// Default layout const defaultCharSet = [ ["a", "b", "c", "d", "e", "f", "g", "h", "i"], ["j", "k", "l", "m", "n", "o", "p", "q", "r"], @@ -196,6 +207,7 @@ const defaultCharSet = [ "del" ]; +// Default layout with shift pressed const defaultCharSetShift = [ ["A", "B", "C", "D", "E", "F", "G", "H", "I"], ["J", "K", "L", "M", "N", "O", "P", "Q", "R"], @@ -241,7 +253,7 @@ function input(options) { /** * Draw an individual keyboard key - handles special formatting and the rectangle pad, followed by the character - * rendering. Returns a promise so that you can do many of these in a loop without blocking the thread. + * rendering. * @param key */ function drawKey(key) { @@ -347,7 +359,7 @@ function input(options) { } /** - * Based on a touch even, determine which key was pressed by the user. + * Based on a touch event, determine which key was pressed by the user. * @param touchEvent * @param keys * @returns {*} From 3d7575438ecde6875bbc9ba2cf12a2c366e842b0 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 18:28:07 +0200 Subject: [PATCH 1379/1725] gpstrek - Use locale for scale --- apps/gpstrek/app.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index ead6206c3..a3b6bdd45 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -368,19 +368,20 @@ let getMapSlice = function(){ graphics.drawRect(x+width*0.75,y+height-interfaceHeight,x+width-1,y+height-1); graphics.drawString("+", x+width*0.875,y+height-interfaceHeight*0.5); - let refs = [100,200,300,400,500,800,1000,2000,5000,10000,50000]; + let refs = [10,20,50,100,200,300,400,500,800,1000,2000,5000,10000,50000]; let l = width*0.4; - let scale = "<100"; + let scale = refs[0]; for (let c of refs){ if (c*mapScale > l) break; else scale = c; } + let scaleString = loc.distance(scale, 2); let scaleHeight = interfaceHeight * 0.2; graphics.setFontAlign(-1,-1).setFont("Vector",12); - graphics.drawString(scale+"m",x+width*0.31,y+height-interfaceHeight, true); + graphics.drawString(scaleString,x+width*0.31,y+height-interfaceHeight, true); if (isFinite(scale)){ graphics.drawLine(x+width*0.3,y+height-scaleHeight,x+width*0.3+scale*mapScale,y+height-scaleHeight); graphics.drawLine(x+width*0.3,y+height-scaleHeight,x+width*0.3,y+height-interfaceHeight); From 5433953ca90d4384382488db2c9277089c98c51c Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 18:29:14 +0200 Subject: [PATCH 1380/1725] gpstrek - Fix drawing finish icon --- apps/gpstrek/app.js | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index a3b6bdd45..0fe3ad72f 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -509,6 +509,7 @@ let getMapSlice = function(){ data.poly.push((startingPoint.y-toDraw.y)*-1); if (j < SETTINGS.mapChunkSize - 1) data.i = data.i + (reverse?-1:1); } + finish = isLast(route, data.i - 1); data.poly = graphics.transformVertices(data.poly, mapTrans); graphics.drawPoly(data.poly, false); @@ -525,13 +526,10 @@ let getMapSlice = function(){ } graphics.drawString(c.n, data.poly[c.i] + 10, data.poly[c.i+1]); } - - finish = isLast(route, currentRouteIndex + data.i); if (finish) graphics.drawImage(finishIcon, data.poly[data.poly.length - 2] -5, data.poly[data.poly.length - 1] - 4); - - if (last) { + else if (last) { graphics.drawImage(cross, data.poly[data.poly.length - 2] - cross.width/2, data.poly[data.poly.length - 1] - cross.height/2); } @@ -1055,12 +1053,12 @@ let prev = function(route){ }; let getLast = function(route){ - lastMirror = route.mirror; return get(route, route.indexToOffset.length - 1); }; let isLast = function(route, index){ if (isNaN(index)) index = route.index; + index = getWaypointIndex(route, index); return route.indexToOffset.length - 1 == index; }; From f7e44da9e2c7ef50f126d847b4aadde044096cad Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 18:30:07 +0200 Subject: [PATCH 1381/1725] gpstrek - Autosearch after loading a route --- apps/gpstrek/app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 0fe3ad72f..76cf56a5a 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -1083,6 +1083,7 @@ let handleLoading = function(c){ E.showMenu(); let s = WIDGETS.gpstrek.getState(); s.route = loadRouteData(c, showProgress); + if(SETTINGS.autosearch) setClosestWaypoint(s.route, 0, showProgress); s.waypoint = null; removeMenu(); }; From c1d7a4ed735c3c2ec91c1e07ced8d271149e6fc2 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 10 Jun 2023 21:30:40 +0100 Subject: [PATCH 1382/1725] sched: kick off timers on upload --- apps/sched/interface.html | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/apps/sched/interface.html b/apps/sched/interface.html index 5730b5741..b67029fa2 100644 --- a/apps/sched/interface.html +++ b/apps/sched/interface.html @@ -86,6 +86,16 @@ function eventToAlarm(event, offsetMs) { } function upload() { + // kick off all the (active) timers + const now = new Date(); + const currentTime = now.getHours()*3600000 + + now.getMinutes()*60000 + + now.getSeconds()*1000; + + for (const alarm of alarms) + if (alarm.timer != undefined && alarm.on) + alarm.t = currentTime + alarm.timer; + Util.showModal("Saving..."); Util.writeStorage("sched.json", JSON.stringify(alarms), () => { Puck.write(`\x10require("sched").reload();\n`, () => { @@ -125,9 +135,7 @@ function renderAlarm(alarm, exists) { tdType.textContent = "Timer"; inputTime.onchange = e => { alarm.timer = hmsToMs(inputTime.value); - const now = new Date(); - const currentTime = (now.getHours()*3600000)+(now.getMinutes()*60000)+(now.getSeconds()*1000); - alarm.t = currentTime + alarm.timer; + // alarm.t is set on upload }; } else { tdType.textContent = "Alarm"; From 2150598957bb471b12f9bba8dd415084abe790e9 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 10 Jun 2023 22:58:53 +0200 Subject: [PATCH 1383/1725] gpstrek - Cleanup upload interface --- apps/gpstrek/interface.html | 146 ++++++++++++++++++------------------ 1 file changed, 72 insertions(+), 74 deletions(-) diff --git a/apps/gpstrek/interface.html b/apps/gpstrek/interface.html index a4903cc20..1f6ed1f37 100644 --- a/apps/gpstrek/interface.html +++ b/apps/gpstrek/interface.html @@ -6,6 +6,72 @@ + + +

    Upload tracks to your watch

    @@ -13,83 +79,15 @@

    -
    +

    -
    - - +
    +
    From 36f122697b9a36db0d2c98937b3e1780c22076a5 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 09:03:56 +0200 Subject: [PATCH 1384/1725] gpstrek - Update screenshots --- apps/gpstrek/README.md | 1 + apps/gpstrek/metadata.json | 2 +- apps/gpstrek/screen1.png | Bin 3876 -> 0 bytes apps/gpstrek/screen2.png | Bin 3840 -> 0 bytes apps/gpstrek/screen3.png | Bin 4142 -> 0 bytes apps/gpstrek/screen4.png | Bin 3108 -> 0 bytes apps/gpstrek/screenInit.png | Bin 0 -> 3804 bytes apps/gpstrek/screenMap.png | Bin 2527 -> 2714 bytes apps/gpstrek/screenMenu.png | Bin 0 -> 3073 bytes apps/gpstrek/screenOverview.png | Bin 0 -> 2928 bytes apps/gpstrek/screenOverviewScroll.png | Bin 0 -> 2493 bytes apps/gpstrek/screenSlices.png | Bin 0 -> 3743 bytes apps/gpstrek/screenSlices2.png | Bin 0 -> 4062 bytes apps/gpstrek/screenSlices3.png | Bin 0 -> 4033 bytes 14 files changed, 2 insertions(+), 1 deletion(-) delete mode 100644 apps/gpstrek/screen1.png delete mode 100644 apps/gpstrek/screen2.png delete mode 100644 apps/gpstrek/screen3.png delete mode 100644 apps/gpstrek/screen4.png create mode 100644 apps/gpstrek/screenInit.png create mode 100644 apps/gpstrek/screenMenu.png create mode 100644 apps/gpstrek/screenOverview.png create mode 100644 apps/gpstrek/screenOverviewScroll.png create mode 100644 apps/gpstrek/screenSlices.png create mode 100644 apps/gpstrek/screenSlices2.png create mode 100644 apps/gpstrek/screenSlices3.png diff --git a/apps/gpstrek/README.md b/apps/gpstrek/README.md index 32dc3512a..6901c90f1 100644 --- a/apps/gpstrek/README.md +++ b/apps/gpstrek/README.md @@ -13,6 +13,7 @@ Choose either a route or a waypoint as basis for the display and configure setti ### Map The map shows the loaded route. Current waypoint is a green dot with a circle around it that denotes how close you need to be to autoselect the next waypoint as target. +The map is centered on the currently selected waypoint and the position will be shown relative to the waypoint. If the position is farther away than can be shown on the display the icon turns red and shows the approximate direction on the border of the map. Secondary map mode is an overview map. Tap the overview to enter scrolling mode and move it around. Tap again to get back to normal function navigation. ### Info diff --git a/apps/gpstrek/metadata.json b/apps/gpstrek/metadata.json index c52005d13..0ec3a8bfe 100644 --- a/apps/gpstrek/metadata.json +++ b/apps/gpstrek/metadata.json @@ -4,7 +4,7 @@ "version": "0.10", "description": "Helper for tracking the status/progress during hiking. Do NOT depend on this for navigation!", "icon": "icon.png", - "screenshots": [{"url":"screenMap.png"},{"url":"screenLost.png"},{"url":"screen1.png"},{"url":"screen2.png"},{"url":"screen3.png"},{"url":"screen4.png"}], + "screenshots": [{"url":"screenInit.png"},{"url":"screenMenu.png"},{"url":"screenMap.png"},{"url":"screenLost.png"},{"url":"screenOverview.png"},{"url":"screenOverviewScroll.png"},{"url":"screenSlices.png"},{"url":"screenSlices2.png"},{"url":"screenSlices3.png"}], "tags": "tool,outdoors,gps", "supports": ["BANGLEJS2"], "readme": "README.md", diff --git a/apps/gpstrek/screen1.png b/apps/gpstrek/screen1.png deleted file mode 100644 index 3cfd7d31b3bd18868a621b80aef5a72345936303..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3876 zcmV+<58LpGP)Px#1am@3R0s$N2z&@+hyVZ%&PhZ;RCr$PozY_Cs18IY|NqguaWc+0G^k1fVQ|+z z-8+B~rDIuOyYuni=YN0npA^_sfe!(^Y2@VgmjY7({`mO#np8=D9(||g^JcVX^2Gix zE}y)#Z3^I3BAevL69E2BdUb(b07eV;TtVfO%D_pK8fI6~JmSZZfe&!4O#BOA1n;R+ z1me}P%oQzdR{5S#rs&&7s&zDSG1-J!Q#EDZ30i1yawpqsP$<}sQVUKZjP@rnl-k;4979QK=iM}V)H zxOVbzjl$O^t_E;wN=wk;zk~$)y{oUNDgR~g^^0J z_EmI^_(7Kt-{)?=mptkR&}|#crjR{fj)n3)M@7KNP%7dFy@?y;aCs51Hd$H98t({H0^4Nn{U1b~F;WJ`8qz%kFfA3`Q2;9g)3B`AQ2-0z z6}hB+62JnOhGoT$0(ix!$R}C>0ZdD!jw>oK1mJUFv!3=a?~XEkG6I6;t-a81e+PEY zkA8dBk)dPD=F1l(;5~Kf7)=2GliL$`)c3H;^vM7S&5PPIe5&c83_MtA6j){8KEaiN z`}BjO1u>tAhaUk`E8Q-qNh^0@)8$(FK7$iuLfUBQ`^9ROy#Wh?tJeQKg`*k5zX9 z_*ks9j=>U|<`A&uU~S@@(LpsXYJUm9O@Dd}`FZ!9fqiFM0Cxav?V5MVz~zt6wEn+S zrf_$64gBe_`AHF~mBOAH18Z0R@o(sN)-rryGG;5AJ!Ks;bUo*&0c@V5?*MS^B3j`V zcMWWo1?H^Ek1ORr7=R#y{ zj_CI&fOmfh20?NJoar+H3}!Q0tLg7f5a?W(I!3E~>y;tuHOn!=l_wLKK1DO|6V@?9 zSE~lL=BELkxd_cA1xlb>iU?q_va|xjN{FRbDd!%mfB=4MXy0RD5Mbs>9J3L54>`5U z*$SYIx@zFr5z%}u1z-mLv<9EVDFeGSSLcBWJObd_B6LxWqhw`$1@O2yKh}}}P7dwL z0w*thiuslGRR*4dz}}Mx;NECD{c zuMDvOPKIPb^ytwOzuvJa0DE`fJ&Rz1^U05jUw%8YXE>s;(bMfV$31GjeQXy=ZEM(vEq?*Q-#NiFcL zHUu%F?IQthz5J7rg&C2b4zNdWMz62))xYmhXT%I8B~N=w3E>gc<81XDkPun`|5J_y zlkL|VzuxfzxKNM@+={0V*JW61@T_n3?E7`6sMWwN$E|v{SG4GrhysGz%Xv}%R{Kih zdSijs5{*^HxL>bRvVhhAXEt$Y(-2)C1C=M6MD5KS7ljnTiQ1zv${J?^Y)xv_xvg~R^8vYL#HSFf#MpA_x5_+IgzG=A6k3E(GD z_=al{z;77zCoNe3KPj4TxRzl6zoB+o@&XD7;01yp7vc&C;J9`gSy5p2@oDp2h|{<1 z2M{|`&~xL6#UR+qD9Pg6J8W)i+C9wDz=l%lCl=ur0L*tkRNa zY*yb4knVz)&cI(C8-Hg4y|hxhy?JhVtvc|oa>fJJiU3=B*4h}Iw*{Dmt6bm+fDbqr zaYtvIrvhy0#MJfP*GsLhsIRd_jJ=#fAV+EwTmM$e-nFdFWOy{sXjp6Zo&+$`lgX^8 z4+QY?QSMc58gQltwjgZ1DBe2FxV|fVJ)%PZGxG@G*FWyny8AJDvT)vUC;U0VVF0%3 zSVoBJ1%M#)+M6xjQ!+54^CJL`)~hXnYFYRCZ|uegiHk0jXgj)7Shcxl>|K3pcTVeM zYIXv7;iJsJo?;%=H!T>?Afpou=JewZ0bA=X;jKZ)jzxDZlpt#Lq*u?LyG=Afc*k`; zO6~>N67;9W0mpX&_**IV!a$jw$-sBr{i>U4lz|yQ*adlN>6HO4eQT8sOa`+`4tAbv zU|S_$L{AUw-po0wzh0*trR1B~VUyJ?IRx-5r8Q5A0s=TiRvDe8fB>GQwB|`sKme!6 zDx5!TaU<66wc(AC`>z!3oQ=KWc*QUKTi~31Sv{k+qT_nk9v$zE5%q@- zy+)(XXOEk?juIT}BUiNUsIBNYqJXl-jdfolc415@94Yq=fHVM`z*)>SB`+GM}(JYJrMeVBsjP&q)Eq&PP?#}>h z1swrA#L33b54HS?_=E!EZAXBj_FVxkP9 ztFICXo>T+>E*X1bS|+|8Th@hLYop(V z@Ln+j_;^q1`#)6Iql*b;>qu-`@v;7$Z4E@Cf45r7$fPfW^Sp3P6C%r%2wXKImx@V{cc5Jx}0jYqTCkGrIMTZ#^|- z;=%aG*g<^+Fj6SkKI##>H9hkfptC>J9%N>TVdw=OCa}oHb)o1E zheTogIc#`*I{LGAk$&Lq zMD#s_$h_1|n5%Z_1*La<%kM0^A%II~JkFuMs686kRmY89Z?C=H@u)_gRX%)`HrE&0 zua5QH3R?o9I%?*^XTm-jm|lCm<0AljV$YOOrw;;n0?EC=Si$#R^d2}^X&9RbU}moB zhP9S~nG9+P$BeHz>CGy55?={D-938Up0r*S#-=Z zN<_5qJKGt}SU|4*SnV?5jWBVHX>D@P^|6~^`kOdU#zX-_?RUbKG55&zGPmp2UZw^| z?|Rv_p?=YJ*Wbt}7t7o(l!3XsmIovh>@q86fcvwFBJRjcmPTu8mZfD0;Vrf!fFfr- z!Q7$m==CCd*(E~_-m)wx<&?ky8ftw&JbhdPH7fEDDZQv%c)Qjb93_l@1839(|(g@?==VR0v>{1<=A;WlE;l zJ%RF!9bJNkx@qOQa}LT mrM%`HqJRJ%BBPAlrNIBEAkKiO$qkJF0000Px#1am@3R0s$N2z&@+hyVZ%s!2paRCr$Poq=*3DGWs8|NrQm$GO?U7}PBgpjr1- zT~%TPh}Ih+*jeY}&!0bkKmXT%QsAfpH-sNfFD`ol>=aGr^9r!gA)p2Dd@MAALje}t zddMEgFM$94Z4dqNft~?}_l2ooDDo_gvjF^AbAAEO-t!_My)~@vfsvv~ z+X;YM2ef)Mz0Y}37Jiiw0yrrk+1&~NIOGtw8enf6ycyhk%i;A$_8kR!0DmutyRSN0 zw++lq#I_9V1wa6M6+2`f1TebiMeQHTz=r^M`m`j#Odaf%qRh|&*sGrG|0$3K;LDYN z{^)&RvFT920dQm%u5T@L5A2AUObZ2^07pP{7sIT@R1zrIfF|JRw!_W_YDGv10dF!NfzF9*0c zx%Zt0W}zztewV<%%Q}7>?m8c^g_ICTw6Y!93gDlQC(`T*`Z94nmVuGLWk?uX#wI!o zGjlRF(SCUY&-lpLoL)z&3@m`>a474)RvrAb41B49)**nM%rIGrv2jjInb!xHI`~fn zxCQaC5`x+0?np5ZFg8@=9Y)NYjE!ST+7tnb+I!h-_q8bU^C-Y2#I<0hPz(f&4IO>b zkeQRQA*XYh)$>|^XMALATn>`Po^@<3AuRuq(>M5D$Vts;vsO^ApPlxrx4ZSS*}JSG z4Zw8(dO(*o(TNO^)i0|&Yt_c@vW`ap?8zc@DjhUrd^z!8q4Pxv@wHpL%R15nd^_0M zqFZf)T+-cI+3fCYwb2ty7@`NK1#LEc(SwNE>lpkvXMGyLcZ-?N;#+a*32fa3mL
    y*7L!5rdxuGf9XC2lK*qUrQ15+!I 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 diff --git a/apps/gpstrek/screen4.png b/apps/gpstrek/screen4.png deleted file mode 100644 index 7b681207729925f13e7d849a9184ae6245feb297..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3108 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 QAr01Hf7Iy++lrd>Kjv)kj{pDw delta 2489 zcmaKqX;f497RCQJ2?>*7P=qQVWpF4FnN$WD>Hwk-P{sffA_|B>6J!WN>b*c2lnNpU z76b>tl*$mm05Zr`1lk6LKuJ&u##kyLOilrWCogubx7Pdg&d0s>UhACS*(Ex!)?RUi zRW5q$|K2Z&GEU-R^OA~jGqzU5q?t6CY(7Ay$EOS0zZ+wmv%vN}!2UbII%jnhSULOUT+g^iVwgNCMv zpernUOF~{;9d1z*scN}yV-Qaj$;@ofkW8~9JLe6B7*6grv)TacA_*Q!bTGa=!Tk_A z4odWa!}0f|zt|IUj4E;sxDRmp(KD0v#CdBI z9B6^ocYf!H4xg1&J|?HKv4<}e)z{-0(){Ll^<5Kso>w;_W*MxyR}fW&A#I!5{7kiS zq?|a0kH;h1*|2J`PHqJO(ELLN>spQ`RhjmDTP6*DV~Opz=lDykLIPpf`Ub$kF~;9gLa=c3FW1 zTGB^LeQ_LgGhmQCA*kOJ-R`OPu?kuI=Bu+0&AZnP?0XiTZI%%y;SX{hV{brKmz69S-bKV}d z_VSwE<3QM(K4d>{xFB*@5uY*gBTI-JTOq~iw=06rY!`tESeDJ;IqRLD7TDG9fbGMb zFr2Q37QkI+^B?tHKRM(vdG5stHU7I%{(+0~P3Ci5<8y_)gQ7b56eh{# zY1J0=z&2<_j#aWtPImB1*zvDhPZJ6aK%UR%s7*kw8-i=y{Q0Nw{?TFI_tWoEPQRW| zLplrn79ncJLAL@wKz|UCVMH5qE6*%t;}&atGTjG(es|&_#0I2T=z<+!zCpQ3)tdH- zveeWoDrJ65_9fuO@^gUEo*3#aNqkL%dw=v_DAD<`CN{6G9!_vcAW&4qC$0wleH=93 zsczDREDS=Ql6w0)6RsB3Huj1NK4f#jp1l)K6fpma9(Pk>G%X+*L5@L!R_vk4DQzTl z;v`GY=&eggC2o;4G`0I&{42YfVMu?=fg4dEceq)Fsv2&toc#P_BN@v%Q0o=~&aU%n zs8JCQJ?FsT^%e!wnkVzR?j@z>Kz2vQDrg{AtL+;qO?O$eCk5Z-YA20@J;H@3*J(Jj+&L9?w8*eubv#qB2(D%={tiUElp#D|PXU zBF86AY;6;zOJj#W)UA84YQWMUkmH7#gyUR$&=64FXaE+Z!p;rIvZ+3XF<{RKOSTWd z#-@~I0@j|$dj?!Cn~`_Tbu6IoIB3aOsPSKQU0E$y=rWG+fAh8$fE~EU8^ufy*!fy@ zPjmO0-#~|EmrGZ2+_H=yxw-mH+f)=bDEim;#e>n-KltS zUdjk5W?rcE$>%VX6lt%HLW~DTz@D|#nag8|T`fNhzMZns&eZLmE_7NTP`!7Cu(mzI zQXLp-loNujMh|i1h712Pe#5+t%@cNXoRIlGAau8@sG#=%slOZUA+9izpd_=T1@d>V znzvpM9Za@v3BT~nil17hln~d)l=%5zIEU^oxk~Fz#nzP!Pk8%-2CfcHr2WIj+HK>0!7Fp+SjK53V3)8oi7NDJ9U%U5q5_Mx1ndBS_!j38|7#9$Zlia` zv(_6!0)X<^ZkcxfAeI;HBsh+hUV} z9x{wk?>Hy5b1T?c5(%M=9|4JG`&99JDMS{WDp3NwAuOkcZ>t81stDAeis*` z)|&j7d%GGAP~h-|rbYS))LML7DobrWhH=Z5o|?h{DiGv1{-Of{!56K+Q}`wR-N~KJ zyK~U+~H{7>bi*HI_GyhGt4O(@!P%O{nBR2Sc8hL z;iNj~5KE6AVLET-RQah&w=K{ROsmhw-Z&*itE^6{#llCYS7S2n_8B4uXC-clo2#i@ znW4%4YRBTpX+xu0nwgW^Qh}ab-)sJaD3ZD@DUZs8D${0!RYz}eu{VX#JUzk`#)HKQ zL`ht7%B*3)$WTbRYzSCbq?YdMBo9XN4BB^#X*Ue%I%DqucX_=X;i5NbN;Q zKHCN0srfG6VtJ52R<8858#~r995Xci6K$_JrX1*%Aej@P7%8Tve4&f@hKrNnm#ww&g_JNRW4JCW#V>lb}N Q4iw{Yz-xcqUTWHZ08_<|JOBUy diff --git a/apps/gpstrek/screenMenu.png b/apps/gpstrek/screenMenu.png new file mode 100644 index 0000000000000000000000000000000000000000..34c47c767baa683ae7ac0bd3a65e08e1ddb30158 GIT binary patch literal 3073 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 P00000NkvXXu0mjfw9(rJ literal 0 HcmV?d00001 diff --git a/apps/gpstrek/screenOverview.png b/apps/gpstrek/screenOverview.png new file mode 100644 index 0000000000000000000000000000000000000000..2ab2291025a5b04197a734a15ebacc40fed0eed1 GIT binary patch literal 2928 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 literal 0 HcmV?d00001 diff --git a/apps/gpstrek/screenOverviewScroll.png b/apps/gpstrek/screenOverviewScroll.png new file mode 100644 index 0000000000000000000000000000000000000000..157fe92ec5849e288ff98105852c6745144dc286 GIT binary patch literal 2493 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 L;*G0v4m$rI1A3cu literal 0 HcmV?d00001 diff --git a/apps/gpstrek/screenSlices.png b/apps/gpstrek/screenSlices.png new file mode 100644 index 0000000000000000000000000000000000000000..3e417a315b60d84e828417e06bb28f88eeb6fe25 GIT binary patch literal 3743 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 literal 0 HcmV?d00001 From f34e6a326fed8cbcda834695690c177f827ccfd4 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 10:31:22 +0200 Subject: [PATCH 1385/1725] gpstrek - Restore old state saving behaviour --- apps/gpstrek/app.js | 14 +------------- apps/gpstrek/widget.js | 2 +- 2 files changed, 2 insertions(+), 14 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 76cf56a5a..b2d3019e5 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -42,16 +42,6 @@ let init = function(){ if (!WIDGETS.gpstrek.getState().mode) WIDGETS.gpstrek.getState().mode = MODE_MENU; }; -let cleanup = function(){ - if (global.drawTimeout) clearTimeout(global.drawTimeout); - delete global.screen; - delete global.drawTimeout; - delete global.lastDrawnScreen; - delete global.firstDraw; - delete global.slices; - delete global.maxSlicePages; -}; - init(); scheduleDraw = true; @@ -123,8 +113,6 @@ let cacheAdd = function (filename, result) { cachedOffsets.push(result.fileOffset); }; - - let getEntry = function(filename, offset, result, noCaching){ if (offset < 0) return offset; let cacheOffset = getFromCache(filename, offset, result); @@ -883,7 +871,7 @@ let onSwipe = function(dirLR,dirUD){ if (dirUD){ setSlicesPage(dirUD); } - } else if (s.mode == MODE_MENU){ + } else { if (dirLR > 0) { switchMode(MODE_SLICES); } else if (dirLR < 0) { diff --git a/apps/gpstrek/widget.js b/apps/gpstrek/widget.js index a9b0ffa64..931a85e43 100644 --- a/apps/gpstrek/widget.js +++ b/apps/gpstrek/widget.js @@ -144,7 +144,7 @@ function start(bg){ Bangle.setHRMPower(1, "gpstrek"); Bangle.setCompassPower(1, "gpstrek"); Bangle.setBarometerPower(1, "gpstrek"); - initState(); + if (bg){ if (!state.active) bgChanged = true; state.active = true; From 98c459ceb4020b5ec1ab1c332a68f3288caf3a5a Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 11:10:40 +0200 Subject: [PATCH 1386/1725] gpstrek - Do not persist index in state file --- apps/gpstrek/app.js | 44 ++++++++++++++++++++++++++++-------------- apps/gpstrek/widget.js | 1 + 2 files changed, 30 insertions(+), 15 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index b2d3019e5..80615bd49 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -913,6 +913,19 @@ let writeUint32 = function(filename, number, offset, size){ STORAGE.write(filename,b,offset,size); }; +let getRouteIndex = function(route){ + if (!route.indexToOffset) loadIndex(route); + return route.indexToOffset; +} + +let getIndexFileName = function(filename){ + return filename.substring(0,filename.length-1) + "i"; +} + +let loadIndex = function(routeInfo){ + routeInfo.indexToOffset = new Uint24Array(STORAGE.readArrayBuffer(getIndexFileName(routeInfo.filename)),4,routeInfo.count); +} + let loadRouteData = function(filename, progressMonitor){ let routeInfo = {}; @@ -967,7 +980,8 @@ let loadRouteData = function(filename, progressMonitor){ if (isFinite(waypoint.alt)) lastSeenAlt = waypoint.alt; waypoint = {}; } - routeInfo.indexToOffset = new Uint24Array(STORAGE.readArrayBuffer(indexFileName),4,count); + routeInfo.count = count-1; + loadIndex(routeInfo); set(routeInfo, 0); return routeInfo; @@ -981,35 +995,35 @@ let hasPrev = function(route, index){ let hasNext = function(route, index, count){ if (!count) count = 1; if (isNaN(index)) index = route.index; - return getWaypointIndex(route, index) + count < (route.indexToOffset.length - 1); + return getWaypointIndex(route, index) + count < (getRouteIndex(route).length - 1); }; let getNext = function(route, index, count){ if (!count) count = 1; if (isNaN(index)) index = getWaypointIndex(route); index += count; - if (index >= route.indexToOffset.length) return; + if (index >= getRouteIndex(route).length) return; let result = {}; - getEntry(route.filename, route.indexToOffset[getWaypointIndex(route, index)], result); + getEntry(route.filename, getRouteIndex(route)[getWaypointIndex(route, index)], result); return result; }; let get = function(route, index){ if (isNaN(index)) index = getWaypointIndex(route); - if (index >= route.indexToOffset.length || index < 0) return; + if (index >= getRouteIndex(route).length || index < 0) return; let result = {}; - getEntry(route.filename, route.indexToOffset[getWaypointIndex(route, index)], result); + getEntry(route.filename, getRouteIndex(route)[getWaypointIndex(route, index)], result); return result; }; let getWaypointIndex = function(route, index){ if (isNaN(index)) index = route.index; - return route.mirror?route.indexToOffset.length-1-index:index; + return route.mirror?getRouteIndex(route).length-1-index:index; }; let setWaypointIndex = function(route, waypointIndex){ if (route.mirror) - route.index = route.indexToOffset.length - 1 - waypointIndex; + route.index = getRouteIndex(route).length - 1 - waypointIndex; else route.index = waypointIndex; }; @@ -1020,7 +1034,7 @@ let getPrev = function(route, index){ if (route.mirror) ++index; if (!route.mirror) --index; let result = {}; - getEntry(route.filename, route.indexToOffset[index], result); + getEntry(route.filename, getIndex(route)[index], result); return result; }; @@ -1041,13 +1055,13 @@ let prev = function(route){ }; let getLast = function(route){ - return get(route, route.indexToOffset.length - 1); + return get(route, getRouteIndex(route).length - 1); }; let isLast = function(route, index){ if (isNaN(index)) index = route.index; index = getWaypointIndex(route, index); - return route.indexToOffset.length - 1 == index; + return getRouteIndex(route).length - 1 == index; }; let removeMenu = function(){ @@ -1128,7 +1142,7 @@ let showRouteMenu = function(){ }; menu['Select waypoint'] = { value : getWaypointIndex(s.route), - min:0,max:s.route.indexToOffset.length-1,step:1, + min:0,max:getRouteIndex(s.route).length-1,step:1, onchange : v => { setWaypointIndex(s.route, v); } }; menu['Select waypoint as current position'] = function (){ @@ -1285,7 +1299,7 @@ let setClosestWaypoint = function(route, startindex, progress, maxDist){ let stopSearchAfterFirstMatch = !isFinite(startindex); if (!startindex) startindex = 0; - if (startindex >= s.route.indexToOffset.length) startindex = s.route.indexToOffset.length - 1; + if (startindex >= getRouteIndex(s.route).length) startindex = getRouteIndex(s.route).length - 1; if (startindex < 0) startindex = 0; if (!s.currentPos.lat){ @@ -1300,7 +1314,7 @@ let setClosestWaypoint = function(route, startindex, progress, maxDist){ let count = 0; let wp; do { - if (progress && (count % 5 == 0)) progress(count+startindex, "Searching", route.indexToOffset.length); + if (progress && (count % 5 == 0)) progress(count+startindex, "Searching", getRouteIndex(route).length); wp = getNext(route, startindex, count); if (!wp) break; let curDist = distance(currentPos, wp); @@ -1323,7 +1337,7 @@ const finishIcon = atob("CggB//meZmeZ+Z5n/w=="); const waypointData = { icon: atob("EBCBAAAAAAAAAAAAcIB+zg/uAe4AwACAAAAAAAAAAAAAAAAA"), getProgress: function() { - return (getWaypointIndex(WIDGETS.gpstrek.getState().route) + 1) + "/" + WIDGETS.gpstrek.getState().route.indexToOffset.length; + return (getWaypointIndex(WIDGETS.gpstrek.getState().route) + 1) + "/" + getRouteIndex(WIDGETS.gpstrek.getState().route).length; }, getTarget: function (){ return get(WIDGETS.gpstrek.getState().route); diff --git a/apps/gpstrek/widget.js b/apps/gpstrek/widget.js index 931a85e43..6dcbad724 100644 --- a/apps/gpstrek/widget.js +++ b/apps/gpstrek/widget.js @@ -27,6 +27,7 @@ let bgChanged = false; function saveState(){ state.saved = Date.now(); + if (state.route) delete state.route.indexToOffset; STORAGE.writeJSON("gpstrek.state.json", state); } From 95d9fd31951dfcc023f970d59129c32ef3a67fde Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 12:03:49 +0200 Subject: [PATCH 1387/1725] gpstrek - Rotate position marker on overview according to course --- apps/gpstrek/app.js | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 80615bd49..cf32f1868 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -302,12 +302,10 @@ let getMapSlice = function(){ let s = WIDGETS.gpstrek.getState(); let course = 0; - if (!isMapOverview){ - if (isGpsCourse()) - course = s.currentPos.course; - else - course = getAveragedCompass(); - } + if (isGpsCourse()) + course = s.currentPos.course; + else + course = getAveragedCompass(); let route = s.route; if (!route) return; @@ -335,7 +333,7 @@ let getMapSlice = function(){ let mapCenterX = isMapOverview?mapOverviewX:x+(width-10)/2+compassHeight+5; let mapCenterY = isMapOverview?mapOverviewY:y+height*0.4; let mapScale = isMapOverview?mapOverviewScale : mapLiveScale; - let mapRot = require("graphics_utils").degreesToRadians(180-course); + let mapRot = require("graphics_utils").degreesToRadians(180-(isMapOverview?0:course)); let mapTrans = { scale: mapScale, rotate: mapRot, @@ -419,7 +417,11 @@ let getMapSlice = function(){ if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} if (pos[1] > y + height - interfaceHeight -1) { pos[1] = y + height - errorMarkerSize - 5-interfaceHeight-1; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize-interfaceHeight-1,x + width ,y+height-interfaceHeight-1);} - graphics.drawImage(arrow, pos[0]-arrow.width/2,pos[1]); + if (isMapOverview) { + graphics.drawImage(arrow, pos[0],pos[1], {rotate: require("graphics_utils").degreesToRadians(course)}); + } else { + graphics.drawImage(arrow, pos[0]-arrow.width/2,pos[1]); + } graphics.setColor(0,1,0); graphics.fillRect(mapCenterX-1,mapCenterY-1, mapCenterX+1,mapCenterY+1); graphics.drawCircle(mapCenterX,mapCenterY, mapScale*SETTINGS.waypointChangeDist); From a3042f206aaca3dab54eb3df3ed515f37a332b8f Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 12:40:11 +0100 Subject: [PATCH 1388/1725] hwid-batt: whitespace --- apps/hwid_a_battery_widget/widget.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/hwid_a_battery_widget/widget.js b/apps/hwid_a_battery_widget/widget.js index e42c15355..11997a2bd 100644 --- a/apps/hwid_a_battery_widget/widget.js +++ b/apps/hwid_a_battery_widget/widget.js @@ -22,8 +22,8 @@ }; function draw() { - if (typeof old_x === 'undefined') old_x = this.x; - if (typeof old_y === 'undefined') old_y = this.y; + if (typeof old_x === 'undefined') old_x = this.x; + if (typeof old_y === 'undefined') old_y = this.y; var s = 29; var x = this.x; var y = this.y; @@ -38,10 +38,10 @@ g.fillRect(x,y,xl+4,y+16+3); //Clear g.setFontAlign(0,0); g.setFont('Vector',16); - //g.fillRect(old_x,old_y,old_x+4+l*(s-12)/100,old_y+16+3); // clear (lazy) + //g.fillRect(old_x,old_y,old_x+4+l*(s-12)/100,old_y+16+3); // clear (lazy) g.drawString(old_l, old_x + 14, old_y + 10); g.fillRect(x+4,y+14+3,xl_old,y+16+3); // charging bar - + } old_l = l; //console.log(old_x); @@ -54,11 +54,11 @@ g.setFontAlign(0,0); g.setFont('Vector',16); g.drawString(l, x + 14, y + 10); - + } old_x = this.x; - old_y = this.y; - + old_y = this.y; + if (Bangle.isCharging()) changeInterval(id, intervalHigh); else changeInterval(id, intervalLow); } From 60287b725209f1ca520c1f01187c8a25d9c10407 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 12:40:36 +0100 Subject: [PATCH 1389/1725] hwid-batt: factor width --- apps/hwid_a_battery_widget/widget.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/hwid_a_battery_widget/widget.js b/apps/hwid_a_battery_widget/widget.js index 11997a2bd..cad782df2 100644 --- a/apps/hwid_a_battery_widget/widget.js +++ b/apps/hwid_a_battery_widget/widget.js @@ -24,7 +24,7 @@ function draw() { if (typeof old_x === 'undefined') old_x = this.x; if (typeof old_y === 'undefined') old_y = this.y; - var s = 29; + var s = width - 1; var x = this.x; var y = this.y; if ((typeof x === 'undefined') || (typeof y === 'undefined')) { @@ -65,6 +65,7 @@ Bangle.on('charging',function(charging) { draw(); }); var id = setInterval(()=>WIDGETS["hwid_a_battery_widget"].draw(), intervalLow); + var width = 30; - WIDGETS["hwid_a_battery_widget"]={area:"tr",width:30,draw:draw}; + WIDGETS["hwid_a_battery_widget"]={area:"tr",width,draw:draw}; })(); From 00c29eb6f67d683c8f5eb4dd13e05768606d569d Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 12:41:24 +0100 Subject: [PATCH 1390/1725] hwid-batt: option to show batt high mark --- apps/hwid_a_battery_widget/metadata.json | 6 ++++-- apps/hwid_a_battery_widget/settings.js | 22 ++++++++++++++++++++++ apps/hwid_a_battery_widget/widget.js | 8 +++++++- 3 files changed, 33 insertions(+), 3 deletions(-) create mode 100644 apps/hwid_a_battery_widget/settings.js diff --git a/apps/hwid_a_battery_widget/metadata.json b/apps/hwid_a_battery_widget/metadata.json index 981b81079..32697fac7 100644 --- a/apps/hwid_a_battery_widget/metadata.json +++ b/apps/hwid_a_battery_widget/metadata.json @@ -11,6 +11,8 @@ "tags": "widget,battery", "provides_widgets" : ["battery"], "storage": [ - {"name":"hwid_a_battery_widget.wid.js","url":"widget.js"} - ] + {"name":"hwid_a_battery_widget.wid.js","url":"widget.js"}, + {"name":"hwid_a_battery_widget.setting.js","url":"settings.js"} + ], + "data": [{"name":"hwid_a_battery_widget.settings.json"}] } diff --git a/apps/hwid_a_battery_widget/settings.js b/apps/hwid_a_battery_widget/settings.js new file mode 100644 index 000000000..588ccae91 --- /dev/null +++ b/apps/hwid_a_battery_widget/settings.js @@ -0,0 +1,22 @@ +(back => { + const S = require('Storage'); + + const SETTINGS_FILE = "hwid_a_battery_widget.settings.json"; + const settings = S.readJSON(SETTINGS_FILE, 1) || { + showHighMark: true, + }; + + const save = () => S.write(SETTINGS_FILE, settings); + + E.showMenu({ + '': { 'title': 'Battery Widget (hank mod)' }, + '< Back': back, + 'Show high mark': { + value: settings.showHighMark, + onchange: v => { + settings.showHighMark = v; + save(); + }, + }, + }); +}) diff --git a/apps/hwid_a_battery_widget/widget.js b/apps/hwid_a_battery_widget/widget.js index cad782df2..db2a664ba 100644 --- a/apps/hwid_a_battery_widget/widget.js +++ b/apps/hwid_a_battery_widget/widget.js @@ -1,4 +1,9 @@ (function(){ + const showHighMark = ( + require("Storage").readJSON("hwid_a_battery_widget.settings.json",1) || { + showHighMark: true, + }).showHighMark; + const intervalLow = 60000; // update time when not charging const intervalHigh = 2000; // update time when charging var old_l; @@ -48,7 +53,8 @@ g.setColor(levelColor(l)); g.fillRect(x+4,y+14+3,xl,y+16+3); // charging bar - g.fillRect((x+4+100*(s-12)/100)-1,y+14+3,x+4+100*(s-12)/100,y+16+3); // charging bar "full mark" + if (showHighMark) + g.fillRect((x+4+100*(s-12)/100)-1,y+14+3,x+4+100*(s-12)/100,y+16+3); // charging bar "full mark" // Show percentage g.setColor(COLORS.black); g.setFontAlign(0,0); From d5146903684a10d11cebe577d6d3c2dfda0d9cca Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 12:42:37 +0100 Subject: [PATCH 1391/1725] hwid-batt: bump version --- apps/hwid_a_battery_widget/ChangeLog | 3 ++- apps/hwid_a_battery_widget/metadata.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/hwid_a_battery_widget/ChangeLog b/apps/hwid_a_battery_widget/ChangeLog index cbdccfecf..6c57f97a8 100644 --- a/apps/hwid_a_battery_widget/ChangeLog +++ b/apps/hwid_a_battery_widget/ChangeLog @@ -5,4 +5,5 @@ 0.05: Deleting Background - making Font larger 0.06: Fixing refresh issues 0.07: Fixed position after unlocking -0.08: Handling exceptions \ No newline at end of file +0.08: Handling exceptions +0.09: Add option for showing battery high mark diff --git a/apps/hwid_a_battery_widget/metadata.json b/apps/hwid_a_battery_widget/metadata.json index 32697fac7..14590e49a 100644 --- a/apps/hwid_a_battery_widget/metadata.json +++ b/apps/hwid_a_battery_widget/metadata.json @@ -3,7 +3,7 @@ "name": "A Battery Widget (with percentage) - Hanks Mod", "shortName":"H Battery Widget", "icon": "widget.png", - "version":"0.08", + "version":"0.09", "type": "widget", "supports": ["BANGLEJS", "BANGLEJS2"], "readme": "README.md", From 9a3f13507f9f75e083722d4ed22e03071e14fb4a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 13:01:26 +0100 Subject: [PATCH 1392/1725] hwid-batt: shorten setting filename --- apps/hwid_a_battery_widget/metadata.json | 2 +- apps/hwid_a_battery_widget/settings.js | 2 +- apps/hwid_a_battery_widget/widget.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/hwid_a_battery_widget/metadata.json b/apps/hwid_a_battery_widget/metadata.json index 14590e49a..958c01c76 100644 --- a/apps/hwid_a_battery_widget/metadata.json +++ b/apps/hwid_a_battery_widget/metadata.json @@ -14,5 +14,5 @@ {"name":"hwid_a_battery_widget.wid.js","url":"widget.js"}, {"name":"hwid_a_battery_widget.setting.js","url":"settings.js"} ], - "data": [{"name":"hwid_a_battery_widget.settings.json"}] + "data": [{"name":"hwid_batt.settings.json"}] } diff --git a/apps/hwid_a_battery_widget/settings.js b/apps/hwid_a_battery_widget/settings.js index 588ccae91..910fb1452 100644 --- a/apps/hwid_a_battery_widget/settings.js +++ b/apps/hwid_a_battery_widget/settings.js @@ -1,7 +1,7 @@ (back => { const S = require('Storage'); - const SETTINGS_FILE = "hwid_a_battery_widget.settings.json"; + const SETTINGS_FILE = "hwid_batt.settings.json"; const settings = S.readJSON(SETTINGS_FILE, 1) || { showHighMark: true, }; diff --git a/apps/hwid_a_battery_widget/widget.js b/apps/hwid_a_battery_widget/widget.js index db2a664ba..0054e7b1e 100644 --- a/apps/hwid_a_battery_widget/widget.js +++ b/apps/hwid_a_battery_widget/widget.js @@ -1,6 +1,6 @@ (function(){ const showHighMark = ( - require("Storage").readJSON("hwid_a_battery_widget.settings.json",1) || { + require("Storage").readJSON("hwid_batt.settings.json",1) || { showHighMark: true, }).showHighMark; From 0a894f15f0e258422f002f5e6d5f355a8e5427f5 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 13:08:02 +0100 Subject: [PATCH 1393/1725] hwid-batt: note high-mark in readme --- apps/hwid_a_battery_widget/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/hwid_a_battery_widget/README.md b/apps/hwid_a_battery_widget/README.md index db105635a..fd7bbec67 100644 --- a/apps/hwid_a_battery_widget/README.md +++ b/apps/hwid_a_battery_widget/README.md @@ -8,6 +8,8 @@ Show the current battery level and charging status in the top right of the clock * Blue when charging * 40 pixels wide +The high-level marker (a little bar at the 100% point) can be toggled in settings. + ![](a_battery_widget-pic.jpg) ## Creator From ff9b3448f6874bd32563024b7b81794759cc24cf Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 13:23:23 +0100 Subject: [PATCH 1394/1725] hwid-batt: handle filename length limit --- apps/hwid_a_battery_widget/metadata.json | 4 ++-- apps/hwid_a_battery_widget/settings.js | 2 +- apps/hwid_a_battery_widget/widget.js | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/hwid_a_battery_widget/metadata.json b/apps/hwid_a_battery_widget/metadata.json index 958c01c76..c06bff4cc 100644 --- a/apps/hwid_a_battery_widget/metadata.json +++ b/apps/hwid_a_battery_widget/metadata.json @@ -12,7 +12,7 @@ "provides_widgets" : ["battery"], "storage": [ {"name":"hwid_a_battery_widget.wid.js","url":"widget.js"}, - {"name":"hwid_a_battery_widget.setting.js","url":"settings.js"} + {"name":"hwid_battwid.setting.js","url":"settings.js"} ], - "data": [{"name":"hwid_batt.settings.json"}] + "data": [{"name":"hwid_battwid.settings.json"}] } diff --git a/apps/hwid_a_battery_widget/settings.js b/apps/hwid_a_battery_widget/settings.js index 910fb1452..a7623dc65 100644 --- a/apps/hwid_a_battery_widget/settings.js +++ b/apps/hwid_a_battery_widget/settings.js @@ -1,7 +1,7 @@ (back => { const S = require('Storage'); - const SETTINGS_FILE = "hwid_batt.settings.json"; + const SETTINGS_FILE = "hwid_battwid.settings.json"; const settings = S.readJSON(SETTINGS_FILE, 1) || { showHighMark: true, }; diff --git a/apps/hwid_a_battery_widget/widget.js b/apps/hwid_a_battery_widget/widget.js index 0054e7b1e..d23c98099 100644 --- a/apps/hwid_a_battery_widget/widget.js +++ b/apps/hwid_a_battery_widget/widget.js @@ -1,6 +1,6 @@ (function(){ const showHighMark = ( - require("Storage").readJSON("hwid_batt.settings.json",1) || { + require("Storage").readJSON("hwid_battwid.settings.json",1) || { showHighMark: true, }).showHighMark; From a43840f5bae21c1e8b2091c44d6752899b4ae8e6 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 14:56:09 +0200 Subject: [PATCH 1395/1725] gpstrek - Simplify code for detecting next/last --- apps/gpstrek/app.js | 37 ++++++++++++++++--------------------- 1 file changed, 16 insertions(+), 21 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index cf32f1868..5119c04f2 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -411,11 +411,12 @@ let getMapSlice = function(){ if (currentPosFromGPS) { let pos = graphics.transformVertices([ startingPoint.x - current.x, (startingPoint.y - current.y)*-1 ], mapTrans); - - if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} - if (pos[0] > x + width) {pos[0] = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} - if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} - if (pos[1] > y + height - interfaceHeight -1) { pos[1] = y + height - errorMarkerSize - 5-interfaceHeight-1; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize-interfaceHeight-1,x + width ,y+height-interfaceHeight-1);} + if (!isMapOverview){ + if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} + if (pos[0] > x + width) {pos[0] = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} + if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} + if (pos[1] > y + height - interfaceHeight -1) { pos[1] = y + height - errorMarkerSize - 5-interfaceHeight-1; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize-interfaceHeight-1,x + width ,y+height-interfaceHeight-1);} + } if (isMapOverview) { graphics.drawImage(arrow, pos[0],pos[1], {rotate: require("graphics_utils").degreesToRadians(course)}); @@ -483,12 +484,14 @@ let getMapSlice = function(){ let toDraw; let named = []; for (let j = 0; j < SETTINGS.mapChunkSize; j++){ + data.i = data.i + (reverse?-1:1); let p = get(route, data.i); if (!p || !p.lat) { + data.i = data.i + (reverse?1:-1); data.breakLoop = true; break; } - if (data.maxWaypoints && Math.abs(data.i) > data.maxWaypoints) { + if (data.maxWaypoints && Math.abs(startingIndex - data.i) > data.maxWaypoints) { data.breakLoop = true; last = true; break; @@ -497,9 +500,8 @@ let getMapSlice = function(){ if (p.name) named.push({i:data.poly.length,n:p.name}); data.poly.push(startingPoint.x-toDraw.x); data.poly.push((startingPoint.y-toDraw.y)*-1); - if (j < SETTINGS.mapChunkSize - 1) data.i = data.i + (reverse?-1:1); } - finish = isLast(route, data.i - 1); + finish = isLast(route, getWaypointIndex(route, data.i)); data.poly = graphics.transformVertices(data.poly, mapTrans); graphics.drawPoly(data.poly, false); @@ -536,8 +538,8 @@ let getMapSlice = function(){ addToTaskQueue(drawChunk, data); }; - drawPath(true, currentRouteIndex); - drawPath(false, currentRouteIndex); + drawPath(true, currentRouteIndex+1); + drawPath(false, currentRouteIndex-1); addToTaskQueue(drawInterface); @@ -997,14 +999,14 @@ let hasPrev = function(route, index){ let hasNext = function(route, index, count){ if (!count) count = 1; if (isNaN(index)) index = route.index; - return getWaypointIndex(route, index) + count < (getRouteIndex(route).length - 1); + return getWaypointIndex(route, index) + count < (getRouteIndex(route).length); }; let getNext = function(route, index, count){ if (!count) count = 1; if (isNaN(index)) index = getWaypointIndex(route); index += count; - if (index >= getRouteIndex(route).length) return; + if (index >= getRouteIndex(route).length || index < 0) return; let result = {}; getEntry(route.filename, getRouteIndex(route)[getWaypointIndex(route, index)], result); return result; @@ -1031,13 +1033,7 @@ let setWaypointIndex = function(route, waypointIndex){ }; let getPrev = function(route, index){ - if (isNaN(index)) index = getWaypointIndex(route); - if (!hasPrev(route, index)) return; - if (route.mirror) ++index; - if (!route.mirror) --index; - let result = {}; - getEntry(route.filename, getIndex(route)[index], result); - return result; + return getNext(route, index, -1); }; let next = function(route){ @@ -1052,8 +1048,7 @@ let set = function(route, index){ let prev = function(route){ if (!hasPrev(route)) return; - if (route.mirror) set(route, ++route.index); - if (!route.mirror) set(route, --route.index); + set(route, getWaypointIndex(route)-1); }; let getLast = function(route){ From ccafcbcff771c4269df6e97bd7c6fe683621737c Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 14:56:44 +0200 Subject: [PATCH 1396/1725] gpstrek - Make menu more consistent --- apps/gpstrek/app.js | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 5119c04f2..5183d6239 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -1062,7 +1062,17 @@ let isLast = function(route, index){ }; let removeMenu = function(){ + let s = WIDGETS.gpstrek.getState(); E.showMenu(); + switch(searchNeeded){ + case 1: + setClosestWaypoint(s.route, getWaypointIndex(s.route), showProgress); + break; + case 2: + setClosestWaypoint(s.route, 0, showProgress) + break; + } + searchNeeded = 0; onSwipe(-1,0); }; @@ -1082,9 +1092,8 @@ let handleLoading = function(c){ E.showMenu(); let s = WIDGETS.gpstrek.getState(); s.route = loadRouteData(c, showProgress); - if(SETTINGS.autosearch) setClosestWaypoint(s.route, 0, showProgress); + if(SETTINGS.autosearch && searchNeeded < 2) searchNeeded = 2; s.waypoint = null; - removeMenu(); }; let showRouteSelector = function(){ @@ -1095,12 +1104,15 @@ let showRouteSelector = function(){ }; STORAGE.list(/\.trf$/).sort().forEach((file)=>{ - menu[file] = ()=>{handleLoading(file);}; + menu[file] = ()=>{handleLoading(file); showRouteMenu()}; }); E.showMenu(menu); }; +// 1 for complete search, 2 for starting at current waypoint +let searchNeeded = 0; + let showRouteMenu = function(){ var menu = { "" : { @@ -1118,21 +1130,25 @@ let showRouteMenu = function(){ onchange: v=>{ if (s.route.mirror != v){ s.route.mirror = v; - setWaypointIndex(s.route, 0); - removeMenu(); + if(SETTINGS.autosearch) + if (searchNeeded < 2) searchNeeded = 2; + else + setWaypointIndex(s.route, 0); } } }; menu['Select closest waypoint'] = function () { if (s.currentPos && s.currentPos.lat){ - setClosestWaypoint(s.route, 0, showProgress); removeMenu(); + if (searchNeeded < 2) searchNeeded = 2; + removeMenu(); } else { E.showAlert("No position").then(()=>{E.showMenu(menu);}); } }; menu['Select closest waypoint (not visited)'] = function () { if (s.currentPos && s.currentPos.lat){ - setClosestWaypoint(s.route, getWaypointIndex(s.route), showProgress); removeMenu(); + if (searchNeeded < 1) searchNeeded = 1; + removeMenu(); } else { E.showAlert("No position").then(()=>{E.showMenu(menu);}); } @@ -1221,8 +1237,8 @@ let showBackgroundMenu = function(){ "title" : "Background", back : showMenu, }, - "Start" : ()=>{ E.showPrompt("Start?").then((v)=>{ if (v) {WIDGETS.gpstrek.start(true); removeMenu();} else {showMenu();}}).catch(()=>{showMenu();});}, - "Stop" : ()=>{ E.showPrompt("Stop?").then((v)=>{ if (v) {WIDGETS.gpstrek.stop(true); removeMenu();} else {showMenu();}}).catch(()=>{showMenu();});}, + "Start" : ()=>{ E.showPrompt("Start?").then((v)=>{ if (v) {WIDGETS.gpstrek.start(true); showMenu();} else {showMenu();}}).catch(()=>{showMenu();});}, + "Stop" : ()=>{ E.showPrompt("Stop?").then((v)=>{ if (v) {WIDGETS.gpstrek.stop(true); showMenu();} else {showMenu();}}).catch(()=>{showMenu();});}, }; E.showMenu(menu); }; From 59495424f69ab46d47a4bf14dc77d216a241157a Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 15:08:39 +0200 Subject: [PATCH 1397/1725] gpstrek - Correct count during Loading --- apps/gpstrek/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 5183d6239..71b9c4016 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -984,7 +984,7 @@ let loadRouteData = function(filename, progressMonitor){ if (isFinite(waypoint.alt)) lastSeenAlt = waypoint.alt; waypoint = {}; } - routeInfo.count = count-1; + routeInfo.count = count; loadIndex(routeInfo); set(routeInfo, 0); From 5ca4db69d7636ee9578ab1366911ea886f754fb8 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 14:36:40 +0100 Subject: [PATCH 1398/1725] swiperclocklaunch: ensure we clear old listeners too Previously we wouldn't clear old listeners, which meant that they'd remain hanging around, potentially interfering with the currently shown app/clock. We now remember to clear them too, so setUI behaves as a proper reset. See #2809 for more details. --- apps/swiperclocklaunch/boot.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/apps/swiperclocklaunch/boot.js b/apps/swiperclocklaunch/boot.js index ea00a6735..11abb84c9 100644 --- a/apps/swiperclocklaunch/boot.js +++ b/apps/swiperclocklaunch/boot.js @@ -1,7 +1,13 @@ (function() { var sui = Bangle.setUI; + var oldSwipe; + Bangle.setUI = function(mode, cb) { + if (oldSwipe && oldSwipe !== Bangle.swipeHandler) + Bangle.removeListener("swipe", oldSwipe); sui(mode,cb); + oldSwipe = Bangle.swipeHandler; + if(!mode) return; if ("object"==typeof mode) mode = mode.mode; if (mode.startsWith("clock")) { From fc273a81c811477a4d85c51aae0ba9221fe0e891 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 14:41:14 +0100 Subject: [PATCH 1399/1725] swiperclocklaunch: bump version --- apps/swiperclocklaunch/ChangeLog | 1 + apps/swiperclocklaunch/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/swiperclocklaunch/ChangeLog b/apps/swiperclocklaunch/ChangeLog index e7ad4555c..f62e10940 100644 --- a/apps/swiperclocklaunch/ChangeLog +++ b/apps/swiperclocklaunch/ChangeLog @@ -2,3 +2,4 @@ 0.02: Fix issue with mode being undefined 0.03: Update setUI to work with new Bangle.js 2v13 menu style 0.04: Update to work with new 'fast switch' clock->launcher functionality +0.05: Keep track of event listeners we "overwrite", and remove them at the start of setUI diff --git a/apps/swiperclocklaunch/metadata.json b/apps/swiperclocklaunch/metadata.json index 4f27da528..d46c56693 100644 --- a/apps/swiperclocklaunch/metadata.json +++ b/apps/swiperclocklaunch/metadata.json @@ -1,7 +1,7 @@ { "id": "swiperclocklaunch", "name": "Swiper Clock Launch", - "version": "0.04", + "version": "0.05", "description": "Navigate between clock and launcher with Swipe action", "icon": "swiperclocklaunch.png", "type": "bootloader", From fb4b6e90be79292a2aafa41d837c5ec18fb55e46 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 18:51:40 +0200 Subject: [PATCH 1400/1725] gpstrek - Fix resetting state after about a minute when running from loaded state --- apps/gpstrek/widget.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/gpstrek/widget.js b/apps/gpstrek/widget.js index 6dcbad724..6887486bc 100644 --- a/apps/gpstrek/widget.js +++ b/apps/gpstrek/widget.js @@ -23,6 +23,7 @@ if (!state) { state = {}; initState(); } +state.started = false; let bgChanged = false; function saveState(){ @@ -145,7 +146,9 @@ function start(bg){ Bangle.setHRMPower(1, "gpstrek"); Bangle.setCompassPower(1, "gpstrek"); Bangle.setBarometerPower(1, "gpstrek"); - + + state.started = true; + if (bg){ if (!state.active) bgChanged = true; state.active = true; @@ -155,6 +158,7 @@ function start(bg){ } function stop(bg){ + state.started = true; if (bg){ if (state.active) bgChanged = true; state.active = false; @@ -184,7 +188,7 @@ WIDGETS.gpstrek={ width:state.active?24:0, resetState: initState, getState: function() { - if (state.saved && Date.now() - state.saved > 60000 || !state){ + if (!state.started && state.saved && Date.now() - state.saved > 60000 || !state){ initState(); } return state; From 6c0944718d4131136ad6085fcec4aa5c16763e61 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 19:32:51 +0200 Subject: [PATCH 1401/1725] gpstrek - Allow leaving the menu with swipes left and right --- apps/gpstrek/app.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 71b9c4016..0d62b5777 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -890,6 +890,7 @@ let onSwipe = function(dirLR,dirUD){ let setButtons = function(){ + Bangle.removeListener("swipe", onSwipe); let options = { mode: "custom", swipe: onSwipe, @@ -1262,9 +1263,10 @@ let showMenu = function(){ }; E.showMenu(mainmenu); + Bangle.removeListener("swipe", onSwipe); + Bangle.on("swipe",onSwipe); }; - let switchMenu = function(){ stopDrawing(); showMenu(); From 911c12c6f152a968d2cd434d9b036e5c6bd10f13 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 19:50:15 +0200 Subject: [PATCH 1402/1725] gpstrek - Move refresh code out of drawing method for compass --- apps/gpstrek/app.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 0d62b5777..aeeb988b3 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -672,6 +672,9 @@ let getCompassSlice = function(){ const buffers = 4; let buf = []; return { + refresh: function(){ + return Math.abs(lastDrawnValue - compassDataSource.getCourse()) > SETTINGS.minCourseChange; + }, draw: function (graphics, x,y,height,width){ const max = 180; const increment=width/max; @@ -680,7 +683,6 @@ let getCompassSlice = function(){ let course = isGpsCourse() ? s.currentPos.course : getAveragedCompass(); - if (Math.abs(lastDrawnValue - compassDataSource.getCourse()) < SETTINGS.minCourseChange) return; lastDrawnValue = course; graphics.clearRect(x,y,x+width,y+height); From 2a9ae9e8c67c1543156d5a4fba3e4183bddf0461 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 20:25:05 +0200 Subject: [PATCH 1403/1725] gpstrek - Use matchFontSize for target slice --- apps/gpstrek/app.js | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index aeeb988b3..c430ac4e8 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -598,15 +598,12 @@ let getTargetSlice = function(targetDataSource){ let bearingString = bearing(start,target) + "°"; let formattedDist = loc.distance(dist,2); let distNum = (formattedDist.match(/[0-9\.]+/) || [Infinity])[0]; - let size = 0.8; - let distNumMetrics; - while (graphics.stringMetrics(bearingString).width + (distNumMetrics = graphics.stringMetrics(distNum)).width > 0.90 * width){ - size -= 0.05; - graphics.setFont("Vector",Math.floor(height*size)); - } - graphics.drawString(bearingString, x+2, y + (height - distNumMetrics.height)/2); + + matchFontSize(graphics, bearingString + distNum, height*0.8, width); + graphics.setFontAlign(-1,-1); + graphics.drawString(bearingString, x+2, y); graphics.setFontAlign(1,-1); - graphics.drawString(distNum, x + width, y + (height - distNumMetrics.height)/2); + graphics.drawString(distNum, x + width, y); graphics.setFont("Vector",Math.floor(height*0.25)); graphics.setFontAlign(-1,1); From f2674671173b5bd905078047cfb7d8bacd292d29 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 12 May 2023 10:49:14 +0200 Subject: [PATCH 1404/1725] sensortools - Format README and add emulated routes as gpx --- apps/sensortools/README.md | 64 ++++++++------ apps/sensortools/square.gpx | 33 +++++++ apps/sensortools/squareFuzzy.gpx | 144 +++++++++++++++++++++++++++++++ 3 files changed, 217 insertions(+), 24 deletions(-) create mode 100644 apps/sensortools/square.gpx create mode 100644 apps/sensortools/squareFuzzy.gpx diff --git a/apps/sensortools/README.md b/apps/sensortools/README.md index 8b89add7c..f44a89090 100644 --- a/apps/sensortools/README.md +++ b/apps/sensortools/README.md @@ -5,40 +5,56 @@ This allows to simulate sensor behaviour for development purposes ## Per Sensor settings: -enabled: - true or false -mode: - emulate: Completely craft events for this sensor - modify: Take existing events from real sensor and modify their data -name: - name of the emulation or modification mode -power: - emulate: Simulate Bangle._PWR changes, but do not call real power function - nop: Do nothing, ignore all power calls for this sensor but return true - passthrough: Just pass all power calls unmodified - on: Do not allow switching the sensor off, all calls are switching the real sensor on +Enabled: +* **true** +* **false** + +Mode: +* **emulate**: Completely craft events for this sensor +* **modify**: Take existing events from real sensor and modify their data + +Name: +* name of the emulation or modification mode + +Power: +* **emulate**: Simulate Bangle._PWR changes, but do not call real power function +* **nop**: Do nothing, ignore all power calls for this sensor but return true +* **passthrough**: Just pass all power calls unmodified +* **on**: Do not allow switching the sensor off, all calls are switching the real sensor on ### HRM -Modes: modify, emulate +Modes: +* **modify**: Modify the original events from this sensor +* **emulate**: Create events simulating sensor activity + Modification: - bpmtrippled: Multiply the bpm value of the original HRM values with 3 +* **bpmtrippled**: Multiply the bpm value of the original HRM values with 3 + Emulation: - sin: Calculate bpm changes by using sin +* **sin**: Calculate bpm changes by using sin ### GPS -Modes: emulate +Modes: +* **emulate** + Emulation: - staticfix: static complete fix with all values - route: A square route starting in the SW corner and moving SW->NW->NO->SW... - routeFuzzy: Roughly the same square as route, but with 100m seqments with some variaton in course - nofix: All values NaN but time,sattelites,fix and fix == 0 - changingfix: A fix with randomly changing values +* **staticfix**: static complete fix with all values +* **route**: A square route starting in the SW corner and moving SW->NW->NO->SW... [Download as gpx](square.gpx) +* **routeFuzzy**: Roughly the same square as route, but with 100m seqments with some variaton in course [Download as gpx](squareFuzzy.gpx) +* **nofix**: All values NaN but time,sattelites,fix and fix == 0 +* **changingfix**: A fix with randomly changing values ### Compass -Modes: emulate +Modes: +* **emulate** + Emulation: - static: All values but heading are 1, heading == 0 - rotate: All values but heading are 1, heading rotates 360° +* **static**: All values but heading are 1, heading == 0 +* **rotate**: All values but heading are 1, heading rotates 360° + +# Creator + +[halemmerich](https://github.com/halemmerich) \ No newline at end of file diff --git a/apps/sensortools/square.gpx b/apps/sensortools/square.gpx new file mode 100644 index 000000000..0220b4261 --- /dev/null +++ b/apps/sensortools/square.gpx @@ -0,0 +1,33 @@ + + + + 1kmsquare + Export from GpsPrune + + + 1kmsquare + 1 + + + 2273 + Lower left + + + 2166 + Top left + + + 2245 + Top right + + + 1994 + Lower right + + + 2273 + Destination + + + + diff --git a/apps/sensortools/squareFuzzy.gpx b/apps/sensortools/squareFuzzy.gpx new file mode 100644 index 000000000..8f73cc72b --- /dev/null +++ b/apps/sensortools/squareFuzzy.gpx @@ -0,0 +1,144 @@ + + + + 1kmsquare100 + Export from GpsPrune + + + 1kmsquare100 + 1 + + + 2265 + Lower left + + + 2256 + + + 2230 + + + 2219 + + + 2199 + + + 2182 + + + 2189 + + + 2180 + + + 2191 + + + 2185 + + + 2186 + + + 2166 + Top left + + + 2171 + + + 2194 + + + 2207 + + + 2212 + + + 2262 + + + 2278 + + + 2297 + + + 2303 + + + 2251 + + + 2245 + Top right + + + 2195 + + + 2163 + + + 2131 + + + 2095 + + + 2066 + + + 2037 + + + 1993 + + + 1967 + + + 1949 + + + 1972 + + + 2011 + Lower right + + + 2044 + + + 2061 + + + 2065 + + + 2071 + + + 2102 + + + 2147 + + + 2197 + + + 2228 + + + 2265 + Destination + + + + From 560e39b900b55c6c67d9a4e5b463a8a1d98a323b Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 25 May 2023 22:38:21 +0200 Subject: [PATCH 1405/1725] sensortools - Fix interpolation and speed for route simulation --- apps/sensortools/lib.js | 135 +++++++++++++++++++--------------------- 1 file changed, 64 insertions(+), 71 deletions(-) diff --git a/apps/sensortools/lib.js b/apps/sensortools/lib.js index 7dfc6307d..85ed3be60 100644 --- a/apps/sensortools/lib.js +++ b/apps/sensortools/lib.js @@ -138,63 +138,63 @@ exports.enable = () => { function interpolate(a,b,progress){ return { - lat: a.lat * progress + b.lat * (1-progress), - lon: a.lon * progress + b.lon * (1-progress), - ele: a.ele * progress + b.ele * (1-progress) + lat: b.lat * progress + a.lat * (1-progress), + lon: b.lon * progress + a.lon * (1-progress), + alt: b.alt * progress + a.alt * (1-progress) } } function getSquareRoute(){ return [ - {lat:"47.2577411",lon:"11.9927442",ele:2273}, - {lat:"47.266761",lon:"11.9926673",ele:2166}, - {lat:"47.2667605",lon:"12.0059511",ele:2245}, - {lat:"47.2577516",lon:"12.0059925",ele:1994} + {lat:47.2577411,lon:11.9927442,alt:2273}, + {lat:47.266761,lon:11.9926673,alt:2166}, + {lat:47.2667605,lon:12.0059511,alt:2245}, + {lat:47.2577516,lon:12.0059925,alt:1994} ]; } function getSquareRouteFuzzy(){ return [ - {lat:"47.2578455",lon:"11.9929891",ele:2265}, - {lat:"47.258592",lon:"11.9923341",ele:2256}, - {lat:"47.2594506",lon:"11.9927412",ele:2230}, - {lat:"47.2603323",lon:"11.9924949",ele:2219}, - {lat:"47.2612056",lon:"11.9928175",ele:2199}, - {lat:"47.2621002",lon:"11.9929817",ele:2182}, - {lat:"47.2629025",lon:"11.9923915",ele:2189}, - {lat:"47.2637828",lon:"11.9926486",ele:2180}, - {lat:"47.2646733",lon:"11.9928167",ele:2191}, - {lat:"47.2655617",lon:"11.9930357",ele:2185}, - {lat:"47.2662862",lon:"11.992252",ele:2186}, - {lat:"47.2669305",lon:"11.993173",ele:2166}, - {lat:"47.266666",lon:"11.9944419",ele:2171}, - {lat:"47.2667579",lon:"11.99576",ele:2194}, - {lat:"47.2669409",lon:"11.9970579",ele:2207}, - {lat:"47.2666562",lon:"11.9983128",ele:2212}, - {lat:"47.2666027",lon:"11.9996335",ele:2262}, - {lat:"47.2667245",lon:"12.0009395",ele:2278}, - {lat:"47.2668457",lon:"12.002256",ele:2297}, - {lat:"47.2666126",lon:"12.0035373",ele:2303}, - {lat:"47.2664554",lon:"12.004841",ele:2251}, - {lat:"47.2669461",lon:"12.005948",ele:2245}, - {lat:"47.2660877",lon:"12.006323",ele:2195}, - {lat:"47.2652729",lon:"12.0057552",ele:2163}, - {lat:"47.2643926",lon:"12.0060123",ele:2131}, - {lat:"47.2634978",lon:"12.0058302",ele:2095}, - {lat:"47.2626129",lon:"12.0060759",ele:2066}, - {lat:"47.2617325",lon:"12.0058188",ele:2037}, - {lat:"47.2608668",lon:"12.0061784",ele:1993}, - {lat:"47.2600155",lon:"12.0057392",ele:1967}, - {lat:"47.2591203",lon:"12.0058233",ele:1949}, - {lat:"47.2582307",lon:"12.0059718",ele:1972}, - {lat:"47.2578014",lon:"12.004804",ele:2011}, - {lat:"47.2577232",lon:"12.0034834",ele:2044}, - {lat:"47.257745",lon:"12.0021656",ele:2061}, - {lat:"47.2578682",lon:"12.0008597",ele:2065}, - {lat:"47.2577082",lon:"11.9995526",ele:2071}, - {lat:"47.2575917",lon:"11.9982348",ele:2102}, - {lat:"47.2577401",lon:"11.996924",ele:2147}, - {lat:"47.257715",lon:"11.9956061",ele:2197}, - {lat:"47.2578996",lon:"11.9943081",ele:2228} + {lat:47.2578455,lon:11.9929891,alt:2265}, + {lat:47.258592,lon:11.9923341,alt:2256}, + {lat:47.2594506,lon:11.9927412,alt:2230}, + {lat:47.2603323,lon:11.9924949,alt:2219}, + {lat:47.2612056,lon:11.9928175,alt:2199}, + {lat:47.2621002,lon:11.9929817,alt:2182}, + {lat:47.2629025,lon:11.9923915,alt:2189}, + {lat:47.2637828,lon:11.9926486,alt:2180}, + {lat:47.2646733,lon:11.9928167,alt:2191}, + {lat:47.2655617,lon:11.9930357,alt:2185}, + {lat:47.2662862,lon:11.992252,alt:2186}, + {lat:47.2669305,lon:11.993173,alt:2166}, + {lat:47.266666,lon:11.9944419,alt:2171}, + {lat:47.2667579,lon:11.99576,alt:2194}, + {lat:47.2669409,lon:11.9970579,alt:2207}, + {lat:47.2666562,lon:11.9983128,alt:2212}, + {lat:47.2666027,lon:11.9996335,alt:2262}, + {lat:47.2667245,lon:12.0009395,alt:2278}, + {lat:47.2668457,lon:12.002256,alt:2297}, + {lat:47.2666126,lon:12.0035373,alt:2303}, + {lat:47.2664554,lon:12.004841,alt:2251}, + {lat:47.2669461,lon:12.005948,alt:2245}, + {lat:47.2660877,lon:12.006323,alt:2195}, + {lat:47.2652729,lon:12.0057552,alt:2163}, + {lat:47.2643926,lon:12.0060123,alt:2131}, + {lat:47.2634978,lon:12.0058302,alt:2095}, + {lat:47.2626129,lon:12.0060759,alt:2066}, + {lat:47.2617325,lon:12.0058188,alt:2037}, + {lat:47.2608668,lon:12.0061784,alt:1993}, + {lat:47.2600155,lon:12.0057392,alt:1967}, + {lat:47.2591203,lon:12.0058233,alt:1949}, + {lat:47.2582307,lon:12.0059718,alt:1972}, + {lat:47.2578014,lon:12.004804,alt:2011}, + {lat:47.2577232,lon:12.0034834,alt:2044}, + {lat:47.257745,lon:12.0021656,alt:2061}, + {lat:47.2578682,lon:12.0008597,alt:2065}, + {lat:47.2577082,lon:11.9995526,alt:2071}, + {lat:47.2575917,lon:11.9982348,alt:2102}, + {lat:47.2577401,lon:11.996924,alt:2147}, + {lat:47.257715,lon:11.9956061,alt:2197}, + {lat:47.2578996,lon:11.9943081,alt:2228} ]; } @@ -215,51 +215,43 @@ exports.enable = () => { let interpSteps; if (settings.gps.name == "routeFuzzy"){ route = getSquareRouteFuzzy(); - interpSteps = 5; + interpSteps = 74; } else { route = getSquareRoute(); - interpSteps = 50; + interpSteps = 740; } let step = 0; let routeIndex = 0; modGps(() => { let newIndex = (routeIndex + 1)%route.length; - + let followingIndex = (routeIndex + 2)%route.length; + let result = { - "speed": Math.random() * 3 + 2, + "speed": Math.random()*1 + 4.5, "time": new Date(), "satellites": Math.floor(Math.random()*5)+3, "fix": 1, "hdop": Math.floor(Math.random(30)+1) }; - + let oldPos = route[routeIndex]; - if (step != 0){ - oldPos = interpolate(route[routeIndex], route[newIndex], E.clip(0,1,step/interpSteps)); - } let newPos = route[newIndex]; - if (step < interpSteps - 1){ - newPos = interpolate(route[routeIndex], route[newIndex], E.clip(0,1,(step+1)%interpSteps/interpSteps)); + let followingPos = route[followingIndex]; + let interpPos = interpolate(oldPos, newPos, E.clip(0,1,step/interpSteps)); + + if (step > 0.5* interpSteps) { + result.course = bearing(interpPos, interpolate(newPos, followingPos, E.clip(0,1,(step-0.5*interpSteps)/interpSteps))); + } else { + result.course = bearing(oldPos, newPos); } - if (step == interpSteps - 1){ - let followingIndex = (routeIndex + 2)%route.length; - newPos = interpolate(route[newIndex], route[followingIndex], E.clip(0,1,1/interpSteps)); - } - - result.lat = oldPos.lat; - result.lon = oldPos.lon; - result.alt = oldPos.ele; - - result.course = bearing(oldPos,newPos); - step++; if (step == interpSteps){ routeIndex = (routeIndex + 1) % route.length; step = 0; } - return result; + return Object.assign(result, interpPos); }); } else if (settings.gps.name == "nofix") { modGps(() => { return { @@ -281,7 +273,8 @@ exports.enable = () => { let currentDir=1000; let currentAlt=500; let currentSats=5; - modGps(() => { + + (() => { currentLat += 0.01; if (currentLat > 50) currentLat = 20; currentLon += 0.01; From d884e21a8ec6d0ed55b67ef63198a00a8d428da6 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 28 May 2023 22:13:30 +0200 Subject: [PATCH 1406/1725] sensortools - Add setting for log --- apps/sensortools/default.json | 1 + apps/sensortools/lib.js | 1 + apps/sensortools/settings.js | 6 ++++++ 3 files changed, 8 insertions(+) diff --git a/apps/sensortools/default.json b/apps/sensortools/default.json index a85e1ddeb..0e0d0a9af 100644 --- a/apps/sensortools/default.json +++ b/apps/sensortools/default.json @@ -1,5 +1,6 @@ { "enabled": false, + "log": false, "mag": { "enabled": false, "mode": "emulate", diff --git a/apps/sensortools/lib.js b/apps/sensortools/lib.js index 85ed3be60..f0155d289 100644 --- a/apps/sensortools/lib.js +++ b/apps/sensortools/lib.js @@ -5,6 +5,7 @@ exports.enable = () => { ); let log = function(text, param) { + if (!settings.log) return; let logline = new Date().toISOString() + " - " + "Sensortools - " + text; if (param) logline += ": " + JSON.stringify(param); print(logline); diff --git a/apps/sensortools/settings.js b/apps/sensortools/settings.js index 231ab8467..ae631e60c 100644 --- a/apps/sensortools/settings.js +++ b/apps/sensortools/settings.js @@ -88,6 +88,12 @@ writeSettings("enabled",v); }, }, + 'Log': { + value: !!settings.log, + onchange: v => { + writeSettings("log",v); + }, + }, 'GPS': ()=>{showSubMenu("GPS","gps",["nop", "staticfix", "nofix", "changingfix", "route", "routeFuzzy"],[]);}, 'Compass': ()=>{showSubMenu("Compass","mag",["nop", "static", "rotate"],[]);}, 'HRM': ()=>{showSubMenu("HRM","hrm",["nop", "static"],["bpmtrippled"],["sin"]);} From 9642b546e28fced5728ac7e330ad3798175f2316 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 20:35:12 +0200 Subject: [PATCH 1407/1725] sensortools - Bump version --- apps/sensortools/ChangeLog | 2 ++ apps/sensortools/metadata.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/sensortools/ChangeLog b/apps/sensortools/ChangeLog index 7d9bdd6a8..6d2f5d2b4 100644 --- a/apps/sensortools/ChangeLog +++ b/apps/sensortools/ChangeLog @@ -2,3 +2,5 @@ 0.02: Less time used during boot if disabled 0.03: Fixed some test data 0.04: Correct type of time attribute in gps to Date +0.05: Fix gps emulation interpolation + Add setting for log output diff --git a/apps/sensortools/metadata.json b/apps/sensortools/metadata.json index f5bace383..48b146617 100644 --- a/apps/sensortools/metadata.json +++ b/apps/sensortools/metadata.json @@ -2,7 +2,7 @@ "id": "sensortools", "name": "Sensor tools", "shortName": "Sensor tools", - "version": "0.04", + "version": "0.05", "description": "Tools for testing and debugging apps that use sensor input", "icon": "icon.png", "type": "bootloader", From c8070a7d1446ddead245162032b9b286d43af40c Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 11 Jun 2023 20:43:56 +0200 Subject: [PATCH 1408/1725] sensortools - Fix changingfix emulation --- apps/sensortools/lib.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sensortools/lib.js b/apps/sensortools/lib.js index f0155d289..5e1c199c2 100644 --- a/apps/sensortools/lib.js +++ b/apps/sensortools/lib.js @@ -275,7 +275,7 @@ exports.enable = () => { let currentAlt=500; let currentSats=5; - (() => { + modGps(() => { currentLat += 0.01; if (currentLat > 50) currentLat = 20; currentLon += 0.01; From 786b8db814a1e19086357945125c4ae4c9d4c39c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 21:57:41 +0100 Subject: [PATCH 1409/1725] hwid-batt: drop high mark altogether --- apps/hwid_a_battery_widget/metadata.json | 6 ++---- apps/hwid_a_battery_widget/settings.js | 22 ---------------------- apps/hwid_a_battery_widget/widget.js | 7 ------- 3 files changed, 2 insertions(+), 33 deletions(-) delete mode 100644 apps/hwid_a_battery_widget/settings.js diff --git a/apps/hwid_a_battery_widget/metadata.json b/apps/hwid_a_battery_widget/metadata.json index c06bff4cc..73dfc7c92 100644 --- a/apps/hwid_a_battery_widget/metadata.json +++ b/apps/hwid_a_battery_widget/metadata.json @@ -11,8 +11,6 @@ "tags": "widget,battery", "provides_widgets" : ["battery"], "storage": [ - {"name":"hwid_a_battery_widget.wid.js","url":"widget.js"}, - {"name":"hwid_battwid.setting.js","url":"settings.js"} - ], - "data": [{"name":"hwid_battwid.settings.json"}] + {"name":"hwid_a_battery_widget.wid.js","url":"widget.js"} + ] } diff --git a/apps/hwid_a_battery_widget/settings.js b/apps/hwid_a_battery_widget/settings.js deleted file mode 100644 index a7623dc65..000000000 --- a/apps/hwid_a_battery_widget/settings.js +++ /dev/null @@ -1,22 +0,0 @@ -(back => { - const S = require('Storage'); - - const SETTINGS_FILE = "hwid_battwid.settings.json"; - const settings = S.readJSON(SETTINGS_FILE, 1) || { - showHighMark: true, - }; - - const save = () => S.write(SETTINGS_FILE, settings); - - E.showMenu({ - '': { 'title': 'Battery Widget (hank mod)' }, - '< Back': back, - 'Show high mark': { - value: settings.showHighMark, - onchange: v => { - settings.showHighMark = v; - save(); - }, - }, - }); -}) diff --git a/apps/hwid_a_battery_widget/widget.js b/apps/hwid_a_battery_widget/widget.js index d23c98099..2c7bd2568 100644 --- a/apps/hwid_a_battery_widget/widget.js +++ b/apps/hwid_a_battery_widget/widget.js @@ -1,9 +1,4 @@ (function(){ - const showHighMark = ( - require("Storage").readJSON("hwid_battwid.settings.json",1) || { - showHighMark: true, - }).showHighMark; - const intervalLow = 60000; // update time when not charging const intervalHigh = 2000; // update time when charging var old_l; @@ -53,8 +48,6 @@ g.setColor(levelColor(l)); g.fillRect(x+4,y+14+3,xl,y+16+3); // charging bar - if (showHighMark) - g.fillRect((x+4+100*(s-12)/100)-1,y+14+3,x+4+100*(s-12)/100,y+16+3); // charging bar "full mark" // Show percentage g.setColor(COLORS.black); g.setFontAlign(0,0); From 37236b254e88f06742d82b16da7351d9a70c70d4 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 22:05:18 +0100 Subject: [PATCH 1410/1725] hwid-batt: simplify clearing old widget --- apps/hwid_a_battery_widget/widget.js | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/apps/hwid_a_battery_widget/widget.js b/apps/hwid_a_battery_widget/widget.js index 2c7bd2568..027535051 100644 --- a/apps/hwid_a_battery_widget/widget.js +++ b/apps/hwid_a_battery_widget/widget.js @@ -1,7 +1,6 @@ (function(){ const intervalLow = 60000; // update time when not charging const intervalHigh = 2000; // update time when charging - var old_l; var old_x = this.x; var old_y = this.y; @@ -22,29 +21,15 @@ }; function draw() { - if (typeof old_x === 'undefined') old_x = this.x; - if (typeof old_y === 'undefined') old_y = this.y; var s = width - 1; var x = this.x; var y = this.y; if ((typeof x === 'undefined') || (typeof y === 'undefined')) { } else { + g.clearRect(old_x, old_y, old_x + width, old_y + height); + const l = E.getBattery(); // debug: Math.floor(Math.random() * 101); let xl = x+4+l*(s-12)/100; - if ((l != old_l) && (typeof old_l != 'undefined') ){ // Delete the old value from screen - let xl_old = x+4+old_l*(s-12)/100; - g.setColor(COLORS.white); - // g.fillRect(x+2,y+5,x+s-6,y+18); - g.fillRect(x,y,xl+4,y+16+3); //Clear - g.setFontAlign(0,0); - g.setFont('Vector',16); - //g.fillRect(old_x,old_y,old_x+4+l*(s-12)/100,old_y+16+3); // clear (lazy) - g.drawString(old_l, old_x + 14, old_y + 10); - g.fillRect(x+4,y+14+3,xl_old,y+16+3); // charging bar - - } - old_l = l; - //console.log(old_x); g.setColor(levelColor(l)); g.fillRect(x+4,y+14+3,xl,y+16+3); // charging bar @@ -65,6 +50,7 @@ Bangle.on('charging',function(charging) { draw(); }); var id = setInterval(()=>WIDGETS["hwid_a_battery_widget"].draw(), intervalLow); var width = 30; + var height = 19; WIDGETS["hwid_a_battery_widget"]={area:"tr",width,draw:draw}; })(); From b56865a136bc236e7e59d3c506328d9fc58b4783 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 19:29:44 +0100 Subject: [PATCH 1411/1725] multitimer/sched: use triggercheck for pre-alarm code --- apps/multitimer/alarm.js | 199 ---------------------------------- apps/multitimer/app.js | 25 ++++- apps/multitimer/boot.js | 8 ++ apps/multitimer/ext.js | 64 +++++++++++ apps/multitimer/metadata.json | 3 +- apps/sched/sched.js | 86 ++++++++------- typescript/types/sched.d.ts | 4 + 7 files changed, 148 insertions(+), 241 deletions(-) delete mode 100644 apps/multitimer/alarm.js create mode 100644 apps/multitimer/boot.js create mode 100644 apps/multitimer/ext.js diff --git a/apps/multitimer/alarm.js b/apps/multitimer/alarm.js deleted file mode 100644 index 77aa416b9..000000000 --- a/apps/multitimer/alarm.js +++ /dev/null @@ -1,199 +0,0 @@ -//sched.js, modified -// Chances are boot0.js got run already and scheduled *another* -// 'load(sched.js)' - so let's remove it first! -if (Bangle.SCHED) { - clearInterval(Bangle.SCHED); - delete Bangle.SCHED; -} - -function hardMode(tries, max) { - var R = Bangle.appRect; - - function adv() { - tries++; - hardMode(tries, max); - } - - if (tries < max) { - g.clear(); - g.reset(); - g.setClipRect(R.x,R.y,R.x2,R.y2); - var code = Math.abs(E.hwRand()%4); - if (code == 0) dir = "up"; - else if (code == 1) dir = "right"; - else if (code == 2) dir = "down"; - else dir = "left"; - g.setFont("6x8:2").setFontAlign(0,0).drawString(tries+"/"+max+"\nSwipe "+dir, (R.x2-R.x)/2, (R.y2-R.y)/2); - var drag; - Bangle.setUI({ - mode : "custom", - drag : e=>{ - if (!drag) { // start dragging - drag = {x: e.x, y: e.y}; - } else if (!e.b) { // released - const dx = e.x-drag.x, dy = e.y-drag.y; - drag = null; - //horizontal swipes - if (Math.abs(dx)>Math.abs(dy)+10) { - //left - if (dx<0 && code == 3) adv(); - //right - else if (dx>0 && code == 1) adv(); - //wrong swipe - reset - else startHM(); - } - //vertical swipes - else if (Math.abs(dy)>Math.abs(dx)+10) { - //up - if (dy<0 && code == 0) adv(); - //down - else if (dy>0 && code == 2) adv(); - //wrong swipe - reset - else startHM(); - } - } - } - }); - } - else { - if (!active[0].timer) active[0].last = (new Date()).getDate(); - if (!active[0].rp) active[0].on = false; - if (active[0].timer) active[0].timer = active[0].data.ot; - require("sched").setAlarms(alarms); - load(); - } -} - -function startHM() { - //between 5-8 random swipes - hardMode(0, Math.abs(E.hwRand()%4)+5); -} - -function showAlarm(alarm) { - const alarmIndex = alarms.indexOf(alarm); - const settings = require("sched").getSettings(); - - let message = ""; - message += alarm.timer ? require("time_utils").formatDuration(alarm.timer) : require("time_utils").formatTime(alarm.t); - if (alarm.msg) { - message += "\n" + alarm.msg; - } else { - message = (alarm.timer - ? atob("ACQswgD//33vRcGHIQAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAABVVVAAAAAAAAAP/wAAAAAAAAAP/wAAAAAAAAAqqoAPAAAAAAqqqqoP8AAAAKqqqqqv/AAACqqqqqqq/wAAKqqqlWqqvwAAqqqqlVaqrAACqqqqlVVqqAAKqqqqlVVaqgAKqaqqlVVWqgAqpWqqlVVVqoAqlWqqlVVVaoCqlV6qlVVVaqCqVVfqlVVVWqCqVVf6lVVVWqKpVVX/lVVVVqqpVVV/+VVVVqqpVVV//lVVVqqpVVVfr1VVVqqpVVVfr1VVVqqpVVVb/lVVVqqpVVVW+VVVVqqpVVVVVVVVVqiqVVVVVVVVWqCqVVVVVVVVWqCqlVVVVVVVaqAqlVVVVVVVaoAqpVVVVVVVqoAKqVVVVVVWqgAKqlVVVVVaqgACqpVVVVVqqAAAqqlVVVaqoAAAKqqVVWqqgAAACqqqqqqqAAAAAKqqqqqgAAAAAAqqqqoAAAAAAAAqqoAAAAA==") - : atob("AC0swgF97///RcEpMlVVVVVVf9VVVVVVVVX/9VVf9VVf/1VVV///1Vf9VX///VVX///VWqqlV///1Vf//9aqqqqpf//9V///2qqqqqqn///V///6qqqqqqr///X//+qqoAAKqqv//3//6qoAAAAKqr//3//qqAAAAAAqq//3/+qoAADwAAKqv/3/+qgAADwAACqv/3/aqAAADwAAAqp/19qoAAADwAAAKqfV1qgAAADwAAACqXVWqgAAADwAAACqlVWqAAAADwAAAAqlVWqAAAADwAAAAqlVWqAAAADwAAAAqlVaoAAAADwAAAAKpVaoAAAADwAAAAKpVaoAAAADwAAAAKpVaoAAAAOsAAAAKpVaoAAAAOsAAAAKpVaoAAAAL/AAAAKpVaoAAAAgPwAAAKpVaoAAACAD8AAAKpVWqAAAIAA/AAAqlVWqAAAgAAPwAAqlVWqAACAAADwAAqlVWqgAIAAAAAACqlVVqgAgAAAAAACqVVVqoAAAAAAAAKqVVVaqAAAAAAAAqpVVVWqgAAAAAACqlVVVWqoAAAAAAKqlVVVVqqAAAAAAqqVVVVVaqoAAAAKqpVVVVVeqqoAAKqqtVVVVV/6qqqqqqr/VVVVX/2qqqqqqn/1VVVf/VaqqqqpV/9VVVf9VVWqqlVVf9VVVf1VVVVVVVVX9VQ==") - ) + " " + message - } - - Bangle.loadWidgets(); - Bangle.drawWidgets(); - - let buzzCount = settings.buzzCount; - - if (alarm.data.hm && alarm.data.hm == true) { - //hard mode extends auto-snooze time - buzzCount = buzzCount * 3; - startHM(); - } - - else { - E.showPrompt(message, { - title: alarm.timer ? /*LANG*/"TIMER!" : /*LANG*/"ALARM!", - buttons: { /*LANG*/"Snooze": true, /*LANG*/"Stop": false } // default is sleep so it'll come back in some mins - }).then(function (sleep) { - buzzCount = 0; - - if (sleep) { - if (alarm.ot === undefined) { - alarm.ot = alarm.t; - } - alarm.t += settings.defaultSnoozeMillis; - Bangle.emit("alarmSnooze", alarm); - } else { - let del = alarm.del === undefined ? settings.defaultDeleteExpiredTimers : alarm.del; - if (del) { - if (alarmIndex >= 0) alarms.splice(alarmIndex, 1); - } else { - if (alarm.date && alarm.rp) { - setNextRepeatDate(alarm); - } else if (!alarm.timer) { - alarm.last = new Date().getDate(); - } - if (alarm.ot !== undefined) { - alarm.t = alarm.ot; - delete alarm.ot; - } - if (!alarm.rp) { - alarm.on = false; - } - } - Bangle.emit("alarmDismiss", alarm); - } - //reset timer value - if (alarm.timer) alarm.timer = alarm.data.ot; - // The updated alarm is still a member of 'alarms' - // so writing to array writes changes back directly - require("sched").setAlarms(alarms); - load(); - }); - } - - function buzz() { - if (settings.unlockAtBuzz) { - Bangle.setLocked(false); - } - - const pattern = alarm.vibrate || (alarm.timer ? settings.defaultTimerPattern : settings.defaultAlarmPattern); - require("buzz").pattern(pattern).then(() => { - if (buzzCount--) { - setTimeout(buzz, settings.buzzIntervalMillis); - } else if (alarm.as) { // auto-snooze - buzzCount = settings.buzzCount; - setTimeout(buzz, settings.defaultSnoozeMillis); - } - }); - } - - function setNextRepeatDate(alarm) { - let date = new Date(alarm.date); - let rp = alarm.rp; - if (rp===true) { // fallback in case rp is set wrong - date.setDate(date.getDate() + 1); - } else switch(rp.interval) { // rp is an object - case "day": - date.setDate(date.getDate() + rp.num); - break; - case "week": - date.setDate(date.getDate() + (rp.num * 7)); - break; - case "month": - if (!alarm.od) alarm.od = date.getDate(); - date = new Date(date.getFullYear(), date.getMonth() + rp.num, alarm.od); - if (date.getDate() != alarm.od) date.setDate(0); - break; - case "year": - if (!alarm.od) alarm.od = date.getDate(); - date = new Date(date.getFullYear() + rp.num, date.getMonth(), alarm.od); - if (date.getDate() != alarm.od) date.setDate(0); - break; - default: - console.log(`sched: unknown repeat '${JSON.stringify(rp)}'`); - break; - } - alarm.date = date.toLocalISOString().slice(0,10); - } - - if ((require("Storage").readJSON("setting.json", 1) || {}).quiet > 1) - return; - - buzz(); -} - -let alarms = require("sched").getAlarms(); -let active = require("sched").getActiveAlarms(alarms); -if (active.length) { - // if there's an alarm, show it - showAlarm(active[0]); -} else { - // otherwise just go back to default app - setTimeout(load, 100); -} diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index 841b7b6e9..c3b9aa629 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -1,6 +1,13 @@ Bangle.loadWidgets(); Bangle.drawWidgets(); +const triggercheck = ` + eval(require("Storage").read("multitimer.ext.js")); + buzzCount *= 3; + startHM(); + "skipPrompt" +`; + var R = Bangle.appRect; var layer; var drag; @@ -290,8 +297,13 @@ function editTimer(idx, a) { } }, "Hard Mode": { - value: !!a.data.hm, - onchange: v => a.data.hm = v + value: !!a.triggercheck, + onchange: v => { + if (v) + a.triggercheck = triggercheck; + else + delete a.triggercheck; + }, }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), "Oneshot": { @@ -619,8 +631,13 @@ function editAlarm(idx, a) { onchange: () => editDOW(a.dow, d=>{a.dow=d;editAlarm(idx,a);}) }, "Hard Mode": { - value: !!a.data.hm, - onchange: v => a.data.hm = v + value: !!a.triggercheck, + onchange: v => { + if (v) + a.triggercheck = triggercheck; + else + delete a.triggercheck; + }, }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), "Oneshot": { diff --git a/apps/multitimer/boot.js b/apps/multitimer/boot.js new file mode 100644 index 000000000..13f1d6363 --- /dev/null +++ b/apps/multitimer/boot.js @@ -0,0 +1,8 @@ +{ + const resetTimer = alarm => { + if (alarm.timer) alarm.timer = alarm.data.ot; + }; + + Bangle.on("alarmSnooze", resetTimer); + Bangle.on("alarmDismiss", resetTimer); +} diff --git a/apps/multitimer/ext.js b/apps/multitimer/ext.js new file mode 100644 index 000000000..6e29e737d --- /dev/null +++ b/apps/multitimer/ext.js @@ -0,0 +1,64 @@ +// called by alarm.triggercheck + +function hardMode(tries, max) { + var R = Bangle.appRect; + + function adv() { + tries++; + hardMode(tries, max); + } + + if (tries < max) { + g.clear(); + g.reset(); + g.setClipRect(R.x,R.y,R.x2,R.y2); + var code = Math.abs(E.hwRand()%4); + if (code == 0) dir = "up"; + else if (code == 1) dir = "right"; + else if (code == 2) dir = "down"; + else dir = "left"; + g.setFont("6x8:2").setFontAlign(0,0).drawString(tries+"/"+max+"\nSwipe "+dir, (R.x2-R.x)/2, (R.y2-R.y)/2); + var drag; + Bangle.setUI({ + mode : "custom", + drag : e=>{ + if (!drag) { // start dragging + drag = {x: e.x, y: e.y}; + } else if (!e.b) { // released + const dx = e.x-drag.x, dy = e.y-drag.y; + drag = null; + //horizontal swipes + if (Math.abs(dx)>Math.abs(dy)+10) { + //left + if (dx<0 && code == 3) adv(); + //right + else if (dx>0 && code == 1) adv(); + //wrong swipe - reset + else startHM(); + } + //vertical swipes + else if (Math.abs(dy)>Math.abs(dx)+10) { + //up + if (dy<0 && code == 0) adv(); + //down + else if (dy>0 && code == 2) adv(); + //wrong swipe - reset + else startHM(); + } + } + } + }); + } + else { + if (!active[0].timer) active[0].last = (new Date()).getDate(); + if (!active[0].rp) active[0].on = false; + if (active[0].timer) active[0].timer = active[0].data.ot; + require("sched").setAlarms(alarms); + load(); + } +} + +function startHM() { + //between 5-8 random swipes + hardMode(0, Math.abs(E.hwRand()%4)+5); +} diff --git a/apps/multitimer/metadata.json b/apps/multitimer/metadata.json index 0c9eddc9e..6ae92fbdc 100644 --- a/apps/multitimer/metadata.json +++ b/apps/multitimer/metadata.json @@ -14,7 +14,8 @@ "readme": "README.md", "storage": [ {"name":"multitimer.app.js","url":"app.js"}, - {"name":"multitimer.alarm.js","url":"alarm.js"}, + {"name":"multitimer.boot.js","url":"boot.js"}, + {"name":"multitimer.ext.js","url":"ext.js"}, {"name":"multitimer.img","url":"app-icon.js","evaluate":true} ], "data": [{"name":"multitimer.json"}], diff --git a/apps/sched/sched.js b/apps/sched/sched.js index 6eea4add5..9b5bb149c 100644 --- a/apps/sched/sched.js +++ b/apps/sched/sched.js @@ -24,45 +24,57 @@ function showAlarm(alarm) { Bangle.drawWidgets(); let buzzCount = settings.buzzCount; + let showPrompt = true; - E.showPrompt(message, { - title: alarm.timer ? /*LANG*/"TIMER!" : /*LANG*/"ALARM!", - buttons: { /*LANG*/"Snooze": true, /*LANG*/"Stop": false } // default is sleep so it'll come back in some mins - }).then(function (sleep) { - buzzCount = 0; - - if (sleep) { - if (alarm.ot === undefined) { - alarm.ot = alarm.t; - } - alarm.t += settings.defaultSnoozeMillis; - Bangle.emit("alarmSnooze", alarm); - } else { - let del = alarm.del === undefined ? settings.defaultDeleteExpiredTimers : alarm.del; - if (del) { - if (alarmIndex >= 0) alarms.splice(alarmIndex, 1); - } else { - if (alarm.date && alarm.rp) { - setNextRepeatDate(alarm); - } else if (!alarm.timer) { - alarm.last = new Date().getDate(); - } - if (alarm.ot !== undefined) { - alarm.t = alarm.ot; - delete alarm.ot; - } - if (!alarm.rp) { - alarm.on = false; - } - } - Bangle.emit("alarmDismiss", alarm); + if (alarm.triggercheck) { + try { + const action = eval(alarm.triggercheck); + if (action === "skipPrompt") + showPrompt = false; + } catch (e) { + // ignore errors, continue } + } + if (showPrompt) { + E.showPrompt(message, { + title: alarm.timer ? /*LANG*/"TIMER!" : /*LANG*/"ALARM!", + buttons: { /*LANG*/"Snooze": true, /*LANG*/"Stop": false } // default is sleep so it'll come back in some mins + }).then(function (sleep) { + buzzCount = 0; - // The updated alarm is still a member of 'alarms' - // so writing to array writes changes back directly - require("sched").setAlarms(alarms); - load(); - }); + if (sleep) { + if (alarm.ot === undefined) { + alarm.ot = alarm.t; + } + alarm.t += settings.defaultSnoozeMillis; + Bangle.emit("alarmSnooze", alarm); + } else { + let del = alarm.del === undefined ? settings.defaultDeleteExpiredTimers : alarm.del; + if (del) { + if (alarmIndex >= 0) alarms.splice(alarmIndex, 1); + } else { + if (alarm.date && alarm.rp) { + setNextRepeatDate(alarm); + } else if (!alarm.timer) { + alarm.last = new Date().getDate(); + } + if (alarm.ot !== undefined) { + alarm.t = alarm.ot; + delete alarm.ot; + } + if (!alarm.rp) { + alarm.on = false; + } + } + Bangle.emit("alarmDismiss", alarm); + } + + // The updated alarm is still a member of 'alarms' + // so writing to array writes changes back directly + require("sched").setAlarms(alarms); + load(); + }); + } function buzz() { if (settings.unlockAtBuzz) { @@ -102,7 +114,7 @@ function showAlarm(alarm) { date = new Date(date.getFullYear() + rp.num, date.getMonth(), alarm.od); if (date.getDate() != alarm.od) date.setDate(0); break; - default: + default: console.log(`sched: unknown repeat '${JSON.stringify(rp)}'`); break; } diff --git a/typescript/types/sched.d.ts b/typescript/types/sched.d.ts index 78ad0c8d4..f12e425db 100644 --- a/typescript/types/sched.d.ts +++ b/typescript/types/sched.d.ts @@ -65,6 +65,10 @@ declare module Sched { js?: string, data?: unknown, + // optional features + triggercheck?: string, // code that's eval'd when the alarm is triggered, + // may return "skipPrompt" to cancel the default behaviour + // set by sched last?: number, } & ( From 8a63039b4661b46c8787380bb792893fc77d19e2 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 19:29:54 +0100 Subject: [PATCH 1412/1725] multitimer/sched: version bump --- apps/multitimer/ChangeLog | 2 +- apps/sched/ChangeLog | 1 + apps/sched/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/multitimer/ChangeLog b/apps/multitimer/ChangeLog index 3100146e9..252d8a227 100644 --- a/apps/multitimer/ChangeLog +++ b/apps/multitimer/ChangeLog @@ -1,4 +1,4 @@ 0.01: Initial version 0.02: Update for time_utils module 0.03: Use default Bangle formatter for booleans -0.04: Merge in alarm app's newer changes: +0.04: Use sched's triggercheck to run hardmode, and listeners for timer reset diff --git a/apps/sched/ChangeLog b/apps/sched/ChangeLog index 92b04fb32..951f4e2cc 100644 --- a/apps/sched/ChangeLog +++ b/apps/sched/ChangeLog @@ -23,3 +23,4 @@ 0.20: Alarm dismiss and snooze events 0.21: Fix crash in clock_info 0.22: Dated event repeat option +0.23: Allow alarms to run custom code (and disable the default prompt) when triggered diff --git a/apps/sched/metadata.json b/apps/sched/metadata.json index aa286ce6a..7f94a0a18 100644 --- a/apps/sched/metadata.json +++ b/apps/sched/metadata.json @@ -1,7 +1,7 @@ { "id": "sched", "name": "Scheduler", - "version": "0.22", + "version": "0.23", "description": "Scheduling library for alarms and timers", "icon": "app.png", "type": "scheduler", From e32c6ead5a3dc4c2e29369cb7606039a3733854f Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 12 Jun 2023 12:32:23 +0100 Subject: [PATCH 1413/1725] Handle nav messages from newer Gadgetbridge builds that output distance as a String --- apps/messagegui/ChangeLog | 3 ++- apps/messagegui/app.js | 8 +++++--- apps/messagegui/metadata.json | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index 2e8f9bb3c..7418f83d5 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -93,4 +93,5 @@ Message view is now taller, and we use swipe left/right to dismiss messages rather than buttons 0.68: More navigation icons (for roundabouts) 0.69: More navigation icons (keep/uturn left/right) - Nav messages with '/' now get split on newlines \ No newline at end of file + Nav messages with '/' now get split on newlines +0.70: Handle nav messages from newer Gadgetbridge builds that output distance as a String \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index 97396496f..fbb2058b7 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -15,8 +15,8 @@ // a message require("messages").pushMessage({"t":"add","id":1575479849,"src":"Skype","title":"My Friend","body":"Hey! How's everything going?",positive:1,negative:1}) // maps -GB({t:"nav",src:"maps",title:"Navigation",instr:"High St towards Tollgate Rd",distance:966,action:"continue",eta:"08:39"}) -GB({t:"nav",src:"maps",title:"Navigation",instr:"High St",distance:12345,action:"left_slight",eta:"08:39"}) +GB({t:"nav",src:"maps",title:"Navigation",instr:"High St towards Tollgate Rd",distance:"966yd",action:"continue",eta:"08:39"}) +GB({t:"nav",src:"maps",title:"Navigation",instr:"High St",distance:"12km",action:"left_slight",eta:"08:39"}) GB({t:"nav",src:"maps",title:"Navigation",instr:"Main St / I-29 ALT / Centerpoint Dr",distance:12345,action:"left_slight",eta:"08:39"}) // call require("messages").pushMessage({"t":"add","id":"call","src":"Phone","title":"Bob","body":"12421312",positive:true,negative:true}) @@ -82,7 +82,9 @@ E.on("kill", saveMessages); function showMapMessage(msg) { active = "map"; var m, distance, street, target, img; - if (msg.distance!==undefined) + if ("string"==typeof msg.distance) // new gadgetbridge + distance = msg.distance; + else if ("number"==typeof msg.distance) // 0.74 gadgetbridge distance = require("locale").distance(msg.distance); if (msg.instr) { var instr = msg.instr.replace(/\s*\/\s*/g," \/\n"); // convert slashes to newlines diff --git a/apps/messagegui/metadata.json b/apps/messagegui/metadata.json index dffff0c58..a7a93ffe9 100644 --- a/apps/messagegui/metadata.json +++ b/apps/messagegui/metadata.json @@ -2,7 +2,7 @@ "id": "messagegui", "name": "Message UI", "shortName": "Messages", - "version": "0.69", + "version": "0.70", "description": "Default app to display notifications from iOS and Gadgetbridge/Android", "icon": "app.png", "type": "app", From 909ddf74aa654e28ea1e643c33dc2821e7fb72db Mon Sep 17 00:00:00 2001 From: stweedo Date: Mon, 12 Jun 2023 07:31:23 -0500 Subject: [PATCH 1414/1725] [ohmcalc] - v0.04: Fix font size not resetting on subsequent values in results screen --- apps/ohmcalc/ChangeLog | 1 + apps/ohmcalc/app.js | 6 ++---- apps/ohmcalc/metadata.json | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/apps/ohmcalc/ChangeLog b/apps/ohmcalc/ChangeLog index af752b896..625982edd 100644 --- a/apps/ohmcalc/ChangeLog +++ b/apps/ohmcalc/ChangeLog @@ -1,3 +1,4 @@ 0.01: New App! 0.02: New Results menu item to show the formula and values used. 0.03: Adds haptics to Input screen and long press "C" to go back. +0.04: Fix font size not resetting on subsequent values in results screen diff --git a/apps/ohmcalc/app.js b/apps/ohmcalc/app.js index aa470401c..5ef30aaa5 100644 --- a/apps/ohmcalc/app.js +++ b/apps/ohmcalc/app.js @@ -291,13 +291,11 @@ function calculateValue(calculatedVariable, variableValues) { function drawResultScreen(result) { let drawPage = function() { clearScreen(); - let fontSize = 30; // Initial font size - let lineSpacing = 15; // Space between lines - // Define the vertical positions of the titles let titlePositions = [10, 72, 132]; - + let lineSpacing = 15; // Space between lines for (let i = 0; i < result.result.length; i++) { + let fontSize = 30; // Initial font size let currentResult = result.result[i]; let resultTitle = currentResult[0]; let resultValue = currentResult[1]; diff --git a/apps/ohmcalc/metadata.json b/apps/ohmcalc/metadata.json index de81ec6d7..252ece421 100644 --- a/apps/ohmcalc/metadata.json +++ b/apps/ohmcalc/metadata.json @@ -2,7 +2,7 @@ "id": "ohmcalc", "name": "Ohm's Law Calculator", "shortName": "Ohm's Law Calc", - "version": "0.03", + "version": "0.04", "description": "A smart and simple calculator for Ohm's Law calculations, designed specifically for Bangle.js 2 smartwatches. Handles voltage, current, resistance, and power calculations with smart logic to prevent invalid inputs.", "icon": "app.png", "type": "app", From 671a793a6c233375be41be47fad6c7838c6edee7 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 12 Jun 2023 14:16:27 +0100 Subject: [PATCH 1415/1725] If we receive a 'music' message and we're in the messages app (but not showing a message) show music (#2814) --- apps/messagegui/ChangeLog | 3 ++- apps/messagegui/app.js | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index 7418f83d5..f7e35ef2a 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -94,4 +94,5 @@ 0.68: More navigation icons (for roundabouts) 0.69: More navigation icons (keep/uturn left/right) Nav messages with '/' now get split on newlines -0.70: Handle nav messages from newer Gadgetbridge builds that output distance as a String \ No newline at end of file +0.70: Handle nav messages from newer Gadgetbridge builds that output distance as a String + If we receive a 'music' message and we're in the messages app (but not showing a message) show music (#2814) \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index fbb2058b7..c78f27a95 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -28,7 +28,7 @@ var fontMedium = g.getFonts().includes("6x15")?"6x15":"6x8:2"; var fontBig = g.getFonts().includes("12x20")?"12x20":"6x8:2"; var fontLarge = g.getFonts().includes("6x15")?"6x15:2":"6x8:4"; var fontVLarge = g.getFonts().includes("6x15")?"12x20:2":"6x8:5"; -var active; // active screen +var active; // active screen (undefined/"list"/"music"/"map"/"message"/"scroller"/"settings") var openMusic = false; // go back to music screen after we handle something else? // hack for 2v10 firmware's lack of ':size' font handling try { @@ -68,7 +68,7 @@ var onMessagesModified = function(type,msg) { } if (msg && msg.id=="music") { if (msg.state && msg.state!="play") openMusic = false; // no longer playing music to go back to - if (active!="music") return; // don't open music over other screens + if ((active!=undefined) && (active!="list") && (active!="music")) return; // don't open music over other screens (but do if we're in the main menu) } showMessage(msg&&msg.id); }; @@ -405,6 +405,7 @@ function checkMessages(options) { options=options||{}; // If no messages, just show 'no messages' and return if (!MESSAGES.length) { + active=undefined; // no messages if (!options.clockIfNoMsg) return E.showPrompt(/*LANG*/"No Messages",{ title:/*LANG*/"Messages", img:require("heatshrink").decompress(atob("kkk4UBrkc/4AC/tEqtACQkBqtUDg0VqAIGgoZFDYQIIM1sD1QAD4AIBhnqA4WrmAIBhc6BAWs8AIBhXOBAWz0AIC2YIC5wID1gkB1c6BAYFBEQPqBAYXBEQOqBAnDAIQaEnkAngaEEAPDFgo+IKA5iIOhCGIAFb7RqAIGgtUBA0VqobFgNVA")), @@ -434,7 +435,7 @@ function checkMessages(options) { // no new messages - go to clock? if (options.clockIfAllRead && newMessages.length==0) return load(); - active = "main"; + active = "list"; // Otherwise show a menu E.showScroller({ h : 48, From 63819bb59478f27bb245e1fcc7c7d45037963466 Mon Sep 17 00:00:00 2001 From: stweedo Date: Mon, 12 Jun 2023 10:16:42 -0500 Subject: [PATCH 1416/1725] [rescalc] - v0.03: Update icon and resistor img --- apps/rescalc/ChangeLog | 3 ++- apps/rescalc/app-icon.js | 2 +- apps/rescalc/metadata.json | 2 +- apps/rescalc/rescalc.png | Bin 3639 -> 2405 bytes apps/rescalc/resistor.js | 2 +- 5 files changed, 5 insertions(+), 4 deletions(-) diff --git a/apps/rescalc/ChangeLog b/apps/rescalc/ChangeLog index 43f41aa76..fcea4ad97 100644 --- a/apps/rescalc/ChangeLog +++ b/apps/rescalc/ChangeLog @@ -1,2 +1,3 @@ 0.01: New App! -0.02: Fixes colors not matching user input from color menu in some cases, 3 bands are now shown larger, various code improvements. \ No newline at end of file +0.02: Fixes colors not matching user input from color menu in some cases, 3 bands are now shown larger, various code improvements. +0.03: Use transparent with better visibility on dark backgrounds, new resistor img with darker outlines diff --git a/apps/rescalc/app-icon.js b/apps/rescalc/app-icon.js index 4ce5b3348..94a0dcd10 100644 --- a/apps/rescalc/app-icon.js +++ b/apps/rescalc/app-icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("mEwxH+64A/AAWsq9Wlksq1X1gtllZ4BlVOqlUp0qA4MrLUIkBqnMAAfV6nU6XMqgNBMjuBgFOFogAB5vN6nVGYPMp0AwIuamUA4wuGGgwxB40Aqy5aFA+ivF40QIEMgPMYrFXFw9+dIT1CvxiFGANXdSwuGWYLkEB4LLEGAb0UgF4Fw73CL4LnCvSTE6nUvARCACGBLw5NCRYK/BAYITBp4QEMAQ8CLy8qmT3BkgIDkjnB2YRESIJgTLxC4C6QID6RoDMA6ORKYgABJQVWc4jICqx0GYIMkSCErRw14QoMHvwKFv0HCo3NeIIVBRx+iKg0s68BBQ2igPXlhqF6uiSCC+HqhfCF5MrqjAXF46/CEgxqDX4ovUKgvGF4WsHY0A1gvC4xqFF68AlbZCgJVEvCOBNQMrHYnUvwvQqzZEI4uCEgkAwRHH5vUp1WF56EGgEAkgCBgF+BQZTBBggWF1ovPSA94AAQJFNgILDXy1WJgQADD4oAKzgYGSBoPB1gDBikUgGBGIXGFhPGvAPBq8Ar1eLwT4BF5gDCg2Ox0GAoIxCkgAIBYOBCIMB2ezDwZRCABGBlYQDjUaIYiaBh8HE4I3BklsQgsAslkgHWCwSRKF4fRgETicA6IMFroPCleAAQJdC6/QgE6nUA6Avbg+PmYvDufIkgvVwNWlYvMgNlh4vDtm6F5qdBBwafCBAIvmFIIPClZnCR5ovWE4RYBLwSVGF5VrX4ls3a/RFgQvD1gYCF5B2BmcHgGBwMAklsQIIvWGAIvGLoSkBZoIAHBYJICF4wKDF5DEDgEZjMA1ghEABI9CAQNlsojCOoIPDF44wBDAIAEFpgxGAAoNEQ4TvHAEgv/AD7+DF9bvIF/4v/F/4vpwIvrFlgAE")) \ No newline at end of file +require("heatshrink").decompress(atob("mEwxH+ACXXABIeTFiWs1mBwIDBGMYhCwMrp9VvAACqsrleBGD4tDvOj5oAC5wAB5ujvIxeRAItBFgYwF5/PGQIxBSwQuaLYgAIGQPO0ZiDFy2BqupFA2jv1+HIoxB1NVGCxdCFo2ilUqeQIDB0QwF5qSVCYKMHvDlEfIV4GAqSBF6QSBq1/Fw5PBTIKFC1mAfA1/qwwRDoNPXQ0kFwMrlS/BlRVCqoRESINPCQIvQq1+F4tUJgNWqgIG6z/EMAN+MCC9Cdg0A1mslQJFlRVBgBgGYKCOBPYvN0QaBLwpgEleiMAtVSB7hBvAkFPQQkFBQQ6CUgvOvD9BXx4kGvAvJNQZFF5+iCoIvP0YvUL4vP0YvYKhI6KF6YZF1N+gGs1kqF4sqBIMAv2pIoovQwJ5E1MqqtW1hVBMAl4NIOsq1VlQwD59+d6GsvKNGAAWBpwLDpwjBAASRE515IgIuNAANWQYsrAAUkNYl+kgLDTYqOBAAIvOlej44ABMIV+AAKzF5ujBQRdCCwWjOwYuMVIJMDldPvAyCABfHvFPDAjVCGBXXgAPB1kAikUgGBGwIxL47PBleBgFer0ADoNWgAwJRgRvCgFqtQTCwJkCABAtCC4Wz2YXCEQJhJRoQvDjUaC4YxCnMyE4IFBp9zlQtCC4VlsoXDSJK9DF5dW2YCBD4WB6ACBF5wwEAwQvNmWJrovDvXJp4vTFoUAdwIvMsszF4dz4IvNEoKRDB4QACF8oABBwYECR5wvVLoQrDAQRkBTYYvhE4IvEYYOsDAYvIlc5mUrwIFBp9zlQvNdYQvGCwYvGTQNWFYIAHq0rQgYvSDIIYBF4YtCTQYAIB4YvEQIKiBL5Z+BlcAAQMrFogPBAA4xECwQACTQQvJSAoAFFpIXNEwgvHAEwv/F/4v/F/4v/F/4vDAAIvqAAIA==")) diff --git a/apps/rescalc/metadata.json b/apps/rescalc/metadata.json index aaa5f2acf..473f334d7 100644 --- a/apps/rescalc/metadata.json +++ b/apps/rescalc/metadata.json @@ -3,7 +3,7 @@ "name": "Resistor Calculator", "shortName": "Resistor Calc", "icon": "rescalc.png", - "version":"0.02", + "version":"0.03", "screenshots": [ {"url": "screenshot.png"}, {"url": "screenshot-1.png"}, diff --git a/apps/rescalc/rescalc.png b/apps/rescalc/rescalc.png index d858ef005467804bd18880b0fbb5ae4fee2ebbcb..e986e8a8ba1b9213c62ba6d0e2b3f1b7632bc58f 100644 GIT binary patch delta 2394 zcmV-g38nV89OV*_B!3BTNLh0L01FcU01FcV0GgZ_000RWNkllMocYiB&bjy9|9`&wegFOM@*W}ow|XWd zgmfT;#E8XYrIHhTLLnBD6@-xJ>NWv+1+60|75qi)EGTKMcQQtYbLJJZRQU5;R|Z;+ z8p@e{^iC#;SYTGT2vP|l?Z_)&elAkM5j8I~FQ1{R{O2A$em-HSMR9I_Sbkgx^Q8os z&&R@aCJg6ydw+oXYWdenlybpNLWsvpVJ;Do7&#{_Svrj`FFfj1k9ZA?-v+?+_rWmb zje+^%R9LSjqwGdH%=xoXn9~kRrt;--PH2*dNaX*LyMU7lR?>7hzq@|Kp9RL#?P0z+ z8D%#+&4PUHw!-WQ^ zRU^c5Wg$xc^#|NK;*UOEBxVIC*!)7ti$%hCe{WIAogYcD0vo;{0u_wJ#UP7a$HJ=vO_6ZcOBK_(Gc2_gFC5HN8>Kbgr<^iOVe zM@Z*3EVA=HoQnmM)edKBUc4*j&-;M+hI9(R>GW2%YvIydn9hwsL?0Pl%rQ-7uTs3W zedBz`q_!>7AaYy;BQ49Y+q)(Bbm;Ivou;iPYsnq@M)6; zXnEneW1HL^lA@Qj8PnnzsUBV1*^O!qPNlU%&u&4?m-b2dz}5DE`>qQ+7rxox4y~#g z)`6=+Sdh2N@s(j~k_OS^M=(-v_v?=Ak9AKy3ld$S`Wl`wlcR=npp-ImXE#rp{}nQv&%4zNG7-YC1C z20A7kyU7CFRKl}ow%bpOYhQWNg9j3c2)A$F#_{9F5!}X=?M(J|s~~?Ba&mH*uUPDa z^u-z!WO>?ow-3JG)~b0@$jw#wWq-yR+cV(CAy4>tDll^RAjD6M!mV4kSY!te48zBX zwyBYlsKJmyy_nCSgXk;4a}wU+|_$^J!z@w?8jTv>!Yf7C+fD%{^>0b-G0(ZVVG zFGB9J-Y|v>rZs`ccJ|Eu^?XgSbyRyOlqeh9}r>!2N>;+{yC7;q^LXu61Le`~1~|_Hz0OE@gNypBn$e z>vg!3?S=ba8E}7p^}90-xPO%H0p3MuZt4#JCz(t(PovS~Ig3PPdcC63;IFBm2=Lcb zM1*OpHqFxD&K?7bj@l>uG(0$Jz`cD2>`HV)^gy@D_HA2L`1^Y@crUG z)YT%opRS5xD&AXoDEzOagcmg$(4m6fbLBqXGm5Hg@K z0>(#0MVagF77{rJb_H<3MP{Y4<9~cBx#U1g%Wd4+-0C;I)5g8PJI#+6DtTIa~dPy zcX4rX7KZ}lTZlRe zk)FzkTdh_U7ZscAcX8Dgnam_2(VZz4Fxc6)m(LT1$;&bd9O}AdeWpx zFI|AqXk=@|P6{OuLblZvaElPa)v3#_T)Fbo%NAfZn}1POR%TCtOEu?OGd4)69_!Yv zGd4y*N=nKzZ==b{$&E^(`Sa&jR_DJ%&J6_!Z``8GW0qXZB_)Jmmtw?rZ_OC*vqA|McPl5z@XsrVt!^Z62qgifoBJij@K zM54(ml`2mnioEY`Ei8+k{^e@T%MRmM)-wOBayX z(gheDR$7P|9adV1868$yh#4JLT8J4PR$7P|NrUTYOS6QRO`uuqzh0-1Oij~8 literal 3639 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 diff --git a/apps/rescalc/resistor.js b/apps/rescalc/resistor.js index 251835378..eeb01af7b 100644 --- a/apps/rescalc/resistor.js +++ b/apps/rescalc/resistor.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("2EwxH+AE41JGVBV/KvnPABD/ZAGJVNU/6tHKpIA/ADqx/Vv6x/Vv4A/WP6u/AH6w/VyB7/WOyu/AH6w/V34A/WH6u/AH6w/V34A/WGUAV/6v/WFyu/AH6wBV34A/WH6v/AH6v/V34A/WHav/AH6v/AH6v/V34A/WH6v/AH6v/NP4A/V7VWACSv/AH6vHTaav/AH6v/V/4A/V/4A/V/6v/AH6v/V/4A/V9/+ACSv/AH6vHTaav/AH6v/V/4A/V+aw/AH6uvV/4A/V/4A/V/6w/AH6u/V/4A/V/6w/AH6uxV4Kw/V36vuWAJx/V/yuuWH6u/V2Cw/V36w/AH6u/WH4A/V36wVWP6tzV3Kw/V36x/AH6t/WP4A/Vv6xZWZYNDAH4AHKpqn/WZ4AFJP5V9A=")) +require("heatshrink").decompress(atob("2EwxH+AE41JGVBV/Kv3PAAr/aAGRUGKoqn/VpBVHAH4AdWP6t/WP6t/AH6x/V0Z//WOau/AH6xwV254/WHCx0V36w7V34A/WH6uiV/6w/V34A/V9ywuV34A/WAKutV/4A/WFyu/AH6vugCv/AH6wuV34A/V/4A/V+qwoFIJr/AH6wFV9Bp/AH6vagAATNP4A/V4wAoNP4A/V7WBACSv/AH6vHTaav/AH6vbWE6v/AH6v/AH6v3TagATNP4A/V4wAoNP4A/V7X+ACSv/AH6vHTaavUWH4A/V9ywBNX4A/Vwiv/AH6vvV1CvBWH4A/V9ywBNn4A/V1qvBWH4A/V9ywBN34A/V1qvBWH6u/V9yw/AH6uvWARy/V36w/AH6u/WH4A/VzSv1WAKx/V2yt1WH6t3V3KwDWP6twV3ax/Vv6x/AH6t/WNK0JBgoA/AA6rKVv6zTKv5V/AAI=")) From 48dab10baf0194406132b9708e540cd0ac1f71cd Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Mon, 12 Jun 2023 10:19:59 -0500 Subject: [PATCH 1417/1725] Update ChangeLog --- apps/rescalc/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/rescalc/ChangeLog b/apps/rescalc/ChangeLog index fcea4ad97..7b1d6baca 100644 --- a/apps/rescalc/ChangeLog +++ b/apps/rescalc/ChangeLog @@ -1,3 +1,3 @@ 0.01: New App! 0.02: Fixes colors not matching user input from color menu in some cases, 3 bands are now shown larger, various code improvements. -0.03: Use transparent with better visibility on dark backgrounds, new resistor img with darker outlines +0.03: Use transparent icon with better visibility on dark backgrounds, new resistor img with darker outlines From c704ae4115eed10823c5047faf8eeb8d32a23639 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 12 Jun 2023 19:30:50 +0200 Subject: [PATCH 1418/1725] gpstrek - Clear after first draw, not before --- apps/gpstrek/app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index c430ac4e8..fbdeb1162 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -1557,9 +1557,9 @@ let draw = function(){ } }; +clear(); + switchMode(MODE_SLICES); setInterval(updateRouting, 500); - -clear(); } From 778f363c201232603a5861b2e8e1f391c498e74e Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 12 Jun 2023 20:01:40 +0200 Subject: [PATCH 1419/1725] gpstrek - Correct position arrow at the top --- apps/gpstrek/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index fbdeb1162..6ff627ff9 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -414,7 +414,7 @@ let getMapSlice = function(){ if (!isMapOverview){ if (pos[0] < x) { pos[0] = x + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x+errorMarkerSize,y+height);} if (pos[0] > x + width) {pos[0] = x + width - errorMarkerSize - 5; graphics.setColor(1,0,0).fillRect(x + width - errorMarkerSize,y,x + width ,y+height);} - if (pos[1] < y) {pos[1] = y + errorMarkerSize + 5; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} + if (pos[1] < y) {pos[1] = y + errorMarkerSize + 1; graphics.setColor(1,0,0).fillRect(x,y,x + width,y+errorMarkerSize);} if (pos[1] > y + height - interfaceHeight -1) { pos[1] = y + height - errorMarkerSize - 5-interfaceHeight-1; graphics.setColor(1,0,0).fillRect(x,y + height - errorMarkerSize-interfaceHeight-1,x + width ,y+height-interfaceHeight-1);} } From fad9c07badd6e30acd279f1968bb79801fc9552e Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 12 Jun 2023 20:36:42 +0200 Subject: [PATCH 1420/1725] gpstrek - Move scrolling marker more into corner --- apps/gpstrek/app.js | 2 +- apps/gpstrek/screenOverview.png | Bin 2928 -> 3054 bytes apps/gpstrek/screenOverviewScroll.png | Bin 2493 -> 3043 bytes 3 files changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/app.js b/apps/gpstrek/app.js index 6ff627ff9..95db86aaf 100644 --- a/apps/gpstrek/app.js +++ b/apps/gpstrek/app.js @@ -452,7 +452,7 @@ let getMapSlice = function(){ if (isMapOverview && scrolling){ addToTaskQueue(()=>{ graphics.setColor(graphics.theme.fg); - graphics.drawImage(move, compassCenterX-move.width/2, compassCenterY-move.height/2); + graphics.drawImage(move, compassCenterX-compassHeight, compassCenterY-compassHeight); }); } diff --git a/apps/gpstrek/screenOverview.png b/apps/gpstrek/screenOverview.png index 2ab2291025a5b04197a734a15ebacc40fed0eed1..f18b5196faa6d3d4714c708f14b3b3d9e1b68a5e 100644 GIT binary patch literal 3054 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 alx;r0un{%E7FiO^>;QGf$(m$^z4;$|0G>Pm literal 2928 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 diff --git a/apps/gpstrek/screenOverviewScroll.png b/apps/gpstrek/screenOverviewScroll.png index 157fe92ec5849e288ff98105852c6745144dc286..29f796381a995ec4ab22c17e7ef34d40101dd7bd 100644 GIT binary patch delta 3009 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 L;*G0v4m$rI1A3cu From 4079f5c369b8887f0269e56b87ecd6032db6cef8 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Sun, 11 Jun 2023 21:53:48 -0400 Subject: [PATCH 1421/1725] Initial commit - menu system for reminders --- apps/remindr/app.js | 262 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 262 insertions(+) create mode 100644 apps/remindr/app.js diff --git a/apps/remindr/app.js b/apps/remindr/app.js new file mode 100644 index 000000000..e847dccc4 --- /dev/null +++ b/apps/remindr/app.js @@ -0,0 +1,262 @@ +const textInput = require("textinput"); +g.clearRect(Bangle.appRect); +g.reset(); +Bangle.loadWidgets(); +Bangle.drawWidgets(); + +function createButton(x, y, w, h, text, callback) { + text = text || ""; + const x2 = x + w; + const y2 = y + h; + const r = 8; + const padding = 2; + const getDrawable = (xOff, yOff, wOff, hOff, rOff) => { + xOff = xOff || 0; + yOff = yOff || 0; + wOff = wOff || 0; + hOff = hOff || 0; + rOff = rOff || 0; + return {x: x + xOff, y: y + yOff, x2: x2 + wOff, y2: y2 + hOff, r: r + rOff}; + }; + let onTouch; + if (callback) { + onTouch = (button, xy) => { + const isTouched = x < xy.x && x2 > xy.x && y < xy.y && y2 > xy.y; + if (isTouched) { + Bangle.buzz(30, 1); + return callback(); + } + }; + } + return { + x, y, w, h, r, text, getDrawable, padding, onTouch + }; +} + +function drawButton(button) { + const textMaxWidth = button.w - 2 * button.padding; + let textOutlineCol = g.theme.bgH; + let textCol = g.theme.fg; + if (button.onTouch) { + g.setColor(g.theme.fg) + .fillRect(button.getDrawable()); + g.setColor(g.theme.bg) + .fillRect(button.getDrawable(2, 1, -1, -1)); + g.setColor(g.theme.bg2) + .fillRect(button.getDrawable(3, 3, -3, -3)); + textOutlineCol = g.theme.bg; + textCol = g.theme.fg; + } + const font = getBestFontForButton(button); + // Wrap sometimes adds a line break at the beginning if your string is very small. + // So we filter out any elements that are empty. + const wrapText = g.setFont(font) + .wrapString(button.text, textMaxWidth) + .filter(t => !!t) + .join("\n"); + g.setFontAlign(0, 0) + .setColor(textOutlineCol) + .drawString(wrapText, button.x + button.w / 2 + 1, button.y + button.h / 2 - 1, false); + g.setFontAlign(0, 0) + .setColor(textOutlineCol) + .drawString(wrapText, button.x + button.w / 2 - 1, button.y + button.h / 2 - 1, false); + g.setFontAlign(0, 0) + .setColor(textOutlineCol) + .drawString(wrapText, button.x + button.w / 2 - 1, button.y + button.h / 2 + 1, false); + g.setFontAlign(0, 0) + .setColor(textOutlineCol) + .drawString(wrapText, button.x + button.w / 2 + 1, button.y + button.h / 2 + 1, false); + g.setFontAlign(0, 0) + .setColor(textCol) + .drawString(wrapText, button.x + button.w / 2, button.y + button.h / 2, false); + g.reset(); +} + +function getBestFontForButton(button) { + const allowedFonts = ["12x20", "6x15", "6x8", "4x6"]; + let stringMet = g.setFont("Vector:100") + .stringMetrics(button.text); + let stringArea = stringMet.width * stringMet.height; + const sampleMetric = g.setFont("Vector:100") + .stringMetrics("D"); + const vectorRatio = sampleMetric.height / sampleMetric.width; + // Effective height helps us handle tall skinny buttons, since text is usually horizontal. + let effectiveHeight = Math.min(button.h, button.w); + if (!button.text.includes(" ")) { + effectiveHeight = effectiveHeight / vectorRatio + } + const buttonArea = button.w * effectiveHeight; + const ratio = stringArea / buttonArea; + const vecSize = Math.floor(100 / ratio); + if (vecSize > 20) { + return "Vector:" + vecSize; + } + let i; + for (i = 0; i < allowedFonts.length - 1; i++) { + stringMet = g.setFont(allowedFonts[i]) + .stringMetrics(button.text); + stringArea = Math.max(stringMet.width, button.w) * stringMet.height; + if (stringArea < buttonArea * 0.8) { + break; + } + } + return allowedFonts[i]; +} + +function createSwipeControl(rot, text, callback) { + let draw = () => {}; + let appRect = Bangle.appRect; + let isSwiped = () => {}; + switch (rot) { + case 0: + draw = () => drawSwipeHint(appRect.x + appRect.w / 2, appRect.y + appRect.h - 6, 0, text); + isSwiped = (LR, UD) => LR === 1; + break; + case 1: + case -3: + draw = () => drawSwipeHint(appRect.x + 6, appRect.y + appRect.h / 2, 1, text); + isSwiped = (LR, UD) => UD === 1; + break; + case 2: + case -2: + draw = () => drawSwipeHint(appRect.x + appRect.w / 2, appRect.y + appRect.h - 16, 0, text, true); + isSwiped = (LR, UD) => LR === -1; + break; + case 3: + case -1: + draw = () => drawSwipeHint(appRect.x + appRect.w - 6, appRect.y + appRect.h / 2, 3, text); + isSwiped = (LR, UD) => UD === -1; + break; + } + const onSwipe = (LR, UD) => { + if (isSwiped(LR, UD)) { + return callback(); + } + } + return {draw, onSwipe, rot}; +} + +function drawSwipeHint(x, y, rot, text, flip) { + const tw = g.setFont("6x8") + .stringWidth(text); + const w = tw + 41; + const gRot = Graphics.createArrayBuffer(w, 8, 1, {msb: true}); + gRot.setFont("6x8") + .setFontAlign(0, -1) + .drawString(text, w / 2, 1); + gRot.drawLine(0, 4, (w - tw) / 2 - 4, 4); + gRot.drawLine((w + tw + 4) / 2, 4, w, 4); + if (flip) { + gRot.drawLine(0, 4, 4, 1); + gRot.drawLine(0, 4, 4, 7); + } else { + gRot.drawLine(w, 4, w - 4, 1); + gRot.drawLine(w, 4, w - 4, 7); + } + g.setColor(g.theme.fg) + .drawImage(gRot, x, y, {rotate: Math.PI / 2 * rot}); +} + +function createMenu(options) { + let width = options.width || Bangle.appRect.w; + let height = options.height || Bangle.appRect.h; + let offsetY = Bangle.appRect.y; + const spaceBetween = options.spaceBetween || 5; + const spaceAround = options.spaceAround || 5; + const titleFont = options.titleFont || "12x20"; + let marginTop = 0; + let marginBottom = 0; + let marginLeft = 0; + let marginRight = 0; + const swipeControls = options.swipeControls || []; + swipeControls.forEach(control => { + if (control.rot === 0) marginBottom += 8; + if (control.rot === 1) marginLeft += 8; + if (control.rot === 2) marginBottom += 8; + if (control.rot === 3) marginRight += 8; + }); + if (options.title) { + const mets = g.setFont(titleFont) + .stringMetrics(options.title); + marginTop += mets.height; + } + height = height - marginTop - marginBottom; + width = width - marginLeft - marginRight; + const isHorizontal = !!options.isHorizontal; + const numGridSpaces = options.items.reduce((acc, item) => (acc + (item.size || 1)), 0); + const shortDim = isHorizontal ? width : height; + const length = ((shortDim - spaceBetween) / numGridSpaces) - spaceAround; + const buttons = []; + let currentGrid = 0; + options.items.forEach((item, index) => { + let x, y, w, h; + const mySize = item.size || 1; + const myLength = length * mySize + spaceBetween * (mySize - 1); + if (isHorizontal) { + x = spaceAround + currentGrid * (length + spaceBetween) + marginLeft; + y = spaceAround + marginTop + offsetY; + w = myLength; + h = height - 2 * spaceAround; + } else { + x = spaceAround + marginLeft; + y = spaceAround + currentGrid * (length + spaceBetween) + marginTop + offsetY; + w = width - 2 * spaceAround; + h = myLength; + } + currentGrid += item.size || 1; + buttons.push(createButton(x, y, w, h, item.text, item.callback)); + }) + + function render() { + buttons.forEach(drawButton); + if (options.title) { + g.setFont(titleFont) + .setFontAlign(0, -1) + .drawString(options.title, width / 2 + marginLeft, offsetY); + } + swipeControls.forEach(control => control.draw()); + } + + const touchFunc = (button, xy) => buttons.forEach(b => b.onTouch && b.onTouch(button, xy)); + const swipeFunc = (LR, UD) => swipeControls.forEach(s => s.onSwipe(LR, UD)); + return { + buttons, render, setUI: () => Bangle.setUI({mode: "custom", touch: touchFunc, swipe: swipeFunc}) + }; +} + + +function setMenu(menu) { + g.clearRect(Bangle.appRect); + g.reset(); + menu.render(); + menu.setUI(); +} + +let keyboard; +if (textInput.generateKeyboard) { + const charSet = textInput.createCharSet("ABCDEFGHIJKLMNOPQRSTUVWXYZ", ["spc", "ok", "del"]); + keyboard = textInput.generateKeyboard(charSet); +} + +function createTask() { + textInput.input({text: "", keyboardMain: keyboard}) + .then(text => { + const newMenu = createMenu({items: [{text}], swipeControls: taskSwipeControls}); + g.clear(); + setMenu(newMenu); + }) +} + +const taskSwipeControls = [ + createSwipeControl(2, "Menu", () => setMenu(m1)), createSwipeControl(0, "New Task", createTask), +]; + +const m1 = createMenu({ + title : "Working Memory", items: [ + {text: "New Task", size: 2, callback: createTask}, { + text: "Manage", size: 1, callback: () => console.log("SETTINGS") + } + ], isHorizontal: false +}); + +setMenu(m1); From c10a1a62cb2180c3ecebe1fe63294fab0d6e9d27 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Sun, 11 Jun 2023 23:20:00 -0400 Subject: [PATCH 1422/1725] Add task construct --- apps/remindr/app.js | 47 ++++++++++++++++++++++++++++++++++++++------- 1 file changed, 40 insertions(+), 7 deletions(-) diff --git a/apps/remindr/app.js b/apps/remindr/app.js index e847dccc4..3780aef5e 100644 --- a/apps/remindr/app.js +++ b/apps/remindr/app.js @@ -1,9 +1,14 @@ const textInput = require("textinput"); + g.clearRect(Bangle.appRect); g.reset(); Bangle.loadWidgets(); Bangle.drawWidgets(); +let currentTaskRef; +const completedTasks = []; +const incompleteTasks = []; + function createButton(x, y, w, h, text, callback) { text = text || ""; const x2 = x + w; @@ -33,6 +38,7 @@ function createButton(x, y, w, h, text, callback) { }; } + function drawButton(button) { const textMaxWidth = button.w - 2 * button.padding; let textOutlineCol = g.theme.bgH; @@ -169,12 +175,14 @@ function createMenu(options) { let marginLeft = 0; let marginRight = 0; const swipeControls = options.swipeControls || []; + // Add some margin space to fit swipe control hints if they exist. swipeControls.forEach(control => { if (control.rot === 0) marginBottom += 8; if (control.rot === 1) marginLeft += 8; if (control.rot === 2) marginBottom += 8; if (control.rot === 3) marginRight += 8; }); + // Add top margin to fit the title. if (options.title) { const mets = g.setFont(titleFont) .stringMetrics(options.title); @@ -187,10 +195,12 @@ function createMenu(options) { const shortDim = isHorizontal ? width : height; const length = ((shortDim - spaceBetween) / numGridSpaces) - spaceAround; const buttons = []; + // currentGrid tracks what grid square we are covering. Any item may cover multiple grid squares. let currentGrid = 0; - options.items.forEach((item, index) => { + options.items.forEach((item) => { let x, y, w, h; const mySize = item.size || 1; + // myLength represents the shorter of the two dimensions of the button (depending on menu orientation, w / h). const myLength = length * mySize + spaceBetween * (mySize - 1); if (isHorizontal) { x = spaceAround + currentGrid * (length + spaceBetween) + marginLeft; @@ -238,22 +248,45 @@ if (textInput.generateKeyboard) { keyboard = textInput.generateKeyboard(charSet); } -function createTask() { - textInput.input({text: "", keyboardMain: keyboard}) +function newTask(initialText) { + initialText = initialText || ""; + textInput.input({text: initialText, keyboardMain: keyboard}) .then(text => { - const newMenu = createMenu({items: [{text}], swipeControls: taskSwipeControls}); + const task = createTask(text) + incompleteTasks.unshift(task); + currentTaskRef = task; g.clear(); - setMenu(newMenu); + Bangle.drawWidgets(); + setMenu(task.getMenu()); }) } const taskSwipeControls = [ - createSwipeControl(2, "Menu", () => setMenu(m1)), createSwipeControl(0, "New Task", createTask), + createSwipeControl(2, "Menu", () => setMenu(m1)), + createSwipeControl(0, "New Task", newTask), + createSwipeControl(1, "Edit Task", () => newTask("Initial text")) // Placeholder ]; +function createTask(text) { + const incrementalBackoffSet = [0.5, 1, 2, 4, 8, 16, 32]; + const getMenu = () => createMenu({ + items: [{text}], spaceAround: 0, spaceBetween: 0, swipeControls: taskSwipeControls + }); + return { + text, + affirmCount : 0, + distractCount : 0, + unresponsiveCount: 0, + interval : 30, + backoffIndex : 1, + incrementalBackoffSet, + getMenu + }; +} + const m1 = createMenu({ title : "Working Memory", items: [ - {text: "New Task", size: 2, callback: createTask}, { + {text: "New Task", size: 2, callback: newTask}, { text: "Manage", size: 1, callback: () => console.log("SETTINGS") } ], isHorizontal: false From e191c5cb39ed8f41b166e9edd000ce19b6245c56 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Mon, 12 Jun 2023 11:30:47 -0400 Subject: [PATCH 1423/1725] Add tasks lifecycle methods --- apps/remindr/app.js | 108 +++++++++++++++++++++++++++++++++++--------- 1 file changed, 87 insertions(+), 21 deletions(-) diff --git a/apps/remindr/app.js b/apps/remindr/app.js index 3780aef5e..59c7b9128 100644 --- a/apps/remindr/app.js +++ b/apps/remindr/app.js @@ -2,12 +2,12 @@ const textInput = require("textinput"); g.clearRect(Bangle.appRect); g.reset(); +E.showMessage("Loading ... "); Bangle.loadWidgets(); Bangle.drawWidgets(); let currentTaskRef; -const completedTasks = []; -const incompleteTasks = []; +const allTasks = []; function createButton(x, y, w, h, text, callback) { text = text || ""; @@ -242,36 +242,62 @@ function setMenu(menu) { menu.setUI(); } -let keyboard; +let keyboardAlpha, keyboardNum; if (textInput.generateKeyboard) { const charSet = textInput.createCharSet("ABCDEFGHIJKLMNOPQRSTUVWXYZ", ["spc", "ok", "del"]); - keyboard = textInput.generateKeyboard(charSet); + keyboardAlpha = textInput.generateKeyboard(charSet); + keyboardNum = textInput.generateKeyboard([["1","2","3","4","5","6","7","8","9"],["0"],"del", "ok"]); } function newTask(initialText) { initialText = initialText || ""; - textInput.input({text: initialText, keyboardMain: keyboard}) + textInput.input({text: initialText, keyboardMain: keyboardAlpha}) .then(text => { const task = createTask(text) - incompleteTasks.unshift(task); - currentTaskRef = task; - g.clear(); - Bangle.drawWidgets(); - setMenu(task.getMenu()); + allTasks.unshift(task); + startTask(task); }) } -const taskSwipeControls = [ - createSwipeControl(2, "Menu", () => setMenu(m1)), - createSwipeControl(0, "New Task", newTask), - createSwipeControl(1, "Edit Task", () => newTask("Initial text")) // Placeholder -]; +function startTask(task) { + currentTaskRef = task; + g.clear(); + Bangle.drawWidgets(); + setMenu(getTaskMenu(task)); +} + +/** + * Mark the task as completed and then push it to the bottom of the list. + * @param task + */ +function completeTask(task) { + task.complete = true; + removeTask(task, allTasks); + allTasks.push(task); + setMenu(getTaskMenu(task)); +} + +function restartTask(task) { + task.complete = false; + removeTask(task, allTasks); + allTasks.unshift(task); + setMenu(getTaskMenu(task)) +} + +function removeTask(task, list) { + const taskIndex = list.findIndex((item) => item === task); + if (taskIndex !== -1) { + list.splice(taskIndex, 1); + } +} + + +const SWIPE = { + LEFT: 2, RIGHT: 0, UP: 3, DOWN: 1, +} function createTask(text) { const incrementalBackoffSet = [0.5, 1, 2, 4, 8, 16, 32]; - const getMenu = () => createMenu({ - items: [{text}], spaceAround: 0, spaceBetween: 0, swipeControls: taskSwipeControls - }); return { text, affirmCount : 0, @@ -280,11 +306,51 @@ function createTask(text) { interval : 30, backoffIndex : 1, incrementalBackoffSet, - getMenu + complete : false }; } -const m1 = createMenu({ +function getTaskMenu(task) { + const taskSwipeControls = [ + createSwipeControl(SWIPE.LEFT, "Menu", () => setMenu(m1)), createSwipeControl(SWIPE.RIGHT, "New Task", newTask), + ]; + const items = []; + if (task.complete) { + taskSwipeControls.push(createSwipeControl(SWIPE.UP, "Restart", () => restartTask(task))); + items.push({text: task.text + " completed!", size: 1}); + const nextTask = getNextTask(task, allTasks); + if (nextTask) { + items.push({text: "next task: " + nextTask.text, size: 2, callback: () => startTask(nextTask)}) + } else { + items.push({ + text: "Affirmed: " + task.affirmCount + "\nDistracted: " + task.distractCount + "\nUnresponsive: " + task.unresponsiveCount, + size: 3 + }); + } + } else { + items.push({text: task.text}) + taskSwipeControls.push(createSwipeControl(SWIPE.DOWN, "Complete", () => completeTask(task))) + } + return createMenu({ + items, spaceAround: 0, spaceBetween: 0, swipeControls: taskSwipeControls + }); +} + +function getNextTask(task, list) { + const activeList = list.filter(x => (!x.complete || x === task)); + const thisTaskPosition = activeList.findIndex(t => t === task); + let nextTask = activeList[0]; + if (thisTaskPosition !== -1 && activeList[thisTaskPosition + 1]) { + nextTask = activeList[thisTaskPosition + 1]; + } + return nextTask === task ? undefined : nextTask; +} + +function showTaskList(list) { + +} + +const mainMenu = createMenu({ title : "Working Memory", items: [ {text: "New Task", size: 2, callback: newTask}, { text: "Manage", size: 1, callback: () => console.log("SETTINGS") @@ -292,4 +358,4 @@ const m1 = createMenu({ ], isHorizontal: false }); -setMenu(m1); +setMenu(mainMenu); From 94077313d1c92b8728a6caf1c46b676762dc4ca0 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Mon, 12 Jun 2023 15:32:49 -0400 Subject: [PATCH 1424/1725] Add showMenu bug workaround - add initial buzz --- apps/remindr/app.js | 53 ++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 47 insertions(+), 6 deletions(-) diff --git a/apps/remindr/app.js b/apps/remindr/app.js index 59c7b9128..d70dd9858 100644 --- a/apps/remindr/app.js +++ b/apps/remindr/app.js @@ -8,6 +8,7 @@ Bangle.drawWidgets(); let currentTaskRef; const allTasks = []; +let taskTimeout; function createButton(x, y, w, h, text, callback) { text = text || ""; @@ -245,8 +246,8 @@ function setMenu(menu) { let keyboardAlpha, keyboardNum; if (textInput.generateKeyboard) { const charSet = textInput.createCharSet("ABCDEFGHIJKLMNOPQRSTUVWXYZ", ["spc", "ok", "del"]); - keyboardAlpha = textInput.generateKeyboard(charSet); - keyboardNum = textInput.generateKeyboard([["1","2","3","4","5","6","7","8","9"],["0"],"del", "ok"]); + keyboardAlpha = textInput.generateKeyboard(charSet); + // keyboardNum = textInput.generateKeyboard([["1", "2", "3", "4", "5", "6", "7", "8", "9"], ["0"], "del", "ok"]); } function newTask(initialText) { @@ -261,6 +262,7 @@ function newTask(initialText) { function startTask(task) { currentTaskRef = task; + taskTimeout = setTimeout(() => Bangle.buzz(100, 1), 3000); g.clear(); Bangle.drawWidgets(); setMenu(getTaskMenu(task)); @@ -312,7 +314,7 @@ function createTask(text) { function getTaskMenu(task) { const taskSwipeControls = [ - createSwipeControl(SWIPE.LEFT, "Menu", () => setMenu(m1)), createSwipeControl(SWIPE.RIGHT, "New Task", newTask), + createSwipeControl(SWIPE.LEFT, "Menu", () => setMenu(mainMenu)), createSwipeControl(SWIPE.RIGHT, "New Task", newTask), ]; const items = []; if (task.complete) { @@ -346,14 +348,53 @@ function getNextTask(task, list) { return nextTask === task ? undefined : nextTask; } -function showTaskList(list) { - +/** + * This function is a workaround wrapper for a menu navigation bug. After 'onchange' the menu re-renders itself + * so to avoid graphical glitches we postpone whatever funciton we actually want by 5ms. + * @param fn The function you actually want to call + * @returns {function(): any} The same function wrapped in a setTimeout with a 5ms delay. + */ +function st5(fn) { + return () => setTimeout(fn, 5); +} + +function editTask(task, backFn) { + let editMenu = []; + editMenu.push({title: "Rename", onchange: st5(() => renameTask(task, () => editTask(task, backFn)))}); + if (task.complete) { + editMenu.push({title: "Start Task", onchange: st5(() => restartTask(task))}) + editMenu.push({title: "View Task", onchange: st5(() => startTask(task))}) + } else { + editMenu.push({title: "Resume Task", onchange: st5(() => startTask(task))}) + } + editMenu[""] = {title: task.text, back: backFn}; + E.showMenu(editMenu); +} + +function renameTask(task, backFn) { + return textInput.input({text: task.text, keyboardMain: keyboardAlpha}) + .then(text => { + task.text = text + backFn(); + }) +} + +function showTaskList(list, backFn) { + let taskMenu = []; + taskMenu = taskMenu.concat(list.map(task => { + return { + // Workaround - navigation has phantom buttons rendered with E.showMenu unless you delay slightly. + title: task.text, onchange: st5(() => editTask(task, () => showTaskList(list, backFn))) + } + })) + taskMenu[""] = {title: "Tasks", back: backFn}; + E.showMenu(taskMenu); } const mainMenu = createMenu({ title : "Working Memory", items: [ {text: "New Task", size: 2, callback: newTask}, { - text: "Manage", size: 1, callback: () => console.log("SETTINGS") + text: "Manage", size: 1, callback: () => showTaskList(allTasks, () => setMenu(mainMenu)) } ], isHorizontal: false }); From 3682ee4e79492ed071260bcde00955c7614a4cc0 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Mon, 12 Jun 2023 19:26:02 -0400 Subject: [PATCH 1425/1725] Implement nudges and affirmations --- apps/remindr/app.js | 80 +++++++++++++++++++++++++++++++++++++++------ 1 file changed, 70 insertions(+), 10 deletions(-) diff --git a/apps/remindr/app.js b/apps/remindr/app.js index d70dd9858..f2003f055 100644 --- a/apps/remindr/app.js +++ b/apps/remindr/app.js @@ -6,9 +6,24 @@ E.showMessage("Loading ... "); Bangle.loadWidgets(); Bangle.drawWidgets(); -let currentTaskRef; -const allTasks = []; -let taskTimeout; +const allTasks = []; +const nudgeManager = { + activeTask : null, taskTimeout: null, responseTimeout: null, interrupt: () => { + if (this.taskTimeout) clearTimeout(this.taskTimeout); + if (this.responseTimeout) clearTimeout(this.responseTimeout); + this.activeTask = null; + }, queueNudge : (task, nudgeFn) => { + if (this.responseTimeout) clearTimeout(this.responseTimeout); + if (this.taskTimeout) clearTimeout(this.taskTimeout); + this.activeTask = task; + const time = task.incrementalBackoffSet[task.backoffIndex] * task.interval * 1000; + this.taskTimeout = setTimeout(nudgeFn, time); + }, queueResponseTimeout: (defaultFn) => { + // This timeout shouldn't be set if we've queued a response timeout, but we clear it anyway. + if (this.taskTimeout) clearTimeout(this.taskTimeout); + this.responseTimeout = setTimeout(defaultFn, 15000); + }, +} function createButton(x, y, w, h, text, callback) { text = text || ""; @@ -261,18 +276,62 @@ function newTask(initialText) { } function startTask(task) { - currentTaskRef = task; - taskTimeout = setTimeout(() => Bangle.buzz(100, 1), 3000); + nudgeManager.queueNudge(task, () => nudge(task)); g.clear(); Bangle.drawWidgets(); setMenu(getTaskMenu(task)); } +function nudge(task) { + Bangle.buzz(250, 1) + .then(() => { + Bangle.setLocked(false); + Bangle.setLCDPower(true); + }); + const nudgeMenu = createMenu({ + title : "Are you on task?", titleFont: "6x8", items: [ + {text: task.text, size: 1}, {text: "On Task", size: 2, callback: () => affirmOnTask(task)}, { + text: "Distracted", size: 2, callback: () => affirmDistracted(task) + } + ], isHorizontal: false + }); + setMenu(nudgeMenu); + nudgeManager.queueResponseTimeout(() => concludeUnresponsive(task)); +} + +function affirmOnTask(task) { + task.affirmCount++; + task.backoffIndex = Math.min(task.incrementalBackoffSet.length - 1, task.backoffIndex + 1); + showTempMessage("Great job!", "On Task!", () => startTask(task)); +} + +function affirmDistracted(task) { + task.distractCount++; + task.backoffIndex = Math.max(0, task.backoffIndex - 1); + showTempMessage("Don't worry! You've got this!", "Distracted!", () => startTask(task)); +} + +function concludeUnresponsive(task) { + Bangle.buzz(250, 1).then(() => Bangle.setLCDPower(true)); + task.unresponsiveCount++; + task.backoffIndex = Math.max(0, task.backoffIndex - 1); + nudgeManager.queueResponseTimeout(() => concludeUnresponsive(task)) +} + +function showTempMessage(text, title, thenFn) { + E.showMessage(text,{title}); + setTimeout(() => { + Bangle.setLocked(true); + thenFn(); + }, 1500); +} + /** * Mark the task as completed and then push it to the bottom of the list. * @param task */ function completeTask(task) { + nudgeManager.interrupt(); task.complete = true; removeTask(task, allTasks); allTasks.push(task); @@ -283,7 +342,7 @@ function restartTask(task) { task.complete = false; removeTask(task, allTasks); allTasks.unshift(task); - setMenu(getTaskMenu(task)) + startTask(task); } function removeTask(task, list) { @@ -314,7 +373,8 @@ function createTask(text) { function getTaskMenu(task) { const taskSwipeControls = [ - createSwipeControl(SWIPE.LEFT, "Menu", () => setMenu(mainMenu)), createSwipeControl(SWIPE.RIGHT, "New Task", newTask), + createSwipeControl(SWIPE.LEFT, "Menu", () => setMenu(mainMenu)), + createSwipeControl(SWIPE.RIGHT, "New Task", newTask), ]; const items = []; if (task.complete) { @@ -367,7 +427,7 @@ function editTask(task, backFn) { } else { editMenu.push({title: "Resume Task", onchange: st5(() => startTask(task))}) } - editMenu[""] = {title: task.text, back: backFn}; + editMenu[""] = {title: task.text, back: backFn}; E.showMenu(editMenu); } @@ -381,13 +441,13 @@ function renameTask(task, backFn) { function showTaskList(list, backFn) { let taskMenu = []; - taskMenu = taskMenu.concat(list.map(task => { + taskMenu = taskMenu.concat(list.map(task => { return { // Workaround - navigation has phantom buttons rendered with E.showMenu unless you delay slightly. title: task.text, onchange: st5(() => editTask(task, () => showTaskList(list, backFn))) } })) - taskMenu[""] = {title: "Tasks", back: backFn}; + taskMenu[""] = {title: "Tasks", back: backFn}; E.showMenu(taskMenu); } From a398522e762352b417362a304953adf3adfea05f Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Mon, 12 Jun 2023 22:25:18 -0400 Subject: [PATCH 1426/1725] Tweak layouts and add data for release --- apps/wrkmem/Changelog | 1 + apps/wrkmem/README.md | 61 +++++++++++++++++++++++++++++ apps/wrkmem/app-icon.js | 1 + apps/{remindr => wrkmem}/app.js | 67 +++++++++++++++++++++++++------- apps/wrkmem/icon.png | Bin 0 -> 1244 bytes apps/wrkmem/metadata.json | 26 +++++++++++++ apps/wrkmem/screenshot.png | Bin 0 -> 3139 bytes apps/wrkmem/screenshot2.png | Bin 0 -> 2887 bytes apps/wrkmem/screenshot3.png | Bin 0 -> 4171 bytes apps/wrkmem/screenshot4.png | Bin 0 -> 3623 bytes apps/wrkmem/screenshot5.png | Bin 0 -> 2649 bytes apps/wrkmem/screenshot6.png | Bin 0 -> 2937 bytes 12 files changed, 141 insertions(+), 15 deletions(-) create mode 100644 apps/wrkmem/Changelog create mode 100644 apps/wrkmem/README.md create mode 100644 apps/wrkmem/app-icon.js rename apps/{remindr => wrkmem}/app.js (88%) create mode 100644 apps/wrkmem/icon.png create mode 100644 apps/wrkmem/metadata.json create mode 100644 apps/wrkmem/screenshot.png create mode 100644 apps/wrkmem/screenshot2.png create mode 100644 apps/wrkmem/screenshot3.png create mode 100644 apps/wrkmem/screenshot4.png create mode 100644 apps/wrkmem/screenshot5.png create mode 100644 apps/wrkmem/screenshot6.png diff --git a/apps/wrkmem/Changelog b/apps/wrkmem/Changelog new file mode 100644 index 000000000..55caa0461 --- /dev/null +++ b/apps/wrkmem/Changelog @@ -0,0 +1 @@ +1.00: Implement Working Memory Helper app \ No newline at end of file diff --git a/apps/wrkmem/README.md b/apps/wrkmem/README.md new file mode 100644 index 000000000..3d57dff9a --- /dev/null +++ b/apps/wrkmem/README.md @@ -0,0 +1,61 @@ +# Working Memory Helper +Human brains keep track of what they are doing in a conceptual space known as "working memory". Older adults and people +of all ages with ADHD often struggle to maintain information in their working memories, causing them to forget what +they were doing only moments after deciding to do it. One excellent way to combat this symptom is to externalize your +working memory. + +This app doesn't completely externalize and replace working memory, but it does act as a prosthesis for the task +management aspect of working memory. The workflow looks something like this: + +1. Decide to do something. (If you can't get this far on your own, this app is not gonna help.) +2. Immediately enter a brief prompt in the app as a "task". For example, if you were going to take out the trash, +you might write "Trash". If you were going to take your car to the mechanic, you might write "car", or "mechanic". It +doesn't have to remind you what you were doing a week from now, only a minute or so, so it can be very simple / brief. +3. Thirty seconds after you enter the task into the app, your device will vibrate and ask you if you are on task, or if +you got distracted. + 1. If you are on task, hit "On task" and the app will wait a little longer before reminding you again. + 2. If you got distracted, hit "distracted" and the app will remind you a little sooner next time. +4. Continue getting reminders from your watch at various intervals until you complete the task, then tell the app the +task is complete. Repeat this process for every single thing you do until you die, basically. + +![screenshot](screenshot.png) ![screenshot](screenshot2.png) ![screenshot](screenshot3.png) ![screenshot](screenshot4.png) +![screenshot](screenshot5.png) ![screenshot](screenshot6.png) + +## Requirements +You must have some kind of keyboard library available in order to enter task descriptions on your device. This app is +only supported on BangleJS2 + +## Styling +This app attempts to match whatever theme your Bangle watch is using. Styling options are not currently available +beyond that, but tweaking some things will eventually be possible, like the size and presence of swipe hints, whether +or not task text is outlined, etc. + +## Task settings +You can edit the settings of any individual task. You can rename the task, restart (un-complete) the task, or change +some of the reminder cadence settings. As far as cadence, there are a couple that warrante explanation: + +#### Interval +This is the base reminder interval for your task. If it is 30, your first reminder will be after 30 seconds. + +#### Incremental Backoff +Incremental backoff is a strategy for timing the reminder notifications you get based on how well you stay on task. +Each time you affirm that you are "on task", incremental backoff means it will wait longer before reminding you again. +Similarly each time you affirm that you are "distracted" the incremental backoff will wait less time before reminding +you again. The exact intervals are multiples of the base interval. For a task with a base interval of 30 seconds, the +second reminder would be after 60 seconds. The third after 120 seconds, etc. Then if you got distracted it would go +back to 60, then 30, then 15. Typically the interval will never go below 1/2 of your base interval. + +If you disable Incremental Backoff, you will be reminded once every base interval no matter what you do. This can be +handy if you are having trouble staying on task when the intervals get too long with incremental backoff. + +## Controls +A large focus of this app was making clear affordances for the user interface. Anything that can be pressed should look +like a button, however you may notice some small arrows and text on the sides / top / bottom of the screen in some +cases. These hints are there to tell you that you can swipe across the screen to perform additional actions. +Swipe your finger anywhere on the screen in the direction the arrow is pointing to use the listed function. + +## Known issues +The clock is not super-duper accurate because it only updates when the screen refreshes (which can be 30 seconds or 5 +minutes apart). I put it on there, though, because it is more useful to be there and lagging by 30+ seconds than to be +not there at all. I plan to fix this problem eventually but it's secondary to the main functions of the app at the +moment. \ No newline at end of file diff --git a/apps/wrkmem/app-icon.js b/apps/wrkmem/app-icon.js new file mode 100644 index 000000000..edc5d96e7 --- /dev/null +++ b/apps/wrkmem/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwgYJGgVJkmQDZt/////wRfgVP8g1OiQRByQRNyQRCoAMHgP8wEAk5GBAAPJgET/IREh//yVJCAYABkmf/8gCIc///yNIQAD/gCB8ARFAAQmBkmTA4YREGoIvCJQIABHYY1EhIHB/DFDCgItB/IREgM//x3Byg2BiUAggRHLINAgsvFAOkC4JrGCIKtBmZCC/2IR4IRFLILRBCIf/6MAgf/8gREWYUz/J8CCIMAv4REAoIRBg1CpMmv/6GQNPDoQXGHAMA54RCF4Y7HAAOvCIZTCCIRfECIp3BCLpHDCJcJNYJ9CCJdSpaPDCJUDe4LFCCJ2odIIRN9USeogRK9C/DCLDFDCIzFEdIoRHfYwFDsmESodPCIgXFqVECId/CIpNEGohTFL4WSCI8T/8kCIvyVoIRFz7jFgE//1ICIsE//5CAkAg4IBDQJrCgLbB5ARFDQI+BwEJCgNJfwIsBAAsfCQOSpMkyYFB+QQGgECv4MBAAf8YQYAFhIRFXggAGk4QD5J6FAAxHCySVBAHQ=")) \ No newline at end of file diff --git a/apps/remindr/app.js b/apps/wrkmem/app.js similarity index 88% rename from apps/remindr/app.js rename to apps/wrkmem/app.js index f2003f055..4548f4f8d 100644 --- a/apps/remindr/app.js +++ b/apps/wrkmem/app.js @@ -6,7 +6,24 @@ E.showMessage("Loading ... "); Bangle.loadWidgets(); Bangle.drawWidgets(); -const allTasks = []; +const localTaskFile = "wrkmem.json"; +let savedData = require("Storage") +.readJSON(localTaskFile, true); +if (!savedData) { + savedData = { + tasks: [], keyboardAlpha: undefined + + } +} + +let currentMenu; + +function save() { + require("Storage") + .writeJSON("wrkmem.json", savedData); +} + +const allTasks = savedData.tasks; const nudgeManager = { activeTask : null, taskTimeout: null, responseTimeout: null, interrupt: () => { if (this.taskTimeout) clearTimeout(this.taskTimeout); @@ -16,7 +33,8 @@ const nudgeManager = { if (this.responseTimeout) clearTimeout(this.responseTimeout); if (this.taskTimeout) clearTimeout(this.taskTimeout); this.activeTask = task; - const time = task.incrementalBackoffSet[task.backoffIndex] * task.interval * 1000; + const backoffIndex = task.useBackoff ? task.backoffIndex : 1; + const time = task.incrementalBackoffSet[backoffIndex] * task.interval * 1000; this.taskTimeout = setTimeout(nudgeFn, time); }, queueResponseTimeout: (defaultFn) => { // This timeout shouldn't be set if we've queued a response timeout, but we clear it anyway. @@ -254,23 +272,25 @@ function createMenu(options) { function setMenu(menu) { g.clearRect(Bangle.appRect); g.reset(); + currentMenu = menu; menu.render(); menu.setUI(); } -let keyboardAlpha, keyboardNum; +let keyboardAlpha; if (textInput.generateKeyboard) { const charSet = textInput.createCharSet("ABCDEFGHIJKLMNOPQRSTUVWXYZ", ["spc", "ok", "del"]); - keyboardAlpha = textInput.generateKeyboard(charSet); - // keyboardNum = textInput.generateKeyboard([["1", "2", "3", "4", "5", "6", "7", "8", "9"], ["0"], "del", "ok"]); + keyboardAlpha = textInput.generateKeyboard(charSet) } function newTask(initialText) { + nudgeManager.interrupt(); initialText = initialText || ""; textInput.input({text: initialText, keyboardMain: keyboardAlpha}) .then(text => { const task = createTask(text) allTasks.unshift(task); + save(); startTask(task); }) } @@ -290,8 +310,8 @@ function nudge(task) { }); const nudgeMenu = createMenu({ title : "Are you on task?", titleFont: "6x8", items: [ - {text: task.text, size: 1}, {text: "On Task", size: 2, callback: () => affirmOnTask(task)}, { - text: "Distracted", size: 2, callback: () => affirmDistracted(task) + {text: task.text, size: 1}, {text: "On Task", size: 1, callback: () => affirmOnTask(task)}, { + text: "Distracted", size: 1, callback: () => affirmDistracted(task) } ], isHorizontal: false }); @@ -312,14 +332,15 @@ function affirmDistracted(task) { } function concludeUnresponsive(task) { - Bangle.buzz(250, 1).then(() => Bangle.setLCDPower(true)); + Bangle.buzz(250, 1) + .then(() => Bangle.setLCDPower(true)); task.unresponsiveCount++; task.backoffIndex = Math.max(0, task.backoffIndex - 1); nudgeManager.queueResponseTimeout(() => concludeUnresponsive(task)) } function showTempMessage(text, title, thenFn) { - E.showMessage(text,{title}); + E.showMessage(text, {title}); setTimeout(() => { Bangle.setLocked(true); thenFn(); @@ -335,6 +356,7 @@ function completeTask(task) { task.complete = true; removeTask(task, allTasks); allTasks.push(task); + save(); setMenu(getTaskMenu(task)); } @@ -342,6 +364,7 @@ function restartTask(task) { task.complete = false; removeTask(task, allTasks); allTasks.unshift(task); + save(); startTask(task); } @@ -367,18 +390,27 @@ function createTask(text) { interval : 30, backoffIndex : 1, incrementalBackoffSet, - complete : false + complete : false, + useBackoff: true }; } function getTaskMenu(task) { + const d = new Date(); + const h = d.getHours(), m = d.getMinutes(); + const time = h + ":" + m.toString().padStart(2,0); const taskSwipeControls = [ - createSwipeControl(SWIPE.LEFT, "Menu", () => setMenu(mainMenu)), - createSwipeControl(SWIPE.RIGHT, "New Task", newTask), + createSwipeControl(SWIPE.LEFT, "Menu", () => { + setMenu(mainMenu); + nudgeManager.interrupt(); + }), createSwipeControl(SWIPE.RIGHT, "New Task", newTask), ]; const items = []; if (task.complete) { taskSwipeControls.push(createSwipeControl(SWIPE.UP, "Restart", () => restartTask(task))); + taskSwipeControls.push(createSwipeControl(SWIPE.DOWN, + "Task List", + () => showTaskList(allTasks, () => startTask(task)))); items.push({text: task.text + " completed!", size: 1}); const nextTask = getNextTask(task, allTasks); if (nextTask) { @@ -390,11 +422,12 @@ function getTaskMenu(task) { }); } } else { - items.push({text: task.text}) - taskSwipeControls.push(createSwipeControl(SWIPE.DOWN, "Complete", () => completeTask(task))) + items.push({text: task.text, size: 2}) + taskSwipeControls.push(createSwipeControl(SWIPE.UP, "Complete", () => completeTask(task))) + taskSwipeControls.push(createSwipeControl(SWIPE.DOWN, "Edit Task", () => editTask(task, () => startTask(task)))) } return createMenu({ - items, spaceAround: 0, spaceBetween: 0, swipeControls: taskSwipeControls + items, spaceAround: 0, spaceBetween: 0, swipeControls: taskSwipeControls, title: time }); } @@ -419,6 +452,7 @@ function st5(fn) { } function editTask(task, backFn) { + nudgeManager.interrupt(); let editMenu = []; editMenu.push({title: "Rename", onchange: st5(() => renameTask(task, () => editTask(task, backFn)))}); if (task.complete) { @@ -427,6 +461,8 @@ function editTask(task, backFn) { } else { editMenu.push({title: "Resume Task", onchange: st5(() => startTask(task))}) } + editMenu.push({ title:"Interval", value: task.interval, min:10, step: 10, onchange: v => task.interval = v }) + editMenu.push({ title:"Incremental Backoff", value: !!task.useBackoff, onchange: v => task.useBackoff = v }) editMenu[""] = {title: task.text, back: backFn}; E.showMenu(editMenu); } @@ -435,6 +471,7 @@ function renameTask(task, backFn) { return textInput.input({text: task.text, keyboardMain: keyboardAlpha}) .then(text => { task.text = text + save(); backFn(); }) } diff --git a/apps/wrkmem/icon.png b/apps/wrkmem/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..23e1df52329f793df2cf7a0f843662c517a69fa6 GIT binary patch literal 1244 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WMyDrW(e>JaRrJqsQqX7ulS#V;s1XiF$zXQU<8E#<4n)*K<{!EctjR6Fz_7) zVaDV6D^h@h5+$w?CBgY=CFO}lsSE{)nRz98d8s7|CVGZ?rYY_bz%0k;=;`7Z;^BRE zisz)m3IZ&x7ysY4*(>s;jiv8H;wOW)S6-aiIq}+32g**{I&NUjWjZKkb+)#?P{nQ^ zM?0Ij;vR`R7g*Qw1iDOLsHnSh*%ujQ@3u1;E7l9PWH6m=xZ~-duz)ki#Wba*_|n8@ z4AzdkRmIaKU+tYd(L^J&pe0&v1>We|3VVUC`TX zGybV8wilcV?g#0wsZVPXY-zXS(fBrH%f46VCu;nf9xw1|-2&&r0~`SwXWSk<{B+8x o@~v>-!eqsI$Nu#Szs|>8mv<`SV#r8Owge?QPgg&ebxsLQ05y)pQ~&?~ literal 0 HcmV?d00001 diff --git a/apps/wrkmem/metadata.json b/apps/wrkmem/metadata.json new file mode 100644 index 000000000..040fbc750 --- /dev/null +++ b/apps/wrkmem/metadata.json @@ -0,0 +1,26 @@ +{ + "id" : "wrkmem", + "name" : "Working Memory Helper", + "version" : "1.00", + "description" : "Externalize your working memory to help stay on task.", + "dependencies" : {"textinput": "type"}, + "icon" : "icon.png", + "type" : "app", + "tags" : "tool", + "supports" : ["BANGLEJS2"], + "screenshots" : [ + {"url": "screenshot.png"}, + {"url": "screenshot2.png"}, + {"url": "screenshot3.png"}, + {"url": "screenshot4.png"}, + {"url": "screenshot5.png"}, + {"url": "screenshot6.png"} + ], + "readme" : "README.md", + "allow_emulator": false, + "storage" : [ + {"name": "wrkmem.app.js", "url": "app.js"}, + {"name": "wrkmem.img", "url": "app-icon.js", "evaluate": true} + ], + "data" : [{"name": "wrkmem.json"}] +} \ No newline at end of file diff --git a/apps/wrkmem/screenshot.png b/apps/wrkmem/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..7145bc8a781f3eebdc0aab864062affafc0a16cc GIT binary patch literal 3139 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 Not2{{$=vJFe*s!}{DlAj literal 0 HcmV?d00001 diff --git a/apps/wrkmem/screenshot2.png b/apps/wrkmem/screenshot2.png new file mode 100644 index 0000000000000000000000000000000000000000..3a61529e338c509a107e6fa1c8acb9b26eb2e55d GIT binary patch literal 2887 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 DVhKwJ literal 0 HcmV?d00001 diff --git a/apps/wrkmem/screenshot3.png b/apps/wrkmem/screenshot3.png new file mode 100644 index 0000000000000000000000000000000000000000..30776d33207c44d001cf4501da1aa75659837d1c GIT binary patch literal 4171 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 V{!5g%wsQag002ovPDHLkV1lDnJp}*& literal 0 HcmV?d00001 diff --git a/apps/wrkmem/screenshot4.png b/apps/wrkmem/screenshot4.png new file mode 100644 index 0000000000000000000000000000000000000000..582c2c92b85fdf615772c191d9223b7db0522ae1 GIT binary patch literal 3623 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 literal 0 HcmV?d00001 diff --git a/apps/wrkmem/screenshot5.png b/apps/wrkmem/screenshot5.png new file mode 100644 index 0000000000000000000000000000000000000000..aa9165e38d06781fd0d314fbe09d26281513c6ad GIT binary patch literal 2649 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 literal 0 HcmV?d00001 diff --git a/apps/wrkmem/screenshot6.png b/apps/wrkmem/screenshot6.png new file mode 100644 index 0000000000000000000000000000000000000000..fd3e1a36b501370e6feaee86d6e77626d3b7c9a0 GIT binary patch literal 2937 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 Date: Tue, 13 Jun 2023 06:05:44 -0500 Subject: [PATCH 1427/1725] Change color back to black --- apps/lightswitch/widget.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/lightswitch/widget.js b/apps/lightswitch/widget.js index 6c0550065..6b573355b 100644 --- a/apps/lightswitch/widget.js +++ b/apps/lightswitch/widget.js @@ -57,7 +57,7 @@ ); } else { // backlight off - g.setColor(g.theme.bg); + g.setColor(0); } // draw circle g.drawImage(atob("CwuBAB8H8f9/////////f8fwfAA="), this.x + 6, this.y + 6); From 4fb3088d21b25cab53a23a7bd08ce61d3792eec2 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Tue, 13 Jun 2023 12:45:01 -0400 Subject: [PATCH 1428/1725] Add settings, display options, back functions --- apps/wrkmem/app.js | 100 +++++++++++++++++++++++++++------------------ 1 file changed, 61 insertions(+), 39 deletions(-) diff --git a/apps/wrkmem/app.js b/apps/wrkmem/app.js index 4548f4f8d..8c83f7396 100644 --- a/apps/wrkmem/app.js +++ b/apps/wrkmem/app.js @@ -7,14 +7,12 @@ Bangle.loadWidgets(); Bangle.drawWidgets(); const localTaskFile = "wrkmem.json"; -let savedData = require("Storage") -.readJSON(localTaskFile, true); -if (!savedData) { - savedData = { - tasks: [], keyboardAlpha: undefined +const savedData = { + tasks: [], keyboardAlpha: undefined, settings: {textOutlines: true, noWordBreaks: true} +}; - } -} +Object.assign(savedData, require("Storage") +.readJSON(localTaskFile, true) || {}); let currentMenu; @@ -32,10 +30,10 @@ const nudgeManager = { }, queueNudge : (task, nudgeFn) => { if (this.responseTimeout) clearTimeout(this.responseTimeout); if (this.taskTimeout) clearTimeout(this.taskTimeout); - this.activeTask = task; + this.activeTask = task; const backoffIndex = task.useBackoff ? task.backoffIndex : 1; - const time = task.incrementalBackoffSet[backoffIndex] * task.interval * 1000; - this.taskTimeout = setTimeout(nudgeFn, time); + const time = task.incrementalBackoffSet[backoffIndex] * task.interval * 1000; + this.taskTimeout = setTimeout(nudgeFn, time); }, queueResponseTimeout: (defaultFn) => { // This timeout shouldn't be set if we've queued a response timeout, but we clear it anyway. if (this.taskTimeout) clearTimeout(this.taskTimeout); @@ -94,18 +92,20 @@ function drawButton(button) { .wrapString(button.text, textMaxWidth) .filter(t => !!t) .join("\n"); - g.setFontAlign(0, 0) - .setColor(textOutlineCol) - .drawString(wrapText, button.x + button.w / 2 + 1, button.y + button.h / 2 - 1, false); - g.setFontAlign(0, 0) - .setColor(textOutlineCol) - .drawString(wrapText, button.x + button.w / 2 - 1, button.y + button.h / 2 - 1, false); - g.setFontAlign(0, 0) - .setColor(textOutlineCol) - .drawString(wrapText, button.x + button.w / 2 - 1, button.y + button.h / 2 + 1, false); - g.setFontAlign(0, 0) - .setColor(textOutlineCol) - .drawString(wrapText, button.x + button.w / 2 + 1, button.y + button.h / 2 + 1, false); + if (savedData.settings.textOutlines) { + g.setFontAlign(0, 0) + .setColor(textOutlineCol) + .drawString(wrapText, button.x + button.w / 2 + 1, button.y + button.h / 2 - 1, false); + g.setFontAlign(0, 0) + .setColor(textOutlineCol) + .drawString(wrapText, button.x + button.w / 2 - 1, button.y + button.h / 2 - 1, false); + g.setFontAlign(0, 0) + .setColor(textOutlineCol) + .drawString(wrapText, button.x + button.w / 2 - 1, button.y + button.h / 2 + 1, false); + g.setFontAlign(0, 0) + .setColor(textOutlineCol) + .drawString(wrapText, button.x + button.w / 2 + 1, button.y + button.h / 2 + 1, false); + } g.setFontAlign(0, 0) .setColor(textCol) .drawString(wrapText, button.x + button.w / 2, button.y + button.h / 2, false); @@ -122,7 +122,7 @@ function getBestFontForButton(button) { const vectorRatio = sampleMetric.height / sampleMetric.width; // Effective height helps us handle tall skinny buttons, since text is usually horizontal. let effectiveHeight = Math.min(button.h, button.w); - if (!button.text.includes(" ")) { + if (!button.text.includes(" ") && savedData.settings.noWordBreaks) { effectiveHeight = effectiveHeight / vectorRatio } const buttonArea = button.w * effectiveHeight; @@ -263,13 +263,15 @@ function createMenu(options) { const touchFunc = (button, xy) => buttons.forEach(b => b.onTouch && b.onTouch(button, xy)); const swipeFunc = (LR, UD) => swipeControls.forEach(s => s.onSwipe(LR, UD)); + const btnFunc = options.backFn; return { - buttons, render, setUI: () => Bangle.setUI({mode: "custom", touch: touchFunc, swipe: swipeFunc}) + buttons, render, setUI: () => Bangle.setUI({mode: "custom", touch: touchFunc, swipe: swipeFunc, btn: btnFunc}) }; } function setMenu(menu) { + save(); g.clearRect(Bangle.appRect); g.reset(); currentMenu = menu; @@ -299,7 +301,11 @@ function startTask(task) { nudgeManager.queueNudge(task, () => nudge(task)); g.clear(); Bangle.drawWidgets(); - setMenu(getTaskMenu(task)); + const onPressBack = () => { + nudgeManager.interrupt(); + setMenu(mainMenu) + } + setMenu(getTaskMenu(task, onPressBack)); } function nudge(task) { @@ -391,14 +397,15 @@ function createTask(text) { backoffIndex : 1, incrementalBackoffSet, complete : false, - useBackoff: true + useBackoff : true }; } -function getTaskMenu(task) { - const d = new Date(); - const h = d.getHours(), m = d.getMinutes(); - const time = h + ":" + m.toString().padStart(2,0); +function getTaskMenu(task, backFn) { + const d = new Date(); + const h = d.getHours(), m = d.getMinutes(); + const time = h + ":" + m.toString() + .padStart(2, 0); const taskSwipeControls = [ createSwipeControl(SWIPE.LEFT, "Menu", () => { setMenu(mainMenu); @@ -427,7 +434,7 @@ function getTaskMenu(task) { taskSwipeControls.push(createSwipeControl(SWIPE.DOWN, "Edit Task", () => editTask(task, () => startTask(task)))) } return createMenu({ - items, spaceAround: 0, spaceBetween: 0, swipeControls: taskSwipeControls, title: time + items, spaceAround: 0, spaceBetween: 0, swipeControls: taskSwipeControls, title: time, backFn }); } @@ -454,15 +461,17 @@ function st5(fn) { function editTask(task, backFn) { nudgeManager.interrupt(); let editMenu = []; - editMenu.push({title: "Rename", onchange: st5(() => renameTask(task, () => editTask(task, backFn)))}); if (task.complete) { - editMenu.push({title: "Start Task", onchange: st5(() => restartTask(task))}) - editMenu.push({title: "View Task", onchange: st5(() => startTask(task))}) + editMenu.push({title: "Start Task", onchange: st5(() => restartTask(task))}); + editMenu.push({title: "View Task", onchange: st5(() => startTask(task))}); } else { - editMenu.push({title: "Resume Task", onchange: st5(() => startTask(task))}) + editMenu.push({title: "Resume Task", onchange: st5(() => startTask(task))}); } - editMenu.push({ title:"Interval", value: task.interval, min:10, step: 10, onchange: v => task.interval = v }) - editMenu.push({ title:"Incremental Backoff", value: !!task.useBackoff, onchange: v => task.useBackoff = v }) + editMenu.push({title: "Rename", onchange: st5(() => renameTask(task, () => editTask(task, backFn)))}); + editMenu.push({title: "Interval", value: task.interval, min: 10, step: 10, onchange: v => task.interval = v}); + editMenu.push({title: "Incremental Backoff", value: !!task.useBackoff, onchange: v => task.useBackoff = v}); + editMenu.push({title: "Statistics:"}) + editMenu.push({title: "On Task: " + task.affirmCount}) editMenu[""] = {title: task.text, back: backFn}; E.showMenu(editMenu); } @@ -488,10 +497,23 @@ function showTaskList(list, backFn) { E.showMenu(taskMenu); } +function showSettingsMenu(backFn) { + const completeTasks = allTasks.filter(task => task.complete); + const incompleteTasks = allTasks.filter(task => !task.complete); + const settingsMenu = { + "" : {title: "Manage", back: backFn}, + "Pending Tasks" : () => showTaskList(incompleteTasks, () => showSettingsMenu(backFn)), + "Completed Tasks": () => showTaskList(completeTasks, () => showSettingsMenu(backFn)), + "Text Outlines" : {value: savedData.settings.textOutlines, onchange: v => savedData.settings.textOutlines = v}, + "No Word Breaks" : {value: savedData.settings.noWordBreaks, onchange: v => savedData.settings.noWordBreaks = v} + } + E.showMenu(settingsMenu); +} + const mainMenu = createMenu({ title : "Working Memory", items: [ - {text: "New Task", size: 2, callback: newTask}, { - text: "Manage", size: 1, callback: () => showTaskList(allTasks, () => setMenu(mainMenu)) + {text: "New Task", size: 2, callback: () => newTask("")}, { + text: "Manage", size: 1, callback: () => showSettingsMenu(() => setMenu(mainMenu)) } ], isHorizontal: false }); From 52776eff7801378eea7588c611d1c37ea164cc12 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Tue, 13 Jun 2023 13:19:12 -0400 Subject: [PATCH 1429/1725] Change Keyboard, fix a but or two, allow delete --- apps/wrkmem/app.js | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/apps/wrkmem/app.js b/apps/wrkmem/app.js index 8c83f7396..80414e48c 100644 --- a/apps/wrkmem/app.js +++ b/apps/wrkmem/app.js @@ -281,8 +281,8 @@ function setMenu(menu) { let keyboardAlpha; if (textInput.generateKeyboard) { - const charSet = textInput.createCharSet("ABCDEFGHIJKLMNOPQRSTUVWXYZ", ["spc", "ok", "del"]); - keyboardAlpha = textInput.generateKeyboard(charSet) + //const charSet = textInput.createCharSet("ABCDEFGHIJKLMNOPQRSTUVWXYZ", ["spc", "ok", "del"]); + keyboardAlpha = textInput.generateKeyboard([["A", "B", "C", "J", "K", "L", "S", "T", "U"],["D", "E", "F", "M", "N", "O", "V", "W", "X"],["G", "H", "I", "P", "Q", "R", "Y", "Z"], "spc", "ok", "del"]) } function newTask(initialText) { @@ -348,7 +348,6 @@ function concludeUnresponsive(task) { function showTempMessage(text, title, thenFn) { E.showMessage(text, {title}); setTimeout(() => { - Bangle.setLocked(true); thenFn(); }, 1500); } @@ -417,7 +416,7 @@ function getTaskMenu(task, backFn) { taskSwipeControls.push(createSwipeControl(SWIPE.UP, "Restart", () => restartTask(task))); taskSwipeControls.push(createSwipeControl(SWIPE.DOWN, "Task List", - () => showTaskList(allTasks, () => startTask(task)))); + () => showTaskList(() => true, () => startTask(task)))); items.push({text: task.text + " completed!", size: 1}); const nextTask = getNextTask(task, allTasks); if (nextTask) { @@ -470,12 +469,30 @@ function editTask(task, backFn) { editMenu.push({title: "Rename", onchange: st5(() => renameTask(task, () => editTask(task, backFn)))}); editMenu.push({title: "Interval", value: task.interval, min: 10, step: 10, onchange: v => task.interval = v}); editMenu.push({title: "Incremental Backoff", value: !!task.useBackoff, onchange: v => task.useBackoff = v}); - editMenu.push({title: "Statistics:"}) - editMenu.push({title: "On Task: " + task.affirmCount}) + editMenu.push({title: "DELETE", onchange: st5(() => deleteTask(task, () => editTask(task, backFn), backFn))}); + editMenu.push({title: "Statistics:"}); + editMenu.push({title: "On Task: " + task.affirmCount}); + editMenu.push({title: "Distracted: " + task.distractCount}); + editMenu.push({title: "Unresponsive: " + task.unresponsiveCount}); editMenu[""] = {title: task.text, back: backFn}; E.showMenu(editMenu); } +function deleteTask(task, backFn, deleteBackFn) { + E.showPrompt("Delete " + task.text + "?") + .then(shouldDelete => { + if (shouldDelete) { + const foundIndex = allTasks.findIndex(t => t === task); + if (foundIndex !== -1) { + allTasks.splice(foundIndex, 1); + } + deleteBackFn(); + } else { + backFn(); + } + }); +} + function renameTask(task, backFn) { return textInput.input({text: task.text, keyboardMain: keyboardAlpha}) .then(text => { @@ -485,12 +502,13 @@ function renameTask(task, backFn) { }) } -function showTaskList(list, backFn) { +function showTaskList(filterFn, backFn) { let taskMenu = []; + const list = allTasks.filter(filterFn); taskMenu = taskMenu.concat(list.map(task => { return { // Workaround - navigation has phantom buttons rendered with E.showMenu unless you delay slightly. - title: task.text, onchange: st5(() => editTask(task, () => showTaskList(list, backFn))) + title: task.text, onchange: st5(() => editTask(task, () => showTaskList(filterFn, backFn))) } })) taskMenu[""] = {title: "Tasks", back: backFn}; @@ -502,8 +520,8 @@ function showSettingsMenu(backFn) { const incompleteTasks = allTasks.filter(task => !task.complete); const settingsMenu = { "" : {title: "Manage", back: backFn}, - "Pending Tasks" : () => showTaskList(incompleteTasks, () => showSettingsMenu(backFn)), - "Completed Tasks": () => showTaskList(completeTasks, () => showSettingsMenu(backFn)), + "Pending Tasks" : () => showTaskList(task => !task.complete, () => showSettingsMenu(backFn)), + "Completed Tasks": () => showTaskList(task => task.complete, () => showSettingsMenu(backFn)), "Text Outlines" : {value: savedData.settings.textOutlines, onchange: v => savedData.settings.textOutlines = v}, "No Word Breaks" : {value: savedData.settings.noWordBreaks, onchange: v => savedData.settings.noWordBreaks = v} } From 88d42643f60e4a52317d63e0c8d3a56e98438379 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Tue, 13 Jun 2023 15:22:25 -0400 Subject: [PATCH 1430/1725] Finalize readme, iron out a couple bugs --- apps/wrkmem/README.md | 11 +- apps/wrkmem/app.js | 317 +++++++++++++++++++++++++++++++----------- 2 files changed, 243 insertions(+), 85 deletions(-) diff --git a/apps/wrkmem/README.md b/apps/wrkmem/README.md index 3d57dff9a..bad3914c9 100644 --- a/apps/wrkmem/README.md +++ b/apps/wrkmem/README.md @@ -26,18 +26,17 @@ You must have some kind of keyboard library available in order to enter task des only supported on BangleJS2 ## Styling -This app attempts to match whatever theme your Bangle watch is using. Styling options are not currently available -beyond that, but tweaking some things will eventually be possible, like the size and presence of swipe hints, whether -or not task text is outlined, etc. +This app attempts to match whatever theme your Bangle watch is using. You can also modify whether individual +words are wrapped and whether outlines are drawn on text. ## Task settings You can edit the settings of any individual task. You can rename the task, restart (un-complete) the task, or change -some of the reminder cadence settings. As far as cadence, there are a couple that warrante explanation: +some of the reminder cadence settings. As far as cadence, there are a couple that warrant explanation: -#### Interval +### Interval This is the base reminder interval for your task. If it is 30, your first reminder will be after 30 seconds. -#### Incremental Backoff +### Incremental Backoff Incremental backoff is a strategy for timing the reminder notifications you get based on how well you stay on task. Each time you affirm that you are "on task", incremental backoff means it will wait longer before reminding you again. Similarly each time you affirm that you are "distracted" the incremental backoff will wait less time before reminding diff --git a/apps/wrkmem/app.js b/apps/wrkmem/app.js index 80414e48c..3f283ca8a 100644 --- a/apps/wrkmem/app.js +++ b/apps/wrkmem/app.js @@ -1,7 +1,7 @@ const textInput = require("textinput"); -g.clearRect(Bangle.appRect); g.reset(); +g.clearRect(Bangle.appRect); E.showMessage("Loading ... "); Bangle.loadWidgets(); Bangle.drawWidgets(); @@ -16,12 +16,16 @@ Object.assign(savedData, require("Storage") let currentMenu; -function save() { - require("Storage") - .writeJSON("wrkmem.json", savedData); +const allTasks = savedData.tasks; +const SWIPE = { + LEFT: 2, RIGHT: 0, UP: 3, DOWN: 1, } -const allTasks = savedData.tasks; +/** + * A management object that helps us keep track of all our task timeouts. + * @type {{queueResponseTimeout: nudgeManager.queueResponseTimeout, taskTimeout: null, queueNudge: + * nudgeManager.queueNudge, interrupt: nudgeManager.interrupt, responseTimeout: null, activeTask: null}} + */ const nudgeManager = { activeTask : null, taskTimeout: null, responseTimeout: null, interrupt: () => { if (this.taskTimeout) clearTimeout(this.taskTimeout); @@ -41,6 +45,58 @@ const nudgeManager = { }, } +let keyboardAlpha, keyboardAlphaShift; + +if (textInput.generateKeyboard) { + //const charSet = textInput.createCharSet("ABCDEFGHIJKLMNOPQRSTUVWXYZ", ["spc", "ok", "del"]); + keyboardAlpha = textInput.generateKeyboard([ + ["a", "b", "c", "j", "k", "l", "s", "t", "u"], + ["d", "e", "f", "m", "n", "o", "v", "w", "x"], + ["g", "h", "i", "p", "q", "r", "y", "z"], + "spc", + "ok", + "del" + ]); + keyboardAlphaShift = textInput.generateKeyboard([ + ["A", "B", "C", "J", "K", "L", "S", "T", "U"], + ["D", "E", "F", "M", "N", "O", "V", "W", "X"], + ["G", "H", "I", "P", "Q", "R", "Y", "Z"], + "spc", + "cncl", + "del" + ]) +} + +/** + * Save the data in 'savedData' to flash memory. + */ +function save() { + require("Storage") + .writeJSON("wrkmem.json", savedData); +} + +/** + * This function is a workaround wrapper for a menu navigation bug. After 'onchange' the menu re-renders itself + * so to avoid graphical glitches we postpone whatever funciton we actually want by 5ms. + * @param fn The function you actually want to call + * @returns {function(): any} The same function wrapped in a setTimeout with a 5ms delay. + */ +function st5(fn) { + return () => setTimeout(fn, 5); +} + +/** + * Given a position and set of dimensions, create a button object that represents a rectangle in space containing text + * and some associated functionality. + * @param x + * @param y + * @param w + * @param h + * @param text + * @param callback + * @returns {{padding: number, r: number, getDrawable: (function(*, *, *, *, *): {r, x, y, y2, x2}), w, x, h, y, text: + * string, onTouch: ((function(*, *): (*|undefined))|*)}} + */ function createButton(x, y, w, h, text, callback) { text = text || ""; const x2 = x + w; @@ -70,7 +126,10 @@ function createButton(x, y, w, h, text, callback) { }; } - +/** + * Given a button object, draw that button onto the screen. This includes the background, borders, effects, and text. + * @param button + */ function drawButton(button) { const textMaxWidth = button.w - 2 * button.padding; let textOutlineCol = g.theme.bgH; @@ -112,6 +171,12 @@ function drawButton(button) { g.reset(); } +/** + * Given a button object, determine what font would be best to display the button's text without breaching the + * dimensions of the button itself. Not perfectly at the moment, but serviceably. + * @param button + * @returns {string} + */ function getBestFontForButton(button) { const allowedFonts = ["12x20", "6x15", "6x8", "4x6"]; let stringMet = g.setFont("Vector:100") @@ -143,6 +208,14 @@ function getBestFontForButton(button) { return allowedFonts[i]; } +/** + * Given a rotation (0-3) and a label, create an object representing a swipe hint, complete with draw instructions, + * a handler, and the specified rotation. + * @param rot A number, preferably from the SWIPE enum. 0 = 0 degrees. 1 = 90 degrees. 2 = 180 degrees, etc. + * @param text The text to display on the swipe hint + * @param callback The function to be called when the corresponding direction is swiped. + * @returns {{rot, onSwipe: ((function(*, *): (*|undefined))|*), draw: draw}} + */ function createSwipeControl(rot, text, callback) { let draw = () => {}; let appRect = Bangle.appRect; @@ -176,6 +249,14 @@ function createSwipeControl(rot, text, callback) { return {draw, onSwipe, rot}; } +/** + * Given a position, rotation, text, and mirror option, draw a swipe hint on the screen. + * @param x The x position of the center of the swipe hint. + * @param y The y position of the center of the swipe hint. + * @param rot The SWIPE rotation enumerated value (0-3) indicating the direction. + * @param text The text to display in the hint. + * @param flip Whether or not to flip the direction of the swipe hint (left to right, up to down, etc). + */ function drawSwipeHint(x, y, rot, text, flip) { const tw = g.setFont("6x8") .stringWidth(text); @@ -197,6 +278,12 @@ function drawSwipeHint(x, y, rot, text, flip) { .drawImage(gRot, x, y, {rotate: Math.PI / 2 * rot}); } +/** + * Given a set of options, create a drawable / UI-able menu object that attempts to lay out buttons and swipe hints in + * a given space. Returns an object with both setUI and render functions. + * @param options + * @returns {{setUI: (function(): void), buttons: *[], render: render}} + */ function createMenu(options) { let width = options.width || Bangle.appRect.w; let height = options.height || Bangle.appRect.h; @@ -269,27 +356,34 @@ function createMenu(options) { }; } - +/** + * Given a menu object (a custom menu object created in this app, not an Espruino menu object) draw the menu to the + * screen and set the UI framework to the one appropriate to that menu. + * @param menu + */ function setMenu(menu) { save(); - g.clearRect(Bangle.appRect); g.reset(); + g.clearRect(Bangle.appRect); currentMenu = menu; menu.render(); menu.setUI(); + Bangle.drawWidgets(); } -let keyboardAlpha; -if (textInput.generateKeyboard) { - //const charSet = textInput.createCharSet("ABCDEFGHIJKLMNOPQRSTUVWXYZ", ["spc", "ok", "del"]); - keyboardAlpha = textInput.generateKeyboard([["A", "B", "C", "J", "K", "L", "S", "T", "U"],["D", "E", "F", "M", "N", "O", "V", "W", "X"],["G", "H", "I", "P", "Q", "R", "Y", "Z"], "spc", "ok", "del"]) -} - +/** + * Create a new task with a given set of initial text. The user will be prompted with a keyboard to title the task. + * Once the task is created, begin that task. + * @param initialText + */ function newTask(initialText) { nudgeManager.interrupt(); initialText = initialText || ""; - textInput.input({text: initialText, keyboardMain: keyboardAlpha}) + textInput.input({text: initialText, keyboardMain: keyboardAlpha, keyboardShift: keyboardAlphaShift}) .then(text => { + if (!text) { + setMenu(mainMenu); + } const task = createTask(text) allTasks.unshift(task); save(); @@ -297,10 +391,13 @@ function newTask(initialText) { }) } +/** + * Begin the indicated task, taking the user to the corresponding menu / display screen and starting all relevant timers + * @param task + */ function startTask(task) { nudgeManager.queueNudge(task, () => nudge(task)); g.clear(); - Bangle.drawWidgets(); const onPressBack = () => { nudgeManager.interrupt(); setMenu(mainMenu) @@ -308,6 +405,11 @@ function startTask(task) { setMenu(getTaskMenu(task, onPressBack)); } +/** + * Remind the user of an ongoing task, prompting them to affirm that they are on task, distracted, or, after a set time + * period, unresponsive. + * @param task + */ function nudge(task) { Bangle.buzz(250, 1) .then(() => { @@ -325,18 +427,33 @@ function nudge(task) { nudgeManager.queueResponseTimeout(() => concludeUnresponsive(task)); } +/** + * Invoked when the user affirms that they are on task, increasing the affirmation count on the given task and + * advancing the incremental backoff counter. Congratulates the user for the response. + * @param task + */ function affirmOnTask(task) { task.affirmCount++; task.backoffIndex = Math.min(task.incrementalBackoffSet.length - 1, task.backoffIndex + 1); showTempMessage("Great job!", "On Task!", () => startTask(task)); } +/** + * Invoked when the user affirms that they were distracted, increasing the distraction count and lowering the + * incremental backoff counter. Encourages the user to keep trying. + * @param task + */ function affirmDistracted(task) { task.distractCount++; task.backoffIndex = Math.max(0, task.backoffIndex - 1); showTempMessage("Don't worry! You've got this!", "Distracted!", () => startTask(task)); } +/** + * Invoked when the user has not responded to an "on task?" prompt. Increments the unresponsive count and decrements + * the incremental backoff counter. + * @param task + */ function concludeUnresponsive(task) { Bangle.buzz(250, 1) .then(() => Bangle.setLCDPower(true)); @@ -345,6 +462,12 @@ function concludeUnresponsive(task) { nudgeManager.queueResponseTimeout(() => concludeUnresponsive(task)) } +/** + * Shows the user a message for a short period of time, then calls the "then function" + * @param text + * @param title + * @param thenFn + */ function showTempMessage(text, title, thenFn) { E.showMessage(text, {title}); setTimeout(() => { @@ -365,6 +488,10 @@ function completeTask(task) { setMenu(getTaskMenu(task)); } +/** + * Mark the task as not completed and then push it to the top of the list. + * @param task + */ function restartTask(task) { task.complete = false; removeTask(task, allTasks); @@ -373,6 +500,11 @@ function restartTask(task) { startTask(task); } +/** + * Remove the task from the given list. + * @param task + * @param list + */ function removeTask(task, list) { const taskIndex = list.findIndex((item) => item === task); if (taskIndex !== -1) { @@ -380,11 +512,12 @@ function removeTask(task, list) { } } - -const SWIPE = { - LEFT: 2, RIGHT: 0, UP: 3, DOWN: 1, -} - +/** + * Creates a task object given a set of text. + * @param text + * @returns {{distractCount: number, backoffIndex: number, incrementalBackoffSet: number[], affirmCount: number, + * unresponsiveCount: number, interval: number, text, complete: boolean, useBackoff: boolean}} + */ function createTask(text) { const incrementalBackoffSet = [0.5, 1, 2, 4, 8, 16, 32]; return { @@ -400,6 +533,73 @@ function createTask(text) { }; } +/** + * Shows a menu for editing the various properties of a given task. Also exposes the functions to start, restart, or + * delete the given task. + * @param task + * @param backFn + */ +function editTask(task, backFn) { + nudgeManager.interrupt(); + let editMenu = []; + if (task.complete) { + editMenu.push({title: "Start Task", onchange: st5(() => restartTask(task))}); + editMenu.push({title: "View Task", onchange: st5(() => startTask(task))}); + } else { + editMenu.push({title: "Resume Task", onchange: st5(() => startTask(task))}); + } + editMenu.push({title: "Rename", onchange: st5(() => renameTask(task, () => editTask(task, backFn)))}); + editMenu.push({title: "Interval", value: task.interval, min: 10, step: 10, onchange: v => task.interval = v}); + editMenu.push({title: "Incremental Backoff", value: !!task.useBackoff, onchange: v => task.useBackoff = v}); + editMenu.push({title: "DELETE", onchange: st5(() => deleteTask(task, () => editTask(task, backFn), backFn))}); + editMenu.push({title: "Statistics:"}); + editMenu.push({title: "On Task: " + task.affirmCount}); + editMenu.push({title: "Distracted: " + task.distractCount}); + editMenu.push({title: "Unresponsive: " + task.unresponsiveCount}); + editMenu[""] = {title: task.text, back: backFn}; + E.showMenu(editMenu); +} + +/** + * Remove the given task from the task list permanently if the user hits "yes" on the confirmation dialogue. + * @param task The task to delete. + * @param backFn The function to be called when the user cancels. + * @param deleteBackFn The function to be called when the user confirms. + */ +function deleteTask(task, backFn, deleteBackFn) { + E.showPrompt("Delete " + task.text + "?") + .then(shouldDelete => { + if (shouldDelete) { + removeTask(task, allTasks); + deleteBackFn(); + } else { + backFn(); + } + }); +} + +/** + * Change the text of the given task, and then execute the given function. + * @param task + * @param backFn The function to execute after the renaming. Typically to show some previous menu. + * @returns {*} + */ +function renameTask(task, backFn) { + return textInput.input({text: task.text, keyboardMain: keyboardAlpha, keyboardShift: keyboardAlphaShift}) + .then(text => { + task.text = text + save(); + backFn(); + }) +} + +/** + * Get the "menu" that displays a given active task. This may not seem like a menu to users, but it includes swipe + * controls and can sometimes include pressable buttons as well. + * @param task + * @param backFn + * @returns {{setUI: (function(): void), buttons: *[], render: render}} + */ function getTaskMenu(task, backFn) { const d = new Date(); const h = d.getHours(), m = d.getMinutes(); @@ -437,6 +637,13 @@ function getTaskMenu(task, backFn) { }); } +/** + * Given a task, determine the next incomplete task in the task list and return it. Return undefined if there are no + * other incomplete tasks. + * @param task + * @param list + * @returns {undefined|*} + */ function getNextTask(task, list) { const activeList = list.filter(x => (!x.complete || x === task)); const thisTaskPosition = activeList.findIndex(t => t === task); @@ -448,63 +655,14 @@ function getNextTask(task, list) { } /** - * This function is a workaround wrapper for a menu navigation bug. After 'onchange' the menu re-renders itself - * so to avoid graphical glitches we postpone whatever funciton we actually want by 5ms. - * @param fn The function you actually want to call - * @returns {function(): any} The same function wrapped in a setTimeout with a 5ms delay. + * Show the list of tasks in a menu, filtered by the filterFn. Selecting a task in this menu will bring you to that + * task's edit menu. + * @param filterFn + * @param backFn */ -function st5(fn) { - return () => setTimeout(fn, 5); -} - -function editTask(task, backFn) { - nudgeManager.interrupt(); - let editMenu = []; - if (task.complete) { - editMenu.push({title: "Start Task", onchange: st5(() => restartTask(task))}); - editMenu.push({title: "View Task", onchange: st5(() => startTask(task))}); - } else { - editMenu.push({title: "Resume Task", onchange: st5(() => startTask(task))}); - } - editMenu.push({title: "Rename", onchange: st5(() => renameTask(task, () => editTask(task, backFn)))}); - editMenu.push({title: "Interval", value: task.interval, min: 10, step: 10, onchange: v => task.interval = v}); - editMenu.push({title: "Incremental Backoff", value: !!task.useBackoff, onchange: v => task.useBackoff = v}); - editMenu.push({title: "DELETE", onchange: st5(() => deleteTask(task, () => editTask(task, backFn), backFn))}); - editMenu.push({title: "Statistics:"}); - editMenu.push({title: "On Task: " + task.affirmCount}); - editMenu.push({title: "Distracted: " + task.distractCount}); - editMenu.push({title: "Unresponsive: " + task.unresponsiveCount}); - editMenu[""] = {title: task.text, back: backFn}; - E.showMenu(editMenu); -} - -function deleteTask(task, backFn, deleteBackFn) { - E.showPrompt("Delete " + task.text + "?") - .then(shouldDelete => { - if (shouldDelete) { - const foundIndex = allTasks.findIndex(t => t === task); - if (foundIndex !== -1) { - allTasks.splice(foundIndex, 1); - } - deleteBackFn(); - } else { - backFn(); - } - }); -} - -function renameTask(task, backFn) { - return textInput.input({text: task.text, keyboardMain: keyboardAlpha}) - .then(text => { - task.text = text - save(); - backFn(); - }) -} - function showTaskList(filterFn, backFn) { let taskMenu = []; - const list = allTasks.filter(filterFn); + const list = allTasks.filter(filterFn); taskMenu = taskMenu.concat(list.map(task => { return { // Workaround - navigation has phantom buttons rendered with E.showMenu unless you delay slightly. @@ -515,10 +673,12 @@ function showTaskList(filterFn, backFn) { E.showMenu(taskMenu); } +/** + * Show the menu for editing settings and tasks. + * @param backFn + */ function showSettingsMenu(backFn) { - const completeTasks = allTasks.filter(task => task.complete); - const incompleteTasks = allTasks.filter(task => !task.complete); - const settingsMenu = { + const settingsMenu = { "" : {title: "Manage", back: backFn}, "Pending Tasks" : () => showTaskList(task => !task.complete, () => showSettingsMenu(backFn)), "Completed Tasks": () => showTaskList(task => task.complete, () => showSettingsMenu(backFn)), @@ -527,7 +687,6 @@ function showSettingsMenu(backFn) { } E.showMenu(settingsMenu); } - const mainMenu = createMenu({ title : "Working Memory", items: [ {text: "New Task", size: 2, callback: () => newTask("")}, { From f31f547b6e9383d666d73de710451dbd3a6e297c Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Tue, 13 Jun 2023 15:45:24 -0400 Subject: [PATCH 1431/1725] FIx ChangeLog name, add shortName to metadata --- apps/wrkmem/{Changelog => ChangeLog} | 0 apps/wrkmem/metadata.json | 1 + 2 files changed, 1 insertion(+) rename apps/wrkmem/{Changelog => ChangeLog} (100%) diff --git a/apps/wrkmem/Changelog b/apps/wrkmem/ChangeLog similarity index 100% rename from apps/wrkmem/Changelog rename to apps/wrkmem/ChangeLog diff --git a/apps/wrkmem/metadata.json b/apps/wrkmem/metadata.json index 040fbc750..1525ba64e 100644 --- a/apps/wrkmem/metadata.json +++ b/apps/wrkmem/metadata.json @@ -1,6 +1,7 @@ { "id" : "wrkmem", "name" : "Working Memory Helper", + "shortName" : "Work Mem", "version" : "1.00", "description" : "Externalize your working memory to help stay on task.", "dependencies" : {"textinput": "type"}, From 07d8e1078cf1a474d093b18f090b910eb52260e2 Mon Sep 17 00:00:00 2001 From: Nick Breland Date: Tue, 13 Jun 2023 22:02:03 +0100 Subject: [PATCH 1432/1725] Add Swatch Internet Time widget (widswatchbeats) --- apps/widswatchbeats/metadata.json | 18 +++++++++++++ apps/widswatchbeats/widget-icon.js | 1 + apps/widswatchbeats/widget.js | 41 ++++++++++++++++++++++++++++++ 3 files changed, 60 insertions(+) create mode 100644 apps/widswatchbeats/metadata.json create mode 100644 apps/widswatchbeats/widget-icon.js create mode 100644 apps/widswatchbeats/widget.js diff --git a/apps/widswatchbeats/metadata.json b/apps/widswatchbeats/metadata.json new file mode 100644 index 000000000..732db6a6d --- /dev/null +++ b/apps/widswatchbeats/metadata.json @@ -0,0 +1,18 @@ +{ + "id": "widswatchbeats", + "name": "Swatch Internet Time", + "icon": "widget.png", + "version": "0.01", + "description": "Displays the current .beat (Swatch Internet Time)", + "tags": "time,swatch,internet,beat,.beat,clock", + "storage": [{ + "name": "widswatchbeats.wid.js", + "url": "widget.js" + }, + { + "name": "widswatchbeats.img", + "url": "widget-icon.js", + "evaluate": true + } + ] +} diff --git a/apps/widswatchbeats/widget-icon.js b/apps/widswatchbeats/widget-icon.js new file mode 100644 index 000000000..efc1c1393 --- /dev/null +++ b/apps/widswatchbeats/widget-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("7FUwcB/4A/AH4A/AH4A/AH4A/AH4A/AAWAgAACj5F/ABP8J4cAgZG/KH4AD+A5Eh5Q/KH5Q/KH5Q/KH5Q/KH5Q/KH5Q/KH5Q/KH5Q/KH5Q18BWNC4p6bKD34AwcBCxAOEAAV/CKAjG4AOGEZhQK/wbFn4VGBwxiKCJEAg4ONKCy/FFgoACwA+NCJkAj5QqgAULCK8DKEaAHPoYAB8AuKCKJQjHxwRRKBZBDKFB9DKBoRRgEPKF/4CRgvDCJpQrDonAKH5QVn//+BQOg4RGKEk/8BQOgI1HHwQROBBBQaGoWAPpoILKBAIJAAKtIABpQGMoRQRHwoIRKEwgIKH5QfdJBQrgYJCI5ApFMQRQ/KDQAIKH5Q/FgpQaEZBQ/AA4aFKGoAIKBXgCJZQ/EA5Q/KBKeGKH4+HTxBQ/Hw+AKH4+OEwpQ/HxSzSKHEAn5QJgPAKH5QG/AKGv5Q6v4lLI4gABBAxQ/KBCqCKH4AGDRBQX5MkyVJAQRQuHYZQ/KH5Q/KCYgCKBI+HKH5QQHZJQrEBBQ/Hw4gIcCJQ/KH4XGwBQWCJYIFKEqqJHxxHLIgpQLBYpQRgEHA4xQCa5BQOgE/YoxQLGQpQSDpRQFHwQyFWZAAIKFcDCYf4MR5Q/KBgRDKHUfFYhiQ4BQSMpBQTjhQZCIhQInBQvFQn/8BQKCAn4KF8fwAbFg5QFCgoRKKA8BBAs/Cgi2HKCnwDYopFAAIOGCJINGh5QLMo5QUX4rLFZxcPCAwmFgZEGMppQC/JQJ/7sEj4pFHw59IIIIAHEwxEFKAxlFKAYAT8AvEABJBDHAwAE4AONAH4A/AH4A/AH4A/AEH4IH5QQA=")) diff --git a/apps/widswatchbeats/widget.js b/apps/widswatchbeats/widget.js new file mode 100644 index 000000000..dfb57cce4 --- /dev/null +++ b/apps/widswatchbeats/widget.js @@ -0,0 +1,41 @@ +(function() { + const WIDTH = 50; + const SEC_PER_BEAT = 86.4; + + let drawTimeout; + + function getSecondsSinceMidnight() { + const now = new Date(); + return now.getHours() * 3600 + now.getMinutes() * 60 + now.getSeconds(); + } + + function queueDraw() { + if (drawTimeout) clearTimeout(drawTimeout); + const nextSecond = SEC_PER_BEAT - (getSecondsSinceMidnight() % SEC_PER_BEAT); + drawTimeout = setTimeout(function() { + drawTimeout = undefined; + WIDGETS.widswatchbeats.draw(); + }, nextSecond * 1000 + 1); // Add one ms to ensure we're past the beat + } + + function draw() { + const now = new Date(); + const seconds = now.getHours() * 3600 + now.getMinutes() * 60 + now.getSeconds(); + const beats = Math.floor(seconds / SEC_PER_BEAT); + const beatsString = '@' + beats.toString().padStart(3, '0'); + + g.reset(); + g.setFontAlign(0, 0); + g.clearRect(this.x, this.y, this.x + WIDTH, this.y+22); + g.setFont("6x8", 2); + g.drawString(beatsString, this.x+WIDTH/2, this.y+12); + queueDraw(); + } + + WIDGETS.widswatchbeats = { + area: "tl", + width: WIDTH, + draw + }; + +})(); From 783ea2245500e8abfb3bde062b5bc8c1fe4cf47c Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Tue, 13 Jun 2023 17:08:12 -0400 Subject: [PATCH 1433/1725] kbmatry1.07 Fix glitchy widget showthrough --- apps/kbmatry/ChangeLog | 3 ++- apps/kbmatry/lib.js | 6 +++++- apps/kbmatry/metadata.json | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/apps/kbmatry/ChangeLog b/apps/kbmatry/ChangeLog index 98d0187ab..76a6ce39d 100644 --- a/apps/kbmatry/ChangeLog +++ b/apps/kbmatry/ChangeLog @@ -4,4 +4,5 @@ 1.03: Attempt to improve keyboard load time. 1.04: Make code asynchronous and improve load time. 1.05: Fix layout issue and rename library -1.06: Touch up readme, prep for IPO, add screenshots \ No newline at end of file +1.06: Touch up readme, prep for IPO, add screenshots +1.07: Fix widget display \ No newline at end of file diff --git a/apps/kbmatry/lib.js b/apps/kbmatry/lib.js index a7a434dad..ad65073a5 100644 --- a/apps/kbmatry/lib.js +++ b/apps/kbmatry/lib.js @@ -1,3 +1,5 @@ +const widgetUtils = require("widget_utils"); + /** * Attempt to lay out a set of characters in a logical way to optimize the number of buttons with the number * of characters per button. Useful if you need to dynamically (or frequently) change your character set @@ -230,6 +232,7 @@ const defaultCharSetShift = [ * @returns {Promise} */ function input(options) { + widgetUtils.hide(); options = options || {}; let typed = options.text || ""; let resolveFunction = () => {}; @@ -487,7 +490,8 @@ function input(options) { Bangle.setLocked(false); }) }).then((result) => { - g.clearRect(Bangle.appRect); + g.clear(true); + widgetUtils.show(); clearInterval(blinkInterval); Bangle.setUI(); return result; diff --git a/apps/kbmatry/metadata.json b/apps/kbmatry/metadata.json index 793286180..c166c1f12 100644 --- a/apps/kbmatry/metadata.json +++ b/apps/kbmatry/metadata.json @@ -1,6 +1,6 @@ { "id": "kbmatry", "name": "Matryoshka Keyboard", - "version":"1.06", + "version":"1.07", "description": "A library for text input via onscreen keyboard. Easily enter characters with nested keyboards.", "icon": "icon.png", "type":"textinput", From a42e00dc2044919217cc683d25bdf19e9787b924 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 21 May 2023 22:38:54 +0100 Subject: [PATCH 1434/1725] Regenerate main.d.ts --- typescript/types/main.d.ts | 109 +++++++++++++++++++++++++++++++------ 1 file changed, 93 insertions(+), 16 deletions(-) diff --git a/typescript/types/main.d.ts b/typescript/types/main.d.ts index 59fb18d30..ecf509f70 100644 --- a/typescript/types/main.d.ts +++ b/typescript/types/main.d.ts @@ -260,6 +260,9 @@ type Theme = { dark: boolean; }; +type IntervalId = number & { _brand: "interval" }; +type TimeoutId = number & { _brand: "timeout" }; + type PinMode = | "analog" | "input" @@ -3863,7 +3866,7 @@ declare class Bangle { * of the BPM reading. * * `hrmSportMode` - on the newest Bangle.js 2 builds with with the proprietary * heart rate algorithm, this is the sport mode passed to the algorithm. See `libs/misc/vc31_binary/algo.h` - * for more info. 0 = normal (default), 1 = running, 2 = ... + * for more info. -1 = auto, 0 = normal (default), 1 = running, 2 = ... * * `seaLevelPressure` (Bangle.js 2) Normally 1013.25 millibars - this is used for * calculating altitude with the pressure sensor * Where accelerations are used they are in internal units, where `8192 = 1g` @@ -4092,7 +4095,8 @@ declare class Bangle { static getHealthStatus(range?: "current" | "last" | "day"): HealthStatus; /** - * Reads debug info. Exposes the current values of `accHistoryIdx`, `accGestureCount`, `accIdleCount` and `pollInterval`. + * Reads debug info. Exposes the current values of `accHistoryIdx`, `accGestureCount`, `accIdleCount`, `pollInterval` and others. + * Please see the declaration of this function for more information (click the `==>` link above [this description](http://www.espruino.com/Reference#l_Bangle_dbg)) * @returns {any} * @url http://www.espruino.com/Reference#l_Bangle_dbg */ @@ -4297,6 +4301,13 @@ declare class Bangle { */ static showClock(): void; + /** + * Show a 'recovery' menu that allows you to perform certain tasks on your Bangle. + * You can also enter this menu by restarting while holding down the `BTN1` + * @url http://www.espruino.com/Reference#l_Bangle_showRecoveryMenu + */ + static showRecoveryMenu(): void; + /** * This behaves the same as the global `load()` function, but if fast * loading is possible (`Bangle.setUI` was called with a `remove` handler) @@ -4971,11 +4982,19 @@ declare class Graphics { * XXXXXXXXX * `); * g.drawImage(img, x,y); + * var img = Graphics.createImage(` + * ..... + * .XXX. + * .X.X. + * .XXX. + * ..... + * `); + * g.drawImage(img, x,y); * ``` * If the characters at the beginning and end of the string are newlines, they will * be ignored. Spaces are treated as `0`, and any other character is a `1` * - * @param {any} str - A String containing a newline-separated image - space is 0, anything else is 1 + * @param {any} str - A String containing a newline-separated image - space/. is 0, anything else is 1 * @returns {any} An Image object that can be used with `Graphics.drawImage` * @url http://www.espruino.com/Reference#l_Graphics_createImage */ @@ -5352,6 +5371,14 @@ declare class Graphics { */ setFontCustom(bitmap: ArrayBuffer, firstChar: number, width: number | string, height: number): Graphics; + /** + * + * @param {any} file - The font as a PBF file + * @returns {any} The instance of Graphics this was called on, to allow call chaining + * @url http://www.espruino.com/Reference#l_Graphics_setFontPBF + */ + setFontPBF(file: any): Graphics; + /** * Set the alignment for subsequent calls to `drawString` * @@ -8097,21 +8124,65 @@ declare class E { static toArrayBuffer(str: string): ArrayBuffer; /** - * Returns a 'flat' string representing the data in the arguments, or return - * `undefined` if a flat string cannot be created. - * This creates a string from the given arguments. If an argument is a String or an - * Array, each element is traversed and added as an 8 bit character. If it is - * anything else, it is converted to a character directly. + * Returns a `String` representing the data in the arguments. + * This creates a string from the given arguments in the same way as `E.toUint8Array`. If each argument is: + * * A String or an Array, each element is traversed and added as an 8 bit character + * * `{data : ..., count : N}` causes `data` to be repeated `count` times + * * `{callback : fn}` calls the function and adds the result + * * Anything else is converted to a character directly. * In the case where there's one argument which is an 8 bit typed array backed by a * flat string of the same length, the backing string will be returned without * doing a copy or other allocation. The same applies if there's a single argument * which is itself a flat string. + * ```JS + * E.toString(0,1,2,"Hi",3) + * "\0\1\2Hi\3" + * E.toString(1,2,{data:[3,4], count:4},5,6) + * "\1\2\3\4\3\4\3\4\3\4\5\6" + * >E.toString(1,2,{callback : () => "Hello World"},5,6) + * ="\1\2Hello World\5\6" + * ``` + * **Note:** Prior to Espruino 2v18 `E.toString` would always return a flat string, + * or would return `undefined` if one couldn't be allocated. Now, it will return + * a normal (fragmented) String if a contiguous chunk of memory cannot be allocated. + * You can still check if the returned value is a Flat string using `E.getAddressOf(str, true)!=0`, + * or can use `E.toFlatString` instead. * * @param {any} args - The arguments to convert to a String - * @returns {any} A String (or `undefined` if a Flat String cannot be created) + * @returns {any} A String * @url http://www.espruino.com/Reference#l_E_toString */ - static toString(...args: any[]): string | undefined; + static toString(...args: any[]): string; + + /** + * Returns a Flat `String` representing the data in the arguments, or `undefined` if one can't be allocated. + * This provides the same behaviour that `E.toString` had in Espruino before 2v18 - see `E.toString` for + * more information. + * + * @param {any} args - The arguments to convert to a Flat String + * @returns {any} A Flat String (or undefined) + * @url http://www.espruino.com/Reference#l_E_toFlatString + */ + static toFlatString(...args: any[]): string | undefined; + + /** + * By default, strings in Espruino are standard 8 bit binary strings. + * However calling E.asUTF8 will convert one of those strings to + * UTF8. + * ``` + * var s = String.fromCharCode(0xF0,0x9F,0x8D,0x94); + * var u = E.asUTF8(s); + * s.length // 4 + * s[0] // "\xF0" + * u.length // 1 + * u[0] // hamburger emoji + * ``` + * + * @param {any} str - The string to turn into a UTF8 Unicode String + * @returns {any} A String + * @url http://www.espruino.com/Reference#l_E_asUTF8 + */ + static asUTF8(str: any): string; /** * This creates a Uint8Array from the given arguments. These are handled as @@ -11226,7 +11297,7 @@ declare function getSerial(): any; * @returns {any} An ID that can be passed to clearInterval * @url http://www.espruino.com/Reference#l__global_setInterval */ -declare function setInterval(func: any, timeout: number, ...args: any[]): any; +declare function setInterval(func: string | Function, timeout: number, ...args: any[]): IntervalId; /** * Call the function (or evaluate the string) specified ONCE after the timeout in @@ -11261,7 +11332,7 @@ declare function setInterval(func: any, timeout: number, ...args: any[]): any; * @returns {any} An ID that can be passed to clearTimeout * @url http://www.espruino.com/Reference#l__global_setTimeout */ -declare function setTimeout(func: any, timeout: number, ...args: any[]): any; +declare function setTimeout(func: string | Function, timeout: number, ...args: any[]): TimeoutId; /** * Clear the Interval that was created with `setInterval`, for example: @@ -11273,7 +11344,7 @@ declare function setTimeout(func: any, timeout: number, ...args: any[]): any; * @param {any} id - The id returned by a previous call to setInterval. **Only one argument is allowed.** * @url http://www.espruino.com/Reference#l__global_clearInterval */ -declare function clearInterval(...id: any[]): void; +declare function clearInterval(id: IntervalId): void; /** * Clear the Timeout that was created with `setTimeout`, for example: @@ -11285,7 +11356,7 @@ declare function clearInterval(...id: any[]): void; * @param {any} id - The id returned by a previous call to setTimeout. **Only one argument is allowed.** * @url http://www.espruino.com/Reference#l__global_clearTimeout */ -declare function clearTimeout(...id: any[]): void; +declare function clearTimeout(id: TimeoutId): void; /** * Change the Interval on a callback created with `setInterval`, for example: @@ -11299,7 +11370,7 @@ declare function clearTimeout(...id: any[]): void; * @param {number} time - The new time period in ms * @url http://www.espruino.com/Reference#l__global_changeInterval */ -declare function changeInterval(id: any, time: number): void; +declare function changeInterval(id: IntervalId, time: number): void; /** * Read 8 bits of memory at the given location - DANGEROUS! @@ -13155,10 +13226,13 @@ declare module "tensorflow" { * Functions here take and return buffers of data. There is no support for * streaming, so both the compressed and decompressed data must be able to fit in * memory at the same time. + * If you'd like a way to perform compression/decompression on desktop, check out https://github.com/espruino/EspruinoWebTools#heatshrinkjs * @url http://www.espruino.com/Reference#heatshrink */ declare module "heatshrink" { /** + * Compress the heatshrink-encoded data supplied as input. + * If you'd like a way to perform compression/decompression on desktop, check out https://github.com/espruino/EspruinoWebTools#heatshrinkjs * * @param {any} data - The data to compress * @returns {any} Returns the result as an ArrayBuffer @@ -13167,6 +13241,8 @@ declare module "heatshrink" { function compress(data: any): ArrayBuffer; /** + * Decompress the heatshrink-encoded data supplied as input. + * If you'd like a way to perform compression/decompression on desktop, check out https://github.com/espruino/EspruinoWebTools#heatshrinkjs * * @param {any} data - The data to decompress * @returns {any} Returns the result as an ArrayBuffer @@ -13316,7 +13392,8 @@ declare module "Storage" { * @returns {any} An object containing parsed JSON from the file, or undefined * @url http://www.espruino.com/Reference#l_Storage_readJSON */ - function readJSON(name: string, noExceptions: ShortBoolean): any; + function readJSON(name: string, noExceptions?: false | 0): unknown; + function readJSON(name: string, noExceptions?: ShortBoolean): unknown | undefined; /** * Read a file from the flash storage area that has been written with From 9c7479775234dcfa5fae7032025392df8e6ba887 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 21 May 2023 22:38:42 +0100 Subject: [PATCH 1435/1725] popcon: fixes for readJSON() changes --- apps/popconlaunch/boot.js | 2 +- apps/popconlaunch/boot.ts | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/popconlaunch/boot.js b/apps/popconlaunch/boot.js index 60c8ffcb7..42c0fc229 100644 --- a/apps/popconlaunch/boot.js +++ b/apps/popconlaunch/boot.js @@ -65,7 +65,7 @@ require("Storage").readJSON = (function (fname, skipExceptions) { var _a; var j = oldRead(fname, skipExceptions); - if (/\.info$/.test(fname)) { + if (j && /\.info$/.test(fname)) { var cache_1 = ensureCache(); var so = void 0; if (j.src && (so = (_a = cache_1[j.src]) === null || _a === void 0 ? void 0 : _a.sortorder) != null) diff --git a/apps/popconlaunch/boot.ts b/apps/popconlaunch/boot.ts index a6b52fb0f..f683fc2b1 100644 --- a/apps/popconlaunch/boot.ts +++ b/apps/popconlaunch/boot.ts @@ -15,7 +15,7 @@ let cache: undefined | Cache; const ensureCache = (): NonNull => { if(!cache){ - cache = oldRead("popcon.cache.json", true); + cache = oldRead("popcon.cache.json", true) as Cache | undefined; if(!cache) cache = {}; } @@ -38,7 +38,7 @@ const saveCache = (cache: Cache, orderChanged: boolean) => { require("Storage").writeJSON("popcon.cache.json", cache); if(orderChanged){ // ensure launchers reload their caches: - const info: AppInfo & { cacheBuster?: boolean } = oldRead("popconlaunch.info", true); + const info = (oldRead("popconlaunch.info", true) as undefined | AppInfo & { cacheBuster?: boolean }) || {}; info.cacheBuster = !info.cacheBuster; require("Storage").writeJSON("popconlaunch.info", info); } @@ -80,10 +80,10 @@ const sortCache = () => { }; require("Storage").readJSON = ((fname, skipExceptions) => { - const j: AppInfo = oldRead(fname, skipExceptions); - // ^ technically only AppInfo if we're "*.info" + const j = oldRead(fname, skipExceptions) as AppInfo | undefined; + // technically only AppInfo if we're "*.info" ^ - if(/\.info$/.test(fname)){ + if(j && /\.info$/.test(fname)){ const cache = ensureCache(); let so; From d848d40a257e23de627d7e7517aa291047d0bbdf Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 13 Jun 2023 23:21:26 +0100 Subject: [PATCH 1436/1725] typescript: handle typings which now distinguish setTimeout/Interval --- apps/btadv/app.ts | 2 +- apps/clkinfostopw/clkinfo.ts | 4 ++-- apps/drained/app.ts | 4 ++-- apps/widhid/wid.ts | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index c66ba3449..85fd3a5d3 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -686,7 +686,7 @@ const setIntervals = ( const redrawInterval = setInterval(redraw, /*replaced*/1000); Bangle.on("lock", locked => setIntervals(locked)); -let bleInterval: undefined | number; +let bleInterval: undefined | IntervalId; NRF.on("connect", () => setIntervals(undefined, true)); NRF.on("disconnect", () => setIntervals(undefined, false)); diff --git a/apps/clkinfostopw/clkinfo.ts b/apps/clkinfostopw/clkinfo.ts index 5a2fd7bd0..f0c2a6ccb 100644 --- a/apps/clkinfostopw/clkinfo.ts +++ b/apps/clkinfostopw/clkinfo.ts @@ -1,6 +1,6 @@ (() => { let durationOnPause = "---"; - let redrawInterval: number | undefined; + let redrawInterval: IntervalId | undefined; let startTime: number | undefined; let showMillis = true; const milliTime = 60; @@ -16,7 +16,7 @@ if (startTime) { if (showMillis && Date.now() - startTime > milliTime * 1000) { showMillis = false; - changeInterval(redrawInterval, 1000); + changeInterval(redrawInterval!, 1000); } } else { unqueueRedraw(); diff --git a/apps/drained/app.ts b/apps/drained/app.ts index 3adfbec02..f4d33bc44 100644 --- a/apps/drained/app.ts +++ b/apps/drained/app.ts @@ -1,7 +1,7 @@ const app = "drained"; // from boot.js -declare var drainedInterval: number | undefined; +declare var drainedInterval: IntervalId | undefined; if(typeof drainedInterval !== "undefined") drainedInterval = clearInterval(drainedInterval) as undefined; @@ -41,7 +41,7 @@ Bangle.setOptions({ }); // clock -let nextDraw: number | undefined; +let nextDraw: TimeoutId | undefined; const draw = () => { const x = g.getWidth() / 2; const y = g.getHeight() / 2 - 48; diff --git a/apps/widhid/wid.ts b/apps/widhid/wid.ts index e788be1a8..c8bd2410f 100644 --- a/apps/widhid/wid.ts +++ b/apps/widhid/wid.ts @@ -10,7 +10,7 @@ let anchor = {x:0,y:0}; let start = {x:0,y:0}; let dragging = false; - let activeTimeout: number | undefined; + let activeTimeout: TimeoutId | undefined; let waitForRelease = true; const onSwipe = ((_lr, ud) => { From 259dd244822d7182808ed6fa8cbf764914b61d41 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 13 Jun 2023 23:22:14 +0100 Subject: [PATCH 1437/1725] typescript: Immediately prescribe types to results of readJSON() --- apps/clkinfostopw/settings.ts | 6 ++++-- apps/folderlaunch/app.ts | 4 ++-- apps/folderlaunch/configLoad.js | 4 ++-- apps/folderlaunch/configLoad.ts | 14 +++++++------- apps/folderlaunch/settings.ts | 6 +++--- apps/popconlaunch/boot.js | 2 +- apps/popconlaunch/boot.ts | 2 +- apps/popconlaunch/settings.ts | 2 +- apps/widhid/wid.ts | 2 +- 9 files changed, 22 insertions(+), 20 deletions(-) diff --git a/apps/clkinfostopw/settings.ts b/apps/clkinfostopw/settings.ts index a9a35f245..a7bfce1e5 100644 --- a/apps/clkinfostopw/settings.ts +++ b/apps/clkinfostopw/settings.ts @@ -10,8 +10,10 @@ type StopWatchSettings = { const SETTINGS_FILE = "clkinfostopw.setting.json"; const storage = require("Storage"); - const settings: StopWatchSettings = storage.readJSON(SETTINGS_FILE, true) || {}; - settings.format ??= StopWatchFormat.HMS; + const settings: StopWatchSettings = Object.assign( + { format: StopWatchFormat.HMS }, + storage.readJSON(SETTINGS_FILE, true), + ); const save = () => { storage.writeJSON(SETTINGS_FILE, settings) diff --git a/apps/folderlaunch/app.ts b/apps/folderlaunch/app.ts index 3e2dbacc9..cab686f61 100644 --- a/apps/folderlaunch/app.ts +++ b/apps/folderlaunch/app.ts @@ -115,7 +115,7 @@ // Get the icon and text, skip if the space is empty. Always draw text for folders even if disabled switch (entry.type) { case 'app': - let app: AppInfo = storage.readJSON(entry.id + '.info', false); + let app = storage.readJSON(entry.id + '.info', false) as AppInfo; icon = storage.read(app.icon!)!; text = app.name; empty = false; @@ -186,7 +186,7 @@ switch (entry.type) { case "app": Bangle.buzz(); - let infoFile = storage.readJSON(entry.id + '.info', false); + let infoFile = storage.readJSON(entry.id + '.info', false) as AppInfo; load(infoFile.src); break; case "folder": diff --git a/apps/folderlaunch/configLoad.js b/apps/folderlaunch/configLoad.js index 2c27df1b4..f0610bf62 100644 --- a/apps/folderlaunch/configLoad.js +++ b/apps/folderlaunch/configLoad.js @@ -28,7 +28,7 @@ function cleanAndSave(config) { var installedAppIds = []; for (var _i = 0, infoFiles_1 = infoFiles; _i < infoFiles_1.length; _i++) { var infoFile = infoFiles_1[_i]; - installedAppIds.push(storage.readJSON(infoFile, true).id); + installedAppIds.push((storage.readJSON(infoFile, true) || {}).id); } var toRemove = []; for (var appId in config.apps) @@ -67,7 +67,7 @@ module.exports = { infoFiles.sort(infoFileSorter); for (var _i = 0, infoFiles_2 = infoFiles; _i < infoFiles_2.length; _i++) { var infoFile = infoFiles_2[_i]; - var app_1 = storage.readJSON(infoFile, false); + var app_1 = storage.readJSON(infoFile, false) || {}; if ((!config.showClocks && app_1.type == 'clock') || (!config.showLaunchers && app_1.type == 'launch') || (app_1.type == 'widget') || diff --git a/apps/folderlaunch/configLoad.ts b/apps/folderlaunch/configLoad.ts index 0cb9d59f6..0c1e3c0c1 100644 --- a/apps/folderlaunch/configLoad.ts +++ b/apps/folderlaunch/configLoad.ts @@ -53,7 +53,7 @@ function cleanAndSave(config: Config): Config { let infoFiles: Array = storage.list(/\.info$/); let installedAppIds: Array = []; for (let infoFile of infoFiles) - installedAppIds.push(storage.readJSON(infoFile, true).id); + installedAppIds.push(((storage.readJSON(infoFile, true) || {}) as AppInfo).id); // Remove nonexistent apps from appInfo let toRemove: Array = []; @@ -77,8 +77,8 @@ function cleanAndSave(config: Config): Config { * @return negative if a should go first, positive if b should go first, zero if equivalent. */ let infoFileSorter = (a: string, b: string): number => { - let aJson: AppInfo = storage.readJSON(a, false); - let bJson: AppInfo = storage.readJSON(b, false); + let aJson = storage.readJSON(a, false) as AppInfo; + let bJson = storage.readJSON(b, false) as AppInfo; var n = (0 | aJson.sortorder!) - (0 | bJson.sortorder!); if (n) return n; // do sortorder first if (aJson.name < bJson.name) return -1; @@ -97,7 +97,7 @@ export = { * @return the loaded configuration */ getConfig: (): Config => { - let config = storage.readJSON(SETTINGS_FILE, true) || DEFAULT_CONFIG; + let config = (storage.readJSON(SETTINGS_FILE, true) as Config | undefined) || DEFAULT_CONFIG; // We only need to load data from the filesystem if there is a change if (config.hash == storage.hash(/\.info$/)) { @@ -110,7 +110,7 @@ export = { infoFiles.sort(infoFileSorter); for (let infoFile of infoFiles) { - let app: AppInfo = storage.readJSON(infoFile, false); + let app = storage.readJSON(infoFile, false) as AppInfo | undefined || ({} as AppInfo); // If the app is to be hidden by policy, exclude it completely if ( @@ -138,12 +138,12 @@ export = { // Note: Relies on curFolder secretly being a reference rather than a copy let curFolder: Folder = config.rootFolder; let depth = 0; - for (let folderName of config.apps[app.id].folder) { + for (let folderName of config.apps[app.id]!.folder) { if (curFolder.folders.hasOwnProperty(folderName)) { curFolder = curFolder.folders[folderName]!; depth++; } else { - config.apps[app.id].folder = config.apps[app.id].folder.slice(0, depth); + config.apps[app.id]!.folder = config.apps[app.id]!.folder.slice(0, depth); break; } } diff --git a/apps/folderlaunch/settings.ts b/apps/folderlaunch/settings.ts index 4433b09a2..8848b7cf8 100644 --- a/apps/folderlaunch/settings.ts +++ b/apps/folderlaunch/settings.ts @@ -24,7 +24,7 @@ onchange // Do nothing, but stop typescript from yelling at me for this function being unused. It gets used by eval. I know eval is evil, but the menus are a bit limited. for (let app in config.apps) { - let appInfo: AppInfo = storage.readJSON(app + '.info', false); + let appInfo = storage.readJSON(app + '.info', false) as AppInfo; menu[appInfo.name] = { value: config.hidden.includes(app), format: (value: boolean) => (value ? 'Yes' : 'No'), @@ -36,7 +36,7 @@ }; let getAppInfo = (id: string): AppInfo => { - return storage.readJSON(id + '.info', false); + return storage.readJSON(id + '.info', false) as AppInfo; } let showFolderMenu = (path: Array) => { @@ -142,7 +142,7 @@ } } for (let appId of folder.apps) { - menu[storage.readJSON(appId + '.info', false).name] = () => { }; + menu[(storage.readJSON(appId + '.info', false) as AppInfo).name] = () => { }; } E.showMenu(menu); } diff --git a/apps/popconlaunch/boot.js b/apps/popconlaunch/boot.js index 42c0fc229..e760b501e 100644 --- a/apps/popconlaunch/boot.js +++ b/apps/popconlaunch/boot.js @@ -26,7 +26,7 @@ trimCache(cache); require("Storage").writeJSON("popcon.cache.json", cache); if (orderChanged) { - var info = oldRead("popconlaunch.info", true); + var info = oldRead("popconlaunch.info", true) || { cacheBuster: true }; info.cacheBuster = !info.cacheBuster; require("Storage").writeJSON("popconlaunch.info", info); } diff --git a/apps/popconlaunch/boot.ts b/apps/popconlaunch/boot.ts index f683fc2b1..2802be59f 100644 --- a/apps/popconlaunch/boot.ts +++ b/apps/popconlaunch/boot.ts @@ -38,7 +38,7 @@ const saveCache = (cache: Cache, orderChanged: boolean) => { require("Storage").writeJSON("popcon.cache.json", cache); if(orderChanged){ // ensure launchers reload their caches: - const info = (oldRead("popconlaunch.info", true) as undefined | AppInfo & { cacheBuster?: boolean }) || {}; + const info = (oldRead("popconlaunch.info", true) as undefined | AppInfo & { cacheBuster?: boolean }) || {cacheBuster:true}; info.cacheBuster = !info.cacheBuster; require("Storage").writeJSON("popconlaunch.info", info); } diff --git a/apps/popconlaunch/settings.ts b/apps/popconlaunch/settings.ts index e301df9b2..6f02dc438 100644 --- a/apps/popconlaunch/settings.ts +++ b/apps/popconlaunch/settings.ts @@ -6,7 +6,7 @@ const S = require("Storage"); S.erase("popcon.cache.json"); - const info: AppInfo & { cacheBuster?: boolean } = S.readJSON("popconlaunch.info", true); + const info = S.readJSON("popconlaunch.info", true) as AppInfo & { cacheBuster?: boolean }; info.cacheBuster = !info.cacheBuster; S.writeJSON("popconlaunch.info", info); diff --git a/apps/widhid/wid.ts b/apps/widhid/wid.ts index c8bd2410f..1de293b36 100644 --- a/apps/widhid/wid.ts +++ b/apps/widhid/wid.ts @@ -1,5 +1,5 @@ (() => { - const settings: Settings = require("Storage").readJSON("setting.json", true) || { HID: false } as Settings; + const settings = require("Storage").readJSON("setting.json", true) as Settings || ({ HID: false } as Settings); if (settings.HID !== "kbmedia") { console.log("widhid: can't enable, HID setting isn't \"kbmedia\""); return; From e6d90437bdf688c0b837ad5bcf14a864f6111f5c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 13 Jun 2023 23:22:48 +0100 Subject: [PATCH 1438/1725] typescript: drop unused fast property in folderlaunch --- apps/folderlaunch/types.d.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/folderlaunch/types.d.ts b/apps/folderlaunch/types.d.ts index 9d22b9ff5..fee36ed98 100644 --- a/apps/folderlaunch/types.d.ts +++ b/apps/folderlaunch/types.d.ts @@ -21,7 +21,6 @@ type Config = { apps: { // Saved info for each app [key: string]: { folder: FolderList, // Folder path - fast: boolean, // Whether the app should be fast launched nagged: boolean // Whether the app's fast launch setting was configured } }, From e7bc7321de5129614d7621f307dec8d4ec5246b2 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 13 Jun 2023 23:25:30 +0100 Subject: [PATCH 1439/1725] folderlaunch: version bump --- apps/folderlaunch/ChangeLog | 3 ++- apps/folderlaunch/metadata.json | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/folderlaunch/ChangeLog b/apps/folderlaunch/ChangeLog index 759f68777..8a32760a4 100644 --- a/apps/folderlaunch/ChangeLog +++ b/apps/folderlaunch/ChangeLog @@ -1 +1,2 @@ -0.01: New app! \ No newline at end of file +0.01: New app! +0.02: Handle files potentially not existing diff --git a/apps/folderlaunch/metadata.json b/apps/folderlaunch/metadata.json index c3c8db75b..b5508bb59 100644 --- a/apps/folderlaunch/metadata.json +++ b/apps/folderlaunch/metadata.json @@ -1,7 +1,7 @@ { "id": "folderlaunch", "name": "Folder launcher", - "version": "0.01", + "version": "0.02", "description": "Launcher that allows you to put your apps into folders", "icon": "icon.png", "type": "launch", @@ -45,4 +45,4 @@ "url": "screenshot2.png" } ] -} \ No newline at end of file +} From fd27ebea52cc3bb612209f8fa7b7dda16e57acd0 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 13 Jun 2023 23:25:47 +0100 Subject: [PATCH 1440/1725] popcon: version bump --- apps/popconlaunch/ChangeLog | 1 + apps/popconlaunch/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/popconlaunch/ChangeLog b/apps/popconlaunch/ChangeLog index e174349bf..ec9bfa232 100644 --- a/apps/popconlaunch/ChangeLog +++ b/apps/popconlaunch/ChangeLog @@ -2,3 +2,4 @@ 0.02: Trim old entries from the popcon app cache 0.03: Avoid polluting global scope 0.04: Add settings app for resetting popcon +0.05: Handle info files potentially not existing diff --git a/apps/popconlaunch/metadata.json b/apps/popconlaunch/metadata.json index f3e8ef4fb..012ca6765 100644 --- a/apps/popconlaunch/metadata.json +++ b/apps/popconlaunch/metadata.json @@ -2,7 +2,7 @@ "id": "popconlaunch", "name": "Popcon Launcher", "shortName": "Popcon", - "version": "0.04", + "version": "0.05", "description": "Launcher modification - your launchers will display your favourite (popular) apps first. Overrides `readJSON`, may slow down your watch", "readme": "README.md", "icon": "app.png", From f947105677ea2bcdece8317bfdbaee6fae0d9a0e Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Tue, 13 Jun 2023 18:26:28 -0400 Subject: [PATCH 1441/1725] remove workaround fixed by a0e2d92 --- apps/wrkmem/app.js | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/apps/wrkmem/app.js b/apps/wrkmem/app.js index 3f283ca8a..cce1438bb 100644 --- a/apps/wrkmem/app.js +++ b/apps/wrkmem/app.js @@ -75,16 +75,6 @@ function save() { .writeJSON("wrkmem.json", savedData); } -/** - * This function is a workaround wrapper for a menu navigation bug. After 'onchange' the menu re-renders itself - * so to avoid graphical glitches we postpone whatever funciton we actually want by 5ms. - * @param fn The function you actually want to call - * @returns {function(): any} The same function wrapped in a setTimeout with a 5ms delay. - */ -function st5(fn) { - return () => setTimeout(fn, 5); -} - /** * Given a position and set of dimensions, create a button object that represents a rectangle in space containing text * and some associated functionality. @@ -543,15 +533,15 @@ function editTask(task, backFn) { nudgeManager.interrupt(); let editMenu = []; if (task.complete) { - editMenu.push({title: "Start Task", onchange: st5(() => restartTask(task))}); - editMenu.push({title: "View Task", onchange: st5(() => startTask(task))}); + editMenu.push({title: "Start Task", onchange: () => restartTask(task)}); + editMenu.push({title: "View Task", onchange: () => startTask(task)}); } else { - editMenu.push({title: "Resume Task", onchange: st5(() => startTask(task))}); + editMenu.push({title: "Resume Task", onchange: () => startTask(task)}); } - editMenu.push({title: "Rename", onchange: st5(() => renameTask(task, () => editTask(task, backFn)))}); + editMenu.push({title: "Rename", onchange: () => renameTask(task, () => editTask(task, backFn))}); editMenu.push({title: "Interval", value: task.interval, min: 10, step: 10, onchange: v => task.interval = v}); editMenu.push({title: "Incremental Backoff", value: !!task.useBackoff, onchange: v => task.useBackoff = v}); - editMenu.push({title: "DELETE", onchange: st5(() => deleteTask(task, () => editTask(task, backFn), backFn))}); + editMenu.push({title: "DELETE", onchange: () => deleteTask(task, () => editTask(task, backFn), backFn)}); editMenu.push({title: "Statistics:"}); editMenu.push({title: "On Task: " + task.affirmCount}); editMenu.push({title: "Distracted: " + task.distractCount}); @@ -666,7 +656,7 @@ function showTaskList(filterFn, backFn) { taskMenu = taskMenu.concat(list.map(task => { return { // Workaround - navigation has phantom buttons rendered with E.showMenu unless you delay slightly. - title: task.text, onchange: st5(() => editTask(task, () => showTaskList(filterFn, backFn))) + title: task.text, onchange: () => editTask(task, () => showTaskList(filterFn, backFn)) } })) taskMenu[""] = {title: "Tasks", back: backFn}; From 7d16971062f89ade16b48601971f233e1b133dfd Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Wed, 14 Jun 2023 09:41:20 -0400 Subject: [PATCH 1442/1725] Revert "remove workaround fixed by a0e2d92" This reverts commit f947105677ea2bcdece8317bfdbaee6fae0d9a0e. I didn't realize this wouldn't be fixed until 2v19 was available, which isn't quite yet! Adding the workaround back in until 2v19 is out. --- apps/wrkmem/app.js | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/apps/wrkmem/app.js b/apps/wrkmem/app.js index cce1438bb..3f283ca8a 100644 --- a/apps/wrkmem/app.js +++ b/apps/wrkmem/app.js @@ -75,6 +75,16 @@ function save() { .writeJSON("wrkmem.json", savedData); } +/** + * This function is a workaround wrapper for a menu navigation bug. After 'onchange' the menu re-renders itself + * so to avoid graphical glitches we postpone whatever funciton we actually want by 5ms. + * @param fn The function you actually want to call + * @returns {function(): any} The same function wrapped in a setTimeout with a 5ms delay. + */ +function st5(fn) { + return () => setTimeout(fn, 5); +} + /** * Given a position and set of dimensions, create a button object that represents a rectangle in space containing text * and some associated functionality. @@ -533,15 +543,15 @@ function editTask(task, backFn) { nudgeManager.interrupt(); let editMenu = []; if (task.complete) { - editMenu.push({title: "Start Task", onchange: () => restartTask(task)}); - editMenu.push({title: "View Task", onchange: () => startTask(task)}); + editMenu.push({title: "Start Task", onchange: st5(() => restartTask(task))}); + editMenu.push({title: "View Task", onchange: st5(() => startTask(task))}); } else { - editMenu.push({title: "Resume Task", onchange: () => startTask(task)}); + editMenu.push({title: "Resume Task", onchange: st5(() => startTask(task))}); } - editMenu.push({title: "Rename", onchange: () => renameTask(task, () => editTask(task, backFn))}); + editMenu.push({title: "Rename", onchange: st5(() => renameTask(task, () => editTask(task, backFn)))}); editMenu.push({title: "Interval", value: task.interval, min: 10, step: 10, onchange: v => task.interval = v}); editMenu.push({title: "Incremental Backoff", value: !!task.useBackoff, onchange: v => task.useBackoff = v}); - editMenu.push({title: "DELETE", onchange: () => deleteTask(task, () => editTask(task, backFn), backFn)}); + editMenu.push({title: "DELETE", onchange: st5(() => deleteTask(task, () => editTask(task, backFn), backFn))}); editMenu.push({title: "Statistics:"}); editMenu.push({title: "On Task: " + task.affirmCount}); editMenu.push({title: "Distracted: " + task.distractCount}); @@ -656,7 +666,7 @@ function showTaskList(filterFn, backFn) { taskMenu = taskMenu.concat(list.map(task => { return { // Workaround - navigation has phantom buttons rendered with E.showMenu unless you delay slightly. - title: task.text, onchange: () => editTask(task, () => showTaskList(filterFn, backFn)) + title: task.text, onchange: st5(() => editTask(task, () => showTaskList(filterFn, backFn))) } })) taskMenu[""] = {title: "Tasks", back: backFn}; From 517ee99a7e9ef1ac78a56d5d5a6d015b0a4379f4 Mon Sep 17 00:00:00 2001 From: Philip Andresen Date: Wed, 14 Jun 2023 09:46:33 -0400 Subject: [PATCH 1443/1725] Increment version number to allow revert prop --- apps/wrkmem/ChangeLog | 3 ++- apps/wrkmem/metadata.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/wrkmem/ChangeLog b/apps/wrkmem/ChangeLog index 55caa0461..0684d10ee 100644 --- a/apps/wrkmem/ChangeLog +++ b/apps/wrkmem/ChangeLog @@ -1 +1,2 @@ -1.00: Implement Working Memory Helper app \ No newline at end of file +1.00: Implement Working Memory Helper app +1.01: Fix issue with rendering in 2v18 \ No newline at end of file diff --git a/apps/wrkmem/metadata.json b/apps/wrkmem/metadata.json index 1525ba64e..e8860f2c6 100644 --- a/apps/wrkmem/metadata.json +++ b/apps/wrkmem/metadata.json @@ -2,7 +2,7 @@ "id" : "wrkmem", "name" : "Working Memory Helper", "shortName" : "Work Mem", - "version" : "1.00", + "version" : "1.01", "description" : "Externalize your working memory to help stay on task.", "dependencies" : {"textinput": "type"}, "icon" : "icon.png", From 69df7b35e5613ea4c5c9f3afd9306dbe8c65bb90 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 12:59:01 +0100 Subject: [PATCH 1444/1725] clkinfostopw: remove unused setting code --- apps/clkinfostopw/settings.ts | 36 ----------------------------------- 1 file changed, 36 deletions(-) delete mode 100644 apps/clkinfostopw/settings.ts diff --git a/apps/clkinfostopw/settings.ts b/apps/clkinfostopw/settings.ts deleted file mode 100644 index a7bfce1e5..000000000 --- a/apps/clkinfostopw/settings.ts +++ /dev/null @@ -1,36 +0,0 @@ -const enum StopWatchFormat { - HMS, - Colon, -} -type StopWatchSettings = { - format: StopWatchFormat, -}; - -(back => { - const SETTINGS_FILE = "clkinfostopw.setting.json"; - - const storage = require("Storage"); - const settings: StopWatchSettings = Object.assign( - { format: StopWatchFormat.HMS }, - storage.readJSON(SETTINGS_FILE, true), - ); - - const save = () => { - storage.writeJSON(SETTINGS_FILE, settings) - }; - - E.showMenu({ - "": { "title": "stopwatch" }, - "< Back": back, - "Format": { - value: settings.format, - min: StopWatchFormat.HMS, - max: StopWatchFormat.Colon, - format: v => v === StopWatchFormat.HMS ? "12m34s" : "12:34", - onchange: v => { - settings.format = v; - save(); - }, - }, - }); -}) satisfies SettingsFunc From e1330880f2486360bc57060bdbb250195f0e8038 Mon Sep 17 00:00:00 2001 From: kevdliu <1766838+kevdliu@users.noreply.github.com> Date: Wed, 14 Jun 2023 15:44:27 -0400 Subject: [PATCH 1445/1725] add setting to disable vibration --- apps/folderlaunch/ChangeLog | 1 + apps/folderlaunch/README.md | 2 ++ apps/folderlaunch/app.js | 17 ++++++++++++----- apps/folderlaunch/app.ts | 19 ++++++++++++++----- apps/folderlaunch/configLoad.js | 1 + apps/folderlaunch/configLoad.ts | 1 + apps/folderlaunch/metadata.json | 2 +- apps/folderlaunch/settings.js | 8 ++++++++ apps/folderlaunch/settings.ts | 8 ++++++++ apps/folderlaunch/types.d.ts | 1 + 10 files changed, 49 insertions(+), 11 deletions(-) diff --git a/apps/folderlaunch/ChangeLog b/apps/folderlaunch/ChangeLog index 8a32760a4..2670571d7 100644 --- a/apps/folderlaunch/ChangeLog +++ b/apps/folderlaunch/ChangeLog @@ -1,2 +1,3 @@ 0.01: New app! 0.02: Handle files potentially not existing +0.03: Add setting to disable vibration \ No newline at end of file diff --git a/apps/folderlaunch/README.md b/apps/folderlaunch/README.md index a0a03894c..2caac29c3 100644 --- a/apps/folderlaunch/README.md +++ b/apps/folderlaunch/README.md @@ -15,6 +15,8 @@ Swiping up and down will scroll. Swiping from the left, using the back button, o * Show clocks / Show launcher: Whether clock and launcher apps are displayed in the UI to be launched. The default is no. +* Disable vibration: Whether vibration is disabled in the launcher. The default is no. + * Hidden apps: Displays the list of installed apps, enabling them to be manually hidden. (Or unhidden, if hidden from here.) This may be convenient for apps that you have some other shortcut to access, or apps that are only shortcuts to an infrequently used settings menu. By default, no apps are hidden. * Display: diff --git a/apps/folderlaunch/app.js b/apps/folderlaunch/app.js index bb674bc88..d04dfb8d1 100644 --- a/apps/folderlaunch/app.js +++ b/apps/folderlaunch/app.js @@ -133,12 +133,12 @@ var entry = grid_1[x][y]; switch (entry.type) { case "app": - Bangle.buzz(); + buzz_1(); var infoFile = storage_1.readJSON(entry.id + '.info', false); load(infoFile.src); break; case "folder": - Bangle.buzz(); + buzz_1(); resetTimeout_1(); page_1 = 0; folderPath_1.push(entry.id); @@ -160,7 +160,7 @@ else if (ud == 1) { resetTimeout_1(); if (page_1 == 0) { - Bangle.buzz(200); + buzz_1(200); return; } else @@ -169,7 +169,7 @@ else if (ud == -1) { resetTimeout_1(); if (page_1 == nPages_1 - 1) { - Bangle.buzz(200); + buzz_1(200); return; } else @@ -178,7 +178,7 @@ render_1(); }; var onBackButton_1 = function () { - Bangle.buzz(); + buzz_1(); if (folderPath_1.length == 0) Bangle.showClock(); else { @@ -189,6 +189,13 @@ render_1(); } }; + var buzz_1 = function (length, strength) { + if (length === void 0) { length = undefined; } + if (strength === void 0) { strength = undefined; } + if (!config_1.disableVibration) { + Bangle.buzz(length, strength); + } + }; Bangle.loadWidgets(); Bangle.drawWidgets(); Bangle.setUI({ diff --git a/apps/folderlaunch/app.ts b/apps/folderlaunch/app.ts index cab686f61..fdc353da8 100644 --- a/apps/folderlaunch/app.ts +++ b/apps/folderlaunch/app.ts @@ -185,12 +185,12 @@ let entry: GridEntry = grid[x]![y]!; switch (entry.type) { case "app": - Bangle.buzz(); + buzz(); let infoFile = storage.readJSON(entry.id + '.info', false) as AppInfo; load(infoFile.src); break; case "folder": - Bangle.buzz(); + buzz(); resetTimeout(); page = 0; folderPath.push(entry.id); @@ -221,13 +221,13 @@ } else if (ud == 1) { resetTimeout(); if (page == 0) { - Bangle.buzz(200); + buzz(200); return; } else page--; } else if (ud == -1) { resetTimeout(); if (page == nPages - 1) { - Bangle.buzz(200); + buzz(200); return; } else page++; } @@ -240,7 +240,7 @@ * Go back up a level. If already at the root folder, exit the launcher */ let onBackButton = () => { - Bangle.buzz(); + buzz(); if (folderPath.length == 0) Bangle.showClock(); else { @@ -252,6 +252,15 @@ } } + /** + * Vibrate the watch if vibration is enabled + */ + let buzz = (length: number | undefined = undefined, strength: number | undefined = undefined) => { + if (!config.disableVibration) { + Bangle.buzz(length, strength); + } + } + Bangle.loadWidgets(); Bangle.drawWidgets(); diff --git a/apps/folderlaunch/configLoad.js b/apps/folderlaunch/configLoad.js index f0610bf62..86c2d9dd3 100644 --- a/apps/folderlaunch/configLoad.js +++ b/apps/folderlaunch/configLoad.js @@ -3,6 +3,7 @@ var SETTINGS_FILE = "folderlaunch.json"; var DEFAULT_CONFIG = { showClocks: false, showLaunchers: false, + disableVibration: false, hidden: [], display: { rows: 2, diff --git a/apps/folderlaunch/configLoad.ts b/apps/folderlaunch/configLoad.ts index 0c1e3c0c1..37841cd36 100644 --- a/apps/folderlaunch/configLoad.ts +++ b/apps/folderlaunch/configLoad.ts @@ -5,6 +5,7 @@ const SETTINGS_FILE: string = "folderlaunch.json"; const DEFAULT_CONFIG: Config = { showClocks: false, showLaunchers: false, + disableVibration: false, hidden: [], display: { rows: 2, diff --git a/apps/folderlaunch/metadata.json b/apps/folderlaunch/metadata.json index b5508bb59..0cf83abb4 100644 --- a/apps/folderlaunch/metadata.json +++ b/apps/folderlaunch/metadata.json @@ -1,7 +1,7 @@ { "id": "folderlaunch", "name": "Folder launcher", - "version": "0.02", + "version": "0.03", "description": "Launcher that allows you to put your apps into folders", "icon": "icon.png", "type": "launch", diff --git a/apps/folderlaunch/settings.js b/apps/folderlaunch/settings.js index fa69963c4..7e9cbd57f 100644 --- a/apps/folderlaunch/settings.js +++ b/apps/folderlaunch/settings.js @@ -195,6 +195,14 @@ changed = true; } }, + 'Disable vibration': { + value: !!config.disableVibration, + format: function (value) { return (value ? 'Yes' : 'No'); }, + onchange: function (value) { + config.disableVibration = value; + changed = true; + } + }, 'Hidden apps': hiddenAppsMenu, 'Display': function () { E.showMenu({ diff --git a/apps/folderlaunch/settings.ts b/apps/folderlaunch/settings.ts index 8848b7cf8..632cd4e83 100644 --- a/apps/folderlaunch/settings.ts +++ b/apps/folderlaunch/settings.ts @@ -211,6 +211,14 @@ changed = true; } }, + 'Disable vibration': { + value: !!config.disableVibration, + format: (value: boolean) => (value ? 'Yes' : 'No'), + onchange: (value: boolean) => { + config.disableVibration = value; + changed = true; + } + }, 'Hidden apps': hiddenAppsMenu, 'Display': () => { E.showMenu({ diff --git a/apps/folderlaunch/types.d.ts b/apps/folderlaunch/types.d.ts index fee36ed98..86c0465e5 100644 --- a/apps/folderlaunch/types.d.ts +++ b/apps/folderlaunch/types.d.ts @@ -10,6 +10,7 @@ type FolderList = Array; type Config = { showClocks: boolean, // Whether clocks are shown showLaunchers: boolean, // Whether launchers are shown + disableVibration: boolean, // Whether vibration is disabled hidden: Array, // IDs of apps to explicitly hide display: { rows: number, // Display an X by X grid of apps From 5463ba1b9e5a73cfd0a27b692e9b82ba07431953 Mon Sep 17 00:00:00 2001 From: pancake Date: Thu, 15 Jun 2023 00:45:29 +0200 Subject: [PATCH 1446/1725] Port the batchart app to banglejs2 --- apps/batchart/ChangeLog | 3 ++- apps/batchart/app.js | 31 +++++++++++++++++++++++++------ apps/batchart/metadata.json | 4 ++-- 3 files changed, 29 insertions(+), 9 deletions(-) diff --git a/apps/batchart/ChangeLog b/apps/batchart/ChangeLog index 31c386684..c2462d397 100644 --- a/apps/batchart/ChangeLog +++ b/apps/batchart/ChangeLog @@ -7,4 +7,5 @@ 0.07: Improve logging and charting of component states and add widget icon 0.08: Fix for Home button in the app and README added. 0.09: Fix failing dismissal of Gadgetbridge notifications, record (coarse) bluetooth state -0.10: Remove widget icon and improve listener and setInterval handling for widget (might help with https://github.com/espruino/BangleApps/issues/381) \ No newline at end of file +0.10: Remove widget icon and improve listener and setInterval handling for widget (might help with https://github.com/espruino/BangleApps/issues/381) +0.11: Initial port to the BangleJS2 diff --git a/apps/batchart/app.js b/apps/batchart/app.js index 472fb3a8a..8d700d0a1 100644 --- a/apps/batchart/app.js +++ b/apps/batchart/app.js @@ -1,9 +1,13 @@ + + +const board = process.env.BOARD; +const isBangle2 = board === "BANGLEJS2" || board === "EMSCRIPTEN2"; const GraphXZero = 40; -const GraphYZero = 180; -const GraphY100 = 80; +const GraphYZero = isBangle2? g.getHeight() - (g.getHeight() * 0.1): 180; +const GraphY100 = isBangle2? 50: 80; +const MaxValueCount = g.getWidth() - (GraphXZero * 2); // 144 const GraphMarkerOffset = 5; -const MaxValueCount = 144; const GraphXMax = GraphXZero + MaxValueCount; const GraphLcdY = GraphYZero + 10; @@ -12,9 +16,11 @@ const GraphBluetoothY = GraphYZero + 22; const GraphGpsY = GraphYZero + 28; const GraphHrmY = GraphYZero + 34; + const Storage = require("Storage"); function renderCoordinateSystem() { + g.setBgColor(0,0,0); g.setFont("6x8", 1); // Left Y axis (Battery) @@ -36,7 +42,12 @@ function renderCoordinateSystem() { g.drawLine(GraphXZero - GraphMarkerOffset, GraphYZero, GraphXMax + GraphMarkerOffset, GraphYZero); // Right Y axis (Temperature) - g.setColor(0.4, 0.4, 1); + if (isBangle2) { + g.setColor(1, 0, 0); + } else { + g.setColor(0.4, 0.4, 1); + } + g.drawLine(GraphXMax, GraphYZero + GraphMarkerOffset, GraphXMax, GraphY100); g.drawString("°C", GraphXMax + GraphMarkerOffset, GraphY100 - 10); g.setFontAlign(-1, -1, 0); @@ -62,6 +73,10 @@ function loadData() { let logFileName = "bclog" + startingDay; let dataLines = loadLinesFromFile(MaxValueCount, logFileName); + if (!dataLines) { + console.log("Cannot load lines from file"); + dataLines = []; + } // Top up to MaxValueCount from previous days as required let previousDay = decrementDay(startingDay); @@ -235,8 +250,12 @@ Bangle.on('lcdPower', (on) => { } }); -setWatch(switchOffApp, BTN2, {edge:"falling", debounce:50, repeat:true}); - +if (isBangle2) { + setWatch(switchOffApp, BTN1, {edge:"falling", debounce:50, repeat:true}); + g.setBgColor(0,0,0); +} else { + setWatch(switchOffApp, BTN2, {edge:"falling", debounce:50, repeat:true}); +} g.clear(); Bangle.loadWidgets(); Bangle.drawWidgets(); diff --git a/apps/batchart/metadata.json b/apps/batchart/metadata.json index f2ed9f0b6..6ab0c0f78 100644 --- a/apps/batchart/metadata.json +++ b/apps/batchart/metadata.json @@ -2,11 +2,11 @@ "id": "batchart", "name": "Battery Chart", "shortName": "Battery Chart", - "version": "0.10", + "version": "0.11", "description": "A widget and an app for recording and visualizing battery percentage over time.", "icon": "app.png", "tags": "app,widget,battery,time,record,chart,tool", - "supports": ["BANGLEJS"], + "supports": ["BANGLEJS", "BANGLEJS2"], "readme": "README.md", "storage": [ {"name":"batchart.wid.js","url":"widget.js"}, From ffe6a65134eee862f13b5821f8e33d58c21b4606 Mon Sep 17 00:00:00 2001 From: kevdliu <1766838+kevdliu@users.noreply.github.com> Date: Wed, 14 Jun 2023 19:17:57 -0400 Subject: [PATCH 1447/1725] address comments --- apps/folderlaunch/app.js | 8 +------- apps/folderlaunch/app.ts | 7 +------ apps/folderlaunch/settings.js | 9 ++------- apps/folderlaunch/settings.ts | 13 ++++--------- 4 files changed, 8 insertions(+), 29 deletions(-) diff --git a/apps/folderlaunch/app.js b/apps/folderlaunch/app.js index d04dfb8d1..438b9e06d 100644 --- a/apps/folderlaunch/app.js +++ b/apps/folderlaunch/app.js @@ -189,13 +189,7 @@ render_1(); } }; - var buzz_1 = function (length, strength) { - if (length === void 0) { length = undefined; } - if (strength === void 0) { strength = undefined; } - if (!config_1.disableVibration) { - Bangle.buzz(length, strength); - } - }; + var buzz_1 = config_1.disableVibration ? function () { } : Bangle.buzz; Bangle.loadWidgets(); Bangle.drawWidgets(); Bangle.setUI({ diff --git a/apps/folderlaunch/app.ts b/apps/folderlaunch/app.ts index fdc353da8..993570e59 100644 --- a/apps/folderlaunch/app.ts +++ b/apps/folderlaunch/app.ts @@ -255,12 +255,7 @@ /** * Vibrate the watch if vibration is enabled */ - let buzz = (length: number | undefined = undefined, strength: number | undefined = undefined) => { - if (!config.disableVibration) { - Bangle.buzz(length, strength); - } - } - + let buzz = config.disableVibration ? () => {} : Bangle.buzz; Bangle.loadWidgets(); Bangle.drawWidgets(); diff --git a/apps/folderlaunch/settings.js b/apps/folderlaunch/settings.js index 7e9cbd57f..b589bb3f7 100644 --- a/apps/folderlaunch/settings.js +++ b/apps/folderlaunch/settings.js @@ -23,7 +23,6 @@ var appInfo = storage.readJSON(app_1 + '.info', false); menu[appInfo.name] = { value: config.hidden.includes(app_1), - format: function (value) { return (value ? 'Yes' : 'No'); }, onchange: eval("(value) => { onchange(value, \"".concat(app_1, "\"); }")) }; } @@ -180,16 +179,14 @@ } }, 'Show clocks': { - value: config.showClocks, - format: function (value) { return (value ? 'Yes' : 'No'); }, + value: !!config.showClocks, onchange: function (value) { config.showClocks = value; changed = true; } }, 'Show launchers': { - value: config.showLaunchers, - format: function (value) { return (value ? 'Yes' : 'No'); }, + value: !!config.showLaunchers, onchange: function (value) { config.showLaunchers = value; changed = true; @@ -197,7 +194,6 @@ }, 'Disable vibration': { value: !!config.disableVibration, - format: function (value) { return (value ? 'Yes' : 'No'); }, onchange: function (value) { config.disableVibration = value; changed = true; @@ -220,7 +216,6 @@ }, 'Show icons?': { value: config.display.icon, - format: function (value) { return (value ? 'Yes' : 'No'); }, onchange: function (value) { config.display.icon = value; changed = true; diff --git a/apps/folderlaunch/settings.ts b/apps/folderlaunch/settings.ts index 632cd4e83..665267b93 100644 --- a/apps/folderlaunch/settings.ts +++ b/apps/folderlaunch/settings.ts @@ -27,7 +27,6 @@ let appInfo = storage.readJSON(app + '.info', false) as AppInfo; menu[appInfo.name] = { value: config.hidden.includes(app), - format: (value: boolean) => (value ? 'Yes' : 'No'), onchange: eval(`(value) => { onchange(value, "${app}"); }`) } } @@ -196,24 +195,21 @@ } }, 'Show clocks': { - value: config.showClocks, - format: value => (value ? 'Yes' : 'No'), - onchange: value => { + value: !!config.showClocks, + onchange: (value: boolean) => { config.showClocks = value; changed = true; } }, 'Show launchers': { - value: config.showLaunchers, - format: value => (value ? 'Yes' : 'No'), - onchange: value => { + value: !!config.showLaunchers, + onchange: (value: boolean) => { config.showLaunchers = value; changed = true; } }, 'Disable vibration': { value: !!config.disableVibration, - format: (value: boolean) => (value ? 'Yes' : 'No'), onchange: (value: boolean) => { config.disableVibration = value; changed = true; @@ -236,7 +232,6 @@ }, 'Show icons?': { value: config.display.icon, - format: value => (value ? 'Yes' : 'No'), onchange: value => { config.display.icon = value; changed = true; From 9001d4b3e97292da161dcd46913c930ffb462281 Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 15 Jun 2023 21:11:39 -0500 Subject: [PATCH 1448/1725] [boxclk] - initial release candidate --- apps/boxclk/ChangeLog | 1 + apps/boxclk/app.js | 212 +++++++++++++++++++++++++++++++++++ apps/boxclk/beachhouse.js | 1 + apps/boxclk/boxclk.json | 57 ++++++++++ apps/boxclk/icon.js | 1 + apps/boxclk/icon.png | Bin 0 -> 1071 bytes apps/boxclk/metadata.json | 21 ++++ apps/boxclk/screenshot-1.png | Bin 0 -> 5936 bytes apps/boxclk/screenshot.png | Bin 0 -> 8061 bytes 9 files changed, 293 insertions(+) create mode 100644 apps/boxclk/ChangeLog create mode 100644 apps/boxclk/app.js create mode 100644 apps/boxclk/beachhouse.js create mode 100644 apps/boxclk/boxclk.json create mode 100644 apps/boxclk/icon.js create mode 100644 apps/boxclk/icon.png create mode 100644 apps/boxclk/metadata.json create mode 100644 apps/boxclk/screenshot-1.png create mode 100644 apps/boxclk/screenshot.png diff --git a/apps/boxclk/ChangeLog b/apps/boxclk/ChangeLog new file mode 100644 index 000000000..5560f00bc --- /dev/null +++ b/apps/boxclk/ChangeLog @@ -0,0 +1 @@ +0.01: New App! diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js new file mode 100644 index 000000000..f32ca4c84 --- /dev/null +++ b/apps/boxclk/app.js @@ -0,0 +1,212 @@ +Graphics.prototype.setFontBrunoAce = function() { + // Actual height 23 (24 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), + 46, + atob("CBEdChgYGhgaGBsaCQ=="), + 32|65536 + ); +}; + +let w = g.getWidth(); +let h = g.getHeight(); +let totalWidth, totalHeight; +let drawTimeout; +let enableSuffix = true; +let storage = require("Storage"); +let locale = require("locale"); +let date = new Date(); + +let bgImage; +let boxesConfig = storage.readJSON('boxclk.json', 1) || {}; +let boxes = {}; + +for (let key in boxesConfig) { + if (key === 'bg' && boxesConfig[key].img) { + bgImage = storage.read(boxesConfig[key].img); + } else { + boxes[key] = Object.assign({}, boxesConfig[key]); + } +} + +let boxPos = {}; +let isDragging = {}; +let wasDragging = {}; + +Object.keys(boxes).forEach((boxKey) => { + let boxConfig = boxes[boxKey]; + boxPos[boxKey] = { + x: w * boxConfig.boxPos.x, + y: h * boxConfig.boxPos.y + }; + isDragging[boxKey] = false; + wasDragging[boxKey] = false; +}); + +let g_drawString = g.drawString; +g.drawString = function(box, str, x, y) { + outlineText(box, str, x, y); + g.setColor(box.color); + g_drawString.call(g, str, x, y); +}; + +function outlineText(box, str, x, y) { + let px = box.outline; + let dx = [-px, 0, px, -px, px, -px, 0, px]; + let dy = [-px, -px, -px, 0, 0, px, px, px]; + g.setColor(box.outlineColor); + for (let i = 0; i < dx.length; i++) { + g_drawString.call(g, str, x + dx[i], y + dy[i]); + } +} + +function calcBoxSize(boxItem) { + g.reset(); + g.setFontAlign(0,0); + g.setFont(boxItem.font, boxItem.fontSize); + let strWidth = g.stringWidth(boxItem.string) + 2 * boxItem.outline; + let fontHeight = g.getFontHeight() + 2 * boxItem.outline; + totalWidth = strWidth + 2 * boxItem.xPadding; + totalHeight = fontHeight + 2 * boxItem.yPadding; +} + +function calcBoxPos(boxKey) { + return { + x1: boxPos[boxKey].x - totalWidth / 2, + y1: boxPos[boxKey].y - totalHeight / 2, + x2: boxPos[boxKey].x + totalWidth / 2, + y2: boxPos[boxKey].y + totalHeight / 2 + }; +} + +function getDate() { + const date = new Date(); + const dayOfMonth = date.getDate(); + const month = locale.month(date, 1); + const year = date.getFullYear(); + + let suffix; + if ([1, 21, 31].includes(dayOfMonth)) { + suffix = "st"; + } else if ([2, 22].includes(dayOfMonth)) { + suffix = "nd"; + } else if ([3, 23].includes(dayOfMonth)) { + suffix = "rd"; + } else { + suffix = "th"; + } + + let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; + + return month + " " + dayOfMonthStr + ", " + year; +} + +function getDayOfWeek(date) { + return locale.dow(date, 0); +} + +function draw(boxes) { + date = new Date(); + g.clear(); + if (bgImage) { + g.drawImage(bgImage, 0, 0); + } + if (boxes.time) { + boxes.time.string = locale.time(date, 1); + } + if (boxes.date) { + boxes.date.string = getDate(); + } + if (boxes.dow) { + boxes.dow.string = getDayOfWeek(date); + } + if (boxes.batt) { + boxes.batt.string = E.getBattery() + "%"; + } + Object.keys(boxes).forEach((boxKey) => { + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + if (isDragging[boxKey]) { + g.setColor(boxItem.border); + g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + g.drawString( + boxItem, + boxItem.string, + boxPos[boxKey].x + boxItem.xOffset, + boxPos[boxKey].y + boxItem.yOffset + ); + }); + if (!Object.values(isDragging).some(Boolean)) { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000)); + } +} + +function setup() { + Bangle.setUI({ + mode : "clock", + remove : function() { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + delete Graphics.prototype.setFontBrunoAce; + require("widget_utils").show(); + }}); + + Bangle.on('touch', function(zone, e) { + wasDragging = Object.assign({}, isDragging); + let boxTouched = false; + Object.keys(boxes).forEach((boxKey) => { + if (touchInText(e, boxes[boxKey], boxKey)) { + isDragging[boxKey] = true; + wasDragging[boxKey] = true; + boxTouched = true; + } + }); + if (!boxTouched) { + Object.keys(isDragging).forEach((boxKey) => { + isDragging[boxKey] = false; + }); + } + if (Object.values(wasDragging).some(Boolean) || !boxTouched) { + draw(boxes); + } + }); + + Bangle.on('drag', function(e) { + Object.keys(boxes).forEach((boxKey) => { + if (isDragging[boxKey]) { + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + let newX = boxPos[boxKey].x + e.dx; + let newY = boxPos[boxKey].y + e.dy; + if (newX - totalWidth / 2 >= 0 && + newX + totalWidth / 2 <= w && + newY - totalHeight / 2 >= 0 && + newY + totalHeight / 2 <= h ) { + boxPos[boxKey].x = newX; + boxPos[boxKey].y = newY; + } + const pos = (boxKey); + g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + }); + draw(boxes); + }); + g.reset(); + draw(boxes); +} + +function touchInText(e, boxItem, boxKey) { + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + return e.x >= pos.x1 && + e.x <= pos.x2 && + e.y >= pos.y1 && + e.y <= pos.y2; +} + +Bangle.loadWidgets(); +require("widget_utils").swipeOn(); +setup(); diff --git a/apps/boxclk/beachhouse.js b/apps/boxclk/beachhouse.js new file mode 100644 index 000000000..062a6b9d3 --- /dev/null +++ b/apps/boxclk/beachhouse.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("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")) diff --git a/apps/boxclk/boxclk.json b/apps/boxclk/boxclk.json new file mode 100644 index 000000000..f04d58aa4 --- /dev/null +++ b/apps/boxclk/boxclk.json @@ -0,0 +1,57 @@ +{ + "time": { + "font": "BrunoAce", + "fontSize": 1, + "outline": 2, + "color": "#000", + "outlineColor": "#fff", + "border": "#000", + "xPadding": 1, + "yPadding": -4, + "xOffset": 0, + "yOffset": 3, + "boxPos": { "x": 0.5, "y": 0.47 } + }, + "dow": { + "font": "6x8", + "fontSize": 2, + "outline": 1, + "color": "#000", + "outlineColor": "#fff", + "border": "#000", + "xPadding": -0.5, + "yPadding": 0.5, + "xOffset": 1, + "yOffset": 1, + "boxPos": { "x": 0.5, "y": 0.6 } + }, + "date": { + "font": "6x8", + "fontSize": 1, + "outline": 1, + "color": "#000", + "outlineColor": "#fff", + "border": "#000", + "xPadding": 0, + "yPadding": 0.5, + "xOffset": 1, + "yOffset": 0, + "boxPos": { "x": 0.5, "y": 0.69 } + }, + "batt": { + "font": "4x6", + "fontSize": 2, + "outline": 1, + "color": "#0ff", + "outlineColor": "#000", + "border": "#000", + "xPadding": -0.5, + "yPadding": -0.5, + "xOffset": 1, + "yOffset": 1, + "boxPos": { "x": 0.92, "y": 0.95 } + }, + "bg": { + "img": "beachhouse.img" + } +} diff --git a/apps/boxclk/icon.js b/apps/boxclk/icon.js new file mode 100644 index 000000000..f6f4412c6 --- /dev/null +++ b/apps/boxclk/icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwkEogA/AEB5TCwVAC6aOCoED/4AQmAXDh4XR+AX5+URgERl4XR+KGEj4XP+cAgMz/8ziEAn4XOkEBCIfziECC5ouBl/zkMAiU/+QwGC4/wE4MgLwQFCQgoXHiEfO4Mj/8yO4PxgIXMHwMggb+DgRQBC5fygIPBn4xBiYFCiDDEC43xgfyLQJfCGoMvmDCEC5ABCVIJlBCoIXM+EPAIRgBAQIIDC542DC53xT4MfC4cCBAanLBQaWDBIgXo+YXXdgoXQbQcBd5YXHiAYHC5wAC+UQe4IXTDAMABAQXEgYPEiDQEAATdBAYMwC4ZUCK4aLHSoIACC5IuHSogXKCxAXHogXTCwQAFC5YUIC7b/EC6TFFC6IwJC5itBcwQXUbI7vBC5bFGAAgXMDBQXNJIQXUGBEEBog=")) diff --git a/apps/boxclk/icon.png b/apps/boxclk/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..89da3b69552b747c0e61721dcdb61dcd6d2ded22 GIT binary patch literal 1071 zcmV+~1kn45P)1-*b+->hps{`JK}H7J!WW{QNxoo95=` z6aaG6l?3^#=+9FK0{lNu;Q08MhlYl@q@;u`77Is3MM=SRX=y1B4-fOn$%+2~oSvSt z&1U1Uu&{Smj*yTLuBoZv!^1=W0B|@Q9334ku_lv=YinzHVq$`~x3~HF`dSLE;ln+| zAQp8dCntRiFgQ3UBZ|1Hsw&>!-+#B`y}doItgO_Y2Bw@(02~g7B!Dt7FrfK2H#fPh zt&P*u)3tX1*YM$HIu^hK2@h+Nk6U3k$^;5fQnmY@Y*w zr4l2FWYnC;$Rjo(A%WM|*L6ExTU(PD#J04wh;Mgym&3!uWd*~N^*R7vI{2}oK$zD6 z!pN)S4-O8vuC9(_V`DioGLnmni+O8nOYW_%t_nQrC|`ATwX``hGU9yzY)J59S%mO% z!p5{w$;ZdXzncF5TwY$5n5L#C@wK;QSEEcxg?fmfY;GX~xjudY}5Rq(@MnHT5peH12x7)Q{9wjp~Q+DW21vo!H zcMISpNK#Ugw2_#YC~bZS0AIn3CXcfX>SSeQ@kexXbHjOgdD2#AXXmT?v$M0t0bDJB z&>J;Zw6d~dv`<|*eU&_Pe}8ZEE48kAT?Oz|@=6B!?0E~o^bB!k6u{FW{k~40lYjI7 z0aqjqKR!Ns3&87=j*gCw0v6y29d&ni2Q0uZbc8PuGcz**3GhR8hEFDAV`BjakgukZ zDjgjihEJCM004b|x!jeNmAU-Q)79gGC-sGhzPWn@Avcc;-jJ1uZatX%8TmlDM0DXH pfF54}KwpXIClOt_nYhcxh2MP~HmTe9Ps#uQ002ovPDHLkV1jpL`q2OY literal 0 HcmV?d00001 diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json new file mode 100644 index 000000000..37a6d7758 --- /dev/null +++ b/apps/boxclk/metadata.json @@ -0,0 +1,21 @@ +{ + "id": "boxclk", + "name": "Box Clock", + "version": "0.01", + "description": "A customizable clock with configurable text boxes that can be positioned to show your favorite background", + "icon": "app.png", + "screenshots": [ + {"url":"screenshot.png"}, + {"url":"screenshot-1.png"} + ], + "type": "clock", + "tags": "clock", + "supports": ["BANGLEJS2"], + "allow_emulator": true, + "storage": [ + {"name":"boxclk.app.js","url":"app.js"}, + {"name":"boxclk.json","url":"boxclk.json"}, + {"name":"boxclock.img","url":"icon.js","evaluate":true}, + {"name":"beachhouse.img","url":"beachhouse.js","evaluate":true} + ] +} diff --git a/apps/boxclk/screenshot-1.png b/apps/boxclk/screenshot-1.png new file mode 100644 index 0000000000000000000000000000000000000000..91bf880c0bfb3a7d138f49c59280f6e11d6d0cb1 GIT binary patch literal 5936 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 Date: Thu, 15 Jun 2023 21:13:48 -0500 Subject: [PATCH 1449/1725] name change --- apps/boxclk/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index 37a6d7758..a9c5064d4 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -15,7 +15,7 @@ "storage": [ {"name":"boxclk.app.js","url":"app.js"}, {"name":"boxclk.json","url":"boxclk.json"}, - {"name":"boxclock.img","url":"icon.js","evaluate":true}, + {"name":"boxclk.img","url":"icon.js","evaluate":true}, {"name":"beachhouse.img","url":"beachhouse.js","evaluate":true} ] } From 2a86dea55d83d752ed3366324907e365f30a7d13 Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 15 Jun 2023 21:17:11 -0500 Subject: [PATCH 1450/1725] name change --- apps/boxclk/{icon.png => app.png} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename apps/boxclk/{icon.png => app.png} (100%) diff --git a/apps/boxclk/icon.png b/apps/boxclk/app.png similarity index 100% rename from apps/boxclk/icon.png rename to apps/boxclk/app.png From b72ad557919c46a3cde8b0fe665b0bce57f0837b Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Thu, 15 Jun 2023 21:57:04 -0500 Subject: [PATCH 1451/1725] Create README.md --- apps/boxclk/README.md | 65 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 apps/boxclk/README.md diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md new file mode 100644 index 000000000..e8a168805 --- /dev/null +++ b/apps/boxclk/README.md @@ -0,0 +1,65 @@ +# Box Clock + +Box Clock is a customizable clock app for Bangle.js 2 that features an interactive drag and drop interface and easy JSON configuration. + +## Unique Features + +__Drag & Drop:__ + +This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. + +__JSON Configuration:__ + +Each box can be customized extensively via a simple JSON configuration. Here's what an example configuration might look like: + +``` +{ + "time": { + "font": "BrunoAce", + "fontSize": 1, + "outline": 2, + "color": "#000", + "outlineColor": "#fff", + "border": "#000", + "xPadding": 1, + "yPadding": -4, + "xOffset": 0, + "yOffset": 3, + "boxPos": { "x": 0.5, "y": 0.5 } + }, + "bg": { + "img": "YourImageName.img" + } +} +``` +* **font:** The font name given to g.setFont() + +* **fontSize:** The size of the font. + +* **outline:** The thickness of the outline around the text. + +* **color:** The color of the text. + +* **outlineColor:** The color of the text outline. + +* **border:** The color of the box border when moving. + +* **xPadding, yPadding:** Additional padding around the text inside the box. + +* **xOffset, yOffset:** Offsets the text position within the box. + +* **boxPos:** Initial position of the box on the screen. Values are fractions of the screen width (x) and height (y), so { "x": 0.5, "y": 0.5 } would be in the middle of the screen. + +* **bg:** This specifies a custom background image, with the img property defining the name of the image file on the Bangle.js storage. + +## Compatibility + +This app was built and tested with Bangle.js 2. + +## Feedback + +If you have any issues or suggestions, please open an issue on this GitHub repository. Contributions to improve the application are also welcomed. + +## Creator + +[stweedo](https://github.com/stweedo) From 7acdf5e7db461114ba8555e3bbf8950e39cd0ec4 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Thu, 15 Jun 2023 21:57:36 -0500 Subject: [PATCH 1452/1725] Update metadata.json --- apps/boxclk/metadata.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index a9c5064d4..d5b58a3c7 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -11,6 +11,7 @@ "type": "clock", "tags": "clock", "supports": ["BANGLEJS2"], + "readme": "README.md", "allow_emulator": true, "storage": [ {"name":"boxclk.app.js","url":"app.js"}, From fb5cd4f152725b2655eba3a634884796ba463c98 Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 15 Jun 2023 22:05:24 -0500 Subject: [PATCH 1453/1725] change screenshot --- apps/boxclk/screenshot.png | Bin 8061 -> 8631 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/apps/boxclk/screenshot.png b/apps/boxclk/screenshot.png index afe51563ea9415dd6dc89beb44ad671e6300dce6..12ccee5e25914b3585015e5be0c9831a5a8ae79f 100644 GIT binary patch literal 8631 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 JPDHLkV1j!T%ozXx literal 8061 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 Date: Thu, 15 Jun 2023 22:55:13 -0500 Subject: [PATCH 1454/1725] Update readme --- apps/boxclk/README.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index e8a168805..613c74fe0 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -10,15 +10,16 @@ This intuitive feature allows you to reposition any element (box) on the clock f __JSON Configuration:__ -Each box can be customized extensively via a simple JSON configuration. Here's what an example configuration might look like: +Each box can be customized extensively via a simple JSON configuration. You can also add a custom text string to your configuration with the "string": "Your custom text here", attribute. Here's what an example configuration might look like: ``` { - "time": { - "font": "BrunoAce", + "customBox": { + "string": "Your custom text here", + "font": "CustomFont", "fontSize": 1, "outline": 2, - "color": "#000", + "color": "#FF9900", "outlineColor": "#fff", "border": "#000", "xPadding": 1, @@ -32,6 +33,8 @@ Each box can be customized extensively via a simple JSON configuration. Here's w } } ``` +* **string:** The text string to be displayed inside the box. + * **font:** The font name given to g.setFont() * **fontSize:** The size of the font. From 654e8f9e2b764a7db20f808fa20cd4ff774c5c66 Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 15 Jun 2023 23:24:37 -0500 Subject: [PATCH 1455/1725] Fixed launcher bug --- apps/boxclk/app.js | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index f32ca4c84..f1496b13d 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -1,13 +1,3 @@ -Graphics.prototype.setFontBrunoAce = function() { - // Actual height 23 (24 - 2) - return this.setFontCustom( - E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), - 46, - atob("CBEdChgYGhgaGBsaCQ=="), - 32|65536 - ); -}; - let w = g.getWidth(); let h = g.getHeight(); let totalWidth, totalHeight; @@ -145,12 +135,23 @@ function draw(boxes) { } function setup() { + Graphics.prototype.setFontBrunoAce = function() { + // Actual height 23 (24 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), + 46, + atob("CBEdChgYGhgaGBsaCQ=="), + 32|65536 + ); + }; + Bangle.setUI({ mode : "clock", remove : function() { if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; delete Graphics.prototype.setFontBrunoAce; + g.drawString = g_drawString; require("widget_utils").show(); }}); From 96c6446b552e7d552c034778215504db6106dead Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 15 Jun 2023 23:37:00 -0500 Subject: [PATCH 1456/1725] Update starting positions --- apps/boxclk/boxclk.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/boxclk/boxclk.json b/apps/boxclk/boxclk.json index f04d58aa4..0d2fa732f 100644 --- a/apps/boxclk/boxclk.json +++ b/apps/boxclk/boxclk.json @@ -10,7 +10,7 @@ "yPadding": -4, "xOffset": 0, "yOffset": 3, - "boxPos": { "x": 0.5, "y": 0.47 } + "boxPos": { "x": 0.65, "y": 0.16 } }, "dow": { "font": "6x8", @@ -23,7 +23,7 @@ "yPadding": 0.5, "xOffset": 1, "yOffset": 1, - "boxPos": { "x": 0.5, "y": 0.6 } + "boxPos": { "x": 0.65, "y": 0.3 } }, "date": { "font": "6x8", @@ -35,8 +35,8 @@ "xPadding": 0, "yPadding": 0.5, "xOffset": 1, - "yOffset": 0, - "boxPos": { "x": 0.5, "y": 0.69 } + "yOffset": 1, + "boxPos": { "x": 0.65, "y": 0.39 } }, "batt": { "font": "4x6", From 7496c97ae23d57fae48a03e14253f18d396cd941 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 00:50:42 -0500 Subject: [PATCH 1457/1725] Made custom font a function, touch/drag global --- apps/boxclk/app.js | 63 ++++++++++++++++++++++++++++------------------ 1 file changed, 39 insertions(+), 24 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index f1496b13d..9c3fe953a 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -1,6 +1,8 @@ let w = g.getWidth(); let h = g.getHeight(); let totalWidth, totalHeight; +let touchHandler; +let dragHandler; let drawTimeout; let enableSuffix = true; let storage = require("Storage"); @@ -11,6 +13,18 @@ let bgImage; let boxesConfig = storage.readJSON('boxclk.json', 1) || {}; let boxes = {}; +function setCustomFont() { + Graphics.prototype.setFontBrunoAce = function() { + // Actual height 23 (24 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), + 46, + atob("CBEdChgYGhgaGBsaCQ=="), + 32|65536 + ); + }; +} + for (let key in boxesConfig) { if (key === 'bg' && boxesConfig[key].img) { bgImage = storage.read(boxesConfig[key].img); @@ -135,27 +149,8 @@ function draw(boxes) { } function setup() { - Graphics.prototype.setFontBrunoAce = function() { - // Actual height 23 (24 - 2) - return this.setFontCustom( - E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), - 46, - atob("CBEdChgYGhgaGBsaCQ=="), - 32|65536 - ); - }; - - Bangle.setUI({ - mode : "clock", - remove : function() { - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = undefined; - delete Graphics.prototype.setFontBrunoAce; - g.drawString = g_drawString; - require("widget_utils").show(); - }}); - - Bangle.on('touch', function(zone, e) { + // Define the touchHandler function + touchHandler = function(zone, e) { wasDragging = Object.assign({}, isDragging); let boxTouched = false; Object.keys(boxes).forEach((boxKey) => { @@ -173,9 +168,10 @@ function setup() { if (Object.values(wasDragging).some(Boolean) || !boxTouched) { draw(boxes); } - }); + }; - Bangle.on('drag', function(e) { + // Define the dragHandler function + dragHandler = function(e) { Object.keys(boxes).forEach((boxKey) => { if (isDragging[boxKey]) { let boxItem = boxes[boxKey]; @@ -194,8 +190,27 @@ function setup() { } }); draw(boxes); + }; + + Bangle.on('touch', touchHandler); + Bangle.on('drag', dragHandler); + + Bangle.setUI({ + mode : "clock", + remove : function() { + // remove the event handlers when the app should be removed + Bangle.removeListener('touch', touchHandler); + Bangle.removeListener('drag', dragHandler); + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + delete Graphics.prototype.setFontBrunoAce; + g.drawString = g_drawString; + require("widget_utils").show(); + setCustomFont(); + } }); - g.reset(); + + setCustomFont(); draw(boxes); } From d44c537c667ca75c6a71e16fcf6511143ac95f49 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 01:47:04 -0500 Subject: [PATCH 1458/1725] changed function name --- apps/boxclk/app.js | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 9c3fe953a..a2202cb68 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -13,7 +13,7 @@ let bgImage; let boxesConfig = storage.readJSON('boxclk.json', 1) || {}; let boxes = {}; -function setCustomFont() { +function loadCustomFont() { Graphics.prototype.setFontBrunoAce = function() { // Actual height 23 (24 - 2) return this.setFontCustom( @@ -88,7 +88,6 @@ function getDate() { const dayOfMonth = date.getDate(); const month = locale.month(date, 1); const year = date.getFullYear(); - let suffix; if ([1, 21, 31].includes(dayOfMonth)) { suffix = "st"; @@ -99,9 +98,7 @@ function getDate() { } else { suffix = "th"; } - let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; - return month + " " + dayOfMonthStr + ", " + year; } @@ -206,11 +203,9 @@ function setup() { delete Graphics.prototype.setFontBrunoAce; g.drawString = g_drawString; require("widget_utils").show(); - setCustomFont(); } }); - - setCustomFont(); + loadCustomFont(); draw(boxes); } From 6519ef43011b1b3d6324e4e81b752c91919a7d41 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 08:52:48 -0500 Subject: [PATCH 1459/1725] Rename img to show app name, move json to data --- apps/boxclk/metadata.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index d5b58a3c7..fad943aac 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -15,8 +15,10 @@ "allow_emulator": true, "storage": [ {"name":"boxclk.app.js","url":"app.js"}, - {"name":"boxclk.json","url":"boxclk.json"}, {"name":"boxclk.img","url":"icon.js","evaluate":true}, - {"name":"beachhouse.img","url":"beachhouse.js","evaluate":true} + {"name":"boxclk.beachhouse.img","url":"beachhouse.js","evaluate":true}, + ], + "data": [ + {"name":"boxclk.json","url":"boxclk.json"} ] } From 0a4e01fd2c356b222167dfe57475953cb1e978a0 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 08:55:44 -0500 Subject: [PATCH 1460/1725] Rename img to show app, adjust border pos on batt --- apps/boxclk/boxclk.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/boxclk.json b/apps/boxclk/boxclk.json index 0d2fa732f..047ab6224 100644 --- a/apps/boxclk/boxclk.json +++ b/apps/boxclk/boxclk.json @@ -47,11 +47,11 @@ "border": "#000", "xPadding": -0.5, "yPadding": -0.5, - "xOffset": 1, + "xOffset": 2, "yOffset": 1, "boxPos": { "x": 0.92, "y": 0.95 } }, "bg": { - "img": "beachhouse.img" + "img": "boxclk.beachhouse.img" } } From c734ef8347f9c3c20d08b957c7b3e94b00812f80 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 09:24:11 -0500 Subject: [PATCH 1461/1725] Wrap program in IIFE so variables don't leak --- apps/boxclk/app.js | 424 +++++++++++++++++++++++---------------------- 1 file changed, 213 insertions(+), 211 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index a2202cb68..bf4309737 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -1,223 +1,225 @@ -let w = g.getWidth(); -let h = g.getHeight(); -let totalWidth, totalHeight; -let touchHandler; -let dragHandler; -let drawTimeout; -let enableSuffix = true; -let storage = require("Storage"); -let locale = require("locale"); -let date = new Date(); +(function() { + let w = g.getWidth(); + let h = g.getHeight(); + let totalWidth, totalHeight; + let touchHandler; + let dragHandler; + let drawTimeout; + let enableSuffix = true; + let storage = require("Storage"); + let locale = require("locale"); + let date = new Date(); -let bgImage; -let boxesConfig = storage.readJSON('boxclk.json', 1) || {}; -let boxes = {}; + let bgImage; + let boxesConfig = storage.readJSON('boxclk.json', 1) || {}; + let boxes = {}; -function loadCustomFont() { - Graphics.prototype.setFontBrunoAce = function() { - // Actual height 23 (24 - 2) - return this.setFontCustom( - E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), - 46, - atob("CBEdChgYGhgaGBsaCQ=="), - 32|65536 - ); - }; -} - -for (let key in boxesConfig) { - if (key === 'bg' && boxesConfig[key].img) { - bgImage = storage.read(boxesConfig[key].img); - } else { - boxes[key] = Object.assign({}, boxesConfig[key]); + function loadCustomFont() { + Graphics.prototype.setFontBrunoAce = function() { + // Actual height 23 (24 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), + 46, + atob("CBEdChgYGhgaGBsaCQ=="), + 32|65536 + ); + }; } -} -let boxPos = {}; -let isDragging = {}; -let wasDragging = {}; - -Object.keys(boxes).forEach((boxKey) => { - let boxConfig = boxes[boxKey]; - boxPos[boxKey] = { - x: w * boxConfig.boxPos.x, - y: h * boxConfig.boxPos.y - }; - isDragging[boxKey] = false; - wasDragging[boxKey] = false; -}); - -let g_drawString = g.drawString; -g.drawString = function(box, str, x, y) { - outlineText(box, str, x, y); - g.setColor(box.color); - g_drawString.call(g, str, x, y); -}; - -function outlineText(box, str, x, y) { - let px = box.outline; - let dx = [-px, 0, px, -px, px, -px, 0, px]; - let dy = [-px, -px, -px, 0, 0, px, px, px]; - g.setColor(box.outlineColor); - for (let i = 0; i < dx.length; i++) { - g_drawString.call(g, str, x + dx[i], y + dy[i]); + for (let key in boxesConfig) { + if (key === 'bg' && boxesConfig[key].img) { + bgImage = storage.read(boxesConfig[key].img); + } else { + boxes[key] = Object.assign({}, boxesConfig[key]); + } } -} -function calcBoxSize(boxItem) { - g.reset(); - g.setFontAlign(0,0); - g.setFont(boxItem.font, boxItem.fontSize); - let strWidth = g.stringWidth(boxItem.string) + 2 * boxItem.outline; - let fontHeight = g.getFontHeight() + 2 * boxItem.outline; - totalWidth = strWidth + 2 * boxItem.xPadding; - totalHeight = fontHeight + 2 * boxItem.yPadding; -} + let boxPos = {}; + let isDragging = {}; + let wasDragging = {}; -function calcBoxPos(boxKey) { - return { - x1: boxPos[boxKey].x - totalWidth / 2, - y1: boxPos[boxKey].y - totalHeight / 2, - x2: boxPos[boxKey].x + totalWidth / 2, - y2: boxPos[boxKey].y + totalHeight / 2 - }; -} - -function getDate() { - const date = new Date(); - const dayOfMonth = date.getDate(); - const month = locale.month(date, 1); - const year = date.getFullYear(); - let suffix; - if ([1, 21, 31].includes(dayOfMonth)) { - suffix = "st"; - } else if ([2, 22].includes(dayOfMonth)) { - suffix = "nd"; - } else if ([3, 23].includes(dayOfMonth)) { - suffix = "rd"; - } else { - suffix = "th"; - } - let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; - return month + " " + dayOfMonthStr + ", " + year; -} - -function getDayOfWeek(date) { - return locale.dow(date, 0); -} - -function draw(boxes) { - date = new Date(); - g.clear(); - if (bgImage) { - g.drawImage(bgImage, 0, 0); - } - if (boxes.time) { - boxes.time.string = locale.time(date, 1); - } - if (boxes.date) { - boxes.date.string = getDate(); - } - if (boxes.dow) { - boxes.dow.string = getDayOfWeek(date); - } - if (boxes.batt) { - boxes.batt.string = E.getBattery() + "%"; - } Object.keys(boxes).forEach((boxKey) => { - let boxItem = boxes[boxKey]; + let boxConfig = boxes[boxKey]; + boxPos[boxKey] = { + x: w * boxConfig.boxPos.x, + y: h * boxConfig.boxPos.y + }; + isDragging[boxKey] = false; + wasDragging[boxKey] = false; + }); + + let g_drawString = g.drawString; + g.drawString = function(box, str, x, y) { + outlineText(box, str, x, y); + g.setColor(box.color); + g_drawString.call(g, str, x, y); + }; + + function outlineText(box, str, x, y) { + let px = box.outline; + let dx = [-px, 0, px, -px, px, -px, 0, px]; + let dy = [-px, -px, -px, 0, 0, px, px, px]; + g.setColor(box.outlineColor); + for (let i = 0; i < dx.length; i++) { + g_drawString.call(g, str, x + dx[i], y + dy[i]); + } + } + + function calcBoxSize(boxItem) { + g.reset(); + g.setFontAlign(0,0); + g.setFont(boxItem.font, boxItem.fontSize); + let strWidth = g.stringWidth(boxItem.string) + 2 * boxItem.outline; + let fontHeight = g.getFontHeight() + 2 * boxItem.outline; + totalWidth = strWidth + 2 * boxItem.xPadding; + totalHeight = fontHeight + 2 * boxItem.yPadding; + } + + function calcBoxPos(boxKey) { + return { + x1: boxPos[boxKey].x - totalWidth / 2, + y1: boxPos[boxKey].y - totalHeight / 2, + x2: boxPos[boxKey].x + totalWidth / 2, + y2: boxPos[boxKey].y + totalHeight / 2 + }; + } + + function getDate() { + const date = new Date(); + const dayOfMonth = date.getDate(); + const month = locale.month(date, 1); + const year = date.getFullYear(); + let suffix; + if ([1, 21, 31].includes(dayOfMonth)) { + suffix = "st"; + } else if ([2, 22].includes(dayOfMonth)) { + suffix = "nd"; + } else if ([3, 23].includes(dayOfMonth)) { + suffix = "rd"; + } else { + suffix = "th"; + } + let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; + return month + " " + dayOfMonthStr + ", " + year; + } + + function getDayOfWeek(date) { + return locale.dow(date, 0); + } + + function draw(boxes) { + date = new Date(); + g.clear(); + if (bgImage) { + g.drawImage(bgImage, 0, 0); + } + if (boxes.time) { + boxes.time.string = locale.time(date, 1); + } + if (boxes.date) { + boxes.date.string = getDate(); + } + if (boxes.dow) { + boxes.dow.string = getDayOfWeek(date); + } + if (boxes.batt) { + boxes.batt.string = E.getBattery() + "%"; + } + Object.keys(boxes).forEach((boxKey) => { + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + if (isDragging[boxKey]) { + g.setColor(boxItem.border); + g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + g.drawString( + boxItem, + boxItem.string, + boxPos[boxKey].x + boxItem.xOffset, + boxPos[boxKey].y + boxItem.yOffset + ); + }); + if (!Object.values(isDragging).some(Boolean)) { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000)); + } + } + + function setup() { + // Define the touchHandler function + touchHandler = function(zone, e) { + wasDragging = Object.assign({}, isDragging); + let boxTouched = false; + Object.keys(boxes).forEach((boxKey) => { + if (touchInText(e, boxes[boxKey], boxKey)) { + isDragging[boxKey] = true; + wasDragging[boxKey] = true; + boxTouched = true; + } + }); + if (!boxTouched) { + Object.keys(isDragging).forEach((boxKey) => { + isDragging[boxKey] = false; + }); + } + if (Object.values(wasDragging).some(Boolean) || !boxTouched) { + draw(boxes); + } + }; + + // Define the dragHandler function + dragHandler = function(e) { + Object.keys(boxes).forEach((boxKey) => { + if (isDragging[boxKey]) { + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + let newX = boxPos[boxKey].x + e.dx; + let newY = boxPos[boxKey].y + e.dy; + if (newX - totalWidth / 2 >= 0 && + newX + totalWidth / 2 <= w && + newY - totalHeight / 2 >= 0 && + newY + totalHeight / 2 <= h ) { + boxPos[boxKey].x = newX; + boxPos[boxKey].y = newY; + } + const pos = (boxKey); + g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + }); + draw(boxes); + }; + + Bangle.on('touch', touchHandler); + Bangle.on('drag', dragHandler); + + Bangle.setUI({ + mode : "clock", + remove : function() { + // remove the event handlers when the app should be removed + Bangle.removeListener('touch', touchHandler); + Bangle.removeListener('drag', dragHandler); + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + delete Graphics.prototype.setFontBrunoAce; + g.drawString = g_drawString; + require("widget_utils").show(); + } + }); + loadCustomFont(); + draw(boxes); + } + + function touchInText(e, boxItem, boxKey) { calcBoxSize(boxItem); const pos = calcBoxPos(boxKey); - if (isDragging[boxKey]) { - g.setColor(boxItem.border); - g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2); - } - g.drawString( - boxItem, - boxItem.string, - boxPos[boxKey].x + boxItem.xOffset, - boxPos[boxKey].y + boxItem.yOffset - ); - }); - if (!Object.values(isDragging).some(Boolean)) { - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000)); + return e.x >= pos.x1 && + e.x <= pos.x2 && + e.y >= pos.y1 && + e.y <= pos.y2; } -} -function setup() { - // Define the touchHandler function - touchHandler = function(zone, e) { - wasDragging = Object.assign({}, isDragging); - let boxTouched = false; - Object.keys(boxes).forEach((boxKey) => { - if (touchInText(e, boxes[boxKey], boxKey)) { - isDragging[boxKey] = true; - wasDragging[boxKey] = true; - boxTouched = true; - } - }); - if (!boxTouched) { - Object.keys(isDragging).forEach((boxKey) => { - isDragging[boxKey] = false; - }); - } - if (Object.values(wasDragging).some(Boolean) || !boxTouched) { - draw(boxes); - } - }; - - // Define the dragHandler function - dragHandler = function(e) { - Object.keys(boxes).forEach((boxKey) => { - if (isDragging[boxKey]) { - let boxItem = boxes[boxKey]; - calcBoxSize(boxItem); - let newX = boxPos[boxKey].x + e.dx; - let newY = boxPos[boxKey].y + e.dy; - if (newX - totalWidth / 2 >= 0 && - newX + totalWidth / 2 <= w && - newY - totalHeight / 2 >= 0 && - newY + totalHeight / 2 <= h ) { - boxPos[boxKey].x = newX; - boxPos[boxKey].y = newY; - } - const pos = (boxKey); - g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); - } - }); - draw(boxes); - }; - - Bangle.on('touch', touchHandler); - Bangle.on('drag', dragHandler); - - Bangle.setUI({ - mode : "clock", - remove : function() { - // remove the event handlers when the app should be removed - Bangle.removeListener('touch', touchHandler); - Bangle.removeListener('drag', dragHandler); - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = undefined; - delete Graphics.prototype.setFontBrunoAce; - g.drawString = g_drawString; - require("widget_utils").show(); - } - }); - loadCustomFont(); - draw(boxes); -} - -function touchInText(e, boxItem, boxKey) { - calcBoxSize(boxItem); - const pos = calcBoxPos(boxKey); - return e.x >= pos.x1 && - e.x <= pos.x2 && - e.y >= pos.y1 && - e.y <= pos.y2; -} - -Bangle.loadWidgets(); -require("widget_utils").swipeOn(); -setup(); + Bangle.loadWidgets(); + require("widget_utils").swipeOn(); + setup(); +})(); \ No newline at end of file From a15c69f06836dcdab8eba0439610a097e107cf31 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 09:26:14 -0500 Subject: [PATCH 1462/1725] Remove extra comma --- apps/boxclk/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index fad943aac..8ec9f1bba 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -16,7 +16,7 @@ "storage": [ {"name":"boxclk.app.js","url":"app.js"}, {"name":"boxclk.img","url":"icon.js","evaluate":true}, - {"name":"boxclk.beachhouse.img","url":"beachhouse.js","evaluate":true}, + {"name":"boxclk.beachhouse.img","url":"beachhouse.js","evaluate":true} ], "data": [ {"name":"boxclk.json","url":"boxclk.json"} From 004e5ae37627b556effbc62d09fea6c519915075 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 09:56:25 -0500 Subject: [PATCH 1463/1725] Added comments and reorgranized --- apps/boxclk/app.js | 37 ++++++++++++++++++++++++------------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index bf4309737..f0b9fba9e 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -1,19 +1,27 @@ (function() { - let w = g.getWidth(); - let h = g.getHeight(); - let totalWidth, totalHeight; - let touchHandler; - let dragHandler; - let drawTimeout; - let enableSuffix = true; + // 1. Module dependencies and initial configurations let storage = require("Storage"); let locale = require("locale"); let date = new Date(); - let bgImage; let boxesConfig = storage.readJSON('boxclk.json', 1) || {}; let boxes = {}; + let boxPos = {}; + let isDragging = {}; + let wasDragging = {}; + // 2. Graphical and visual configurations + let w = g.getWidth(); + let h = g.getHeight(); + let totalWidth, totalHeight; + let enableSuffix = true; + let drawTimeout; + + // 3. Handlers + let touchHandler; + let dragHandler; + + // 4. Font loading function function loadCustomFont() { Graphics.prototype.setFontBrunoAce = function() { // Actual height 23 (24 - 2) @@ -26,6 +34,7 @@ }; } + // 5. Initial settings of boxes and their positions for (let key in boxesConfig) { if (key === 'bg' && boxesConfig[key].img) { bgImage = storage.read(boxesConfig[key].img); @@ -34,10 +43,6 @@ } } - let boxPos = {}; - let isDragging = {}; - let wasDragging = {}; - Object.keys(boxes).forEach((boxKey) => { let boxConfig = boxes[boxKey]; boxPos[boxKey] = { @@ -48,6 +53,7 @@ wasDragging[boxKey] = false; }); + // 6. Text and drawing functions let g_drawString = g.drawString; g.drawString = function(box, str, x, y) { outlineText(box, str, x, y); @@ -84,6 +90,7 @@ }; } + // 7. Date and time related functions function getDate() { const date = new Date(); const dayOfMonth = date.getDate(); @@ -107,6 +114,7 @@ return locale.dow(date, 0); } + // 8. Main draw function function draw(boxes) { date = new Date(); g.clear(); @@ -146,6 +154,7 @@ } } + // 9. Setup function to configure event handlers function setup() { // Define the touchHandler function touchHandler = function(zone, e) { @@ -210,6 +219,7 @@ draw(boxes); } + // 10. Helper function for touch event function touchInText(e, boxItem, boxKey) { calcBoxSize(boxItem); const pos = calcBoxPos(boxKey); @@ -219,7 +229,8 @@ e.y <= pos.y2; } + // 11. Main execution part Bangle.loadWidgets(); require("widget_utils").swipeOn(); setup(); -})(); \ No newline at end of file +})(); From 0d9805d4ed24a9f35ca97e648e80f429959637b5 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 11:00:11 -0500 Subject: [PATCH 1464/1725] Switch from function declarations to expressions --- apps/boxclk/app.js | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index f0b9fba9e..3bab2e3f1 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -1,4 +1,4 @@ -(function() { +{ // 1. Module dependencies and initial configurations let storage = require("Storage"); let locale = require("locale"); @@ -22,7 +22,7 @@ let dragHandler; // 4. Font loading function - function loadCustomFont() { + let loadCustomFont = function() { Graphics.prototype.setFontBrunoAce = function() { // Actual height 23 (24 - 2) return this.setFontCustom( @@ -32,7 +32,7 @@ 32|65536 ); }; - } + }; // 5. Initial settings of boxes and their positions for (let key in boxesConfig) { @@ -61,7 +61,7 @@ g_drawString.call(g, str, x, y); }; - function outlineText(box, str, x, y) { + let outlineText = function(box, str, x, y) { let px = box.outline; let dx = [-px, 0, px, -px, px, -px, 0, px]; let dy = [-px, -px, -px, 0, 0, px, px, px]; @@ -69,9 +69,9 @@ for (let i = 0; i < dx.length; i++) { g_drawString.call(g, str, x + dx[i], y + dy[i]); } - } + }; - function calcBoxSize(boxItem) { + let calcBoxSize = function(boxItem) { g.reset(); g.setFontAlign(0,0); g.setFont(boxItem.font, boxItem.fontSize); @@ -79,19 +79,19 @@ let fontHeight = g.getFontHeight() + 2 * boxItem.outline; totalWidth = strWidth + 2 * boxItem.xPadding; totalHeight = fontHeight + 2 * boxItem.yPadding; - } + }; - function calcBoxPos(boxKey) { + let calcBoxPos = function(boxKey) { return { x1: boxPos[boxKey].x - totalWidth / 2, y1: boxPos[boxKey].y - totalHeight / 2, x2: boxPos[boxKey].x + totalWidth / 2, y2: boxPos[boxKey].y + totalHeight / 2 }; - } + }; // 7. Date and time related functions - function getDate() { + let getDate = function() { const date = new Date(); const dayOfMonth = date.getDate(); const month = locale.month(date, 1); @@ -108,14 +108,14 @@ } let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; return month + " " + dayOfMonthStr + ", " + year; - } + }; - function getDayOfWeek(date) { + let getDayOfWeek = function(date) { return locale.dow(date, 0); - } + }; // 8. Main draw function - function draw(boxes) { + let draw = function(boxes) { date = new Date(); g.clear(); if (bgImage) { @@ -152,10 +152,10 @@ if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000)); } - } + }; // 9. Setup function to configure event handlers - function setup() { + let setup = function() { // Define the touchHandler function touchHandler = function(zone, e) { wasDragging = Object.assign({}, isDragging); @@ -192,7 +192,7 @@ boxPos[boxKey].x = newX; boxPos[boxKey].y = newY; } - const pos = (boxKey); + const pos = calcBoxPos(boxKey); g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); } }); @@ -217,20 +217,20 @@ }); loadCustomFont(); draw(boxes); - } + }; // 10. Helper function for touch event - function touchInText(e, boxItem, boxKey) { + let touchInText = function(e, boxItem, boxKey) { calcBoxSize(boxItem); const pos = calcBoxPos(boxKey); return e.x >= pos.x1 && e.x <= pos.x2 && e.y >= pos.y1 && e.y <= pos.y2; - } + }; // 11. Main execution part Bangle.loadWidgets(); require("widget_utils").swipeOn(); setup(); -})(); +} From 6fe81e3279e75d8b48c5aed34046164cb2f2a483 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 11:43:44 -0500 Subject: [PATCH 1465/1725] Hid widgets when dragging and reenable when done --- apps/boxclk/app.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 3bab2e3f1..d8b626f8e 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -171,6 +171,8 @@ Object.keys(isDragging).forEach((boxKey) => { isDragging[boxKey] = false; }); + require("widget_utils").show(); + require("widget_utils").swipeOn(); } if (Object.values(wasDragging).some(Boolean) || !boxTouched) { draw(boxes); @@ -181,6 +183,7 @@ dragHandler = function(e) { Object.keys(boxes).forEach((boxKey) => { if (isDragging[boxKey]) { + require("widget_utils").hide(); let boxItem = boxes[boxKey]; calcBoxSize(boxItem); let newX = boxPos[boxKey].x + e.dx; From 47451511b5daeb05d21490de72021ceb0316651e Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 12:57:58 -0500 Subject: [PATCH 1466/1725] Change order, add more comments for setUI --- apps/boxclk/app.js | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index d8b626f8e..9fbb9777a 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -154,7 +154,17 @@ } }; - // 9. Setup function to configure event handlers + // 9. Helper function for touch event + let touchInText = function(e, boxItem, boxKey) { + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + return e.x >= pos.x1 && + e.x <= pos.x2 && + e.y >= pos.y1 && + e.y <= pos.y2; + }; + + // 10. Setup function to configure event handlers let setup = function() { // Define the touchHandler function touchHandler = function(zone, e) { @@ -208,13 +218,13 @@ Bangle.setUI({ mode : "clock", remove : function() { - // remove the event handlers when the app should be removed + // Remove event handlers, stop draw timer, remove custom font if used Bangle.removeListener('touch', touchHandler); Bangle.removeListener('drag', dragHandler); if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; delete Graphics.prototype.setFontBrunoAce; - g.drawString = g_drawString; + g.drawString = g_drawString; // Return to original without outlines require("widget_utils").show(); } }); @@ -222,16 +232,6 @@ draw(boxes); }; - // 10. Helper function for touch event - let touchInText = function(e, boxItem, boxKey) { - calcBoxSize(boxItem); - const pos = calcBoxPos(boxKey); - return e.x >= pos.x1 && - e.x <= pos.x2 && - e.y >= pos.y1 && - e.y <= pos.y2; - }; - // 11. Main execution part Bangle.loadWidgets(); require("widget_utils").swipeOn(); From b0ffa73a01254793e5ce2736ff80847a1302027c Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 14:25:23 -0500 Subject: [PATCH 1467/1725] Increased contrast of bg --- apps/boxclk/beachhouse.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/beachhouse.js b/apps/boxclk/beachhouse.js index 062a6b9d3..ef0648658 100644 --- a/apps/boxclk/beachhouse.js +++ b/apps/boxclk/beachhouse.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("2GwhAurg0GhgCCAAQFDg0HhEBhEWjoA/ABVl02gAIQADxGJAAOtAA4LCABFlnSROWLyqDAANghkSjEZjMTisHgEIi6k/AA8cnVeVAWgV4QCC1ijLABivOADaoCAYKvDrVamE2sFhjMaikIV/4AGndfwQABVoQAFV4SuYV6SPBSYIBBAwQMEhivNAAauBg0wAYM2jUbh4ABiyq/AAVAVRIAGVzKvMRwaUCAAMSs1mm1gsCdFVpIfDAoYYBlWo2Fhnsai0XVP4AEr6tPVzavVhk8s1CWQKvOAYcMDokMm0wsVojUcVH4AEneDV1ivMSgavGnkYjE2CIkVi0HDxQfDgEMiS2ChkTV/4AEr2CVyGIV9iQDAYM2nk2SgMOisPg8IKQMWB4MUjayKVYQBCg0NVX4ACoKtP1umwWCVzivJUwSvFRYUMm02AoMUiwACi5VCiscjkNC4MHh0ODoKsChsbA4MGi0cisWVn4ABr6uJ0GgVoetVboADryrHAZCpBhlgsFmsESSIMXAAUdWIUchEOiCeDhquCg0cA4LGBVP4ADnatJVwisiV44AFRgSuDhkAm1gm02nkbVoavCAAS4BAYIIDisODwMVTeoABJQoRJryiCABSskV4cIg6vKVoUMWgMwV4UaUIKuHABUWiyrxoKaBvgAB0GCr5NIBAM6r2C0AADVo+CV06vBiAABWJEAU4KuBWok2iquEMIS1HXiIAkneJ1umTQ+DnRPDAIM7VgqxKwSworyHChCpCWYioBgwEEg0wnscVAiv+GQNfviNCTJF8WAKsBrytKVwywCV9kBg8PiAABh6yDV4UwWAMMn0WVwgAFV2yaBr+DRgiXI0GCr+CXoyuNV9sXTg0BWA0GAQTBBWByLOXsCtBVgoAPVxavHwQABxCvrAA0IV4q1GYgyyRYKqumWBQPGVEyvSi8QhEHVg0HhEOV5qiEXSCkPDYIfGVwOCVz6xGV1qvNAAMWWQUBgEIiEWVp64NV68dstfvlfnatCryuU1oQP0+nV1yvPWQkQVbKvKBx8doNfUguCAASYPCASZvV84AvVws7wakRVxSm/V/6vOAgKsaV/6v/WKQDBV7qw/V/6uNAgave0yn/AAuIryvBiMRWH4ADviv/U7us1mm0oAC0gABiFYvkQNwMRhUKAoQAmndfr1fr87nYOIBIav/ADmB4XI5HB4PHAQIECh+ez0zVwMJgUBgSwmneCwSBEwVfB4teBIivewSu702eVIYAGmWd4N6iEQVwIABhKvlr6uFQYVYr06AAKuBAAVYmivccIKu71mkU4fAAg16AQOeqMJgUIh8QV0qvJABWg0CoV1mtVX2s0um0vC4CrEAA2eAYV6VgKtnAAODTSqtTVXYAE03HVZgAB4/Hz27WYSvqneCV9Ci01ms0ul02IVgmm1ut03CVxiwClVOzvBy8shSwnr6upNwSuxxHH4AAB4KxBWoPI4QFB02lzyvO4MGg1+0fAp8BgUKiKodnYABr6sBVtWmFgIABVVes1gFD0qVE44DD5AACBAYAMhkMV4VzgMAWIMJVzaqC0CBBVdKorVw3J5OmWIWmUB4AL4CvDvHA4GdvUAAAUQVzM7VwKroAAStxV4XIRgPC5Gk4Svd4CvDzmdvavDhKaErN9vs1V6FfVzmDN4av/1nJTyYCCCBsAg0GlVUuV6VoMBgcQTAUWvgACvtZVx07VzhxHwa/MAGGm0vJ4STC4XIAAKaDABKvL4KuBhgABm1VV4MEl80msRiNYV4YABWBtfVwYUBRQeCAAKuXO5GCV2iyG0umxGIwWlXAacCAQYGFV5CtCAAMShivBgdSu92VgoADnatJnauBVQYVDVR6uTAHmIJwqwBTgqtCV4arFXAqvFiUGhsuuFvt11uugV41YWBE7VoN8CoyuTV/4AU03IUgymFA4qvE4CvEWAUSllJkkAAAN7V418rKvHr4RHV6uDTf4ARxGlVxIANV5CwBAQKtCAAOgTY99V49ZCAwZCwSvSTn6fD1gAB0vJAAOlAgWl1mJ1itB4AABUxwBCA4QGCgywGAAMGVwV7V5F8navGrASG0GgVqSv/AAarB5AAF46UD5Gm5KqLWJIAEAwMAV5dW0yuIV4s0mkPh98voQFVymmwQDDVnOI1msUAPHVIKWGSIS3BV6SxEDwSvNletwavOmauBh1XBwmBrqZDACegAQKv51ml0us5PIV4wHEBYy6CTwSvNAgavIiUShkxmUsV5M6V4auCh0zBoeCnEUwKgKAwgHBAQIECAASVfxGICyusAAI8BV4STGVQygHACKvDgFOuV4lUwVoQCCBgMHq6vHryuCi0OV4UOvmgV4caV46kEAgavp1eq1WrAwSaB1gWN4/IV4OlVxAAU4C3LV4UkpG6y1ypFOwlahiwDWIV7V5U6VoUNh1X0F9V4MTnyvGVIiqCBAYFCAAiuf44AB5HI0ukOAIFBAAKfBAAQPD0oFBAwPJBwPHVravCAQI/CEggLCy262mQtlsy2ivFOlU2myuChuCV5U0hCvChsyvivGVQoAKVoqvjPo5yCABoaGViivH43N53OE4gLCyG63VspFs3WWAgNyWAKvBg2GryvGrEWV4SuBV4UNq6vBrsTnFdwSvQWo+CV8BtCPYaxTVzQ0DA4XHVwPNV49IpCqCWgOQWgVyvFUlV+wlWwSvFnUQi87V4sOmd8vqvBidcwKvWWASxBAAKvaNoSwDTTIaV4/I53HDIXH5o/BAQSxE4MkkmWWAOQAYKwBtmcy2cvAAB0WAwNYAAcWh6vBh6sBAASzBq+CV7i0GWYWIV6ms1fO53INoi0bVyfPG4IEBAAKuBBIIABIQKyCpFItm64G6VgKyBznAy3AzlytlypF5liuCnUWhEQV4MHWAixBvivhWASyDVR2IxGr1msxwAB2Or1ZuCSSHAAALCZ46kDAAKvCAgI+BI4JBD4+0yAABVwK1CVYOWtizBA4OcXYOdvU5nMOg8HhE6AgQABV4d7nCvBnCvdVwawCxCuN2Ow2IAD2QACWIQABOISlDV5QAFBoyuSVYmr2ONeYOHAwOq5CvBVgKhBV4QHCAgOWW4WWGwOWvSjBVQauGV4OBV4SwBwSwi02IAAKtIVwSvFAAJyCO4Z+CWYKUKWBCzHVxPH5CqFHAOyVYIAExuHWQKmBU4mQy26BIWWAAXA3QDCvKkCV5ddV4cUrumWEwADVoQABNYKlEABB6B2Ws5ywBWI4HDVCARBDAYjBAAPOGIeNVgwADV4SkBAAWQVgICCUwPAVQKtCBAVOgytGV483V4cVrufAASaDAoQKDABqxEAYOsAAqtD1ikEAoqvFAAPPAAKwBS4yTCWofH5AAFUYYXFBgqvDVpQABH4POVoYACWYa0CAAKuEy0AgwABWBSvBVwU4ikUnGe4QAUzwXDWZIACV4KkJABnO53P5yuE4AACWwidCCYIAFDgIbBCgapBBYfI57jH2I8GCgVIpFs2itCVwO0V4IIBV4SuC4GQuVUV4ayGWAauBVoKvC0ZqBNggAUXIfD0ug4YAB5KwBUhhvHOIXI44ACGRCzDB4SvHUoQMBCYXGCIowEY4znCAwivBpCuGVgSyBAYWWywFB3XBlSvKAQSvCWIavCAD3I5IAD0ulVhOqAAQNJSAQALVwiwOCBQGBVQivNVwavBWoSvCVoIHHlSsFWQyvHVz5+BWAOl0wABUBIAQOwSPB5CDF5C2GBwKvITo6oJABitDV4amCAoW6BAitB2m64HHmKrGg0GVwKvCWISvi4ACBWAauaAAR+KWAgFBUAahXV5ywCWZAAEWYKvBVwPA3WWVAIAGWYKvI46ueV4IBBWAIABTxeqAAILJTASXkAC8kWAIACWYavI2gEC2m0AwNsgCvoU4QECA4YID4QAB5HISvgAZgEkAASsBWQSkBWoICBWYuWVoK1CkivGWAKvDVwSvYVIgAHCAvHACCq/V5Mkp1IuSsBWQKtDAgIFB3XAyy1D3VOVggABhqvhW5S9HCxax/ABCrBgCyEp95WYKwC4OWWYYAE3QAClStBVYKtEV86rDV4yzEWo6sBWf4AFVgslAQNPkklp6xBvN5WYKwHAAVygysGAAqvaRQawIWRQbHABCv+lV5VIIADVAIACqtPqoOCzuWyyvHtlOhivKikUv6uYJIPP5ywHT5nH5qh+ABtP0YATzpmBzuczmWtivBiSuJWASvY5HP6wAB56wEUQSU/V7fHUAhkCAAvIAAIdKzqvBWAwHBBAavYUQKwCV43NSf6vcVwmk5CoDAAKvBDpvHp0MVAQAGV7g/BFoQAFSX6vd46uCNoXI0mk55xDDpvIp0whixIV7axDABCT/ADd5V4JiD5Glg8GrnP5/NNgvP0mAvWlXwSvBpFaV4KxHV4Va4ywZWRfIS36vaL4mkgEqlVPg/OV4PNCgd6BoVWwAIC46vCg0GWA0TAQKvQ4CwOWZCx/AC94LgmjgEH1erw9WvKvCWAWAgGA62rqsr1SvDVoKuChk2WAivC0QABzqVCVQ3AAAKuNWBXHTP4AVvJbE0crq2y1nPwErMoSvCldV63W59WlekV5IABV4s2mE2rVaxepWAisCV5hGCdgKsj54AEV/lVg+rV4Or1cH0avEgOAV4IMBV5EwmCvIiUw1PV19gsGiVYqxMUjyuKLgPXAAPW6qx1V4nIvMrwKvCwKvCVwXOg9cVwWrgCvFgCvFAAs2wuw2NhAwKvVHQYALK4XIVqPVVoYAD63PWOavF5FcnCvCmUx5oLBCYWAg/W62ywCvFgAACgwADVwlhsE2AoLAB4yuRV4SxCH4QAKCoSwP55ZBVwyxEV+ykB0kOVwOHmKgCV4fOg+B1eBqsrBASvEgywInitDVwOoV6axFUYSvJ5BNFVxitJWGqvG50qlcrquAV4+kgFWmMAv6vElSsDWYSxGmACBmyuMWBazH5BsXVxywzV4gHC5GjvOjUAavEWIWjOgivCUoKuCV4KoBWAc2AIM2sOpzmcV64+HV66uOAAKvz5vO5oCBAAxwOV4YABVoICCAgSvFsFaCYNUWJiyJVz3WV6HWWF6vCAgKvakkAABCvCAAM2mFhsKzBmywN4KxCWgqwc56uQAAKv2AASvVWAMklSuHAAs2sNgsE2hlUUwQsBWRQAGH4fN4/I5Cv/V8KxEBorAIV4VI0XNWAkqV48wngABhgFB0Wiv1UlV+4ywNAoIBBIQPHWwSwT5/WV6PVVdRTDvKXDV5vH5oFBBgIJDV4dy5nTpyvDgwDDmEwV4U2hk2AwMwrVgrQSBqmiWAilBWhC3FWgSvm56gcepQLBAASvEU4KvGUYKvCNAS4DV49sy3G5lOkiwDV4YAEhizCwmv1OErUqCAOiWAPG0V4vGcVYW6AAS0GV4fHNZQAHV9A7EUIyuKAASvDABCvGAAq1DV4NyuWcziRBp1OTYKvDAQMqmCxClVarWFAANamAOBqiwB0V+mEwqiwCV4awEV4axV6CuQ6yvVTxCxGBhKvNAAZlLV4PAuVIV4KyBWIKvDWISuBAYMGrVgWANawlalQLBlSuCqiuBvyvGVYSvHWIhOO5/WV56uHSwqvUABivG46uJAAKmCAAPNGwqsBV4IABtiyCV4wABAgSsBm0wmFaAQMwBYN+VwIABAgKvIA4KvIWgxnFWCvWV4gfJVjqvE0dy0avJWQivLkmWtivCuWi42ikirCWAoAGlUGWQUAlUwAINaV4OiVwm6T4IHBWISyKV4RTDSQ6wNVyasaAAd55quCAAxNBH4KnFAA+jklyVwSvHlSvCWAgGGVANaBQIGDwl+ziuEVYKvCAoQAFWA62GSoqwBWJAJBVw4Ap5yvBGYfH0YAC46uBWAQAB0kAkkqldVq2kV4lIAIKvCzivDTQKvDWYoCDVQYGEWwNOy2WWAoAIV5AAGV4ZwEMYXVAAhsFVtivHvCMBkkrlWjV42qQQM5n8Og6vKWAdOVg6zHAgkwhi3EV4KuOWIazCVxKvHOIKxDM4gAESCCvfGgd5qsAlUrpyvKrtkhsOV46wEpF4zivPWA0SA4MGqmizivRWoy2B3SwFWIYFDVI6tRDBa3W514V4l5SoNPlSvKhs5V40ADAKvBuVyWoNIzlyV5sqqkqAAdVw+AHoN/V4Oi5HBWS64GWoa5GACqTHEDl45oAB52dvKXBV4q9DV4cOV49IAAKuBV4IFC4950gAC5+lAgXJ1YqC6HQAgnWAAIEBBQIHB6GeywABTIeQAAW0AFgzBAwwAc3e7doSvFqivBlavLh0yg8GV4tyzipBVoQABtmc5GrAAOlVwV6AAKzCBIILC0oQBAYKuCAAS2C5wVB5HO5AAE44ABLgQAP3aReUqgNM2ivFqqvBp6vJg0UildmMAV5AAEki2BzmeVQdVqtPp4GCAANWvWAWga8DAoOBwGAvWB1ZACAB/OCLhuDADvJABvIV4KWDV4MAlSvFBwWqgEHg+BxEGV41ykgACWAVstlypypBAAUrAIS0BWwml0ilBAAK0CWoNPqy/B0qbSV56EE5/W63XAAfVV83KAAoHC6CvFpyvBp0kV5MAg2HV46oBBoKxHpAGBlUrAAq5EqqsCUwelwN6wOBAoQDBSYphCAYKaDWAixEWw/O5AAD56tEAAPWV8ywHV4VUUAIBBV4xfDAASvCrmHmSvGAASlBAYavCtgIBWJK1HqCxBAAS4Bva0BWoKwB0uk1fQ5+kAA4SB0idCUowAJV+CwJV4SwB0aRCp6vJg0Aw+IgyvJWYoADBAivKXJSyBAQSeBWAPQQ4RHBW4OAvTGEAAKcB6zACV6goBV8SlDWZKvCzmc0SJCqsqv4iG1arBhsNV4ukVQsqp1UvFUp0qgEqp9VvMqBwSvSAAVVqoDBvOk5/WQwPWAAPQ0ivDveBV4Os6+s0ul1fJV5gjCAAnWV8SqEVowABpyvB4/H0avCQ4KvC1V/0YECVYMMhgDBwHIBQPI0gADMguk0t6udzz2euYrCkqwRWQd5TgN5WAOr1aeBAAOBAANXAAi0Brtd1mt1msOIKwK6CvG6CvmWQavHAAOj0cqQYIABV4XOBQOqAAJiBPAIABV4PI5J3BVoJ8Cz+fU4IADzuXueXuVzp4sDABMkAAMqAALFBAoKwDDoNPlcAlaoDwQAB0+CrGC0yqBAAPRxGI0yvL5/WVwnWV0CvJWA1O44ABV4h1BwCbD0meTwYABAgOkUgN6wOmA4OeVoQQCzAEC0edzwjB0l6lclgMBWJivClUrAANPqqvB0qcBxACBwQCB02mV4OBAQOs6CaB6wQCXAKvLWAIWCV0avJVwqvB0aBCQQIADUwoCBAAQEDVwSvB0t7vWeAAN0DQmlzzYBAgN7q0zq9XqwATvWAwOB1iFBAAiiBFAIABHwIFBCYOmVwN7GYOBV4PJ6AABWoyJC5/PV0SvQp6qEVYOeSQYAFWYWfXganBvVQuiuBX4elGIYEB52jq0ymYACPgIACroBBAQIACwCvHBgemVwqhBUQLpBAAIUBloACb4IDCvfJ5/Q6/RWAyuDSI63dV5CwGR4IAOWAYABvWlBYotI5ACB0md42jVwkymVWq6tCQwKkCWYIFDWI45CSgWs0qsBAANRqNQlksVAMzlsJAIICBrGm6IABYoKwB55IBUIIADVAQIGV8qyFVRpvCA4V6uYABz2lEpHC4XIVoIcBQgN4V4MsVwiHBAAq3BAAQKFlYEDqylBvQABq1QAAKsBAAcshItBWIIACWAeCAAaxBMIPK6HQWwIAJV4fNV8SrBV5qrCCgIJE0gJDAAyqBVgXJKoOs02sq9y43Gg8IAAMHgIAEg6iClYABg4AGgMIgQPBVIQADXYauDFYKoBABEtdQVYmdXves6PR64ACAoK7BWAyxDV8CrCAAefAAaqEAAWlud00meVRPCVYWevV6q9WTINXq6OBgVy4HAkirFWAqkCAQIWBgQNEA4SwCAA8mBYYEBWAIWDAALlCXYktAAWC02m1umAgQDBAAN7AAOBAAWA0ivoB5CoBz2Xz150isIVoINBued0VOSQMIS4SREV4cAAAayIRowGFWBKUBlgLDD47QCWYgDBWAQEBkwfCEIQABqLdHldPV9aYBAA/IVQwJBvVzp8lgKYBznGpycBg8xwErAoKlCV4UqV4iwOV4YKFhCnCVAKNDkwABGQIUCAIMJDwLbKVwQLCktQq1QvWr1ml0mk0YABAgavlAgSqH4SlBCwmkBQOdzskSAqvDUAUBKwNPUolOznAXwKvNQwivCXxavDltX0ulkomEgUtvel1eBfgIeFAYNQ56fBvOj5/VAAPW6/W6vN5vOAQIDBAgKvgWIqvC4QACVgKuDVYNzMYKVBV4R9FBYOiV4YABvCmFV6ikEBRS+ClssAAOkNQPIzqZB0jrB0mjPIqnBwFWlclld6TQnP6HWAAPXWAKtDV4YAYV5SxEV4SpCVQV6p8lOYqVBzivGWAPG40kToVP0WipwHDpCvBvNVvN4V54ANWQjAB44ADRQaQGSh/P56uCV4PPVTSvUUwIAClckkqsGUYSvDSASVDknG0QKBkl40QRBAAOivEkDIPAAwOcA4KuYVIgEE0nNWAixDVwgAJBogTDV4fQVz6vJVYQADkqXDAAkIg4HFV4oWCAAXG414zuj4x2B0QIBAAV4V4WcuSuITAaZBVpoRGp6RBV6gOFCYqvC63PV8iqGV45yKAAUAV4gAGUAKlBOoStE42jV4StCcAydGAAUJAAQNJAAkl5CvETZCvV63UDRSuWVZYADg6gBVxqvQU4OcvAABp0kCgMk4HApAWEVxivEhCtLgYCBvKrBVwSfHVZ4SEV4PV6fU5/PZZKtT0wAPV4adHRYtO4GdV5PGzioBDRCvHa4afLWAajCVxAABgUlVoPH4yzCAISxHVxvP6yvC6nV63QWBIAQ5+m0CvQPIKtMV4t5vOj0fGvAMC4HGVpKvIVpsDVoiiCB5cCk2kVwIACWoSwGABqKB64ACWQKzB6yvq04BB06vSzmc0RRBNYOiV4ecDZmcV4StCV5MIVgq+KgSuEgdSvml5HH0mlAAPI5B4CVRgNC5ynBAAyubWAXJVpYAEV6EAV4qwBvCvD40kDJUk4CvDThYAEV5QKBVwsJmtZvl8wWCwYABwRoB1iTBV53PVgwABVwQSDV6/PVxpOBV6ujAAV4kgaBkvGV54UBVyCzLVoauDiE7r4ABVoQAF1mrSoavK53QV4vVVwQAKDogAH0ul1inEeASrBIwivDwavIkiZGgNy4GdpwJFV4KgCV5ec4FITwq1OVoKvDAgSvEhMKi87AAKwL02lTAKvIAgnP63WWAQLBU47NJAA3JvieCwQBCAByvEkl4zuj4/H0abEV4WcXI0BkivClcHV5OW4FyVIYYBVqAAGVocQiERV5CyHwWlSpgAB5/QV4bFBV56zFAYelwWnVySvElWc4wAD49OBQMrBwNIyyvGUASvBCYQAJV4NIVQKtOVwKjCVIoAChQABiKuBAAaxEAAyvETIidGAwXPV4XVAoKwTEInI0umVyWDQwdOzmiWAl4kkkBoavBAwavGpCuKkivCgCuPV4gAGiEQVQivSS4oAKSAPWV4ICCDAKsSaQulwQAEV7NOSolyV4aVBV6VIBwMkVyCvBWA8KiKtJWAavK1nPWBaLBR4XPVYIAD6qvFZZoOD0ul0yrFWoq3HV4wACzl4SotyzmcAgKvGznAYYoAEgNz4G6AgKsPAQKtGiCuNi6lBxKtGOQWm02l1YAHXYSvD6ytC6yuBTwfN0mBSg4pCAAgLEUIiuMV4kqp1OkiWJV4OdBo8ky3AuShBV5FI3W6p6uNV4StFVwavNnasFVwSyEABZ8BWAiuC5vM5y8D52mEBoAaU5KvJ4OkV5NODJSvCvSuShQACiCuCV5qwBWIh1V1akC6yvC53O6HQV4enVchMCr6vTzsqV7EkgKtLVYKwGVoavPiM1WAJfBWCusUwPQVwKwC6yvE5usVUAABf4IADV6ecBQ6vTWBSqCAAkKVoivML4gECAAp+QxHR6KuDWAXX5/OWAXOV88XV6NszmdBZCvDgINIkivBpCuKV4UKhQDCiCuGV5SpIABJyDAAmCrwABwWsVw3W56sCWAWsVzysEndBLIKvaVASvDABNIV4SuKWAatKV5ZeFna2SXYuC1fQ5/O6nWV4KuB5nMWAIEB5yvfLI6vRpGc4ILIV4NIBQ8BAANy3WWkisJgatCVxivKWQyvXr+CU4ivB6AGCBAQAC0yweKIRjEV6W648qBY9yV5lIyGQpEBV5CtDVwIACV6iucr+JVAXN53Q6KvEVwfNwScLABASKJ4RXDV6edpyvJBQMBDJFsy2Wp6sJVwawNV5ioVPIYDC1vP53N5/P6HQAoK2CAAeqwSbLACxTBWYOkTZCvIy1yAwckV6Ny3SvMVw6vIWBoAEmp5V1fNUwKvBWgPTA4iuB56kDVo6wFH4oAGBxEX4/HzqeEV5aqEUIqvCABEBDIO6pEBWBKvIWAgEBW5IAKmoABO5gAFrup5nS6fU6YACWAKxB6nP1jONVZiuGJARKCiOczmi415V5tsBZKvCgMBVowABpG6y1IVwyxDV4awFTQqvQVIiJNAA+C5ysDAAPU6vV53NVx6wRAAatBiIEBi+j0fHzt4V5lspALJklykipEWgQDCtm63VzhCsFgcJAAKrLV6iqVWA2q1Wr1YCB63X6+Ir1eVkATFWIIDB5wAB0l6vMrlSjJuSvKAAStEV4QICtmWy0kVwsCVwifPV6h6QSg01mh9Cr+JxNlVDgvIAAtlnfP5/O5Gk0mjAASyHtivNWAwHDpFyuQFBV5KufYjQAXWKgAEi4AFiPOAAawBAAd5pyfEpCvSAwYDCklzp6vGWIUKhUQAAIEBABMQUS81ABU7V7i0SJZyuD5CvF0d50ejv95AAK2FWBazGpGc4FPU4MJV5AAPVCB2KQwgECVLleAAOCwWtGZEXAAMRiEKhcLV6HI4/HVQIAGW4N5V5wAIpFyy0kVgqvViEQV7K0GWwyuWVgOCWIIhDABRIELBKvDWAPH5vNWRUkUZUBBZVOuVykkBgKvqADc1AAbHKABIODcxy2GV4ysBAAqyBAASvCzt5pyyLV5OWy1OVw6vUU0Z6BVIk1BwoyFi6VDi4AJVpgAFV5SpCWoa5HWIejAgN4py0BWqAQBV5CwSV8eDwWCrwAIr4CCAAQKEAASyBFRi/JChSpHABSyCAAy2C0dOUQIABAYYFCAwIIFAASwDAAKvNJ4cQAAatYDQOCTogAUZIOCweJxM7FY81AAM7AATHCIJavSABHI0gACp6iHUAICBhAADBASyHWgi2GAoKnDV7oeBmiADAAKjJAYSrFAAwaBUoaoFAAgJBH5amS5oABBAuk0sxq0ygAABlcrAYOAwKgBq0rXQ0sg7ECY5IAEYwMIXIqubABU1ShiVCnU0mjsEAA7uUV6awDAAwLB1WkCIej0YLB0ed4/HA4IAB0gRB59WYAKvBAQKnDWJYCBAAS1DNgK0bRzAAgV6qwKWQYPNCQd6VYIADVA6nFVQoAFhQADSwgAGNIR5OYSIGEVz0Q1Wk0mqWLwARvNPp1VlSvCWAqmJVxCqLABjGEAgU7r9er06nU0AAUQAQNer80hQ0BBANYAAYXBr1YWy5ACvAACWCaxV44LK0YAC0mAq0IWCCTEAAplGNYywGAAc6r+DAAOCABWmAAWsAAvQ6GDWCyvG0aoM0eqRIiwWAAIRO51VgKxBAA0IXIatDMBCoHWBK1FAgc0mk6AAQFBACKuWIQUKV4d5TgIAC1WqVQIADvN/v4RBAAN/RIKxUABnMAYWAgEBAASzIWIS0EACEQi87nUWAAx3BCAYAXViquEhKvDWIShCAoYDFCQujYYSpZ4/G42i0QDB43H0kqV4iwJAAMIWYoAPiE6WAIAEnc7Tha2nVoSuBV4wATV4awZztyp1Ip1Ozl5VoIABV4iwMAAKxUhSKHi6yBAA06mivYWhAIEVgYACVzKqYAAfHvCvBuQkBV4KuIWJ6wUWgh5CiE6AAter2DxNfnaxdVIQADHoyuXvKTB53OAQK0cXAmcvFOWYS2IWBCsYPQUKiE7VwlfAAVenSqgVgiwGqgADTwIEDBIoAH0aMD0fHSgoEEAAKxV4+i0S0BlSvGWY6uVWI6vBAAkWVTSvIHxqvEABSwJAAYOD0a0CSYIFB0ecYQYAY49PU4gAHTgyuVWIaUKV9UIV56wHBANOAAyyDzl4uVyBIOiV7kAgEBAAKwJBgQNBhCiLPYqwSVzbtNhEIQoKxQVQatIABejUyXOAA3N0avBAAamDABS4CWYgAGXJKtiVRqsDAAMClQALUiYAKvGjAA+dvF5AAVVp9Op950mdBAOdAAOj4+jCQYRBp0kki2JVwSvBAAx+PXoqunIYpNBLoIAHlQBBAQIAPZRTOMp4ACuYCBp1yvAABzl4AoOcAAXHAAfG4wECaAK4BWQZeBAQKrQXiwATdQ6nCJIIAEgChQAE1IpATTAAbMBuQABzmdp0AAAizCACiKIRggDDCx4AEUoqpEAAoA=")) +require("heatshrink").decompress(atob("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")) From 51e1f9e7da7cfd402e561347cca9d2144ca13e47 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 19:04:20 -0500 Subject: [PATCH 1468/1725] Add menu for multiple configs, update README --- apps/boxclk/README.md | 19 +++++++--- apps/boxclk/metadata.json | 1 + apps/boxclk/settings.js | 75 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 90 insertions(+), 5 deletions(-) create mode 100644 apps/boxclk/settings.js diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 613c74fe0..7a0f3bb81 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -10,13 +10,15 @@ This intuitive feature allows you to reposition any element (box) on the clock f __JSON Configuration:__ -Each box can be customized extensively via a simple JSON configuration. You can also add a custom text string to your configuration with the "string": "Your custom text here", attribute. Here's what an example configuration might look like: +Each box can be customized extensively via a simple JSON configuration. You can also add a custom text string to your configuration with the "string" attribute. Here's what an example configuration might look like: + +## Config File Structure ``` { - "customBox": { - "string": "Your custom text here", - "font": "CustomFont", + "customBox": { // + "string": "Your text here", + "font": "CustomFont", // Custom fonts must be in main program and removed in setUI "fontSize": 1, "outline": 2, "color": "#FF9900", @@ -28,11 +30,12 @@ Each box can be customized extensively via a simple JSON configuration. You can "yOffset": 3, "boxPos": { "x": 0.5, "y": 0.5 } }, - "bg": { + "bg": { // Can also be removed for no backround "img": "YourImageName.img" } } ``` + * **string:** The text string to be displayed inside the box. * **font:** The font name given to g.setFont() @@ -55,6 +58,12 @@ Each box can be customized extensively via a simple JSON configuration. You can * **bg:** This specifies a custom background image, with the img property defining the name of the image file on the Bangle.js storage. +## Multiple Configurations + +The app includes a settings menu that allows you to switch between different configurations. The selected configuration is stored in the default JSON file alongside the other configuration data using the selectedConfig property. + +If the selectedConfig property is not present or is set to 0, the app will use the default configuration. To create additional configurations, create separate JSON files with the naming convention boxclk-N.json, where N is the configuration number. The settings menu will list all available configurations. + ## Compatibility This app was built and tested with Bangle.js 2. diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index 8ec9f1bba..351686fe7 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -15,6 +15,7 @@ "allow_emulator": true, "storage": [ {"name":"boxclk.app.js","url":"app.js"}, + {"name": "boxclk.settings.js","url":"settings.js"}, {"name":"boxclk.img","url":"icon.js","evaluate":true}, {"name":"boxclk.beachhouse.img","url":"beachhouse.js","evaluate":true} ], diff --git a/apps/boxclk/settings.js b/apps/boxclk/settings.js new file mode 100644 index 000000000..7d6262a65 --- /dev/null +++ b/apps/boxclk/settings.js @@ -0,0 +1,75 @@ +let storage = require("Storage"); +let fileRegex = /^boxclk-(\d+)\.json$/; +let selectedConfig; + +function getNextConfigNumber() { + let maxNumber = 0; + storage.list().forEach(file => { + let match = file.match(fileRegex); + if (match) { + let number = parseInt(match[1]); + if (number > maxNumber) { + maxNumber = number; + } + } + }); + return maxNumber + 1; +} + +(function () { + let configs = {}; + let hasDefaultConfig = false; + + function handleSelection(config) { + return function () { + selectedConfig = config === "Default" ? 0 : config; + menu["Cfg:"].value = selectedConfig === 0 ? "Default" : selectedConfig; + E.showMenu(menu); + + // Retrieve existing data and update selectedConfig + let defaultConfig = storage.readJSON("boxclk.json", 1) || {}; + defaultConfig.selectedConfig = selectedConfig; + storage.writeJSON("boxclk.json", defaultConfig); + }; + } + + storage.list().forEach(file => { + let match = file.match(fileRegex); + if (match) { + let configNumber = match[1]; + configs[configNumber] = handleSelection(configNumber); + } else if (file === "boxclk.json") { + hasDefaultConfig = true; + let defaultConfig = storage.readJSON(file, 1); + if (defaultConfig && defaultConfig.selectedConfig) { + selectedConfig = defaultConfig.selectedConfig === 0 ? 0 : defaultConfig.selectedConfig; + } + } + }); + + if (!selectedConfig) { + if (hasDefaultConfig) { + selectedConfig = "Default"; + } else { + let nextConfigNumber = getNextConfigNumber(); + selectedConfig = nextConfigNumber.toString(); + configs[selectedConfig] = handleSelection(selectedConfig); + } + } + + let menu = { + '': { 'title': '-- Box Clock --' }, + '< Back': () => Bangle.showLauncher(), + 'Cfg:': { value: selectedConfig === 0 ? "Default" : selectedConfig, format: () => selectedConfig === 0 ? "Default" : selectedConfig }, + }; + + if (hasDefaultConfig) { + menu['Default'] = handleSelection('Default'); + } + + Object.keys(configs).forEach(config => { + menu[config] = handleSelection(config); + }); + + E.showMenu(menu); +})(); From c3b07613e277b5e3e46013a26848b667ddeeb9dc Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Fri, 16 Jun 2023 19:16:20 -0500 Subject: [PATCH 1469/1725] Update metadata.json - Removed space --- apps/boxclk/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index 351686fe7..ad5ad72e9 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -15,7 +15,7 @@ "allow_emulator": true, "storage": [ {"name":"boxclk.app.js","url":"app.js"}, - {"name": "boxclk.settings.js","url":"settings.js"}, + {"name":"boxclk.settings.js","url":"settings.js"}, {"name":"boxclk.img","url":"icon.js","evaluate":true}, {"name":"boxclk.beachhouse.img","url":"beachhouse.js","evaluate":true} ], From 9c27ec1694295de71354b677b78a9a70f0fb3756 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 20:14:27 -0500 Subject: [PATCH 1470/1725] Update app for new menu, change screenshot --- apps/boxclk/app.js | 477 ++++++++++++++++++----------------- apps/boxclk/screenshot-1.png | Bin 5936 -> 6060 bytes apps/boxclk/settings.js | 37 ++- 3 files changed, 258 insertions(+), 256 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 9fbb9777a..1647bd731 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -1,239 +1,242 @@ { // 1. Module dependencies and initial configurations - let storage = require("Storage"); - let locale = require("locale"); - let date = new Date(); - let bgImage; - let boxesConfig = storage.readJSON('boxclk.json', 1) || {}; - let boxes = {}; - let boxPos = {}; - let isDragging = {}; - let wasDragging = {}; - - // 2. Graphical and visual configurations - let w = g.getWidth(); - let h = g.getHeight(); - let totalWidth, totalHeight; - let enableSuffix = true; - let drawTimeout; - - // 3. Handlers - let touchHandler; - let dragHandler; - - // 4. Font loading function - let loadCustomFont = function() { - Graphics.prototype.setFontBrunoAce = function() { - // Actual height 23 (24 - 2) - return this.setFontCustom( - E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), - 46, - atob("CBEdChgYGhgaGBsaCQ=="), - 32|65536 - ); - }; - }; - - // 5. Initial settings of boxes and their positions - for (let key in boxesConfig) { - if (key === 'bg' && boxesConfig[key].img) { - bgImage = storage.read(boxesConfig[key].img); - } else { - boxes[key] = Object.assign({}, boxesConfig[key]); - } - } - - Object.keys(boxes).forEach((boxKey) => { - let boxConfig = boxes[boxKey]; - boxPos[boxKey] = { - x: w * boxConfig.boxPos.x, - y: h * boxConfig.boxPos.y - }; - isDragging[boxKey] = false; - wasDragging[boxKey] = false; - }); - - // 6. Text and drawing functions - let g_drawString = g.drawString; - g.drawString = function(box, str, x, y) { - outlineText(box, str, x, y); - g.setColor(box.color); - g_drawString.call(g, str, x, y); - }; - - let outlineText = function(box, str, x, y) { - let px = box.outline; - let dx = [-px, 0, px, -px, px, -px, 0, px]; - let dy = [-px, -px, -px, 0, 0, px, px, px]; - g.setColor(box.outlineColor); - for (let i = 0; i < dx.length; i++) { - g_drawString.call(g, str, x + dx[i], y + dy[i]); - } - }; - - let calcBoxSize = function(boxItem) { - g.reset(); - g.setFontAlign(0,0); - g.setFont(boxItem.font, boxItem.fontSize); - let strWidth = g.stringWidth(boxItem.string) + 2 * boxItem.outline; - let fontHeight = g.getFontHeight() + 2 * boxItem.outline; - totalWidth = strWidth + 2 * boxItem.xPadding; - totalHeight = fontHeight + 2 * boxItem.yPadding; - }; - - let calcBoxPos = function(boxKey) { - return { - x1: boxPos[boxKey].x - totalWidth / 2, - y1: boxPos[boxKey].y - totalHeight / 2, - x2: boxPos[boxKey].x + totalWidth / 2, - y2: boxPos[boxKey].y + totalHeight / 2 - }; - }; - - // 7. Date and time related functions - let getDate = function() { - const date = new Date(); - const dayOfMonth = date.getDate(); - const month = locale.month(date, 1); - const year = date.getFullYear(); - let suffix; - if ([1, 21, 31].includes(dayOfMonth)) { - suffix = "st"; - } else if ([2, 22].includes(dayOfMonth)) { - suffix = "nd"; - } else if ([3, 23].includes(dayOfMonth)) { - suffix = "rd"; - } else { - suffix = "th"; - } - let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; - return month + " " + dayOfMonthStr + ", " + year; - }; - - let getDayOfWeek = function(date) { - return locale.dow(date, 0); - }; - - // 8. Main draw function - let draw = function(boxes) { - date = new Date(); - g.clear(); - if (bgImage) { - g.drawImage(bgImage, 0, 0); - } - if (boxes.time) { - boxes.time.string = locale.time(date, 1); - } - if (boxes.date) { - boxes.date.string = getDate(); - } - if (boxes.dow) { - boxes.dow.string = getDayOfWeek(date); - } - if (boxes.batt) { - boxes.batt.string = E.getBattery() + "%"; - } - Object.keys(boxes).forEach((boxKey) => { - let boxItem = boxes[boxKey]; - calcBoxSize(boxItem); - const pos = calcBoxPos(boxKey); - if (isDragging[boxKey]) { - g.setColor(boxItem.border); - g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2); - } - g.drawString( - boxItem, - boxItem.string, - boxPos[boxKey].x + boxItem.xOffset, - boxPos[boxKey].y + boxItem.yOffset - ); - }); - if (!Object.values(isDragging).some(Boolean)) { - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000)); - } - }; - - // 9. Helper function for touch event - let touchInText = function(e, boxItem, boxKey) { - calcBoxSize(boxItem); - const pos = calcBoxPos(boxKey); - return e.x >= pos.x1 && - e.x <= pos.x2 && - e.y >= pos.y1 && - e.y <= pos.y2; - }; - - // 10. Setup function to configure event handlers - let setup = function() { - // Define the touchHandler function - touchHandler = function(zone, e) { - wasDragging = Object.assign({}, isDragging); - let boxTouched = false; - Object.keys(boxes).forEach((boxKey) => { - if (touchInText(e, boxes[boxKey], boxKey)) { - isDragging[boxKey] = true; - wasDragging[boxKey] = true; - boxTouched = true; - } - }); - if (!boxTouched) { - Object.keys(isDragging).forEach((boxKey) => { - isDragging[boxKey] = false; - }); - require("widget_utils").show(); - require("widget_utils").swipeOn(); - } - if (Object.values(wasDragging).some(Boolean) || !boxTouched) { - draw(boxes); - } - }; - - // Define the dragHandler function - dragHandler = function(e) { - Object.keys(boxes).forEach((boxKey) => { - if (isDragging[boxKey]) { - require("widget_utils").hide(); - let boxItem = boxes[boxKey]; - calcBoxSize(boxItem); - let newX = boxPos[boxKey].x + e.dx; - let newY = boxPos[boxKey].y + e.dy; - if (newX - totalWidth / 2 >= 0 && - newX + totalWidth / 2 <= w && - newY - totalHeight / 2 >= 0 && - newY + totalHeight / 2 <= h ) { - boxPos[boxKey].x = newX; - boxPos[boxKey].y = newY; - } - const pos = calcBoxPos(boxKey); - g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); - } - }); - draw(boxes); - }; - - Bangle.on('touch', touchHandler); - Bangle.on('drag', dragHandler); - - Bangle.setUI({ - mode : "clock", - remove : function() { - // Remove event handlers, stop draw timer, remove custom font if used - Bangle.removeListener('touch', touchHandler); - Bangle.removeListener('drag', dragHandler); - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = undefined; - delete Graphics.prototype.setFontBrunoAce; - g.drawString = g_drawString; // Return to original without outlines - require("widget_utils").show(); - } - }); - loadCustomFont(); - draw(boxes); - }; - - // 11. Main execution part - Bangle.loadWidgets(); - require("widget_utils").swipeOn(); - setup(); -} + let storage = require("Storage"); + let locale = require("locale"); + let date = new Date(); + let bgImage; + let configNumber = (storage.readJSON("boxclk.json", 1) || {}).selectedConfig || 0; + let fileName = 'boxclk' + (configNumber > 0 ? `-${configNumber}` : '') + '.json'; + let boxesConfig = storage.readJSON(fileName, 1) || {}; + let boxes = {}; + let boxPos = {}; + let isDragging = {}; + let wasDragging = {}; + + // 2. Graphical and visual configurations + let w = g.getWidth(); + let h = g.getHeight(); + let totalWidth, totalHeight; + let enableSuffix = true; + let drawTimeout; + + // 3. Handlers + let touchHandler; + let dragHandler; + + // 4. Font loading function + let loadCustomFont = function() { + Graphics.prototype.setFontBrunoAce = function() { + // Actual height 23 (24 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), + 46, + atob("CBEdChgYGhgaGBsaCQ=="), + 32|65536 + ); + }; + }; + + // 5. Initial settings of boxes and their positions + for (let key in boxesConfig) { + if (key === 'bg' && boxesConfig[key].img) { + bgImage = storage.read(boxesConfig[key].img); + } else if (key !== 'selectedConfig') { + boxes[key] = Object.assign({}, boxesConfig[key]); + } + } + + Object.keys(boxes).forEach((key) => { + let boxConfig = boxes[key]; + boxPos[key] = { + x: w * boxConfig.boxPos.x, + y: h * boxConfig.boxPos.y + }; + isDragging[key] = false; + wasDragging[key] = false; + }); + + // 6. Text and drawing functions + let g_drawString = g.drawString; + g.drawString = function(box, str, x, y) { + outlineText(box, str, x, y); + g.setColor(box.color); + g_drawString.call(g, str, x, y); + }; + + let outlineText = function(box, str, x, y) { + let px = box.outline; + let dx = [-px, 0, px, -px, px, -px, 0, px]; + let dy = [-px, -px, -px, 0, 0, px, px, px]; + g.setColor(box.outlineColor); + for (let i = 0; i < dx.length; i++) { + g_drawString.call(g, str, x + dx[i], y + dy[i]); + } + }; + + let calcBoxSize = function(boxItem) { + g.reset(); + g.setFontAlign(0,0); + g.setFont(boxItem.font, boxItem.fontSize); + let strWidth = g.stringWidth(boxItem.string) + 2 * boxItem.outline; + let fontHeight = g.getFontHeight() + 2 * boxItem.outline; + totalWidth = strWidth + 2 * boxItem.xPadding; + totalHeight = fontHeight + 2 * boxItem.yPadding; + }; + + let calcBoxPos = function(boxKey) { + return { + x1: boxPos[boxKey].x - totalWidth / 2, + y1: boxPos[boxKey].y - totalHeight / 2, + x2: boxPos[boxKey].x + totalWidth / 2, + y2: boxPos[boxKey].y + totalHeight / 2 + }; + }; + + // 7. Date and time related functions + let getDate = function() { + const date = new Date(); + const dayOfMonth = date.getDate(); + const month = locale.month(date, 1); + const year = date.getFullYear(); + let suffix; + if ([1, 21, 31].includes(dayOfMonth)) { + suffix = "st"; + } else if ([2, 22].includes(dayOfMonth)) { + suffix = "nd"; + } else if ([3, 23].includes(dayOfMonth)) { + suffix = "rd"; + } else { + suffix = "th"; + } + let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; + return month + " " + dayOfMonthStr + ", " + year; + }; + + let getDayOfWeek = function(date) { + return locale.dow(date, 0); + }; + + // 8. Main draw function + let draw = function(boxes) { + date = new Date(); + g.clear(); + if (bgImage) { + g.drawImage(bgImage, 0, 0); + } + if (boxes.time) { + boxes.time.string = locale.time(date, 1); + } + if (boxes.date) { + boxes.date.string = getDate(); + } + if (boxes.dow) { + boxes.dow.string = getDayOfWeek(date); + } + if (boxes.batt) { + boxes.batt.string = E.getBattery() + "%"; + } + Object.keys(boxes).forEach((boxKey) => { + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + if (isDragging[boxKey]) { + g.setColor(boxItem.border); + g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + g.drawString( + boxItem, + boxItem.string, + boxPos[boxKey].x + boxItem.xOffset, + boxPos[boxKey].y + boxItem.yOffset + ); + }); + if (!Object.values(isDragging).some(Boolean)) { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000)); + } + }; + + // 9. Helper function for touch event + let touchInText = function(e, boxItem, boxKey) { + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + return e.x >= pos.x1 && + e.x <= pos.x2 && + e.y >= pos.y1 && + e.y <= pos.y2; + }; + + // 10. Setup function to configure event handlers + let setup = function() { + // Define the touchHandler function + touchHandler = function(zone, e) { + wasDragging = Object.assign({}, isDragging); + let boxTouched = false; + Object.keys(boxes).forEach((boxKey) => { + if (touchInText(e, boxes[boxKey], boxKey)) { + isDragging[boxKey] = true; + wasDragging[boxKey] = true; + boxTouched = true; + } + }); + if (!boxTouched) { + Object.keys(isDragging).forEach((boxKey) => { + isDragging[boxKey] = false; + }); + require("widget_utils").show(); + require("widget_utils").swipeOn(); + } + if (Object.values(wasDragging).some(Boolean) || !boxTouched) { + draw(boxes); + } + }; + + // Define the dragHandler function + dragHandler = function(e) { + Object.keys(boxes).forEach((boxKey) => { + if (isDragging[boxKey]) { + require("widget_utils").hide(); + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + let newX = boxPos[boxKey].x + e.dx; + let newY = boxPos[boxKey].y + e.dy; + if (newX - totalWidth / 2 >= 0 && + newX + totalWidth / 2 <= w && + newY - totalHeight / 2 >= 0 && + newY + totalHeight / 2 <= h ) { + boxPos[boxKey].x = newX; + boxPos[boxKey].y = newY; + } + const pos = calcBoxPos(boxKey); + g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + }); + draw(boxes); + }; + + Bangle.on('touch', touchHandler); + Bangle.on('drag', dragHandler); + + Bangle.setUI({ + mode : "clock", + remove : function() { + // Remove event handlers, stop draw timer, remove custom font if used + Bangle.removeListener('touch', touchHandler); + Bangle.removeListener('drag', dragHandler); + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + delete Graphics.prototype.setFontBrunoAce; + g.drawString = g_drawString; // Return to original without outlines + require("widget_utils").show(); + } + }); + loadCustomFont(); + draw(boxes); + }; + + // 11. Main execution part + Bangle.loadWidgets(); + require("widget_utils").swipeOn(); + setup(); + } + \ No newline at end of file diff --git a/apps/boxclk/screenshot-1.png b/apps/boxclk/screenshot-1.png index 91bf880c0bfb3a7d138f49c59280f6e11d6d0cb1..9b270178ec7f7429be099d26a6da548a8994af58 100644 GIT binary patch literal 6060 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 Scg@=X0000 { - let match = file.match(fileRegex); - if (match) { - let number = parseInt(match[1]); - if (number > maxNumber) { - maxNumber = number; - } - } - }); - return maxNumber + 1; -} - (function () { + let storage = require("Storage"); + let fileRegex = /^boxclk-(\d+)\.json$/; + let selectedConfig; let configs = {}; let hasDefaultConfig = false; + function getNextConfigNumber() { + let maxNumber = 0; + storage.list().forEach(file => { + let match = file.match(fileRegex); + if (match) { + let number = parseInt(match[1]); + if (number > maxNumber) { + maxNumber = number; + } + } + }); + return maxNumber + 1; + } + function handleSelection(config) { return function () { selectedConfig = config === "Default" ? 0 : config; @@ -72,4 +71,4 @@ function getNextConfigNumber() { }); E.showMenu(menu); -})(); +}); From e3cab1d4e6d19f54256a272f7b51e545880ab5e9 Mon Sep 17 00:00:00 2001 From: stweedo Date: Fri, 16 Jun 2023 23:34:50 -0500 Subject: [PATCH 1471/1725] Formatting --- apps/boxclk/app.js | 479 ++++++++++++++++++++++----------------------- 1 file changed, 239 insertions(+), 240 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 1647bd731..5cadac83d 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -1,242 +1,241 @@ { // 1. Module dependencies and initial configurations - let storage = require("Storage"); - let locale = require("locale"); - let date = new Date(); - let bgImage; - let configNumber = (storage.readJSON("boxclk.json", 1) || {}).selectedConfig || 0; - let fileName = 'boxclk' + (configNumber > 0 ? `-${configNumber}` : '') + '.json'; - let boxesConfig = storage.readJSON(fileName, 1) || {}; - let boxes = {}; - let boxPos = {}; - let isDragging = {}; - let wasDragging = {}; - - // 2. Graphical and visual configurations - let w = g.getWidth(); - let h = g.getHeight(); - let totalWidth, totalHeight; - let enableSuffix = true; - let drawTimeout; - - // 3. Handlers - let touchHandler; - let dragHandler; - - // 4. Font loading function - let loadCustomFont = function() { - Graphics.prototype.setFontBrunoAce = function() { - // Actual height 23 (24 - 2) - return this.setFontCustom( - E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), - 46, - atob("CBEdChgYGhgaGBsaCQ=="), - 32|65536 - ); - }; - }; - - // 5. Initial settings of boxes and their positions - for (let key in boxesConfig) { - if (key === 'bg' && boxesConfig[key].img) { - bgImage = storage.read(boxesConfig[key].img); - } else if (key !== 'selectedConfig') { - boxes[key] = Object.assign({}, boxesConfig[key]); - } - } - - Object.keys(boxes).forEach((key) => { - let boxConfig = boxes[key]; - boxPos[key] = { - x: w * boxConfig.boxPos.x, - y: h * boxConfig.boxPos.y - }; - isDragging[key] = false; - wasDragging[key] = false; - }); - - // 6. Text and drawing functions - let g_drawString = g.drawString; - g.drawString = function(box, str, x, y) { - outlineText(box, str, x, y); - g.setColor(box.color); - g_drawString.call(g, str, x, y); - }; - - let outlineText = function(box, str, x, y) { - let px = box.outline; - let dx = [-px, 0, px, -px, px, -px, 0, px]; - let dy = [-px, -px, -px, 0, 0, px, px, px]; - g.setColor(box.outlineColor); - for (let i = 0; i < dx.length; i++) { - g_drawString.call(g, str, x + dx[i], y + dy[i]); - } - }; - - let calcBoxSize = function(boxItem) { - g.reset(); - g.setFontAlign(0,0); - g.setFont(boxItem.font, boxItem.fontSize); - let strWidth = g.stringWidth(boxItem.string) + 2 * boxItem.outline; - let fontHeight = g.getFontHeight() + 2 * boxItem.outline; - totalWidth = strWidth + 2 * boxItem.xPadding; - totalHeight = fontHeight + 2 * boxItem.yPadding; - }; - - let calcBoxPos = function(boxKey) { - return { - x1: boxPos[boxKey].x - totalWidth / 2, - y1: boxPos[boxKey].y - totalHeight / 2, - x2: boxPos[boxKey].x + totalWidth / 2, - y2: boxPos[boxKey].y + totalHeight / 2 - }; - }; - - // 7. Date and time related functions - let getDate = function() { - const date = new Date(); - const dayOfMonth = date.getDate(); - const month = locale.month(date, 1); - const year = date.getFullYear(); - let suffix; - if ([1, 21, 31].includes(dayOfMonth)) { - suffix = "st"; - } else if ([2, 22].includes(dayOfMonth)) { - suffix = "nd"; - } else if ([3, 23].includes(dayOfMonth)) { - suffix = "rd"; - } else { - suffix = "th"; - } - let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; - return month + " " + dayOfMonthStr + ", " + year; - }; - - let getDayOfWeek = function(date) { - return locale.dow(date, 0); - }; - - // 8. Main draw function - let draw = function(boxes) { - date = new Date(); - g.clear(); - if (bgImage) { - g.drawImage(bgImage, 0, 0); - } - if (boxes.time) { - boxes.time.string = locale.time(date, 1); - } - if (boxes.date) { - boxes.date.string = getDate(); - } - if (boxes.dow) { - boxes.dow.string = getDayOfWeek(date); - } - if (boxes.batt) { - boxes.batt.string = E.getBattery() + "%"; - } - Object.keys(boxes).forEach((boxKey) => { - let boxItem = boxes[boxKey]; - calcBoxSize(boxItem); - const pos = calcBoxPos(boxKey); - if (isDragging[boxKey]) { - g.setColor(boxItem.border); - g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2); - } - g.drawString( - boxItem, - boxItem.string, - boxPos[boxKey].x + boxItem.xOffset, - boxPos[boxKey].y + boxItem.yOffset - ); - }); - if (!Object.values(isDragging).some(Boolean)) { - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000)); - } - }; - - // 9. Helper function for touch event - let touchInText = function(e, boxItem, boxKey) { - calcBoxSize(boxItem); - const pos = calcBoxPos(boxKey); - return e.x >= pos.x1 && - e.x <= pos.x2 && - e.y >= pos.y1 && - e.y <= pos.y2; - }; - - // 10. Setup function to configure event handlers - let setup = function() { - // Define the touchHandler function - touchHandler = function(zone, e) { - wasDragging = Object.assign({}, isDragging); - let boxTouched = false; - Object.keys(boxes).forEach((boxKey) => { - if (touchInText(e, boxes[boxKey], boxKey)) { - isDragging[boxKey] = true; - wasDragging[boxKey] = true; - boxTouched = true; - } - }); - if (!boxTouched) { - Object.keys(isDragging).forEach((boxKey) => { - isDragging[boxKey] = false; - }); - require("widget_utils").show(); - require("widget_utils").swipeOn(); - } - if (Object.values(wasDragging).some(Boolean) || !boxTouched) { - draw(boxes); - } - }; - - // Define the dragHandler function - dragHandler = function(e) { - Object.keys(boxes).forEach((boxKey) => { - if (isDragging[boxKey]) { - require("widget_utils").hide(); - let boxItem = boxes[boxKey]; - calcBoxSize(boxItem); - let newX = boxPos[boxKey].x + e.dx; - let newY = boxPos[boxKey].y + e.dy; - if (newX - totalWidth / 2 >= 0 && - newX + totalWidth / 2 <= w && - newY - totalHeight / 2 >= 0 && - newY + totalHeight / 2 <= h ) { - boxPos[boxKey].x = newX; - boxPos[boxKey].y = newY; - } - const pos = calcBoxPos(boxKey); - g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); - } - }); - draw(boxes); - }; - - Bangle.on('touch', touchHandler); - Bangle.on('drag', dragHandler); - - Bangle.setUI({ - mode : "clock", - remove : function() { - // Remove event handlers, stop draw timer, remove custom font if used - Bangle.removeListener('touch', touchHandler); - Bangle.removeListener('drag', dragHandler); - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = undefined; - delete Graphics.prototype.setFontBrunoAce; - g.drawString = g_drawString; // Return to original without outlines - require("widget_utils").show(); - } - }); - loadCustomFont(); - draw(boxes); - }; - - // 11. Main execution part - Bangle.loadWidgets(); - require("widget_utils").swipeOn(); - setup(); - } - \ No newline at end of file + let storage = require("Storage"); + let locale = require("locale"); + let date = new Date(); + let bgImage; + let configNumber = (storage.readJSON("boxclk.json", 1) || {}).selectedConfig || 0; + let fileName = 'boxclk' + (configNumber > 0 ? `-${configNumber}` : '') + '.json'; + let boxesConfig = storage.readJSON(fileName, 1) || {}; + let boxes = {}; + let boxPos = {}; + let isDragging = {}; + let wasDragging = {}; + + // 2. Graphical and visual configurations + let w = g.getWidth(); + let h = g.getHeight(); + let totalWidth, totalHeight; + let enableSuffix = true; + let drawTimeout; + + // 3. Handlers + let touchHandler; + let dragHandler; + + // 4. Font loading function + let loadCustomFont = function() { + Graphics.prototype.setFontBrunoAce = function() { + // Actual height 23 (24 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), + 46, + atob("CBEdChgYGhgaGBsaCQ=="), + 32|65536 + ); + }; + }; + + // 5. Initial settings of boxes and their positions + for (let key in boxesConfig) { + if (key === 'bg' && boxesConfig[key].img) { + bgImage = storage.read(boxesConfig[key].img); + } else if (key !== 'selectedConfig') { + boxes[key] = Object.assign({}, boxesConfig[key]); + } + } + + Object.keys(boxes).forEach((key) => { + let boxConfig = boxes[key]; + boxPos[key] = { + x: w * boxConfig.boxPos.x, + y: h * boxConfig.boxPos.y + }; + isDragging[key] = false; + wasDragging[key] = false; + }); + + // 6. Text and drawing functions + let g_drawString = g.drawString; + g.drawString = function(box, str, x, y) { + outlineText(box, str, x, y); + g.setColor(box.color); + g_drawString.call(g, str, x, y); + }; + + let outlineText = function(box, str, x, y) { + let px = box.outline; + let dx = [-px, 0, px, -px, px, -px, 0, px]; + let dy = [-px, -px, -px, 0, 0, px, px, px]; + g.setColor(box.outlineColor); + for (let i = 0; i < dx.length; i++) { + g_drawString.call(g, str, x + dx[i], y + dy[i]); + } + }; + + let calcBoxSize = function(boxItem) { + g.reset(); + g.setFontAlign(0,0); + g.setFont(boxItem.font, boxItem.fontSize); + let strWidth = g.stringWidth(boxItem.string) + 2 * boxItem.outline; + let fontHeight = g.getFontHeight() + 2 * boxItem.outline; + totalWidth = strWidth + 2 * boxItem.xPadding; + totalHeight = fontHeight + 2 * boxItem.yPadding; + }; + + let calcBoxPos = function(boxKey) { + return { + x1: boxPos[boxKey].x - totalWidth / 2, + y1: boxPos[boxKey].y - totalHeight / 2, + x2: boxPos[boxKey].x + totalWidth / 2, + y2: boxPos[boxKey].y + totalHeight / 2 + }; + }; + + // 7. Date and time related functions + let getDate = function() { + const date = new Date(); + const dayOfMonth = date.getDate(); + const month = locale.month(date, 1); + const year = date.getFullYear(); + let suffix; + if ([1, 21, 31].includes(dayOfMonth)) { + suffix = "st"; + } else if ([2, 22].includes(dayOfMonth)) { + suffix = "nd"; + } else if ([3, 23].includes(dayOfMonth)) { + suffix = "rd"; + } else { + suffix = "th"; + } + let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; + return month + " " + dayOfMonthStr + ", " + year; + }; + + let getDayOfWeek = function(date) { + return locale.dow(date, 0); + }; + + // 8. Main draw function + let draw = function(boxes) { + date = new Date(); + g.clear(); + if (bgImage) { + g.drawImage(bgImage, 0, 0); + } + if (boxes.time) { + boxes.time.string = locale.time(date, 1); + } + if (boxes.date) { + boxes.date.string = getDate(); + } + if (boxes.dow) { + boxes.dow.string = getDayOfWeek(date); + } + if (boxes.batt) { + boxes.batt.string = E.getBattery() + "%"; + } + Object.keys(boxes).forEach((boxKey) => { + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + if (isDragging[boxKey]) { + g.setColor(boxItem.border); + g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + g.drawString( + boxItem, + boxItem.string, + boxPos[boxKey].x + boxItem.xOffset, + boxPos[boxKey].y + boxItem.yOffset + ); + }); + if (!Object.values(isDragging).some(Boolean)) { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000)); + } + }; + + // 9. Helper function for touch event + let touchInText = function(e, boxItem, boxKey) { + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + return e.x >= pos.x1 && + e.x <= pos.x2 && + e.y >= pos.y1 && + e.y <= pos.y2; + }; + + // 10. Setup function to configure event handlers + let setup = function() { + // Define the touchHandler function + touchHandler = function(zone, e) { + wasDragging = Object.assign({}, isDragging); + let boxTouched = false; + Object.keys(boxes).forEach((boxKey) => { + if (touchInText(e, boxes[boxKey], boxKey)) { + isDragging[boxKey] = true; + wasDragging[boxKey] = true; + boxTouched = true; + } + }); + if (!boxTouched) { + Object.keys(isDragging).forEach((boxKey) => { + isDragging[boxKey] = false; + }); + require("widget_utils").show(); + require("widget_utils").swipeOn(); + } + if (Object.values(wasDragging).some(Boolean) || !boxTouched) { + draw(boxes); + } + }; + + // Define the dragHandler function + dragHandler = function(e) { + Object.keys(boxes).forEach((boxKey) => { + if (isDragging[boxKey]) { + require("widget_utils").hide(); + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + let newX = boxPos[boxKey].x + e.dx; + let newY = boxPos[boxKey].y + e.dy; + if (newX - totalWidth / 2 >= 0 && + newX + totalWidth / 2 <= w && + newY - totalHeight / 2 >= 0 && + newY + totalHeight / 2 <= h ) { + boxPos[boxKey].x = newX; + boxPos[boxKey].y = newY; + } + const pos = calcBoxPos(boxKey); + g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + }); + draw(boxes); + }; + + Bangle.on('touch', touchHandler); + Bangle.on('drag', dragHandler); + + Bangle.setUI({ + mode : "clock", + remove : function() { + // Remove event handlers, stop draw timer, remove custom font if used + Bangle.removeListener('touch', touchHandler); + Bangle.removeListener('drag', dragHandler); + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + delete Graphics.prototype.setFontBrunoAce; + g.drawString = g_drawString; // Return to original without outlines + require("widget_utils").show(); + } + }); + loadCustomFont(); + draw(boxes); + }; + + // 11. Main execution part + Bangle.loadWidgets(); + require("widget_utils").swipeOn(); + setup(); +} From e94fc4368a82fbb7d9b75b7f756b5040036691c3 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 00:53:48 -0500 Subject: [PATCH 1472/1725] Add double tap to save positions --- apps/boxclk/settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/settings.js b/apps/boxclk/settings.js index 529bea02c..bf254a860 100644 --- a/apps/boxclk/settings.js +++ b/apps/boxclk/settings.js @@ -58,7 +58,7 @@ let menu = { '': { 'title': '-- Box Clock --' }, - '< Back': () => Bangle.showLauncher(), + '< Back': () => Bangle.showClock(), 'Cfg:': { value: selectedConfig === 0 ? "Default" : selectedConfig, format: () => selectedConfig === 0 ? "Default" : selectedConfig }, }; From a87e867681d692f5eebc0ddd7174e2d781ce4e4e Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 00:54:40 -0500 Subject: [PATCH 1473/1725] Add double tap to save positions --- apps/boxclk/app.js | 60 ++++++++++++++++++++++++++++++++-------------- 1 file changed, 42 insertions(+), 18 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 5cadac83d..fe5e6b212 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -4,13 +4,18 @@ let locale = require("locale"); let date = new Date(); let bgImage; + let configNumber = (storage.readJSON("boxclk.json", 1) || {}).selectedConfig || 0; let fileName = 'boxclk' + (configNumber > 0 ? `-${configNumber}` : '') + '.json'; let boxesConfig = storage.readJSON(fileName, 1) || {}; + let boxes = {}; let boxPos = {}; let isDragging = {}; let wasDragging = {}; + let doubleTapTimer = null; + + let saveIcon = require("heatshrink").decompress(atob("mEwwkEogA/AHdP/4AK+gWVDBQWNAAIuVGBAIB+UQdhMfGBAHBCxUAgIXHIwPyCxQwEJAgXB+MAl/zBwQGBn8ggQjBGAQXG+EA/4XI/8gBIQXTGAMPC6n/C6HzkREBC6YACC6QAFC57aHCYIXOOgLsEn4XPABIX/C6vykQAEl6/WgCQBC5imFAAT2BC5gCBI4oUCC5x0IC/4X/C4K8Bl4XJ+TCCC4wKBABkvC4tEEoMQCxcBB4IWEC4XyDBUBFwIXGJAIAOIwowDABoWGGB4uHDBwWJAH4AzA")); // 2. Graphical and visual configurations let w = g.getWidth(); @@ -19,7 +24,7 @@ let enableSuffix = true; let drawTimeout; - // 3. Handlers + // 3. Touchscreen Handlers let touchHandler; let dragHandler; @@ -170,25 +175,44 @@ let setup = function() { // Define the touchHandler function touchHandler = function(zone, e) { - wasDragging = Object.assign({}, isDragging); - let boxTouched = false; - Object.keys(boxes).forEach((boxKey) => { - if (touchInText(e, boxes[boxKey], boxKey)) { - isDragging[boxKey] = true; - wasDragging[boxKey] = true; - boxTouched = true; - } - }); - if (!boxTouched) { - Object.keys(isDragging).forEach((boxKey) => { - isDragging[boxKey] = false; + if (doubleTapTimer) { + clearTimeout(doubleTapTimer); + doubleTapTimer = null; + Object.keys(boxPos).forEach((boxKey) => { + boxesConfig[boxKey].boxPos.x = boxPos[boxKey].x / w; + boxesConfig[boxKey].boxPos.y = boxPos[boxKey].y / h; }); - require("widget_utils").show(); - require("widget_utils").swipeOn(); - } - if (Object.values(wasDragging).some(Boolean) || !boxTouched) { - draw(boxes); + storage.write(fileName, JSON.stringify(boxesConfig)); + g.drawImage(saveIcon, w / 2 - 24, h / 2 - 24); + // Display save icon for 2 seconds + setTimeout(() => { + g.clearRect(w / 2 - 24, h / 2 - 24, w / 2 + 24, h / 2 + 24); + draw(boxes); + }, 2000); + return; } + doubleTapTimer = setTimeout(() => { + doubleTapTimer = null; + wasDragging = Object.assign({}, isDragging); + let boxTouched = false; + Object.keys(boxes).forEach((boxKey) => { + if (touchInText(e, boxes[boxKey], boxKey)) { + isDragging[boxKey] = true; + wasDragging[boxKey] = true; + boxTouched = true; + } + }); + if (!boxTouched) { + Object.keys(isDragging).forEach((boxKey) => { + isDragging[boxKey] = false; + }); + require("widget_utils").show(); + require("widget_utils").swipeOn(); + } + if (Object.values(wasDragging).some(Boolean) || !boxTouched) { + draw(boxes); + } + }, 300); // Increase or decrease this value based on the desired double tap timing }; // Define the dragHandler function From 4c897f4bea0da3a9ef383e585a6c7f59e55def50 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 00:57:08 -0500 Subject: [PATCH 1474/1725] Update screenshot --- apps/boxclk/screenshot-1.png | Bin 6060 -> 5798 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/apps/boxclk/screenshot-1.png b/apps/boxclk/screenshot-1.png index 9b270178ec7f7429be099d26a6da548a8994af58..18798bb30832743407fecba85c8d47431fd88260 100644 GIT binary patch literal 5798 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 literal 6060 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 Date: Sat, 17 Jun 2023 02:20:48 -0500 Subject: [PATCH 1475/1725] Removed some redundancy, better formatting --- apps/boxclk/settings.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/apps/boxclk/settings.js b/apps/boxclk/settings.js index bf254a860..c7f0eed21 100644 --- a/apps/boxclk/settings.js +++ b/apps/boxclk/settings.js @@ -40,8 +40,8 @@ } else if (file === "boxclk.json") { hasDefaultConfig = true; let defaultConfig = storage.readJSON(file, 1); - if (defaultConfig && defaultConfig.selectedConfig) { - selectedConfig = defaultConfig.selectedConfig === 0 ? 0 : defaultConfig.selectedConfig; + if (defaultConfig && defaultConfig.selectedConfig != null) { + selectedConfig = defaultConfig.selectedConfig; } } }); @@ -59,7 +59,10 @@ let menu = { '': { 'title': '-- Box Clock --' }, '< Back': () => Bangle.showClock(), - 'Cfg:': { value: selectedConfig === 0 ? "Default" : selectedConfig, format: () => selectedConfig === 0 ? "Default" : selectedConfig }, + 'Cfg:': { + value: selectedConfig === 0 ? "Default" : selectedConfig, + format: () => selectedConfig === 0 ? "Default" : selectedConfig + } }; if (hasDefaultConfig) { From ecbc70cf8836ca0910b39c3788ce3b104f60d399 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 13:21:16 -0500 Subject: [PATCH 1476/1725] Add threshhold to distinguish touch and drag --- apps/boxclk/app.js | 128 ++++++++++++++++++++++++++------------------- 1 file changed, 75 insertions(+), 53 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index fe5e6b212..6b5072b33 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -27,6 +27,7 @@ // 3. Touchscreen Handlers let touchHandler; let dragHandler; + let movementDistance = 0; // 4. Font loading function let loadCustomFont = function() { @@ -171,71 +172,92 @@ e.y <= pos.y2; }; + let deselectAllBoxes = function() { + Object.keys(isDragging).forEach((boxKey) => { + isDragging[boxKey] = false; + }); + require("widget_utils").show(); + require("widget_utils").swipeOn(); + }; + + let displaySaveIcon = function() { + g.drawImage(saveIcon, w / 2 - 24, h / 2 - 24); + // Display save icon for 2 seconds + setTimeout(() => { + g.clearRect(w / 2 - 24, h / 2 - 24, w / 2 + 24, h / 2 + 24); + draw(boxes); + }, 2000); + }; + // 10. Setup function to configure event handlers let setup = function() { // Define the touchHandler function touchHandler = function(zone, e) { - if (doubleTapTimer) { - clearTimeout(doubleTapTimer); - doubleTapTimer = null; - Object.keys(boxPos).forEach((boxKey) => { - boxesConfig[boxKey].boxPos.x = boxPos[boxKey].x / w; - boxesConfig[boxKey].boxPos.y = boxPos[boxKey].y / h; - }); - storage.write(fileName, JSON.stringify(boxesConfig)); - g.drawImage(saveIcon, w / 2 - 24, h / 2 - 24); - // Display save icon for 2 seconds - setTimeout(() => { - g.clearRect(w / 2 - 24, h / 2 - 24, w / 2 + 24, h / 2 + 24); - draw(boxes); - }, 2000); - return; + wasDragging = Object.assign({}, isDragging); + let boxTouched = false; + Object.keys(boxes).forEach((boxKey) => { + if (touchInText(e, boxes[boxKey], boxKey)) { + isDragging[boxKey] = true; + wasDragging[boxKey] = true; + boxTouched = true; + } + }); + if (!boxTouched) { + if (!Object.values(isDragging).some(Boolean)) { // check if no boxes are being dragged + deselectAllBoxes(); + if (doubleTapTimer) { + clearTimeout(doubleTapTimer); + doubleTapTimer = null; + // Save boxesConfig on double tap outside of any box and when no boxes are being dragged + Object.keys(boxPos).forEach((boxKey) => { + boxesConfig[boxKey].boxPos.x = boxPos[boxKey].x / w; + boxesConfig[boxKey].boxPos.y = boxPos[boxKey].y / h; + }); + storage.write(fileName, JSON.stringify(boxesConfig)); + displaySaveIcon(); + return; + } + } else { + // if any box is being dragged, just deselect all without saving + deselectAllBoxes(); + } + } + if (Object.values(wasDragging).some(Boolean) || !boxTouched) { + draw(boxes); } doubleTapTimer = setTimeout(() => { doubleTapTimer = null; - wasDragging = Object.assign({}, isDragging); - let boxTouched = false; - Object.keys(boxes).forEach((boxKey) => { - if (touchInText(e, boxes[boxKey], boxKey)) { - isDragging[boxKey] = true; - wasDragging[boxKey] = true; - boxTouched = true; - } - }); - if (!boxTouched) { - Object.keys(isDragging).forEach((boxKey) => { - isDragging[boxKey] = false; - }); - require("widget_utils").show(); - require("widget_utils").swipeOn(); - } - if (Object.values(wasDragging).some(Boolean) || !boxTouched) { - draw(boxes); - } - }, 300); // Increase or decrease this value based on the desired double tap timing + }, 1000); // Increase or decrease this value based on the desired double tap timing + movementDistance = 0; }; // Define the dragHandler function dragHandler = function(e) { - Object.keys(boxes).forEach((boxKey) => { - if (isDragging[boxKey]) { - require("widget_utils").hide(); - let boxItem = boxes[boxKey]; - calcBoxSize(boxItem); - let newX = boxPos[boxKey].x + e.dx; - let newY = boxPos[boxKey].y + e.dy; - if (newX - totalWidth / 2 >= 0 && - newX + totalWidth / 2 <= w && - newY - totalHeight / 2 >= 0 && - newY + totalHeight / 2 <= h ) { - boxPos[boxKey].x = newX; - boxPos[boxKey].y = newY; + // Calculate the movement distance + movementDistance += Math.abs(e.dx) + Math.abs(e.dy); + + // Check if the movement distance exceeds a threshold + if (movementDistance > 5) { + Object.keys(boxes).forEach((boxKey) => { + if (isDragging[boxKey]) { + require("widget_utils").hide(); + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + let newX = boxPos[boxKey].x + e.dx; + let newY = boxPos[boxKey].y + e.dy; + if (newX - totalWidth / 2 >= 0 && + newX + totalWidth / 2 <= w && + newY - totalHeight / 2 >= 0 && + newY + totalHeight / 2 <= h ) { + boxPos[boxKey].x = newX; + boxPos[boxKey].y = newY; + } + const pos = calcBoxPos(boxKey); + g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); } - const pos = calcBoxPos(boxKey); - g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); - } - }); - draw(boxes); + }); + draw(boxes); + } }; Bangle.on('touch', touchHandler); From dd10287fe7c15e69582f0adfc43e1b18b0502592 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 13:39:56 -0500 Subject: [PATCH 1477/1725] Better looking comments --- apps/boxclk/app.js | 89 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 68 insertions(+), 21 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 6b5072b33..ed7392751 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -1,5 +1,9 @@ { - // 1. Module dependencies and initial configurations + /** + * --------------------------------------------------------------- + * 1. Module dependencies and initial configurations + * --------------------------------------------------------------- + */ let storage = require("Storage"); let locale = require("locale"); let date = new Date(); @@ -17,19 +21,31 @@ let saveIcon = require("heatshrink").decompress(atob("mEwwkEogA/AHdP/4AK+gWVDBQWNAAIuVGBAIB+UQdhMfGBAHBCxUAgIXHIwPyCxQwEJAgXB+MAl/zBwQGBn8ggQjBGAQXG+EA/4XI/8gBIQXTGAMPC6n/C6HzkREBC6YACC6QAFC57aHCYIXOOgLsEn4XPABIX/C6vykQAEl6/WgCQBC5imFAAT2BC5gCBI4oUCC5x0IC/4X/C4K8Bl4XJ+TCCC4wKBABkvC4tEEoMQCxcBB4IWEC4XyDBUBFwIXGJAIAOIwowDABoWGGB4uHDBwWJAH4AzA")); - // 2. Graphical and visual configurations + /** + * --------------------------------------------------------------- + * 2. Graphical and visual configurations + * --------------------------------------------------------------- + */ let w = g.getWidth(); let h = g.getHeight(); let totalWidth, totalHeight; let enableSuffix = true; let drawTimeout; - // 3. Touchscreen Handlers + /** + * --------------------------------------------------------------- + * 3. Touchscreen Handlers + * --------------------------------------------------------------- + */ let touchHandler; let dragHandler; let movementDistance = 0; - // 4. Font loading function + /** + * --------------------------------------------------------------- + * 4. Font loading function + * --------------------------------------------------------------- + */ let loadCustomFont = function() { Graphics.prototype.setFontBrunoAce = function() { // Actual height 23 (24 - 2) @@ -42,7 +58,11 @@ }; }; - // 5. Initial settings of boxes and their positions + /** + * --------------------------------------------------------------- + * 5. Initial settings of boxes and their positions + * --------------------------------------------------------------- + */ for (let key in boxesConfig) { if (key === 'bg' && boxesConfig[key].img) { bgImage = storage.read(boxesConfig[key].img); @@ -61,7 +81,11 @@ wasDragging[key] = false; }); - // 6. Text and drawing functions + /** + * --------------------------------------------------------------- + * 6. Text and drawing functions + * --------------------------------------------------------------- + */ let g_drawString = g.drawString; g.drawString = function(box, str, x, y) { outlineText(box, str, x, y); @@ -98,7 +122,20 @@ }; }; - // 7. Date and time related functions + let displaySaveIcon = function() { + g.drawImage(saveIcon, w / 2 - 24, h / 2 - 24); + // Display save icon for 2 seconds + setTimeout(() => { + g.clearRect(w / 2 - 24, h / 2 - 24, w / 2 + 24, h / 2 + 24); + draw(boxes); + }, 2000); + }; + + /** + * --------------------------------------------------------------- + * 7. Date and time related functions + * --------------------------------------------------------------- + */ let getDate = function() { const date = new Date(); const dayOfMonth = date.getDate(); @@ -122,7 +159,11 @@ return locale.dow(date, 0); }; - // 8. Main draw function + /** + * --------------------------------------------------------------- + * 8. Main draw function + * --------------------------------------------------------------- + */ let draw = function(boxes) { date = new Date(); g.clear(); @@ -162,7 +203,11 @@ } }; - // 9. Helper function for touch event + /** + * --------------------------------------------------------------- + * 9. Helper function for touch event + * --------------------------------------------------------------- + */ let touchInText = function(e, boxItem, boxKey) { calcBoxSize(boxItem); const pos = calcBoxPos(boxKey); @@ -180,18 +225,15 @@ require("widget_utils").swipeOn(); }; - let displaySaveIcon = function() { - g.drawImage(saveIcon, w / 2 - 24, h / 2 - 24); - // Display save icon for 2 seconds - setTimeout(() => { - g.clearRect(w / 2 - 24, h / 2 - 24, w / 2 + 24, h / 2 + 24); - draw(boxes); - }, 2000); - }; - - // 10. Setup function to configure event handlers + /** + * --------------------------------------------------------------- + * 10. Setup function to configure event handlers + * --------------------------------------------------------------- + */ let setup = function() { + // ------------------------------------ // Define the touchHandler function + // ------------------------------------ touchHandler = function(zone, e) { wasDragging = Object.assign({}, isDragging); let boxTouched = false; @@ -231,11 +273,12 @@ movementDistance = 0; }; + // ------------------------------------ // Define the dragHandler function + // ------------------------------------ dragHandler = function(e) { // Calculate the movement distance movementDistance += Math.abs(e.dx) + Math.abs(e.dy); - // Check if the movement distance exceeds a threshold if (movementDistance > 5) { Object.keys(boxes).forEach((boxKey) => { @@ -280,7 +323,11 @@ draw(boxes); }; - // 11. Main execution part + /** + * --------------------------------------------------------------- + * 11. Main execution part + * --------------------------------------------------------------- + */ Bangle.loadWidgets(); require("widget_utils").swipeOn(); setup(); From 28431c1b51752803efba54f56e6ce50bdbd26bd3 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 13:46:06 -0500 Subject: [PATCH 1478/1725] Load box keys only once per app load, not per draw --- apps/boxclk/app.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index ed7392751..bdb291aa7 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -71,7 +71,9 @@ } } - Object.keys(boxes).forEach((key) => { + let boxKeys = Object.keys(boxes); + + boxKeys.forEach((key) => { let boxConfig = boxes[key]; boxPos[key] = { x: w * boxConfig.boxPos.x, @@ -182,7 +184,7 @@ if (boxes.batt) { boxes.batt.string = E.getBattery() + "%"; } - Object.keys(boxes).forEach((boxKey) => { + boxKeys.forEach((boxKey) => { let boxItem = boxes[boxKey]; calcBoxSize(boxItem); const pos = calcBoxPos(boxKey); @@ -237,7 +239,7 @@ touchHandler = function(zone, e) { wasDragging = Object.assign({}, isDragging); let boxTouched = false; - Object.keys(boxes).forEach((boxKey) => { + boxKeys.forEach((boxKey) => { if (touchInText(e, boxes[boxKey], boxKey)) { isDragging[boxKey] = true; wasDragging[boxKey] = true; @@ -281,7 +283,7 @@ movementDistance += Math.abs(e.dx) + Math.abs(e.dy); // Check if the movement distance exceeds a threshold if (movementDistance > 5) { - Object.keys(boxes).forEach((boxKey) => { + boxKeys.forEach((boxKey) => { if (isDragging[boxKey]) { require("widget_utils").hide(); let boxItem = boxes[boxKey]; From 7b4d9d0e083ed0c32d78852b87a986860bc9eb0f Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 14:04:04 -0500 Subject: [PATCH 1479/1725] Add double tap to save info to README --- apps/boxclk/README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 7a0f3bb81..9e26830a2 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -8,6 +8,10 @@ __Drag & Drop:__ This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. +__Double Tap to Save:__ + +After you've found the perfect position for your boxes, you can save their positions with a quick double tap on the background. This makes it easy to ensure your custom layout is stored for future use. A save icon will appear momentarily to confirm that your configuration has been saved. + __JSON Configuration:__ Each box can be customized extensively via a simple JSON configuration. You can also add a custom text string to your configuration with the "string" attribute. Here's what an example configuration might look like: From a3b9cf2eadda063be5347df216312529b7372f91 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 14:51:09 -0500 Subject: [PATCH 1480/1725] Check config exists, else default to 'boxclk.json' --- apps/boxclk/app.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index bdb291aa7..e715ad8c0 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -11,6 +11,10 @@ let configNumber = (storage.readJSON("boxclk.json", 1) || {}).selectedConfig || 0; let fileName = 'boxclk' + (configNumber > 0 ? `-${configNumber}` : '') + '.json'; + // Add a condition to check if the file exists, if it does not, default to 'boxclk.json' + if (!storage.read(fileName)) { + fileName = 'boxclk.json'; + } let boxesConfig = storage.readJSON(fileName, 1) || {}; let boxes = {}; From 85bfc38b43e780ee981b85197b1f8703c422cb95 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 14:59:32 -0500 Subject: [PATCH 1481/1725] Change border color for battery percent to white --- apps/boxclk/boxclk.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/boxclk.json b/apps/boxclk/boxclk.json index 047ab6224..ecb548168 100644 --- a/apps/boxclk/boxclk.json +++ b/apps/boxclk/boxclk.json @@ -44,7 +44,7 @@ "outline": 1, "color": "#0ff", "outlineColor": "#000", - "border": "#000", + "border": "#fff", "xPadding": -0.5, "yPadding": -0.5, "xOffset": 2, From fd2102155fc51a11370c44b90fcb76d420e3181b Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 15:07:39 -0500 Subject: [PATCH 1482/1725] Handle case where config file doesn't exist --- apps/boxclk/settings.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/boxclk/settings.js b/apps/boxclk/settings.js index c7f0eed21..9c597c2d8 100644 --- a/apps/boxclk/settings.js +++ b/apps/boxclk/settings.js @@ -41,7 +41,17 @@ hasDefaultConfig = true; let defaultConfig = storage.readJSON(file, 1); if (defaultConfig && defaultConfig.selectedConfig != null) { - selectedConfig = defaultConfig.selectedConfig; + // Check if corresponding config file exists + let configFileName = 'boxclk-' + defaultConfig.selectedConfig + '.json'; + if (storage.read(configFileName)) { + // If it exists, assign selectedConfig + selectedConfig = defaultConfig.selectedConfig; + } else { + // If it does not exist, set selectedConfig to 0 and update boxclk.json + defaultConfig.selectedConfig = 0; + storage.writeJSON("boxclk.json", defaultConfig); + selectedConfig = 0; + } } } }); From 870d81eea7ddb117e745d0d627ed0066e0257ddc Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 15:43:19 -0500 Subject: [PATCH 1483/1725] Shift default positions left a little --- apps/boxclk/boxclk.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/boxclk/boxclk.json b/apps/boxclk/boxclk.json index ecb548168..e3db1b602 100644 --- a/apps/boxclk/boxclk.json +++ b/apps/boxclk/boxclk.json @@ -6,11 +6,11 @@ "color": "#000", "outlineColor": "#fff", "border": "#000", - "xPadding": 1, + "xPadding": 0, "yPadding": -4, "xOffset": 0, "yOffset": 3, - "boxPos": { "x": 0.65, "y": 0.16 } + "boxPos": { "x": 0.633, "y": 0.16 } }, "dow": { "font": "6x8", @@ -23,7 +23,7 @@ "yPadding": 0.5, "xOffset": 1, "yOffset": 1, - "boxPos": { "x": 0.65, "y": 0.3 } + "boxPos": { "x": 0.633, "y": 0.3 } }, "date": { "font": "6x8", @@ -36,7 +36,7 @@ "yPadding": 0.5, "xOffset": 1, "yOffset": 1, - "boxPos": { "x": 0.65, "y": 0.39 } + "boxPos": { "x": 0.633, "y": 0.39 } }, "batt": { "font": "4x6", From a862fdd5673f291cfa7e66d38045383e355409ab Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 15:58:00 -0500 Subject: [PATCH 1484/1725] Made require widget_utils a variable --- apps/boxclk/app.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index e715ad8c0..63822f5ef 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -6,6 +6,7 @@ */ let storage = require("Storage"); let locale = require("locale"); + let widgets = require("widget_utils"); let date = new Date(); let bgImage; @@ -227,8 +228,8 @@ Object.keys(isDragging).forEach((boxKey) => { isDragging[boxKey] = false; }); - require("widget_utils").show(); - require("widget_utils").swipeOn(); + widgets.show(); + widgets.swipeOn(); }; /** @@ -289,7 +290,7 @@ if (movementDistance > 5) { boxKeys.forEach((boxKey) => { if (isDragging[boxKey]) { - require("widget_utils").hide(); + widgets.hide(); let boxItem = boxes[boxKey]; calcBoxSize(boxItem); let newX = boxPos[boxKey].x + e.dx; @@ -322,7 +323,7 @@ drawTimeout = undefined; delete Graphics.prototype.setFontBrunoAce; g.drawString = g_drawString; // Return to original without outlines - require("widget_utils").show(); + widgets.show(); } }); loadCustomFont(); @@ -335,6 +336,6 @@ * --------------------------------------------------------------- */ Bangle.loadWidgets(); - require("widget_utils").swipeOn(); + widgets.swipeOn(); setup(); } From a23a24c67a5ee905d832e6086aa5508369a6bee2 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sat, 17 Jun 2023 17:00:52 -0500 Subject: [PATCH 1485/1725] Reduce timeout to prevent accidental saves --- apps/boxclk/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 63822f5ef..a44f91320 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -276,7 +276,7 @@ } doubleTapTimer = setTimeout(() => { doubleTapTimer = null; - }, 1000); // Increase or decrease this value based on the desired double tap timing + }, 500); // Increase or decrease this value based on the desired double tap timing movementDistance = 0; }; From de84e0890d10b44adb3e5d8ca1c398a12d857b36 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 18 Jun 2023 08:03:36 -0500 Subject: [PATCH 1486/1725] Prevents widgets from showing on save --- apps/boxclk/app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index a44f91320..1084751c8 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -130,6 +130,7 @@ }; let displaySaveIcon = function() { + draw(boxes); g.drawImage(saveIcon, w / 2 - 24, h / 2 - 24); // Display save icon for 2 seconds setTimeout(() => { From d912afbb9776d91736ab6f4caca5f91228593d1f Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sun, 18 Jun 2023 23:06:56 +0200 Subject: [PATCH 1487/1725] swscroll: pull in changes from showScroller_Q3 --- apps/swscroll/ChangeLog | 1 + apps/swscroll/boot.js | 38 +++++++++++++++++++++---------------- apps/swscroll/metadata.json | 2 +- 3 files changed, 24 insertions(+), 17 deletions(-) diff --git a/apps/swscroll/ChangeLog b/apps/swscroll/ChangeLog index b35c27001..1adab01bb 100644 --- a/apps/swscroll/ChangeLog +++ b/apps/swscroll/ChangeLog @@ -1,4 +1,5 @@ 0.01: Inital release. 0.02: Rebasing on latest changes to showScroller_Q3 (https://github.com/espruino/Espruino/commit/2d3c34ef7c2b9fe2118e816aacd2e096adb99596). 0.03: Rebasing on latest changes to showScroller_Q3 (https://github.com/espruino/Espruino/commit/b6f8105b6348bb6f7cd03ac11efc1f3585c6ad79). Ensure that changing a menu item when half-scrolled off screen doesn't overwrite widgets. +0.04: Rebasing on latest changes to showScroller_Q3 (https://github.com/espruino/Espruino/commit/a0e2d9231df709849f81abf572a742b0fceab85b). Fixes missing `isActive` function that caused an error. diff --git a/apps/swscroll/boot.js b/apps/swscroll/boot.js index 57a5d8fb3..3c4b55817 100644 --- a/apps/swscroll/boot.js +++ b/apps/swscroll/boot.js @@ -10,12 +10,25 @@ E.showScroller = (function(options) { } returns { - draw = draw all - drawItem(idx) = draw specific item + scroll: int // current scroll amount + draw: function() // draw all + drawItem : function(idx) // draw specific item + isActive : function() // is this scroller still active? } + */ if (!options) return Bangle.setUI(); // remove existing handlers +var touchHandler = (_,e)=>{ + if (e.y=0) && i{ - if (e.y=0) && i { g.reset().clearRect(R.x,R.y,R.x2,R.y2); @@ -98,7 +103,8 @@ var s = { g.reset().setClipRect(R.x,Math.max(y,R.y),R.x2,Math.min(y+options.h,R.y2)); options.draw(i, {x:R.x,y:y,w:R.w,h:options.h}); g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); -}}; + }, isActive : () => Bangle.touchHandler == touchHandler + }; var rScroll = s.scroll&~1; // rendered menu scroll (we only shift by 2 because of dither) s.draw(); // draw the full scroller g.flip(); // force an update now to make this snappier diff --git a/apps/swscroll/metadata.json b/apps/swscroll/metadata.json index eff55e4bd..3258b9b21 100644 --- a/apps/swscroll/metadata.json +++ b/apps/swscroll/metadata.json @@ -1,7 +1,7 @@ { "id": "swscroll", "name": "Swipe menus", - "version": "0.03", + "version": "0.04", "description": "Replace built in E.showScroller to act on swipe instead of drag. Navigate menus in discrete steps instead of a continuous motion.", "readme": "README.md", "icon": "app.png", From 0612dfef60f9c1b6c8a6a25867c2678bff8be20d Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 18 Jun 2023 17:47:36 -0500 Subject: [PATCH 1488/1725] Update README.md - mention ability to match theme colors --- apps/boxclk/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 9e26830a2..f9ed9c3d9 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -25,9 +25,9 @@ Each box can be customized extensively via a simple JSON configuration. You can "font": "CustomFont", // Custom fonts must be in main program and removed in setUI "fontSize": 1, "outline": 2, - "color": "#FF9900", - "outlineColor": "#fff", - "border": "#000", + "color": "#FF9900", // You can use 6-digit or 3-digit hex color code + "outlineColor": "bgH", // You can match system theme colors like this + "border": 65535, // Or use 16-bit decimal color codes like this "xPadding": 1, "yPadding": -4, "xOffset": 0, From cac07237d47cf787f20422c60f2f386a5302129c Mon Sep 17 00:00:00 2001 From: stweedo Date: Sun, 18 Jun 2023 17:49:41 -0500 Subject: [PATCH 1489/1725] Can now set and match theme colors from config --- apps/boxclk/app.js | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index a44f91320..f0003ce24 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -93,6 +93,20 @@ * 6. Text and drawing functions * --------------------------------------------------------------- */ + + // Overwrite the setColor function to allow the + // use of (x) in g.theme.x as a string + // in your JSON config ("fg", "bg", "fg2", "bg2", "fgH", "bgH") + let g_setColor = g.setColor; + g.setColor = function(color) { + if (typeof color === "string" && color in g.theme) { + g_setColor.call(g, g.theme[color]); + } else { + g_setColor.call(g, color); + } + }; + + // Overwrite the drawString function let g_drawString = g.drawString; g.drawString = function(box, str, x, y) { outlineText(box, str, x, y); @@ -130,6 +144,7 @@ }; let displaySaveIcon = function() { + draw(boxes); g.drawImage(saveIcon, w / 2 - 24, h / 2 - 24); // Display save icon for 2 seconds setTimeout(() => { @@ -259,8 +274,8 @@ doubleTapTimer = null; // Save boxesConfig on double tap outside of any box and when no boxes are being dragged Object.keys(boxPos).forEach((boxKey) => { - boxesConfig[boxKey].boxPos.x = boxPos[boxKey].x / w; - boxesConfig[boxKey].boxPos.y = boxPos[boxKey].y / h; + boxesConfig[boxKey].boxPos.x = (boxPos[boxKey].x / w).toFixed(3); + boxesConfig[boxKey].boxPos.y = (boxPos[boxKey].y / h).toFixed(3); }); storage.write(fileName, JSON.stringify(boxesConfig)); displaySaveIcon(); @@ -322,7 +337,10 @@ if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; delete Graphics.prototype.setFontBrunoAce; - g.drawString = g_drawString; // Return to original without outlines + // Restore original drawString function (no outlines) + g.drawString = g_drawString; + // Restore original setColor function (no string filtering) + g.setColor = g_setColor; widgets.show(); } }); From ce11203a124588531d10751601498ec3439328f3 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sun, 18 Jun 2023 17:53:55 -0500 Subject: [PATCH 1490/1725] Add missing "s" --- apps/boxclk/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index f9ed9c3d9..aa43cf5a0 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -25,7 +25,7 @@ Each box can be customized extensively via a simple JSON configuration. You can "font": "CustomFont", // Custom fonts must be in main program and removed in setUI "fontSize": 1, "outline": 2, - "color": "#FF9900", // You can use 6-digit or 3-digit hex color code + "color": "#FF9900", // You can use 6-digit or 3-digit hex color codes "outlineColor": "bgH", // You can match system theme colors like this "border": 65535, // Or use 16-bit decimal color codes like this "xPadding": 1, From c294a974e03b386a30a79b33fb73e2ab285f33b0 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sun, 18 Jun 2023 19:11:48 -0500 Subject: [PATCH 1491/1725] Fix bug if using theme colors w/ modded g.setColor --- apps/boxclk/app.js | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index f0003ce24..d0d1418d1 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -9,7 +9,6 @@ let widgets = require("widget_utils"); let date = new Date(); let bgImage; - let configNumber = (storage.readJSON("boxclk.json", 1) || {}).selectedConfig || 0; let fileName = 'boxclk' + (configNumber > 0 ? `-${configNumber}` : '') + '.json'; // Add a condition to check if the file exists, if it does not, default to 'boxclk.json' @@ -17,12 +16,12 @@ fileName = 'boxclk.json'; } let boxesConfig = storage.readJSON(fileName, 1) || {}; - let boxes = {}; let boxPos = {}; let isDragging = {}; let wasDragging = {}; let doubleTapTimer = null; + let g_setColor; let saveIcon = require("heatshrink").decompress(atob("mEwwkEogA/AHdP/4AK+gWVDBQWNAAIuVGBAIB+UQdhMfGBAHBCxUAgIXHIwPyCxQwEJAgXB+MAl/zBwQGBn8ggQjBGAQXG+EA/4XI/8gBIQXTGAMPC6n/C6HzkREBC6YACC6QAFC57aHCYIXOOgLsEn4XPABIX/C6vykQAEl6/WgCQBC5imFAAT2BC5gCBI4oUCC5x0IC/4X/C4K8Bl4XJ+TCCC4wKBABkvC4tEEoMQCxcBB4IWEC4XyDBUBFwIXGJAIAOIwowDABoWGGB4uHDBwWJAH4AzA")); @@ -97,12 +96,23 @@ // Overwrite the setColor function to allow the // use of (x) in g.theme.x as a string // in your JSON config ("fg", "bg", "fg2", "bg2", "fgH", "bgH") - let g_setColor = g.setColor; - g.setColor = function(color) { - if (typeof color === "string" && color in g.theme) { - g_setColor.call(g, g.theme[color]); - } else { - g_setColor.call(g, color); + let modSetColor = function() { + // Save the original setColor function + g_setColor = g.setColor; + // Overwrite setColor with the new function + g.setColor = function(color) { + if (typeof color === "string" && color in g.theme) { + g_setColor.call(g, g.theme[color]); + } else { + g_setColor.call(g, color); + } + }; + }; + + let restoreSetColor = function() { + // Restore the original setColor function + if (g_setColor) { + g.setColor = g_setColor; } }; @@ -243,8 +253,10 @@ Object.keys(isDragging).forEach((boxKey) => { isDragging[boxKey] = false; }); + restoreSetColor(); widgets.show(); widgets.swipeOn(); + modSetColor(); }; /** @@ -339,8 +351,7 @@ delete Graphics.prototype.setFontBrunoAce; // Restore original drawString function (no outlines) g.drawString = g_drawString; - // Restore original setColor function (no string filtering) - g.setColor = g_setColor; + restoreSetColor(); widgets.show(); } }); @@ -355,5 +366,6 @@ */ Bangle.loadWidgets(); widgets.swipeOn(); + modSetColor(); setup(); } From 4f31a7f9fdf048850f0854f0749ae360edb11196 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 18 Jun 2023 19:28:28 -0500 Subject: [PATCH 1492/1725] Update README.md - shorten comments --- apps/boxclk/README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index aa43cf5a0..341985135 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -22,12 +22,12 @@ Each box can be customized extensively via a simple JSON configuration. You can { "customBox": { // "string": "Your text here", - "font": "CustomFont", // Custom fonts must be in main program and removed in setUI + "font": "CustomFont", // Custom fonts must be removed in setUI "fontSize": 1, "outline": 2, - "color": "#FF9900", // You can use 6-digit or 3-digit hex color codes - "outlineColor": "bgH", // You can match system theme colors like this - "border": 65535, // Or use 16-bit decimal color codes like this + "color": "#FF9900", // Use 6 or 3 digit hex color codes + "outlineColor": "bgH", // Or match system theme colors like this + "border": 65535, // Or use 16-bit RGB565 like this "xPadding": 1, "yPadding": -4, "xOffset": 0, From 3ad2c2dd0cb91452844d777e3b91e7595b805869 Mon Sep 17 00:00:00 2001 From: stweedo Date: Sun, 18 Jun 2023 19:45:00 -0500 Subject: [PATCH 1493/1725] Change drag threshold to > 1 --- apps/boxclk/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index d0d1418d1..8f671667a 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -314,7 +314,7 @@ // Calculate the movement distance movementDistance += Math.abs(e.dx) + Math.abs(e.dy); // Check if the movement distance exceeds a threshold - if (movementDistance > 5) { + if (movementDistance > 1) { boxKeys.forEach((boxKey) => { if (isDragging[boxKey]) { widgets.hide(); From abce2fadc5e8b9d4331642a164cdfe9af9d50008 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 18 Jun 2023 19:52:37 -0500 Subject: [PATCH 1494/1725] Update README.md - Fix typo, specify available theme color options --- apps/boxclk/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 341985135..7f0857461 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -34,7 +34,7 @@ Each box can be customized extensively via a simple JSON configuration. You can "yOffset": 3, "boxPos": { "x": 0.5, "y": 0.5 } }, - "bg": { // Can also be removed for no backround + "bg": { // Can also be removed for no background "img": "YourImageName.img" } } @@ -48,7 +48,7 @@ Each box can be customized extensively via a simple JSON configuration. You can * **outline:** The thickness of the outline around the text. -* **color:** The color of the text. +* **color:** The color of the text. Match current system theme colors with: ("fg", "bg", "fg2", "bg2", "fgH", "bgH"). * **outlineColor:** The color of the text outline. From 8d27267a95ddeeec7f80ad7f9a28062fdf2b1184 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 18 Jun 2023 20:00:50 -0500 Subject: [PATCH 1495/1725] Update README.md - rephrasing/formatting --- apps/boxclk/README.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 7f0857461..e86ca5651 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -14,10 +14,12 @@ After you've found the perfect position for your boxes, you can save their posit __JSON Configuration:__ -Each box can be customized extensively via a simple JSON configuration. You can also add a custom text string to your configuration with the "string" attribute. Here's what an example configuration might look like: +Each box can be customized extensively via a simple JSON configuration. You can add a custom text string to your configuration with the "string" parameter and you can match system theme colors by using "fg", "bg", "fg2", "bg2", "fgH", or "bgH" for any of the color parameters. ## Config File Structure +Here's what an example configuration might look like: + ``` { "customBox": { // @@ -39,6 +41,7 @@ Each box can be customized extensively via a simple JSON configuration. You can } } ``` +__Breakdown of Parameters:__ * **string:** The text string to be displayed inside the box. @@ -48,7 +51,7 @@ Each box can be customized extensively via a simple JSON configuration. You can * **outline:** The thickness of the outline around the text. -* **color:** The color of the text. Match current system theme colors with: ("fg", "bg", "fg2", "bg2", "fgH", "bgH"). +* **color:** The color of the text. * **outlineColor:** The color of the text outline. From f09f2c58c2c7e4e423d7f3e0a4f101bca9e74393 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Sun, 18 Jun 2023 20:14:34 -0500 Subject: [PATCH 1496/1725] Update README.md - add helpful hint for fine adjustments --- apps/boxclk/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index e86ca5651..001c7ed10 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -6,7 +6,7 @@ Box Clock is a customizable clock app for Bangle.js 2 that features an interacti __Drag & Drop:__ -This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. +This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. **Note:** Roll the tip of your finger slowly on the screen for fine adjustments. __Double Tap to Save:__ From af2eaa085508dd4f4ba5bcbfae6243bc12df108c Mon Sep 17 00:00:00 2001 From: Marc Laporte Date: Mon, 19 Jun 2023 06:57:06 -0400 Subject: [PATCH 1497/1725] Fix a typo --- apps/circlesclock/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/circlesclock/README.md b/apps/circlesclock/README.md index 7f6a2585c..1dc5be61b 100644 --- a/apps/circlesclock/README.md +++ b/apps/circlesclock/README.md @@ -23,7 +23,7 @@ To change what is shown: * Unlock the watch * Tap on the circle to change (a border is drawn around it) -* Swipe up/down to change the guage within the given group +* Swipe up/down to change the gauge within the given group * Swipe left/right to change the group (eg. between standard Bangle.js and Alarms/etc) Data is provided by ['Clock Info'](http://www.espruino.com/Bangle.js+Clock+Info) From 69205d348014ad09a31c0b1570d4e0d5f14a3b51 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 19 Jun 2023 19:14:12 +0100 Subject: [PATCH 1498/1725] Cancel buzzing when watch unlocked, or when different messages viewed --- apps/messagegui/ChangeLog | 3 ++- apps/messagegui/app.js | 21 ++++++++++++++++++--- apps/messagegui/metadata.json | 2 +- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index f7e35ef2a..2c9738dab 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -95,4 +95,5 @@ 0.69: More navigation icons (keep/uturn left/right) Nav messages with '/' now get split on newlines 0.70: Handle nav messages from newer Gadgetbridge builds that output distance as a String - If we receive a 'music' message and we're in the messages app (but not showing a message) show music (#2814) \ No newline at end of file + If we receive a 'music' message and we're in the messages app (but not showing a message) show music (#2814) +0.71: Cancel buzzing when watch unlocked, or when different messages viewed \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index c78f27a95..030781df1 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -62,7 +62,7 @@ var onMessagesModified = function(type,msg) { msg.handled = true; require("messages").apply(msg, MESSAGES); // TODO: if new, show this new one - if (msg && msg.id!=="music" && msg.new && active!="map" && + if (msg && msg.id!=="music" && msg.id!=="nav" && msg.new && !((require('Storage').readJSON('setting.json', 1) || {}).quiet)) { require("messages").buzz(msg.src); } @@ -81,6 +81,7 @@ E.on("kill", saveMessages); function showMapMessage(msg) { active = "map"; + require("messages").stopBuzz(); // stop repeated buzzing while the map is showing var m, distance, street, target, img; if ("string"==typeof msg.distance) // new gadgetbridge distance = msg.distance; @@ -399,10 +400,14 @@ function showMessage(msgid) { clockIfAllRead : bool showMsgIfUnread : bool openMusic : bool // open music if it's playing + dontStopBuzz : bool // don't stuf buzzing (any time other than the first this is undefined/false) } */ function checkMessages(options) { options=options||{}; + // If there's been some user interaction, it's time to stop repeated buzzing + if (!options.dontStopBuzz) + require("messages").stopBuzz(); // If no messages, just show 'no messages' and return if (!MESSAGES.length) { active=undefined; // no messages @@ -474,7 +479,10 @@ function checkMessages(options) { if (!longBody && msg.src) g.setFontAlign(1,1).setFont("6x8").drawString(msg.src, r.x+r.w-2, r.y+r.h-2); g.setColor("#888").fillRect(r.x,r.y+r.h-1,r.x+r.w-1,r.y+r.h-1); // dividing line between items }, - select : idx => showMessage(MESSAGES[idx].id), + select : idx => { + if (idx < MESSAGES.length) + showMessage(MESSAGES[idx].id); + }, back : () => load() }); } @@ -500,6 +508,13 @@ setTimeout(() => { var musicMsg = MESSAGES.find(m => m.id === "music"); checkMessages({ clockIfNoMsg: 0, clockIfAllRead: 0, showMsgIfUnread: 1, - openMusic: ((musicMsg&&musicMsg.new) && settings.openMusic) || (musicMsg&&musicMsg.state=="show") }); + openMusic: ((musicMsg&&musicMsg.new) && settings.openMusic) || (musicMsg&&musicMsg.state=="show"), + dontStopBuzz: 1 }); }, 10); // if checkMessages wants to 'load', do that +/* If the Bangle is unlocked by the user, treat that +as a queue to stop repeated buzzing */ +Bangle.on('lock',locked => { + if (!locked) + require("messages").stopBuzz(); +}); diff --git a/apps/messagegui/metadata.json b/apps/messagegui/metadata.json index a7a93ffe9..9eb20a666 100644 --- a/apps/messagegui/metadata.json +++ b/apps/messagegui/metadata.json @@ -2,7 +2,7 @@ "id": "messagegui", "name": "Message UI", "shortName": "Messages", - "version": "0.70", + "version": "0.71", "description": "Default app to display notifications from iOS and Gadgetbridge/Android", "icon": "app.png", "type": "app", From ba7a2f79968ed26d3caa8ac2821e07856369e60e Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 19 Jun 2023 19:19:32 +0100 Subject: [PATCH 1499/1725] Issue newline before GB commands (solves issue with console.log and ignored commands) --- apps/android/ChangeLog | 2 +- apps/android/metadata.json | 2 +- apps/android/settings.js | 10 ++++------ apps/findphone/ChangeLog | 1 + apps/findphone/app.js | 7 ++++--- apps/findphone/metadata.json | 2 +- apps/gbmusic/ChangeLog | 1 + apps/gbmusic/app.js | 1 + apps/gbmusic/metadata.json | 2 +- apps/gbtwist/ChangeLog | 1 + apps/gbtwist/app.js | 3 +++ apps/gbtwist/metadata.json | 2 +- apps/ha/ChangeLog | 1 + apps/ha/ha.lib.js | 1 + apps/ha/metadata.json | 2 +- apps/marioclock/ChangeLog | 1 + apps/marioclock/marioclock-app.js | 1 + apps/marioclock/metadata.json | 2 +- apps/sleeplog/ChangeLog | 3 ++- apps/sleeplog/boot.js | 1 + apps/sleeplog/metadata.json | 2 +- apps/spotrem/ChangeLog | 1 + apps/spotrem/app.js | 22 ++++++++++++++++++++-- apps/spotrem/metadata.json | 2 +- apps/widagps/ChangeLog | 1 + apps/widagps/metadata.json | 2 +- apps/widagps/widget.js | 19 ++++++++++--------- 27 files changed, 64 insertions(+), 31 deletions(-) diff --git a/apps/android/ChangeLog b/apps/android/ChangeLog index 2262f20d8..2e98a1237 100644 --- a/apps/android/ChangeLog +++ b/apps/android/ChangeLog @@ -25,4 +25,4 @@ 0.24: Handle new 'nav' event for navigation 0.25: Added option to 'ignore' an app from the message 0.26: Change handling of GPS status to depend on GPS events instead of connection events - +0.27: Issue newline before GB commands (solves issue with console.log and ignored commands) diff --git a/apps/android/metadata.json b/apps/android/metadata.json index c5312a33e..30890f12a 100644 --- a/apps/android/metadata.json +++ b/apps/android/metadata.json @@ -2,7 +2,7 @@ "id": "android", "name": "Android Integration", "shortName": "Android", - "version": "0.26", + "version": "0.27", "description": "Display notifications/music/etc sent from the Gadgetbridge app on Android. This replaces the old 'Gadgetbridge' Bangle.js widget.", "icon": "app.png", "tags": "tool,system,messages,notifications,gadgetbridge", diff --git a/apps/android/settings.js b/apps/android/settings.js index 1cfc8927c..82883a68d 100644 --- a/apps/android/settings.js +++ b/apps/android/settings.js @@ -1,8 +1,6 @@ (function(back) { - - - - function gb(j) { + function gbSend(j) { + Bluetooth.println(""); Bluetooth.println(JSON.stringify(j)); } var settings = require("Storage").readJSON("android.settings.json",1)||{}; @@ -16,8 +14,8 @@ /*LANG*/"Find Phone" : () => E.showMenu({ "" : { "title" : /*LANG*/"Find Phone" }, "< Back" : ()=>E.showMenu(mainmenu), - /*LANG*/"On" : _=>gb({t:"findPhone",n:true}), - /*LANG*/"Off" : _=>gb({t:"findPhone",n:false}), + /*LANG*/"On" : _=>gbSend({t:"findPhone",n:true}), + /*LANG*/"Off" : _=>gbSend({t:"findPhone",n:false}), }), /*LANG*/"Keep Msgs" : { value : !!settings.keep, diff --git a/apps/findphone/ChangeLog b/apps/findphone/ChangeLog index 29100f3c1..27c7460ab 100644 --- a/apps/findphone/ChangeLog +++ b/apps/findphone/ChangeLog @@ -1,3 +1,4 @@ 0.01: First Version 0.02: Remove HID requirement, update screen 0.03: Fix for Bangle 2, toggle find with top half of screen, exit touch bottom half of screen +0.04: Issue newline before GB commands (solves issue with console.log and ignored commands) \ No newline at end of file diff --git a/apps/findphone/app.js b/apps/findphone/app.js index e5e32739a..6a2681031 100644 --- a/apps/findphone/app.js +++ b/apps/findphone/app.js @@ -5,11 +5,11 @@ var finding = false; function draw() { // show message - g.clear(g.theme.bg); + g.clear(g.theme.bg); g.setColor(g.theme.fg); g.setFont("Vector", fontSize); g.setFontAlign(0,0); - + if (finding) { g.drawString("Finding...", g.getWidth()/2, (g.getHeight()/2)-20); g.drawString("Click to stop", g.getWidth()/2, (g.getHeight()/2)+20); @@ -20,6 +20,7 @@ function draw() { } function findPhone(v) { + Bluetooth.println(""); Bluetooth.println(JSON.stringify({t:"findPhone", n:v})); } @@ -43,7 +44,7 @@ if (process.env.HWVERSION == 1) { if (process.env.HWVERSION == 2) { Bangle.on('touch', function(button, xy) { - + // click top part of the screen to stop start if (xy.y < g.getHeight() / 2) { find(); diff --git a/apps/findphone/metadata.json b/apps/findphone/metadata.json index d67c6ec93..4ce72982e 100644 --- a/apps/findphone/metadata.json +++ b/apps/findphone/metadata.json @@ -2,7 +2,7 @@ "id": "findphone", "name": "Find Phone", "shortName": "Find Phone", - "version": "0.03", + "version": "0.04", "description": "Find your phone via Gadgetbridge. Click any button to let your phone ring. 📳 Note: The functionality is available even without this app, just go to Settings, App Settings, Gadgetbridge, Find Phone.", "icon": "app.png", "tags": "tool,android", diff --git a/apps/gbmusic/ChangeLog b/apps/gbmusic/ChangeLog index d8379b317..90e5ed857 100644 --- a/apps/gbmusic/ChangeLog +++ b/apps/gbmusic/ChangeLog @@ -10,3 +10,4 @@ 0.10: Simplify touch events Remove date+time 0.11: Use default Bangle formatter for booleans +0.12: Issue newline before GB commands (solves issue with console.log and ignored commands) \ No newline at end of file diff --git a/apps/gbmusic/app.js b/apps/gbmusic/app.js index 49f54dac9..ffd247f61 100644 --- a/apps/gbmusic/app.js +++ b/apps/gbmusic/app.js @@ -415,6 +415,7 @@ let tCommand = {}; * @param {string} command - "play"/"pause"/"next"/"previous"/"volumeup"/"volumedown" */ function sendCommand(command) { + Bluetooth.println(""); Bluetooth.println(JSON.stringify({t: "music", n: command})); // for control color if (command in tCommand) { diff --git a/apps/gbmusic/metadata.json b/apps/gbmusic/metadata.json index bbe2a158d..0c73548cb 100644 --- a/apps/gbmusic/metadata.json +++ b/apps/gbmusic/metadata.json @@ -2,7 +2,7 @@ "id": "gbmusic", "name": "Gadgetbridge Music Controls", "shortName": "Music Controls", - "version": "0.11", + "version": "0.12", "description": "Control the music on your Gadgetbridge-connected phone", "icon": "icon.png", "screenshots": [{"url":"screenshot_v1_d.png"},{"url":"screenshot_v1_l.png"}, diff --git a/apps/gbtwist/ChangeLog b/apps/gbtwist/ChangeLog index ec66c5568..830486ae2 100644 --- a/apps/gbtwist/ChangeLog +++ b/apps/gbtwist/ChangeLog @@ -1 +1,2 @@ 0.01: Initial version +0.02: Issue newline before GB commands (solves issue with console.log and ignored commands) \ No newline at end of file diff --git a/apps/gbtwist/app.js b/apps/gbtwist/app.js index 4bd495277..03646064d 100644 --- a/apps/gbtwist/app.js +++ b/apps/gbtwist/app.js @@ -22,14 +22,17 @@ var counter = 0; //stores your counted your twists var tstate = false; //are you ready to count the twists? function playx() { + Bluetooth.println(""); Bluetooth.println(JSON.stringify({t:"music", n:"play"})); } function volup() { + Bluetooth.println(""); Bluetooth.println(JSON.stringify({t:"music", n:"volumeup"})); } function voldn() { + Bluetooth.println(""); Bluetooth.println(JSON.stringify({t:"music", n:"volumedown"})); } diff --git a/apps/gbtwist/metadata.json b/apps/gbtwist/metadata.json index 24f39a9d4..cb3e07584 100644 --- a/apps/gbtwist/metadata.json +++ b/apps/gbtwist/metadata.json @@ -2,7 +2,7 @@ "id": "gbtwist", "name": "Gadgetbridge Twist Control", "shortName": "Twist Control", - "version": "0.01", + "version": "0.02", "description": "Shake your wrist to control your music app via Gadgetbridge", "icon": "app.png", "type": "app", diff --git a/apps/ha/ChangeLog b/apps/ha/ChangeLog index 2a911c207..587a074f2 100644 --- a/apps/ha/ChangeLog +++ b/apps/ha/ChangeLog @@ -7,3 +7,4 @@ 0.07: Update clock_info to avoid a redraw 0.08: Allow swiping to switch triggers 0.09: Improve web interface, arrows in UI +0.10: Issue newline before GB commands (solves issue with console.log and ignored commands) \ No newline at end of file diff --git a/apps/ha/ha.lib.js b/apps/ha/ha.lib.js index b09cbeab2..93ba2416e 100644 --- a/apps/ha/ha.lib.js +++ b/apps/ha/ha.lib.js @@ -64,6 +64,7 @@ exports.sendTrigger = function(triggerName){ while(retries > 0){ try{ // Now lets send the trigger that we sould send. + Bluetooth.println(""); Bluetooth.println(JSON.stringify({ t:"intent", action:"com.espruino.gadgetbridge.banglejs.HA", diff --git a/apps/ha/metadata.json b/apps/ha/metadata.json index d44b4b6f8..a34621b04 100644 --- a/apps/ha/metadata.json +++ b/apps/ha/metadata.json @@ -1,7 +1,7 @@ { "id": "ha", "name": "Home Assistant", - "version": "0.09", + "version": "0.10", "description": "Integrates your Bangle.js into Home Assistant.", "icon": "ha.png", "type": "app", diff --git a/apps/marioclock/ChangeLog b/apps/marioclock/ChangeLog index 276c65c6b..1ef3a571d 100644 --- a/apps/marioclock/ChangeLog +++ b/apps/marioclock/ChangeLog @@ -13,3 +13,4 @@ 0.13: Fix drawPyramid function so pyramids are drawn in correct Y position 0.14: Add jumping frame for characters 0.15: Disable notification buzz during Quiet Mode +0.16: Issue newline before GB commands (solves issue with console.log and ignored commands) \ No newline at end of file diff --git a/apps/marioclock/marioclock-app.js b/apps/marioclock/marioclock-app.js index ee6371f4e..1f2e3a30a 100644 --- a/apps/marioclock/marioclock-app.js +++ b/apps/marioclock/marioclock-app.js @@ -92,6 +92,7 @@ function writeSettings(newSettings) { } function phoneOutbound(msg) { + Bluetooth.println(""); Bluetooth.println(JSON.stringify(msg)); } diff --git a/apps/marioclock/metadata.json b/apps/marioclock/metadata.json index a0282405e..f8cd98ac3 100644 --- a/apps/marioclock/metadata.json +++ b/apps/marioclock/metadata.json @@ -1,7 +1,7 @@ { "id": "marioclock", "name": "Mario Clock", - "version": "0.15", + "version": "0.16", "description": "Animated retro Mario clock, with Gameboy style 8-bit grey-scale graphics.", "icon": "marioclock.png", "type": "clock", diff --git a/apps/sleeplog/ChangeLog b/apps/sleeplog/ChangeLog index 3159fb939..93202b291 100644 --- a/apps/sleeplog/ChangeLog +++ b/apps/sleeplog/ChangeLog @@ -9,4 +9,5 @@ 0.11: Prevent module not found error 0.12: Improve README, option to add functions triggered by status changes or time periods, remove old log (<0.10) conversion 0.13: Prevent to stay in consecutive sleep if not worn, correct trigger calling, add trigger object itself as argument to the fn function -0.14: Add "Delete all logfiles before" to interface.html, display all logfiles in the interface \ No newline at end of file +0.14: Add "Delete all logfiles before" to interface.html, display all logfiles in the interface +0.15: Issue newline before GB commands (solves issue with console.log and ignored commands) \ No newline at end of file diff --git a/apps/sleeplog/boot.js b/apps/sleeplog/boot.js index 6506296de..53873ab29 100644 --- a/apps/sleeplog/boot.js +++ b/apps/sleeplog/boot.js @@ -303,6 +303,7 @@ if (sleeplog.conf.enabled) { // send status to gadgetbridge var gb_kinds = "unknown,not_worn,activity,light_sleep,deep_sleep"; + Bluetooth.println(""); Bluetooth.println(JSON.stringify({ t: "act", act: gb_kinds.split(",")[data.status], diff --git a/apps/sleeplog/metadata.json b/apps/sleeplog/metadata.json index 16f51b91e..911e0cfa1 100644 --- a/apps/sleeplog/metadata.json +++ b/apps/sleeplog/metadata.json @@ -2,7 +2,7 @@ "id":"sleeplog", "name":"Sleep Log", "shortName": "SleepLog", - "version": "0.14", + "version": "0.15", "description": "Log and view your sleeping habits. This app is using the built in movement calculation.", "icon": "app.png", "type": "app", diff --git a/apps/spotrem/ChangeLog b/apps/spotrem/ChangeLog index a92ed3de2..48b82b12a 100644 --- a/apps/spotrem/ChangeLog +++ b/apps/spotrem/ChangeLog @@ -6,3 +6,4 @@ 0.06: Make compatible with Fastload Utils app. 0.07: Remove just the specific listeners to not interfere with Quick Launch when fastloading. +0.08: Issue newline before GB commands (solves issue with console.log and ignored commands) \ No newline at end of file diff --git a/apps/spotrem/app.js b/apps/spotrem/app.js index f9046c4a6..b3fa76f86 100644 --- a/apps/spotrem/app.js +++ b/apps/spotrem/app.js @@ -62,7 +62,7 @@ let touchHandler = function(_, xy) { backToMenu = true; E.showMenu(spotifyMenu); } else if ((R.x-1 warnTime) { - g.setColor("#f00"); + g.setColor("#f00"); w = 24; } } @@ -127,6 +127,7 @@ g.drawImage(atob("FBQBAAAABgAAYAAPAACwABOAATgAI8ACPABD4AQ+AEPgD8EAg/AQP4AD+CD/wj isRequesting = true; if (Bluetooth.println) { console.log("On device"); + Bluetooth.println(""); Bluetooth.println(JSON.stringify({t:"http", url:"https://www.espruino.com/agps/casic.base64"})); } else { @@ -143,19 +144,19 @@ g.drawImage(atob("FBQBAAAABgAAYAAPAACwABOAATgAI8ACPABD4AQ+AEPgD8EAg/AQP4AD+CD/wj }, 10000); Bangle.drawWidgets(); } - + var data = require("Storage").readJSON(JSON_FILE); if (data && data.lastAGPS) { //lastAGPS = data.lastAGPS; - } - + } + nextAGPS(Math.max(0, nextTime - (Date.now() - lastAGPS))); NRF.on('connect', () => { if (Date.now() - lastAGPS > warnTime) { nextAGPS(0); } }); - + var testData = "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"; })() From a0877336f8bfa0730d01ee4a9328557b7896973a Mon Sep 17 00:00:00 2001 From: stweedo Date: Tue, 20 Jun 2023 01:11:13 -0500 Subject: [PATCH 1500/1725] New options - meridian, short/long, prefix/suffix --- apps/boxclk/ChangeLog | 2 + apps/boxclk/README.md | 95 +++++++++ apps/boxclk/app.js | 398 ++++++++++++++++++++++++++++++++++++++ apps/boxclk/boxclk.json | 60 ++++++ apps/boxclk/icon.js | 1 + apps/boxclk/metadata.json | 25 +++ apps/boxclk/settings.js | 94 +++++++++ 7 files changed, 675 insertions(+) create mode 100644 apps/boxclk/ChangeLog create mode 100644 apps/boxclk/README.md create mode 100644 apps/boxclk/app.js create mode 100644 apps/boxclk/boxclk.json create mode 100644 apps/boxclk/icon.js create mode 100644 apps/boxclk/metadata.json create mode 100644 apps/boxclk/settings.js diff --git a/apps/boxclk/ChangeLog b/apps/boxclk/ChangeLog new file mode 100644 index 000000000..3e0922aad --- /dev/null +++ b/apps/boxclk/ChangeLog @@ -0,0 +1,2 @@ +0.01: New App! +0.02: New options for configs such as meridian, short/long formats, custom prefix/suffix diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md new file mode 100644 index 000000000..f16221ec1 --- /dev/null +++ b/apps/boxclk/README.md @@ -0,0 +1,95 @@ +# Box Clock + +Box Clock is a customizable clock app for Bangle.js 2 that features an interactive drag and drop interface and easy JSON configuration. + +## Unique Features + +__Drag & Drop:__ + +This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. + +__Double Tap to Save:__ + +After you've found the perfect position for your boxes, you can save their positions with a quick double tap on the background. This makes it easy to ensure your custom layout is stored for future use. A save icon will appear momentarily to confirm that your configuration has been saved. + +__JSON Configuration:__ + +Each box can be customized extensively via a simple JSON configuration. You can also add a custom text string to your configuration with the "string" attribute. Here's what an example configuration might look like: + +## Config File Structure + +``` +{ + "customBox": { + "string": "Your text here", + "font": "CustomFont", // Custom fonts must be removed in setUI + "fontSize": 1, + "outline": 2, + "color": "#FF9900", // Use 6 or 3 digit hex color codes + "outlineColor": "bgH", // Or match system theme colors like this + "border": 65535, // Or use 16-bit RGB565 like this + "xPadding": 1, + "yPadding": -4, + "xOffset": 0, + "yOffset": 3, + "boxPos": { "x": 0.5, "y": 0.5 }, + "prefix": "", // Adds a string to the beginning of the main string + "suffix": "", // Adds a string to the end of the main string + "disableSuffix": true, // Only used to remove the DayOfMonth suffix + "short": false // Gets long format value of time, meridian, date, or DoW + + }, + "bg": { // Can also be removed for no backround + "img": "YourImageName.img" + } +} +``` +* **Box Name:** The name of your text box. The app includes functional support for "time", "date", "meridian", "dow" (Day of Week), "batt" (Battery), and "step" (Step count). You can add additional custom boxes with unique titles. + +* **string:** The text string to be displayed inside the box. + +* **font:** The font name given to g.setFont() + +* **fontSize:** The size of the font. + +* **outline:** The thickness of the outline around the text. + +* **color:** The color of the text. + +* **outlineColor:** The color of the text outline. + +* **border:** The color of the box border when moving. + +* **xPadding, yPadding:** Additional padding around the text inside the box. + +* **xOffset, yOffset:** Offsets the text position within the box. + +* **boxPos:** Initial position of the box on the screen. Values are fractions of the screen width (x) and height (y), so { "x": 0.5, "y": 0.5 } would be in the middle of the screen. + +* **prefix:** Adds a string to the beginning of the main string. For example, you can set "prefix": "Steps: " to display "Steps: 100" for the step count. + +* **suffix:** Adds a string to the end of the main string. For example, you can set "suffix": "%" to display "80%" for the battery percentage. + +* **disableSuffix:** Applies only to the "date" box. Set to true to disable the DayOfMonth suffix. This is used to remove the "st","nd","rd", or "th" from the DayOfMonth number + +* **short:** Set to false to get the long format value of time, meridian, date, or DayOfWeek. Short formats are used by default, + +* **bg:** This specifies a custom background image, with the img property defining the name of the image file on the Bangle.js storage. + +## Multiple Configurations + +The app includes a settings menu that allows you to switch between different configurations. The selected configuration is stored in the default JSON file alongside the other configuration data using the selectedConfig property. + +If the selectedConfig property is not present or is set to 0, the app will use the default configuration. To create additional configurations, create separate JSON files with the naming convention boxclk-N.json, where N is the configuration number. The settings menu will list all available configurations. + +## Compatibility + +This app was built and tested with Bangle.js 2. + +## Feedback + +If you have any issues or suggestions, please open an issue on this GitHub repository. Contributions to improve the application are also welcomed. + +## Creator + +[stweedo](https://github.com/stweedo) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js new file mode 100644 index 000000000..50a738d3b --- /dev/null +++ b/apps/boxclk/app.js @@ -0,0 +1,398 @@ +{ + /** + * --------------------------------------------------------------- + * 1. Module dependencies and initial configurations + * --------------------------------------------------------------- + */ + let storage = require("Storage"); + let locale = require("locale"); + let widgets = require("widget_utils"); + let date = new Date(); + let bgImage; + let configNumber = (storage.readJSON("boxclk.json", 1) || {}).selectedConfig || 0; + let fileName = 'boxclk' + (configNumber > 0 ? `-${configNumber}` : '') + '.json'; + // Add a condition to check if the file exists, if it does not, default to 'boxclk.json' + if (!storage.read(fileName)) { + fileName = 'boxclk.json'; + } + let boxesConfig = storage.readJSON(fileName, 1) || {}; + let boxes = {}; + let boxPos = {}; + let isDragging = {}; + let wasDragging = {}; + let doubleTapTimer = null; + let g_setColor; + + let saveIcon = require("heatshrink").decompress(atob("mEwwkEogA/AHdP/4AK+gWVDBQWNAAIuVGBAIB+UQdhMfGBAHBCxUAgIXHIwPyCxQwEJAgXB+MAl/zBwQGBn8ggQjBGAQXG+EA/4XI/8gBIQXTGAMPC6n/C6HzkREBC6YACC6QAFC57aHCYIXOOgLsEn4XPABIX/C6vykQAEl6/WgCQBC5imFAAT2BC5gCBI4oUCC5x0IC/4X/C4K8Bl4XJ+TCCC4wKBABkvC4tEEoMQCxcBB4IWEC4XyDBUBFwIXGJAIAOIwowDABoWGGB4uHDBwWJAH4AzA")); + + /** + * --------------------------------------------------------------- + * 2. Graphical and visual configurations + * --------------------------------------------------------------- + */ + let w = g.getWidth(); + let h = g.getHeight(); + let totalWidth, totalHeight; + let drawTimeout; + + /** + * --------------------------------------------------------------- + * 3. Touchscreen Handlers + * --------------------------------------------------------------- + */ + let touchHandler; + let dragHandler; + let movementDistance = 0; + + /** + * --------------------------------------------------------------- + * 4. Font loading function + * --------------------------------------------------------------- + */ + let loadCustomFont = function() { + Graphics.prototype.setFontBrunoAce = function() { + // Actual height 23 (24 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), + 46, + atob("CBEdChgYGhgaGBsaCQ=="), + 32|65536 + ); + }; + }; + + /** + * --------------------------------------------------------------- + * 5. Initial settings of boxes and their positions + * --------------------------------------------------------------- + */ + for (let key in boxesConfig) { + if (key === 'bg' && boxesConfig[key].img) { + bgImage = storage.read(boxesConfig[key].img); + } else if (key !== 'selectedConfig') { + boxes[key] = Object.assign({}, boxesConfig[key]); + } + } + + let boxKeys = Object.keys(boxes); + + boxKeys.forEach((key) => { + let boxConfig = boxes[key]; + boxPos[key] = { + x: w * boxConfig.boxPos.x, + y: h * boxConfig.boxPos.y + }; + isDragging[key] = false; + wasDragging[key] = false; + }); + + /** + * --------------------------------------------------------------- + * 6. Text and drawing functions + * --------------------------------------------------------------- + */ + + // Overwrite the setColor function to allow the + // use of (x) in g.theme.x as a string + // in your JSON config ("fg", "bg", "fg2", "bg2", "fgH", "bgH") + let modSetColor = function() { + // Save the original setColor function + g_setColor = g.setColor; + // Overwrite setColor with the new function + g.setColor = function(color) { + if (typeof color === "string" && color in g.theme) { + g_setColor.call(g, g.theme[color]); + } else { + g_setColor.call(g, color); + } + }; + }; + + let restoreSetColor = function() { + // Restore the original setColor function + if (g_setColor) { + g.setColor = g_setColor; + } + }; + + // Overwrite the drawString function + let g_drawString = g.drawString; + g.drawString = function(box, str, x, y) { + outlineText(box, str, x, y); + g.setColor(box.color); + g_drawString.call(g, str, x, y); + }; + + let outlineText = function(box, str, x, y) { + let px = box.outline; + let dx = [-px, 0, px, -px, px, -px, 0, px]; + let dy = [-px, -px, -px, 0, 0, px, px, px]; + g.setColor(box.outlineColor); + for (let i = 0; i < dx.length; i++) { + g_drawString.call(g, str, x + dx[i], y + dy[i]); + } + }; + + let calcBoxSize = function(boxItem) { + g.reset(); + g.setFontAlign(0,0); + g.setFont(boxItem.font, boxItem.fontSize); + let strWidth = g.stringWidth(boxItem.string) + 2 * boxItem.outline; + let fontHeight = g.getFontHeight() + 2 * boxItem.outline; + totalWidth = strWidth + 2 * boxItem.xPadding; + totalHeight = fontHeight + 2 * boxItem.yPadding; + }; + + let calcBoxPos = function(boxKey) { + return { + x1: boxPos[boxKey].x - totalWidth / 2, + y1: boxPos[boxKey].y - totalHeight / 2, + x2: boxPos[boxKey].x + totalWidth / 2, + y2: boxPos[boxKey].y + totalHeight / 2 + }; + }; + + let displaySaveIcon = function() { + draw(boxes); + g.drawImage(saveIcon, w / 2 - 24, h / 2 - 24); + // Display save icon for 2 seconds + setTimeout(() => { + g.clearRect(w / 2 - 24, h / 2 - 24, w / 2 + 24, h / 2 + 24); + draw(boxes); + }, 2000); + }; + + /** + * --------------------------------------------------------------- + * 7. String forming helper functions + * --------------------------------------------------------------- + */ + let isBool = function(val, defaultVal) { + return typeof val !== 'undefined' ? Boolean(val) : defaultVal; + }; + + let getDate = function(short, disableSuffix) { + const date = new Date(); + const dayOfMonth = date.getDate(); + const month = short ? locale.month(date, 0) : locale.month(date, 1); + const year = date.getFullYear(); + let suffix; + if ([1, 21, 31].includes(dayOfMonth)) { + suffix = "st"; + } else if ([2, 22].includes(dayOfMonth)) { + suffix = "nd"; + } else if ([3, 23].includes(dayOfMonth)) { + suffix = "rd"; + } else { + suffix = "th"; + } + let dayOfMonthStr = short ? dayOfMonth : (disableSuffix ? dayOfMonth : dayOfMonth + suffix); + return month + " " + dayOfMonthStr + (short ? '' : (", " + year)); // not including year for short version + }; + + let getDayOfWeek = function(date, short) { + return locale.dow(date, short ? 1 : 0); + }; + + locale.meridian = function(date, short) { + let hours = date.getHours(); + let meridian = hours >= 12 ? 'PM' : 'AM'; + return short ? meridian[0] : meridian; + }; + + let modString = function(boxItem, data) { + let prefix = boxItem.prefix || ''; + let suffix = boxItem.suffix || ''; + return prefix + data + suffix; + }; + + /** + * --------------------------------------------------------------- + * 8. Main draw function + * --------------------------------------------------------------- + */ + let draw = (function() { + let updatePerMinute = true; // variable to track the state of time display + + return function(boxes) { + date = new Date(); + g.clear(); + if (bgImage) { + g.drawImage(bgImage, 0, 0); + } + if (boxes.time) { + boxes.time.string = modString(boxes.time, locale.time(date, isBool(boxes.time.short, true) ? 1 : 0)); + updatePerMinute = isBool(boxes.time.short, true); + } + if (boxes.meridian) { + boxes.meridian.string = modString(boxes.meridian, locale.meridian(date, isBool(boxes.meridian.short, true))); + } + if (boxes.date) { + boxes.date.string = modString(boxes.date, getDate(isBool(boxes.date.short, true), isBool(boxes.date.disableSuffix, false))); + } + if (boxes.dow) { + boxes.dow.string = modString(boxes.dow, getDayOfWeek(date, isBool(boxes.dow.short, true))); + } + if (boxes.batt) { + boxes.batt.string = modString(boxes.batt, E.getBattery()); + } + if (boxes.step) { + boxes.step.string = modString(boxes.step, Bangle.getStepCount()); + } + boxKeys.forEach((boxKey) => { + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + if (isDragging[boxKey]) { + g.setColor(boxItem.border); + g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + g.drawString( + boxItem, + boxItem.string, + boxPos[boxKey].x + boxItem.xOffset, + boxPos[boxKey].y + boxItem.yOffset + ); + }); + if (!Object.values(isDragging).some(Boolean)) { + if (drawTimeout) clearTimeout(drawTimeout); + let interval = updatePerMinute ? 60000 - (Date.now() % 60000) : 1000; + drawTimeout = setTimeout(() => draw(boxes), interval); + } + }; + })(); + + /** + * --------------------------------------------------------------- + * 9. Helper function for touch event + * --------------------------------------------------------------- + */ + let touchInText = function(e, boxItem, boxKey) { + calcBoxSize(boxItem); + const pos = calcBoxPos(boxKey); + return e.x >= pos.x1 && + e.x <= pos.x2 && + e.y >= pos.y1 && + e.y <= pos.y2; + }; + + let deselectAllBoxes = function() { + Object.keys(isDragging).forEach((boxKey) => { + isDragging[boxKey] = false; + }); + restoreSetColor(); + widgets.show(); + widgets.swipeOn(); + modSetColor(); + }; + + /** + * --------------------------------------------------------------- + * 10. Setup function to configure event handlers + * --------------------------------------------------------------- + */ + let setup = function() { + // ------------------------------------ + // Define the touchHandler function + // ------------------------------------ + touchHandler = function(zone, e) { + wasDragging = Object.assign({}, isDragging); + let boxTouched = false; + boxKeys.forEach((boxKey) => { + if (touchInText(e, boxes[boxKey], boxKey)) { + isDragging[boxKey] = true; + wasDragging[boxKey] = true; + boxTouched = true; + } + }); + if (!boxTouched) { + if (!Object.values(isDragging).some(Boolean)) { // check if no boxes are being dragged + deselectAllBoxes(); + if (doubleTapTimer) { + clearTimeout(doubleTapTimer); + doubleTapTimer = null; + // Save boxesConfig on double tap outside of any box and when no boxes are being dragged + Object.keys(boxPos).forEach((boxKey) => { + boxesConfig[boxKey].boxPos.x = (boxPos[boxKey].x / w).toFixed(3); + boxesConfig[boxKey].boxPos.y = (boxPos[boxKey].y / h).toFixed(3); + }); + storage.write(fileName, JSON.stringify(boxesConfig)); + displaySaveIcon(); + return; + } + } else { + // if any box is being dragged, just deselect all without saving + deselectAllBoxes(); + } + } + if (Object.values(wasDragging).some(Boolean) || !boxTouched) { + draw(boxes); + } + doubleTapTimer = setTimeout(() => { + doubleTapTimer = null; + }, 500); // Increase or decrease this value based on the desired double tap timing + movementDistance = 0; + }; + + // ------------------------------------ + // Define the dragHandler function + // ------------------------------------ + dragHandler = function(e) { + // Calculate the movement distance + movementDistance += Math.abs(e.dx) + Math.abs(e.dy); + // Check if the movement distance exceeds a threshold + if (movementDistance > 1) { + boxKeys.forEach((boxKey) => { + if (isDragging[boxKey]) { + widgets.hide(); + let boxItem = boxes[boxKey]; + calcBoxSize(boxItem); + let newX = boxPos[boxKey].x + e.dx; + let newY = boxPos[boxKey].y + e.dy; + if (newX - totalWidth / 2 >= 0 && + newX + totalWidth / 2 <= w && + newY - totalHeight / 2 >= 0 && + newY + totalHeight / 2 <= h ) { + boxPos[boxKey].x = newX; + boxPos[boxKey].y = newY; + } + const pos = calcBoxPos(boxKey); + g.clearRect(pos.x1, pos.y1, pos.x2, pos.y2); + } + }); + draw(boxes); + } + }; + + Bangle.on('touch', touchHandler); + Bangle.on('drag', dragHandler); + + Bangle.setUI({ + mode : "clock", + remove : function() { + // Remove event handlers, stop draw timer, remove custom font if used + Bangle.removeListener('touch', touchHandler); + Bangle.removeListener('drag', dragHandler); + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + delete Graphics.prototype.setFontBrunoAce; + // Restore original drawString function (no outlines) + g.drawString = g_drawString; + restoreSetColor(); + widgets.show(); + } + }); + loadCustomFont(); + draw(boxes); + }; + + /** + * --------------------------------------------------------------- + * 11. Main execution part + * --------------------------------------------------------------- + */ + Bangle.loadWidgets(); + widgets.swipeOn(); + modSetColor(); + setup(); +} diff --git a/apps/boxclk/boxclk.json b/apps/boxclk/boxclk.json new file mode 100644 index 000000000..cf5cb6177 --- /dev/null +++ b/apps/boxclk/boxclk.json @@ -0,0 +1,60 @@ +{ + "time": { + "font": "BrunoAce", + "fontSize": 1, + "outline": 2, + "color": "#000", + "outlineColor": "#fff", + "border": "#000", + "xPadding": 0, + "yPadding": -4, + "xOffset": 0, + "yOffset": 3, + "boxPos": { "x": 0.633, "y": 0.16 } + }, + "dow": { + "font": "6x8", + "fontSize": 2, + "outline": 1, + "color": "#000", + "outlineColor": "#fff", + "border": "#000", + "xPadding": -0.5, + "yPadding": 0.5, + "xOffset": 1, + "yOffset": 1, + "boxPos": { "x": 0.633, "y": 0.3 }, + "short": false + }, + "date": { + "font": "6x8", + "fontSize": 1, + "outline": 1, + "color": "#000", + "outlineColor": "#fff", + "border": "#000", + "xPadding": 0, + "yPadding": 0.5, + "xOffset": 1, + "yOffset": 1, + "boxPos": { "x": 0.633, "y": 0.39 }, + "short": false + }, + "batt": { + "font": "4x6", + "fontSize": 2, + "outline": 1, + "color": "#0ff", + "outlineColor": "#000", + "border": "#fff", + "xPadding": -0.5, + "yPadding": -0.5, + "xOffset": 2, + "yOffset": 1, + "boxPos": { "x": 0.92, "y": 0.95 }, + "suffix": "%" + }, + "bg": { + "img": "boxclk.beachhouse.img" + } +} diff --git a/apps/boxclk/icon.js b/apps/boxclk/icon.js new file mode 100644 index 000000000..f6f4412c6 --- /dev/null +++ b/apps/boxclk/icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwkEogA/AEB5TCwVAC6aOCoED/4AQmAXDh4XR+AX5+URgERl4XR+KGEj4XP+cAgMz/8ziEAn4XOkEBCIfziECC5ouBl/zkMAiU/+QwGC4/wE4MgLwQFCQgoXHiEfO4Mj/8yO4PxgIXMHwMggb+DgRQBC5fygIPBn4xBiYFCiDDEC43xgfyLQJfCGoMvmDCEC5ABCVIJlBCoIXM+EPAIRgBAQIIDC542DC53xT4MfC4cCBAanLBQaWDBIgXo+YXXdgoXQbQcBd5YXHiAYHC5wAC+UQe4IXTDAMABAQXEgYPEiDQEAATdBAYMwC4ZUCK4aLHSoIACC5IuHSogXKCxAXHogXTCwQAFC5YUIC7b/EC6TFFC6IwJC5itBcwQXUbI7vBC5bFGAAgXMDBQXNJIQXUGBEEBog=")) diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json new file mode 100644 index 000000000..9b759def7 --- /dev/null +++ b/apps/boxclk/metadata.json @@ -0,0 +1,25 @@ +{ + "id": "boxclk", + "name": "Box Clock", + "version": "0.02", + "description": "A customizable clock with configurable text boxes that can be positioned to show your favorite background", + "icon": "app.png", + "screenshots": [ + {"url":"screenshot.png"}, + {"url":"screenshot-1.png"} + ], + "type": "clock", + "tags": "clock", + "supports": ["BANGLEJS2"], + "readme": "README.md", + "allow_emulator": true, + "storage": [ + {"name":"boxclk.app.js","url":"app.js"}, + {"name":"boxclk.settings.js","url":"settings.js"}, + {"name":"boxclk.img","url":"icon.js","evaluate":true}, + {"name":"boxclk.beachhouse.img","url":"beachhouse.js","evaluate":true} + ], + "data": [ + {"name":"boxclk.json","url":"boxclk.json"} + ] +} diff --git a/apps/boxclk/settings.js b/apps/boxclk/settings.js new file mode 100644 index 000000000..b30173861 --- /dev/null +++ b/apps/boxclk/settings.js @@ -0,0 +1,94 @@ +(function () { + let storage = require("Storage"); + let fileRegex = /^boxclk-(\d+)\.json$/; + let selectedConfig; + let configs = {}; + let hasDefaultConfig = false; + + function getNextConfigNumber() { + let maxNumber = 0; + storage.list().forEach(file => { + let match = file.match(fileRegex); + if (match) { + let number = parseInt(match[1]); + if (number > maxNumber) { + maxNumber = number; + } + } + }); + return maxNumber + 1; + } + + function handleSelection(config) { + return function () { + selectedConfig = config === "Default" ? 0 : config; + menu["Cfg:"].value = selectedConfig === 0 ? "Default" : selectedConfig; + E.showMenu(menu); + + // Retrieve existing data and update selectedConfig + let defaultConfig = storage.readJSON("boxclk.json", 1) || {}; + defaultConfig.selectedConfig = selectedConfig; + storage.writeJSON("boxclk.json", defaultConfig); + }; + } + + let configFiles = []; + storage.list().forEach(file => { + let match = file.match(fileRegex); + if (match) { + configFiles.push({ file: file, number: parseInt(match[1]) }); + } else if (file === "boxclk.json") { + hasDefaultConfig = true; + let defaultConfig = storage.readJSON(file, 1); + if (defaultConfig && defaultConfig.selectedConfig != null) { + // Check if corresponding config file exists + let configFileName = 'boxclk-' + defaultConfig.selectedConfig + '.json'; + if (storage.read(configFileName)) { + // If it exists, assign selectedConfig + selectedConfig = defaultConfig.selectedConfig; + } else { + // If it does not exist, set selectedConfig to 0 and update boxclk.json + defaultConfig.selectedConfig = 0; + storage.writeJSON("boxclk.json", defaultConfig); + selectedConfig = 0; + } + } + } + }); + + // Sort the config files by number + configFiles.sort((a, b) => a.number - b.number); + + configFiles.forEach(configFile => { + configs[configFile.number] = handleSelection(configFile.number); + }); + + if (!selectedConfig) { + if (hasDefaultConfig) { + selectedConfig = "Default"; + } else { + let nextConfigNumber = getNextConfigNumber(); + selectedConfig = nextConfigNumber.toString(); + configs[selectedConfig] = handleSelection(selectedConfig); + } + } + + let menu = { + '': { 'title': '-- Box Clock --' }, + '< Back': () => Bangle.showClock(), + 'Cfg:': { + value: selectedConfig === 0 ? "Default" : selectedConfig, + format: () => selectedConfig === 0 ? "Default" : selectedConfig + } + }; + + if (hasDefaultConfig) { + menu['Default'] = handleSelection('Default'); + } + + Object.keys(configs).forEach(config => { + menu[config] = handleSelection(config); + }); + + E.showMenu(menu); +})(); From 2707a1206e2d45f689b3088bdf580b566b5ee739 Mon Sep 17 00:00:00 2001 From: stweedo Date: Tue, 20 Jun 2023 01:24:39 -0500 Subject: [PATCH 1501/1725] Fix metadata.json --- apps/boxclk/metadata.json | 4 ---- 1 file changed, 4 deletions(-) diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index d062ab521..9b759def7 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -1,11 +1,7 @@ { "id": "boxclk", "name": "Box Clock", -<<<<<<< HEAD "version": "0.02", -======= - "version": "0.01", ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e "description": "A customizable clock with configurable text boxes that can be positioned to show your favorite background", "icon": "app.png", "screenshots": [ From 37f3e100086b7c583268f3e8fb3683b457feaa01 Mon Sep 17 00:00:00 2001 From: stweedo Date: Tue, 20 Jun 2023 01:28:41 -0500 Subject: [PATCH 1502/1725] Fix merge conflicts --- apps/boxclk/README.md | 29 ------------------- apps/boxclk/app.js | 64 ----------------------------------------- apps/boxclk/boxclk.json | 12 -------- apps/boxclk/settings.js | 15 ---------- 4 files changed, 120 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index ccc847544..f16221ec1 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -6,11 +6,7 @@ Box Clock is a customizable clock app for Bangle.js 2 that features an interacti __Drag & Drop:__ -<<<<<<< HEAD This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. -======= -This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. **Note:** Roll the tip of your finger slowly on the screen for fine adjustments. ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e __Double Tap to Save:__ @@ -18,7 +14,6 @@ After you've found the perfect position for your boxes, you can save their posit __JSON Configuration:__ -<<<<<<< HEAD Each box can be customized extensively via a simple JSON configuration. You can also add a custom text string to your configuration with the "string" attribute. Here's what an example configuration might look like: ## Config File Structure @@ -26,17 +21,6 @@ Each box can be customized extensively via a simple JSON configuration. You can ``` { "customBox": { -======= -Each box can be customized extensively via a simple JSON configuration. You can add a custom text string to your configuration with the "string" parameter and you can match system theme colors by using "fg", "bg", "fg2", "bg2", "fgH", or "bgH" for any of the color parameters. - -## Config File Structure - -Here's what an example configuration might look like: - -``` -{ - "customBox": { // ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e "string": "Your text here", "font": "CustomFont", // Custom fonts must be removed in setUI "fontSize": 1, @@ -48,7 +32,6 @@ Here's what an example configuration might look like: "yPadding": -4, "xOffset": 0, "yOffset": 3, -<<<<<<< HEAD "boxPos": { "x": 0.5, "y": 0.5 }, "prefix": "", // Adds a string to the beginning of the main string "suffix": "", // Adds a string to the end of the main string @@ -57,20 +40,11 @@ Here's what an example configuration might look like: }, "bg": { // Can also be removed for no backround -======= - "boxPos": { "x": 0.5, "y": 0.5 } - }, - "bg": { // Can also be removed for no background ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e "img": "YourImageName.img" } } ``` -<<<<<<< HEAD * **Box Name:** The name of your text box. The app includes functional support for "time", "date", "meridian", "dow" (Day of Week), "batt" (Battery), and "step" (Step count). You can add additional custom boxes with unique titles. -======= -__Breakdown of Parameters:__ ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e * **string:** The text string to be displayed inside the box. @@ -92,7 +66,6 @@ __Breakdown of Parameters:__ * **boxPos:** Initial position of the box on the screen. Values are fractions of the screen width (x) and height (y), so { "x": 0.5, "y": 0.5 } would be in the middle of the screen. -<<<<<<< HEAD * **prefix:** Adds a string to the beginning of the main string. For example, you can set "prefix": "Steps: " to display "Steps: 100" for the step count. * **suffix:** Adds a string to the end of the main string. For example, you can set "suffix": "%" to display "80%" for the battery percentage. @@ -101,8 +74,6 @@ __Breakdown of Parameters:__ * **short:** Set to false to get the long format value of time, meridian, date, or DayOfWeek. Short formats are used by default, -======= ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e * **bg:** This specifies a custom background image, with the img property defining the name of the image file on the Bangle.js storage. ## Multiple Configurations diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 8a61c7cf8..50a738d3b 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -33,10 +33,6 @@ let w = g.getWidth(); let h = g.getHeight(); let totalWidth, totalHeight; -<<<<<<< HEAD -======= - let enableSuffix = true; ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e let drawTimeout; /** @@ -168,7 +164,6 @@ /** * --------------------------------------------------------------- -<<<<<<< HEAD * 7. String forming helper functions * --------------------------------------------------------------- */ @@ -180,15 +175,6 @@ const date = new Date(); const dayOfMonth = date.getDate(); const month = short ? locale.month(date, 0) : locale.month(date, 1); -======= - * 7. Date and time related functions - * --------------------------------------------------------------- - */ - let getDate = function() { - const date = new Date(); - const dayOfMonth = date.getDate(); - const month = locale.month(date, 1); ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e const year = date.getFullYear(); let suffix; if ([1, 21, 31].includes(dayOfMonth)) { @@ -200,7 +186,6 @@ } else { suffix = "th"; } -<<<<<<< HEAD let dayOfMonthStr = short ? dayOfMonth : (disableSuffix ? dayOfMonth : dayOfMonth + suffix); return month + " " + dayOfMonthStr + (short ? '' : (", " + year)); // not including year for short version }; @@ -219,14 +204,6 @@ let prefix = boxItem.prefix || ''; let suffix = boxItem.suffix || ''; return prefix + data + suffix; -======= - let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth; - return month + " " + dayOfMonthStr + ", " + year; - }; - - let getDayOfWeek = function(date) { - return locale.dow(date, 0); ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e }; /** @@ -234,7 +211,6 @@ * 8. Main draw function * --------------------------------------------------------------- */ -<<<<<<< HEAD let draw = (function() { let updatePerMinute = true; // variable to track the state of time display @@ -285,46 +261,6 @@ } }; })(); -======= - let draw = function(boxes) { - date = new Date(); - g.clear(); - if (bgImage) { - g.drawImage(bgImage, 0, 0); - } - if (boxes.time) { - boxes.time.string = locale.time(date, 1); - } - if (boxes.date) { - boxes.date.string = getDate(); - } - if (boxes.dow) { - boxes.dow.string = getDayOfWeek(date); - } - if (boxes.batt) { - boxes.batt.string = E.getBattery() + "%"; - } - boxKeys.forEach((boxKey) => { - let boxItem = boxes[boxKey]; - calcBoxSize(boxItem); - const pos = calcBoxPos(boxKey); - if (isDragging[boxKey]) { - g.setColor(boxItem.border); - g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2); - } - g.drawString( - boxItem, - boxItem.string, - boxPos[boxKey].x + boxItem.xOffset, - boxPos[boxKey].y + boxItem.yOffset - ); - }); - if (!Object.values(isDragging).some(Boolean)) { - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000)); - } - }; ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e /** * --------------------------------------------------------------- diff --git a/apps/boxclk/boxclk.json b/apps/boxclk/boxclk.json index 95233298e..cf5cb6177 100644 --- a/apps/boxclk/boxclk.json +++ b/apps/boxclk/boxclk.json @@ -23,12 +23,8 @@ "yPadding": 0.5, "xOffset": 1, "yOffset": 1, -<<<<<<< HEAD "boxPos": { "x": 0.633, "y": 0.3 }, "short": false -======= - "boxPos": { "x": 0.633, "y": 0.3 } ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e }, "date": { "font": "6x8", @@ -41,12 +37,8 @@ "yPadding": 0.5, "xOffset": 1, "yOffset": 1, -<<<<<<< HEAD "boxPos": { "x": 0.633, "y": 0.39 }, "short": false -======= - "boxPos": { "x": 0.633, "y": 0.39 } ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e }, "batt": { "font": "4x6", @@ -59,12 +51,8 @@ "yPadding": -0.5, "xOffset": 2, "yOffset": 1, -<<<<<<< HEAD "boxPos": { "x": 0.92, "y": 0.95 }, "suffix": "%" -======= - "boxPos": { "x": 0.92, "y": 0.95 } ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e }, "bg": { "img": "boxclk.beachhouse.img" diff --git a/apps/boxclk/settings.js b/apps/boxclk/settings.js index c3730497c..e35db455d 100644 --- a/apps/boxclk/settings.js +++ b/apps/boxclk/settings.js @@ -32,19 +32,11 @@ }; } -<<<<<<< HEAD let configFiles = []; storage.list().forEach(file => { let match = file.match(fileRegex); if (match) { configFiles.push({ file: file, number: parseInt(match[1]) }); -======= - storage.list().forEach(file => { - let match = file.match(fileRegex); - if (match) { - let configNumber = match[1]; - configs[configNumber] = handleSelection(configNumber); ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e } else if (file === "boxclk.json") { hasDefaultConfig = true; let defaultConfig = storage.readJSON(file, 1); @@ -64,7 +56,6 @@ } }); -<<<<<<< HEAD // Sort the config files by number configFiles.sort((a, b) => a.number - b.number); @@ -72,8 +63,6 @@ configs[configFile.number] = handleSelection(configFile.number); }); -======= ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e if (!selectedConfig) { if (hasDefaultConfig) { selectedConfig = "Default"; @@ -102,8 +91,4 @@ }); E.showMenu(menu); -<<<<<<< HEAD -})(); -======= }); ->>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e From d9210e9b93eb37f8c8dc14b55e03a282b8478e78 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Tue, 20 Jun 2023 01:32:13 -0500 Subject: [PATCH 1503/1725] Update README.md --- apps/boxclk/README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index f16221ec1..4f7a5ddc3 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -44,6 +44,9 @@ Each box can be customized extensively via a simple JSON configuration. You can } } ``` + +__Breakdown of Parameters:__ + * **Box Name:** The name of your text box. The app includes functional support for "time", "date", "meridian", "dow" (Day of Week), "batt" (Battery), and "step" (Step count). You can add additional custom boxes with unique titles. * **string:** The text string to be displayed inside the box. From b6706134e87c6a26f59340de0608d3f8410e959b Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Tue, 20 Jun 2023 01:34:36 -0500 Subject: [PATCH 1504/1725] Update ChangeLog --- apps/boxclk/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/ChangeLog b/apps/boxclk/ChangeLog index 3e0922aad..aa4c2ae28 100644 --- a/apps/boxclk/ChangeLog +++ b/apps/boxclk/ChangeLog @@ -1,2 +1,2 @@ 0.01: New App! -0.02: New options for configs such as meridian, short/long formats, custom prefix/suffix +0.02: New config options such as meridian, short/long formats, custom prefix/suffix From 6122eeb9cadc617ae0c297c9d4a58a19fa360316 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 20 Jun 2023 07:42:27 +0100 Subject: [PATCH 1505/1725] sanitycheck: whitespace --- bin/sanitycheck.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/sanitycheck.js b/bin/sanitycheck.js index ecba1876e..f2e5b9877 100755 --- a/bin/sanitycheck.js +++ b/bin/sanitycheck.js @@ -116,7 +116,7 @@ apps.forEach((app,appIdx) => { if (!app.id) ERROR(`App ${appIdx} has no id`); var appDirRelative = APPSDIR_RELATIVE+app.id+"/"; var appDir = APPSDIR+app.id+"/"; - var metadataFile = appDirRelative+"metadata.json"; + var metadataFile = appDirRelative+"metadata.json"; if (existingApps.includes(app.id)) ERROR(`Duplicate app '${app.id}'`, {file:metadataFile}); existingApps.push(app.id); //console.log(`Checking ${app.id}...`); @@ -164,11 +164,11 @@ apps.forEach((app,appIdx) => { }); } if (app.readme) { - if (!fs.existsSync(appDir+app.readme)) + if (!fs.existsSync(appDir+app.readme)) ERROR(`App ${app.id} README file doesn't exist`, {file:metadataFile}); } else { let readme = fs.readdirSync(appDir).find(f => f.toLowerCase().includes("readme")); - if (readme) + if (readme) ERROR(`App ${app.id} has a README in the directory (${readme}) but it's not linked`, {file:metadataFile}); } if (app.custom && !fs.existsSync(appDir+app.custom)) ERROR(`App ${app.id} custom HTML doesn't exist`, {file:metadataFile}); From f1d0bf4d62c4f434c61df01d4ad75b9790dd0699 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 11 Jun 2023 12:59:01 +0100 Subject: [PATCH 1506/1725] sanitycheck: look for untracked setting files --- bin/sanitycheck.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bin/sanitycheck.js b/bin/sanitycheck.js index f2e5b9877..a6e85cc4f 100755 --- a/bin/sanitycheck.js +++ b/bin/sanitycheck.js @@ -253,6 +253,10 @@ apps.forEach((app,appIdx) => { if (a>=0 && b>=0 && a !d.name || !d.name.endsWith(".json"))) { + WARN(`App ${app.id} has a setting file but no corresponding data entry (add \`"data":[{"name":"${app.id}.settings.json"}]\`)`, {file:appDirRelative+file.url}); + } } for (const key in file) { if (!STORAGE_KEYS.includes(key)) ERROR(`App ${app.id} file ${file.name} has unknown key ${key}`, {file:appDirRelative+file.url}); From 1551e2bdf43ad4f2f40db473ac6adf101dc88e2c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 20 Jun 2023 07:48:44 +0100 Subject: [PATCH 1507/1725] sanitycheck: regex test for settings, instead of endsWith() --- bin/sanitycheck.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/sanitycheck.js b/bin/sanitycheck.js index a6e85cc4f..b76424483 100755 --- a/bin/sanitycheck.js +++ b/bin/sanitycheck.js @@ -254,7 +254,7 @@ apps.forEach((app,appIdx) => { WARN(`Clock ${app.id} file calls loadWidgets before setUI (clock widget/etc won't be aware a clock app is running)`, {file:appDirRelative+file.url, line : fileContents.substr(0,a).split("\n").length}); } // if settings, suggest adding to datafiles - if (file.name.endsWith("setting.js") && !app.data || app.data.every(d => !d.name || !d.name.endsWith(".json"))) { + if (/\.settings?\.js$/.test(file.name) && (!app.data || app.data.every(d => !d.name || !d.name.endsWith(".json")))) { WARN(`App ${app.id} has a setting file but no corresponding data entry (add \`"data":[{"name":"${app.id}.settings.json"}]\`)`, {file:appDirRelative+file.url}); } } From 1e25c97a45324c4dbf716a4d43d1bdacc1f2b617 Mon Sep 17 00:00:00 2001 From: stweedo Date: Tue, 20 Jun 2023 01:50:35 -0500 Subject: [PATCH 1508/1725] Fix day of month suffix option --- apps/boxclk/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 50a738d3b..41636e1ef 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -186,7 +186,7 @@ } else { suffix = "th"; } - let dayOfMonthStr = short ? dayOfMonth : (disableSuffix ? dayOfMonth : dayOfMonth + suffix); + let dayOfMonthStr = disableSuffix ? dayOfMonth : dayOfMonth + suffix; return month + " " + dayOfMonthStr + (short ? '' : (", " + year)); // not including year for short version }; From 15d0d8ede232530f2a04462d6c3b9f1c77bee6e4 Mon Sep 17 00:00:00 2001 From: stweedo Date: Tue, 20 Jun 2023 02:11:39 -0500 Subject: [PATCH 1509/1725] Update offset --- apps/boxclk/boxclk.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/boxclk.json b/apps/boxclk/boxclk.json index cf5cb6177..51a67ebd6 100644 --- a/apps/boxclk/boxclk.json +++ b/apps/boxclk/boxclk.json @@ -49,9 +49,9 @@ "border": "#fff", "xPadding": -0.5, "yPadding": -0.5, - "xOffset": 2, + "xOffset": 1, "yOffset": 1, - "boxPos": { "x": 0.92, "y": 0.95 }, + "boxPos": { "x": 0.9, "y": 0.95 }, "suffix": "%" }, "bg": { From 3acaa9ac41b15780d51450742e75df8a171e7d90 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Tue, 20 Jun 2023 02:19:32 -0500 Subject: [PATCH 1510/1725] Update ChangeLog - forgot to include step --- apps/boxclk/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/ChangeLog b/apps/boxclk/ChangeLog index aa4c2ae28..ba46af04e 100644 --- a/apps/boxclk/ChangeLog +++ b/apps/boxclk/ChangeLog @@ -1,2 +1,2 @@ 0.01: New App! -0.02: New config options such as meridian, short/long formats, custom prefix/suffix +0.02: New config options such as step, meridian, short/long formats, custom prefix/suffix From 4a194c60214c752f3255e89c1308cc69d668026d Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Tue, 20 Jun 2023 02:27:58 -0500 Subject: [PATCH 1511/1725] Update README.md --- apps/boxclk/README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 4f7a5ddc3..4fa67767e 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -6,7 +6,7 @@ Box Clock is a customizable clock app for Bangle.js 2 that features an interacti __Drag & Drop:__ -This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. +This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. **Note:** Roll the tip of your finger slowly on the screen for fine adjustments. __Double Tap to Save:__ @@ -14,10 +14,12 @@ After you've found the perfect position for your boxes, you can save their posit __JSON Configuration:__ -Each box can be customized extensively via a simple JSON configuration. You can also add a custom text string to your configuration with the "string" attribute. Here's what an example configuration might look like: +Each box can be customized extensively via a simple JSON configuration. You can add a custom text string to your configuration with the "string" parameter and you can match system theme colors by using "fg", "bg", "fg2", "bg2", "fgH", or "bgH" for any of the color parameters. ## Config File Structure +Here's what an example configuration might look like: + ``` { "customBox": { @@ -39,7 +41,7 @@ Each box can be customized extensively via a simple JSON configuration. You can "short": false // Gets long format value of time, meridian, date, or DoW }, - "bg": { // Can also be removed for no backround + "bg": { // Can also be removed for no background "img": "YourImageName.img" } } From 8eaae52bbedeeb67f5b2eb246cc7ce0ad5fb7ea9 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Tue, 20 Jun 2023 02:52:17 -0500 Subject: [PATCH 1512/1725] Update README.md --- apps/boxclk/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 4fa67767e..1dc8ef98f 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -49,7 +49,7 @@ Here's what an example configuration might look like: __Breakdown of Parameters:__ -* **Box Name:** The name of your text box. The app includes functional support for "time", "date", "meridian", "dow" (Day of Week), "batt" (Battery), and "step" (Step count). You can add additional custom boxes with unique titles. +* **Box Name:** The name of your text box. Box Clock includes functional support for "time", "date", "meridian" (AM/PM), "dow" (Day of Week), "batt" (Battery), and "step" (Step count). You can add additional custom boxes with unique titles. * **string:** The text string to be displayed inside the box. From 3995df7fdbc5683d51e825c5ead45c30721e583d Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Tue, 20 Jun 2023 16:50:13 +0200 Subject: [PATCH 1513/1725] gipy: major release we now have a tile based display --- apps/gipy/ChangeLog | 6 +- apps/gipy/README.md | 33 +- apps/gipy/app.js | 1414 +++++++++++++++++++-------- apps/gipy/interface.html | 176 ++-- apps/gipy/legend.png | Bin 29552 -> 18073 bytes apps/gipy/pkg/gpconv.d.ts | 75 -- apps/gipy/pkg/gpconv_bg.wasm | Bin 602158 -> 0 bytes apps/gipy/pkg/gpconv_bg.wasm.d.ts | 16 - apps/gipy/pkg/gps.d.ts | 90 ++ apps/gipy/pkg/{gpconv.js => gps.js} | 348 ++++--- apps/gipy/pkg/gps_bg.wasm | Bin 0 -> 729720 bytes apps/gipy/pkg/gps_bg.wasm.d.ts | 18 + apps/gipy/pkg/package.json | 12 +- apps/gipy/settings.js | 6 +- 14 files changed, 1488 insertions(+), 706 deletions(-) delete mode 100644 apps/gipy/pkg/gpconv.d.ts delete mode 100644 apps/gipy/pkg/gpconv_bg.wasm delete mode 100644 apps/gipy/pkg/gpconv_bg.wasm.d.ts create mode 100644 apps/gipy/pkg/gps.d.ts rename apps/gipy/pkg/{gpconv.js => gps.js} (71%) create mode 100644 apps/gipy/pkg/gps_bg.wasm create mode 100644 apps/gipy/pkg/gps_bg.wasm.d.ts diff --git a/apps/gipy/ChangeLog b/apps/gipy/ChangeLog index bfb2f4282..da1abd473 100644 --- a/apps/gipy/ChangeLog +++ b/apps/gipy/ChangeLog @@ -73,5 +73,7 @@ * Display current and next segment in red so that you know where to go. * Avoid angles flickering at low speed at the cost of less refresh. * Splash screen while waiting for gps signal. - -0.17: Convert Yes/No On/Off in settings to checkboxes + +0.17: + * Major rewrite of display : now tile based + * We have a map. Never get lost again. diff --git a/apps/gipy/README.md b/apps/gipy/README.md index 4ca98dea8..44a8b9bcd 100644 --- a/apps/gipy/README.md +++ b/apps/gipy/README.md @@ -16,6 +16,7 @@ This software is not perfect but surprisingly useful. It provides the following features : - display the path with current position from gps +- display a local map around you, downloaded from openstreetmap - detects and buzzes if you leave the path - buzzes before sharp turns - buzzes before waypoints @@ -28,17 +29,14 @@ It provides the following features : - artwork - bakeries -optionally it can also: - -- try to turn off gps between crossroads to save battery - ## Usage ### Preparing the file You first need to have a trace file in *gpx* format. Usually I download from [komoot](https://www.komoot.com/) or I export -from google maps using [mapstogpx](https://mapstogpx.com/). +from google maps using [mapstogpx](https://mapstogpx.com/). [Brouter](https://brouter.damsy.net) is +also a nice open source option. Note that *mapstogpx* has a super nice feature in its advanced settings. You can turn on 'next turn info' and be warned by the watch when you need to turn. @@ -58,16 +56,16 @@ Once you have a signal you will reach the main screen: ![Screenshot](legend.png) +The screen is oriented so that the top of the image is in front of you. +It will rotate as you turn. On your screen you can see: - yourself (the big black dot) -- the path (the top of the screen is in front of you) -- on the path, current and next segments are red and other ones are black +- the path (thick red line) +- a green arrow telling you which way is forward - if needed a projection of yourself on the path (small black dot) -- points as white dots -- waypoints as doubled white dots +- waypoints as large white dots - some text on the left (from top to bottom): - * time to reach start point at current average speed * current time * time to reach end point at current average speed * left distance till end of current segment @@ -90,17 +88,18 @@ display the direction to follow as a black segment. Note that while lost, the app will slow down a lot since it will start scanning all possible points to figure out where you are. On path it just needed to scan a few points ahead and behind. -![Lost](lost.png) - The distance to next point displayed corresponds to the length of the black segment. +### Menu + +If you click the button you'll reach a menu where you can currently zoom out to see more of the map +(with a slower refresh rate) and reverse the path direction. + ### Settings Few settings for now (feel free to suggest me more) : -- keep gps alive : if turned off, will try to save battery by turning the gps off on long segments -- max speed : used to compute how long to turn the gps off -- display points : display/hide points (not waypoints) +- lost distance : at which distance from path are you considered to be lost ? ### Caveats @@ -109,8 +108,8 @@ It is good to use but you should know : - the gps might take a long time to start initially (see the assisted gps update app). - gps signal is noisy : there is therefore a small delay for instant speed. sometimes you may jump somewhere else. - your gpx trace has been decimated and approximated : the **REAL PATH** might be **A FEW METERS AWAY** -- sometimes the watch will tell you that you are lost but you are in fact on the path. -- battery saving by turning off gps is not very well tested (disabled by default). +- sometimes the watch will tell you that you are lost but you are in fact on the path. It usually figures again +the real gps position after a few minutes. It usually happens when the signal is acquired very fast. - buzzing does not always work: when there is a high load on the watch, the buzzes might just never happen :-(. - buzzes are not strong enough to be always easily noticed. - be careful when **GOING DOWNHILL AT VERY HIGH SPEED**. I already missed a few turning points and by the time I realized it, diff --git a/apps/gipy/app.js b/apps/gipy/app.js index c9d018cac..ae94071ea 100644 --- a/apps/gipy/app.js +++ b/apps/gipy/app.js @@ -1,14 +1,26 @@ let simulated = false; -let file_version = 3; -let code_key = 47490; +let displaying = false; +let in_menu = false; +let go_backwards = false; +let zoomed = true; +let status; + +let interests_colors = [ + 0xffff, // Waypoints, white + 0xf800, // Bakery, red + 0x001f, // DrinkingWater, blue + 0x07ff, // Toilets, cyan + 0x07e0, // Artwork, green +]; + +let Y_OFFSET = 20; +let s = require("Storage"); var settings = Object.assign( { - keep_gps_alive: true, - max_speed: 35, - display_points: true, + lost_distance: 50, }, - require("Storage").readJSON("gipy.json", true) || {} + s.readJSON("gipy.json", true) || {} ); let profile_start_times = []; @@ -29,23 +41,27 @@ function end_profiling(label) { console.log("profile:", label, "took", elapsed); } -let interests_colors = [ - 0xf800, // Bakery, red - 0x001f, // DrinkingWater, blue - 0x07ff, // Toilets, cyan - 0x07e0, // Artwork, green -]; - +// return the index of the largest element of the array which is <= x function binary_search(array, x) { let start = 0, - end = array.length - 1; + end = array.length; - while (start <= end) { + while (end - start >= 0) { let mid = Math.floor((start + end) / 2); - if (array[mid] < x) start = mid + 1; - else end = mid - 1; + if (array[mid] == x) { + return mid; + } else if (array[mid] < x) { + if (array[mid + 1] > x) { + return mid; + } + start = mid + 1; + } else end = mid - 1; + } + if (array[start] > x) { + return null; + } else { + return start; } - return start; } // return a string containing estimated time of arrival. @@ -57,9 +73,9 @@ function compute_eta(hour, minutes, approximate_speed, remaining_distance) { return ""; } let time_needed = (remaining_distance * 60) / approximate_speed; // in minutes - let eta_in_minutes = hour * 60 + minutes + time_needed; - let eta_minutes = Math.round(eta_in_minutes % 60); - let eta_hour = Math.round((eta_in_minutes - eta_minutes) / 60) % 24; + let eta_in_minutes = Math.round(hour * 60 + minutes + time_needed); + let eta_minutes = eta_in_minutes % 60; + let eta_hour = ((eta_in_minutes - eta_minutes) / 60) % 24; if (eta_minutes < 10) { return eta_hour.toString() + ":0" + eta_minutes; } else { @@ -67,37 +83,561 @@ function compute_eta(hour, minutes, approximate_speed, remaining_distance) { } } +class TilesOffsets { + constructor(buffer, offset) { + let type_size = Uint8Array(buffer, offset, 1)[0]; + offset += 1; + this.entry_size = Uint8Array(buffer, offset, 1)[0]; + offset += 1; + let non_empty_tiles_number = Uint16Array(buffer, offset, 1)[0]; + offset += 2; + this.non_empty_tiles = Uint16Array(buffer, offset, non_empty_tiles_number); + offset += 2 * non_empty_tiles_number; + if (type_size == 24) { + this.non_empty_tiles_ends = Uint24Array( + buffer, + offset, + non_empty_tiles_number + ); + offset += 3 * non_empty_tiles_number; + } else if (type_size == 16) { + this.non_empty_tiles_ends = Uint16Array( + buffer, + offset, + non_empty_tiles_number + ); + offset += 2 * non_empty_tiles_number; + } else { + throw "unknown size"; + } + return [this, offset]; + } + tile_start_offset(tile_index) { + if (tile_index <= this.non_empty_tiles[0]) { + return 0; + } else { + return this.tile_end_offset(tile_index - 1); + } + } + tile_end_offset(tile_index) { + let me_or_before = binary_search(this.non_empty_tiles, tile_index); + if (me_or_before === null) { + return 0; + } + if (me_or_before >= this.non_empty_tiles_ends.length) { + return ( + this.non_empty_tiles_ends[this.non_empty_tiles.length - 1] * + this.entry_size + ); + } else { + return this.non_empty_tiles_ends[me_or_before] * this.entry_size; + } + } + end_offset() { + return ( + this.non_empty_tiles_ends[this.non_empty_tiles_ends.length - 1] * + this.entry_size + ); + } +} + +class Map { + constructor(buffer, offset, filename) { + this.points_cache = []; // don't refetch points all the time + // header + let color_array = Uint8Array(buffer, offset, 3); + this.color = [ + color_array[0] / 255, + color_array[1] / 255, + color_array[2] / 255, + ]; + offset += 3; + this.first_tile = Uint32Array(buffer, offset, 2); // absolute tile id of first tile + offset += 2 * 4; + this.grid_size = Uint32Array(buffer, offset, 2); // tiles width and height + offset += 2 * 4; + this.start_coordinates = Float64Array(buffer, offset, 2); // min x and y coordinates + offset += 2 * 8; + let side_array = Float64Array(buffer, offset, 1); // side of a tile + this.side = side_array[0]; + offset += 8; + + // tiles offsets + let res = new TilesOffsets(buffer, offset); + this.tiles_offsets = res[0]; + offset = res[1]; + + // now, do binary ways + // since the file is so big we'll go line by line + let binary_lines = []; + for (let y = 0; y < this.grid_size[1]; y++) { + let first_tile_start = this.tiles_offsets.tile_start_offset( + y * this.grid_size[0] + ); + let last_tile_end = this.tiles_offsets.tile_start_offset( + (y + 1) * this.grid_size[0] + ); + let size = last_tile_end - first_tile_start; + let string = s.read(filename, offset + first_tile_start, size); + let array = Uint8Array(E.toArrayBuffer(string)); + binary_lines.push(array); + } + this.binary_lines = binary_lines; + offset += this.tiles_offsets.end_offset(); + + return [this, offset]; + + // now do streets data header + // let streets_header = E.toArrayBuffer(s.read(filename, offset, 8)); + // let streets_header_offset = 0; + // let full_streets_size = Uint32Array( + // streets_header, + // streets_header_offset, + // 1 + // )[0]; + // streets_header_offset += 4; + // let blocks_number = Uint16Array( + // streets_header, + // streets_header_offset, + // 1 + // )[0]; + // streets_header_offset += 2; + // let labels_string_size = Uint16Array( + // streets_header, + // streets_header_offset, + // 1 + // )[0]; + // streets_header_offset += 2; + // offset += streets_header_offset; + + // // continue with main streets labels + // main_streets_labels = s.read(filename, offset, labels_string_size); + // // this.main_streets_labels = main_streets_labels.split(/\r?\n/); + // this.main_streets_labels = main_streets_labels.split(/\n/); + // offset += labels_string_size; + + // // continue with blocks start offsets + // this.blocks_offsets = Uint32Array( + // E.toArrayBuffer(s.read(filename, offset, blocks_number * 4)) + // ); + // offset += blocks_number * 4; + + // // continue with compressed street blocks + // let encoded_blocks_size = + // full_streets_size - 4 - 2 - 2 - labels_string_size - blocks_number * 4; + // this.compressed_streets = Uint8Array( + // E.toArrayBuffer(s.read(filename, offset, encoded_blocks_size)) + // ); + // offset += encoded_blocks_size; + } + + display( + displayed_x, + displayed_y, + scale_factor, + cos_direction, + sin_direction + ) { + g.setColor(this.color[0], this.color[1], this.color[2]); + let local_x = displayed_x - this.start_coordinates[0]; + let local_y = displayed_y - this.start_coordinates[1]; + let tile_x = Math.floor(local_x / this.side); + let tile_y = Math.floor(local_y / this.side); + let limit = 1; + if (!zoomed) { + limit = 2; + } + for (let y = tile_y - limit; y <= tile_y + limit; y++) { + if (y < 0 || y >= this.grid_size[1]) { + continue; + } + for (let x = tile_x - limit; x <= tile_x + limit; x++) { + if (x < 0 || x >= this.grid_size[0]) { + continue; + } + if ( + this.tile_is_on_screen( + x, + y, + local_x, + local_y, + scale_factor, + cos_direction, + sin_direction + ) + ) { + if (this.color[0] == 1 && this.color[1] == 0 && this.color[2] == 0) { + this.display_thick_tile( + x, + y, + local_x, + local_y, + scale_factor, + cos_direction, + sin_direction + ); + } else { + this.display_tile( + x, + y, + local_x, + local_y, + scale_factor, + cos_direction, + sin_direction + ); + } + } + } + } + } + + tile_is_on_screen( + tile_x, + tile_y, + current_x, + current_y, + scale_factor, + cos_direction, + sin_direction + ) { + let center_x = g.getWidth() / 2; + let center_y = g.getHeight() / 2 + Y_OFFSET; + let side = this.side; + let x1 = tile_x * side; + let y1 = tile_y * side; + let x2 = x1 + side; + let y2 = y1 + side; + let scaled_x1 = (x1 - current_x) * scale_factor; + let scaled_y1 = (y1 - current_y) * scale_factor; + let rotated_x1 = scaled_x1 * cos_direction - scaled_y1 * sin_direction; + let rotated_y1 = scaled_x1 * sin_direction + scaled_y1 * cos_direction; + let scaled_x2 = (x2 - current_x) * scale_factor; + let scaled_y2 = (y2 - current_y) * scale_factor; + let rotated_x2 = scaled_x2 * cos_direction - scaled_y2 * sin_direction; + let rotated_y2 = scaled_x2 * sin_direction + scaled_y2 * cos_direction; + + if (center_x < rotated_x1 && center_x < rotated_x2) { + return false; + } + if (-center_x > rotated_x1 && -center_x > rotated_x2) { + return false; + } + + if (center_y < rotated_y1 && center_y < rotated_y2) { + return false; + } + if (-center_y > rotated_y1 && -center_y > rotated_y2) { + return false; + } + return true; + } + + tile_points(tile_num, tile_x, tile_y, scaled_side) { + let line_start_offset = this.tiles_offsets.tile_start_offset( + tile_y * this.grid_size[0] + ); + let offset = + this.tiles_offsets.tile_start_offset(tile_num) - line_start_offset; + let upper_limit = + this.tiles_offsets.tile_end_offset(tile_num) - line_start_offset; + + let line = this.binary_lines[tile_y]; + // we need to copy both for correct results and for performances + // let's precompute also. + let cached_tile = new Float64Array(upper_limit - offset); + for (let i = offset; i < upper_limit; i += 2) { + let x = (tile_x + line.buffer[i] / 255) * scaled_side; + let y = (tile_y + line.buffer[i + 1] / 255) * scaled_side; + cached_tile[i - offset] = x; + cached_tile[i + 1 - offset] = y; + } + return cached_tile; + } + + invalidate_caches() { + this.points_cache = []; + } + + fetch_points(tile_x, tile_y, scaled_side) { + let tile_num = tile_x + tile_y * this.grid_size[0]; + for (let i = 0; i < this.points_cache.length; i++) { + if (this.points_cache[i][0] == tile_num) { + return this.points_cache[i][1]; + } + } + if (this.points_cache.length > 40) { + this.points_cache.shift(); + } + let points = this.tile_points(tile_num, tile_x, tile_y, scaled_side); + this.points_cache.push([tile_num, points]); + return points; + } + + display_tile( + tile_x, + tile_y, + current_x, + current_y, + scale_factor, + cos_direction, + sin_direction + ) { + "jit"; + let center_x = g.getWidth() / 2; + let center_y = g.getHeight() / 2 + Y_OFFSET; + + let points = this.fetch_points(tile_x, tile_y, this.side * scale_factor); + let scaled_current_x = current_x * scale_factor; + let scaled_current_y = current_y * scale_factor; + + for (let i = 0; i < points.length; i += 4) { + let scaled_x = points[i] - scaled_current_x; + let scaled_y = points[i + 1] - scaled_current_y; + let rotated_x = scaled_x * cos_direction - scaled_y * sin_direction; + let rotated_y = scaled_x * sin_direction + scaled_y * cos_direction; + let final_x = center_x - rotated_x; + let final_y = center_y + rotated_y; + scaled_x = points[i + 2] - scaled_current_x; + scaled_y = points[i + 3] - scaled_current_y; + rotated_x = scaled_x * cos_direction - scaled_y * sin_direction; + rotated_y = scaled_x * sin_direction + scaled_y * cos_direction; + let new_final_x = center_x - rotated_x; + let new_final_y = center_y + rotated_y; + g.drawLine(final_x, final_y, new_final_x, new_final_y); + } + } + + display_thick_tile( + tile_x, + tile_y, + current_x, + current_y, + scale_factor, + cos_direction, + sin_direction + ) { + let center_x = g.getWidth() / 2; + let center_y = g.getHeight() / 2 + Y_OFFSET; + + let points = this.fetch_points(tile_x, tile_y, this.side * scale_factor); + let scaled_current_x = current_x * scale_factor; + let scaled_current_y = current_y * scale_factor; + + for (let i = 0; i < points.length; i += 4) { + let scaled_x = points[i] - scaled_current_x; + let scaled_y = points[i + 1] - scaled_current_y; + let rotated_x = scaled_x * cos_direction - scaled_y * sin_direction; + let rotated_y = scaled_x * sin_direction + scaled_y * cos_direction; + let final_x = center_x - rotated_x; + let final_y = center_y + rotated_y; + scaled_x = points[i + 2] - scaled_current_x; + scaled_y = points[i + 3] - scaled_current_y; + rotated_x = scaled_x * cos_direction - scaled_y * sin_direction; + rotated_y = scaled_x * sin_direction + scaled_y * cos_direction; + let new_final_x = center_x - rotated_x; + let new_final_y = center_y + rotated_y; + + let xdiff = new_final_x - final_x; + let ydiff = new_final_y - final_y; + let d = Math.sqrt(xdiff * xdiff + ydiff * ydiff); + let ox = (-ydiff / d) * 3; + let oy = (xdiff / d) * 3; + g.fillPoly([ + final_x + ox, + final_y + oy, + new_final_x + ox, + new_final_y + oy, + new_final_x - ox, + new_final_y - oy, + final_x - ox, + final_y - oy, + ]); + } + } +} + +class Interests { + constructor(buffer, offset) { + this.first_tile = Uint32Array(buffer, offset, 2); // absolute tile id of first tile + offset += 2 * 4; + this.grid_size = Uint32Array(buffer, offset, 2); // tiles width and height + offset += 2 * 4; + this.start_coordinates = Float64Array(buffer, offset, 2); // min x and y coordinates + offset += 2 * 8; + let side_array = Float64Array(buffer, offset, 1); // side of a tile + this.side = side_array[0]; + offset += 8; + + let res = new TilesOffsets(buffer, offset); + offset = res[1]; + this.offsets = res[0]; + let end = this.offsets.end_offset(); + this.binary_interests = new Uint8Array(end); + let binary_interests = Uint8Array(buffer, offset, end); + for (let i = 0; i < end; i++) { + this.binary_interests[i] = binary_interests[i]; + } + offset += end; + this.points_cache = []; + return [this, offset]; + } + + display( + displayed_x, + displayed_y, + scale_factor, + cos_direction, + sin_direction + ) { + let local_x = displayed_x - this.start_coordinates[0]; + let local_y = displayed_y - this.start_coordinates[1]; + let tile_x = Math.floor(local_x / this.side); + let tile_y = Math.floor(local_y / this.side); + for (let y = tile_y - 1; y <= tile_y + 1; y++) { + if (y < 0 || y >= this.grid_size[1]) { + continue; + } + for (let x = tile_x - 1; x <= tile_x + 1; x++) { + if (x < 0 || x >= this.grid_size[0]) { + continue; + } + this.display_tile( + x, + y, + local_x, + local_y, + scale_factor, + cos_direction, + sin_direction + ); + } + } + } + + tile_points(tile_num, tile_x, tile_y, scaled_side) { + let offset = this.offsets.tile_start_offset(tile_num); + let upper_limit = this.offsets.tile_end_offset(tile_num); + + let tile_interests = []; + for (let i = offset; i < upper_limit; i += 3) { + let interest = this.binary_interests[i]; + let x = (tile_x + this.binary_interests[i + 1] / 255) * scaled_side; + let y = (tile_y + this.binary_interests[i + 2] / 255) * scaled_side; + if (interest >= interests_colors.length) { + throw "bad interest" + interest + "at" + tile_num + "offset" + i; + } + tile_interests.push(interest); + tile_interests.push(x); + tile_interests.push(y); + } + return tile_interests; + } + fetch_points(tile_x, tile_y, scaled_side) { + //TODO: factorize with map ? + let tile_num = tile_x + tile_y * this.grid_size[0]; + for (let i = 0; i < this.points_cache.length; i++) { + if (this.points_cache[i][0] == tile_num) { + return this.points_cache[i][1]; + } + } + if (this.points_cache.length > 40) { + this.points_cache.shift(); + } + let points = this.tile_points(tile_num, tile_x, tile_y, scaled_side); + this.points_cache.push([tile_num, points]); + return points; + } + invalidate_caches() { + this.points_cache = []; + } + display_tile( + tile_x, + tile_y, + displayed_x, + displayed_y, + scale_factor, + cos_direction, + sin_direction + ) { + let width = g.getWidth(); + let half_width = width / 2; + let half_height = g.getHeight() / 2 + Y_OFFSET; + let interests = this.fetch_points(tile_x, tile_y, this.side * scale_factor); + + let scaled_current_x = displayed_x * scale_factor; + let scaled_current_y = displayed_y * scale_factor; + + for (let i = 0; i < interests.length; i += 3) { + let type = interests[i]; + let x = interests[i + 1]; + let y = interests[i + 2]; + + let scaled_x = x - scaled_current_x; + let scaled_y = y - scaled_current_y; + let rotated_x = scaled_x * cos_direction - scaled_y * sin_direction; + let rotated_y = scaled_x * sin_direction + scaled_y * cos_direction; + let final_x = half_width - rotated_x; + let final_y = half_height + rotated_y; + + let color = interests_colors[type]; + if (type == 0) { + g.setColor(0, 0, 0).fillCircle(final_x, final_y, 6); + } + g.setColor(color).fillCircle(final_x, final_y, 5); + } + } +} + class Status { - constructor(path) { + constructor(path, maps, interests) { this.path = path; - this.scale_factor = 40000.0; // multiply geo coordinates by this to get pixels coordinates - this.on_path = false; // are we on the path or lost ? + this.maps = maps; + this.interests = interests; + let half_screen_width = g.getWidth() / 2; + let half_screen_height = g.getHeight() / 2; + let half_screen_diagonal = Math.sqrt( + half_screen_width * half_screen_width + + half_screen_height * half_screen_height + ); + this.scale_factor = half_screen_diagonal / maps[0].side; // multiply geo coordinates by this to get pixels coordinates + this.on_path = true; // are we on the path or lost ? this.position = null; // where we are - this.adjusted_cos_direction = null; // cos of where we look at - this.adjusted_sin_direction = null; // sin of where we look at + this.adjusted_cos_direction = 1; // cos of where we look at + this.adjusted_sin_direction = 0; // sin of where we look at this.current_segment = null; // which segment is closest this.reaching = null; // which waypoint are we reaching ? this.distance_to_next_point = null; // how far are we from next point ? this.projected_point = null; - let r = [0]; - // let's do a reversed prefix computations on all distances: - // loop on all segments in reversed order - let previous_point = null; - for (let i = this.path.len - 1; i >= 0; i--) { - let point = this.path.point(i); - if (previous_point !== null) { - r.unshift(r[0] + point.distance(previous_point)); + if (this.path !== null) { + let r = [0]; + // let's do a reversed prefix computations on all distances: + // loop on all segments in reversed order + let previous_point = null; + for (let i = this.path.len - 1; i >= 0; i--) { + let point = this.path.point(i); + if (previous_point !== null) { + r.unshift(r[0] + point.distance(previous_point)); + } + previous_point = point; } - previous_point = point; + this.remaining_distances = r; // how much distance remains at start of each segment } - this.remaining_distances = r; // how much distance remains at start of each segment this.starting_time = null; // time we start this.advanced_distance = 0.0; this.gps_coordinates_counter = 0; // how many coordinates did we receive this.old_points = []; // record previous points but only when enough distance between them this.old_times = []; // the corresponding times } + invalidate_caches() { + for (let i = 0; i < this.maps.length; i++) { + this.maps[i].invalidate_caches(); + } + if (this.interests !== null) { + this.interests.invalidate_caches(); + } + } new_position_reached(position) { // we try to figure out direction by looking at previous points // instead of the gps course which is not very nice. @@ -147,7 +687,7 @@ class Status { let angle = Math.atan2(diff.lat, diff.lon); return angle; } - update_position(new_position, maybe_direction) { + update_position(new_position, maybe_direction, timestamp) { let direction = this.new_position_reached(new_position); if (direction === null) { if (maybe_direction === null) { @@ -156,173 +696,287 @@ class Status { direction = maybe_direction; } } + if (in_menu) { + return; + } this.adjusted_cos_direction = Math.cos(-direction - Math.PI / 2.0); this.adjusted_sin_direction = Math.sin(-direction - Math.PI / 2.0); - cos_direction = Math.cos(direction); - sin_direction = Math.sin(direction); + this.angle = direction; + let cos_direction = Math.cos(direction); + let sin_direction = Math.sin(direction); this.position = new_position; - // detect segment we are on now - let res = this.path.nearest_segment( - this.position, - Math.max(0, this.current_segment - 1), - Math.min(this.current_segment + 2, this.path.len - 1), - cos_direction, - sin_direction + // we will display position of where we'll be at in a few seconds + // and not where we currently are. + // this is because the display has more than 1sec duration. + this.displayed_position = new Point( + new_position.lon + cos_direction * this.instant_speed * 0.00001, + new_position.lat + sin_direction * this.instant_speed * 0.00001 ); - let orientation = res[0]; - let next_segment = res[1]; - if (this.is_lost(next_segment)) { - // start_profiling(); - // it did not work, try anywhere - res = this.path.nearest_segment( - this.position, - 0, - this.path.len - 1, + // abort if we are late + // if (timestamp !== null) { + // let elapsed = Date.now() - timestamp; + // if (elapsed > 1000) { + // console.log("we are late"); + // return; + // } + // console.log("we are not late"); + // } + + // // abort most frames if locked + // if (Bangle.isLocked() && this.gps_coordinates_counter % 5 != 0) { + // console.log("we are filtered"); + // return; + // } + + if (this.path !== null) { + // detect segment we are on now + let res = this.path.nearest_segment( + this.displayed_position, + Math.max(0, this.current_segment - 1), + Math.min(this.current_segment + 2, this.path.len - 1), cos_direction, sin_direction ); - orientation = res[0]; - next_segment = res[1]; - // end_profiling("repositioning"); - } - // now check if we strayed away from path or back to it - let lost = this.is_lost(next_segment); - if (this.on_path == lost) { - // if status changes - if (lost) { - Bangle.buzz(); // we lost path - setTimeout(() => Bangle.buzz(), 500); - setTimeout(() => Bangle.buzz(), 1000); - setTimeout(() => Bangle.buzz(), 1500); + let orientation = res[0]; + let next_segment = res[1]; + + if (this.is_lost(next_segment)) { + // start_profiling(); + // it did not work, try anywhere + res = this.path.nearest_segment( + this.displayed_position, + 0, + this.path.len - 1, + cos_direction, + sin_direction + ); + orientation = res[0]; + next_segment = res[1]; + // end_profiling("repositioning"); } - this.on_path = !lost; - } - - this.current_segment = next_segment; - - // check if we are nearing the next point on our path and alert the user - let next_point = this.current_segment + (1 - orientation); - this.distance_to_next_point = Math.ceil( - this.position.distance(this.path.point(next_point)) - ); - - // disable gps when far from next point and locked - if (Bangle.isLocked() && !settings.keep_gps_alive) { - let time_to_next_point = - (this.distance_to_next_point * 3.6) / settings.max_speed; - if (time_to_next_point > 60) { - Bangle.setGPSPower(false, "gipy"); - setTimeout(function () { - Bangle.setGPSPower(true, "gipy"); - }, time_to_next_point); + // now check if we strayed away from path or back to it + let lost = this.is_lost(next_segment); + if (this.on_path == lost) { + // if status changes + if (lost) { + Bangle.buzz(); // we lost path + setTimeout(() => Bangle.buzz(), 500); + setTimeout(() => Bangle.buzz(), 1000); + setTimeout(() => Bangle.buzz(), 1500); + } + this.on_path = !lost; } - } - if (this.reaching != next_point && this.distance_to_next_point <= 100) { - this.reaching = next_point; - let reaching_waypoint = this.path.is_waypoint(next_point); - if (reaching_waypoint) { - Bangle.buzz(); - setTimeout(() => Bangle.buzz(), 500); - setTimeout(() => Bangle.buzz(), 1000); - setTimeout(() => Bangle.buzz(), 1500); - if (Bangle.isLocked()) { - Bangle.setLocked(false); + + this.current_segment = next_segment; + + // check if we are nearing the next point on our path and alert the user + let next_point = this.current_segment + (1 - orientation); + this.distance_to_next_point = Math.ceil( + this.position.distance(this.path.point(next_point)) + ); + + // disable gps when far from next point and locked + // if (Bangle.isLocked() && !settings.keep_gps_alive) { + // let time_to_next_point = + // (this.distance_to_next_point * 3.6) / settings.max_speed; + // if (time_to_next_point > 60) { + // Bangle.setGPSPower(false, "gipy"); + // setTimeout(function () { + // Bangle.setGPSPower(true, "gipy"); + // }, time_to_next_point); + // } + // } + if (this.reaching != next_point && this.distance_to_next_point <= 100) { + this.reaching = next_point; + let reaching_waypoint = this.path.is_waypoint(next_point); + if (reaching_waypoint) { + Bangle.buzz(); + setTimeout(() => Bangle.buzz(), 500); + setTimeout(() => Bangle.buzz(), 1000); + setTimeout(() => Bangle.buzz(), 1500); + if (Bangle.isLocked()) { + Bangle.setLocked(false); + } } } } // re-display - this.display(orientation); + this.display(); } - remaining_distance(orientation) { + display_direction() { + //TODO: go towards point on path at 20 meter + if (this.current_segment === null) { + return; + } + let next_point = this.path.point(this.current_segment + (1 - go_backwards)); + + let distance_to_next_point = Math.ceil( + this.projected_point.distance(next_point) + ); + let towards; + if (distance_to_next_point < 20) { + towards = this.path.point(this.current_segment + 2 * (1 - go_backwards)); + } else { + towards = next_point; + } + let diff = towards.minus(this.projected_point); + direction = Math.atan2(diff.lat, diff.lon); + + let full_angle = direction - this.angle; + // let c = towards.coordinates(p, this.adjusted_cos_direction, this.adjusted_sin_direction, this.scale_factor); + // g.setColor(1,0,1).fillCircle(c[0], c[1], 5); + + let scale; + if (zoomed) { + scale = this.scale_factor; + } else { + scale = this.scale_factor / 2; + } + + c = this.projected_point.coordinates( + this.displayed_position, + this.adjusted_cos_direction, + this.adjusted_sin_direction, + scale + ); + + let cos1 = Math.cos(full_angle + 0.6 + Math.PI / 2); + let cos2 = Math.cos(full_angle + Math.PI / 2); + let cos3 = Math.cos(full_angle - 0.6 + Math.PI / 2); + let sin1 = Math.sin(-full_angle - 0.6 - Math.PI / 2); + let sin2 = Math.sin(-full_angle - Math.PI / 2); + let sin3 = Math.sin(-full_angle + 0.6 - Math.PI / 2); + g.setColor(0, 1, 0).fillPoly([ + c[0] + cos1 * 15, + c[1] + sin1 * 15, + c[0] + cos2 * 20, + c[1] + sin2 * 20, + c[0] + cos3 * 15, + c[1] + sin3 * 15, + c[0] + cos3 * 10, + c[1] + sin3 * 10, + c[0] + cos2 * 15, + c[1] + sin2 * 15, + c[0] + cos1 * 10, + c[1] + sin1 * 10, + ]); + } + remaining_distance() { let remaining_in_correct_orientation = this.remaining_distances[this.current_segment + 1] + this.position.distance(this.path.point(this.current_segment + 1)); - if (orientation == 0) { - return remaining_in_correct_orientation; - } else { + if (go_backwards) { return this.remaining_distances[0] - remaining_in_correct_orientation; + } else { + return remaining_in_correct_orientation; } } // check if we are lost (too far from segment we think we are on) // if we are adjust scale so that path will still be displayed. // we do the scale adjustment here to avoid recomputations later on. is_lost(segment) { - let projection = this.position.closest_segment_point( + let projection = this.displayed_position.closest_segment_point( this.path.point(segment), this.path.point(segment + 1) ); this.projected_point = projection; // save this info for display - let distance_to_projection = this.position.distance(projection); - if (distance_to_projection > 50) { - this.scale_factor = - Math.min(88.0 / distance_to_projection, 1.0) * 40000.0; + let distance_to_projection = this.displayed_position.distance(projection); + if (distance_to_projection > settings.lost_distance) { return true; } else { - this.scale_factor = 40000.0; return false; } } - display(orientation) { - g.clear(); - // start_profiling(); - this.display_map(); - // end_profiling("display_map"); - - this.display_interest_points(); - this.display_stats(orientation); - Bangle.drawWidgets(); - } - display_interest_points() { - // this is the algorithm in case we have a lot of interest points - // let's draw all points for 5 segments centered on current one - let starting_group = Math.floor(Math.max(this.current_segment - 2, 0) / 3); - let ending_group = Math.floor( - Math.min(this.current_segment + 2, this.path.len - 2) / 3 - ); - let starting_bucket = binary_search( - this.path.interests_starts, - starting_group - ); - let ending_bucket = binary_search( - this.path.interests_starts, - ending_group + 0.5 - ); - // we have 5 points per bucket - let end_index = Math.min( - this.path.interests_types.length - 1, - ending_bucket * 5 - ); - for (let i = starting_bucket * 5; i <= end_index; i++) { - let index = this.path.interests_on_path[i]; - let interest_point = this.path.interest_point(index); - let color = this.path.interest_color(i); - let c = interest_point.coordinates( - this.position, - this.adjusted_cos_direction, - this.adjusted_sin_direction, - this.scale_factor - ); - g.setColor(color).fillCircle(c[0], c[1], 5); + display() { + if (displaying || in_menu) { + return; // don't draw on drawings } + displaying = true; + g.clear(); + let scale_factor = this.scale_factor; + if (!zoomed) { + scale_factor /= 2; + } + + // start_profiling(); + for (let i = 0; i < this.maps.length; i++) { + this.maps[i].display( + this.displayed_position.lon, + this.displayed_position.lat, + scale_factor, + this.adjusted_cos_direction, + this.adjusted_sin_direction + ); + } + // end_profiling("map"); + if (this.interests !== null) { + this.interests.display( + this.displayed_position.lon, + this.displayed_position.lat, + scale_factor, + this.adjusted_cos_direction, + this.adjusted_sin_direction + ); + } + if (this.position !== null) { + this.display_path(); + } + + this.display_direction(); + this.display_stats(); + Bangle.drawWidgets(); + displaying = false; } - display_stats(orientation) { - let remaining_forward_distance = this.remaining_distance(0); - let remaining_backward_distance = this.remaining_distance(1); - let rounded_forward_distance = - Math.round(remaining_forward_distance / 100) / 10; - let total = Math.round(this.remaining_distances[0] / 100) / 10; + display_stats() { let now = new Date(); let minutes = now.getMinutes().toString(); if (minutes.length < 2) { minutes = "0" + minutes; } let hours = now.getHours().toString(); + + // display the clock + g.setFont("6x8:2") + .setFontAlign(-1, -1, 0) + .setColor(g.theme.fg) + .drawString(hours + ":" + minutes, 0, 24); + + let approximate_speed; + // display speed (avg and instant) + if (this.old_times.length > 0) { + let point_time = this.old_times[this.old_times.length - 1]; + let done_in = point_time - this.starting_time; + approximate_speed = Math.round( + (this.advanced_distance * 3.6) / done_in + ); + let approximate_instant_speed = Math.round(this.instant_speed * 3.6); + g.setFont("6x8:2") + .setFontAlign(-1, -1, 0) + .drawString( + "" + + approximate_speed + + "km/h (in." + + approximate_instant_speed + + ")", + 0, + g.getHeight() - 15 + ); + } + + if (this.path === null || this.position === null) { + return; + } + + let remaining_distance = this.remaining_distance(); + let rounded_distance = Math.round(remaining_distance / 100) / 10; + let total = Math.round(this.remaining_distances[0] / 100) / 10; // now, distance to next point in meters g.setFont("6x8:2") + .setFontAlign(-1, -1, 0) .setColor(g.theme.fg) .drawString( "" + this.distance_to_next_point + "m", @@ -330,55 +984,22 @@ class Status { g.getHeight() - 49 ); - let point_time = this.old_times[this.old_times.length - 1]; - let done_in = point_time - this.starting_time; - let approximate_speed = Math.round( - (this.advanced_distance * 3.6) / done_in - ); - let forward_eta = compute_eta( now.getHours(), now.getMinutes(), approximate_speed, - remaining_forward_distance / 1000 + remaining_distance / 1000 ); - let backward_eta = compute_eta( - now.getHours(), - now.getMinutes(), - approximate_speed, - remaining_backward_distance / 1000 - ); - - // display backward ETA - g.setFont("6x8:2") - .setFontAlign(-1, -1, 0) - .setColor(g.theme.fg) - .drawString(backward_eta, 0, 30); - // display the clock - g.setFont("6x8:2") - .setFontAlign(-1, -1, 0) - .setColor(g.theme.fg) - .drawString(hours + ":" + minutes, 0, 48); // now display ETA g.setFont("6x8:2") .setFontAlign(-1, -1, 0) .setColor(g.theme.fg) - .drawString(forward_eta, 0, 66); - - // display speed (avg and instant) - let approximate_instant_speed = Math.round(this.instant_speed * 3.6); - g.setFont("6x8:2") - .setFontAlign(-1, -1, 0) - .drawString( - "" + approximate_speed + "km/h (in." + approximate_instant_speed + ")", - 0, - g.getHeight() - 15 - ); + .drawString(forward_eta, 0, 42); // display distance on path g.setFont("6x8:2").drawString( - "" + rounded_forward_distance + "/" + total, + "" + rounded_distance + "/" + total, 0, g.getHeight() - 32 ); @@ -397,183 +1018,139 @@ class Status { .drawString("lost", g.getWidth() - 55, 35); } } - display_map() { + display_path() { // don't display all segments, only those neighbouring current segment // this is most likely to be the correct display // while lowering the cost a lot // - // note that all code is inlined here to speed things up from 400ms to 200ms - let start = Math.max(this.current_segment - 4, 0); - let end = Math.min(this.current_segment + 6, this.path.len); - let pos = this.position; + // note that all code is inlined here to speed things up let cos = this.adjusted_cos_direction; let sin = this.adjusted_sin_direction; - let points = this.path.points; - let cx = pos.lon; - let cy = pos.lat; - let half_width = g.getWidth() / 2; - let half_height = g.getHeight() / 2; - let previous_x = null; - let previous_y = null; + let displayed_x = this.displayed_position.lon; + let displayed_y = this.displayed_position.lat; + let width = g.getWidth(); + let height = g.getHeight(); + let half_width = width / 2; + let half_height = height / 2 + Y_OFFSET; let scale_factor = this.scale_factor; + if (!zoomed) { + scale_factor /= 2; + } - // display direction to next point if lost - if (!this.on_path) { - let next_point = this.path.point(this.current_segment + 1); - let previous_point = this.path.point(this.current_segment); - let nearest_point; - if ( - previous_point.fake_distance(this.position) < - next_point.fake_distance(this.position) - ) { - nearest_point = previous_point; - } else { - nearest_point = next_point; - } - let tx = (nearest_point.lon - cx) * scale_factor; - let ty = (nearest_point.lat - cy) * scale_factor; + if (this.path !== null) { + // compute coordinate for projection on path + let tx = (this.projected_point.lon - displayed_x) * scale_factor; + let ty = (this.projected_point.lat - displayed_y) * scale_factor; let rotated_x = tx * cos - ty * sin; let rotated_y = tx * sin + ty * cos; - let x = half_width - Math.round(rotated_x); // x is inverted - let y = half_height + Math.round(rotated_y); - g.setColor(g.theme.fgH).drawLine(half_width, half_height, x, y); - } + let projected_x = half_width - Math.round(rotated_x); // x is inverted + let projected_y = half_height + Math.round(rotated_y); - // now display path - for (let i = start; i < end; i++) { - let tx = (points[2 * i] - cx) * scale_factor; - let ty = (points[2 * i + 1] - cy) * scale_factor; - let rotated_x = tx * cos - ty * sin; - let rotated_y = tx * sin + ty * cos; - let x = half_width - Math.round(rotated_x); // x is inverted - let y = half_height + Math.round(rotated_y); - if (previous_x !== null) { - let segment_color = g.theme.fg; - if (i == this.current_segment + 1 || i == this.current_segment + 2) { - segment_color = 0xf800; - } - g.setColor(segment_color); - g.drawLine(previous_x, previous_y, x, y); - - if (this.path.is_waypoint(i - 1)) { - g.setColor(g.theme.fg); - g.fillCircle(previous_x, previous_y, 6); - g.setColor(g.theme.bg); - g.fillCircle(previous_x, previous_y, 5); - } - if (settings.display_points) { - g.setColor(g.theme.fg); - g.fillCircle(previous_x, previous_y, 4); - g.setColor(g.theme.bg); - g.fillCircle(previous_x, previous_y, 3); + // display direction to next point if lost + if (!this.on_path) { + let next_point = this.path.point(this.current_segment + 1); + let previous_point = this.path.point(this.current_segment); + let nearest_point; + if ( + previous_point.fake_distance(this.position) < + next_point.fake_distance(this.position) + ) { + nearest_point = previous_point; + } else { + nearest_point = next_point; } + let tx = (nearest_point.lon - displayed_x) * scale_factor; + let ty = (nearest_point.lat - displayed_y) * scale_factor; + let rotated_x = tx * cos - ty * sin; + let rotated_y = tx * sin + ty * cos; + let x = half_width - Math.round(rotated_x); // x is inverted + let y = half_height + Math.round(rotated_y); + g.setColor(g.theme.fgH).drawLine(half_width, half_height, x, y); } - previous_x = x; - previous_y = y; + // display current-segment's projection + g.setColor(0, 0, 0); + g.fillCircle(projected_x, projected_y, 4); } - if (this.path.is_waypoint(end - 1)) { - g.setColor(g.theme.fg); - g.fillCircle(previous_x, previous_y, 6); - g.setColor(g.theme.bg); - g.fillCircle(previous_x, previous_y, 5); - } - g.setColor(g.theme.fg); - g.fillCircle(previous_x, previous_y, 4); - g.setColor(g.theme.bg); - g.fillCircle(previous_x, previous_y, 3); - // now display ourselves - g.setColor(g.theme.fgH); + g.setColor(0, 0, 0); g.fillCircle(half_width, half_height, 5); - - // display current-segment's projection - let tx = (this.projected_point.lon - cx) * scale_factor; - let ty = (this.projected_point.lat - cy) * scale_factor; - let rotated_x = tx * cos - ty * sin; - let rotated_y = tx * sin + ty * cos; - let x = half_width - Math.round(rotated_x); // x is inverted - let y = half_height + Math.round(rotated_y); - g.setColor(g.theme.fgH); - g.fillCircle(x, y, 4); } } -function load_gpc(filename) { - let buffer = require("Storage").readArrayBuffer(filename); +function load_gps(filename) { + // let's display splash screen while loading file + g.clear(); + g.drawImage(splashscreen, 0, 0); + g.setFont("6x8:2") + .setFontAlign(-1, -1, 0) + .setColor(0xf800) + .drawString(filename, 0, g.getHeight() - 30); + g.flip(); + + let buffer = s.readArrayBuffer(filename); let file_size = buffer.length; let offset = 0; - // header - let header = Uint16Array(buffer, offset, 5); - offset += 5 * 2; - let key = header[0]; - let version = header[1]; - let points_number = header[2]; - if (key != code_key || version > file_version) { - E.showMessage("Invalid gpc file"); - load(); + let path = null; + let maps = []; + let interests = null; + while (offset < file_size) { + let block_type = Uint8Array(buffer, offset, 1)[0]; + offset += 1; + if (block_type == 0) { + // it's a map + console.log("loading map"); + let res = new Map(buffer, offset, filename); + let map = res[0]; + offset = res[1]; + maps.push(map); + } else if (block_type == 2) { + console.log("loading path"); + let res = new Path(buffer, offset); + path = res[0]; + offset = res[1]; + } else if (block_type == 3) { + console.log("loading interests"); + let res = new Interests(buffer, offset); + interests = res[0]; + offset = res[1]; + } else { + console.log("todo : block type", block_type); + } } - // path points - let points = Float64Array(buffer, offset, points_number * 2); - offset += 8 * points_number * 2; - - // path waypoints - let waypoints_len = Math.ceil(points_number / 8.0); - let waypoints = Uint8Array(buffer, offset, waypoints_len); - offset += waypoints_len; - - // interest points - let interests_number = header[3]; - let interests_coordinates = Float64Array( - buffer, - offset, - interests_number * 2 - ); - offset += 8 * interests_number * 2; - let interests_types = Uint8Array(buffer, offset, interests_number); - offset += interests_number; - - // interests on path - let interests_on_path_number = header[4]; - let interests_on_path = Uint16Array(buffer, offset, interests_on_path_number); - offset += 2 * interests_on_path_number; - let starts_length = Math.ceil(interests_on_path_number / 5.0); - let interests_starts = Uint16Array(buffer, offset, starts_length); - offset += 2 * starts_length; - - let path_data = [ - points, - waypoints, - interests_coordinates, - interests_types, - interests_on_path, - interests_starts, - ]; - // checksum file size if (offset != file_size) { console.log("invalid file size", file_size, "expected", offset); let msg = "invalid file\nsize " + file_size + "\ninstead of" + offset; E.showAlert(msg).then(function () { E.showAlert(); - start_gipy(filename, path_data); + start_gipy(path, maps, interests); }); } else { - start_gipy(filename, path_data); + start_gipy(path, maps, interests); } } class Path { - constructor(arrays) { - this.points = arrays[0]; - this.waypoints = arrays[1]; - this.interests_coordinates = arrays[2]; - this.interests_types = arrays[3]; - this.interests_on_path = arrays[4]; - this.interests_starts = arrays[5]; + constructor(buffer, offset) { + // let p = Uint16Array(buffer, offset, 1); + // console.log(p); + let points_number = Uint16Array(buffer, offset, 1)[0]; + offset += 2; + + // path points + this.points = Float64Array(buffer, offset, points_number * 2); + offset += 8 * points_number * 2; + + // path waypoints + let waypoints_len = Math.ceil(points_number / 8.0); + this.waypoints = Uint8Array(buffer, offset, waypoints_len); + offset += waypoints_len; + + return [this, offset]; } is_waypoint(point_index) { @@ -590,16 +1167,6 @@ class Path { return new Point(lon, lat); } - interest_point(index) { - let lon = this.interests_coordinates[2 * index]; - let lat = this.interests_coordinates[2 * index + 1]; - return new Point(lon, lat); - } - - interest_color(index) { - return interests_colors[this.interests_types[index]]; - } - // return index of segment which is nearest from point. // we need a direction because we need there is an ambiguity // for overlapping segments which are taken once to go and once to come back. @@ -653,7 +1220,7 @@ class Point { translated.lon * sin_direction + translated.lat * cos_direction; return [ g.getWidth() / 2 - Math.round(rotated_x), // x is inverted - g.getHeight() / 2 + Math.round(rotated_y), + g.getHeight() / 2 + Math.round(rotated_y) + Y_OFFSET, ]; } minus(other_point) { @@ -731,37 +1298,50 @@ class Point { } } -let fake_gps_point = 0.0; +let fake_gps_point = 0; function simulate_gps(status) { - // let's keep the screen on in simulations - Bangle.setLCDTimeout(0); - Bangle.setLCDPower(1); - if (fake_gps_point > status.path.len - 1) { - return; - } - let point_index = Math.floor(fake_gps_point); - if (point_index >= status.path.len / 2 - 1) { - return; - } - let p1 = status.path.point(2 * point_index); // use these to approximately follow path - let p2 = status.path.point(2 * (point_index + 1)); - //let p1 = status.path.point(point_index); // use these to strictly follow path - //let p2 = status.path.point(point_index + 1); + if (status.path === null) { + let map = status.maps[0]; + let p1 = new Point(map.start_coordinates[0], map.start_coordinates[1]); + let p2 = new Point( + map.start_coordinates[0] + map.side * map.grid_size[0], + map.start_coordinates[1] + map.side * map.grid_size[1] + ); + let pos = p1.times(1 - fake_gps_point).plus(p2.times(fake_gps_point)); + if (fake_gps_point < 1) { + fake_gps_point += 0.01; + } + status.update_position(pos, null, null); + } else { + if (fake_gps_point > status.path.len - 1 || fake_gps_point < 0) { + return; + } + let point_index = Math.floor(fake_gps_point); + if (point_index >= status.path.len / 2 - 1) { + return; + } + let p1 = status.path.point(2 * point_index); // use these to approximately follow path + let p2 = status.path.point(2 * (point_index + 1)); + //let p1 = status.path.point(point_index); // use these to strictly follow path + //let p2 = status.path.point(point_index + 1); - let alpha = fake_gps_point - point_index; - let pos = p1.times(1 - alpha).plus(p2.times(alpha)); - let old_pos = status.position; + let alpha = fake_gps_point - point_index; + let pos = p1.times(1 - alpha).plus(p2.times(alpha)); - fake_gps_point += 0.05; // advance simulation - // status.update_position(new Point(1, 1), null); // uncomment to be always lost - status.update_position(pos, null); + if (go_backwards) { + fake_gps_point -= 0.05; // advance simulation + } else { + fake_gps_point += 0.05; // advance simulation + } + status.update_position(pos, null, null); + } } function drawMenu() { const menu = { "": { title: "choose trace" }, }; - var files = require("Storage").list(".gpc"); + var files = s.list(".gps"); for (var i = 0; i < files.length; ++i) { menu[files[i]] = start.bind(null, files[i]); } @@ -775,27 +1355,54 @@ function start(fn) { E.showMenu(); console.log("loading", fn); - load_gpc(fn); + load_gps(fn); } -function start_gipy(filename, path_data) { +function start_gipy(path, maps, interests) { console.log("starting"); - let path = new Path(path_data); - let status = new Status(path); + status = new Status(path, maps, interests); + + if (status.path !== null) { + let start = status.path.point(0); + status.displayed_position = start; + } else { + let first_map = maps[0]; + status.displayed_position = new Point( + first_map.start_coordinates[0] + + (first_map.side * first_map.grid_size[0]) / 2, + first_map.start_coordinates[1] + + (first_map.side * first_map.grid_size[1]) / 2); + } + status.display(); + + Bangle.on("stroke", (o) => { + if (in_menu) { + return; + } + // we move display according to stroke + let first_x = o.xy[0]; + let first_y = o.xy[1]; + let last_x = o.xy[o.xy.length - 2]; + let last_y = o.xy[o.xy.length - 1]; + let xdiff = last_x - first_x; + let ydiff = last_y - first_y; + + let c = status.adjusted_cos_direction; + let s = status.adjusted_sin_direction; + let rotated_x = xdiff * c - ydiff * s; + let rotated_y = xdiff * s + ydiff * c; + status.displayed_x += rotated_x / ((status.scale_factor * 4) / 3); + status.displayed_y -= rotated_y / ((status.scale_factor * 4) / 3); + status.display(); + }); if (simulated) { status.starting_time = getTime(); - status.position = new Point(status.path.point(0)); + // let's keep the screen on in simulations + Bangle.setLCDTimeout(0); + Bangle.setLCDPower(1); setInterval(simulate_gps, 500, status); } else { - // let's display splash screen while waiting for gps signal - g.clear(); - g.drawImage(splashscreen, 0, 0); - g.setFont("6x8:2") - .setFontAlign(-1, -1, 0) - .setColor(0xf800) - .drawString(filename, 0, g.getHeight() - 30); - Bangle.setLocked(false); let frame = 0; @@ -811,7 +1418,7 @@ function start_gipy(filename, path_data) { status.starting_time = getTime(); Bangle.loadWidgets(); // i don't know why i cannot load them at start : they would display on splash screen } - status.update_position(new Point(data.lon, data.lat), null); + status.update_position(new Point(data.lon, data.lat), null, data.time); } let gps_status_color; if (frame % 2 == 0 || valid_coordinates) { @@ -819,9 +1426,11 @@ function start_gipy(filename, path_data) { } else { gps_status_color = g.theme.fg; } - g.setColor(gps_status_color) - .setFont("6x8:2") - .drawString("gps", g.getWidth() - 40, 30); + if (!in_menu) { + g.setColor(gps_status_color) + .setFont("6x8:2") + .drawString("gps", g.getWidth() - 40, 30); + } }; Bangle.setGPSPower(true, "gipy"); @@ -834,7 +1443,46 @@ function start_gipy(filename, path_data) { } } -let files = require("Storage").list(".gpc"); +setWatch( + function () { + if (in_menu) { + return; + } + in_menu = true; + const menu = { + "": { title: "choose action" }, + "Go Backward": { + value: go_backwards, + format: (v) => (v ? "On" : "Off"), + onchange: (v) => { + go_backwards = v; + }, + }, + Zoom: { + value: zoomed, + format: (v) => (v ? "In" : "Out"), + onchange: (v) => { + status.invalidate_caches(); + zoomed = v; + }, + }, + "back to map": function () { + in_menu = false; + E.showMenu(); + g.clear(); + g.flip(); + if (status !== null) { + status.display(); + } + }, + }; + E.showMenu(menu); + }, + BTN1, + { repeat: true } +); + +let files = s.list(".gps"); if (files.length <= 1) { if (files.length == 0) { load(); diff --git a/apps/gipy/interface.html b/apps/gipy/interface.html index 552e7be17..13297e17b 100644 --- a/apps/gipy/interface.html +++ b/apps/gipy/interface.html @@ -1,21 +1,27 @@ + + + +
    -

    Please select a gpx file to be converted to gpc and loaded.

    - +

    Please select a gpx file OR an area on the map using shift + drag the mouse.

    gpx file :
    - gpc filename : .gpc (max 24 characters) + gps filename : .gps (max 24 characters)
    - -
    DateTypeDate/Time Summary
    Date/Time Summary
    Type Date/Time SummaryOn?
    @@ -46,7 +52,7 @@ svg { width:95% }
    -
    +
    diff --git a/apps/gipy/legend.png b/apps/gipy/legend.png index 9040f6df8f0f05be5ad7c00aedf8cb8c41944f3d..b3df7bee778fd4860b801272b0eb7411fade0315 100644 GIT binary patch literal 18073 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
    DkE%_33T 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 Uiq0|orzI#kDP_rgaYMiV1qo(8b^rhX literal 29552 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 CA>(rZ diff --git a/apps/gipy/pkg/gpconv.d.ts b/apps/gipy/pkg/gpconv.d.ts deleted file mode 100644 index 2bb57f651..000000000 --- a/apps/gipy/pkg/gpconv.d.ts +++ /dev/null @@ -1,75 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** -* @param {GpcSvg} gpcsvg -* @returns {Uint8Array} -*/ -export function get_gpc(gpcsvg: GpcSvg): Uint8Array; -/** -* @param {GpcSvg} gpcsvg -* @returns {Uint8Array} -*/ -export function get_svg(gpcsvg: GpcSvg): Uint8Array; -/** -* @param {string} input_str -* @returns {Promise} -*/ -export function convert_gpx_strings_no_osm(input_str: string): Promise; -/** -* @param {string} input_str -* @param {string} key1 -* @param {string} value1 -* @param {string} key2 -* @param {string} value2 -* @param {string} key3 -* @param {string} value3 -* @param {string} key4 -* @param {string} value4 -* @returns {Promise} -*/ -export function convert_gpx_strings(input_str: string, key1: string, value1: string, key2: string, value2: string, key3: string, value3: string, key4: string, value4: string): Promise; -/** -*/ -export class GpcSvg { - free(): void; -} - -export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module; - -export interface InitOutput { - readonly memory: WebAssembly.Memory; - readonly __wbg_gpcsvg_free: (a: number) => void; - readonly get_gpc: (a: number, b: number) => void; - readonly get_svg: (a: number, b: number) => void; - readonly convert_gpx_strings_no_osm: (a: number, b: number) => number; - readonly convert_gpx_strings: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number) => number; - readonly __wbindgen_malloc: (a: number) => number; - readonly __wbindgen_realloc: (a: number, b: number, c: number) => number; - readonly __wbindgen_export_2: WebAssembly.Table; - readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h317df853f2d4653e: (a: number, b: number, c: number) => void; - readonly __wbindgen_add_to_stack_pointer: (a: number) => number; - readonly __wbindgen_free: (a: number, b: number) => void; - readonly __wbindgen_exn_store: (a: number) => void; - readonly wasm_bindgen__convert__closures__invoke2_mut__h573cb80e0bf72240: (a: number, b: number, c: number, d: number) => void; -} - -export type SyncInitInput = BufferSource | WebAssembly.Module; -/** -* Instantiates the given `module`, which can either be bytes or -* a precompiled `WebAssembly.Module`. -* -* @param {SyncInitInput} module -* -* @returns {InitOutput} -*/ -export function initSync(module: SyncInitInput): InitOutput; - -/** -* If `module_or_path` is {RequestInfo} or {URL}, makes a request and -* for everything else, calls `WebAssembly.instantiate` directly. -* -* @param {InitInput | Promise} module_or_path -* -* @returns {Promise} -*/ -export default function init (module_or_path?: InitInput | Promise): Promise; diff --git a/apps/gipy/pkg/gpconv_bg.wasm b/apps/gipy/pkg/gpconv_bg.wasm deleted file mode 100644 index 245afc20c57cfd98de4594b7c748f1bbc491a9b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 602158 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
    y^dK?=aigSBdY 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

    464p#g)nT@-)PjImq#;ja$$*Lz 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

    g}4JSZjW^YkqAb@-y3MF_V0@ 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

    }6b(c`rU4~YjXrbyAk7%K29*UNp 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≶K*CAf;JtfhXd{(5Sr<9}cgNs&??*007 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 back(), "keep gps alive": { value: !!settings.keep_gps_alive, // !! converts undefined to false - onchange: v => { + format: (v) => (v ? "Yes" : "No"), + onchange: (v) => { settings.keep_gps_alive = v; writeSettings(); }, From 01e6ccb1adcfc585a204bfcf3607e20ab7a168ac Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Tue, 20 Jun 2023 16:53:00 +0200 Subject: [PATCH 1514/1725] gipy: disable some linting --- .eslintignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.eslintignore b/.eslintignore index 2561e1379..f28e67b54 100644 --- a/.eslintignore +++ b/.eslintignore @@ -3,7 +3,7 @@ apps/banglerun/rollup.config.js apps/schoolCalendar/fullcalendar/main.js apps/authentiwatch/qr_packed.js apps/qrcode/qr-scanner.umd.min.js -apps/gipy/pkg/gpconv.js +apps/gipy/pkg/gps.js apps/health/chart.min.js *.test.js From 76b7a1194aefe301e8412fa1ee4bf8e984b1c31d Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 20 Jun 2023 22:07:17 +0100 Subject: [PATCH 1515/1725] Add data:[...] entries to apps using storage --- apps/90sclk/metadata.json | 3 ++- apps/activepedom/metadata.json | 3 ++- apps/bthrm/metadata.json | 3 ++- apps/bwclk/metadata.json | 3 ++- apps/bwclklite/metadata.json | 5 +++++ apps/cassioWatch/metadata.json | 5 ++++- apps/chargerot/metadata.json | 3 ++- apps/contourclock/metadata.json | 3 ++- apps/cprassist/metadata.json | 3 ++- apps/cscsensor/metadata.json | 3 +++ apps/cycling/metadata.json | 3 +++ apps/dragboard/metadata.json | 5 ++++- apps/draguboard/metadata.json | 5 ++++- apps/f9lander/metadata.json | 3 ++- apps/game1024/metadata.json | 3 ++- apps/getup/metadata.json | 3 ++- apps/happyclk/metadata.json | 3 ++- apps/hralarm/metadata.json | 5 ++++- apps/imageclock/metadata.json | 3 +++ apps/kbtouch/metadata.json | 3 ++- apps/lcars/metadata.json | 3 ++- apps/limelight/metadata.json | 3 +++ apps/linuxclock/metadata.json | 3 ++- apps/loadingscreen/metadata.json | 3 ++- apps/metronome/metadata.json | 3 ++- apps/mysticclock/metadata.json | 3 +++ apps/mysticdock/metadata.json | 3 +++ apps/openwind/metadata.json | 5 +++-- apps/pebble/metadata.json | 3 +++ apps/pebbled/metadata.json | 3 ++- apps/pebblepp/metadata.json | 3 +++ apps/pomoplus/metadata.json | 3 +++ apps/rebble/metadata.json | 3 +++ apps/sensortools/metadata.json | 3 +++ apps/sleeplogalarm/metadata.json | 3 ++- apps/speedalt/metadata.json | 3 +++ apps/timecal/metadata.json | 3 ++- apps/torch/metadata.json | 3 +++ apps/widpedom/metadata.json | 3 ++- apps/wohrm/metadata.json | 3 ++- 40 files changed, 105 insertions(+), 27 deletions(-) diff --git a/apps/90sclk/metadata.json b/apps/90sclk/metadata.json index bfbb6b080..b4b320a1b 100644 --- a/apps/90sclk/metadata.json +++ b/apps/90sclk/metadata.json @@ -14,5 +14,6 @@ {"name":"90sclk.app.js","url":"app.js"}, {"name":"90sclk.img","url":"app-icon.js","evaluate":true}, {"name":"90sclk.settings.js","url":"settings.js"} - ] + ], + "data": [{"name":"90sclk.setting.json"}] } diff --git a/apps/activepedom/metadata.json b/apps/activepedom/metadata.json index 81bafb573..fa1044d85 100644 --- a/apps/activepedom/metadata.json +++ b/apps/activepedom/metadata.json @@ -14,5 +14,6 @@ {"name":"activepedom.settings.js","url":"settings.js"}, {"name":"activepedom.img","url":"app-icon.js","evaluate":true}, {"name":"activepedom.app.js","url":"app.js"} - ] + ], + "data":[{"name":"activepedom.settings.json"}] } diff --git a/apps/bthrm/metadata.json b/apps/bthrm/metadata.json index fea274ff3..6c31759c9 100644 --- a/apps/bthrm/metadata.json +++ b/apps/bthrm/metadata.json @@ -18,5 +18,6 @@ {"name":"bthrm.settings.js","url":"settings.js"}, {"name":"bthrm","url":"lib.js"}, {"name":"bthrm.default.json","url":"default.json"} - ] + ], + "data": [{"name":"bthrm.json"}] } diff --git a/apps/bwclk/metadata.json b/apps/bwclk/metadata.json index fba759bf0..d4091c2fe 100644 --- a/apps/bwclk/metadata.json +++ b/apps/bwclk/metadata.json @@ -15,5 +15,6 @@ {"name":"bwclk.app.js","url":"app.js"}, {"name":"bwclk.img","url":"app-icon.js","evaluate":true}, {"name":"bwclk.settings.js","url":"settings.js"} - ] + ], + "data":[{"name":"bwclk.setting.json"}] } diff --git a/apps/bwclklite/metadata.json b/apps/bwclklite/metadata.json index b073f985e..f8dffdca9 100644 --- a/apps/bwclklite/metadata.json +++ b/apps/bwclklite/metadata.json @@ -39,5 +39,10 @@ "name": "bwclklite.settings.js", "url": "settings.js" } + ], + "data": [ + { + "name": "bwclklite.setting.json" + } ] } diff --git a/apps/cassioWatch/metadata.json b/apps/cassioWatch/metadata.json index 4b9985c82..fb7dfd401 100644 --- a/apps/cassioWatch/metadata.json +++ b/apps/cassioWatch/metadata.json @@ -12,7 +12,10 @@ "readme": "README.md", "storage": [ { "name": "cassioWatch.app.js", "url": "app.js" }, - {"name":"cassioWatch.settings.js","url":"settings.js"}, + { "name": "cassioWatch.settings.js","url": "settings.js" }, { "name": "cassioWatch.img", "url": "icon.js", "evaluate": true } + ], + "data": [ + { "name": "cassioWatch.settings.json" } ] } diff --git a/apps/chargerot/metadata.json b/apps/chargerot/metadata.json index 99c97070e..1b13403d7 100644 --- a/apps/chargerot/metadata.json +++ b/apps/chargerot/metadata.json @@ -11,5 +11,6 @@ "storage": [ {"name":"chargerot.boot.js","url":"boot.js"}, {"name":"chargerot.settings.js","url":"settings.js"} - ] + ], + "data":[{"name":"chargerot.settings.json"}] } diff --git a/apps/contourclock/metadata.json b/apps/contourclock/metadata.json index d59999c04..ca5ee114f 100644 --- a/apps/contourclock/metadata.json +++ b/apps/contourclock/metadata.json @@ -15,5 +15,6 @@ {"name":"contourclock.settings.js","url":"contourclock.settings.js"}, {"name":"contourclock","url":"lib.js"}, {"name":"contourclock.img","url":"app-icon.js","evaluate":true} - ] + ], + "data": [{"name":"contourclock.json"}] } diff --git a/apps/cprassist/metadata.json b/apps/cprassist/metadata.json index d832e98c5..94ba71d1b 100644 --- a/apps/cprassist/metadata.json +++ b/apps/cprassist/metadata.json @@ -13,5 +13,6 @@ {"name":"cprassist.app.js","url":"cprassist.js"}, {"name":"cprassist.img","url":"cprassist-icon.js","evaluate":true}, {"name":"cprassist.settings.js","url":"settings.js"} - ] + ], + "data":[{"name":"cprassist.settings.json"}] } diff --git a/apps/cscsensor/metadata.json b/apps/cscsensor/metadata.json index 87eb5d12f..d7c3add53 100644 --- a/apps/cscsensor/metadata.json +++ b/apps/cscsensor/metadata.json @@ -12,5 +12,8 @@ {"name":"cscsensor.app.js","url":"cscsensor.app.js"}, {"name":"cscsensor.settings.js","url":"settings.js"}, {"name":"cscsensor.img","url":"cscsensor-icon.js","evaluate":true} + ], + "data": [ + {"name":"cscsensor.json"} ] } diff --git a/apps/cycling/metadata.json b/apps/cycling/metadata.json index cb4260bb2..caf93eda3 100644 --- a/apps/cycling/metadata.json +++ b/apps/cycling/metadata.json @@ -13,5 +13,8 @@ {"name":"cycling.settings.js","url":"settings.js"}, {"name":"blecsc","url":"blecsc.js"}, {"name":"cycling.img","url":"cycling.icon.js","evaluate": true} + ], + "data": [ + {"name":"cycling.json"} ] } diff --git a/apps/dragboard/metadata.json b/apps/dragboard/metadata.json index 964ace3a7..58de5153c 100644 --- a/apps/dragboard/metadata.json +++ b/apps/dragboard/metadata.json @@ -6,10 +6,13 @@ "type":"textinput", "tags": "keyboard", "supports" : ["BANGLEJS2"], - "screenshots": [{"url":"screenshot.png"}], + "screenshots": [{"url":"screenshot.png"}], "readme": "README.md", "storage": [ {"name":"textinput","url":"lib.js"}, {"name":"dragboard.settings.js","url":"settings.js"} + ], + "data": [ + {"name":"dragboard.json"} ] } diff --git a/apps/draguboard/metadata.json b/apps/draguboard/metadata.json index 926e36807..dc9b06254 100644 --- a/apps/draguboard/metadata.json +++ b/apps/draguboard/metadata.json @@ -6,10 +6,13 @@ "type":"textinput", "tags": "keyboard", "supports" : ["BANGLEJS2"], - "screenshots": [{"url":"screenshot.png"}], + "screenshots": [{"url":"screenshot.png"}], "readme": "README.md", "storage": [ {"name":"textinput","url":"lib.js"}, {"name":"draguboard.settings.js","url":"settings.js"} + ], + "data": [ + {"name":"draguboard.json"} ] } diff --git a/apps/f9lander/metadata.json b/apps/f9lander/metadata.json index e53805ee0..5a3887c9e 100644 --- a/apps/f9lander/metadata.json +++ b/apps/f9lander/metadata.json @@ -12,5 +12,6 @@ {"name":"f9lander.app.js","url":"app.js"}, {"name":"f9lander.img","url":"app-icon.js","evaluate":true}, {"name":"f9lander.settings.js", "url":"settings.js"} - ] + ], + "data":[{"name":"f9settings.json"}] } diff --git a/apps/game1024/metadata.json b/apps/game1024/metadata.json index f3b72aad3..45d6e3f61 100644 --- a/apps/game1024/metadata.json +++ b/apps/game1024/metadata.json @@ -14,5 +14,6 @@ {"name":"game1024.app.js","url":"app.js"}, {"name":"game1024.settings.js","url":"settings.js"}, {"name":"game1024.img","url":"app-icon.js","evaluate":true} - ] + ], + "data":[{"name":"game1024.settings.json"}] } diff --git a/apps/getup/metadata.json b/apps/getup/metadata.json index 0c5a7cc5b..00bab40be 100644 --- a/apps/getup/metadata.json +++ b/apps/getup/metadata.json @@ -14,5 +14,6 @@ {"name":"getup.app.js","url":"app.js"}, {"name":"getup.settings.js","url":"settings.js"}, {"name":"getup.img","url":"app-icon.js","evaluate":true} - ] + ], + "data":[{"name":"getup.settings.json"}] } diff --git a/apps/happyclk/metadata.json b/apps/happyclk/metadata.json index e5129b0f0..da7bdcd16 100644 --- a/apps/happyclk/metadata.json +++ b/apps/happyclk/metadata.json @@ -20,5 +20,6 @@ {"name":"happyclk.app.js","url":"happyclk.app.js"}, {"name":"happyclk.img","url":"happyclk.icon.js","evaluate":true}, {"name":"happyclk.settings.js","url":"happyclk.settings.js"} - ] + ], + "data":[{"name":"happyclk.setting.json"}] } diff --git a/apps/hralarm/metadata.json b/apps/hralarm/metadata.json index 4c661b3fc..c99cb857f 100644 --- a/apps/hralarm/metadata.json +++ b/apps/hralarm/metadata.json @@ -4,7 +4,7 @@ "shortName":"HR Alarm", "version":"0.02", "description": "This invisible widget vibrates whenever the heart rate gets close to the upper limit or goes over or under the configured limits", - "icon": "widget.png", + "icon": "widget.png", "type": "widget", "tags": "widget", "supports" : ["BANGLEJS2"], @@ -12,5 +12,8 @@ "storage": [ {"name":"hralarm.wid.js","url":"widget.js"}, {"name":"hralarm.settings.js","url":"settings.js"} + ], + "data": [ + {"name":"hralarm.json"} ] } diff --git a/apps/imageclock/metadata.json b/apps/imageclock/metadata.json index b291ab01e..f8a0aa61e 100644 --- a/apps/imageclock/metadata.json +++ b/apps/imageclock/metadata.json @@ -15,5 +15,8 @@ {"name":"imageclock.app.js","url":"app.js"}, {"name":"imageclock.settings.js","url":"settings.js"}, {"name":"imageclock.img","url":"app-icon.js","evaluate":true} + ], + "data": [ + {"name":"imageclock.json"} ] } diff --git a/apps/kbtouch/metadata.json b/apps/kbtouch/metadata.json index 8d7434e44..31dc8c9a8 100644 --- a/apps/kbtouch/metadata.json +++ b/apps/kbtouch/metadata.json @@ -12,5 +12,6 @@ {"name":"textinput","url":"lib.js"}, {"name":"kbtouch.settings.js","url":"settings.js"} ], - "sortorder":-1 + "sortorder":-1, + "data":[{"name":"kbtouch.settings.json"}] } diff --git a/apps/lcars/metadata.json b/apps/lcars/metadata.json index 65c59081f..2cefb544f 100644 --- a/apps/lcars/metadata.json +++ b/apps/lcars/metadata.json @@ -16,5 +16,6 @@ {"name":"lcars.app.js","url":"lcars.app.js"}, {"name":"lcars.img","url":"lcars.icon.js","evaluate":true}, {"name":"lcars.settings.js","url":"lcars.settings.js"} - ] + ], + "data":[{"name":"lcars.setting.json"}] } diff --git a/apps/limelight/metadata.json b/apps/limelight/metadata.json index 0e5dfd565..5c6bcfd76 100644 --- a/apps/limelight/metadata.json +++ b/apps/limelight/metadata.json @@ -13,5 +13,8 @@ {"name":"limelight.app.js","url":"limelight.app.js"}, {"name":"limelight.settings.js","url":"limelight.settings.js"}, {"name":"limelight.img","url":"limelight.icon.js","evaluate":true} + ], + "data": [ + {"name":"limelight.json"} ] } diff --git a/apps/linuxclock/metadata.json b/apps/linuxclock/metadata.json index 2bfe1d51f..ccd9db5e7 100644 --- a/apps/linuxclock/metadata.json +++ b/apps/linuxclock/metadata.json @@ -14,5 +14,6 @@ {"name":"linuxclock.app.js","url":"app.js"}, {"name":"linuxclock.img","url":"app-icon.js","evaluate":true}, {"name":"linuxclock.settings.js","url":"settings.js"} - ] + ], + "data":[{"name":"linuxclock.setting.json"}] } diff --git a/apps/loadingscreen/metadata.json b/apps/loadingscreen/metadata.json index 199f4a2b4..1815e4ce8 100644 --- a/apps/loadingscreen/metadata.json +++ b/apps/loadingscreen/metadata.json @@ -10,5 +10,6 @@ "readme": "README.md", "storage": [ {"name":"loadingscreen.settings.js","url":"settings.js"} - ] + ], + "data":[{"name":".loading"}] } diff --git a/apps/metronome/metadata.json b/apps/metronome/metadata.json index 7f8582ca5..8ada5d98c 100644 --- a/apps/metronome/metadata.json +++ b/apps/metronome/metadata.json @@ -13,5 +13,6 @@ {"name":"metronome.app.js","url":"metronome.js"}, {"name":"metronome.img","url":"metronome-icon.js","evaluate":true}, {"name":"metronome.settings.js","url":"settings.js"} - ] + ], + "data":[{"name":"metronome.settings.json"}] } diff --git a/apps/mysticclock/metadata.json b/apps/mysticclock/metadata.json index bd2df2f8d..51f44b79b 100644 --- a/apps/mysticclock/metadata.json +++ b/apps/mysticclock/metadata.json @@ -14,5 +14,8 @@ {"name":"mysticclock.app.js","url":"mystic-clock-app.js"}, {"name":"mysticclock.settings.js","url":"mystic-clock-settings.js"}, {"name":"mysticclock.img","url":"mystic-clock-icon.js","evaluate":true} + ], + "data": [ + {"name":"mysticclock.settings.json"} ] } diff --git a/apps/mysticdock/metadata.json b/apps/mysticdock/metadata.json index 2775b0b72..0ebff3b9b 100644 --- a/apps/mysticdock/metadata.json +++ b/apps/mysticdock/metadata.json @@ -13,5 +13,8 @@ {"name":"mysticdock.boot.js","url":"mystic-dock-boot.js"}, {"name":"mysticdock.settings.js","url":"mystic-dock-settings.js"}, {"name":"mysticdock.img","url":"mystic-dock-icon.js","evaluate":true} + ], + "data": [ + {"name":"mysticdock.settings.json"} ] } diff --git a/apps/openwind/metadata.json b/apps/openwind/metadata.json index 01d7ca124..5e0a60972 100644 --- a/apps/openwind/metadata.json +++ b/apps/openwind/metadata.json @@ -6,10 +6,11 @@ "icon": "openwind.png", "readme": "README.md", "tags": "ble,outdoors,gps,sailing", - "supports" : ["BANGLEJS", "BANGLEJS2"], + "supports" : ["BANGLEJS", "BANGLEJS2"], "storage": [ {"name":"openwind.app.js","url":"app.js"}, {"name":"openwind.img","url":"app-icon.js","evaluate":true}, {"name":"openwind.settings.js", "url":"settings.js"} - ] + ], + "data":[{"name":"openwindsettings.json"}] } diff --git a/apps/pebble/metadata.json b/apps/pebble/metadata.json index 0ccb8e2af..49dbcd820 100644 --- a/apps/pebble/metadata.json +++ b/apps/pebble/metadata.json @@ -15,5 +15,8 @@ {"name":"pebble.app.js","url":"pebble.app.js"}, {"name":"pebble.settings.js","url":"pebble.settings.js"}, {"name":"pebble.img","url":"pebble.icon.js","evaluate":true} + ], + "data": [ + {"name":"pebble.settings.json"} ] } diff --git a/apps/pebbled/metadata.json b/apps/pebbled/metadata.json index 62fabc3e7..8924e600a 100644 --- a/apps/pebbled/metadata.json +++ b/apps/pebbled/metadata.json @@ -14,5 +14,6 @@ {"name":"pebbled.app.js","url":"pebbled.app.js"}, {"name":"pebbled.settings.js","url":"pebbled.settings.js"}, {"name":"pebbled.img","url":"pebbled.icon.js","evaluate":true} - ] + ], + "data":[{"name":"pebbleDistance.json"}] } diff --git a/apps/pebblepp/metadata.json b/apps/pebblepp/metadata.json index 6821fdc50..88c1d8fd5 100644 --- a/apps/pebblepp/metadata.json +++ b/apps/pebblepp/metadata.json @@ -15,5 +15,8 @@ {"name":"pebblepp.app.js","url":"app.js"}, {"name":"pebblepp.settings.js","url":"settings.js"}, {"name":"pebblepp.img","url":"icon.js","evaluate":true} + ], + "data": [ + {"name":"pebblepp.settings.json"} ] } diff --git a/apps/pomoplus/metadata.json b/apps/pomoplus/metadata.json index 84a82c0e1..0db15ab4d 100644 --- a/apps/pomoplus/metadata.json +++ b/apps/pomoplus/metadata.json @@ -32,5 +32,8 @@ "name": "pomoplus.settings.js", "url": "settings.js" } + ], + "data": [ + {"name":"pomoplus.settings.json"} ] } diff --git a/apps/rebble/metadata.json b/apps/rebble/metadata.json index c380204a4..6242236c8 100644 --- a/apps/rebble/metadata.json +++ b/apps/rebble/metadata.json @@ -15,5 +15,8 @@ {"name":"rebble.app.js","url":"rebble.app.js"}, {"name":"rebble.settings.js","url":"rebble.settings.js"}, {"name":"rebble.img","url":"rebble.icon.js","evaluate":true} + ], + "data": [ + {"name":"rebble.settings.json"} ] } diff --git a/apps/sensortools/metadata.json b/apps/sensortools/metadata.json index 48b146617..bffffd090 100644 --- a/apps/sensortools/metadata.json +++ b/apps/sensortools/metadata.json @@ -14,5 +14,8 @@ {"name":"sensortools.settings.js","url":"settings.js"}, {"name":"sensortools","url":"lib.js"}, {"name":"sensortools.default.json","url":"default.json"} + ], + "data": [ + {"name":"sensortools.settings.json"} ] } diff --git a/apps/sleeplogalarm/metadata.json b/apps/sleeplogalarm/metadata.json index 30d3dcda7..fd68ce376 100644 --- a/apps/sleeplogalarm/metadata.json +++ b/apps/sleeplogalarm/metadata.json @@ -17,5 +17,6 @@ {"name": "sleeplogalarm", "url": "lib.js"}, {"name": "sleeplogalarm.settings.js", "url": "settings.js"}, {"name": "sleeplogalarm.wid.js", "url": "widget.js"} - ] + ], + "data":[{"name":"sleeplogalarm.settings.json"}] } diff --git a/apps/speedalt/metadata.json b/apps/speedalt/metadata.json index 89bfd4a57..1ecb2b562 100644 --- a/apps/speedalt/metadata.json +++ b/apps/speedalt/metadata.json @@ -15,5 +15,8 @@ {"name":"speedalt.app.js","url":"app.js"}, {"name":"speedalt.img","url":"app-icon.js","evaluate":true}, {"name":"speedalt.settings.js","url":"settings.js"} + ], + "data": [ + {"name":"speedalt.settings.json"} ] } diff --git a/apps/timecal/metadata.json b/apps/timecal/metadata.json index 287dce0ae..9175d92a3 100644 --- a/apps/timecal/metadata.json +++ b/apps/timecal/metadata.json @@ -12,5 +12,6 @@ "storage": [ {"name":"timecal.app.js","url":"timecal.app.js"}, {"name":"timecal.settings.js","url":"timecal.settings.js"} - ] + ], + "data":[{"name":"timecal.settings.json"}] } diff --git a/apps/torch/metadata.json b/apps/torch/metadata.json index 6837dc904..414222587 100644 --- a/apps/torch/metadata.json +++ b/apps/torch/metadata.json @@ -13,5 +13,8 @@ {"name":"torch.wid.js","url":"widget.js","supports": ["BANGLEJS"]}, {"name":"torch.img","url":"app-icon.js","evaluate":true}, {"name":"torch.settings.js","url":"settings.js"} + ], + "data": [ + {"name":"torch.settings.json"} ] } diff --git a/apps/widpedom/metadata.json b/apps/widpedom/metadata.json index f49d3ba5b..480519a29 100644 --- a/apps/widpedom/metadata.json +++ b/apps/widpedom/metadata.json @@ -10,5 +10,6 @@ "storage": [ {"name":"widpedom.wid.js","url":"widget.js"}, {"name":"widpedom.settings.js","url":"settings.js"} - ] + ], + "data":[{"name":"wpedom.json"}] } diff --git a/apps/wohrm/metadata.json b/apps/wohrm/metadata.json index 1e2ac2cb0..a5411c113 100644 --- a/apps/wohrm/metadata.json +++ b/apps/wohrm/metadata.json @@ -14,5 +14,6 @@ {"name":"wohrm.app.js","url":"app.js"}, {"name":"wohrm.settings.js","url":"settings.js"}, {"name":"wohrm.img","url":"app-icon.js","evaluate":true} - ] + ], + "data":[{"name":"wohrm.setting.json"}] } From 3defe2f04eb5d1f35119d4cd36026db69d865579 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Tue, 20 Jun 2023 22:07:56 +0100 Subject: [PATCH 1516/1725] sanitycheck: record known non-json storage files --- bin/sanitycheck.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/bin/sanitycheck.js b/bin/sanitycheck.js index b76424483..d5c755443 100755 --- a/bin/sanitycheck.js +++ b/bin/sanitycheck.js @@ -92,9 +92,12 @@ const INTERNAL_FILES_IN_APP_TYPE = { // list of app types and files they SHOULD }; /* These are warnings we know about but don't want in our output */ var KNOWN_WARNINGS = [ -"App gpsrec data file wildcard .gpsrc? does not include app ID", -"App owmweather data file weather.json is also listed as data file for app weather", + "App gpsrec data file wildcard .gpsrc? does not include app ID", + "App owmweather data file weather.json is also listed as data file for app weather", "App messagegui storage file messagegui is also listed as storage file for app messagelist", + "App carcrazy has a setting file but no corresponding data entry (add `\"data\":[{\"name\":\"carcrazy.settings.json\"}]`)", + "App loadingscreen has a setting file but no corresponding data entry (add `\"data\":[{\"name\":\"loadingscreen.settings.json\"}]`)", + "App trex has a setting file but no corresponding data entry (add `\"data\":[{\"name\":\"trex.settings.json\"}]`)", ]; function globToRegex(pattern) { From d9c91daa5cc6f2b7e97acf032047b793c899d5ec Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Wed, 21 Jun 2023 09:07:20 +0200 Subject: [PATCH 1517/1725] gipy: changing settings --- apps/gipy/settings.js | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/apps/gipy/settings.js b/apps/gipy/settings.js index de8db2079..1f6ae0853 100644 --- a/apps/gipy/settings.js +++ b/apps/gipy/settings.js @@ -16,18 +16,10 @@ E.showMenu({ "": { title: "Gipy" }, "< Back": () => back(), - "keep gps alive": { - value: !!settings.keep_gps_alive, // !! converts undefined to false - format: (v) => (v ? "Yes" : "No"), - onchange: (v) => { - settings.keep_gps_alive = v; - writeSettings(); - }, - }, - "max speed": { - value: 35 | settings.max_speed, // 0| converts undefined to 0 - min: 0, - max: 130, + "lost distance": { + value: 50 | settings.lost_distance, // 0| converts undefined to 0 + min: 10, + max: 500, onchange: (v) => { settings.max_speed = v; writeSettings(); From 4527843bc9babf35e6f0c2851fe24a4d12b1464d Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Wed, 21 Jun 2023 10:21:40 +0200 Subject: [PATCH 1518/1725] gipy: bumping version up --- apps/gipy/ChangeLog | 3 +++ apps/gipy/metadata.json | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/gipy/ChangeLog b/apps/gipy/ChangeLog index da1abd473..a58a2ca94 100644 --- a/apps/gipy/ChangeLog +++ b/apps/gipy/ChangeLog @@ -75,5 +75,8 @@ * Splash screen while waiting for gps signal. 0.17: + * Convert Yes/No On/Off in settings to checkboxes + +0.18: * Major rewrite of display : now tile based * We have a map. Never get lost again. diff --git a/apps/gipy/metadata.json b/apps/gipy/metadata.json index f0581d578..0ec42d4c3 100644 --- a/apps/gipy/metadata.json +++ b/apps/gipy/metadata.json @@ -2,7 +2,7 @@ "id": "gipy", "name": "Gipy", "shortName": "Gipy", - "version": "0.17", + "version": "0.18", "description": "Follow gpx files using the gps. Don't get lost in your bike trips and hikes.", "allow_emulator":false, "icon": "gipy.png", From 41add8afc6a0baf0bffaabd35b0203ee2afc7110 Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Wed, 21 Jun 2023 10:25:25 +0200 Subject: [PATCH 1519/1725] gipy: changelog fix --- apps/gipy/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gipy/ChangeLog b/apps/gipy/ChangeLog index a58a2ca94..4d469eda7 100644 --- a/apps/gipy/ChangeLog +++ b/apps/gipy/ChangeLog @@ -73,7 +73,7 @@ * Display current and next segment in red so that you know where to go. * Avoid angles flickering at low speed at the cost of less refresh. * Splash screen while waiting for gps signal. - + 0.17: * Convert Yes/No On/Off in settings to checkboxes From 67908cd77b0c0b01952e915eb5918fb17f897fea Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 21 Jun 2023 10:08:59 +0100 Subject: [PATCH 1520/1725] Add a back button to "No messages" menu on cutting edge (or 2v19+) firmwares. Don't bump version as latest not released yet --- apps/messagegui/ChangeLog | 3 ++- apps/messagegui/app.js | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index 2c9738dab..92c7f09a4 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -96,4 +96,5 @@ Nav messages with '/' now get split on newlines 0.70: Handle nav messages from newer Gadgetbridge builds that output distance as a String If we receive a 'music' message and we're in the messages app (but not showing a message) show music (#2814) -0.71: Cancel buzzing when watch unlocked, or when different messages viewed \ No newline at end of file +0.71: Cancel buzzing when watch unlocked, or when different messages viewed + On 2v18.64+ firmware, 'No Messages' now has a 'back' button \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index 030781df1..395b56a4d 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -414,8 +414,9 @@ function checkMessages(options) { if (!options.clockIfNoMsg) return E.showPrompt(/*LANG*/"No Messages",{ title:/*LANG*/"Messages", img:require("heatshrink").decompress(atob("kkk4UBrkc/4AC/tEqtACQkBqtUDg0VqAIGgoZFDYQIIM1sD1QAD4AIBhnqA4WrmAIBhc6BAWs8AIBhXOBAWz0AIC2YIC5wID1gkB1c6BAYFBEQPqBAYXBEQOqBAnDAIQaEnkAngaEEAPDFgo+IKA5iIOhCGIAFb7RqAIGgtUBA0VqobFgNVA")), - buttons : {/*LANG*/"Ok":1} - }).then(() => { load() }); + buttons : {/*LANG*/"Ok":1}, + back: () => load() + }).then(() => load()); return load(); } // we have >0 messages From b0ccc6c678919fd7acaad933890558d79d5f33b7 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 21 Jun 2023 10:09:18 +0100 Subject: [PATCH 1521/1725] Remove default log filename from initial settings file --- apps/recorder/app-settings.json | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/recorder/app-settings.json b/apps/recorder/app-settings.json index 7410af213..cbabcb3f0 100644 --- a/apps/recorder/app-settings.json +++ b/apps/recorder/app-settings.json @@ -1,6 +1,5 @@ { "recording":false, - "file":"recorder.log0.csv", "period":10, "record" : ["gps"] } From 5ae91b90b0d3d8f6db0886e8da4adc2a47365df5 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 21 Jun 2023 10:09:47 +0100 Subject: [PATCH 1522/1725] Fix date_utils if timezone is 12. https://forum.espruino.com/conversations/387709/#comment17024817 --- modules/date_utils.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/modules/date_utils.js b/modules/date_utils.js index 7239d4f1f..76ff0a393 100644 --- a/modules/date_utils.js +++ b/modules/date_utils.js @@ -8,7 +8,7 @@ // - 0/undefined --> Sunday // - 1 --> Monday // but you can start the week from any day if you need it. -// +// // Some functions have an "abbreviated" parameter. // It supports the following 3 values: // - 0/undefined --> get the full value, without abbreviation (eg.: "Monday", "January", etc.) @@ -22,12 +22,12 @@ * @returns The localized name of the i-th day of the week */ exports.dow = (i, abbreviated) => { - var dow = require("locale").dow(new Date(((i || 0) + 3.5) * 86400000), abbreviated).slice(0, (abbreviated == 2) ? 1 : 100); + var dow = require("locale").dow({getDay:()=>(i|0)%7}, abbreviated).slice(0, (abbreviated == 2) ? 1 : 100); return abbreviated == 2 ? dow.toUpperCase() : dow; } /** - * @param {int} firstDayOfWeek 0/undefined -> Sunday, + * @param {int} firstDayOfWeek 0/undefined -> Sunday, * 1 -> Monday * @param {int} abbreviated * @returns All 7 days of the week (localized) as an array @@ -47,7 +47,7 @@ exports.dows = (firstDayOfWeek, abbreviated) => { * @returns The localized name of the i-th month */ exports.month = (i, abbreviated) => { - var month = require("locale").month(new Date((i - 0.5) * 2628000000), abbreviated).slice(0, (abbreviated == 2) ? 1 : 100); + var month = require("locale").month({getMonth:()=>(11+(i|0))%12}, abbreviated).slice(0, (abbreviated == 2) ? 1 : 100); return abbreviated == 2 ? month.toUpperCase() : month; } @@ -58,8 +58,7 @@ exports.month = (i, abbreviated) => { exports.months = (abbreviated) => { var months = []; var locale = require("locale"); - for (var i = 1; i <= 12; i++) { - months.push(locale.month(new Date((i - 0.5) * 2628000000), abbreviated).slice(0, (abbreviated == 2) ? 1 : 100)); - } + for (var i = 0; i < 12; i++) + months.push(locale.month({getMonth:()=>i}, abbreviated).slice(0, (abbreviated == 2) ? 1 : 100)); return abbreviated == 2 ? months.map(month => month.toUpperCase()) : months; }; From b055176ce0e28f3aaf53e01ee4994d033cd79201 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 21 Jun 2023 14:49:23 +0100 Subject: [PATCH 1523/1725] Improve responsiveness by only showing first 30 apps unless the 'more' entry and the bottom is clicked. --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index 127c90aaa..f922941a1 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit 127c90aaa9e3d23f8853807e1ad17451a37dc3c1 +Subproject commit f922941a17cfdc3c37bf3e832961c0ca958e27d3 From f4e60856f44b6f4db8b858a2081ff9593cf61286 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 21 Jun 2023 10:57:46 -0500 Subject: [PATCH 1524/1725] Add example configs and bg image --- apps/boxclk/boxclk-1.json | 88 +++++++++++++++++++++++++++++++++++ apps/boxclk/boxclk-2.json | 85 +++++++++++++++++++++++++++++++++ apps/boxclk/boxclk.space.img | Bin 0 -> 30979 bytes 3 files changed, 173 insertions(+) create mode 100644 apps/boxclk/boxclk-1.json create mode 100644 apps/boxclk/boxclk-2.json create mode 100644 apps/boxclk/boxclk.space.img diff --git a/apps/boxclk/boxclk-1.json b/apps/boxclk/boxclk-1.json new file mode 100644 index 000000000..99e225f04 --- /dev/null +++ b/apps/boxclk/boxclk-1.json @@ -0,0 +1,88 @@ +{ + "time": { + "font": "6x8", + "fontSize": 3, + "outline": 2, + "color": "#0ff", + "outlineColor": "#00f", + "border": "#0f0", + "xPadding": -1, + "yPadding": -2.5, + "xOffset": 2, + "yOffset": 0, + "boxPos": { + "x": "0.33", + "y": "0.29" + } + }, + "meridian": { + "font": "6x8", + "fontSize": 2, + "outline": 1, + "color": "#FF9900", + "outlineColor": "fg", + "border": "#0ff", + "xPadding": -0.5, + "yPadding": -1.5, + "xOffset": 2, + "yOffset": 1, + "boxPos": { + "x": "0.34", + "y": "0.46" + }, + "short": false + }, + "dow": { + "font": "6x8", + "fontSize": 2, + "outline": 1, + "color": "#000", + "outlineColor": "#fff", + "border": "#0f0", + "xPadding": -0.5, + "yPadding": -0.5, + "xOffset": 1, + "yOffset": 1, + "boxPos": { + "x": "0.5", + "y": "0.82" + } + }, + "step": { + "font": "6x8", + "fontSize": 2, + "outline": 1, + "color": "#000", + "outlineColor": "#fff", + "border": "#0f0", + "xPadding": -0.5, + "yPadding": 0.5, + "xOffset": 1, + "yOffset": 1, + "boxPos": { + "x": "0.5", + "y": "0.71" + }, + "prefix": "Steps: " + }, + "batt": { + "font": "4x6", + "fontSize": 2, + "outline": 1, + "color": "#0ff", + "outlineColor": "#00f", + "border": "#0f0", + "xPadding": -0.5, + "yPadding": -0.5, + "xOffset": 1, + "yOffset": 1, + "boxPos": { + "x": "0.87", + "y": "0.87" + }, + "suffix": "%" + }, + "bg": { + "img": "boxclk.space.img" + } +} diff --git a/apps/boxclk/boxclk-2.json b/apps/boxclk/boxclk-2.json new file mode 100644 index 000000000..f2c390e52 --- /dev/null +++ b/apps/boxclk/boxclk-2.json @@ -0,0 +1,85 @@ +{ + "time": { + "font": "6x8", + "fontSize": 5, + "outline": 3, + "color": "bgH", + "outlineColor": "fg", + "border": "#f0f", + "xPadding": -2, + "yPadding": -4.5, + "xOffset": 3, + "yOffset": 0, + "boxPos": { + "x": "0.5", + "y": "0.33" + } + }, + "dow": { + "font": "6x8", + "fontSize": 3, + "outline": 1, + "color": "#5ccd73", + "outlineColor": "fg", + "border": "#f0f", + "xPadding": -1, + "yPadding": 0.5, + "xOffset": 2, + "yOffset": 0, + "boxPos": { + "x": "0.5", + "y": "0.57" + }, + "short": false + }, + "date": { + "font": "6x8", + "fontSize": 2, + "outline": 1, + "color": "#5ccd73", + "outlineColor": "fg", + "border": "#f0f", + "xPadding": -0.5, + "yPadding": 0.5, + "xOffset": 1, + "yOffset": 0, + "boxPos": { + "x": "0.5", + "y": "0.75" + } + }, + "step": { + "font": "4x6", + "fontSize": 3, + "outline": 2, + "color": "bgH", + "outlineColor": "fg", + "border": "#f0f", + "xPadding": -1, + "yPadding": 0.5, + "xOffset": 2, + "yOffset": 1, + "boxPos": { + "x": "0.5", + "y": "0.92" + }, + "prefix": "Steps: " + }, + "batt": { + "font": "4x6", + "fontSize": 3, + "outline": 2, + "color": "bgH", + "outlineColor": "fg", + "border": "#f0f", + "xPadding": -1, + "yPadding": -1, + "xOffset": 2, + "yOffset": 2, + "boxPos": { + "x": "0.85", + "y": "0.08" + }, + "suffix": "%" + } +} diff --git a/apps/boxclk/boxclk.space.img b/apps/boxclk/boxclk.space.img new file mode 100644 index 0000000000000000000000000000000000000000..1708b5c24248a388661783f446bd86f5a2e4f715 GIT binary patch literal 30979 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 Date: Wed, 21 Jun 2023 11:15:40 -0500 Subject: [PATCH 1525/1725] Update screenshots and README to show new examples --- apps/boxclk/README.md | 23 +++++++++++++++++++---- apps/boxclk/metadata.json | 3 ++- apps/boxclk/screenshot-1.png | Bin 5798 -> 6017 bytes apps/boxclk/screenshot-2.png | Bin 0 -> 3599 bytes 4 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 apps/boxclk/screenshot-2.png diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 1dc8ef98f..ca7b88779 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -51,9 +51,9 @@ __Breakdown of Parameters:__ * **Box Name:** The name of your text box. Box Clock includes functional support for "time", "date", "meridian" (AM/PM), "dow" (Day of Week), "batt" (Battery), and "step" (Step count). You can add additional custom boxes with unique titles. -* **string:** The text string to be displayed inside the box. +* **string:** The text string to be displayed inside the box. This is only required for custom Box Names. -* **font:** The font name given to g.setFont() +* **font:** The font name given to g.setFont(). * **fontSize:** The size of the font. @@ -83,9 +83,24 @@ __Breakdown of Parameters:__ ## Multiple Configurations -The app includes a settings menu that allows you to switch between different configurations. The selected configuration is stored in the default JSON file alongside the other configuration data using the selectedConfig property. +__Settings Menu:__ -If the selectedConfig property is not present or is set to 0, the app will use the default configuration. To create additional configurations, create separate JSON files with the naming convention boxclk-N.json, where N is the configuration number. The settings menu will list all available configurations. +The app includes a settings menu that allows you to switch between different configurations. The selected configuration is stored as a numner in the default `boxclk.josn` file using the selectedConfig property. + +If the selectedConfig property is not present or is set to 0, the app will use the default configuration. To create additional configurations, create separate JSON files with the naming convention `boxclk-N.json`, where `N` is the configuration number. The settings menu will list all available configurations. + +## Example Configs: + +To easily try out other configs, download and place the JSON configs and/or background images from below onto your Bangle.js storage. Then go to the Box Clock settings menu to select the new config number. You can also modify them to suit your personal preferences. + +### Space Theme: + +- **Config:** [boxclk-1.json](https://github.com/espruino/BangleApps/tree/master/apps/boxclk/boxclk-1.json) +- **Background:** boxclk.space.img ([Source](https://www.pixilart.com/art/fallin-from-outer-space-sr2e0c1a705749a)) + +### System Color Theme: + +- **Config:** [boxclk-2.json](https://github.com/espruino/BangleApps/tree/master/apps/boxclk/boxclk-2.json) ## Compatibility diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index 9b759def7..7ee6e1638 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -6,7 +6,8 @@ "icon": "app.png", "screenshots": [ {"url":"screenshot.png"}, - {"url":"screenshot-1.png"} + {"url":"screenshot-1.png"}, + {"url":"screenshot-2.png"} ], "type": "clock", "tags": "clock", diff --git a/apps/boxclk/screenshot-1.png b/apps/boxclk/screenshot-1.png index 18798bb30832743407fecba85c8d47431fd88260..c6e22d26297899f6f7d588db4559a71f85aacb1b 100644 GIT binary patch literal 6017 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 literal 5798 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 diff --git a/apps/boxclk/screenshot-2.png b/apps/boxclk/screenshot-2.png new file mode 100644 index 0000000000000000000000000000000000000000..6d49d82e3f3ec96543fb8af68d53fe389824a32a GIT binary patch literal 3599 zcmV+q4)F1bP)Px?$w@>(RCr$PU5j$#I1Fq5|D)4Mnuo1OB0y0O+t|68y=`QQ1R;o`9ryQkyWM{D zM+h7gfnO2$pqZ1~4+KPD5#i7Xh`@(VpPUzg#eqX3AOascef^yO{rxQ(&z<{g<6FG6 zdJH0P3%V!1Rs=qAa<35Do50&H>r<7h3S8>SZWTRa^MNTi*A{;%@DN zMPLwZ4GTv=1P+H(21g=LD;r8%eD&w7^C}@:_aPrm9@qDB>g#i3;o=%v7L+f53* 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 z Date: Wed, 21 Jun 2023 11:47:12 -0500 Subject: [PATCH 1526/1725] Update README.md - shorten width of text --- apps/boxclk/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index ca7b88779..a1ef41a33 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -37,8 +37,8 @@ Here's what an example configuration might look like: "boxPos": { "x": 0.5, "y": 0.5 }, "prefix": "", // Adds a string to the beginning of the main string "suffix": "", // Adds a string to the end of the main string - "disableSuffix": true, // Only used to remove the DayOfMonth suffix - "short": false // Gets long format value of time, meridian, date, or DoW + "disableSuffix": true, // Use to remove DayOfMonth suffix only + "short": false // Use long format of time, meridian, date, or DoW }, "bg": { // Can also be removed for no background From 810d6863e8c31c75a66a0999fd42921abf66e068 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 21 Jun 2023 12:05:35 -0500 Subject: [PATCH 1527/1725] Update README.md - Reduce size of example names --- apps/boxclk/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index a1ef41a33..5a767eb0c 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -93,12 +93,12 @@ If the selectedConfig property is not present or is set to 0, the app will use t To easily try out other configs, download and place the JSON configs and/or background images from below onto your Bangle.js storage. Then go to the Box Clock settings menu to select the new config number. You can also modify them to suit your personal preferences. -### Space Theme: +__Space Theme:__ - **Config:** [boxclk-1.json](https://github.com/espruino/BangleApps/tree/master/apps/boxclk/boxclk-1.json) - **Background:** boxclk.space.img ([Source](https://www.pixilart.com/art/fallin-from-outer-space-sr2e0c1a705749a)) -### System Color Theme: +__System Color Theme:__ - **Config:** [boxclk-2.json](https://github.com/espruino/BangleApps/tree/master/apps/boxclk/boxclk-2.json) From 8eec69937003713acc40409ba65ea6706f3e77c3 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 21 Jun 2023 12:15:07 -0500 Subject: [PATCH 1528/1725] Update README.md - Update links --- apps/boxclk/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 5a767eb0c..8f5075dd0 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -96,7 +96,7 @@ To easily try out other configs, download and place the JSON configs and/or back __Space Theme:__ - **Config:** [boxclk-1.json](https://github.com/espruino/BangleApps/tree/master/apps/boxclk/boxclk-1.json) -- **Background:** boxclk.space.img ([Source](https://www.pixilart.com/art/fallin-from-outer-space-sr2e0c1a705749a)) +- **Background:** [boxclk.space.img](https://github.com/espruino/BangleApps/tree/master/apps/boxclk/boxclk.space.img) ([Original Source](https://www.pixilart.com/art/fallin-from-outer-space-sr2e0c1a705749a)) __System Color Theme:__ From ecb2013ac46f397fbded64fbde915a141e6f65fa Mon Sep 17 00:00:00 2001 From: stweedo Date: Wed, 21 Jun 2023 12:50:44 -0500 Subject: [PATCH 1529/1725] Show month short or long using "shortMonth" --- apps/boxclk/ChangeLog | 1 + apps/boxclk/README.md | 7 +++++-- apps/boxclk/app.js | 13 +++++++++---- apps/boxclk/metadata.json | 2 +- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/apps/boxclk/ChangeLog b/apps/boxclk/ChangeLog index ba46af04e..f35b35819 100644 --- a/apps/boxclk/ChangeLog +++ b/apps/boxclk/ChangeLog @@ -1,2 +1,3 @@ 0.01: New App! 0.02: New config options such as step, meridian, short/long formats, custom prefix/suffix +0.03: Allows showing the month in short or long format by setting `"shortMonth"` to true or false diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 8f5075dd0..0bb2cdede 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -39,6 +39,7 @@ Here's what an example configuration might look like: "suffix": "", // Adds a string to the end of the main string "disableSuffix": true, // Use to remove DayOfMonth suffix only "short": false // Use long format of time, meridian, date, or DoW + "shortMonth": false // Use long format of month within date }, "bg": { // Can also be removed for no background @@ -75,9 +76,11 @@ __Breakdown of Parameters:__ * **suffix:** Adds a string to the end of the main string. For example, you can set "suffix": "%" to display "80%" for the battery percentage. -* **disableSuffix:** Applies only to the "date" box. Set to true to disable the DayOfMonth suffix. This is used to remove the "st","nd","rd", or "th" from the DayOfMonth number +* **disableSuffix:** Applies only to the "date" box. Set to true to disable the DayOfMonth suffix. This is used to remove the "st","nd","rd", or "th" from the DayOfMonth number. -* **short:** Set to false to get the long format value of time, meridian, date, or DayOfWeek. Short formats are used by default, +* **short:** Set to false to get the long format value of time, meridian, date, or DayOfWeek. Short formats are used by default if not specified. + +* **shortMonth:** Set to false to get the long format value of the month. Short format is used by default if not specified. * **bg:** This specifies a custom background image, with the img property defining the name of the image file on the Bangle.js storage. diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 41636e1ef..0b0ca8e65 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -171,10 +171,10 @@ return typeof val !== 'undefined' ? Boolean(val) : defaultVal; }; - let getDate = function(short, disableSuffix) { + let getDate = function(short, shortMonth, disableSuffix) { const date = new Date(); const dayOfMonth = date.getDate(); - const month = short ? locale.month(date, 0) : locale.month(date, 1); + const month = shortMonth ? locale.month(date, 1) : locale.month(date, 0); const year = date.getFullYear(); let suffix; if ([1, 21, 31].includes(dayOfMonth)) { @@ -228,7 +228,12 @@ boxes.meridian.string = modString(boxes.meridian, locale.meridian(date, isBool(boxes.meridian.short, true))); } if (boxes.date) { - boxes.date.string = modString(boxes.date, getDate(isBool(boxes.date.short, true), isBool(boxes.date.disableSuffix, false))); + boxes.date.string = ( + modString(boxes.date, + getDate(isBool(boxes.date.short, true), + isBool(boxes.date.shortMonth, true), + isBool(boxes.date.disableSuffix, false) + ))); } if (boxes.dow) { boxes.dow.string = modString(boxes.dow, getDayOfWeek(date, isBool(boxes.dow.short, true))); @@ -395,4 +400,4 @@ widgets.swipeOn(); modSetColor(); setup(); -} +} \ No newline at end of file diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index 7ee6e1638..6717b79d8 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -1,7 +1,7 @@ { "id": "boxclk", "name": "Box Clock", - "version": "0.02", + "version": "0.03", "description": "A customizable clock with configurable text boxes that can be positioned to show your favorite background", "icon": "app.png", "screenshots": [ From e9b56bde18adcc6b69a4543cf766a876863d9380 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 21 Jun 2023 12:55:49 -0500 Subject: [PATCH 1530/1725] Update README.md - missing comma in example --- apps/boxclk/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 0bb2cdede..aa6331fe2 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -38,7 +38,7 @@ Here's what an example configuration might look like: "prefix": "", // Adds a string to the beginning of the main string "suffix": "", // Adds a string to the end of the main string "disableSuffix": true, // Use to remove DayOfMonth suffix only - "short": false // Use long format of time, meridian, date, or DoW + "short": false, // Use long format of time, meridian, date, or DoW "shortMonth": false // Use long format of month within date }, From b216ad91b1453673511cf1a67d18ff00ec0e3597 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 21 Jun 2023 13:16:03 -0500 Subject: [PATCH 1531/1725] Update boxclk-2.json - change month to long --- apps/boxclk/boxclk-2.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/boxclk/boxclk-2.json b/apps/boxclk/boxclk-2.json index f2c390e52..1c6e28781 100644 --- a/apps/boxclk/boxclk-2.json +++ b/apps/boxclk/boxclk-2.json @@ -46,7 +46,8 @@ "boxPos": { "x": "0.5", "y": "0.75" - } + }, + "shortMonth": false }, "step": { "font": "4x6", From 40b07ade32f050aef3d7b8fea51550c8144b1c05 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 21 Jun 2023 13:25:17 -0500 Subject: [PATCH 1532/1725] Update boxclk-2.json - disable DayOfMonth suffix --- apps/boxclk/boxclk-2.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/boxclk/boxclk-2.json b/apps/boxclk/boxclk-2.json index 1c6e28781..64b842f1c 100644 --- a/apps/boxclk/boxclk-2.json +++ b/apps/boxclk/boxclk-2.json @@ -47,7 +47,8 @@ "x": "0.5", "y": "0.75" }, - "shortMonth": false + "shortMonth": false, + "disableSuffix": true }, "step": { "font": "4x6", From b2fc4783880a240c0b19709ed58057ef5e27e305 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 21 Jun 2023 13:28:05 -0500 Subject: [PATCH 1533/1725] Update screenshot-2 --- apps/boxclk/screenshot-2.png | Bin 3599 -> 3456 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/apps/boxclk/screenshot-2.png b/apps/boxclk/screenshot-2.png index 6d49d82e3f3ec96543fb8af68d53fe389824a32a..b7a73d66ab5361e8aa9a828905ccf2e1b13fd2ff 100644 GIT binary patch literal 3456 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 delta 3584 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 Date: Wed, 21 Jun 2023 13:34:32 -0500 Subject: [PATCH 1534/1725] Update README.md --- apps/boxclk/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index aa6331fe2..07e847c16 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -80,7 +80,7 @@ __Breakdown of Parameters:__ * **short:** Set to false to get the long format value of time, meridian, date, or DayOfWeek. Short formats are used by default if not specified. -* **shortMonth:** Set to false to get the long format value of the month. Short format is used by default if not specified. +* **shortMonth:** Applies only to the "date" box. Set to false to get the long format value of the month. Short format is used by default if not specified. * **bg:** This specifies a custom background image, with the img property defining the name of the image file on the Bangle.js storage. @@ -88,7 +88,7 @@ __Breakdown of Parameters:__ __Settings Menu:__ -The app includes a settings menu that allows you to switch between different configurations. The selected configuration is stored as a numner in the default `boxclk.josn` file using the selectedConfig property. +The app includes a settings menu that allows you to switch between different configurations. The selected configuration is stored as a number in the default `boxclk.josn` file using the selectedConfig property. If the selectedConfig property is not present or is set to 0, the app will use the default configuration. To create additional configurations, create separate JSON files with the naming convention `boxclk-N.json`, where `N` is the configuration number. The settings menu will list all available configurations. From 633036efb23abe7faecb2bc6ad00cf8cee769ad1 Mon Sep 17 00:00:00 2001 From: stweedo <108593831+stweedo@users.noreply.github.com> Date: Wed, 21 Jun 2023 14:45:50 -0500 Subject: [PATCH 1535/1725] Update README.md --- apps/boxclk/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 07e847c16..c72d932a4 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -18,7 +18,7 @@ Each box can be customized extensively via a simple JSON configuration. You can ## Config File Structure -Here's what an example configuration might look like: +Here's an example of what a configuration might contain: ``` { @@ -88,7 +88,7 @@ __Breakdown of Parameters:__ __Settings Menu:__ -The app includes a settings menu that allows you to switch between different configurations. The selected configuration is stored as a number in the default `boxclk.josn` file using the selectedConfig property. +The app includes a settings menu that allows you to switch between different configurations. The selected configuration is stored as a number in the default `boxclk.json` file using the selectedConfig property. If the selectedConfig property is not present or is set to 0, the app will use the default configuration. To create additional configurations, create separate JSON files with the naming convention `boxclk-N.json`, where `N` is the configuration number. The settings menu will list all available configurations. From 4922e135e3865a5817d1f9c57e0c305c4c553bcd Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 22 Jun 2023 00:36:02 -0500 Subject: [PATCH 1536/1725] Add new custom font library module --- apps/boxclk/ChangeLog | 2 +- apps/boxclk/README.md | 4 +-- apps/boxclk/app.js | 35 ++++++----------------- apps/boxclk/boxclk-1.json | 18 ++++++------ apps/boxclk/lib.js | 53 +++++++++++++++++++++++++++++++++++ apps/boxclk/metadata.json | 2 ++ apps/boxclk/screenshot-1.png | Bin 6017 -> 5782 bytes 7 files changed, 76 insertions(+), 38 deletions(-) create mode 100644 apps/boxclk/lib.js diff --git a/apps/boxclk/ChangeLog b/apps/boxclk/ChangeLog index f35b35819..105c8384c 100644 --- a/apps/boxclk/ChangeLog +++ b/apps/boxclk/ChangeLog @@ -1,3 +1,3 @@ 0.01: New App! 0.02: New config options such as step, meridian, short/long formats, custom prefix/suffix -0.03: Allows showing the month in short or long format by setting `"shortMonth"` to true or false +0.03: New Font Library Module! Also allows short or long month. diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index c72d932a4..5baa9c439 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -24,7 +24,7 @@ Here's an example of what a configuration might contain: { "customBox": { "string": "Your text here", - "font": "CustomFont", // Custom fonts must be removed in setUI + "font": "CustomFont", // Add custom fonts to "boxclk.lib" "fontSize": 1, "outline": 2, "color": "#FF9900", // Use 6 or 3 digit hex color codes @@ -54,7 +54,7 @@ __Breakdown of Parameters:__ * **string:** The text string to be displayed inside the box. This is only required for custom Box Names. -* **font:** The font name given to g.setFont(). +* **font:** The font name given to g.setFont(). To use a custom font, use the Espruino Font Converter and add it to "boxclk.lib" next to the other custom fonts. Use the font name beginning after "setFont" in your JSON config. * **fontSize:** The size of the font. diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 0b0ca8e65..1d7d6c590 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -7,6 +7,7 @@ let storage = require("Storage"); let locale = require("locale"); let widgets = require("widget_utils"); + let customFonts = require("boxclk.lib"); let date = new Date(); let bgImage; let configNumber = (storage.readJSON("boxclk.json", 1) || {}).selectedConfig || 0; @@ -46,24 +47,7 @@ /** * --------------------------------------------------------------- - * 4. Font loading function - * --------------------------------------------------------------- - */ - let loadCustomFont = function() { - Graphics.prototype.setFontBrunoAce = function() { - // Actual height 23 (24 - 2) - return this.setFontCustom( - E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), - 46, - atob("CBEdChgYGhgaGBsaCQ=="), - 32|65536 - ); - }; - }; - - /** - * --------------------------------------------------------------- - * 5. Initial settings of boxes and their positions + * 4. Initial settings of boxes and their positions * --------------------------------------------------------------- */ for (let key in boxesConfig) { @@ -88,7 +72,7 @@ /** * --------------------------------------------------------------- - * 6. Text and drawing functions + * 5. Text and drawing functions * --------------------------------------------------------------- */ @@ -164,7 +148,7 @@ /** * --------------------------------------------------------------- - * 7. String forming helper functions + * 6. String forming helper functions * --------------------------------------------------------------- */ let isBool = function(val, defaultVal) { @@ -208,7 +192,7 @@ /** * --------------------------------------------------------------- - * 8. Main draw function + * 7. Main draw function * --------------------------------------------------------------- */ let draw = (function() { @@ -269,7 +253,7 @@ /** * --------------------------------------------------------------- - * 9. Helper function for touch event + * 8. Helper function for touch event * --------------------------------------------------------------- */ let touchInText = function(e, boxItem, boxKey) { @@ -293,7 +277,7 @@ /** * --------------------------------------------------------------- - * 10. Setup function to configure event handlers + * 9. Setup function to configure event handlers * --------------------------------------------------------------- */ let setup = function() { @@ -380,20 +364,19 @@ Bangle.removeListener('drag', dragHandler); if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; - delete Graphics.prototype.setFontBrunoAce; + unloadCustomBoxclkFonts(); // Remove custom fonts // Restore original drawString function (no outlines) g.drawString = g_drawString; restoreSetColor(); widgets.show(); } }); - loadCustomFont(); draw(boxes); }; /** * --------------------------------------------------------------- - * 11. Main execution part + * 10. Main execution part * --------------------------------------------------------------- */ Bangle.loadWidgets(); diff --git a/apps/boxclk/boxclk-1.json b/apps/boxclk/boxclk-1.json index 99e225f04..d4fe65b25 100644 --- a/apps/boxclk/boxclk-1.json +++ b/apps/boxclk/boxclk-1.json @@ -1,15 +1,15 @@ { "time": { - "font": "6x8", - "fontSize": 3, + "font": "Orbitron", + "fontSize": 1, "outline": 2, "color": "#0ff", "outlineColor": "#00f", "border": "#0f0", - "xPadding": -1, - "yPadding": -2.5, - "xOffset": 2, - "yOffset": 0, + "xPadding": 0, + "yPadding": -3.5, + "xOffset": 0, + "yOffset": 2, "boxPos": { "x": "0.33", "y": "0.29" @@ -35,7 +35,7 @@ "dow": { "font": "6x8", "fontSize": 2, - "outline": 1, + "outline": 2, "color": "#000", "outlineColor": "#fff", "border": "#0f0", @@ -45,13 +45,13 @@ "yOffset": 1, "boxPos": { "x": "0.5", - "y": "0.82" + "y": "0.83" } }, "step": { "font": "6x8", "fontSize": 2, - "outline": 1, + "outline": 2, "color": "#000", "outlineColor": "#fff", "border": "#0f0", diff --git a/apps/boxclk/lib.js b/apps/boxclk/lib.js new file mode 100644 index 000000000..fec5f95e8 --- /dev/null +++ b/apps/boxclk/lib.js @@ -0,0 +1,53 @@ +/************************************************* + * Name: boxclk.lib + * Type: Font Library + * Desc: Add your custom fonts for Box Clock below + *************************************************/ + +// Create an empty object for exporting module's functions +var exports={}; + +// Array to hold the names of the custom fonts +let fontNames = []; + +// Add custom fonts below. Each font is a function that's added to the Graphics.prototype +// Use the Espruino Font Converter tool to convert your font into the appropriate format +// Use the name beginning after "setFont", for example "BrunoAce" in your JSON config +// This module and the main app will automatically delete the custom fonts in setUI + +Graphics.prototype.setFontBrunoAce = function() { + // Actual height 23 (24 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), + 46, + atob("CBEdChgYGhgaGBsaCQ=="), + 32|65536 + ); +}; + +Graphics.prototype.setFontOrbitron = function() { + // Actual height 24 (25 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('AA3AAQMBAYwLDAA8DBYUHwADBjwLCngDCvADC+AWJh4OCDQYWGgPgDQsPGI0cMBUf///wE/AYPAAYc4BoIDCnoDCvIDC+IDBgPhAYMDAYfBAYMHwIDBh6HBnEeAYU8AYV4AYX4AYXwAYM58ADBnfAAYM/wADCI4RTDh4DBMhNAYIqeEQ40+XIx7HAYb/SV4MBC4M+gYDCg6fCg5vCAfxnBAYMf/wDBh/8SIYAJgRrDToOAS4KhBAYKpBf4IvChwD5n5jCj7TCh4DBdoK/BMo3wAQMBAYUDAY0HAYUPuB4CAYU8AYV4AYXwAYMB8ADBQIIDBRoIDBh4DCj8AAYKTBAYK7BJ4IDHFAIrCAZgAFO4I1BAYR/CAYK/7AZDABAYMHYYM4YZAAJb4RrBR4xn/gADDNYT0BKYL8BNYs4AfybHU4XAKwJbCXa8HQYQD+M42AYQK7FAA8H/BrC/0BNYQjDM/5rdMoMA4AdBAIwLCC44A='))), + 46, + atob("BxEbDRsaFxsaFRsbBw=="), + 32|65536 + ); +}; + +// Extract the names of the custom fonts added to the Graphics.prototype +for (let prop in Graphics.prototype) { + if (prop.startsWith('setFont')) { + fontNames.push(prop.slice(7)); // remove 'setFont' from the start + } +} + +// Function to remove the custom fonts from the Graphics.prototype +function unloadCustomBoxClkFonts() { + for (let i = 0; i < fontNames.length; i++) { + delete Graphics.prototype[fontNames[i]]; + } +} + +// Export the unload function +exports.unloadCustomBoxClkFonts = unloadCustomBoxClkFonts; \ No newline at end of file diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index 6717b79d8..2d2507e8d 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -12,11 +12,13 @@ "type": "clock", "tags": "clock", "supports": ["BANGLEJS2"], + "provides_modules" : ["boxclk.lib"], "readme": "README.md", "allow_emulator": true, "storage": [ {"name":"boxclk.app.js","url":"app.js"}, {"name":"boxclk.settings.js","url":"settings.js"}, + {"name":"boxclk.lib","url":"lib.js"}, {"name":"boxclk.img","url":"icon.js","evaluate":true}, {"name":"boxclk.beachhouse.img","url":"beachhouse.js","evaluate":true} ], diff --git a/apps/boxclk/screenshot-1.png b/apps/boxclk/screenshot-1.png index c6e22d26297899f6f7d588db4559a71f85aacb1b..25b911aa86557ed990215a0404cd9f7105c4cab9 100644 GIT binary patch literal 5782 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 From a11792e31da0c0d2bd2b528d59c867fab956b91f Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 22 Jun 2023 00:40:57 -0500 Subject: [PATCH 1537/1725] Update name --- apps/boxclk/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 1d7d6c590..29c7a9594 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -364,7 +364,7 @@ Bangle.removeListener('drag', dragHandler); if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; - unloadCustomBoxclkFonts(); // Remove custom fonts + unloadCustomBoxClkFonts(); // Remove custom fonts // Restore original drawString function (no outlines) g.drawString = g_drawString; restoreSetColor(); From 83981d4a6c07901426e108f30775300d743ccd92 Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 22 Jun 2023 01:45:38 -0500 Subject: [PATCH 1538/1725] Revert "Update name" This reverts commit a11792e31da0c0d2bd2b528d59c867fab956b91f. --- apps/boxclk/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 29c7a9594..1d7d6c590 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -364,7 +364,7 @@ Bangle.removeListener('drag', dragHandler); if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; - unloadCustomBoxClkFonts(); // Remove custom fonts + unloadCustomBoxclkFonts(); // Remove custom fonts // Restore original drawString function (no outlines) g.drawString = g_drawString; restoreSetColor(); From e5e6b228103828fb29160b08a696b0e31a20c263 Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 22 Jun 2023 01:47:02 -0500 Subject: [PATCH 1539/1725] Revert "Add new custom font library module" This reverts commit 4922e135e3865a5817d1f9c57e0c305c4c553bcd. --- apps/boxclk/ChangeLog | 2 +- apps/boxclk/README.md | 4 +-- apps/boxclk/app.js | 35 +++++++++++++++++------ apps/boxclk/boxclk-1.json | 18 ++++++------ apps/boxclk/lib.js | 53 ----------------------------------- apps/boxclk/metadata.json | 2 -- apps/boxclk/screenshot-1.png | Bin 5782 -> 6017 bytes 7 files changed, 38 insertions(+), 76 deletions(-) delete mode 100644 apps/boxclk/lib.js diff --git a/apps/boxclk/ChangeLog b/apps/boxclk/ChangeLog index 105c8384c..f35b35819 100644 --- a/apps/boxclk/ChangeLog +++ b/apps/boxclk/ChangeLog @@ -1,3 +1,3 @@ 0.01: New App! 0.02: New config options such as step, meridian, short/long formats, custom prefix/suffix -0.03: New Font Library Module! Also allows short or long month. +0.03: Allows showing the month in short or long format by setting `"shortMonth"` to true or false diff --git a/apps/boxclk/README.md b/apps/boxclk/README.md index 5baa9c439..c72d932a4 100644 --- a/apps/boxclk/README.md +++ b/apps/boxclk/README.md @@ -24,7 +24,7 @@ Here's an example of what a configuration might contain: { "customBox": { "string": "Your text here", - "font": "CustomFont", // Add custom fonts to "boxclk.lib" + "font": "CustomFont", // Custom fonts must be removed in setUI "fontSize": 1, "outline": 2, "color": "#FF9900", // Use 6 or 3 digit hex color codes @@ -54,7 +54,7 @@ __Breakdown of Parameters:__ * **string:** The text string to be displayed inside the box. This is only required for custom Box Names. -* **font:** The font name given to g.setFont(). To use a custom font, use the Espruino Font Converter and add it to "boxclk.lib" next to the other custom fonts. Use the font name beginning after "setFont" in your JSON config. +* **font:** The font name given to g.setFont(). * **fontSize:** The size of the font. diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 1d7d6c590..0b0ca8e65 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -7,7 +7,6 @@ let storage = require("Storage"); let locale = require("locale"); let widgets = require("widget_utils"); - let customFonts = require("boxclk.lib"); let date = new Date(); let bgImage; let configNumber = (storage.readJSON("boxclk.json", 1) || {}).selectedConfig || 0; @@ -47,7 +46,24 @@ /** * --------------------------------------------------------------- - * 4. Initial settings of boxes and their positions + * 4. Font loading function + * --------------------------------------------------------------- + */ + let loadCustomFont = function() { + Graphics.prototype.setFontBrunoAce = function() { + // Actual height 23 (24 - 2) + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), + 46, + atob("CBEdChgYGhgaGBsaCQ=="), + 32|65536 + ); + }; + }; + + /** + * --------------------------------------------------------------- + * 5. Initial settings of boxes and their positions * --------------------------------------------------------------- */ for (let key in boxesConfig) { @@ -72,7 +88,7 @@ /** * --------------------------------------------------------------- - * 5. Text and drawing functions + * 6. Text and drawing functions * --------------------------------------------------------------- */ @@ -148,7 +164,7 @@ /** * --------------------------------------------------------------- - * 6. String forming helper functions + * 7. String forming helper functions * --------------------------------------------------------------- */ let isBool = function(val, defaultVal) { @@ -192,7 +208,7 @@ /** * --------------------------------------------------------------- - * 7. Main draw function + * 8. Main draw function * --------------------------------------------------------------- */ let draw = (function() { @@ -253,7 +269,7 @@ /** * --------------------------------------------------------------- - * 8. Helper function for touch event + * 9. Helper function for touch event * --------------------------------------------------------------- */ let touchInText = function(e, boxItem, boxKey) { @@ -277,7 +293,7 @@ /** * --------------------------------------------------------------- - * 9. Setup function to configure event handlers + * 10. Setup function to configure event handlers * --------------------------------------------------------------- */ let setup = function() { @@ -364,19 +380,20 @@ Bangle.removeListener('drag', dragHandler); if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; - unloadCustomBoxclkFonts(); // Remove custom fonts + delete Graphics.prototype.setFontBrunoAce; // Restore original drawString function (no outlines) g.drawString = g_drawString; restoreSetColor(); widgets.show(); } }); + loadCustomFont(); draw(boxes); }; /** * --------------------------------------------------------------- - * 10. Main execution part + * 11. Main execution part * --------------------------------------------------------------- */ Bangle.loadWidgets(); diff --git a/apps/boxclk/boxclk-1.json b/apps/boxclk/boxclk-1.json index d4fe65b25..99e225f04 100644 --- a/apps/boxclk/boxclk-1.json +++ b/apps/boxclk/boxclk-1.json @@ -1,15 +1,15 @@ { "time": { - "font": "Orbitron", - "fontSize": 1, + "font": "6x8", + "fontSize": 3, "outline": 2, "color": "#0ff", "outlineColor": "#00f", "border": "#0f0", - "xPadding": 0, - "yPadding": -3.5, - "xOffset": 0, - "yOffset": 2, + "xPadding": -1, + "yPadding": -2.5, + "xOffset": 2, + "yOffset": 0, "boxPos": { "x": "0.33", "y": "0.29" @@ -35,7 +35,7 @@ "dow": { "font": "6x8", "fontSize": 2, - "outline": 2, + "outline": 1, "color": "#000", "outlineColor": "#fff", "border": "#0f0", @@ -45,13 +45,13 @@ "yOffset": 1, "boxPos": { "x": "0.5", - "y": "0.83" + "y": "0.82" } }, "step": { "font": "6x8", "fontSize": 2, - "outline": 2, + "outline": 1, "color": "#000", "outlineColor": "#fff", "border": "#0f0", diff --git a/apps/boxclk/lib.js b/apps/boxclk/lib.js deleted file mode 100644 index fec5f95e8..000000000 --- a/apps/boxclk/lib.js +++ /dev/null @@ -1,53 +0,0 @@ -/************************************************* - * Name: boxclk.lib - * Type: Font Library - * Desc: Add your custom fonts for Box Clock below - *************************************************/ - -// Create an empty object for exporting module's functions -var exports={}; - -// Array to hold the names of the custom fonts -let fontNames = []; - -// Add custom fonts below. Each font is a function that's added to the Graphics.prototype -// Use the Espruino Font Converter tool to convert your font into the appropriate format -// Use the name beginning after "setFont", for example "BrunoAce" in your JSON config -// This module and the main app will automatically delete the custom fonts in setUI - -Graphics.prototype.setFontBrunoAce = function() { - // Actual height 23 (24 - 2) - return this.setFontCustom( - E.toString(require('heatshrink').decompress(atob('ABMHwADBh4DKg4bKgIPDAYUfAYV/AYX/AQMD/gmC+ADBn/AByE/GIU8AYUwLxcfAYX/8AnB//4JIP/FgMP4F+CQQBBjwJBFYRbBAd43DHoJpBh/g/xPEK4ZfDgEEORKDDAY8////wADLfZrTCgITBnhEBAYJMBAYMPw4DCM4QDjhwDCjwDBn0+AYMf/gDBh/4AYMH+ADBLpc4ToK/NGYZfnAYcfL4U/x5fBW4LvB/7vC+LvBgHAsBfIn76Cn4WBcYQDFEgJ+CQQYDyH4L/BAZbHLNYjjCAZc8ngDunycBZ4KkBa4KwBnEHY4UB+BfMgf/ZgMH/4XBc4cf4F/gE+ZgRjwAYcfj5jBM4U4M4RQBM4UA8BjIngDFEYJ8BAYUDAYQvCM4ZxBC4V+AYQvBnkBQ4M8gabBJQPAI4WAAYM/GYQaBAYJKCnqyCn5OCn4aBAYIaBAYJPCU4IABnBhIuDXCFAMD+Z/BY4IDBQwOPwEfv6TDAYUPAcwrDAYQ7BAYY/BI4cD8bLCK4RfEAA0BRYTeDcwIrFn0Pw43Bg4DugYDBjxBBU4SvDMYMH/5QBgP/LAQAP8EHN4UPwADHB4YAHA'))), - 46, - atob("CBEdChgYGhgaGBsaCQ=="), - 32|65536 - ); -}; - -Graphics.prototype.setFontOrbitron = function() { - // Actual height 24 (25 - 2) - return this.setFontCustom( - E.toString(require('heatshrink').decompress(atob('AA3AAQMBAYwLDAA8DBYUHwADBjwLCngDCvADC+AWJh4OCDQYWGgPgDQsPGI0cMBUf///wE/AYPAAYc4BoIDCnoDCvIDC+IDBgPhAYMDAYfBAYMHwIDBh6HBnEeAYU8AYV4AYX4AYXwAYM58ADBnfAAYM/wADCI4RTDh4DBMhNAYIqeEQ40+XIx7HAYb/SV4MBC4M+gYDCg6fCg5vCAfxnBAYMf/wDBh/8SIYAJgRrDToOAS4KhBAYKpBf4IvChwD5n5jCj7TCh4DBdoK/BMo3wAQMBAYUDAY0HAYUPuB4CAYU8AYV4AYXwAYMB8ADBQIIDBRoIDBh4DCj8AAYKTBAYK7BJ4IDHFAIrCAZgAFO4I1BAYR/CAYK/7AZDABAYMHYYM4YZAAJb4RrBR4xn/gADDNYT0BKYL8BNYs4AfybHU4XAKwJbCXa8HQYQD+M42AYQK7FAA8H/BrC/0BNYQjDM/5rdMoMA4AdBAIwLCC44A='))), - 46, - atob("BxEbDRsaFxsaFRsbBw=="), - 32|65536 - ); -}; - -// Extract the names of the custom fonts added to the Graphics.prototype -for (let prop in Graphics.prototype) { - if (prop.startsWith('setFont')) { - fontNames.push(prop.slice(7)); // remove 'setFont' from the start - } -} - -// Function to remove the custom fonts from the Graphics.prototype -function unloadCustomBoxClkFonts() { - for (let i = 0; i < fontNames.length; i++) { - delete Graphics.prototype[fontNames[i]]; - } -} - -// Export the unload function -exports.unloadCustomBoxClkFonts = unloadCustomBoxClkFonts; \ No newline at end of file diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index 2d2507e8d..6717b79d8 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -12,13 +12,11 @@ "type": "clock", "tags": "clock", "supports": ["BANGLEJS2"], - "provides_modules" : ["boxclk.lib"], "readme": "README.md", "allow_emulator": true, "storage": [ {"name":"boxclk.app.js","url":"app.js"}, {"name":"boxclk.settings.js","url":"settings.js"}, - {"name":"boxclk.lib","url":"lib.js"}, {"name":"boxclk.img","url":"icon.js","evaluate":true}, {"name":"boxclk.beachhouse.img","url":"beachhouse.js","evaluate":true} ], diff --git a/apps/boxclk/screenshot-1.png b/apps/boxclk/screenshot-1.png index 25b911aa86557ed990215a0404cd9f7105c4cab9..c6e22d26297899f6f7d588db4559a71f85aacb1b 100644 GIT binary patch literal 6017 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 literal 5782 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 Date: Thu, 22 Jun 2023 08:46:53 +0100 Subject: [PATCH 1540/1725] Compass now uses falling edge for reset function so exiting app doesn't reset it - #2832 --- apps/compass/ChangeLog | 1 + apps/compass/compass.js | 2 +- apps/compass/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/compass/ChangeLog b/apps/compass/ChangeLog index cb1c6d463..1e7360018 100644 --- a/apps/compass/ChangeLog +++ b/apps/compass/ChangeLog @@ -6,3 +6,4 @@ 0.06: Add button for force compass calibration 0.07: Use 360-heading to output the correct heading value (fix #1866) 0.08: Added adjustment for Bangle.js magnetometer heading fix +0.09: use falling edge of button to reset compass (allows exit without compass reset) \ No newline at end of file diff --git a/apps/compass/compass.js b/apps/compass/compass.js index 9a7aec2fc..b7c8ebb71 100644 --- a/apps/compass/compass.js +++ b/apps/compass/compass.js @@ -68,7 +68,7 @@ g.clear(1); g.setFont("6x8").setFontAlign(0,0,3).drawString(/*LANG*/"RESET", g.getWidth()-5, g.getHeight()/2); setWatch(function() { Bangle.resetCompass(); -}, (process.env.HWVERSION==2) ? BTN1 : BTN2, {repeat:true}); +}, (process.env.HWVERSION==2) ? BTN1 : BTN2, {repeat:true, edge:"falling"}); Bangle.loadWidgets(); Bangle.drawWidgets(); diff --git a/apps/compass/metadata.json b/apps/compass/metadata.json index 1a614e1f8..9cc03d6c8 100644 --- a/apps/compass/metadata.json +++ b/apps/compass/metadata.json @@ -1,7 +1,7 @@ { "id": "compass", "name": "Compass", - "version": "0.08", + "version": "0.09", "description": "Simple compass that points North", "icon": "compass.png", "screenshots": [{"url":"screenshot_compass.png"}], From f680be51d5e0b6a4160145341f761fa38bcd6d22 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 22 Jun 2023 10:04:46 +0100 Subject: [PATCH 1541/1725] Navigation messages no longer launch the Maps view unless they're new --- apps/android/ChangeLog | 1 + apps/android/boot.js | 2 ++ apps/android/metadata.json | 2 +- apps/messagegui/ChangeLog | 3 ++- apps/messagegui/app.js | 2 ++ apps/messagegui/metadata.json | 2 +- 6 files changed, 9 insertions(+), 3 deletions(-) diff --git a/apps/android/ChangeLog b/apps/android/ChangeLog index 2e98a1237..f2807ba11 100644 --- a/apps/android/ChangeLog +++ b/apps/android/ChangeLog @@ -26,3 +26,4 @@ 0.25: Added option to 'ignore' an app from the message 0.26: Change handling of GPS status to depend on GPS events instead of connection events 0.27: Issue newline before GB commands (solves issue with console.log and ignored commands) +0.28: Navigation messages no longer launch the Maps view unless they're new \ No newline at end of file diff --git a/apps/android/boot.js b/apps/android/boot.js index 8e2e64dd0..d790a078e 100644 --- a/apps/android/boot.js +++ b/apps/android/boot.js @@ -203,6 +203,8 @@ event.t="add"; event.src="maps"; // for the icon event.title="Navigation"; + if (require("messages").getMessages().find(m=>m.id=="nav")) + event.t = "modify"; } else { event.t="remove"; } diff --git a/apps/android/metadata.json b/apps/android/metadata.json index 30890f12a..ed55e1192 100644 --- a/apps/android/metadata.json +++ b/apps/android/metadata.json @@ -2,7 +2,7 @@ "id": "android", "name": "Android Integration", "shortName": "Android", - "version": "0.27", + "version": "0.28", "description": "Display notifications/music/etc sent from the Gadgetbridge app on Android. This replaces the old 'Gadgetbridge' Bangle.js widget.", "icon": "app.png", "tags": "tool,system,messages,notifications,gadgetbridge", diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index 92c7f09a4..cedb0e680 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -97,4 +97,5 @@ 0.70: Handle nav messages from newer Gadgetbridge builds that output distance as a String If we receive a 'music' message and we're in the messages app (but not showing a message) show music (#2814) 0.71: Cancel buzzing when watch unlocked, or when different messages viewed - On 2v18.64+ firmware, 'No Messages' now has a 'back' button \ No newline at end of file + On 2v18.64+ firmware, 'No Messages' now has a 'back' button +0.72: Nav message updastes don't automatically launch navigation menu unless they're new \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index 395b56a4d..dc7799036 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -70,6 +70,8 @@ var onMessagesModified = function(type,msg) { if (msg.state && msg.state!="play") openMusic = false; // no longer playing music to go back to if ((active!=undefined) && (active!="list") && (active!="music")) return; // don't open music over other screens (but do if we're in the main menu) } + if (msg && msg.id=="nav" && msg.t=="modify" && active!="map") + return; // don't show an updated nav message if we're just in the menu showMessage(msg&&msg.id); }; Bangle.on("message", onMessagesModified); diff --git a/apps/messagegui/metadata.json b/apps/messagegui/metadata.json index 9eb20a666..c71e5d542 100644 --- a/apps/messagegui/metadata.json +++ b/apps/messagegui/metadata.json @@ -2,7 +2,7 @@ "id": "messagegui", "name": "Message UI", "shortName": "Messages", - "version": "0.71", + "version": "0.72", "description": "Default app to display notifications from iOS and Gadgetbridge/Android", "icon": "app.png", "type": "app", From e5ebbf0ed46ccd02acd5c3d8f1bfcf2e15007f4a Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 22 Jun 2023 13:43:22 +0100 Subject: [PATCH 1542/1725] Automatically create new track if the filename is different --- apps/recorder/ChangeLog | 3 ++- apps/recorder/metadata.json | 2 +- apps/recorder/widget.js | 11 +++++++---- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/apps/recorder/ChangeLog b/apps/recorder/ChangeLog index 94e2f28c2..cdb7352f3 100644 --- a/apps/recorder/ChangeLog +++ b/apps/recorder/ChangeLog @@ -32,4 +32,5 @@ 0.24: Can now specify `setRecording(true, {force:...` to not show a menu 0.25: Widget now has `isRecording()` for retrieving recording status. 0.26: Now record filename based on date -0.27: Fix first ever recorded filename being log0 (now all are dated) \ No newline at end of file +0.27: Fix first ever recorded filename being log0 (now all are dated) +0.28: Automatically create new track if the filename is different \ No newline at end of file diff --git a/apps/recorder/metadata.json b/apps/recorder/metadata.json index beb5648c8..2f682016f 100644 --- a/apps/recorder/metadata.json +++ b/apps/recorder/metadata.json @@ -2,7 +2,7 @@ "id": "recorder", "name": "Recorder", "shortName": "Recorder", - "version": "0.27", + "version": "0.28", "description": "Record GPS position, heart rate and more in the background, then download to your PC.", "icon": "app.png", "tags": "tool,outdoors,gps,widget", diff --git a/apps/recorder/widget.js b/apps/recorder/widget.js index 3c9afcf70..e34fecfbc 100644 --- a/apps/recorder/widget.js +++ b/apps/recorder/widget.js @@ -241,9 +241,12 @@ options = options||{}; if (isOn && !settings.recording) { var date=(new Date()).toISOString().substr(0,10).replace(/-/g,""), trackNo=10; - if (!settings.file) { // if no filename set - settings.file = "recorder.log" + date + trackNo.toString(36) + ".csv"; - } else if (require("Storage").list(settings.file).length){ // if file exists + function getTrackFilename() { return "recorder.log" + date + trackNo.toString(36) + ".csv"; } + if (!settings.file || !settings.file.startsWith("recorder.log" + date)) { + // if no filename set or date different, set up a new filename + settings.file = getTrackFilename(); + } + if (require("Storage").list(settings.file).length){ // if file exists if (!options.force) { // if not forced, ask the question g.reset(); // work around bug in 2v17 and earlier where bg color wasn't reset return E.showPrompt( @@ -266,7 +269,7 @@ // new file - use the current date var newFileName; do { // while a file exists, add one to the letter after the date - newFileName = "recorder.log" + date + trackNo.toString(36) + ".csv"; + newFileName = getTrackFilename(); trackNo++; } while (require("Storage").list(newFileName).length); settings.file = newFileName; From 78b98315ca54d2c971ea1d49793fb40d1a307560 Mon Sep 17 00:00:00 2001 From: Nick Breland Date: Fri, 23 Jun 2023 10:13:22 +0100 Subject: [PATCH 1543/1725] Cleanup metadata, indentation, and smaller icon --- apps/widswatchbeats/metadata.json | 28 ++++++++++++---------------- apps/widswatchbeats/widget-icon.js | 2 +- apps/widswatchbeats/widget-icon.png | Bin 0 -> 403 bytes apps/widswatchbeats/widget.js | 4 ++-- 4 files changed, 15 insertions(+), 19 deletions(-) create mode 100644 apps/widswatchbeats/widget-icon.png diff --git a/apps/widswatchbeats/metadata.json b/apps/widswatchbeats/metadata.json index 732db6a6d..c02d0b940 100644 --- a/apps/widswatchbeats/metadata.json +++ b/apps/widswatchbeats/metadata.json @@ -1,18 +1,14 @@ { - "id": "widswatchbeats", - "name": "Swatch Internet Time", - "icon": "widget.png", - "version": "0.01", - "description": "Displays the current .beat (Swatch Internet Time)", - "tags": "time,swatch,internet,beat,.beat,clock", - "storage": [{ - "name": "widswatchbeats.wid.js", - "url": "widget.js" - }, - { - "name": "widswatchbeats.img", - "url": "widget-icon.js", - "evaluate": true - } - ] + "id": "widswatchbeats", + "name": "Swatch Internet Time", + "icon": "widget-icon.png", + "type": "widget", + "version": "0.01", + "description": "Displays the current .beat (e.g. @500 for midday)", + "tags": "widget,time,swatch,internet,beat,.beat,clock", + "supports": ["BANGLEJS","BANGLEJS2"], + "storage": [ + {"name": "widswatchbeats.wid.js","url": "widget.js"}, + {"name": "widswatchbeats.img","url": "widget-icon.js","evaluate": true} + ] } diff --git a/apps/widswatchbeats/widget-icon.js b/apps/widswatchbeats/widget-icon.js index efc1c1393..727c8b969 100644 --- a/apps/widswatchbeats/widget-icon.js +++ b/apps/widswatchbeats/widget-icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("7FUwcB/4A/AH4A/AH4A/AH4A/AH4A/AAWAgAACj5F/ABP8J4cAgZG/KH4AD+A5Eh5Q/KH5Q/KH5Q/KH5Q/KH5Q/KH5Q/KH5Q/KH5Q/KH5Q18BWNC4p6bKD34AwcBCxAOEAAV/CKAjG4AOGEZhQK/wbFn4VGBwxiKCJEAg4ONKCy/FFgoACwA+NCJkAj5QqgAULCK8DKEaAHPoYAB8AuKCKJQjHxwRRKBZBDKFB9DKBoRRgEPKF/4CRgvDCJpQrDonAKH5QVn//+BQOg4RGKEk/8BQOgI1HHwQROBBBQaGoWAPpoILKBAIJAAKtIABpQGMoRQRHwoIRKEwgIKH5QfdJBQrgYJCI5ApFMQRQ/KDQAIKH5Q/FgpQaEZBQ/AA4aFKGoAIKBXgCJZQ/EA5Q/KBKeGKH4+HTxBQ/Hw+AKH4+OEwpQ/HxSzSKHEAn5QJgPAKH5QG/AKGv5Q6v4lLI4gABBAxQ/KBCqCKH4AGDRBQX5MkyVJAQRQuHYZQ/KH5Q/KCYgCKBI+HKH5QQHZJQrEBBQ/Hw4gIcCJQ/KH4XGwBQWCJYIFKEqqJHxxHLIgpQLBYpQRgEHA4xQCa5BQOgE/YoxQLGQpQSDpRQFHwQyFWZAAIKFcDCYf4MR5Q/KBgRDKHUfFYhiQ4BQSMpBQTjhQZCIhQInBQvFQn/8BQKCAn4KF8fwAbFg5QFCgoRKKA8BBAs/Cgi2HKCnwDYopFAAIOGCJINGh5QLMo5QUX4rLFZxcPCAwmFgZEGMppQC/JQJ/7sEj4pFHw59IIIIAHEwxEFKAxlFKAYAT8AvEABJBDHAwAE4AONAH4A/AH4A/AH4A/AEH4IH5QQA=")) +require("heatshrink").decompress(atob("mEwhG0AH4A/AH4A/AH4A/ACW7AAwum4XQAA3CF8vJ64AG5Iv/F/4v/F/4v/F/4lb4XJAA/QF4/QCRHCFyG7EpAAT6G7F/4v/F/4v/F/4vf2nC5IAHHJHQCRHCFyAAK5IvH5IlbF/4v/F/4v/F/4v/ABPC6AAG4Qvl2m7AAwumAH4A/AH4A/AH4As")) diff --git a/apps/widswatchbeats/widget-icon.png b/apps/widswatchbeats/widget-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..726a57825680d492930734647df29322aa12a945 GIT binary patch literal 403 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDB3?!H8JlO)I6p}rHd>I(3)EF2VS{N990fib~ zFffz?6~0PfV6d9Oz#v{QXIG#NP(m)iC&cwX1H*q_-v3fk|BH+NKYjYYvGG3;G&KA_ zZ~#bG^n8;Bs$@*^c6Z_Ycys9+Acwug)7O>#Ih#0#rS5^?+1WrLKTj9O5R22v2@-h? zft(yH8$1klGc+=aab7b~;5eXkkZ+QP#3i9a51&4LDyq;~rm*;mfZoDMZA^38Rqdv1_o9J2JOLzKA~vH%}>cptHiD08()k)Bpeg literal 0 HcmV?d00001 diff --git a/apps/widswatchbeats/widget.js b/apps/widswatchbeats/widget.js index dfb57cce4..7f2427c74 100644 --- a/apps/widswatchbeats/widget.js +++ b/apps/widswatchbeats/widget.js @@ -1,7 +1,7 @@ (function() { const WIDTH = 50; const SEC_PER_BEAT = 86.4; - + let drawTimeout; function getSecondsSinceMidnight() { @@ -23,7 +23,7 @@ const seconds = now.getHours() * 3600 + now.getMinutes() * 60 + now.getSeconds(); const beats = Math.floor(seconds / SEC_PER_BEAT); const beatsString = '@' + beats.toString().padStart(3, '0'); - + g.reset(); g.setFontAlign(0, 0); g.clearRect(this.x, this.y, this.x + WIDTH, this.y+22); From 757649c427b243e6fb5fd39cf51b658eb7dafbc5 Mon Sep 17 00:00:00 2001 From: Nick Breland Date: Fri, 23 Jun 2023 10:15:53 +0100 Subject: [PATCH 1544/1725] Add 'Widget' to name --- apps/widswatchbeats/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/widswatchbeats/metadata.json b/apps/widswatchbeats/metadata.json index c02d0b940..787199b8e 100644 --- a/apps/widswatchbeats/metadata.json +++ b/apps/widswatchbeats/metadata.json @@ -1,6 +1,6 @@ { "id": "widswatchbeats", - "name": "Swatch Internet Time", + "name": "Swatch Internet Time Widget", "icon": "widget-icon.png", "type": "widget", "version": "0.01", From 30fbf1e4c96e7e6c7e6b1f188db876b408784987 Mon Sep 17 00:00:00 2001 From: Nick Breland Date: Fri, 23 Jun 2023 15:09:34 +0100 Subject: [PATCH 1545/1725] Remove image line from metadata --- apps/widswatchbeats/metadata.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/widswatchbeats/metadata.json b/apps/widswatchbeats/metadata.json index 787199b8e..5c8229966 100644 --- a/apps/widswatchbeats/metadata.json +++ b/apps/widswatchbeats/metadata.json @@ -8,7 +8,6 @@ "tags": "widget,time,swatch,internet,beat,.beat,clock", "supports": ["BANGLEJS","BANGLEJS2"], "storage": [ - {"name": "widswatchbeats.wid.js","url": "widget.js"}, - {"name": "widswatchbeats.img","url": "widget-icon.js","evaluate": true} + {"name": "widswatchbeats.wid.js","url": "widget.js"} ] } From d869fd6ade26e1e3d112d9514cfbff6e61ee2b4d Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 23 Jun 2023 15:21:06 +0100 Subject: [PATCH 1546/1725] Delete widget-icon.js --- apps/widswatchbeats/widget-icon.js | 1 - 1 file changed, 1 deletion(-) delete mode 100644 apps/widswatchbeats/widget-icon.js diff --git a/apps/widswatchbeats/widget-icon.js b/apps/widswatchbeats/widget-icon.js deleted file mode 100644 index 727c8b969..000000000 --- a/apps/widswatchbeats/widget-icon.js +++ /dev/null @@ -1 +0,0 @@ -require("heatshrink").decompress(atob("mEwhG0AH4A/AH4A/AH4A/ACW7AAwum4XQAA3CF8vJ64AG5Iv/F/4v/F/4v/F/4lb4XJAA/QF4/QCRHCFyG7EpAAT6G7F/4v/F/4v/F/4vf2nC5IAHHJHQCRHCFyAAK5IvH5IlbF/4v/F/4v/F/4v/ABPC6AAG4Qvl2m7AAwumAH4A/AH4A/AH4As")) From b52220a070381af0cfd906e269d3071ab4f6c7ff Mon Sep 17 00:00:00 2001 From: stweedo Date: Sun, 25 Jun 2023 04:16:17 -0500 Subject: [PATCH 1547/1725] Only use drag handler if any box isDragging --- apps/boxclk/ChangeLog | 1 + apps/boxclk/app.js | 12 ++++++++++++ apps/boxclk/metadata.json | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/apps/boxclk/ChangeLog b/apps/boxclk/ChangeLog index f35b35819..794203d36 100644 --- a/apps/boxclk/ChangeLog +++ b/apps/boxclk/ChangeLog @@ -1,3 +1,4 @@ 0.01: New App! 0.02: New config options such as step, meridian, short/long formats, custom prefix/suffix 0.03: Allows showing the month in short or long format by setting `"shortMonth"` to true or false +0.04: Improves touchscreen drag handling for background apps such as Pattern Launcher diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 0b0ca8e65..6321be7c3 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -4,6 +4,7 @@ * 1. Module dependencies and initial configurations * --------------------------------------------------------------- */ + let storage = require("Storage"); let locale = require("locale"); let widgets = require("widget_utils"); @@ -30,6 +31,7 @@ * 2. Graphical and visual configurations * --------------------------------------------------------------- */ + let w = g.getWidth(); let h = g.getHeight(); let totalWidth, totalHeight; @@ -40,6 +42,7 @@ * 3. Touchscreen Handlers * --------------------------------------------------------------- */ + let touchHandler; let dragHandler; let movementDistance = 0; @@ -49,6 +52,7 @@ * 4. Font loading function * --------------------------------------------------------------- */ + let loadCustomFont = function() { Graphics.prototype.setFontBrunoAce = function() { // Actual height 23 (24 - 2) @@ -66,6 +70,7 @@ * 5. Initial settings of boxes and their positions * --------------------------------------------------------------- */ + for (let key in boxesConfig) { if (key === 'bg' && boxesConfig[key].img) { bgImage = storage.read(boxesConfig[key].img); @@ -167,6 +172,7 @@ * 7. String forming helper functions * --------------------------------------------------------------- */ + let isBool = function(val, defaultVal) { return typeof val !== 'undefined' ? Boolean(val) : defaultVal; }; @@ -211,6 +217,7 @@ * 8. Main draw function * --------------------------------------------------------------- */ + let draw = (function() { let updatePerMinute = true; // variable to track the state of time display @@ -272,6 +279,7 @@ * 9. Helper function for touch event * --------------------------------------------------------------- */ + let touchInText = function(e, boxItem, boxKey) { calcBoxSize(boxItem); const pos = calcBoxPos(boxKey); @@ -296,6 +304,7 @@ * 10. Setup function to configure event handlers * --------------------------------------------------------------- */ + let setup = function() { // ------------------------------------ // Define the touchHandler function @@ -343,6 +352,8 @@ // Define the dragHandler function // ------------------------------------ dragHandler = function(e) { + // Check if any box is being dragged + if (!Object.values(isDragging).some(Boolean)) return; // Calculate the movement distance movementDistance += Math.abs(e.dx) + Math.abs(e.dy); // Check if the movement distance exceeds a threshold @@ -396,6 +407,7 @@ * 11. Main execution part * --------------------------------------------------------------- */ + Bangle.loadWidgets(); widgets.swipeOn(); modSetColor(); diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index 6717b79d8..06db0b2fe 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -1,7 +1,7 @@ { "id": "boxclk", "name": "Box Clock", - "version": "0.03", + "version": "0.04", "description": "A customizable clock with configurable text boxes that can be positioned to show your favorite background", "icon": "app.png", "screenshots": [ From 99c3731ed4aca41f0ef0a8ffe9665b2288477374 Mon Sep 17 00:00:00 2001 From: Tom Wallroth Date: Sun, 25 Jun 2023 16:12:13 +0200 Subject: [PATCH 1548/1725] a half-life alyx style clock --- apps/alyxclock/ChangeLog | 1 + apps/alyxclock/README.md | 4 + apps/alyxclock/alyxclock.app.js | 174 ++++++++++++++++++++++++ apps/alyxclock/alyxclock.icon.js | 1 + apps/alyxclock/alyxclock.png | Bin 0 -> 854 bytes apps/alyxclock/metadata.json | 17 +++ apps/alyxclock/screenshot_alyxclock.png | Bin 0 -> 3559 bytes 7 files changed, 197 insertions(+) create mode 100644 apps/alyxclock/ChangeLog create mode 100644 apps/alyxclock/README.md create mode 100644 apps/alyxclock/alyxclock.app.js create mode 100644 apps/alyxclock/alyxclock.icon.js create mode 100644 apps/alyxclock/alyxclock.png create mode 100644 apps/alyxclock/metadata.json create mode 100644 apps/alyxclock/screenshot_alyxclock.png diff --git a/apps/alyxclock/ChangeLog b/apps/alyxclock/ChangeLog new file mode 100644 index 000000000..9db0e26c5 --- /dev/null +++ b/apps/alyxclock/ChangeLog @@ -0,0 +1 @@ +0.01: first release diff --git a/apps/alyxclock/README.md b/apps/alyxclock/README.md new file mode 100644 index 000000000..7765a878f --- /dev/null +++ b/apps/alyxclock/README.md @@ -0,0 +1,4 @@ +# Half-Life Alyx Style clock + +![](screenshot_alyxclock.png) + diff --git a/apps/alyxclock/alyxclock.app.js b/apps/alyxclock/alyxclock.app.js new file mode 100644 index 000000000..57b7d7f48 --- /dev/null +++ b/apps/alyxclock/alyxclock.app.js @@ -0,0 +1,174 @@ +const icoH = [ + [0,1,1,0,0,1,1,0], + [1,1,1,1,1,1,1,1], + [1,1,1,1,1,1,1,1], + [1,1,1,1,1,1,1,1], + [0,1,1,1,1,1,1,0], + [0,0,1,1,1,1,0,0], + [0,0,0,1,1,0,0,0], + [0,0,0,0,0,0,0,0], +] + +const icoR = [ + [0,0,0,0,1,1,1,1,0,0,0,0], + [0,0,1,1,0,0,0,0,1,1,0,0], + [0,1,1,1,1,0,0,1,1,0,1,0], + [0,1,1,0,0,0,0,0,0,0,1,0], + [1,1,1,1,1,1,1,1,0,0,0,1], + [1,1,0,0,1,0,0,0,0,0,0,1], + [1,1,1,1,1,1,1,0,1,1,0,1], + [1,1,1,1,1,1,0,0,0,0,1,1], + [0,1,1,1,1,1,1,1,1,1,1,0], + [0,1,1,1,1,1,1,1,1,1,1,0], + [0,0,1,1,1,1,1,1,1,1,0,0], + [0,0,0,0,1,1,1,1,0,0,0,0], +] + +let idTimeout = null; + +function icon (icon, x, y, size, gap) { + const color = g.getColor(); + for (let r=0; r5lJs`1^iK2F7m0LrPbiMF;ap?0WjO;&YmgNDUO3K|w8HZ&|o z(%Ye6F}4E=ojWUb?Pg$47h3DiR3!FNSkTH+?1NTMF9XRwXzi!SLF)iTe;!H$6wX2D z9C8^t43)tnT-SRP8bgd^p->oRWCRKWj5(udY0RbJ7+UdcnvS193n_+9o}x&hxq?q| z`pj7h8_g9N8plMMfypT}GkuO?BmtbKxPT@+n<9M?z!1fy3>up$QOu%Z?lOgih6+B# zm3aiNQd~nrMT+Y;AZ}8)x6r_XOK}^a?mHAY{NJEWakmHSauoe}0Ny>+yYDdIJV4b$ zmjUMy9xpCE=|in$pW>;9$TN!PFJ6*-g<3_5*As}nq2VoREVvZoFudzvEd3q^?*qlh z3{0PB$igsFVj%e$HAWp)mHZXNmRBjhpw3r@{BPg8VEFMPx# literal 0 HcmV?d00001 diff --git a/apps/alyxclock/metadata.json b/apps/alyxclock/metadata.json new file mode 100644 index 000000000..b188c48d8 --- /dev/null +++ b/apps/alyxclock/metadata.json @@ -0,0 +1,17 @@ +{ + "id": "alyxclock", + "name": "Alyx Clock", + "version": "0.01", + "description": "A clock in the style of half-life alyx gravity gloves", + "icon": "alyxclock.png", + "screenshots": [{"url":"screenshot_alyxclock.png"}], + "type": "clock", + "tags": "clock", + "supports": ["BANGLEJS2"], + "readme": "README.md", + "allow_emulator": true, + "storage": [ + {"name":"alyxclock.app.js","url":"alyxclock.app.js"}, + {"name":"alyxclock.img","url":"alyxclock.icon.js","evaluate":true} + ] +} diff --git a/apps/alyxclock/screenshot_alyxclock.png b/apps/alyxclock/screenshot_alyxclock.png new file mode 100644 index 0000000000000000000000000000000000000000..309ff972a78dfd6cb3cb180088505111d4da29c2 GIT binary patch literal 3559 zcmb7Hc{CK>`_|0FkTJ$G#$IDBLa3Cj82eIGma>ywP4=CU7-Y>>8kB_W%YMy72#AAA9tMN(Ga-91OKPOdd%VsO4> z{`RL!cg#G=zetZHpVL>o&%bLdXgOjQtP+iOIeOJ9jp zq~VMvq6s|Ir+*HJ>H^Qv{l?-%&F`0zYi0_y_VAmE!nURy0@F*3_oVJLP-8_w2N@Hf>(KolFxgO zVK^f-Aqp!*=QLu$VpUZJlq+EF3p#omn~Vp`x3I0ovAbF%iR(PDw#V#@Vxvp50sPkk z?WBXaeyOGm7lh23dw_`^wDCo;HclU8@zhiahtW*X{e*KgZQej0ho}`J(DJaR-$8X` z$zebs*GM8^SAc#~E$p%qX%5@BAgzu&jaK-QVF$NUoznlJ6pp39K@Xr*2*Cey-vm8VWdeWY{ zdIDw#a@yBMAkjv5E33kxSOT&EELLLMBo9SP@L~*HV1O+NS|&1SC4zY2dXM zA>tYce#|M^-ZquM?#6=^kGbs#nY2G_EB`47$Fw_GosBp>2RtsO2*J(?!G^F8_`jb=4IFHrcW&ad%k#jSq&cvk2|Vb`lqIM_co%<9_<*{=K}8 z^R(Ku>3QyTq`ET(-Vx-R+xI4QGP>xtG|BZN#mQ>Uzl9X?Ok7;-;latR-$x^Cwe(uh zd(sV-Uu}=?(Q9LkuNh#6FX}MF8SjjZanSGC7=>SBJvX2ZPCzLnzB>cZ6vFy)xPG92 zP(r_I;qr#F$hl{2qoiog5Wp8Q% zcuA(SRcD?2Zqf&kDN(B4@R0otrW|vm^?iOCs_beN=|wXD=42M-jaN{O@1Dv)LK#yMIJ9LL^5W<~F+5BIh2>#Ud?*t)skXC1KHB>$d!D zc-cc!L@B13Gjyx7srATfja<1iQyJ<5Q3S;C&6*WX+k$D#$nknvbUn|5O=BQSO9{gL zcSR=kVI(?$4rO`w@wtLBCUTw9g=n{V3iRPXWDAjvz)PdU)Rz z^gvrn`PksJIOHc0Hf*>})X36!k9TH9BO_BNrGiU>cDcBOse26lE2Wr5!<_o`6kJo1&lGvBloqykgenDWV~-OyD$f3t?daLv%gwoTOXV(0wKG&Avwof#FzTW0(2~*W!fzu8V)d2e&@9FZzde z##$X9+-`vwZ{RzEYzq0?OjO8%)@cBl<}JPGWs_(HIzLc2e^1l7#N)b%HeNGLd(jJ~ z0R(y)VBNtFQ^qM?XZynqk6S^K<_O1}TFWUDM)q3a%4!s|`SAs$7Cz>W!<_@EUFDwk zqhH-uVvKXlvzVkko~!D^Dpd_z&-9`37N+M~_+Ui+sZ)G

    jgp5D44%zhuQre+)aRwU*=;!fQIB{33!EKl?hh zJo4D2vZMgYmXx~?e+c|dOt$tz-3lZ+eHq2$HXwYz|DR#`d3zGoDm3X4L~85s<+F(W z>Re12wKRydx)MK4tZWpukTVNv0AY&a{ogp+FX%3A@%((tfv18qGemRr385&TKZPv$ zq+X_8C;O4v``M!07rM~sBsJ%xRXAV$V8>qMTpqzzwy~gXl(0u@->{@8_|5Mz@v)gn zymr#vCoPw}c)i+UG?CQg61`mZZ>xiXgDr)N)$FuvG#i=@2+c|$CRf;*pw9^ zy?Tmw#som{lnB0NBKT#w7)gO!^GTNM@<36Y_3E$$a{C+u0ktr2$woY5Dtg@SZxlP0 z3jeMgTE?8^ROEB#lTvkD+7A}7BU)nX;81lb6_WAl{JT{sV@2xF5hF z+!(3&vK%^~|2EA-qB5ER%#Jbz=&CaCnGv*0x+QVbM+Xa<)5Cv)M58txnq#L}yA;-V zHEa9ti_YDb4w-}r6D=#Yj)XM&H6oHO*?{=dn%0wCXX{~Tm7a49sHv*q+PE^asmou z(_{wv9Xq&%YeG#KS>g&+P+Ncz`c*74uJNNuUIzd}b56pAu$$%VKJA@4JFS1vn6qC> z9=TqKFWATDj2l>+zO6n5Gkfi}in&@+CDt zNtcdyT=8v1Cfo?&!pLe{j9K&E{NsLkK)z5X!L2A5Wg~!+M~F*%9LNJ~ zJsc`OE1W!WMz;oJ$@<2JkP-fHnB5}3n(c3D>k88dGmpoc`b^8uz9|L!n7{2Bs%#?u z|Do<6xtSXVlwM)7`LW>#N^au>vdH`uA8hH| z29{7`6Pg<&&ZpAUKYr~>#|PdvX;FszIh>wK91)}|CFfgk-&gA2~suhSI_&Po8W5b1yV>vo+^rq3}8eWE^3r3J`R4 zo8Eimw?~>GbHtspx7J-CzQ8&Z9jpe<#l|UMcjdefZKiH%r^CB8EC$S90Wj<$C6;ec=72vePH@zT55z zZq5?Yl9}%ZhRD;dW^WfLrq;5qOMgNkYg*Hd+6LpSeer@0^bLyu{D3-pNO0?ZfLz1TkvqE_Kk%y`}5vFW*nV?LaMXp zfLcqA&qVoO3ErRkmrJu z8O3@lGGSEpfdb5aG=JYEfT$tlhfA=NO;z+uFG6amZN|)|=znBQ3ag||Sa!5*kJDv@ zjrG&A?K9_<@37tC3$H924{zhJD||)yHoX@MPuPq#12o6nY!A`8#)sgMZ Date: Sun, 25 Jun 2023 21:43:14 +0200 Subject: [PATCH 1549/1725] mylocation: Add option to set location from waypoint --- apps/mylocation/ChangeLog | 1 + apps/mylocation/README.md | 2 +- apps/mylocation/metadata.json | 5 +++-- apps/mylocation/settings.js | 34 ++++++++++++++++++++++++++++++---- 4 files changed, 35 insertions(+), 7 deletions(-) diff --git a/apps/mylocation/ChangeLog b/apps/mylocation/ChangeLog index afe1810e9..ea1c77bde 100644 --- a/apps/mylocation/ChangeLog +++ b/apps/mylocation/ChangeLog @@ -7,3 +7,4 @@ 0.07: Move mylocation app into 'Settings -> Apps' 0.08: Allow setting location from webinterface in the AppLoader 0.09: Fix web interface so app can be installed (replaced custom with interface html) +0.10: Add waypoints as location source diff --git a/apps/mylocation/README.md b/apps/mylocation/README.md index 11a644262..6e41dd04f 100644 --- a/apps/mylocation/README.md +++ b/apps/mylocation/README.md @@ -9,7 +9,7 @@ next to it - and you can choose your location on a map. **On Bangle.js** go to `Settings -> Apps -> My Location` -* Select one of the preset Cities, setup through the GPS or use the webinterface from the AppLoader +* Select one of the preset Cities, setup through the GPS, waypoints or use the webinterface from the AppLoader * Other Apps can read this information to do calculations based on location * When the City shows ??? it means the location has been set through the GPS diff --git a/apps/mylocation/metadata.json b/apps/mylocation/metadata.json index 1c2974030..02a6f6f10 100644 --- a/apps/mylocation/metadata.json +++ b/apps/mylocation/metadata.json @@ -4,12 +4,13 @@ "icon": "app.png", "type": "settings", "screenshots": [{"url":"screenshot_1.png"}], - "version":"0.09", - "description": "Sets and stores the latitude and longitude of your preferred City. It can be set from GPS or webinterface. `mylocation.json` can be used by other apps that need your main location. See README for details.", + "version":"0.10", + "description": "Sets and stores the latitude and longitude of your preferred City. It can be set from GPS, waypoints or webinterface. `mylocation.json` can be used by other apps that need your main location. See README for details.", "readme": "README.md", "tags": "tool,utility", "supports": ["BANGLEJS", "BANGLEJS2"], "interface": "interface.html", + "dependencies" : { "waypoints":"type" }, "storage": [ {"name":"mylocation.settings.js","url":"settings.js"} ], diff --git a/apps/mylocation/settings.js b/apps/mylocation/settings.js index 7033500fa..799baacfe 100644 --- a/apps/mylocation/settings.js +++ b/apps/mylocation/settings.js @@ -13,7 +13,7 @@ let s = { function loadSettings() { settings = require('Storage').readJSON(SETTINGS_FILE, 1) || {}; for (const key in settings) { - s[key] = settings[key] + s[key] = settings[key]; } } @@ -31,7 +31,7 @@ function setFromGPS() { //console.log("."); if (gps.fix === 0) return; //console.log("fix from GPS"); - s = {'lat': gps.lat, 'lon': gps.lon, 'location': '???' }; + s = {'lat': gps.lat, 'lon': gps.lon, 'location': 'GPS' }; Bangle.buzz(1500); // buzz on first position Bangle.setGPSPower(0, "mylocation"); saveSettings(); @@ -50,6 +50,25 @@ function setFromGPS() { Bangle.setUI("updown", undefined); } +function setFromWaypoint() { + wpmenu = { + '': { 'title': /*LANG*/'Waypoint' }, + '< Back': ()=>{ showMainMenu(); }, + }; + require("waypoints").load().forEach(wp => { + if (typeof(wp.lat) === 'number' && typeof(wp.lon) === 'number') { + wpmenu[wp.name] = ()=>{ + s.location = wp.name; + s.lat = parseFloat(wp.lat); + s.lon = parseFloat(wp.lon); + saveSettings(); + showMainMenu(); + }; + } + }); + return E.showMenu(wpmenu); +} + function showMainMenu() { //console.log("showMainMenu"); const mainmenu = { @@ -58,7 +77,13 @@ function showMainMenu() { /*LANG*/'City': { value: 0 | locations.indexOf(s.location), min: 0, max: locations.length - 1, - format: v => locations[v], + format: v => { + if (v === -1) { + return s.location; + } else { + return locations[v]; + } + }, onchange: v => { if (locations[v] !== "???") { s.location = locations[v]; @@ -68,7 +93,8 @@ function showMainMenu() { } } }, - /*LANG*/'Set From GPS': ()=>{ setFromGPS(); } + /*LANG*/'Set From GPS': ()=>{ setFromGPS(); }, + /*LANG*/'Set From Waypoint': ()=>{ setFromWaypoint(); }, }; return E.showMenu(mainmenu); } From ac448b5f36b8c992809c2e52717bb254590ee305 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 26 Jun 2023 02:47:46 +0200 Subject: [PATCH 1550/1725] podadrem: Issue newline before GB commands reference: https://github.com/espruino/BangleApps/commit/ba7a2f79968ed26d3caa8ac2821e07856369e60e --- apps/podadrem/ChangeLog | 1 + apps/podadrem/app.js | 3 +++ apps/podadrem/metadata.json | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/podadrem/ChangeLog b/apps/podadrem/ChangeLog index 3c68f15ac..cfdf9fcd9 100644 --- a/apps/podadrem/ChangeLog +++ b/apps/podadrem/ChangeLog @@ -7,3 +7,4 @@ Addict. 0.06: Add compatibility with Fastload Utils. 0.07: Remove just the specific listeners to not interfere with Quick Launch when fastloading. +0.08: Issue newline before GB commands (solves issue with console.log and ignored commands) diff --git a/apps/podadrem/app.js b/apps/podadrem/app.js index 9c9ed8b04..01ee74231 100644 --- a/apps/podadrem/app.js +++ b/apps/podadrem/app.js @@ -144,6 +144,7 @@ let simpleSearchTerm = function() { // input a simple search term without tags, let searchPlayWOTags = function() { //make a search and play using entered terms searchString = simpleSearch; + Bluetooth.println(""); Bluetooth.println(JSON.stringify({ t: "intent", action: "android.media.action.MEDIA_PLAY_FROM_SEARCH", @@ -157,6 +158,7 @@ let searchPlayWOTags = function() { //make a search and play using entered terms }; let gadgetbridgeWake = function() { + Bluetooth.println(""); Bluetooth.println(JSON.stringify({ t: "intent", target: "activity", @@ -174,6 +176,7 @@ let actFn = function(actName, activOrServ) { // Send the intent message to Gadgetbridge let btMsg = function(activOrServ, cls, actName, xtra) { + Bluetooth.println(""); Bluetooth.println(JSON.stringify({ t: "intent", action: actFn(actName, activOrServ), diff --git a/apps/podadrem/metadata.json b/apps/podadrem/metadata.json index c58b9241d..02e255ca4 100644 --- a/apps/podadrem/metadata.json +++ b/apps/podadrem/metadata.json @@ -2,7 +2,7 @@ "id": "podadrem", "name": "Podcast Addict Remote", "shortName": "PA Remote", - "version": "0.07", + "version": "0.08", "description": "Control Podcast Addict on your android device.", "readme": "README.md", "type": "app", From 330450516ff207c8d14962aeaa133e91759e4257 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 26 Jun 2023 08:51:09 +0100 Subject: [PATCH 1551/1725] add dependency on mylocation --- apps/clkinfosunrise/metadata.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/clkinfosunrise/metadata.json b/apps/clkinfosunrise/metadata.json index d130c6453..7bcbb289b 100644 --- a/apps/clkinfosunrise/metadata.json +++ b/apps/clkinfosunrise/metadata.json @@ -5,6 +5,7 @@ "icon": "app.png", "type": "clkinfo", "tags": "clkinfo,sunrise", + "dependencies": {"mylocation":"app"}, "supports" : ["BANGLEJS2"], "storage": [ {"name":"sunrise.clkinfo.js","url":"clkinfo.js"} From 712d31669ece07c8115d2b08c61f94f0e56ad267 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Mon, 26 Jun 2023 13:59:21 +0200 Subject: [PATCH 1552/1725] mylocation: drop dependency on waypoint --- apps/mylocation/README.md | 2 +- apps/mylocation/metadata.json | 1 - apps/mylocation/settings.js | 9 +++++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/mylocation/README.md b/apps/mylocation/README.md index 6e41dd04f..7fecfdfcb 100644 --- a/apps/mylocation/README.md +++ b/apps/mylocation/README.md @@ -9,7 +9,7 @@ next to it - and you can choose your location on a map. **On Bangle.js** go to `Settings -> Apps -> My Location` -* Select one of the preset Cities, setup through the GPS, waypoints or use the webinterface from the AppLoader +* Select one of the preset Cities, setup through the GPS, waypoints (if installed) or use the webinterface from the AppLoader * Other Apps can read this information to do calculations based on location * When the City shows ??? it means the location has been set through the GPS diff --git a/apps/mylocation/metadata.json b/apps/mylocation/metadata.json index 02a6f6f10..7e0d16d16 100644 --- a/apps/mylocation/metadata.json +++ b/apps/mylocation/metadata.json @@ -10,7 +10,6 @@ "tags": "tool,utility", "supports": ["BANGLEJS", "BANGLEJS2"], "interface": "interface.html", - "dependencies" : { "waypoints":"type" }, "storage": [ {"name":"mylocation.settings.js","url":"settings.js"} ], diff --git a/apps/mylocation/settings.js b/apps/mylocation/settings.js index 799baacfe..fcae0389c 100644 --- a/apps/mylocation/settings.js +++ b/apps/mylocation/settings.js @@ -93,9 +93,14 @@ function showMainMenu() { } } }, - /*LANG*/'Set From GPS': ()=>{ setFromGPS(); }, - /*LANG*/'Set From Waypoint': ()=>{ setFromWaypoint(); }, + /*LANG*/'Set From GPS': ()=>{ setFromGPS(); } }; + try { + require("waypoints"); + mainmenu[/*LANG*/'Set From Waypoint'] = ()=>{ setFromWaypoint(); }; + } catch(err) { + // waypoints not installed, thats ok + } return E.showMenu(mainmenu); } From 4dd4a17511e9a1d7fb9b3d0c36f831cd36e6ef80 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Mon, 26 Jun 2023 21:26:42 +0200 Subject: [PATCH 1553/1725] waypoint_editor fixes: -Display waypoint name instead of its index in remove menu -fix icon --- apps/waypoint_editor/ChangeLog | 1 + apps/waypoint_editor/app-icon.js | 2 +- apps/waypoint_editor/app.js | 42 ++++++++++++++++-------------- apps/waypoint_editor/metadata.json | 2 +- 4 files changed, 25 insertions(+), 22 deletions(-) diff --git a/apps/waypoint_editor/ChangeLog b/apps/waypoint_editor/ChangeLog index 5560f00bc..0ec5d2df8 100644 --- a/apps/waypoint_editor/ChangeLog +++ b/apps/waypoint_editor/ChangeLog @@ -1 +1,2 @@ 0.01: New App! +0.02: Display waypoint name instead of its index in remove menu and fix icon diff --git a/apps/waypoint_editor/app-icon.js b/apps/waypoint_editor/app-icon.js index 49232b838..6ab351afa 100644 --- a/apps/waypoint_editor/app-icon.js +++ b/apps/waypoint_editor/app-icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("mEwwJC/AH4A/AH4AgA==")) +require("heatshrink").decompress(atob("mEwxH+AH4A/AA0QF1wABF94xrFwgvV63W5/PF1AsBAAQvBAAQviFggvHGRXWFwvWFigvKGQgPCFwwvMFxQvL54PDF9wuHF8wuIF7/OAYguFF7mBrtdFQWAvWA5+qvV6FxIvXrwfCGAQqBvXP0guLF6XV1awCmggCmgvB1Wk1QEBRpQvTJ4OAAgM6F4oAEFwulF66zBvXV62sMAM0M4IuKOYOlwGrF6nP0oXD54tGRpDLCO4TvXDwIAHXhB3BSQYvfdZPVSQIvsUILWBF8xeEX4OkF8wQFd7mlDgPP52q5wvDAYISF1elBAYvWwBNB54DBGYIAEO5YvSFAInB1asBQAQzBF5HQxGsF64rBvWlX4fO0nOSQgvD6E0TANeL65XCd4ySFCYWCe4ZhDF6GIxHQ6vVGgQAESQfOTwQvZnQWBmgXDF4qSC5+kGYOr62sR4U0R6WsI4eCF5AzETwYYBwWC6AvlX4gAIR553DR5Ivhd4OCFwYvpAAwv/F7wMBF6ouLF5APHF54sMF44SNF5IsPF4gUSGQQXVAH4A/AH4A/ADY")) diff --git a/apps/waypoint_editor/app.js b/apps/waypoint_editor/app.js index 34b3d8ef4..48a956d82 100644 --- a/apps/waypoint_editor/app.js +++ b/apps/waypoint_editor/app.js @@ -159,26 +159,28 @@ function removeCard() { "< Back" : mainMenu }; if (Object.keys(wp).length==0) Object.assign(menu, {"NO CARDS":""}); - else for (let c in wp) { - let card=c; - menu[c]=()=>{ - E.showMenu(); - var confirmRemove = new Layout ( - {type:"v", c: [ - {type:"txt", font:"15%", pad:1, fillx:1, filly:1, label:"Delete"}, - {type:"txt", font:"15%", pad:1, fillx:1, filly:1, label:card+"?"}, - {type:"h", c: [ - {type:"btn", font:"15%", pad:1, fillx:1, filly:1, label: "YES", cb:l=>{ - delete wp[card]; - writeWP(); - mainMenu(); - }}, - {type:"btn", font:"15%", pad:1, fillx:1, filly:1, label: " NO", cb:l=>{mainMenu();}} - ]} - ], lazy:true}); - g.clear(); - confirmRemove.render(); - }; + else { + wp.forEach((val, card) => { + const name = wp[card].name; + menu[name]=()=>{ + E.showMenu(); + var confirmRemove = new Layout ( + {type:"v", c: [ + {type:"txt", font:"15%", pad:1, fillx:1, filly:1, label:"Delete"}, + {type:"txt", font:"15%", pad:1, fillx:1, filly:1, label:name}, + {type:"h", c: [ + {type:"btn", font:"15%", pad:1, fillx:1, filly:1, label: "YES", cb:l=>{ + wp.splice(card, 1); + writeWP(); + mainMenu(); + }}, + {type:"btn", font:"15%", pad:1, fillx:1, filly:1, label: " NO", cb:l=>{mainMenu();}} + ]} + ], lazy:true}); + g.clear(); + confirmRemove.render(); + }; + }); } E.showMenu(menu); } diff --git a/apps/waypoint_editor/metadata.json b/apps/waypoint_editor/metadata.json index f48721732..12ff6e095 100644 --- a/apps/waypoint_editor/metadata.json +++ b/apps/waypoint_editor/metadata.json @@ -1,6 +1,6 @@ { "id": "waypoint_editor", "name": "Waypoint editor", - "version":"0.01", + "version":"0.02", "description": "Allows editing waypoints on device", "icon": "app.png", "readme": "README.md", From 2c9ec746b6a3595d182383820707e1f0e18668e7 Mon Sep 17 00:00:00 2001 From: stweedo Date: Tue, 27 Jun 2023 08:34:42 -0500 Subject: [PATCH 1554/1725] Use Bangle.getHealthStatus("day").steps) instead --- apps/boxclk/ChangeLog | 1 + apps/boxclk/app.js | 2 +- apps/boxclk/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/boxclk/ChangeLog b/apps/boxclk/ChangeLog index 794203d36..cc73fbc08 100644 --- a/apps/boxclk/ChangeLog +++ b/apps/boxclk/ChangeLog @@ -2,3 +2,4 @@ 0.02: New config options such as step, meridian, short/long formats, custom prefix/suffix 0.03: Allows showing the month in short or long format by setting `"shortMonth"` to true or false 0.04: Improves touchscreen drag handling for background apps such as Pattern Launcher +0.05: Fixes step count not resetting after a new day starts diff --git a/apps/boxclk/app.js b/apps/boxclk/app.js index 6321be7c3..12c69e789 100644 --- a/apps/boxclk/app.js +++ b/apps/boxclk/app.js @@ -249,7 +249,7 @@ boxes.batt.string = modString(boxes.batt, E.getBattery()); } if (boxes.step) { - boxes.step.string = modString(boxes.step, Bangle.getStepCount()); + boxes.step.string = modString(boxes.step, Bangle.getHealthStatus("day").steps); } boxKeys.forEach((boxKey) => { let boxItem = boxes[boxKey]; diff --git a/apps/boxclk/metadata.json b/apps/boxclk/metadata.json index 06db0b2fe..dd81ac436 100644 --- a/apps/boxclk/metadata.json +++ b/apps/boxclk/metadata.json @@ -1,7 +1,7 @@ { "id": "boxclk", "name": "Box Clock", - "version": "0.04", + "version": "0.05", "description": "A customizable clock with configurable text boxes that can be positioned to show your favorite background", "icon": "app.png", "screenshots": [ From 8f5d097120017dc28a6efe59b24116daaacb7e53 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Tue, 27 Jun 2023 23:52:45 +0200 Subject: [PATCH 1555/1725] swscroll: fix check boxes not behaving ... by more properly rebasing on latest E_showScroller_Q3.js from Espruino. --- apps/swscroll/ChangeLog | 2 +- apps/swscroll/boot.js | 70 ++++++++++++++++++------------------- apps/swscroll/metadata.json | 2 +- 3 files changed, 37 insertions(+), 37 deletions(-) diff --git a/apps/swscroll/ChangeLog b/apps/swscroll/ChangeLog index 1adab01bb..9283a85da 100644 --- a/apps/swscroll/ChangeLog +++ b/apps/swscroll/ChangeLog @@ -2,4 +2,4 @@ 0.02: Rebasing on latest changes to showScroller_Q3 (https://github.com/espruino/Espruino/commit/2d3c34ef7c2b9fe2118e816aacd2e096adb99596). 0.03: Rebasing on latest changes to showScroller_Q3 (https://github.com/espruino/Espruino/commit/b6f8105b6348bb6f7cd03ac11efc1f3585c6ad79). Ensure that changing a menu item when half-scrolled off screen doesn't overwrite widgets. 0.04: Rebasing on latest changes to showScroller_Q3 (https://github.com/espruino/Espruino/commit/a0e2d9231df709849f81abf572a742b0fceab85b). Fixes missing `isActive` function that caused an error. - +0.05: Fix for the rebase in ver 0.04. Check boxes didn't behave but now they do. diff --git a/apps/swscroll/boot.js b/apps/swscroll/boot.js index 3c4b55817..1c5a84140 100644 --- a/apps/swscroll/boot.js +++ b/apps/swscroll/boot.js @@ -1,4 +1,4 @@ -E.showScroller = (function(options) { +E.showScroller = (function(options) { /* options = { h = height c = # of items @@ -19,20 +19,20 @@ E.showScroller = (function(options) { */ if (!options) return Bangle.setUI(); // remove existing handlers -var touchHandler = (_,e)=>{ - if (e.y=0) && i { + g.reset().clearRect(R).setClipRect(R.x,R.y,R.x2,R.y2); + var a = YtoIdx(R.y); + var b = Math.min(YtoIdx(R.y2),options.c-1); + for (var i=a;i<=b;i++) + options.draw(i, {x:R.x,y:idxToY(i),w:R.w,h:options.h}); + g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); }; Bangle.setUI({ mode : "custom", back : options.back, remove : options.remove, + redraw : draw, swipe : (_,UD)=>{ pixels = 120; var dy = UD*pixels; @@ -45,13 +45,13 @@ Bangle.setUI({ rScroll = s.scroll &~1; dy = oldScroll-rScroll; if (!dy || options.c<=3) return; //options.c<=3 should maybe be dynamic, so 3 would be replaced by a variable dependent on R=Bangle.appRect. It's here so we don't try to scroll if all entries fit in the app rectangle. - g.reset().setClipRect(R.x,R.y,R.x2,R.y2); - g.scroll(0,dy); + g.reset().setClipRect(R.x,R.y,R.x2,R.y2).scroll(0,dy); var d = UD*pixels; if (d < 0) { - g.setClipRect(R.x,R.y2-(1-d),R.x2,R.y2); - let i = YtoIdx(R.y2-(1-d)); - let y = idxToY(i); + let y = Math.max(R.y2-(1-d), R.y); + g.setClipRect(R.x,y,R.x2,R.y2); + let i = YtoIdx(y); + y = idxToY(i); //print(i, options.c, options.c-i); //debugging info while (y < R.y2 - (options.h*((options.c-i)<=0)) ) { //- (options.h*((options.c-i)<=0)) makes sure we don't go beyond the menu entries in the menu object "options". This has to do with "dy = s.scroll - menuScrollMax-8" above. options.draw(i, {x:R.x,y:y,w:R.w,h:options.h}); @@ -59,10 +59,10 @@ Bangle.setUI({ y += options.h; } } else { // d>0 - g.setClipRect(R.x,R.y,R.x2,R.y+d); - let i = YtoIdx(R.y+d); - let y = idxToY(i); - //print(i, options.c, options.c-i); //debugging info + let y = Math.min(R.y+d, R.y2); + g.setClipRect(R.x,R.y,R.x2,y); + let i = YtoIdx(y); + y = idxToY(i); while (y > R.y-options.h) { options.draw(i, {x:R.x,y:y,w:R.w,h:options.h}); y -= options.h; @@ -70,7 +70,15 @@ Bangle.setUI({ } } g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); - }, touch : touchHandler + }, touch : (_,e)=>{ + if (e.y=0) && i { - g.reset().clearRect(R.x,R.y,R.x2,R.y2); - g.setClipRect(R.x,R.y,R.x2,R.y2); - var a = YtoIdx(R.y); - var b = Math.min(YtoIdx(R.y2),options.c-1); - for (var i=a;i<=b;i++) - options.draw(i, {x:R.x,y:idxToY(i),w:R.w,h:options.h}); - g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); -}, drawItem : i => { - var y = idxToY(i); - g.reset().setClipRect(R.x,Math.max(y,R.y),R.x2,Math.min(y+options.h,R.y2)); - options.draw(i, {x:R.x,y:y,w:R.w,h:options.h}); - g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); - }, isActive : () => Bangle.touchHandler == touchHandler - }; + draw : draw, drawItem : i => { + var y = idxToY(i); + g.reset().setClipRect(R.x,Math.max(y,R.y),R.x2,Math.min(y+options.h,R.y2)); + options.draw(i, {x:R.x,y:y,w:R.w,h:options.h}); + g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); + }, isActive : () => Bangle.uiRedraw == draw +}; var rScroll = s.scroll&~1; // rendered menu scroll (we only shift by 2 because of dither) s.draw(); // draw the full scroller g.flip(); // force an update now to make this snappier diff --git a/apps/swscroll/metadata.json b/apps/swscroll/metadata.json index 3258b9b21..3c0717d14 100644 --- a/apps/swscroll/metadata.json +++ b/apps/swscroll/metadata.json @@ -1,7 +1,7 @@ { "id": "swscroll", "name": "Swipe menus", - "version": "0.04", + "version": "0.05", "description": "Replace built in E.showScroller to act on swipe instead of drag. Navigate menus in discrete steps instead of a continuous motion.", "readme": "README.md", "icon": "app.png", From bf58db6a31ff77b796b05417a69bd1af072af45d Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Wed, 28 Jun 2023 11:08:19 +0200 Subject: [PATCH 1556/1725] openstmap: sort maps by scale desc This results in the map with the highest resolution (lowest scale) to be drawn last --- apps/openstmap/ChangeLog | 3 ++- apps/openstmap/interface.html | 2 +- apps/openstmap/metadata.json | 2 +- apps/openstmap/openstmap.js | 1 + 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/openstmap/ChangeLog b/apps/openstmap/ChangeLog index d8ab55482..a991d92fd 100644 --- a/apps/openstmap/ChangeLog +++ b/apps/openstmap/ChangeLog @@ -18,4 +18,5 @@ 0.15: Make track drawing an option (default off) 0.16: Draw waypoints, too. 0.17: With new Recorder app allow track to be drawn in the background - Switch tile layer URL for faster/more reliable map tiles \ No newline at end of file + Switch tile layer URL for faster/more reliable map tiles +0.18: Prefer map with highest resolution diff --git a/apps/openstmap/interface.html b/apps/openstmap/interface.html index 618c5822e..a8ed3d285 100644 --- a/apps/openstmap/interface.html +++ b/apps/openstmap/interface.html @@ -183,7 +183,7 @@ TODO: }).addTo(map); let marker = new L.marker(latlon).addTo(map); map.fitBounds(latlon.toBounds(2000/*meters*/), {animation: false}); - }, 100); + }, 500); } resolve(); }); diff --git a/apps/openstmap/metadata.json b/apps/openstmap/metadata.json index 97bc7cc05..f4e0f2729 100644 --- a/apps/openstmap/metadata.json +++ b/apps/openstmap/metadata.json @@ -2,7 +2,7 @@ "id": "openstmap", "name": "OpenStreetMap", "shortName": "OpenStMap", - "version": "0.17", + "version": "0.18", "description": "Loads map tiles from OpenStreetMap onto your Bangle.js and displays a map of where you are. Once installed this also adds map functionality to `GPS Recorder` and `Recorder` apps", "readme": "README.md", "icon": "app.png", diff --git a/apps/openstmap/openstmap.js b/apps/openstmap/openstmap.js index 692344357..37f82a127 100644 --- a/apps/openstmap/openstmap.js +++ b/apps/openstmap/openstmap.js @@ -30,6 +30,7 @@ m.maps = require("Storage").list(/openstmap\.\d+\.json/).map(f=>{ map.center = Bangle.project({lat:map.lat,lon:map.lon}); return map; }); +m.maps.sort((a,b) => b.scale-a.scale); // sort by scale so highest resolution is drawn last // we base our start position on the middle of the first map m.map = m.maps[0]; m.scale = m.map.scale; // current scale (based on first map) From bb598bbb6ce0417870cb7e7821abb44919e55929 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Wed, 28 Jun 2023 12:15:20 +0200 Subject: [PATCH 1557/1725] recorder: set scale on OpenStMap plot When plotting with OpenStMap scale map to track width & height --- apps/recorder/ChangeLog | 3 ++- apps/recorder/app.js | 6 ++++++ apps/recorder/metadata.json | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/apps/recorder/ChangeLog b/apps/recorder/ChangeLog index cdb7352f3..991b811cb 100644 --- a/apps/recorder/ChangeLog +++ b/apps/recorder/ChangeLog @@ -33,4 +33,5 @@ 0.25: Widget now has `isRecording()` for retrieving recording status. 0.26: Now record filename based on date 0.27: Fix first ever recorded filename being log0 (now all are dated) -0.28: Automatically create new track if the filename is different \ No newline at end of file +0.28: Automatically create new track if the filename is different +0.29: When plotting with OpenStMap scale map to track width & height diff --git a/apps/recorder/app.js b/apps/recorder/app.js index ca3eec525..a2218420a 100644 --- a/apps/recorder/app.js +++ b/apps/recorder/app.js @@ -224,6 +224,12 @@ function viewTrack(filename, info) { // Function to convert lat/lon to XY var getMapXY; if (info.qOSTM) { + // scale map to view full track + const max = Bangle.project({lat: info.maxLat, lon: info.maxLong}); + const min = Bangle.project({lat: info.minLat, lon: info.minLong}); + const scaleX = (max.x-min.x)/Bangle.appRect.w; + const scaleY = (max.y-min.y)/Bangle.appRect.h; + osm.scale = Math.ceil((scaleX > scaleY ? scaleX : scaleY)*1.1); // add 10% margin getMapXY = osm.latLonToXY.bind(osm); } else { getMapXY = function(lat, lon) { "ram" diff --git a/apps/recorder/metadata.json b/apps/recorder/metadata.json index 2f682016f..e714abf8d 100644 --- a/apps/recorder/metadata.json +++ b/apps/recorder/metadata.json @@ -2,7 +2,7 @@ "id": "recorder", "name": "Recorder", "shortName": "Recorder", - "version": "0.28", + "version": "0.29", "description": "Record GPS position, heart rate and more in the background, then download to your PC.", "icon": "app.png", "tags": "tool,outdoors,gps,widget", From 55429b2c67a993647f753331c459edd81091038e Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 28 Jun 2023 23:11:33 +0200 Subject: [PATCH 1558/1725] podadrem: Send GB wake command only once ...instead of twice like we did before. It should not be needed now we issue a newline before GB commands. --- apps/podadrem/ChangeLog | 2 ++ apps/podadrem/app.js | 1 - apps/podadrem/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/podadrem/ChangeLog b/apps/podadrem/ChangeLog index cfdf9fcd9..2f6fa8764 100644 --- a/apps/podadrem/ChangeLog +++ b/apps/podadrem/ChangeLog @@ -8,3 +8,5 @@ Addict. 0.07: Remove just the specific listeners to not interfere with Quick Launch when fastloading. 0.08: Issue newline before GB commands (solves issue with console.log and ignored commands) +0.09: Don't send the gadgetbridge wake command twice. Once should do since we + issue newline before GB commands. diff --git a/apps/podadrem/app.js b/apps/podadrem/app.js index 01ee74231..6f8721126 100644 --- a/apps/podadrem/app.js +++ b/apps/podadrem/app.js @@ -67,7 +67,6 @@ let touchHandler = function(_, xy) { } else if ((R.x-1 Date: Wed, 28 Jun 2023 23:24:35 +0200 Subject: [PATCH 1559/1725] spotrem: Send GB wake command only once ...instead of twice like we did before. It should not be needed now we issue a newline before GB commands. --- apps/spotrem/ChangeLog | 4 +++- apps/spotrem/app.js | 1 - apps/spotrem/metadata.json | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/spotrem/ChangeLog b/apps/spotrem/ChangeLog index 48b82b12a..56ded4e5c 100644 --- a/apps/spotrem/ChangeLog +++ b/apps/spotrem/ChangeLog @@ -6,4 +6,6 @@ 0.06: Make compatible with Fastload Utils app. 0.07: Remove just the specific listeners to not interfere with Quick Launch when fastloading. -0.08: Issue newline before GB commands (solves issue with console.log and ignored commands) \ No newline at end of file +0.08: Issue newline before GB commands (solves issue with console.log and ignored commands) +0.09: Don't send the gadgetbridge wake command twice. Once should do since we + issue newline before GB commands. diff --git a/apps/spotrem/app.js b/apps/spotrem/app.js index b3fa76f86..48274df44 100644 --- a/apps/spotrem/app.js +++ b/apps/spotrem/app.js @@ -64,7 +64,6 @@ let touchHandler = function(_, xy) { } else if ((R.x-1 Date: Sat, 25 Mar 2023 13:56:53 +0100 Subject: [PATCH 1560/1725] fastload: Add app history functionality Add app history functionality add semicolons that were missing according to Web IDE fix intendtation in if statement fewer storage manipulations, tweak some logic comment regarding resetting history undo `const SETTINGS` -> `let settings` describe app history in readme In settings, don't allow app history and load to launcher to be active at the same time change `launchedApps` -> `appHistory` (somewhat unstable commit) tweaking logic around loading `.bootcde` at system initiation to make the history and resetting of history work as expected add to comment re loading `.bootcde` an extra time on init Revert "add to comment re loading `.bootcde` an extra time on init" This reverts commit b4aaccf35c820a1c7e7a22040c3958b4fc92e5c6. Revert "(somewhat unstable commit) tweaking logic around loading `.bootcde` at system initiation to make the history and resetting of history work as expected" This reverts commit 51dddfc30ac65572891efee1daf6099f7a3b19f4. tweak when settings page is autoupdated Change description for app history. Add contributor. quicklaunch shall not be recorded in the history Add setting to exclude quicklaunch from history, if it is present remove print statements If long press HW button do reset history. Set some variables to null if app history is disabled. add info re long press HW button resets history remove check for 'fastload.5.boot.js'. it would show up in the app history during development because the web ide said to load the uploaded app. it should not be needed in normal operations of the app for users. fewer checks for if useAppHistory is true, by first declaring some variables and then defining them inside an if-statement add recommendation of 'Fast Reset' app in readme --- apps/fastload/ChangeLog | 1 + apps/fastload/README.md | 10 ++++++++ apps/fastload/boot.js | 42 +++++++++++++++++++++++++-------- apps/fastload/metadata.json | 2 +- apps/fastload/settings.js | 46 +++++++++++++++++++++++++++++-------- 5 files changed, 82 insertions(+), 19 deletions(-) diff --git a/apps/fastload/ChangeLog b/apps/fastload/ChangeLog index 53e3c2591..4e68ab2c7 100644 --- a/apps/fastload/ChangeLog +++ b/apps/fastload/ChangeLog @@ -1,3 +1,4 @@ 0.01: New App! 0.02: Allow redirection of loads to the launcher 0.03: Allow hiding the fastloading info screen +0.04: (WIP) Allow use of app history when going back (`load()` or `Bangle.load()` calls without specified app). diff --git a/apps/fastload/README.md b/apps/fastload/README.md index a1feedcf8..be4175f55 100644 --- a/apps/fastload/README.md +++ b/apps/fastload/README.md @@ -8,9 +8,16 @@ This allows fast loading of all apps with two conditions: ## Settings +* Activate app history and navigate back through recent apps instead of immediately loading the clock face +* If Quick Launch is installed it can be excluded from app history * Allows to redirect all loads usually loading the clock to the launcher instead * The "Fastloading..." screen can be switched off +## App history + +* Long press of hardware button clears the app history and loads the clock face +* Installing the 'Fast Reset' app allows doing fastloads directly to the clock face by pressing the hardware button for one second. Useful if there are many apps in the history and the user want to access the clock quickly. + ## Technical infos This is still experimental but it uses the same mechanism as `.bootcde` does. @@ -19,3 +26,6 @@ It checks the app to be loaded for widget use and stores the result of that and # Creator [halemmerich](https://github.com/halemmerich) + +# Contributors +[thyttan](https://github.com/thyttan) diff --git a/apps/fastload/boot.js b/apps/fastload/boot.js index c9271abbf..c7fc2fd86 100644 --- a/apps/fastload/boot.js +++ b/apps/fastload/boot.js @@ -1,5 +1,6 @@ { -const SETTINGS = require("Storage").readJSON("fastload.json") || {}; +const s = require("Storage"); +const SETTINGS = s.readJSON("fastload.json") || {}; let loadingScreen = function(){ g.reset(); @@ -16,26 +17,26 @@ let loadingScreen = function(){ g.flip(true); }; -let cache = require("Storage").readJSON("fastload.cache") || {}; +let cache = s.readJSON("fastload.cache") || {}; let checkApp = function(n){ // no widgets, no problem if (!global.WIDGETS) return true; - let app = require("Storage").read(n); + let app = s.read(n); if (cache[n] && E.CRC32(app) == cache[n].crc) - return cache[n].fast + return cache[n].fast; cache[n] = {}; cache[n].fast = app.includes("Bangle.loadWidgets"); cache[n].crc = E.CRC32(app); - require("Storage").writeJSON("fastload.cache", cache); + s.writeJSON("fastload.cache", cache); return cache[n].fast; -} +}; global._load = load; let slowload = function(n){ global._load(n); -} +}; let fastload = function(n){ if (!n || checkApp(n)){ @@ -50,17 +51,40 @@ let fastload = function(n){ }; global.load = fastload; +let appHistory, resetHistory, recordHistory; +if (SETTINGS.useAppHistory){ + appHistory = s.readJSON("fastload.history.json",true)||[]; + resetHistory = ()=>{appHistory=[];s.writeJSON("fastload.history.json",appHistory);}; + recordHistory = ()=>{s.writeJSON("fastload.history.json",appHistory);}; +} + Bangle.load = (o => (name) => { if (Bangle.uiRemove && !SETTINGS.hideLoading) loadingScreen(); + if (SETTINGS.useAppHistory){ + if (name && name!=".bootcde" && !(name=="quicklaunch.app.js" && SETTINGS.disregardQuicklaunch)) { + // store the name of the app to launch + appHistory.push(name); + } else if (name==".bootcde") { // when Bangle.showClock is called + resetHistory(); + } else if (name=="quicklaunch.app.js" && SETTINGS.disregardQuicklaunch) { + // do nothing with history + } else { + // go back in history + appHistory.pop(); + name = appHistory[appHistory.length-1]; + } + } if (SETTINGS.autoloadLauncher && !name){ let orig = Bangle.load; Bangle.load = (n)=>{ Bangle.load = orig; fastload(n); - } + }; Bangle.showLauncher(); Bangle.load = orig; - } else + } else o(name); })(Bangle.load); + +if (SETTINGS.useAppHistory) E.on('kill', ()=>{if (!BTN.read()) recordHistory(); else resetHistory();}); // Usually record history, but reset it if long press of HW button was used. } diff --git a/apps/fastload/metadata.json b/apps/fastload/metadata.json index 15adcb7e3..954a7d8b4 100644 --- a/apps/fastload/metadata.json +++ b/apps/fastload/metadata.json @@ -1,7 +1,7 @@ { "id": "fastload", "name": "Fastload Utils", "shortName" : "Fastload Utils", - "version": "0.03", + "version": "0.04", "icon": "icon.png", "description": "Enable experimental fastloading for more apps", "type":"bootloader", diff --git a/apps/fastload/settings.js b/apps/fastload/settings.js index 4904e057e..66c990df1 100644 --- a/apps/fastload/settings.js +++ b/apps/fastload/settings.js @@ -1,7 +1,8 @@ (function(back) { var FILE="fastload.json"; var settings; - + var isQuicklaunchPresent = !!require('Storage').read("quicklaunch.app.js", 0, 1); + function writeSettings(key, value) { var s = require('Storage').readJSON(FILE, true) || {}; s[key] = value; @@ -12,25 +13,52 @@ function readSettings(){ settings = require('Storage').readJSON(FILE, true) || {}; } - + readSettings(); function buildMainMenu(){ - var mainmenu = { - '': { 'title': 'Fastload', back: back }, - 'Force load to launcher': { + var mainmenu = {}; + + mainmenu[''] = { 'title': 'Fastload', back: back }; + + mainmenu['Activate app history'] = { + value: !!settings.useAppHistory, + onchange: v => { + writeSettings("useAppHistory",v); + if (v && settings.autoloadLauncher) { + writeSettings("autoloadLauncher",!v); // Don't use app history and load to launcher together. + setTimeout(()=>E.showMenu(buildMainMenu()), 0); // Update the menu so it can be seen if a value was automatically set to false (app history vs load launcher). + } + } + }; + + if (isQuicklaunchPresent) { + mainmenu['Exclude Quick Launch from history'] = { + value: !!settings.disregardQuicklaunch, + onchange: v => { + writeSettings("disregardQuicklaunch",v); + } + }; + } + + mainmenu['Force load to launcher'] = { value: !!settings.autoloadLauncher, onchange: v => { writeSettings("autoloadLauncher",v); + if (v && settings.useAppHistory) { + writeSettings("useAppHistory",!v); + setTimeout(()=>E.showMenu(buildMainMenu()), 0); // Update the menu so it can be seen if a value was automatically set to false (app history vs load launcher). + } // Don't use app history and load to launcher together. } - }, - 'Hide "Fastloading..."': { + }; + + mainmenu['Hide "Fastloading..."'] = { value: !!settings.hideLoading, onchange: v => { writeSettings("hideLoading",v); } - } - }; + }; + return mainmenu; } From 1c81d2dce5395d7fbdee418487e02c05c40d876c Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Fri, 7 Apr 2023 16:38:53 +0200 Subject: [PATCH 1561/1725] fastreset: add new app 'Fast Reset' add app 'Fast Reset' (boot code) use the more descriptive `Bangle.showClock` instead of `load(".bootcde")` fix scope of buzzTimeout id variable compact the code a little bit change metadata and readme to reflect a shortened timeout --- apps/fastreset/ChangeLog | 1 + apps/fastreset/README.md | 32 ++++++++++++++++++++++++++++++++ apps/fastreset/app.png | Bin 0 -> 343 bytes apps/fastreset/boot.js | 5 +++++ apps/fastreset/metadata.json | 14 ++++++++++++++ 5 files changed, 52 insertions(+) create mode 100644 apps/fastreset/ChangeLog create mode 100644 apps/fastreset/README.md create mode 100644 apps/fastreset/app.png create mode 100644 apps/fastreset/boot.js create mode 100644 apps/fastreset/metadata.json diff --git a/apps/fastreset/ChangeLog b/apps/fastreset/ChangeLog new file mode 100644 index 000000000..5560f00bc --- /dev/null +++ b/apps/fastreset/ChangeLog @@ -0,0 +1 @@ +0.01: New App! diff --git a/apps/fastreset/README.md b/apps/fastreset/README.md new file mode 100644 index 000000000..381d80cf5 --- /dev/null +++ b/apps/fastreset/README.md @@ -0,0 +1,32 @@ +# Fast Reset + +Reset the watch by holding the hardware button for half a second. If 'Fastload Utils' is installed this will typically be done with fastloading. A buzz acts as indicator. + +Fast Reset was developed with the app history feature of 'Fastload Utils' in mind. If many apps are in the history stack, the user may want a fast way to exit directly to the clock face without using the firmwares reset function. + +## Usage + +Just install and it will run as boot code. + +## Features + +If 'Fastload Utils' is installed fastloading will be used when possible. Otherwise a standard `load(.bootcde)` is used. + +If the hardware button is held for longer the standard reset functionality of the firmware is executed as well (total 1.5 seconds). And eventually the watchdog will be kicked. + +## Controls + +Hold the hardware button for half a second to feel the buzz, loading the clock face. + +## Requests + +Mention @[thyttan](https://github.com/thyttan) in an issue to the official [BangleApps repository](https://github.com/espruino/BangleApps/issues) for feature requests and bug reports. + +## Acknowledgements + +Rewind icon by Icons8 + +## Creator + +[thyttan](https://github.com/thyttan) + diff --git a/apps/fastreset/app.png b/apps/fastreset/app.png new file mode 100644 index 0000000000000000000000000000000000000000..79e0f310e0041932b6ef26aa355388c3d998a723 GIT binary patch literal 343 zcmV-d0jU0oP)mI+m04%~n%Fmdc#HP8Xp5%=iOw`yPnoMT*9{ud?zZD9GMunRwyv;jTfkWjox z|0hWS4PXJ>Qxq@4Pvl=f7ucjMT!f#BxPS^U3y(IF;(7T-L<8!;DnsGCd}E>kQ;Xtx z_{MnGK)vj*Q0YHnFOE@feq>&Z65b4RUX0U87m^e1{5LjF;PXm&0mhE~+%EMkpqA0K p_6K1Tug&+fh6o{q5JCtF;|bI}-_aXy+^zrs002ovPDHLkV1i&Ei#Y%Q literal 0 HcmV?d00001 diff --git a/apps/fastreset/boot.js b/apps/fastreset/boot.js new file mode 100644 index 000000000..681a5ddb7 --- /dev/null +++ b/apps/fastreset/boot.js @@ -0,0 +1,5 @@ +{let buzzTimeout; +setWatch((e)=>{ + if (e.state) buzzTimeout = setTimeout(()=>{Bangle.buzz(80,0.40);Bangle.showClock();}, 500); + if (!e.state && buzzTimeout) clearTimeout(buzzTimeout);}, +BTN,{repeat:true, edge:'both' });} diff --git a/apps/fastreset/metadata.json b/apps/fastreset/metadata.json new file mode 100644 index 000000000..098e0eeb1 --- /dev/null +++ b/apps/fastreset/metadata.json @@ -0,0 +1,14 @@ +{ "id": "fastreset", + "name": "Fast Reset", + "shortName":"Fast Reset", + "version":"0.01", + "description": "Reset the watch by holding the hardware button for half a second. If 'Fastload Utils' is installed this will typically be done with fastloading. A buzz acts as indicator.", + "icon": "app.png", + "type": "bootloader", + "tags": "system", + "supports" : ["BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"fastreset.boot.js","url":"boot.js"} + ] +} From 74091b6659f3fd3df84e64cab3f82e25dda7d3d5 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Fri, 31 Mar 2023 22:16:17 +0200 Subject: [PATCH 1562/1725] quicklaunch:compat w app history of Fastload Utils Compatibility with 'Fastload Utils' App History feature by checking the trace on launch remove some spaces correct logic for checking the trace at launch `!=` -> `==` --- apps/quicklaunch/ChangeLog | 1 + apps/quicklaunch/app.js | 2 +- apps/quicklaunch/metadata.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/quicklaunch/ChangeLog b/apps/quicklaunch/ChangeLog index 5d70e010b..383e6ee2c 100644 --- a/apps/quicklaunch/ChangeLog +++ b/apps/quicklaunch/ChangeLog @@ -15,3 +15,4 @@ new key names. 0.13: Touch and hold to pause the timeout to clock temporarily. 0.14: Extension: Don't go down a path if nothing waits at the end. Revisit the current intersection instead. +0.15: Extension: Compatibility with "Fastload Utils" app history feature. diff --git a/apps/quicklaunch/app.js b/apps/quicklaunch/app.js index 2fc4910ab..8a56d6c44 100644 --- a/apps/quicklaunch/app.js +++ b/apps/quicklaunch/app.js @@ -24,7 +24,7 @@ } }; - let trace = settings.trace; + let trace = (settings[settings.trace+"app"].src=="quicklaunch.app.js") ? settings.trace : settings.trace.substring(0, settings.trace.length-1); // If the stored trace leads beyond extension screens, walk back to the last extension screen. Compatibility with "Fastload Utils" App History feature. let touchHandler = (_,e) => { if (e.type == 2) return; diff --git a/apps/quicklaunch/metadata.json b/apps/quicklaunch/metadata.json index c2e3029f7..5fd06ba95 100644 --- a/apps/quicklaunch/metadata.json +++ b/apps/quicklaunch/metadata.json @@ -2,7 +2,7 @@ "id": "quicklaunch", "name": "Quick Launch", "icon": "app.png", - "version": "0.14", + "version": "0.15", "description": "Tap or swipe left/right/up/down on your clock face to launch up to five apps of your choice. Configurations can be accessed through Settings->Apps.", "type": "bootloader", "tags": "tools, system", From 193f9c388e2cac5ac8c7b9912048d24a4e06dc00 Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Thu, 29 Jun 2023 14:52:35 +0200 Subject: [PATCH 1563/1725] bugfix release: solving some map problems --- apps/gipy/ChangeLog | 3 + apps/gipy/interface.html | 17 ++- apps/gipy/metadata.json | 2 +- apps/gipy/pkg/gps.d.ts | 24 ++-- apps/gipy/pkg/gps.js | 222 ++++++++++++++++++--------------- apps/gipy/pkg/gps_bg.wasm | Bin 729720 -> 747929 bytes apps/gipy/pkg/gps_bg.wasm.d.ts | 9 +- 7 files changed, 159 insertions(+), 118 deletions(-) diff --git a/apps/gipy/ChangeLog b/apps/gipy/ChangeLog index 4d469eda7..85ac50851 100644 --- a/apps/gipy/ChangeLog +++ b/apps/gipy/ChangeLog @@ -80,3 +80,6 @@ 0.18: * Major rewrite of display : now tile based * We have a map. Never get lost again. + +0.19: + * Several fixes for osm requests and map computations diff --git a/apps/gipy/interface.html b/apps/gipy/interface.html index 13297e17b..892349df9 100644 --- a/apps/gipy/interface.html +++ b/apps/gipy/interface.html @@ -75,6 +75,9 @@ function display_polygon(map) { document.getElementById('upload').disabled = true; if (displayed_polygon !== null) { displayed_polygon.remove(); + } + if (displayed_path !== null) { + displayed_path.remove(); } let polygon = get_polygon(gps_data); let min_lat = polygon[0]; @@ -97,11 +100,21 @@ function display_polygon(map) { } } displayed_polygon = L.polygon(map_polygon).addTo(map); + + let polyline = get_polyline(gps_data); + if (polyline.length > 0) { + let map_polyline = []; + for (let i = 0 ; i < polyline.length ; i+= 2) { + map_polyline.push([polyline[i], polyline[i+1]]); + } + displayed_path = L.polyline(map_polyline, {color: 'red'}).addTo(map); + } + map.fitBounds(L.latLngBounds(L.latLng(min_lat, min_lng), L.latLng(max_lat, max_lng))); document.getElementById('convert').disabled = false; } -import init, { load_gps_from_string, get_polygon, request_map, get_gps_content, get_gps_map_svg, gps_from_area } from "./pkg/gps.js"; +import init, { load_gps_from_string, get_polygon, get_polyline, request_map, get_gps_content, get_gps_map_svg, gps_from_area } from "./pkg/gps.js"; console.log("imported wasm"); // start map @@ -138,6 +151,7 @@ let gps_data = null; let gps_filename = null; let gps_content = null; let displayed_polygon = null; +let displayed_path = null; init().then(() => { @@ -200,7 +214,6 @@ document status.innerHTML = "file converted"; gps_content = get_gps_content(gps_data); let svg_string = get_gps_map_svg(gps_data); - console.log("svg string is", svg_string); let img = document.getElementById("svgmap"); img.innerHTML = svg_string; if (gps_filename !== null) { diff --git a/apps/gipy/metadata.json b/apps/gipy/metadata.json index 0ec42d4c3..8b8c88780 100644 --- a/apps/gipy/metadata.json +++ b/apps/gipy/metadata.json @@ -2,7 +2,7 @@ "id": "gipy", "name": "Gipy", "shortName": "Gipy", - "version": "0.18", + "version": "0.19", "description": "Follow gpx files using the gps. Don't get lost in your bike trips and hikes.", "allow_emulator":false, "icon": "gipy.png", diff --git a/apps/gipy/pkg/gps.d.ts b/apps/gipy/pkg/gps.d.ts index 48fe96776..15a90b1e8 100644 --- a/apps/gipy/pkg/gps.d.ts +++ b/apps/gipy/pkg/gps.d.ts @@ -2,21 +2,26 @@ /* eslint-disable */ /** * @param {Gps} gps +* @returns {string} +*/ +export function get_gps_map_svg(gps: Gps): string; +/** +* @param {Gps} gps * @returns {Float64Array} */ export function get_polygon(gps: Gps): Float64Array; /** * @param {Gps} gps +* @returns {Float64Array} +*/ +export function get_polyline(gps: Gps): Float64Array; +/** +* @param {Gps} gps * @returns {Uint8Array} */ export function get_gps_content(gps: Gps): Uint8Array; /** * @param {Gps} gps -* @returns {string} -*/ -export function get_gps_map_svg(gps: Gps): string; -/** -* @param {Gps} gps * @param {string} key1 * @param {string} value1 * @param {string} key2 @@ -52,20 +57,21 @@ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembl export interface InitOutput { readonly memory: WebAssembly.Memory; readonly __wbg_gps_free: (a: number) => void; - readonly get_polygon: (a: number, b: number) => void; - readonly get_gps_content: (a: number, b: number) => void; readonly get_gps_map_svg: (a: number, b: number) => void; + readonly get_polygon: (a: number, b: number) => void; + readonly get_polyline: (a: number, b: number) => void; + readonly get_gps_content: (a: number, b: number) => void; readonly request_map: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number) => number; readonly load_gps_from_string: (a: number, b: number) => number; readonly gps_from_area: (a: number, b: number, c: number, d: number) => number; readonly __wbindgen_malloc: (a: number) => number; readonly __wbindgen_realloc: (a: number, b: number, c: number) => number; readonly __wbindgen_export_2: WebAssembly.Table; - readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h6bb6801698d941c0: (a: number, b: number, c: number) => void; + readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hab13c10d53cd1c5a: (a: number, b: number, c: number) => void; readonly __wbindgen_add_to_stack_pointer: (a: number) => number; readonly __wbindgen_free: (a: number, b: number) => void; readonly __wbindgen_exn_store: (a: number) => void; - readonly wasm_bindgen__convert__closures__invoke2_mut__h33169a25550cd50b: (a: number, b: number, c: number, d: number) => void; + readonly wasm_bindgen__convert__closures__invoke2_mut__h26ce002f44a5439b: (a: number, b: number, c: number, d: number) => void; } export type SyncInitInput = BufferSource | WebAssembly.Module; diff --git a/apps/gipy/pkg/gps.js b/apps/gipy/pkg/gps.js index 25c39c123..7733bc79e 100644 --- a/apps/gipy/pkg/gps.js +++ b/apps/gipy/pkg/gps.js @@ -7,6 +7,20 @@ heap.push(undefined, null, true, false); function getObject(idx) { return heap[idx]; } +let heap_next = heap.length; + +function dropObject(idx) { + if (idx < 36) return; + heap[idx] = heap_next; + heap_next = idx; +} + +function takeObject(idx) { + const ret = getObject(idx); + dropObject(idx); + return ret; +} + let WASM_VECTOR_LEN = 0; let cachedUint8Memory0 = new Uint8Array(); @@ -84,18 +98,12 @@ function getInt32Memory0() { return cachedInt32Memory0; } -let heap_next = heap.length; +const cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }); -function dropObject(idx) { - if (idx < 36) return; - heap[idx] = heap_next; - heap_next = idx; -} +cachedTextDecoder.decode(); -function takeObject(idx) { - const ret = getObject(idx); - dropObject(idx); - return ret; +function getStringFromWasm0(ptr, len) { + return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len)); } function addHeapObject(obj) { @@ -107,14 +115,6 @@ function addHeapObject(obj) { return idx; } -const cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }); - -cachedTextDecoder.decode(); - -function getStringFromWasm0(ptr, len) { - return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len)); -} - function debugString(val) { // primitive types const type = typeof val; @@ -205,7 +205,7 @@ function makeMutClosure(arg0, arg1, dtor, f) { return real; } function __wbg_adapter_24(arg0, arg1, arg2) { - wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h6bb6801698d941c0(arg0, arg1, addHeapObject(arg2)); + wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hab13c10d53cd1c5a(arg0, arg1, addHeapObject(arg2)); } function _assertClass(instance, klass) { @@ -214,6 +214,23 @@ function _assertClass(instance, klass) { } return instance.ptr; } +/** +* @param {Gps} gps +* @returns {string} +*/ +export function get_gps_map_svg(gps) { + try { + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + _assertClass(gps, Gps); + wasm.get_gps_map_svg(retptr, gps.ptr); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + return getStringFromWasm0(r0, r1); + } finally { + wasm.__wbindgen_add_to_stack_pointer(16); + wasm.__wbindgen_free(r0, r1); + } +} let cachedFloat64Memory0 = new Float64Array(); @@ -246,6 +263,25 @@ export function get_polygon(gps) { } } +/** +* @param {Gps} gps +* @returns {Float64Array} +*/ +export function get_polyline(gps) { + try { + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + _assertClass(gps, Gps); + wasm.get_polyline(retptr, gps.ptr); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + var v0 = getArrayF64FromWasm0(r0, r1).slice(); + wasm.__wbindgen_free(r0, r1 * 8); + return v0; + } finally { + wasm.__wbindgen_add_to_stack_pointer(16); + } +} + function getArrayU8FromWasm0(ptr, len) { return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len); } @@ -268,24 +304,6 @@ export function get_gps_content(gps) { } } -/** -* @param {Gps} gps -* @returns {string} -*/ -export function get_gps_map_svg(gps) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - _assertClass(gps, Gps); - wasm.get_gps_map_svg(retptr, gps.ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - return getStringFromWasm0(r0, r1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(r0, r1); - } -} - /** * @param {Gps} gps * @param {string} key1 @@ -350,8 +368,8 @@ function handleError(f, args) { wasm.__wbindgen_exn_store(addHeapObject(e)); } } -function __wbg_adapter_83(arg0, arg1, arg2, arg3) { - wasm.wasm_bindgen__convert__closures__invoke2_mut__h33169a25550cd50b(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3)); +function __wbg_adapter_84(arg0, arg1, arg2, arg3) { + wasm.wasm_bindgen__convert__closures__invoke2_mut__h26ce002f44a5439b(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3)); } /** @@ -415,6 +433,9 @@ function getImports() { imports.wbg.__wbg_log_d04343b58be82b0f = function(arg0, arg1) { console.log(getStringFromWasm0(arg0, arg1)); }; + imports.wbg.__wbindgen_object_drop_ref = function(arg0) { + takeObject(arg0); + }; imports.wbg.__wbindgen_string_get = function(arg0, arg1) { const obj = getObject(arg1); const ret = typeof(obj) === 'string' ? obj : undefined; @@ -423,48 +444,30 @@ function getImports() { getInt32Memory0()[arg0 / 4 + 1] = len0; getInt32Memory0()[arg0 / 4 + 0] = ptr0; }; - imports.wbg.__wbindgen_object_drop_ref = function(arg0) { - takeObject(arg0); + imports.wbg.__wbindgen_string_new = function(arg0, arg1) { + const ret = getStringFromWasm0(arg0, arg1); + return addHeapObject(ret); + }; + imports.wbg.__wbg_fetch_57429b87be3dcc33 = function(arg0) { + const ret = fetch(getObject(arg0)); + return addHeapObject(ret); }; imports.wbg.__wbindgen_object_clone_ref = function(arg0) { const ret = getObject(arg0); return addHeapObject(ret); }; - imports.wbg.__wbindgen_string_new = function(arg0, arg1) { - const ret = getStringFromWasm0(arg0, arg1); - return addHeapObject(ret); - }; - imports.wbg.__wbg_fetch_56a6919da5e4c21c = function(arg0) { - const ret = fetch(getObject(arg0)); - return addHeapObject(ret); - }; - imports.wbg.__wbg_fetch_a48a10a635c75705 = function(arg0, arg1) { + imports.wbg.__wbg_fetch_749a56934f95c96c = function(arg0, arg1) { const ret = getObject(arg0).fetch(getObject(arg1)); return addHeapObject(ret); }; - imports.wbg.__wbg_new_79046c4e23ea4a68 = function() { return handleError(function () { + imports.wbg.__wbg_new_2d0053ee81e4dd2a = function() { return handleError(function () { const ret = new Headers(); return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_append_419e47e76db2bf58 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { + imports.wbg.__wbg_append_de37df908812970d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { getObject(arg0).append(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4)); }, arguments) }; - imports.wbg.__wbg_newwithstrandinit_88469b4854505aec = function() { return handleError(function (arg0, arg1, arg2) { - const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2)); - return addHeapObject(ret); - }, arguments) }; - imports.wbg.__wbg_signal_ef3cb12ade6e3e58 = function(arg0) { - const ret = getObject(arg0).signal; - return addHeapObject(ret); - }; - imports.wbg.__wbg_new_0660dc54dc784268 = function() { return handleError(function () { - const ret = new AbortController(); - return addHeapObject(ret); - }, arguments) }; - imports.wbg.__wbg_abort_5eaedf61218dad4e = function(arg0) { - getObject(arg0).abort(); - }; - imports.wbg.__wbg_instanceof_Response_f5253ba882b9f20c = function(arg0) { + imports.wbg.__wbg_instanceof_Response_eaa426220848a39e = function(arg0) { let result; try { result = getObject(arg0) instanceof Response; @@ -474,25 +477,40 @@ function getImports() { const ret = result; return ret; }; - imports.wbg.__wbg_url_31e1075302fd753f = function(arg0, arg1) { + imports.wbg.__wbg_url_74285ddf2747cb3d = function(arg0, arg1) { const ret = getObject(arg1).url; const ptr0 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len0; getInt32Memory0()[arg0 / 4 + 0] = ptr0; }; - imports.wbg.__wbg_status_b1116741940de98b = function(arg0) { + imports.wbg.__wbg_status_c4ef3dd591e63435 = function(arg0) { const ret = getObject(arg0).status; return ret; }; - imports.wbg.__wbg_headers_bb43d11ba08fa4bd = function(arg0) { + imports.wbg.__wbg_headers_fd64ad685cf22e5d = function(arg0) { const ret = getObject(arg0).headers; return addHeapObject(ret); }; - imports.wbg.__wbg_text_84312300339af335 = function() { return handleError(function (arg0) { + imports.wbg.__wbg_text_1169d752cc697903 = function() { return handleError(function (arg0) { const ret = getObject(arg0).text(); return addHeapObject(ret); }, arguments) }; + imports.wbg.__wbg_signal_31753ac644b25fbb = function(arg0) { + const ret = getObject(arg0).signal; + return addHeapObject(ret); + }; + imports.wbg.__wbg_new_6396e586b56e1dff = function() { return handleError(function () { + const ret = new AbortController(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_abort_064ae59cda5cd244 = function(arg0) { + getObject(arg0).abort(); + }; + imports.wbg.__wbg_newwithstrandinit_05d7180788420c40 = function() { return handleError(function (arg0, arg1, arg2) { + const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2)); + return addHeapObject(ret); + }, arguments) }; imports.wbg.__wbg_new_abda76e883ba8a5f = function() { const ret = new Error(); return addHeapObject(ret); @@ -525,11 +543,11 @@ function getImports() { const ret = typeof(val) === 'object' && val !== null; return ret; }; - imports.wbg.__wbg_newnoargs_e60ecc77c37e3a52 = function(arg0, arg1) { + imports.wbg.__wbg_newnoargs_b5b063fc6c2f0376 = function(arg0, arg1) { const ret = new Function(getStringFromWasm0(arg0, arg1)); return addHeapObject(ret); }; - imports.wbg.__wbg_next_204d18f7da3b87aa = function(arg0) { + imports.wbg.__wbg_next_579e583d33566a86 = function(arg0) { const ret = getObject(arg0).next; return addHeapObject(ret); }; @@ -537,31 +555,31 @@ function getImports() { const ret = typeof(getObject(arg0)) === 'function'; return ret; }; - imports.wbg.__wbg_value_55672421087ba68e = function(arg0) { + imports.wbg.__wbg_value_1ccc36bc03462d71 = function(arg0) { const ret = getObject(arg0).value; return addHeapObject(ret); }; - imports.wbg.__wbg_iterator_06c08a312c33a792 = function() { + imports.wbg.__wbg_iterator_6f9d4f28845f426c = function() { const ret = Symbol.iterator; return addHeapObject(ret); }; - imports.wbg.__wbg_new_c985446080b753ed = function() { + imports.wbg.__wbg_new_0b9bfdd97583284e = function() { const ret = new Object(); return addHeapObject(ret); }; - imports.wbg.__wbg_self_6626a919974a3fe1 = function() { return handleError(function () { + imports.wbg.__wbg_self_6d479506f72c6a71 = function() { return handleError(function () { const ret = self.self; return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_window_53efdaa5bfb50c7e = function() { return handleError(function () { + imports.wbg.__wbg_window_f2557cc78490aceb = function() { return handleError(function () { const ret = window.window; return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_globalThis_1d749c41ddffdb92 = function() { return handleError(function () { + imports.wbg.__wbg_globalThis_7f206bda628d5286 = function() { return handleError(function () { const ret = globalThis.globalThis; return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_global_ab5d31db46028bf4 = function() { return handleError(function () { + imports.wbg.__wbg_global_ba75c50d1cf384f4 = function() { return handleError(function () { const ret = global.global; return addHeapObject(ret); }, arguments) }; @@ -569,30 +587,30 @@ function getImports() { const ret = getObject(arg0) === undefined; return ret; }; - imports.wbg.__wbg_call_f14a389d3721b1c3 = function() { return handleError(function (arg0, arg1) { + imports.wbg.__wbg_call_97ae9d8645dc388b = function() { return handleError(function (arg0, arg1) { const ret = getObject(arg0).call(getObject(arg1)); return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_call_fd5f197e56af4014 = function() { return handleError(function (arg0, arg1, arg2) { + imports.wbg.__wbg_call_168da88779e35f61 = function() { return handleError(function (arg0, arg1, arg2) { const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_next_74bb1f65e2afa2ac = function() { return handleError(function (arg0) { + imports.wbg.__wbg_next_aaef7c8aa5e212ac = function() { return handleError(function (arg0) { const ret = getObject(arg0).next(); return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_done_3a03f6e9c5c77561 = function(arg0) { + imports.wbg.__wbg_done_1b73b0672e15f234 = function(arg0) { const ret = getObject(arg0).done; return ret; }; - imports.wbg.__wbg_new_54a2183d2c64f703 = function(arg0, arg1) { + imports.wbg.__wbg_new_9962f939219f1820 = function(arg0, arg1) { try { var state0 = {a: arg0, b: arg1}; var cb0 = (arg0, arg1) => { const a = state0.a; state0.a = 0; try { - return __wbg_adapter_83(a, state0.b, arg0, arg1); + return __wbg_adapter_84(a, state0.b, arg0, arg1); } finally { state0.a = a; } @@ -603,46 +621,46 @@ function getImports() { state0.a = state0.b = 0; } }; - imports.wbg.__wbg_resolve_06857cc092d7a5a5 = function(arg0) { + imports.wbg.__wbg_resolve_99fe17964f31ffc0 = function(arg0) { const ret = Promise.resolve(getObject(arg0)); return addHeapObject(ret); }; - imports.wbg.__wbg_then_9d00e221486eb3fd = function(arg0, arg1) { + imports.wbg.__wbg_then_11f7a54d67b4bfad = function(arg0, arg1) { const ret = getObject(arg0).then(getObject(arg1)); return addHeapObject(ret); }; - imports.wbg.__wbg_then_1a0d89f52d89bc91 = function(arg0, arg1, arg2) { + imports.wbg.__wbg_then_cedad20fbbd9418a = function(arg0, arg1, arg2) { const ret = getObject(arg0).then(getObject(arg1), getObject(arg2)); return addHeapObject(ret); }; - imports.wbg.__wbg_buffer_dbc8aa65574f18f0 = function(arg0) { + imports.wbg.__wbg_buffer_3f3d764d4747d564 = function(arg0) { const ret = getObject(arg0).buffer; return addHeapObject(ret); }; - imports.wbg.__wbg_newwithbyteoffsetandlength_dc61a8150553a946 = function(arg0, arg1, arg2) { + imports.wbg.__wbg_newwithbyteoffsetandlength_d9aa266703cb98be = function(arg0, arg1, arg2) { const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); return addHeapObject(ret); }; - imports.wbg.__wbg_new_397df785177a4c42 = function(arg0) { + imports.wbg.__wbg_new_8c3f0052272a457a = function(arg0) { const ret = new Uint8Array(getObject(arg0)); return addHeapObject(ret); }; - imports.wbg.__wbg_stringify_4f9ffcaf0f4c3046 = function() { return handleError(function (arg0) { - const ret = JSON.stringify(getObject(arg0)); - return addHeapObject(ret); - }, arguments) }; - imports.wbg.__wbg_get_838d84ef03e3a353 = function() { return handleError(function (arg0, arg1) { + imports.wbg.__wbg_get_765201544a2b6869 = function() { return handleError(function (arg0, arg1) { const ret = Reflect.get(getObject(arg0), getObject(arg1)); return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_has_d8ce53e88270beb1 = function() { return handleError(function (arg0, arg1) { + imports.wbg.__wbg_has_8359f114ce042f5a = function() { return handleError(function (arg0, arg1) { const ret = Reflect.has(getObject(arg0), getObject(arg1)); return ret; }, arguments) }; - imports.wbg.__wbg_set_c1da7a4e82cfe2ad = function() { return handleError(function (arg0, arg1, arg2) { + imports.wbg.__wbg_set_bf3f89b92d5a34bf = function() { return handleError(function (arg0, arg1, arg2) { const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2)); return ret; }, arguments) }; + imports.wbg.__wbg_stringify_d6471d300ded9b68 = function() { return handleError(function (arg0) { + const ret = JSON.stringify(getObject(arg0)); + return addHeapObject(ret); + }, arguments) }; imports.wbg.__wbindgen_debug_string = function(arg0, arg1) { const ret = debugString(getObject(arg1)); const ptr0 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -657,8 +675,8 @@ function getImports() { const ret = wasm.memory; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper2246 = function(arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 285, __wbg_adapter_24); + imports.wbg.__wbindgen_closure_wrapper2302 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 259, __wbg_adapter_24); return addHeapObject(ret); }; diff --git a/apps/gipy/pkg/gps_bg.wasm b/apps/gipy/pkg/gps_bg.wasm index 9fef1e28fe5eace8b0ff523af998c9e663f5f339..9ed3725f84b0809a74297992747427d63609ae97 100644 GIT binary patch delta 231018 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 z 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%0DKt&Tf2tJ*sqH7{C2Tc)^W%M?o$(1(U$ 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 F|2I{$GOPdq delta 213916 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

    -t{!%(&yT~39 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

    >e(*|>4)hwk zz%psu_z|0i0b|0Oc|q)N!(rK^&m%kY(ewJ&%-`J&WX+C{5s<7Y_{z3MP?t)bTdW7$ z#U3r*1;bl-2X}dzwO*EnJx-UNPE6b2U&9@8F7n}S+(%%gEN#~gFEkxIuVagzfyYt! zC;!B9Jc^h8Jg=)Jj#T^**8w*(7_4JzqrLQpE^2*=l&U{ObXXi4C`q&aK&a8tcv}Al zGDR2D!9U<|IU7aRpSl8d{ZlukvgdSa^uytqqtR%q6u~J*5E#FJOyVPVi^9$y3Os?W zJ?~FlqJDwC)-y(*y+&Vg${TT!QGlMh2+Q@>Y>YFGx?Y41I}Z)Tu~m={7K+9m5KSB< zz}bNa=e-vZXZG|(T|{TSlYfK0s7n_wXknSUActwNT*MwNQgb~b zMq}FnzG)HNe*smz2HQ0Lg02}ign4{J*G|Wbt$f@WSjj;Jjp>f!FX@ue;`xTrZ6VdX zr0Z862IS`)OydFAC zn>W&RO?naVNMrKNavN-tAQtdSfUg-v0`Iep6$%z#W?X{(un+CV%i5nJ#Lqwz!xBFD z+$G(qDAe9Ut>DX(F6y+*k2u^d9q0nY$-}YCt0#D!d1@-37fvAImZP>nrPp3;z!TnG z6|8SC#$*2)Z)J#l?#n>m-{aDJ;{QTYDX%p!9#7*;M9vJXE}Bw4Q{)__0-)uV>z%q0 zXmcQD;(dXJH@v}+BZBJRzvDOIcU%&F#|4VIT7hCkv)>12O5`mrWKQ$2-W0L|rHcN< z7m5_VaM~LvQ*_R1TwqBC%yBu6IT+@oH&CwVM!sO2YR+EwLRl-2QgjoCfn4Jmi7PmO zJ+8nrsG2vBO8vcoQgqpeKkfM_!51hO^CwHkSmpO)DBufJj(*R)0fcAm3si|&5k9qP zwiT#Y{tWm8cb5&1WrD5=ktuW?KOxB z*SF!NTNqxtMP}&|*TPzX=$ibcqv9&il=cJyCF6&Ib~6nXsGmXubs!Xfpm3WvAyAa^ zbRZ%A7}T*VJAZSHwhPy2`?hdf{-8e;z94V#Md3G)wtd%V`}!L99xvRM|Df**Uywof z7akOy(~9GT*yzK5*g9$uhq|ahaq1Hl(8Vzee|sIz`P=Ik|Ka+HzrP-Tw9s{`lMqOv zjLTXT0p0k%&^N|Y_k=*18m7E1U{E9{CL~hN3*47Owz~K;oC|C=1wCV~RX!$Aqov0Q z*W`sp;k9=%|C5_oyaP?H9nSvc%VwWb26BGDehw+A&DzJ8(SdSB#-gq)b9{eKdl_u1 zTpMF|Fp%V&z2B4WEv~D^fodXjr^f#A1slaO5ff(2_a2XpQBt zklG^>3OM^=P;?L|W)FbHIOJ{OH6IK~=io`&uL3EzAb-VtPQhk6G$x*)>E+> z3jyG$rc6%-0x9u_u7Y+KvBzI^A+0gmt_EXI(3KT1RR96|d)VYK`6eR8V_pbFS7HMp z>atY(Z5!7M(2S4iNNk{zg&hZ@;sUj-H==1tY#^l=FDu7j7U(&J7#HJD7lw6+Y^B}a zxKfZ7aqmQoQ23SUjkrL?l&xUa@yl9tkxMT0K_7W-BBb^DRzc0 z7_0^w<5;N{H9fCO#>{}7f{m?^ifbpr6Sp~@yorIz);BTccLI{H`FvN<{BCuxPc-dO zmzm>(#?Zkc0G@-WA1P)zc`v{ntQ|D4NT61Ylm1{eyqEnQCZG50GIA=1ws53M6{`zg zUka)k8Wsp7CG0LZ!@J`sR3y-t;)({kMxEp=bofVUV$ndA3g%fD1GW}8#CY$4*=dMs zhC~cd#3lo<^3vBu1J%k-I3OF32VvG?p@J2rqZ~a{T-=0os6ilw9xWQERidU5HPd*2 z>X_Zkc5JPt#l8H+{H$Nojl}|8QKWfdG2q+U9QwMcDoVM<0ykJW>nOf>pjuOWti(Yw z!O3uzuro3#?2Kf)EF&(muo`>(5Ih`~La|UB|A6?nLv*S{AdS6* zWok|hO9s-SXL1sdoc>fikXFtVHDEq~G6w&zwJ!mTqFBP7oj_)HhrotF$U(>gAqfz2 zaz>6UH_DA5iU>=xfk?6&Hye)Uv49|;h=@odXHZ1s5)la^AeVrm0?Jba)F_8RP7#nx z_`m9zP9~A}{}124Q0cDfySuu&y1HjZZBAoc{y~>{=UH*664Nb7k~7f#6R~d`$6thp zlQ=4w8+c$J`2r6TL?b|0`@{3CDt})83YMZK;S`K&8Wg& zuA@Z96yY13MyjMXBb}bOdd?R}z|XJl)=}y=`umpP9_luGDonBaKdMf91$^jP?Nnxy z!t$ei%$|>qOs&Q1*uK>s9ftiyA2X^QQEjtG#isuMf90|8Z+Wz%Oo(jA1bXqkb~WGf znj)x3sGUn#zi_3Q|7s1a4=>|%2!=5IW(aL>^TQukoQb$}YfP)h1%lM84Z8_g`L>tfBkfObU~E8RTzN!+zH(d&>T)L>Cvr5-KxTk9&Fs!T$u ztVxs-8G8G3FcrT^3-Q9w6UflS%uz}`^Vj;_b~YqRi4LSYLQobbz%O5ffi_BMXFyL%Ve;m$*4Bsyu<1?RwDg~+7)I4-Vrz?<5G+cUC3y0MoIp!1MCHpQv-Z(R3vnf) z9PCaAdIHSS7ZgajhgC8&YOU7f#*F1VVBVq0-j=hJ{IG$yxfN@MsLWihnQ$$4jRJ+5Cn| zeLT$!DOG;-c$&o+QM6xUFRYkM6!sJ2*8 zn$1xDyFR{o*N(1?iKvuUAG}9}ZTVn>b03ss{20MJkgUxHCG?YKD#OOjdK4`_&fl3oY zw|1`H&8?j@2|C(Zm2+Z!uz+0}jdxx`Tk;n;qQ@YggZjNtJFPIInQVUD-29qN69srqi;n+#p>YVN3#_&a zcyIz&-Eiq^dc4vZGwQ2&B{KEBKuU>xY_rTN6@aVa3-P==X&8HEZx_1}o=cI1YQ(O^ zL)Dm3oegcQ#IW$jShByXK}dLF72jx_Ci6v+p*NJEV-$Y6jN+PT3o~C4>n-I!)J=QK0tdn z@$@u%zNymO|E{br>HKaWy8ko&z&Pdv_h5R!Qz^=M5rumw%K6Gseh^W(hobyoQKPg@ z6Bk!7mVY%R^#bYxZi93Er2J?F6NFk<&323qRk+&lZlY2z;0C^;Kpy#aHTF}2QpXaO z`y@%mTY;=3K?xP;e1*^``A9|b0!|K%tA<1nn%@QTk!&W-Fmq)UmBDgi`;cmdv*A7L zjb_j`pw>pBGGs8&n4WK%@nsX5s+tW9KJ7V^j0T)38i1)tNix}ffhpd$oy;*5_g?uN z#_s~xj$D{k_BYFg733loO z^@sM!nBI5Ik_po%?%<4R z(=;!-TCK+$?+Bm|Ay7Bq3Jjl=+NTjX%k%r&+@PW9OXzAc6VT%aDOg-#W;u|e)VAQx zm7{eoSzS0vT#tQ$Kq)l2ER-dsD2kpkylQzg)~lRe+d^4j4}vV#rC=)PStU?bVMJDG z5J~!xSooWHyD@E6nKM<1X!s3(EeUDPuLVMFMhlxsI|9XwfyldMWs6gluq5rHpJffK z)O_9QESj%2WPMsGwfi*?lFSU=RD-qtqXmJ61@nUL(AZ6+d()-pay<$w73sV5YA(b! zs8ZCgwRr1e%6cr6I-|MXYHe1?wyD8vc$#7l|2r>oPQ*JM-$zbtO`2jBz1NxY;RB(n zu=>&}jA|NcOKTry53PN8;A9s){$P8VbPbc^eZsJxFtNTZl&I)GtE+Vp+4fmA{GpvC zNo?-crE>{Z(p-s<$oD_o+W2KcY(tT+t7>h=t_W>wXO zq<4}6fYSlYa6VHV(|*%#Q()53HW5NuX92FOuV4#WDD_%S=C6gR99Z!+a+O0%wz7*Y zl(;Z@hZ5yXYb0^jCOimFuj^omEtN3y23Qlzu+Yjq&->lPzHg~Sr&p?3#ka-ruA@ey zC$Hb*fs1M-=Yn?)Lo@-_E z!%~*pN(qag=~IUnuW13l(*QyX_#Jw9DP0wkr^5i$dTzRxs4La zer&DOw0=_-orp2=Up3gEHcFa2c{5wlMrk20Tf=^81Ce)l1H0WudB9(0Mwo$wTBSvG z4Fk%XNsOeuIiOs+7*b$X8dKEd+3J+F~u)jzh1u&BrGs zXle`Mk3_`xiz*O*A|ickqBdf3*5Nf6?Fh@W{ZW-iMU9VqyuC~_HK`$5MA+M7_)f%c zgO!0a0#vn%QP}I4y;H=cV;{VipT%c-^?R>25^ns&)Fuu|iL&-?{NTJNF>B754u)PZ2OU9C|cjU%zdH3t%z zw2hSgwx5GEEfS~Hn(=uBv$a=hhwH(=R0!TK;|X{QZa}$e%m}N6Z6(x7%oV)d2tCSg zP+?!0)E-0e_g74S+gljIN$G+XP7E3A&0#e5_JHOtx?Atk? zZ1&S3fnVxawB(JGlXqU*+X+VmT1g+!A`?Sef|lgmXIuAwyX=?qc$DLbCiZ^aO zd}SVTkg)iX-sG^5tU(KG<*%QpP=|9j40SmA_WM%~9@%wZgP&JI>NxYq*(dH^JNt11 z%CP}e^Z7NUzyG=M-8*mSF**pjyWpid~zbUcxqMsdg{^nKdrsC`4By3 ziEP%MKKlIUOJ02axw4GUPxx-)g{{9_qKwS;zEa2UZ@hWpi(i%;dYdeCLo$vD77km* zF*%G6=ah}f%YR+{uJo0UzVT`qF8%YZOCKLxKJi6fBjRi^lAqzmSy`%I-~8b4d*_ZU z*rs>UE2}3g+p%TW?@e3zD|Jx`E@)FS-m?q8o^|E)_fr?_)w}5U*WcdRaA(?2@AJ|) zk4)INb=ur-uI&ic>T_)EvWc(%dZ^?wHLyb8Z`x|8&z&p98`jLZQoKft>fDVR@7}rb z{`ZeiGJOhD-%@XYXN?V;iED0DL+bpFAAEZ5+~sYz=4Wfg|N70XPo^*Y=}rgAh8Uej z14hq_CfjX`k#I>6auJ1Q0|{1Kg4NOp!oI2%2DKgjkI1)9RXe5nHur#Ow z`gRao*9nJ0&v#OS@u(y>Zg(`d!V_1Wln_5Jx%{w4pMp2$Oqy_F$&rOkwf6nIYyKP8 zwy^V;c=w8#OobN-HqtXDN5XQ&4`%FyXoodq#?e@F`ME>ye}C$w&l%^5Hd4p)+dg2k zmmj$GEOj0q+~;3C_WGPjKYdwEEB)e(gLhZIv-iid<%3Hv2iV+Mi4EVtUwX~Q4pUo~ zFMMlpy|WU{Ez{^@lWl7N?-Po^`z%n!#|&^5PeWz98bla{lwsNs;=|i|-|~dG=m}I8 zk{X3sE8_F4s)dig?SNUe422i*u!7SgcF3QG8;XO#%E!(zVa2of9?y4D4}HniPJU2n z#|7DO9(z99PeGC838~-Ntu9JCe3!3HSF{xNE8>9^iLL{Hc{Mc6REA>l<2A4y)`CP= zY&P+PP$NV_Q9IOiIUcn|x`q-?svAnYYPN~6so7quq2m35v;=5G{~4mr)G__B2hrs= zTDrc`!nAHH)-;Q4ag!tU){9^ z{@bM04J%rC^nHN_WEmF3vWy-x1f12{YnvKK#tNE$*Q~A**RTT=8e!ZsLg0xTfQZCeVuEX`yiu;!C*@hs51$W2%oI$s1aaPYq$>i8Y zD24I{pr>AvZO!jd*uoFXEIYGwFC{APkHg0P_}yvw&! zzBeLQ0}LV8jL2q%?>aGH++n}7;|22L{?za#Ir#6eE`)_ z_>aTX2tU8&VwIPDA{m=~oTJmnC;2BS!FGM|@GtfuwjUI&otpgSlkVghOuAac zH5}bU?>aOSstY&_AABYxe%HcjXsj(jgkI=hozFtYb5CJQ?KrHR(_>SB`1A4h1|o3H zjDKyNe`p=)waUDX%BXlI4fO=Ai^y^YOL$0W+-sgp8Jlcha#x~<3}_Bf>9~?3ytjii zAy8~ps~}VjkW3uZ4e#65K`Ks|uw7D5g|Q6}DWgouEUKsSG@LhjDz5m{tYoLNMXQ#r zo4Znyvs;Zw%Sy|3wQ8R1a;3D+YMz#o(mJI@>ojK;o4Fd-m1d1m0$Jx?O1Jw=x4)MX z9GFr?l3Gc{U-wd;3ovzN{rV}R@otT+{gi1LZITMSnMosEo;;V&J3cAX1^ky2mXKO!e{d}gjo zdK|cdc;j6KQm!60Dre*tpLAUJ=O95T{1hLJm9D^#Zj#0TB#Y+n;`MsG>2_;1 z;8fudo$hsIOEK_Mo^FpF9p)Wx&-N6$v+Qi0S5f*6FLaOfI`fD5MtMDBhugEAIk~PZ z9$j?SeGh7;64hrE%6tfA{s9OA2>dGiVSs;-X|0->h28>>7fg5;0Sh?WWvm0T)4 zAW2O@xO3M?l%zI>NXy};ICt-q$01r9R=>BB$d){&G#g$8IQ@tbiL0T4U!MnIcRY?{ zMULC&^12Fq1sIEQ)ohXtF{r8}Hw0c+#{&>3XuUy8=5g4hAxdw%peKMva!BCRP2m7$ z8mr9l4-T?P*}!@Lq5y((75M2#buB%4O#jN)sE&a;Hk|bRUvdNN})y=|X_RiH=uPmi~)p6Br zQfsZRGFB+ce=oAnXDRi9P9QZg_v?UEcBrQk%YxlXd{Vj{gv=T?sR>-sCN-FeWTb5k0{N1jq+e3OTB|Nd6<{uhHNj89tTb% zcHg4mcWX4OJy@yvXfASi0y+E)=A=pyCl=)7<>%&Pk0+sU9N{%Uhq6r5paMQXkDuqv zr>Ii3n%XKyt3({zF;Hphj|Zt5(B^Oh;ikhSw(1C%WSnu4%mafkk?7 zN-M=`j7v*Mnzn>^UCu0*H!0ugEpX9dlU&;-Wg*#AusRK+z^4EYEl(Y-r6!qDkPj6A zDK{YHaHKd32qk%t6ch)q=*4*UR}(d9U}KPIWQiSUYLn!pAF`Jc0K`7T%@j`EWDHNL zgp=%y2}S2<^;$Gs3Gyc=w%|&h(BDoXoMs7LW-qmbEATqNn*%2{9+^*)TavQsXl(o% z=u{7Z&w-!nHr8bytUPHa|*4h6%7Rzf#MIL$yTq=qPvA9{>k2&Zwy&zYNR&nd7Y znk&nC0(9adX94)jm&1E98MYS z1NhSbVYVt|v;)9t7K?Nn;iqmi;xx7b-v>X%rypn!@~+ztgvL)qvZE_WqzJqbaOxC+ zHv~?iN#Jb=XD<&?I+eAjEl4!BM_#)uOb`nl=MTAp) zNPRq%q$#=fvECdXjrfQhx6?bmoR3HZ+5v*EVhLxKK}wVKxb|pdOr%Ysd3-KH)4eOZ z4P(4+X$EDxhOgv{y_H8ASKCv1wkaV zYt+@)Qbci36u^jF+WnL#?E*h#IU={vl{wz&9_e+t++J6fNH-8+#7=FKMz(L8R4`^F znl=u36Z45UgW+$Y;Z1mEBx;RQka&{1OC;z6e|45OP^r`E3*l9HpsL;b>eCTkOS?K^NUh!{Nx7W(x@$>UENSMw}KQqFq9A zl9a6gtpVgGeVIn5FNTk#9aWMqQgA6RQmWc(Qn<%BCA?;8s|rF`>RXTb#wjh>(iKW4 zmONCk_>*}A+Q4YCSNfx#O`;AT3!sq{IEk*0cn&T_XqJ1qF^OEC-?NIjB34^vHRFWnP%76); zNMo>z9m(T@?7|khAm4=zC01Q1)wDQf=J_O2y0Oeiq+}P2&y#%P^Ih3F<0vNywul@y z=m{k?1Uc?Njt3qo*SFcUCzM8mhcs)GoS2+or@upKr<_n<-!)?g-CFl|KwkIFG1$8L zyCZ{#koY`+CY->p!cTJBh|^H?aF223=49D3M>)Ml4#+?lP0o&h`>04N8GXpu;)PIx zLB{Lid_lPg^>gt;O6ew@-Qs1pK+Cy5U`b0s5) zq(Qt+?poY!yz;tST=KM16`#u{2K@dxrFy8wp<|r|c}bbMIWQHVoVViU`jwwU3_+Uq zHb0(S@hg)e3;|x(Q-#>_alJuGYRqO$P==XWu}c%M8(7hpnI|f#Dd|l#Iky*8Q2@Fm z){~Mj#`+1mi1#@gJyH21@mVBW4sye$Hm-Mefolh@r-R)CEC?Ej(&O1-08OnK$E#P;l>PRYQZM~B;_!}2(A*L|4Gk-$tynLslz@1ou_JxPWTk!TlfWZ@ z%bcc_mjgesiE%ejgm{$S1NhYDDp>Q_Q%cQLL8R$TQ&ZrDmGDP_(>hs{z>YnoB+77A zFHX!w{6h$%0tLPce$qPx{wMr)1Fo2~Eu#o0wTVQAz=MF3I1yt&4Wi{t;3Sd}#mQ|I zM$y>~0Rk7I^Ln#;i%y#DZjalQnw6H71#L4QCbI5GPd~9wA}d`#W^SrB4C(>0;OGZ6 zsoH5E)c50wY{Wo3DgpO}fl8wFc%n@jinx;ln0tWIzg=aST9l-T)F%;#21MYraMHR~ zE@>p`A@Jj{!|_jvz*Fq29zCI8({YTR*FNzoXFgb^`{z%$?{CKEWV9*qq+$q|~a zdbq!AwC@t)duR#~SBMM< zr~RV9N5OA5;KVgl2@y^`Y%}2hf}bi#Q%A&c!5_qGIF(L=x~FP0raxSWIBBr%KB2o= zdbk@db)<2&ZPLSNkn00R=8qfW@{$>uy;P|5_a8<$F?5%4`L0Z^0Xp5fp;-D3VI(m! zu?zIUCiHNchSN$l3dU3)ID}TKEYL~35?!PnrPFe108eTL2SoK4Rp8`UZgHu@NVx6Zo=9;e;E*R{@VS#3#IQC7fn~6F`GR zFaoPq1wy7qlzO(*>;%Nc*?=s-NWdrn{b=}e07jfxlxWkCmSzYwDi1(@w`g+LLM86e z-H1^DY6yVl4XILaBo{c1QV}EOgUdbc`_MHio-aKqjc8@#3+uAr5lWPGa%*j`T(>oAJpwP_SqGff zyt;6yzvcj1iT=RxSyTCVYi7z-dIudx3|cWS0`NKryBf+Su6SDvhOxaw}Y@B0ZrhFhWCU&!+`tXCw>3_ zx-4~npyH||@OQz2)T1l*L185B(|FeLB-rR!BQ7+EK&jB|Br~-aKrqk{A_=b&e z4Ra0~;Vf`X0F5d@FcDA)%LyhxdsjY;C}grXW-tj6MtKT+M5_g$OrHnjd%V8MI!+UL z3VZoQWm=%44d={{4~j41 z_-5c42U|HEhb%uus+)?lW+|7%<_XBTi!2bRF-GPc1?D zeNe6yyi7x2#OoXIJ5@zEyZN%xzUCaHdkEoo!Sg{p9(!=6(q2B)m%TVsX%KY1uZ{D5 zV8608iWtDJF#wnK+V(aE5uC_?VGQfR75D<+G?@hcW~J~|z~c zWoV3a1cly9k}gGJA!pu%|1E%#woGE}7AdRc7R}k&MM`{)*ZSL}afpLOnEwFuUQhKrTKLGK_1{g6sZ&`w+yEym+0$uku*v#-COqs}rG zs4lI0*f1*Pxdu9YjSUX#_eZG2A2quV)c9i)DjJKrb|1)oU!oNFg={E0+kuot zR8m4~Au27r0^a~U6?jsTBppN?lD^q6{ilN<;v_;ob~U6Soc2W`d^qq%<>`|ABH$nb z>Kh`yjE+tLPCMVA3DRwpJr1xb3_U|Xk?wuOqjfbMaB`5gREV%W2qU_{w*x1gOyJi7 zaC#I4Lary%nM(_#AutNfa~SXrz@u2vQY9^1r2iBoQXT}p3m;-ux|KD_jH%Yp5F7-& ztpSe&PSQ{$j|JYK5>DF<5#AKxq%KgGNRIvMAQGpj6Z(2RBfZW%92t+)R4+FFEkhj( zk;qubSJ~;elvYt9Pg?qDwh6p0@Ima*G^J-{EkJryTQwfgwE%&4EMB`z`P0;N_G30_ z0bm*6J-`mYH-IyMyMX8+xB&nFx6snuW1!$XaR~Ps0!hu-3u%G>lE9nm1qxhL;9bNK z0%9fns{pH+`yJ(h4r}109~g$8$^BztEKAR@z!i$)z9w6Ppn##;WV?b2#PZ%On`gvj z5SUqrF&MS$4~PM1V|wgkjOkI^1Q9w(4;?ZzT{`l(#`q%aTZBad1RjX8h?i;oYy+TQ z^0?%|T6hLn5fO+JL;|~xQ-W3i`Z)pF+@~==O=bFB8p@u1SE=V0Y5O28v8uq|22Nup z@RPv93^*DjU4S){;|9FH0 zq?loB`YI(oC}x-@b5CIkSjuItzrg48LhK@*7Jib#QDkq}>IUGFps`9DK{w*Xm2kA- zzN<>&dr0%)6~%WCcb03M9X9~U=Ad87nS(f_ZQXBQl-;JJea1Ru(hIKG?;7!DhH$ap z72#sPd!L0@uGyeai!emGbvkWQ> zO1)3UV8r(F^(^+)dSx)Ar!ZR=G;hiE&A~2BNudT|LP`Q}2Y+n?-Wh%@AZ6hlE8+do zXk+}hfK$JZb2n=y@|+R{ViQ9qCwL^s)-NEgOG=A(exUsM8}n?j)MpPaF<0w%sc$g1 zjnF=@4nW|jG?GzT=1I?N5`_Bkq$G8Q;p8R=%g=ddNe znjf*=ej}LcYf;rrYI0?84Ff9s}f&k%*nC+Z7(UAqe7vKlH0+RUkU#LIMJ#U1xsJT{R(gZK>mXOW7k@d>ym0jB`uKMgR({k0Na3Y=)k_|VE3xW56;0?rWcpM$6P zlS}3W0bx=tWZoAr1F#QJ1qm{i;%?m&N@oV^QjNOW2{Z{M``g+i7=*6E9!ZLCtTX*Z zvz@umnY(s44=VkrFE0S@S18WBX00ETusoP=^{*j=2+e*m1EiRLkYCx;1_7Iv2eSij z;JzRZ7h}SIM_%-!dR_+n0k{IVs!5_ArRH!475^vTI^YK2Cg2v}@prUd2*C7CHQ@Ln z8o!Qw8??Uwcgpgr&E{V<+iKoM!eI!Q4jIx4?(KKjmaFF2CX?~@Fe~txaA{JBc(m4& zxV#IXn&OQY)vlRiTkS)<|EV)#uONq>$W$0}WaKWk8UgTE0aP_H&pS$b2hzLgM@|CZ zeuuPd*B>XXdpDTdVtzoYXyK+~X|$1p8GgFmXVn`Sv+{pzq}+EUJNYLb71(^!Y->UH z0O>~#KkbG`6kP*;8=$&@hKJatn(XdP^V1#mYdpB=P)KTx)N@rZKdh;XtQrFZo&tXa zAjFUjnHXxD*u*E5E{yI3rB}WabPk#2Ako`^8UTS$fu97Zz~7VDtml*-JQF#!6>EFb z91%NhbuhmvR38y(jSod>bpT<2a6klL+G_U9O>=w3ZkxMhNcBLWA36VYegUh?)ctg~$K%R7H#pURdV>ddo9ZVJQ)&(5;&03>+feDR+FmM^QzhhHq- zQ`3@flJ~sKTGz5Hlh4g$Ki0CWmy2ex*|jY*R7JGJ6~r>VU{BK^jvl*%(6*-b6)XF;g-J9^7U`o53Ma16Y2@i^tjE2T+6cKd?IwSTf~#KeEiWmYMR3 zpV%L5kzjENC5Vt5D@xc??JVQf)jtyf&-QNmnO$vXan@P*3kX4CPElXsVeR$5u)Ow` zZ{-;$S(gr$0(sIYwz-4FBVReinr2uosTY2wT&hZro4>MHhb1Sdv=ju0Adv2qvV{&* z<+n4;)Db0~{*B_oSbqDrccyf-nB)oP+0;&!UNsJ$M?lpo7#mdQ$Mft&CrdYZ#RZno z+47>g@uHq;`$e{+v&B_o<0Xn+74^eN?!LrYbg_(?(LQod0uJppW7{SO!B(3?B$)7 zYx2tTY|1XnGSt(VAnsi{imo!xUdu#z z*)?`~uVu0P#h+~UKFbh!_4VS5`z*hh0%qU-j2-^mk`-_po(J|@as$r&^%+~a-_kK) z!=2CA#r>A%0T=FkRvi0raA1`x9EopbBe2fXQ^(I@62WOj-U<48GHH& zQrux|-Vt!|ig|3u5lfPMbYAi0BbK@*`R4p$+fmDrgXrYq-&W!%S3dU%dw#X`f_!`j zD_CQFQ7+xd?yj*mQfKe_QXBilyI9g%YaMy>uHx=%t>dc5o4#N>*ISe13tzB5)?4G` zd0(=+A6Spe*S}&nKd`Qrmmg#+Hdy<~HxCxy+F-@EnzwyZ{J=&l2J-U1i#^5GSUF7!Qj1Adroh#oy&i>eJT_(TzBYWdxt4p5o)7&lAo$ApN zJ$Y#f`*Mr5owDL*5H1cY4&G{=6X)N@Lij0aQw#~M?gFQ^l&l#8-J@|0-rX&KTuL(i zp=Bfia!stq&EUuOpup8N*W>hQH#QPM6EiJIgyU9+Yh>A-4oQy_$Rj4R=T2E8Eh0?{ zTYt(r;8BVql>b!t`xN^6WOw9GKn>2z<%RO{jK$%>e^KQ@+6|k(SE)IB;c zw(_(!({CiTL{9y)Gt<)2+Wf7QR+Yl&>>37O(J0;~dhSU~Q_VveQXk0~Y!jGQG4j`JH4nIuGIeCS7(gQl3!rHRWORe_a@KJ2hZ|&gk z;V!_@KI{v~wuf807Jz$372>r=JpRO!{-9HVE7OC=%2>`BYeJmV!H{DH`~!ShJv=DM zNO$N;L$fnhYfbI68utiX!{|ya*;ZaTYpoxqE)3y&)YS_@xMB&x#aWCs{mmNDi9dby zuy=e{uP2X>WmZQ+!JXjO*b2d&aXHtUgQplgZeyIz?DO9+jz&@jcDPmtyNiZs2hdbO zQwnR1*EBSFY*7fm&N3X0A^q;LhoK#z9Kp)H;O`CSqpOyE;in%tG#&o2Y8foGT^v$D zwWP}uqxn;!rZ(*21#3iTCf&o}rWI*BB0q)lB5@M7@}@P4UA$?vHR`-1gqx4X<>g8~ z_yZ6Fes=-f3BZZR;-E)a8#-qJrAogFw*g#z4&zx{*uKE0>2^uljW9B_bn>{fVUFUL z&P2F9%axhyq{|@*c3f=8LUgGF@yU2{2d=_a-?T>h2lwi!$HZN1kDGFp!iqw;)(Nkq z%|Eh>1PhKI=q|f|L#g#kaCTf*E_CtqnMhB?&`+-|R-qkVN$Oie@OWgF6IW$i2*cyg z0l2Qo&fd1h#;!-ASP%`l`#hsvZaZit2n&WQnb`B^t@Zt)FY=t;(S`Yy>L0x{gj@A` zplCd#=kmF5`}ZF4IwKz06SVt!=panC9N&05U4cr_A7;+g^QstU$at->A{H{4g@{pb z4YjxD;QAlW67)?7SK;o0OZ%{ausvtzxKV1~E~4NPgw^7s!lG|kZB=grZ=`MT=s7Z- z$yoIZ)*4X>Z-#KSJPdgecL+QY{s@)@2D0r&6e{unTv`NJXAd5njJ|CR3lDoMgj;+C zkM+eB#GG;VxHxwAy0u}83JB#sZYO?k#tvTMb++g0(VsD9!)E+tjc&ROBr5bh zxHLV-<@J=t^~weGlpyZ`aDjtySma;U1{C)!;!+#f*c;ZSZK(SVy~ueW-QKo?)NL8M z2hrwXX3;O#H`3?K%a@$_o`RW7Le6^7QyH>b)Oa1=nMrrF1~$z?7}covz@Ge?zDC#C2oGlAvXLFnXnDrE zvPAMxu5ow_Ff%95nQKVmF3cN&9KkSDbbHP;G?U&!0crOvykZKGpak*b*x;Miv=rO& z5Ppm`bZC3ZmoAt}^yG}83-qpqT^Dg{mNQ!Hy&qWgAyyVDLpwkcI_#$#)-dhQ@Eg`T zns56JYcwX6h$|j$6!;XR4dpD}=BYwF-jJPx89*bRZlCr}2*2pouL7N(Z_}^;p+hzy zP9#s>ANSTs#%j_u~vI@#Y#;rcofy4Lr{U&0iFcB9~v!|=H`{~7Ql%XzbfSK&q4je?&j4B z^1p&C$qe=;fFu~5P@u^i2EhL?U?4!m+lw$Vg^2S=V|;Fjy#F_l#IpuhtCPR97O+{Vie$}F~^UeXN z%Q|G%3ogG51~=1*CzWX_^*}eshWxwV+`(V`+56xQ_1A{*%i1<*O0ALg{pLg`VE$Ri zqz@8{dpqgyQ=RE|31QTqPd^Lpcu(_J)m=O2B3_tIGsw>_eYy@9@Af&z4MhfmyPklb zG;IT|KfmBU(3joXK$M0dVtHm=JlTAMg0&2V4o8>`E-k`N_($isvy5p+u!DE4iRJod zj|vhy*ENnmVUDfKI&4>v2MrR+-J_YOr><3VsuK<+ELBJuvQNRy?9|1IOU%ao48@VR7?~>J1le#+#y(EU9 zufz^rvrb~Iez)4AW7k8i1T+P-0JJker}ZJsaoyabgA1wYN6rPn{c;&UQW*Dv#%0=( z0-h^)kWFwa)_#>9^1+RI*RTRCUha{6r*H(x+$htI!o%Ta!xcNnk?@ZK7->2BuI)!z z4fj8@L6a`8At7z*1wJ2s62}5x06(n<0*57wE7Srfn;K~{0NiCTliVKn?615OK})2?;Fi1Ap#`GX%LJf2(^)SuzQKmRa<7xoQY zM3r!@mW&Se;qafV6b9*neG9H_@#jYoWn&1<9KR$IXW{`zO)ncR*%3$zrwG%kV3*p0 zPP_c=$eftC(2awAzMa8JfiR-=;X7B2ItnzB(QemRdT585QkdyO?|@E9Z-J{PEcxzC z*BlUNEa~aPW$*{U?}F;K4u0w#y&!Ln)9u>=nlaNcPEM8%Ze+h#QA1mnBAjeHT4AV& z7K~Fitl^X@lkuLs<4jLL7vT2|{gt(eTO6x)~U8f_=9`7m8?hx7=C!iAao3lmZ zyCrZbe`l^Y0=K@$p$+*yEE z0Xn?~?}XVPyat$KV(-^bYt3~j)|y+82_07*1W<*yY-KK09VFM=#naW8eE8{JwchuMyz>`=Fc8MKe0r+GmDLIFox|-k{xD93$+D<8 zAxIq{%g1&wyf3lK(XXpKVJB;0Q&;-Ce-t7O2IK&q2D}7V09Xsy z4)_vq3~&i>8=!1PCje3a8GzmZCtxbz6TlI`MZhgUm5(v;0rdba0KEZ^19AY*0;YT% z(oiabXDwhG;4t6};0nMBwy6VX0JaKNm-{z-5+ZE@d;$0Ya1L+_5VRcy0Ga^O0G$B6 z0fPZ9fCumlU>e{Jz$(B;fCGSIfYX2rfIk894&(=j0VD(30(t`m?LbAd;K>L00kZ)! zQ1~LaD*+z@Ht%4c)l}Am84D59O-qH9PFp^dv+0&$ZNg&Ro#xST!DQ9k?fu zp31xpmu5pMSem3ht&?~OvYEzE`>;X8#FO9mb2lt)u#PRk$oJp=?5TJ z;81!cl2HO*3cuZeZ-T#(0jFIIRi|`s@n5yowN=}SgtToT3!T78TjjzpAkY$I3#k(k zRX--KX(HY|`GDm3YT*G%U2kHiBGnD@zQt@oU3HDT?*Mx+N==oegY3B|6?fhbvb9la zZ+Z1nb|*>=mk%yw;q}x6dET3>TRnARYSy6;uG8*7sU$B1P8%y?27%v%pQ@a7h~2D* zDGE0|TJ35P;p3SjT8(G#N2_%x?DJ@~Nmd$J&riHWo; zfzvBxVhlKmCS#Roc}z2ellrMuQESpez)9qZ{Hg;t=8ww-aTN%3^S~HEEyIg1+tmqj ztv##J<5e>jeuYO=9ES-x9$EZCLv@R6FF6vzH=e`_#EAm8A`co-e#NqZprUBr+XBxh z!`bp!wfzV|e-A0CMgm`3313qQUtI}bRS92NhO@45>ZDYWZyHtus-?j3&h85J%Pqs% z%{Vo+qlou|-a`VX%Vx&X4EbIJ-i_nT9j^|ubUvn;1-B75gtOD}YRz;(+p5=9 z;9GRu)y37UOEX;H*3*hn>wJu*HpWT_cT8h7J9Xr7$VQ~;371rWH&HRFn>{|o-nOm1 zG0idhZ9%vKch_-Ny@?uY{u4N=DY0%%)cAole+c1wyh3-rGlz}=3JM`UM&f`+vu%r9 zMxr)oyj0o!5JVwFH^N^G*hJE#Haprx4V5SVz%DmY(}O;u#Q2euz$P|Ec<-ia^~bNH zd}890P)vyVMR~@2HzU!Yf*Z7Hh$?+7I11Y?R?|?BE=uL zZWaNmz+(`FP7>17Q__dP6(xUy)Kp91=F`>P(dZec52o(~d#N6N1}rjcNzpVmZyR$asNMXd5kxz?$$FHza7jMD376_KJl!t+r#QP2 zhw6eTW$h>hjmDXZ5_0|%__qUg0POU88pl5Nr>zOrXS>;-jgNHk;!v@wmAwuI zi&_%)Cs^3pm1xYDgMw-SlE<<9X6iolv$2J{kjrksrvTP3QSHzn`MA!tUxQ`A?2^Eb z04KdI+nHN{mjV~M3}KNF;Iw)kKhC~NR8yml{;YNCtDw=y3Y<#~7L}y7vex}Y>+i&0 z*b_-=sC77SQtg00m!vicngE=#oC`OI{hp*I$s2xQ4U*NaHA_JvN%t4rrf@NT{*??3 zHRFUfV;(!fHUc+41H1{s+3(4!ANR%_m-j(%rm=}B;PF{0Y9MNzy~2b*?_kI`%-m8{LC_(#ipu*8nis6?H(L(iLFP%B}LZ*7g51R z_-vcnq*oDe+I_BtOA~iJT~`hih*^myUZlAw(M-jGTP3xk@3aC2aiv9G5lH(7K z6s5d7?1bcaekz4j`Q)?6nUdo*j(nQ9<<0jc$D4!%W{gQ6t^SBhOB^emUZvsQ7jYAa zVai@-ZVXEZ#o#PuGv33X@^)9}`JdI*6 zJ^#g5kvqSU9J2^D7fr5};q3S5WE{J4eBayQvp#y;^S0zz$MN(U_A7C(?8i&dw@)iR z(N}#pc&Kq&??Kmh$;F z$W-GhkUlSdHdFNkRG{r=H?q}+HLujJC3Oz1CG`ai0pJiRaisdVeDTBL86(vdrjW9C VgWFS+Q`4Fyw``Wey5*?-{}19=R1g3F diff --git a/apps/gipy/pkg/gps_bg.wasm.d.ts b/apps/gipy/pkg/gps_bg.wasm.d.ts index 99806d7e5..df9a024fa 100644 --- a/apps/gipy/pkg/gps_bg.wasm.d.ts +++ b/apps/gipy/pkg/gps_bg.wasm.d.ts @@ -2,17 +2,18 @@ /* eslint-disable */ export const memory: WebAssembly.Memory; export function __wbg_gps_free(a: number): void; -export function get_polygon(a: number, b: number): void; -export function get_gps_content(a: number, b: number): void; export function get_gps_map_svg(a: number, b: number): void; +export function get_polygon(a: number, b: number): void; +export function get_polyline(a: number, b: number): void; +export function get_gps_content(a: number, b: number): void; export function request_map(a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number): number; export function load_gps_from_string(a: number, b: number): number; export function gps_from_area(a: number, b: number, c: number, d: number): number; export function __wbindgen_malloc(a: number): number; export function __wbindgen_realloc(a: number, b: number, c: number): number; export const __wbindgen_export_2: WebAssembly.Table; -export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h6bb6801698d941c0(a: number, b: number, c: number): void; +export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hab13c10d53cd1c5a(a: number, b: number, c: number): void; export function __wbindgen_add_to_stack_pointer(a: number): number; export function __wbindgen_free(a: number, b: number): void; export function __wbindgen_exn_store(a: number): void; -export function wasm_bindgen__convert__closures__invoke2_mut__h33169a25550cd50b(a: number, b: number, c: number, d: number): void; +export function wasm_bindgen__convert__closures__invoke2_mut__h26ce002f44a5439b(a: number, b: number, c: number, d: number): void; From 0c7aff4c5f4b95d8b99126c05878fc84c9aae523 Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Thu, 29 Jun 2023 15:14:17 +0200 Subject: [PATCH 1564/1725] gipy: fix for svg --- apps/gipy/ChangeLog | 1 + apps/gipy/pkg/gps_bg.wasm | Bin 747929 -> 747965 bytes 2 files changed, 1 insertion(+) diff --git a/apps/gipy/ChangeLog b/apps/gipy/ChangeLog index 85ac50851..6a8adb07a 100644 --- a/apps/gipy/ChangeLog +++ b/apps/gipy/ChangeLog @@ -83,3 +83,4 @@ 0.19: * Several fixes for osm requests and map computations + * Display path in leaflet diff --git a/apps/gipy/pkg/gps_bg.wasm b/apps/gipy/pkg/gps_bg.wasm index 9ed3725f84b0809a74297992747427d63609ae97..c66621af861e9037bdd63118817d5ad97ea025eb 100644 GIT binary patch delta 1027 zcmZ9Jdq@;P9LMLivwOF9dZl89=}$vqmdJDo6?H%KAf4ilUT=qKAb35&af>-1W!IcRs)GZ@x3Ldv<7H-_XL& z9+yrt7$F2R72)UuSBD!%qZO%PO3sW&Bk8$Ua8JufpB(AKnGHB1C-cc-0=l4pTrR=A z_VY$^6XeitQiglw@NV)v19!^nr%BRA+%4~XA`=|6Yl5s_2db6Q10JJmu*PdTX zFK8}-bBJbe`&lhL+2nQz8LGf03X+uqm#_j_ERgvES%xN14q5A007sAoeJ0su89HFd zA;Uw8p_dBJ3I<|g%V5rqLc?n!gMdYZcR5(hpdP9VMd-`D6pDNmOs>*8LH$Bq1p)5T zy1Hf1h|S^}p+K~+PltY!S%zY>dKzfbeAkkNW@?t8UYAaV2_yORri zcAS;C!5;a_>H*8Xv4%XrfjLSkVCr0@-`Vx@q%r|n^6{Y3o~%c(AZ8vsKyS5c85ozn#e(+upf`hwbb#?vBI#i8z{wp>RTTM<5#pl8M?Jw1Qwcg(IKE~S%Q1awCxdE~=G z_PYyY0HmXl6yqT|(MaCK;urGiZ4y(c zAZL<#%WwkbhRM)L9%QM|4>AxFTZSv#k!83|WDqD3;m(JW%b+f*3nrZTZVIMS2p`Q~ zD`=wNg)qS3udO`*L2Tw#3kIV-AszB2vkYd}9HS|vs^>|xP)*Ge6v`O{2~}V(^<=^y z5)Q$u;ra}c3!n*Q1+oBOoiw39B@MPtw-T2fBse(8jw+{{A-_hHq%?X;nDp; zdUXxx$1!>_4hQYBPjnnG`7{?4PgV&tPuS8Gbwp_sh!-ypjRWHt|XgKbMEv__T$4WX?QqEdqZeSN#gt$VdCt yUk3x%F+!UVLMO95$O(EA*c-tE!0RJ;6gc4@PKn@wD|78C91V^`&b2$ozx)B%vKklw From 6d58a466b2b5e34eaac066fa9637056fecae0128 Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 29 Jun 2023 08:43:45 -0500 Subject: [PATCH 1565/1725] [gassist] - New app for voice control --- apps/gassist/ChangeLog | 1 + apps/gassist/app.js | 11 +++++++++++ apps/gassist/app.png | Bin 0 -> 799 bytes apps/gassist/boot.js | 21 +++++++++++++++++++++ apps/gassist/gassist.json | 1 + apps/gassist/icon.js | 1 + apps/gassist/metadata.json | 18 ++++++++++++++++++ apps/gassist/settings.js | 32 ++++++++++++++++++++++++++++++++ 8 files changed, 85 insertions(+) create mode 100644 apps/gassist/ChangeLog create mode 100644 apps/gassist/app.js create mode 100644 apps/gassist/app.png create mode 100644 apps/gassist/boot.js create mode 100644 apps/gassist/gassist.json create mode 100644 apps/gassist/icon.js create mode 100644 apps/gassist/metadata.json create mode 100644 apps/gassist/settings.js diff --git a/apps/gassist/ChangeLog b/apps/gassist/ChangeLog new file mode 100644 index 000000000..5560f00bc --- /dev/null +++ b/apps/gassist/ChangeLog @@ -0,0 +1 @@ +0.01: New App! diff --git a/apps/gassist/app.js b/apps/gassist/app.js new file mode 100644 index 000000000..69e8001e3 --- /dev/null +++ b/apps/gassist/app.js @@ -0,0 +1,11 @@ +Bluetooth.println(""); +Bluetooth.println(JSON.stringify({ + t:"intent", + target:"activity", + action:"android.intent.action.VOICE_COMMAND", + flags:["FLAG_ACTIVITY_NEW_TASK"] +})); + +setTimeout(function() { + Bangle.showClock(); +}, 0); diff --git a/apps/gassist/app.png b/apps/gassist/app.png new file mode 100644 index 0000000000000000000000000000000000000000..8c190d3449e27cc6f84461dc0ea0c2a84fd25c45 GIT binary patch literal 799 zcmV+)1K|9LP)RCt{2S4(RXQ4~IC$;CflXB1nIuH5U!WUIC_k|4NsBNT*2 zK{J!?vJk;PAU=MANCI6HtgV@Be6(qkdlNTZTdlg%WTC4gXVSD|U|z}GW+L;!AtBH2 zJCE<43y>f|fpC&gbcK5G$0bQ>q~rZK9?? z-!Q~?)!_H&d*h}K%7ag{ipd*+h!2EarDA(#Y~-iS#wFDh--aQ7R1LnbEVnL>CG+a2 zXfw zzM^{{jP`CLRRI4TMu0}-D>>|kR>`h;enFN4IV$iulz>XM^N)aX?w5}Md#jW;0|ws= zBS5FN30Z+>a)($v2|WXq>>5=Gmym$SeS;c9T}+NWw;J; zJ&7-r+9?P5$Cv?hiAO_=urDuCD$u$;ka;)qy-0&T!Zs?lqa9vRhnp`?Is{k&1iT%- z3dQyeT}C2up8YfTTj!j=k7?-m3dn%BW%_|`QX`9Sxse4F@DoM_RbuG<$Po3x%pVFM zxAAYG4TuCKJfRetx5!0;x{ZB#@wkDJRR*Yl22p}6koNiBVaKA2SAn6Gx{Fro1J+pA4tic?d3q1x3|v2T z7A@Aq8bg<8&}SgNnfD}*ha%!w3A=6l$>TvRLEL~A`xsn6>OI5_SYw?K73jc33$WPe z3tiNh{1&RR{A3UDDlpq3gV<;r0xgE)Imo<4G-7*@^+DOi8e5`1KN#!|)>7~6*W#M_ d1PLI1_zPVw3^6G-%sBu6002ovPDHLkV1jq+Ys>%u literal 0 HcmV?d00001 diff --git a/apps/gassist/boot.js b/apps/gassist/boot.js new file mode 100644 index 000000000..eb2155796 --- /dev/null +++ b/apps/gassist/boot.js @@ -0,0 +1,21 @@ +// load settings +var settings = Object.assign({ + enableTap: true +}, require("Storage").readJSON("gassist.json", true) || {}); + +if (settings.enableTap) { + Bangle.on("tap", function(e) { + if (e.dir=="front" && e.double) { + Bluetooth.println(""); + Bluetooth.println(JSON.stringify({ + t:"intent", + target:"activity", + action:"android.intent.action.VOICE_COMMAND", + flags:["FLAG_ACTIVITY_NEW_TASK"] + })); + } + }); +} + +// clear variable +settings = undefined; \ No newline at end of file diff --git a/apps/gassist/gassist.json b/apps/gassist/gassist.json new file mode 100644 index 000000000..26c61fc04 --- /dev/null +++ b/apps/gassist/gassist.json @@ -0,0 +1 @@ +gassist.json \ No newline at end of file diff --git a/apps/gassist/icon.js b/apps/gassist/icon.js new file mode 100644 index 000000000..9e84990e3 --- /dev/null +++ b/apps/gassist/icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwxH+AH4A/AH4ALiAAFFtoxmFpQxjFxwwfFyAwdFyQwcF9wuUGDQvuFywwYF/4vUnAABF9YuCGBAv/F/6/PGC4bE3QACG5YvdFoYxSLzAvuFw4wjLxbCidhAvVGB4UFF7QxMCZAuaGJIRKF7oATFtoA/AEPMAAQttGNQuHGE4vuFxIwlF/4v/d/4vwGBAumGIwtpAH4A/AEIA==")) \ No newline at end of file diff --git a/apps/gassist/metadata.json b/apps/gassist/metadata.json new file mode 100644 index 000000000..995c44adb --- /dev/null +++ b/apps/gassist/metadata.json @@ -0,0 +1,18 @@ +{ + "id": "gassist", + "name": "Google Assist", + "version": "0.01", + "description": "A simple way to initiate Google Assistant on Android. Intents must be enabled in Gadgetbridge.", + "icon": "app.png", + "type": "app", + "tags": "tool, voice, tasker", + "supports": ["BANGLEJS","BANGLEJS2"], + "allow_emulator": false, + "storage": [ + {"name":"gassist.boot.js","url":"boot.js"}, + {"name":"gassist.app.js","url":"app.js"}, + {"name":"gassist.settings.js","url":"settings.js"}, + {"name":"gassist.img","url":"icon.js","evaluate":true} + ], + "data": [{"name":"gassist.json"}] +} \ No newline at end of file diff --git a/apps/gassist/settings.js b/apps/gassist/settings.js new file mode 100644 index 000000000..f264d99fa --- /dev/null +++ b/apps/gassist/settings.js @@ -0,0 +1,32 @@ +let storage = require('Storage'); + +(function (back) { + // Load and set default settings + let appSettings = Object.assign({ + enableTap : true + }, storage.readJSON("gassist.json", true) || {}); + + // Save settings to storage + function writeSettings() { + storage.writeJSON("gassist.json", appSettings); + } + + function showMenu() { + E.showMenu({ + "": { + "title": "Google Assist" + }, + "< Back": () => back(), + 'Front Tap:': { + value: (appSettings.enableTap === true), + format: v => v ? "On" : "Off", + onchange: v => { + appSettings.enableTap = v; + writeSettings(); + } + }, + }); + } + // Initially show the menu + showMenu(); +}); \ No newline at end of file From d8c41b56ed0adf879931c34b52f980d2822cf848 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Thu, 29 Jun 2023 15:02:35 +0100 Subject: [PATCH 1566/1725] messagegui 0.73: Add sharp left+right nav icons --- apps/messagegui/ChangeLog | 3 ++- apps/messagegui/app.js | 2 ++ apps/messagegui/metadata.json | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index cedb0e680..7fa45c496 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -98,4 +98,5 @@ If we receive a 'music' message and we're in the messages app (but not showing a message) show music (#2814) 0.71: Cancel buzzing when watch unlocked, or when different messages viewed On 2v18.64+ firmware, 'No Messages' now has a 'back' button -0.72: Nav message updastes don't automatically launch navigation menu unless they're new \ No newline at end of file +0.72: Nav message updastes don't automatically launch navigation menu unless they're new +0.73: Add sharp left+right nav icons \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index dc7799036..2df9875a3 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -104,6 +104,8 @@ function showMapMessage(msg) { case "right": img = "GhcBAABgAAA8AAAPgAAB8AAAPgAAB8D///j///9///+/AAPPAAHjgAD44AB8OAA+DgAPA4ABAOAAADgAAA4AAAOAAADgAAA4AAAOAAAA";break; case "left_slight": img = "ERgB//B/+D/8H4AP4Af4A74Bz4Dj4HD4OD4cD4AD4ADwADwADgAHgAPAAOAAcAA4ABwADgAH";break; case "right_slight": img = "ERgBB/+D/8H/4APwA/gD/APuA+cD44Phw+Dj4HPgAeAB4ADgAPAAeAA4ABwADgAHAAOAAcAA";break; + case "left_sharp": img = "GBaBAAAA+AAB/AAH/gAPjgAeBwA8BwB4B+DwB+HgB+PAB+eAB+8AB+4AB/wAB/gAB//gB//gB//gBwAABwAABwAABwAABw=="; break; + case "right_sharp": img = "GBaBAB8AAD+AAH/gAHHwAOB4AOA8AOAeAOAPB+AHh+ADx+AB5+AA9+AAd+AAP+AAH+AH/+AH/+AH/+AAAOAAAOAAAOAAAA==";break; case "keep_left": img = "ERmBAACAAOAB+AD+AP+B/+H3+PO+8c8w4wBwADgAHgAPAAfAAfAAfAAfAAeAAeAAcAA8AA4ABwADgA==";break; case "keep_right": img = "ERmBAACAAOAA/AD+AP+A//D/fPueeceY4YBwADgAPAAeAB8AHwAfAB8ADwAPAAcAB4ADgAHAAOAAAA==";break; case "uturn_left": img = "GRiBAAAH4AAP/AAP/wAPj8APAfAPAHgHgB4DgA8BwAOA4AHAcADsOMB/HPA7zvgd9/gOf/gHH/gDh/gBwfgA4DgAcBgAOAAAHAAADgAABw==";break; diff --git a/apps/messagegui/metadata.json b/apps/messagegui/metadata.json index c71e5d542..31d7fe262 100644 --- a/apps/messagegui/metadata.json +++ b/apps/messagegui/metadata.json @@ -2,7 +2,7 @@ "id": "messagegui", "name": "Message UI", "shortName": "Messages", - "version": "0.72", + "version": "0.73", "description": "Default app to display notifications from iOS and Gadgetbridge/Android", "icon": "app.png", "type": "app", From ca9082f2666c3b480feed7050459fd871ad7c885 Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Thu, 29 Jun 2023 16:56:00 +0200 Subject: [PATCH 1567/1725] gipy: stroke + less frames on lock --- apps/gipy/ChangeLog | 2 ++ apps/gipy/app.js | 21 +++++++++++---------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/apps/gipy/ChangeLog b/apps/gipy/ChangeLog index 6a8adb07a..6371fbdf1 100644 --- a/apps/gipy/ChangeLog +++ b/apps/gipy/ChangeLog @@ -84,3 +84,5 @@ 0.19: * Several fixes for osm requests and map computations * Display path in leaflet + * Reduce framerate if locked + * Stroke to move around in the map diff --git a/apps/gipy/app.js b/apps/gipy/app.js index ae94071ea..94f9ab450 100644 --- a/apps/gipy/app.js +++ b/apps/gipy/app.js @@ -652,8 +652,8 @@ class Status { } else { let previous_point = this.old_points[this.old_points.length - 1]; let distance_to_previous = previous_point.distance(position); - // gps signal is noisy but rarely above 4 meters - if (distance_to_previous < 4) { + // gps signal is noisy but rarely above 5 meters + if (distance_to_previous < 5) { return null; } } @@ -725,12 +725,6 @@ class Status { // console.log("we are not late"); // } - // // abort most frames if locked - // if (Bangle.isLocked() && this.gps_coordinates_counter % 5 != 0) { - // console.log("we are filtered"); - // return; - // } - if (this.path !== null) { // detect segment we are on now let res = this.path.nearest_segment( @@ -803,6 +797,12 @@ class Status { } } } + + // abort most frames if locked + if (Bangle.isLocked() && this.gps_coordinates_counter % 5 != 0) { + return; + } + // re-display this.display(); } @@ -1376,6 +1376,7 @@ function start_gipy(path, maps, interests) { status.display(); Bangle.on("stroke", (o) => { + console.log("stroke"); if (in_menu) { return; } @@ -1391,8 +1392,8 @@ function start_gipy(path, maps, interests) { let s = status.adjusted_sin_direction; let rotated_x = xdiff * c - ydiff * s; let rotated_y = xdiff * s + ydiff * c; - status.displayed_x += rotated_x / ((status.scale_factor * 4) / 3); - status.displayed_y -= rotated_y / ((status.scale_factor * 4) / 3); + status.displayed_position.lon += 1.3 * rotated_x / status.scale_factor; + status.displayed_position.lat -= 1.3 * rotated_y / status.scale_factor; status.display(); }); From 297d8b15acb55b34afd48fb350f60dbaa6412e58 Mon Sep 17 00:00:00 2001 From: stweedo Date: Thu, 29 Jun 2023 12:25:38 -0500 Subject: [PATCH 1568/1725] Fix scoping, add 'file' variable --- apps/gassist/gassist.json | 1 - apps/gassist/settings.js | 11 ++++++----- 2 files changed, 6 insertions(+), 6 deletions(-) delete mode 100644 apps/gassist/gassist.json diff --git a/apps/gassist/gassist.json b/apps/gassist/gassist.json deleted file mode 100644 index 26c61fc04..000000000 --- a/apps/gassist/gassist.json +++ /dev/null @@ -1 +0,0 @@ -gassist.json \ No newline at end of file diff --git a/apps/gassist/settings.js b/apps/gassist/settings.js index f264d99fa..987c3fdfc 100644 --- a/apps/gassist/settings.js +++ b/apps/gassist/settings.js @@ -1,14 +1,15 @@ -let storage = require('Storage'); - (function (back) { + let storage = require('Storage'); + let file = "gassist.json"; + // Load and set default settings let appSettings = Object.assign({ enableTap : true - }, storage.readJSON("gassist.json", true) || {}); + }, storage.readJSON(file, true) || {}); // Save settings to storage function writeSettings() { - storage.writeJSON("gassist.json", appSettings); + storage.writeJSON(file, appSettings); } function showMenu() { @@ -29,4 +30,4 @@ let storage = require('Storage'); } // Initially show the menu showMenu(); -}); \ No newline at end of file +}); From 3e8e2adb6088f7b3f1951d4b62904a572a28b190 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 29 Jun 2023 22:55:23 +0100 Subject: [PATCH 1569/1725] chimer: sleep between buzzes, instead of during --- apps/chimer/ChangeLog | 1 + apps/chimer/metadata.json | 2 +- apps/chimer/widget.js | 7 ++++--- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/apps/chimer/ChangeLog b/apps/chimer/ChangeLog index 51842b5cd..6c6f5312e 100644 --- a/apps/chimer/ChangeLog +++ b/apps/chimer/ChangeLog @@ -1,3 +1,4 @@ 0.01: Initial Creation 0.02: Fixed some sleep bugs. Added a sleep mode toggle 0.03: Reduce busy-loop and code +0.04: Separate buzz-time and sleep-time diff --git a/apps/chimer/metadata.json b/apps/chimer/metadata.json index dfbabf405..cfa0da00f 100644 --- a/apps/chimer/metadata.json +++ b/apps/chimer/metadata.json @@ -1,7 +1,7 @@ { "id": "chimer", "name": "Chimer", - "version": "0.03", + "version": "0.04", "description": "A fork of Hour Chime that adds extra features such as: \n - Buzz or beep on every 60, 30 or 15 minutes. \n - Repeat Chime up to 3 times \n - Set hours to disable chime", "icon": "widget.png", "type": "widget", diff --git a/apps/chimer/widget.js b/apps/chimer/widget.js index a587b61de..3b7de9d7a 100644 --- a/apps/chimer/widget.js +++ b/apps/chimer/widget.js @@ -20,15 +20,16 @@ let count = settings.repeat; const chime1 = () => { + let p; if (settings.type === 1) { - Bangle.buzz(100); + p = Bangle.buzz(100); } else if (settings.type === 2) { - Bangle.beep(); + p = Bangle.beep(); } else { return; } if (--count > 0) - setTimeout(chime1, 150); + p.then(() => setTimeout(chime1, 150)); }; chime1(); From 557b426b632168fde6ed14d468656da4ba8e3bff Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 21 May 2023 22:20:41 +0100 Subject: [PATCH 1570/1725] typescript: remove `Layout_` naming hack --- typescript/types/layout.d.ts | 6 +++--- typescript/types/modules.d.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index 8c5706d0b..3867efe46 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -1,6 +1,6 @@ type Prev = [never, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]; -type ExtractIds = +type ExtractIds = [Depth] extends [never] ? never : (T extends { id: infer Id extends string } @@ -8,12 +8,12 @@ type ExtractIds = : never) | ( - T extends { c: Array } + T extends { c: Array } ? ExtractIds : never ); -declare module Layout_ { +declare module Layout { type Layouter = ExtractIds & diff --git a/typescript/types/modules.d.ts b/typescript/types/modules.d.ts index 5c65548fc..ad3612117 100644 --- a/typescript/types/modules.d.ts +++ b/typescript/types/modules.d.ts @@ -4,4 +4,4 @@ declare function require(moduleName: "sched"): typeof Sched; declare function require(moduleName: "ClockFace"): typeof ClockFace_.ClockFace; declare function require(moduleName: "clock_info"): typeof ClockInfo; -declare function require(moduleName: "Layout"): typeof Layout_.Layout; +declare function require(moduleName: "Layout"): typeof Layout.Layout; From 9c72a8210d89b81caa31efa2ab506512979fcc79 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 25 May 2023 23:21:19 +0100 Subject: [PATCH 1571/1725] layout.d.ts: add rotation / l.r --- typescript/types/layout.d.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index 3867efe46..10166f3e4 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -88,6 +88,13 @@ declare module Layout { type Align = -1 | 0 | 1; + const enum Rotation { + None = 0, + Deg90 = 1, + Deg180 = 2, + Deg270 = 3, + } + type HierarchyParts = { type: "v", @@ -108,16 +115,19 @@ declare module Layout { type: "btn", src: Image, cb: () => void, + r?: Rotation, } | { type: "btn", cb: () => void, label: string, font?: FontNameWithScaleFactor, scale?: number, + r?: Rotation, } ) | { type: "img", src: Image | (() => Image), + r?: Rotation, } | { type: "custom", render: (h: Hierarchy) => void, From 6a82fb72db627d4d3ff46a91fb690d1167dd22ae Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 29 Apr 2023 12:30:23 +0100 Subject: [PATCH 1572/1725] rep: initial WIP app --- apps/rep/app.ts | 95 ++++++++++++++++++++++++++++++++++++++++++ apps/rep/metadata.json | 0 2 files changed, 95 insertions(+) create mode 100644 apps/rep/app.ts create mode 100644 apps/rep/metadata.json diff --git a/apps/rep/app.ts b/apps/rep/app.ts new file mode 100644 index 000000000..90017450b --- /dev/null +++ b/apps/rep/app.ts @@ -0,0 +1,95 @@ +// TODO: buzz on stage change, better setTimeout() + +const entries: {dur: number, label: string}[] = [ + // 1 X 4 mins - 4 min jog recovery + // 2 X 2 mins - 2 min jog recoveries + // 4 X 1 min - 1 min jog recoveries (turn for home after the 2nd minute) + // 8 X 30 secs - 30 sec jog recoveries + // 3 min static recovery + // 1 X 4 mins to finish + + {dur:4, label:"jog"}, + {dur:4, label:"jog recovery"}, + + {dur:2, label:"jog"}, + {dur:2, label:"jog recovery"}, + {dur:2, label:"jog"}, + {dur:2, label:"jog recovery"}, + + {dur:1, label:"jog"}, + {dur:1, label:"jog recovery"}, + {dur:1, label:"jog"}, + {dur:1, label:"jog recovery"}, + {dur:1, label:"jog"}, + {dur:1, label:"jog recovery"}, + {dur:1, label:"jog"}, + {dur:1, label:"jog recovery"}, + + {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, + + {dur:3, label:"static recovery"}, + {dur:4, label:"finish"}, +]; + +let index = 0; +let begin: Date | undefined; +let drawTimeout: number | undefined; + +const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); + +const drawNamespace = () => { + const x = g.getWidth() / 2; + const y = g.getHeight() / 2; + const now = new Date(); + + const elapsed = now.getDate() - begin!.getDate(); + + const sec = Math.round(elapsed / 1000) % 60; + const min = Math.round(sec / 60); + + const timeStr = min + ":" + pad2(sec); + let current; + let i; + let total = 0; + for(i = 0; entries[i]; i++){ + const ent = entries[i]!; + total += ent.dur; + if(total > elapsed) + break; + current = ent; + } + + g.reset() + .clearRect(Bangle.appRect) + .setFontAlign(0, 0) + .setFont("Vector", 55) + .drawString(timeStr, x, y) + .setFont("Vector", 33) + .drawString(current ? current.label + " for " + current.dur : "", x, y+48); + + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(function() { + drawTimeout = undefined; + drawNamespace(); + }, 1000 - (Date.now() % 1000)); +}; + +g.reset().clearRect(Bangle.appRect); +g.setFontAlign(0, 0).setFont("Vector", 55).drawString( + "Start", + g.getWidth() / 2, + g.getHeight() / 2 +); + +Bangle.on("touch", (_btn, _xy) => { + begin = new Date(); + index = 0; + drawNamespace(); +}); diff --git a/apps/rep/metadata.json b/apps/rep/metadata.json new file mode 100644 index 000000000..e69de29bb From 6a768768b6e3a6473e133c10ed7a81148cfb95c3 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 6 May 2023 17:57:37 +0100 Subject: [PATCH 1573/1725] rep metadata --- apps/rep/metadata.json | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/apps/rep/metadata.json b/apps/rep/metadata.json index e69de29bb..8820be486 100644 --- a/apps/rep/metadata.json +++ b/apps/rep/metadata.json @@ -0,0 +1,16 @@ +{ + "id": "rep", + "name": "Rep", + "version":"0.01", + "description": "Steps through reps, to aid in run schedules", + "icon": "app.png", // TODO + "tags": "run,running,fitness,outdoors", + "supports" : ["BANGLEJS2"], + "readme": "README.md", + "interface": "interface.html", + "storage": [ + {"name":"rep.app.js","url":"app.js"}, + {"name":"rep.img","url":"app-icon.js","evaluate":true} + ], + "data": [{"name":"rep.json"}] +} From b4e5e8e1df97f0e6061331a37c61867ff22e7867 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 17 May 2023 12:46:44 +0100 Subject: [PATCH 1574/1725] rep: initial WIP layout --- apps/rep/app.ts | 110 +++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 94 insertions(+), 16 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 90017450b..63426225e 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -1,6 +1,9 @@ // TODO: buzz on stage change, better setTimeout() +// TODO: fastload: scoping, unregister layout handlers etc -const entries: {dur: number, label: string}[] = [ +const Layout = require("Layout"); + +const entries /*: {dur: number, label: string}[]*/ = [ // 1 X 4 mins - 4 min jog recovery // 2 X 2 mins - 2 min jog recoveries // 4 X 1 min - 1 min jog recoveries (turn for home after the 2nd minute) @@ -38,18 +41,92 @@ const entries: {dur: number, label: string}[] = [ {dur:4, label:"finish"}, ]; +const repLayout = (id: string): (Layout_.Hierarchy & {type:"txt"})[] => [ + { + id: `${id}_name`, + type: "txt", + font: "Vector:30", + label: "Name PH", + pad: 4, + }, { + id: `${id}_dur`, + type: "txt", + font: "Vector:30", + label: "DURATION", + pad: 4, + } +]; + +// top: show current rep: name & duration +// middle: show time left on current rep +// bottom: show next rep +// ctrl: play/pause button. back & forward? +const layout = new Layout({ + type: "v", + c: [ + { + type: "h", + c: repLayout("cur"), + filly: 1, + }, + { + id: "cur_time", + type: "txt", + font: "Vector:40", // FIXME: bigger + label: "MM:SS", // TODO: empty strings + fillx: 1, + filly: 1, + }, + { + type: "h", + c: repLayout("next"), + filly: 1, + }, + { + type: "h", + c: [{ + type: "btn", + label: "Play", // TODO: change + cb: () => { + console.log("cb()"); + }, + filly: 1, + }] + } + ] +}, {lazy: true}); + let index = 0; let begin: Date | undefined; let drawTimeout: number | undefined; +let paused = true; +let positioned = false; const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); -const drawNamespace = () => { +const drawRep = () => { + // TODO: layout.clear(layout.next_name); layout.render(layout.next_name) + + layout["next_name"]!.label = "next"; + layout["next_dur"]!.label = `${30}`; + layout["cur_name"]!.label = "next"; + layout["cur_dur"]!.label = `${30}`; + + layout["cur_time"]!.label = "1:23"; + + if(!positioned){ + positioned = true; + layout.update(); // position + } + + layout.render(); + + /* const x = g.getWidth() / 2; const y = g.getHeight() / 2; const now = new Date(); - const elapsed = now.getDate() - begin!.getDate(); + const elapsed = now.getDate() - begin.getDate(); const sec = Math.round(elapsed / 1000) % 60; const min = Math.round(sec / 60); @@ -59,7 +136,7 @@ const drawNamespace = () => { let i; let total = 0; for(i = 0; entries[i]; i++){ - const ent = entries[i]!; + const ent = entries[i]; total += ent.dur; if(total > elapsed) break; @@ -77,19 +154,20 @@ const drawNamespace = () => { if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { drawTimeout = undefined; - drawNamespace(); + drawRep(); }, 1000 - (Date.now() % 1000)); + + if(paused){ + g.reset() + .clearRect(Bangle.appRect) + .setFontAlign(0, 0) + .setFont("Vector", 55) + .drawString("Start", g.getWidth() / 2, g.getHeight() / 2); + } + */ }; -g.reset().clearRect(Bangle.appRect); -g.setFontAlign(0, 0).setFont("Vector", 55).drawString( - "Start", - g.getWidth() / 2, - g.getHeight() / 2 -); +g.clear(); +drawRep(); -Bangle.on("touch", (_btn, _xy) => { - begin = new Date(); - index = 0; - drawNamespace(); -}); +// TODO: widgets From 223fc5087b9725fcf210bb2650371fb8040e0c17 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 18 May 2023 22:39:11 +0100 Subject: [PATCH 1575/1725] rep: incrementing counter --- apps/rep/app.ts | 168 ++++++++++++++++++++++++++++++------------------ 1 file changed, 104 insertions(+), 64 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 63426225e..6d3565992 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -1,57 +1,70 @@ // TODO: buzz on stage change, better setTimeout() // TODO: fastload: scoping, unregister layout handlers etc +// TODO: spaces vs tabs +// TODO: const colfg=g.theme.fg, colbg=g.theme.bg; const Layout = require("Layout"); -const entries /*: {dur: number, label: string}[]*/ = [ - // 1 X 4 mins - 4 min jog recovery - // 2 X 2 mins - 2 min jog recoveries - // 4 X 1 min - 1 min jog recoveries (turn for home after the 2nd minute) - // 8 X 30 secs - 30 sec jog recoveries +type Rep = { + dur: number, + label: string, +}; + +const reps: Rep[] = [ + // 1 X 4 mins - 4 min recovery + // 2 X 2 mins - 2 min recoveries + // 4 X 1 min - 1 min recoveries (turn for home after the 2nd minute) + // 8 X 30 secs - 30 sec recoveries // 3 min static recovery // 1 X 4 mins to finish + {dur:1/60, label:"1st-sec"}, + {dur:5/60, label:"5-sec"}, + {dur:4, label:"jog"}, - {dur:4, label:"jog recovery"}, + {dur:4, label:"recovery"}, {dur:2, label:"jog"}, - {dur:2, label:"jog recovery"}, + {dur:2, label:"recovery"}, {dur:2, label:"jog"}, - {dur:2, label:"jog recovery"}, + {dur:2, label:"recovery"}, {dur:1, label:"jog"}, - {dur:1, label:"jog recovery"}, + {dur:1, label:"recovery"}, {dur:1, label:"jog"}, - {dur:1, label:"jog recovery"}, + {dur:1, label:"recovery"}, {dur:1, label:"jog"}, - {dur:1, label:"jog recovery"}, + {dur:1, label:"recovery"}, {dur:1, label:"jog"}, - {dur:1, label:"jog recovery"}, + {dur:1, label:"recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"jog recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, {dur:3, label:"static recovery"}, {dur:4, label:"finish"}, ]; +const fontSzMain = 64; +const fontSzRep = 20; + const repLayout = (id: string): (Layout_.Hierarchy & {type:"txt"})[] => [ { id: `${id}_name`, type: "txt", - font: "Vector:30", + font: `Vector:${fontSzRep}`, label: "Name PH", pad: 4, }, { id: `${id}_dur`, type: "txt", - font: "Vector:30", + font: `Vector:${fontSzRep}`, label: "DURATION", pad: 4, } @@ -65,16 +78,16 @@ const layout = new Layout({ type: "v", c: [ { - type: "h", - c: repLayout("cur"), + id: "cur_time", + type: "txt", + font: `Vector:${fontSzMain}` as FontNameWithScaleFactor, // modified in draw + label: "MM:SS", // TODO: empty strings + fillx: 1, filly: 1, }, { - id: "cur_time", - type: "txt", - font: "Vector:40", // FIXME: bigger - label: "MM:SS", // TODO: empty strings - fillx: 1, + type: "h", + c: repLayout("cur"), filly: 1, }, { @@ -85,8 +98,10 @@ const layout = new Layout({ { type: "h", c: [{ + id: "play", type: "btn", label: "Play", // TODO: change + fillx: 1, cb: () => { console.log("cb()"); }, @@ -97,22 +112,72 @@ const layout = new Layout({ }, {lazy: true}); let index = 0; -let begin: Date | undefined; +let begin: number | undefined = Date.now(); // TODO: start null let drawTimeout: number | undefined; -let paused = true; +let paused = false; let positioned = false; const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); +const currentRepIndex = (elapsedMs: number) => { + let total = 0; + let ent; + for(let i = 0; ent = reps[i]; i++){ + total += ent.dur * 60 * 1000; + if(elapsedMs < total) + return i; + } + return null; +}; + +const repToLabel = (i: number, id: string) => { + const rep = reps[i]; + if(rep){ + layout[`${id}_name`]!.label = `${i+1}: ${rep.label}`; + layout[`${id}_dur`]!.label = `${rep.dur}m`; + }else{ + emptyLabel(id); + } +}; + +const emptyLabel = (id: string) => { + layout[`${id}_name`]!.label = ""; + layout[`${id}_dur`]!.label = `0m`; +}; + const drawRep = () => { + if(paused || !begin){ // TODO: separate case for paused + layout.clear(); + layout["cur_time"]!.label = "Ready"; + + if(!positioned){ + positioned = true; + layout.update(); // position + } + + layout.render(layout["play"]); + layout.render(layout["cur_time"]); + return; + } + // TODO: layout.clear(layout.next_name); layout.render(layout.next_name) - layout["next_name"]!.label = "next"; - layout["next_dur"]!.label = `${30}`; - layout["cur_name"]!.label = "next"; - layout["cur_dur"]!.label = `${30}`; + const now = Date.now(); - layout["cur_time"]!.label = "1:23"; + const elapsed = now - begin; + const sec = Math.round(elapsed / 1000); + const min = Math.round(sec / 60); + const timeStr = min.toFixed(0) + ":" + pad2(sec % 60); + layout["cur_time"]!.label = timeStr; + + const i = currentRepIndex(elapsed); + if(i !== null){ + repToLabel(i, "cur"); + repToLabel(i+1, "next"); + }else{ + emptyLabel("cur"); + emptyLabel("next"); + } if(!positioned){ positioned = true; @@ -121,28 +186,8 @@ const drawRep = () => { layout.render(); + /* - const x = g.getWidth() / 2; - const y = g.getHeight() / 2; - const now = new Date(); - - const elapsed = now.getDate() - begin.getDate(); - - const sec = Math.round(elapsed / 1000) % 60; - const min = Math.round(sec / 60); - - const timeStr = min + ":" + pad2(sec); - let current; - let i; - let total = 0; - for(i = 0; entries[i]; i++){ - const ent = entries[i]; - total += ent.dur; - if(total > elapsed) - break; - current = ent; - } - g.reset() .clearRect(Bangle.appRect) .setFontAlign(0, 0) @@ -151,23 +196,18 @@ const drawRep = () => { .setFont("Vector", 33) .drawString(current ? current.label + " for " + current.dur : "", x, y+48); + // TODO: figure out next rep change time? or every 5s, then countdown from 10-->0 if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { drawTimeout = undefined; drawRep(); }, 1000 - (Date.now() % 1000)); - if(paused){ - g.reset() - .clearRect(Bangle.appRect) - .setFontAlign(0, 0) - .setFont("Vector", 55) - .drawString("Start", g.getWidth() / 2, g.getHeight() / 2); - } */ }; g.clear(); +var drawInterval = setInterval(drawRep, 1000); drawRep(); // TODO: widgets From efd1891ff53dbfc6f1123b46ae1a4fb1ea6826b7 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 18 May 2023 22:39:44 +0100 Subject: [PATCH 1576/1725] layout.d.ts: render(), layout(), debug() and clear() accept any layout hierarchy --- typescript/types/layout.d.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index 10166f3e4..cbd769c70 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -19,12 +19,12 @@ declare module Layout { & { // these actually change T - render(l?: T): void; - layout(l: T): void; + render(l?: Hierarchy): void; + layout(l: Hierarchy): void; - debug(l?: T, c?: ColorResolvable): void; + debug(l?: Hierarchy, c?: ColorResolvable): void; update(): void; // changes layoutObject into a RenderedHierarchy - clear(obj?: T): void; + clear(obj?: Hierarchy): void; forgetLazyState(): void; From 739ddb731fb806b08d39d674cc984399e217892f Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 18 May 2023 22:40:01 +0100 Subject: [PATCH 1577/1725] layout.d.ts: Layout's fill can be any proportion --- typescript/types/layout.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index cbd769c70..59ff44e72 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -51,7 +51,7 @@ declare module Layout { type Image = string; - type Fill = 0 | 1 | 2; // 0=no, 1=yes, 2=2x more space + type Fill = number; // fill a proportion of space, relative to sibling `filly`s type RenderedHierarchy = Hierarchy & { From 553d363f909575a153beb6c9a500cae6dea9be3d Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 20 May 2023 08:52:55 +0100 Subject: [PATCH 1578/1725] layout.d.ts: alignment fixes --- typescript/types/layout.d.ts | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index 59ff44e72..0e88fe21c 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -78,6 +78,10 @@ declare module Layout { filly?: Fill, width?: number, height?: number, + + // technically only on children of a h/v + halign?: Align, // children of a v + valign?: Align, // children of a h } & ( { r?: number, // 0: 0°, 1: 90°, 2: 180°, 3: 270°. @@ -86,7 +90,13 @@ declare module Layout { } ); - type Align = -1 | 0 | 1; + const enum Align { + Left = -1, + Top = -1, + Center = 0, + Right = 1, + Bottom = -1, + } const enum Rotation { None = 0, @@ -99,11 +109,9 @@ declare module Layout { { type: "v", c: Hierarchy[], - halign?: Align, } | { type: "h" c: Hierarchy[], - valign?: Align, } | { type: "txt", label: string, From 38bccb540d34dc1b5d9f2fe4d5daa11458742020 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 18 Jun 2023 22:38:47 +0100 Subject: [PATCH 1579/1725] Layout.md: separate the docs for `options` --- modules/Layout.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/Layout.md b/modules/Layout.md index 95bf116dc..6a59948a2 100644 --- a/modules/Layout.md +++ b/modules/Layout.md @@ -54,6 +54,9 @@ layout.render(); - A `fillx` int to choose if the object should fill available space in x. 0=no, 1=yes, 2=2x more space - A `filly` int to choose if the object should fill available space in y. 0=no, 1=yes, 2=2x more space - `width` and `height` fields to optionally specify minimum size options is an object containing: + +`options` has: + - `lazy` - a boolean specifying whether to enable automatic lazy rendering - `btns` - array of objects containing: - `label` - the text on the button From 8036509b1873d128f58902a33df2bce3e1920886 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 18 Jun 2023 22:38:54 +0100 Subject: [PATCH 1580/1725] layout.d.ts: add btnBorder --- typescript/types/layout.d.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index 0e88fe21c..ac4b0015c 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -124,6 +124,7 @@ declare module Layout { src: Image, cb: () => void, r?: Rotation, + btnBorder?: ColorResolvable, } | { type: "btn", cb: () => void, @@ -131,6 +132,7 @@ declare module Layout { font?: FontNameWithScaleFactor, scale?: number, r?: Rotation, + btnBorder?: ColorResolvable, } ) | { type: "img", From fabe88034fe007bc0ad1d1ef35be29e759cbe8e1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 20 May 2023 08:53:16 +0100 Subject: [PATCH 1581/1725] rep: alignment tweaks --- apps/rep/app.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 6d3565992..1103e4da1 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -54,19 +54,21 @@ const reps: Rep[] = [ const fontSzMain = 64; const fontSzRep = 20; +// FIXME: `Layout_` name const repLayout = (id: string): (Layout_.Hierarchy & {type:"txt"})[] => [ { id: `${id}_name`, type: "txt", font: `Vector:${fontSzRep}`, label: "Name PH", - pad: 4, + //pad: 4, + fillx: 1, }, { id: `${id}_dur`, type: "txt", font: `Vector:${fontSzRep}`, label: "DURATION", - pad: 4, + halign: Layout_.Align.Right, } ]; From a783ee643598cde3602827a8fc4576f9ee97bb09 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 20 May 2023 08:53:25 +0100 Subject: [PATCH 1582/1725] rep: trim duration --- apps/rep/app.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 1103e4da1..635baf378 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -136,7 +136,8 @@ const repToLabel = (i: number, id: string) => { const rep = reps[i]; if(rep){ layout[`${id}_name`]!.label = `${i+1}: ${rep.label}`; - layout[`${id}_dur`]!.label = `${rep.dur}m`; + // FIXME: display time, i.e. hh:mm + layout[`${id}_dur`]!.label = `${rep.dur.toFixed(0)}m`; }else{ emptyLabel(id); } From ef26eae665df6606bbead4053735a82a0912e968 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 21 May 2023 15:13:18 +0100 Subject: [PATCH 1583/1725] rep: more layout/design tweaks --- apps/rep/app.ts | 315 +++++++++++++++++++++++++++++------------------- 1 file changed, 194 insertions(+), 121 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 635baf378..fa6337153 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -18,59 +18,44 @@ const reps: Rep[] = [ // 3 min static recovery // 1 X 4 mins to finish - {dur:1/60, label:"1st-sec"}, + {dur:3/60, label:"1st-sec"}, {dur:5/60, label:"5-sec"}, - {dur:4, label:"jog"}, - {dur:4, label:"recovery"}, + // {dur:4, label:"jog"}, + // {dur:4, label:"recovery"}, - {dur:2, label:"jog"}, - {dur:2, label:"recovery"}, - {dur:2, label:"jog"}, - {dur:2, label:"recovery"}, + // {dur:2, label:"jog"}, + // {dur:2, label:"recovery"}, + // {dur:2, label:"jog"}, + // {dur:2, label:"recovery"}, - {dur:1, label:"jog"}, - {dur:1, label:"recovery"}, - {dur:1, label:"jog"}, - {dur:1, label:"recovery"}, - {dur:1, label:"jog"}, - {dur:1, label:"recovery"}, - {dur:1, label:"jog"}, - {dur:1, label:"recovery"}, + // {dur:1, label:"jog"}, + // {dur:1, label:"recovery"}, + // {dur:1, label:"jog"}, + // {dur:1, label:"recovery"}, + // {dur:1, label:"jog"}, + // {dur:1, label:"recovery"}, + // {dur:1, label:"jog"}, + // {dur:1, label:"recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, + // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - {dur:3, label:"static recovery"}, - {dur:4, label:"finish"}, + // {dur:3, label:"static recovery"}, + // {dur:4, label:"finish"}, ]; const fontSzMain = 64; const fontSzRep = 20; +const fontSzRepDesc = 12; -// FIXME: `Layout_` name -const repLayout = (id: string): (Layout_.Hierarchy & {type:"txt"})[] => [ - { - id: `${id}_name`, - type: "txt", - font: `Vector:${fontSzRep}`, - label: "Name PH", - //pad: 4, - fillx: 1, - }, { - id: `${id}_dur`, - type: "txt", - font: `Vector:${fontSzRep}`, - label: "DURATION", - halign: Layout_.Align.Right, - } -]; +// FIXME: `Layout_` name, e.g. Layout_.Align.Right // top: show current rep: name & duration // middle: show time left on current rep @@ -80,53 +65,159 @@ const layout = new Layout({ type: "v", c: [ { - id: "cur_time", - type: "txt", + id: "duration", + lazyBuster: 1, + type: "custom", font: `Vector:${fontSzMain}` as FontNameWithScaleFactor, // modified in draw - label: "MM:SS", // TODO: empty strings fillx: 1, filly: 1, + render: (l: Layout_.RenderedHierarchy) => { + let lbl; + + g.clearRect(l.x, l.y, l.x+l.w, l.y+l.h); + + if(state){ + const elapsed = getElapsed(state); + const i = currentRepIndex(elapsed); + + if(i == null){ + // FIXME: dodgy end-of-rep handling + lbl = msToHM(elapsed); + }else{ + const thisDur = repDuration(reps[i]!); + const remaining = thisDur - elapsed; + lbl = msToHM(remaining); + + const fract = elapsed / thisDur; + g.setColor("#00f") + .fillRect( + l.x, + l.y, + l.x + fract * l.w, + l.y+l.h + ); + } + }else{ + lbl = "RDY"; + } + + g.setColor(l.col || g.theme.fg) + .setFont(l.font!) + .setFontAlign(0, 0) + .drawString( + lbl, + l.x+(l.w>>1), + l.y+(l.h>>1) + ); + }, + }, + { + type: "txt", + font: `Vector:${fontSzRepDesc}`, + label: "Activity / Duration", + }, + { + id: `cur_name`, + type: "txt", + font: `Vector:${fontSzRep}`, + label: "", + //pad: 4, + fillx: 1, + }, + { + type: "txt", + font: `Vector:${fontSzRepDesc}`, + label: "Next / Duration", + }, + { + id: `next_name`, + type: "txt", + font: `Vector:${fontSzRep}`, + label: "", + //pad: 4, + fillx: 1, }, { type: "h", - c: repLayout("cur"), - filly: 1, - }, - { - type: "h", - c: repLayout("next"), - filly: 1, - }, - { - type: "h", - c: [{ - id: "play", - type: "btn", - label: "Play", // TODO: change - fillx: 1, - cb: () => { - console.log("cb()"); + c: [ + { + id: "prev", + type: "btn", + label: "<", + fillx: 1, + cb: () => onPrev(), }, - filly: 1, - }] + { + id: "play", + type: "btn", + label: "Play", // TODO: change + fillx: 1, + cb: () => onToggle(), + }, + { + id: "next", + type: "btn", + label: ">", + fillx: 1, + cb: () => onNext(), + } + ] } ] }, {lazy: true}); -let index = 0; -let begin: number | undefined = Date.now(); // TODO: start null -let drawTimeout: number | undefined; -let paused = false; -let positioned = false; +const onToggle = () => { + if(!state){ + state = { + begin: Date.now(), + accumulated: 0, + }; + play(true, state); + }else{ + play(paused, state); + } -const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); + drawRep(); +}; + +const onPrev = () => { +}; + +const onNext = () => { +}; + +const play = (p: boolean, state: State) => { + if(p){ + layout["play"]!.label = "Pause"; + + state.begin = Date.now(); + + drawInterval = setInterval(drawRep, 1000); + }else{ + layout["play"]!.label = "Play"; + + const diff = Date.now() - state.begin; + state.accumulated += diff; + + clearInterval(drawInterval!); + } + + paused = !p; +} + +type State = { begin: number, accumulated: number }; + +let state: State | undefined; +//let drawTimeout: number | undefined; +let paused = false; // TODO: ditch this, used drawInterval +let drawInterval: IntervalId | undefined; const currentRepIndex = (elapsedMs: number) => { let total = 0; let ent; for(let i = 0; ent = reps[i]; i++){ - total += ent.dur * 60 * 1000; - if(elapsedMs < total) + total += repDuration(ent); + if(elapsedMs <= total) return i; } return null; @@ -135,82 +226,64 @@ const currentRepIndex = (elapsedMs: number) => { const repToLabel = (i: number, id: string) => { const rep = reps[i]; if(rep){ - layout[`${id}_name`]!.label = `${i+1}: ${rep.label}`; + layout[`${id}_name`]!.label = `${i+1}: ${rep.label} / ${rep.dur.toFixed(0)}m`; // FIXME: display time, i.e. hh:mm - layout[`${id}_dur`]!.label = `${rep.dur.toFixed(0)}m`; + //layout[`${id}_dur`]!.label = ``; }else{ emptyLabel(id); } }; const emptyLabel = (id: string) => { - layout[`${id}_name`]!.label = ""; - layout[`${id}_dur`]!.label = `0m`; + layout[`${id}_name`]!.label = " / 0m"; +}; + +const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); + +const repDuration = (rep: Rep) => rep.dur * 60 * 1000; + +const getElapsed = (state: State) => + Date.now() - state.begin + state.accumulated; + +const msToHM = (ms: number) => { + const sec = Math.round(ms / 1000); + const min = Math.round(sec / 60); + return min.toFixed(0) + ":" + pad2(sec % 60); }; const drawRep = () => { - if(paused || !begin){ // TODO: separate case for paused - layout.clear(); - layout["cur_time"]!.label = "Ready"; + (layout["duration"] as any).lazyBuster ^= 1; - if(!positioned){ - positioned = true; - layout.update(); // position + if(state){ + // TODO: layout.clear(layout.next_name); layout.render(layout.next_name) + + const elapsed = getElapsed(state); + const i = currentRepIndex(elapsed); + if(i !== null){ + repToLabel(i, "cur"); + repToLabel(i+1, "next"); + }else{ + emptyLabel("cur"); + emptyLabel("next"); } - - layout.render(layout["play"]); - layout.render(layout["cur_time"]); - return; - } - - // TODO: layout.clear(layout.next_name); layout.render(layout.next_name) - - const now = Date.now(); - - const elapsed = now - begin; - const sec = Math.round(elapsed / 1000); - const min = Math.round(sec / 60); - const timeStr = min.toFixed(0) + ":" + pad2(sec % 60); - layout["cur_time"]!.label = timeStr; - - const i = currentRepIndex(elapsed); - if(i !== null){ - repToLabel(i, "cur"); - repToLabel(i+1, "next"); - }else{ - emptyLabel("cur"); - emptyLabel("next"); - } - - if(!positioned){ - positioned = true; - layout.update(); // position } layout.render(); - /* - g.reset() - .clearRect(Bangle.appRect) - .setFontAlign(0, 0) - .setFont("Vector", 55) - .drawString(timeStr, x, y) - .setFont("Vector", 33) - .drawString(current ? current.label + " for " + current.dur : "", x, y+48); - // TODO: figure out next rep change time? or every 5s, then countdown from 10-->0 if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { drawTimeout = undefined; drawRep(); }, 1000 - (Date.now() % 1000)); - */ }; g.clear(); -var drawInterval = setInterval(drawRep, 1000); drawRep(); +// TODO: swipe handlers +//Bangle.setUI + // TODO: widgets From 057ee7df036a72ca57b2b653d72c853a80d7947b Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 21 May 2023 20:44:00 +0100 Subject: [PATCH 1584/1725] rep: working display, fixed unit problems with reps etc --- apps/rep/app.ts | 138 +++++++++++++++++++++++++++--------------------- 1 file changed, 77 insertions(+), 61 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index fa6337153..149926922 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -8,6 +8,7 @@ const Layout = require("Layout"); type Rep = { dur: number, label: string, + accDur: number, }; const reps: Rep[] = [ @@ -21,8 +22,8 @@ const reps: Rep[] = [ {dur:3/60, label:"1st-sec"}, {dur:5/60, label:"5-sec"}, - // {dur:4, label:"jog"}, - // {dur:4, label:"recovery"}, + {dur:4/60, label:"jog"}, + {dur:4/60, label:"recovery"}, // {dur:2, label:"jog"}, // {dur:2, label:"recovery"}, @@ -49,7 +50,17 @@ const reps: Rep[] = [ // {dur:3, label:"static recovery"}, // {dur:4, label:"finish"}, -]; +].map(((r: Rep, i: number, a: Rep[]): Rep => { + const r2 = r as Rep; + + r2.dur = r2.dur * 60 * 1000; + + r2.accDur = i > 0 + ? a[i-1]!.accDur + r.dur + : r.dur; + + return r as Rep; +}) as any); const fontSzMain = 64; const fontSzRep = 20; @@ -64,11 +75,17 @@ const fontSzRepDesc = 12; const layout = new Layout({ type: "v", c: [ + { + id: "repIdx", + type: "txt", + label: "Rep 1", // TODO: update in render + font: `Vector:${fontSzRepDesc}`, + }, { id: "duration", lazyBuster: 1, type: "custom", - font: `Vector:${fontSzMain}` as FontNameWithScaleFactor, // modified in draw + font: `Vector:${fontSzMain}` as FontNameWithScaleFactor, fillx: 1, filly: 1, render: (l: Layout_.RenderedHierarchy) => { @@ -77,25 +94,26 @@ const layout = new Layout({ g.clearRect(l.x, l.y, l.x+l.w, l.y+l.h); if(state){ - const elapsed = getElapsed(state); - const i = currentRepIndex(elapsed); + // TODO: inefficient + const i = state.currentRepIndex(); + const repElapsed = state.getElapsedForRep(); - if(i == null){ - // FIXME: dodgy end-of-rep handling - lbl = msToHM(elapsed); - }else{ - const thisDur = repDuration(reps[i]!); - const remaining = thisDur - elapsed; - lbl = msToHM(remaining); + if(i !== null){ + let thisDur = reps[i]!.dur; - const fract = elapsed / thisDur; - g.setColor("#00f") + const remaining = thisDur - repElapsed; + lbl = msToMinSec(remaining); + + const fract = repElapsed / thisDur; + g.setColor("#86caf7") .fillRect( l.x, l.y, l.x + fract * l.w, - l.y+l.h + l.y + l.h ); + }else{ + lbl = msToMinSec(repElapsed); } }else{ lbl = "RDY"; @@ -167,16 +185,9 @@ const layout = new Layout({ }, {lazy: true}); const onToggle = () => { - if(!state){ - state = { - begin: Date.now(), - accumulated: 0, - }; - play(true, state); - }else{ - play(paused, state); - } - + if(!state) + state = new State(); + state.toggle(); drawRep(); }; @@ -186,47 +197,55 @@ const onPrev = () => { const onNext = () => { }; -const play = (p: boolean, state: State) => { - if(p){ - layout["play"]!.label = "Pause"; +class State { + paused: boolean = true; + begin: number = Date.now(); // only valid if !paused + accumulated: number = 0; - state.begin = Date.now(); + toggle() { + if(this.paused){ + this.begin = Date.now(); - drawInterval = setInterval(drawRep, 1000); - }else{ - layout["play"]!.label = "Play"; + // TODO: move draw out + drawInterval = setInterval(drawRep, 1000); + }else{ + const diff = Date.now() - this.begin; + this.accumulated += diff; - const diff = Date.now() - state.begin; - state.accumulated += diff; + clearInterval(drawInterval!); + } - clearInterval(drawInterval!); + this.paused = !this.paused; } - paused = !p; + getElapsedTotal() { + return (this.paused ? 0 : Date.now() - this.begin) + this.accumulated; + } + + getElapsedForRep() { + const elapsed = this.getElapsedTotal(); + const i = this.currentRepIndex(); + + return elapsed - (i! > 0 ? reps[i!-1]!.accDur : 0); + } + + currentRepIndex() { + const elapsed = this.getElapsedTotal(); + let ent; + for(let i = 0; ent = reps[i]; i++) + if(elapsed < ent.accDur) + return i; + return null; + } } -type State = { begin: number, accumulated: number }; - let state: State | undefined; -//let drawTimeout: number | undefined; -let paused = false; // TODO: ditch this, used drawInterval let drawInterval: IntervalId | undefined; -const currentRepIndex = (elapsedMs: number) => { - let total = 0; - let ent; - for(let i = 0; ent = reps[i]; i++){ - total += repDuration(ent); - if(elapsedMs <= total) - return i; - } - return null; -}; - const repToLabel = (i: number, id: string) => { const rep = reps[i]; if(rep){ - layout[`${id}_name`]!.label = `${i+1}: ${rep.label} / ${rep.dur.toFixed(0)}m`; + layout[`${id}_name`]!.label = `${rep.label} / ${msToMinSec(rep.dur)}`; // FIXME: display time, i.e. hh:mm //layout[`${id}_dur`]!.label = ``; }else{ @@ -240,12 +259,7 @@ const emptyLabel = (id: string) => { const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); -const repDuration = (rep: Rep) => rep.dur * 60 * 1000; - -const getElapsed = (state: State) => - Date.now() - state.begin + state.accumulated; - -const msToHM = (ms: number) => { +const msToMinSec = (ms: number) => { const sec = Math.round(ms / 1000); const min = Math.round(sec / 60); return min.toFixed(0) + ":" + pad2(sec % 60); @@ -257,8 +271,9 @@ const drawRep = () => { if(state){ // TODO: layout.clear(layout.next_name); layout.render(layout.next_name) - const elapsed = getElapsed(state); - const i = currentRepIndex(elapsed); + layout["play"]!.label = state.paused ? "Play" : "Pause"; + + const i = state.currentRepIndex(); if(i !== null){ repToLabel(i, "cur"); repToLabel(i+1, "next"); @@ -272,6 +287,7 @@ const drawRep = () => { /* // TODO: figure out next rep change time? or every 5s, then countdown from 10-->0 + // TODO: and then use that to Bangle.buzz() on next rep if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { drawTimeout = undefined; From 444a909c5b608aad9256b1adeb56eef923c26fc3 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 18 Jun 2023 22:26:11 +0100 Subject: [PATCH 1585/1725] rep: UI & colour tweaks, and README --- apps/rep/README.md | 12 ++++ apps/rep/app.ts | 138 +++++++++++++++++++++-------------------- apps/rep/metadata.json | 4 +- 3 files changed, 85 insertions(+), 69 deletions(-) create mode 100644 apps/rep/README.md diff --git a/apps/rep/README.md b/apps/rep/README.md new file mode 100644 index 000000000..9da08942c --- /dev/null +++ b/apps/rep/README.md @@ -0,0 +1,12 @@ +# Description + +A running/activity repetition app. Program your reps using the web interface, and then run through them with the app. The time left for the current rep is shown, along with the rep's description and total duration, and the next rep's description and duration. + +You can rewind, fast-forward and play/pause with the control buttons. + + +# Todo + +- [ ] Loading of reps, web interface +- [ ] Fastload: scoping, unregister layout handlers etc +- [ ] Swipe handlers as well as "<<" / ">>" buttons diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 149926922..1a516fdb9 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -1,8 +1,4 @@ -// TODO: buzz on stage change, better setTimeout() -// TODO: fastload: scoping, unregister layout handlers etc -// TODO: spaces vs tabs -// TODO: const colfg=g.theme.fg, colbg=g.theme.bg; - +{ const Layout = require("Layout"); type Rep = { @@ -65,20 +61,20 @@ const reps: Rep[] = [ const fontSzMain = 64; const fontSzRep = 20; const fontSzRepDesc = 12; +const blue = "#86caf7"; +const step = 5 * 1000; -// FIXME: `Layout_` name, e.g. Layout_.Align.Right +let state: State | undefined; +let drawInterval: IntervalId | undefined; +let lastRepIndex: number | null = null; -// top: show current rep: name & duration -// middle: show time left on current rep -// bottom: show next rep -// ctrl: play/pause button. back & forward? const layout = new Layout({ type: "v", c: [ { id: "repIdx", type: "txt", - label: "Rep 1", // TODO: update in render + label: "Begin", font: `Vector:${fontSzRepDesc}`, }, { @@ -88,15 +84,13 @@ const layout = new Layout({ font: `Vector:${fontSzMain}` as FontNameWithScaleFactor, fillx: 1, filly: 1, - render: (l: Layout_.RenderedHierarchy) => { + render: (l: Layout.RenderedHierarchy) => { let lbl; g.clearRect(l.x, l.y, l.x+l.w, l.y+l.h); if(state){ - // TODO: inefficient - const i = state.currentRepIndex(); - const repElapsed = state.getElapsedForRep(); + const [i, repElapsed] = state.currentRepPair(); if(i !== null){ let thisDur = reps[i]!.dur; @@ -105,7 +99,7 @@ const layout = new Layout({ lbl = msToMinSec(remaining); const fract = repElapsed / thisDur; - g.setColor("#86caf7") + g.setColor(blue) .fillRect( l.x, l.y, @@ -135,10 +129,11 @@ const layout = new Layout({ label: "Activity / Duration", }, { - id: `cur_name`, + id: "cur_name", type: "txt", font: `Vector:${fontSzRep}`, label: "", + col: blue, //pad: 4, fillx: 1, }, @@ -148,7 +143,7 @@ const layout = new Layout({ label: "Next / Duration", }, { - id: `next_name`, + id: "next_name", type: "txt", font: `Vector:${fontSzRep}`, label: "", @@ -161,42 +156,50 @@ const layout = new Layout({ { id: "prev", type: "btn", - label: "<", + label: "<<", fillx: 1, - cb: () => onPrev(), + cb: () => { + buzzInteraction(); + state?.rewind(); + }, }, { id: "play", type: "btn", - label: "Play", // TODO: change + label: "Play", fillx: 1, - cb: () => onToggle(), + cb: () => { + buzzInteraction(); + if(!state) + state = new State(); + + state.toggle(); + + if(state.paused){ + clearInterval(drawInterval!); + drawInterval = undefined; + }else{ + drawInterval = setInterval(drawRep, 1000); + } + + drawRep(); + }, }, { id: "next", type: "btn", - label: ">", + label: ">>", fillx: 1, - cb: () => onNext(), + cb: () => { + buzzInteraction(); + state?.forward(); + }, } ] } ] }, {lazy: true}); -const onToggle = () => { - if(!state) - state = new State(); - state.toggle(); - drawRep(); -}; - -const onPrev = () => { -}; - -const onNext = () => { -}; - class State { paused: boolean = true; begin: number = Date.now(); // only valid if !paused @@ -205,14 +208,9 @@ class State { toggle() { if(this.paused){ this.begin = Date.now(); - - // TODO: move draw out - drawInterval = setInterval(drawRep, 1000); }else{ const diff = Date.now() - this.begin; this.accumulated += diff; - - clearInterval(drawInterval!); } this.paused = !this.paused; @@ -223,10 +221,15 @@ class State { } getElapsedForRep() { + return this.currentRepPair()[1]; + } + + currentRepPair(): [number | null, number] { const elapsed = this.getElapsedTotal(); const i = this.currentRepIndex(); + const repElapsed = elapsed - (i! > 0 ? reps[i!-1]!.accDur : 0); - return elapsed - (i! > 0 ? reps[i!-1]!.accDur : 0); + return [i, repElapsed]; } currentRepIndex() { @@ -237,20 +240,22 @@ class State { return i; return null; } -} -let state: State | undefined; -let drawInterval: IntervalId | undefined; + forward() { + this.accumulated += step; + } + + rewind() { + this.accumulated -= step; + } +} const repToLabel = (i: number, id: string) => { const rep = reps[i]; - if(rep){ + if(rep) layout[`${id}_name`]!.label = `${rep.label} / ${msToMinSec(rep.dur)}`; - // FIXME: display time, i.e. hh:mm - //layout[`${id}_dur`]!.label = ``; - }else{ + else emptyLabel(id); - } }; const emptyLabel = (id: string) => { @@ -269,37 +274,36 @@ const drawRep = () => { (layout["duration"] as any).lazyBuster ^= 1; if(state){ - // TODO: layout.clear(layout.next_name); layout.render(layout.next_name) + const i = state.currentRepIndex(); + + if(i !== lastRepIndex){ + buzzNewRep(); + lastRepIndex = i; + } layout["play"]!.label = state.paused ? "Play" : "Pause"; - const i = state.currentRepIndex(); if(i !== null){ + layout["repIdx"]!.label = `Rep ${i+1}`; repToLabel(i, "cur"); repToLabel(i+1, "next"); }else{ + layout["repIdx"]!.label = "Done"; emptyLabel("cur"); emptyLabel("next"); } } layout.render(); - - /* - // TODO: figure out next rep change time? or every 5s, then countdown from 10-->0 - // TODO: and then use that to Bangle.buzz() on next rep - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = setTimeout(function() { - drawTimeout = undefined; - drawRep(); - }, 1000 - (Date.now() % 1000)); - */ }; +const buzzInteraction = () => Bangle.buzz(20); +const buzzNewRep = () => Bangle.buzz(500); + +Bangle.loadWidgets(); + g.clear(); drawRep(); -// TODO: swipe handlers -//Bangle.setUI - -// TODO: widgets +Bangle.drawWidgets(); +} diff --git a/apps/rep/metadata.json b/apps/rep/metadata.json index 8820be486..a62d5e7e5 100644 --- a/apps/rep/metadata.json +++ b/apps/rep/metadata.json @@ -3,11 +3,11 @@ "name": "Rep", "version":"0.01", "description": "Steps through reps, to aid in run schedules", - "icon": "app.png", // TODO + "icon": "app.png", "tags": "run,running,fitness,outdoors", "supports" : ["BANGLEJS2"], "readme": "README.md", - "interface": "interface.html", + "interface": "interface.html", "storage": [ {"name":"rep.app.js","url":"app.js"}, {"name":"rep.img","url":"app-icon.js","evaluate":true} From cefc0eb054c85412dc11cd91f6a8772b4bac4b89 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 21 May 2023 22:42:15 +0100 Subject: [PATCH 1586/1725] rep TODO --- apps/rep/README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/rep/README.md b/apps/rep/README.md index 9da08942c..0fa0a6e1d 100644 --- a/apps/rep/README.md +++ b/apps/rep/README.md @@ -8,5 +8,8 @@ You can rewind, fast-forward and play/pause with the control buttons. # Todo - [ ] Loading of reps, web interface +- [ ] Fix widget drawing +- [ ] Check/tweak UI for real watch - [ ] Fastload: scoping, unregister layout handlers etc + - [ ] Swipe handlers as well as "<<" / ">>" buttons From 75c6972f3fad36d1967d6407c534078ef204de3d Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 25 May 2023 23:18:18 +0100 Subject: [PATCH 1587/1725] rep: move reps to JSON file --- apps/rep/app.ts | 57 +++++++++---------------------------------------- 1 file changed, 10 insertions(+), 47 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 1a516fdb9..8dad2f1ed 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -7,56 +7,19 @@ type Rep = { accDur: number, }; -const reps: Rep[] = [ - // 1 X 4 mins - 4 min recovery - // 2 X 2 mins - 2 min recoveries - // 4 X 1 min - 1 min recoveries (turn for home after the 2nd minute) - // 8 X 30 secs - 30 sec recoveries - // 3 min static recovery - // 1 X 4 mins to finish +const reps: Rep[] = (require("Storage") + .readJSON("rep.json") as Rep[] | undefined /* TODO */) + .map(((r: Rep, i: number, a: Rep[]): Rep => { + const r2 = r as Rep; - {dur:3/60, label:"1st-sec"}, - {dur:5/60, label:"5-sec"}, + r2.dur = r2.dur * 60 * 1000; - {dur:4/60, label:"jog"}, - {dur:4/60, label:"recovery"}, + r2.accDur = i > 0 + ? a[i-1]!.accDur + r.dur + : r.dur; - // {dur:2, label:"jog"}, - // {dur:2, label:"recovery"}, - // {dur:2, label:"jog"}, - // {dur:2, label:"recovery"}, - - // {dur:1, label:"jog"}, - // {dur:1, label:"recovery"}, - // {dur:1, label:"jog"}, - // {dur:1, label:"recovery"}, - // {dur:1, label:"jog"}, - // {dur:1, label:"recovery"}, - // {dur:1, label:"jog"}, - // {dur:1, label:"recovery"}, - - // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - // {dur:0.5, label:"jog"}, {dur:0.5, label:"recovery"}, - - // {dur:3, label:"static recovery"}, - // {dur:4, label:"finish"}, -].map(((r: Rep, i: number, a: Rep[]): Rep => { - const r2 = r as Rep; - - r2.dur = r2.dur * 60 * 1000; - - r2.accDur = i > 0 - ? a[i-1]!.accDur + r.dur - : r.dur; - - return r as Rep; -}) as any); + return r as Rep; + }) as any); const fontSzMain = 64; const fontSzRep = 20; From e83b582928615277fbbff15265dc0f88841ad3a1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 25 May 2023 23:19:15 +0100 Subject: [PATCH 1588/1725] rep: pull out renderDuration() --- apps/rep/app.ts | 78 +++++++++++++++++++++++++------------------------ 1 file changed, 40 insertions(+), 38 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 8dad2f1ed..896a2d8cd 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -31,6 +31,45 @@ let state: State | undefined; let drawInterval: IntervalId | undefined; let lastRepIndex: number | null = null; +const renderDuration = (l: Layout.RenderedHierarchy) => { + let lbl; + + g.clearRect(l.x, l.y, l.x+l.w, l.y+l.h); + + if(state){ + const [i, repElapsed] = state.currentRepPair(); + + if(i !== null){ + let thisDur = reps[i]!.dur; + + const remaining = thisDur - repElapsed; + lbl = msToMinSec(remaining); + + const fract = repElapsed / thisDur; + g.setColor(blue) + .fillRect( + l.x, + l.y, + l.x + fract * l.w, + l.y + l.h + ); + }else{ + lbl = msToMinSec(repElapsed); + } + }else{ + lbl = "RDY"; + } + + g.setColor(l.col || g.theme.fg) + .setFont(l.font!) + .setFontAlign(0, 0) + .drawString( + lbl, + l.x+(l.w>>1), + l.y+(l.h>>1) + ); +}; + const layout = new Layout({ type: "v", c: [ @@ -47,44 +86,7 @@ const layout = new Layout({ font: `Vector:${fontSzMain}` as FontNameWithScaleFactor, fillx: 1, filly: 1, - render: (l: Layout.RenderedHierarchy) => { - let lbl; - - g.clearRect(l.x, l.y, l.x+l.w, l.y+l.h); - - if(state){ - const [i, repElapsed] = state.currentRepPair(); - - if(i !== null){ - let thisDur = reps[i]!.dur; - - const remaining = thisDur - repElapsed; - lbl = msToMinSec(remaining); - - const fract = repElapsed / thisDur; - g.setColor(blue) - .fillRect( - l.x, - l.y, - l.x + fract * l.w, - l.y + l.h - ); - }else{ - lbl = msToMinSec(repElapsed); - } - }else{ - lbl = "RDY"; - } - - g.setColor(l.col || g.theme.fg) - .setFont(l.font!) - .setFontAlign(0, 0) - .drawString( - lbl, - l.x+(l.w>>1), - l.y+(l.h>>1) - ); - }, + render: renderDuration, }, { type: "txt", From 2440613de1c86f04911edc7f4720b9ab5c6653f1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 25 May 2023 23:19:30 +0100 Subject: [PATCH 1589/1725] rep: handle setFont(undefined) --- apps/rep/app.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 896a2d8cd..02c8dd9a0 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -60,8 +60,9 @@ const renderDuration = (l: Layout.RenderedHierarchy) => { lbl = "RDY"; } + g.setFont(l.font!); // don't chain - might be undefined (TODO: typings) + g.setColor(l.col || g.theme.fg) - .setFont(l.font!) .setFontAlign(0, 0) .drawString( lbl, From d913368ff138128a60f268b75832e5786aa337a2 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 25 May 2023 23:21:04 +0100 Subject: [PATCH 1590/1725] rep: rotated idx label --- apps/rep/app.ts | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 02c8dd9a0..dd08a0b7e 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -75,19 +75,24 @@ const layout = new Layout({ type: "v", c: [ { - id: "repIdx", - type: "txt", - label: "Begin", - font: `Vector:${fontSzRepDesc}`, - }, - { - id: "duration", - lazyBuster: 1, - type: "custom", - font: `Vector:${fontSzMain}` as FontNameWithScaleFactor, - fillx: 1, - filly: 1, - render: renderDuration, + type: "h", + c: [ + { + id: "duration", + lazyBuster: 1, + type: "custom", + font: `Vector:${fontSzMain}` as FontNameWithScaleFactor, + fillx: 1, + filly: 1, + render: renderDuration, + }, + { + id: "repIdx", + type: "txt", + font: "6x8", + r: Rotation.Deg90, + }, + ] }, { type: "txt", From 9f9a33d963fb3743189134323c61ea1248f83590 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 26 May 2023 08:00:53 +0100 Subject: [PATCH 1591/1725] rep: rename Layout for access to enum --- apps/rep/app.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index dd08a0b7e..4e5a00f12 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -1,5 +1,5 @@ { -const Layout = require("Layout"); +const L = require("Layout"); type Rep = { dur: number, @@ -71,7 +71,7 @@ const renderDuration = (l: Layout.RenderedHierarchy) => { ); }; -const layout = new Layout({ +const layout = new L({ type: "v", c: [ { @@ -90,7 +90,8 @@ const layout = new Layout({ id: "repIdx", type: "txt", font: "6x8", - r: Rotation.Deg90, + label: "---", + r: Layout.Rotation.Deg90, }, ] }, From 1fb88b505970047b3f424a7e729c503b140b8a0c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 26 May 2023 08:01:28 +0100 Subject: [PATCH 1592/1725] rep: better drawing of rep index --- apps/rep/app.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 4e5a00f12..5ae4f5aa2 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -21,7 +21,8 @@ const reps: Rep[] = (require("Storage") return r as Rep; }) as any); -const fontSzMain = 64; +const fontSzMain = 54; +const fontScaleRep = 2; const fontSzRep = 20; const fontSzRepDesc = 12; const blue = "#86caf7"; @@ -89,7 +90,7 @@ const layout = new L({ { id: "repIdx", type: "txt", - font: "6x8", + font: `6x8:${fontScaleRep}`, label: "---", r: Layout.Rotation.Deg90, }, From 2d27ef4c2c0cc5a691dffd83f724b35e1933b0c3 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 26 May 2023 08:01:47 +0100 Subject: [PATCH 1593/1725] rep: work around index drawing bug --- apps/rep/app.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 5ae4f5aa2..16094f5ed 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -252,16 +252,21 @@ const drawRep = () => { if(i !== lastRepIndex){ buzzNewRep(); lastRepIndex = i; + + const repIdx = layout["repIdx"]!; + repIdx.label = i !== null ? `Rep ${i+1}` : "Done"; + + // work around a bug in clearing a rotated txt(?) + layout.forgetLazyState(); + layout.clear(); } layout["play"]!.label = state.paused ? "Play" : "Pause"; if(i !== null){ - layout["repIdx"]!.label = `Rep ${i+1}`; repToLabel(i, "cur"); repToLabel(i+1, "next"); }else{ - layout["repIdx"]!.label = "Done"; emptyLabel("cur"); emptyLabel("next"); } From c446f0962ffc6bb63c4edc4469f1f866fe1c677f Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 26 May 2023 08:01:58 +0100 Subject: [PATCH 1594/1725] rep: rename step --- apps/rep/app.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 16094f5ed..a63eda6ba 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -26,7 +26,7 @@ const fontScaleRep = 2; const fontSzRep = 20; const fontSzRepDesc = 12; const blue = "#86caf7"; -const step = 5 * 1000; +const ffStep = 5 * 1000; let state: State | undefined; let drawInterval: IntervalId | undefined; @@ -215,11 +215,11 @@ class State { } forward() { - this.accumulated += step; + this.accumulated += ffStep; } rewind() { - this.accumulated -= step; + this.accumulated -= ffStep; } } From d956fc917e97f226156e917a40a7a07fc4c162b2 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 26 May 2023 08:02:06 +0100 Subject: [PATCH 1595/1725] rep: better background blue --- apps/rep/app.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index a63eda6ba..a92910fd3 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -25,7 +25,7 @@ const fontSzMain = 54; const fontScaleRep = 2; const fontSzRep = 20; const fontSzRepDesc = 12; -const blue = "#86caf7"; +const blue = "#205af7"; const ffStep = 5 * 1000; let state: State | undefined; From f7533cc11881166ac38c50a89898e7c3d9ce9825 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 26 May 2023 08:02:27 +0100 Subject: [PATCH 1596/1725] rep: update README --- apps/rep/README.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/apps/rep/README.md b/apps/rep/README.md index 0fa0a6e1d..0bda6bbd9 100644 --- a/apps/rep/README.md +++ b/apps/rep/README.md @@ -8,8 +8,7 @@ You can rewind, fast-forward and play/pause with the control buttons. # Todo - [ ] Loading of reps, web interface -- [ ] Fix widget drawing -- [ ] Check/tweak UI for real watch -- [ ] Fastload: scoping, unregister layout handlers etc +- [ ] Check colours on light theme +- [ ] Fastload: scoping, unregister layout handlers etc - [ ] Swipe handlers as well as "<<" / ">>" buttons From 17ff3fdd00292d72d7df05e95ac80fea666fc6df Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 18 Jun 2023 21:41:36 +0100 Subject: [PATCH 1597/1725] rep: guard against undefined font --- apps/rep/app.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index a92910fd3..dce8909b7 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -61,7 +61,8 @@ const renderDuration = (l: Layout.RenderedHierarchy) => { lbl = "RDY"; } - g.setFont(l.font!); // don't chain - might be undefined (TODO: typings) + if(l.font) + g.setFont(l.font); // don't chain - might be undefined g.setColor(l.col || g.theme.fg) .setFontAlign(0, 0) From 517ff7c405c88e72301a97caab509f2da30342cf Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 18 Jun 2023 22:26:28 +0100 Subject: [PATCH 1598/1725] rep: interface.html --- apps/rep/README.md | 1 - apps/rep/interface.html | 154 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 154 insertions(+), 1 deletion(-) create mode 100644 apps/rep/interface.html diff --git a/apps/rep/README.md b/apps/rep/README.md index 0bda6bbd9..96e09fcbf 100644 --- a/apps/rep/README.md +++ b/apps/rep/README.md @@ -7,7 +7,6 @@ You can rewind, fast-forward and play/pause with the control buttons. # Todo -- [ ] Loading of reps, web interface - [ ] Check colours on light theme - [ ] Fastload: scoping, unregister layout handlers etc diff --git a/apps/rep/interface.html b/apps/rep/interface.html new file mode 100644 index 000000000..fa137bdb2 --- /dev/null +++ b/apps/rep/interface.html @@ -0,0 +1,154 @@ + + + + + + + + + + +

    Reps

    + +
    + +
    + +

    reoWswy~G3g+=FK+D*2cJT(0TkB42+PUZb9N5g^*Jy|iK zJY?=(?OaV7sYpvRpp~k&(bvMQ@QK82?@j$BvP9Sx zJuB;T>d&ihlm9L>OEjJ6&W7(n3?BEASFPL0ScXbWiJ|Z_^U7B1rb|FG3o~modz0uw;e2}4KCZwWW{4JN<78~uwyD+`^^`$oRi`B9yqR^>#>!#>Z<5*7=`FZ+c zCu1^~xm9eH{>+S2yVN;7i>cHS=*DA?F;n~W!s^_VY8xHy_iQrSLEw1})QYpD(RgoE zPHYjm9!(QDPdLu-wQfqt*$teRWGl}&nO%?Pv-#Ubne%GZlup|wAK_*=dNxUPZ?e|g zkXosmJk~$t-KwdS*=b4mMtBK$x z+^$+Y^=^tJJ4xFneH)|`Q#)BDqdL;$6Tj)pNHo53yixhS*(^;`iFP&vjQ!u^FST1AH z+DyuXjZSu=jCktZvs%ESm*`W|y1omcV=>+nSE%UB*_30bwAc?f7Bl5j|HkJ}l=orH zipNg)MWSF9m{cd$I?Fs6r((|P_{zxS)ftuOi`~|&MkDr1jF~HQH}%(Xbfnz@r_^^A z7P>YxzHyRBer#5Ft<29XJjpcwVzJD#*_(1|$!2&Z2EVj}Doc86w(D`r0#r+t3M8&< zC4*Vyli8LLt!GBE&uGL}4lc!ha?MucJYB)x64gAmJqe@9S{d!wF8e^4UmZy%qEgkw zn5w6)bNW}R)cDpEnSX0V@YJ3r{lp*rce6_K6l-g#VWnW6=^2z}{{o&5AnH42Z4fPx-eeFo4 z%IPm!rMl&`Azt%j;6#wUIj`);W$j6hCFCi6JKTA<2iAM&J4(Y9W2$! z80FQhp=X7G87E}fKRvhf#nX)Xc4e^q)MS%Lra+E*W%n+@bVZfPlt4nYan3@%Ga>X^~NBd^DQ}MzeiWIXhq$@9~$(kyo@z8c9Ao$?X1?#k}?szK02G z+2wO&PLWz$pz6r8OLR0HQlJ#83|`}tX9(fUW-U$qQp$MB0A?_Xwa6CxCALW9TqE{l zDX%QgCEpBb`U^j~XORe%9Y2GcGnLdV`n_zGJd5o)SSee{&(ZvcGsU-gDSl>YIe|-X zF;bT(A(dI3trAF{Ut2<-G5=<)!zoYWi)S(Zc8dhpwMna8Q;5;`gkBa)nX-~)Rz;_z zl_auN(y`GbQRog$df}BlG^d40xs*LgMJ{o+s;ng8SoU=5ri@aUvMQFn4nZ;{&a~>} z9HnHKX;IdZNVIPnjGP*0wT*>D9dE_7qc~=G^`&(S5rF=eg zYARi!X8pf?y6Cp^&q4db^SIe1H7rN;jBRlcv0^wTGpFkHE3uYYTU_TjU3T%3V@tus zY5qncyG$x7t10Jm=cB#4G)1T$Zt{f7D-M!H4$mcw7|DrD;~O#3xAx^(`;};YJd9$! za+Z9;X`FfiwKH3kwKb-TT+@dB!s*OKyQYP6M)tL2_Oj?CoK8(MIN_JQExckcag~K5 zob36@J$p#bjLVG5Oe@u#;U&k`SZPN(`(BxoC8}&^D}x`IR5hF#+wq-O^vZE0RI&=c zoHLc^!_7=Ck(5f695SoR1Zvf^$Cfj@I)dzNd6lD6UHuGD&U(^U*D&^zapIiu4xpYh zCC023u@TRyYil$9V&jwN*EcCTtUVpZU%3l`K-Sl&wtq6f1jS?8R~!&hYY{wwyrZ1Th6| z-SpQ+({h@~%IwY&rdUhqN?a*gJvEA4yoOVDz!^hc-s#r$nz{UC?@IK^G_MjzIgu`O z8HTc&%s6J}Enz*avaCn1*hqXuKl$aA&n5CI6TVD{&?U|?Awm^iPHvM!*&z!zc2cq8 zF+0kP)hvU6PXNIk&WxZNm|81 z_U3G7cv8f2dQhZFqTwf+gcnZIj^~0Uo%EEMowM{z+6-Ugv@6ASO|uy*QW>UFicF)d zOgTHvK2aj7-*uP$vqVrPOo^|^#bQ}siZVwQA^`TQ;WQs!vpMLi&Of8*4v8Q3coDy&k!G962WXI_s}w-_uFq25h$ zB+l5ExU)v3Kf6n8mP1H6C$85Ri^mDqaQv?KfHS68M!sIFN)=->60uxtgK)pd1BCecaNGB;C)Xhwg=EKD4cDhpGgNX&nY%(W7C;*8CbS*cyT8kuHROa<-bG|i|NZNdrQ3#mpNAA zFZC%A72jn$eiGjdOO3bRpn}&leO6F>$9DFhWKc(vv(tJRkN?ytc5>J$`+h1}d_;f7 zL8HW4SD}96QS8@=7Fi70Yb0l6-ZenCGeoD+!hX$yVcWH|g}V2*pB# zvQ_3-KJiFiWpvV)yozLILCLLrR#ZoxD%3U4!6CZ!o>%9Lr6;2iTOyotvmhQaFQc1J zE{bI2irsqFgcF@sO>;5pPN5?ePr+2UXk{zoUA#oH%$Cs6O#K`{eCM5v)TjA>?lfzAiD9skc!%x_Qzs%UAl!lq&@+0Tz4VmlMxYnsDnhlUUyF zWFamVicCt9AR||Am9$F&C6+qDniuKVDwgs$cCsWFTMRaBmBV~p&f0z{X(TgQiezL; z4B=*%EW=kv6`nof;ycu1^HRVvze<2nE&WZAvyxf#8z22I8%-O2b| zW!Wz=rn~%Wyf~c;)I(PnBw@|?%ro{IpN-&Rr4BQy5i6-vFoD#cRXADxHwvf!--W+~ zS?67rkr*y@0!`cb5UfO+1*$A3d6Qh~Sr&lk7LPfJkN+GpOWjMo%c#}c>6sB@;bt6a zjWRn+1oi1nsN$n!7_BmLWogNvlqIwbLu^GpS(M$lwjTMCb^ew&{K|R$J*xBNrA==g zl2#IkdP(HdSN$%fAAIchir*D>jopQR`#!y$=gaz0f;n6_xB0&f4Ig-*=lFkIW75HI z?$AsrR$bQhrfpg^T>qDMRGtC42>BOXf49d%u2*XAdA<5qXw$Oc9Q?J|IgI|f^xORB zdZCV4g8Xxb|DX*@CZo{}kV(_O5gB zV+iZJmhTPm?aSVszE|z(TDU{$ec@T4zsTzXd3_*`zTQY}{(qepmW5Zo2&M=66eePtreB{}}Ns zC7wn7DBjEbz61{--;bU1*crobXMS&GXFG9R%Fgrb3>ViM=!L|;NGrch2Umdqk-Hp! z3wD~b^Cf>r^Y^R%16%t9NFAoRzHU$c`|&?s-Pcw3yUC9r-%4I*sMG86?POU*9zlBl+vV-|6z$L>>znmxFz(_9=h6@iz-U&x(I7ai1sdGu3xZ zc^*dYEpmg|pVhpXlbw6{zX%RyZ-Tsg&^s6|437}!A;xh*e&=q}qG2ofzesLN_FAyF zB0Hamb0oX>vAdS z^QFaek9bhC?7Yj)MeIH$&U@tB4Skw8cM|9C;=V!L|LQ+R z{f|ZuLjS|hJ(u77FuvP}XD|ETTjFVlzQug)t&VT7KZ5;6 zH%iMtCwH?f!BR=JS;Pu7X0)c1Au*g(9$i}z%9e`mM9alXYku1xM< zc8`a5kv~U0E@AIA%kWJA~e1^zM-71Ndj_--cXAy77h{A2OI6yIcWm%$ApFP}f<^C&xG z+1Zxe&)LnhYI=$9EA={sog3-zM*n_tqshG~uK8y1>}>jD%%6|salAaPV|R0Qujlt; ze&2$t8lQRKwf3)_)a@R1o0Z<-%!{Eju+p&;(MN*z39y$ zp55hfI(jwq+3M8X`OZ4%@6`1Ubz0H<9cCUrZk}#}|0jNWPCuHqT+qhpskE+mfo?JsAj?{e(yNUs;Yr^t;b*H0dU95+uF*LUKY zPd-oJ&nNB|$sKMzIDx<3>^#iQeBygjoz@oL_52;EUiqzud-eY(-<8GtAwSd551@DA z_uGsszwfhi3cvl?KL$OR{f&(GeB%6szmwHzHFdnTvvVhYx|)yovD1vdGx_=5eEopj z@#LnOKj#?N>G)e%H_jLTZ{qJx??LjP;qQ)r1N%F(|C;ezR{t;JnJT{V_{-tH%-$jF zwWoI}z1_vvMSNS!qq%suApep0cQa1;4f-MC?kMgF?5%G;+(NI9@tUgtFa2j3hf(Ts z6}y|Udpo%~`R&c_OX$(p@K3HE`fc`vXBm!7ZxKlR(1-&XSb zUEIewPn~T3Z0mTnm-;;|&f)5^h`OxC{}b}wR6N^@=UL-0zxuRb=O*jz>iVD3KU6$_ zi|0#rr?R^b>Vy7AUEX8&SoJ#<4uE~=%}Vbm9 z|26fROTE^H=bHC#T3-jL&nL!VY5Up9lVp7{mu#gAF=;h zzrJ-ZpdRzp<3n*O*!0#msbIfd zD(>s}jE3LY{08@6PxJrSS54G$y*hp&P91SZs>eX}`beB{;_TDEQoZjMr=4?rEB@)+ z?=#`nhkFN}dA)}WR-Y@>=LvNls?HDddkaoF;~Uhqg}4jEoeQ@F+}7sf-?Zt={yO#x z@fqQH{;B<4+Wx*-y!f}#e`7a6{O!JwjDJ)2Re2YX_el1ot?yL#{#JQCF5Y+Kw4d#R;<=qO z^G~SXHF(8;qgLN|D|MJBpHlL<82)bcZij#Tn{n&#OvCdjTo# zo8Zq-_xLw;8_6@PdOTpA>WFhfzlpq`((k1|8{X&E=Wl)w^DBYp_wpPq-vabl{H}pt z!u(;nkMV3VZhzi|$0f#}F#ei#sAd0tq@EM-I0Jtf{1@SkmG{;B4#;N-U5oz^xOw@# zp+8jrLOgolaR5$3pId%6|B(6I^b2ru$$y=D;tO@T3(g{bH}Q+V&E3^L`#`*@?EcE{ zdkuAbjD0@$!9((WUH%i{zYo6_y_7Cu{AKg&?6*$2e6FxwORZN0`*t3@4#(ZW>amU8 z*Ze2Y6X*x||IGh4^&jF~WWw(;aodZZi7u`GA-#g#uk4 z$E)Uh+kZEUyIS0>#;=rT2J5t0J?~^+n|*u!JNTEE=f=p>{;9z}pZVkJdQiTF#aWNv z!&x$Pjo%;m6~upwywc(IGQ5ke*BLl-@akdzSLF9A`#Svo zmgg{ayGq^0!+$qp#q&a`-*xDH2xvp*W&%4xHpS?8~Znm_mkhR z&d*|YHT5g0cdlICnbr46^&KL=@$%~>&Mo4sHs8+t40!QxMDMUqI@%{Ecz!hzC#Q3E9bO;d{V?21#O*1M`0tdP z%J)}!UPr$}cVS=Ib9Ny7C+(-v?Bn0Co+NG)aVyFD1$o!Dt_|F)>CE5fyscuN9={Lp zos4g0_IcRniSdjX(#pvH1LI@apMW<4?@4%9RG-!CT3L_xJYRRR&*L0a6Xz9iimS_U z`*E}V@~ijbA$XU=dnmgX@f!#CYIW_yuBrNU6hDhNmF541I`*;-ADJI7&Xt~j)70U5 z>vI>sQpRtjPqJ^pKRf@~c(=#rT6_w7?q0@zpLm0;%k}WKs?Qhdc?Eut+c($9XPbO( zP`}UAZ=(50<|pBC9o+iHzc=0$-jDM80^S1gug7b>`19?%CHC7j_`Yhra^v$HzwGe0 z$bY~7aCZIFYlM3BW0%SIMUNW4&G>cV9k8BPiL*zXwbuV1>wmj^I>;xtyl2^eMZ~{W z{DSPCU|%Mm^P1*4h37i)ZZQ6x@n7WA$>;2W#;-755s&BbNYmel_si;D+4_9PzNd9r zZ@!+mZ{RZ$pN{f6L{Da4lK*1sw%fWLWjB`HH^%QXeifdh@O)7JX8l(13aH!t>fBPD zpHruP;!U(3w_1-K#`_ts%+pXI|BT{p;a`A$jczaB!|szm4|zwlZq@O59G@ld z>cabr|1`YsRQJ2peHk7<;j!I(C-ZCIG-kif{8sbx)Fb{4-Ffhu!>i5i2f81>m-zKk z*Yw_pa+-gSeL4Aj45zd4__tfvtJnF?#T)t=os&P+VV(EphuGbU?~~T88^1Z?EuvpG zKEQY#yr05j1KghC-6w7hxYxsJWMBS*=W_FZuwTQzfqFco9?RKxW}lrt1TV9Cj90(T z>R5xW4EIrfP2{x;pC#(rCYSYR{}21k_-4hokA87DQ|-HZ?7MFC0J^WdUzGQq^0-tU z8To$&?_vGg*7r&NSKA+_=@D@s;5o_s^YBK)dx%|4cKISs#>{E2;y)PwH}c0vhV#;% zlizXo^5y(qFg{OR;%_aalm8R^v$20l9gg$w3BRCye$aXzF+P?3jc4pJ`BX0B^B2DB z;H|bk*RXq+-6wEo;PZ^S_k=qe{|4-{(BBw;iTx?@^N9Dlc+ZJbNVnhwvD| zZkhGzXMO6!ndS4-4EuC}^RU}|SM#^4U;O*v75RU{zcc@S{O`7oKiZ!=)8hA3oLP29 z*&h~fm^$xcKTKVg<1q{Gn)=`Hf0Vw>_zdyB60fB^o_B8M@Vk!Rg>VkS$;@sW`)lzy zX#6($rIX*S_~pQ_2i!mH$Di15!f%iLksq(4>NlNVCw65$Pb%{NnExy4SjhgFZoaJf z`SR{8@1}5n!)L4cbl%GfS;uGHhgIMYgx}J>-7ju-ey@mA!FXrm8{js_v&LECd6Wa+ zXW+JA_cyx@bSwQ0>f>pZ){XrI>^~N#8XljDI}>g{dH-mA2I0Tgcw76Wu=^7Y{|%4- z);ph{!|=byx-RBl5$>1pFJRxDeI0e2u8srYR`(pfOWw29=Lh4X?b9Fs@C?Z9{=n}$ zd{$bw^Sv)T1~>jw%r@$G1-$q0nSjqw>wAYfZj$XAM?c(MZZ;*J`v-?oJuAvXo zKf-I}-u{VwPwzhu(lhwIjK?MReO`Ktdo#QIcUy-6{Bnzv7oS)0DW`uF&a3hos(&ZD zV&WCDFBW-zY{9P&e)-NibMly|UsJygzce^ctM4T$ToB#?{-5!`lmBb#+FQJ-&R4Bm zYNxIrs%uyI-7dfC@Hbii9uKK=E_$@`GJFNE{Gc=g2n9^bF! z)meT&h%;ZDAN7a%9(SyMCihbZ`0v}-f5F=UZ=E{jQ1=_~$Z&D`w0_1*81K&RD|z;S zUkuL$c-#p8X8H&5C$p==ZX`Yh^)D0udGlq&+3ow7vS;my+&+_vKiInW;diO|dT<|= z-+J|lABf*8{-4h4_i&cL`AdHwJ{zs?4)yAO+`7tduz2w|WLjIt54jHQ?;mwDC1KpV4%j{p#AFMytet+A0Ss&~9f{cg2 zxdKk9Lq2EFW8oKOUq{^zI&WpqxX*HVZ|A>?|9JD)m>(og9`*Z4f0_P!>RQ1%&%one zJXRWSVEl9SD61ZG#Hj#(l{#*qZ$0F$kbhCQAJQ+YOFn*AyKf3wk3anfQPc6;sxF1R z$L)asy>+`tzB_$C&|jR9?6c!{w|nRb{@L~KGT+R(dPIKj@UM!;2|VwW_m9s18{$qA z?_K@&&i&o&yRg3nUMv2M;r-*+!Ioa-`!)OF7J2?8?+@YJDWA*av(a<8tNsQ0_v70W z-{GJLK1y|7G%cQhkccW1n;0kN>6oXR)imu8MWqs{a-Iit3da zk4bo}QLoMFHNZaoTbu>rb)j!m&(EEw?dG2{-%S1+?5no$i>gyGagWHel03V3?&YGt z^SQOBeR;j-VFmF&7I!!Q7x=$py@$ZN0e)HMY$?1S;q{`QqetLB%Kj{m?=kt5^Swv> z+rUq%^JnVZ&iu9J7sB7{Iowe_`>5yncsz&4{o>V-Ula9t(R1Ms{nh&2*_XyAy?i!^ z-&OwcZ!mwu?iTmtFZ@@Fw?%(fmW*jL<+o6NmHB^ye;IXK2dDU1dpNh>>A-glzUkTD zlPP0bWBk_P_ue6&&G2ZWt4#_Qx4{tjB-8_-n*( zAyw?m<-v*v{Tkw1z&rNVHv%hwj-)GuK*rb+OH4eaoj%IF5Up~HjDSTI1k`63Ga&Pa1Wlt#px&S zhw*JH&P&Ggs_*T`oqM<+!0Y6k*D?PioPzpS!Ox+;NB*Wa z;=Um6cJ_VQcT>*~j6ZAqGI8p=Cn~xp3aiV0_@l(}3s!0E`Db9a8{RN@Pg<{ct=DAy z$EMGaww3*D>evI{L2%wOUP_!JbY=Q!e0t-vh~HR#^Yp9fe@Nd&w}g8c+^g}*gjacW zSg8&Vi+iiMt?_)F{>3_tw@yRx`rY%tk@1&|pVps??~9`jSo*A-_NoGaPorC-MDth_roZ{y^3x%JMV&X>t=4V)%$28r{ud!vp0dbNFj zR)3T{>zO};R}Q#`;Vn_m=lB;nBR9{-3*l~aA9UbXieEi>uaNfz>|ba9KKly#6YwvB zUsd}f&HGmm`{|i9d)#{UwO$X>57X7;bD4auwePn(FMq??DW6GjhFa%=`2T}M_%OdQovd-|^pW?_gKT`@NiZij*C0Nx;>=-r~Wqcea!!) zF1LB#?=6pyf2KOS6RQU;+@aFDEo5ktE%UH_+P4jGM@9|9_9BBzsLENhw~AVs{}24Ts&6&*O;69W zJ{#rNRemen+w0YPntmPqrRGntyX3I*h}T?km&@l;{a5vy(0|aw?4Qh@TkYU)hd*1~ z3gY#qv(X#jTxwm@nQv#lI-DQz-(&qw`~LoU`>n5h7pr%=sJHrdP_Ogx_?G`H{*U9) zSp9#JXEC^Mv)>`_=K5>+T?}tGoNmV7q{q;6;4Fr7fqG0+r_1c0{O-Ym`cJ7({zE>q z$~PDNKE0IvL+n4|KaKxH{A%OZ#X4=WPk;9O=$_l>C-FYB9?kLigI!a3JtD8?@ac%p zZT!zO{yX0HWX+K_5KbQZv>E=tna?f%)%bSIColWp3G0@Ne@DN6a1Y!o@%b2^KH|Kk ze;&T0@oyo{CU(u?9q@hFZ|c9sK3~YbwRI?=|1o_MUTt=dvd3EhFzpp%U%AcBjODitf%nAN`8{dHkMKk5Bl`;`ge$ z=d$0sn9stlBVO0wl}jD&w;x_p$4Tsa^UERL1b)T%eT#Qvy!(iIOx(5BHG}=U&-fpn zd%wzeh4Jt8Td-?tK8yW2S02lqi$mg;7I(2aRm5wZe6zT(9>Jp-9z)e5gM8bm=XUih zV*CwuoAuw*?*;!7_{ZSgV12g0X=J_v{ajY}8NRpT+Z5kF=;HKY`Xl))luvtj=ZVup z|62X>_2B-3$h!Ze zKi==XjE8@LeYO!lTul67-qs-kY80(eQ@Kt2_VS_}?J^`|RH$^d$Nr zb{XXNlY6yWZuhzSsTTif#=qcy8N0#k4yeZ{^(u4L-eq?lUJp2D2jzX8`7-Qg(p}W4 zvN{#E&M!F6W%+%kURUue#IFS&2mPMrQaoP~Cj+~&?$s;J=QrP6-XB~4YH-qfpXv(t zNx1P><%W1a7-F5v$YzU;&QGwXb}b?#`sj64UwtG4P=4$d=h?hwBy-u?A|(k~~k zmY)9w;f{ryi{DE1?#%82c0I(cgZ~oi+yU=#{IWO)-Nd<2oa69k!ry7Uh4tyrt|Yt1 z<#QaLn%23IbzWw^s`;tr>zRL0+`rYcj5wd_mlfxXx5{rFyDj|V?=+uPuYPbR z;qeI`H{rWj|9k6LPhHcW@tMdvw8ZI#!D*V#$o8ht7`n8s4S9zZ0 z-z5C$`|%rRe46n_bQ^k)r7PzBwK`s3;?Y>1dF9zc{7vG&1@C-*v*1^NKSf-5`-w@tjx z>Tv_T{}t;;Oux2^L#Nj-8{#~<)mqOKR4Uu*sre1C@f z0K7Wz7O*SBt`Ys7&rdCk|1F<}$9?y~?+NzZ_1oc-mtTAFzx4hv6K+}aXT_f>{zLe* z$7j5{U#;#V<#~~NWv%|L`fccc#2Le`3cD?E+rk|LH~v=lht6+9_k3gdueJWK;M>)6 za;kVu+|$q7KlzN0=U0T^R`J`4zh8f({uKQZ`d`9Z0dKDHD#kAscc-{@Togp7x?wJ9}dZ9zxk`JLs|YG^500ekjL%TYn1W9>ReNu=ivFAbsVmK zf2!a0@?LJd2m6cIFU5Z<{{7VR6a20|>s;sdEWmTG`3CIHz^_CfqesB4!~a=$9rVAX zr_sNv^K87Hm1l1_59afGoc6`z?$KxAjKTM9`Q(6~3;r?Zv##&oSIMi9ykFD5!un@d z|DX7;z-zXBG)2DOz`g#AJ0h2#zu~b}yyfEFKv$t(%IaQa-$EXP0J;{OM`Ravv7Jx-UmZ|;NB9nKZ(|MofQ z0r8&}zd1ey;2yQ#;!ka6wO&)$9fUUq-gJ0n;iboCBYiKNuI6(Yf8P8>>fBSE@3If( z*$2g~KJZb-T;D++%zR|33VOs`C+b{#0Gcxi?10|91EO+x$wyYj1zN zE&meuEMY&<_&}epJHantU!H(_C)_KwW;<; z3Ak6wBd_~(7u=uV*2Mn_cptE<7<{b56V|sG|GCy}0lT&A?vY1HdAw}ClXc1~-U#;B zopn#=_Wclk)9|Zle2MWZ*}VwoGB`h5$ENJsvnwcmcHiUHVD|vKeRN@Yua)ET@yCllU7b!_hphSw?9)v0p5Xb>lmD}DTI2VL{l1J{MxQ4?)1QoQCi~`; z{NAuA>jrm%`f$zaf3teKE&6 zRD@efUEdX_KOQgRagu*I@qdQ5S)BFqdJOK}>hO*I-yxrS&3Wsm-j%G&Zuq~!f0th& ze!r+sf9EfY`YltxSNYv!9jD@38sAm&X=}Ylo1f%7Ptw0h{~CD|lgH!wx9eX-pT@6) z&zE!6tpog5=u+_NdLL;h?nUChipSM>cMb}e{uL#;6FlN;5~1sI+Rz3L-gHrK|HU)bDX*rR+oC}u~I!A z({HO^k=<|fV*bCWS8ehCwBFa#@6%({;cEQa+aJB`j~w_urT>6+sbn4Aq6g7S@SBX^ zT6o>XJ&a#L{4Q`#CpuS)^#4(hx%hv9|08gk=kz_A@mG!CYu%RN(c1i@=I?MG8}TcG z|8@8;#Ak!LyaRt0{NC!)SY6JS$7ABJIqW%~!&!B{K7(6Do(tufOM5^$CmD~YxUn} zH$wkb{U_w{Jp5Yl>iK!abpP$~K=bnizuj<&Fg1&O~u$;ME3B4e@8XFEaCg#&}2Z*SeSf)_(-vc>7?weNZ2d zD{^_iVE>|Zp9ZfqyeZachIOg~H#7e;{72fC&G~iYcPSoE;ZfPXc`>V>Yq5KX-2`=5 zU_A%H%jbFfruW&-c%Om07;ZE5>|h^kmrwk8>YVuO<@X2sQO@rf`8SgPR5)wk{NVFW z7xuHn|JuIZs9tB)>kD{u;dS75%K5tspOV(=89YY7+sXfW>v5JI>~r!IJTLS4;G_I$ zzBscE@*6F`CGuGepNS zF2mz+_d7PtdQauFLZI9#_80?W=Y0I$Pf-tnXU9>cHt`{yFpW;5CL< zSiA$)cY=KTc`o+1KYqu%k@265&w*c=&W`uT&c#IIMe&=4S1I_H!yf{_zWA%`gQ0l$ zlJ6pU-KIXp&iGlC&wUreoov5kHU1XABNOm?53f;p<`?f8`gMNyvWtJO z=5aVJ_3zWKp?}!?NOtq#wt(AKKA&0diTD)9?>+OQ&6icT?CREA-0k*B8SD6sb^KP` z8ursd{e$+?X!8fH^Zop)^P48l_2OhX<997Q7faxG7k+Q4S26y5)W5v%;cvoguRMG4 z%gQe&{WPA9)%|DwKfxU<-`DX==iK+@SHW{?hw;ljhuVviiQT2*%vbkT>i&}T++f`g zS@(D04~O@Ry!yzi?s0cYPVaml*R8Gphfq#nPX?6a{yjCU#f_)&H0 zt4?R}AK-nsmUw5>zl?oWxa;M&OWg*TZz-QY#UGtXz1?%)iC0_QYOp^I z?^$`pzX`Az&xY(S66XzdD9mmvUMG!DHNFZ?1LMQxn_s>aO>`<5Mjn85~(s^m-`@mM> zr-?s79yQ<&vQKK-CzrCjon1M3R+8rmac{9s_nUv*eYc{Nd)@p;_;s_-isE||->2~J zA^zL+82S_Qz05Bar=B>Q)N`jg+#9@{|MKF@fin;8YHQoL%Z(N#0+X{{Y`A@~dH;8mj9GzgJn=zkqNXoHRI@<+~N` z`|PK{=_IdR@>&MxFMRH?E{$?|N5%gt{9nlL=P174xRT$?{EC^+V!k84$NAO6f4T47 z4$%L|VH3TW0(f>s^N3`|SGQc^#fx;kSqXp86NI zKIPQqCcMgte^#AxsMiwv?iP5P;N1hS8Ge_+c@9o>+b%CYd-15@KI*RS-(~gQEU%UF zJjt(`duyhCdHp}t=^=Uac5ct4%aFF(x*o8u>+$J~Phatei~p!R0z9kA|2{lMtN&ld*UPsM9{c$} zU>(k?*BbLnJYV1SUeOz$FJoUCFOBCi&!u!{oqz9t&x_wl-gk&!l>aJz3*fF5_Z>X% zg7-1Mv2bp~{|&sF`#EwN|E&B!a}~6K-%0$;>hQ37cEj^cxC7z#Wxvxt>xAd|cvdn0 zC;mJ2yXf~2r;hInx3a&L{rl>2wRNknZq3#0gnk+QOYxq8cW3+NU2*#0nMHoLs>jd# z9>Kpk{sY**>)c&uzKr#4MDO%mZ*Kf4 z``O(j&R6tUcq8HM$7`~>t*}qOcTQHwf1UgbvVX_;MEPIk`C1u%ch7~&?EjF*8ax`& z8?5j5&cl=TS^Rmr^&ZI8!EJko#XcTLpo5B`(fd+%Gf`quM9{m%Nc@$81@b>e^O zoMfUG(_77FH-D45@8rMHe#n5=MflulJ>C_k9J?O+U+Yi7=Q@0L;B&Eid?EX9?VoSq z424scZWhlq)yBXhNpJc`38Nc5*lm9~Z=uUQ7#XBXB8SM7z7u4@0-p8Jk z8ToHEKFjzCc=_a+E|<@2?AscjsLsW$=e_#Z>%Tz{p#QKQ{hYsd%}+Gn9Nuo{cbD_~ ziTd4g#^(VIkd(&-P@uS7p2|L4`Mx%cUZoQFp0)e_!j zc=vn0tW=ji^4uZM`}CLV@0RZ&bx*I3qwp!MU)OW~MtB>dp6owkpG$rN<=4Wx=e8fV z^54zBoblPlC(0|E_x7*FT_Em0es!JGqkd0symkIooo2G%XMULZp5`BeJ5#)Nejfd( z_@CP^eerK$|E)2f(Rz)5e-Qq7f8V4fy+uE>`j>!rNFC3xA0XdL)#F+97zU>gocr)> zgXbxF75#(nDQDULpNl_R{JZeI65q4tA2HvF|M}{>$NV7k=gEJ#b2p`cda6S?xJTWC zH{v_NdH!C%w|(~noYr{!h3{m18}k1V&UpK$yYuj%I<1v=bNlx-xY_KFAL%>f@veN< z;QzOLtMcz_U$$}Xy2jc|DBJ!^Sh=w}gLXe4n*1zO*mq$*+_AK45>1eKs2Zg8041ZxX-f z^!w5b1&_mcmZewnZ^-{H`FeWKMZp3pDeploDx;VYee`o$mvyiyyAr;o z#ce0Ax8#+ke<}Zyc+Jrtz&=;ld(SI__mArGAikHw{WI+8&*>fPIkN8#2xG&{hn*Dp?ua-~4;46>P^4P|%J-bJo z*KP3jXT!`0fb;v;9;eKx>{-5IJI_on~Zk+HhfPV}4 zf8zBV+{@wLr2mC}COBK*_jV56bPj64ztcVS0-S#4bK?1!y3}U>js8CUKJ07LuN!~M z_-MSl%QvgI`Nb_P?#1}b!)v^FhvhL@oZ|R4g?~5vWAJCddx3vH{(rEaY<-(KR~Nc3 z+p0qkJPRGN-}q&~Z<+m3)p%XwmHD3#Z@>KhazC!Lu8*)=z`mt@)5ZQT;hbl~>t+4n z?222@vd7tpR}9|c@=d4yC-n=%I|wfyyL9UHCB9SPUC;jn|KjYV8TgM<_sRHn;{ToR zeZIx>?%0?5uX~?bKo3&itJL8WJlBiYLcIR+yHx)S`+L|g73WXy1rOqz$@6Fl{&mHB z$#_NkdK;aSz6bx6_}}h){pEZ;fJbXQo>jj_>bFb%vf0Kc#8k3sO#?8A-bx2R8fIKRMofgXd` zGx#)+&okomQit;L%puPM`Xlr!;Q5*U3b?Pxt2JKf@Oc&9kMPp)xYs?}Q@&Z{doz88 z-&FT)3w66ioQuWjCeNqjIomqkuWk*@SM~n$8UB6kujX+7Vpos;iN0F=H^kYE&mi$X zgfrjxzI5@`jPC>Zjk90Zi+`zgJZhcC$?F>9#f?9JM=g8`!Fe4{QFc4ktE&6BocP<= zw`0FRyc^Ar!{-)!i=Xk%Z(Z`M%RcLL*;(Hgmo+G5;aEQv8nNT@?SX#j9vOr}?k(94znA{0ggAPW&EL$82~#VIO2Qz8l_V z>_{IL-CI4>nsCw43Be(y~(LNeu9S4YWnS3VjyOv*hb|=MO%P+I~j#uv+)Vm~o z5#3(C#jIPN*uT!vkL<>r^L&0EgkMehd}Vy|VV?ojxtu&!@Y^VEOL4oyyGC7y z@c-4%Zy&`YkNhf{KPInEaCX5tVGFgU*RZPvuflQPJ@Rjf@7vxV^T3@0_ipn=JZC!N ze=Yt^;QR__G@O_DSGNzpGyW=Gx67lU^=@rF*5cO;zYEl7rF9u;|1`5MmBiT+Jo!J( zzZ-u0)#+z;lhk=EJxx7V!@C9E%j#TMJ${teMtRM^uZ?}Q8h&H=^VIPxb-dHQ_|*Q} z#_o1@dF=OB%1q9$>~CYAS-fYQ+gxxShrbJc7yjkdkI_HV56b^m z`WO8p^kn^K@j4IAH1Up!SAm`zd8yAS_310$ocPaF--YTsgnbWrw3lx_`8LG&2fUB4 zFJirG<2Tj)y3;z>R_7l4FX2C!|2Y01u`6a@9TcaCemm>^w(~H8zQA*BqP*@?pGoRn z-}AB&{2$@(m(Os#Kb7Ak{a1|lQym?fqG?^&tiP)uzQgGJNV_7M>X+I;(bZ1m-^IW{}cPU@V~d-%RDD4`kr}h zKIY0-sKrdCV^6K@-clK*8Yl+`*>)a3Tm+sUA)-BUUEZDn7K{Ws!XDvw|Ao&#r@yo%vF8Q)dnHL~v6&bXWGgA(dELmi)xXIJ*$ zz#U>;>sr^Q*5x_4O}xi77WX$i?leBzcyG9keg9nEzBy{2oPawU?qK$P@Xw;Z9nb7= zpEUj;ySjMghw~PkVaD@{cOUz=*mpLc+5B+pb-wq?m(`;i+`{Y+vmY=2hVHQq@;FcY z)r*!Yv4?+=ULl>LkPCw)KIRsSOW zbmGjlK5xUh15OtCTq&P>jK3m&5p^$PJ?o2m0bUPU*S*%Y;TfMHy*K^IZymo2=;zH( zb6%kGJgiF4p@|dA5;XIq`m` z|Asfn{c}|RUihc=8+gC?2yPMYTR*`WiT_Eu72Oh#f7l(%A0OlVeGvIHlh32pt+6`a z2*(cq{0-swsv><_7xCW{znHjhnSUJaLHBeUah{jQHhxWwpC_M9^7#t>Liv884mVlf zh0fE1c;2HP(L=eH{Ei?a5|0P#zU-@yJ@&A-rD?*qBz$$yId zy-b|C{KweOQ`z5doob1@7vEC&R<>`}$Y+!BR>lj+`*C%g!2g)@f3-RvQio&uJ>a!4 zpI5zi%cG4v2ExA#{%E|)xgS=@yFUI`*e`z>zv7H%i}N=L&suoq10eer@M|y!?yEe}zoUgX#)5Cod&L40~WKUV#V z!Y^tcr&ssQ>fA*=zs~C2S^USupUdt=b{E2V>}NxPOWJKK_;9zeAU#>&gFo`DcUo zO56+Za;d{X{qyi2b%}a-Pu(Sc7x8Dw_Xqo}G`tz`hO)cXdXB-fojUEMuQ7fX-1=}w z(v|5K*nP%sEWdZm|0d3AajrA}ow|&mE3s=PkB{W>oIJjg$0YmVZu_B#`BUt&@bAjM z>T&O#IX!3KHh|kn{W6*FjAs_(XKj_L&Sw?-@N2lg@!v|<=D&=8KK0on|NQE(!@jr! z?_Qp>H^Dh+9Y(^*4`&4)ui=r~I{mKST0IxrKV#Vy60ev%4yk`j^98MATjS}BzhQi| z{C=ia&^z%wfah+w-Qc{fyh;}Gb6xd+OkUSGj|wdm8?9_W9YriBBa+^)TJU~{ zSDpW2`AmkF3*IaI2J)MsPW9C3D|iFlhmG;bhJSN@d7P`f#xL-5`S0?3&vBk_Hh-b{ z2I{auoj$dmbJRPh1-?ADXEgg>cxA-ra(u2j;~C+;tZe=U^VRTJh{vPy%dajU;xPq} zZ`5Ii{7dM+2k%-qCE?s_yqfWx;=Sj6dkoy0;of7slJQ~o;{MR9Hur>uI+QIE^DP=FN@y?7-c<9(n`a%KYEv z%fqb>Hw&Eg?va}C&)_xPy*H2FCUI^NrfX=_onK9n{|AQ-9K>|*{3p0)-egyV z-9UAFm49jZ7m@!4<444=D(+wW3yb$QyC3{s*KO=N<9!P6d-;8%KaF22egoKb#%l#W z2i-GQ^Z$bXul9dW>)B2JYI!u~{{jDM*6ADl2KsOLzGkC*TUwv8c;1NTi|W`P?`3dL z!hKP^D~d;VH(2*a#Ql=pJ?v)4w~TlX>ethM0gtQjJ5Jw7KcNl-)qk-3y2$1pwUP^zu{?+CmQ|CvGXLFuzu?}mj!!_n7 zm>(!k8F5MmZ*}X3R}Q>-;ZfG-kumbV+PYpZUIp>G;!({#{ukbB@b1j7f_(G9`CI>H z`L1>D9uYUE_lVAiJV(@RfO=i7USINWD^7d!FXPpXUs3Vvsbe#FZQ}o!`=Y@aYhnC8 zynnXO${BA3_Y(dKor76;mc?^=jN2b0ecw0KIeXpsVB^!QQ$F|fm*UPBw+6qT`CUNI zqGveA^VvPG4p)f#xIDYcb3Om2#%GFqO58E>n3cZE81QHL4$l*8w8ah`WRTC&^B?k;txE#J5Fi^F+E zyzk`ILYsop3b6?d_mnP~_Q68J&@3uZCtj{Ta_p0-E z^!@Z6{yq3N(*FhCQ}X#sKIN=eQJ<5~r}N5Z6#VPey$js_aA)IrE1uisd4ctQQ-8Yt ze!K_by&3N-JRk3t=gsnbOq?d-oPys`J|nHy8|w3{dY5poKBf-s@cdPN58*M4|ByI8 z@LuG%n%{oBu2hG)_-td>kzE&ceNA0UiF2_yL-4I-{waKhuI$Pb@Ou z!u+%N_LBcj{r>vd#edCna;AK?%jZ4z9o#qb<$p^4i=DSs?EA-l@f>=Q&Tl-cI4|Py zG`t?>m-GLIe=c!nikl1nXYt*H|1ou0OmBDp^rCN}2bHv+;4FhvAK!Gwhr16O;FSlj zE8xtA^PYI++0~N&x9l?Dd%yF%*gCJY&WF@(sJh*b?)16U&=WBudma>0VoGbZ14JQ}eCgwAE&&dJ*(X76Ir+bQ163;i|9%H{q zJ-*HF`yc!Muy_;XyN&;a{O@MBSl+kc*kbow|wf_+8yZS12P(q%}yOxzdc`H4EtrZ-uK-1c==_PyEX zQ^$Ggm{%SCc27((e$@C&><6+RX1u6#Q%%07;7*g*ET2Dm!p$b1~=<##DQ+w9*x{O-u^tey4l;lCf6qAqjQ zr4*bG;M~mb7k)GOo#l6@Jge(pBmVR1U6@~y+|D$<&w8G`E#7tfTf)z2-=$OEN7So^ zefJgKPt!fE_l|si&g`7rBz`*aAA$FQbt%N}O}q-j8ISj^__T#LOWm(=|D6YKBfJIH z;|I@^pZSeuUme~9@SdPQrTefyYk&0Be^Gy_{j^4XuEg_q=W3lenXShWcw>!^hcj0E zhmEH*UX$Hi?|JLg@uWKD7VoV4{U*Hb$7>nCI{XT#%Vu@StxikapY7SL_P%iPu(PUu z%jH{NzB$$HSGqdf={~0%V%OGwDye?gtKST9x2o3%>M>6}Ht1)=V-H@J%5NaNE8tau zlUw~~v1`QcP57hW?oRXj67np7#}jy5X#E~%KN#QF@co_rW9&QV@6_KY{zc+Hg#Sg} zE7BWpZ#+N$o&5WX+roWtNdDIwpHHt*hyMI_se2al)2#nC@!O04kG!Th&vW4YtRAPm z_jQz4bN2Jp<8yrG#=RqtHh3*$_ZPeF;yw+3we{Jko|)iIhTD!VZaqe*b3WrATF=qe zeT;rV{ciY_@;-GwyBX}WJ5SS`r{(s`TKlD$d~?dT0Q@oVSBl?I{88c;68~|$JL8=T z-ZOCP=znWI?^!;0pT)m3T^0T*_~YbP&3Synx>U6;FY)Vx#}VU&eGa)ue+Qi6@Q;eS z)H>Z}oj%30y7mHC5e8!mUMrZG5%33%zgF zWp^6RU^r#rWY>RMf4un{@v4P)M!d_ye>$r(kk50){;e#(+VZ;#{xtVpPIXvlKfa0A zIQ|vj9H-BRv&p@g15$|64?025VvA-6tBkUH4R}tRl=1ZUT-k95( zl07>#~8qkbV^Y(^)d5eTGL(d7kH9&uxEAg1Z>*t;fAn@>_~mJ$&xschb3- z3$K##G5jm4!#4GQ62D#ewNl5y@M?QL6~Jphza4lD#H%I0zwoSwS99y%#eO~^UTNd+ z8*jq@i2TN~zk&Vh`K`C_-R=YEYnWAMHbuOkCf{v(zmt?RkA$9Wo< z_z3c!Ij;%sp#Qdu&`Oauh=i_Fzm(T`e3dmDLzJbX@K zEZQ-@hdfW7BrlK`$zrmTJVbhC^c)~Xd=4E>Za$}9J*RIuryFOrmgIG^jcgkH6mt;W(s*t@myyBx!^sGePk)fPk=oa2 zM{T#09VBY`Dv3Q9YaRAsm)Jyo6Pp_|;0vd_`BwC4I=J+rJJVfBPtu33&_l>zGL#G>!^sFTnoK5B$VNHMq-T-5{O+b_lh~*8==o#;i9HfEdsaL4RxShHW{x zrRe`nV!o{Z`?pju_HQZ3HpEn#kBxp;?tdhii?M%Wg?$+kd!sz5Kq`_-q%x^Ot|K`L zc`nmMNii~zgkRi&$({HA$G^Kqs_;yeeJThB>gH6_hRa7m|?(~ zKgOe-jK}^-e50M%L_0W!eY6w%r0)NlZp|){n2&a1m)cIoZZn@qj72+{i}k5ZqK2^s zeg9u%q`5@GF4~EGYC9PlZ9b70i*_;>d#O8#bsIopEt1+_XHEYtrHuVsqE@jsQP)_D zsA)x#dS1gOS?6dcKB2=eboho&)-f=mpX{B==lZdKB3|GXJvUbDTsy{-cHk!Mz)sqM zpR^-J(vCPuJ7Oj6h?lg3PsB~_$5?7Vl|#&>@`!#am*}VRiGC`l=%@0Eek!-#NG)VW(qJN9of9{V_H_e^QWyFxM^cWly*`!#9zO=-v7m5j&z zpS0t=B<(maNqb;QJMPb9d~iy8NJ@KXN_$vJdw5EFL`r*PN_$jFdvr>BOiDZ6SAs*_ z*R@D;x75{+d;I^)yJAyz%}8_7g0v*9NNduD+(z1xc%H=C#F`{`Nz^`S9<`1d_a#x& ze?Lp3R#BshNQFwDo>`9`^g%zn;a*flhYP2i^VHS3aD8(GKOp? z`^h14gk0i40xC@DkkCJV?& zi+=~%LY^bvks~(4r{o7xb&Pj#@+=u{W9%otkzwQ2j#Qjz?~+;M8Io?2&#)v1DMu!f zndHQszAGa?kUz;qlYMtj@{@sNC>c!}Pm>?1F~hqQ=}soh#FxBH{NhwvrP?=}$R3o>L=41|8MplvnN|D1MjWbY()Fmq#bLSv|~+^c8-*G@Qig%=7MW# zKlrBhgL7&>c&GM*dul)Ur}iU<)PCfV+K*gP`;kv-KXOX#M_#G@$St)W_yb9jU&N1n z8{@H`Hp|mp`W~oYNK0=}PBx<#W0U9X@d_hYq|1BXlBx z7wy1{GZyD6&QhG8#6r|ayFAQnViMs3?^qUIdjQbOU_twwvscI zoTcOpC1)o&Gl|_UJR){-PU0*CX58VSqyO)_G4_1y_1NRFw_{JoUXDE+dpGuM?A6$# zu{UE+#$Jp)7<(`FTjW3jhlPrXl9a?i$lU*CD`;SPrRC9I5|;jtGUFxK6BR_fh+ z(tFwqP8zY!p<|sx$2y0uLShYLokL%LPRE`});4q^ zvCh#BywHIcI`BdVUf2X)U`1U5D|EyQ9d@C^E_7gp4y@3D6*{m&2TtH6?F2V;f_<|# z)Bk*jH8iE&TDuWxN#Z+|)qvKJwPZcnKsJ)iWwM9F zJIg+@pBx~slY`_9@-{h4-X}-M$K)6}PCg-@lF!IV@+J9-oFZS7Z^*agdvcnbA!o^F z_S$TTL=F)n-l6^^!6U}PH)5_j*Z+Zz_+c0GAz>eOQG?(eHj#I{m&I80Bgd%EBj@^2 zr>H~NCGo;O#-qRSoQ_(Cf7nJl<|5yi5A4V<+L7x^BzQ+Za*eqJE3jiMuwp*?(T*B! zKG#pilm33=;UE3aNrIQme{C$*FR&83Z?$7SbW(%h7MzpuSgWuPu7Qz^f3Kb7@NeIL z_ro{%$9Q1GehMB@lO%TNi1Rv$Js9oXWIG9;edpRS9{VZQH1=pkHOs!AEjy)dsff4i34lYSP!7288NK%V8w1d;jB-+UyO^uT}p4bI; zaE`qnG2;9r`!={l%+&ED=fp1R6zzm#at>1WTFk}xLnLAaX7pn`_(z`WNW_Wp@Qpgf z8H#vOpYV(MLE*_yx}x3!A`A z`Z1T-CU#*HV+qfs9rJO10yA=n{g(6tGulyuSet0aSlC57e1q#3=i0~U1S966AA2m( zfsy1BIB|wHo*PSTM;_t-?=$w9vEU!`fs^zDEAGp<$HFgSCi^btq91D(?POmhbqJlT zb;i}MjWup(BRyNDP4?@5BKnYMfIf1g94Q+7UBpOYQ%(12^IaUg)Sx z!Y8!U|1%dn!Y1rPClZ{a9Xyh;&{5-LF51ahVwa4?c&tHU8|`E)u}#Ku6|zR>=96~d zBzq$4lXl~jcI2Ln57myEN1mze1n++vix{yU5j*M-I_i*c2_5sX=VCr|%!iI#LI=0d z!7Fsww;^F4I_yJ-edw?c9rj885jN2e9XXUDVIMm7*AUV@MIy)ABytP9*eB7C^ASEV zAAV6E+xb7=jR$V*lc-l;68svbNW>4U;Usn6gkAIlJK{upGzos)&gsBQe8Mi;5hvnB zJ%Uq`PmG5|ywJ@_)H&9t1sO@AE`c5Oj2y$aW=cEmmiX)w>leD*IUV;&^y3Z-UGbc* zbWX>;72|Pdg$|rDDeVL|bb=l21V7qIjA$ouqMgKwb`mezNz7;`aRWPv8||12KG9C% zhEC!}JBb_ZByO~mxY17HMmvcc?IdpCC2^yj#Eo^0{SoVSO9r25$e?xq-BWQlH6z!i zi@yuy?lfL$qrH;e+R=09xJwd=y%6od`uA8eKFnO~vqTTiXx&NZ`2D8P{mBH9j1SQM zl*I20#P13mB1gzk@)7xxoFdo34VxGrlIg!Pj!u;c`l&KWKUK!+r^-bAR2ie6Dr@vp zWvzayOw~`7Df+20O+Qtp>!->b{gBz`WG)>t!-?N`l<4y ze#le*lEeBfNupoSPL*f%Q{`>_M8YrHp*R0a;&<0V_MDTwbV!WF@3`$hC$G>Uubq=O z=~QW;9}>R<7jcUGU)sSxu}N*m@6sjXsqNsAjHkAPZ!(_R4(`c#YCE_lb6FTgRldumR_MyW*bl8Uu`_Q+L z>qyv#j``3rA3Ek^E^tD}e9{gb{lJd7&@mP|#>eS0FJSI{Fn!*oThs z&|x1s<|~mH4;}r==X4c1{6fcg)pPyO(XV-~A3FR)2X5$OKJtxzJ4*Sr78@kRp9sbb||IpzdbKw{I|6%Vvz^tgUw(SE5NKinGIHPSSk^-Fr zxg($?6?1^5yMflGyX|g3jDXoOpko+k45*``7%+{fCTlQu~km6I5iE$8u~583jvWo66BmXWpZ544xHm$jF*m$jF7 z03JWu%i7D@%i7D@%i25s+-^M%-Ttj{=h$#O>F>A3m-^otM}0yW_Zx%p$;KxqdSzk# zvhgV=`L~=p%gL6LTid#wz?>&zNI4lt%E?$#PW&i4{>;7QWXs6f%i7A?^#|I?+R56< z+R54_eW0y&vilQRcH6SmiirlsumY21a|K51fuJyQZ zyFaj8(*LsC$!C%5b}rCfcKf&TnWvvzzVu^A6`0?NrbO*uKI`8nn>C0pLlFSlj4 z{rqxUcH0=;mfbc+w`I4@m)l9+%%j^$KFy=sNj@E;Zp)VUbJlG+@o!oE>r=L@oaD&! zfbq!sku5L(Pj8=j_(%C^J*FH>$#si*%gN?dPV)L&{*rRZIie5tJA#D!BU>&R=lXP8 z{n~P3V||G%C-%ygv8=LoiSNW$V&k^5Vy0TUS;=NHjxt>{U>FUx)K|=J%Nbj8-dCT* zn(UKBa*g8t{y_h&Wy`8J-bAmQ=o5e1D63Cm)Lz-#wAL$oj3j=N<3jsn{3|D8SUKs( zL{92;TmQ01;#W>=@c_B^dD9FuO_4(s)E zQlCki2O%eZl00c+ouh$1)XUbXKlSccr>~^EW1_X}_ph~MQMa}~b!+=HZ~Av%A}79# z!5AL_iEexB+HeE2Ef|bE1Z)LHfQ`{@0=(C}Ha5&)PAT9KPa1vUet@Y>sl&jAl-me& z2R%S%&;_guI)ScWJ+MCL2AB$yVtPzEZr?e}K>jUG>XVb$jm@}?-?)w6`2Jo@+pxbk z=nuTNIRFd=!@)4H57-t&U?j)@evW%hD7!s2@VLO^;pAG<{a!~V*OP90EtyZP9-%cpcsvj;+@4xM&T} z39aGrA~FLUhr;ir!sDVfa@lSTkB`>y{MZ_PR=0-NV6EY?(;9vbw}$7L*6_U08lDGQ z!(*&9l5H}8UuC!JA$#mXIkUI1TYc!++=643z!6U1-pUW!5&~wuov)r z;&JRbg-6xtbJP^L5=;eEpc>SGX<#~-0esf7KR5u?0iToA1E0Y)f&)PlNS?FILY@ug zfP=tXa4_&Zcqljw91f1=RJnw!FJ_i?oi@?ReIW3ogH-U4boX2rDa8AU9 zz&Rn#_gV}t2TQ<}z&ReyiMS5j0GtD|4BQI-|C$fy+zjVvI5%iY4-x^|fd2{a3|vTa zE&^A84B%Q1m%tZ;%TToC17slw+^OI+@JFx+-NRsITjrdCcd$Jh-UVC)rY)g7{8z9W z*d3hud&V}rAGi!ugQ;K&_zUno<8$EY;3#l8SOV(6IAH~_oevh4h z=JVixV$MCj*ZvGoa{u=}yZ=!iteyWF{Qq}+HYa_tcI;!QZ|(TK?)XoNIT`2W#8m$+kL+4tH-ejh zYeX#rt`~MIaK7p7;0|ynSPoWzyTIMx9&j&6*1dWF`9aW@di1M5eYxLqmjB;&{%?Q& z@3{TXJw9LN7<~nB+v1cVo)z*C~u)bZvWUvJ6 zL>$+^-b3{sxA&^O|Li?i?>Bp|+WW=cbM?Ni_eZ^V>pffVLwm2-`@!CG_CB!ps=XiW zeR1!DdvDu&+1`WpKC}0d>%lGH0?+`GdcE&!egAA-Yu95P`nL^$d-+cK=o^t=nr`*Uqu+{jEIzJ93=l^zZfMzoQP1W$$^*-0n&r|FZYJ<($CY z|90DZ;Ij9@W$%T{-Vc|(CocB|UWalUI4%4AIgv|S$z`o%zvm@36|H2y_a*w#t>iJS zWWUQMHr`K9#4RJN8o+?o5zzE_^)hdOyhYWH=)kvX3035 zp2&mIljx+SZ2z9^5*|RfPSa&4@@_hbE~0ZbHc`iobn>`U<9^y6z5QgL={J#$J&}*6 zU5V`bjEQVriTvE`U*uP)Bhl|pyOhtOou3jX;y?BI+_!tXOsZ{&a z@f|v{)i#ZG?%-FT`Sju&$zG}Z+LXflk8S+dAuXMj-WW$A%N~Ir-mL&LHRbO`tTw|p z-(*r9coNi;U(VFey6LA>`=p-{1XF&mi{B-{(!D-G(&M7^S)?Q9l=kWKhw*hn?~^B1 zsZL8iU9+5#`8#bs#T%FU4zx@CF7*oa^7}vOBSZ5ppgntTgu4OO_UGUDm!0Bg<`JH{ zgN>+*Ut_}hsI*15RA)2==^84?+6HKoY-~%*cVMsE=5`%g+7=v=e(Ki)xnsIq7B#ba z6YwvO*w#;Nky?=|UbyPvRF`+#w8!#y>@fqKusw;VZIg(hM`}yr*aW}!&nTp>>F4%w zKiQ%}Y&IfCeCSY)Ux9%A+l4abmERj+t6O@%`gJ(>#?klSEN^dWlSIa^Dk`u4BDl~z=lYc*bJXW(}9d`fNZXwj_|g=`#F-#d@jYSKaa1x=A2D0$ztb z2CxZ;1Kt|R01T-E`i_LqC%xSRc^mYWH!y#^t`GlOx+_yV;w~^c%MYZBI;Nv*N4F+* zcA!i=4Aol82I&Xfh{UlaUAkUco20~YaW{6w*0isa_MYUzm#oO`VQxl(<;^AyA)WtQp)e&q-{I*kVQtLVlu6S6)*>z7R>gYi9@ql6y5B9M~ zv+Phe6aM?l;kH5Aiy3XlkW3DTwyEC8mX1s6dtLJ5cr&v-)BB7kIiS0S({r3*>scop zoIOH+#beb&s~h{`t&T`q+N$<&(mrGKbQbq@9D5H+cAzJ;wRDG6M!KXu6KBPdXmoCQ zD)i49JblK0o+NC29JeD!-~6;i+EY);7`bC3iG`muN?Tac@fnXjM{IYjwU19h_E21Y zopfo-o4a@6U#LM{P{}tTv!+>lS-qL1*lTw<9)q^n`sL!6KjO^OuVYAOGK39X=dvBxC7m9AnKM;<+Q$^w zD(>0NL}9e?pN6*GanLqZe4B>Pw6P^!`7iFr_-L_}9n(=HN1GnBjQ`?FjnT`CxGs-? zIGi|k`!xP&v>oOn&T8z#40-g$M_QZ%OPgJfU!}N~WGvX+I6s~VVt?@{vv;+P|Kf2{ ze9ot|?&3E5ct_e>JchLJ+#1JhiyiTnjH8Or9`;8E_Qdg+Xh(6cSw&P&rwO)m~C&zRPjTriI%B%y8h+l6%UWtPaQCO2+E zlBVMGKEvfrZQ~Pw)oN*XCWFi^b^hmGyFMO@i7yirr@uX6#-7}#HwS&(MQr?BS}9I$ zmvl^88&Mpy>_=Zbimf%?N@74kX%pNw{qYdT6(5Fb<2GxZWX4lS;@<Cxt#(-HFV2SYg z+$Ww6lM&aJ-nA{p9*;1kIP$n1p0wJgPq~)%&nOc)vDTx1ai1qzYmRHOFOoQyJpSjOwdmh=SyoHN$@1?QCth$rqQEb>`NxI$%Whu8cL)E> zhT|v6hdTGf=R7^xF8|`pB{jyZKWmOJdgFL3ZR@p2dc=B?BO`82;!SHUmNL=RH?4&wS9@%BNoFTQ{-zV9cZoE!%fJ4nKcL$wl%#DmAm)W?TF5=OioTf{-d zgC+Td=3;2+8mhUKs{reW|CHkcA?Yx$isHS-6DL$o60RmGAE(t=;^e6}1xBG=d_`j9 zB5qmyuY*gQSpSPZWBGNPleWi^6#q2uk@#RaaXvyp(rIzM6i(Ok%PF@>C+{R(*!9B@;ej3D{VvUi+`{VLS!jf`!+{10wPrbsg(GBL?Lh*+DdMw-5{ElBf zM|U+>>MyfBpIfy`D z`=2QDJa;y_(7uOg|7vXSMZS&p)iExr$wNPG)h(xNCi3mnGZwqH^y@HmAHT(~2omQy z)Z3f5Hpbs0>>JmOeU~#knfA1$e@d|3o_+VT?+)}^(Rb%i|L`s8BjVWwo4su-b^Gh5 zIppI_+PDX0dZR1GZZl%qgBU(V_j_h+*@+|_|g3`$5(G+{2lVm#Je}XRua#7_&OaN0kVJ3 zuLl$7i|7w#|Ba4G>N%Nx8I(PYd@UfKH*$QGkIDJVKlW=ssiLNb0!` zeOq!^@jkx>Ok2kg(?BqsSUcnY4UZS}?Ik-ELQtYn8-)F@1 zC~@z~{x`_$P|EcIM>lZAK^xB}&KZo!S7~Q9SdRTt>K;wqeW>%GcKoU^F@4S$D@1=i z<6tm#t|EV9;cEPRME~B&7{~!15n~?Z#$Cp_g?a{2wlDJioL@Ghk0!BQLOr?cTS|Q2 z5mPq4)}u^>?hoYhdfIwxIqk(7%Vxo!C}T z-xI_(3*AR=v`L*w8@{8?T^nAam8 z1-U7SHilIvZGeJK6#4!$>`&7CNl%XrzIe7{3} zyTM;m=0WNmO529wYZ5ju;j1UPx{KI8;5_vzx{oM78Jh;$(T8&PqFVrNpq_Q$JBY6> zxxbS-kKqpQ0@`sOW34}JZKUjce4l~sYsB&p*oZM$Os@7|-(AG851fggD=4=uZGM${ zZzu29)7E1+&$h)+TlViqOv7k*58~U2?d!o!_`RMsTu9j~iEjYo@elCr)UhRY57K9s zl7|ne=MeNWDE|m!HR|S7foJ;XL44VbCYb3r#(54i1 zK1Gi5$j5B<{}q255?@6(#!Lgh{>uJyup0^wCYBU=DaK|L{&P6KrXY``9Zkf0HQUYD z_92G%u|E@=4Y1FoTm^RT3}Dqg;@p`0v?1>);@XK^-bS1HF{ZQV>rJqmNgUg7?%#nJ zw!qI@*q0L1lazgdTn?uVi)q(Dj_pz90HK*q=upo+Z!6)89Lg-<#;aAK3pMWA!n(4!^IVUx*KXG5Pdf z{2DRw7MNr72hz8Hpx$h9dN%uxVY?l5%;7WTI`X{{c|D&x9wpWlwCf_;^(V%~EnMpy zLY((A9%qo>cj@;xu^CG&1+;A#c$2(+M*VNVjrhHedZ*(1DEy6}?2*KLE%}{-d=)+? zbZe8UB+gIC;q&M^5Kj^I`NVxKu?)gyIQ0!?dknT85Kl4n`Br8wb!?CA)s#Dex`xoU zZHRS??>Sb8>q_DnO1U$r`%cRBCB7nTkH*if^h-Z%zog&a!`Bm>$A?nS@7Ujy_CLn{ zCB*p-{rEclJ%X~|liNpWb3QQ*A$R?eZzT7lIYvIgrhs$pYxtXrkHOf#!2Sa2|9${7 z3ebH^`DV^LlX+hA9Q&Fny9)kde?AL{;T&w*(7&5fe;=?t@s$!&SI!f=V0#VuxRyS6 zcL~?$w7U&?xV{J150v`~KQ|E9ZRmOt`-YUgpZYdMo=RRyh<6Wk%dpSu1>>g{AD7U^ z)r)y!6CX>6^U&Py2M{n4EY--68nV0-#3pSq60emb}i`A7O{Bg!4wfIZxgI{Lzm^xyTg`&MEa zMP3f1uFdgLNj$mue41Pj$2O0=XAAEU`*E_Ig@$M%d(f35f$_HRSKOd-y5Deo^Ce?ks6pq_ik z%~*IS{o9XyCB${1ZQ&fSJF!1OjQ7zW>!QDtIL{+T^QrSGe0IX_uqXJHb8@qgc5Oi& zd3^qK!{4>|dyIJQBbGO*V;Xf2Ctum@-<7hT@I7G(F?`JUtD>Hj=ZCB8iPx1FB?EU5U?a~nKK z`E0(ET+aS;h-V!8yJEi?9QoPZi#|uLrp(jCJ%@5rX-7GEd6+r}k(;Nn?@SJ_W=!{_ z|Gv7M>uYRxqwJm7j%E8`&TVU`{|?Fw%;Z{xde5cI{`mcx>xj$o@d2^^j@%a!$IZl+ z%b0nIwq>F}lD6ifA5DH=1PE$sT?zbEph z?0=D%_ovR!Dd(?m@5ER;5BVF;1MAbyx8VNNeHyk;GIrtEul=@;-uCZy;x7@BnmA z(RWRZt1kHXnmATre*|Noh4Q1wODVBuGLG7ihaHLS5aQgLwtR&Bs9ees$Di^09cAxA zw=LuQXg-T}#{N;Z+hKd_V#=V;w14rx5m<~qoBcVIFQLBYiG36L`#^N(6W1%)?uX6g z#I`NmhPLd-{$a#agUxi>c%yNGLVOf3mcF1ZZ-bHSZ@PrfaPl*o@wp!7`3KQek=L=- z&A2#}e%O^Zu8008;=P(SbU@w|zi(0Zc5pr0g&f~kGj<-QFUQf|PdP8NWBiRGrkRY} z*Qjq4dD%hV^u>#`<5b4@Zp3>mv5!L6m42KL-$)+LApYgp9?5nej>G4PXLIU#7XE-7 zR?@~z*nW$?zL|bIsvF!D(V!HynONr@o?4Bd8BZ+qiIeUxt|H$~Sp{;+Wj!Uo|ivM%T#fH>(6R~WG{yqE- zAt%>xSPj5-d&{DG4x4lF`|%Q17r@s##PkLBZ5Us7Fb=b5YYzG7h`qmL?rI`$v;6{b z+|2$fC_fy126=d&a^KSaJ@E4k`kC+!@Hk>!L_D4G@g8NTkn=Oy-j8y}u>V&4JV$I_ z?%yVL8L=;*-Pf_dKlXoxhhVoa*9Cdx=Vovl``dH;EMVL$p?})ZH=og#9cbHy*ndP@ zen%{CP}lnSdySa4=A7^j+s9J(DdgysUVJyf&v^ECz}HIbpQlY5lIM}+zBh60g3V5h zmpv&{iQUJ1pFWiO4!VTT{!CVOpnX}`^``7F>ivRtc4M6GM$S(lZ!b{aD&p#gO(FS7 zG3Lr?OIvb$JN;TpTRO0R8FE+rKZ{*AV#&sK67}xL@!cPJF7Zym=bp4qoh_;mz5%l;dq% z_TNE1mxEXEkxv{GyKyZ{+_z)*1Z~KneVfzIo8!Cmaz1a-zsz`ei+IOSKAXHAg>Dyo ze}s=w$XVDAz;+bJ!Q+(Mo_*Vrx6Q$$#4;b7ZNXIJJ3Db)5c62->cesN7y5EJ{y(MN z>tpjVeUyo>%W2b{@TSCmHRuKA)7O`vZ%cib5yvgqx5Hn1w(soBbt}H^#8(Brd$4a2 z^$f-?qMmg)KRiQhb2)ddOFJ@%?a$=&ZgSCqeD6wZODTI3{r5EOI<~=a%ykNWw!`lm z^yRIz>oRgRj=08lYm+*QF?Ab#wt9PxJ<3l92Vgr3zoY4gZ)r;-$Hab=JsUrVpr1=0 zw(rHYF}6Dp$M%cq2dIcod#}gz5MtgQ|Hly9K>U?) zFXAR_^2y04+Si4#K8d=nq|F~uz7D%G_C3aN_%bnZq zwin-J*#8qb_ypUF*>^fvhk8H7Z#nzcr_NDeDmm(e{~?sSoqXI#zjS|`>sxG>VK*8c zM?UYx_tWIMoW9wVzGxv2rL_GB;(ZpMr_hI)eu#3}_+HI<_EpLpOdGn9`<0A? zsnoL`w%bw9Ma0xdj5XA;H|1_(9A1QvoAI5)cz7I}UijJ?|94@VLq2A)y^K1?!~O9y z9NRioo`^4n$dSww7E z)VUpT9R39DKwil?a3byf0^cta$3SeyvcDa9yOzGZfid{TVy=maqmYS?2BH}8dKaXZ?b5N&OUwm{$ zK8)k6hS-+Uj$v$nNSRZ}?_T8ZZF1a`b`K-Q4QN|Feli&&W#r~2Vjax>EcR!z?{j>2 zg2xiqMsNxFslaX|`|qP|E0Eu%-Ir1KrPT2Sx?<|Pg?@O1Snea2FEJ+ipc_D$gYdJ4 z9OZKT_YnJvIN!cQxhpCE6#Z~LIU7v7kK_7j75$S>oduM=17BIh`!v3uqs|e;yA}KH zVS63Mq-@9!W0W`DtGvZ5oX3 zW!kVMycw}RL0@&p&#siMC8i}@C*4o^k<{~h_VvYoU-sXI?mGJ6Cd!ScZ*HT$Y1EsI z{wj2(_$sBY4cIQB?h)j10ORr<_WcgKkEy?y`md+&N2A*Y{E?hCk-vQMT?Ow(xgz5K zl=dxQ|4Mz~b5CLzPL7JmZ!B~Zjb-n z@tJQt#M+JRI5523DaDYG2?NXorN8;`_K4rNDE z=6cH9-I?zmjdIlh2M?QZ$(3w#wj;I|h^-&_7(`yj zVcQ0~2dMK2Y)`@N?Zq5NAd7S0XT)^2N3QZ1C!103Fm!E+ zw}N(-Jx*>1FlI03yiMO;&$xP$&$H9WS1mrAl{1pMUnYhD)bk#;quG9tSgWXiANnMZ z{NIJI?J3_A|1Z++t;xZg*j~nG*JbQ~gtqM7i?L1L6i|L=Y}O;z>uC=cBB@J>@lAAJ zV0#HZcBbC;U;+9jw)3dFl=kdT`S-}>>BLu$?KSoz<-W&%HuVo-|1$i&hy4NUKY;kQ zC-%X}x8bLn?W3_Nhx0l1R^zK1^4XMsf&E)h=f%{yJ!AX=w(kQI(e2DQdJ{jd)21K5 z4wPAk+*Ogwcl@iSYx<_Q3vdVz`t#3drM3%6!5&>xW+Zffyy1=}O&pJMWN6#K7Ydj>ws(2b{UKj8CDY*(^>H8Fg;J>vy`BiP=KxRx)b zpV^*H*~{_QK-r_<&&k7OlpDr&DZcX2wL|_9f45M_1B{U^(cM72@8Nel;yj7mzd)R? zkjss+n|%r2bKuGNUQC(4fOA0>Wl!zJy=!cDoe_O_A34Ql2@otH(89P_0yp|Yqi0={nw#7#d{04F4U~?eH{D*9x$@tm;+nX2D zeqy_XG4URKHUay^90NtPaRIrhr_5mb`BY->L!AfVdtY>eu*;{8rHqsHY15Uo=~>E` z;QL2-5M%r;{2t2wA>?;7Ik*j*PpI!K>bjZncP+MCgOl;I2RHz~S;k0R!#S_rg3Un2 z;$QHyg7%kU`!TV#&@ZcL&s1W#9e=~{Ka}?D$o_2V+X-K%;bR(O{{i~`A>z52eGlN{ zLGrpT@fK3gyXa3se;)qE;_C~1=W*`ai5x}vJ&=5k;Jh>%+ncynxSQkQ6Rt~g$<0i3 z?=Rtg0J+a2KbO~+f?7NPA5jhx)|32^zjDc_9K{Fa=)(o0cIlaE7Y1*KHRh3QC z8wNGiOs{QjX_`Bzxv6T<^xBpgv!)KLYM417tEQ?dKf9=?dTLQkRbh6{pjq{`RSnfO z1L_-^W>(hK9$eW{+fY9sb70oM?Cf;mM!eQkwM?E-**s%lQ#02MeR`%>;M|VWB17@# zZ4Sxw>qAhAupFK~0!YJ`Wk_cl&V^$bq@kX!Ny8W2^e40-yQ;GFk!oso{ z0hZkgYz-{84Tu0KPxS`L& z&tk9_u&sN8DL{QCI2fou1RM_39|4X6=I7`D+j|T+AE;jxU|kmkSoT72F|b{ifXje- zhI<;;wFF!N)L$8(&#S=IK>bp14bacE;5uL%uMg1Xh5&uu2yO=Imj!5lOMo`Ff;)jW z%fYii{c{28p9fz9^?wUc{|&gAB&c5o-vZR%3a<$IyWq!zK3T0(`zO)87WAv&w}AS$ z;g5s<6IiJK6kZebCfnyFj=4s-8EDf2&jQ9U8=e#N2g8R2`EXcha|A3bdlYsT} z^~b_O`{Upfg8oEUXmc`rL69$kzY6l#u(0gk-~|i}?R^IBvwPz|0UkuBsLz6T3-X@u z@j*TT7Wz2}J~_yzz{2sc5Ei~g;eCDY$>{$MSg7~2Sg2nP3-x}_@E(WyyJ4Z;c}ULj zP=6mR)H`QPsDA)n6Z9US?Liy#9pH|@nAe4cf1TjYz?i$h!oRMtARVdoVBz2Ta5tbI zpOO2V$a*)2T?xcLUTI1{15-Z*xfU41{;;sF1K_%#p9#B~hkwqw5tcm=ekSOB&f&9Q z^{>D}pRdBgc)aKC{1I*5hTj4HdGEqG1?u02h4vr79|!#>@Tb7P)$q4~G^W0TyBjcn zK3^C5*#I6C^nTa$nUVS(;fsUb`N2zr{u=nspkEGu0PH(I&-|>k?3eIYLH{-UEilgS z;2(nC?+`-!pWu!7kkF6USepU$yGQ17#HpYN$32=5W} zez)_QRQ*2i5QKLr;0UkINH?7P$8vx5Flu+Q)GzX*O1`1cU( z^`H7TU}0J3%(mqqRqy@rBH%IWoJ*nJ`+$P~({sd}C#HTFJTmBg_Ubca_1+(Ht|tGd zzo+?KO})>=CI-E8n4CYLeh;`Z=)JzL3i@hzUeM2nh4u^JBZK~E_{1Qe0xt~mAK}G8 zz8qc}kAV?hj`MIUCLiavoe1WapO&{SSkk*QS5(wF>p#ZxZT@Vc*A4 z?{h%EhpG2_t8?y^eLf-3*~p<&x8C0{0;E4?^{?nPQHVM`s53bKAm^x zGZ_8&3{|!61G5kQ;y zu;Bmn-1sAd{%H8jApaS@Cdk*pw+8ukSmI49`6|KhuI>PNuBV{If{0W9k?NS{$@ zGXdT^=;y-=f_xM#v_A$uA;>4f7X|rZSZH%8yfnzp4-)#n7QQa%eJ0^E81=Wq!m`WZ zdxCr)EYy1+(s`lUuY_L+`j_F?g6ym0n*i;7*JU%HeJ?mS=$+3k)aS!Od+)aj^@Xrd z?;Hl9elR=?P+j_Y^eAL)#=vz!b}payeYN+!D4~sWGM$&L{%BaJ_nEJAx6~g8pBVH$ zyE-fAoy*|6Y}(ub-wQ13y9`48{qQ3}{}}vYkXbDwJ?BDu=hplFoAy4773zK0#JTb6 zz1J$#J2%s3P3pZT@B0|)eeUdBef1+?-!oLd2khJ?^?Skl2EFe*I!8-=CEOVF-Z%8U zO!c$i`9be{Z9=`z!+eINfA9G_ms!2@uADEU-uux){mHO%Th;pxrBHt!d~eX-4-0J` zg@y7;crjb&j$HYZQavqtsK0~hLj&hI>5_1+tQD(IhvUkv(}VBtCTWmstMJ9t7rtKj#8 zel`3pFmJ9v)fp%|56bze+OMw;a7!ya7tr~D>bt|60sUvd2L*W^d{mH~bK-kX+8+xq z4*K--yr91v7W!EVe-&ibg-UG!(*9we1?tCV<-W_M-nptiH&*ZSQlCAm_dPb>0aAAE zq0q*;dCpr@@4OM;7gIkH7Ph?%E)Q}AJQHZ&2)6`z9=s&TOW_BDyb^vf$gjd{KsvX* z7_&e>&L{Rg4eRw?OyA#7@4F5{{T8tE>C`*-QmA*ny->dg?A&AZ&ZQK}&eav#IA2hx z_c^Qc>eV~{#5s=YeMic7Ak{n1(&riKoo^+S=fTGVZ5G032YC^EWsrR*%=c)t_o0CA zH!3^-HV0VN_xOZ*pZ5y&&cE~7s(PP63H81+CDi-u$T=zMeO@or``mtP&`*T-53dc=N%ceEF+o2LJ}$@$;ah@yJA8kToh#t`ah81w7W(x48{aop@4Kc#y>pVC z1Fimj_@khA9;#6P3H(LSe+diqU%@_?(~s}jI^R?Mcd$^O;@RJwK-u@AeXm0sA2w~o zLnif`!oLr423#KG(eSt+PlR_5@}97;?B1|Y-WL|ili|aHJP*D;$Tz~b1^ISZc#Pix z3(MXKuL%0P;Cq7pKKPL!KMFq%EV~kZD(IhuUkdUo@M}PuRq#ha|1tb&(0>kp8T4Pn zKLq(l_$QD)|737(2Yf81y1?rJ&*$sI!kD|k!uzP*;Xc5!ePLnQez4%tOsYRDxSf*P z4i;P@q_&3zmw%}Nu;43LY9K85I8P0Nh4=q6;auQnRvugmthWpn+LXil0rit%VLVgd zYG7NY!Gf>wsp+ubaw0VY7TnTJ)xv_ytknK+1F&o(EW9UwAS^l|x4?6O`h(#^0JrQ@ zhr)*g<2eEr+RuZJ2il(i{{d)!B78E?ej$7g(0&p8II!(2;ng5LwzuNC2Wa0G7TULi zI|O}4Sg2oD4*Je;&!FEB7W&x;7TRwNZyNNQ!M_jsE#Pf}ep^^*AHhODyr;J^f%;TGKG(L3^|RqKf_xUd zCdjGnc~%9qe;fV)nA;EGPlDe0IllMrc>5gwBIv(`*8uHP1L$|4pFXfq9smpFOn7>b z8{ozuyAFU@51V=LnLztR@FhWB3||%GrSOeGz8StF$jjmTg8TsdSddr3&j$H<_|+h< zf}J0{9(AP#ay|#PWgdKXkpBXI5o9M4JOkFpW;OhMkkbr+ezM@apwEX3g1!(Q8uY{95kX%JpBeOL!_K+X z|6ky9fIiQK&j;x|!;6Cc0{FY2{~i|F{{XKE`u17G2`rlhpB&_c@SQu6A#{&Hv2MhJb!w&`hO8AK&KLrczpMhTp^5<}y#j(CEEUdR3 z+&<_#z(RdTxO33E4w6vc72Y=JBe-|a_ko4=_Jy|t#_9V!!m^og0nnxpE&?5qN5aiP z-vZA8mUTXsbHcU12fi2R=P~$&pkD?1Zk_ti;h%zj4J_0IcFVpcC>a z*fmeo?+p7sS107j@S#DT2Rk=U8{ZecHt1a^L8$kA1?M()LUwJUWk9{_g53%_A-e{T z@7Jln1AY{ALVg^6A;_=7Zw2{nSZMza{8P|70jV$Ogx+;BoUf~mbHy`*-t}#qo2TA+ z;JHDc2j>Uf0>gSOD60g4Yjn4|wAsXTZIK+!r1g|ZO}XM?4svlo2Br5L4FwiKFFz6+!y#RwrPZ42y*Is z+6eUD6W%1qzlTK+^sdJttanSeZ_xLHMF;f#;R!)M5gzs2tO9|kHbR! zYWRns{}Emj^uF`y+CA3W9o`IR?>t`LpI4s=PYC*nuviEEPO#8^XIQA81Pk@M!b1IS z@P0u*85W+Grofd!KNYS5wznFd7W6Yf(HZpeF!`<=!@aK zf_`tfCg`WZcLe=i@clu42!1@sPr}ay`9=8UAg_X72e#`C_$^=zZ^Q2d{d@2yLH{lM zW01)Z-~U{E)Bfh2&mi}O2M2j5>~DZ*GXfqLo<2JT$0}JD63k&^p zgmZ#i0FMarNccpc{Ymi2LB9|_C+HW!LYtNF4?v%;5h)zE^V(t$)GvZp26+`Mw0Rx= z9@vkmcD{!c+Yf+u2=YXDR*+qTz;!ax{^4_j{(SiEAU^;<6Xeu7*no5l@MS?>3O^O( z=i%>zoNCV;XrO&2TovR7_~0NP3ZD?<6XDZ>d^&takk5iI2=YbnH9@`(UKZqA;oE|o z>cD*Wj&Z#s;a!6~1)d({dGOIeJ{DdY z^<8~)xDG5l2f7}V@6f342zLp3*Ie-ZRQ28Af}nRz4d0nmKLj2g^sYA|)Q^PU3VPqa zbgd%w@4|&$;(CkV5x_V{!fU$5dKQ#OZ3F!CeFWbRuxwv=5HRLUxCm%97@o|#TI#33 zhXeITz?TQT?;g5NiGHqx2Xza6;Bw%fYk&EEyf!<*dj|bp@O+^E1@O^8n`7WLLGSxK z!tvu8qe2_kWGo1J*Ftn{H}#|7aY4T`Tm#I*G`Jz?eV1Hle<0ix^sdw7njPwA!NPi7 zbHsH@)w?!>>+`7h-C5W9Q13dSz9XUDcZPfyLjA4qilDy>7U~~`h4w4q_kz3{{x-K}z&uSk2}p%&^_!mkDW>+qLB=7siD51@Td*mc*G zeFw#NYc1Rt2IwN=y?!oz~z_fCcSdGIkoe;h06lC9@cReos4})DhNB_P9EY$n{r)%k`_dQY9Qc!mN4d3BZ zo(KzN-;))}`@&U0POpW5tj|W+HI9{8h$X$ol=iMgo8N5aKGy=&F_o~?S3YV(ssN?+^Nw@C!kn$9s>yx2wHtvbmm-_O2J>S}*Ed8`yQB)w|A&NY@Ly zK8N}h@Jm7Onjo$%t)2yc)9cV`?;3utf2ZCxC0x@^z3VLs^{!he)cYR0Yec9ohRcF} zBD`mir@(c<^Wi-B@}PGOIAK}WL>2mUT`Hm8^>|%tNWE*IxHhDE*Vh&5edkK3zZqT@ z^vmG~gUkX#sa`;P-(PmkVeMU;*Y|PNyB?Ekji`6MU!mT0PJAy`eI{HH^ekkRUaLYI z-&J(YLv37xSEzUG1J|2WKLi%)7r~zgc@5lwcV^Xhl7rk8?iu8b;EjX4DeO9Q+Pe;* z>pv*F9+B@eTbJv42=%^?E7XsGU3*u(>sSf(WpG8%PlWdj@*?=sAYTr<#(`yhciJ_E zEbCfcu2ZJ$TFJi0t<5S}sDB-H4Jq|3c9Dj18{`f^8`l+cO#=14AJ;kPyTI8&@B4~{ zLGSzjgM;3++g$HNKO^9ZpdSSb^%G&Cf8YIc%{KME)9ZVM>i2|QqeJ~Z@bN)^0(@rB zp9Kr;{{){M^nZpg4Em+;H$i5h$JDw&`_8cIOe(vMi0eCAmum#O=8>}NRhI*8CcvhOy#eyaAar6aU=J#g2|Q14ptLcQypxdxPa*HsYeUB}V&hSjqmcd7$WzpfnQ zE^ua$UBAkAj^i!xIjUR%3w^qFnovIx-ZSW@z%@ah4$lbk{;+HI zTGq7+UE9&Jt_9&5cfbqEAo$K3cQvjC-{X}@rAny%V2Du8J6Xe6-Q-VCQp7k0)x{VEd zHw4PAk0A6v5qAA1^{)BiJG$!s2%jJHtKipz{01!Si#K6m*|%U}+10S?sHE#{8}CvlttZB}2+d%i&VEBN~${|NsSWENOYZGBB_GZEf7$kp)lAUDF_UmN`2 z#+oibpN;ULL7oR67vzQT*+D)B7TWucxWB1jTh51t`bF?X!22^S$dg_ZUK`iGsQ}6o z;k$wMe92FJ1=8{pe8vIgez5OBD^G`Ofo1oHT?KJ@%Yy!L*ma<_zY2aY=--Dw0QMa}tdJ@O%C6<&dNkUX!$SQk_zPfNENGhA4XB?2 z9|Y3+r&-$=DDMWJ6Xf&Y^MiaLEVQ{8z9h((!B+(NDtK9tZ-s^Sx5IY_`ChpFGqJuS z+&ReW!5ap7WB7ML-U2QP@(_4b?pF84D!zK#m~n2#qf(kehC)l;bnNk z=VF_UV4;3vczn=LfQ9;r@Nq$ZJS^0o0N)k#cf&&cJ@CUp{}{Xmr0@AWkNiShFN^D> z*HN(V3Xlf_+v3{jbwK@0xFzUk!9x9P_{gAleFmZaX!s97{}=fDpuYgVI>;w>cT-;g4-5K{@R%Tv zhbIJi;Tw!|U|H8*5|&*Ke;D-sj)3bHsb39$8}w^n;pfPzce%#`^z$D4VURzDKMC?` z_@^NAg9WL_f%i0A%gc3j_5U1P`hKi;y*bweP`@MG_))As5WXJxcZ2+KtZxGk1O5$% z*91L_3Z^~<{;h^T1CEW);Wa^@`V<)$Pii&S&p?|@_>Vze1YZ^8Yv4PByaIka$WOpu z1v&K@#}{zCb%DD9eRhWj0&_J87U{a++MwSbZV38D_==#v5*FIO1GoJ=_R}3666BHa z=pavocM9?pxCU4@^##|%U&rz*@JB&j4gV12)Ze%V0<@n8KOf{(@P|QO4U4qTZ@6~{ zl)J;Df;)q^u;)>dZ>9hT8tQ#Wm3T}^%8e*fCi z8mydARa4(Gpr)P`Hfrmq56B*vJuox9s777wRMygnGBcyhtSB=(%FKx}bEC|>C^J9G zEQm4-qs*cxvpC8ui84#0%(5u6Jj$$yvNEHrtSBox%F2nda-*!gC@Vk8Du}WQqpYGR zt2oLkiLy$gtg%FcJ#oU$mVJj$tv zaxw>ZiziE>M$+_EUQJj$(z@-m~mtSB!# z%FBuJa-+PwC@(+CD~R$6qr9RhuQq2da-)j8s3JeAD2OTwql%)aqByE3i7HB? zin6GpJgTVRJL3U8QSoqAG#=R0+%jwS zoP*{b%+CELPx%M?4`sEP;zh4h%a#4c)X!#NpX$*ymDM#(<11&@)W(X8(UT@k%$Si@ zXVjzrXOr7pHKS%`O-4&YLq=Ug{q&ldjV*ICSZs*Q&T6XtS>IUMGJ{iUb2IwNSuHaf znrg8Nir^z`B@s`yXNdF6pLCYG@cs!^&+~kSEfZ;`-{HX4N#!9T&H$IB8SZj?0FP zP*Fv?L1AMe?Fr(~Wy5w{Hf#`hDQ$6mBR@~Q#_Ag6*4yetH*n~ItjPrS1v`OKkO#H} zn}V)@AH7I@*4Q)kDE3V?2hOT#=BUZ2s%)&RvSZTS$=Xph|JpGyqot*h<)g9(7N$Sw z;^8%DW@TggI9S=#Grd;Q%N);sHYeM8>&9z3CELT;=D=WbWyYi#O^nx! zu?!?{Hm;}Q?v3bbBhM?dEHd$ zYFaJT>1MU0;}}$D95(Fw=ANku_`QS*dg=dPT9a$79L}ua;HggMZ^M@OJhB`0FqJg* zI3QK&@x2m$0`%?2yppC``nIJZqj?5dIY6m0qt4!K`nktX$Je&l|DWcfvX17bv(Z#J zXY%ZtDk5Bt&$0NtocO#x`)5xnVdTf>sNL+(_?pbX8!MYQv4`_iy03rPSJhBIn~S() zZ@QUu`=o|lTAIq6ni`rWH#XJI=GFtTBb$7xk5n%Z#UYGpLOre#h;(*YSC{9G5-^0DRB=gu69wM{kEzyVe75l1OTP&%`%N@j4H%NScT9gCf7Dw`YXn{5-vUq;-a z85OlPb=A!ooJ%vtItUfURo2f*oYjq%YG+OQSie zubRtg;DDOyUF#d08azMPh>UU)+u|v@nw*-wq>eFtW^xR))KoS$w3Hvz$i6uJvDcj| z`5=okhPruLty=yh?rP8x2}P_{oJx&H6(UDwx)hM zpM*&_k7}r|DQ&2qR##iqlB6kg%EYFIgXaFD;Ze+au(8F^#-+~*>41wl4(G(fr=nq2 zeKnmiwYHiB5uE+^bItTv{E>BVO|_jJYM)rchi-jr7$gJA{Ro7C>7|JM}(ZEn^9y2ZjH`T>;p2Bq< z56raLfL+oDjvvakj3V;GaX@;SYg&?x@eRL7_30#eK|yEDuE`ivAFdo4>f;pERF_f< zy+2_`!gg@**|5u;+Lo#ren_BeX{c(bYqp}=`dR<17=PtwnDen`&8 z&mwy!A3QjHyrf$1V=82N8%m#3o?mPG1-8`{9^5naBK#6~8N32s1^V*O^U-Ud_4cZu zYoYAx$Zvo*!CT;MpsnS^J8Nyf8+1!4`yTT9-~;d>_z1Kv`|(=apRld&qfqu!gNYB*g@E71q@D=zPw6^`*THD{St*)A~-@;5Mbt-A<2jEoB7W9SS z2jW@|jsl|rAKiTG&zQm}W26oqJga_AQ)Oe{ep50ycUIPCOrhJR#1|KF(D+K{jept# zrmi_{?O*(?|NGw=m~!THvs6d0F6ab017CdiyTrTgn9l+y+pZNjhE2aabp`8zf9*Qt zH)ESTb5;wV^c?L?(>U?)ehBgGMZL%K-KGFewr^m&knQ@KIg`1Yk})h}$j{dvY@{*{ z>zRJPuRrXyU{bDx4{EO+)+hdMpgZ_yu4k(8^Y6Z%S%}Zp*E2g$tIEmADM}yEyL0;C zWa4zHpRX-8KyGc*dS6fW@wH-XWy^$FEfc1dc&=`aPYu8Fu_1P?%WcFqC!EUa%9ct_ zkeifpamL&y)+;+EKJ_$E@$m)<&0tm#5~%&ar+n%}5*W9k|2g%cHo6YwOy zP#v&K&2&FT(j_KUPM^T1Z%y^2Ih@jWjW2}4^+s^{tJpWeCsi6{QsuAqZ_55w*$AiC z^7z7IER{DGw-C_OSuHi8IaW`A1QHabbq%HjMJWA?;@5d(dP4I3uXILjU3I7>9orZ_ zZ@4y2H=%Xzdr>BBP{GH1oPuA)zd8G}24-dr%o^2rP*(b%%#fA2HI+@(m2>@GGlb*g zAij6pkb0UkTaPxGZN^h>%hb@+-l@5%Ke4*%Go0-+i`Q;o~DMGWxw1^XS!Z7UtLr{@2by`se#(&cLjK^mmPhY16nU zm~7RP-IxAal**XjGgV1l3xMa6WGFOnA(OteA!bf1X?T2v{bM;2nkwr`6SMSHptnM{ zTFZVW_l;)Gnwe^?-x`~ll?SO$e=DgGJUzKNS0CD_sY2WH1W+s;< zGr|Cx(J-rt>Nx_M)7Qw&v!=#EoQVwg2QfBN(M($xF6f!Q?;Z-L7O~wC{n`%eE9)C# zkLi-ZJXD7LKXdL~h3|j&xwq?)zdrZ=d&f~@d?p>lqS#Y8;JB4AXlDE+dj|DRr`=P4 z_gnUwv`b6%n1&S7IDQ^Oz0-Y{9`8R7p4R*0G4@N}`n{o5|NeaKF(G{`bM0%7j49(8 zwc*<1pqX{)tH?ov=FFKha8Ay^hNkI*_82#IP*zb<;UEWVGk0)mFspC=e;a0JW@Zjb z?;G^5j5|?P+$H@tB^zWSxq?qk9Lh z_>mK7@ii0U&yiM+{vYDr1TM#>dmO*_r9~T}MK_XY-}il?kVs@{-?XPiWouQ@Mk+~B zq}>v!v?3BxmXalVA=(h4?SJOF@0%Xa^S+<=_x^t0|M%`Q&75my&di)Svz>G1x=>!& zWnpJ|Y=+TftcBe3AU8{+6y)gZ;s`QW*D%*WUq3blK;*!BJiTb`ty|zs%}Pj2u8RS2vGP z+&JU~mcUJbk0|efD2gNru1Gke$$)(YM&V#zIIe*J7oFgdJmvo}uc8yDYk(XY^WZVN z#-7zqduS)Nh}gsl-~ynIbHJgxvSC>WBbgo>M&fz2&;7MCVE`pS6#<+AZHB!O#Ek> z+JKMdURD{96syLsG7|qN!-73!{IwX!kat0PRQE>k(OCFbeB#X9c>Us&9!QV) z1l`@AxlaJJz5hC|BlNNl+Er>YWMuyT=xm@XFdFEBpsS&g+E6!lXsa&xjz0d_cmTmr zAd)$63-${_{XcyMVCp!az93s#7z%OFK7UAq#-b!Rd2qD-OkTGL_V)fg>me3L;&osU z=sX4znu4%~Jyf^4h5~0gd%&j`re*OB_Hlw<_P~yz%=|DC)d9Z}l*29?m5It`azV{bhdJ77W`|B)`IDDosW<;6-#?^OxtS!#tQWTxe@6q!Io%I33xi z6!t6&492eCE2xhuYminB(#eBc4KNBT zfMd;4j{mp%8AZT_e#kov?!VPZ{44#8P10ZWGn!CFH9SK<_(Y206lMG|8`v9~s)8OTfo1qT7fya?t=<{vif z@CTgDg8#F6W3B#O`Du91LSLZvv*nim!P((|q+1-fd$_~t8{0D-hZk-l`;C=AOSB%b zVGe-N8uPzgS5Q04!Fm-ChAO+_pa9MR>J$v)NfCT?@X*#T`v^LaJEX#LRKxf^#6@*+CiXZa`%`rZ8l9tRlx z{&)BE-mamp0T?ezA7ai~YoJbu_p~HzZFRNhZ#FVESZA<#!D1a58319ssjI6kr>#BT zc(u{Gjg}^Qx^OaN=iLtZ&|Y6g=J#9=8*ey&qRq0CE2x=V8L&xw0%f6fx*vQF@Jqo* zG}E3BC9un6`AiS{kN$yUm(B8-9`+yo183sPmQJG0x>+D--K;=kiS1hcAz|iL=6b}oVabHDH$fRl*Q5vTKjnXRzFx>9 z4UP@JhOpK&7|CDJnG^k{Sik?aJ-=oOI8w;L0YTBtI|zxqK){HNnXMU2T@sqR5g&sr z(8JdaN2JiXc?AT8MCXeymXcLaQAhPdKg8qchti^-3)92BhqVd)cu{A-FE^H%Qs0mV zgCjCBF(3EpD_T0?Wl>p7ls%m5V5tBj`0dLDk z+?qe0uLal&+`2!WTLX-2j5hr7+y>x{;5Pm7d^5mXz}bRxWGVQa{6NM7XI)ee^g|vx zcl^T!?r(r8UGLFp8s?>B13^drlyRI{XfzK<7T24jKl9wn=lVQIVZ5wLGmoH z7Xz&)(z68wZuRiNSPVA~`9L&+!$W%zUj_R*!#2tttQf!^gDDVWN_Q~X7)zz%l}<3p=g3%hw zun!Y#V`OCPa0QbMQ1?LNgMS%?B8@1!IUc_LAc_SEA8HbiJ;)I%;mfkP!fLb?q@v!_ ztK*G~te|;t-ok8!kj<302dsb$Nmp5SSw>)(4@Lo$ZV3`0%J}(uhhdFoH3%}Z>k3u# z2=-wjf*!+!J($!84*8CZU(Yca&~NZ}zcD8SCyc;Mi4l7oxrRdb1v&*_yAXd5q<&@E zk-2~onxl&g(4Hk*Vz2D%hcJ!6JcNn_-IOn84aEweraHm^1ukJ@nIeKX4W5<> z3Udwm3+x6(xB&b4AgfqF3x-D^TVYCxFe=hCWO9$2^!{XO$I!F5Bbn+Fa|za$JqIXAs<@4 zpa7)w2m4sY2(&{Y48zk+37SO zAFBJG1rGJ!bQskE4Ko-Npx|M!B`VmW>xxc`$gUEMTwFu{ zu>`n9fZ~{Rd=BM^0ltIakgkw9U1L&SnB38DfVrB1+0n3W8FAova|N(-*&^^!o$ z_Mm{?7~;`-iPmDoOMj;GhrOCJ3@N0&@P@Rgy}CdsL~}N*12C%J^zq^g_)uT6$C@96 z{lW1|4@+1(SY;c-(qRAt6%hV94I|oqKm5m7ytaZhf3S=S5Tq=yQl>$n`>_>ku zg@M7?*32!~n%GNIzGUUWE1Q%P?-oubwKq)^+IbWst*byhfZlI z4y8qNGHT0QaOg~i(jwZRGatfG;Cd4jVBrw>j6+(K}?;65A`z?}zo z1Y8uj?cjXCIfJtTrwwi)xLM$6;6|WL{ow9_TMi#d2Zbo6#%5ovVJ|Se1kAB|>3-WuFJbAiM+IPH^lo@>|C7 z``*Ui^b3He1@IzXDr41~0&596ygM>jI~i;v1mw;$M1p#8pUD24@h8p=as!x?-uPQ$=Qb#!nHa$vwsLe#e3sX-P1@o2nc zfRDxjJN*uT(fX?a0|AW*cJ2OA?!Z#iq8-GXA^}W(wFdGa(Fq%NgfOZP8+JqCY4C0c zqp`}4&x0^y8e9!wv`1pczk)F8OE%mOVU!Oa#T(kGbBGFxJ%yT)pb$C`*WnH$e-yt(m>y1P_k_R2qbcbQ}cnbnG#mN)t^A8;Rr+mWTaAuB9SRnA`xmqff}G*!IQ|)UqEvxhC+d=&~Owc z8L0#+87fS{1NDd`0-25@5}6bwQixPKl}3YJq~oc00-cP9BALVmzNFLWByJf29Qp&q9apob_xexM%UX0aWaLL(8O3Gn@S8vNmbY3LLhoz7xL z0*yq#Lpw-78#Mm{8;GrK_ok^uqh)_@9bhx8HM$AZ|LSED%`FB6wuv}oD4TCFn%Dwpdv$00;40=#RJix`*6_nkRI}|h9Dk>8nl=SEQPT$ z&<;it3`gK0=wFx-m}~;PPNTt$fVc)&8+AIc7|aUL9^h6NXV;*iJ)7MX7`teOn z-*Xi6BVuF?aPYg!?~M5|U57E>_0ApSGwgE-hTwxlUJdyt(u91#*YC}iKLP%MdDrS5 zg0C#`)r-pr7x7XptjWL#m-}e%2IcKWxE2d{pDU$CIGuwIJvOh5^b;?Jik_WiY&rD$ zVUN%X%fHn(ipf(7HjM;l%ja7ej<6dOpXffO2;G6N|x zK#4(sc(eg-0e2UM6ax_Ga}#k9F>nl*0TY?4A31SpDk1QCPQTBw3n3MJAa1B^?`8uZ znL!fHApRAQK>#o2+2}H$?mKX}@X5#zy*}dVIXHtd6eWSzO_!w~c|n{|pT#5B6ST1Z zYx@IQH|g4wb9d_IhAR~iCB*tH2sncglscCKze_fAbKHZ5fa8xJ#mUX$Z?=5yiF0nvr^QugiEeses6Audl=J04>sG;`AFiJz>#V=u=#JbC!G zMgHea3@DHkVFLroW)L{Lx`)ZRz#VK%oAmcCaghbVau7q8A&=89XBwRaL;JB!(*lwIHEyVgEL`qK7eQVOK$ zVdDw?Pw{{$KH$NsJslAnPuRc21EM&VfeEndDgzsPE3;+x#%9aR)>%OwcK#i#{A~CN zz=&7b@DB*Dn+E@cFxq^w<6-v23G9|S*>rfuA21RSA>k4m z9}-+nFCPh##HYn0q0sdDMgyz_@h?n-bcpRjZ?BBCP6CL#)tq%haMHiDd#nS4S9jMn zjF*Q@eH-h>V6KN=215teH}H-3V6gUh_<_@6cax;Y`!P5=%UVHl%bEwK<0BY+@n*s4 zl(KC(j^pDPd^=%qVaS5)4?D+6Q>Z*2t5E%eX02y3#?j{tKw72GVQ|LH zMYV0my$ChoP!*fg1j!S#EV z_=|`9co8(2jln6^z17F-UlgQF=3{W$?x6T~`{L2!$ubOXKU$P>$lv(VwaE$$_L{}h zI66$*|6;NZgDVvjT&)+KyYpl68U~kz@4VamTJOlrsa6c8Xh|)-#=E6QcB%t|AEX9) z91#~UF`Mef;2F1Y(Vs8IO*l{WVDLvFzEl@lZ{41$ehhAnxAdd8)+HX98o^*`*SW84 z1gq{{m>QqL864|}iIS|J-8Kc&Zy5r9P>|O7{S*>(pr2FO^^c*aiP*djpPQwpjfQII zMb5(xc<^fIS=5_5+YVn=$9Nk=r&~VkY*XBmVudO7;d)I(UunMj{Z1eB4Ji1TEXWd+ zSiJgpJZ5wZ$Gov?9SSF$2TtIOvG}6XEs5%`&(GCkYY|-abuAT2rrn5sgpC#W6qo2W z!ylry*FNL6VCik%2^UCvtV-p^qqPad>q-7XE`#_di}BtVY#uU{b>yVa2}67k2JiLS zU9mHi{&@?27Y2vSc@~z}v#ufpAA`YHuOHo<8oN0*6`zQ~I<^@t*R51q%J69zd?EMn z&n*>8({JFjG5C#r?veWArq5sD^D%f)qQ+C@t4B|b(s-gI^mg_$>HkJboqN8U~*V-SXgQ8>7{Y(2Bt?tmg0hvT1f^B%uR?HRZ() zcVEnXeU#9R!5J6cY_YocxTuoQgTdOyh53(n9UZ$%=*M7QrSdsK^v=0A89Cs%gf*iqhh*2J02_z^9q z#|+6be>v2hYQ%>#IQIocU<)rYmxI^sAjO)C$98mc#wiR_`cA`u)+4n3v0F47VAzTN zg7yE1U&f06dyVI#1sGO-OhGHTgsuPo4=gI#Wp@K^M6JK$W^H<=5rLiO87mJPe*Oo% z5H^!&lh2Nq0C;+PxBLOu0laKl`Ue27mxCE`Q)v{f(Es zXEBj+m0{zV4|otA*)Y1eiC`1g-_Ouko}LC>=9>;n0;~vmWTfQ5K+3|=Lf%AP-c|nZ z-T#-Z9b69ufhD`#aOe-TKXQYcwf3-ohFhX89-;Q2QifL#g0hU^?ST{z%YCKmZLm{;^M4efbj7AYr^ciAldDKx6KDrV`ZAM()N z4hb944?TyfU@iv2@QN?ki3iTt(b4%k{Tw90Mk9#92td}{OB^^DAii}20y#KHb1)yG zFs6JjgmRH0;xeoJ``~i{{2Y8Zvf&)S{i`&j2Bx4FA!6545}rX9Vf96LP@VTeeUU9& z95@F0?c|W=kOq&jo3UGxLsFWRp54B9NcXqC0ok@37@MK#dKZ*|`UY4J+h53s!UatQ zc}008d1ZJJm8!g&yt=%Gg1mx)f}(rgVWq65tgft~BCn#LqNt*z zqO78#qN<{%qOPK$DzB=bs;H`@s;sJ_s;a7{s;;V`CagAa1?}vroqP`jOH%vA~n zt}tJ=!7|rkW@VKNZ&Y;gb7k5RVPh0*c>=-Qg{jo}Yf=W_LAwnV@TI`#f-whO4YKY3 z-5<`NCZ-+7sYLj+Y?HF!AU7FxO)wL|?CFpV6?!QV(1H0b zxZh0j7khuWz;u;q6k-Srfaa0uFzQb>ydL7^r@<<~vxuhbc;`Q07Z$u(R#w&)*_5z3 z3g+U!%-e{U9N>EoO-utQN$^qMv*$b~S9e%t;02h7r6f^c30S4VERVVvDfJ+)4dg)z zUN`X3+~x^B;yE^sU-ucYYm3bF0$v!U#XuS}baM{7{mhVLn!YT-YQ(NjHsF!~Tvx#d zNjB~l_|UXpxc`yBtodRT(xUkjgylF<@c))J7>r`j1!Bxp3n^l;O)^gW8q?qj$@E0P zv0-e?0*nLMFlbE(AiJf~`8Y&4=W+>g^UmPnA@LIV`32~+@q(l|__;(OsxV%JAU2yp zlp@M-%HrjT3Is)bA)%O1LMo;GB#elzw6yM{kS?@h=rXlT5Cqy5R#<(c(&n%mmVELLyWXlK7KIiiWa%Hylur@6-_bT@v3k>HDvgJCvE1O0ub-NZo}tNsgI4arEjRDp zd-V9-I&*hvIpGKA=Yf%X^=FlS=76frcJQU(0 zM@*3;UT}TRA*#_Mx6F*FrbXN)bIj2qa!}N1rZg@}5a&GNCelWFMD!dHj@k5;q=@~L z(tIvKl0qIS@`(hMi%gCv;EnuB#WR*tAU25<(LfX?@^Hg@pzzQ*P>)avptc}zkU0r6 zNW6GH0zX-RZzg^gL69()TZAl16T^$+JxN}Kv&3>j9ig3YkI=!@NqUuMYv2c-uq>{Ska`TmzR@Ung?>RWTx_JeL?hfCdUvl=`<-2Fj`ua5-vRkl| zOeDz=-H3QO*@!4nq5_WyNt`~9EJZdZ%~%>yLJ=p4lO$=%oEAorYV_G0v^iQP8boIr zU4AxsK2eyA*H`jd z?&za#!JHA-_OEp2j*;h`ol+9DEbmg326ZWE3q^v%ltYp%5Or>|>k5(vl}{hB#Nkm| z%)_Ph6YnCGc<`c>86;X{;y#iWnVU$b@}@d0qX%h6eB%hD`Oh-lfri2c`rL@P$YsR6 zhCH)kEX634h)yZ8?tHwz3{i+gh}0M3(Hn$QjZk7q0aj5ogpzxurqdNti*2$clbM;v;esLrC@%7+*YGBz0(DHZZ06dyI>RyGKwUh%S`>;Y`Og%SUPq?6>KmR_a5mkwHDJJj#+1J-$&_S7Emb zn{?`R@%)XqZkTUx)IAaY>P(HiF!&R9{tBiNNezWN4Y}!I$;fa9o&~u)NKFQx1 zGkU)c%TKO8p0Q=`5beB5@ftfNnfm&L%jzz;NhLgw5_qc;5h{IpdzrO7V{CSULhIT2 zmbbN59uoA@et)U^v`(Y&Qt<}!7opGgu5fy9^_ctY3FXs1qFr7kN`5-qI^wpT?$u9p z35cbn<8CJ=-7LO3M{Ld6i5Xj$*Ib?$8rJIg{M>Dka6Lc4Cn$3=efz1H4J#bJ%U7{Biy5$CGtV*hMLCxz z+66L>ol~*4wfC*CcB*?Or+T31x@dHX^7no7Kkk(3tTn3O|K78(6Cd2)cS=Uf)w<-I zSC+5pqWL$K&MzC?*YKeun{tIC#@D0v^06b^rF|E17%%_Cz37(F2Y<@tTTfj!#4f#) zA-TcMGnGP8ujAJpSR5Qt_qqQoNsUHs_Bx#Oep_npN7=1P&Bo@j-%swbQHa}Yd`NWu z%Q4Tv3p-XGJ2SC0U{IFnN}JmK>2aX;Z? zN#1qIXCJTXu{$%|Pc=VLt~j%A+fz%&oNte%-{15lpFLituz277EekYhA_@&`{Rw5H zWI2a(z0dB@$V)jos~*zIJD;@HO4BVq4j+m#9o~B?`8v(vYwe=>5(DZBZM+LDK7Zq= z{=D>TiJv4@+IQK#S7$1?-Ohd$x@8g;^EAITYSqAjmg7l}Ewv9HcI9siKbb3ev4;AI zr!I;_(QN&YRp@n^JE^PRoQmH6@{(2SIlafNU!UAu zuq8$Ow9WgiQ`spz`WNmsq#t>#>aBJ#PweU?I*oUs%-B?l@v^-a_ZKQka&dH&{`fI< zVb+niuf5mkDW-7UoUO&uN4-gP4}V;!bH;q^_(%_Uysvz@-)$;I@KivNM#HMZzD{p4W%Q>4ZQD}#TV&?zaEv8~i^PX- z{TXqDGpA13?d`6B;|o2H6EyN7EUtaLG9@Nr5m#os%qZ?A!|9^i`KiSx7Zi8Rnme;^ ztfDFu6X)L6R{tWac@Gm_iu-Jl zu5EeA)+f&KjSu|Z_tR$i){FyRH-|qtw$IZtIA7ze4Bl=>*pZZYVus<`o0J%z(8#Zk zy23A%L~A`L*h%YcdH71P{f@murwd2?fh_ZRV-k15^ImFg*&9x=&dMG9yv6VGi<^(k zFBHsM{^9cS61kCta~sB!MIG)+JQ4r&Bu(oRTYqUot9nS&xxRfMQv9Nz;O!H>w_LbZ zByL}~^@PufXWhGR(SkejUbaDHmdfRh=0p*3_fe-6H;MP1@lB(~<6Q^0>mL5Nr{xVFJ zr7!I<{K`K*Yh&g$sU5G3E~S0WIdood=Vm|MO`H3@Z+*!=Y?$3XD1C%ns1UH2Rxck@ zZxtQAG<2%jvfe_$ykEPwU(!WfWqsplzUn=@GXkbOX-67VU!{i#$HnaZb|h0!;F6wi z%*LJ8uO)jWf-diQw&7j-zFxT}AB2?H`q}y0hiqH!59>KMY@%?Us;elr@(SKT9pD-B z`E+Ad+s9XFlFj@Z&E7w#@A;NJ?4Xpi<#BCkm&`Vo{v73N(i#!xF0_|qtO`r2cfW4% zHDpkO^6Qv`q)h-&#CB^`~960;!Vyk z0`5B0C3tNf1l*UMzdS z{o4yg(`}EvA}Xz(o_r)ygZskLKj%x{Z=I33t-+8$PaUzIL*~as?Q3o^biXc* zcZxlfoIMy7u(M*%x+Io<-Kb>Y>MX}&eF|btBR?XWpLeA7zsCI}yX^V$LtUFsJAw4< zL6Ux5^m99Z^<@dOIM0}LEHAe#70=k7NSQnMBo7>*c-vo zb!ugAooEt~B(>&erD#zBIs%JnmmYZx6X4 z$T4>6fX!O?F!V zcw(2Q<)#_Ar>nItPf+fE%DyGCw`Z7-_PD@YzCPYm)_B6XK-6cpdCCD<-R-mbv(1l9 z#wn64k~e0t?FS~7=O_I4E`RQs~!2-Dhc8Z8me|M}umk z-aS;5PoAlH1%FmdTXn7Ho4iE5y7D9OpRQyrzTNcJxVyKia2Ail*NjV-N9{CuOP4%9 z#rKrI`h4BH;mU8zJ7xu~=XrQg(Cx*?`KMi!H=7CbrL*i6l=~ZSkGacljcE;eT#YlW zHY^;}U%kdw=O>33>B175xBP3C@|`?Y!PWit>T4dM?l$%=_J30|xDzDDk`OUe z9dP2PW9-BF$;lZztvFit2FID;Cj??u?d|)dgDCay*7ju>jAs^-)T$P$^DURoEj&5C zMl1Z@b!@m*=N&lM~06_SI&- z%h~oHKU;^IPCnhYscO5X*OsR~nIbQPH<>QU7ZE=z;G9tooAbHfvsQS8m38 zLD7~UHH>p14tErXV#Vza%JPeL2hD8bVB4G2tQQwZJrc?N)}gVJf9}FJ9^M0ozfHa3 zP02ody>#en(iP{Cc|Y}%Ze56;sLb#REI+@iykIm%zCO37&SjVB-Dl6A+TQ(kVOLqt zjBgFx(kJ$N6>A#q7{23`lX^jxugd&%v(?S}nci1ojYAxEbh_j`sw&z^ZM?DVJ=?w| z!0fb3m&h_c8QY^bn!jllw;z3^!`+kF8KxW+7Fx0ILDN->Bwo=e^V<%eR@~-Qjj7RC zW3x2iMcZWcz`V&cqf?Ucu7ed8hp*}`E-uj7k=Ca8VRDJn0-eCP>Lu}Rts;^3YxOqm zR-w>}B$Ss%OgZO$muNrNeU*A^Ez6$f;xOUap$q%Q-FJO5P}h?le_dwO5y~j5y*!}0 zB)afu4)@BEm=$R&Iu(jzzBnHwT<3ey;c6FljAQo$*Wo%9qi>zF&8IF3ny!+~*PESz z|8T^_BDwKi+X_pKr1qm@kuH}XzS<@id)2Nd-oGho$BEs;D>qrxE)Lvo%eLR~8|CdB zrFv?9I4fB>B=Nd7LDib$`##dX-lykJmY#d^K{nbMz1gF&WSs)v3C|(l-HBPu(k3-@zr%dH>Aic6vh@V;UaSq}3Q@+Te`{NghuS(|T zNgTggzxLsYwbWfFjgNHNn+=;P`Mg_k>QIc#+gss#pUSM~($DwzOJ><8t-a*MV|i!g z?eh|1h1AoB?-mxC3gqJ$d*ng`Tf|%KqFN-m65Vhe$y)0V{FDj*cH*ZZk6Z+9U%)Ld z<**;~DsEqzy04k5FSWWZHnOWqB5$&&G0v=o_uFgLk#lbqtHqDs>>82Ted{r|k%Dcm z-rIrZTJC@_5gp5eYVL#T)J0{!}Y^L9qu=e$KC1Xakx$HtFEkP+`Lj7 z*N0mtpsu@Yp}Y9NR;}|TeGBnRIN!u_ZNIFVHsAFuM?hunk2aS5m51);q!~T5(W_Te z1FI9$-;rjVm**Gdth{tdYx$Ru`U6*&``Jl-ZZ4NBG8Y=|?63GD#Hm_&Mtz>*+Gh-J zPRZBjUL`d-KWScMZ?!*dA$4QYjMM6y_AJldp!U8jtbh60b88+o59e%(mN8y1Cv&mz z({9(~QEwB4o>8{F*OZO0%k5*y!q=bNA5@h|DASW$ptHv`;C0BsxRRLB(_K8Zo~@#f zW^DdYllEb4ZEI{_#nt2d%la};^=X`1{2{zZ-08xyuFQpcGhE`6%X^OBKdqTNmpi;a zd7tjAAA^G@qszoe@>|=j=1L`Rsw(-AnBOHs);4S^vS-_utqP;u<{wE_<7?Elw-!u} zxXanoknpJX^+VqoRZDZqbFaivVGeR_O4!gtsrPd2>SPgXFcs$?yK%z?hyNuxAE$e1}5Q$$W`y|BR zq2-?YEPK7aOLsf(arQoo3%T3WD08~Q<-PHWW(&LY3Uj9?hqe1-bon@kv_5UBcYOBq zZvBeI1<9RvKI}hT-d~fZVRCw2dHZMc$WsGzp1Y5X8?BJO&=%R%<{y{V{vkqPe5T!Z zd&3h+gjL01(TnnQwX#&ce!qW9-Y8eVrpK4g&9V<1w~C+Rn{z8+`JR^ttL_CI+oNpV z?sCE|1(bJJ~$JX@twTjYjpjyXw9`+!NzxHHe?y8gau@H zre0gTKQ$ef<#Q!1N{~mJToqg{{k*olk-+b43r6>~4LWJ^t;% z2bMkJ-mi59BDEv&rySEOcbm`af2-(y_f4OI6xCKVHF+@g(B0!kPO^$qnr0RGs){8c z)lG37KQB!-&^NzYb*&*S{cT0@zObzgvMV2#ozwijOY{IA$F~)DwHzLvM_cGB-QpGL ziC>OgiHWfim{GC9P(b!ojo&%S=Tokdw^{a&9VW8IRdIShCQHO`b54CcYu2SP>y$^z z_lC}a`nJipPeoS6Z<=8oc=7P53RMGp|9uMb>7(%+TNTFJ9Ao%GT1$0z)u>8wU!ABk z+|k>a*7$Ihum@@T0Y#mQ9^Plk^=h%aI?({7?ud3CDVDuu zalVDVfMe4Gtrx444*T*)e~?h1m5FR};pjT)uLJ+`vH$)$t*qZ2md}*3;v#ScDVISZ zi_gUw9LEAJID@lT;3v+Y0R;&9**JqXEM(b)GkA`L#7A%j11Lm9hWZ8*SddZIfHO$C zf}Tox4dM)Pu;33uI@o}sAW6T=u)dz5a zpb7HQa${!dJFeLngEPp);FeQ!4_rFscM4}vgu$9TjFH7Dx7)xP5y6k7*;cJATI=_6 zUQ+F%rsT0;%jXvEq&qi1-(|d9BdZ`e6+2h@CeQ z&wbJI$o32bM;Ol(Q21#1I$v)lGEc+hT0a(?Skx<&yn60O1k*~}Z5!0u?^fR%N=0z* zt-MXA;a1h+=F%zv^^fV8f0}#4sQFw~MlZm3$#=4S{8(1I0H0Whi|R@E(jyerXnO%l z+bavnONx6u|-}tws|#b??2EK zF0y#`mmNbU8WyHQ3F|eVv~PPfaJcN^?Ki^-!H4@>?iwXq^wkTVY!De3T&u&jf_}DQ z(7C9jaOJ4Tn7F-(U7F`mkZ$p<_bIA98iSP&gD)9N@h4kNyuM&;+fwYZ^1-{=l^NTL z>Yh57Yl?no;ORMVM`6;m&w5|ov-te{GXkO)4I1h*ol8r-W|rPrm1X1d`ku_d9_@^b z=KlS;{ti`pl1^x^Yws1EH_o=YzP)0Jk^QMfTKtcHo{gQH^{nC87lEo7LuREn#${$U z%IsG&3iVd>Q1Q+9u~Xx*?4>f&x(sS~(^a#v?@!`VcD(DN^zFQ97o^lZ@#KBQk+R{~ zliLP#Y9(_$>i8BexZG7%#MQQy`-39wn$*M6rRTUG-9LbDI*_l&@s(}m{qtqmlV*2` zu(f*Y^U7~k=c{j=bFdokzd@qClx{ci_D-yy-9-t)%7IWv&gM;a=OQY|n-y##SFd}h zksR_VxI1_LjdGnc@Bzn_E!#SM4hh`sQ=fNdu4Wz4UbD^IEYxOf;SE>)+~uXDojsS^ zWL5~~Y|qw{bm9K!#I`C=i(ai*fA^FY&XxO6h-=W-Fqb!b`i)a=G3?*hdNyu7a(kXd zyFkK`J@2=__B0u~+PJ4+e$%4?y<;b49=$%h^uo|Q-Va|a`r5De_D5(9n%_<5HxID6 z_bIPdOw#dIv8{3K;qK%!CcgWZN(B7So*6vrL;WE|p)R`2SGE=V`fPiD2?_0uvae3G zhcvyc^o|bUIwzOlx8q1cll4eu&oY;Ep6oFn&VD_$tc#g1lFRJs_ZifSFMG#x9rtF> z;qx0RrTY)|57@l2`gZxKoz9DaH)`&c?n~snM~>Lc-yE9|G#G`u|1zvTZrkNEeV^RV z@Rgj5plp29-^a3=Pfu%QEccu7{=7}>fk|b9_-EbWGn2@4h3A8X%DPc&N@jH&-#Bc# zqCVrpy(@QK_jU-~r23c5Ip%##ap956r+N0Cdq!&ZYJW{Mneu9sKVnrNGAp*qH2P`G z>?zZsUE%NBowM9s=eY2{^|eo&b!PRa$UT=G^iuZRUTwy*($5)I=TWk2cq3w6ijUx; z-@YzQebD&z^cLr(vkAGYZ%=&t-f}}O@NwXtC#&$+_>Ld@nf0uD;+?ys=$bsd%0tuU zYW%Eq6R#rAyPl#OUQKxPUBXbPc-N){V)j&1kBuANW!ZR~>q`m^R#Mw{xJgbX@5-5I z5ts6ZYjH8GTLD@53+rtY-7hOTw^^?GXma?ascJ?|mHz0|82%K)O|U-mQIl42uVv-b z4#T!0J=^|o7%IK1#x?c<{A7z115WjM}i(SGm8 zOL-r>?L8PYYvX0^f>eQ?8$ut94#+*-dRi^BC60XyVT`XS)1;whNt)fdM>j=1U+sAK zW%8lVk`d8b<;BO=zE0$Fv#~GeIWniG4_|KbPUu`pxa{|K+sk&gE{39ldGosi#eR+$ z1^aKW*<%)PhLpaq$Vw#4+>GMs@%-tGCni5jQ@1(`<~)rf5g(?eT6T>-tTfcNjk#ZJ z!oKxzzSyKDb>V(a#j2>!s#`x7&YRh_HKfctdCFzsS!2S`J&DI$M(JHtMKQ7M1D=j5 z(bd%VX7z84!`~G=D7t=$kY7M|%Jyc=w$D326Hwbqyu*{YqbaWFsjADSUatl77ewqk zEd6Ainc3BebI&PW#Y=O&>#KN6jz0a&zGZQvtT!z!D%CG>q*k-4$nfV6L9rT*g(0`Q zLNCSy6nkWk`C82+ZC^UY-Sv7=yFg4+jrrEOdj-Bu-b>s(bajsFh==V}dpDc&dkE@B zI>Y1|GaYw49@7hv8zRO|ncIvFHvD|l{*%XgtR%+0(N?ymWKg|5`iIrhn)LImTOHAk zpLYgrN_+MqUPmLyF}SAZ$6yxUwjXJN9}}0|yTspTTU~-*e@AV{Ab)l1f{N0Enin{( zSif{CD-nDfE|oXClJ2ld!7Fp;hP0d)_S?;}-*8svPVC*YX<+x&k7IqO4U(yWF%1GK zHZw&oyxrk4_kMXx%Azxm&iig;-y*5~a^`We{Vl&iEmFk8h5h^2*>EqvwDb9*K65go zRl4xB=NaCtLZS6%^K&SYQ{Q@M4*yJGmB)J&>4rhBk&t)w6D*b{x} zr;+RsmH+B_LVN89(XPk+N80YM#w#wJb&UKPdbMWorLbtX;_PFE!Zmq{f`J}OA3M1m zYCO94;0eiFlilsa;FO)aL(dZ4soXw4uG`UMyf*O3meSLX=kSd~IfX7iJq6-vnzQHb z5V?BB>-yb^YLhu7`)Qk5w`5Fo7H>GV?)3g6&UyuL4DGBHv7z5yuPajx*KSWKmb`uW zS>fyoVb2XQ$2pt6Jor2@+_^?1?}V|BtI@lSq1UR8Wh}Z-p5JTka(t$vf5t^u)4D;i z=iJ9_b>cRLag8sS+VJs1q4hn=MXusUx8t4#Pt88`Ilj|S{8J&FeJe-q<9;ij0Y0us zS@ETkLl1g?p7JSb**ZIgH)p+2Sa5zyU7WGUZoKagYvX>0uGFLpWyR@D-H|udJgpaN zBz^aPDL8ZIh}G-by-w-XM%7uSiOKz~p+P?BhiYpI*0~wjoISr7clch*4s}nDyM2vo zWS<^WxI9kYd4$5g1w<4Zt$))mX1wWs$>1|N?b0TR?WaZFFYf#lYwg*o#rZJk+=E98 zUvJyLJ}B79m3(8bnMI8IdYQOy-uL)x8=BP%pE|nY%SI(DZtU&y@ExVxTU*nB?^0EI zm3={iV6r(sDo|O_(UfqxKgQvl;p~7_ClBCle{>Os7qf32jTlsXPa^g!v}Gu@7!sCD zZCjfcyp80($3T}+?~xaFJoZ6MU$YaA=iaKV(%0xVH@4E=o($c2d98_Kl$r{c?2oAZ zFIv}U`4`^aRc@GfqweUzN>2Ul4h8X(Pi+tF`%!vTC4a`+Rih1FsR8_$)Dcy9RBQ;m9$BFR0S0g=ZtxWpak~{Or z(~feEgC`bn=%;38i?(bG=Qp=ob#X;0*WJnn;v)8~D$$2LF)n9}WySXdJ}=&upLD-> z-~Gw{4_i*#@~)qm%w4|BUOG;_km?Dou6;{^LeX!4l?#heTY^hnU-=4m>+Vmt=#HW z*^{rgS8)BRBGJ)HBX0~TJ)&*NZaJk6{EJk-gtqlXpSd3~*TK+hmsHmkc|pS-@lDh` zu~Gim&EHm@AJ1MZdPd&t=Hkl3?w^%jK4;$=D?hm#Kct^I`_%sT6q>9-jz#RCL%O6` zvc>5WwEbZRuf1Np^is{|f=?%GZtw5!y7={Jd62uuS>7|Qf{hQq6dXLVWT@z6p3ki^ zy=T6y=Xk$0ep&j!hJ!vKn4GqMsypq=(7CVFp_MDfpFPg56ywktO;7&eGK=?Yy*Ur- zmf9z^2B8iipBw?}q@di3>Cub|Y5qdgU0wI>uqJS(3@#qw3< zT@_uRlvt-Xi=3aj@O@{Gxzec*dS^>{WTFeSW|xywX6P4wj$3tm$>_oZw>FF3IM2_! zW~h&$8}vp3`_;;QcZC>DcTbiEWSl8qaxqZ6EGF;$ zmurdZd9?)Akll1&Y&e+F2B~>3LGldV-K2um9 zy7yS{y;$0ow53I&!O!DGOq8}tK9H5+f?>y7?=CKleb48N6>d5l8*Sj`W>}>A5+pSA( zHY$G-DctRsCp5}IPD_rhN_!^By7ea!Ei$*_^R8O~yT3Y%wRKz>KItsxC?_(}-u+p- z5O4muKT+FVL(91ie@ifyX5f2R;L+ZfL~=uCR9#M?`8~7xITnSFjALb1oRHePCdVYZ z|JeL{GakMheP*KdWo=aHt3$+#hBtc;)ZP;0IQPzJ_LFKOr$bs|!JazoTZSE)p&ah~ z*STKD;Z1fsdLFngp5PWCHMaOkpFu|VkC=*Y12Pc~-+q*@ak*b>rC#tV&_g44G%(ce z{2pg(|DW}|4abBnN=~fNT62-1`{nN|B1a}o*e%R1ayfHl1 zc6n=SY4U)Xf8wCoOnI@QpiNVa>pySZk|^i7W$w7deLjULzkb>1z$)9Tk5g=IqD%Ko zUALN0Xj$}C@$Q!(*?eoe@T#I+x;1|1^{&bDYu@>&V&8jTxJ{CMi}FI`=62_M5n*mk zYv!ujS?7v5DK^!SUv=p#7aVW8=-E>EbMlMSvd2l5S5o4Xo%jA+b7^w;TjuKW`;RVl z;Oq`%KTtZpKCAJbFLm{MdZbEqQwwfce}r5tM~jow%2$R3BR?JiecTboVm>)$$aEPEL`Gm~U#`(ZGs%=_hdtIeF-TrUV~cdSis`Dny7 zFG7uHqCF$}?VQ4znz!px7CDd~OhoSzXS}fN^I$CfB3s?OY|s5Wvx5@uA2a~Ph^SKc zO3`JJB5P!qRj%zDJ>8=x@Uk~E&$;)d?xT&?KExXN+(k3-E z0YxeZwxva?f=!z!iWZ^7(kisQc@Y#81rhY1C-EN;@lf#MMS2qvw0KaInu~&X@jGeC z9yT+x@4cBfNe;{Ver8I1{xbb?t9bh7*VxSaZ%=1ju{~3z)iXHN$rK(mER2iBoJ4b& z%BV1BChY)4JI*>IwoR?z=b#{4@0U5Nua(?k7y$M|(hP7XjVN|p)G7k6fD#7dlR>rA$RZ~JxR_%S9#r$@o zbkZ2mG;j`X&IGX;wB`U)a?BIl0e?ipjf$_MJJfB{1r0nOsAJk#lVPm^9}NnD=_F() zM{yNEF#^xYu?h9`RN*eV4rr52hWv;mV77n~A+luzm=gPwS^{mI;&zZ-ERtjfgD{jM z7V|?%4WJw$pyam&K^rk4Z_}(Rj7z`=QNZPKhVlY)Zv!Cc0k`jMpdPEu@nr&QV?IPj zk$L7I)-^zBcm?bV>+S=CXj`QXa3B#5hauaeExNBrM8Jf_q3nJJ|ANQmaVM$WprKGN z))|mV_%vx$c7slJgn~S1qokS6gMLNG0@GvQgPLoZC5liZSWFwB{SdXNtYWX!bHqO| zH&Bk{}}_ATkh?*Cx;}d~SijN`i+4N>Wt2C&jRqvZ#?FI)&hMPtBuV zq9?E!RTL`oswrmIs^VmE8497DzX|nA6Q^Dk^@}e)g~Vz zt@1$EYX3^kJlB-&dA^=|{jR!l%e+=^-_7mX)$eaMW9ikKAGm;5^;NuJw%2wB?1EUb zaUx@>G7ly?OPOLB s+Q>l{63CR7OnIqnudxI?c4g5>_{prF2rAa6hjTn}5YPhpQhp}=9|_L{WdHyG diff --git a/apps/gipy/pkg/gpconv_bg.wasm.d.ts b/apps/gipy/pkg/gpconv_bg.wasm.d.ts deleted file mode 100644 index cb912f3de..000000000 --- a/apps/gipy/pkg/gpconv_bg.wasm.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -export const memory: WebAssembly.Memory; -export function __wbg_gpcsvg_free(a: number): void; -export function get_gpc(a: number, b: number): void; -export function get_svg(a: number, b: number): void; -export function convert_gpx_strings_no_osm(a: number, b: number): number; -export function convert_gpx_strings(a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number): number; -export function __wbindgen_malloc(a: number): number; -export function __wbindgen_realloc(a: number, b: number, c: number): number; -export const __wbindgen_export_2: WebAssembly.Table; -export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h317df853f2d4653e(a: number, b: number, c: number): void; -export function __wbindgen_add_to_stack_pointer(a: number): number; -export function __wbindgen_free(a: number, b: number): void; -export function __wbindgen_exn_store(a: number): void; -export function wasm_bindgen__convert__closures__invoke2_mut__h573cb80e0bf72240(a: number, b: number, c: number, d: number): void; diff --git a/apps/gipy/pkg/gps.d.ts b/apps/gipy/pkg/gps.d.ts new file mode 100644 index 000000000..48fe96776 --- /dev/null +++ b/apps/gipy/pkg/gps.d.ts @@ -0,0 +1,90 @@ +/* tslint:disable */ +/* eslint-disable */ +/** +* @param {Gps} gps +* @returns {Float64Array} +*/ +export function get_polygon(gps: Gps): Float64Array; +/** +* @param {Gps} gps +* @returns {Uint8Array} +*/ +export function get_gps_content(gps: Gps): Uint8Array; +/** +* @param {Gps} gps +* @returns {string} +*/ +export function get_gps_map_svg(gps: Gps): string; +/** +* @param {Gps} gps +* @param {string} key1 +* @param {string} value1 +* @param {string} key2 +* @param {string} value2 +* @param {string} key3 +* @param {string} value3 +* @param {string} key4 +* @param {string} value4 +* @returns {Promise} +*/ +export function request_map(gps: Gps, key1: string, value1: string, key2: string, value2: string, key3: string, value3: string, key4: string, value4: string): Promise; +/** +* @param {string} input +* @returns {Gps} +*/ +export function load_gps_from_string(input: string): Gps; +/** +* @param {number} xmin +* @param {number} ymin +* @param {number} xmax +* @param {number} ymax +* @returns {Gps} +*/ +export function gps_from_area(xmin: number, ymin: number, xmax: number, ymax: number): Gps; +/** +*/ +export class Gps { + free(): void; +} + +export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module; + +export interface InitOutput { + readonly memory: WebAssembly.Memory; + readonly __wbg_gps_free: (a: number) => void; + readonly get_polygon: (a: number, b: number) => void; + readonly get_gps_content: (a: number, b: number) => void; + readonly get_gps_map_svg: (a: number, b: number) => void; + readonly request_map: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number) => number; + readonly load_gps_from_string: (a: number, b: number) => number; + readonly gps_from_area: (a: number, b: number, c: number, d: number) => number; + readonly __wbindgen_malloc: (a: number) => number; + readonly __wbindgen_realloc: (a: number, b: number, c: number) => number; + readonly __wbindgen_export_2: WebAssembly.Table; + readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h6bb6801698d941c0: (a: number, b: number, c: number) => void; + readonly __wbindgen_add_to_stack_pointer: (a: number) => number; + readonly __wbindgen_free: (a: number, b: number) => void; + readonly __wbindgen_exn_store: (a: number) => void; + readonly wasm_bindgen__convert__closures__invoke2_mut__h33169a25550cd50b: (a: number, b: number, c: number, d: number) => void; +} + +export type SyncInitInput = BufferSource | WebAssembly.Module; +/** +* Instantiates the given `module`, which can either be bytes or +* a precompiled `WebAssembly.Module`. +* +* @param {SyncInitInput} module +* +* @returns {InitOutput} +*/ +export function initSync(module: SyncInitInput): InitOutput; + +/** +* If `module_or_path` is {RequestInfo} or {URL}, makes a request and +* for everything else, calls `WebAssembly.instantiate` directly. +* +* @param {InitInput | Promise} module_or_path +* +* @returns {Promise} +*/ +export default function init (module_or_path?: InitInput | Promise): Promise; diff --git a/apps/gipy/pkg/gpconv.js b/apps/gipy/pkg/gps.js similarity index 71% rename from apps/gipy/pkg/gpconv.js rename to apps/gipy/pkg/gps.js index b9271ad4b..25c39c123 100644 --- a/apps/gipy/pkg/gpconv.js +++ b/apps/gipy/pkg/gps.js @@ -7,20 +7,6 @@ heap.push(undefined, null, true, false); function getObject(idx) { return heap[idx]; } -let heap_next = heap.length; - -function dropObject(idx) { - if (idx < 36) return; - heap[idx] = heap_next; - heap_next = idx; -} - -function takeObject(idx) { - const ret = getObject(idx); - dropObject(idx); - return ret; -} - let WASM_VECTOR_LEN = 0; let cachedUint8Memory0 = new Uint8Array(); @@ -98,6 +84,20 @@ function getInt32Memory0() { return cachedInt32Memory0; } +let heap_next = heap.length; + +function dropObject(idx) { + if (idx < 36) return; + heap[idx] = heap_next; + heap_next = idx; +} + +function takeObject(idx) { + const ret = getObject(idx); + dropObject(idx); + return ret; +} + function addHeapObject(obj) { if (heap_next === heap.length) heap.push(heap.length + 1); const idx = heap_next; @@ -205,7 +205,7 @@ function makeMutClosure(arg0, arg1, dtor, f) { return real; } function __wbg_adapter_24(arg0, arg1, arg2) { - wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h317df853f2d4653e(arg0, arg1, addHeapObject(arg2)); + wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h6bb6801698d941c0(arg0, arg1, addHeapObject(arg2)); } function _assertClass(instance, klass) { @@ -215,18 +215,49 @@ function _assertClass(instance, klass) { return instance.ptr; } +let cachedFloat64Memory0 = new Float64Array(); + +function getFloat64Memory0() { + if (cachedFloat64Memory0.byteLength === 0) { + cachedFloat64Memory0 = new Float64Array(wasm.memory.buffer); + } + return cachedFloat64Memory0; +} + +function getArrayF64FromWasm0(ptr, len) { + return getFloat64Memory0().subarray(ptr / 8, ptr / 8 + len); +} +/** +* @param {Gps} gps +* @returns {Float64Array} +*/ +export function get_polygon(gps) { + try { + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + _assertClass(gps, Gps); + wasm.get_polygon(retptr, gps.ptr); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + var v0 = getArrayF64FromWasm0(r0, r1).slice(); + wasm.__wbindgen_free(r0, r1 * 8); + return v0; + } finally { + wasm.__wbindgen_add_to_stack_pointer(16); + } +} + function getArrayU8FromWasm0(ptr, len) { return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len); } /** -* @param {GpcSvg} gpcsvg +* @param {Gps} gps * @returns {Uint8Array} */ -export function get_gpc(gpcsvg) { +export function get_gps_content(gps) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - _assertClass(gpcsvg, GpcSvg); - wasm.get_gpc(retptr, gpcsvg.ptr); + _assertClass(gps, Gps); + wasm.get_gps_content(retptr, gps.ptr); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var v0 = getArrayU8FromWasm0(r0, r1).slice(); @@ -238,37 +269,25 @@ export function get_gpc(gpcsvg) { } /** -* @param {GpcSvg} gpcsvg -* @returns {Uint8Array} +* @param {Gps} gps +* @returns {string} */ -export function get_svg(gpcsvg) { +export function get_gps_map_svg(gps) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - _assertClass(gpcsvg, GpcSvg); - wasm.get_svg(retptr, gpcsvg.ptr); + _assertClass(gps, Gps); + wasm.get_gps_map_svg(retptr, gps.ptr); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; - var v0 = getArrayU8FromWasm0(r0, r1).slice(); - wasm.__wbindgen_free(r0, r1 * 1); - return v0; + return getStringFromWasm0(r0, r1); } finally { wasm.__wbindgen_add_to_stack_pointer(16); + wasm.__wbindgen_free(r0, r1); } } /** -* @param {string} input_str -* @returns {Promise} -*/ -export function convert_gpx_strings_no_osm(input_str) { - const ptr0 = passStringToWasm0(input_str, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ret = wasm.convert_gpx_strings_no_osm(ptr0, len0); - return takeObject(ret); -} - -/** -* @param {string} input_str +* @param {Gps} gps * @param {string} key1 * @param {string} value1 * @param {string} key2 @@ -277,31 +296,53 @@ export function convert_gpx_strings_no_osm(input_str) { * @param {string} value3 * @param {string} key4 * @param {string} value4 -* @returns {Promise} +* @returns {Promise} */ -export function convert_gpx_strings(input_str, key1, value1, key2, value2, key3, value3, key4, value4) { - const ptr0 = passStringToWasm0(input_str, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); +export function request_map(gps, key1, value1, key2, value2, key3, value3, key4, value4) { + _assertClass(gps, Gps); + const ptr0 = passStringToWasm0(key1, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(key1, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const ptr1 = passStringToWasm0(value1, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(value1, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const ptr2 = passStringToWasm0(key2, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(key2, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const ptr3 = passStringToWasm0(value2, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(value2, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const ptr4 = passStringToWasm0(key3, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(key3, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const ptr5 = passStringToWasm0(value3, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(value3, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const ptr6 = passStringToWasm0(key4, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(key4, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const ptr7 = passStringToWasm0(value4, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len7 = WASM_VECTOR_LEN; - const ptr8 = passStringToWasm0(value4, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len8 = WASM_VECTOR_LEN; - const ret = wasm.convert_gpx_strings(ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7, ptr8, len8); + const ret = wasm.request_map(gps.ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7); return takeObject(ret); } +/** +* @param {string} input +* @returns {Gps} +*/ +export function load_gps_from_string(input) { + const ptr0 = passStringToWasm0(input, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len0 = WASM_VECTOR_LEN; + const ret = wasm.load_gps_from_string(ptr0, len0); + return Gps.__wrap(ret); +} + +/** +* @param {number} xmin +* @param {number} ymin +* @param {number} xmax +* @param {number} ymax +* @returns {Gps} +*/ +export function gps_from_area(xmin, ymin, xmax, ymax) { + const ret = wasm.gps_from_area(xmin, ymin, xmax, ymax); + return Gps.__wrap(ret); +} + function handleError(f, args) { try { return f.apply(this, args); @@ -309,16 +350,16 @@ function handleError(f, args) { wasm.__wbindgen_exn_store(addHeapObject(e)); } } -function __wbg_adapter_69(arg0, arg1, arg2, arg3) { - wasm.wasm_bindgen__convert__closures__invoke2_mut__h573cb80e0bf72240(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3)); +function __wbg_adapter_83(arg0, arg1, arg2, arg3) { + wasm.wasm_bindgen__convert__closures__invoke2_mut__h33169a25550cd50b(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3)); } /** */ -export class GpcSvg { +export class Gps { static __wrap(ptr) { - const obj = Object.create(GpcSvg.prototype); + const obj = Object.create(Gps.prototype); obj.ptr = ptr; return obj; @@ -333,7 +374,7 @@ export class GpcSvg { free() { const ptr = this.__destroy_into_raw(); - wasm.__wbg_gpcsvg_free(ptr); + wasm.__wbg_gps_free(ptr); } } @@ -371,12 +412,8 @@ async function load(module, imports) { function getImports() { const imports = {}; imports.wbg = {}; - imports.wbg.__wbg_gpcsvg_new = function(arg0) { - const ret = GpcSvg.__wrap(arg0); - return addHeapObject(ret); - }; - imports.wbg.__wbindgen_object_drop_ref = function(arg0) { - takeObject(arg0); + imports.wbg.__wbg_log_d04343b58be82b0f = function(arg0, arg1) { + console.log(getStringFromWasm0(arg0, arg1)); }; imports.wbg.__wbindgen_string_get = function(arg0, arg1) { const obj = getObject(arg1); @@ -386,6 +423,9 @@ function getImports() { getInt32Memory0()[arg0 / 4 + 1] = len0; getInt32Memory0()[arg0 / 4 + 0] = ptr0; }; + imports.wbg.__wbindgen_object_drop_ref = function(arg0) { + takeObject(arg0); + }; imports.wbg.__wbindgen_object_clone_ref = function(arg0) { const ret = getObject(arg0); return addHeapObject(ret); @@ -394,10 +434,83 @@ function getImports() { const ret = getStringFromWasm0(arg0, arg1); return addHeapObject(ret); }; - imports.wbg.__wbg_fetch_3894579f6e2af3be = function(arg0) { + imports.wbg.__wbg_fetch_56a6919da5e4c21c = function(arg0) { const ret = fetch(getObject(arg0)); return addHeapObject(ret); }; + imports.wbg.__wbg_fetch_a48a10a635c75705 = function(arg0, arg1) { + const ret = getObject(arg0).fetch(getObject(arg1)); + return addHeapObject(ret); + }; + imports.wbg.__wbg_new_79046c4e23ea4a68 = function() { return handleError(function () { + const ret = new Headers(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_append_419e47e76db2bf58 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { + getObject(arg0).append(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4)); + }, arguments) }; + imports.wbg.__wbg_newwithstrandinit_88469b4854505aec = function() { return handleError(function (arg0, arg1, arg2) { + const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_signal_ef3cb12ade6e3e58 = function(arg0) { + const ret = getObject(arg0).signal; + return addHeapObject(ret); + }; + imports.wbg.__wbg_new_0660dc54dc784268 = function() { return handleError(function () { + const ret = new AbortController(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_abort_5eaedf61218dad4e = function(arg0) { + getObject(arg0).abort(); + }; + imports.wbg.__wbg_instanceof_Response_f5253ba882b9f20c = function(arg0) { + let result; + try { + result = getObject(arg0) instanceof Response; + } catch { + result = false; + } + const ret = result; + return ret; + }; + imports.wbg.__wbg_url_31e1075302fd753f = function(arg0, arg1) { + const ret = getObject(arg1).url; + const ptr0 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len0 = WASM_VECTOR_LEN; + getInt32Memory0()[arg0 / 4 + 1] = len0; + getInt32Memory0()[arg0 / 4 + 0] = ptr0; + }; + imports.wbg.__wbg_status_b1116741940de98b = function(arg0) { + const ret = getObject(arg0).status; + return ret; + }; + imports.wbg.__wbg_headers_bb43d11ba08fa4bd = function(arg0) { + const ret = getObject(arg0).headers; + return addHeapObject(ret); + }; + imports.wbg.__wbg_text_84312300339af335 = function() { return handleError(function (arg0) { + const ret = getObject(arg0).text(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_new_abda76e883ba8a5f = function() { + const ret = new Error(); + return addHeapObject(ret); + }; + imports.wbg.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) { + const ret = getObject(arg1).stack; + const ptr0 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len0 = WASM_VECTOR_LEN; + getInt32Memory0()[arg0 / 4 + 1] = len0; + getInt32Memory0()[arg0 / 4 + 0] = ptr0; + }; + imports.wbg.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) { + try { + console.error(getStringFromWasm0(arg0, arg1)); + } finally { + wasm.__wbindgen_free(arg0, arg1); + } + }; imports.wbg.__wbindgen_cb_drop = function(arg0) { const obj = takeObject(arg0).original; if (obj.cnt-- == 1) { @@ -407,60 +520,16 @@ function getImports() { const ret = false; return ret; }; - imports.wbg.__wbg_fetch_749a56934f95c96c = function(arg0, arg1) { - const ret = getObject(arg0).fetch(getObject(arg1)); - return addHeapObject(ret); - }; - imports.wbg.__wbg_instanceof_Response_eaa426220848a39e = function(arg0) { - let result; - try { - result = getObject(arg0) instanceof Response; - } catch { - result = false; - } - const ret = result; - return ret; - }; - imports.wbg.__wbg_url_74285ddf2747cb3d = function(arg0, arg1) { - const ret = getObject(arg1).url; - const ptr0 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - getInt32Memory0()[arg0 / 4 + 1] = len0; - getInt32Memory0()[arg0 / 4 + 0] = ptr0; - }; - imports.wbg.__wbg_status_c4ef3dd591e63435 = function(arg0) { - const ret = getObject(arg0).status; - return ret; - }; - imports.wbg.__wbg_headers_fd64ad685cf22e5d = function(arg0) { - const ret = getObject(arg0).headers; - return addHeapObject(ret); - }; - imports.wbg.__wbg_text_1169d752cc697903 = function() { return handleError(function (arg0) { - const ret = getObject(arg0).text(); - return addHeapObject(ret); - }, arguments) }; - imports.wbg.__wbg_newwithstrandinit_05d7180788420c40 = function() { return handleError(function (arg0, arg1, arg2) { - const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2)); - return addHeapObject(ret); - }, arguments) }; - imports.wbg.__wbg_new_2d0053ee81e4dd2a = function() { return handleError(function () { - const ret = new Headers(); - return addHeapObject(ret); - }, arguments) }; - imports.wbg.__wbg_append_de37df908812970d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { - getObject(arg0).append(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4)); - }, arguments) }; imports.wbg.__wbindgen_is_object = function(arg0) { const val = getObject(arg0); const ret = typeof(val) === 'object' && val !== null; return ret; }; - imports.wbg.__wbg_newnoargs_b5b063fc6c2f0376 = function(arg0, arg1) { + imports.wbg.__wbg_newnoargs_e60ecc77c37e3a52 = function(arg0, arg1) { const ret = new Function(getStringFromWasm0(arg0, arg1)); return addHeapObject(ret); }; - imports.wbg.__wbg_next_579e583d33566a86 = function(arg0) { + imports.wbg.__wbg_next_204d18f7da3b87aa = function(arg0) { const ret = getObject(arg0).next; return addHeapObject(ret); }; @@ -468,31 +537,31 @@ function getImports() { const ret = typeof(getObject(arg0)) === 'function'; return ret; }; - imports.wbg.__wbg_value_1ccc36bc03462d71 = function(arg0) { + imports.wbg.__wbg_value_55672421087ba68e = function(arg0) { const ret = getObject(arg0).value; return addHeapObject(ret); }; - imports.wbg.__wbg_iterator_6f9d4f28845f426c = function() { + imports.wbg.__wbg_iterator_06c08a312c33a792 = function() { const ret = Symbol.iterator; return addHeapObject(ret); }; - imports.wbg.__wbg_new_0b9bfdd97583284e = function() { + imports.wbg.__wbg_new_c985446080b753ed = function() { const ret = new Object(); return addHeapObject(ret); }; - imports.wbg.__wbg_self_6d479506f72c6a71 = function() { return handleError(function () { + imports.wbg.__wbg_self_6626a919974a3fe1 = function() { return handleError(function () { const ret = self.self; return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_window_f2557cc78490aceb = function() { return handleError(function () { + imports.wbg.__wbg_window_53efdaa5bfb50c7e = function() { return handleError(function () { const ret = window.window; return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_globalThis_7f206bda628d5286 = function() { return handleError(function () { + imports.wbg.__wbg_globalThis_1d749c41ddffdb92 = function() { return handleError(function () { const ret = globalThis.globalThis; return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_global_ba75c50d1cf384f4 = function() { return handleError(function () { + imports.wbg.__wbg_global_ab5d31db46028bf4 = function() { return handleError(function () { const ret = global.global; return addHeapObject(ret); }, arguments) }; @@ -500,30 +569,30 @@ function getImports() { const ret = getObject(arg0) === undefined; return ret; }; - imports.wbg.__wbg_call_97ae9d8645dc388b = function() { return handleError(function (arg0, arg1) { + imports.wbg.__wbg_call_f14a389d3721b1c3 = function() { return handleError(function (arg0, arg1) { const ret = getObject(arg0).call(getObject(arg1)); return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_call_168da88779e35f61 = function() { return handleError(function (arg0, arg1, arg2) { + imports.wbg.__wbg_call_fd5f197e56af4014 = function() { return handleError(function (arg0, arg1, arg2) { const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_next_aaef7c8aa5e212ac = function() { return handleError(function (arg0) { + imports.wbg.__wbg_next_74bb1f65e2afa2ac = function() { return handleError(function (arg0) { const ret = getObject(arg0).next(); return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_done_1b73b0672e15f234 = function(arg0) { + imports.wbg.__wbg_done_3a03f6e9c5c77561 = function(arg0) { const ret = getObject(arg0).done; return ret; }; - imports.wbg.__wbg_new_9962f939219f1820 = function(arg0, arg1) { + imports.wbg.__wbg_new_54a2183d2c64f703 = function(arg0, arg1) { try { var state0 = {a: arg0, b: arg1}; var cb0 = (arg0, arg1) => { const a = state0.a; state0.a = 0; try { - return __wbg_adapter_69(a, state0.b, arg0, arg1); + return __wbg_adapter_83(a, state0.b, arg0, arg1); } finally { state0.a = a; } @@ -534,46 +603,46 @@ function getImports() { state0.a = state0.b = 0; } }; - imports.wbg.__wbg_resolve_99fe17964f31ffc0 = function(arg0) { + imports.wbg.__wbg_resolve_06857cc092d7a5a5 = function(arg0) { const ret = Promise.resolve(getObject(arg0)); return addHeapObject(ret); }; - imports.wbg.__wbg_then_11f7a54d67b4bfad = function(arg0, arg1) { + imports.wbg.__wbg_then_9d00e221486eb3fd = function(arg0, arg1) { const ret = getObject(arg0).then(getObject(arg1)); return addHeapObject(ret); }; - imports.wbg.__wbg_then_cedad20fbbd9418a = function(arg0, arg1, arg2) { + imports.wbg.__wbg_then_1a0d89f52d89bc91 = function(arg0, arg1, arg2) { const ret = getObject(arg0).then(getObject(arg1), getObject(arg2)); return addHeapObject(ret); }; - imports.wbg.__wbg_buffer_3f3d764d4747d564 = function(arg0) { + imports.wbg.__wbg_buffer_dbc8aa65574f18f0 = function(arg0) { const ret = getObject(arg0).buffer; return addHeapObject(ret); }; - imports.wbg.__wbg_newwithbyteoffsetandlength_d9aa266703cb98be = function(arg0, arg1, arg2) { + imports.wbg.__wbg_newwithbyteoffsetandlength_dc61a8150553a946 = function(arg0, arg1, arg2) { const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); return addHeapObject(ret); }; - imports.wbg.__wbg_new_8c3f0052272a457a = function(arg0) { + imports.wbg.__wbg_new_397df785177a4c42 = function(arg0) { const ret = new Uint8Array(getObject(arg0)); return addHeapObject(ret); }; - imports.wbg.__wbg_get_765201544a2b6869 = function() { return handleError(function (arg0, arg1) { + imports.wbg.__wbg_stringify_4f9ffcaf0f4c3046 = function() { return handleError(function (arg0) { + const ret = JSON.stringify(getObject(arg0)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_get_838d84ef03e3a353 = function() { return handleError(function (arg0, arg1) { const ret = Reflect.get(getObject(arg0), getObject(arg1)); return addHeapObject(ret); }, arguments) }; - imports.wbg.__wbg_has_8359f114ce042f5a = function() { return handleError(function (arg0, arg1) { + imports.wbg.__wbg_has_d8ce53e88270beb1 = function() { return handleError(function (arg0, arg1) { const ret = Reflect.has(getObject(arg0), getObject(arg1)); return ret; }, arguments) }; - imports.wbg.__wbg_set_bf3f89b92d5a34bf = function() { return handleError(function (arg0, arg1, arg2) { + imports.wbg.__wbg_set_c1da7a4e82cfe2ad = function() { return handleError(function (arg0, arg1, arg2) { const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2)); return ret; }, arguments) }; - imports.wbg.__wbg_stringify_d6471d300ded9b68 = function() { return handleError(function (arg0) { - const ret = JSON.stringify(getObject(arg0)); - return addHeapObject(ret); - }, arguments) }; imports.wbg.__wbindgen_debug_string = function(arg0, arg1) { const ret = debugString(getObject(arg1)); const ptr0 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -588,8 +657,8 @@ function getImports() { const ret = wasm.memory; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper929 = function(arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 143, __wbg_adapter_24); + imports.wbg.__wbindgen_closure_wrapper2246 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 285, __wbg_adapter_24); return addHeapObject(ret); }; @@ -603,6 +672,7 @@ function initMemory(imports, maybe_memory) { function finalizeInit(instance, module) { wasm = instance.exports; init.__wbindgen_wasm_module = module; + cachedFloat64Memory0 = new Float64Array(); cachedInt32Memory0 = new Int32Array(); cachedUint8Memory0 = new Uint8Array(); @@ -626,7 +696,7 @@ function initSync(module) { async function init(input) { if (typeof input === 'undefined') { - input = new URL('gpconv_bg.wasm', import.meta.url); + input = new URL('gps_bg.wasm', import.meta.url); } const imports = getImports(); diff --git a/apps/gipy/pkg/gps_bg.wasm b/apps/gipy/pkg/gps_bg.wasm new file mode 100644 index 0000000000000000000000000000000000000000..9fef1e28fe5eace8b0ff523af998c9e663f5f339 GIT binary patch literal 729720 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 z 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 juwW;jKJ8mvOcDO;4a|7Fo8}2&az>8?t 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

    OpenstreetMap NODE Tags
    + + + + + + + + + +
    DescriptionDuration
    + +
    + + + + + From 1c76e03751721d407be5676278fe0f45bb792658 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 18 Jun 2023 22:18:42 +0100 Subject: [PATCH 1599/1725] rep: handle missing storage --- apps/rep/app.ts | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index dce8909b7..0471febf9 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -1,25 +1,35 @@ { const L = require("Layout"); -type Rep = { +type StoreRep = { + /// duration in ms dur: number, + /// label of this rep label: string, +}; + +type Rep = StoreRep & { + /// cumulative duration (ms) accDur: number, }; -const reps: Rep[] = (require("Storage") - .readJSON("rep.json") as Rep[] | undefined /* TODO */) - .map(((r: Rep, i: number, a: Rep[]): Rep => { - const r2 = r as Rep; +const storeReps = require("Storage") + .readJSON("rep.json") as Rep[] | undefined; - r2.dur = r2.dur * 60 * 1000; +if(storeReps == null){ + E.showAlert("No reps in storage\nLoad them on with the app loader") + .then(() => load()); - r2.accDur = i > 0 - ? a[i-1]!.accDur + r.dur - : r.dur; + throw new Error("no storage"); +} - return r as Rep; - }) as any); +const reps = storeReps.map((r: StoreRep, i: number, a: Rep[]): Rep => { + const r2 = r as Rep; + r2.accDur = i > 0 + ? a[i-1]!.accDur + r.dur + : r.dur; + return r2; +}); const fontSzMain = 54; const fontScaleRep = 2; From d6eaee23ecfe84a64f1ba8000f85dd70a659d4ac Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Fri, 30 Jun 2023 11:10:49 +0200 Subject: [PATCH 1600/1725] gipy: fixing tile_is_on_screen previous algorithm was incorrect --- apps/gipy/ChangeLog | 1 + apps/gipy/app.js | 58 +++++++++++++++++++++++++++------------------ 2 files changed, 36 insertions(+), 23 deletions(-) diff --git a/apps/gipy/ChangeLog b/apps/gipy/ChangeLog index 6371fbdf1..8646ba11a 100644 --- a/apps/gipy/ChangeLog +++ b/apps/gipy/ChangeLog @@ -86,3 +86,4 @@ * Display path in leaflet * Reduce framerate if locked * Stroke to move around in the map + * Fix for missing paths in display diff --git a/apps/gipy/app.js b/apps/gipy/app.js index 94f9ab450..ddd1a2c08 100644 --- a/apps/gipy/app.js +++ b/apps/gipy/app.js @@ -1,4 +1,4 @@ -let simulated = false; +let simulated = true; let displaying = false; let in_menu = false; let go_backwards = false; @@ -243,6 +243,7 @@ class Map { let local_y = displayed_y - this.start_coordinates[1]; let tile_x = Math.floor(local_x / this.side); let tile_y = Math.floor(local_y / this.side); + let limit = 1; if (!zoomed) { limit = 2; @@ -266,6 +267,18 @@ class Map { sin_direction ) ) { +// let colors = [ +// [0, 0, 0], +// [0, 0, 1], +// [0, 1, 0], +// [0, 1, 1], +// [1, 0, 0], +// [1, 0, 1], +// [1, 1, 0], +// [1, 1, 0.5], +// [0.5, 0, 0.5], +// [0, 0.5, 0.5], +// ]; if (this.color[0] == 1 && this.color[1] == 0 && this.color[2] == 0) { this.display_thick_tile( x, @@ -301,33 +314,32 @@ class Map { cos_direction, sin_direction ) { - let center_x = g.getWidth() / 2; - let center_y = g.getHeight() / 2 + Y_OFFSET; + let width = g.getWidth(); + let height = g.getHeight(); + let center_x = width / 2; + let center_y = height / 2 + Y_OFFSET; let side = this.side; - let x1 = tile_x * side; - let y1 = tile_y * side; - let x2 = x1 + side; - let y2 = y1 + side; - let scaled_x1 = (x1 - current_x) * scale_factor; - let scaled_y1 = (y1 - current_y) * scale_factor; - let rotated_x1 = scaled_x1 * cos_direction - scaled_y1 * sin_direction; - let rotated_y1 = scaled_x1 * sin_direction + scaled_y1 * cos_direction; - let scaled_x2 = (x2 - current_x) * scale_factor; - let scaled_y2 = (y2 - current_y) * scale_factor; - let rotated_x2 = scaled_x2 * cos_direction - scaled_y2 * sin_direction; - let rotated_y2 = scaled_x2 * sin_direction + scaled_y2 * cos_direction; + let tile_center_x = (tile_x + 0.5) * side; + let tile_center_y = (tile_y + 0.5) * side; + let scaled_center_x = (tile_center_x - current_x) * scale_factor; + let scaled_center_y = (tile_center_y - current_y) * scale_factor; + let rotated_center_x = scaled_center_x * cos_direction - scaled_center_y * sin_direction; + let rotated_center_y = scaled_center_x * sin_direction + scaled_center_y * cos_direction; + let on_screen_center_x = center_x - rotated_center_x; + let on_screen_center_y = center_y + rotated_center_y; - if (center_x < rotated_x1 && center_x < rotated_x2) { - return false; - } - if (-center_x > rotated_x1 && -center_x > rotated_x2) { - return false; - } + let scaled_side = side * scale_factor; - if (center_y < rotated_y1 && center_y < rotated_y2) { + if (on_screen_center_x + scaled_side <= 0) { return false; } - if (-center_y > rotated_y1 && -center_y > rotated_y2) { + if (on_screen_center_x - scaled_side >= width) { + return false; + } + if (on_screen_center_y + scaled_side <= 0) { + return false; + } + if (on_screen_center_y - scaled_side >= height) { return false; } return true; From 69d6ae58280a8f14054e681e5f65cee815e9c8a1 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 30 Jun 2023 10:15:34 +0100 Subject: [PATCH 1601/1725] Allow readme link to be copyable, and ensure id=...&readme in the URL puts the readme file up --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index f922941a1..e1ccf487a 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit f922941a17cfdc3c37bf3e832961c0ca958e27d3 +Subproject commit e1ccf487abc3dd74735eefcfdf8dddb48f4f8951 From 0ac8ac3ec662f92f42bbb32e2caf293aefed2b74 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 30 Jun 2023 11:28:43 +0100 Subject: [PATCH 1602/1725] Support for http request xpath return format --- apps/android/ChangeLog | 3 ++- apps/android/boot.js | 1 + apps/android/metadata.json | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/android/ChangeLog b/apps/android/ChangeLog index f2807ba11..d966c1440 100644 --- a/apps/android/ChangeLog +++ b/apps/android/ChangeLog @@ -26,4 +26,5 @@ 0.25: Added option to 'ignore' an app from the message 0.26: Change handling of GPS status to depend on GPS events instead of connection events 0.27: Issue newline before GB commands (solves issue with console.log and ignored commands) -0.28: Navigation messages no longer launch the Maps view unless they're new \ No newline at end of file +0.28: Navigation messages no longer launch the Maps view unless they're new +0.29: Support for http request xpath return format \ No newline at end of file diff --git a/apps/android/boot.js b/apps/android/boot.js index d790a078e..7988c378f 100644 --- a/apps/android/boot.js +++ b/apps/android/boot.js @@ -231,6 +231,7 @@ //send the request var req = {t: "http", url:url, id:options.id}; if (options.xpath) req.xpath = options.xpath; + if (options.return) req.return = options.return; // for xpath if (options.method) req.method = options.method; if (options.body) req.body = options.body; if (options.headers) req.headers = options.headers; diff --git a/apps/android/metadata.json b/apps/android/metadata.json index ed55e1192..8489570f7 100644 --- a/apps/android/metadata.json +++ b/apps/android/metadata.json @@ -2,7 +2,7 @@ "id": "android", "name": "Android Integration", "shortName": "Android", - "version": "0.28", + "version": "0.29", "description": "Display notifications/music/etc sent from the Gadgetbridge app on Android. This replaces the old 'Gadgetbridge' Bangle.js widget.", "icon": "app.png", "tags": "tool,system,messages,notifications,gadgetbridge", From b61ede2ba86ece92fbb80bd9e356c5c59ca6d332 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 12:20:00 +0100 Subject: [PATCH 1603/1725] multitimer: remove unused code --- apps/multitimer/app.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index c3b9aa629..251ef8d90 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -596,8 +596,6 @@ function editAlarm(idx, a) { var menu = { "": { "title": "Alarm" }, "< Back": () => { - if (a.data.hm) a.js = "(require('Storage').read('multitimer.alarm.js') !== undefined) ? load('multitimer.alarm.js') : load('sched.js')"; - else if (a.js) delete a.js; if (idx >= 0) alarms[alarmIdx[idx]] = a; else alarms.push(a); require("sched").setAlarms(alarms); From 01992960b97162ca6c1fc19473245469fb38f589 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 12:20:14 +0100 Subject: [PATCH 1604/1725] multitimer: update hardmode --- apps/multitimer/app.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index 251ef8d90..adf85f05a 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -303,6 +303,7 @@ function editTimer(idx, a) { a.triggercheck = triggercheck; else delete a.triggercheck; + a.data.hm = v; }, }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), @@ -635,6 +636,7 @@ function editAlarm(idx, a) { a.triggercheck = triggercheck; else delete a.triggercheck; + a.data.hm = v; }, }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), From b47c3a6c8308e18171d9c17c1e4632e4c93f7695 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 12:20:29 +0100 Subject: [PATCH 1605/1725] multitimer: update menu title for `del` --- apps/multitimer/app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index adf85f05a..73b1dec2e 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -307,7 +307,7 @@ function editTimer(idx, a) { }, }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), - "Oneshot": { + "Delete After Expiration": { value: !!a.del, onchange: v => a.del = v }, @@ -640,7 +640,7 @@ function editAlarm(idx, a) { }, }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), - "Oneshot": { + "Delete After Expiration": { value: !!a.del, onchange: v => a.del = v }, From e5e2a338e1fcd61a7256bd1bca6dc4cb3c3e7498 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 12:20:43 +0100 Subject: [PATCH 1606/1725] batchart: remove log --- apps/batchart/widget.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/apps/batchart/widget.js b/apps/batchart/widget.js index d6e00b283..b1234f377 100644 --- a/apps/batchart/widget.js +++ b/apps/batchart/widget.js @@ -1,7 +1,7 @@ (() => { let recordingInterval = null; const Storage = require("Storage"); - + const switchableConsumers = { none: 0, lcd: 1, @@ -96,15 +96,14 @@ let logPercent = E.getBattery(); let logTemperature = E.getTemperature(); let logConsumers = getEnabledConsumersValue(); - + let logString = [logTime, logPercent, logTemperature, logConsumers].join(","); - + bcLogFileA.write(logString + "\n"); } } function reload() { - console.log("Reloading BatteryChart widget"); WIDGETS["batchart"].width = 0; if (recordingInterval) { @@ -121,4 +120,4 @@ }; reload(); -})(); \ No newline at end of file +})(); From 77ff7fa58b0f50f87c33454fe7d2bb7f5184541b Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 29 Jun 2023 21:16:25 +0100 Subject: [PATCH 1607/1725] btadv: localise definitions (for typescript) Typescript treats all TS files as sharing the same global namespace, so this prevents name collision errors. --- apps/btadv/app.js | 818 +++++++++++++++++++++++----------------------- apps/btadv/app.ts | 4 +- 2 files changed, 413 insertions(+), 409 deletions(-) diff --git a/apps/btadv/app.js b/apps/btadv/app.js index 67899370e..670691fb9 100644 --- a/apps/btadv/app.js +++ b/apps/btadv/app.js @@ -1,411 +1,413 @@ -var __assign = Object.assign; -var Layout = require("Layout"); -Bangle.loadWidgets(); -Bangle.drawWidgets(); -var HRM_MIN_CONFIDENCE = 75; -var services = ["0x180d", "0x181a", "0x1819"]; -var acc; -var bar; -var gps; -var hrm; -var hrmAny; -var mag; -var btnsShown = false; -var prevBtnsShown = undefined; -var hrmAnyClear; -var settings = { - bar: false, - gps: false, - hrm: false, - mag: false, -}; -var idToName = { - acc: "Acceleration", - bar: "Barometer", - gps: "GPS", - hrm: "HRM", - mag: "Magnetometer", -}; -var infoFont = "6x8:2"; -var colour = { - on: "#0f0", - off: "#fff", -}; -var makeToggle = function (id) { return function () { - settings[id] = !settings[id]; - var entry = btnLayout[id]; - var col = settings[id] ? colour.on : colour.off; - entry.btnBorder = entry.col = col; - btnLayout.update(); - btnLayout.render(); - enableSensors(); -}; }; -var btnStyle = { - font: "Vector:14", - fillx: 1, - filly: 1, - col: g.theme.fg, - bgCol: g.theme.bg, - btnBorder: "#fff", -}; -var btnLayout = new Layout({ - type: "v", - c: [ - { - type: "h", - c: [ - __assign({ type: "btn", label: idToName.bar, id: "bar", cb: makeToggle('bar') }, btnStyle), - __assign({ type: "btn", label: idToName.gps, id: "gps", cb: makeToggle('gps') }, btnStyle), - ] - }, - { - type: "h", - c: [ - __assign({ type: "btn", label: idToName.hrm, id: "hrm", cb: makeToggle('hrm') }, btnStyle), - __assign({ type: "btn", label: idToName.mag, id: "mag", cb: makeToggle('mag') }, btnStyle), - ] - }, - { - type: "h", - c: [ - __assign(__assign({ type: "btn", label: idToName.acc, id: "acc", cb: function () { } }, btnStyle), { col: colour.on, btnBorder: colour.on }), - __assign({ type: "btn", label: "Back", cb: function () { - setBtnsShown(false); - } }, btnStyle), - ] - } - ] -}, { - lazy: true, - back: function () { - setBtnsShown(false); - }, -}); -var setBtnsShown = function (b) { - btnsShown = b; - hook(!btnsShown); - setIntervals(); - redraw(); -}; -var drawInfo = function (force) { - var _a = Bangle.appRect, y = _a.y, x = _a.x, w = _a.w; - var mid = x + w / 2; - var drawn = false; - if (!force && !bar && !gps && !hrm && !mag) - return; - g.reset() - .clearRect(Bangle.appRect) - .setFont(infoFont) - .setFontAlign(0, -1); - if (bar) { - g.drawString("".concat(bar.altitude.toFixed(1), "m"), mid, y); - y += g.getFontHeight(); - g.drawString("".concat(bar.pressure.toFixed(1), " hPa"), mid, y); - y += g.getFontHeight(); - g.drawString("".concat(bar.temperature.toFixed(1), "C"), mid, y); - y += g.getFontHeight(); - drawn = true; - } - if (gps) { - g.drawString("".concat(gps.lat.toFixed(4), " lat, ").concat(gps.lon.toFixed(4), " lon"), mid, y); - y += g.getFontHeight(); - g.drawString("".concat(gps.alt, "m (").concat(gps.satellites, " sat)"), mid, y); - y += g.getFontHeight(); - drawn = true; - } - if (hrm) { - g.drawString("".concat(hrm.bpm, " BPM (").concat(hrm.confidence, "%)"), mid, y); - y += g.getFontHeight(); - drawn = true; - } - else if (hrmAny) { - g.drawString("~".concat(hrmAny.bpm, " BPM (").concat(hrmAny.confidence, "%)"), mid, y); - y += g.getFontHeight(); - drawn = true; - if (!settings.hrm && !hrmAnyClear) { - hrmAnyClear = setTimeout(function () { - hrmAny = undefined; - hrmAnyClear = undefined; - }, 10000); - } - } - if (mag) { - g.drawString("".concat(mag.x, " ").concat(mag.y, " ").concat(mag.z), mid, y); - y += g.getFontHeight(); - g.drawString("heading: ".concat(mag.heading.toFixed(1)), mid, y); - y += g.getFontHeight(); - drawn = true; - } - if (!drawn) { - if (!force || Object.values(settings).every(function (x) { return !x; })) { - g.drawString("swipe to enable", mid, y); - } - else { - g.drawString("events pending", mid, y); - } - y += g.getFontHeight(); - } -}; -var onTap = function () { - setBtnsShown(true); -}; -var redraw = function () { - if (btnsShown) { - if (!prevBtnsShown) { - prevBtnsShown = btnsShown; - Bangle.removeListener("swipe", onTap); - btnLayout.setUI(); - btnLayout.forgetLazyState(); - g.clearRect(Bangle.appRect); - } - btnLayout.render(); - } - else { - if (prevBtnsShown) { - prevBtnsShown = btnsShown; - Bangle.setUI(); - Bangle.on("swipe", onTap); - drawInfo(true); - } - else { - drawInfo(); - } - } -}; -var encodeHrm = function (hrm) { - return [0, hrm.bpm]; -}; -encodeHrm.maxLen = 2; -var encodePressure = function (data) { - return toByteArray(Math.round(data.pressure * 10), 4, false); -}; -encodePressure.maxLen = 4; -var encodeElevation = function (data) { - return toByteArray(Math.round(data.altitude * 100), 3, true); -}; -encodeElevation.maxLen = 3; -var encodeTemp = function (data) { - return toByteArray(Math.round(data.temperature * 10), 2, true); -}; -encodeTemp.maxLen = 2; -var encodeGps = function (data) { - var speed = toByteArray(Math.round(1000 * data.speed / 36), 2, false); - var lat = toByteArray(Math.round(data.lat * 10000000), 4, true); - var lon = toByteArray(Math.round(data.lon * 10000000), 4, true); - var elevation = toByteArray(Math.round(data.alt * 100), 3, true); - var heading = toByteArray(Math.round(data.course * 100), 2, false); - return [ - 157, - 2, - speed[0], speed[1], - lat[0], lat[1], lat[2], lat[3], - lon[0], lon[1], lon[2], lon[3], - elevation[0], elevation[1], elevation[2], - heading[0], heading[1] - ]; -}; -encodeGps.maxLen = 17; -var encodeGpsHeadingOnly = function (data) { - var heading = toByteArray(Math.round(data.heading * 100), 2, false); - return [ - 16, - 16, - heading[0], heading[1] - ]; -}; -encodeGpsHeadingOnly.maxLen = 17; -var encodeMag = function (data) { - var x = toByteArray(data.x, 2, true); - var y = toByteArray(data.y, 2, true); - var z = toByteArray(data.z, 2, true); - return [x[0], x[1], y[0], y[1], z[0], z[1]]; -}; -encodeMag.maxLen = 6; -var toByteArray = function (value, numberOfBytes, isSigned) { - var byteArray = new Array(numberOfBytes); - if (isSigned && (value < 0)) { - value += 1 << (numberOfBytes * 8); - } - for (var index = 0; index < numberOfBytes; index++) { - byteArray[index] = (value >> (index * 8)) & 0xff; - } - return byteArray; -}; -var enableSensors = function () { - Bangle.setBarometerPower(settings.bar, "btadv"); - if (!settings.bar) - bar = undefined; - Bangle.setGPSPower(settings.gps, "btadv"); - if (!settings.gps) - gps = undefined; - Bangle.setHRMPower(settings.hrm, "btadv"); - if (!settings.hrm) - hrm = hrmAny = undefined; - Bangle.setCompassPower(settings.mag, "btadv"); - if (!settings.mag) - mag = undefined; -}; -var haveServiceData = function (serv) { - switch (serv) { - case "0x180d": return !!hrm; - case "0x181a": return !!(bar || mag); - case "0x1819": return !!(gps && gps.lat && gps.lon || mag); - } -}; -var serviceToAdvert = function (serv, initial) { - var _a, _b, _c; - if (initial === void 0) { initial = false; } - switch (serv) { - case "0x180d": - if (hrm || initial) { - var o = { - maxLen: encodeHrm.maxLen, - readable: true, - notify: true, - }; - if (hrm) { - o.value = encodeHrm(hrm); - hrm = undefined; - } - return _a = {}, _a["0x2a37"] = o, _a; - } - return {}; - case "0x1819": - if (gps || initial) { - var o = { - maxLen: encodeGps.maxLen, - readable: true, - notify: true, - }; - if (gps) { - o.value = encodeGps(gps); - gps = undefined; - } - return _b = {}, _b["0x2a67"] = o, _b; - } - else if (mag) { - var o = { - maxLen: encodeGpsHeadingOnly.maxLen, - readable: true, - notify: true, - value: encodeGpsHeadingOnly(mag), - }; - return _c = {}, _c["0x2a67"] = o, _c; - } - return {}; - case "0x181a": { - var o = {}; - if (bar || initial) { - o["0x2a6c"] = { - maxLen: encodeElevation.maxLen, - readable: true, - notify: true, - }; - o["0x2A1F"] = { - maxLen: encodeTemp.maxLen, - readable: true, - notify: true, - }; - o["0x2a6d"] = { - maxLen: encodePressure.maxLen, - readable: true, - notify: true, - }; - if (bar) { - o["0x2a6c"].value = encodeElevation(bar); - o["0x2A1F"].value = encodeTemp(bar); - o["0x2a6d"].value = encodePressure(bar); - bar = undefined; - } - } - if (mag || initial) { - o["0x2aa1"] = { - maxLen: encodeMag.maxLen, - readable: true, - notify: true, - }; - if (mag) { - o["0x2aa1"].value = encodeMag(mag); - } - } - return o; - } - } -}; -var getBleAdvert = function (map, all) { - if (all === void 0) { all = false; } - var advert = {}; - for (var _i = 0, services_1 = services; _i < services_1.length; _i++) { - var serv = services_1[_i]; - if (all || haveServiceData(serv)) { - advert[serv] = map(serv); - } - } - mag = undefined; - return advert; -}; -var updateServices = function () { - var newAdvert = getBleAdvert(serviceToAdvert); - NRF.updateServices(newAdvert); -}; -var onAccel = function (newAcc) { return acc = newAcc; }; -var onPressure = function (newBar) { return bar = newBar; }; -var onGPS = function (newGps) { return gps = newGps; }; -var onHRM = function (newHrm) { - if (newHrm.confidence >= HRM_MIN_CONFIDENCE) - hrm = newHrm; - hrmAny = newHrm; -}; -var onMag = function (newMag) { return mag = newMag; }; -var hook = function (enable) { - if (enable) { - Bangle.on("accel", onAccel); - Bangle.on("pressure", onPressure); - Bangle.on("GPS", onGPS); - Bangle.on("HRM", onHRM); - Bangle.on("mag", onMag); - } - else { - Bangle.removeListener("accel", onAccel); - Bangle.removeListener("pressure", onPressure); - Bangle.removeListener("GPS", onGPS); - Bangle.removeListener("HRM", onHRM); - Bangle.removeListener("mag", onMag); - } -}; -var setIntervals = function (locked, connected) { - if (locked === void 0) { locked = Bangle.isLocked(); } - if (connected === void 0) { connected = NRF.getSecurityStatus().connected; } - changeInterval(redrawInterval, locked ? 15000 : 5000); - if (connected) { - var interval = btnsShown ? 5000 : 1000; - if (bleInterval) { - changeInterval(bleInterval, interval); - } - else { - bleInterval = setInterval(updateServices, interval); - } - } - else if (bleInterval) { - clearInterval(bleInterval); - bleInterval = undefined; - } -}; -var redrawInterval = setInterval(redraw, 1000); -Bangle.on("lock", function (locked) { return setIntervals(locked); }); -var bleInterval; -NRF.on("connect", function () { return setIntervals(undefined, true); }); -NRF.on("disconnect", function () { return setIntervals(undefined, false); }); -setIntervals(); -setBtnsShown(true); -enableSensors(); { - var ad = getBleAdvert(function (serv) { return serviceToAdvert(serv, true); }, true); - var adServices = Object - .keys(ad) - .map(function (k) { return k.replace("0x", ""); }); - NRF.setServices(ad, { - advertise: adServices, - uart: false, + var __assign = Object.assign; + var Layout_1 = require("Layout"); + Bangle.loadWidgets(); + Bangle.drawWidgets(); + var HRM_MIN_CONFIDENCE_1 = 75; + var services_1 = ["0x180d", "0x181a", "0x1819"]; + var acc_1; + var bar_1; + var gps_1; + var hrm_1; + var hrmAny_1; + var mag_1; + var btnsShown_1 = false; + var prevBtnsShown_1 = undefined; + var hrmAnyClear_1; + var settings_1 = { + bar: false, + gps: false, + hrm: false, + mag: false, + }; + var idToName = { + acc: "Acceleration", + bar: "Barometer", + gps: "GPS", + hrm: "HRM", + mag: "Magnetometer", + }; + var infoFont_1 = "6x8:2"; + var colour_1 = { + on: "#0f0", + off: "#fff", + }; + var makeToggle = function (id) { return function () { + settings_1[id] = !settings_1[id]; + var entry = btnLayout_1[id]; + var col = settings_1[id] ? colour_1.on : colour_1.off; + entry.btnBorder = entry.col = col; + btnLayout_1.update(); + btnLayout_1.render(); + enableSensors_1(); + }; }; + var btnStyle = { + font: "Vector:14", + fillx: 1, + filly: 1, + col: g.theme.fg, + bgCol: g.theme.bg, + btnBorder: "#fff", + }; + var btnLayout_1 = new Layout_1({ + type: "v", + c: [ + { + type: "h", + c: [ + __assign({ type: "btn", label: idToName.bar, id: "bar", cb: makeToggle('bar') }, btnStyle), + __assign({ type: "btn", label: idToName.gps, id: "gps", cb: makeToggle('gps') }, btnStyle), + ] + }, + { + type: "h", + c: [ + __assign({ type: "btn", label: idToName.hrm, id: "hrm", cb: makeToggle('hrm') }, btnStyle), + __assign({ type: "btn", label: idToName.mag, id: "mag", cb: makeToggle('mag') }, btnStyle), + ] + }, + { + type: "h", + c: [ + __assign(__assign({ type: "btn", label: idToName.acc, id: "acc", cb: function () { } }, btnStyle), { col: colour_1.on, btnBorder: colour_1.on }), + __assign({ type: "btn", label: "Back", cb: function () { + setBtnsShown_1(false); + } }, btnStyle), + ] + } + ] + }, { + lazy: true, + back: function () { + setBtnsShown_1(false); + }, }); + var setBtnsShown_1 = function (b) { + btnsShown_1 = b; + hook_1(!btnsShown_1); + setIntervals_1(); + redraw_1(); + }; + var drawInfo_1 = function (force) { + var _a = Bangle.appRect, y = _a.y, x = _a.x, w = _a.w; + var mid = x + w / 2; + var drawn = false; + if (!force && !bar_1 && !gps_1 && !hrm_1 && !mag_1) + return; + g.reset() + .clearRect(Bangle.appRect) + .setFont(infoFont_1) + .setFontAlign(0, -1); + if (bar_1) { + g.drawString("".concat(bar_1.altitude.toFixed(1), "m"), mid, y); + y += g.getFontHeight(); + g.drawString("".concat(bar_1.pressure.toFixed(1), " hPa"), mid, y); + y += g.getFontHeight(); + g.drawString("".concat(bar_1.temperature.toFixed(1), "C"), mid, y); + y += g.getFontHeight(); + drawn = true; + } + if (gps_1) { + g.drawString("".concat(gps_1.lat.toFixed(4), " lat, ").concat(gps_1.lon.toFixed(4), " lon"), mid, y); + y += g.getFontHeight(); + g.drawString("".concat(gps_1.alt, "m (").concat(gps_1.satellites, " sat)"), mid, y); + y += g.getFontHeight(); + drawn = true; + } + if (hrm_1) { + g.drawString("".concat(hrm_1.bpm, " BPM (").concat(hrm_1.confidence, "%)"), mid, y); + y += g.getFontHeight(); + drawn = true; + } + else if (hrmAny_1) { + g.drawString("~".concat(hrmAny_1.bpm, " BPM (").concat(hrmAny_1.confidence, "%)"), mid, y); + y += g.getFontHeight(); + drawn = true; + if (!settings_1.hrm && !hrmAnyClear_1) { + hrmAnyClear_1 = setTimeout(function () { + hrmAny_1 = undefined; + hrmAnyClear_1 = undefined; + }, 10000); + } + } + if (mag_1) { + g.drawString("".concat(mag_1.x, " ").concat(mag_1.y, " ").concat(mag_1.z), mid, y); + y += g.getFontHeight(); + g.drawString("heading: ".concat(mag_1.heading.toFixed(1)), mid, y); + y += g.getFontHeight(); + drawn = true; + } + if (!drawn) { + if (!force || Object.values(settings_1).every(function (x) { return !x; })) { + g.drawString("swipe to enable", mid, y); + } + else { + g.drawString("events pending", mid, y); + } + y += g.getFontHeight(); + } + }; + var onTap_1 = function () { + setBtnsShown_1(true); + }; + var redraw_1 = function () { + if (btnsShown_1) { + if (!prevBtnsShown_1) { + prevBtnsShown_1 = btnsShown_1; + Bangle.removeListener("swipe", onTap_1); + btnLayout_1.setUI(); + btnLayout_1.forgetLazyState(); + g.clearRect(Bangle.appRect); + } + btnLayout_1.render(); + } + else { + if (prevBtnsShown_1) { + prevBtnsShown_1 = btnsShown_1; + Bangle.setUI(); + Bangle.on("swipe", onTap_1); + drawInfo_1(true); + } + else { + drawInfo_1(); + } + } + }; + var encodeHrm_1 = function (hrm) { + return [0, hrm.bpm]; + }; + encodeHrm_1.maxLen = 2; + var encodePressure_1 = function (data) { + return toByteArray_1(Math.round(data.pressure * 10), 4, false); + }; + encodePressure_1.maxLen = 4; + var encodeElevation_1 = function (data) { + return toByteArray_1(Math.round(data.altitude * 100), 3, true); + }; + encodeElevation_1.maxLen = 3; + var encodeTemp_1 = function (data) { + return toByteArray_1(Math.round(data.temperature * 10), 2, true); + }; + encodeTemp_1.maxLen = 2; + var encodeGps_1 = function (data) { + var speed = toByteArray_1(Math.round(1000 * data.speed / 36), 2, false); + var lat = toByteArray_1(Math.round(data.lat * 10000000), 4, true); + var lon = toByteArray_1(Math.round(data.lon * 10000000), 4, true); + var elevation = toByteArray_1(Math.round(data.alt * 100), 3, true); + var heading = toByteArray_1(Math.round(data.course * 100), 2, false); + return [ + 157, + 2, + speed[0], speed[1], + lat[0], lat[1], lat[2], lat[3], + lon[0], lon[1], lon[2], lon[3], + elevation[0], elevation[1], elevation[2], + heading[0], heading[1] + ]; + }; + encodeGps_1.maxLen = 17; + var encodeGpsHeadingOnly_1 = function (data) { + var heading = toByteArray_1(Math.round(data.heading * 100), 2, false); + return [ + 16, + 16, + heading[0], heading[1] + ]; + }; + encodeGpsHeadingOnly_1.maxLen = 17; + var encodeMag_1 = function (data) { + var x = toByteArray_1(data.x, 2, true); + var y = toByteArray_1(data.y, 2, true); + var z = toByteArray_1(data.z, 2, true); + return [x[0], x[1], y[0], y[1], z[0], z[1]]; + }; + encodeMag_1.maxLen = 6; + var toByteArray_1 = function (value, numberOfBytes, isSigned) { + var byteArray = new Array(numberOfBytes); + if (isSigned && (value < 0)) { + value += 1 << (numberOfBytes * 8); + } + for (var index = 0; index < numberOfBytes; index++) { + byteArray[index] = (value >> (index * 8)) & 0xff; + } + return byteArray; + }; + var enableSensors_1 = function () { + Bangle.setBarometerPower(settings_1.bar, "btadv"); + if (!settings_1.bar) + bar_1 = undefined; + Bangle.setGPSPower(settings_1.gps, "btadv"); + if (!settings_1.gps) + gps_1 = undefined; + Bangle.setHRMPower(settings_1.hrm, "btadv"); + if (!settings_1.hrm) + hrm_1 = hrmAny_1 = undefined; + Bangle.setCompassPower(settings_1.mag, "btadv"); + if (!settings_1.mag) + mag_1 = undefined; + }; + var haveServiceData_1 = function (serv) { + switch (serv) { + case "0x180d": return !!hrm_1; + case "0x181a": return !!(bar_1 || mag_1); + case "0x1819": return !!(gps_1 && gps_1.lat && gps_1.lon || mag_1); + } + }; + var serviceToAdvert_1 = function (serv, initial) { + var _a, _b, _c; + if (initial === void 0) { initial = false; } + switch (serv) { + case "0x180d": + if (hrm_1 || initial) { + var o = { + maxLen: encodeHrm_1.maxLen, + readable: true, + notify: true, + }; + if (hrm_1) { + o.value = encodeHrm_1(hrm_1); + hrm_1 = undefined; + } + return _a = {}, _a["0x2a37"] = o, _a; + } + return {}; + case "0x1819": + if (gps_1 || initial) { + var o = { + maxLen: encodeGps_1.maxLen, + readable: true, + notify: true, + }; + if (gps_1) { + o.value = encodeGps_1(gps_1); + gps_1 = undefined; + } + return _b = {}, _b["0x2a67"] = o, _b; + } + else if (mag_1) { + var o = { + maxLen: encodeGpsHeadingOnly_1.maxLen, + readable: true, + notify: true, + value: encodeGpsHeadingOnly_1(mag_1), + }; + return _c = {}, _c["0x2a67"] = o, _c; + } + return {}; + case "0x181a": { + var o = {}; + if (bar_1 || initial) { + o["0x2a6c"] = { + maxLen: encodeElevation_1.maxLen, + readable: true, + notify: true, + }; + o["0x2A1F"] = { + maxLen: encodeTemp_1.maxLen, + readable: true, + notify: true, + }; + o["0x2a6d"] = { + maxLen: encodePressure_1.maxLen, + readable: true, + notify: true, + }; + if (bar_1) { + o["0x2a6c"].value = encodeElevation_1(bar_1); + o["0x2A1F"].value = encodeTemp_1(bar_1); + o["0x2a6d"].value = encodePressure_1(bar_1); + bar_1 = undefined; + } + } + if (mag_1 || initial) { + o["0x2aa1"] = { + maxLen: encodeMag_1.maxLen, + readable: true, + notify: true, + }; + if (mag_1) { + o["0x2aa1"].value = encodeMag_1(mag_1); + } + } + return o; + } + } + }; + var getBleAdvert_1 = function (map, all) { + if (all === void 0) { all = false; } + var advert = {}; + for (var _i = 0, services_2 = services_1; _i < services_2.length; _i++) { + var serv = services_2[_i]; + if (all || haveServiceData_1(serv)) { + advert[serv] = map(serv); + } + } + mag_1 = undefined; + return advert; + }; + var updateServices_1 = function () { + var newAdvert = getBleAdvert_1(serviceToAdvert_1); + NRF.updateServices(newAdvert); + }; + var onAccel_1 = function (newAcc) { return acc_1 = newAcc; }; + var onPressure_1 = function (newBar) { return bar_1 = newBar; }; + var onGPS_1 = function (newGps) { return gps_1 = newGps; }; + var onHRM_1 = function (newHrm) { + if (newHrm.confidence >= HRM_MIN_CONFIDENCE_1) + hrm_1 = newHrm; + hrmAny_1 = newHrm; + }; + var onMag_1 = function (newMag) { return mag_1 = newMag; }; + var hook_1 = function (enable) { + if (enable) { + Bangle.on("accel", onAccel_1); + Bangle.on("pressure", onPressure_1); + Bangle.on("GPS", onGPS_1); + Bangle.on("HRM", onHRM_1); + Bangle.on("mag", onMag_1); + } + else { + Bangle.removeListener("accel", onAccel_1); + Bangle.removeListener("pressure", onPressure_1); + Bangle.removeListener("GPS", onGPS_1); + Bangle.removeListener("HRM", onHRM_1); + Bangle.removeListener("mag", onMag_1); + } + }; + var setIntervals_1 = function (locked, connected) { + if (locked === void 0) { locked = Bangle.isLocked(); } + if (connected === void 0) { connected = NRF.getSecurityStatus().connected; } + changeInterval(redrawInterval_1, locked ? 15000 : 5000); + if (connected) { + var interval = btnsShown_1 ? 5000 : 1000; + if (bleInterval_1) { + changeInterval(bleInterval_1, interval); + } + else { + bleInterval_1 = setInterval(updateServices_1, interval); + } + } + else if (bleInterval_1) { + clearInterval(bleInterval_1); + bleInterval_1 = undefined; + } + }; + var redrawInterval_1 = setInterval(redraw_1, 1000); + Bangle.on("lock", function (locked) { return setIntervals_1(locked); }); + var bleInterval_1; + NRF.on("connect", function () { return setIntervals_1(undefined, true); }); + NRF.on("disconnect", function () { return setIntervals_1(undefined, false); }); + setIntervals_1(); + setBtnsShown_1(true); + enableSensors_1(); + { + var ad = getBleAdvert_1(function (serv) { return serviceToAdvert_1(serv, true); }, true); + var adServices = Object + .keys(ad) + .map(function (k) { return k.replace("0x", ""); }); + NRF.setServices(ad, { + advertise: adServices, + uart: false, + }); + } } diff --git a/apps/btadv/app.ts b/apps/btadv/app.ts index 85fd3a5d3..5e4930865 100644 --- a/apps/btadv/app.ts +++ b/apps/btadv/app.ts @@ -1,4 +1,5 @@ -// ts helpers: +{ +// @ts-ignore helper const __assign = Object.assign; const Layout = require("Layout"); @@ -713,3 +714,4 @@ enableSensors(); }, ); } +} From 76a60d6ae304b28e66ffa8a9d4d37975d1b761b0 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 29 Jun 2023 21:17:18 +0100 Subject: [PATCH 1608/1725] layout.d.ts: correct render() type --- typescript/types/layout.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/typescript/types/layout.d.ts b/typescript/types/layout.d.ts index ac4b0015c..167ede29d 100644 --- a/typescript/types/layout.d.ts +++ b/typescript/types/layout.d.ts @@ -140,6 +140,6 @@ declare module Layout { r?: Rotation, } | { type: "custom", - render: (h: Hierarchy) => void, + render: (h: RenderedHierarchy) => void, }; } From 08dc1caa9387a5aea94d1bef2ed37be4882f5bd9 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 29 Jun 2023 21:19:49 +0100 Subject: [PATCH 1609/1725] rep: fix duration rounding --- apps/rep/app.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 0471febf9..91ffbd010 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -249,8 +249,8 @@ const emptyLabel = (id: string) => { const pad2 = (s: number) => ('0' + s.toFixed(0)).slice(-2); const msToMinSec = (ms: number) => { - const sec = Math.round(ms / 1000); - const min = Math.round(sec / 60); + const sec = Math.floor(ms / 1000); + const min = Math.floor(sec / 60); return min.toFixed(0) + ":" + pad2(sec % 60); }; From 3a149e227fed67775fe3038527bcab810b478250 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 29 Jun 2023 22:54:38 +0100 Subject: [PATCH 1610/1725] rep: longer buzzes on rep change ... to increase chance of the user feeling the buzz --- apps/rep/app.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 91ffbd010..ed84bb48f 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -287,7 +287,17 @@ const drawRep = () => { }; const buzzInteraction = () => Bangle.buzz(20); -const buzzNewRep = () => Bangle.buzz(500); +const buzzNewRep = () => { + let n = 3; + const buzz = () => { + Bangle.buzz(1000).then(() => { + if (--n <= 0) + return; + setTimeout(buzz, 250); + }); + }; + buzz(); +}; Bangle.loadWidgets(); From 869093f3a4b1a7f948df33b6ee4e63a70bcba9d4 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 08:53:28 +0100 Subject: [PATCH 1611/1725] rep: add app image --- apps/rep/app.png | Bin 0 -> 8375 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/rep/app.png diff --git a/apps/rep/app.png b/apps/rep/app.png new file mode 100644 index 0000000000000000000000000000000000000000..3b38ddbf76b5c527c3065c8522356e28add57492 GIT binary patch literal 8375 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 literal 0 HcmV?d00001 From 08cd679f38eb4b70ac0e6ca06cb2d7eecfa738e3 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 08:55:19 +0100 Subject: [PATCH 1612/1725] rep: add app icon --- apps/rep/app-icon.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 apps/rep/app-icon.js diff --git a/apps/rep/app-icon.js b/apps/rep/app-icon.js new file mode 100644 index 000000000..87bad2960 --- /dev/null +++ b/apps/rep/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("k8wxH+ABwUBkgACAoIXPEZlJumYzGe4XCzwFBulJFK8Ap4gB4YABEgIoBAwfCp4oTJIOeDQVzOANJAAUkktzGQWYKKMAC4WYp50CJQZ1COgNPzARBugnJstlEoYTCIgIiDEIQrBFQeYktJHIQnDxgmHEoIeBkhPCOgQcBAAUlBgyHBE4hxHug2BpIpBC4MlJAhKDuidCTgQUBO5K9BRgMkCAOYIQQhBzFzJgNzBgIzDJYRPBeBMAS4VzLwRPCHYMwmNbrcxmBfCCAgzBDYImGXwV0p5PFpNbw2G2AACAoNbN4RLEuh2HkgwBkpPCCwUAwGMEgYADxmAJYQ2BDQkkEwiRBR4LCCBwMrJIgAHw0rHYaiBAQRzF4clAQlzrZLIJ4lbV4UlAQh1DQARYBJgWYgxMMJwUGJAJOCDgK2BEwQgBulJaIXDttVH4MGg0AAAwJBLYNVtvDpJRBpL0BpImDEYILFbwIaBABRcBwwaBIIYdBp4mCp4FBEwRcCEwWFABQmCRgYmBEAQmDI4LoBEwOYkiMCExuwkgVBSQKPB4QmDgFJgEkAQMlAQImRDQMlAQMkEARNpPQK/BTYW8Eye8TYTFCE34m/E34mH4VJuYCBfQImTCoNJ4VzAQImDgFJgEkAQMlAQImRDQMlAQMkEARNpTYNPuabC4UlwwmPw0l4SbCuYgCEwlzEwV0KAImCrYAKEwS/EDoQmDKYILDAQNtquMDQIAKreMqttHwJBFEwUkzxvBLgQCBRgQAMLgKJBRgfCz0kdIeY4clAQlzH4IlLLYJJBzElAQjpD/znBzACCJwPClZOMw0rCIJMCuYCCEoZ1BBwJYBCIQ1CwBPIxlcMoQ7DDQRzDOoV0aANPQAQWDrbeBJImGrY2DWwVPDgRzEE4RLCQ4Q+CegMAmExrdbmMwBYPCCAlzJ4QlGEwJLFz0lUQPDDgIZBGYIMBGINzkueJ4lJEwXDOw5vBJYQZBuhFCAATRBugzDCgRfCJgwnDJYUkC4IABuckkpMBAAMlBgxPCEpQnDT4UlJQZICKQgHBGAITBEpp3DCYVPpIhBRgIiCzwrBpNPHIVzEpwnCTgadCOoYECGoSaCEovN5ooMeAK/DJQJQDGQVPJQ4lMKIh0BOoIACAoJ0BN6ApMgEkAAQFBC54=")) From 0bb1fb3ffe6a84462273db9cdacf0f05b61336ad Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 12:18:41 +0100 Subject: [PATCH 1613/1725] rep: redraw instantly on interaction --- apps/rep/app.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index ed84bb48f..152db3eb3 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -145,6 +145,7 @@ const layout = new L({ cb: () => { buzzInteraction(); state?.rewind(); + drawRep(); }, }, { @@ -177,6 +178,7 @@ const layout = new L({ cb: () => { buzzInteraction(); state?.forward(); + drawRep(); }, } ] From 1126105ea228b4b53e2595165f3a764955710cc9 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 12:20:49 +0100 Subject: [PATCH 1614/1725] rep: change interaction buzz & buzz once initially --- apps/rep/app.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 152db3eb3..976dafd14 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -41,6 +41,7 @@ const ffStep = 5 * 1000; let state: State | undefined; let drawInterval: IntervalId | undefined; let lastRepIndex: number | null = null; +let firstTime = true; const renderDuration = (l: Layout.RenderedHierarchy) => { let lbl; @@ -288,9 +289,10 @@ const drawRep = () => { layout.render(); }; -const buzzInteraction = () => Bangle.buzz(20); +const buzzInteraction = () => Bangle.buzz(250); const buzzNewRep = () => { - let n = 3; + let n = firstTime ? 1 : 3; + firstTime = false; const buzz = () => { Bangle.buzz(1000).then(() => { if (--n <= 0) From d51171d8ac8ab5e3331a69e9910eb338aad49b9c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 12:21:17 +0100 Subject: [PATCH 1615/1725] rep: v1 README --- apps/rep/README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/rep/README.md b/apps/rep/README.md index 96e09fcbf..85d41956d 100644 --- a/apps/rep/README.md +++ b/apps/rep/README.md @@ -7,7 +7,6 @@ You can rewind, fast-forward and play/pause with the control buttons. # Todo -- [ ] Check colours on light theme - +- [ ] Recorder functionality - [ ] Fastload: scoping, unregister layout handlers etc - [ ] Swipe handlers as well as "<<" / ">>" buttons From 02999eeb7a7a0c7a1f8f0e3e80c09f3a1c68c204 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 18 Jun 2023 22:19:00 +0100 Subject: [PATCH 1616/1725] rep: generate JS --- apps/rep/app.js | 252 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 252 insertions(+) create mode 100644 apps/rep/app.js diff --git a/apps/rep/app.js b/apps/rep/app.js new file mode 100644 index 000000000..0313f5af2 --- /dev/null +++ b/apps/rep/app.js @@ -0,0 +1,252 @@ +{ + var L = require("Layout"); + var storeReps = require("Storage") + .readJSON("rep.json"); + if (storeReps == null) { + E.showAlert("No reps in storage\nLoad them on with the app loader") + .then(function () { return load(); }); + throw new Error("no storage"); + } + var reps_1 = storeReps.map(function (r, i, a) { + var r2 = r; + r2.accDur = i > 0 + ? a[i - 1].accDur + r.dur + : r.dur; + return r2; + }); + var fontSzMain = 54; + var fontScaleRep = 2; + var fontSzRep = 20; + var fontSzRepDesc = 12; + var blue_1 = "#205af7"; + var ffStep_1 = 5 * 1000; + var state_1; + var drawInterval_1; + var lastRepIndex_1 = null; + var firstTime_1 = true; + var renderDuration = function (l) { + var lbl; + g.clearRect(l.x, l.y, l.x + l.w, l.y + l.h); + if (state_1) { + var _a = state_1.currentRepPair(), i = _a[0], repElapsed = _a[1]; + if (i !== null) { + var thisDur = reps_1[i].dur; + var remaining = thisDur - repElapsed; + lbl = msToMinSec_1(remaining); + var fract = repElapsed / thisDur; + g.setColor(blue_1) + .fillRect(l.x, l.y, l.x + fract * l.w, l.y + l.h); + } + else { + lbl = msToMinSec_1(repElapsed); + } + } + else { + lbl = "RDY"; + } + if (l.font) + g.setFont(l.font); + g.setColor(l.col || g.theme.fg) + .setFontAlign(0, 0) + .drawString(lbl, l.x + (l.w >> 1), l.y + (l.h >> 1)); + }; + var layout_1 = new L({ + type: "v", + c: [ + { + type: "h", + c: [ + { + id: "duration", + lazyBuster: 1, + type: "custom", + font: "Vector:".concat(fontSzMain), + fillx: 1, + filly: 1, + render: renderDuration, + }, + { + id: "repIdx", + type: "txt", + font: "6x8:".concat(fontScaleRep), + label: "---", + r: 1, + }, + ] + }, + { + type: "txt", + font: "Vector:".concat(fontSzRepDesc), + label: "Activity / Duration", + }, + { + id: "cur_name", + type: "txt", + font: "Vector:".concat(fontSzRep), + label: "", + col: blue_1, + fillx: 1, + }, + { + type: "txt", + font: "Vector:".concat(fontSzRepDesc), + label: "Next / Duration", + }, + { + id: "next_name", + type: "txt", + font: "Vector:".concat(fontSzRep), + label: "", + fillx: 1, + }, + { + type: "h", + c: [ + { + id: "prev", + type: "btn", + label: "<<", + fillx: 1, + cb: function () { + buzzInteraction_1(); + state_1 === null || state_1 === void 0 ? void 0 : state_1.rewind(); + drawRep_1(); + }, + }, + { + id: "play", + type: "btn", + label: "Play", + fillx: 1, + cb: function () { + buzzInteraction_1(); + if (!state_1) + state_1 = new State_1(); + state_1.toggle(); + if (state_1.paused) { + clearInterval(drawInterval_1); + drawInterval_1 = undefined; + } + else { + drawInterval_1 = setInterval(drawRep_1, 1000); + } + drawRep_1(); + }, + }, + { + id: "next", + type: "btn", + label: ">>", + fillx: 1, + cb: function () { + buzzInteraction_1(); + state_1 === null || state_1 === void 0 ? void 0 : state_1.forward(); + drawRep_1(); + }, + } + ] + } + ] + }, { lazy: true }); + var State_1 = (function () { + function State() { + this.paused = true; + this.begin = Date.now(); + this.accumulated = 0; + } + State.prototype.toggle = function () { + if (this.paused) { + this.begin = Date.now(); + } + else { + var diff = Date.now() - this.begin; + this.accumulated += diff; + } + this.paused = !this.paused; + }; + State.prototype.getElapsedTotal = function () { + return (this.paused ? 0 : Date.now() - this.begin) + this.accumulated; + }; + State.prototype.getElapsedForRep = function () { + return this.currentRepPair()[1]; + }; + State.prototype.currentRepPair = function () { + var elapsed = this.getElapsedTotal(); + var i = this.currentRepIndex(); + var repElapsed = elapsed - (i > 0 ? reps_1[i - 1].accDur : 0); + return [i, repElapsed]; + }; + State.prototype.currentRepIndex = function () { + var elapsed = this.getElapsedTotal(); + var ent; + for (var i = 0; ent = reps_1[i]; i++) + if (elapsed < ent.accDur) + return i; + return null; + }; + State.prototype.forward = function () { + this.accumulated += ffStep_1; + }; + State.prototype.rewind = function () { + this.accumulated -= ffStep_1; + }; + return State; + }()); + var repToLabel_1 = function (i, id) { + var rep = reps_1[i]; + if (rep) + layout_1["".concat(id, "_name")].label = "".concat(rep.label, " / ").concat(msToMinSec_1(rep.dur)); + else + emptyLabel_1(id); + }; + var emptyLabel_1 = function (id) { + layout_1["".concat(id, "_name")].label = " / 0m"; + }; + var pad2_1 = function (s) { return ('0' + s.toFixed(0)).slice(-2); }; + var msToMinSec_1 = function (ms) { + var sec = Math.floor(ms / 1000); + var min = Math.floor(sec / 60); + return min.toFixed(0) + ":" + pad2_1(sec % 60); + }; + var drawRep_1 = function () { + layout_1["duration"].lazyBuster ^= 1; + if (state_1) { + var i = state_1.currentRepIndex(); + if (i !== lastRepIndex_1) { + buzzNewRep_1(); + lastRepIndex_1 = i; + var repIdx = layout_1["repIdx"]; + repIdx.label = i !== null ? "Rep ".concat(i + 1) : "Done"; + layout_1.forgetLazyState(); + layout_1.clear(); + } + layout_1["play"].label = state_1.paused ? "Play" : "Pause"; + if (i !== null) { + repToLabel_1(i, "cur"); + repToLabel_1(i + 1, "next"); + } + else { + emptyLabel_1("cur"); + emptyLabel_1("next"); + } + } + layout_1.render(); + }; + var buzzInteraction_1 = function () { return Bangle.buzz(250); }; + var buzzNewRep_1 = function () { + var n = firstTime_1 ? 1 : 3; + firstTime_1 = false; + var buzz = function () { + Bangle.buzz(1000).then(function () { + if (--n <= 0) + return; + setTimeout(buzz, 250); + }); + }; + buzz(); + }; + Bangle.loadWidgets(); + g.clear(); + drawRep_1(); + Bangle.drawWidgets(); +} From ee77b7e117c90b307a4c55f4a242c11d359eb9c6 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 12:50:01 +0100 Subject: [PATCH 1617/1725] rep: metadata description update --- apps/rep/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/rep/metadata.json b/apps/rep/metadata.json index a62d5e7e5..faf3a636d 100644 --- a/apps/rep/metadata.json +++ b/apps/rep/metadata.json @@ -2,7 +2,7 @@ "id": "rep", "name": "Rep", "version":"0.01", - "description": "Steps through reps, to aid in run schedules", + "description": "Time running reps, using a rep schedule/program uploaded via the app loader", "icon": "app.png", "tags": "run,running,fitness,outdoors", "supports" : ["BANGLEJS2"], From 70b2772b21a5854a3b20b5aa8fa3d9d77f450378 Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Fri, 30 Jun 2023 14:24:49 +0200 Subject: [PATCH 1618/1725] gipy: fix for missing paths in map --- apps/gipy/pkg/gps.js | 38 +++++++++++++++++++------------------- apps/gipy/pkg/gps_bg.wasm | Bin 747965 -> 748078 bytes 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/apps/gipy/pkg/gps.js b/apps/gipy/pkg/gps.js index 7733bc79e..ce9ebe5f8 100644 --- a/apps/gipy/pkg/gps.js +++ b/apps/gipy/pkg/gps.js @@ -7,20 +7,6 @@ heap.push(undefined, null, true, false); function getObject(idx) { return heap[idx]; } -let heap_next = heap.length; - -function dropObject(idx) { - if (idx < 36) return; - heap[idx] = heap_next; - heap_next = idx; -} - -function takeObject(idx) { - const ret = getObject(idx); - dropObject(idx); - return ret; -} - let WASM_VECTOR_LEN = 0; let cachedUint8Memory0 = new Uint8Array(); @@ -98,6 +84,20 @@ function getInt32Memory0() { return cachedInt32Memory0; } +let heap_next = heap.length; + +function dropObject(idx) { + if (idx < 36) return; + heap[idx] = heap_next; + heap_next = idx; +} + +function takeObject(idx) { + const ret = getObject(idx); + dropObject(idx); + return ret; +} + const cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }); cachedTextDecoder.decode(); @@ -433,9 +433,6 @@ function getImports() { imports.wbg.__wbg_log_d04343b58be82b0f = function(arg0, arg1) { console.log(getStringFromWasm0(arg0, arg1)); }; - imports.wbg.__wbindgen_object_drop_ref = function(arg0) { - takeObject(arg0); - }; imports.wbg.__wbindgen_string_get = function(arg0, arg1) { const obj = getObject(arg1); const ret = typeof(obj) === 'string' ? obj : undefined; @@ -444,6 +441,9 @@ function getImports() { getInt32Memory0()[arg0 / 4 + 1] = len0; getInt32Memory0()[arg0 / 4 + 0] = ptr0; }; + imports.wbg.__wbindgen_object_drop_ref = function(arg0) { + takeObject(arg0); + }; imports.wbg.__wbindgen_string_new = function(arg0, arg1) { const ret = getStringFromWasm0(arg0, arg1); return addHeapObject(ret); @@ -675,8 +675,8 @@ function getImports() { const ret = wasm.memory; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper2302 = function(arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 259, __wbg_adapter_24); + imports.wbg.__wbindgen_closure_wrapper2298 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 260, __wbg_adapter_24); return addHeapObject(ret); }; diff --git a/apps/gipy/pkg/gps_bg.wasm b/apps/gipy/pkg/gps_bg.wasm index c66621af861e9037bdd63118817d5ad97ea025eb..6999cb94673213057a9f2e2d2480063a5033c031 100644 GIT binary patch delta 153076 zcmd3P31AdewszgB-qK6DngAgSp}N@;AP_*=6iuOk;s!I0%ZxMPuE7n*H~MB6J8n!= z)M%lFiWn3}P*fC@sGvbnq9URqB8vva5fwFzs2N55zwh4aPA4++=FRh;_kwoSxy!ld zo_p@O=bpRN$~P(>+E5wQPWkP5Len&{*mw9%(Vh{J7U`+JH2$=k_UqHf&o>4cd|WnF z)9^N9hBj4~ppm}pGVP|{4NavlV-S82!sKFxm?6<12skcFr*B%(vk&lImevqHgD8R$ zx5SRDve+5vv=bB~hBKj;lPQ7Wk06K$XW#)43Dq+L&u~r`r;jE*647Py2~rj9GiI;~ zpn{JXGSCMaWGILcmpOkGlbm1crOtu+e$FhtzwkTD^dx>a>T~dWfpI89j6V2%+hF*& zMsNJ~^8K~cZ(MTfSzS*)`I1x5Isf#t&N%<%bAEgB1*g`WaoWY2->LK;Rwfg4@0j4s z|2Y4&i_f{>d?a!FDPVfs{}p~844i@Af*?!SKR6!0e+Zt1-}i$j;P=4LHTZoYbY6Pc z=uw)_crLLjA@qQ*i9j$I_G@`)$2_5l5t>gE_{$sEB~R-j{2Ic7dLR%G_z!>hG4LDE zf`*PLO&30092O4x0%4z)@c9oe(1QK+C~$OTR?X)FVmyN)7}rV;=%=NHKw`}(@#(tm z3nHo_fHXm$p=p6Y_kbP@GPMA40imOOT}uGc0%e5(B*uRvLksF9@@;_7LIAbEC@pUs z$mzlae$mU{$FJw-pt|Pgjqn@a-rWqg%FS>?;ji81afJ^v`fRVxvUKvOgM6|A@v@&0%5ePDI zIYUrV8i+OBpQjD;gDyQE!NGv02T)UEybpAuiij0fDas57K}i`9c4avJbe~oj2usd` zC4oUkLhFjkgK9RAqF?fdwE}H{D68Zr$M7e#UPb937_E^Tqmf1gx{x(~gcV7~in#Ej zI;Ely8pP;rps6SW+M(bY+nr<_C{Ym|D#p_I7et_*0AeI6qNt2PnL=kU69NrDq)$WC z^dKoh6Ci?Z3pH1=D0R@u3+pO$(D72nzK@VKSB# z!HW)=z;7W-*7qZ!rfJ|0*}ypFsRmV11F4gKe=*>IFv4aajS56T09X#eAya~=ihO$c zOwa>98wZWmP1Kfc2746h1RS6jnGFaitBPKaFmxavcm+v7`G#)kh$OfABDS06 zCry{Cq8+$qNc7xRa5AJsOSB&BAX)^P|G(bC5w$><6#> zhY$~Pum-FVNJY0~(*OvA3RY150gv;?c<(f-84#+5vYPxM%jF-jpy^m+HoMsg+RK2v~=|NF)N*7)A&j0@o0TrbllGg7x4NNMSBYRnX|l!4Pk< zoEZNMEu7Xhs1_|49o(~uRo0V$kdL_9|0vFY(6_*4^a4$0m$jwdx_#}zVL!`|MT2)&Obxj?VQ^s zDQlkofitmrB}xD?#7sIi^z@oCiDHsp2Ym{ z4T;YKOU35Ip2U{K*2L9uNB>LW?!1r8djs?HzD!&d-6$3Yw#QbR&zaj}Un12Fc}soU z5-ZI;CZUCiN2A*kPn#W`MV1 zpXR?EdnP*1Tx{N&c*blpw8NkEQ zFB5kqHkntO&j#*5vUTR3#5;*~;akId5^i|6f2sMRXp1d2=Ot#`is;#Suf+Ex)|!{+ z)dPCbe@Eh5^J9HoXb+%!5(^S{@-p2UMl zaerb_T9P;$0k`F?2gwg7X2!N9Hk)sQyv2#D@&1;%Q4;RNuLSg_`39iviK}88%s(f7 z0HfENuOj5W#1)8r-F!`^U2DFV_yPrd8GkMQdicx4mgp99YxITKR&!f)oB59UdE&kN zrvt5tTNCNa6QAm@NxECicg>l3ugBkrzZ2b^_*1M&-;?-je0Thc#9v}{u{-nUS?k`G)d}{78 zuR~irpI9B=o4?L{#{4+{8FQ1lIt|3T@;=GCE3_%RP@fliD*R$%ZfJ@BrNo_~m5HlC z&iwdu@g|e<(2&>cpQCRHeV4a4@9ogr;TC;!sMTC+&Wilid_4a})vH|bC4AH{}4jKf>>dqBq4@Me8} zXt%i`u~IBIwuRnE+>}^s+#UKR@@C@o#Oty7#-9V>KYv)dYU#4VaYD>;zV30XSnC{F zG}FH-KHgXDtST=_uGOO_MJ!?0=`~3op7nYS?DNfDw8Kq=dxC(&drgVGVnk&DsFS(Pxvy9MP$s#vvDch~8+|Ie6(w(r zgM=3O67e_;23;OLKrBObC2{Y^qi2)c@*2x;1EGK6WMt|c80-9&Hb8Yf)Q)~Q0YS@0+ zVmZyk%!(f`_bKh(5RQqc9RcnaedA-*5n0S`=es`3eNFM$K@^}EssMpBEPaGtuRGIA z3fxbdjIi@v--b2b_w2hoUa$_ZwRDB55wScd)6ik3ga*i$FETlf@1Frh&rh z{@ujJrN{LjDv+(Ne1EaZdAhs|@7v0MB&ukgjHo(x#q`p-6fr3Q7$cKDw1sXrcwx@E ziqYbFCp4fJaFq|J@NJ7nr#n;nl>)qIKr1`Rd9suA&UTUs9$}3G_d_T7bYQXUBuZ>@ zN-i1H4>-mRk~q$mIIJv=Oy%k-{~`6eDyNsO$e~{IsBdDJ4w?PW!Gl5l!oj4zd9bAZ zERXswL#{^PoFVt(_n<2N?x^bLTP>nLlk(Dks7+R$GwfKg+j)A}Bp({K$oX_6D_$}D z$p9)|DD72WDjT6em#-t-TlUi4NhwR1Mz>>L?u^{1(V6D{VRGpCYU$W8-&T*rsh?|}CnBLCIqr;G=jiY-Nf|wIYv1}HM zKbBsuhs>9p=$IaP$O%=!oRwo#&PwEZa15pJl`$paMdzb2r=77eQJm2nag05DN2zz2 z?aDHk(UsJ;@#t~c#`pzGo~3Bd<#!KRMK#!YHGAZMKcpHUOkJp%sg%&UdrydI<6{XT z$uQvP15cj%4mCY`O+2O*+XqQC(2^U}PX_H^kkS^#c7GYPlR-W&V@d|?$_bJIz0J3s z*w_K(*FgDKY7M&GZ(OK7=Qn z^<#P{P8NcbOqXGxdao1C^j?LB)p9s(gT$*?Iq3Fkm-$P7Ec26z$>^-*ow)}ckw&Bc zoOCXemPD|F?OjId{;IX8w8DP%5`$AQjJk-jk+ zy38@8L5)a);ktcEP0HsK9&I|mJGgrEYOnmPR-oM=GuTa4fCJ{;G?J>^h2bYJ} zdc&Q$#z|Hm0?9n1nv!{S^+{rp^Ir9_!?N8bIzC56GJ+O8G$LCR-N@eg3Ut*Irsfol z9uV=mjx-JKw7=v~QSE8WrQ?=~ozB^ZTq?eDwjVO;pwDO=C@Uc&)FAm!#gZXX6QW<) z{n@iUguTpl^A0`n!rwPPCNo??4*gMads0p{Zu!BwQ9;jDzkgPKF zQ1irLL{{M>tE8?kmsrOhMyy93My$U-j9BL%My#J6_7AZ_<)LYT^~A#^))cWK^Wwv+ zfNtC2L>HOV&yNCoMx6M-VrTNCN}#=L(mzC7mO=aRqyvDh-w}r*&$J^pm1j*o>b^>? z(LjBbfdV^7fWJ^FDIJF0v?Ke%_`d1L-eQ~c*pWjZA|D*t3#u{NopPCLKNKD{39+Xh z)gJ|2dsHuyTA)b1VRFD(cT}=FMn(~ZQiVDse>1fCj~-O=j)-J7 z+}z+yK88HK>=?<@P%ck*AM;7?QmfwffAtaPs)SSId_t4=Q$)>Qbs0?t`3PA7B;V-N{VY9f z8!8HAGDdsC(5q2Z7^8LrHAGvU9ORx8HI4^l^A1 z5-TOShVu)hbD@Jgm4e(g(yv!5nwyMNFhevdseyWb4)p<2ALu~6oUM`e9*1iDt39*n%<)zhs6K7{MKXzP)>u8PLUX4n%VB-- zHqhu{{wZ)8gui-PGJ%*?Mop5GU+D-FY{)qj9m~MwB zr2HV4jmLiw9AWuOQhsI&+Ij4TLHmz2aJU-ivYNelp7Y0<{koEW!n~gZ;niH_hcbr0 zVo;jxZKi@~@g8h(6ukjlmnIsy!iY@_fD<7O7_`js*PD;a&5gnLSyID@{W{w1?NOkW$rpa8t}e>0b9pOo(+w&59?+D1CJhg$(YLKdYJ=4Ctn`QEMP_ zJ!Xpq_knEL|JUo|V+AM_bpyuNbn`EmWsK8D8c=F>Eu;yfWMP&9^Var)izmbeSV&c2 zpk77@I8cp%A{u~2LK=;l3PU3@u%|CWmgIzhF_PA764X54R$VT-r=hJiniNXC30pNx z$C?+jKXfS7XYWMiGR0CIvlcBfOck8!s=_wOFth>6PIXfRvUD4*0=AoI2&vP-xb7p3 z^}74&@5Mk#mB$@LTo#S&U6S3h2|95e2!IacpaCT7SLx`BV)}SY(k1KtcIbEJhd<_g zw{{LdRMU{ve;W%ra{z?8um4_@cVL2~Z(mH{R2&y<_yo9KQE5g`9%I53TLK9*=erf^>y`jA`g+CtI;U*y0NSrcIe?(mO|2^WO zS>nt|YO*&T_Mfuf>(wd{IBU3A7mSg=a$BcwE*X8fjYO=DD{&j2W zzh-&3oj5g#_z`jRegC8a`_Ib*96TA$sTt3Yh|B-qBaZ$fPgvFT>_@~!|M!RsW{EQ! zI!qkGKQ&F+&J7QUnv(oIyB!X-48zpiw^Q%_|1hce=S58t_Y(~coRO(n-M;Ny7dlY~IXl;k zSRr$fY31=J%%2E<;^v%$73EuuKl$b}`O#ula^aosA7=_H{m^Texa*YwyqG@lssT8RvrI?Rma%i%pWVmT@h8mS4 zH?pPZ*=u(dc(N_?NEU>c5iFLD1bC_{fQ|X(0NW`)b~9!=heRORmzRqGE-r~c*XS#U z8|)tvAUPk-%^z+jK#o%#^QUv%5t0DeYLQ$7C^SQW9IxoB=wkPg>sD~LT!m>f2fbRI zZrC_{827-%#_%Mh883U`FSGlcOCJETW-_WIc3RYoK+>ojY&w$GnKCIw(Ok;l(#!Bx zjtBoZzZAe&Zhp|2&Qwk6>>LE1|0B0?DZEy`MBv3jv1JILTFpq@R3&lr5qlCx9m2GA z@XB1MV$YVbY3a-%qcWLmp_JL3FKy4wo}Y=X_oD0Y%wU(R51zDBr!)JUoOmqfWb-$9 z@r^3JQkG9`!R5_11fsFb-yI;nVZ72ZQH}dpG<)YfXY-w<-Fu9dt|R!<;!*>^muByt z=S1g~q(`^=2%;cbgN8w^^#z`fO}W%o8Oo(5J#H&x-wvKP5`_? zaN;U=5DXY>v_VIMR|>s9FhUQ-Gj)Ruda}gQk1p5e=-AbSmAXU{OQ3c=k_5aY zv-M;tk<{x}7=cI;MhY%*8(xZ8da@@|)ag)zhPiR+^n33Yr@Y>z*}d&OA7XWh`@!rM z6|it;r+}S1It8?LPEq?&rxeXVWnS;hxbMZ1*+@J>---2Ud-evtw(@nSzs9`QnY!?z z(lt2TVQwLEGP<_^i&VGx2C0d;NMP<5wg&2G(PvD@IAcWUpi zfH5H!QgE3uO`)1p&@2VL_J`Y=aLC6FCJlGh zE27Z3{DIQbKT}~w(!j#6y<0&(K%t2JrG%^ipkTyqQ*nd>5&Qf0lvwP!;vI?Ek2qh% z{*#1cJ|kk^@Qx!E_YikD#fy^=@Bb+tubqz#Do0Iu|w^;Jo|b)btf^GAKGZV#kwE<_bDSL3b(W z=!hLd+(QaFDq>rJo>I_}5xW%776l!lpsy7)DPor(&e5@#P%W6 zZ3-HypgR>*6|v{5w;_rn_bF&_#Lh#WhZIz)@+?=-AVO)hqyh)R;6l=86f{6FXpMp@ zR9!YHs9dG|KtcT#w?0)+Kb5j}v#d&ARp630B-BUcyI#fhmX%K1w{U>S;>hJ&BoW0bU!8)A(kjwbV2_9$ zL4orWR2Z?l0$QY??h(5Opp^>hrug%wg1Rbc{)>VNB6c^V+^e825&NdCvgm}8GFL%n z#4bwu()N4>#v|BN?6aR#P`)B-g@R(Lu;&yMRcJOSD56rnqoA-vYJZ?0C?ZPC_X>g{ zVn4cq3P&m;_MF46Rvw{#kBR=n>8K(V!PkDvK`oT>q%5Kh+mWNG$T%Zup-jK|jZ?d{hj`DqZRsHK zp!34g{*hXET9s0~#c5kQx~$d&xCE#)dq+^tMm2kvdI@4j{V~g^SZkK`5zCz$myH|n zAchzW;{prs`h=JS76|Ol2$&CJ)fdwbjOswWgxy+^$9svtIRhW>ExvS)d3@yL ztst#jzZ6?zBeGEm`vwve0hl0k)o;ETII0^%T;o4ys$A9y)_@LsM%{n z94+THmckM&hD~mN3K6u+%ryxZPSEwuBNuty0?-g7^dN zYNCbYX*5T+(FX&Af-KhT`e2QD6Ps#vg3Q?4t;Svp{y3wbNKPWhqvqF`nrikYSW<7Y zrgLLVSC2MfI;6lR{4rWf2)60^pk<9SreIqF$dk#CSfN|+M5>#zhE@nGgm~CVb`vZl zXUh})dZ}JiPH`&N2f-_x>4D3nP3Txp_Ni1>W45oN*k%~~0ee%XHFsjuEb8N{F~18t z)1NFv$GPUoDPEU3A%(LN6G&OPeiB%1pu_0cTq3&+<`J^X_?{X+0-b{v9*i*XC)+tN zIb`PunoD8W!c!!>QVY9s^)zG^PWq{mt`8ALMwWqn?dAG`uuUI&Dpj&20L6|tScO1} zy>d2soa`iR&L>Yd` z$0Z85Q}U?V%mh)a zUs^LS5ET{Dl6l#bd4VjbC`=^HRnGO#^cVL#k3CbBxHF7aN25Y`vD3!9!gRiRX2`fq zD700%-W8#6=3wG4tHut7jsRX{lo?;p_n=AT%WA$jXEpU5(FQrUyCF5ZMI#JlyZ!?V zHJ=8w$nv3jSL_4CF2LHzw3LorfV#b2)TCnOd(N{>GeR>zLu%{?bSA7iK3F)?SZG*< z&Vp3~tT~?pLmSR}VF1J|6AZ^bOzuMrahx$9b3R*jP@rBWa)v!yHKHMpO|o9Cs{j!T znj^!|(Kvs`6q#Z5GOS63^>F4q+p~YsNCQowq0uavk=u?enOyoydoZJB6*=2q?&`EY z8`iJ+%-Q>FKYiwBPM_!Qz$Wgd=d5B$BKNC-&vtEqTitYOon*q<{ajgslU}nXSujpZ z7TO{iGF&m$=;IUS%BVXuEqWXFp3j`ws|V#{$C*TBZt!8ZuCsk+*Awf>A|5wEKk~Md zO;kI34SSAapE_a%yLS?wR9;P~|P~C8dhP=1v58 zlSga;GnBIjKA@SOxszWMgPeO`sEpU;DMu8%O1gbrp0oXh0&%PJs{Cu#!XQucH`fmtMw{GxDC^5#CGsz{A=S*lW`xhnm zU!$T|I~A(oxKiT;U;Ot{fi3eHUMN|TR5bsasp#2Gg%WQ`#WgSedwEgXPKD}ml8Q+$ z|2wI$!m8)Xq9benoke$ZmamPEhf+=%R={)1OT~>Ud>AH*L=5d z0a($hc5lJ0EeAp}TqUv(M4P0GVJl!U1eQd&CdFAVR&+Ad%SwZc^cY;-*9+4PiY~nw+^P3yYyrKiz4r#}H*MvlQQ3#s%bcrd5RNHI zHe{hJ7yj=|2yH~ABPy_(j}nM!E95=E6>?-AgZH3%Zvk7c%$U(KHp}S6pgv$e9vhEs z^58$9p!v9S{TpS&-ofcGPLALgnQn`TF&gCXnt*un4GbZ;o-;DVKp4;4-sm&6Ub3SJ z_WEobjgeOTY8gZmUY3Jyhn%f>=$ZNiiPMMUH~Iv5oC7kF;jm2YXD1zx36B@M$2ny~ zugFyr<1%7&uG>&_LS0^}kRs5CJ>6GLMvE6twz^MNSq4hh3^baIQ|ap=w+BiS90oaF zR3P-V3WRFU1}@BV_HO8rzZ+LJ#B{Y131d6;X8&rJ`g4xd19+*+ytH9*so0x&!3vWK z!7`D0!BUU8$hqdt3L5Uq-W;5!3fY}U&x4Zx-B^T{Z^R5$*W5`hD(#F0^kUFL^iRk> zZN7!Yd6ik78c`TGVDST?=nu7WUxO|807&dsxD2a!O7E8IJK*YLgR}@P!bf5J&UMlo zi$f%Xshs&63wr~w!a12*y-d4gCMaF=4rfblrtdZuV>BCSG^3XSJ4ds=Zw=_xH7m(f zWQgCSj}ys4tgnDp=;$SHb*rR+b8$?u4mwlLzS`9va@EO$beSAsnFEV~;PI<(b(7^b z>S~U!aH^6Cb%GT_;!hFlg z+cF`2F@qPv%PLIyx*lBStK4!V(`!~>+A4%ZpaJ4``bbEm567nB(^jQ~c^&r^sO<7p zWxq~jvt#W4;Rj&jv=aN@7yVSnwkypK? z)kX&Nv^U|Q)>>z&6brKfs~<*+5%yj@REoV1Az-AvOa?67zV$H?ShfR^o0iUfr#kcQ z%zbC<(q1io(N)C-;Zg|M<+g-2BX)o1yzLWWG}Ew$3N8%r!)e-H=7lr|uU0m#}`S{aPaGl3Xb$ciWx|lR_aD1~0P573x{*(Sk&IQ5d zrj8U4%FEEhI6HxVdmn61nXqRu-{uY}H#>*y8XQ}1oX&of4c4oAu5?3d1j}Mql*JZ%+n{Cd+trm7CtZywEvElY6Iuvd+v0n=7 zl{ij^03}}NgfjV)=xbQ(H&VF$1q(BNd)w_!uic{xR10D}r>r4u1RAksH_yA)?>-E_ zZ_D=|cAvV>loP%|O7|{9j4rXFW3(Ya0$l`W-YBW2eU;kV*em5E{?;9+)_u9ZGvQ5f1r`VI3&=Y=o&bp4no9!U!5MK>zf4>g~3zW*X+k^}05DaQFA z7*MsR_c=^muJ4C4$9Pm>F$Y!vc8frO+Lr7!l!eivtm#0;h)GnUXvIhr%_NISi>!b_HaK0r?2pQi`Lf*Olr#5B z69Er?X-S?O+KC?*epNV_#V9(tkEs)7EKUZo0&I2Xv9FdKp!hII@u3`blF8~(X|C|x z2rgA>ON8y87?YY>5lA*R>kv1~Y5IB+mhvNQrCmPAmlsCKGT^xPo6XMXw&cXWdZn3a zQy?*a#h?J$$$fs6+F58Km}WVZm+B!aT$n4*b>_EGxYo2)i#wgr-+K8efI%nuZHe=n z?~0?EIS&U}E4BH0D(Lk5szgaiSr@etkcD1x2MWzYt)KW?Klr~}{x-pSlV@KkF_PgO z%LM&%9Vw;|=;6*?-~1fqenGKy4*0IO^XZqSb3RrNj{CLQ-m2hX zj=s0l$`onJ-RlG4aFwTRvn4tQ?M34{XYK8W-}>FXoln||otO6>F6KJjzEdR~uYZzo zFBhW9iF}s_3f9T+J>MPYg^$wBdCtu5`vAcM- z(qyn*uyY9jO>7P+(6?+BgG;2kh#z&!jTx*6E_Mq!T4%Vuo^ey)G_;Fdbuvas#sNyz&DoNR@d! z9$yR1*dF&#)MH9rc@>1O*L=?X&L;+nr`!s^I8fZ`p6M5r>8~Y! zLMg1aNE0H81LK@6`|J;~tnooUL#5WZHH$Q>DX(Ktgym$lUVAFp-c+9Lsj^C`Jt$wQ z8}@WRSooA{1+cgB7WbrpC=zeFzYB=op$y99^8?~2A&sp77s9au;2B%42#LcBlwGBw zG%JsGmHX?EDD0{%CK-VdMp;a5U5Ff9z9=O26Z+Z*+;{WD39)ZE#FltN?D9jy;tY{7 zofbR_qd@LT^Gv7N*#OUUx+)vsnNEAM)|O{F?T`V>zln(Dx%NTU1la7J)Lo2q^?Y%G zw1=={i3L1ZNbY6%LYYVbyA~^9Fp=Cv2tvCz=c7q4UcM(^9IcDDmLHN3FZqsH&4Or9 zsEyPaGl4b*&7Td7-XaYgs6Giva|ahgUb(>tpmyhc5H+DvbK@w3HugfS)Dfn$O&p>X+y zX>P%#2rL&K3%p?^ITakC&+>p1Qa)_2z?}e8dVWrT&2=%Rs^@+SJnQmYUxnzKW^Pi3 zUli#XM}8X%j&}VT`1>A3e1$PNIe?GDk^_;hdYbvMS9TNDo{8;H7PrC!s^ts;0R30y zCm7$cxkqCTOempS?~;Tx>Leu14XD`vbgmV^9Zf7lT>+r363E%t@3)(<)n4ik&E__B za-H~gHbX-g_9uMwF}DG?48HM2zoLOJ6)54x6*D4wFhDsWr|#EZ4Uz?eP;-+1tJ2M>iDe6kq`zhK;Ss+ z6`#wo124a8VNqMQ+(e;&O<>2yHjBwK0j5ay6In+p7aGXEFk8 zZv~VUXS)qhBqI`bZ4ev0vrt_cU?>ZM)JAklo>+kHk)*FD3=eCw2k-KpEqJnR;NsU; zc<*!YzQKEM1CCavor@A;EJ60z1%RSiXmJqrm*OfTQG7i`6weKOUg0}HY?3mI_GrNi z2-BDGS&Kgt1@j%4SM%u`sjtP8yHT*vAfNB>nKwq;%BMa?+l(iP-UK|e8P=#hY{ApA{72gx@RCFT{1Vtq@3&XrS%BvfJX3fs#IA$h zcw!q%vJYWA**)t(XUqrPb4>ozvO?D_Wk5EOlFn2pBK35zi7 z`)wG^-lkgQ82JPy6@_L!+iDJm5Mll)j+=wHZ70QLrrwMyFh7jq=PwZpBSG9M<&Q;Q zXfN|Y(<cgKdW_<)dA4aUC`2p9)FkL{MM5a1&CkY713BXbh*vx>m zy3U1yHV3^xvry3rgZk3~rgEmEZq3~Kf<05HQ%(SHp^|FaOTpY!qjk4M4 zbV1#7Lej7g5Y#?cV3(E*X%d+g8c9(j+F&XYHeyDdIQh-Nm! z7mgysa7@BQsYEJ)p_a2_)CBE}-OL%peyAFpq8n-KWK+_jXkP2>{DJgAhvo6^FX#pA z+{ETKqngsIV_t^)p0L9BN_$#1K7#tlB@)BC(h64`K!n$aux*RoIFuZWQXnsNVJHAF zn6hH0Hz6m_3uY9eWy%q6J&pn*btH+*nYyC3Sp5o77~{x+2xQLYgZk%CXAK5sk?CV} z$ru>@q?v}YQD%VGmQmSJG`~;B)fp|ts;FWW>ez`NXaksGLQ=yjV6rftH~3YcESg(* z(`Sj)K&U+S2GFu31j}0d)(Tz3n{g~1zjAGcV~y-aOw=X~OEM2S1HZr|$(jwT5(`Zs z+3OK)-pAG~$GDfF03#qMV0}^YS_sE#uiPf~x}9if^n7HT<#j@Ubuti9=1O)*@D7{v z(%>!@C~+&dXJ)h@nB1x3vSpUJsAwCcdVNTjw{Xo0r}Am6f}36v!x9-3UMnF3(16J) zfi%!bpk|S2UtGhPcQzv=Y2P`md>F`KU;w+ZVkjj>$|*1+l-2ku7$I&nt}093iIqi`BD*YZi$`kqfq-6Z zR3i(VX_7l!@s!dDDZvaMK$^$@(Al(P82@9(D4AmKAo4BT_2y^Swp$gPgnv#Ys3mi9 z64Wa=iJkoNYHEqaO9U~+s6_jVs2WsCiZ0=_y~NAv-KgG1u#H7ipCkpWDm>x;G3=`_ z?jWj!Evq^;7y^n|1rAKAN0CG2`nl|$G!od$e+aOTmg`ef{ULwJa=xFQ>ShhNZ#vF8 zSp(eUBff%?Dv;hCircXI*Hqw&xvWpS%cj9UyFh?b}U%k(IZmW zTi$It4mPkN6_nb3;1#xUgsl9F;Cjik!WY3G42S(iNw`aJu@?Ls+_8rm;9w9RA*?BX z_UvO11f&gWV{TWAZe!sod4fqUI-&r{vNKTrEh7yiH*@eHceY`trvTRiYWj)()|RKb z1nU%l3Sq(7foDC0S}Kjs%Ar}VL}hSB*bZ_~S)p1~>Psq7yhtU|X?U^v>X#YSCApAd>$kI5`}4YYKTZzYtUo}fi-aQMHj_jkB7 zH^4SSg&IOG>=y4`2R#^wXr1lKmQ2n{E-OVPhcgocX8`AaIcCYa4V86^vT}pCpo%Q+ zXQM=~Zm9Qu?e+HBOh%;j6*REPVCnYL7wTi~eOdnNVR}v5OTih7A*e zFBlHgt6Mlm3<)B{XYX0#9yLZx(l@PkZyO^@x_utM80#@wQp5i+T2MD(zU;m@Mx0-8 zlWG5<#?p=`QP_NT>lznV2M;W4eIBM6+5ilYZNNPN_Rii|tLTGbNZWV-0N@ z?pPG&d-0U!tAQef|H1z~O*MMWb zRHq>{CYZDy$52%%Ib6V?LMr(9Fo8XT#E*)le7QvF*hK;xEMQ+cT@`{xt!S&dt$BGdX?v69B-kuj**}c5@L}E5?0C{z2UDR$m=m+z&WTO@V z_s;R~oke6;d5fRq7!{<3(OI@1mhp%~OR-1Pg5qiOsb3F|3c` zGwKM&BBoYnD8aY9{S{f>DvrA5!J;RbIOJe4B7HYZM^z8dp;zbr%Zd&bgAPZ{_Ii?p z5|2U=Fu`R%vEU0+9TBcf8B$}{*80#N&FvVeDC_trBpD-bqd)+RFT0Km4V4$`K3on- z0O>GO0blJ|fbipff3PSVbd`!i{!I|Vq$YdAb&#tGlyu;d9ReE0p55%)STQMnC4sSB zGuI`o01Yp6T9Sa16V2}QYSFXzY@+9n?1d0ew9FADvbilx&;<%|AE_37N^=l#dpr;* z!Nm5i=iS}an4NdCQArviADuw=5>iw+~Z3sf0}&`Do1gF1_5U*G0kFi(JK_o zEWPIN5^PR`yg_(yoeP>9+c=dX%F8G^oJ&+8QAtc0i6>IrOG2b@VaM3n!sO!KHSRsO z=%0oX#F5WTHZOn73S+(LL(G%0rwMbuX*HOUW5JEAfjc?iJ(1U=d`?pBt15oWaN80g}b zAK~cDkkn}y5xjP^G>m1WpxK>vh$zl~8GYF!2i?qd4iS|>Pq(>i4iRNVY!aSzXMR~D z*(1p4?~%VkstTM=WjA53oR(s(W$H|kAc73A4~6VNH&P(bDR720qqoRZX3T1H$fl|f zKHfmQ5~Wl|CNCWt4DLD|G!W*5oiKGh6Cqh~N8i7!W$O9k#; zI$pKCJ6;SPDVc?iK8I5JLob&6k7aKUM9<#oo_m;BnO^n+-WTGB+4!^@JYY#~%nAYw zVY0?tU^M}TFs3ONSWAE*jA_mVHV|OQ2sl#g^;rnORssxRrcJrP4gw5eOiM1XivU9y zvojaiLx3TS*-N0+1NcNtT18zYTh@ze%S|_nF}3(120m>@6PQh)&WqtQn`|zDdM}30 zY_bIe=6ErDrnBi5GpfOh;xn6W8G(gf44>I#D+ny{V))D^TTP(Ri{UeyY%PH%FQzF? zD3fjjfo3m?&uqG_1lD^od}fpFAh5}c;WL|T7l9TphR%DJCd<|82iQcTaSQc zf4TeG5u(7YIzoiSZR-7KzBjA)bNT)^^?ohh^(F7SWk-m@zBrkL#(4k7b38y1zIQL&esPVXGL{mK%1U-ta+(Y_}bSBM?oGG$crgUgOO6*k-Qp?0IBRF7P+7{%DPowuWT*S&6mdc(UDeN!Zd1o} za}g$Hx#HONl0!d7(6SCe7c*!_hoBY)t#=>!MSI30k44bl4nd6w(i=YMKw6()AZ$g) zuzH5=>KL|{VY7C1$b0s22wT!IYy-pAcMPjOUhJ>8?Q$)F z*jMVFc!C%q-gfIx5VP>;d7?PB+p-5&aWmXYCgvG%{lm2qGS|8@PZal+%|(>CB#+L_ za_)D*QSu1qXYj)4=1cB(pNX^GrN0ytA;aJPQj~=j6BWLJwbuT(u+}(5217s>cosc&z#f3~(&?&NUjypv>6-VQf0=9V7fo#K6AQw90-4RhUgP{pC?)R z@a*>c?!9M-{X*~KavE%PeZ$>;hWJn6y1zP84AgO=x$aESN8kH~8(#~>_|loejLBoo zEm$r3(uhXgQ+^BYV;wWo11Q;#A!U}r)*evbImPVGDH=Mb*vSBXY$Ah{_vdsdWsa9( zXf{a`L$YU)*&{N?k@-amoXUXwBWRE_$Z5*X_ zUpiZCAMrjsC6!t;oQ$x(i4f3>7(97=o~AF@2nQye{&2GDyoCxw>m+ykIie@7%#thn z@?r{(Ik@^glVY}8Tq7P2t4hn#HWOA{!IrF9?(Ne6E4E4am*)aje3fwVd4Lt;CA|4O z@z~fssK5C(KgW?ND5teRG4?CK3Qz}8u!5&XW$t0sY%t@fKZvCJ>G`5RIn(_Dafn#t z{_+Ab9FH5+<5~6iNy)ZC^_i<^+K`mSgb|LdoROWm6RtZ@_BEmyv;LaULV6c?P7UY0-JMi zSmLWf-BfoHwD>c367-N_?Fo3k`JU-Mc!o$7O+`V_W(>#jIr{CD6c$h9holz@T>B!w zU!>dhe%>sKC%4Ve0Fu5P%=G|cPp@ot9+j#SsV+D@Lo*7`OOb;&JjjDhi?BkEp3JR{ z^8Nr6$twjCMz!AQALM0aH054%rs%D2QXQ=%LUF<3h({`~SCy~mbMDE%#a!^G=y93u zlkGh}>VgZ&A%6X)a~J$qd)!O1$Bj9@PVNBEpn*^?a2Y%%Q{|a{oNlV~bL~Onr(SR! zfZw|yQ5}bsZO0F-pd+Hq9@h&&d_)5BQLm1k>_Gw5aLqD~K^Q(y(hv@<7& zVGyK@G|MdKI$Az-((Up_qe1eFC_m(c3n6r@_862b%*+*0b^gpwGlSQyNVHj`L^nvT z^9_o^kM7l@J&RIUxK#@INPGc48_5RtQU7@Sbdxor&}@)(SA3*|yHkEA2Dr1&7AEdW z@DG64MOrL94ubBd0JNqXu&|Pqe zC^`AZof9g_>T(}=t(5wOQvmCkMql`an@t9EYJ%o)PxPy5LUFO`~271*x& zGXb3Y>p+F0+Z+c^aXjq{*xEjYwY@*AyINRSD8YB_dO(H z+lyvHTVY7-2W$9ZjEpC}1WZax$$?)AdI#;Lh6EhAS06phY#GIf$Du;@n0?)xEH&5e zKZwF#c!~CP@iPydn6X)kUxTQS?av*uIEm?TdVz%_Q|Lewr3oPPQ!g!*_Nx9I%A+JeqH&b?k8r~#;qirdion3)zZVn^qIoeap>_)O8N*rF^B z2DEj~vJ3&|bii7BZzm-649N4$79we2Kz3S?ofG_>D~jZ&CFM2M8yCncirm^-k$*x1 zHn`F#kv0oh-pOWZk;3Z<>H8TW<#*7$CiiR>G@!Iu3M^@}H0bW+vqg{I*v;P2Xu-zx zY=AUc7P`sH#gIvg^}oP8CbM-H0t7+e0&{yFSfU7{4cm@bDht#?$^s7ISI zs6@I7qs9H(<)XyHKk=u)|C=j1;$L}%D4C$>pF};=fR)e~I4bR}9S~Y6${p-2buG6v zSyaXbh%aexsS!PfppMxZs?XU;USv6;K4*v3XocI|el=V$=nuFQrA6?H?V--WvjZiv z(@XT8{ACBhCbwbQPg0JXzDh)nQB^oGQ}^IMQ}@hd2RcJ_pB&<>^L`TI$OJciweWXW zOi=wcYZZdoKVdo5GevmVVsyyNJXJA8&T#MwUBZq5nSeiu+f3E$bfY_Crog#h_xYLF zW9SKS`#1?NjvSiN*&xWAT<{76bdlU~(#zF8PG)jJ$;w=~aR)oW)XdqG_ns8vs~I2h zhH{MfRk-zB#@QozB}y?z;(eFUKFDTDfL3P*yW>xy2*gt?p^p<3d}%W$)K@L!-h>v& zs_6}s=pzfgn;{m+Er6UT;F}II+?y$&Lm2X#4vIE4!pdQMq1yDfP<})jl~8qbLv>n3K2B+e-gpCyJ5xi=xdEgM5D zmK;qF%;TN5S;!BFJ4cxJmRVvf^1gw*nZzoufynOH!=-<(d+7DzMDc_>?|M-h|10+1 z1Xx!tUVa;MU%Xyi+2wxv^SG@Xy?Tx!`8PL+VQ`G!bb}}yuorg{vw`Rn#9dl22+YUe z9h4~Gy3}C}s8H8^{RXi=$O+vjEHT@yxKVr}j&Qrx;{fJk%YRlc#`yKdN8KB45tr#r zkGlD{ir?zbKDzwMTScBodzUuseY(@h!(G_`@8sduY=C$2aBVigJ9)Sw8!-0)9C7Sv zufRk4P*K6xurjy;pu7&jXUhTk`oQ6CWRB<_+qDwuEA6=w!Sca#1V~?jFmR zb0F9x^k{|;=g;{`ei}StHxNaUUB`6SFaPE?Y#R)0C9v6z-XV62rSA84h+d&NH#gDN zc*E^GSNuG%0g&0|UN%<@s$vXwInpq~u7nwQ%#$H>=s>PGveF3t7Pb~loMZq8(|fpo zohvE>I~10_cZxyfKgP0PpIF@gyi@!!uuJ7+`TNLu|Gslho+pL|wyK$1?mP2E)IH~JaY0{%LE*M1z>#2lCPWp4Z)URs z%{RN>-7SjrrkmX!_rPt9f)Bb!lpO-iqD)H+y2wIBI>9sDW?de=?sXLkmU;C60M^&GSk?y>};I~WC1+n!0OUaHS-GVeEx@(7i9S0Reltgydllt-w%l96?Q-yBg_<`63H zNn|eWLlO2hIfUYqQo6l`gu*aHTzxyC8yAU#!PoBhOpd`1^?L1oF$w8PAApR_b0<9@p<5)h{J96jL%LUKCSLxBhs0W49JKtfN5qAJ z^mTE)z?=Dr%*+o8!m{Kf4#LDUa^M~vizt*c5==!}M;&nA+EpCjIUX@YzsFU|U?R#Z*M=*P1&>$}dloP7;oR#~i9@d%p-smds&pY9 z;Lu5UfI%nV0sb6|2iP+i4{+y5>m1)h1BS~SBUV3Geou<_G3zMDC#)Ju;}`U* zLuVAtCmQ87%o_1;E67uyQ&$xf~DZ9`8!#L`8y0>oEkOZPr%uAIe+)rD{^_v zh^E{C5Z(EzU!;MSPa4q0xawEBAmlunJw$oVFq|Sdt|0|JNTvK}mf@cFqUZ^tawgcQ zx>v1?cj(fbHGyw4A5G$zkm-kty6m(C{VThmQwv7Q<<*Xiy3~@F`vqx;`*0dv#zJLQ z7?*le2w6CKg>pF2DT3nA3(?TZ%2m!xOk7o%ylPr56d@hzz;xb4)L6_g&{Z?IRAZ&k z@h$~3U>`=j@2tZt?C#vOwm9vhcgb_wW3v6fX!cfMd zGdhU98tsm09>+?L`dpaw5Lp!$qF3kAV7i98{Z{Zz~$>cX%DUB<=>Tv_U{H}PEn&fc>>|hkf?j)N5j+# zux6Ln*y!9Iksi5NWo;)H-!}7cM;~nr)&v-#7L~Xw-{%va`$&41mgNXPKE)lKrRd<85<&nN=AQJ52n~hSkX5AQQ>a=5ot>ZMi)fmc zT42C4aH$2Ic!=bMh3*^6F*A9}4K#{Z1Fa7{PrG_cBX$fu}B7h^mr)gMvAve0?01?k#1HP{} zj!?q*or1X!*_qsigDs=x5v}s^Fu$3V+H#!*cD4%0!HhY+@iPGim|wlG%U^F27hv|Iq9#5o z&hnZZ3GO(6$$c*E!c9Mcb0^p>TrUXuW=kM99Mh!6<5{OH#F6zuf)k^1lvup z1$>6rAHffJ*`9-0QDK<($zIxs28XwvzZFK0w7Hy_VA8<$;8iT1QG@d3+f*8;I803Q z^-`IoQQ$;eF#|VnCm06WY!)D#imNbKcU(}jmQU2C8BZIfreM0@>^V~NCuFV*0;7A% zK)qXf6iMO&N5;!-(0IcFL3SWqyuf`h zG!cr{@JuA6k&MQGCWl1Hy;?AS4r0o2a6Kt!2lXO_Yjxp%Ok>nzmdR?wL$5b@kCBH> zmTZ1Qod`$Q!zP|s$dDHf7#z1&kfasQvOke--X5`?v@;j6?UALy8n1SsXC7h>A~_L)MT_;g2+PvblpU0aa;9KhyKEe&m)$ahU-n6f`NR&WBhWbpPU09% zq#xC9gaVCEP6@C#{xLvgDIIMN>WjCc>w8Y3*qFWDhFQ4<6O6qM?V zii(N?(t@G~1tmy?(2JCS5h9|Z0)j*gih7@Ct#guK`<8ou_mBIz!r)!k)2s###kOM$&!vc2ZTp1EY^tqk%9iqukqv15ThvzC*Jz%lV zEl=mb>+~J&?(El#Hn#il&H zswv+cY}63(EaebCLIuliEcb2@;5CFnvR;Xm@7ojiRk~JGouTs*BPaE0TCS0AoLFiyo_4 zG>_?RQ8a(Ivp%?#9S8PW>a++J^LxJhr_^cXOqNC4oYuh|HhCYu8y+;tA>;iotj}_; z@sn=%D{PtUJx)uM`F^i+jx$3>?Qw<#cbK`A54NM`gZ!TV_+F{anT4Tnp3Jh-- zfI=!D^q8^o!u!r8!O9&Jmq_LN&XAvFxT35&!@M%*dXF{Wz?h1lX$xD151hsdRrUD* zR~UXrec+6*t_BB&?KIfuEdE*K?tRW1EHP!jGbmOvM=JL_br?u3cm6!AggvvaAHjz! zWyrXN4Eo77WYQ858n=^UAdJum&8Q0fRvJVS{vp$XY%6ynN!0GAlD~Xc4th)EoDZGd zFxIGd0B${BlN&bn6%Lz)O(C8q%f{#*e)Q`K)LG>207E@j7~n}ta38np>H2zPH>)$ zKW91P@G64b@Hr%$n`G7JPCe&&DgE4etNR<^S{r#an51|l9OQxb9*_lp0cyiE9R;G# zgsTn56*PihK$U3ksBHSesox-;eErXozyAU@6-TAf;dn0G^w0Ou1r(0jN|I2?5G1!p zC3q*ds=YJY4)$_tlu;-%C$NCbC{iCKyJD#`dQ98N1Rq27t_H>cNn(< z|G_O5@Cp*~XLV|b{0cmSYP~>Vk`nzw&S0_Jcm!5MN9BbhPWL*W!Jpkv+COr{Y1Dix zyW7JrVhQ7R9b7T+l8Eep`T%R@>ok=qGb^04vbUZ<9{A*hl?QpqiCpL_5Gp+(A6GcJ zjwgv|9_9PGYvM ztqshV#BgmR$Veo=yTH*XHUNp(0kJ~h0x1@9;SMD+T-W%MP9&>*l7lup`g*AqX48{U z)<}r2HEvOCv(Q`v$%bfcED$K;e{d z1Db-Hg($`FC=deWltL6XXAYU@mjH=|zb+`x8PNv&M>iO=ITyh3X7QJzec-Z@Y|Jag zA{a&xm1CMIo=r52mPCUI=7ck04DoVPP|@5KK6sknV3DV#pB2Ddn<&RGGf}d&(rE^X z*VmQKz_X_VY^3HUr)sEfLRlpn0U0?4rH@BhO ze9Fmg@FF%0365NDZBi9*-r&INRYQ61l#}TsN%WMH2aBNcQ?QZC5${_kS4{{?lT%KE zhIo$_?ea)~Vn^Zb-dmw?Cg&nkZur)@%z0Mc_!dmUI>hCzH`f5@gx23VgR(&VVOzwg zKZ+bya8RX*((0(wUhPShw}(2}a@$eo#>Qm?*Ks2|jIPSa4igQY5{&E~uQG5W;tW9? zv}c}@m%aqPDzg4d=XaOExX!4NT*~5C(3US|CI%NEJpL$pPVc&-sQEDt8+JU+^!RZ?x*T_!=Es}GS_7fA zCWL?+d_s1(w<(3O-6MQf3m?6~8miF%^|;96fDrbJMQFN!$A|2(uOV38y!S0Y*CzJ`ogeUD&Ci90APfFa=e0MqcLNiNVZ*m zI}P40VpA9IicQ%gqrP(5z-n&cSCHObDM!8nM|77YoiMXB>V#8|{dnR;+!BtH9P3TB zCEVT<&MPS=u%nDkTQhn1JEvn(1#}3Ym(eXC^Bcel^ac0-V^N_d78^J*d}DNOM`kY`Wh65A!OpLV*?EjG)e8xZzMjHKRA6-Yz;mw)u#R6jBq}9{72{66x)!A zo%f?NH)jF|4T~_cP|-hN4b@$pev`Vg5$BP@6e?H56+&YA6ctmZm!lk7RgP*6E3kHs zdMF5O3dj!R4M+V0^AJ|*frh}mESv(EFk8omYvZ!TIG-owEv0$}H`?#-mCDUOjBj`t zpHhq43%A@chN%M_3s?RmTu^vs`naEjCo#;KjFq4Elkki)!<$*^Yh?Mr^Pcknt zi=cLMRkt3@K%$yQ4QT7$P&^q-_T)69j)Lh#J=nl!WRy9sYLvAAJ@URHGSC4S2j6+d zpWfbsQs%0r!4*tBAqfd;P~Evp`E4%7Ff%pt=E`*mYD?pa_$SYmqUW;PtGBk z8&o-XG26bKkcg{_y>TPS-XYl&R2}=7#mD{ynDXWYF=#Y_C*Xkq5U?ehvveXvz6T$X z-VGez-}o|Sw~b$kA8(>ukf^%kPv8z&Vmdj9g)j18%v&`hynUcj0T|OR5cZY5duO5u zv1kC`uIhUHVB22D_Dz#xjL*4L-+-w^e}T=6d(dBDKXE}-7nC0oRVWc<$j_Ab(^PKV zJt0C0vIJ{f}dDK(=TUNfk%D7Ab zI5l>`W@D1w><81y%ux*obuSJwu&bgq0>TU|2fG*a+7z>Jm1usoTh5Eg=r zUUH%_!SPMtdY>6S7Ul$AhL8sSjQ0U7c??q(i(61fHFZ|WY$%053-RMRs&{unPY%Uf zY93R-aNueedyYd4_@k40IRQF;A#;`)FEp+2G`D0xi^Al23S2cjW|K7T)gL7## zl%eYAD=QvE4$IdGr~6|biihAIc?6~lakH!9NJLDl3W3H0CooqT1QP!DA?QP+8^@uB z`Epx*)v8aK`KB95>_%8c^G`E>;#ka3lJ^)K4C3O$oJ3rMF_A@&DuVuDTg9IGs?&w1 z`F)a`83zQ#am|qggY6eKQ3s%B2zCZu#yLh|UhxygpIO8JGq|9WE3?!!X-m<6zk`1e zKUlz3S?Vm<=pWBg^>Ws&-WmW^p3N#<0BrmOav|phSb9gAHc&k}ZK;j*8!Z=`Tq`47Op>P_m2JFE%!;A9xgnk#^qG)%aE>9#tG*@Z*{bn0=Drj+$E+$gUQTT zIX_!J~h0 z6Qq&4+53p%E6g7L7UFOgNM>VHv`D%(Rz2DsW+F!By-YzFM*wSFcqWE9ye$P^<&aR2 zbG0@-`b=Y$>tvg(vn(~`&w#8Nmu?XooG5#ms76T@g@{T34*f$DbwzO25~NfLw9?wP zW{T0!Q=Fe^IMx0s6E%sS0NB*F<7WI`7KK%>;9Ohw%dl!+vn&q2Df`{8ls!LJ<+fPO zy^ASxVOrG{me18qjzg_v0U&C%JerH`TQ2K!Ro5$D1u+Me#Gh$0g8(49Y6Ex{1PoUGe4#}Bp_UD!+wNC=j`4A$lz`KFaRPu88K3fj#B zcN6bL0U^TWL{rOzFh=S5OP@6Hs3?H#L*&@?-iY4OK@D?ojqmTMdZ~(ClG91`3C`V3 zR;pavN%d4KOk6m+ypuZLagIsDPAXTLbyn@_O;`!V_%^7;@Rj&z2fnAu4V~4^{_M3| z&?t2d6=__fj0k$&Ux0W-@osqq`XCM*n3+lp;PekNP>d|zk!ZaxYLwIJKhz1~#p)kK zG<0uy7vly1`d8aE_B19DJ}Ha3s>@W_+GyQwYPi#8hvozX{FZR7hU&-&=7nYU6&goJ zcW8tD9b7AOyQ>Ze+5$=bA-2Cq4t0n0cZxjSLtT-2dPD3+^@~9H_fUTbPT0s8`BP8z zxpQ33>!sG3MT~%k$ z+i${|s9NGIfBYP^t-_OYV3R}X?^jc2yoy;>DUis zoCIm8c$1d|WP-mN=1Kr>Jq)YPA0M#xX zzIdSh;}U);?@MWXp2`ju7&elebDnCDFcyqPM=m*6)dRspMvJWllnn-eG&AP-XU-Nl zN*E3rGP6~kMf`y((yC^caMj?_eJXY)Vse25$OUjAoRA3vRX=i{%q)`oWIs;G{(&ld z#?XlHoAr^5^HqQ6F{yp2dH_EoZ&r=v#y_gNolbKn#=k}?A2 zJg-ddzfAQNJs5Y|`&vd`g}t|1!WXE=v6)6*t}^k|THmWxdv{zd?*aMo0vy=K;yrW=3}0czn`c+;iz zC1_zhTe$iXl`q||z#;#oW@PI>l;@QFkLun#Om%cj#q9boPmV7w|70r0Wb|-qOvK*b z{bV9o)yS*Wy)tDe(1%~Gul6H9o#!a3?(ATbLuzr$Rc1X-&DLVR`HGb^AjDsl@Rbg zhr>qvz?CdLGUh7P57%J8+h|-86YOh*#v657T#ht<0|n_FqEp+L3s}kuNP78tq_59U zgQWu9G?ErVR={6)P&K+l)^9HTLE|Eok+-T=RnBUkyH&Ng;Dm>Y;w1oM*%Q?-?ua&Q zm@cZSQGhtbUIT!jQ|Pk>+ukU5z!Prm+f=nD+<|chR3YqeXIpJHeJsG z8L+aJj$BP%dpMAGQI z7*jk1SWe7uGHG_>9azQvCTkx=AmgOb?W#rlm@`}=M!#AFxErl}Fc2AeyXuf1D`Wgb z(;>C$r!moJIBe9H==eG8{E}1XfM*>_L;oR7w1o;hm{!MI}1$24NK zVeo1e15J2m?*^&NVe=1K#rcnLF2aE{+!ZR@WUq3etgIW|mq%%O{EpuGZ#7IgSIhf% zs(Vuk=57g4@6kIYf4K|vTbVp`mugkFa1Nr|fN)NEo+w(1UpPnJxl5gk^x)mVILf5$ z-Rd0Y-!kHEHMG`D<_5DQ7YyeFZ<%brTV11O&XG>{D5@ciy9bbQmaMu*)lXiA9S>B& zn-%@=9yQPb?8v*G!GnHQ>mW z`+ozD+?$UJWG#>8qI`9geDxo5=6}|fUwi#en-Mf~t^^-~I$zaY_5DNtRa5KHRJ3d? z@Org4K|UC-A~I~ey3JV>EgP>cagtZoqFl_2r(OAo8l8YRZ*g?rBkECy7QHu5RChHj z!i%88&vF98M?kFCcjUrI+PFF7m-+9!BF>{QG1#$E+CHjYIwxl7TTukW*&w+^`0|_i z2jdYabB2{}l$1lRUue?BdrZBN7PGP~uu;1nQ=@{D_+2W0o}^j_XW8$Glhn1fR#HP2 zC?5PvVHn%wyGa<_QTf+o)w!NkxGf@`Py`;K&9X+`n5_B?e#Iz5!jn5sFwWh~l|_(l zq+@FV2WG^Actlbz`CZCi5s$$0XC`8!iHP={q9!{a&$dlfjnML!Q&p!-+j75}T`NqJ zHz%v6^2cewf@jFTr{S{SBy*;z`_H-aD^9m^wEI*Tmp1@WnM$ezF_Nue1UmOL4 z)xK|Pn4)k2Rvq&9@#)t_v8P|^GQK0GVBGC zFb(5_-tOoFPpCsqaK%%G7P{prwK2Gn-+QC|XF`8H4KHJmjs#CL2&v>%Ppe2yAt_j> z55Srw4}4GjgmVc7p>+GSJn^*3X^H33ln;IZA0LIAbh6n^7zdS)kCMLS+oMwUG|=G9 zlKKqZ{v=jPde^T}y$7i`s!xL2f$~0=Tc1&_Yx5~ka+?*=S|1OA%ED*VrG3V|UIaml z{|JA~3!XN8F~fL3k3Z%GPa8c3L%;;sABgUHKC6awHF&WxSmsz_FWCkB$)F8P@2g^- z!iH0ZJJbhr^47Cz4oIKB&r-Ljaf@X4EF73|i=yf|waBSoQnDG?e?!0@tEUXW>o$Zg z;M(T_&?d@}=T*}V%!7egnI4(zK+iz4QG*b=3HZs2fU$r`b`Tsg>GuM5<2#pqF8SmImG_tVQ2O@aSO|ZQL11Z#gBU-|usbc+f``jn%YzP05pHNG zg~f`P3}p4AJTwN51ACyv#^_3-I{DXZ=unqS-isy6iS)>Z^GkCH37v}hl#Xy^v%hAPZZ0!j~@&VbkzL1CxBn=N0f{tD; z(L&X}!=w#39Om3o+2G$)8?>_-N}lvJP3(5QD21qiCa(ddQO3R6TX<8>#;~ z*a5Sp-|H$8not?9rBs@{4v;xp9%cOOs`%q3o|UIc?WoGkUQm@Z!*n5x>(H>JW=nch zWn~xrdU`*kH`?*5>2PXhnrL+RH?kzzET?}XOQOv(?o@niKkaBzYS3nx_8VCeY?isd zk;S!Hihd)DHd(Sue>ID2U8b`79Q)OD<3`0HGDo(feQoIkR~3K=s#{MasYJQEMD=o^ zS@Eg7UZT$V2M+`I7+n=KoXIburJYv{nF{&SUL>W5hS>_glOmxW`ci{@KAjp-VWdDF z5=JDDK#DlgisMc6Z0@1VZLC+oIFF>jZa6rti3UHlHY+=&(R$VHZ(FU#2TT_7eTRB9@OA7$UQIwlmQWFD;s-#H zeUz3xWH{(;NcQeSfUIJ}jfQbqBtXV>0E}y6i)Cw&Me9|^ZU7|Hp|OTP#vs{GAaP@C z5lvr*dIvGNrZyXE;2hKuYj03l25@LzUr1xGmPpSHs&V5v1~a%FJfQ^t-r>NH0NaLH z0DT=EO}%4-Y8L{_E>@^q7Hv>1b1+$ux`tJ388ESC##5j&dq9qFP}%vMTXR?9wNXst zEx9Q%`+(n^2VSl$z}he&9E=$=XM*7DsF7Op>jYIiiGWPU%?p75F_6&sB&G8c`TDrD zc>@gSr{w-O)F9{C=-M|_wu9h-H`QIhldoE?x*{}Xxw8KeO|Rn^>TEof!}q^* z{QWO5@=4G;SU!-(K@#*hZPot}Z%KKeSC>G94Lxj2lMRG88n2wh1Aq_S2@gIkT-F0M z1@i*A%Diw?^|Vszc6Ck_zu>a%ssYAMa-TXb9H#kr2yeCE z%*TFKVjj|xjeGzcU_?4;fbAs54IRo+VIBsjB>)uR0}p-0W*SdNp*q%s8Rx7A$?~-= zQMZx}CgP!AG>uvr0rmn^kjMnNA1|uKpQfSM*>V~HZgHm460Og!noUv0V22Q_Sz)Z+ zm25XH0jD!gamRXnVVVqkPt~=!r*|Xi-d~sr4hpXD9yd5@|uSL{*4ffKIWqlP*MBx^5vwM(wqt9oP+ndNKe7z-$0R8|fefqsS- zgTQijML*gL6Fg_J6qczw@=vDHC!F#l-jNWjt&C6)hUz8&H5UaQy!lSycar@!S^=r{ z+lcT}?6)y!PP5<8giz2ZG-W~kncF$wmE$soRybd@u~o&4+zTPG{e`##Zjdk-ltyA#5j6*DI!3V+;`Qx5hML}-Gb71ir$sTcWQ}KEaFB~Hfmj0ir z>(!efng6kSj(qZ|+7q0;56f05?;cW5IUmYjK2r~7ehBo1R0ODrsVVs7oitUx`wXhc zAIgl+)ku>A3Q@4V^XZdj8td2_ZTtlk!x~h+1B&(({)ChJ2QH7e4Sf@{^hud~SgmaP zEmFFYlJEhQvV53?8t@qta#HKWhdFi_Ki|J2_a0H>-}^sNgR(zM#3A&{j}>tp%a~x+ z5jTJo9aVi)=}P(Ws9Kq3_yER6Cg}E)-e0N)a>;R(A(daM&Oys0kWR-`h5gqF66M^;(%|-B24zNmSKusr@fASRJjZ~`SI9wv&aooST+`eE$gQb|y=BWlnp*}wy zJa~(fYs_U0Y76x*GL#(SvjZu(ef$s+O(aZm@tfqWtPOhvnqY7!NzfAh0^MjAK+l4H z;z;P-F*jAjC*gboK>)37xeTca4qr_~D8_aO`YB-8hUBr6uxck(n_yTK%u|(vZ=^zO zTq6!dC|`A9@9aPH5s#-P1RU4ZXp=Cd5VL~kxUIW2LUrgI&gOJ2FoxRL)<%I9NC_}% zlQBOD{?b?&CyyWps97qnL_8r6w47)~jrY$J>2X9);fb~c>@rO?TvB&wxOcYeGs-n2`Sm5dy?0~>fv+gWWjtb#s z4kLEc&=Y8u;sV97;MaB>nzK~O`?=z%2w4@VRx+$fFN!Nm75qo6?+K)2w$CBcUm=e&UN7Zl&k zFtMigcGhqyt5j{=0-*BIgs&iM`zZ`fsD`1#PpFRS+jr#Y6RLiW1)2a#lahv8(J&Tp z2K{XSc5XcZAXvIevMSUcoLl9V3iX02SS^`ft9ECXt|CaC#+)pQ%VR8ntl!*UfFBE4 z>7fjd_QvW%!GC|P21e6PLG+7TVC=W*wf2>Xv%t^;FON)J+|7WDj7qb{|BUtaCF5ZX zg=zBk$?)&g;*14&qZ<2;hmx#Xmf06=cUnE;WR#vHQ9(Um+>-t{6O#SktEs`c_WQ0M z)HT6n_PdPVCFVQY??))1=5N}(hIn`qo&oM1@^{)$U4(jt{6jXBf>6(p|CJ3XgnESh z3LE0{!QDgtcQ(XYx`q7FTTGpe5b6qtk~YLzx`h0fZ72<)&bXQKZLk)CXNUYXHk67` zr;xwhhVbTEYDXej2k?-42mgSLWy2jp{%6&B&Ia0|?r4Y9+` zftcG68*CQxM{P5mVW=s(W`e7TPO)gL)toi0JEO7R=#z zACPO2s1l$GN-4&#I?w4H)--4AjJmC$2Kt(GY5>nUV3hF-j&p#069oW+Ebi9@pb%O|S78tL?wpSF+!;4D+Rd(2{gONEKRtzw+{NJ$l(`NId(CFSVqTW7PdoeDJhcZ=abn$ z9VX&UXe`!iA`GUT!)yl#+#%KmRv+gJU455MD##841p_<+e`h!Y{?h699a_(8+Se zrc~qQ;6W(hM*L7}0hY9R9%2SGPAGak z2IFR4;{~|RlZcRFI~t#ocyL@z{qsXv;(n;=U197BIOZKLkt!_bnO1P+Y%~6z6w%XP zw;I5SA_}#~-jNrh`|C6=3T@c6%j3llZ!>EW51B=AuGhcVZ0I^XiHmU=oAc?Ykufc()|lC{05Rc%}S3U3beW{>Um@^bGK@;SAm3*Ba>; ze5Lkw*rG^Hji;8UpOKnkQZwSIskL;=ItAcA!T7jWfIS8?`GJFSUM+n^jXM9| zX|ZENOsM0h_{T6*Zx8RI>JUt_bn~P!Q?Tn&pyj^Y(}SUym{1$X0Jwr<>xX;>XD zzA|Fe5ZO-F=e6nw_-076G+;I4Mm2OHMgB9 z53%dUI=Wd)c)BDQGL~S-i*NJVBwo5Q)J?pg)UT_b&R-MMR4Q;OMkuPfkTDGaGrUQ$ zp-Iu2y9zvNek2jjd(Y5z0&obRz+4)<3`n5?P8rW=q_Z`Lput(k9}j-!khPWWKwEo2 zgCrjpNj_kyHy-h^FhO?_r9$|P6K#aI*z3k~oHG8$cy@WonWMx+b4#(P1*EL5AK)fx zfr_wS3a|>*kqG=;1n8rf4lj}*PQzENv>tj8^11#YlSx)(=(_pWAq5FQEg%wuMaX1P*BSweQduZdL4aMo5job@s3bF-e5KEuaL%l>0)AX(`8GhZjcYp%$O--_W`+~vE4ADN?zU^ z<~aUhm<9X=Wqg;xN^lRNy-I-nC(tmjP%d|(_hvf%4p<2!oumA4+AcM2?uB-*$poUpIf?x~qk)MO8Yw8Y5vC5 z@jD8e&6v?4p%|YlisiOkY@D*y@^r3lpYec0@N}K;f~AEl;|xx+KUe3#3C!tS?RSb9 z8BJhEV!UZ60$m4}jQ$Q|e}q!d(JAKlVYKQUk$*vl^z5361uKwv+9U!3&I~%P@l0EV z$IQUOJ6@4YI9oSrXmv|wtKm3S=9UFdYbK3aHqMmdv-LU257SZ!SLEjs>Z~JN#j`r= zfe<|0(OI{}&kLRP&D{<%6Sf>59mUAwA6w%eW$_QnZ}A+d#Ukd(pe~?y_^JTaowDGF z4?GWOrD0l3MJ48gsQ^yohnQKlX~ZQ=rZP|#gltR?Sf}2=2W%QVe&K`Lst{F~hIhm& z&r=0JXz^+Zo{=;QVJe$uQdt0S8G`mBiKz2!2%NnF0BLU#nKas#?~HTA2tb63Dtr9$qUVNrB$}l4bc#`A7;V_5T~-$E6p{PtxB8g zCVz%>N{29$5KO`nI0A54Q~SzvJ&sQ15LKoA5`>BvGk1tV-=t25}}zI>=+Lax80P6V0si ztsEpxdQ(RA){V1y_a-VJMXDb!%P=_QxC?O&&5>ojb(8uB$gsyG;xFz|Zxm1}C{E6i zBS@@m5(}`A;)&9zk3I+9cdqV(NlcRG`sl1yr|}{n?cs@U!CJs%#a}o_G}IAVwWUwX zfj+v$;MFO{dy6x$p*e~`09ZH~7~j_0WA_7d)ef zK0C{7HE@Fr8bzKn4A230r^!b>^p$YC(6gsrREwDaC;Y8AQ5}Grf74UyM{~)6K_xYW@&mmG*u0;`#?t5X7QkGQlFE z)fggR?_AMWf1M8YNDLrjR-ck@`su5apCZZt5b&~G?dwRLmx6PR8qcMjB7 zgNv|Zpk9EAMxC!O>#zbTm_6)LzlfO@C1Lo~;6D8oi*Pk#vdjfco+xS%MCN0ood)TP ze@n*k#9;k$M=K|8M$m)v>_Z$;EhnZ@OqgN|`~q<2;Rgbb+b_`PG_jHm7DEOsPn8&h znIOg3c7gtVCh%48?83l0>0|;oOC$vA&0ZJkvxC$2qotCHH=Ikf9A{htw<9~W88(PzhlVY*2jjB4{Q}>z z15$A{4MJWVLqeC1xcA^3l73JCs}0|A7`|wXXxOGak2vI((RejeWMoI3k$)*B2pf@H zG2nE$2?SO=0v5&-Re1;GJP0--Dfq=>BK#sp5SoejF$5w#Phel9Kp2Rkgj*U@L(~XT za7KYfh>%}g18FzHyDOn=2g4KAJOjetm|O7z>sA~SiL+rS9Xz800-}o=1V?q4ce*Av zUOga4_J|OaY7Iwk zA|$LZ^BzrONQESXNqrddnlSzr@}02)aELdJzhHQg%;K~~FrgldV%Z}8B!%mEo9G!m zUY-{s9vv_w4E7f)>qp#|9AQ*oaVX+2oP9DR9m{eAbTgDi%op$&k~s7;Qa_xgbiF6ArI9-qJRSVfR@Zor2!r)UfdrhrU?maD0b)srbK)<~Rg(1rjWE4H^U?(% ztg$J)>P;bA%M#L?TOaG?MkX_d=!}ucYz-K62FD#o)caVr4gvmjNW6=2A)kmJTm61+q&Yy&ML2iFF92RQh-1k%&+h9UGzYzlgdnmDvovhNaoan|82NbLY& z?yhY_qs*uzL{v%piTRpk_UgU|DaC2B>R4^FAPtBp_*kV(jSs}jP&B4!f4y~kaMCNXO4_EZdg7So9XBYo+cGWj~4nP1Gfx|pC+ ze3&G!l0r+CLOxrt(iZ$lCR*{ts~*3+y6Qv7&8A6f#?zntg>-5q!fX|g#OZ)N*!`5hx~7rPvUjNq!;fwZu_%h4SwkbhyEXF0N{0lhzM! zJb@0<$hxaE8>B%V~$oKllk{k6=^;CsCcazQlI{x}i zx>x%l$ORzIyyh>k%PEG6WGIgUWutpVEF$17mL@mrJeWcax>+|%c){`KR=~M~{&(He z)afb!Sp`9*)w6n8PTi~@4bC(WO(yQ2>rs*MX`-%uqod7F6biV%?RS<6?X)tw?fUloaV%?QBMBXyWf*Lpq>@(H_RGiI>PUa**#~%BQvjvWs z%>TDe{nNM-n~Lp(NkW!Lf}O${OyI~kh4@4HP{=z>;t16y`g3CijcY|17$7+TR|WE# zX2FH6eTV*QqnS%k4Se&Zh0}~;M_xD$1R6|85j|EW-JvhY-ueo@;Se&7I1&D2_%S~= zk4eQHx?BFnWayVbEDcbf#^Lj{9jq<`7oDIR{4&%C7($PM3I2WtVCP)HY=%3X0*rnc z8#Pm$Miey<5*~KOTSzJwwL<&z75wqj?$k>nbj^tQ;UuMDk_?I-?`fgwsTAF%|B>_|u|aHBX@9qF zHnd_NcIspZxIk-Sab41um}JY4FwSR)U^5aZ({OKvQQt^PS4v|D#VG98_s5XdHS+*E z19M2@EqVEF{U8oyhkJDU6fjN9jzjdYd%&pMEYIGf|7aY@5bFb5t~y6F?LT^>qqeS> z_wUtrIs4^``@p@ekbCaa-GXJ$qNUd*dLP&l8)VOYx)+SIGw(-euXMX#cdGvob`TaC zBf$?;m@pKast=^#e%&Fo7dlz-h~@X|2F?=MdB5)7Xij>Vs&bfFJTt^ChE;n2xC52~ zfc4^)ZkF`VM^hDYf4*-1Pgsp8)sO$e|7RU+$W6D_@PF~#ttxjg7Vb>{8Y-mz&-m8h z(T@550ORC0oNE9F2yl6S>Rf~FC5%4}(p$zRiN}JvDzr}`o@0$_OeTPVu3=ED@yd+D z4VtasY9WwB{oZb4$KwBriwRjb3e4zDQu_h@4UANhM?=c^x=a}jPTzF-Y_yJ~m23y{ z)5hQN9`K@xk~Icb$Z{DlMz^SY9C{vP>RDc+^4odG<-RdsI<1tAV|3H38Og9Za6*uG z!Y>$3Z5#izaqA_C4}#IWTz>zcp4#i3G!OM8KzY}=xP=Ejp#j*bPDHC^(?=@x0RLM5ho0eMc;iyw{jZ3 zm4ZVInTYG>4EL%7U>dw7KR&AKs~^%O>oM@@%jM$7a8;K}{$qMNEU}wBicqOs`lz1P z@a>wFR0mMW+qRM)f3uS4z)6sv!!OeQDF9TENleA{`hfJGs;}%ZW(=r2x=zO}I*s2& z_+#Zy6HjALH1)@P&piR6mz*C6v;hKf_IJVWgYM-$V6AhRfVoC&&NSUGY1t2eeHv?b z{WN_=`f`TIRRz1e_y<`tP4~(#FTldnJu3mph+Kn*0~-VAHr~B_=eC}K^Zgwx$=iP| z*rEp!@E+&%0>THpl{C}^!w9mOL4E}@QqoG405*GdmvG+(yft9Ku}<(F$HAbCIXO%)5aT($X;i?P zWcf}&1sotl;I_x-_qbd=L-*0%hM+t%LpOF_k&?&3Ioct|9>*qtdo00GFO@z5wC+Q> zUUc(xqu>+7kpT-9;%w-#HU?W_$rH%&m3$z2NR#!(*>b>#mx%F2v5TFTn8m2q%itLh z2o=fGGjtQ@Re5U$4#K-^un8vC6VqlLi*VtZ#xW;12AA&nPv~A}v>sM6UC_Zg4}r#%*?I^(Z9N3mdP)!O@u|T{!(^d>YaF7{C0gf`w z?T8%*?Kl$=HW9>HyxoWZ`w7wq5Q}Wd@eWJ+)4E|2voeEpd>WH<5>7-wcz(NDvY*j6 z0m8;+aPBj@rF=32UED1UeX@|K!O=S3fR zNtZdQa*F(Ot`65(@f@HO?rP(!5+hyqoIEubH_EFCa%`^dpY=GOC!~~xu*RT*?yWxk zg?LPDvDK^7~A?72vHp#K7MZNQ9> z&6mnOi}VHOZW;x|A``qCys!u+lkemb{W`$dEEAhR&JuUsdI(CexycdAvMzC_Jb+x^ zj*`U1I+?AN=`4<-N5GWT&O#RR#e5q!(pKg zUo|@^7gMebK@$#yDmC2QLE;rQ%E;Ud{ zSqM#|6hI*`kDdX;ro!V#NmY%p57Oop-J$pM#+En?`AOIz3zV|C3{*VBDp*2zpm+7WPrd}PnNe(R2$Ki2D zcD|u+IB&+s;FLp{(I1pnSlt~-c?eETPJs@D4F%*JbgF>Vi0c2N9*zGl17-{Mi$ANn z7_vu4y@{UVE%4RL(e;z^*>dROo|H~2^uWxmh9`=3NvczEs{>o5P5?1Pq8(8%oEWh^*PIdy{jxnBFK9Cz% z>i_(|+og8SoszOjcg?%=jGh?V+`^cUZynX6^8E4*+)L46tF+_%R14_Ncl705Wv-{64c4~JHV5m#Ze zR5LqjXTvqYqPx*k%kXG7)4o%JbBn`kc`1$$yeY=(03`BGr2wvRAMBUW>v6}H$#om_ zWjNTcY|wWFOSYMV-C-kCBKOFUjo?0PkntP!)e7$AKi#O?W$btpISzn-N>af{Yw>1F z-X=X{z+t5L-4F+WHG4U}3sxX2)$NGB{`|cT;(P|NHScvyBg6hRd1I4)6)sV3+N{Uq z?L@IWH55a}&oJ;%aHV+>7X!itWsne1J-pc(Yyp(`MtX07#@J>Vx<#LT!Db-$xCm)! zL)nX9cdg!R zd=|pfI?pX;c1Kmrg=Co{W_yhogSPuyYs3IOL!QkwVsK&+v#~}D5NX7$ua5EIV1-d7 z)ln2DAZAUC7z&PEzqm#W*b64^oz+sZRhRVNN^y$p|6U(qVc#nJX;||>@G9RRbkCOl^0c;y;N0FLP{lF#0*l>8a z$~il6CLfe*cIq~XL}wfv=t(<)*KLteyLDaME1&HIjWkR8?9y%iryWSC?trw|2?XK4 z)6i$TLG~?`+NB0qbSwonyG#C3s_Qv-$z7#-U(+!LpE9Qf!y_$fEq@5QNLC{xckjUs z`HPjjFUfoL{{L1bq4)LT!FxgY_zF0PLC4Gj@-D(Pq5RIgK0Cw535f#tRs>wU<4(MT z?n|s?NIZJJ=rWK>aG+NPPUiucS_YMmy^`^PhRDuN{9VAM;&@sF5a(OH2M#@c~#E%$pJ9V_@}KUc$Ufg^?fV?cO|WY)}wy3 zZ@J#(fMA094pdM8vv60>dLBKVRV1ws=vK|=X-M)E%|NIF08t({3P)m&CK(3`&K?Up zxS1HknhtIx|4rgJa5Bu>ISgvkuY4E#5q1_1TfiTjASO8exHZ3+09Uj>P4Ftx?0a(X zU5wHIy{y7}3{?>mH>hX{3i%N~|1b*^nfIMsbEx=6U92n1VigetOL_G}BDf$X zkNixwc66J`pa!r@ZIn+=IGx-50CsNwM|J-zEhIbw&eQ4$d2^ z%H_n$EkwDz*Q(0Fz>@918E>Buf_t3<1;gXVgOF!EC-pzpt@{;K6^eDbd&4B*aJ+$aSCUX6m^T+4(WXhTp&?JjH-Zm=itX8-qepVyR5w{JBY{uu0o$OIo_YKC}mFmjrS zls|s1dj-oO76wiHU<_1r=0j$h5YcjZrL14(8~XcF-9R8_ad+NL}*bO@(0I| zTG1DLfotTb{O1e(=d)*j&HB=Tt$7b(+iWx*2nN*qhjEWB75@kr7E9%pBf3HG*eMj* zBaa=?*=-&ob&rfusJvslLnCskc7mi1p->QL7VsM3Y=cyU3YhFTqFZJ@pH3cUPA=3T zz^OtK(2fG}j_S-P^>JIg7sU({O%lCNVsH3`1Qh|9-dE-G@a}=QYJvnq# zx9(KH3IN;9FAjJCxgtM}3M+yRm#c+N4ER#F?|v{Q4R2;n6elhm!Sv=~Vo}SP(r`pT zW^B&bR2gy{!mNXG!*QMG?=y!7Nsxbe%QR0(hv5L)Jp5!|KM|zZcm%k9XNbQ6N%;03 z#ot?xg9~~}zB#U&{sH3eBuZ!TClJBPpdKs!w$0eph1?+pHIF943vDIF#NV*^rZG3A zw=j1G5slnTcj5YwB5~&h`Rtf(`+sxTAOH7;{p9~-*xA26Y?*va=jI^&zZl!>=!CD} z>;U-ulPC0*!3lf?Z?Bv@q0grhK;H_T)9Fkl0K1@M{9|FM=3&&aIc3l=#Omo0-X@t? zp_>k<(h4B^7RYsm_pHetTV|kV-gChSK>Y}8tuy5M9hluNaz%yC4O-#7H2hjOt`gPL z`&}4+0ugW?xZFP%)zf(W3*z%=F$mrUhBg`+0JQi6rOxFxi*3@i71d|K@9%=IfsTwT zmOq@-9nxsxlcvc7qxsIXllpA+>S|ecQnw7f4ZN9~B>>j=WxW#WYZo~(ztOv4b9>|) z-8ubnaNx{FLodNgJgXAuUZq@8X^hxMRRZ;_lWu@*m zbT-5GrBC01(gFaJKbLX#HBn#1;$E&1r(yvEVci=#lOP|v~-l5iUTK9w8x#Tny zT`J`8X+2iH{y}$B?-on@A7N>^x|nlC4OMDJK|>X8(yW52zse-Ra|K^xy~`%hfyGJ_ ze+#}~Xnv!OABLZ|O#Jouf=<+RHXf?o{&EvP6kl*9b%l+;6hChu9?t|^gikyeGsq?k zz)#c^=!Y+`(4f}C9(BjhYbL%kzJTHa-Y}k+!>cBqP!70qGaDbq&k_^QOBq}>-Z99Z zfuF@D-ouwS{XEEJUz|SH{fD!E`cXH6IjZfr{qb{!ZSU8~&VQo+H6?jQj7@KYPjnbPzCB>%DWaa=W**-aDO`_s)oh zb93YAb2$9OdVM3xC>7uwq-(eNpwFQ_5N`#NEI8&wAI)YDJAld;!i6JF9oU;NaYM58 z^9lOTIKBjwrTj*0#=RYBy%W9{qYGS}^|%Gb$s*S$}TSuYt0?%*&r zVhglNvATSP>^j(+Y zjpE1$_6Wh_dg&c>y9J9)lH471+vV-3nGJgjXn}dP8<+(3qk+NuoaM2yIp{VE&SvgX zsSLUU94&nk-K@G8NFBo_Qzu+(q~iFKyIghGu8n6eZZnB=xgE8GmAQqNxib0J`y1xap4wFz&HCAkr` zu~>HVcSEs!mjqgTeX%r3cAKbm#c~dRON!;%WVfkWTP$Oe-3y!-qg#^QdsGG`e_g;{ z#%Pn!R1n*17v6Yu^E%lS95t$&13kddNzofT-ibML$I&xvpIEtQs(TY$b2d+NAHgNJ zB+VTN61_6bz0}z*gVWuAsIALnNxFLjf3s`3xvgi@v4W9^YJbNv5R;fTKl2WG6tROSV6+4BO%#~NhL!~LfaZUrZE0h}Ly z>Z1~=>-JQKN6R&J0W@aIl)7$*HX9AAo|22N0gph(BCEPRg4ZS{fv=4*k&a+w;bb{d z*KM9n35GGg#Kjt+sDaogkM>q+n}PkiMgE-OwgIdkpMhABmowbX5X|k*a2sDy`YJYF zVY2GSe^jkYf{`q+*Qri;j|4!6%Ti#G?I^j)ccR?(hKAX<0SKhM;)oYf^ z$v_6jFJXxUJ3!PI8->|9@lnLu11F@au~GHi%+?=`N73NViuj)~p1=_G9mBU*C`I+% z3~Y*>_1(USyVoOm$9id)<#t!I*URs-+;(cudKr@i1C?d#WpS2!U7fcathg~Eoz3hD zS~s~3+-z00Uivg}|C%D{xCVfmLn~ok12?bM67wLoVGp~vdP}0^4cz07QzF|Ny3=Y4 zjh%4;f%S6wL4cm)a%YbFH#qHnKL@+!QAuj#&TGn3JXu?Nda`@~@O>E0VT%G5W<(%U zFOeOM+zS=tUb&6kiLu{?vZ1m2J5^vJ8%ob6Zd=&uFiFvri^AP_VI#5+1Am`mXwH_qE0wc4~Of|@25us{YPOtRa?LCMM}S|0gUDh zW6Z{eIe>ASJ03eEfJ@IS0G-K0UX>x9OsROl`!P+HM%RGHHZSJejjteN{1xN1MNa9bu7 zLT&}e!&9VPOH@Bm%9^_rSY6iMjSH;s-UdMt*c<`uUy8XZWphinf!y4}O-rtpMU83U z-W{)XE^AHvU)0*7Mup$EbRP|t(6cnu3-a7og3I{5R|dCoJJ!Jy91fNV!avG^Qipr9 zWkM_Wmh=VW4@^(z3M#nWNonnNbmm8Uw|38S(h7>=M1r&M9hp4Ut=I588akn?q(a~# zt}26yW$@0-0Pf|-ZQLoa?Y^t6OAXU!+PdxXvF-+Ra7%*!3MUL7V0l&;2WM8E2)M#T zaE3tqLt3!aIBuidfa;RC=c&y>J5j$3G3G*G7zccZ%?m>;^NC1nz=(~)tO$FV_6EUs z*rf|C)6TbYZ9Dg#_W;!DpWM|Q=WL5+cXQJn6mHesZC(F!BT5Qbw{;GV7;r_{iplWqZZl_n^s(;lHBQC~ zN{~Gg%nBf^f~s3ziPO_vSa(0zMd&gAK*Ns*>AaqHoyYajPX8Q0J4 z;_Xb0BoeD5_}OtT zrtX-WKG$vR%}XU08r1-E0uVVStp|YKnI}UAU>0Y~umNsc_Wh@WKhDAD%DMqKI~DTX z0Jjr<+Mj0zaLIXCcabUQnE{lX=k`o^jqpJ}n3-^?6kO;gW}h-Q3g#L_4aFsZYcN)z zEQy&K$i$};x|*DQekCV?4GP8_gA{QpP^1$Ckxn*J zr7J~H6zhwCG_flQ(t-pCEsIXT2uKYzAP7N25fOqSM4CY(M5RPUMM1dFnte_Z6u-~+ zyZ4X#Lv!|?-DlRU@~kqb>&}?SEb7=%WNW636-XPKPlMGQlb#xDs8lcKE_hJoCc|DvpOyR9W*-|cZj2Z8a$3p|ffj{Jm@~r=(B#Q2vB5sW!D~9EgNsW(F^j7J`ql^u6ROFHoqDZ#iOvburUeeR z(M3rNWOp78aSl6|a3Uz*16P(oh7rOuaa$)j6g&zb>c99}yxg)Vgx{mb|$7*Sb%S~r=#20S48*>^t10B#X= zyNbz~sr&Zb-L$Qfs1wq_1)Tu;2~RUh>kOsi?JlB~|H-iO{ZHmuMvFR&{>Ag^wqv(F zxx_^J>%3~zMKlrmY3I89FHbw$Mf6W7n#KQ@r{UqdOj9`Nz;S*YKu3ozfQ}0r8>WM! zO+zeNiQ05-i}{F&6VIwoO(YGAC-3?e(Q9t@+F;f&j$oamw%tTLgv5kyV4Ab&a5pf` zWpuHdm>4=!3nGsB@_M`;TKbz&n&xyDRn4prN`6o@qAT4+1oUZl53w4oZ+#D71y|{8 z4{=X;fiA$wvX-L*5Q{@GJ;kF4c^%Ue5@i{^(^E{uRIT+O1mReV@7Au=Igl4mzDWFd zD6EI5PF;G5hw2~7gHYTA7#s?4j22CnH6=I}5HL>k>4KnB2i67Pf4G;Zr;@(ri^%K^ zjb@C_m-(00{7yTuzz}3R5AKcnST1GSwHlDA9|#p zs7B%;Q9fc>Kn$l_X>g8F5DB+_gNIPiC1o`p^BFz-kmzSzqKyxU>GBL>g#^9UPYi(U z%IzmoIj4u69YJ>BORNa6Mr@6zas6RD9M8DmW6QMGav# zi4CAz14Il=_n5~-h2D5hoHvk5)P+LRvanhy%pLvQP+x_*SO8|IB<4(zSi_6z@+b$( zh!qPG=20v>APl^yEYBe(@k26~KLup~v4E$a7WIu}3V8;a(Ku@NjOZG>L@Q8jW1yNk z^A$fG*)67@s$(ZMKZC25Q2sMw3l?vh|Ewr5prVW$B&vkI$H9ykXV!!P+HW2tPQ(=n z7V&T(hFDzt2~*O**I93~d7OikcZ5LhcuvHHwV>8vj^8`A>?N4k)AJ#*!VOO!r==L@?gs zw7<3udI`nKK<&B)GLBsIAMsbcIm8W9smD{I9~nc%dNVhhHVzdH1Fj+y%f7mwE)EsL zfNDMRyyy+QXv6cOm3eU|{rJ4#)p>%30UJnm)Ar{@G(9v-+-1zqe0CUy&lpQfhQn?? zLR*H5M>^#q;FT*CAYIdpcmCnt+ERfc170{fRv`|S1vBDgp~7DYV?&#PYLuaeB8yN8 zC{%czej~IAx?qGz=4_*p;+LvL%L#2X4THOx;Q@ogU2V7mxe&qJ31p8FO`=a29HzU* z3Eo94h={jlaL%2boK3Swi8m}1G~vs@hg#t0+IaH5AQ}WF!OPA?80d}B;zxR5w1@&< zd1^FNVf;>f5vBwfxB0S&Hwza~+n2>~V@>AfmxW=#IlJ{0u|TDt1RwpH`o1dSJc+RF z?6=v#J3upEMOS@CpS&t+MVwkM78AtGiaEUP z+zhit8v%eD?JV6)KTHq@Z~sKPF%dS^af+WLhT>=KB=L+J5`_XLVQ_SFZF)5cRHu(s zq}(J(LnM1m#*IEM(O2i_p0~vd5xyu~j3k0^!^_*y{b#N1?xozfMWs@{$ksv~*-Gvy zU?Nkg#uQNjkV!k?|eG;gmnbxqtfcP~Yyh332&mAn!<^SD08>Pk74$8(7C3AI zoLkrFw(`MaA#n5|FIQAN8jMfaLB>qc6V*Z=nhBxs8BLxkW}7!ZqRO*GJrfB$-Dg2) zUj2y1@$co2D07w=fe`B&vqcT)YCUI*KKNNV8#rDLeLh<>zv~BP+-!W{hu@;`2lCFr z6V}qGIihxxwOH!|GYCi?mzMy!@}`vrvo|JyL+CI~xXt<_nD-dfEyNw+nE7H37~(Oi zor=LrrjDuNo^qdSRV*aN0GWd916e<0)!`SKl?qchk@lvFYGn|afd>LJZRTP%1egsF z(Zo~|(ZL+qVX~}B%!FbTZvtz3b{@?Co3vmaNMHqhvIw#m1@;z+R^?Ve5zy!Yp2GM7 z_$IU}Yeg`HFA!vI52Ztk@BsW?UL;yZZ4bTU>D$R#Am*BLL!7hmtIwVra>ujhQp`dz z7vfdF$a~Ih`a#edEg<3*xF}a za6V1*0)7rM{dz7F1=6(6UW5I$exIVU26)qHp9)1*is#_J9$vp#Y)< z>~rd8QAwq*2EBeplimf`bBS)fEADSOg)JsIM%xH@D0_%PKtHyC4pgO=Ofj4=S3 zXN&=z28;n}iLOjm3AQ*--e9dAyLE9gBpgnNRa~45^%WCDIV;c|4=O@2iypW+);MHC zDT1aZh{yz-_J&uD1C+1mQG3lt_=3KJE4fIjGUzpR*1StNd94k7>P8@0V_p2bMXX9Un$~)wQ7Oa%*dw8 zE5-0TYZAeJO~Nyd>XV4d%z6*Votg3_<*pL-LVssxGZ?waEMO)@u7=UGg@&ybQJzBJ zpSXw!t3{kTy%QpH7VTdRzL!RYt3?}NiVfF@=Quxf4P@(a`g0AK&Jn7=7S<=$ zDqIU{LX`Acgd`lNU2DZgTrhGS=H^#4b)E2rI#?w-k16mg+ObYdH%?LK^`a6c+Tit~ zX6@5KAQ9-3F6j5rMRkY)pmQjw9_utxkOVrH`DYL!Z+EQ+dbyk;G64Q9r}i0QCv+tD z2Cz~pmGfAJpw zFgvD%#>X(6=sKodegocirh&8o&VVnnhm_kRS&`-jepA-BuIlN59elQSCt<_IoSS`Y ztaLE}N>s}OOvI(}oTs6gRYg{!0;y6j;qA;8C>OlL+<{T1FGTr}x-QVCb%{GpUr^$H z&h0R**bV}X*EE6RYm|(h*d|I-h0P*rVAh2!mwmUDqCmh9DZCB{*F%96LLkG399D^C zF6@P{U43t4+9_z5jRwA-=CR5Cog_Y=Ymw{v`;htIg0nY^dm4hp;q}|NG1u{sH3l>T zz6dXG2X}%#kmB4Q;5OeFPqOCF@0&#{UF{TopcgU0hw@t?S^~H2zD4Xuo^9E!VlBYy zy<0`=iU5k?3($rLdREVB?!Idi!JhIcCKK3Xp0@TJ5=6J1Wk7-FB&%^==}9(Gb=?@F zHA0YpY`n`<{e8Fx zFVpkyi~ja4Fmybar4f45gP27qR6`I+12YEw5uig}>?+nmUgHqMMWM*z;B&EH48#!X z(FN`h7YyKKg*!!SxC-Jv0FTO}E*}VQWe`ZQl+1I;gK=@@`JNP$mi{Rt!Os@&($2N) zUE;pbi@>X_t$J8^q2Zw2qEYxKT2bS|VIX&1$qEHmhALlKqpaNmt4HsHY%ZY7yJ1lz z?Z>vZD4b^jfPysh)iQG)>%|2(}JL|(*J;S4mcuo^KS5}oSh2T%dHTc0mI(znzk@tAv zs^m}58s9&ELHhp>zaU?KK}g9jp!FZZO#X#F|4@9@Y;3Vw6$0MDD{_PH>j5d&sZ6f+ z>eH#<2ZBxo5%4#i3SF*sDulh>u2U&@Jcd@q2Cz=3{@Rlqn5G^QZ< zYk;FwVW`~Dsx$+G%Jv}0%coYEILT@E258M{5NlSn;UhRT=aZEUi03%f$QF-aZ+y0> zj-S=pBDLMMFJMt_W(1Hu=doN}gr_B3R6K!~>cw*~!kmbjblf==m9~6m`BdDcG;yyO zg#hy3_adsSU=vl`2h%2>TJIA*>LqU32Umu&3pYc_f!CKA1E`akgf9Gzm?4}{#ZF|e z@KpL>pJ-GWG7Qf=2ABzbhsrQ9LiZGh41>!QlC@u~O3({tGWDgfd(iVX515`m|5lvX zhQrs{!Sz3hl%zG_I-fzlXo-Rm!-lI}f={3Tj(|GLv3OYT2PJtRXjz(gbtQN9(8n6} z4YrKYugwk2bR=qd5jm@+Oml=Rbu$woq?}ve?Cu zHO`Udheg%aJDnr3#rau$#-Tg33j4IL)dd;l#h*ZAUoSoky^`qkVNpAL1801IsWK8_ zVC~w46m>+jXCZ_RWYXmTH^`o0M?mHwn8-*j<0{v2Luke@5&0m#8D3V#+O2);t6)9C zf+|@Rcf%d5&wS)iM<1z*BQ0^ku3KP6(G z3}8*suOa9Oi%x{j3C)QGFE}`B8obapAqsS;S zATA8A3u^t!9GC%D>607`^HusS2k72cboWtFujbVdC;rT^BN*xC=iqC()r&|Y1G}sg zjI!3yn4@B5sf#EBVAry*ehAq(l`4KFn#2=3sngf(fu>s(TlnaA^$w;y-|8es65#g_ zM1w+LXuQ&Qmwe|gb3Q}t-GI zb5T(p`;0|1_4-^?ZIQ3H9dG2xP&>P57fSPJJL%&OU4uPunTDGo;yjn%Qp6Zx@eSJi zIf6|Jsmw9)MCG43MNeZth(2dx20Z0L=pp7I0)>92)MMg1u&Tr_M76=US7i`f$^o5) zke%kTn;FX0(W3ZNwigqKpk6lFP_SPKLF!{pD=K6}2zq|Ky)FGWY+ z2?9jR92dxezzJt$5n_DD^zh*t695Ji_{B)4=nh zZ@FEi&;j^#cCi3Sb3Bl&&{NKN+<@rXc?6Ixq!%s#arh1?lA@0X*~yN-5Mg-X1tKb( zr8Y8aSVaUCqaY16D-f@n+1DwvKn#rWJL|YtS!(%wcG``jeRkC3J5kY0oSfPBJK-?_ z#6I-{Ui1T+_XCWm$uPSi2VvpqjBA#fAQ(*(e8>l=DMuAWjlh*qR_uH2Jl0t_QTKDB zm|6IV)P_|6KI|wYtS&5}8+^nl(y)jrt)={TMpl)J{KT5MMgAjkGEtlcq zK1yF-hLqk#eXd}@zM+IGVg_vP@IpAqr_u02u>!SM%Kiv1)e4&RqjgA~fDKEhM=KUl(nd$o}|0gk;fBXN8c+y+9p^xC6 z48Ve6BYjL`kPEdsM7Ms1op_1bUlkLu6xpGxh$8!pE?gCzjT_YP7jZ4@Virp;P(nJk zP-L{(uR0+2nO~uUUZp+1iVq_akKo8HEOKY3I9uqB)ZcL09NP1n7!z`OFUucB`cLnr z&eueFD^=Ih!w10fN66p-dhr^BsR2PvnTj5g06q;ru05!CW78A$J3hl^nvWnBl>J&o$z5N{YW z=)D`FMzzyir=7W}?OSo}8Yjv63PvG1R3D~aZ-`&b@yqD)pWyHh)q-Wq@J5Ws>nGt)jln1%u)&az!7XN)@rk`=opTbz8!f{EwL! zLa!+q9X<~WW_z`!&1$#_SN(D&$C%qcpy~m#etE7LZyjXo!oP(mNv?i=kcJ1y&SpM* zqJgr4xhdNj$x8vUnt3*pA_L{UDmgQUPwXBjyZ-IOBY+5ioEbr~8@{x?H9+{gmSB3r{j zZdp6k#T8lq#R(zyMdt*rIE=Z$nkf65D=;)+&15elmsMb1fIkADB>y6Hi`^5tTr{-9 zbzHu_uB%Z3gJ=2zj!^dvS`?GfRpgWC`rfz@=P)Fz(>fUB*Jnc0gLe$H$25tltlee) zgF4cO?`v&xbX4c&Y}4hj56P2b;5suQ^OX?!mLcC`whN0^MpOAv*~#1zdgsyIk~t$( z)-j+9j}$T@ftBh11y+Uu2*UVBSox3-Q}n^gV;Eo7urjOnnDK1?y@KvwCyMEyhQ;V{ zf;Iw5!pFr|!6Fy|$es24VncvcEjKq|XdFX8pTL?cx+KFuT!f|thIDZQgbwl5ygn>9 zgGj)whlC2@GEA-~--y+89b_`L4$Vt$2(rU?0R8T>-q)$uBPH4#a5)JL5(aG+Hj9519uPi&>wU~$Og7){bKu0hH#dzgR1o`X!`O{nc^`FN0x4TeU ztQ?C^iLD|t%>1L|t%`u}OI2h8Gwn0pi8q&SqbIA%`juBPqROO}j188*TeyLl6v9Ze zwoyh^+5E5aG_^X!X*CE~wR$&BR`hIDSvz(EZ?nRH3yW^XZID0QwsZGC-R!~0(^{=l zJv6t&EJ8P)re~|mQGJiy0h`qvHzfdF&Os3?_#!Q3A#AY<7WjfTxv};vG*w1#HD+6b z+4LebFt@G2vaq8A*a{X~{oS)FvC?bKRwi9^4i`bjslHU!&6^3;)W_-RoG(_tS? zsw1nwFkf9qK3i(`N5CBF*je}i=1{4wY+Ndbo9fw#+1!-*L|u8G0sCoQJ=t10i#gKS zdUCRP-A(iB$yN!)3p~0V-gwmTds!F~a04enr^2K`03_Hzdj{-yG*~#XOOaDgm}kc# zhy@Ah9MjklP1wUU;yomt>)E82EW;!8T(VBE?+e}j1ncm)oLM!_(^Zy{FkI8^h4H}X zX$<%{#IXkoG|teW@*oa=Bh(Jz$GAW-w}s;Kef@WY2&B#RB?q^tI2mV-51=M-V1{ey z**HwG?Q|(lwhr|70sSXVPT-!o94A}(d+SyM`7+eYm+yh*AXj`Eez4LNt}?xW z9L35L4WK7XNn8WM!ddtaboZ`1Rx6d*9vF?;;Ks%5cZMa6UScbQHvkdwmFPO$M`wHU z3N);@Vmj*A@?|FIc%vYs9>fHrH-Uq4-|A)R;bY8P+)$c^`SCtl)<`Z*U{u79*u?Vk zi+F?{-##rMe9=Sb$}%_rLnB!Yt$M$ zX8q^1t+DjpP_a znbfk?UoKjc`9EKzuD~L(EwWq5+M&02+xN5^|HIREwT82G34PugV|1Lt;^hLEVXNb1 z#mFx`nA9xI>T(VM*r&3-qto&7?(zs}!pc2~*{=3TgL1`yUFbO_p?p-d<(0^SZ7`vn z;7!o?HN8jPHnNvFLDEZY#czkJpQtC)~P^Y54KD?)2CdEzr-?J8fC zfW@{9M)S}6KC~R~6DN$^MPgIE2-!kznj^!HV6` zpsux*m7+Kq0pPn60Dzb_M!*qaQI$g4%dHgGPDXnVBF&POVJO&cQy4JTxkcCLLk}JN zh=#O-eY%w{2qSPwh+x1zRtmN10PS@Ot?eM6!cTZd zNXR{ge{ntd#2EF0r=btHIDXzlbQfdSVSS>t>H_bjbD&Qw*1YD_nl{YsV=(rZ*8B&i z9y4U^6#|=oknKIMWGTiW1T6EkmWri^jW?VXEHJ6P?$qC<>>qe}f zgB4>iU&3jo)f7{L17T7a%);8VurVgFjj@tL@pCasuwme7_Mefj&$tkRGtTo|KJE6M zQQ+T5!UjekmCUe#NZyCwX>hho`zkhI`Do9zmC7fKmtk6s!w;;~RMNx7gre z_pp&`;ygZ(CO{fdouD&)L(MzMmc~3}`^g6?Eq8Kd%6 zgG@f7Azh#qT%vhhWUom0vx-lzihdPXzTD`FlQY)nlWTOAFEkrR1;iMDOqhV-t;9-Anxygc zA>abTVqETcuZvYfyRD`d1EHWyH-`PF?{|>zcN@axOe+~7uGagQANFXc-8p%Df;NmH z@l{t$B-551^u$61N)-LotOb%>cO`g_j@o9X1rdCcf7uP|*>#)#s!?i;_7-$9l)@EG z^++~0*jC`K)8I7guBM~AqOb0ACxAj7<<(@BRhQMy#ppPeLXpOb&h}}n`1QsB8N^E$ z>8L*Z!QdDW)>ipWOapo!+yL*Z@90xj{dmngnB8PemiIOMZvh7|NsT#_Ey5hE31KDC zg-?3PBgoDvHCZVL2o6{UBa?!sOCmd?!py z1bD{vldU|3h0vx9t`fbNUhOCQS4^6xr5t)Hf373sG(S9zX7IzpezHo`90q7?&Wb}- zJew1}+@oW$A}!VKFB>K7Fx+lLb`%we<@h-lD6fs_$RJJ<0w{@2d^^Bn#`CcrvCtIx zD5N9MKNgX0z;swW6@8GW>(GK@VNFtJ6K?$;JT=iXZd`90BOMGt>jE*FKlx(ZVI`Ti zfpZ;Uht~#qQ1=gH=>)8?ph3$etTF3*X+%)N2|nNz-Kk^4hVXoY>FIS2*3cPBO_+fU z;aF%Cf!CFQ_$Kij?c;vQ#@lIO%p4GG$m{MD>&9aQKz4)|#Y%5yvpb9g)}wih^#I#= z4g8Ojbx|8aKF206YFbjGf$#-c?e>otAQv+FqbCa%w6358X$sk_- z8CT@EXj(tnu44Xfzr35Pw|w$$Tb7o0k3Ayqj@09;$Ci0K62$ytOP@Xhw?Zm?{|Mw! zDz$!8wxdo1)}*xq zWt6$mq>2M&EdSaAamB{Wx=+aG4RfbgtzcISED|tr+?qjEpOvhUNxU%Izn}pi{dk1!au$|jVGJ8? zEW}m~4-9UM2}Uc%O+T)eW$5x#5a7R3bSxzEXZMj!Y4J0%K59!Jent+mwke#2 z58+Y@2)CF{?Vkl`e2AWZR>Da~YoC?(lrGNvX4>)cBmsKd^D|jFqR1D)Jc>cEohbNN zAS0;he`KpTRyQ{oPS{LJQB^tCNvvhCh@5Ql;(MNQ?s>bqf_pBM&OI;Uo^Wi{9wgs{ zg8$wiSv_V8^Kw6m!r!k^6j_X-(B(n0P6WdxJYn=(;*WqQweEAWR=vN$8H(WyV6E&D zU^s(Aign*%aMqExuk_a0!=t6|1h>h0=pyJnra0ZkBUTh)1;5@)ePs<~-!ADZYlZI2 z$a2}$?0o#d1feE_Wj%Qb+sQO!ue z9aQK+-Pv2IM}drV5XY`V0UT%2+e2k9UYUl4CiliRgpad_PwPKCdGQ^~srxWl3kg(5 zpO=-XP}4X_|BDykU@{K15!hI^Ah+GrYKc!4SC-P6z#jvCiRT zBZ{AJYlJKd&w1IA@(|(*@<+Jor{W?lM6?ID!Mh%{LzSaJ6uoepN$&oL} z`Q?wH@42Qf6RZDto^!m~Xz-HnsncjV(9F6-t4HG#)9LtV*#zYP!d{f+tZ8~BWkd&E zf_w~x^S#N7=(CBLFTN;|(|(W=Uy|#hHtIT1Y)Wz94TEGr-FRh$f|sSY%0^&v=+!s? zLX4W}bIOCm=r;a?6KlUBE7J0pWv!_5KG^Qg_d3s&1^)MYJ%QJs`iiX4%E)J3a9PY%b6vK6!xm6qd&@Jq2y+@Z`k?jyv+wfIcJ>eHrviZN<1iWT-NnZ0; zQ&yBTWr36XP1$IzIf3^;`h)AzfX`%T049%N?G}1g3r6Z`#C7x;Ow_W$$EM*6m~o_0 z?WWSp&@E>y;DT=`>s2@ve{vi%jbD?^)Xp4`#twSvHGm~Y=&si>oJXkp>+(OrNZ`U4 z@|340U10v^y)J`Qfesp^!q>s#E>YPx@XSx&kSj3rUVKw_4tI1Q#!nG&i77LWj=l+N zGJTO>Cr#8_KIwW5JJ6n*jFC?whG)ST8CNeq3r#0E8i46X@15d3a1gB*u={}FuAO^v z9&$d$$a+O9u{gmvbZ>%eXl9?F!3mHjn<*th-W_oO$w16^HB_eKbi(P)H|72R^uk$R z`qhDjddv61vys4z7oLzPw^qu>3YxapEd-{C5{I#?r1$43;-$F~4v2=C<5S-)m`vh6tJS8Y*qHJc&%6xR9JYcYY zzj~6a$$@P%OFQSKa>hb^PiNRDqANk@QHn&i3P(2j0$(d zGVd-&GqF9|9b~5nc5Xv}f-$?W>K+04p>u4?YFz@g{pqzPumww`sn-Svv)`eVA@6fZmu+ zwHL}4suox7LO1yhS}Z!UM7D1Kf51pUWdP!? zlqvyUP^%?SYEDs~B`|81)4V0JSqu!kzbd9Ek0^YKDQcI|=rq}`k#?_D)i0$hQT!Wy zlrE*o*qA*Ut>Ab0LctD=$M<173kDGDp&VWow-j307u0U4tWowN>@vHxy@plK9YJ~` z@YyteDSQFx6X@hpS&f5zVe|MaSn@bQn~7KkwJMM9TZTBQZ|J#Y;3G5X?Pao4#T#Ji z4px(^w|rtI=UXji3YW>|?f%dGyCA5ze`&-!(1SIXdWizl<$wMi$<0caL+^Yh+wZnh z3Qv~@>#`j2Os(FPz3+VbU*|{WyK>~eI}-{f;UwNJE4zW9Yova!>6ReEYNdO;<)*%AXY4#L1hm&_5i0{A#S&BNY zla&L3%<%cniJ>J6pN}~-!*=->HSzaUNg3W3)(TohnAM}b(cmxbPKuTLEXan4l2kC(gvOP4P85?9o z(61;e#6wcGsIwa0p@VB}1geoi{WpS|GALmqfS7#xVk0`^2;JN$8%LwKDFBraem7X@ z`f)JuK=0N&)O`~iFS+#cCV)(L9;6!7Vl&JJ=U~Z!ov|5e;%-{IS?;{U(YafIuI1B~ zEx7*?I$6H zY=zann?BeID|#$l-zvMCv)nYzRF!E+rVOuy$X`8wy-`=HtyJLzL?@5O0ffVcIi_?9?<(G9 z`ms}am!HP^o6eRy|2{sokgD#GwQBGD5z7cNhjQ8DfAVdjGJ81EuYhPDy#l)ii(di~ zhh6jP4(LKzv~mZ6HdfJ%9r8;W`hlE=mAkKhAj^gAWfK~#<2}Zt0Ip{40*twx;&#j4 zm5^`^0(BOY<-j3KBX=p6J08EhSok};F$O=bJ*^#vPm;iu_2{qi3>ZxcLKCt=T2(hbOIboB-UJp#Dz;CG3(d zZac?JT1Vxx<)i;}O=e(;Yc4zYwNl={?Y?_y%q|3Jw)qG%@e0lTNVcMJdu8>g(-|1~ z4ZL0g9uMK;Tf1Qb?b$19HooCM%F_WyL#(6_W+V7G>kGXwug?%(xDr%R+rG%>PbKd@ z(CrR-W}iF|dHM*Nv>DD;#OcG>`;zSa^2Nx+HG4}ONnDM+FX`ZZSpc18(*fu-hjwu? z2m7B^>Mfs6leQb=GmFZ7EFTA#c=coGBS_`>Sa#vmn(scAO^`D~RSwDlki}yU%125c z0R>@ZgReP*!q&kw`thK~d;>qh^(j>A6M3Ixq+_qBYNO zGtPkqjbot}XDtFgie+95v?1_GTRD2f_k`%cohs}o$HT$7VaNGH!q|!ud<02)9$w)T z+ORXHJoTp;PGA566^fDMZD8&(CSDEEb1qJj2Jhxux&vw7CE+dQ=olrN?t&m-6NW>l zakA#yPkkaYBHng76HRm3PQ!T4q3VaU-@D5pz;jo0@Ta@3Dx4ybU`rEXyk9uk;9m~Us1;+vRA@c2K<=s zAmAq-+djU-tVw`1ad7%oK82?}+zHowr?9y5ox)8%t*MvB}M1Rav>U(W9>@7p%R}X*U-yH5sfR4g1b(on4PHi#%Km>-tyVjaYX?fOkNs2?_#D0Yh&Ef0k9^JN+^AA8(8zCL0CY9X}v{- zpUbwi@^d)v_4X9!=RVqWOb!9Julxn{qjmJq7xICKi_rA^uWcvlJ<9k(u4t0}G3HbO za?f~@;txU*ZD@Tq7SOTYLngGZ#t0$^?9Dh8L8f_p#Z;PpT=rDX)pY*2tXAsw!%-(> z=WZ!yd_#eLo{eqpX9yC*PUi#BEEaSY&F-RI43uG?@_`vdt?-y!pE%H?3U0$43lWx zNetp2^z}(O)jXDsd`nrg(Xni}H0!ur_U?oSz)%s4nT_bme9TjH-e%79*=}JvVahsK zC9?ms>F_Dc&#&pV)3Q?KocH|9)A1!??!=-75S|Jv7GPzH90FAgN=T7Mpi63A?4iP zPZ)kyRyIy&PCtuas}P0(Ax`0`Lu6ONR|sq)8kHye=vYfuYZ+5QLM)xgleL=yFJiWr zg2*zS9Ei~JS1kan4Zj=fgic&JMyy28hop*^W!Vmh9!Iai>%#&ZiIHBx;aUza09y7w z!=a9l(!+~4LkBr=TFemj>O}mWrOwG0D&69n>C`cJQHxPxyur>;&w6_P139re-Ur;5 zW21Sb@rOw$(E6*o68^RPruKNY(a;mV@@y_^d5FjJvXgn~i!|n7G2DMPZ8|4wsvG;+ zo};hN$%Yj4jf_>Z^}P;XQBJGEs16DXwSER|HsqiZvluU(mm(l)i_SCoQH?6M zNf;bc0nJ{zQXrr89tzdCiyKi$=*@J_^LT?5(NYk}=!cE;;&({ZJ4ma)1IU^}XTL+d z+1oVZkc^_8-^}a#T z5gEg_IoQPM8HZf-zV9e!$Kf2VC}H_zn31`FORzKR~zY2Rz$IPd~gDGZQveG`NQfXqw3~!?j&j znjeL(m zP}AAs(W;(?20Y#b9k&VY`LEw&!vFFf6aK6B2nC>kS7I*CAwTrz&+@Ii5*+=tD5~r9 z5}I*URtb0F#xypL93J~dCS_lhae;f8h&bvh;TIWozaRVrbz&CT+4)&6yF7b<0Yk$y zU4-RP?DCpVF?V7n#Ze-tkmDS5*=g(Or`X%fT<4{!ev+G@v90F@tqpS`*BP%zx^tACS+`Z@DGN90}3|m_jxbIzjuoF zBK&)oc`wqx_tw^ud#St^|mLv0DuaRnu!wE)wba zYjCjtLUXSnUpSY3yC&P|c#pU4EKZ#gT6YqsrBOiZ@8Xo_e(C$~C^uOFzN5%?id_Ad z&nSJzXHcu(VTtdcSALgm6Gl071$En~idk*z{Nu8`T2wO^MA#os z9{)aH2g8Y11af9MlGFf(v0n&(pusJNdCLQiY4s8WHqTj3N}~h6%f&uuDNG}J;2JtP zVunF>b5({i{*dK*7#SELJZazz*-AH4fbRET6&(8(4KdwtW^1(;lC~V&kg+ z6e!=8@PXEB4LZxrX zk=9@0roW-oTe5YzUmU^AtQU`DdSO$L*Nwh>OZF@3nr#O#LbdJj+FF9Chnc}_=Ju|6 z*hdT+9<~i1F}z753uI}x%Q7g^Q1==?&;y35hO#ds4At2_j1^aHE)C4u1GbB)!x{IB zd^{4zG46?bo#WcLO~H<~qiz@~1%c;NO;s<*j~-@GwyC(bZNNHksO^j5XrGfI&YnVb;oZ~{5RxXE@S^{h^qX!M)x(t#*Ej#EhqgpM{CMW^d!8kZPpZ2z#!fjK*(6y5P{Ao{!# zS({w8lV@ivY(dO-tuI2QDBcYjpST$n1kkvg_5Mh3NVzx2x0_^KSQB{5z>w!3? zXXzLxEfGegyDH5ORT1g{*Grj2n?hA=RDs?O#rH}mLI{=1<%Tp5o!zIrR4NS9V-D5C zPu)bUn*yH5pfxxmKZMmTO_dmWCvcg2iIKB;G%`$0LKTwV!&F;NK51>Cdr;ryNlWcO zG)JXy^`Ix&0Ksxx$o^3BgsO2gB3zXP!rP#tszl4f)uaCHn7gp8QLqNI{w}oyQ6b$U zRMUt;ehUzx{)6@D5F1Zv6HzrqFBj0w_#-t^jV!y`XAI-LFq|Bh!g4t~GbvJqVf~fN zxuq3WdbtR)2e;W>Ms>G-Ml3JBl>fjQRUCTdmuS_jQTA1c1%?9$vvR^pEcXy=%dw^} zK;Dejq|JX|=A)6Gs-VWjT}EwK1_eQ0sKLb49mv&ht$YSeSjOoJxK3CRFJVK8l~kL1 zZb=_w!v*MA;`yQT2l&yzH^8{u)&>TZwaVo2yhJ0zRT*b+Uvhr1Y+gmx2bsCvO6n>4 zxsnfKVl_`EzFpGT#tDlW*>q^g>axBI**2ELH~sH$FT!C6vH_7kLrPMN~A z^`%bTmMI0ZLN}xQAw)CmQxqY{sHPr_&c^)45JDkh9ZFLeB9>svg27j;uHcsN*_oK< zK*!8@jYaifXA|BXPb*H2@|P#k24$>HU^4Xg=`0M+@rSm{UynY~j$m*X*5RBc)8Syl z|MI-Pe|umiBpBElva$Z(Jdo0=tJ>`GYp62EOmgjm-nc1P1OXz(r-1@ z{XsA4momq+p-Nvs-~OPMDt+%6Py(~!Vtd))ju>H`qlJ1ptYPx_>V15)9Yq1PRaaom zy=#Lizo0d>)o6qm#?(@NN2#1x7Z*zfv*4l7bv5;%_)vS7XV~rT z0?i!5O7qEjqB22a4l&(&sbgK$0bi0*SH&ib0(tO1R=o>lsBoF4fr;-ztrLVPg=)j8 zjhi(Rmo#Zb+9sxbuezYKAd=xlw}+{~HhoKrB*f6l#>(?A87HxBTL<*8*uRT?JFf(E!a z`G~&Qzq{tPU5aT4`{Kww`gG@6M{m2uLk+=xrqZ~Es$0lPr_v#a!kSEH8mg8$SPq}U zAHp)_EY)hHrANC)s(n3xZ9I+nPl&aF>ti6=jnQ!Mqid70Ty`^ia}q?Nwzo`rppmj` zBKofQnhP8({SVhrm3vjAF!xKblB)%9sE@Q(Gu4)%fsIuo%D7im6M#xfdaf^0mB!$r zC7Oa3vv^_(Cvl%@RsB5dP3t{9tiH5N&@QWetf7K-r#NB7^Bb!nH1s|wh+oju`&9Xu zImjLdRl|_s2z{m@*ewV>ieuy(^6@u1aGz?};0WXeqA47ACp12tSs8^Ipy-U!cmnDe zW+Thn&PRiFNdb?)(m_>JdIk=n&UK+H9IdM&_2M5av{?4)a=2@;!uNHMd+o8TXTZk? zV1N_igq?N;x7vv1pxD620twK%@NU9hd4*nWqH0!K0WFUOfN3-La&RT!29v~8@aeA zQ!06eQ=!slt=mcTW*wl|`_%(YwxK$U7T0nizS38TmiY6+#^uiA%xgT;D$IwTgerfc`BTK6)^I`sK>jm9C@+fzYZ631Q zt7-}V@hcrZvkBb_$!&cF6HPOY6|8%6J}@Lc7*rd43TGj4%#FU6<>(~Zq=IVlccs7? zRnI>>r|Z9ekfUw=j}M{)?NvqZ$`JUBSV+TaS`orFm}3E>fhWOAk{wj#iiJ#9pct&V zQN!87niO75giwL(4ys|9t8i@bJat^=$j1TZjbMYfJE)#2c|RuV*L1Ffx~FV9wsqCY zCP0{Yd)omVyhOD+s(~nVHKn7f6YiW3{=kHbdN^Tpv4grh_8%?o63hx9X zWeqjzq=r}YmzBX78Wt9TMyS1JP%PPxQ&uMxt>g1-1N%ql+fM4K_#yr@Nk@xijS2^y zjBik22_G+b1nUcK{t;Y?5eI?Nu`QsXVr>Dl`cve_ZU2C32DNU!>054l`M~te1MOn4?9B;AEWO(tF|aHTEB~mqVk;~ zB06+YF%jFs@U2LvfJDMO!VsK$onG&vDkGkKK^KM0TRPJPYQ{FY)&*$dA5^I;l&fjf zr7IXiEWwqq-Bp#Q+%vsyL;BZUu=fZZeOg6O;vgky?t^MXIH#I8K&&&}f1q*?;lqzp(}&cch;N*D zVwTLBYYA&RZGH%9$R+yXA;mR%!h2z1$72tvn)GNd6@i8kz0^ycrZR??h=JR~TKYAl zwCD{$M$Sfoe5L{W#2K@U7;IH3XJq)3g)EnbAhd%AC?yEe9x#Li+4||>~ z>PXmS7`+1<_RueVRkQMk_U_?*1Uvb*peki;1e;Hym;0!$Wm6CZhd#z}-xhjX;NYn~ zpp);(-B(rR%AI?l+qUTo`~M8R&{y4upVfU;2M%Ao+E+C%pMiqu&Qp9_c*@S{(20fIiReV&HE1kiYssHA(R~}Wb zJ$h}me%j11n8nO75|JlnOO%H7?N8)=vv@y=_ua+&$;JCNPSp2E;Wl2puG;`rCgi~O zJpl4d@C}#)BL=9d<}ZPCI#*Vs9Rt*}@@Igz1ITEvB8^`&n?HuRS^0odC<%Onttg0Q zCSxZ*$Yp0uq8A>A;Zrb48#T)xSM92vD;dw_wx&A%dVA%hEJl%X@dFeoY#`2r;ZPFC zI_k4CZa?!CoEcj(2Eh7AIrhly=Y7TJ;f`#kX-Q+{-tm6zpMas6LDQa4V=(Teo>ZM` z0VdQW*37jq2;Y`<7xUP{P&?-?=zGUtZ`x@=ApN_*g%Y0xu`(vAwevJ> z#AwK7wx+n83?ntHyMi`;razvTtJDaVqiN z@B4b}cHFJZ)2cfbd|uHO;n)+N#trgLQO?tC-`~s|n^=;W@Pse!cC_K_6UB z-#n*UKnL^=#;jaGEe5OV^ub_I+fQ@?+nAa+2dm!ED|lHKHWNX~u+Er)@-o_}TegCR z4N(ofAL`FVSF^MXhtP>1;%p+a2}8Gy_6$*FC42;s{AY%!Iz4ZnV5VJSLfJdqjBsNv z-#+V1yTmNBOZ(38&ot^kR5bvKmONB-sp(fJY%eAp6bcO6fUXq^QwB)ZCLdL0z_wY=3u2^dmoqp7>hmkEOxHp5451?o>vW_1uc4B zburEXK8_-Dm`W}CaM79~nh3NoT!G>Wnl*0bl>s7yEuOh$$(w-mEMJIP9VLJ{^$twyNFYyCxfuo$*Vx;=4sMhC150rbR8 zge$$n?$H<;I8w!1r^6iBi@y>D-ovQdNcCXY5nV(Ouc}**P}h;_p|G6W8gppy z=?`La+ne8qnA=W+C&9;Xb(AV?Ize5P%vo4Olc#XI7gYBky>1aE&q7-C0uZBII`)DZ z49uqWXjR)k=f4ecF1R^b^~4!HUR3?9T#g$wc-{eS2=w$V!s*H?K&mc4staCH<%0gy zpc~^H+g`-HeV6iHR1FgzcRD=FUk8IfaT~uiemCaO4# zbNzX?VxXW0XxX)fv63vU404o$jnHez2&TW1GluuOl$;&hP+|({3rfruz3-nXkYQRT z@ij#m5Jx$r1V`7Tn6GsxMm=F3+x3aY%$nYGVFK#M?JLQ zRdqjo`LepVyg#(ST@+ftM1&F2V^W4%y`mbGSqaOIRdYQ%dA!+@JV;5esQb(MkHK+^ z_r&|_gFn;Puc!%FDRa=P>Rsy^FR%rro86(f^);&anu?0Zge>!-Y$UHCud_NwB$v^3JC?Shz)$0I`SMH?~udBXgkIc$~!(I=DeS^0z&IV~;qIPen zX&5EOEU}1|MsC5&zIj7Es*e4siND>O>S^T1uXaN8k{#Js~3^Af=B zkI{_;ys=if8bcqQn+OJalMW`TrchGFSk>9gyPVl`tU6(sCj}i&QWYb(HZI28VU8BZ zt~{vcOv4bbwzA+N3KJKmCq~vgJ8u(c=?Tje5WR^Oe8-?aI$6e4?rvbt%|?e@tboP7H`i ztDn?$BHk>KMoffgNTE-YRHd-LbQm3-2t@b<8Ix4csP&H473*hsHq)!y;dcG;y_)HL zI|;5%NqGZ>j)#}6n6GL?4<8!VWcQ6N!2mWI)n7LXD&&Cg*WTY@AF3zY=dQ) zl_x_>3Ccy@13n3IkRKP7dkRKBWS@Rq+G*@0A|xMkA^mN&h}Sl`e+tHB7Ck>jRk%GH zV$KxR59zB{rlv5-jCbk#Nz?qcTKP>Er5gKkhPbUF>1uI{Ox zetaLacDvvU{1`SzP}*}*B0}pT053)|hfF?^nKd1TUU^6tNU%H@YA_Z2U%;tzfz)WG zY8Nu!AK=g6;G7w%T1_29fe+QHo5@Rb0}|)k;B{~rxHA*T7XdE1XNKw(Hhv2j&-_6D zjHC%OA?_B@hMBOQ=F!!es*yQfQmt94B{DAu&4TFqic)65>c2``XJIwE<;&^hELDXK zD7U6yC!vQ8C^rnKh}o)tspM67{WyCkeqb%UHd{49#P<5xYDM24Bp8ve&~F~Euf+hb zzoF3I@E{Z-cRZ#ifD06)V6MPCAI!M~95b#s*nSnQor77_mDZ0_k&A z1fyem3pkkHfPh z8i>K*chH<3@1TD{Rr(wG7u3~Z9!w$Fyy4STHF{^BhTP811Lf|dnE4uuYCd08jzpqD z3A7To<`vC`&BtV)Nz>=Ut(UZyvaoBe`GLNkubPLY{Osh6YPNjnC#thRbu2r6JeK}) zo^Q|Q?Hv38C!4ZBwf)C~=NG6ax^!`RJ<+e_>EKRl4^LfIXxL%SCBwLxTdc8gW;)GB zS&rc_SGr~V2vfw)kA=6L&N*Y@_H3jhIaM++G}dJ0@w7y51BscHrdI#s@b_M-?0-DC zb}5+ZH2PsFqLk*+ie;)tBw?0n&B)Ug!>TFuG2<@R=GXJ=>2=~5f($tI&IPqoEZ2j2Us*1&$6SEiv3Qm-VJTOCNkeT~bk#SZAEJh0^D1DakcsR-Qk% zMlRbz#q(jZctsWr=8%2!VU2vpz}}_k1sGMvlV^eEHWVaTY#0K-2KftMOIjquj5@6f zgNECk#%rPuPWt>%nYOCVNm~dVXf~xU)Vd_B!Kq?TT}+g~d(7y@8|`5#FMZ>Uj($PY z7DD}~Hg)mA)aB4Z=xAS)Sfo9WcIFxqxN2r|ovC)uxWC}AWI=8d;m6kjCN9!))T@Fn z%+eAlVlnoXj;BV8wKlY7v9^}hE`c_>nJz8SGU(tEtg1Z$0_7~#9*^q7GK5zvu;PMF z<-Jk;I%^f!w6IufPVS{zC&wc5{2Ogus=bIy$}kDScjUQy{8_cip@9ja?4_Z7J^-xd6g%wRIIJp=K8MTWpy=%r9V4pP_U zsM}MNzg%lwXW}o&-q24x)8I!(#u`68vs`P{a{KYBu!Ha$Vfq8e8jmT(!Eb4sWxE0s z=6DH|xKS$0tJy+l1N`HS9 z)Y>u{uu4nzA2+{(caBf{#2ZkLuC2ms$WAe#eseL~a9weIMk$IG>0d_T}X$JQs-XdMlPPNA)9v@rjY z#ptJO#lYzH6`fzBb^3pF-8Hz*?Q<XUag9^>vQO|uhaF>-!Xn=Hj!Pn|ch0p;<=F?i)2^?m|2jyJnN++EJNFJy@_Mu~R)N-Qu}QCa zZ}IG)8#go9T;~E^uLrVq0&j%dJ*6p$F06y#`*A(=&I9!OdaSP>po|T2NBy%Kv_^jN z5(Drc_S^hKOEzfDs#7lggOa+jW}MuO=+7U}?2TGF)%!xbzyBgR_wFcpz~*|BwJTmw zg5^~%g&6jV59GcYe8t?@fQ16*$f~dW1_bt2NK>i2h!Y>3gI!|N7vPv_RJ%g!tzP#t zzOh$Wp(R!?^PCE-9nEmXNogmC32xx&+`-W)meSu9TK($bwrb&RH)(0wU6@?4gpDPt zKA41kxk+pDs9eoK4$@_VgWlb+twI6D3ake&c+zXOg*}bg3u43tyP?-Q;hFm@qymHi zE1jMTjO;osO}G8N)Ry{SvOv*TDOT1b_a)*r5Y>8n!b$nk5^~so|1hIfugzM|^;V zr?v=@Hx6T=8Y}RuFB^s$O!E}_W;4dBHFSBi7SFrZ9^InFWPHX_<^rZSs1IYe95*R{ zy5=^LdybkR&;zk$6{UTL7HrX4I;ZTffcgmi?JYXLMN3G#3Y-f78yIhC!VS+yn82S; zV(A5e0rw;7>2% zjbVR-U~zpaJa?6zIQVJw{Ymt~S6YVaJl?~y#DZ+7KR?%u4SvszMxIpHMe$k zD~8(l==63J_HFY2TDuP)a(nb^7@KEP$=6yPwFJ8hc_aMxueC?iuQyZd4lO*MmmYXz zmF7BWI^%gf#FcRfNb!`sPEYL6Qq`5y>8%}T^!I4l4lOM4|6sZ8Z=w3<(8V3vz`%cu zJ~Uvb_EUpWtR`Xbk{5Syli-^LIXoXT_GHWU!iCw=7IAqOioJQ4_B{FTmKy_7c5BJx z+M|Uv_~akCB*i&J{~7JIH46c~%HZltz*wf=!CVJ~v6@{4fg zpo}cvXzpI9-lyrbK^Y4GXj)GPRL_gwYR&pDl*$Uq08x7oen@lPf$2eEu%EJO z(~NHcQnLjwFalJZ=fHsE6-U^s4%3KX>htc0aVzBb4x`-)YWE%N0~cw`cUqH#y@J(i zo=Le5;7faQMB}~4EDKo%K~4FYzWGjz44J@lCO+T*iH(_s#OM}hHJe)QM>Wr;=k{YS z##UOtUyJRM$t;PYe~OFe$4O4)ZCSkU2A7l~g!_??y!yd=6OIkHM*H9k0d~E8wf*F= zk~^jP`>$Kd_15&vPOKPS!&5aQDNXuP3s2^BU~qZH=U=v>>ursJg(iQAow_T&hx*e& za&Y)Z|KMOg1&ia}H0d~Q{5||Vl>c4_uu1SJOD6v?%`-oD1)WRS2j{TU3 z;1hjv2)K%GtKw_*lQtt)d10q)0SG-g7(=MB-U1F|{=yKUw*g0)TfyXZAm&WhWg7US z7MU`impA0}simP48QUCvI=U6t_kPChp%{U8(up4-=s6yxJmdf_O{1(T~`<0R(bsj<{Q zDeainB7qG)(6jY6h8Xl(Zf&lr<&O1!27k>zrn&s8$gg?X&V5|#K&OsrP1K{c=#k^# zew<)GuC=SQ?I2wM4LqS~vQM~Ocb!Il!6&r3Arm%3-QgLBhc`4x>?dk}0yT+!ekZW+ zV;y~R0_#2}WZ{D=3$N%Mx%;>=MbS=b52_cO?xnkU(DwJdH|SKrfxf^z=)^S!6gHsnHp& zNiST%p>&!!4nOR5!V4M$TpLC0Xk5lDM>TV+2lpUs^^n`nrT<6p8cQ^(aG~$e{U@|A z7&a9cCSUp$N?#_~oFbeyKCA`!dk-b@EdPv7S59f|)6%5opu|D!^L0)C*J&0?{Z(s8 zg=e(X;uXBnP!7hejD|Naus|k_z>m<8pnIpYB2!;&)KYB*pNdrn*Q+c;k;KRQ}k zt4?MWOS4??emD{zw3anB315UX#2Syra$@6J%C~!StT%zFcUKg|!$6x&Yu~tx5Y3T)dI`78|*gN_Q-9Tb`^^!J{Ubu(> zbOlYnh#iXQm$cB%Z&qrv_%u2c1Ple0?8r^`B~M3n!|ctb3rGVVD$~JPIC{o0zNZEk zvHWr3qSmPWw`|puY}2BWZH%2{s_QqjHGfMFQqfbvgDfky7;X%&4uDA)PWqAIHa>Rc;ClDZyDlBg73{>7Ak z1`mxBxB;O3;1jC(d^eI35b0TD1i1Fq^41<*IgVY#p}%WU>K!LF{at%3o;Jbw;PlL5 z$FPfd%HVhHuGHGS6@NxGD*o5sG0i+eet&2ULU^s&(-7^>26!w#vvHGp{DEbF*YLf? zOIVM6mlpp4GaDwI`|yD>$kNk)Xc_8G8$IEV-m6~4xVW2oTtz!2{Hdj;Z3hcB1c&hp z7&8^z;x83kyc;g(p9>2BCNa#q9%t7`dgZG2vHEUpD!Qq)PfRuHlQnwdh!nFFYK0B9 zgwxO{CAP&p|ECt^<8sma*RX$eDlPp}i}VSrj)qi6eXFDP>Zo5Oy5t(B*ZDe)t1IeI zpX*rbNdHT7Qu#Fq^lWPKm-Yw^zOFU)9fCu_bod&!a{FJ09Xs*!s>o2sr3v4A6U&VM zfLmD)=C+aYmtRkjib$1+!W20N8<6CI3#jtd(o*kRT4Xp*mrKhs1`=b%9@o@yANqk_ zxuvDE$m9x$RjBv^^n*LT!r^!i`{pn$wbJ@w`;S4x#7#%lsvTtqrjP2M#~93PQu zkx}yOoZR=NxK7m8^;Z8Fqz*2?>#d+Aw_(_M|F#ySEn999nup;MJs(({afvxz-bY@1 z&KK+X(2IAqxU_w%E2_44!H<{WiRwR}F@--EE1wZhK6kXP*kgzm0yF$f58Tn3Cof<- z88#>z_P8z5qw5X1;e3okm3#!^5G}c*4RpQcr=1N^9WZAI3lon37+-J|r}kvGD4@@=CrOp?LVWGLny#332C* z6R+SoxgDeLTT{o2*2OEiQDn*tJO)ZwEEnmYg`8{_a;I5H+!g!3CwbdUvfE6uqZZo1 zP->u@;H~T-Y+Jan5rQ<3@9<>Z0JkOfw25)9?G>N~S*SnTggao|W>9&sfq`YxX3|xW z5HN#j1`~J|ZKigraJ#l+haGN;t;%zhDx!kt?*`TKBy=medgr7iWr>uVAGQ zm3p3bs3OU44l89qOQ9uKMGo{vK5LZ4waP`m{f(pK){M@XVf46<2*(Z6qkTj>#|iFp z3Dx?cZF>0$ACX{#(rvGW!dKwH2UhH=3g4=hc-ZwJgq_7eyN^DqC3*(qx->|mHa74# zDi1^BnosCp56b*g0W4U{ENi+@A*)uc`M7uxmeG@B4{0WVjl$^7VF zXt%3Bw}}vG_zoGOH-;l~`p>_l`s-h4H~xk8Np%|X3#L4OQJY?O2!C}$01vUTwejv% zhaJ2``r2L@Bh`#ak6Mz^2URg*>2rj{Y~VX5WjDe2!&ijjRx;1BnH5qXz=HpiE+TCW z>20T|(|HNF3b7$2oURw)k@JRBLvy^$$7#X(+*V+#GgTTR7=H)e$$R0=Ag2h!p$kKq zM9^ETIm(PI&!5JJsv(ff=QpO<<5~!7WX!L(S#2JUJCs~hBA{-h9oMvo8ewZ$S(mR> zpE_KIv0z_-SJyMOMHD0?497R5W^0t%^%|@GTo?+{MN0U17Y`kkwPIYPOT#597CPrZOQt5t!NGStu|{OhCVc$+#E#Wml}Xz1$YpX?He z{ujQ$(LDKPo`YE7afxQ?4jXj|5}EXXChFF{Vtvjfe<}?W$++(SN}xzlF9t}IMhA-e zIDsT-@90L9S0rj*?bYV!g&^?7TKXhNG|}I#rSlmLj~c5|*56uKL(DIDCeMl)_gk)I zU$zaPT-X4~!#CdP!e7us4pLmO7^KbN^{az4F<2C-xBcl(uxJu(+_ozxm7EZxzUL@! zjtZ3)U9zOEAp*w)aCt5)B9yv3k`#s8?xXsE7*Z znJSD7x3K*kTc}E=q8O}ErYhtar^R%rijM;*CQES%APz7xwk{_eW8d zFf3f$TUTW1-&U#2w5hQOBVVMW6LrB;6Xu{p8O`po;qx1`ysn6e-@c_fRnZ%BwR0^` z`3^yBXp9RJaee=(m;4V(20G|J zb?zZ@biIXLEUbr_3x%?`d6?>2Pq)HE_@I9zIrFbcnCe>3T8or}&`L(ULWHWsbEfRxnV|%e&FDqkv8>X;jv^QErW5L&C zkZ4)|;DmW>cI4R^9*rs5yxJ_PXmAV$qijQ{kDi1QLiDiY<=Y*(oJbsz zskpi9lCfPE?Rui@lU%6!K9v5e7Rndk^`*rzBG$u(>Uf0X*^_u~#Y!?O7(cQiYnqjR ztgTm;P+o|@CPl=<GeJ^N9@h}L0++OZ-$;9G16Fj8R9dW~AdiuiEOIT=*| zzN(y{vxVtPDu@+rLUCQHTnh3|v=_-qI(-=nzIcm%M+O1ENJ9kbMD8J{*m&q;69XtF zUc{+y7_NS^(s~aNdA;flo@siRdP{W=W5Ois)AFL(9Oye3VOw zD)xR6fEz}~e1Nq9%nRv}IFX?7ZZgks8W1O9U^aRIBy2XD6^CJDX1oZ~V7|uP;j{ro zdQkc&K@audUIT2<;jF6O9J4I*>?JSJp>n15GgVPL@;|pNKviv6oG4je!Hhp=1CKB? zAweXx;4<*#fi~FLaCk_bGS-ukJCcEW_~L6H_~gzvBOWx+wR9vwMBqemheQ#FeM{2$ zKsq!qS-9>^!3G~W$eKdKuxV7v5V_6AXGkPO&i@*b1|*2cdZjyMu~+WmVoOsCM7P{} z11UuLi4a2PXkwyBzySa>1Frw)(NHSaHR_2u1ag*pI=YQb))TEu6!)}{n|^ScfU%?J zq*Je6#U8g&#d7x(SFs02S_2_jlSHiRtl(a$cpQe}wuU+-i5BS^Nb;jpnTo4=W{6sO zR+ifftcc9W7B8Z(M>0BI#3y|KJ;f!sq|Cv~L&uWMkJ097aF>)n zZR?A0JGOb^91bq=X;WXsVtorXgnwt$l?J1xHV{!ESGQD{sutHPj;CWHF%TieRfYH* z7qQ03C(Cv+%!d$c(%J=cBFu+UMxj{PDTbgKtLhP6;$rE+w+o}I(5eO^9%Iv?1|losOI`@$x8}EJap^r!g?+~lH56&B&g0Ai zi%_|>48r~+l!!$&x0|`s9@-#s=iNOxUCBDCE6|VDH5BfrSE(#!IDckyOr_pIb{y02 z7?c`O?%;U8j3PZ8<&L99luyiDq=%z?;-qgv| z2C}Ac@f_E5Btl``mZQI{4~Vl@F~qoXXk%lM94}Wv&B1|x* zb?hPFmzE&Sqk?TCUN|#v)Wd#UmLE?3ewF@^@K}(nfG6 zK}+_=aLcue7Q{6Y{0RYW0z8}xi;oCG#$plAJ7>AR#_(b{tE`D9Dv(pSHz&iC&*RRa zzbi;510beO9@d4a$w65GWEEhQVlyez(jGMJl zOKL~{$J}VIx&{&gLrPkRjHM8A(MaD|*`#^<7N31u3ZcQuXa&yP(5?&-km$ABpg!c7 z$y~>?M&_!cf5@t0L(|<1Q9o!`?HYrk!c`X{E3C5ms8`d|j5Xi0B^%RL1d}+q znu*AyANVqQo9kVFqp6qqa6}wmz&n8K4ZT5qn_=XfO1aHMV&gO4V76V$^*kr^Tx7)8 z^}HU>qo^;u{4okcO~(Bav#6q(NQy4kq^v^Su;k`C!przz&>91wqmjEgbe*jf(_BQ3 z{7U>wR25NQ80q@6mTVWfgv)=xD|`hL@5F$f;wr7J!&-;)N>zFrWR6_9R-`EPHV#XF z&$xM1(OlGPQ6_jYz;AC2tz0{hZ&EXK%`OUVA(H#^30fYactqqzpTrkz;3Sthz92_e zpi&h+4HMY^ExfW_-)$jgVJWm(OW~%1mLkgiZf)5<=75h$BFphgZEqHpv=m`zp!qFD zBgaQPA;O^i5glnMo@gk0K=m;?3@WcPW^Z9 zt9nUX7yM*Q=%>avd==LfhpzLADKjCIgjZ}jR~)ipxx=cni!Y4|#{LBv#n^Xa^u24h#4l8!eqJ8Z|G>c`a z$npV8+_lLUY1rC}*c$W-FFlmHw-?=P&(k~YMO@3hP-|+-$C|n@O6)B##F4zY(Dh}l zYH?nMy7VIw7xQ8;NA~TA>B*EEFqcHiS1~d)*mW}+-imLlfiou??=2gh`!npaPUOl5 zV^D$C(s6xO;lVgwfKkqynp**1buR57+NE-wO0^!GUJYMXTNc`rVyvq!|C(-h5IvqW zv*8wiSU|PcpiHot6pv&MUmo8h`0EEYkAwROsIID0N!1>*_b#pMDEg_(Cy<{N( z1dr&DxWk3f%<>ovmo7Yp>(ne>={h>&5zW}QOdt;b{QjD z@pBiE9JcH$-b5zLAZuI}1>-bD-6K+p-w&wjeV9M_0E3Ac5m5w7m{B?|wR{cN6)u*y zum)w1vpT-lsXOFLx~|!!57Dq|)a>d;HH1Be4Ty$4Pj+|L9GrY%f~+9VxUv^VdglC~ zbl3f4R)!Id<&I)#FI_A1lk*Ft@?26q7kL}h%T%wc=wMq;PjnSA?J%3;!Z%T%(QxG& zXj5A?)NG**HW?X0%7{##cNMY4xCa`0XKL#L`Jh|KBDvOLI_LV*i{Mnc+@0mECKm=@ z=#oani!4evdQ+nZB96_omm{*Eks`gXk>mHge}F&p#mxiTEu$(lL!%Y>nt5!xlQpoG_Y@!|J}oRl ziVuHYIZxT^^;R#(3SUd1KC!;@a%;$SYsjbgfN*7Xe(ba$zXn>6We|c@@qVLA_lktD z@2%0dKu{wiG{Y5Y&|Rb#L&#L6IB2c($=1@mZ!OL5wJd2$tkHfJW{1h(%JD4ap#b|v zS%<88%u%%xp+nt8tKtgmN<~XU&A0}(kA#w`aC=DWx~0nb^D9PcOxX=R-E0kmN7hzl zievj$WF3?i`OXkri!A;<81W<>(|gx+?0+&Nl{lfO@o_g?t1K^D24D1nVH1n-t~CuyK0%C@72~bxI21YdPa^R z@?h~z^+-5U#nWu7}#x=^)#SVIdq4`Nz)MDOd z?~DMW=bv{P?j)z~iy+-cu}RS1T<5cnZQykW=jD$r7%^;k5#r>G7@VD3n5~S>&MGKE zxC6AT(M7}a3KV4u$Crg7|3RWLg*+_sRX-=a`Y^2Za2Gr*QrZ3SVbLOduhXUYA@O0j z{P5#&?QqXg{eGfpTo?wvWS|}3+Wy7usMAaRL}pwL!s{UXWw^EAz6O`eR05YPY&uk> zej>xM9e5=06BPQ0i1+yV8POeZeL(i};(>5|frrB7Qbl_4wrRuKw@oX2c369-(g!r1 z(yrN)Z9`~$fAOGy2`Kj?_7arTQB?sh&LIWB?_7M1sMvThN%^H2QV9R6Eov*9b54LFKv;_rPPL>OTdDb^9cro063jw zx*9n1HA-7YIfKM?fpEj}10w*DG`_FsPYs_E4qD4CnGonwopFF^9uz*hXhaSgd?ly@5OV^68+~OEEzZWQ$)uN8(v5g) zfj=zcRpH!i%=jDO=O(w}kJrH8w%}XfH=b+cw+%S*FRsjh3DyVf1a5r*YfLZ8SN*jYk?%cH!6{WQ$(meQ?jqcv5io>+lRkF?B$`TD| z)(7GqT88gfQtSRAsQZ}^mog9uj``GW*Zbq1WcC=$*OgR&m6isaJ7XhyW`GE8 zXANo!a2FSd zyP?HIMbMxpMS=g62$uqZpqvNb8?d9q{j?-c*s0qv5$|uUioSHQuV`35)2%3zB3()Y z#5Y@jqjj|4JiMbSp@}IW8HZ}-8tF0!-|Hx zGh{tTAw!!6iF!e8qYNJ307ho!Ya2zE2Z$S!KR*iNBu4&SS)wN$dP>v} z46El-au7BZ5CC{kcB%m7A^4G%WQzcbZK$XDKMXX)OX|n3NbOriyQIu0MN=@NnfQD! zZs-X--YLo!#O0Dq1aL3g5>2tgMV#|8==`MX(bN-oP)LkRj!B7dnT~klhl_~fKEVBe zSJ939SQI=U;~Ds;HSpV<#u6TYvhmPmmZx?N+*Jb)G;kj-NWBrz9WTU?XN0H&yAVA( z0_%rvH;sjx+SzS%KIEO1lj9yy=q}89HhYM3FzC#2Tp6ZnJjP8QJ|i+R#vqI<L302Kiwd%Ghh@97N97ldbwhn}V;GD@@29{Od=jTX zgch4=_9H%*$Hce7&+TgBH{f?$a3?CDt_Al89%aF~!kBd)0hlb)AAT+~HyBG6%o>U- zYn&w>_ffM2So*O5H}Mqs`DIOfD4T{xtmDRIH=&Xv9BL2vgs;L@SH1DvdXU)gOq%O;s9C-A9SX zRKEn8J4!r4sb}pebomX@nKoRsN8wCCX1+*ncPPQ7Jc-zg@mPM6iSxK;#eWCRb!>)T z1Rf|mbn*7Y>Kz)Kq;yF#)ZU`3VM-sb|EUp!#}0<#Jpi~sR%5fFRe8gPL#O6+W4vKQ z^YV%qpXkL4vIet)uT1meg+B7m!ho{ak&>41CqUAW=~)54SNH0&WjSC6H`X{ zrnr=$z`6ri9nJ!neWhy+yc=+)y?`|L!sRqQ0PMdH@D!jA+Lyb*U;t`ERu@-UHejeR zOpF>M>W3ai9wR{e5fG|)j(&>)<{?@zM#TFT6lE(kYOqLqtl~RRzly8UX$$g3Bk+~_ zMm0&yP?L)aP~Z4dm^};vXzmCxstEB~v8L6H?!1J}%+ce8pSr6F zH5xB6)PWf^Xgo|9a3_uzH&SP1xRiOwv|Ce`eAo!MZr}yk&y2?W4{WF?b3o&QFK$Z9 zUKW`xP6KBiV&?2u6_*7W*vzT;HZ%Cq7*dU?cT_VPGC{OY?1iuhq#20kavm&Rn4wLa z`4y*@*!}`-ETXss@pC}?0KhzM#bYe^oEqVbTf-LukF>;RynYS58Sp`)bDt~7%73zG zctPHCgWQy!Co~qnkB=PR+^{I|_{SyZpGo6EI>CZR!_VW48O~!+IDmg9Z9M!ebWMCD z{G9Lj=2UyMc%@qlm%^eZ7*Gdbu TizLs2lVL(ALfApX)hgpK5f+bU!NxEM(DKou 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 FzX8pmwrceHW+RL}!KYqU`yF0gM zo_Xe(XP$ZHnK=(`sCeR)iikG-cV`Pt(?pHuh#Mo_!=5z$v}qzO(l;K^yN7|0xOAGA zv51&A}ah$lTu z!XNX@pDQfT#B;EiaUv6lY40&eZPo(Y6 z`cd{Q{Q&P7r(K|F_AUCM!e_VWNj$&O>+rOVBN$`!#`7D4@jX4g@I2h}X_?RX!zpJJ zoqX~iPWkOQzd7Tyb58#4?@m7Vl&aHCy+HHXQ@uwb+pXR*JePV?c)scV0?+ln)9@VS zC#aMB)xBZdywJjR;%>bTIox+c8-kl&{TLH(f6#0U?1 zL5N`gU|fr9!iOl~*S%h^;D3Vu3_iV@-_Vh$>B6HQ9`bvHH{{W}c(hKwL$qFgJ&JOL zO!ojFUVePX{94!1>0X-OOpgmtZM_bZXU1U^)s{9m-T3AW<{00pymT&dI6IB2_5yKsYay-n4*nH z72QiwX~+*ux&dM#<5|?Bc{_VUlJ+2qw~JPY)&pySPGUDn@&G;5=GVMYM)*h}KrI{M z*U}_2XfcxH_r^&WgXoi}A|`zNE)^+H5}gE$dZQ$9^2*u|Vh8XaS|b1O@*_s?;v#@Z zZ4~|qozct*C<0X?BZ&~y(z+k$koe5y1CBsM7orTAkds`2Kaa4;XR??C1P(Ds7|j4J zfTI`98>g8lE`c)-+G!XuBFKEm1y+hiqncJyQUdM_u}8dm8cE>T7RDbMA;(-YWAVcn((6}3!0|MHY4-F2-)96x}-aKJup9njs0_Vppo_@T=m$PkNkG&jwb(d7 zW)>v-FnBRw1)GbZ0e-~zz<)#$MTo!V1L+Kp5igQt(ZRwJLADJ2hbE(MF#-wJYk;Bg zMK{UaaBZzB^dD0UA1Y?E00?;V4?~4506}!a=ke$sk0%|(UknHUEJUQ?(*qb* ze&THS3n1WtClQqY81j&~I)H!(VOep|A4FeKS|R}rA=y|DNP@8q&OvP)!03@MK0QK* zK%?B`NKS*8{S**uCWJsd_^AN~lq6I+QtAG#g`0<##UJ-^C{JqNSBdJlvkRI-170~iqCs204&BwdrmBeJQKmz?ns2(uWw zE+#(|H=&;};pklfK!U}r!_j8wJ|YbI8p9ESzyx1}fGLv$0g#xv(F*xTw&B#udRW>% zC*C#9SpowGDL^>}eq;a{P!vodP%CqLAo+YDkO`xMe;$k^1ymA1UmF?x|W+q*Gob zvdP#FZBcl$c+GYSQ$@GLV|h7FKmWATv3Q zYxLuS&CzEfjppw7uGoA$Kb8M&3*Q!hApEhhIo=lE0$^|HpT%v@l32C4E&hzT+I%~{ z)?6s7``WWv#@rVFGBSF1{O{2h0-NKtu||_P+!en&{&xI%;7vSReRk~ac(eHeLR%tB zLVrq!UqoPO5ujG67P4-t!7Q|)!1vXcOzfKuZupd?~Z>F`#g44 ze0%iz==_2O1)5c>ho2C;<6}v5VOYC<1yCpU+c57^R@YdM3 zXyTXg56nl6mjV27^F#BR;IjCmsByJ*`7`+jH7SDyg zHQ>YB(DQ30Nj^1qnAf2o(!#x z-xhel`%-*f;OY1rAhaO%Ol-ADj<`Fx%3G&z3{;1{4Zaa*4Q|((5uhJpNX{wZi>$ZQ+z5K&9BU5-ani7n~Thk{cq@x>7PVL z?2fmETJ^hu#^%sQy*}`T`9}OnvCP;MXo>$hzR0*M@J;y5`0MeO=zQaDU+B;6Wvdsz z(q)_wv+d4Zj~8q08C|dRu8fWMRN6E9c1y0+BfknKgjJ(gB|Ui8>Q&{s7CjN4i(Xu- znUC1ROM8p$_RmYp3zy3Xf8=-;XjZ8=m5zwC;!}Yz7cE|2S|mJxdWOBQd|-G(dzYtkudrjLr3Wg^aPMVbUo77+MjhF9B5p#Rw zm^Wv_P0u6TI~T5g0padI;LM&=qc0f|SpnK)w%MzD_6uaP+n@KWJM2-9O71|-Z84zG zCO^Un%?gdtNZ-ps2a6?Wu0-y=SmaEiTV9p$CVb{*yE!oy)D0!aL@tV)f>J0T%!}+P z$%I&K&rJ42;*H5J;#2#+gUh^OrV zeY=ZA_K|&$Kr^oEJFM$&qFZjwWrx;=!8hbMKpEq5+-H4f0J)R<6^o6FFYGr=pxC|T z2YSGhKXG&HDgO>nq8lo zl;1ZF=-^N|n?u2F9O!4A6WlsqA9#TG>tHmc+gmC+%dw!iBd^{ugZcvC^g$BHnG#5K zg#?mm+PxJ&h2Oq+-qRuMVqUIJ*-=yU3$Q8 zJ*z#@{!An(F0m_ymw8R(?{8l=q{MDJpgYR^{eW@eW!pON5PV;H;79;{7=um&q=X0KY39hD-GT7AnE@C%C&R4=y3G2($f3aWt&vIb@=c>CSx*>c zb^8=zC^KNM>cjyX`Hjnw_QRukj0MP3Gp)%quy3SKCMw&&-l|zv%FIHHOeYm7v8TBZ zV;G;Z^(l|lml-)&KeZ=~9s+DG9{p2sjs4>2uH{(>$b3~q;sm*?Mu~(_XDIp=97KjY z@SuvqwNfxs3bw@}zhKMf+ZP@*RoM0&V|v*i9uxxGe11^R(Lm-T;x2mt6GuWX*8}ED zW*!k_g_*%0qjVs!W5y_86#&#chCH`@OgHg@9XR;Z(>BISbNPQxX+lI6D|MpWr5wVD?lmE*jgQ6&Btw(44>@_- z9hBo3FR`drY8@)aetmvaUm3N4QF1mwu6{DAfl(f}U`j?U%8QZ_z05c5L1PD$Ujxxz zq1EeF--%Jk|8mS|Vf1OlBsTRB3rc?4_N8Mx7rtbwcn~HVfA82H9>mA(PsWreN_GJy znJ+^?^<5+E+MZpGtmb673;eE9<&@epH>F;*@06-XrVx^`uVA+yKlJFM!3RGjo;#I_ zkn4U!68*4@xGi!-SavIhm(|b=6rVITd-OpA!tRig zv;T7Ia}W5o(v_Jnk6R+%v9CJ(BC+$PBS!cCl+(Y`12T+_wp>*zNhxI^T5R>hNS}U0 z5k%1Mk2nLx-#X$jeD@eX84IE^BLgmY^uZ`I{^%o6=9;5h%Cm|a#b1TC%s@Mp4gyt2fY=ZcDIIFsHOKUU z;@o&lFHDUaju|pyUp_fchy%M?uJ4Ho0FAbSh$MfgK;+g|lQ~*d9Ev z)P8?*zs{H?MFdh8!jV+ZVBY)KL1ME#_1Lb!e8#bZ(TZD-?MZ^iC7oN3?W9g~t%B|-s((78udpgwcT_foe9 z@&;WTvz#B0gBdOO#J*w5`0s1chf@Z1YZIs`0nHBzVukjYVTqae^jc%k^~0tPrt0UD z(1Gns_E}T=k>$XLYJR(8>gECOVf>csX3~dt1R%r8^`ex=+=5`a9!dK73M70ezR|w- zC+XpBXgK7@80~L{UP)qL0JTw8eI1lD;7Upln@N<4dlY(`=pgb)1?sbu=|uu zG$=ZMEPDBvNdc)uEGYY(6e#czzETZ{P%he42Nvd7ZRO&TCplsBpCX`|8tk{B9P4yIHgMNeCGe}Syu6N9WBT9pbU zb-8W~AUTZHipOf!s;q#7YlX*X(-70Tph+94ABiu-AA#2f89`*$QEkAxa)$XpLBdn6 zuQO0@r9!&HNEsQd(ITihy%TyrYYq(&93_Y&_o96W!8K5tO(Qmgz1Us<0=as9AGy*ly&(TH^im@9 zd+7C_CRdu0kGcYd%fB@YWefgka;5jrUdivHmrJfrIdZ8P=wBsQIwvas8L{>6lS{Us zO_%kn87d>T{ss2x`47kiD^iBL7VSN=rIm{IKP=_HpIqr5E9GSq{%Q8wi@VlA_E%_> zUfr|wN<)0*OM92UV5rIvOld&>Du4YW_Db)6TKs;3{aAX*7W`v+K~>@uo|zWEN7{GG z(rf?Ho=bVTW)bG)lE{jyCPcfUAat(pm+^A``B#;Pf1gSP=`7~1D!flePl$H;M@{&5 z)E`g!-j6_rp!f$`kkNaUfN3tkqybRLFH5bsztaR7zkg7W{fle_U*rFX_T|rZf?2=U z$}#xEh|Brse{le$X_SDe^xa~{|7W**@AyO)$Vtuh5nZ_5l}Vpqra4i zVEB9(sD(Sn3aaG#KIufrYDP#sw@iNEf@e{VjL$%8I{VE0n=f$GdCKUc7jZV z;edV*1ZjR8P#Xgt>^dMSQDwF&=L>g&&ogsj=|mHyRi_h;NViN+>h_>pyZ=I&H#5t0 zV4bl-WUMh+i$)k;BM+JhKOX@;f_xO1x5pD9euepnn5zmR@Zr&5=y~=^kwnkYJo;V; z@A4{hUOZCDCV>LWjDw65Rgo}0E`V#f}$j?jE_o1Dr=k4n(1#gxMnUha&^fYyBcZn<8OIAumWO+9= zl0$%!G{Z$_DlVFq<06iA=3Qn$a$cm8&&wrabY=_JKn`=*RpXsuLJrXk@H#iWHZNW7 zE4eJ(;HFcaXUby_BvXE@vBu5Nl$U|S+7btgYTCIB%l!Spf*N_oz^KtDNwc=zV^`f# z*17l~5JuWgW6C^gR#_k2W6!&zTiVJQbs|7ovm)s7{`v;ju&V5+I}BwT$0o0G&q}_qZK|eG#IYh9q;*jb_o^gDFD= zBFYxbZKD4fY}4P5ZU$RWKO?>K2*@r`5=y2k+D(^s7us!++M-DtsS-%E+#+tBigRtL zFcDDTVSkE}D`!jvnXzS+v8IACD`~`8X8?~MYfII0wp3zT>#6Fkg+Hv+d!+SCv6t4? zWkyQxt?8BaruvJp3;DCVCW(*i`n!gTzuN2XIuK9)-F%Lf&)>=Cee$_kK8xogb@9>j z9~R?b$j4^YDm~em?!Wda^8`4=RTnU?PNAWC}O`6rqs{a^Ug!Buv+Ehf{j(sBLZrdlKZQmRn`$jYalv!(s8=mVn z8)+l;b}x~Blb;>@Z1+}~*V>;noL{y^M{q+ym4z_||0t^&pF(}UWnXgN5&E)^?3MTZ zQf#q%F67_I9S^nC#)nzZoBRBIRLZ^!N*3Wln@e*m5{?(b80wFi0HWZ5QQRt@6W^Y0&11R^t~ zDNvR2n`OY)vbWkh?mzf9w{C6Hl3vS58t?$HZdV}>LV>V#mkcF*2>HX-0+q&)FKjK$ z<@AQF2UW<6G*8%CoGWL9t;e?7wTnu`UG{y8l47y_!lJIB*Me*t{1qOtKVDQSme|1u zhQp2ckOzi}$L+Hp=pTBQ8ET5E%&YAB2m1LIYy^@9_5&>nU?!-n_o~qNFevJ=R;kbtVatoqvnq6W*zzOPtU}`yqOYis zr9y2gR2jA+$oY{99Tv9GiPr8-*pCF>hlZ^Xg4etyLu12MAwqLi=#a2wB6P0`9jro2 zRcK7uDnQz^Ds+%adsT%-tLooXp;2M03vzy{LL~bZ2P)haZI;y^5Vn@7 zuMw){PpZ)Hu!S?0)(RCGrb5rC(9p2;ocbD~DDsjD4GvpDlzB~sDpZ-xDl~|pGzw#mLdA+cm%S}3EK=NjlL{4v ztzzVCP@zs?>k0K0S6sGIh0L(kH3_x#MHP&N;YRMU-cz9hg;u)?McvL&p@;%g{f?|U zta4tXLLmv%x>1E7gvc=qRR}_e)$U{-yXHyuelloMB7jq4pr9iWlkJ-Olb~I++ zrgYgsN50i;8pv6`UC*j119?fERIQm&Vim&)}) za9_*}owg69BKFW@y({(^WT=+AdOj%nZdbO$*_nQ7Rc3YgrpLQre3U#sb-?`+=7}i* z&LU#v`maD~17k&pbExDsEDPjlu^%5l661o37<46&Cp#{%{^Pjtn~y^MjAB4=6t!_^ z!dc8~>UP2MZbg4(7zJ4e4kMK7hnP3oW0$A8wfG>Akp|@rK;h_UVX(;o@{Rp}mnRPY zhEhw8KiMX;9qxgwaFGYv@Eh<#0+v`{!nGJ3pwY6u($G*HH$OWc=ZK*d_UhqV^ zE0SW5qQ~6Dr;ddXTs-F8N@W%UJ)sm{IL#@k0NslD(GzX<5l{9N%j_9X_6e)Ot730^ zvU}ew@9Yj>&9XF>@WJ~J@MCp zB#3f-c90SeC%Vphs=U_)s^K-kglT?2Dy%`$7ZDXZH<*ZQng?xgQSlru^v0 ze1MBoOk3syD@hdtK2aZ7GMZ1>WljCWefAMeL*w-!a0EIWd<~~6^Y1bHPfbI{Wnv-4 z;J%93k@{?``(@KO_Ao|3p^T8@2Zkjito&HT5BrOzJ|h=wYtpP@@*#cE6R~`<1{vM1g~)vn(jxkYsjgz3jq*TB5{W|9p|1UK!FizG7dy zvajCqioJN{ZI}g*Ta}0l46`H&22AN$7_zTk)gvB9gjtpBG)_x)wnQ=@-3lw{aSV4Q zD?GuIP6+V8f`E*|m=9auikVhu0%mhhrOyAHEndCI{$f>uzF~vyduC7=mRMPf`GDUZ z`%IUU+DSnkFTxN6U^*5~RNmWgt5eif=jZ_5+PQDUuDl3H8|K-=C^+}o(^q#6RD;5F z)RTdl{6H-OJln`@bqv5mQ3mQ6zyT*2XkZ`%ZBbs}XN?T(jX1=ga!_ny8vOz3K1tVI zwGQ_rG5W{`z!M@BV_13vN-rj9(Q0|cxwBeS*d@;n>eUiZb}H$7wh?TjNq@gohM$D# z*k?R@Wk}({y&wC_XM6msjI_SF?4Mwy;$oN@6kFq%tE7rVVA-1g8Uj6Y2&g{d4vc;A zbN@92a5f@C0mU&Afichjmk>yV6w}IDzy5F4T3lR~YqlCf5`pC}{FjGE_tb6 zr`F6=C*km6Pu+j?H7|8fvqg3LYZ04S0PV%qVWE}Zj){)A1`;&KqL7Oyr#s|!^KwJc z#VVIY8;2g$vU`n&)ePZ>y~gM%kn9y&wT{^<<%vpzaGg$Ftv~IvL{81zum`8S?uHwB zt-sNL4Yw9*%J9=iu62HB%KN6T;qt4=u30xUy^Nojq}A$X6+Rv`)zS-?>Q1B`X2YY zDKyHcA&}X@Dm>Z8tXnQlwj)aJF6q`bd?^8_|Nfz#1;dXbv(pA;HxY zu>qMcfEb?_vrG0`M=pliqLLkI8xspm7$C5NF1LnJ7@u;N7rYBPUzyRTv8}CJC$aw| z>GuGApZQpHJkCad+1Pv)lKL3Nd7Cjl<&)=Om;oDXU;!M}!`ccLFU+L6N1eS~XLCVg zyW^E2*k8OGdQWSUlxczve;tncNX>pO;48IW)`&V#vI(bLu=wO>y(i_vr>qW~A_0K> z5+g51*?261+|*U})f;-IH^@9oGI=Kr+Q@|pfrzDD} zC@^qd0O1B2O~xrvxhM-%4V3CT6nA{6NJx1Vi3uSai5?kf^de`q$k^$M=}Fnoa6d;> zSDTnn)Q@_#U*$ZCr#hrb`qyMWc45&fW3U&cKCr)}KCnsTX6A?e@T>i)^tZk`I89mc zS&#+|H4s0;2DbbnE*J=F_K}v{b(ZOF3c8MF4>@8niZg}faUuor0e^z&fK@I1EG+31 zAfYEhUaOVs&g)+*N#8AJldYNAq?NNtt9BNvBO=VliHKdhRm~S$1-I*6NZAZvA9tqO zE@vuqqIs8u-I0Oaz8~1-8Q>iXc!%JrOerfk&vNStRdZUM{Q7{Ng_+?+USN8QK29V% zW2*-Ev<2+8mf{MIDDJE&%5xWv3qL6>GNo$d;mo~DWP1;?_q!#Q>B-Sfp zPBPElbz~U>lhAkTXpjd)_b#z3(~fF)0lQZ_cIk?P6jmYCa`L79ZA&rK63AD1WlIL8 z${|_Uw%#ZP7mhOOa33PK7I7sAZp4zpw*er)>^R(tq4;mHJZ3|fl>tTiijW&Q_eae; z;xM{>+u4t2V+_`t$NYFS!fOWNIb?5pW2tDh=f61?&n<6`Eo=pkc&uG=VQgvEJYlxl z!!}One<7nAU6;#$^2TvH)Dl)p&2Kh7KDFVYm*AIRt-?#~!0vhw5#6o2Y(z67%B*(0RF2t<7-=ofMl62- z5u>b~c$u|}gPR@^zMXI5dxJe~%YpV`=)BhLz3o1mH|Iq!KCCS&ic~f~EEoY?4`yF&ksY;fY?m!jK&^U_YuJ3xV`P#*9Ji%-Kw4)ccYX8tNNL*BSP^V z2BQS=6vi7m%t+x{A?*KnttQ8wxMOso>Q^Wh0L8pv^A7u_9eu>cn@hzA`>D@;X5e6v zKq6!d?1rNu)y1bwPK)98NuLhgFMxBtLJs@d&&S%|ej347=u~>d0r5m|jMfj} zc>G_1JNOG`p8mxs`=!si1e(|s!?f*>KkHq@7E7#vdL{8c0ye|GJ5weJ1Tx_KFjNdb z=yT%EUf89XwX^GSIa)~PQ<7&TVfslPY;Qe}K+=Z|F|Rx>zYqPOf+&)bg0LRh_ST)f z3fIaqZjvOYZI^!D6KIe5ydR#Yd|r;{wVzMI^VQEYZM6q{VIm^azGDXyjKX6-JqIDC zY9@m0OncK8jcC*LUv|fxGK;<})t}eFFbTW;%cF*Th0Nu8BIU!90w2A>6Fzy6_!HI?^ZEeP`lqkJR`{Q)bqGeB4tlAoXC+aZvEd{JV|{<{o%Qw4jE;E9Ir$Nzi}TSEqriUZ z>q7mmm_7E3UZ{Ec7sDMBcV^l{_H@aiaO|EgNIQKGJLrZzeZhtUba9Bi?kk_YYtIql zPJ8S(Y>xGHFZb%Kn~10EtO7`oX`m(XafyJe_H@ zseBD_6ts~O0?zEu<(s62u$0;dyqWeQzVr=b)aGn|NZ#E$m-Oe|I~V=>B&=7Rv|<{Q z8s)z5vC>jeIrw^*14{Kc7id_rDS3edu0D*YuVi|;UXqgQx9{yca6~=2wnDRae+#}x z2OcKwy7?CZRDpyz_P`ufh*!B@mh`K7_HKwA4`dIH=I0$hQ`dvQtxfRk$8jYi66pYu6pTXs88bEr*V|(S3!=+FTU#=1o z{+sU-#ZIvyrlZUs3;`~3>J0%l!e~F}&mPeO5j{P^9r8axd}g?haymSsd&!k`=$NRI zJub>HB$%t5K3*|UG&xhf;t+AGbG=toh_9UGUeP`MegT#lN*3%UL&(yyt0~MrW>lB} zv$86eOZN2Mxw4`rS5S%?4r(t*)f88vwN0nOk4fJ-(I*CWyG3@FhVExf7E$y^0i`WP}ER}fmF z0P#vyk~uLoC{@X643M}>*9XJ_LZ7qH@rT5T(Z@Npc5|oJrDui2X(FRZZEd6$M1|AU zq&8$DTuo|KHp11UmSiJbO=^LRSelB6rTMx+PDgS+ii$;2Ny6SKq!W}R=Pw1KhZ|Lm zeK%-H&U!?FKROD~(-$r+i-}`(FLcdFfitW~6fd0}7Y}=mo6X9oOeml1jEX>gf@;uQ zCciEf9mq}@l4=ipH}f=)y-^$MtmrJpx39m&Jr5SFU*?^-FhU*?kU`fD=&jId0$^yb zRTr!>7vV}AD=-nvD8pD+eh?2&Vlmu}Vw$fL6zYYE318*<@hRMkvWFKwATTB68L98W z#yy3o*TRC|+<-eS%8?t+A$ac!IDan{ebOvV%! z9E5DR8|7WM>PB8d0bqx)wnc7WH1C6HK)|ZSda47e61<2smVl}TxqPq0qd}K=r1eI4 zLPX9=_^MK%RDYvZx=hQfEPzqgN!rWV7CA8DHEFyh(Ft!Ju(S;8PQH4Z?*O)pUdgc6 zTEkcOTy!17nx$Th#?>xZ#irzy8FH-*Je6q_POWHxtki2&2XRM@yPB3cc5#i#9PLv5 zgmER)g{+<>G1ioxlIdo~940jvNg3n;!PA*21n0P0ZSN>TYFDE_+gL|6u#nvp%$V8G zqu2`$A+07at^;wAM8LHbWbuUg0ZfK8@PF~X z%iQXq0(r+F+>j?B+47+E&NUW!Uim|AB)f?_lxjwYDP8Tdut$uUx@qExd1#m1C?8 zQCnDy-olE>GyJv02jwWkomMkK9454wAU8sh3`bZU2!*ntT|Rip2eUzxXn<_sA&h#w ziFy;mu=Or;!>#Un9p3EPI@sGGrsOy5@cJtEyB#pvn0F2q;03HfA~P4EXf`wtp|s>y znTYDDaZ3)XUB&n1o`VJUAISbA^>z3FV)_EUtMO-|Vtxbi623j7^yPTddj^{U^1YUC zEbE&2hTH!0coXS0fHRwM?f$AXRwww-s^CKJwdMwJg%RE`8zgaq5Ct`T5;#QoDb7!p z;FEF^pIz~}92raTZp6DA-V5+9!@C;q?s&KQs**kMUWa#2yjS6!zmRL*SJmg{e%r6|_u>IF8;l1h^n z1Szc5Mz1W+Nv9IU;iH7yn3G)6!$(NQva8yupUYhh|fl_B_z!CI+!%EW}rg*c{Jw3`RSGExT;M@PeCM{%^Y zK8KltK1txda(zvJ*TX?NVE-fyb;qbAH$(OI!L7%zs=)=B%vK9n$iT%^fQ+}gvu!K7 z9sAfpLZh_U3EtrNClA4CG??r|T6YAKgDnp-(6*avR${O`Vg}JF=dpC6&q)2E%t)f; z#Xw)k5`YYdyyK0yTJ7Mo*`~A^BZOAr^rLJ)5SQUxD?!W%7!4k&*9Q_IOZ+YoJfBx9!CWV1${ijrW)s;eW|G4KV*!<6e*%kPh0-l(9OxL3 z;~2@{dh`z+n=|!eYNIV$)(j74$V-kZKx}0FlEPpMl$_&^D?o<6$a>J^CppH@zu07l zT!b2g4G33#SjPh<%#7G@w(HTn_8|KnJB7ewPcS8Yk>FA7X2Irc1_bKwkDQp*(RHM7 zD(kBTX0$G-;+p(>O6Cf3!xVd~k{7UBDJQHJ7a(HUik*;dKJy7Fw$M`C9VR7XeIP9f zmg~ajUEb3YgQif-NB zquc>PVgnZ~SPvlU@Plv@pOF}L5WE14M7p1xrU{@?Z3H!DWVZQU41DPWrdjmbGvi3s z+!RnX%khMJ`;gni5_%B`If2~_;Fo}cj{b%lCIe8=TR3%uEu8P5+anEnl z!8o|@4&T2@6(t7VI};;epc6mSQ`l_?FfE1*H4^1j{ozYkkr?u))WC7+KOw`72OC|- z4hbE9XD>3j2!j^oXTUui1y_WI&1gt_uGiPA!QkCj&-VfU*FM$mw zDiRfrxYSda2A?O2Arw>aUM~U;=*V!QKRij3{XiPr{}fEb&WF7ylnBG^F(DHE^OLgg z52wQX)1ku@b?xxX8LA!EGg4Q!3&D{ z)LKwZv5No6*glMVj*ILB&?GJ380z~D>1A@uC<8OcmFw7>(&Loq&T@raI$z9lQQO+k;7%ja&)sN@iX~i(Ncyp_%W7b4azO z_rhwQvEsqlt^f`?-UG=GWEl(`+52$K#`)cpfzg93aHbj$hDcOQIsg19bWp5;2PFF@ zMkI$N4oD8??xQsyoSl?3!B%I|Cy7)6 z^$v_h^-k%IK$FUyz|S|K1WgppKDiSC&N5LNTbA>1t5npy*3S(d>ChcTJn@JJqzcAa z*$+lX_0HL2M0t;!O=zh_^i?&JhGnV`$Z7TIEFL3<_>qKrMpru@j1foms9On51|&%d z@G6L};h((9)&u+NXU^1v@e_>eoYM{#=M>&-T7RrcXh(NbP+^W=?Ywue82F3ERT&tH zybzMQ)xgMR@S>HAD1hzqb!8$UBe1aTQ} zwymyvw{+&uYpck#6-(J{TV;dMg1i>PhRPcG+8&2LA;F^&xR+TXzy|l$QaT(%pdtCJ zi)Jc_TO?4prHw9V#l)Oyl7T z4Nb-u1RVr{>HzGI?URZ=L{Di*PQgITqo|;cLA8l2V?ml;VBTkfv1Dh>WN#VY?X4tX zKputBM}Cx-9aVUkNTstKMdeK*B>Oz!InIK63A<>yq2@%Fi}iGzHpcr`RjWy2dkz6RlPF*zbtCl%$bD7 zFINpFR+CW`uDOuoBLU-+8i+6*${6^^RKva8G~aekt`w!|HKaLgT%Hv4Jp}~%KYODY zA^DI46Kz6MkM4#P;$f{)c~Ny8##mC5++GV_nm|s*Y$O>TBE#CCa-u6p=t*#KqRWeB zz8nV~i#79=c)~}e3ZtJj;n>n@Cu)iAeilS&2ftlXs@JV@CR?I+T9#6U=>49-BMH9^ ziH8*B9HXN$5(fm6``z!GVxm`k5j!3^uSXgN7cDB6h`39f}ODirAw zdex-ky1_*a!U2qiB_qZ$JT{di3T7l8jvlI*h(r#JCO4;Wl?TY4fay5O!4@Kkm#=mX z8z=guAq;V-GgHbf9)*e!L{>P#MiMxqI-?4UU~IyZDzJpe13EMk0QD-X z9+cop3`7vPrv())Kn&GCc$4r;jyBSZ!ceo~EFe$(uot03YH5TV$Y z1OxlZqhne2bqDms!_|O3{cv$i8jS^2DE!Is2*Gm45T-=nqs^c?EM*|(O(lRZ5hlEd z=TP)i&A`myvR6W*=+4TI3D{*vH+n2Xy7Boj>>y$x3S1O96eG^CBgDW%Dc$oVo(|Q` z74z_9;4f!^L1h2&+&gQN?U&<--E!*@qI9yH1aMlFgA4f~7)f-QJA)ulma>y{WbsXFpuDfYtw2+j2DGtZ#E}UAgT5nO5#bNQqE;`_)CL8wHf1V%xckq~ID9M2>@;ku&L&Ci8&HY?=1EXg?3FE|ytO@Kg$q(Nxg z(Y(ecBhWnHhzvwz@#M*TDe0A5(=Bc}8^6CG<)w{^15r)D&WH(OF!)7kJXQ;_{gTd zI^I!A{u>$jpDhkiham|04}}m~`u^lUSKxX^5Kt6NhSKuSORG>$);LccCGOPQHapXf z7G?UL&CaEKFK%<@@x7wWd5rHj+ME`=d)91Oi*`UPNHKyJCZAzw80ISk{^neAv?%F= zgHzz({p2iRPMm52N51V$IRMael6mjs#T}wA z%MX@0&rL>_w!PyHJXRz`t#j#QcyG9n?qXC^CThpA;t+l7R%gg@xwRB@nQ|DH2#su&Ff9{P#s?mRjb2sAr`kIUhd`iU5> zcf9BP>?hd%mf6PYb?@(m0Dc%Op*Qaxw}5dw_l`4?`T=U*>o}VMGWAC{05C=TAoRGt#_2(eavTaV` zi8%uO_C#@DcV1paeVRC`&ZD34L@M! zqm3Tcm4Nx8llq0Y*Vl|B^I_+uUx+T^CFlKLh=;^8j`K^=Bhbo1_|-G#iC>DI;sj^Y zFOj9u`TUpSwjP&br9&4sKVOMtfU7`ZWlKExD_LUguVjh$ekE$8%OO|wtX_^)bDneA z{}GpqIgaPoVrpdhq7`UOy+D>*oaw(7{eANu0A}AfwZ9eiKWoF>W+x;{e7kWU?We_v*(O!=if3oRaE+J4OWe$W%Y zQHIq%zft@MkS#S`OzP467Z7ovwTD!e9xiUgb{XMZJzY%cdV-52=YQB&c#0m6L(E3! z)9K>z7MU^^I_OESbJ-c9IGz3F5lKl%>FiIBWFoS^J(7u7rD{}1b!jD9!wCL3NG8WRM)1cz zG7&BN=4f+sOvq-*{vZg;=#azE%C^W;Vf;l99A@BeE9IX7<`Mvs7rzMd)qI`-9^^DV zE()BR&lHuyab7!9Tp3ceSUBeDoc>#}WhCrXIC8c|;P>`W5>+7d9A+pOC^GkBtpjaf zWyeW2ovsI%zm9P(sS@3NxF`bW>74p1Q5?7$2=VBe^YHIQ7w4Xt;xPNoX4Cn6rWo!V z^#>6t#;xye@x1G%o!`$8kH!`CEO~*k0&?R;`v)RVrb!$u)dwu(d~ud|G?cr5*Ln18 zgmbsqI=??hJTkU=L6baV2Rz+Y$V23+lNX(``illS(xuTzr zz+cZ5hl>ZDFU}Ps@EUNQeEnLzcFYn*&R@<0%RlI>K2IDW7CPaXVnR=DuIW;m=p68t z+HT`T9rYlu-UXrMvKxL>?5yrYE-BC5qfd?_{9b zz5kQ<2*4itqplXHgs8%jwOa~5-i2Skq7l_O=nN6l+aGfN_@pT77N$Z2*JYO|{H-JT zX?|AVy!1PWi#k#%f2hw>WXlcp`h9aO*f&Q5Bl4v~pz1+Fb`1?V+b%i%`p8zgd%FxFV zE)y8MZMRbb-Oc`WhFvB~dgt%2V+UT(-(Tk?xvbJT`!dnhsl5=Sm28NM(IM)pA)zRf zD50#`aGR0XNoO1RkoViLtFRg4qGGu;lgE{-u}#ASl=Qm=3Ny!*=@cB#o+^f(Kr=J+ zgf#cu3Ls(CX=U7+0@&~`hJ1I=DuZcZAy7yGvC zl(5BRR9WP~0nqzBl+=o%PUG)IiSx)MqHhRocPZdJe1+&4s1_+4!>sn&cV08lNna^^ z&XhlhaA!4&6>sIinfZr*3Qo`|y-1Y&8g=A`C`KrbcESmv@LrHd%^_!wm%>s_A-~;g z2H_ya3?iksLQ0K*tjMo-YEj3JZQRg{vyD?jD-X`pi+?;E5Xo1T8`_o{xH(|LdE#u$ zLqDG6zA}&?!+lCF^0Kmcy$KP5?vAy1{BH>&O`FjU?_F6 zFt%JUsJ+f%=ZVfIxVhBb#2gEmT%ZMWL7-6IhTFYc8Y%}xf`l#SIC&#-rc_8Funq`> z+)S7Q9Zsxi1&qUx1L`cf_d_*>Gn30?FbeO#rrcH0nVL{4gCF-CrEuuv&ddN`qQpQE zr2y|NxG#DrYb|lb0CxVZ-tvqohq0Q^C0ZqNoR_GbyUgABcZrdj^YA5N!0_DQrO%JL zlE)RO3m|VbUeLn!kwkgJy83Di>x%P5a6jrnl=p?p_7&h*BAe3arDpIz=Zt1hYh*M7 z_%uKvkUH~xc+$%Yvvg_$P2?@Sm$>g{_l-NU=+$*mLWhGM{2ibk$YY0=4UGy5t_{qG z2^|X^s0WyxsUD23f-iz@H6e)pw3gs4H#;~tbm%z+p##|Pf;)J)OQ+n7g3ty9B&Qy% z($htT^@;zqrI3J+!*sVbE4#|)k1J)+3NA2YPu zR`qi3PGf$N?NB2LpZxVgjyU|FDU=rYc*xyL*mLtWbtdek{xhPUl*mlqjA&4#QL{B8 zvcGP~>6;N$|7T>?2F5Jg7f2H$g6@>h96w?`fNb#N0zKrNKyW&C*8?_xA@JazuY+G_ zc6JBN_nF<>!KB&QeOrbZ`7?8FpYyl*R1eD8y)YqX_jS%tOxeBQ{F-%QlaqT}UWA<7 zTb#2l6GMKY$bLK)FB$)4Fc27lo4dI(7>{5IYL7XprkL(qwN?sax_U*#MMV+vx+pOU8s`vsvn(MGepS{V3wsa2O2t6-glYl zjZ~3}1N8{pnK>JG17b`<=V%uhog?DJW(#i@3Et)Z>`dCBJ6zHIrz%>9ijGt5_!%WK zDS(>-{t*Q<9!kszuiWy{rNr{H|6`QsCUpu$33nNq(c(IsS?Bzx>ghbZ84@C+6)1Yh z)d@Z!%Q!Z}Gmf0zK_(0i=eVmd1-qFrPdn#b zC5k3<%xL`S5{ygmgQ@OXNyN-LMqw@)^}8TBtFH&hG(bW{z^=a% z2rdf}2QV3U4}w3=&XuegPmmjxGlD|Eoq8=E){scKlQ9?9h~rN)Kq-(ai$or(484C{ zK@hQ=8)`)NfHa5s&8wXyHQ2sVt(3kunHhYC^y8OOiPcD1^CL!!%IDssCznk-a~Hk1 zZIlBE44iP=sM+^l)6>C>A4@{>k}8s2s~PRlMgk zT`P)xOV+Q@%!SUzYsIOEI&6*@+37J4w!o{aS7{TXnqCPb&O+y^IU*?@bMBiXMhsaP zm$&XkkqWDz=>~%na7-{8@*+gSvuyY}F&1SfT_;9lGOMx%66ah8+xtT2vFpT1gBIb! zNFMl+&cSN2O(`C5TE0$|>SK%9hDHF6pRcE`~W(!i1GmhvK1PZ*h*iK^zFIFU68d+~C}K zgV-jHa;~k#@yNwX*VKwJUVT@in z?BAkngnRaHUN*u#`!^>W;hz25vpfT%^*$Uj>~8JBO9DlU*JDrYaRlY11Rjg?e*Ja6 zNzP?;qH}Z+N?H|Gs|2ugL7f2VdosCEIBv~hk~~dE7t|zew4q6SoRd`Eb#2IQb+y*8 zRPEC9ZiOSDZypQ1=3IW8*iru1fEHeA8Ua|8ygV1zCNi2MbUakCp|**-&IaeUdE%$O z+8ZH(_BcD|i9th{f^#2K&ft|W3$Hh23^Yfs?K!&xg!!4YV46usY{EMK%-cnUuUIU?CCD_@NRnW*Gt}w&$!)cu_N_)z7B5F}aTSw!ep2P7FCCqtC zix-H~^`7;?2+fG*{1DY+804%SAFYK+1W|3_NYa`77rDRm++W0e>>8bYuP6^K`2-oj zQf8ZT=e=TBx+NP9M^eOQB?Mg$32P&hutJcqn6v>&Win|qlhD0P!uFULl8b2fOdDXaN770rxroYp60(76v`sf)-g>Xddxx`Td#NKEEGS-YwJRBWHBJM0&DauA&!F`Rg^XN24XX-f^Z<=*)uPXD3IDh=k zkY@ojhQN}!kn`g!C5UA!Z+?v7HF Xu{K2-7DvKxRH8jux*tPdo$a zzT&hzBgTncPPf(KlOEe**ev)E4nnlF;&ihPtpU4smP_^WXGQlQw&TB&oQ7PxBQspmx*cIjH5 z2k9@5JLzVS{_;5Z45WwYmIj)6Aia>Jzg&`DF3?dJAxZ--*Ja2#>jg0))!K}@Bn5=4dI3uRv6L*F*`HSfhf3*a~6)o5+u(bIqM%2MMK-9DM4;q(f)NAjZ!3{ z`fr~tsi3*QY4+;9DzM)KhgUa`FXy!Xoh`~+y%E2&{&%AA==yvra;tekegt}Z-)o}x z-u97Xl3T=ex97HfxJBGEU6XJAxi)M5f!g5Wg)Lp=`S|a9He-OpRP=Yc|Q*>q1xPRPZ?FZm2y(!5OZQrite2iTcZVBX=@yW%uWM;ne*!>g}*bHnZrr4CJuB+ z@;2Pgt<2tOl}0siKl}winN5U@CMs!oZn?a5xksy*EZx!S9ogRC|s%}pAP2za* zg!9MOL_gn}#n8exICpLm{kyjC`*}{)+!AB+Wq)FjZ`lN`=rJeu7WCKU&Y^FKUYH|i zye@_h-6PBMZWG<|Op^OL_?f^Z1nNfebOF+=<&VgkUVL4QIjWi8tO-|yz}}A66x7Ny z#2)hnOizqCl8h(A}0IhD98gh0`fcs`PjF`DCD|fqd3sFNF}d$TlDU+TqcK;obK?;6j|WSs#v5| zOw0kl<{eStG_{IK{fYm-$I+GlpXl)uV@v+DLaVBP`-cZdGM4WVm~4F2k2w#cxbPz&MhC;JfpdGvi&+LkFm9-xcHde(7Ctbq);1DeF1oJ@HUU zwsIBeVq#2o&U;UEb0)nnZf5zm_r;MeoHA!ZyXeHgFWSZbIkSd%s_UAdKh-hxIwc5H z3l)-SeuUP@7BLNH1+A8B=!eo^$FLe?4NlJwL@Ge{L3$B7lRm&A<927x2jX?OE&b+0 z+|PBl^Vbid{V!VNeDWcj^saQm+px^DokO>Y-d$Wj!g+9;%vicGtkGpcKdcw=v&3i-#CwM7ybKez&G|2R!2c*{yYe;RmKb<4TV0d4JzCisM(&6 zun=lX-Ew#~Co?Q-U^+fFkjgfOUnp$H*LO~h1E zQ<5;%Ac?|6h(f3&;r;&Bb>GvJ!?XAEfB*02)yLe|I-h^%^;@-3Ll=MH-3EOA;R|P} z*z8NF_(k%EFTGYx9{?S|{wh{WOCX?uZtyVZyzNV`XN!5zUv;i?261H_R^f0+*!fds z{g+->tZmD-dxPbK?OxNilONE$+$Zm1@jlYU2Iwbo#Q-W)GHIvgJS#TCWvYCCySLQy zmdk@*b5U}pJoB}8miL-8_{MAM&5(n>@tz;P(9v5nydrnEn9J)tL!|RFp9+|(Z}9w} z1lc)GD2GH;8-k}u#h>>p@qalmUQXBnb?Az57wn<_D5evs>N2D1;4ptNo-vmEJii|< zsO#eX-Hq{n@4m{7R<6=u?}{S%bcfg8`$qD1dc9lEn#Me?08wxy`)5Vuyq#XBW^?t* zbU&`iKv{uF(}LYG{=6d7c6#}-MLNYRWZ_OskH3+xc6$99eTa*i{hOA9xhM( z=yk8NE@t1dMoP3#k*z;M9ZZ!5KY71vHirGB+jXe^Ib98*qf~BHvg^0RA z_S%eYe=`0rc`K<3}a3lWswG+>7i!513XiFuJ&5@i5dcD z1Z6S9z03q$d8S?rj3oTQ*VKtgh5l(3jLC|QwlWk^cV5iZLmt^Jr&^CvYGs9Ix?mps zwP%iM<)$PP%LD4k(J8OjQ8~$&QT`$?$Cpe0>^0Wzy=P2ub2o4|b5SP~fPYE3OM4W6uBGs zF<0=D*T-A}V!A;68pWVnaa@$4Oj2Rdjo*3PuHuS+3u?$t zw9vbRZZ%;0Gt}Qzjpv?iD8gCYDZHVPrD~8IoU(91kRIwK>ghTQ@K4k9*P_C-SBxm) z?m1U6r>JlvM$KRi-G&)XDwW}!@&t*dSmWM|j3=Q-KSV0NlV!d)uSXiQ?V`MJ{4R}> zd3(I}-ox_t9&hl;_kcWd3bS%7c1dUiT4L!!XK*s;C7Q!;e4LwTlE@#l_wlb@Kk2{D zJ1Y3l$L$m|$)hQ}6PbE6#nn&lnR4OxUbAMc4%0THY|h+>(c^Gf?)x5l`qr}id+t}X zmL1=Fg?(;TB?SE~;%xXuSqzE~@B=f$Q;BpAx?lMNn(C)+Rd}RpL}61oVXt?pH(jRg z_5PgK7~h$$6-9rIB<~0BxPoVa%psNoPOqmvl(*?*tj&-O*7VG*K$U>)%38_y&4Y(U zA{7KV>|=P63MNklMk$+NXAr%S66$$^{zbN2kx&Q^r=}?)W|#-Eqqbf2 zo(waiRke;D`#$6*IvY?I`+6^nGtC*TqjsDn9W%S1-lpPC>6t}IeoxCXol#I-mt}5@ zp^Jf$mF#TuH)yj6kZ;jm*2f(c6o;iF!tt{qly*p7+#DL)tCv`I$jNb2SUQDx ze2gN709=FarfFEMoRZ-g2ZSpQ2+uztT%}>1-emdZ2ZUGdA08T3?~70ond?N2#(DcH zS*u|lT}xHEzFrvriHTgL6SZXUnjD#9+H^$^4j~lj!NE_t!CP7U;DuW$+e7syOF>

    H8p^N)vl-)U|b-_k@6zo)#QG$+8Z_DuK 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

    4njhOOb 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 S+B!t Date: Fri, 30 Jun 2023 13:30:23 +0100 Subject: [PATCH 1619/1725] When >1 clockinfo, swiping one back tries to ensure they don't display the same thing --- apps/clock_info/ChangeLog | 3 ++- apps/clock_info/lib.js | 29 ++++++++++++++++++++--------- apps/clock_info/metadata.json | 2 +- 3 files changed, 23 insertions(+), 11 deletions(-) diff --git a/apps/clock_info/ChangeLog b/apps/clock_info/ChangeLog index ae33f6f26..e12b30692 100644 --- a/apps/clock_info/ChangeLog +++ b/apps/clock_info/ChangeLog @@ -3,4 +3,5 @@ 0.03: Reported image for battery now reflects charge level 0.04: On 2v18+ firmware, we can now stop swipe events from being handled by other apps eg. when a clockinfo is selected, swipes won't affect swipe-down widgets -0.05: Reported image for battery is now transparent (2v18+) \ No newline at end of file +0.05: Reported image for battery is now transparent (2v18+) +0.06: When >1 clockinfo, swiping one back tries to ensure they don't display the same thing \ No newline at end of file diff --git a/apps/clock_info/lib.js b/apps/clock_info/lib.js index 206022272..9dd975f1e 100644 --- a/apps/clock_info/lib.js +++ b/apps/clock_info/lib.js @@ -10,7 +10,12 @@ if (stepGoal == undefined) { stepGoal = d != undefined && d.settings != undefined ? d.settings.goal : 10000; } -// Load the settings, with defaults +/// How many times has addInteractive been called? +exports.loadCount = 0; +/// A list of all the instances returned by addInteractive +exports.clockInfos = []; + +/// Load the settings, with defaults exports.loadSettings = function() { return Object.assign({ hrmOn : 0, // 0(Always), 1(Tap) @@ -22,6 +27,7 @@ exports.loadSettings = function() { ); }; +/// Load a list of ClockInfos - this does not cache and reloads each time exports.load = function() { var settings = exports.loadSettings(); delete settings.apps; // keep just the basic settings in memory @@ -63,7 +69,7 @@ exports.load = function() { } else img=atob("GBiBAAABgAADwAAHwAAPgACfAAHOAAPkBgHwDwP4Hwf8Pg/+fB//OD//kD//wD//4D//8D//4B//QB/+AD/8AH/4APnwAHAAACAAAA=="); return { text : v + "%", v : v, min:0, max:100, img : img - } + }; }, show : function() { this.interval = setInterval(()=>this.emit('redraw'), 60000); Bangle.on("charging", batteryUpdateHandler); batteryUpdateHandler(); }, hide : function() { clearInterval(this.interval); delete this.interval; Bangle.removeListener("charging", batteryUpdateHandler); }, @@ -73,7 +79,7 @@ exports.load = function() { get : () => { let v = Bangle.getHealthStatus("day").steps; return { text : v, v : v, min : 0, max : stepGoal, img : atob("GBiBAAcAAA+AAA/AAA/AAB/AAB/gAA/g4A/h8A/j8A/D8A/D+AfH+AAH8AHn8APj8APj8AHj4AHg4AADAAAHwAAHwAAHgAAHgAADAA==") - }}, + };}, show : function() { Bangle.on("step", stepUpdateHandler); stepUpdateHandler(); }, hide : function() { Bangle.removeListener("step", stepUpdateHandler); }, }, @@ -82,7 +88,7 @@ exports.load = function() { get : () => { return { text : (hrm||"--") + " bpm", v : hrm, min : 40, max : 200, img : atob("GBiBAAAAAAAAAAAAAAAAAAAAAADAAADAAAHAAAHjAAHjgAPngH9n/n82/gA+AAA8AAA8AAAcAAAYAAAYAAAAAAAAAAAAAAAAAAAAAA==") - }}, + };}, run : function() { Bangle.setHRMPower(1,"clkinfo"); if (settings.hrmOn==1/*Tap*/) { @@ -131,11 +137,11 @@ exports.load = function() { require("Storage").list(/clkinfo.js$/).forEach(fn => { try{ var a = eval(require("Storage").read(fn))(); - var b = menu.find(x => x.name === a.name) + var b = menu.find(x => x.name === a.name); if(b) b.items = b.items.concat(a.items); else menu = menu.concat(a); } catch(e){ - console.log("Could not load clock info "+E.toJS(fn)) + console.log("Could not load clock info "+E.toJS(fn)); } }); @@ -204,11 +210,12 @@ exports.addInteractive = function(menu, options) { if ("function" == typeof options) options = {draw:options}; // backwards compatibility options.index = 0|exports.loadCount; exports.loadCount = options.index+1; + exports.clockInfos[options.index] = options; options.focus = options.index==0 && options.x===undefined; // focus if we're the first one loaded and no position has been defined const appName = (options.app||"default")+":"+options.index; // load the currently showing clock_infos - let settings = exports.loadSettings() + let settings = exports.loadSettings(); if (settings.apps[appName]) { let a = settings.apps[appName].a|0; let b = settings.apps[appName].b|0; @@ -259,6 +266,10 @@ exports.addInteractive = function(menu, options) { //can happen for dynamic ones (alarms, events) //in the worst case we come back to 0 } while(menu[options.menuA].items.length==0); + // When we change, ensure we don't display the same thing as another clockinfo if we can avoid it + while ((options.menuB < menu[options.menuA].items.length) && + exports.clockInfos.some(m => (m!=options) && m.menuA==options.menuA && m.menuB==options.menuB)) + options.menuB++; } if (oldMenuItem) { menuHideItem(oldMenuItem); @@ -319,6 +330,7 @@ exports.addInteractive = function(menu, options) { delete Bangle.CLKINFO_FOCUS; menuHideItem(menu[options.menuA].items[options.menuB]); exports.loadCount--; + delete exports.clockInfos[options.index]; }; options.redraw = function() { drawItem(menu[options.menuA].items[options.menuB]); @@ -339,8 +351,7 @@ exports.addInteractive = function(menu, options) { menuShowItem(menu[options.menuA].items[options.menuB]); return true; - } - + }; delete settings; // don't keep settings in RAM - save space return options; }; diff --git a/apps/clock_info/metadata.json b/apps/clock_info/metadata.json index a45741253..ef9a3effa 100644 --- a/apps/clock_info/metadata.json +++ b/apps/clock_info/metadata.json @@ -1,7 +1,7 @@ { "id": "clock_info", "name": "Clock Info Module", "shortName": "Clock Info", - "version":"0.05", + "version":"0.06", "description": "A library used by clocks to provide extra information on the clock face (Altitude, BPM, etc)", "icon": "app.png", "type": "module", From 3fc452272287880b1cec1029cd59b6272d195e48 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 30 Jun 2023 13:30:29 +0100 Subject: [PATCH 1620/1725] fix docs --- modules/Layout.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/modules/Layout.md b/modules/Layout.md index 95bf116dc..96790a41a 100644 --- a/modules/Layout.md +++ b/modules/Layout.md @@ -30,7 +30,7 @@ g.clear(); layout.render(); ``` -`layoutObject` has: +`layoutObject` (first argument) has: - A `type` field of: - `undefined` - blank, can be used for padding @@ -53,7 +53,12 @@ layout.render(); - A `pad` integer field to set pixels padding - A `fillx` int to choose if the object should fill available space in x. 0=no, 1=yes, 2=2x more space - A `filly` int to choose if the object should fill available space in y. 0=no, 1=yes, 2=2x more space -- `width` and `height` fields to optionally specify minimum size options is an object containing: +- `width` and `height` fields to optionally specify minimum size + + + `options` (second argument) is an object containing: + + - `lazy` - a boolean specifying whether to enable automatic lazy rendering - `btns` - array of objects containing: - `label` - the text on the button From 2b17ace0ea329e1bec9b548f97e9e6b1c2317cd6 Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Fri, 30 Jun 2023 14:51:33 +0200 Subject: [PATCH 1621/1725] gipy: minor cleanup --- apps/gipy/app.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/gipy/app.js b/apps/gipy/app.js index ddd1a2c08..a451b6373 100644 --- a/apps/gipy/app.js +++ b/apps/gipy/app.js @@ -1,4 +1,4 @@ -let simulated = true; +let simulated = false; let displaying = false; let in_menu = false; let go_backwards = false; @@ -1388,7 +1388,6 @@ function start_gipy(path, maps, interests) { status.display(); Bangle.on("stroke", (o) => { - console.log("stroke"); if (in_menu) { return; } From ded2107f61b2c366a81a272c695cd1817f3a6b41 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 30 Jun 2023 16:41:58 +0100 Subject: [PATCH 1622/1725] Improved OpenStMap image processing with sharpening - we now have a separate test file so we can try different setups more easily --- apps/openstmap/imagefilter.js | 106 ++++++++++++++++++++++++++++ apps/openstmap/interface.html | 29 ++------ apps/openstmap/test/index.html | 116 +++++++++++++++++++++++++++++++ apps/openstmap/test/osm-test.png | Bin 0 -> 1406712 bytes 4 files changed, 228 insertions(+), 23 deletions(-) create mode 100644 apps/openstmap/imagefilter.js create mode 100644 apps/openstmap/test/index.html create mode 100644 apps/openstmap/test/osm-test.png diff --git a/apps/openstmap/imagefilter.js b/apps/openstmap/imagefilter.js new file mode 100644 index 000000000..61d14bb53 --- /dev/null +++ b/apps/openstmap/imagefilter.js @@ -0,0 +1,106 @@ +/* Image filtering code that helps to transform the OSM tile +into something that's usable on a 3bpp screen. + +Stick this in a file so we can +*/ + + +function imageFilterFor3BPP(srcData, dstData, options) { + options = options || {}; + if (options.colLo === undefined) + options.colLo = 115; // when adding contrast/saturation, this is the max saturaton we add + if (options.colHi === undefined) + options.colHi = 250; + if (options.sharpen === undefined) + options.sharpen = true; + if (options.dither === undefined) + options.dither = false; + + const width = srcData.width; + const height = srcData.height; + var rgbaSrc = srcData.data; + var rgbaDst = dstData.data; + function getPixel(x,y) { + if (x<0) x=0; + if (y<0) y=0; + if (x>=width) x=width-1; + if (y>=height) y=height-1; + var i = (x + y*width)*4; + return [ + rgbaSrc[i+0], rgbaSrc[i+1], rgbaSrc[i+2] + ]; + } + function dmul(a, mul) { return a.map(a => a.map(n=>n*mul)); }; + const KS = 5; // kernel size + const KO = 2; // kernel offset + const K = dmul([ // 5x5 sharpening kernel + [ 1,4,6,4,1 ], + [4,16,24,16,4], + [6,24,-476,24,6], + [4,16,24,16,4], + [ 1,4,6,4,1 ], + ], -1/256); + /*const KS = 7; // kernel size + const KO = 3; // kernel offset + const K = dmul([ // 7x7 sharpening (gaussian - 2x middle pixel) + [ 0, 0, 1, 2, 1, 0, 0 ], + [ 0, 3,13,22,13, 3, 0 ], + [ 1,13,59,97,59,13, 1 ], + [ 2,22,97,159-2006,97,22,2 ], + [ 1,13,59,97,59,13, 1 ], + [ 0, 3,13,22,13, 3, 0 ], + [ 0, 0, 1, 2, 1, 0, 0 ], + ], -1/1003);*/ + const DITHERM = 3; // dither width -1 (dither must be power 2) + const DITHER = dmul([ // dithering matrix + [ 0,1,2,3 ], + [ 1,2,3,0 ], + [ 2,3,2,1 ], + [ 3,2,1,0 ], + ], 256/4); + + + var idx=0; + for (var y=0;y255) col[n]=255; + } + } else { // if not sharpening, just get pixel + col = getPixel(x,y); + } + // increase saturation / contrast + var min = Math.min(col[0], col[1], col[2]); + var max = Math.max(col[0], col[1], col[2]); + var d = max-min; + if (min>options.colLo) min=options.colLo; + if (max DITHER[x&DITHERM][y&DITHERM]) // dither + col[n] = 255; + else + col[n] = 0; + } + rgbaDst[idx+n] = col[n]; + } + rgbaDst[idx+3] = 255; + idx+=4; + } + } +} \ No newline at end of file diff --git a/apps/openstmap/interface.html b/apps/openstmap/interface.html index a8ed3d285..0d9ef3152 100644 --- a/apps/openstmap/interface.html +++ b/apps/openstmap/interface.html @@ -69,7 +69,7 @@ - + + + + + + diff --git a/apps/openstmap/test/osm-test.png b/apps/openstmap/test/osm-test.png new file mode 100644 index 0000000000000000000000000000000000000000..af22331f5af4ab15a4fc75fdb948c8dcad306f49 GIT binary patch literal 1406712 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

    jtMC>2UN)XHb7P8A4t%Rf+ZZKk`luzKPY0pm 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

    tU4P|`w~ih@%q;M|%(79fh5^82Lpr4ZAf)ud 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�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

    0AQUULCr@-AP@5Z{p4#S-UY;<2nui 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

    $?~e^=3}tttk|vJvDD zHcORM>FoUQnH6H%`tGf}hQ@~g;GugT9xV*6JoTO?nYfgQ@GOhOhDOxH2*=iR?%O&n164^ILMbJ$?06i4+k*ZiqrklT24| zYlM$g+aSm_qs4*#+@w>*6RJBAAv623;QY<%UJf75hr=hj_^_un~Ixav8~ z3nz~F<-oC%N1uG`Ljo--)=d%(R>d!cpWSwf{?Nknv>a6{F-iEFf*@#$ zLq?A0pP~NfwPzT1W7Kdrh~m)NiC~}UlITyRjBv`&IOq9vjce8 zmJE~RdHd3HpXYoLlIHNrV%Y&eWMV#n!$eWDmkKOfIgYEw1e9|E)s#ozj%`{N&vBZn0uTfN47;d&%+pexSdT~=cnNOI zX9ob5p?HqA9e1{|ouWttgsYS&pG2{=Byuc6%?SpXJ__4D_pRUBbH@`)nAy*r`o7%y zV66M0RUPavAr#F4fESH9G=0m)vd@PgS*4=#0n8q?>_%~*mdu3Ivn65Z)<<+ukHAi_jbMO-JOpFc?lClPRp0AQqA)({G)#C zp2m9|Yztrb+p_`UVDnv1bU%VUFmT!RAgfJkw(8tC@tHR!n*$vM(*=N{=>=HZaEet& z;rbyQk|K*U-wvsP_4wJBVBlD&Wq*;R)}>;XQ*3rvh%|5fN|EG6pI)Lm?_Ncu!_SfV zX7(0;#K&%y;hF$5%4u<5xMI207@3M``vk#9uf^4lNZPBZ2cLZFOh%Th+(>!Qy>={! zARCx^Rt(JKt)-@>f`Lsry`$=AMw`MI7xKkoq3B?jVd#($i}TBrJx7RgU59arF}gg- z7|GJ`W;71~2m&P54*|=bP_KQ&}RS1N_;h6xf|O7~*`4NAqnx zbn81)6}@CSmKTlrx+7wYA}nno#gn5rftF~*c;LAn<|wXKZY03L&PYILsIG%I99%Fc zk!z`u)V)ULhz?!P<8N51^^e|pQkZ+-E#7vB4}4{)^fmw)%! z&era?-uKA4%V!5i`|sFsmuecH|L4DY+XIj8?b-j`=e`{XgzKX9SNg6z`{FYJfAH=1 zJRXh(C(C0iA8gKV>g)sAxYGjw@Qc$IUkn0_re+#o;f}1xL@7dcjO8ngn{X*tE*BNe z^IU`oiX?64`a8-|wUgO0jew>o*Y)b_;;)}Qf2FrSlS>0Yz{fin13*pK4*=wiryY}n zG@Ej{Kda?mFr zL@2sxnRD%s4y0_iteaMS$W}NL-xuf~ja3)rlhfvcQ{`<1YB1xn|h6-Ms0p zE`Dce97i>fZuGPP0LO(-pUfy$h!Z;)-~M6m@VTsKI@1jb@=UjsGOd+oUAYx)%+NQ* zqj8(t0Dx`VBjc$pTer>*uuhH+>Ut$nv+62#>*P%4WJXT`fa~FkUG6JfK9f1Q{@o&y zax7g}vM^7j1%R$VH+?M$0uf}Gi!3H^k0~Qpi+v@tIO96EU8}!vapf)P%lDl~zxvAL zOD|6xIWqp-sq`yT%6P>t+pbkoDg;H=*3~p58ur8vtj*4!o3+%5Be~gT_Oew!%d?bbZlFv{z0MJxD5C~}MQnC?EEH8V>5*rE#GhYF} zShcRxl8>R6a>@)J|GOsi?P#nzl}cvVBJ&#h?A}y3kxg&c;IF1=$M+!tE*VnxdaxuS>o&fCqdZ0Y>YC6D3|7zs*k#o zV05iWhZ{FuWG{?!Q@v96eQ%f;);VT&k)mpRo1U^LqNzI)Mx8v}Q+j=>^s{lLS0%C@ zSM-?bmyK3t%q%XviudQmV0mb^PucZw2~3W@enAqOCQejW;FZe?BFT6nR{ejJTgF{f zjf-Kw`1k4L$y8-x^F($4Fr4YpE{$k@O~dLcx~5fa?6NGGh5-N^5)U=p7i2;JP}{a6 z)VPBoZO8Kfz;xVX*|=I@bLO^0;NcqS233ScOlxGDQFK7#n&j5zU`JR?yngnqQYt$x zE-F833DOiX{q_}f>uP}&g?p+yK?K3RMuUL)b;Sy!a#qe9{@16?SqGHr-FX;ojno0s*n_P zi^44|$LgByV#gor1OUg#`Xhl#dA)0Z>ZJOP(Dw7s{(1W9s~rb_bzB|2oZc9b9RMn2 zg+ydL5hD>(lKAKFEq80KnKTO`LKp zg=Y9ATqBDyIedzs$wbHfE_Noh2Vy@a~&cemEQN3(*1jJN4-d*2oa@mC+?i8Xt&n=YlU9DS+l_Ez8y@QtpUSKIM z5lsk;@apTwgMr|^hwrPng}e9P+c(%7wKph4hR25* zY8&41=64p!$-eYCcQsQ!^P4*RKsJ_N{M?wPx;RVo$xKla2~3R6aXOop>$$d1;1o>4 zGKJkS&{tWiCsouFK@k8*#LOt|wki5VmZd2N-SbLk&wt$9PW6v~7W-HP5MLw@`$iMgiNcI9}d?B#=qLCz>mJgH{4XiHP5t$I+ze z)UlkelBU1&&BuQ8qrdXMef)!;`V0WTwdhZlLR|rm)Q*|T>K^v4YnAjtj^CJ7(zm(I zY-U7uj=jE0_v+Pt0EkD!H@PwA^Jl9f`wXs!GkWUC_;a;FQ)j5NztV5m+V+*DcFw`f zX0WaD3l&L|8Gn<|FsKfTlvw9$Tuk8Zuk^_?R-1tc+IdMMoNz zZnQSEHp(q)4$SGV^v@1*5ou}mPp=d%%y0Y>$ZT+aONv&0xHPER%4!p1=7SKzj!RM` zNgyB|_1baw&^;^Mzip`ifJkbI6}3hwndy6W*V{h6*anVmo;mfsLm&C> z3jgRYEeuK7=U-t4huz2Cf9uDx&nHnE8yOz%+S1*7`ASn`UDw`yj3&e4s=}P~7}~X~ z=`jQO%2Q80b^iRNPygwkKK0a7JV*cfM}GTjPdzm_cr_Nj8G7y}QPE15Di_PMGO0+9 z2(i&GUi|8lTb|g}u=_jje#*qgxH7(AHTWPG0|2OP_0_iW*tRVl0ET0fMR;JA{CwDS zj3q>N0MH#JMi1qo&I2!}nXUdkmrBQWFuUcIRZ84!)I2SQmU6mfhJ+<*oK|gLD=~j< zMq-RnruttF?RYqi*5|dqX|PCfoEr-Cg@l{r3Baz|72qbyMD@)wusc*xhYB}54O@d! zi;tuicRo6n&OZHB{L%li>CIg+C1dW=G*zq6OJ=EU6uPYdfUarrM69Yom&;0xu+*$c zH7S%Eg5kz<;z-0R8B%;6jD~*cFq{q{{`}>Ytq4)pp?A)#H;|vN76z z=slnH#dkJp$-d!UfQ2IvS3*>XZ;$W4_|oT-SANoY_}87r&fck08<^IuUAz8$vXq)i z?`nUzcX&u;8b>Dwq7Y@tuC{2~X#V)@=#q?6O=k64t2J9?ZEFS;HCjlVVb}-TT zNTT&XRc&8Mqzp;Y`LQ!{Z8y#Ewxy46bS2^WR1Nz8K$0X$k(O!Soah*t4RlGq(05;Q z>LZ@(XnNWuORk_s? z+fCC7hr_vC4geenS1+n?B%GRBcxG3i#qsfELv164C;)I==R42-$8SIRvD4>IHPtm+ zj@38VyL;Q-OeF~brejp2W&4Nw9=_`xDJ2;dB8Fx9L?1&jBgx^%-tzcZac~WZL-U(D z`#?69UvNLWu9q!0t63$QwiMO#F}EAuQZ@ho$rMzA0h)bK3h7wDp*>J^ zQeHcQZdiM`!dZ~zAUUxE`yT9f4xP@4!$qy2Tj#H)Ph9K|ba&F})aO3)-@f|a{~$e_ z2LK8YTf*c{@uFM)nZ4vlaxrX2N#$SMh-TmBHrJ_&>^(g_vqkoS{>vOq#=>jwkFJgL z`Lk1t43=!y8d3URo;WgG=$lf;U!FKJrmU{|1tMu|t27rH%3pb9@}<{OFVESaCDgq; zy8n)vyO+?oIfB89^r+P3tRE-Rul5x#FCnrEl(@g+z@4@CttXW}r`#YtglC!AujDV3 zRd3~!`IsgEOBWLo07Uay2KfCYHyO-GD#EW0r{pjatX6+WXUk0kN>T1Qd z->B74FJ}i%7han!vI9U=to>&H_rH4n-wJlY(klfcT{N-_itGTuF(OZS0N`NT!_JgC zesto6fl|Ng7}Ds}wjUmi@Clw;rq4f8=xy;&>pMdwC+4fWlsmH#$G2W=16_PB>N-og z(bHGOSlgnv&HN}|PW{|M{7J^$_T~&HzcH>)0tk$+%zlNZq_)6{MqV2N@=A9#uq{DR zTquYP00s-n3uEOz6^)rx+Mz3O!#hh*767~NSH_9-tMljJEp&r^x_SBRHl8~n z!7n-drx?B(a8G>Xf6p|nBE)<>?a-}A1wzUQI)9zA{GHHnc+C}-+JchW2aw~A+#mF=fb6nCr_M02Fn3IF){hAXP!QC{0K!!xk{?Bre30a zw9OwqdTexPq9?JpMs83GmRZqHpSpPR#Hp^}b{fsKM<9X>3sIgC*f+h;NhH=2%f2A4 zhm*?qmBIx8uq~YkMgc&6^+*Fzs1Z4u^|?d`!!RYY005zeJ7|Wl^EFA*+Iw*_8`xia zcmJzj9zOZ?=6z3~t~+|u=QmGaP54^+C$NH9#0xa*b9K$cZeI=sg$L#s+ih%(mxc$j zmoBF+rbxZ#iO)3ed!mvZKKG;l_LF~n=g5U`k|bTVw=e5(myp=h^)`&{qLnS1o01+T z2tuW-V2mqeh2uC~(*=PC0G44a>t@sdk8<+1K!Q{}y}d!*+oh;uwo}1#Z+$LyErQ~` zLJ58U+sT39$;{8vzOqHxp6dVrGnNj0=g8I<&uo<=ZNc`qRL`$9ICR4?3o9kN~*HLwap%?&&i8U9lobPJw1^`7< zM3Es0d(U^abX$%!m6>X9=}^{@thJs4SvkMpI=ctDjz<*dJTQG6XO>l!@cblk z{TkKrNKqSCjG|>Pzb4(Wg^FgR3ySU7L7#xV>mO8y7^O%u7V=RfDe-J1G`-M|p((#l z+S=K=dwVxRgoCl7n*d-q3rzLY_S`3h8;BL??1o*TCJxSHv<|2eOZ9IoSBV5f0KlHXQlTKfH6RHt%2bbK10nqPo-EW|&N-@e{lEzy_vNqs zn|<%YZ2Q)>wvMO2^o7a)pS|}Cv*bGOJKs8|@~vApr@o!Lrzc?sgNy+I0VDv55J>@~ zNRtvNQd-FtCDFE|U5nP*e%33?&uX>1vb9<-r6rY3QhqE!BqfR@KoI~D2WfKX37xxd zj+Miyvmb6xPfv&2VR`~6{65Tc=XQltbt}B*f8O(d-}+Ww6%R$`u=bpJb)xQ8@qE47 zdi|Ok{x0vbh-Ep`bEN|Z4|3d<=hf-crzAm8)s4qEca|<9`w~mquIU@+8)r|}k8f!g zoEW!4v|!9>UR!gu)k=L_+#r9yPZ>~!wacv8U40Bs){i&s>Uu#rVsKXJeNWFL8&+QJ zPTj5<%j9nk@k^3@*{T%Hb!%X($%^u)uN7XL)-PyY`x?6z@o0qlq*N+VpG1_fX;_jZ z1ArvSU94lcj&WHmOMm<$o8OnDB$eLLE(;XS{Xj)VEWYkkq3MgS;oRYH@1f1_^dBdf zd7Yo zVE=(b^~Mf#KW;EZyZT!3#W{1_y}ANeR?fd%c=Pw){Da?r?00iQrfAN)>z4>qI3dqB zdSwBVDN1|*xY)X6`8uU!PM>S{q_n6y^n*9k;XJ?5bnK@2dPLv=fC6oKLw-P451L*J zZBM8>Th6L0jw|`wv@XfufzL#9_Ijo<08l)CGdt>>7<5m@zop>eJiWTQQYy6bgom?Nk3Rzxn6?@Zw+Z8NK&!zVoGk@x36PPG;}icW*Y;^Z)$W@Ameg9K{1<=oX9xBinwpt>;mGs-vC$V_f9}8k{nLH< z%*4#ZtEXOzh%4{DR45lKm!rA^00HsOHqY&N0m+WkexiOH06f3aS|7LueKD=`Stu{I$z%L$^YE9|HlI2PwnWS$a12w2nk53SSA4ptBPq_k}Ls$Buh8I zIwmEmqmdo}V4{kW_17L@^7Nz-3oiB!X8*5VM`*dw@m=BogkorN3QxYEXT%ZF~KAjRsajT zgKGc)AOJ~3K~x|TRu1kPyZ`QkgMGP>C;$Lr5Jrqo*SIX`2Cg+%;X_H0IG{emAP&M^ zmc(QiW@OE@Ws!@>8~`{Dr*PfmfG*f})z@Cikmv4>S8q$u+YgAmd!3xI_A5f+IJqp)GV{8ka9zVplSx>$x8jtYko{@w)s+`svs zfAv>>)$?3?;S&0P|BsJ7a_6WxkAgPG%GZ8t+fKcyU;D{?mv;fna*CDefrAIxWl`7Z z)2E_g`PLNKR}fHA)aPC+yjZt4o>SHdBBe~m4}8-z7gsln8?Cnn5q6FKJcsz6^^?$> zZoOu%>%uw*PiCKZ>30s@`_c9O>U+-l@guiA`af=IkN*f^ zc?n$>rrk}yL@U(N9L50k~uSV@BZ580089Fq3%+9%V{R%#WP+roqY7J zmeV{@+uE4x%0`ka2RLnRSw0JVrf^Qlb+vOrEFC%Atz@)bIY)=d(+n8zVMRT z-hoBnkv0jg{Js<|J_iuG$yTvPt8Z4#wR3=|;MVGurT?aS@{RU&)WViD=zx%3Q^@Pw4*9@i*3se=Ogas=bopr!varY%|w4Twmt7iJ8-X|Ghu{%`g5t0C@Di zA3b~N++gpROU)z4Ui<9Fezvc-C#J@B4eed1PV+qf$q#?@-aUf=;CM*W%7c9e26}Ek zdj4$yc;7>h?jJn}0NG5&Fr2~sP)HS9b{zmBV*DG={N1OY`pINE^6>rdotm9g1a*3T z>eEmB%mc%BrV^>B8c_sQ;nbyh|0y|>ZaRI>orsEQLcATZWnYtkl9E1mtokMZ1jMI( zBf%3-MnqoX*>p%`q`d8oV$98+d*Qh+f1D6+P#xZkIl*!egQH^VK>DuEe+M4>oP7HS zr&^QOLxvt6y0g|0-=4fUWy;}5uWi=Dk={PFVzNgGIX)a)3}toKFB`eR!~<(?#PW=i zK6k2m>q{-q-nl{M9eL@|VB-{XhOhM{VzJ;NEn)y{fK}L?Yh#7h~-EeyLbq zm@kxyW#7NPp<_x^$Aly|F%JMV@LSp>z}my!81bRd;tRzejd2mnrPQUgO=!vUPU!99 z^|>>RnO4H?I6rf?6}m8;7p48t+*o2PDkahNt7Wkfj^l=u5CDXfkmIvJJpK9L(I{MFl z=2u!ybFOjeXaC7REmccj`sx=w&;8t|Ki@E`j&I+0$6?dirmx+Krmi@UZJ&@e`C;~F z_xv{IuDY@<$5upGp^vY|_YeSLu@L8P*X#)=SkzWL(uyc4MG_E$7>2H}1PLpFZaGoq zN^!qK2Y08U5!<(HzYJ7W#1KLZ09e-Azv9K0{z8uSrFP%7nWMWhR@8McM-k&q-I4^3 zW3lb}wN@K3j4WSy`YY@KHz>Km7K-EqfotohI-i&J9bw}!>F$Q*0>HQy*(3FJjM`-` z>-gHX?NfYaCM@JNLvuJL7M6LAp_DW=C!iED3`U3qfxxk*?P1I?-1Mfa4R?bNDgZeE zFg+g&;(8YCQE@L&kR;RcLo5>gz;@{54($FaaD&kihkP)AO}17V}*RbaNgfJ}mFv*+Y7l ze^hv$H(#tQ7ukK{kDoi2ibo{rMo(QoSwCJjww7wWgyywRRNo$nj;-gl;(Ffl8kjx} zmgHt*TcN+iuRK2-;zy!m%gc?fU{;@9Q{zSqPKR}nz-KG5LvDcqI_<`Tr#(uX=JKz97MemrzQUKsF%bYz0ufGhR{e^d;E&B>Mj!mc2 z=f^JztM2smAU34};Vv8C?p4`}iH{ZPaf$orPk!nnANp`K7W*H5=CdDp>d8O*@*jQZ zLm%`!e`(=cnIolF+H3WJQ9|&S8I+KG#O1`BmgX? zB)h~dnKP(=@tKp6`{(q@_55c5V7h)}IQr;B%L9Pv7TXsdozo}J^P#cuHnUX_Z!LwX zWn0?n>VoHfMn8;=OLSSx)LE+}LflI3C*do`%`vYBSRLm*N9=w(|RTzE0gu zC$I7gZEwwU#Q@`xaT=@~AdlRTbmmP$0w)Bed(%QYh}JFe2z5vh6W920S+(Dg0C6=oJ27=VicBE1C`%=h@rC(9DwWEG`&TW)cD!O> z_kRDO_rYb69RT`6{gch}F4=O9Ch5#utQU z%e!xHp*_1*$yMRhk)hoR8&To|1MmI$svt~VIMzM>0f2&jNn(pbvG>e2eVniK5;=Kt_QI}RV_x7*%uMBTeE=|5oEgrJ>4Djr znu)40&j|qF&au15r8DO*o%{Hm@3)bVR5Gw^#7>?cXFl>NqDIG?XLrh$eLX5>=~(s6 zL&>{4F66xu=lMb8g=caAGk4zkcGY5i%`uxseL5G(Uus?0q;oWf`Ha%jqx4IbHTU*6 ztZ1GcKGZO)^X;h}&&}_E5f_aQRSGAf@ymq+o39?3T~sh;>;Ev8eDG2o6G|NtOf|)k z)Wer5FRZtXY9%Z6DZ0cvRA7Tw&!< zv`eY$yC-y4wX_(=M-TSMmnS-B8tt6sID^BNOs!$ncBG2KR;e$WgoH89W-|-(g=}`+ z7fnT*f9eAtX*tc7R@t|AF91w5CVIm8pZ&zo72DG;aV}O)zxSa>e)N$a1?rT|def)^ zKtO}1KKK-m1(!G%tEWle_w)?(^yEtVx>*<9S>4p-2ePyLFz2&}BP%D@OM+Nwwl>my zWszqc*SB34Gko9;EcwhhbjI_&hNd?((^>VFr9`kC&nE-`3e|Qx8IOe(&9nh*-Mgs! zZyVmc?Kc250k0uyGk_}>-!PlAT_XPFG+oLVh(=CTGtrbOXuN@YlECXV|NO^^t%&03g3|Jn@z9 zL|+@1q@)@iiYOzZkmOip>-T%0nX|UFONStM`?U40d-^H=H#D{V=Bbr%wI1JqI3J@2`5h(%=&}*fHjKRexonb)w;W=tk6ox^_CY>;M2i z{?T`?E&B>0il8Wp*mWkv3WC-ZX{O^IgBZqe3AlDN7W>*)zxw^>p8uP#eBtI^y#oda~`jl$g%3jy1MT0uPUH2p8IumG!3$bq8JUfY<~z zoGlOO&7TVQ9^7EmwtIooW>LclgL-oZtDo+Og7#53;>p434&m)Z(g@VMK3gW^#cHhxSYDRRC zhvNTmXN5D?#Ut)Z}l9(xo34t(#M0!ESKK?mSc zp?cmxLy5bh;<`C89aJH@J9*&op&vh(y4#vQ`~07M_TuYbnW;}U%xX!WzkV9DA1wC2 z6rRn6#P{5G8&Yim=*j1L^0|PLOO+P}qqcw%01!&2o9u?i5>V3dlQ~v7T8xDw4}OwO z4+4OtS6=(Zzj^MDe)6TKe|h2Dvu3-{Ubt8Fu@4f%dr6aNffd0f`Yj38j$PP-V zC-l}hJ69zIfthkJzlhNjz2Ad5T+sBSrl zSWfpA%}fY;f`yF0reRgQ$Z;rlxtd?4T2>Uv^9cz8AdBK}cSjKhknb88i<^8;#3Gji zbnL@ggIGLDi&#bil0~kmTTR_!5E~8&sw_EVvAe=y)$@Y58Yw~v zXF?V!na22@c=l9{0f2&T-xJv-(rge=%k~lCx0_WB0FXo4LyRk=5`^ud0=*6Zt*waaJcie{On_V9L%LxLvWnB=Z>pT4WE+qdM&-VxcespO3p+0WO{&l_{s9))|W#?snuYeAnanuUOprd@5hO;)4W4rMdB zmOnDzn(8E&x18q73(xP3AK1{DeTfx5>>JA2t5*Sll$1G?x_gs*+$4R|F8;y?RIRz3>3ILSS z^{nK0EM(;Dp4g&s+~mxBzIU;NNj#IQmkOEG8m2DS0%ES3-@~J;Vo`)xq&K*~{0hDI z0RUKY)>KkVZYfr=OtX`^uBu9Tw_8uG?*#iKYp^Xj>0zkRg*fq4bWj96#N51+uzx$C7{rr9RJ^lxO@>}B<&kgns z34&la?LEVLzWP^x{!<_NjNURHxZ@$>IzM;#WB>af|2EI^Kl<U^dE&xMevrmZwMLK8(VaGt+h&3a8{E12Koz=TAd) zHvq)bgL~iiIY{5uVD#&k$qoRB!4AOy9ss06%yjMB<+WZ2Q?*z6Vh0L(+982Mf?jo3 z(_VY1dj%eGD`u%;mNW+d-5>Xa(tOjAS6Zdm)Zq=om8-QxmmEOWK3X%TC+y3vt7{*hQbENpNcf z6aXvA0E@W`Chq9$DbWrzR}_<6)AXV;1=7}LRzJZ#U-x|7cB%;RTsX{mCdJSLpv_Acep2g z-}7_Nc6JwCr(WxtAcTk?U>0K*4aP^Kd>jCdRo<*zTj}O5tVmDjo~^Jn1%c*!>5qP3 zle_5H#ZYeT2}27fo*vtM-+Jpd+KuR*CwXOqT%nyMD=|h?nrd1A5Kwxqrp;>j_M~#l z+Q@Wl**p2{?{r)C)nJh!_7)^pVp9NSNopSo!K{W~oo{~P6Q5`{o4@|+zy8cK&piIf zdwcu(4&8qH7ryWX+tOK%wT)Y=1NPFw^OkQc8316)gv6+fWnK#J4vicsz2Xt~RPCa| zD{3gwtgX?*S2*GQ`HgR!ti-Pt;xTBLYB>>d`P9qhR@pMUOkP}QzL{4apKqH0Fx_G^ zq27`)cdYuxq2xAe5dpxAxwWj=j(XnRSG_}b`F`Ne)_P?~@A_!bZnMpTNId54Z)90M zh-97I9(^-AU5~(LPJb`8nc;yOOw$csE!q2`Tw20+C4}>u*Kr5xLPEOH|&T^ zlRo@du=l`v)?`EKNYPl(w_8Pq5Q15ZF~%$=gmkx#0RY`=BNN5t6ad5>O61IjiaCqe z{_s%irN1ao9#Mu5H8gE$m2G5eYIgI{A9+9VTnB0Zf=_9|@P6^r|MK{SV*v2WKl3jH zEC4`#q%z%@`PonYyy>(H`s^d`c@F^0)GqwUefNLt@t*dz^Ks*1dQV1fx$S^rvG8$_21Jb-$J~Q9JohPQla>OPAVmR;(8xTfBe2n zjYZ*zfo>weY~$oW;{6ki003+fi;AgDO6?sy;+FKeqvLOk42~v-_m3WYT(!K5$G;Yo zigL@Q3M8d;Qc5?x>Rf%YXcn%=fp01P-z0>PX0zqkjvxxrXryxscSQF1H=ft;+_&5= zrb)mEzzzTaMlSb#JGD;%KzslFrqd`|TZ_$HO3OYp4J~A8eNtEk88_Ow=igSIIDC>p zZD;3`KHp{A;9vRGUzKH^WqCv2rk(sPi04`9Y#rg1v8L~_1U4Rp4wzO#O(PHxLOjP( zihSCna8(2r1Se>X9V+fJJOThwp2x1CTMo}*AI)|5!(r)gL{{56 z1Zd^ddmi-~wqv_K!!WUMhy>Jjd=gMehL9VGX)yh3`v3WZT03Hc?!-DT_ zbAs^Z5u`pM-2uWNFQkdEt3t=d+scd??wm;g=$C4~Tb9IR^w~E_GG-v11lXy;kw`48Mnhqh=LC)yeLs*yHXKdma=Cm@K9k9%FO$pVfWebfGm(=+X1;%TI1;{+{B`>DsZ26{Q$+Sl>ff>eJgm6=NCcN_or~eOhvNnKuODKV#G%Hjcs1Dp&kx%J`G&rNUVG~x4~G~j5*s} zR;iUk{GRy1&~=+j=rKXlt|12Bo4u+^(xukQu~IJx9M|PpzNKrJV<{n`DCE@q9htiU z;9UJwVg1^MHy9RigX#!$q;p9DfM64sz&2?Kgho-~7~1 zebV=CEwi1L)3jWjGJq))7Gp!vk$tfP89AHe;{edB^v!5fX*vF_iDy4N{QiLYWOWS5 z;IYUKJm305A^_L~JPK>ZLWGhKwmh2hDfKB;@~qKfFe1BIR@d)ywSEtM#|1; zlcDeicLay{xRks<`{43Wssqolnr^DAY1p+*&PVY{;5aVNbM3ayvTWcJ7GqxE1E2Vw&kGxyM>)g>Krx37 z|J{p0ChjV#?XO$o8Zo#pI;?nf;-xS5-v4uMwy&VgY^I%E_FmBoHLDy18fN=E5=<1% z5{tURLd$B-RwtWY<>LI=x!O$2D7U;?)2=(jt{TOvQFH^RW|e1}7X_|wrsWhht73V& zb$YHf(fO0t$_qBdKz%Cp*Z$tvnz zyK0vwwW%3xVqTwf)=4+KuK0o1cA6Et6qaHl5-1G<;&Z%2`vwuu@F13Lhfsm9QeJu`8O~(-4+#hd6uHE?r5wgq z({5>qLGeV)bNzsjd?dL)l2*hxSJu70q&1q} zre83<832&*sA*Bhr?S9RnpzOhOgxMj#&o=}6mskk;LScsLtKB`a0#IvEdWq4G*q<$ z01$aDLLJ?70!jfdbl->~#2lApS!cDx9}x#k+l#3ofoIDNjZjA7vB0w|MqybJc`g9g z^fuW3mY~#j*df~|0Kjl@$)D^lLvI^VOd@H26&<{!MT#brEv8`cWs6yo*EB0ef$Av5V)RiIBvuBG{Q3O*nqchG*A`FVuU%7O1v0j7#vW)%Qk&t z2hV~0&HswDsGhfc<`{L0nY0j4}T~H)JQEs$-LD{ODZ=7Cl&hl0XbLw5` zdzXJBVX0x)IK(I9jKZrCDUqQOVj5B+NiU0)Nh#fSo95-}paCTeFxkr`=DQQ&qxn$p zaAdSUJh_14u)HP*j} z-VAA50Me`QswCAduhZ|+JVF_i4mXAkATjdh;U-iU1#sk!r8E6u#v0-0IU#rHj4Lc zU&ER>661uR|Ijuwe{T#8Cuq7sLS!R6%7s|n3xvX@xFp7+Nq4~{5*J_}0C>#xtM60? zMM?>aBk1iTUgG-t%NLD;yMCfrM`1sleJCfd9sh6~JHJrOW*5(MI3!I>O~)cT>D3eA zBVlgk20L~!OuYeNHCR^lw97_nPOXdBy&OprO~Y)p+8CioRBg93HL4CN|i6@W-@BXudVQQ^A!(?4HPI(+;%e zTr9IkKxKxd?N(a}E6qkLo``ih91%M%O_6|lB*?10u2+nT@tB-S)tOkWspLj-pz5P>0xMvtSb|DJ|NFHRs=W{pS>m35;YANLJ+`2`Wz#F_R>NjB zFTryI`N$|Cl}@?c<*KghxS}MQh6xPA0BmNEW;q<@W$FHg?E!#*k&Mr5=#U-+8q4;% z9SZ?ULtHu@l00Jg8|hR_h>~cSW~*Oh9e z$}mhSow6;l8BjzMf{=uVHA z8|v%@46|S&`>31GejgB#}^t z0ov58cqD`o)(nFA%_ecX9zmeGe!Fv)L?KbIcmS|`(i@Q-(-5T^p&Lw!@dKL#mK{v5 zRMr6hNUn!sX=MF0rBdP05Wtb1^e zC?)_HpV;dRDp1$c5zFvwd>gxdmm7&?IkjrNSZxGB5Ra#Zhlk_wL}x1Q_CN^5;|a@h z8nv3TQL<90QVT1QOy2xRAJBO0MjM+p-TJxuDTmm^4;uAGv(a>2Pv8ZF7~%)T zLQ&v_&F6#2Z0LcWhdZB-RoU9Q%4Fk^knx;t2D?vnUdQNaFgvZYW~fPII;N$s#r`rS>InA5_*D`}aKW=xfgr*O$Yp z>$xFW;y3{SFw0e|HCf`X>wGVSSe`QQr(cATkw8&5>0d7+v22&t)PmPo_;UP%5NfsB zhHhw@Zs{xzM z(@MOY>Wd~D#*As0k}SEd8&X2H?Q{~ZSFdQe?cw+?o1nPFhj<|yI8+b>;K#o6qI}>U zDK*d;-Z)Zvxoj=?J6b|uXY;{V6HwB2TV<=nB35A)%qx*CWo3j z*MBaXOUvo@+fS>B5tf(#_S|2!tVTvoLoSc+xS#e70swRNB=_t$6T9yl$Q;N-`UP|g z3GNaXiiz=rnB1Qm>hbt^I22-W1X4eq zrYQvqUQ!tmc`huAio^>Xt~7N;;x)tZp#T5^({I~+Hld0<*GUdDEe9bKQ)OA;0jMnU zl*9;ZO3V$w@S(7DmROAIBuN5F0;&Z#6`FOtjb{U3Mh0L5SlN#f*toi9D;B zjx4gpdb_DvmgBk}@u5uU4iDT>zskzHG{*;k0EHu{xZ&W(*1>f;*vXm)fSAN5WG)0#QrFYM^6<6n`dzLomgUS9N|Zr8y#xLI{qaOflGdoO=Mz7m!RlAL=edSy zw(8|#xm>T6Ez4P&zzYDXsuJHRlNYcUKO7`)PznxC7qY%`PGf`#{vFso0W zt(|g+4FJt{n?WcMk2}8SxUM9MreSnu#BVYmghTvoi9-@AceXsI&se@uG7B}QCUVk} zbpV49;y5NGaJ+n`a%{YDW>%ZBJvSjGrrK8k=|C304B{!!jycJWlaaFh;lX^UcQd{; z*N%Y26(T#Vqq75mrs+M2`~y7?uWnmL$`*|UZ|9$}TSI0;w~YILXO7dow{22q zH;ePWq4VL$ish$||5bmgUk5+%7>syAGd7H);i@s2G! zMHm3Qt`qrx2*4O!lY0z6$33QDm_PZ!$IgwP|NYNU6tZ8~r zKDSk!hymb2Q2?L-#;Vi=i47&W*qN{WiX6$CVR^iKV#i}D!)^D+chwBXv?{97SFIgq zFz)VzgBTnZB2g(BlQ=%5C<}`}0aaz58&WsKj?C>Ss^Xk6jPHiyh1d z?}AI5s#R%w&4I+;m%j2(OBa7IeD^0smRDkZYWCp%_x^Hr^r21?H}PGTdJ6J00*pk( z-e@>4ND-OgSdLQaUY6Z;&v%1Ze=Ij&84rbIgb=0FGA&7#EYk{y729!G%x-?DAghcP zjCg0}VqO)CtsiW1DuC^qb#r1cKH9K@%Lf}Y>;U7Qfmk0Qtxi8{3B=%}oaV8-T!q&( zJrz$U3BCCJ|4+>x^utQgoU;OBR-bOzHJ(8{@BqN1b2ypvqEU=F0r7Dg^~6SZrw#~+ z=Q$BE9K$f1Po=+hILs@2I3uY8YQ8@djSEuZ+-&l@ukeMM)03`Yu8@mP_r|NF+IHLJ zdT~uBs3pf3UQ7%8Vhq-(%*_(Vy__(5jSv7U0N2wM%(EV&KKmLUi>I>biffii<#%*G zxTfif66#$4hHh{?=eTY(8qqZU9WhjJtG91QKn&Z^OhH&fZ@M0YmB6-ro@Il8+OD&i zbG$skB-nJuRuH%VE&zn_0g00>uOTpfii8^0nYL+Jjt2m#sG^&WByhUrdcN0bj3lTc z8wvvI5yE0534B;ytW{_^F2f)eGm=?FdyeeR$orzW4)%H1 zTi3TI#AgMZDm5~qH17mglGBN&G<`Fw$N(U4tY+G=uxz_tDyn!sF>TMZT@LTOe|iwO zId*Oyk^oRLoOJ3w);Qw(I~f6pV$3ubL%Ik1<9hYGzHKBB4-^8;z5I5%$`pvLwUn2S z*FL;%Nxdx+IBv~x8yqVOUW_L=^1Zj*q=Fy5%cO1FsjsfH8U(Ipj)&#lJJf)8*-1*3 zn&Xmv`wy_|I6<4HSt!i6+Zx7e_wX_11RhI*5L0E2M|iYVbysRYr8 zX;_J5qE@Xb;Wa9oafm0BEXAN4;zy!madA;lp4VnNe+npR+EoBZON+I-5atl(SYDc} zpPSXEJ6}%g7b^C`a_<^1aLZO@X{}qIrdz+zykNL(4sjt)Nl2;9mvZfZ7(6;KdVlVr z^%m$?hn5P)!cs-q8#^O7#4TP72(vWbOCNb;lV!;PfboJg>!8+Vj@`TOGi$D5TWu_a zJBH&3vo}|22Y?ZkFKCWK0>dSf1`OVyh-qCIgwe!#=EdjWv%k>YE%%28Rsn#m)kO7m zSSpCh1>RU(Iakxvmiw8{{o-_`F_K$!U|?A>8c)`nW<2^1=vfu*s_AIJ07gPlFZL)o zcdbHUs}llVuJ*eDJ`}6u#GRQRvo{*v8x1cNN}bg%jwbWtbp!wtEpJcs(1pfZ)7pfH zg>0yI!>wV^0H9#27TH4A+HSLxZ${(&8(5qd$CcdfYt5I+?$(LVocMOywJ< z>fH)Dg2EQZ>|&8aJn=0iao{w@a1O z(BRJ2_(3ekOr58LV=OOiwfM&!$-7^e|6a%3}c|1D)% zDK~PaeCm2NEGVdv-bUln$qTO!s97u2s#WTVR2%@LkW{PG6?O52q;P6TP$f)_^*Y6SrfFufX^e4LRZ7KjG!`*UE0K)Xs`WMF z|7{acQZY+at2}u3$0c>KzaWH?J-dpN$z3%$wYe?bm8A-Vd%{Kuc78>AiujS&h>9B}Nhk1!74Ct0KQ)Vjy zmQkw>0P*zTWNWb$pGVw^S*lr8ffW@_$;i2Uc3|o4h|iv3-hP#+;ryrmSw9|S=4S&{ z)K$4<*Bs9>Jk9Z}rqf^o&)tc<5X4}C6*9DgbHgtnySpX0O-p~zEycOTe3LjSZgD#z{8w>v^basq5iW!y_;6`<0EyoLo*p}I1 z`TD9UL2H08*IKwZf9gB?9{Z(j?9TB(Y4N2fsSwe`Z)La%HBJH39&J>rc2o zKuBQk$}3zH*O51A+gIf!A;gPpk_16q4I$j?m{)FopP8`?Rp3}j-~k{ki;m}WEM_rg zF_r{A6hh7GlQCoKXNRMYO*9<vS5b$9jV}S3BJ~YA6t609aFMZ@X&@rgDhS%DFx9+q&$cPZ_9Lm6}}@ zv8al%0cG%w(yKev{7r!vJQ%rpvQ8`uo733?;!zGU-Wo4^maIGXs8pPc^gqVG^#<6M z|0D0)VtaQUF7WoJ!fzK_0C29RrTW96o9ENgv1Ml*mwn$8uJ6(xYR8!6unLf^gfzsa z0L+rqJ}8k{9-pge01%fraegkJUwkR#^S!4}9t(%~4J%sPmfLJJvpqM>C1bWdK^O`E zBI3vE7xLkCt63B+H!CeZz+bE8>kbD1FPF2ua`^t_j#XEFPdak8iDnI3_ni6WTM7BW zn&|*Q$xTLtXv=9{Y+aIhRbA!#yd0ji0RaG1ovjUFO&^U6+_7|cYR~w@@91|+u!!xA49S8jU?F<+qC8V@#~x;R zN%P!!HKo}e?~o|t1Hg#?0{TpIlR0Uyt$ndEM38P7@i0k@$UcZK-1^(}Ywga%ZLR zGG=i!8mU$5iDVoA)>L)ZMB+lCc=vpJ@g(=E)>LiF7j4^Vwkt0n24_M!QP?-%CY|PW z)b^P4phtq)wh!O|cmO~MEf_W!03ZPD3c!kl?r%?i8301@0jF3%3|{J{1(aBxVR=Ty zER8qLNUR*;BfasV*aHv40}ltT#dT^Rjh`Zo`S4Htd^i*W0OssThxM&!FX55pX$_xR zzU}z7PRM4)Y&gubh!e0ZumaEEj;am-Vb51yI|GfDHQMJL7^eR}dv6{jNp|1&{qnt+ z_fcn8b#?djIrqJby|BAj5FiNxB1n<86_N--q{2aw7R8WFQejz?Y*~`Sk}XBZAq9gW zh3yE3MM5E&q)3Se1QGy&1r~c?XLn|HW@q}otLv`H`yJ^&s<)@Rr;qAuW)|2_OvH3o zS5>~O%F4?3ec#{r2N2|(N;b=B(vH1=x^BEI6297585k@90At&a{|yvL8k7M5WMbPm zpZfP-c0ciyA2nu$cf2Bd7mA^<2s@?!t#JB`Km2g|Er7$S^RP3ivp zWa`wL$>npEO0~SYhA`^u%a>QzvbhWZn3h?uJ&CDw{prswwZj&JiOlJ`w@h@y2>gR~ zU-}RrfzGLiWdQ&LCzfge07A+hI_7cF3~xy)xLqx@x8gj(X>0XPZT4-(4zvEuc~Wl& zZV*|z$~XsvEK>mhRVFgQT!@ugE2cbSn{K44XjqYzwjXp&;sj#=h$uw}WgWBoGXN-r zU@S>eiY2`^kKGLGeCL`w^csv`O5$xC&LjHnnDN$ z#!Vt+S@IyON7EurNkx>YGI4{b*7A@frEOi2i7FF-ldDVRS!sG+8tU$X7qho3hyTL6$trw*-mj|~sbFD(PW zhScuZ_T|f$=VqrmZeUw_!nhm8g}%bz&;ym<_1vk+`=`hDxA+||H!5#-Rp8BNrqOac zDa&rT9YxoIz*kiT08~|p>2{r6M#|ajSpYa?jck*W>tSuxU)lH-Nq8_dy7>-*)1bVf z7fXCkZ?dCiHr(+5@Lugk*X`~z@AdMl&lO)f$R3|K3+`O!p*h=B^WJWj_OzBy5(WT5 zte-jt?crYh@7MdD*|7P~)bBoOGdnTU%8{B+FxWn)>MY*Kq<0l7E6eYldFHO;s)|&&UJoL0%K5Pftxwj_mneP`)!QG$g6U<1)XmhE;!4?PI@HIF~)=@6;vM zk{>u*-|J)-{Poc$kSzE{V`bumjO_(^rVfJ%B#j^*Pd(R)z8o<3z1ocz`d``O8Hl{@ zFIfu@ptI8uwN}-0pWNSi_RN2|g2-Odc56i)y0VvmzVMDS_jU>ZbcbaI!~Cf46b~~c z`4BnTHHxtJ!Pc3>!fYwa#5hZns~1r&B6*N+qD%zY|kNcIJ(LD>0V6_`~?4x zHujP=A*&N@@9k!|UTV{o)MHj(Xxs#VKBH*p*OuD6RucdeKy8Zt#vQ#cG!_lrF03zz2kj-A{qcdr#gF}N6osEi{A7`rR;3&TLY=HE*tB?Wo?}ead6X<95_sau-#i zsn~Ex`a<7D0Dw>a5Wx@DMWjX@Pu{Ws+CTY8L(Syhy-jmzIzA2n9v6)$3V9guhzg1& zj3k64Sw;vUS;j=is^Yiogh(kXX}YPezRrg7{ zv3uBW9RC|236}@}2#gd%FYtEgK7BD5PR}$K+dMgTk$r;(PiVU`ZbYUzV7&THqNx`@ zado<0zEhq3u=v3@gE8*!FD@^w^!KlKeS0$H^$irfenJbmc|j+nP%NyK*S`0pc0y#& z!%kWNKtx%i)dB!nvjiM0Z2gfz6dM44W5zk-!d4Xkh$w6MRFfq`ldDayFL$aL9!6&e;JEXZr=4O<&NR8R z;)WZ|J|iY(n?3*`(z&92HLJ#!U?QeL6zi(OMWT_cOY57S=zhdgm3nBK>vJmGRAb8B zAnMQBAzRZ(ApsV#<9}yE@BYHSglQ$9I&vn3)X zx=}wHmMDMiQ zZnNWGxq5YTR*dVp(^L1m?)77_lMfFT=9iXP2$hVg9ZS)Zaf?vlU8@It<}TYRC}@=H8xKP z95r*sKC|&F!Xye>w9{7eeE=XMh3@oWk&!ZDZ}ClUZdBEZny;;VV~>25Cj=_ucHDB5 z?X?k(lG@SW-y<7YIxYUF8^&yZ-y5qiGY{9E>ha+StF*KI*sHJJ>?`gnYIt5DC_UG3B*tRH+rl$FOPuz{;K5wmGq{`Tf|LYu$@^3;=1ZPtomPc;*)Xpwil+94S~i zWvbV*>*t>~Ro`pmx3zG0De4;AuV+>?d^~~F>&A9>b}ThA-J$?6(_&+pb90UNJ8|cY zweR$D_6yhnjKvG@q=v8ev{bOS$PNH*P1##FUz;*t{@Dcp@al4NMQg392i4gZ-f<8~ zj>QgtqG%Y|ij-IJhK+rLOrbwh=wF_hB6Y#|F)#*k49(jk?{s+~t4z?Z5w{BR}#>SN_H`=dQ0y_=}qDxwN>D~0m$AoT%-pSgbs_k2*@;m^rB(d~~>L#NYL1ZFxp`aJg zZ~cb&?2m3F!>kXItk-ciBLDX4pB}W|>1gi7#f~2NG^0P=Z%rYh$attLsjIkfvHum1 zYD;at8g5xNNoU8J^_kV>cVyL0!`NK&-CX*#1Yj!JxHWI3l>;TH>Tas;Zj9w$zE@j+LB=!ka`S7w4{Q&1 zRNJv66%18ZIOU4~pv!$8HCiEaV`eEtSI9#BRyuoGaKV$L5yXuE01!YPOML}P?S{<6 ztO@`asQ`eH4FDL)ciS7+fdT*wB4nb$Q?Hm;9ype$rh~Wsg=I*h^!oeEl;dKF4flIo zq~DuOQfW4v0RR-nso(rh01#aq^Pjy0j^=;t3LSEME*eo3CpZ9RL8hWrem@007FlDiZ*3y*P+GU6oat_#rK1?I4Q1Ai_jp zOiGeOBn$xDAo{@7j=F|%RVIn>2-f_N=F?`S=ILgU!TxUR9r1%QK-mJgV&sK9*5uhG zmu?8|EJ>Ey;SvAZMCt;yBh;7FH|OV^3=t9xRkAwa(Q2iHQfwGQnhu4&%J-|-pEk# zcn7dI3+~)}d&b}W^O(zLmzP$$<(7=Ia(UNtS~F@axN{r+>uxmpHiaE_NsJL~A8D8< z`jzZ8$in^3{f56rIqi0%(y*3RGY`k7;7#R|0MMcB9`%|>gGqL%OYP>TpB%AxbeX3B zAR}el`y#DWq`7I)v(64CM&b6?q*<9dHGX!-yE7WanKJ+&I7L{7CnKUAHf4MRz>RYI zQ>PsH(e|g65LOrF*`NO5_fIVQ(b<+Bb4q0^x?B%v#Kk0+@qXzsVGyrP&uIOn(uGSK zH%U;AgD{$DhtY&b?0tYl>TQva6r%Z?mr zm_HnPzHV%%W5;f6f4%l@M!(hw;slZw9n;BDz}#k7eYf_`)!elmAJ`3NZ&S7RaCX6@ z>a70UU+ifzytj)yY!g}EXJ(;0>z{NpOU>+oKlRlaqdKQQ_2Y+}FFXSFkk>cp`Xz@? zpTA$d#gp~(k0c#izr@D{l2jCiN&l`9Opk@R>8W(89{@nGa(P}sGEoiNNdZ8!)!fk8 zfAz{={V&e_;6MJ>Kgkw~y6H4o(?RA@#Bqey4**2uBQE8hvCk$H*23jpTK>QM;7B4uAom8A?dP&~uotg4O=?C#M>;E3-C&*vBK0-*v1507P8eT*Di`0)UFq zpo1fheJXHne0BMqbas7(sn(o?CS(l7jc=>`NL7pvBN9rioFwBOLt~m@WvX?5N3Fjd zHAV93pz~5!YM*Y<@ytsL^*`yo0$?=v;#3`XSD;I#R_nZayo(B5wY}dut*YbQ9QKO4 zvTb;}Y+lTc7wz)^5Iyt7+}Ot##P(%xo@@@8*>UztANs)ufH9+PvI<5DLaKB&qhJLK zCLtmr5)AjrwWic+0%UE<^jbUkz^o}WrT)dw0zg1J4X+-sFt8!2H;?hf*+`7B%prZg zsZHMOeCCCf&O(KqR1fNHgo5AoI{h>p=pXK`5?{#--oa`a);^5#`iBTb3IQw?BTJFn z%QN^3KlM`pped&3Z~um1j3V^N^4yLe&yAdP3;>BRvsOWpq#$l2(yq>ZMNTD<94?fD zMMJicXFL=SRgP~4A%%tGx}4)ub@PTW)-)q;7e)afikk-=14cw}n{iQVd8V$o(W+zS z6-*>aLXt$8h$%O9Rgno#TAr_|iX1WM_yLlTp(%|{AQK$MRFb4Hrm9RDZ9ktjWlU5B z`++Kvqh2>N=JR-2rc))QUUD2=wPPXCP0{s~i%!I<0iE~wTp-2r1kq2++K{H$1PL!% zR!~V(h_1?%aY>TeeyGS2MR$1O$x<3^?%c)9QQ*%ZrOS<8QWpTp7 zhY&H=o#^^G0KiC%w|ImTgs`SOQWfZuPjZ^%%2_`!uZjBcg)o9&U9v?{Su8j9oKej0I(g~cI-~a9T+Ti zZ`q7Ucq?jRMAo9pRP*jaXWplshxLn`mhU&WOj)t4B2|&?Gyo)t0DzpD8?=Up?a@(Z zV$_)!vPbgz4hvKv3%13YbHPTPiJo@;h8mllN!a)ASL_yS8Ev zS`X^nC4`cEo}E4`A=G^<_eMfU(QGx{2LPM3@`Z2x^RpL!V8@5l%S*%_Ob=Y^ZUWtX zPb!w41f3lKGAddLIORzK5V54+l;JpfO!Y!HmK~NC$hph0sek{(vTtUmh?Ms zcwNICvXtpIO#lKW1eUXyD(brX#Br?o`Gs_9JqKg{_WN-Z6i=Vm^@s9IRIOESShjh% z9XTkA-rPcSk|$ijN=nK6%2)qhM$P=W(a)E?*+c@INCjQLlFeSo?l7KuY_#dlNxQL- z<~^%J^}Om4bUa7$pn)(^mpmB&0?LP+(N;JG06z0#5k7pL*Kiqw3jkAosuK2^#v>uf z4F^O$hM9SJ($pQ6>fd$!vOcfRzmsyS3Q>e=aOnVzS^)sOx_s{&xobbVhWE48KQeSI zu;d}A%djHB8cOB{40bhJOe=fsTLOR(W}F7AEi08003q{JYPw*4xbxX138ca)UOELI zT%SC4D5a~jlXfl#0ByHj932`MKHq8A>$R1PT~Hk}n_It>otxq zul}p22qrI&ymIJoOf0L=Tm#J%j2`{f$mzLZdlX4H=JAPI1PCI1R4%@Cr#aNui5@g# zKoTBIjhq^L$tj#(^5!@H>4eA_#h45NfFzMbEb@e>Qt9#3nbWz8008M+QX0Bny>+j7 zXR38?*`4>|b}S+l5uc?6K*;#1l->$^%|AJneSW&JrKW`MeobO2WHikxQDlOziP)?hTgKmZPx2Se3>u^=e_;j~Woy zDD6Zx2};?dkP?D&BwB-Zsnpko$ zC|W^P9Bp#Jy?WN?)!86mkMP{f0RkZ?a~;Ki1k%6zXPLnP(%+9YX}9_B6U(*(zL(?w zu}~mVMoYDMwq)xVNeK=J0JNG9&d7{WNZ(CfoJP_`tc3;c+gd|(sa|7F3?`5 z7zGs~SC_T9gC>%zC>H{htAU{n0oiL4vN)%xG8e*D$6C?*8@C@Z$}kpdob`v10DzTh z+p=sT5u$<{MAfDzk|gUGLI|Gt0iPrIYF9>g17_+f0AMU}k#L>}AsTJJkhS|VcBSbu zCepT^vCU3!hU4QYi;HOs=o<#W8DbJ^%#%h|efn^)*9Y}P5CJx%qwvmq?+y0%>AJex!;g;RSh}vx&CUWq>C}*|8?vmxrYv|v z*B)_P%-&s34+j;T}%+XHYAmJybZSUeQdU1wR% z)@*w8CjdZjhA@Gz{((4m{wUizMiRlV7o1lY8vwBE#g3+q9;|WW;rS?*ogE=CNwhHJ z*MCj~zg~2@U2SV2D_8ts-5^8*08O`SCsS|wvG2x>M(OMX;GHu%ZO5svtcIDirk}W< zcQvd|HSfhdR&)t6s=DCs6$!oI8`Wq` zC%j~|$BpLElVnEJ#diLwyHytemR;Uw6e|8&lJG@$QN#MSg;Mmv1!}wJCa4lf0H8U? zv-TFbBtN>>0#0@~ckIngE$8-E)Kq_T<+Hu2U^GOx|8w7^AFjySV-|2#27q z0003|r&YXsy;-YAotB--2O`kWmUE5}OvH>LIY>(X9tqIU;3*@&!5>~%$XQ-Chm9cl{+WpZ5K%b5@Z&uvs=p@6)aoI`nqZKP;~oA z5Jd9;X8@oP#6!lAM{5)Li~SLS<{G360Px20Hy+MjFMG4a)Y#8pGKk)MCY7qQJWa;xtJFP3m!Z50Sl#8@Em6X8*u7o+J?$c{SgTn)`-k z^joK^L4U*<0H_#QWM;Yb7%GkWjN-EcpIEs42Yz$u+)F7^uX?`;vHsWwN50Gbr*Wf0RY+@RwyV^3=ji!HqP9k004*| ziDjf~W|xU=s2Kq8pS=`Bjl1QRI}OT(M;bvEC&_BecyoT(83?YOasKFA=RW^3vQMqz zC%5cuM~o(2m9Fz6S5+_Z|%aKgh z%W4?si3kDU!zI4Qk(svirW;7=o?47ZEL|n|e8?vwaexSHP0kBS0KhTLws&TkhNE9 z?QWX6q}~JoT_YJ=LlWX5Q3!6jzNM=G(D6eNFp(sbag3y_W3JZP^|r6b*wP)23L!f{ z=Z$?~%wz5?g-3(J9@BI)WmOpocvA6WZ|fx>OOmn|H6wJzmi0H6}&d%gDfCdAaW zoVMyZzx$`b*&+Ygi?lzJ^f|t%i11M;P(s9U+;k>ua-|->d}*`J{!uH`M^C%$)|xF{ zmUDwcr_XFZ{np#fxvA-qp`t9G_#%uf%fo{ON@=4~SqUS~DF7I{=2+ITht=%Mz52al z7umb){hTH-HUcFntwd${I zj*qVd<-J?5p0UrsqjC?d1(hA6?N5$^aiohj!5P9bi-Yb$OP8>`t9XQJUUPC5V(a#W3aZ9CSx|E68uKS+K2`F%>ot20Kb z6rQ@)K6R}P0Ac$8x%~5Qr%r#oafqmyV?+W;kro--tE=J0JF+(kXOy$y;q^NsmZ(IN zi6KcMNrVuTKiXKc;{v0U^wmF3o_Y#dnPb$Kk3!UGbw7R^tx$<-ICh%RSW_Q-Quqf8 z-nZ&e*$vN)Kl6VM{=u(&`KMl8`syb}J_GDvQad6tC`R(i4QcO=HrA3Mh!jTR7P7)bQ-awR_*57zj5UUfA!cmx+67zHKSi@1Tm4MKIimx<0%#g z=->Pc`1I#0N^*1UyF0Elh=gmn1)u`Ja)+n2d~?%Y)^p8JGGwG+j=&Y7!$f2# zqwm*Z03ecNk(tTLz0ur@30Oj`thV1@>%>UH%M3;>O{4Lv=693_!mao_l$ ztc@{mrnBZgrtXj;5fz5K+U)tEVgC7-6J70>Wj}Y>lWOA0C~W%P;DROr2tzOWjn&0J z{D)XekN(83Gr{oR{=1*E)4rYd?Nn@9R8a-mR91;lVyEIb3K4cyqitFpCmpDI*lEWS zs84vR3}eDD1B4R|oeE>F=xa>u)tn~^hGNETLrW6%;r#SHaNDJbGRsf_AdHzzK)?=P zFs3{xBfHrNRLzql5(L&p9t%PWYr6~Y{Kwqz(^yvzkqW{SFQDa^*LmX6uwRuGfP@R7 z5S%2Cb#%aGD%t>`;{jDxB}r0bB1uxE;f67F3>83Xd$FafAr-c+)H@O9e6TN-GIdp! zJx>>C<)EY57m2tkDhftzS(2lU$=gNL91FM{da&-4X@+#gmzM*hEuC`gaaA;h2oO?a z>*@E~PB(3)-_n%$Ru3D&hF;M10z$I++RfnVgnw};2&$5V0jRnv0D#wYp;{kpnkmd-evnVD+V8)L(z zM;X`5lOX)JRU<5)h1KH7J+kc3rVk zhm%V4dSTcetw)WJ`2au#Rj`^;j`}IPQF(KwJyj2@!}e(Rme*FkQ3=-`e%&&9zNkMD z4LKJ&Guwi6P81m_7q*47BP1=}hgLOlvb`6Tcc$+PU6U2H`;f})4UMg3`$l)X^ZmQu z9)0#_A8avG1b`$FPe?^S0Ay6;Gw4tb0IP0Lunbi?!LdmQYb&epyI)GKKf_u4$dYQF zG(-%^5fre50SIZXeQ(yAu1D3;bgmw$JV_#f0K&Ykc3TbtKqhU^uCC>?HlTe@-G*b; zCg-falgiDwS-r9BEie`p%|V}ae*fMdjb}!G9+0G6c%Bp81)_U>eB&=ZBkd3055fCM)BP4&1e>`D0p$uY32tqh)be0xt({rmsgMA2Lgk&UX1S<&1 z5=e*38hymb*a2=p0=U(XR?9Fl{v<5urn0$g{~!;8YIXVarRx~uFbEoJOB{d*qNOs9 zv+mI@msc|>2LLQhTk~T#W`>;k!j->vsc^v;&3aUGxEHgyiMDb(_=J(B#`L3Q@e5&0KC}Uc;=Lr<&!t2-}=(n$Nu6>`~E@uiyi`z zh@vwgNu=M>i?fqTv52sYpL+f-uHC7dc@hRJGtsE9Xh&z37XZXqs=l7mfALwU+9PV_Sl(Kxo&m zRnB>%(QG!FF{P@iAcQ#Qt1D$y)i62I>^^}c1{6@&v^1>QTB|eY`6A!niFe3E{fL8t zBy?T_kg#PA5^TKn@Bb%(w1FS|d#+?6DIf|-#cbCJtwK@=)J%Sh=!^*r40l?M*lR!0 zsWODfo`(VVq+mX$m12XKcfZS3SDW{gW&sA(EJJO(79wB1vM( zy^!jv+@Es*V6EN>W0H5Ym1DJF@^_z=j0& zh%W1eh?yn(PhXHQL5OVXhAO;Z&eC_t&G?98q+F@_K{!+@Y;HZenYERLrPaz{e_tWD zJ@w*yo}2Y|YX15~Hj?n5Ikedfexew}JY(}R=eg_v03ZNKL_t)Pk#Z%wbNjwWPv?=mj~i^WhIK(x zb0U@5xgpa|bmxIm6oR&{^tJ2vOICizJ2M(do9ZFDcKGg-JPGngmqhSuIW-hXJ)i*a z+DiN5gJ~O1$}5M7LTLz}_!MXH_h&5oalyl6KAMYp3=+Iwd;4f?hi{OH7IR-4lih<;6fsg&FQi2wlLj9q)bo$kHMXqSMa1>ack4VFP?>;qJ?b{W>| z@8ML)g-7{N_F60YdiVBjfQ%{gi|bM$w5hu2o4uPPdYk~S+_n189>WRq+$U=QKtr_n zt}}nbNtePNBWw2VzxoJJk<0nrB-!Glk|b=&MoKj^nv*v+mWX=NRV5TN07yV2Zp@TS zzm+XH(x%qmw{Ok@z?Exb2+0YRWmy)2b`4Tbn$;a6RpNGc=}rhHo?Z_eL5MsFmUdZ| zOJk=?W2d{nnvOku_DZKw?X+9{54Vc|upxSRzy{MHccL%d`se@d&ToI|C;#6o znG3z_5h61B_MgQcdlv1tzPOnce`&Tg&61c4k$~t5*#r@S2$2+m6@svdoTAg8BF@I6 zp2|Pdifi|plV03Dt`a@QS@(*CAbI0Cby@fPRic_i(c`0q-StS`C>9OVT$`Kt5C1{* zm+*y)Wm>yiyV>3^8on7;hjVzQApqcZr44Y#R4%k))@sm3V+sHYrK|1MVxuvY$xQfu zUDizBuRAG&ND^bSyFKmkw)Z?Di5CGt9Jz|M?r2`@9JTIt!`Hgh4gt1ZSQag1u-_zA zFRnGj=4P;Gb7HFU^`mU}5FiOpWKN&SUg`dN{`0>^6boVU-STS{|3em6atJg807#c@ z>l?3jKJ}s>tThmPTNgqQh^_+ni|KEq8>x3dP_*t?aGJ| z*?P|UkKasv?qzC?mED<-TJP^=%G-#O_NkRZn$~&Df1mLdkVw6KlMTl4kipa6W z|1l0x%rKTB$}C-_EOP1O<~txHH9DT9tCp@5vrf~CFp>zyl*PKLp(i%w*X#)iRsg4WCu!Jq0gUR!m&n2RKNbEWn2pe>(3 zbpCo{gYmQQ{Tj=Dyj(F~daM0a0El_~e&rhj=F6)-6-lzd6K830b9zjzUTc&qnc_aJ zvvd6eD|c?&=EQN;E#0Y3*5bu(wm>&4=I?*)AAEiOoB!aG|Ks((b3SdAt7|V5hcA`( zIWMh*&U>wFEHD=U03pYRuJ(JUk+Woa&=?sxSsl%kx+(20+j0g-5lq^z01%R|TpOd50)P<7-S-wdK{#CM9~#L300ARO_>&MX(^c5F&D{l~h{yndi2S%x z+TZ)`8<|WdKQ!`i&Y>*J>0A~7I_;LUsf1;-5F`uwLciG!kXaJ`PhR+2OK$Ur{>_j4 zyPx>Keqi)-dk2moM4-6_-+c`|`|$%UGfXw_KOBU@1Y?2$gk52?3gr-jt6TjFDJA!8 zAqN2W>h~J7;#2n!W^>MYv(bv8NH>hMmOnMQMrAyy`jRfX%AJa|;>61&JLGcrBytqH zAPGBaCaq^2Ei-5iy9``_sZafRd1S0ne{)+H$R0G^*E9O_n_HcAf1sf^FmUZunxIVI zz4z}9IvQ)bU=4#eKbDaZxU;p#5Pot9B-;W2Ox6u^H>z*$8^XRXrtGVjM0{sS)Qy?D z_2Y~sX(UZ%s(*6C?H&{vE9Wv7b3%UO_x}6S&;FH6>5^{saZbOz{Plg;V0MFZ-fXs_ zFj6%&olaqlIp^iowR}E*ECTc~(oJSpv^RLLJ^8Fx}&(^B-W9cOz646RvCg_amAintLEP#j!**Ue?Uie6AKQtR6dv*E- z9lEN?PHyD$_i7z4?w;QQ0!Wg8SmqF8e&E-5@?c_5l8LS~tjm2q-9gI4L<|gf!oaUr zBAH|fd9n_70O+)|Or}}!zPoReOcv#lBmsaQ#ik~+>G|d-@Rc(hEOQiw;z?A!2 z^nuQvGHrxV$O6jCVUX#*P8cT$h$atpqG8#p0YH`ITFXmWnr*6FBn0EMWdJ}#8Aein#!M2u6}68ZhOSDdZM^^h zK~#wL>#*v3lY`D!*E3!hg9dax_5QJ&>ko$zvFLpBoSXsx&ARff^7dJ1(Ns^VOJQs8 z(PGOi5n@8bc&X1nJL3DRTXWtqifJNf@@O3>lzNJi1^|M$35cTY&GhY_KKv1fU?YTm zY;4>xc5n{X>-CkDWdP{QroP`4_Jz)zOFQ+4OzUYaztJ!BeD?DB?B#7i=f}&AzHfv{ z)M@~Lrs;?FBj2dJxow4DN1t`?)Wh1gY0qx236k)LJ${sJ?Z_Kz-)TOSGG7a;&*h)p zTWZHxfvs9@%k4-67t_U-+iAI-Y&sPLzN)G*jgPLgD-TtFcblNX0aL<_kIXt(6y(Y97{W_iyGE9mpTy_5f@YK_`G$@eVjguWj}UI zrk^*j-1Tk(K)}2dza^vd5l`BTEQEf#Q#bAPu1gorpMCr7clXuV0ibl@(y;`!->lwf z#mx=Tsw=Vsz%N|?>0f^K7rBV$%k#y2;g#``J-VK*KUJ&vek-+Aygt0KI)UV^THnWV za8RkePiJ>O`1wLQb*I?^fTCef*!o7d)s@ic-OS!DtMvuF7oEMasHOUkLCk&o_lib} zrTU|EDFgr(AK)|o7|rY|ayN_Y3RY5T`f}g?%}x(TS2y2K&lyt@k}qE!X6%7TK`Fia z-eUi$bYC{}7&UhpI|19;s{=sWb1QFtE7Mo%9~s-Rs}PHP zojjOKZHq9H1^rl7c?Y4TwqNc^(HE9mJ4YuS1qG{)n$GEkl$tKeIq~MVKn=yy!IV4DKsayZGUx94kR&Uu|yajoKWcg&_!Wu@Vyjo!zIh5#eQP%{F+fA*5^Eqel#l9X5n z6Uw`xF#v!u#stR^J+3|N@MPL=j{}(IK#m|^QsE=1{jdxvl1yw>P2K*(e_36;Gx7Pq zLxys5O>blEP(f*u2qqySFIB9`1^mKQD!F0U5J?OGwxK17kR-&Cy=Fd|&Ig7&jcOct zPgaaf5VZRTJl@-(gOL^`T$PEgDpa(4iRMVD=cs7;bTvvQr63hW(OMkaW_QL;Eb?^7 zXS=$#8@5H_C1e=@G>wO>3;+^tn@XPX^;ZlN834TcVmf{PaQnM~>kGj>RUwwHN>a$s zJOECqr!|tV`Zt&e2+~xUbep3x&NG%uFlL-rnl57^momHZdKV#*h8qEZsbbsEEM??q zIy+8l7c`OqfX!z4J>h+_y95LPmRx$p$cM+*A@JxRq{wPf!l_Woz2A_#DKRQRgO==I zPfM14e=&6TGT0JgntH!^doCXAV_BzjalrEz#8$-(Aq*0t#a;`jj|<9t08nR^lHnr2 z17{WhP}Y;#>Ld20E3acLr&H+*7cR;2_Sq5Rth} z!>qmi`^6yUvj7)C=)Q&Lx7~O?d--dN|9Q9Pl##*{e(0;u9ev*j%OVVshL4i_(TukD zsWasxSs1cfu1_ykf-(TeNYSts@^DA9zpdEY+PWT{wV?8_$PNHL^X|HnduP;)*yHV} zvH3j;J-=8iVuDhZT`rd)o$|dPm(SIzwLOd;UHg?rw3@%RN0o!A9fO5jaEi7rmdmU` zS6-`=3C)};~b-X+{jE*6G^fds;P4G!UsCLrdz`!!!vhp@0%V20M_8C z)#bJRfkS==ZKT9(+@cdxCC1PF{xAI9PyFgg`gEnWuv}Rh?d$u&Q$1~BE!2-!{qYZ_<%X_VC??avXPI}_`o~(asQ)b`TK4nid zM6r+eZc=*rGnLw$(OOmKZ#XPQmp`*lzdjnG>F;EY(MNwc)>gls&9Bc^Y{h=2bn#Jc zor`EgJ;z98j3Ok&<$x+lzu9d|-5S9IM%`v`#;>T*y0GGUv~Bb@r6Dem?i;vCYdgqNTKa z*31`?W6qaht}H%&4k!avP5K9Ge!0bAzA3XLVFYFMeDxraAoKO_Fw)}b(t8BBKiFPALKu8k)3&zhdyFIy zV7b?WMprc?v4}EVRbsyX7nP1j7y{pw{vXP1ebS8zNbHy2syuMxK{qAFSqt4;3}D}~ z2tzL_iIx7nZvsGgW+;qmyR9M!RqlM|h2&8eq6$X+)VueEtjQUJvIjdPMBHfH$YicR z+VOmkKq+msea~|-mP>`q#lb6Nr;rLt;Uk7G78gtOo8+}|byBMA>2Eu0+y zuJ=8&;LdeJ-d|h!#*SJulJKarbG*q>CecwaM1qPTYBT!hL0ULKE2xrcZ0=2Hv$C! zV!Eq}(X20zUKrkdi{OkXIy%0xw&TS?EUU})fQlqp^2F$o;*qw1iIOxL@QF_$PT5DX z>;S|90EvgkARiBsv#TEj7%o)5J)Ha8Y%>6WNhWVjj~N^sYSyc@)#Y6Oz}`=2J5IH+ z76!4VAFPOE(VJWB%y;4~KJl)|{wsg_YXDGEir=0TKfk0FYACPxl|S(&8v=wz}Jz3IIY-GoznY zM*LO_>+8ou&|-~tR2;BWU;gT^{gta< z{CMf|=T84u>-XHWvrHx@x9?o^sySrzd`8a$z`QqK_Evn_*{gTxCTR2^lie_M&bg_Y z8pk)j{14B)^79ctYC+hByq?zcX_5v2^rinh(RAtDB>-SDnI21*y~*}UBdg~DE&)Kq zgkfI;|I58^MI`)zF7GaO|IcJnwQ9Y*x~8gXI+LnZ>bbrw0O+P(tJFU%Iy)0o1`@ax z-RisFIjY3`Fe2g2aLYPq*dpG!EXY z-dOcljyF30<9z^j+<{PDkts2KaqFNxym?hClm znHtU*^Y*eTL>z&cpoXG2snR)wdMs9Gvh34k0FX&m;#ox| z9p8_oDJd~Kz5*bcoq%!fhcRO!ZRss9$T~)n@Rk>ux*`+Ybp4L+`*FfptjMyhD@g(v zBP7X4Qe#m+(5Q%%wa5iOkPJ-$fYpYl5Q(Duz3eO(kzPI2zLV zPP9c&xz@+x&YSx_5Fy1f2W8ntoC{rbU%2STYjM2unie6ZBHIAKc@*!|#_;4oNRbL9 zkueh@(QVEPlzh|;^*~TcYfX2hT;(y%=8L1F1>2MpJS# zJlKk+LCg!;D`|Cy$XA4AY@3ShB#B54b(u2Vn%o#LlCVyUqR~I%97FwkN=XC2jmn#i zXy-F_UN20fc5bwL6y`f~55EOn5=eAK?+$D?WUN<$)eQ$I6(Wjbg(xkzgJqI%P6$?1 zMR3jqSGImSWTXt5L)Qz>Zfrs)#-KIKQ4+I|ZvE~cNFH@2wrw3@8UEn^OP=|7@9(CB z5NEMFGesO50BG!0-uvCriRX5_^ZmPjHu&5ZG2Sxl%_95Zj-nGJNo-A9=tKZe59x5) zz{fGd?wUlB$t9T_{m9Jz0Z0K5(r%8_-cf|iWz?oM07xW2NfY4`*FxyBHo+Mm| znDbD=k#4DkC;%WyNFv~MVg)IRhO3QMbE!cwa;yx&I+BP4(jF6{L@1K9{#T4tEHYBE z?)a7x6@jtw>uw-KB!ppf1o}#krFaNqTs$>OgRrtP#{s-{ZQ{bEZq*m1bZ%iarme6@qWZ~7Hx$?y&Z~ia; z?oZ!qPUD?>^g1PUyOP%sslh)&zFpSRx7uUUr7y`L!-{P$Af@+J663g zE}|$_6uI4YF~PEobEzDxE-ptPK*q&+M)m=8dc}9O!Pfu@8o9Z6dyO>W* zOjK28W@T1oWxn@)-}n8E7fu{r3iDronx1;B+a{5x&cd-%bt64rf9DQ*-tI)V8!Bs>hUT;C2n<3`6-TIIz4f(!14xd2>R;_TB zqCT73VIzbjwvk7~5BSZ#jkwd6E{&AzoE4`G(FOo#Xf{o<%~K5GBkH%yv?Y)vSW4;>2y*BkM zF+CmB_ zWX-12UYeT+fPqS(+IO#$f({g)KJt?rpI&#acH&knl9VTv%+Sd8cJIe4@A>}Hcigv+ zNaf8i4iE#$gj^2C`ixFDQ>7OatWFh97WFN@j&8NgZii&wi68xDzfSdtMG7K=_Sl_G zakkRSRL~bJ!b_Ymy`0l!Fva}cTxkkNNtJS)7P#g6|sayg8!!S2S z$6!QCdU?Aen#xQ~Wv0$GU)vZXqm!*?;K|SZ{GL*P)|X5ZUo&!PW7V>X+bx`=?AC;O z!BetaLzm8rz5D3z0XZt}tfl=yEc*`JDOWq&FsH5^t&W$1tBD2x4x@9c?(y8(b%s)X zbZqq6<*U7<$5bXKYHv+fkM~;9;dLQqO=CZnIYOuk0G~VgGe7t6&y{JQWIcer z-RxSaeYZP=5~P=6FE!@^6QF1iQP!fY77pwF#$XvNeSi!AL|gy>hYW$6lVY!h1uxxA z3%@}c;m}bE!*{Hi7dbQub}_TJm$WB-X7SChmxoWg7oILDy4ZR7>E{bm@4IgzI|9^n zo-5li02K3im8f?wko}IZDPE?3NbA}v@)^74LbU1zM%mU4i~tBQNV)VlPbfuE$FlXK+R8v?(6$_>#|uLx5lfBZDAHb&&!+#Kk}Jw(meoNZJb|@R<;b3Z#v&E z81HR`36nD5!#ceju{(C{8XOt`fW?KS?t^y_Bu)Xq>(qxTPu+fM$^pbstdiMBvAXj8 zzwBK28;bR5{1eZVQsy|#9?talHKk=)p zSZhaZXG0B!td?8x*P5pNR{XY`2V=g+d`d0((Z>+14IS%RNmFuRSnnl01^}vqer=(B z?}OTdu+|mXVJ`}M7bZPFS@KiPZp^XW6_rvij7^xubWmYw=7XIk# z-jgTdiNPRRd3(vzt=7S6<~y%Ohev|Ky*_F#5&+QOxEdb6RT>jsGWS4dUndM>H;AGr zPLhNWWE#3*WGelArfF;$3$qU6%;`8wON*SRrlAj13fs-4{Xynd-|-F{E1f)Fe|@8Q zdBt5EDh$nbG$y2N1@qOc^ygx*f*$A~>P0(WI<$c5$`3;woK zN=xS5iu=zhxm$x@`t9MPJ0`|#WWXBUnDkOA7Z(?ny3K3GS*^BtCWZc9c5)+Yi7|-)13I1Ad~sV}o2qPaH4vPMzLN6wX-qzT&?4FaKni}WV16&` z0KlcDH#BlvDeVtp*>~lRNbS+vqoS@izBgX{R5v~5t%U9`J%(te%-JhTt;)a_lY2Jt z!pigO0mKJ{!Q2Q?f{QU5=l2_TWlUb$Ry3dh$OaK)nnzES%2_o!lu6 zMlhtBYdxlHH6A+Us>V)@OsA%?1oaqeb2p%9iMiL7T>t=8v48T>%>`NxG8^M%2-d2D zwnj(R|2lK&O@#62;bRP?k~0NCw=+)_B~8LO4lOgw7%VO0F$`^WVP$e+Y<70W4)?`%*^mr|*?xUf_z6#;-TR$IQ^nG<)G zEJ1mKO`{^)9?IK6+}c>p?jX~Z+Q;Q$A1&F>ye2YF4cmjW?tP0PI^gJ3e<)j>d-W@& zu`^a_xIwe4-omCIc*0{%!`+tz=v#F581p;sRh8xpql_>$Uwl)YUxiP;&oIh4qT$FTM-_aRdN>G|=JEmh0Pw zw$$h_Cb|(8szM4GOG+VxOj6DzZM$JPZ<)H9GM=|I!1;KOANkExcS`(Q%+b42#0%3< z27m=894Z_R{EK_t!kqwot}B_6mfKx* z+BZ(pnendY)%>nH@;WQw>U8^pyZtXz!RpTSNNyWsm^%!)5W&#bAPQ>DrgA+=mZ16`Beu%X@b&~ z;|(GrPM~Msy#%>ia?i~rcU?v>)R;96y>}@V%mP*jOFkv}qE4()Zzx00jT z_f+5aT57HjwT+OJ=SgQ-$qu@VjhQ4;4=v)RO<;b8>K4 zuynmb>~|Kw(Th2KzWwGz@rSRqQUJKtQL6TE?fzwj9|XAIs$BtqpuGS91LkNWtlvR% z_Z^3G-fnl|DDJw&2_c;G+VV=dT;3FYp4a;_is`)hjfiFrec)FBpzz7xINypx&;(hT z=}h07ul}G-bm*2pRrRuZy=J_2rSsYMB~cv!X0I|2V|Ad{$hiAOBIWhK1rzw^KZY);fD(Y7r*iER;ORIOT%re zwB&AaUx--Lp9`BI0e}@>l3)4NAK&_oMI0wBKu8P^fu^yNjWAW!ETyK9eCKp*RTK9( zs69@aef@WL-Z4RzrHldLYkq{Zf=G;0AHd(o{w9!`P1!j1lKTrHB%OF{T99+kVQJsp*WT0`@mfyPtleU~SM2 zcLjP)FKc}6HiPW5G## zNXZ4;^#d`CYBD|`RVBRb{JVWXiK)-6@_Zq+(56uVDJ8~=s@&`OEBBEwjGOJw@=DVS zB9)S2-@y3Tc(poEsZ_GLf?*hx?$S|C(`0#R>H77n&1OqiaiyAQ@~nGp*&8o3X*4r_>nDIPM)Q}^!jdQ!_xgqM zFh;3R3#Dr>|LOS9xTb?KKD6Z)(2Z8pfs1Gd04Wt!U-DuAaN=}0XY4Pf z{bnqCU*$n8`_9~ER{K1k-c%Gi=FxDjza3Et5DRQZK_P2kOrh&|RrSSdR|@6bM|?AV zm8FXpcMfWQvw1GMk(iOu3nxow)i zld}77)1U6|PD+8Y)kL#*X(v-n0DxUguf3Sh_9d0WI~6#!3QV)_n;RO*t033x`9tNQ zBc%hK7_&1{s1&S?&jn|Ol>vZyqgAihbGbErxm+&xm2#cM>w)9Ofo~g{8u?N+dcQ|> zliB6S80gkPo1e9cK1(Xu)vQeaHm z^DkX{^~+~I@@tx1-QSIMHL7n{Z$_v3>EfB~Y6b0&jB2fhtD7#}8{0pLh=nN9{xU%% zXO)*<{!5za8#(^*%gr}?Pt)p(>_t6~FcF5qS@Kr%^=^ykLhFrYZxxIrNS(xq?Bham zAopau5wcD+BlBSxbcI$91FV!?nCv*#qOM)!h1Mb|b$ZZck z^l1ZYi^2R}$3N~RPRGRv7fXdSVM(0mh939(gMnqKjDk-Tn`?b`qM9gCoXqFQ=i?ytY=KlPZWbcBcjpwkjO zgV7%SDEH<3=KwxuB~>9r2Y`%fuZFGeub6Ybva;%QTt5g5!@w9vQM6K9Ra9kHt>Ya* zeYK7d>Z|lcVHgIXWm}zgM}p*xo95d(tyB3Ca2i*h`NQ$Ye}YduKJU!&ZJOp7r-|qj z5>hTU>+Be*azh*kXDAS(xWoxk0U;d4nP=Z31Ea*uG8W0V2X`R2>DsXDw9^s_z3De0 zl=c<-sH()#+5o9xnwDj)KixNB==5Ilbl>FkqhV+kjNvHKByRE~Z)k=aM5eB4suIVP zq3NRCZ|ZgsB|=Jsq{O=zoD~>RC<)o3qS>lZER38ch889(D#;S0c|ocWys_LUlD3M6 za%LYvR>a<>w+gN5(}z^^5Zt1t3lT=Fv4fJE@Fs||u4;^noUL1is!*CTh7bZkVVsn6 zwx%eSp$Z9&j*k#3W=+P0lp2S7C;LjtbJoCehykD#amzlOAsxoz^+VJ3^2Vok4@ZCh zWg{r1Z!TM!SQ4zq~yAoJ$Df(*4ZM5vAcZzs58tZGV5 zN-kv@C-=cgM5zG-gK0U#1>>8`*-I|McYQU~FpL}Z=5oE|1(B*6DQO0cwk6kE2lGfMX1(%JoOe@hU?V+re<<8-}&E;ocPd| zi!Ci)A=#1q;1)9pq!gGaf~R|mhQF8C6fK3kTT9bawH)2EW`QtScVIk-W$%UCk=k$7 z*#V#(&W#q1w<87s4M8%Im&>pHLbJBjY&YXp-OO)WUEn5~Ub}W7-?w!^rfc;}%h6iL zn@BWOdMIxcYu>f%?(Dz*)bCWu5*B-#4A)iI=YmWudW}1O7xT(rRR@pmB!~k5!mz8z zzK&+|funw5Xxkncg8MwM(Q=+Ql{K$@M$J4ru;;PW0|iAH1aCW&6?H8vrCzU_mTj5_ z05G0P&T6x>o#v{YD*}L+ozHylY4pf@dcQ{yWv!ViSb7jga5vEDcy%VHMv+P=2YPhpNcv$ z6UN-Mvr(|#)cy%Vub3;9-m^dt0Dg=9B z<+*yef)FZb#mnuB+qE8V#ZR0=#gTf50iYd;vAlKr1yK(Uy~xm;C};&ONn7pfW2b*i zaMn&c`zua+Z)i4K#ZrL~qNqx{)y`xy?RKYFEI1w4vMm5G6l=0@M7;T(+3)_IRUCQm zPyJT^)CU1z-k&WFE`RhNTu;b+JKD+9b4NIsI=hO{m%jIm=R5d*a0>L=|3=I!u zY=dGgN@6MYdE*a5$Ii73>+brRbvnqBd@*Ywgc9y@Xc8zE>^wps0SHExNrH3{gPJ6| zM1)|lOqqz??ljT>Nd$EW(e+GG&lLS&Nr)s&YfMCh#3{7irrzSzaWVuWOUp13F|p<) zm*x|1I)m+mrl1Y#=~hYlyGYMST85fY6_PSx=^6kKj9YFHCya4n>Z(Es08oN4Mofr8 z#!?lkC^SfKXOrzt8#wxv4W6}VdwUrDM`pF;X!MIZL)$*X=TpPf`i zZRhzGw~20_I^Vh}tyV2%elr|Er|%Y(5_vIT^(lu3F^a+DAW6ON(n66*Sn!*RS; zvwc%r@9$sJ*0Whv-Rb7ZIP-kJzPh?nTbN&%uho`Ytu|wcq0vGiSIA`_xYzG5IW-^f ztBEY8TnGt4stjbLyJ40tMx<<19<4mN>!ygJDXOOB`w%8~PZ*tZXV&{X0rLo^y(rg9 z;qsOaECs70`N`A8hq_N+Sb1)KdCoK~OSN)Z;kmiznnBHR9LqMND5jXKdv+wqhy`xa z9?gv3nFH$qiJ%^?-AQjXdSFB*a)KQeY1Avv+{&-|^ z>yl`*(=YZN{ z^PpL_wYkT2zI~2~R3)mVW-Ixz!}+OJdwHNR{;5NsvT<`yPWD=md1htkfx^B{{hA39 z6-M?yOjW;TvIK8Z;otmvIa5x$_V$B@hCQ8L?><(EdaQIl0rO!5PIWXK~lLKRlXRiYA18!yq zfG~^!lVWjgknj4;OfF;X98R^4fsv|eDkTZ$Tu1;A00CpMz|PXEM^1kxQ=Yt?F@~zq zZz4nLsUq)x1C=H&}^FwuSekJHB zS+wh9@B98MFg(f&MIqSh&DR>ivIH5jP$9~qKffnWdXUtL)|8(x0I;;O7ws~=`yIrt zGW4yOTK34{9~nCSaY7WqS=H#j?o8k9s@?m>bv@g*Fve2KFbECP2!k+_v7EHan|ET!C{x&=F!Sin7G=h~?fBDwRy?29yHqoI=ML`x- z4Wj}8B4>nQy*ue&Hqw?#4sKe|R-_Vgh-si_zxJGdXuL@v;Yp7&^gEZ0=fCgyimJp( zlF#Q{*IW1OXQ^_uFxp+7>$z!XG2KySoGg8K&RJXF?RPI;?u4;!sDObnA8xc^LNtot zLJ-y>)Jh&2RB!ZYO%E&9NQ%5LtSi`7Np|DL2o=RjtGOD3)W$}RW^BXt!g{^V*;>nB zrM6P3Ryqi$z_cDDZy!vh7hnovm7bMA2a;Wh+dS>~RS9mNnnq6DA5#g4`go4GjP=Muw(<2As<I4=?h>zUh`uBU{ZD;03d(> z0N!edq3j0+;N>kpz=l|^MX|)ucJd_Sia2}>CND@bgL{Tht{xUD-SaQcIx$g;a zL*v6}>yCF2*3$IbIb%{chVS8i-FY0xYr6sGDIrQemmeDI?`6O?ile}3w45M{V$M?l zFb&<%v|>J6?b|~j^#kr1eOd`%W}c74T*O>>>}X#1x}~m6YE?2rQ<=S$v=aO-j_sA~ z{-_gmW8hMeTy0;{h`C)|)^(=xQ?IT#8^hx;B3Z5Qc;#l{xXbQkCvNGM+40;%eaGe+ zS6Y5UC8RqJq-koBCaV6nUwy=*X4KeI()#VNLrOaUWYkRWf%QGIUe9)~Zfn6=cio^l z+c$V@yTw|KnX$^YXP4k9J#v!z9g!^^OiO!J6_!f;gvVUe5?rBs=t^{B+0#cJRvyH% z?~#3EwRh0Aqw;RzjF#qS(m^4m!|278l{2QT6AA#7>Z6CIYFA#JII;CW(K-wBSBHki z0iZE=tuc3P>Y=miirBnAqfv7_H!*CD0f0*A@4x>0|IK&*hc|xtRfB5=>NS(S7Gz#+ zl^ynOn4Y{d*PhQ$JkjfH#g(h(@abJF7rPcpz5Gm(r)cPuJ8;y)RHhLQ9YxO`#A^-$ z#QEBY5kjQjuIBZ3wv!I=n+iqO#{Syt=L)7$7&^pw>a-i}TCLMu5u7WU!C8_dZ);#U zlM^;T?-A|jZ@w%){|g5;nSGsBr!zWw^M>xZZl#pnVfl>+!A3L~(E#V|CdU_>K`Tu1 zx(Wc5r~XR^z!D?_w{?0~j7r6*Yzj|jcde-GgeU-j2^E~#YG#MP{rih)ny%wzvbO7Zx~_*o*quqEsp_Hf z@e`$o06;zR;l9z+#gQkQ9{j7{QvUSm*K7XDfjy#oMwXyF0mG=6FPu+H`EWF!G8X`3 zBR%(KWIgc?8wpONoC%z%T!x-KYP^2s(EHDvZ*J}cMNxza)^xS|cvFJ;I}u7rquwZ$ zOO1MiQsR5QLMZ@fn(BMLuIm)j~(L&*jq(G;R7nv^^h4ghfG6YGc@GXSu3T}_-GV$(O5X5uo+>eY;S z(_z85KnQ6nwRBBNSZ+9`t}-q#LZ-eR+NJh#n73johjePxJDzQ5DxvGgvMXGK1ya|n zLm^x9ENsG!Sw26B;;VNmKn7#g)joK>r7eeeB}5ThYk!=`Ik9(c=ZyHS$gW>o=EW=s z(G}Udf0B|j79>e0NnHs76q+8N0!k3$yqHznp?$qcDGcawHrE9{(>t`j3- zArq`S@Sah!6S>333nw=&bD?oA5wW4`3e(;*{NCx+8KNVn<79I=j1eK!={TD_I}#*C zWK*p9h2|RB03mG-ndxm?DY_zm*1S4{^aJu&pn;u!$+4muHW1!1wx0mk3F}7-Q}svyfX9_wzh>t&=NA?rwjp z1(|cr{&Pe9=wndIp)PIq=U!3{9shSZeIL$DGf%*dhl(dVwA1tHdSz&^9@SZVZr?a3VhBOA%Jp(8|SH%F^f$QJts8nwlX zFFoTsE+xp$maJS+H*LePv-uLa(HvD&l`&~%vQq4RkHDDH%NGzL^7Nwz+{_LDtM&Hq z$ePX`2CnbBJ%+|?L`tC}K5DC#jENCuLIQxFvgvj(oZV+lk&O)7qf7qcdg8W_qNo-P zvAoNpWsJ z7evSChVJ`;=X!upxv$*mIJtb5Qi?J5TtAn~oz3^xE_{FHr7!nQK32~TH2htB;X?9? zJ=lsc07Q(xO=p+DCF+N=jF+m9F2DLMmid#t1G)+CmBE~z6`Po9I zg{*GPjkYNC8!2a7+*+{clW3Rt!d}3lDkKC^s;dg2!FuX?MjcZq;X+V~6-rE93DQLc zXVO$%X}OM{QgxS!u^6iq%!}Xry~4<;^5I8=aF;xH0N^r4vP22d6e>a9aBa)1J-+M< z00_C9G;x^jvMEa$mJ$iLc{k-Eq}Wu*TAQZr1uZw^LPQBuC~i1Dp-P;Jgo$$2L};xA zj{tKSuP4~_P8{}iys(%xbyX2UN=Reg>rIG@SWPbvsLc@@`YglL43*G6OKV4K=iX|N z*qI}ST)v$E8O<0W#?eGOQ5Tc*?&fC4c-|!bcXyWZyCS>w(j{eaHJKRPD6(&4U2qSX zljd|$%3-V`F0|=+01)Mhp%-Cnf>RmAjeD!JV*mtz06UVjKvjQdQ8oInwqB}aC)R7C4&)9gvb95L&`ltW<4!AHuIc5py>y*jo=Gpyq?Zj#DKS!ad63sv*kb;qWOp zXe+G+dxK4( zF|)ICr9x)k%?T-mff3YRnt%3pGKW7}50WtD?L>~+>g|6HIyIY7eckk}YG#k-jJ=Xm za~}7%Q_qDIc_q)5rl()}lgYkog;p{FjcjNQjx?w8ZS%@ZZh@gM(=r zuIp8+6^wDG&&*+{LLr-p|(1$?PTb8L39kp z*tTug^#%s}F~+Xzg<;hF9{^5P2Z`ri{KoI*hmM<%|MZHtxI--aIx(x;`b5aMkg&N9 z>PA@VC+eZDd$(-rB6*uvU5GSE9RXaS20~byo-@u}f$_scQ5lQ2Dd#9v)63)o(~dMn zb%Qx3R)uKC@k$)80CE61n0V{|sOk~LBZ_BdooqhL75z*u$>b73R;$_mdZY+|lnX%z z@?=$P?u45n8B>&Kqm;Z42(q%q24IQQ0KN$GoA@0zn!8P=ft1VO-dzX6c$A#VWyBQ_Gr~kRpgvRiTV? zf(e&#!dtuU`6ejJGDcN}Dunn^>?ccm9TedrPSb`+W|j1+C9Y;w;G}Q8Hfby3h3ptk zW_owE>(&(LCp>!GBS$=R=$e;X2$Xs#*0)(O)P7qVuw=i(BDtZ?Te#I7yu-ZgVP=@qSq>5u#9P(4|${c8Qs#Miyg52zDESJ65QrDp_4C z8Csu0ZAuM73_=WrTHP0QwP+X>T`!p^YtX!A^--cH$Bv_Hp*zgB(;@IMjF%2tWz;lH z8*Oi;-e`ARE>R{|93B}R7#J#+`V1?(LsQ;y-TLZkS6ffxKq08oS11;;cIH6|(|0^W z_Gq7qQcTvR_M&YCNv+4cZ=z`F$||9%lF#28NwlPuQY5-kd(5MhC%udcwX0ucCUYrjH{_`^`_$QMHB*mGvUO8zVdfRRa&pTe zs2exJlJLNmLInVj5>c%lCIAp~F>I^5>gFmY`1gM=J#kV>DIX-p+y-T}xDwy&vDed; zTcviQqjSOcchwP?NUK@JiL(+Q7C33u2g+HDDF9H6?R@6yr7PvWE%K>m&c6TvmX%xg zOt+ei^6=qYe)HvmD!QSmC%*RGKEojGya9HNFdC z*}Gs^^8hNUF>~on0ep3Fe){|?t<_}!WZD@_C;&*#R~M$akePhZDD=C{Ro%1!fTd|R zb@cCkd)HE^7*oy?OcX)z!8fxntu!ac$HQigsP z=ru_DN&OE0LC|*-3V(?@#K}J;|nPbP0@AH-u^O9 zsg?Tf(wk2YocNGpWn#bAf}*j!mQ&8Oy#OOhaH(5umHUlqrnumQ08nSNL`ITyrvr~; zjN}&S>RvLJ*N$@`J6@E}7?!Se53pLuA|$zxP7vCL7AH(fi4dYhy2*a>**RGNm{b*7 zYdMsFpnE8awIz{%xr%3oN)InY#cpW(TMc%)?}M`Q&0bd5?NhI|`k0ik&A?36(uU;= zaj@1R+5V?SbiJS{IsMwQaqe9E$9_mE;QDjhd%(AZCut{1JKe1jq9a4auf159uQz`7 zqeL@wr68q9xyLz6nJWYX*mZ;rYidEECfzW-(f-aWxZ{bO?LKuH5vsp&Rau>OKm2(2 zuerZ`nshvA=&hgrC;((%xdZ^{iL;D{QQX|&9aHAjn%~YDQ@Sy*m!rPJq-ol60^j!l zz_RQ@p)@u=LCNkGImdO~)@nDX-8A&9ZI2H1>T!O+JBxG8*TU2*8t-X_2>{G?w1*14 z&Vv&?O(IY0tK8La_DxJ>rg$39c{2d894z(QgL$>MkL_G+Us#WBFX?3f@T0b^*t@Q% zV0ARJCZ^Zo#crs57k+nU+ccv_E7+VHlh+FSJMf*sghHX8{q*NyU*DHU z^40$8wF~Dbj-A}J*75gzAs+0X8+hSnXy zAR=WiOXV+cJPcgRx-I1zW9m0&n$2rNAN(h?&6g$$k6de| z05IM16q1?HZ?~;7kv)_$-iT{l@*M3oM1Fr9E1iC|_WYI-51}euVS|}tX&Ub=9A~wB z$*h#DVe!at_bz;)^+r9oX|{754--=DuQ-n9I9{QU3;j^jv;YS|_`c8&?dJUet9XOvAOunwE<6c=ZfIL?c=&Sk3AM0I0c( zgSk-vSnSMpAI!C`)`Oa*+E=e$GE_a}v8~uwE?=TliFtgqd>Rvi5D8*;!MQ$JIEo2T zuu3qEdA!)3ohVHOv1@9Xh2{B?(UA+aS9|;HH#0ai004^%OWgU@dvCyq94Z{1DxL;_qwoJ`rIE9$kza6UJRbb$&w7PYQ1h0; zbk6|>?+9GSBbZeCE3V_Yj+Zaw!XVUiElJ{AQ}|Vc@&q(3r%W#-BU>4SD>hyU2zY9O<4y-@~pYYesEanehH&Fv6^3~7$x?<&Ijeh68m8R>uwIzN3G>33 zV4SmcFN`~0gb~_rI&NTRT0z=U^pMFrlk+7+lDIDnDLJs7?4B6sR>j%A_otoj?!2O+ zWUq#UOm3FKHHrsp-6p;+8$6zkw~8m)h_074C5JFIUwBhpSn(e}DIoRy#XXAb8{tt@ zkD|JwWYwpp6mkYI1|f=n_;+cw^yxNZ$T-SfQq-7P|7f{>D}F z<+nON@x$CU03bYjjIK5T0Cnv%mY&>*g8+ceXFnu40{{fTWfG5+wYj?e{41!4w9$zm zs--O0PHj(_*YwYqDAAOAs!)ev?08-fMzBY1z3H@DtE;~60TX7%e4wrWfY1n50AR?x z7V|MbVNA&L?M&7-b-v4;t6SX&02KRPkLMpNo>~r;Qjw%0xzu{=iR%0Iv61ze$R@Rp z6;A;`94EaTN?t2$R|GW`=}Ne|Yk}51ajyAVBUnk_ehF2udZureB8|5LCd&TCPJ-r4 zHoOk7S(ohMIjbZ)vFiyVc#0l+6gHe=2M|T1M~e1^h6?}}TEP>gZB3>K699-uMqy<1 zfyjP0;7HEKGlpI4FPGO}%vz;()RTQ-&Uq%Uzpojl0B|LRLaS9Mti`fVP9A!t({UXq zlie&NO`LeFRa;%Yeh%6#0622y$xRC&OrD+p)@T2}pZne~e(Ry)X)dKkS25qZ5%rdn zf3sZ?KX_?Ekwd8}t>W%in_cUgt}}Nov$Jq77@B!GM>WxZ)Km0bEE)^vGkp`mu8Z9b z)y0i`N5r+Kd=ZU^e9T~w+#{?LMc&>j`oKsP*r0|9ECv~dOVF)Ba<&z0YK4= zcB7szl>q<~(yrH%&^5CqJDZ1(d=hpng^Dr7UJKs)K>+BnTeBQwCnD4x_wU*BQju*3|XT9&@G2M>(4Iv3mcaSgP_`9A%tYJ_UcLi0hXgegLQ33;=S$^*Dp<@-Z|1ZD!@2|~WZFX8e`&T&Fnzio!iqEEdA(mC}C$mJEc~zRh`LoRNRjc27r*& z2r}Z1&V|erGfB|O{lzzfM~=}`hmxcnhV{EKX98oA+}J%0N1Nn!iJTBA}&e(zTh62p&J-KYApL>WO>(4jd9dnmTFf01#EN6~$_P{*yRa>zLs<&Hu?)Suq!%oQx-i z06=oaMZ$PUi9xWc&(_rI=cB2~bhwm`54H~vbA_ZyJ57Bq6H-wz)=<>Im_!3Q=Mi_W z-Ds4rx0W!*G|Xg-M~CT3EAy?F(t)yN4N1=8w6mSJU5KRZUMOUB^)7ooHfrmoe6G?z zoXza67c$PAj?-#2ZW`XRW~FpnE&B(&vpCm$EfvX_JvEh?>NnCCS8>cm%*C_w&G!x$ zca_?^Bx$PmFpzU+vD9qWNZyIt7n*N$h4LO*30J3YF|%K2zELXQw1;Cv#zw|&?Y8YK zaHk@9ZS{GRT2GW8SJc}rPdew#%sSVCTWVS;SnW3tsFUK#i+}vc)Y0w!I(_-M?fD*+z$2%l`pP~>;|<@_1%?3 zvU`ITbWjp#(fS;e1)-XXS(QdrH*I%ecCj{B%$E8Fhs|70rOIp1e4|~5G!8K#ZmZeV z*~gBb1^~C-=(Oq}m^glVhj+x7VyZyCA|9!Tcf#mqZMFHxBR88Cp6gah`|mhlOqat& zkNYrs+>0F{dB}Vvezt1AcU@|yec2K1pbtN+Gir?niL=QKjS(5L$HZ|30NTsn-(mHl zQLfCz=+&>v4}ZMdznke?zE!o~2&Uz_P%1^`2~rst+FO<(NFv-xxV}>KmX7FO=`IrC4|2SM8{kMPm|Fiez;gO_wo#!v!H}1%Yyp)-eQfJ-w z(bd(bZ)`UPV;jt}*kEHY^UOTMVGILnW<28^nAx3$o#kP@3j@P3ivior*nly%+xTjC zxBIT@uDk0{sU)SOypOme-ednrl}aV0RH`a<9qs!5QBP%L=*`Hu@{RBNeLufXKeGRk z2k(FME8qHuk%18}T(vy-28wYy*}kYDYbZ4uNB+0}^aJ_L4{m+iFHUw))w^~zzFVxp z;s6rxw(QP{S3c)=>bu|g3$4I8ReQ;A56oOp4?o%}btYfOCi^mVp)ml^J^!OHUKVLD zN+7F!xKt$reUTW`aAD5`E4+{n zQUHmF&2_@_J}F}iam)k=39`f8yLiUrqKL7o$QEa8ZCv;bNDy#<$GhxoB$@`BT1u>@ zJixpV#9ZL=V&&2s5QjJ*^~DDOT`DS)Mp>-Ox~c17Ov0E%gvz3bF~TAX$gBv3C}#ax z3k%qddk=ufk|oKeYG%y*SP(R>XXkKT&ijD?0IDo;CVFHV02G|ZT!|&4TMLw8xqz7> zrdKP7Dx*TvVHg2roHE9_WGHC_a!BhkDoUc$*gko!3#DWn#)0KqFR*36aD-0zL@IB=Okk`ojL-nH3fHpHMVmut_PN z=vlUOnG`XTFa~8Yk^a(?a-|iG4RA($zvB6G8-C7r0q${Z2T_9vgwjX=04zp3$GN63 zNoAHUHaeNVe_9Yl7%UYB!Avc@Tw4IN9$EzTV?PHUHE zLHWcFh`-MAt!El1E_TlQmxmA}B;Q|n_-y0sjC*M@ENM#Ccydcd&9=i97BCjDid9`Q zEIC;;N0!3t1rSQk@?mTV$zwNNp7e#vbF_eA};WPj796oC8FPY|qZ*3po)X z=o)siI&IS{^Q5~fHEo}7efs}DDbPUXpf+8 z&5c!~@6$>r>yN0fUzd&~^P4?Az1DG`J7aEtb3NG~4)5TN(#;e=YK7H$P$QLTWF%`|xl6PQX&^!^sgJu60f4F(4y7!S z-?_iA%hadk8)0*4!A}XxeDKi|XOA^n?Y%p9ow;zv zvdlP+w~TJ8c=JfW1Lp8IpZ=#${_>|Dz5fl5-v5SYj(+dQ-u8hne*JGM_3{hHo=c~) z?|t+8zx1syJbL(zfs!2PUN>0wo>E11o0&QP~PS!2kxzr|%T+ispc=nO$4g&xY2_gUpkmhg|hFwkU zxZsa8y@d{O(NIMH?8@IFEQUd3hp>R>4#+HEutNXrwN^bD#S{sGX(%zJ zgi_m%1O@t%W^{Sl)N1e+MM(l=_&P1A#Ll2#W2wLC6OBEW(0zcwP}R0+AgrjH4)uaS-!t(x|sx zj0IW3wj0`RXc|h}i^DJkIR^ZiWYTY5fqQOeLg^ycL&8qGqdN@<+;dCUK}dGgw@%a- zZX9V%)`I6QI|0|e4T_?nYdN{@5e)%C&ZGO|tm%96*Ly&3Ofhi)oG|Lv21HU`#~8%e zgN)Vw!3Vg!F!UM^W&OgTn0T>wy^Q#tVqsJdqo%546e$S+^0{egro!HMa1r}XV$bnP ziwXBGtG$qU(+z*5?}u?5`(fBktYa*tOg){>nr1?huHEyC5{X~R6C=wR=7Qr>4p=di&^iOMbpluPTby+-ebwvII&Ca%+d+7 zx}*a@BP=sck$^2F-LLl#Cq@@PW$o51Ihj;a?eMCK&^h&{X7`_Ioaj<>SzR_Y!xW&_o)_8srF+$ZiUt)p+y-_m_q zlm{=y=hqWy2Y@-}*_8TFmmV{xWhc(Ox@-3W{-{{UwQH67{A{-Ws!O{zeO^wdd$a`r z0KfO<-<=O?iddECG~*T(l87yb#=KG=>X2JK8R*W@I(?QnKvPGPn;%}gTGoQn#UL}X z*0t80QT?_UbVSu60FW8+*Iqx7A-B>E5oM4?iKC%)Nw=XEiZ|J2XX5$N6MwSl{lAR_;mX3W zWx2$JQYn10JilU^_$$GVs&1C>UGqiQ0V;0q&ZCUfms;G`9w*nfNwW%(N z(=(Sw2DeSwAwaf1f4(>{OgOPU+t4jRf^+94w~y}-0RzDK$x}c0=65{)#N*$7`r99T z-v{U2Spd*QW43&0AV27b?Kx*oXQ^VLNSNQYTOazdj}!|-0N_OJa=o0g(z(RoUw`8- z#)mhDk!$D)0I<~53ok$W(9eF{j_cR4({D~Ojn36i`9ZLA$2$_4(U-pTZ=U-6zdZcz zf1AkeeYJV&&Pj+%ST3joN5A+RTC%X|;7`0X`-~sEg+%eC=ZsJMPP^i64BhumRw|vW z*Bj;eilQp1RI*-cbm#bLy0#1*V<5mt7LdqP0D!o?U?Mf@Ay4$4$Xh3nx*X)&tlS;A zc8{ZaOeMb}KCnCa<)^lfy~UA?*DIZWQAj}h(*v)5^H1xOFBkW`BM9q^MdLD@UT@W8 z7%(?qY>8bHY&a>30vHNxCQu=;kV+HHhmW_l@N)8KG^u6cr-Q4>)B<1*l=7J2QcpvY z@yKzfMbR*{ews-)CC-#$se5`$*AxN2wD4z=V_Bqz#AumHfC9pU)=uQ?^zy z(w<5x+bJ+7Jh$>K$77Bgs;cVK6RE_ZT8lBxF+z$YDw2p1b>l*A0EC=j zkWa3*k*b&v$aO*IH(r5rVt?O*FI6=Fa3gXWMt3F@5?t)2)MY8zkRI*stFHQW7TN2x z$g!ap)KJvFaa68$>OcNAF0qagM)vLc$}A>MOuF#|gd`CQG7eNqgEbK9H}i2pSPR02 zBDXH&AarFX5yh2JP4Eb-zHFAgoj*=rLonG&RS-v|MJJ!;LLuT8u( zu%pK?BzpX7?2(61ar2!VX}1tj@B(eAP0-S6r~<+aOOVdNdw=pCF=oSsxzN)<_lf)L z{F4v$zYze&`?l3sYn?P$JL>E-XB+;)EpgfwlBJnqaj5%p*Y4d%Ui@Abu3Xx4r%$HG z`%QgeV6RKz?+&!cSe$5{88$a*9q0L@Q;)tOiC720^6UC^Cp8n?RH?)76P@`^-@vtM zpDt=`(;NUaizNHQ7r!_#u-z%{w!3co8oI@yOBv1*b|sutOyurfEIR<;VAaFHS(r*C zJU0cAtLs{;R@QYblN%H;=9Iclr`=rew#2YTl&cJP#t0f5at=P)H&FBm@lKtNvkTy9 z06?OIzV?r>ZC97XeTOTKV?~x^c_B2@=rnJ#0xAF`<*YHV0|1=Kqw3ZN19HU$=!C5i zeFmTp0GfU@A8Gl!YNQVdn6R+>ALt%yMe7KhuL2yGv655!gvqmfY#SqS)34RNRf)3M zzRYZCu4^w6O3L#$`$!v*V5)f>;CP>27)&1cr&nIuGPci+2>?vbO>W<^qa8H&@7Vu$ zkN@5FEjzyZ+!Md};eUxRKYQ`akNx0J0zeprDKn)T#wDi%3uRQ#ZrZe|6S_`qI868k#5kRCCqnQK=E_>EH9YPG{4 z?E1eLV@hdxzS7s%x3WIx4XbF4)sKGGZd?jByYIje0YaO{=Q9;UBlzDEiH6b>hXb!#}1Z z(~i4*R3*#xqli#Hh(Pceo&?nAQHmSHMTh+@073_(RBrIUOUmSG?*Hi_YnZZl+F6OEsRR~ z4i|4JMg7$!MRY|$7?#e_YgIZ009i_!#t;@&vDy+uvHiA#eq4KPC^0uC-lf5GAuz8c z^OQ3dMR6yJZN?}vlkt{K0WBw_X3zQh>}N`=!xp zwc57r1aTZAte93Z)0Z0>8YvV8^7(u=m$#B>&9D}G;j1YKgYx|R^z_vHe5u)N$s)E) zBb!MjEkjY{drX*nTBk5)*9DNFBywiX%U0$V&(1CyL(RCgbP_S+v=g=G-Ps_HFc!|W z&t7buJKsKgu61UzGcjdfbYkbKFuQ0R%pU>(Lo$lS&`R>m*~Zxk`+Os;7qnG_)rMrG zlr&-S*7WY}>77YAbz|4s%heYrI~P_?e3p=0G=>i34{PFbCiRAEanxkd7j8~GKd|Y# z$HLbyHIb>$oK6;d)lE$qV5YdD-_f)FITu8w=0^a4G3t}ABnQRI^b$m4%Dyii(r%@u z+)291qi;k*L&+pW9RP|(an7AxCq1U=Rkvlf)&d3qks{M(EuS{U%ag{^>GX-?C;M_a zyVGe*oFCb}eGyP2AS~N$rO_gm1)K|#a^TM&Oh?MFG!n(cH@vL6+&FV%{l&&0y@MYz z?-0$ung|^{dg$5_5CMd1t^)v~!urPip*?osi08kTVN^)=_o}P_!us3X5D6eCaE`Dm zgwmXz-`O{I%Qj%c)sq;rD2^r37)&OUl#|d8G(8anf$!ROvljTSu4|)tNfI3F%s^x# zj``Koo){%n+m=&l0MJv}`Lk!c^caLhN+Nvv1bfH3?}`D=TBBJU7?70(F3`mJ3;FB~ z_9B+5$(+u)muS?`^GnmDh|T%eeZlszwD({Tx`kZf@V>(p zZ?@YrOvqLy(KkN0r4>~bQMZir*vMGTD<9fU5&kaC%#D=VSTNy@|}YE*XQ`U?aS$ z8^2PWwv7ao$)@9oL}8?As^@wj2m-)5VLsPXPA_De{<)|AWbFR`$sOD>Yfk|{LQbiY zCM(R1oVB;`^`vW_|Hfr#OyZdn-j3mrHx`GuYzASk9*ryrgDVC^R0K$Xh~Lo+843_E z(7=~6{UFIY5(18{m$`J4s#R-(AmsA7!1sO6Hxfp>)#kt{p}M}oPlc9}9J4aAZe>RH z^=&#}yQM`Bt-8K>eIuDiFSQr$!y{Ha*FJ%N<5&KdrtM*=&ARSXQNM$B#KO%*dkH6M3R{Ft&<5ZfV%=~X?F0ZWyFSJrl=MbR+y z0gdatTd&+Qyo_YKrPWT(?-O;=?P1i6nVa7FNPXg^@|h=x_P<@QZSCb(Y0BcJA$vBAPps7J&I{Ng{?2u@y07BYA?5dd>df*`E6vL@>N#-JhHVBynq_PI0l zLes1Ab@-)R0LnWE z4|Jn8j-=D_%)r1xc_>kmIb&0&j>xKB+XR=ecfYfW#f=$|s9n@g zd_7k>X~qE_+G`K(v(3IpKpWEb%}NnUgk4;GY0Bn-!p+wCxQ#+lAbM*BcLW+!y?_vA z!0L0eey65t`cOs~DQKoHMZP^(alDS3PO1RF5CvuVbS{q&phQwN0SlrcHRfl{R0>N9 z!V=$e@U9@U13;zP93I`&{eKiijYd6_y73CAiz>M@+>1IFpYGfDLr&~0>s?5K18AUI z!K>m$1D1KWfZ9t})ve*1(>tnRHKt)J=+T4HL}Li0tnWP+zwakFXHCC04lmAU9M z_I!CWawA)k#kN1!mnhD5B3aEe177OHG3Z#Xq%+B?H`@*x?Vz4aS!HLs?pKUN!i_t2 z)V|z8M^%@&z=3|=KcddP+_q)EnTW@}P1kgUkN-!$2}&^?ioYUcm>-?!~O==i+0&Y}9(f!03% zWkDE~K@v?_Ne0`8KoR}0)_tovP39&6=X&(Cupnf5O`5qYaP1KX%DE0imd(s(z9Q}( zZ*q1k&xdxqlgsBY#;T^;9mllHRAfj9) z>SAOZcgDSMn|pYdAYoC|Eo)rY3Ibed2MIE!Td|-ozRalm!obqR@x_HJr3TOM$#O$p zIEzEV7`kEyTrZQFvlJ2p#u*_!eu_kq`(dPBhF`aW6P&Y{P%n%`3<0T7V73=DZO78J zYSZ?--VYLq?C`#K|7LP<%Niy-0GRS-$76mN8F)G0AY$cQDnTg^LWYnGoYdPc05HyU zw^Fngq5(&mR1z~QTMlRg05~J6f&{V7SR_Kx()$n+F1J4)^78;dh?cQ*0Pw>IA=L4F zgyYrfyLKh;q~nL8Ag0vUkfpnR#qFo|_jze;t%2X1s0gN#g zI_`|?&8~;!{(YjDIIe$b+YkI~=+};Y`9JeQq4C%ul1~GG_2nm1(_zZokq5grqbv*#Vd%CAJ z)CI^W7y&>?Su#FO+Wo*zhtTd`C}fw-7O8 z3;>MtZcI)<7|~ch@`_u?-4%h#*PntV{oWyCG-s@rywM7(TP=H$Xk68k7tWnte0OAY z)W{8Xp}mU|5JnSc0RZoPh%+i6{Pgq-2MYUk>@Qa4rpET*t$UVV!lyf_oNi{ct8SP` z5SA@@oyl!T7oJH!|M|hn1!HKheNEnab4I;%)H?Xyc}d+Ew>0R8-3Ir)s}lM6m9OLh z0QGY4;{eUSdP{p#icli-?BdIWq})HSYC-9{LTeCX7RBS1;FlAEzkO3?d@v!=_T)_S z$eG&3StrKHRR4I(TX@b#kq2yf47rf&YfUe3LA7KW7{qZ5txC5T#@&J)UpmZV+jh#@ zn1~`}v6jyP0G_>|;N^IMnpe(i^NNT7ASCRm>Bi9(s}KpHJNnla01&#ezX&6BuZ#!< z04(%y8!|>tP4-9s?3cRV>%4t|+`hAdaoP%Mt)MpB{MKkHh$!n8q$S>DE2!1Hau@Ft zkf0UR0um5LT0zaZ8YH-MNhfS|p(~8jR#2^a|Eh{hy!tn_t|D`-aVH6hrC?Aw($!0E{sfaTMOH-H8M|WDX4( zBUWyUaqx%coVmrGzb5G~elH~(G^`~2I&+JNQIF^$3c>a5}L|^Gajy_)`(b_q=af_03eK7tHtdl$gLSZN|_F_Rj4P4NECu zddP?d5=u(f`*k{;2s%XTrrHfzET9u)m5EUZ$yQ=i6mM zMXHe%MQ#4oCsM<^7>!RkDs3X zPP5&-fvKaqXgtvWNYA&PoqMtqEjNI4(YQbV(2Z>3>N?(dWwL#KrNa)lHpadvge9R` z=KJnjY7MWJXRnuM^~B{Qg&o&hW#6@Z*VefT3hu5@Zr>lWRnZBqRu^$Vm5sR%Z^2vr?bM|{e)5AT$I$~;7nKy%JfuiQa3VjYB21gW9DB?^o{yGlk(@E&LlFi zp1wt0TuGRx^wq_ef`B(A3#PIGq2}AAwTUr{@>})LX->`AlNYCLk5X*vR@Thq)kG3Y zihxiYIEE(4Vwd3qd_|q}0D$?PY$O1{ov-u_kKq6I$HMmQOqB16FgpO)PLR(pFzcF) zh9n|M+5oeA%D!l3#@x~=bL=oOtd*>Tc2F6z5>8|=00!VjWX=hv+}KbxQ$%;{-kbC0 zmO?x%J=6dAQ-N-F6te6NuZn8FH8hwQL0FxK>jwEXFW*y*>16j5gU9A#vqGUiCYx45Ll^(vxaBdAFrr;Oad<~Pos{g&OB zIC$u1s$R7xo`q5tg^?sncE=G#kx?p1lB~##QcCGfqGS5>ycLBgjBG^a?3t#&fT_?V zBOzPw|Ec+icxzNr{8x}*VWjK*oDo4lfj{4M@Jcb%H9=T{$D@=so2^!}6~(cs z>pk=Ai?T38T+Xxl%*nO=K~8M z1c0Kc2L9@SWv&>iLRb(2h%f@APgUjvGRwtFPJE4VLJl+tYEjtH^#T&HcI-R=2%C!F zLhKJIh7vO;j3JfCaY1ecCxa-^6deFmoO8tz>Ge$BRZJSXikdzEK!fHIfNvmZtO#4U zh%`mQNO1g6xEd*GNW%id8B2GAE2zX)a6-gIRmpnMJOB`33JH5uS?T^riy~iHQkZc9 z04xp>mM~UVOWaGK1AwN;06==pXruTX1!%_rfB^ah#5mn8Q*x3rY-OAF5eV< zclvrKNqk?)^Q(Quch8@Eng`4(j8h)9r_P-G=I@i(1AyG@JI&PF7gr{fc%C0PtvHTb zwns0QAJimCH*`sow3M|@jLbdV)1n$deagNF01*qfrFW*}9&>uuqnx&IGrZIab|TUibD`SR0tV0*5gFjuR#jj@2~)wr1M@^<>G+5i9`07*naR1s@@<@y!B zdail0r}3Rt`&KTzVNE-iPF9YU%VkATQmNEpDOUiHki2#&*Vjnh%s6}NV~Z6~*U*V$ z&-|bN{^P&*CtpgZ^8oO@qhJ5(-+tCgr2*h4f9_+$=9bU=#s58j@tkR;?N0O8KlSOE zv#0;)5C7w~gAbI>oi1+O`JoU0@_II@TVTALj8q1*=o9fGq6z?_sE&<|&(F?kRuTY~hEKa; zb^!RPeIF8`glO-Fh*#=EA!PtC+4AQw+LaW`A+%$fMs(7T0bqMlobs3(y?#y}0R$xS zy+61vD6jy+qEFN_Y~E9sjwH1t>0h&4s-B9^J)O>PcDn(2MueUwd(aV`y1f0(y@O2~ zE=8yjdV1*+OEw40;;s4g*Fq=?);8Je?V#NbS{@OQs3nrBrsRjWtXz##3Rr2hT%+IQ zYML26MtlpozS%S972OCuH&N^tW5V_y!s&hz-Zc?aamk&@_d8l@`B=h@2?-)Y!uWgs zH2^593^7hMkB?;^nRktDuo?hD!j8y|+>cyUR*hy|vULCIK0;FM zGqDK(-Ez3MILzMZI0)lHf4WMkPaUUViMJZoU#iFqYZ$#-ILg z-G$q-J71h_to(MVbh2J=l;Uv9Xuc4(!VP#p@n{WSCN>=-%;}crF(|E&H$|3+L#n4&d^w}K; zBV6du+a0IUXl3)M)S6#(u`+5`H&!2&Qrc>^!Z6Zxed+mM=+EEeehwI&j|9oD7{(v~ z3~EUya&FB;hiqTATCJ7mE8RM%<@rh`n+52g`fwAfnhW{d^BZ3{TbG?j$`h!_Zk zgj@_snep|Sk6nz6BwF-6j|xZx08Q%?Xc*E~D>#XTee?A;5(LSB#Zy-hkSYv1aBhue z(~@5T0RSdj-l5$6Vf(ptZqK5EK#yXYN@y{msf5;Y_6f?d?prd-(>QPGGUJT!VClFM zff9%%%0LtiLfpQTqA6<2@kEUMNKnKPP08EgY04MQNJ0VtcaEDF8GxWl9jjm_3(1ptCa^Rfk zwJtXFf+U&N-+hOsE%(qi&zpu13-G)jzd5CM`oV{0Abh?RFvEDKz{V$ z?AQUbjT()H@3iWzg~2LaQ#D1=H02)k<(@V~FI1lEgw0yB0RWj)@@(_;1BFL#tSOn1 zj3zhy2mq!%UR++x?}`|WyN3I%@k76U;qkf3s$=20XlzaI&T9)DKla|A0|2{Oe%FtF;E^}|aQEG2vvT(6^S}Lje+dBp<@f&GiDS>~+4pew zB>?=&&%b+}K09So(N`NY5Z*&RQ> zE8qL*mpyYfR2PFnA!SD!(V!vk&!9;g0HBMGxvNd~PFa~dlgN#GnURH^a9#Pz8w+Dr zFY5Qdf33-*K}WO-VgGjbxz81o{bA&x{ARDGk3aEzYW)6uzWtSaBEMN{yLP|&j#_9I_-de3bkQsipejETKEO+axci*bl8-;Wsh=V`> z+@Jo)yWX7?ldk8aQyIr@D5?@gp`ja;QAJck65K96`%=X;I#)j>0WO-O7)t=qr{#0T zK-uYmF3e^#v!%IgHUj{Jkn;Qn)N$<+W9mup%|dNbAL;&!i4N+9E7+ zBKuk`U0c5AcaMUsNJ|Z9yW^zN8#AtU%cM!BcK(>Ze@hrHm>4Tfb^!1$pZ}(nD9=}1 zb`75$08$v1tRwWa@7I>yaWEDO{i(%$>wCVU$iBB~9&7z-Gr@>#S+Z4^7oI=ae(Qr% zt@GEMA9M4<829%VW=nJZ{e|w5jk4DlwZky&YH9w=lf^x6*D`s>UAP7>+|UoH8+I&B z>iPzXoDl&))rK!bJDdJOd!tE>JI}B7_o|rnC<9I@_W=NeAeB%NAYB?<$?O)uAX0`4 zDgcPla(^}^osR8V=9qv)0f`*XJD~yqn#u^ps=`A6RYsh%O3TSw2H|Zi=#;POI3xF& zqV={?Cjfx?FrB{codfBlEDAD4!hFNdr4ocNOCR;=B~{EPl+B_b0sv)h$fp3nkcJ~@ zGeQwo3^6UDOiVj%@~R{u+Y3aD38fUD1G2U11cqrW`s@Idu~3xs_T2g6{Sqq z5z!PGP%B*Xcn5J?!U+Y5rmk|%?C63Q&ySnKC+Y$KOtjg4qu}{h*QbRtT)sfs;j5I& zs$^2eQwgaZUxELqGPb=y62*uR%zKBvudIwm1ObT{3TZ2hW6C|}4l@U0ysnrGLb7QL zcL#x5?|BpDp?fdJel3M_xxS$>J)IXNNlS_^eBs}2d+SH^#GsiU*V2VBYWiV0Hg$;G z40(E@S;)NUc5m`My{>f5K6hg3h^FaSM9G9%E|(#dEY)V9aN}(j6H52@vgCwCrT4HQ zqjA`7hSf@H`>hCKpJ|*BBmw|~#erpSApvLAz5}`Ymo6MmjFQN|Ovu76w^FjLS%w@l9i;i>LSOdl&$k&C2uN{qm08_pN`c zmQIzplVu?S018Gb7KJCjExzqt-aRb)Z51WUefE{k`x^3zJ5_nLUmu%wBLJAN>3%Cc zb?MT`=)(A1v2eL!P&$3SPt)6tjBb5r@~hvt^wb}`^vAz(-v<%v{cv6)X|^J$HS0$6 zp0GVB7BVsbywbcYiF`pvtX|aT&Lp%XDekgUgV#NmlMw*`kjR%t+SjAnMLj#>uNHof z0|Wr)zL(kk_G)prJ+R$r&nucmRI5kt+-*pHN6d~~e~9ab)M;MSujW!Dl~hXIn3>?W zMb{+8q;wH9P1bu*aq9Eah=ztL4y4rd))9nK)W`wAHJ_r2dv+*_CQP2?sT57+?-nvU z0Qfy##G?Vtvbt{?kaV(g$UB|57Vv+;>L)jSSxyiYIa=KkpxA)FJ= zpDnd^=d4lf&LZ8ba8;MUkDX}qezzlFa#ilwQql#kvhBOLB(liAy<~O(pp;?}C$;R^ z3uk`qpZ~fdYyaD)f9ru=4_&HW92ppi!(eCOfakiZqGCw~08zkUF51g8L>8sy-{6p{m@K9#pXMggex?*a&E-{1h zXj6LsRQr_4vxa7-tYoP?GhWEewx(J^^)~K}t{A6N_T+$G#8{d>`IVS-Mz_7K>dvh_ z4AAZN&z9y^_W!R-Ib)#D98fpEIkWrC6~z6(1pp-Av|jw!2lo{Q$l*s@WoLFn#w0w? z&-P`y>HB2{^xfsNrzKfHA{pw7#tN~05dd22*gXiL4&_DZ`XKC!3HSA9+gI*e&-1c< z*?O&h^FBM{tP%@mP!^M8$P35LUUbKDRkwWYzuZu5)cLSoV;ZWe z7KC_~UyW+P=Dy=~1ptbMlI|5n=RjlP=q)Z!%|-hLJyKT1!61|wizqaZAd5%^09j(q z;AP4^1@1cx74hFM2rMol{xJz7()Oc2q=sR z#-tsc@6!)sLGCVu%R|V76Fa^L06`RJiWw8?hcSqd(2<0dIO+%S$_OMOerj;%%<->r z3a|>|hCqvR*4-Y$u0i@E!W02f<^urWL{nZo4*+uTvLPRKBN7s3i+eGwbv-!bco^R2 z_@S=iWg&D!RlG1#6&{dlQ14Y`;Yt<+u1HeE__ce8w@RXDAZ=GE$aLXI0AR?X8xau; zu%c_1Fb1W%O>$`fh)8GI5XC*MR5+I#*>wQ0CQ4G=sXY6|UnHR~(sayh*Db}w0RYM( zOB&Z-I2rET)Bw|m3y>Gh+EUFvjfO}ku48zD+q7)ECrCvMooT|~z;{3t@I z-0N8dVTs$Gtlo+V8J(y-@Ab$nA^}@Udb72qXC8b!vtvB7++JVQ+2*O9COZ;vF*&xF zi@#x2{OZfIM+Aw4VI)geeGo$EHpbW&wgHRccfSRyM*FWlAoI+(|MCrQd7EX)#gR>u z6VH!rdf?!J!=;O-8M4G3;>?`&bQw1mbU@GiDS=v`M>{# z>)7x4i4R@ZwlNxav-YIJlFXQ}lD_osZ zbX{-M?pM&TX>8ke(x6e3G-!;*{KqyMG`6v0+je8yYHWK4XMg96@8*nsyT;h-y;$>| zc;@fnF{vB z6r#1Y2vrw^KvUgF=z6|1RJR%j-VbnxpBUp&gGuH) z@jaUeq85rTNCnH5fr+W9a3i58g+{joMy0)LopLd4?V<0|XPrCe9GDnqj`_mNUaIWy z1Sp{mRV6LQOX8S{2W`~HHQtzxpDW}fY}`@8vd2D1I! zeLb^PF~0EekI*l93TM^zG{x^>mnqs8jQajp)8Q+PQmM|%{E%-sw;R~U6|kr98qFa1 zn{lG@-BN|M%jZLpA*eo+iXujN+W647qa4F>5GGX`sSdSkRpb|OVmxNAj*IngN`vqLO?~Dl zNkh|?Q06ylMmCeeb%D=-Z{)z-yDP7@Wu2e7%_}l_70e-ykIa_|35pDk*~X@f>F?+E zd58KQk>G9i1X~fN2yLb0sS`Gs`E-k{NKaAnG@l|x4qhx|mqk{id{F(3; z^I}Z`y17i5W-xkqAllr3#&MVDv!Xhg79BC(?Di#CE^j)aFoWZ%G|w{ z-t@I;22h2vS@u9S8vn&lie^g=7z1cQjsm%0!+F={-`=@vZsA6>oSyavPfP3CGP3wW z7F3av3S6cPkms(g{Ne^c-F&rV;cJvMnGo?4ByZE>?`}D5gXlBJMY^Aq6Hhs0Sd!h( zN3Tmqp{_UBB@gN-|uOg20JpGJf@csZc;<$_Sl}b%e0X)iuJD5jj zNgW`~FGPNM?zS;2l>L^)BMXURUw6v>Y`UJA^jQlwRg`vJ(uc2ytu4KS)f%vfRqnm= zjivX#|IXjLInDLjDq!JHU=(to+O|0cFz*(+EDI3HS}|b? z0y!dmE}bLR_lP07=zN%8sOJ-B-6JtAG7w3yP5Z76<|I^JH_|$Eqtb@IEj^x?F$x z&(_H2aWX^%yduK)dS#sbbS?s!wx%Vfmo7d)qYuTecS$>Q2FmGQUubN=1-kJCKwRC~(QNno?nZ3?`AC2?wLQ*NoaBN+M?pQ% zca7ikZuxJ_T}gIkV}t8N+udz7K^cJ)iIi$0Q@;SvGaZn4~%5jJWoE=F-_k?uxaYJF!Qcz3lIx7S+C2_s0< z&Tz>4SQGdOjYq`0{H>*M^ysvceKSp4D$)T)y~6gS1I-lN zPkzp@Bw?jW=h)mpA#)W2FP}Ze`p1!xK^cEbtf4ZN{9DHIi?TE4xw;hYZioKglhG)j znbJbm+9DRGqVU-JAt}d#DjpbdVDD%x;p9zfP-e~Y zeO@1!3$`XVhtQ7Xy{~*ozq%YRK*nCK;_VaS<$StIZ zkKwPcj%Dt+{@rX#ymm7{E4-yo*L4XJ@jU1|uJ(JhN=}oeoxAh|8wa0Vl^PF8g&S*1 zWPjY4i##}yYM9(<_<>s^QfRn!U5LP)F`cX#<8LQ+9~e?@qdkbb4fCyBX11fz>ly;L zQ3vZIL5c2_Q9r1*fA<5~U(xL*CV~ppbEc_M3@%0kwYX3Pg&Kc1OQzf zk>o!P7*BEG9UN(#pgh=glW-Ljj`)8j|I|rc-Oubj3|dzjI_i?uvytCzfuLz;oQHz>t}Iga$bC zyR_rLafNVNTJUm@4s27=)8OeKurK6+ffG_lK3CU0vbZ#a-2(t$Sb(5c@42X2x?1cc zDTz(kBY6K%4yH08UAw{jpZihS@8rPGd1tglF?DV4=HqM~q;Q#Z3{l$|CZ0WC;J*-! zlX>tr=F0QqcY(=RU2%enijUTGG-;p*4|P`)gPm#2%~rU~kt>ea0xwr+spN$?}cj6e^D(9bzwB z`w3)bxS7>JoV-}}`AF~9yr|OhbO;j+&cBmKOjG)+PL+;_Kf8&NNuhsBPzTc0$*dZB zyc+dbqXJkL)#KZK)<_r0Cl{_dw;HQD7}2_#(`_#i;)p|HJC8wz=nVsK>ia9=e%JYV z4f-IqWLtZ7#l^A0bc0iA#?53w{Qq=+jXBp+EE-nxTmKOr)VpzK)e-oj0FylHI_$Mf zv(YtpO&LHA)m$@~!#X04cWhz8L7nARRN7foj^3kZK8cFumVAKDj{Oq6JUnTH+quclk69nY^U{ELM0fB}LF-`B3p+hDB*}if6bohhXVQqK5MB;D`&z2D)Mv?a{RYW%!W`)t+pEHS!+2fPmW}lGA)T8gXxku zOAds}&pJkDKg-+q%<{G(5oo)z2$wH5Ki*sKQ@-k!PN3>#bm+W(ta!~q7FTcOE(OOn zjAMpF*Et#M9}3$&&3T(`^*rFE1-Evzibxj%fiq;(UZwR8*`pa58c-MpVGx=Tqzq zMq%>WZhB36ZQlA8XXdIX{5KaoR_d&;BhU~%*=5J`U^=_ek3Jo4N>MrmP3KQd0d+R%Npy0i=)NA*^(rhT^Vym3tV>2|E3dJC*LDA; zGDd{hM019J%56UUZ&y>rtzNUR&@7;zIorLp6b0H};Xc-eexmebG8#v*DFx@f7!Z|a zp#s?a|1)i!DX)Cw&Lf@3W+DXh#`YqFVf&S$bf=$)#CttEVLsi9V<(K| zKKGoG#0!mWvK6fZxq@iIFsJ^b3dIySbMvAs;oC@4tqEJ9Y-R}vp^(kq z7%cU8bG6I~OsD$($j}ric2JWYdh5M z#VeQHzTMucb+%dAf3s3?MTLz51`EsbH*rz-{o7)7S0)=gAV3tah1hz()o5GRl_Dbo zL8y{?Xel=HbKx`0Qfq+KBhOpCn^yi)$F)i?I=E>y%Wvhn;fT@=i~fy$%&uiw5&^1Z zyBP(?k<>>VesBoTys5|0LMcHQFad?DmyaSg(>F!TF5?mSn2yH}>zFINqsCehlBgcP zVfT$L4XKI&GVRm7-5-7>=)0=CJQ$X{!$rx6KzjT_k{GL;l=P(5__Hprr^{u9Uh; zbWysBpYKgE2cgIeE0ZujIO0+{e+rwp06Fs*?hKVN&~yV83l49Y9xcb&Fxz4^eMiQ% zTWbFy@hCWJWq5Wo_tmh+4Wy()1GWOA?9_y;T7vQcNQtqTTBV+DOy{5Ft5?N)iUEUL zXLq3Hh@8bFk?K#86e4n-rb}e)87+K!Wk-T8yWwzgXVD`^M^c`!+=8Fn$@(LTv!semskGJRN6i`##MN3H$upsP2AzIE~(b116X4-V;6$fv$)BEx*eR(p3xgH(n~>jn8dv;SUz|8|BX~%gnk)Pul>mW$x@=c}%-yZTETh+B zWo@?TTv0wG_jXpicl}Jq^uDloYGtp)}h9|!0ro;Xyik+!<{itoviwaTTABZEX zDcw@bY}0PH#gXd!ZA@a0w#@Y)vmZ*hoJhMoOe6Rs?D%)7_m266o4+MC25iPY>_q0T zSr74yHu?MMda(8v2TZOrj{V8$fbEbRoPoA&J}Sc+raIpCfAayqN+M0vP=ErothxJh zvq>F-ssj#fV+SduqOucFB{fD$v(nFepK9j9q7_ga_d^)ji{KB#%2?!8op8|WGWan< z<`QsM5C8KhP=R|vlTu~VRR6Cp|GAh(mx6*r(scby9X4SXT_ir^XbQ7+2 zmd}`&fcRob#?jGu!p_K{1d;QunH3D>fG~tU$d*p%yMM1C{1}#^vLZKDtzW6nbQ-v? zERs;MVe@Euvp>K60ge*EBNc!Jn$7H9JM~{sdY>xOGNy!{GcR3SHl{=20Nr-bm^qVCyZVP5}n>FPn~{FclsY&)#p33Rm|&c%KpA|Ib?Fs zp#(uClRsEtn|&JO;Z6|y`7eWmtot0xTH+O4_^eei8~jqYf&)pM-w_^9pu9(H9&7{+>;$PG3#g z4v^82NARsmQ^_O>_OSlM!@?j$E+oycx9-7XwxVtvNdVgeXP_dNyeIkr@P$x>rsqiH zm;HCKHdA;!ZAw;@?)&>Q{+@PR}PB9bOqFLGkG`et1Tz|JdWFTkG zQA&s)LV>me5ar7PhM5*ylhuPmcbEBJcD5kXsN=Hgn)cK)B*~DpM7?o|m(Nty(7-=& zre0Afayg~s5imv~w{t4;Y?F^{tyoymG+DTytwB0!%UW@4Y8PRO@OoUjS8V zOc8CCt5EQEnNuTXL&vfnHBJhL&*QP7e%SWe$nRIHdU;4s^m>3rIIhhqGmw)e`mq$X z*7A*2%7m-_ujpF&q#CVWv2m`!y}QFq)dvdDaaB9D;`$jF8+;~B%oeT0^AF02n{r5zcunCfNV8+NbBs+zgzcJPE!ByX~HF*LyGUP-E3iZxtTwS z_BEiDE4Um197Mjq=4*HE!4vb|dIf*i=KaBmRWN(l_Pc zB|obIa%ZBGEo{RK=`L(%z*YkOS%#i}_Cr!sThpA&I+(0F|3jUMPRRJ4{p!Be|HQ!Cu{L+F?TK4H;?*r5b1;Ir$_gBZ*xz3{64N{4(e) zOX?~0yN329ZTzKTbh_fahFN`7FzzTbXE>o{up#7P9HN9jz7R$DL{IZ|4B`#q%6 z%_Ei2ZGY=@(|aC4^|5X7yDQ&%WgK#gr@}9b6o|VFc|W!DxlCa7Zn9~XXBOgMztO1n zeufu0Yj@t?Db|1D0>+sqecx#zZ1U!!D#b5~o{#``M6^bos`@e(eJ;?HF=h@UGVRP9 zoiFd~3T%IsIULePK1AF|z$+v{Qesp$Jz#w=jH}Fi*}Lp&dKw+oK(XA(d_9|*l(go3 zdvDikar~HJ2mDL-Kl$S^+aDf`YBXnfZJH3CoLS9n2Ji8N{9HG+&W`Dgd&+7$?G(I; z?yuDI9Iy7p0i-y@m$a9HuqLE1Dd(5;ZF$lsr0R9(y{bYGA9OBrj?V-Zu&sTsPDlw_ z!_A5gGdRU4km@Q#qeai(FA9r{n5$Q*y03n9b5ll33BUwPz{0B)q%77lG6dl2mWP~1F|CT$YS2HQT z_>Mfdgxy$aT)9Zyu6-bK<;2rB5vwj4EfS-Qp3CGs3*yLIG@HE;LnteG^BG4{R*PbN z^9%AzS`#Ln1U!-bzo8COi!?qZXOvWXDrsF-mL&fDTr{u7=rGPTIZ~?-B7kBV*+eOn zDxa8xTVD36FEvcMXR_FVOIzB?_`V4l5F2JwPz~moWbY%&1h3pi=guofIZP{Ven#@` zvunmAosz6|^T>BItSFMve_-6Y&lcRZGK?pRoz4gx(~f()EB^4B{-x9rH@pc`YANL? z6-FWzB@LVGdU+EVF+_C zVa`{Hp%6t8b-wbrz}c<7pq|^cPfpl}* zxvD9XkPD&mUaiP;8a#TBo_I9$K0Hj5=~7pSgF<0kyywr8x>p3JxvtSiVMpGB8HodX zN*#fHBg#r%yCx8u{_x!_10M1e$V;&e<*&9tC#VW^OiEv5L$!1~r{{JP*8`xj%^(Z} z46W62(UWjqlmGZpj)stE-Myy~L)G8BIj#%#{au#l*ncXrb1z?^@I5zuS~=75*9)as zjWbR0kLzJ$+cu)OwG^u1<7>I4e+$1Edap9EE(7Ks-lQC6_DHEZ#nAKMiVN6xp)MXV*1OdAj<|^d?yU>wk~I%(Jy1 zS<}+`e^Q2c{mHEvr@3rmwmW$TJ75t z=)FcEx8q5^Ics@^YFLY*4SMiPfZ$U2uiMSDJi%tydY?gub!Rhr>il?;vP4D;#)T^g z?NwFz?Rm6+c*d;ds=v0_MOTo=^`>+v3-6K;H<2jg>!5uJ%rb!}^h}dyc zrx=j$c+9T(OPKJ!D{>SUc$u4s5On3*r}YqV=5K$X3wxFlKZ`B*(QlK znf6;iIv0htFrqyNb)}RGf9|}od0ey{aLPq z4YxI)qDOX_tph0vg|NwM{WYBbyk4_%U(rBLrq|hhF;V~gdT&sZvLI|8LVUj*rpn{Y zTCwII={X-}E1-v)CObNPLcDYj1qkS=vJ_Y`hZvar=ehQP&3zPvi>1vblYMHDriudy zR8`Y+nf~`J{*xvw0K!7+8>sjMgzi%=LIb>6pHk;7$W3m=>;ZdA-Uih;H13tLc0;I* zRH?s^))QI`b~f1sD!MXyAHugj7&t;RTif6U0U7pVVrmr)Wc++n_%J~C+rPJS5A&G2jxvwni;n!BO6*veM zE4qjQeEM$6e+QVp0*!ekDJQ+NvQuE0NGSi@yQ2o5xo*&*nR2;1Y1*0HqF!_ULmQHy z6jlDd-_G&Wc}uAmEDcg5iMe<}&EqHQOU%N}AiG!W_j^D0={#esAXos3xCaUlG>V1j zFu@@pEj!Ce5OP}cMq82KAZjs?tX$ujYPDNza54z5QB|x=FNXM2{zbm6uXJc9Cw9uP z)_03Fo}ouKz@UGi19!>`K>Ky_;B6?B%xQ>_q)y&CC7UG^+K%kGl?$jp^|N<=Z<}a4 zW*0gH2kyLBJXBoE`$uF%ED@BDwLKTn8x7@xQpu8iMY| z#5x{;#};y882G2E**@(#-lfT_=T`CkizaAPT?R?LFcnJA@ z?Y8>n0r8tf@wK5zWwd_mVZze0DDdfiiB9{WYty;qwR}}h;sQlxphs(6bi*IAL>^$t z2LoW0%deFS)SEH5H2VHVOrCKx(-Y~wf|H_JGH3eJj6joO8G#tXsjV=T&}`QIgU!OZ zW96Yj?z`0HooVr6YL(h)$oCkXvd)YvzCyE1Tc>K|sD~arr%5P(G%>ocd=sZ1UPYH| zJ^!R?H26jEnU_)sI-2Z#UXS(ZBE66L?zXB{McZ{5-77y1hVYS~0WRk9%x?6UL>S}a zrVATGGpBsj>#K{$NourkuS9-bQ)@+IX{(yloGMY&g3lIA`_|)0Ic8dcCsD1&`yK6r z>o|YNX*A~+Ha}3K3xx`cBGM7lpL1E?>>@p)7D4Z2v3Vmu!-m1N4NIMt)RmSeVHxK^ zuYGoJlQnt}=!!eqp30s5Bwh?AnI(#NGDbicLo0R9Y3nLA6}i>VO6F^!KyIqy5Ks_| zX!nTZ*Y>0bnQa}3$Y%$m?+$|D0+HaaVY|K7T;^1EvK%@dg3#^1p5zp^T2-9n_^q9W}-vTQ}L zAr2V5&sahUN|0yrf|LWGL!URotV)Rjre55B?W{jx0x31n!v7sZz;%3n@pNdN@6v1zfbl;WYf6F6%3CWyOaRMC(Z zHwJj3mv(F_*;RGy)bX@0_<&!;VG;D9Q6mta!KdPGJ#@Y<=;^_PfH}FS!R%8^ADEoA z${3<;eodgFd^{^;xhzX>-xaD#{KC)~;x(T|?2i@oI-$=He71l1hIkQ@5GbF&fj5ac*l~)n$IAceJ69$`_@H##J z`}yPidp9mr{EZ`n%i$G;MD*Twxqb3sbB(j6orcBxnrg8^=@J^A(LSO$uh@h?>;tOk zu;K#sGjFHcPAS=)Ygl6ct+E`NNl+Z5dGBs?V|We_2-k&if{bKq^Ds74nW9dLcy=TZ zfhRfQ$%3|jou7V^OETp(ew?*f(LVUM3Yz+!8cuYB{;b=&2%LY}HF|#OZu!a0?9^QK z(HScYF|b7|GY3;+j?8&*@(yF z4CDZR!v9M>+N!cIRI>ZtXLf!SC2WOc^2O&#V|t349wuXzCzOZqG|l0kcT zq>jc?hLW4*3h>-q0SNE_2nT(p?Vl+&O2NW!x>$(I1n=3Dh3ADdo;LbAw!V0*B%(}$1O0&g>}1N1!&8=oco~l_ z7RJTzf1)1qwn)Q(l9y0lTHVow_}(L4Imj^3Of|DHbXkbhSdPk^NOPyw-@a zpGCA^0!Iif^~CXaa<@B80;@|;sdYz+^*vH>>)z93$SIaGa4E7J@_!lfmTShCKE4Tl z{b~>iY(EWs3{g3^uqXA~CZIm*QP7S2LqQ>v*$FPDg%aImiX`yWl+S=TKu*Lwp>K=b zZrILiWeBFJb3E=|cF_jZ*ZaIY9%xq6SY|M4831V9Cv@lrrVkhS8jd2^vP+I4->nBh z=}tu;lyMayLhwbCD{ileanuPn2I#w-HrYOhp^hAHA5~j@2}=7bzzJ z<9h+oFu+)DP|ULKW<{sr_i_*fbp(j&x0pV9WA_lk+>30!t?0Pr9cDU#^ZBy9k46&_n`f!u58tWY}UEVCyR$BSKBe% zeBTs5btEFux z#Qx@zVQB~U5tVcqytH(cW&d$t#+Zc){diZyT0h&3vvSy>~Q!j zCE|Cajkm_1`HM&L;5Kgi^=c3!UAA8PZ-x8BbY_Bmwc`^+bpqk&)X>zDPj5-8?I*S) zOf4*W9q(!m@OaG$kJf7gL6ELV)A?#s#*{e>>vV%|*Sm<(>E6wXS-qNW#r;VR4`HQI zDFFPj;3BM4^{giyu#)e*<^8xh&VJS)Sa92L5J|?1ye43lN1HCJDQ6J??98GK0s5XLzeSHU94_LFQe-MkGK*;)3PolGtC} z!J{~%zrZnGcM(@3H>8@Sul}bG0Feu+i1NKa57q5%1_Bmq+ED7%f0;+bK#mcY ztCP)6;b$0t$#gl)_U<7qM>4=s`9D!ngk-|6|C-F$S8rVwyWGwt9QKqGpn5WiEn7!a zpO`g4&Gka=>vnjF@mWzaLF}9^1JkNQsO)(b$mbukloFhA5Me%rvjikfUWjUIP1G)$ z390>)AC%$g?#vaL-dP_?iw6we!>E>C0(qt(?Aqy)35!M;?Ib6^wnHwhzZp`NcH$C? z2L|CI4O;fSrmiq-(5Bs>qtd&scdmCG(QdXSf#fVfOc$*d+SnB$l@GJV>vWSB&!3Mk z=8!T{v=5|bYF{R4iyQIJFO_o9JHyR&L&x-E{ZFYt-&W(#CUN0JM^_7fexkhB>_X9^IIjn`=lR1v2rxJ)!abOeMgsLsh-tY-Xun7IUYzW zc^Fq`C8anpA%PoNHKPzay#+lYa472o51>MX(e&G~8SUQs-)wVR*K;7cW#MUqPK(Of_Kl#RYKRdQseb_Ww7U5wAQ zrbbD2Q|c@)YE?CbrQr9a#>?3M99|7___{7qEHKi9=V{#Jdk!5AGGx>;U<3u=87~Yl zd;I-m9@lK3QT<0DDo6L$=ux^f%^Iug`SRm^PUNlIYWV3>^VEkk z4J1VD-)L>2h8Ok;6>~L3hsVkU6`8J-n4*dhZ&j@|HyIp%S^nMECC6ks-iukH-;0Cu zh9rSuiTL!ZB&IE*UwKkOj-30ho)x->P1M+A=cUr>t@*neyu98edFqtbe9QG>?xCM> ztb64@zT_J-xo8U`b7ikyg3MzU5JjTFeEIdnUvXaylUa0W1g*-8R)pis2B1d~2azYC zWZON>xyhOyqQUk^6Q_(<$?($*XKCCtEr88maV|UtVnL^8Ku!;xeaT{anhsK|A`$Hd zb_2(mC-N9Pqcl#Z37j!DId$aMPy=OsYYWBy8SS94U%PIk4*M{qypk!j0o#(?Ok)-* z#S+LnTDtV^!i7Qoky`53n)eDV1$Y>FV26#cQ!V55D09!=Qy^zYmiM2u)lb!$2B-lF zWE8>d0i`~Pc-rBU{SgFoO#g?H_fqTK%?VQVNdUb_%|WwNaEVK z|9SDvyCio`YKRfnK9fz>epGWdbGGOU5PkXAS8z?bg5hcB;RidVw& zM+45N@Mqb8?MTGyzlOUYhhpItQ1dQlH9il+YEGH8UEU*PSadM{OlSf!lnD2JolzyHkV57rS-qtQD?VYdJI$G~&}6aBCF0%) z0LNYKM+I|!Y`k*v3;<8a02X%2*mtk_6N+?!0892s~l^L zm#?j%n!+Q4rxTkhE0n*5JI*O8uol5`&n<3uJce06cITgoYLG&rx`gu~x3Qo~VVC!xDHCMm z#kRz@2e<$OIXvwzyI>HbiZs-9CSiZNEH*tq5T0#I zC7-idr(Q+TzGV4zS4znNJy8mYyjdCZTZn(9sBn=W%fkipwSPW}QpN#)nlFsn(}1&Q_AO(`5)#*!DQgb-WVN$Rs*T@qvN zT4C4HuK5i)`XHN{t5FX4`%tqFh$-E*`1-uJAA6UVr5jbDQ2f#o46XBebO=1B%{6 z3W!Jf{7sAb5h65!WF1ZF|EmR9%n~*}Zm@m&Y%UM5DWiUO`AzjukD%R^~uiopU$p zCliw6v-Y9Ni;1YREXy{tH3gc4CL42lmccqel-&6;&p1GW3Q+}XbjQC8F4xlaJ#c)+ zI4n`w9w2k{sn!u<-xeOnea>YQX}Fb)ue30}h8eRd%QruV|CM|9UaH$1o)1-&5%p#U znP1B(D*4H91lieETz zPu)rnKEuLd6cp{Z-!7Gy z-IaA;Jk?mEljnUshjr&OAp!`X@W=13-QOl3g_H~mcHsbn6NcWF6s^lA!?A~iAafNi z4CMCZC;6XA*5AFZwY`pk0~8mX_L2C7S)1xT`a&EGieuL2?+jHULr=bV9=@sy z%2lFT_3^w7rMG^|`W{W*ulORF5xuc}vt;z~r4IW6;oitD$R_pr`UpjPkoDWgl%0O` z0P=oPHF2MQ?MUJFhN@b4GsfTWRkwUHJzUReO5A*aNG~de7Pxx%xH{e8% zo!d4nGm7ZrV#Qo_4};@kY#T81n4+QzvDO$E+w7m)1?<$}VyeJpC94(Q(#&TgTrf09 zq(nhs`S8Ujpm4j~SPMt6(U5Nq{T&qq;9{v-f$88h zGRgdenuC;Va5Q-OY_-K||0hJD6?4kPRfq9@+kU@&U<9?XwCP{)54QQVxv>x*0D=#4 zTqfkZuq`nDLgdDqa^{B2P#n~8YNAkHYCJIF^K=9bDo45pMd@Lu2CC~kQirAXvv2!D zM$xk(VZD`KBIr`@W%z@9F)MQfJWjBjq|T1awOTp|%fgvx0!YD8X)u-}40mFbuk z@Urzaxm-+_B63)amCL&w#gv$XMqI%b9@yacJIg$1e<^m{(~r)e$Yycvn&?Co)4-Bs zOM1=1P-tit56EIgAubG?I2p}1!S@BT4SX7mztcWbm##Je4m>Hf?Fuw0$GRWqRmO$B zXJrwF5@>y$eyBCEjk_(35sFowEjR%q?q>05)LVY(Xr?oul>+U{rk|k#S^{y+FGExB zM!wrr=GV`I{32S1%74(*!-R#@@QARZY?-5tHX#24AB5H;g{?!%)RybjwROInx^2y4 z>;{r^<(=}w&i(f3Gqc^MW+Wp_*2%pQ>dEKS`oBmeUa;`?pT1DvS(ck2_W5IY=qG(` zj)ujT8P0)~my=bKF?Wm_Hf=8Ey!3$N3(y8Vavo7>4}D29Ln4Bt&Q!xvoxjme7$1Yb zp*{Uhs%rx&{EhiO>-k&E*orsmdWRF)mfyhb%U3l-I0YjbD1Z`Hv=&daWOc68g@Yhs zfNdB|K4lh0IH5Uuoyc)PrBV1b5N%KbJ>$!Bi8Ty_Q!y@yHh@PtxBlE(nxMqm^9{>f zt~0jR)ti_q$S|qcg~pyans5v-aRg7P;iWfN(hX5<;*D_2kHGUi|Fo&?+d-SPL-9e%WP8y33X%}{ z_V^{Zj+08nq!CAk)Feok4G-M9YRV1cTh}EXqyIX9w8a}66*c0f4smeHo?mD8)L9FC zmX3p5yl);q1wzGrZzrq{={)MyG6)SdR=MSZ1uzypf{JCN?n(g`fyj(ua ztt_@h`k2~9*(lbKrne;33r*HJxdOL{&HS&cTyFnx?7~3OV7jti4~}!iwV4;Iq2N7V z#`j{skGqe@lg9^^3-6^BErNHP8FsV^Wy|NOOlbcCFKoa&nlhuArFFm@b&(xinUAOn zIg#>5)dNNF0IbWW)sX&&pI2!;{F!63s&Ifabz?`-VNUQM;2)cZBQidS$>_(3Z9^?w};SRjxZdLOgr*>AI{I3|Ar}P^Cx8@w+{T;-=cq0i`}<~ zN4<^czZH^`GJeGrwEI&r*fUlZf}IIJ3?qurg~@C>eah86eWrdxFc`X>6i3&8Zz7D_ zhNw|u^dG}u%c7%mQd@2a)kL9O*^@WuHWLO=tIScMcKu$llq{|Iy2PJ^uVlWe~`#Qk`g^FYt}yq%+s0kPGu7^-VkZg_}hA0=O^kEa1yXlE#)O=M29`h^rQ zkf3q;{`hTKHzhZ5ac*TpVh3RB}TaRoaMIx zf-Uk8!q2H$&DE5v>o*ffS1wxaIQFAY`e!?2B;ZM^)ZbqZdcB&YbaVZLy`Z6sGiT{Z z)_FL4VoN^1z=KvrD5lG>8)ks&Bl%xojtw~;2@%d4%-xBp>)w-i%4}8H4-J$lTdl>- zHt}EsyhJOJr@+-l4Uu=k4?}o6zYf;7^J5x7b;F*nFv&u>2*4R|KOV$|YCFCnJZ~?8 zOG}I#`AWX*dxaYb?#I(wMaO)yGAtNZS7 z=rvlE{ec7L=;gs;tXB;)hXW1FQo=jeN;8>8{bq%f_rP?usL1eJSlls^Dso$(1v0>) zx)np$1~y>-oc;CTpPYr9(wz8l%c9msG16Z&%!*^n_PMU@+BuxYPl&t|k4+8h9nH>_ zBx3^2>07Y=g=;Xqp~ijg&;Y&)Zp&7fEg+icF4rV)DlyQe5TUo@#FfOO2=iHR=9Aze z<8we^lZCRKM#6Am>AJB$;buRP zg}L>y*(_z4rD1?)%^^LD%-X?qgDjh$v%n`hpOeHstkN{p~PAFpnX3g|ozUoFIa?@14G6tpr zlXyv^w@W&c_!Ggs=ED@b1+e&$o_ojL`kD(2(2+X9Knq`*Qe$IcqEf;ouqiD$QC#V{ z_7CE}5s-Qs7*C^w(Kga3WZ7XBxgM(6(9RCD`Fvpot-Ku>HAsmr-N#p9J0$ieP;Qp8 zPi1TzRk-)lNYG{T&c7$-`kaagU59N=&};7=pqfqk-S2F@{hE0Bo8r5xh&Rx4p)(ex zYI}8Ld`sHV95d%9sG;%JpLAT2E?}6 zY=E5d(N$8UgJDPsZcUEGS(=ewnv(V#BMSz(jPz{uVg27~Yo}UNtmN-9{L%UKme~-n zF(u`qzX>#NWRIu$@Mf>sFNhU)X$rii34KM`^nk!8u4x}EKORG(FGFh(P90-TCm_ni zQin?XDY$XLpXJaP!YDOd-ccl4AlpploZ~*LNPelG1HzvS0>KK1sdafoyTzSZ) zgF{mj;x^!{3JqriD`9J+a38o z0O3F$zk@%MxLn;2%o}@~Ft)oSnO&Yomxv*GzvDi^68wcPl7wMOfx*Kfwbz<=9|JnF6zqH+BrHkNLDSf5k0KmnDlOIegA_2H_%oTv6 z792`vFL#no7&9Rvw$4Sbr=j}^>%H0&;sGFnJBhkX%61Umr2`?Yo=OGX(KMV#UPv3#wjuE@cOzz?Lp9}80wrC0YHF8 z5nS#)uc5;_%^I31r3hI|$PLHOfAGc$0Qkh@)Ns*vldH>9xQ03=c!uJk1nL8&Ov0>4 zhGAG^EJzuH0D$8pLn|(7Zsc4J!^UK4{@t*TN!iny2WYFOz%r=1N!7h;x|lcpa~dtA z)DZ<|0H80IWnyU(Lf2R&~_i1?OQ`SSEr%iH|p6JOn<*8a$l&&{tlYpcG}mD#9v?XV`Jt0vuoo^ZUjH@#sD#FMyEdq1QEiiAxFX@M)#%X0X7u#o zgt;O);4`3)*jIFFta?Vls!nx-7?1Zo{Xm-3!??ZB-i{JX(yDS`0<$+pRg{9V3nF`u zve8#IUfiv{ZO-M^g*k6_TjM2*ZfG`HGKP;H2LOnJZMCGec)oA&v zI11%KS~G#}TGa>YZMX8)71c+q#PPeA-79|5-Kgs6gN2BBj0VN+aoU0_E9F>4?o!oL z0RYf5u+!&Dy}wl=yX>-n{>ef=^_BdopJ-UcEv?%~LOlCkrhd~j zvTW$2bL`_gUoZPmfB?b0rVxJkmzBbBC^&lO%l%_dcJFC^-v>18uBw2VQnbn3;Dc(< zK>+a(@V%1khZBzvy%;r!sK z@h5&Bc3M1k(nPl?j+ls;xasht>-91ek(|i@&fQu45CP&q!=5`Bp)BS?FpTxZ7~Sj! zYX`FwA+|yeidL3BdWewE<9tn{mYz1=VJqr}4^rr#5)E?o^Q zWp~1?EiGG{dLvUgVx;<#I9T-WQ7{i9MTXdkIslN)q?(OZFOSGDje{H=vv&}zf*lsV z{O$Iy|5R_meNU>67o<9HpmlZth^1_B>6vG7rW(PonL zLEwh(A5LlQx%YDeM<;a}R?3Tu)#_rcR|mDaSSu9s0AQu8R$Q(g_!aE?fox(38$Rb_tT>ln^Fu0AMgLL=hl` zMal`UhcHxgsf(JQ)z2NzdCEYcU}DQr!Y}Al8;08!kN-X zepsgfQ1zlh@p;Aj?nY@d01&ZO#9C=>!cx{*?MSh)PX~KY3o}@p(({0`s4He{(pb{pa02E{>7=|AJ*Ku5iOmosmk%=gQoxh15ia-l^(M> zVbu1XJVt|rDh9@C!d%C{k~WX+$=7(q!-f~%5eO8l4p<|{^2Z-wdzR4=Xaq-GFd4b#%@9R|IF0G5RtZ)_CK&XTBlG&j24J#HCH6!HAW z06=VWZeUNrH$Fg9H{{1Y*?VZI#EUrq#DJ9zyakU~%d9sw=gx)9+nK_?DkWwwLSq0R z;-R77-tP+l-Gp1>^154MVPmib&Ty24_I3EXuZqup;n;))Epo%T$23gihI#h$HPzVa z$rJm;$g-z@e&I(ceti?}Y0_^^8-?NU(6b!?IP^^Ctv?$WIJRM#Q@g5VEAc)U|Akzg zvtKX|bUBlKKq~jHQm31#V*dyLq&A*m?IogUzyEvui(kU2{K2=h2SJod-%%15YV~4% zuVVTa{JHC$s{!*cA~)^pleuFjU;ORfOBmDb9xEZ(6P3&l<~jgyqwS8Si@I3^osEanj)k0U1*x4OQ!Vm{!V#ctkE+rg63;sLY+ zum*o(vOuSr-|j8=`>_g**<56Qi1habe{R5Bl9jUBF4!p)qH-4f|Lnbalw8++-}!s@ z-nYNntGcT91v>!{AVoqTMTwLsQ;TgmrZToXUgRZCoJ$u+F#Y%?=pW>cXgxpZgc|;5}#A2PgU2e zSGTI(yYJrb{r$c_yLkQB$9{#e=v?{rXbYo@hLg0zQZAdZgZi%9o$nFbb;I8x8Um~& z&9}$dV4u5KCdc6r&I+h^Qv3EbT=13vH$0Tm>r~ zi}w9VGiXGJT=@F`cHl!llR0!s@ydller9^MP*@m3S1Y%yaEC%vsI;b0yQRb|NI-x@H{}z_3zOWNE%?J6;gc9SsY3Pt4Hr>3B@* zieMT5Bnc5QgxMj^!$xzg`9M$OnMVOYQ!|FX=EMU7K-73?B)MP=cez3<%Et_I6Pd3W z+^hy~*Zr%laJ=)+jByHtoK2dlOekXlLI8*&+li(@tlMc)=4D47vND61$ONwp-rReb z>^$H3_%$!Q;vLbfb<^#aQ*Q=y6}!@KIOp@#X3Go8bw^W3({%!|Cyp_imYrlDC^`!w z`>_m3`QJ+U-^fMZJb<1*uD+3ue$d$%AtfH`C&W~4Oxd4&+)YT1JF{L^!F|?4CRV~a zP-prt{lzc;n^%AH-#zuupM2mWZo?5#NEX9S7KC+9eW!-d_SSeg4;c@cr2~MWE8sEsYc? z^d{ZugCy!P6&0g3wwELTIP#I&1|oZV8(0kM1^_c171r00-($4h=QrPsEo_E}urguj zuH)`ar7Pdf+yRkY0!iFj0aYi~`#hK(0O)2#)c`=#weEqz_HBdBIF0xxe^_!uMD77^ zhf=lC-@mjZT`rg6dlM>K^U7DN@3fs&xL|Y6%yRjAXWvy)3iH-NWX1VX^EMq{Ij1s@ z+P5we9X5Fkg7!a?QrNH3Ckw{e-sIWdWJ*^SKh(<01Qp_HCCbE~PHNfPY0SL^lJHg{ z*^zW_3_=3#wNovbAEcDj?Kj($6KL`c04NMU$r)`$n^zQ9iTXSLVr2Z>a9e@x>FsW7 z)}1@=ACQE5WzgkVlu0&D9~5+9InC#wbW3vIeh+3}4i~(}#At{dzA*0Ulc7fzinJ%6 zf^*vV@uyfSPIj-H?;hb(-&RaL(N&+iK(Kb;))FCW9{*(~We6Z?1T5+LVZ48a|!(>B3rHLOtTRq-^^^MC&bYy3`25g_WXaaFeYcrOtV%Xt9Sr`#E6&|zV$H?c-US`LcaVu?8T}K1hp=uYjwH3N zuYC5o!@WP%Y)y}R>-X5?EeU9pvB}F{`~DyNmm<2Q6YyGfVr?QmwuSZ7m%ptrjF1vh zx8;p*{F3{;A1E$Ma+HyBY<;`!yFz?%ovG}#h@#7}xU!dt&+kL7R4+DyZ5v6+NEt{T zSkHzYVIoaW!T7rQa~lx0N|v_nHJY_-HF?j}^xFXv!bH(Imhm^fhX3Gq5Q_kS9Xo+f zp6zU-Eb6dTFM4yX@%-FRLNilM`zrw;(`aILSM(W!u1 zwQGA<0rlPHjpa36T9JLNdX3Wv0ABo)|K{dPU)b4qbt1hKnl=~it>VTxO-f->3Lnnt z9ep1F@|N~+A@Oh_(T-vSfN9(3_yawO!+YAEeZrcC>}%3?Y2W)6-7b+39pw!G@NJKp zl6opCmE-wCM!XvUg3Tg}k%V>GIQND=czV>0?wK*k9zlT1Bqkvejr2lXTW%Ty0MhRG z`rJ``&ZZ(Ux2VU&5FAh;g{9S!@oggbg7~@Xd)^Cbej|VQ3C<`XCP;YGwFfSEg~IC1 zRJ1gjjlvtt1Nre!{oP+9)6$$r0H6`jfrLuKwvo#=0sx5=N9?eK8v>%3 zIwWI*3W_Au@&d-Akk4_{5X{0zjzUAAB7lgZCLy})GG($TGU+I45@N<e4h@P%Q4@7ffv#va*j(Bd|@xq>rrK^fei06m8 zri6S!C*sn&zA*qmWTU+XAW2dX-UWYZAs7nBd(*vT4|4#%L|iVY6GfJe1AybshT$!# zA6@!JKgWG!Vi{WgaVc2%-LH?ZjK28$(c!z}sU;zd$$~Nx4Ggf8 zrzCknYhX0&lsrvnija^Uu=aTyF)`Z;CRVi&-WBfLJJ)AtAh<)2ci#P!v5LU-;}3qc^hY zB*we1gibgUv#rS$3vvN>2dp84<;vKr6PLc;ck;(~@YYyxtY{TC1OT6jKI2ZvNm%e+ zLuN?sveeUAy;l_`;wIw5G1V2g8AJf!Qx@=K!IGQ7d$~+SJB)qnORWL~lJGuXnvKa; z-s;s;!-a#7V_BPNO@%Dj{AKGPVqyNvOBl&OS-IH8OsL_d%az? z051i8b}d-DcJQeEW^-T5(mXAl6{fe#EF{ZRW+9Ncl+v8<&yfYrypC(uDvlyAMp zX3U|oCjkIKk|j4<%Tz}cQ{~>67PP98gc91YijywAS#jTN7bXoOo{Z@rt^B445vnZ5 z4Gl{M7onlaLU50+o!?!mw=`Ao)*HQxtJbr@Mj3D`K$5a}hh!6`jFS>zf(#*e-F+wG zwiozVYD<1DlO|+>HAN*-y8SBGn->I`FP@j>STb?Mv`&2Wb?JZk;#6-A|HEf{f9KDO z@z@an9C(wK`^|?lPA56b3F%uUQc*spnTIxRp-S?uA95iae__7Sm5yo3RxjR^`JvmG zc=OLBz-=p=y8(+DFFcrTwbKr$5a%j{#Xh<`319_2ohBsgN?A$E&}7Mv1cM5N>0NJ` zEXRv@DI=pTvae}mkB}0x1`MNMe(w!sYF=>Ka;Bnaqx#zSSq?&qW%Qe7@4r3&#n1f7 zFKcS=7eD(0OCOqPdegQ`5IU8tMSjtF?7`Kq)e>uD0n=bhS0&dk`X>*;;+j(s)`I9B zaD}_i9pm9c{hoM|bSo=A0fj z`LM?1Wh<$i)01&H(WMee0)T+>d9QzWquLo`Gt;w-vG)B+xjHjFTdOtN|GC5LtmyJvbt?w|1l?AWhfWNQ7`m0ytsG~x?yp-&xlK~bsh|VEqaUhM^Oj)t z_nTu(8xw&p$Mo~>GCyRC@vjsRW2{oC&P>l%D%HDk{NFw;4mSdriXadG0ICFon%b{h zIwrdnfsR~X@`D22*DG6XyvSKJ9|1+S0HCLP6T5#d_>BNkcxix*B-D%++*b0II@`Rl ze0vmEaIaFeqnoA1oFoY>DO~V&`BNFEDMh*lPBgQ+akG_1z2!-u0RR)B&q{4+er1EW zLMhj@fQvAvEsPOeE;{P@#z=rQ>Ez-g82~tU47rCOtrbpC(P)K}xnx2{=|x2t+m2Ij zdRX)>HXsZM4SwRYvNrPEMftz~qX_`$%_vWvNcN=ANVoCYbz9Tg*{>{YzBY_rIhjLb zaUwBo`{(L?EcS7ktUENsfCxc_Ogso_rQwun&8qGA;a2Vc84JC7Y5euC*mGld#X6=# z*nI6|Y_gMvcDX`Z+DB!1?cpGWVvAmAM6Y%jE5!pwQ>Utu( zre%|IkKzFUG(Uc(@!{i5XOiAK8QFImq^a3RPChqvPS)~2bnutI_}L%)`iK6lg1e_} zH=w*Xt{v5{&|nGx1f!C?^8D4z)KkComE7=So&QvdGg@X#0gRl7fhyYay{4uBc+(x* zwNG}RdyUEF`1#W7ce@pvz!^>J9gBAEIyT);1uE}#D(?1H+6-bokU71X$bMV%;c)(3 zD!q1|4KLcthHt$q@X!4`QSN*Z7r;bOfABpBTmV=htgng8qamGrtk-v;hHa2knp z3cmN9{p`~2IDu{~^cbGo)U-Wm>S*n1Yn>3QnpfhSn(4v*2Y+Pr!dHV}6A5xnR1gbg z=Y(kRyRY8%DfnQTcBJ-dFqk!Vts1uHc&fV4|J!y8VVo~?weRoNTWpb?iR^8-VE2lL z3;?KPqb{Po@(~76`~GU>SC_3UPI;|`Y;tcyb9Nakgyx=o`Vk(9sypw!?@eO>Ac>KL zi2H$)QqpQWKTk)%1#8+ZjBvitg%NJv@#BBD2!)VHd@PivMV!VyG9^7#Y=Z!t`H}rdDi>|LLcmmb;aZmKn?iw82HdIA_AalA)nP zj0=XwDPQTcq01SSSbj)>i~|6RGLl3?UIhRR4^Y2PA{4*}01lpvEP))#n~Gx1coqN% z5Z!W(ty8D_miF;}MiqgI03hQ8rJBb^W9l%H zXoclAG6CuDG7ycbs~f44ep6Ez!4GT4SJqG?$|3?#`CA^_5Q&OC&e zb>$W>ZlEXK)z=`}B8T$lUn!RvtNUl$FmP+HY);#WflG9S4B3- z6?F$c)7a}@IB@vvnom{iIW6~)97}F@pIZkldUxL8sQI?CFNP0_;e*>-NfN?Dd?=>I zbv`JovC-sw%1ONO zuji|;G}|}79Jww2(rDN0Tk~>luJUp-b}BjZPONy%Oy3d5@OzHpbxYA%s(0=19fZZ$ z>&f2Z&E?@}H(pM4A8oB?8WVXqmJRQKX^bS^0azNecU!rPzK8wfJppGJOKa(-H-{Yl}q{l!B{e7#^UW;ESbu7<%q1tEOTOf^6u~zfeVbg>bo{QauJ--;Vo8yas%|OjZd+WcU0lyTiwR~&cDLS>=sq&`+J6GhbAxBL zJ01{%+ibzDC9Wz7a`#7lHE$|o>2)7-fQa#=(NCc6?}naGuQk${l-+2WmRYOTGMN;{ zSW#rVVOx7sz;-oA!jgn`EV6f4?jge%tJUiDT0M*+RaFo|?aVDz)iAl!a=bzG-q_%| zzx=HzY{jw%TxwUnbyb*8m`A7ABwjck`n!_8$2m z&gfY4<_2zZ89m#yjtT)knbp~!uk5NiFHa*H(A#Da!lC%V$_kaozGExfh1BPN?Ns4&1 z6>piiYUxA+fGBDf!#!EcZ`2zC1f$F_jB=?gNm8yW=X;*#dZuM=cW;bSofzZa{yz|w zQ+*HU+$nG2;u#1SRwX7RDiKwEs2NZIC|Fvl`3k@FYC@t%9+Sd%EVIvb=0e(_iz~pA zND?A}{BA%U2~t>+skr6z(^c6I7hEAs9dV&7c&$smgi@FdgBnuma1jE&-oD}^Rs$#i zKtQ=<8bH_WM3AJkqvHum0Cw9`hrmk_Jpcg5<3yh5)WG!ExP$_L7yvNg_)#-vs$Q_v zrwGAZLBml`PE~8 zv0ESN-bE&sY4-k)FaG;4T>i>`edafRG->!~lh{0xt0cJLc*Tm;n# z>WS=oun6k%@cEskYY5J|2+QX*n_HtbXU17Lk*i+xqSr7LJd`jCx+L$JrTATBtTF0Q z2llp39soed!m-MW0MKppYWiT!x2oR4_t|!90Y?SsN$Z1om0+n}cdpm{tuBGLLxeEK zs;0K@Pq|lBxi4S~a|tfQWhXuz7z44|vH02*hHQ!t{p!L1EUnAezEVmPLAy^z`C_xI z7O$D-zKXh!IfIYfubs0tj7r@{*NvV-MC1=T=l`PX*i)5u)zk8*K@_opY0RB*j8RdG z(xr+`3RaG04>P{sJzMu0LZtPKeoNC60FcZs1S2a(yfHnd=?67qZ9%iIyK7=i)tUN5y;J#czS(_<`5vUpbh5;7SDpz_jhFDRJ7l=w_i`b17i#m zj4{Rp-z}qz+X-V|O(&|oZa3Po$xXY}v|Gtk!gD=UQ^PP&)Vq@rQl5BS(n!zI9~!a_ z-l)C1-luk5FOyAI%2g|7xvrZpbYYBRajQ5tpG+kHKv#^p@>sh2Bx4Z(Y+SO%R1;>w z@BWNGZQmE!0RS`v5?L7fhAadCmm%K^P)(IuOBx-zH~m6oq)^=Jg!GO12>{4-pQ_hK z-TG)UIoxbas~Au1y4fgLa-gXGV8|Gx( z4nYuRGMP%H0sxe<_VJ&|W{Pt=Ie;S`0>a6jBlFi^8hqq407VNyYYQuPU2DtVeiS&a zqbM#DfFwo1@sKSD^gf+W$Ghzon9@-j&WUBC2^#q-K|wpL32(IKAi_gLt}$rHMDf`) z01)VL0>H8j03o~+M7Q)lZZwDFDsT+IJa*HPk4m`VEpEaELzB}gY5dI}9r!>0Y(i6{ z(PHrTKQnN+Te~>k_}y<8fB2Dff7f7NDqF8#TDDgfHeVZ-6NSv9mn#$i0?OYg>Bll3 zRlS!wy0eNhvt_$G8z&e8Kq_Xa3Te7N!`BsjN|rStcoY)0;VhCe@8A=elr-Yu_f}~AgqWsYklNOG z2-zQg(DTcov-WBB$)0nc>^XPa&3~_yh1BcBUar1pvs}=1aJ>sf#$hN!^tdxPDQU3g-9U3V!ZK?(6LDdF-$;@68RE-3nQ7 zrYd=*O)a^(;5EOpPjvQ#ywF-Zin=lugm*ut={>-3h@Pw(}+bRde(F1)NXL-zPb7~P&%{t5(VF<=j- z$gzxm!wx4JJ{JN2oRD2A*_Qy)x;&IHQVP761b3Afdt?-|9&_$AxYG(&hEpR#jFjBa z370P5RWGV~5rC@V2lFwaD^2QE=7Z7pOmaOu$Focm0Ax(s1~Ro;y)PdIaEl9*P07Vt zZlammKy7a`kc`bvo@*xhx;|Kc^|`c>j1E3tH8by>-+eFWJ>J}Sg9DG%CeO!T|C8>H z$Ie4Pw$T7g0_jc^1{Aj}oTRiaA!LB}yUxydfH6pHje&H2Xt?&;i_8C$NTnxlynE>6 z={0vH%d+Fl5A+?qeD%ukzh(P97dS0wXo4y`Njl?!7XP{NBPx=0RU#Y9{?uY ziD>;xyo?uwW6Hw~HhW)@LP)`ieBox;-z8)Z0BW2Qf}4|$){UEXD;Bq!c1v47@@7Ai zwvJRh4gis7=ekc3Bt0~Icx?20BdOfgMibNl0Ju_Dd*h$FS!s20(E`Q;F9Z)vB^g%} zcCcz*yBvcH-;bXUC5UnY4XNICz4SxSm%@mNQw# z8UiKY6YZCAXee^T!Qj#=56GbMDAC_t@BuOy?2Yl9$3s_Q_2%5pojejtVRYD8^ zkR;^qk3!)Qb+CD~oeGgK;waqYBWwj#@4w;>dC~SRnZ0o>OMgJ=EwMbBmetj4>T55c zh(-By6g8X9^lB%f?^TX|b^OdLsgb^P zhG+)daa)h~9+xW@wm7XyYS}aS$2Q*%006MO5L+Px-+^gNb?o_=f|IGjn$ONv%bCFs zZg-#C0%2LYc#a=`@Xi<$wIkW(x88))4^dg()RTRSV8OGBG>|k@qBKLw7ENP3%4b`_ zXd`f$B+05mFuwQwms;RAyz=JT?KVuXhF7+|>pCiTC#0m-g(Rut+XDbhh_qrhvn8nNxC`EShm@>^S3-QsHUnDsdFR#)X!}<75QThS z@{p-uC#Aef*Neq0KL`jWci1|HAkt?IqX9pjOXtTvJ z-O$rA6FWOvi}>Ourb3d+OwC&(xPb`49A^gdJ@E7yreFbg5P<6;(~O8jTq7)a5VXA~cZH*1t=BybGrzw#IKj{cb}i zF1Ix~PelbN005Tsu9VhTr?81e@-m780FlUQ&kzB^JwA*g#(C&^#f(9TWL%oSU;07i zpM0)QgOa8inw%jFpx%6Et2q89Q{tA8vcd6rG@@ z961szgw5BGL=+h}UEk8xn4yIcYk2{}2mnIXlq91WZoagOkur1fy8zJhz|QLr>^dpg zn+6F0=3LZ|lr^i5ZXH$czZo8L!Vmz6B%RDgm=-}&0f0+72NeJ)tZ`ve{FlOIzdJ&T zX%sNlA)wyLgZ^;Aai-R@wRtjg<;l#I^_ukCmp|RPe_Y)Whzzv(A)vNsZ|<&Ea0FWb3K zu;kH1TqVhR&5d^`RTe^Ycwp=h@z<7b%%E(S7Ez&USP$R zLip!P70Wbs_bskfuWj8U#iP!-@*58q&Yt_r|4Gr44?OkvwjR=+R2P1cvg@OywJpz? zy=FLmVAh?^>vc>HPuA(iY7qbgl#kXpKyN;Fz>pd6*&wP_-TC%Nj56AGV?YQY2`O0Z zEA&szO%8SsX|ispT`Ea6BeU2HsJqbfWc5QOXBRTyJ0iOm(pssM%H?$Bwo2Krre1F( zlL^oDG)?nd&oFcVP!;9QTgSAe@KpEl&VOViuW8lS4!Q>b-OwxLYF9p2sZ@(|^QxvM zlL-J&v6j><01E)3&}(g21T~<3v8Df;|9SWizJA{{1^_@q0I;Z@$2HarU4|xRW;o{n zfHBTw(lgVunN0c)G=?!&uQvieX#cnvW5!rqT;OG{r8rv}R*Emgoh5w5}wS884idNrI4}(OLum)3#TzPU&)E&62qx=hRS`W#Eu0 zSPj`O&yRv2OlML6U|MFiQp*>*N~LmfZXRKj%WYDlYdyH&0q2R4)0MGvhoAff@bR$1 zE^inskH81O0H9)YG#Mc8jf?fQPc+i@b!j=1knbmm0D#7IP0>Tbf}qh1ZnlDPm1Hz2 zXBa`SR(D+uE<|*t{Oz*|O+6llLY2Cf8@nepG3@{VOgjOXk9J8fVUZLp!JtB61^^^5 zF;P8!4gg#_-nOX$07@kxt=kJw%Df=dRi(C8zE~95A<-2z2>`g|siQOKp^tv^t!w|_ z*=|B7fan(|!Y}<`_E$cc@6W2g^UZmH#@QnWG&NIhS=VR$vj_Vd%^SXReOR7PCC}ch z2LRxN^zEv3Ec-F+PbMwBTzBd%H)$COOLP5DCJ<0)2II|O4q$VmYK)cXi{CKQeFI0I zMd%iLaZ~P>kk$(BLO8Z1CIJQjpyq`KQiHy;^ERj?Jw+d=c?;*;$!rugUfAMnVEJHN zkrM{a8gE_;5A@M=+!;)@nq#Z&^0&zQ)1Mt7C1&)0d*an!`OdHZ))T+>b4NdOqZQV? zqEE}GvWM9EA{WLQsoLC7314@tQ=7WdtksO(t$M$%Afm2dH2(Zs-l-!|QoBnQdH2~N zlg;sjnv5%n_QQFvRPl<9u-06Rk}!yw)pK1&?|Q~B2NOr8niI>F)@rjZ>(cSU@e`S~ z^QP}ENaf%G0EG1tPbThmbMATSTQiK>uE>rsA+Np!zDGauv7I%{sg7&M*M7&Q=c-0( zXS>}xoJH+Ys0foimD-7-qnp?G$YB833z5A;+q%6gMUG|kS_oqex8o`fs|5GF!uPHv zdxwg(yQs5w2wB*+lmURan(B$?g&45|y4=QHXeSh0THV@0cOC%dW{d4RZ6ZcZ1qa?n zft&&3Q%s!+x-Fd5($&&89RM&t94|le1U!Gu_Jf2Fuqd)?>0K63?sL~+;+An>Tv?g} z6J#*B`{%{og>qMx;%h#oTZ#F}cNIOB%;x(K9&Oh)+yrSM+MR#y7ZAXMmMwG#J09Cwx-6K?;7#$cVGR&;Devh<2_qc%oB*UU2p@+U63`{U*C4O z(c2BZHLt8ET}e`Xp~#2?{Fb8#L5qVm?+9n{P${o6?VGWJEb+;{X5`uD^PC zvn_I45-(l+*F4)b+l|$*1o&TtKZF_4<=?Wj}70NF`Y7}~5Yu-!` zHdr&Dn|N!)OzO1my}0bXLnfw#NcG2_YL^nJan3ncr(>BjciK&;X}8uaA>g^*Z62SL zQ_Vt7nHJ~fRaHr*l9h5Llg*4(o=+#tdNpn;M8ychg^5}_in^H8t7-iMRWAg9xt2ei z`p`t>|69FhE;yxLX1m`r6>_8cy&;)pG0d-Z9atLLx^7X^Qi_t4XUgUa=j=~DPP)1U z&)Ll}pU(SqUL_ezIuy|`g4vGz4FIb}_BN(2W#aK#D*(LIBjDC|k7u5`R0#oK+6hSF zLkE#9Nl1uzEpS5G5a1AXic$su%iqOi*Eaaf6v~=%kO~@z(KR=4y`mq~bS*0k-KaLC z^3<0#dClbvTR zWk8Y;=S?@-Nr3R}&}xn6%|k^e001BL0PIj_C&Zj1XNvYhUw<-(qQ(o`-wihOtR~F( zU%tQ$jhnjb&V|was#)7ZCYGwCBuqZsfA(w7{$D4P1C7=wD2HQe*SodvF==Fj*CK?q zOE-8=Pn0jXwRy!biMo`bSG#Y=_=rcW1ps8GM3Z-7x%fW2f*m&AslMF| zZ6u+rmh+hBM6FKIZG)I;Et@k7S#|T(W{qf3xYYAovi4y2Bl{|heK~PiCMW;^RGte| zQ1$y#`_6f7{*|o+vm3qn89746dV)KWq=F&ebAr1`V$FS)i){xrJE(Pn+~eBu%k>BVW}NU? z@~LapH6~803H-nittxC@=ZXsv2qpHY>VK2caZz|ins#VwS2$qrzc3z(GJ%EJ5)j#a)#Q6N=yGA_o z;1f@-8SQ?L;(0+flTeg}#ek|^GxS|PZQ6DLpyWmU`?B{+>Dd+Q|D*PefO#JCLl$t(nP3{x3#r4cD6uHAFHrNs+O0iA zJDa~lKvyoZnhNPMr671`qO!Ip@D^F^6%z$vS0Oh)w?_O{Tur8|Gc{kz$jFr4kXFmB zn`?&IuEujcQ(O4uxL}5%yLPkb?rq1o0d>C)0DtwnKY8f!zteN*aSgA%y4KU%4FEIK zv+X;pu~hTsYhReW_~#%0TVEM(+}zlB2P167=x_Y<-L%xdr!g0cph`(A3~B)2a{z!? z|1LXRZH3iEZWl`kRCZ+@D3i_1OwVSr833S^EnmOMcSXRVy39_n?v<1J8@=&I+vOi7 z8}v}_$)bI3wO2b6VLM1NA!{2rx$lfkkN=(FMGmrh)!vf;py+1MT35(Qn>{W&URjhh z1I7u~Zv?FaD%6=2uF4-G65w`7y9f_OXf}+d!amFYnNLW70YE||9viZoV*;2YOjGTW zR781K#eK6=;Iy-c6<`t)jAN!!U)Fnb5#rW&2NO?^H#`6sZ+MW1=e&}DfJqB8E1#|r zx4v9+Ukm2bvd>Bzgf?>?I_?ZY3V-4l#vGhcgb2o3rAd1;O2&}gApd`VyV9RFe)h?s zbE9*A{CxQzJlma(`K{K%$_YXWLNaZ>a5{D3hS$@+>fEdcH9dPkn;}AqD2gbR6_3KY zMMYL)=v`wk{|Nx(4tgz&nT> zM@X@iC#Dwr+Q{85E(6cP|cj{l*v)v0%q@;sMyb@WO-OyK_Rz^T?NwyJ~L zUAq10AY(Mjr2#-f(rxeTK6i+T=4e|^;)2h63%y@ViD&h$F1-+6CkSOt5=x43h7m>* zR*`aQV0(({oriWD+8hS@hMV4Jea@9$ulrjvv(9Nd@|Sq{3;;lQ%OuM8A^<=Hl+CJ` z61Hxjy%W@}{MuoOyNmSB1*uWvXSQldzg^m%1LDXj@xTY}n8?1I<%0X1CuUn-M{wst zv;}t+qwbj6V<-u74+!o#t8YCsmb*?n$i3vu3}rqwR`&p)5pCm|i=hIr`I)F<6fmAV znviqZnJ-WaAW3peR0C4^L>6Cl3cE#=anZf&YP}ih9YBWpA@R{Azqi3(0$DZ2r zDo~W)GLKswn<)u`kj2IJs`$Leh=knT?gcJZ%F2%(VP|_1;(!8D3To zsl%v!1M`XDL<&%M$Z*}K&X$uQOob#hqF{!gRcyREQMui^->XG--}7Zv0RUN5e9!OX zcF0)iO+HffV>fFd0MtAHKmb`wDGbG(qJ4f-wcT~SWOAv}n4+k4*UJ~WWO7R(guOF} zUqL6EbNrnz^&fpQrFKm=$9J$Ff)u;*E|OIM@HRA!0RVzz0C@C6buZdqIT?40B!=Zh zP+f*X!2m$%zRQXPLTIT3F2;ruZYwf6Z%EgrmGLCakVF-|KWG4S7uuSIqesp8G8NQ*)RQ|@@s#6D66B1636QCY|L}K*?8^tA>JNe06>VaCV z+NofyN!^ybP<4%IvG2@whz)hM8}hzD0*}^ME2##JnC1WUtL3R z4;UY-dt-G^#b`Kb=1i~v_O0Mv(6U#tvLCEt)`Lkxl5Vz#d5wta#9XtA;BwQL_QMvh zno7SDZuHHo%RJo8OmyIHW~Tph!@syVDR}dumnQc`_6?Z45Ig+DZdMZGREj*T#rOOo zCHO5dtx0t$J#pS+S8XawLYMK$%==numrwxnKn%YqP*Y;DkVaQtf2q(vLKGDM66vn- z%NI_Zd18zEp^IlB4L#*gzQ{lK3wzYyonbdy`L3lB;+0Be*Mr$F&AesBcNpMVY)$F1 zo+JGL;8e%A=pK_=6k}^%7$N=Mts}Bre4llvEzQTK%uy;@_9Yxh9pQXQck7R30Hy_F zb$@QIe!JRwhc&C7I*x0a1_0=q>Nsv&XOF8%Lx1c>&4*R?Q>~D;LN%p7k&id)&h@&# z6a{Z7@z%2RGD>N=yi!cWcx4+_nAq$c5eskBul67R^tBg%&$VasM%T{D!0L)oX;ov{ zA;uz)ZsMt+V&lpcJ=e`7`My8<0vM_KyOUvm7w18Zb6C`%JM3;G^#&M*(X?9&7V67O z2&lVY9kVm)UU?ujV+Xl*gqai48zDB8GXtr)iP{AK;DS&2LCjo;)z&fb?vY7xGiaDf z;^ja3M~BY-_3Y6{6|cNJI6ZClDDo))sQJ9z?G!A{^Iw>77V5#4s7PbT5vdpf04S1l zKm`Df|GQuNRX_4MG=Sw1LXw0TQ~?B~E@xC$t=P9;WrO{4A{RxD0Ea`9!!20=h>r+n z3bb-8D6w7{%XV;Ob+kL@kqNV^aj+3k0B8g>n>>J{$u;BRw}{wsXCwsUg2~v({PDNw zv4ahF;^d(9fy0>~lz#4`L*IXA`cGf3{*#{=a>MX{{nEr}(Z4wA*q(B*H~+7{GEF3D zIH&kwl~UK_6Y0co+2a7f0p?s}CUS(o9rCTF2`h5KFbb1zeLZsR4?Oc*g0V1)s3=F= z1^^kGDoFwWWvuDB4DLcF$XGL!5BQV;K;DY;aC_!=QsSeR$_u|sZ(K`9FEF-=Q`ia& zJ#RoP^QG@{OJhmP^@@H_hTY4e{q4)2u1Ds<*qzT6xN{(+n0hzC`d|Cn-#OEL>OVaF zo0v8w61(D`n0Jsxd?s2Ew?mZIK$7-LhjZt_R0c`G2-Cm|f>6_8zE2|>OC&el0{}Fd zj;3ick+kBBG&LzsJhZRY`=@71hYl~f23@~)wZFHp!S>tbt@7&>-ImN<_p4aK8dtvi zyFcmLGd)M2-t-H^f>$D`Jv&b6nu+$~)n~iJ;fPq-D1>UF(hyQ1sBevk)SNC22S%r*y1g#iI-3 z1D~>*PdF61;zu*)NYXf{j6VWE2rT@i0I^Eyr z#`1H!_-n3!F*Y|_R8h)SZj3QN4?)vy=If^8u3DWgkG~5H0?)md2dN+eQ zHC=ODw^6qdMu|k+ZZzYGI6?>$Y&UGv+69HA*=#L8cvd`IlZHQ^H)+<&w?ffQ=Z+X} zMdnZ{TlZ!FK!DVxnbGmX0Kl2wh<4wieS_nF$52k=s^v^y_RFLFCq7~OHGkRZt`fE4 zXB$5C7MHbirc`QO?rb1Hv^egOxzE8w(!k=35dYlge_m1NnFt6{5sE#x;*{A}N2N40AGa(h=oFcjYGOXh55wCCzIp9y6s zqazw^9)Z#p*#RKgeYEe`XLKXY85L5i8MeLMA>wwxTY;|_s>avR*fM)%IW8E`uB6wOY`N2vZSHsf+m}E6O8L-= z+u7XO=JIEA*WcSByG$%y&CWK92{ZFd?;}5Pq-z1F^0?(5rM>~WX*<7H)KS7l{oW@UC&SJ&sfQ|GCME2FR z1^0eiE!w6j%dLpA%TAM+i6t+*)Cj9F$cm;&x0m1^2YxlKdX9$(=9DX{(r7dRAd^Xl zVHAduzL6q_I|&oKpymKTkrv!&hHb1JYgUYPgSSQsOuTqCjrfLoE93tImp)EL%` zVa=;4vc~V~?APPcOXVNhEn%-ID0_}4%d(;_OICu5oYd>f`&ScYZM58d;P?6`i3W88kvlPV^5~0+s2Tt{xZp>SZVd$-vQ!ExR z#*IePb=+3VaUGX)u`S~A)&y%eYBu}}tJQWcpcSbj+1|Q8MTHiD*Ok!qiKE5dvbGosN5TvIN7Es@@s;dD}8u;T1KLk#j!1+To>0$z)nAL;`xidc0T6!WhpnG{q-(T8 zqg1?brgeP6`OP06nJxRXEvynfTJ?5O>&R}sXIkFVt{1xCh83@SB-3ZmGwY&%@(300jV3k-DXmp}&dQukAo~ z>%?@_m8Y46SI}H%qgMJ~9sA~1cK42>UGnr;ee$=z_d5XawNHJ%!!98UX0&qT|f~KoC|{IcXd@&Mbo+8gRTBfbD6M65sft z`~LeN+p{fOyUSa^uJrC(y$iPhU0R+x=M%M%U5-|e6rHp9wlb96o}8{8KXK`Jp|qjU z6^uxi-MfW%iSt?MM}O?v(3mx8HR^2(p{&RNpz0<7G-r>dGFu9T-#$2_n8*NtpZpFS zIw&Qwu@E<@i6cyiq(Hm;>7ze-TRGX+L~v#Uvvn9S%?8D@UNqSV_+`Pp>c>^Tff4FW zYPU~-`#^5=(!_bkb@PSX(qh?4SYZ(63pqkaB4IBrZm1@~j^a}nN!1qZ0O+t4h}h{H zuA&fSf9_DsC5&SJ=DJT9AsM4wLlJ(I?et|~oRmIHf%gJ&JE&pK3-bmWa+lvQ_k32K` z)S5|R+r|3PD4yrrnJdLy`%6Q|F42Oze4Gc<@@)O@<5jV2^Uis2&UdEvaOf+$(Y4Lc zoEvl{-kYGu7B)PGay2`h9@CDFDUCk9H2FJmQ^B?L!jg54#_w9TI64^QYvFK|N*!iww7-gvdUTn1ysGI~t2 z>o=bHgCG6MKOIc={K=#Lr|*{?Z>p_>BYkXNzW#~f#g7h_4SFV~8_LH-mjlyRepvwA z3l`jm53pQHk_~ND1n14bc*K(yiej_@BhOv#a?3Fl$qA#{_(=c|i~#^{R#sxc?{Ym_ z)FskJf8z-?-DCCLc)2%&i7Y8Pq)XQu_DEQ7y1QVJ*H+l$C?=QXp|E}|mF!=0bsC2x zF|gUa+8XV9ex6L@*WchoCX%ues=fsfCNe_!;@Opr-wvwu1`(VkaJ<_>AMLU3EhRh6 zE0zu}#CY9*Znp9L8F$<#E+)6U9U+no0E7@#Q`?oSZd+RFhPrtfH4gwXrYUWWtK6C* zI{?&X)YYoGnYoSBz}pSKDQ$0JOq&Njv*Uef1-FEF(=6mJ&rDAj^V@Tq z(B`%B%iE{|yHS%y{+{=Lw&%dd&%gA=>EqvCzlAj*RwWDoREQAn%z{!wsSz3PNG2Xe z1nDNPn_Cn3lT|TKm!d>r6AK zgu90F?`sFIZ(+B$u-3*|aOQhzJ0%i@Z))^!tI!w#&@kw-ZGZO#97KZp zjk<_Vy*-TBw~)!&v4SyWDwpeEK^g%3*qwH3q}H;&_tK!1S9j(bvh8re-Dr78K$6Tp zOMJCOZq$UpnshgM!-q+le+*Tjo+9%C$F z#RP;Plc%wJZIC(>e!!*}Q~|(Ndu=TpQ5FOM(h>luQnpaIcQMNR;a5(!{O})tWRRv1 zV;({n1%BqqCyYv^-aQBa$PKNfi_A8;sS}hGJ^-z=d|D_n0BFZA7;l^xyGFyP1^{Vo zkBs%DT7;x_2{mHq1x?Fo$1g~k&LE>VTNjwEMMGUkQUS{ZOCpZAp|P|L2r(YYu^>Xh zO-KLXi{aQ{`_pPqKHE1`8r@SkHRa6J{C{~kVJ4Knd}jV#W0`@XEJ*42gwoT|D@|P@ z>3kS90WjwQjwX6Cg(lV8(+U_DWuGraS)q++=752l^m084)99Fd`D;#ja_?jRoD=G= zD${X2WI3UtlBtw5DTffD{H;^uv9_E+pHO8vzOccy6#M>Tm1S?UArX^rcttsBnw?01 zRIWQ8IPCCh`&{2;V_;3qVmVn3!i1_Xc;(-E@RxpS4Q@B6~9Xb!l^vM3_h` z8tXbIVkJ7pY1ZN}&`lEn8r7W&0l7)Q)W#&M0(r zdBxH~u$WMjH1ZW9vCT&Ww4LnuyMKo&Wih;Keb?S?jSwd0MIHC0jI^$WjQe!?XsiUd zS0llRdJ6;G7yN}V_7zoOF{Lp@1czayC~~vek|gOSb7QVedtaRef5X)kqIBrP4cgt# z;Yn~MW;d8Ss1W6W(j)EXl~A-|)((mh01CmBuia$NpRq83Y~Ph{8j(e|&&LSeZR4*+ z)rFONTjq~Ru*Ag`8@?`CW0}3}=MxT{_piPVD;RZJZ_7`*T?hy;EH`b5bY^bif?+Lt zJUQdl#rb?k*E*}$o6TarP^s4PmWBSyzZdsCd~GF?TgBp1ZD4S4<>jS|7fQw4c5Qsp zot$$fujeA%0$i||M;Rqk9C#OvJ=Mr23d8FZw-I zTVcQ9HdjZe-?Qs}YV6a@0sxF;`Gut)tiO81!e+48@Gm&Qc_%n8K_jL0Ixz(RCPc+Y zy(zO9EW#$kop(B`oeA2X7?flc01`@aym7S^eSI=UzG!x0Ogz>^So-fzEk61{f-;)c zGck|bfjI-&(LecC<;m9@CoYAiZtpJT|K`iu@NV~pAv0UUbC<(^IAe@4LZm2+WJPW@ z9Z8aIGB@VhwD;9n@SEM5N|X|@jTer2_l|hM{Onl)DIoSO9zxqfg!)@dE39-Uv$a40 z06&J59{O?1XJNjhL!DYeAYOT zkjjauPg%@36Jjh$O}2Ju2lxjrDPO{J za%hiFrYZA7Iv>e(KdFYuk7Gvw6~zvz-lAPaRY@UCRFqRROO+@{OqMOv>?A}3fVeB~ zr%$|aOcXd?#c;mk1Aq)bc+r5Q~z zsBB|7&~*^%U|VNTYtlw^c8nD%@$j*VPK5vfRl+02#6|+^0YKAox?TVPKq%@+JJCW+ zuba;Q?b$;cj8?xYv3(&(=sHW0+j{oE=E16xvGk6=Jonw7{qDc0N3{?2J#sKRVn7&# z<<;7^W)7ceEcfXLjYSr1w7#yQ*hZ!^KlFfLboJl|Wr0L=Ok^B{vX%;?#!Y@RW!WM` zLqP88?031%K^O-SDOj@URy|p-6J6m{mI)di#V-rthw&Y_-ktE5j(eOqy5&Hawbk!k4-t_j71@J^GDu5XV0Kr`!@9*TZxN_dwbEY zeQ#rteHBD-6E9axRV8J0fV)q5JHXvz2+67?p|`qOLA(}M+SRM-^+rCQ3xc58Xi1Wk zNZ2=N>AE)UeRUT6`s*r0$*T7)#@Q7IdMpSMm)2ipC^ec;QUDOgbUF}R0Of)SApqF* z53EyBa($j+T>Ue=+rYn-pdEJIB0wNsTYXk7CDCPex1XPH#vZ-)grgqw9bF0)0GOZz zsQ@6!ir;GZo+rynb#Vp&2F4CZ@_KXQmMXQRZORfx5|XM_F|zwM>2fSAl}kN6y1Hx$ zpP9O77@B&ci_*q9R(@@>>D4!c3(;fu3Bij)k0c70yBy-W1yLf9+7a!#EN7KF^J13P za}IOeO$L};k9E@6*P+#N`nx_{_80(|iWG*gZZ=FjpdJ@e|&a_boP3^ zv8sA!E1S!#uI+h~{hw>o-dAVAZ+2_D3{#3Ex#@WQ*-KuNW^cX74m(rxbK9Y;B}u() z(YeD;*Zm1DxL}^PXOBqQNYM(a&Zz4Pbem_jx2vJnkA7?J%rm_QA7Ahr^m4b>R7f*Q ztX^0pSd)pZNTrmaVM*5us*=*wjH)ITC4sTbIbGJ-5#5#03lcIzKDXu@3t*g4S+M{> zo-M0L2h*f9ShJHXfDz&=xS-nHGP}+%u;2gs#i641>z~?vC~AaJJqYVj-0*|NFsemSBaT~| zno(uL^QPrQ?mvHT3IL9rYCPPj{geH2cfT3OWtL4S>8>T5`&VB)kC1iG$UqQQW7>jf z;wrTr0Nj`vX1~g&B%;f*rP&$H&bZ#}`sQDP%(SsjAtuIHxzf`@7|EI}2lTBldSkU` z(MJG~)Kn#2yPD_Z+p0GLLnwG?Y-CgQF<=b_`yuyxzf zw#a_8;WEjzF$Vw^V@%fgLOzr~xB9U=Id_MN?6PFpMt76PkN@p2J~8?H|8n2Y|N1>Y z8-!KYpX1kzhlScbWnTb5T34+2m5tla+wwO6fZ%VQWFROD6v<9}_eD%OFXiH!o5(54 zR^p|zh(;toa93x)%k7L1TtO(GN+pt3GL@WigNz|zPC>Wez+p%v0AL+I)LmA{>e+6) z&r*^hZwLKdxh~0Ad8p$(Ti7NhGJNez^r82yUlfjz3Y3k+1B;eQix(IiKKjR zHq=%-&=rCcilY!!A&N>=f+QI$D-T1q4kYi%o5eV$Cz||BlR6PwM_XTwm5Z(w+3#|P zp<;)>Ih?)6>P@K`00=pps;!X}!~~3F#Ldrxd|QJMTant0RA%ntY2S5vM)vd!jjS)S z`+lfuW)Q}ybP5w$jO^w#z8#97#&KM!HT!#)L)CZ`j!#Z+qnZ6^^^JP4&D9G4fC`#c zQo3w_SS~q!@~QtIVWcO!*F36%NYkwV002R^aeIYeY$HXzR1IsvdEB)?#1$@Id6Zakt-EnJ--AT zw?g{*IsZrQ$xPJFQ66_D`kpx&?kU+l9g0KAODF1M=|V`I2OeM;P(XuimqFiLy_4Gs zdv$Hko7{M{TFYe9gb-Pg>$SR_ugEoEJ>cL@T{{2hzryrMX%W>wISmVmeAyDm_d~|~BeOSl( zzxdQ{)AAOVj{MR`cYXdl3;*@|(b*aA@%z&68#8LnV=={;D>`DPa>$KnNcj@%vtc>W z+mw4G=xos%7f}$D1r@rU1&p|+M%@K2Uzr%<-?xV`-w!IB#}ecyyvZuAN=cbygQ!Bq zn%-*0-*oDUqU8SVm!}3hjEi&Q*@W`=;pAX3&#H5tTaUxY3zl-ZeG?V(|9t(zKmX+L zu}if-`0C8Betgej`BeZG#SMsmFd~_X*7waJaT&#y<+4qv*B>;#$4@pQ-5<#$L z6)d92mMoi^n$@sH!$49s0H9$202m`pktojqY_WOR6cR812>{|7r6?-){ij<=H(LHa zEQ{>U@r}HTX>`i6t(`a#>>Z-ib=*0)CYxwY(nOkb=R1?xqYXEP;BYd#k+tp^R*IeO zmQz_R{d0SN{3k~~ig?hjcY5veF3SJ$D;bX>0Qg@Yoae1gOfSVqX--~18rIXrtNz4! z`s-Q{h>9Aj>y(V0w!aZvVX*`p7Z424n7 zsHEulTVLgmeezcC5~>pzyxZz}fNBrH-qc&TVHU3$>jEPso)XG7(6T4OKF9JmMkCjaV(_S9xV(E>!Ja zMJ75d58G%MVHv52>jKHL6vy;vjaCABy%6@h+_oUtx|J-Y;8-9xzCpK~i#K)r6r%Je zhT6|3+<47*7a$fKoZDO^*c}MM5rr~FmLh4p?s-r%t{x<7v;xm{001Hv>t@2TB?-5@ zaG~r2s#oN$q=FP$dJKH?-pq}HL z0tGC|_3HT4@ozlv=|4yoMz1}#=4ESF&5vTNzXeUnt>XT|gEvzXwH<4|Q=-X8;`w4*6KO?l*mE&$Y>NSBSyWba=+xm0O30pR{Ub}Es1C3_F{Km6-;27Y4}0CI!(DSDE{0i&UAFPA+y^}YW@e&w^DQc<_9r&HexhTjAo<~fA1(p}0=blWdAm68O90RaX>U@aQ5gVu)NdPx8&9_H z2N?Ims18U(2J%e^<37rH;lsS(PA}M{qkKd%Tr?q{WltKtXwvjP#0l?n1 zr%RF0V~10R2LSQuO6{o2Yd-OVuxyzf6BYdr{`S&OysLA69_{MPe*M+OJwpju)cECw zmh(7{E4r8``cOL#yX^ChbdLhfGf#g0;&XqM={%Us4oZ?vh$=~jBHN0R)YP;>5Z+wN}$Vlx9qPT5rM}XaU6U9ZhjI4Lec`^XBLfV_O=yhU7)Z~Ll zE9T0rS64zCR8EK9`Hj4Vp%)b;2>{Vhcc8_tH@A_=#4N^wBU_UHe$F|VF~2j@*k{{G zMY^7={f+}$M)#7}{LSb7{qH{iNB0!=52btdrTfBgF{Z6G51=erq4r=}YwpUp2MT@{ zK2F)j?Fm>{bFcmF?+C#YT|?J8);W*BGWAZYDiOmMygw@RW7e&wiKN989Ew zM&f3x#)KcU=~fUkKI_C8+tz?$BIECWJ3esmR`2H9hPlacgd_rbb8c>|ctEjC0CZ38 z@D?_OFh-alOgOu-zfY2hAFO?cyztx~?7!#nHUCtrPB(>F8hQT~c5j2czVz~V^Fl!V zHN82M$9~+xNJ)EIQQIwS|_?4;Cx@2bc`+PLmi1JM;`IN8e zLl*$8nAHPX4tV=9@3T3VO*#CM%g#6B36D27>|t+%5khxE*l#tpX-!LPU4gwfr;H}# z9!u5O{Tgy#XM8UFwJ7 z@$wr1+o|>|WI;Jt>b81?;2UHb905UWrja8Qi%M?JL-lRSwH+ z^HTDbZR{(I^u4RbZRWEjhBOG-k`OnzJDMqE9Ofl>+juPI&!XAYqFnvv@}zWDa9$10H98O zPP6h#w(D!pFBQ{D)rk&_sB_H;0LYsir%z$aB0u*2#6x=vPrX+C@kjbzK2`qu^OFbm z=3YP7aO$|DfLABgB-GSUey=Ip&9HtmpKFIg#u?+Q)808_tFz!Y9vx#7C@8WHw*B>I z!m<7f)mfw{a^jAip|b5*iru2!?HMPXc2stkeZY}`F!nXV*uF8IumC`kjErWcAgEAr zduGUJvXRs?#r&|Kp@J1>{+xU6Ia*&xc8*#Yg7KFtr=BvcRH0|DT^Ms?qUU#ajeR0p zvdm&{s%uxOXH2!T2mwM8LWumzXFsJ&14}g*Aux3j@i$#-FjB55c`9P+G9Js4ju4h- zmh@UE6?!y1r)fD=NtopbB{P5!lCXbp)MHD{*2S1NOT`Dj^1T0zm#hE7`#U~%Z+9(> zPEPnfHM6!@(d;ml%^9uwSX|vZ0qe!ftiYP8e%7mQ9oX3=UF?Cl2ZXp^rl^p9~sh z9@124RFVu92B)9+FXw;wr?V%%-*ezmL?k^`RE=!dTB?k{lHIk>)Y2G901&czKyS8T z*a(Q#S56AUX&a`lo#3h1_aCj8D}n3>va#krL*os_+8BD#T#6IlKN9TjkD|JFqrmzV z1V`VPtBl&lv4)#bq;WSKu+*pKTb6>7%6bzm?*Jspw2hu;W=?(T@BUejRr>r#e)n*G z#19s)ieg`ls&~)8ebde5o0-0Zf`Vfke@BdE=CYaN-!2WlU(ICLT7BG@`f{oWvWzem zLae#WMv!HT_x7@MLhwi;o16J{mphfI*2H-8{CMj^#a}9!ows^-04_VGgXtM?s)b@s zmeuK&&jm0crkj4!OxiNU2M$V#em6H}gPb~kB%R7DsvNma->yAbHM^4SyIF|5T>5>3 zMd4Pep{~YRI4e14I(zr8xyredPp5}IwsYa^uP?p4HzmSC%o8+&EiUU#z>9Taja*+>Ml3;kB<7J9cezuwfkF z(@$kP$F@Gp(2|KRVHHD4!QH0R7TghntIC=paboq^E*Qm}UI2iQ!p#e_i6+aBKMEJPm>e{!@v2;>rGc28daWp zt=W~AhVu5;Us(Fs{e90Kuk7j3B(7`HqNJ+vGXZ(p*>i6yK{G+d)$tL7PQok_O*xjdg6%rXOXRE1@ z1zhma{Qf`tc4f~{F{bsKDTlB_I=iN8tJB__jn?Wc_zgzKU_^=p8G42UAknyylV_=W zJ0!Eejp$4rTyP}-PzeTc)(PshYOP*tFvgiAwK(UrWy%`HGI2cP*tpcum(`?d=-(z8 zGMc1WYAUH`^Jd9X60uXH85#-z03ZNKL_t)UKk`>|C%!*_`YCVrgz)N_Tu*1u9vP!V zVW8*GW4YnOY9hrX<9rp$UKla1#V06r(?9hGk^Z%!moY0qhPs@>?wWo)ygLy?)<6u?DlB< z>iJOhw2tn6jAc#BXj)EHQdp9TdKf~+jTr}+bQw1K$L@VpQ6vCXpFUX`f4MmJeo4_; z9M)%!XL}9}zUwoZm5r$r)0UCz$o1bpf9eO3TgwcN(MW4JJ|fkaZ%#x zIgPXx_Hj2%>14tQAIYZfXg@nKjgE3GB{j2X*avfaf9>9%X%{=?{JJ+Ps*=4(50<^< zHnJ0>k0s@g(&f@XX)7JmM!gs=#pdr00NLnatm9y z%bmxW`pIfgj#wxWrOWEM@d`T(CK6}VoxR9`nmvOEW5UAjq(1A!ZT)V}@oddZYRmVQ zw?ky=?T?~q<>?8}Y2-`Yb~>}=?O-C|xjFpolN&Dzrz+C5miC2X|Fy59&q}TxTyylb zZw-IoH+E=Z>5;`3tHFBn3s(rJ#}p;|o=+kxDKL=$u9DgjCQ7S;=4M1X3jpsxk^Krn zsK9ax8ceDQT}MK+E=OSqfOa=&qaXr^- z{|f;5ba5~>Tw_CX&TZ-!c5BMQSu5N34*pKAV*ZSUF=TqSIW%wnjAf)~vb6Q@KsjLJ zt+*cXn8S+T-f2iZmYh*AVC=?1CtN{Gx}?UO0SJW11I2f>SHI}QweY$(1zezB`>xLZ zCImzRqN~coB8&`8HBH0*^FK8Phm@kFTT19ha|`8N!^15%n4O=uj9Z*_5XW&41jUZ! z0rEKX=jIpkx$QBtFZzoY8)t9Q&b$#K9?rS5N!3=dh7fKK+t+4Kgl@%5b*}DI7z(-6 z2m!#2XkW@8cXUrLt!5$~G^55w7T#LP(>2l6(RM08&OlpER9{UqSnN%AG(%YcM2t&P zUd5Ho)>ge9ZM9v~HCd4{LhXrV8?VoqG{-Q;3I>Ov#ZX|3zwy$%DvO$0zHWfxB|*bd{Z-_CIs~;8Q1NPR>-GJu}bZK-2MXmu4#X>`XY^r3ciP zrOxpg@7bgE6PLm#Ua5cVeZ8|2)zJ>K6ZS!}`S5OQPgmjFFIS&@tyOKv_YQWaHS^d6 zuhjTGBWSicaWltc=Zbl*PJ6#L3w|S8kP#GRp{r?PSaDZj!mWAqHtjFnwxo>VT7Utd zWNS;USDTF%#yFErM`09&k)$aLu3Pt;X@y|T)Go}J&mZFh1I0|SPUH1M%XbbLE0$uV zj6&Wl>7gHhExd3$bv5usY+=s;%of% z8z<(l4Zj>kwuzoTIqot_`iqJ4bN;Ir-Jg7<`^dSa|M++3x^v_Qry3lK-n_|ps9u;( ze)CzL&vRSvFeO3kn2VV4R!HYOqIKNAYwW|_hu+h*|3ivy3r?{_vIF;6r9MuW7tF_T zi}8?B&$2q_PCljCx#IA{Dl!aBaoEJQB`$Xe7A;uzXf0p>P>ZD=!$U}t>_Za9vZVOx z{Zq{t03?JCrj|As$PPd(vrAEui1Dbu!_O+NH@n##+h^M;ogB=VNkuxCF^ihA&$fwt z$M$k0$+XOlFP{45|M;EXIFvm!obBz>jWvs%UPWZQYpS{2FC0v%+4$Kg-cUbj1z9CFAQS9kgbu(Eg z-i%m)Fvc^}kV^ARX5&ZxDoZpN>{wzOo*}{U224L zKEsk`C}dltlLdeA=Ih8^j}>>kWm}eQIgZ;^Dh(A!N0Seoar9<*%bL;1Cl_Bx=lg@} zjaTRidg1w0&wlp~Hb-onGf!uR9;!>~Ha8X*UP$-d)4ci3dQ`Lp_j15IE@TX*giRTj zbTXWfGa4C54Rl+5hNOi&REfG08dHgQExhi#OBnT-aFwQfmo<@yj)@E-ds!hFvnCgz ztWw=TXnI9P$TWP+}pFh)4$ZePOf3*DS_9n(K#%k4i zy;i4;D~i10J2p&%0j&nLw$$D(i+bjn&!76i9|=ygJ@+Dn+g%GHc#D&EdbpveN$C#n z>E-moMrxwod{)c~DJ@rz@{9`r$m)LG-=4_ax<56P>#g_*00PQ7lf7Ov)xOJ+iLx!j z1LdVkCYz~NYnE*RAltTDj$_>Dx9J5L1GzdTiQNRtS(E@4JAoAjh*tPFaLHhcS->m-1VR-D+$BS4jizHLr5oHuo#AwC~i*sUL_8f zV!p(X!v&E{m-e)8_WP1C3NHdcoq;bP65w)ZGSuLh{Oad^#@6zROe#$mu*+dteZxqR zkQVTZZCzWEOcloB7*Uu@YkL%u^yxx7za@&BVN?skO8XJTO-en^V@Zm=c$$m$@Swn$ z#k{2%#naR7fqp|*wTP<6CiuxIw70+H`O6wBV{sr4wNpxZQo4a?-SMM{>bgj2BN1;h zev9uC-E1H&NG%O51Xsg2j z5c8%JE}P0F=)#cTunC|3<`I?@RauU4!MKq1zIobtv4NMO>=G-@U#`jApHh+g{6;p1 zv68U*2+;sQC~~OKEr{#@FyjYL&9}}pf|bWv$6tzD-Lid$S=upH486D%g#Yx3-~Q@_ zzyG~=|N3M754GHh>qW7zMl(l#@1?=BRr74soNgMg%)}YFno&19gIEAySvCLwVGID* z(a;6wu^8Pg6j_ptC~j?VX2WVQBIaVOy>Su`AGoWt-vt1sS`&-@T>E*4)s@lKD5!O= zb?$WKST!hPESvHU#tmU2VIl|9GaTq@k-ZHOyu(%-k>En?FC?vnDR*Krva;Gn>+#$L zG{d~f+j1hSkS{{MxWUkvHVBC*zS7kzpZQKlQp)7}*Ian~{0ny9yA#FTH?yB>vRRS6 zO~m7Vt4CmhzxpLKKL8=td(xIvo+z$o1t?!K(>*?s@2Ec87I3R_ zbz1K^u+5!$PSNzyMBm}fSu55jV4@cCDVNRpJQPC4pc1T-CuuGQ~3WbszM2yAihO>#c5#J95BKiDs z$!_0kRjQ3lDzPma--*PSMx%u=&SukL7=>Y^>ze0yfRNxqQ5DML)lz$Y;32;?Kk>#_ z%L^y-{fA}QT$b7;r9EMY3ej!c`I*jLX7{4E5MAHkwJljOE0mIlmOKIgrXoer8{6eN z2Y{M4F_0Op1snis0q;!@B{U;#9-=T%N(|`)d2vI4u#`kb?`c2Z_{M`E06?0qQOW>; zs;L0b7TMR2agX@af;ZWUn;k$dJoCpr!;k10`wQQmFC_JkKb(K&RJGNJ1Q9Cm14H(y zY3KP9&Bq_ifAB!Ykj)c6{Ezc*{P&TApLk~SiA8rVVqw*FExQH7ytA1s^HMQi< z&ow72?&9u_0ubqmSL%u-f9s{`dv}{dz0DJ|uXPs8j~&|kl@~5_=XK2J|M&C~5Ev*X zmz=q6IPTlc&4kh<2+B%ARNUg?&==x%yy+UBi*yF_r6bb@Bc96eh^f>U?B`^m9VkkyNguR7%Va5 za}fz(0PQ{OP9JJVFKK-}=G?03;0QK%cq0TU)&t7g0hXH6H+= z5yuK+62TZFOX&iDnC+;VyitOnJQvg+80vcW?slj}^u*Ed#~#Y|6wGte-e|XVcvt@Q zi?e>j5A<7+-tzrf%j!3@Z0x*}dj7?|Klu;3l7$nCjgWExsQFRNH^;IcFyq&QweGG> zqXYoG_kKc=6A%Cuv=J@W7nM-bR(ky~0-zK&nryxWLVs#cX4h+r9011a%K|GEg3{&R zgDT;)IJpsny(F2YUP?Uiax~N(4s{1%WzA2$5qd1OQ`Kj~E80P)suP(5+)0K4qG@SK zN=QToXr#3C4?go378VWX(ndZe#>yNU`o!=e0Hk$gkh~H`8>s`l24Pgwl+=aiz7#fV zdmjCtf^hA#7E_1Do+KLppsDGN2kx&%7DX)c&Y z-AYi_h_*j>PeR%L(4n@-4gg9=Q6mxntcdKA+W>H(6%)BWY<8buwkm6i+p-oXp6MJK z1v#a^jk|6QE(1UkZ>YM-+Z08XC5cnI+)b*S_>%)4`Q_^^JTrCt-~+$9?fbA=WS6m` z5seTP4K=jxr)e9Fce*M zVCpbnnhlC)y=bx#@XLaG)sL%w10z&2t@r_4j2yn!^9>Gi9VdTH0z)5Gr!rjI514sE|%usWsZ`giKL@5bz6 zgI#REU{W5nuiI@)t2fBH^(h#)Ko)-c(VjaF0PGr-Q<9*kPo15f>+k6tpPH2=S=VoT ztG>O=EtJRh>|J?z@zO*`VS5r|YJPd%-F}VF_q<}MKnO`Btfj>=K+^O4Y(7(2s#*yP z0DS5mD<2z8?g(4Ac4I^UU>ikt2}@3#1PB12V4}%NeY>{YX0iEfhxy()HvoW(wHP1=5CcHX z2ZDP0GGhoT)xe(j<5F@&BaL$FxU(@&x9fVgWdnd=7%iuzX;;Lq_VHQ&SUIs{b=(I4 z<;j@q&(;1XBbAS>DURY)pRsf^F3cxRRB;`)%Sd2TN7S$G4%SZJo&Nr=jy@Bko2XX32}med+&3%QYB_|U+)oPYtYDs}Ftf#-+Z?RrEFV_W=+u<-%o6*N1Ja(Z z?vpds-~QsU{ry%#lm4%-&Hd8Hik7LDTiUZn7JuqJhwDS#5S0xmKT^z%yVhhQYL^c^ zRiUbMpv#hTXxwwp!{vA!LoY_2OGu;`Nk3Q!0tXOnA1jO%5%oDVv#x^f%AvslP0>FE_ZRNJVhr~ppk>9RTyJeh(v*}bplGoNL z0>2qcX~oLl%v)T`k;NCAVa=8krkc=XW99$t^OJVDzIb>ql}Y~8C39-lG}348AB%JX z0E*85p#7W^St2qU+eZ)r06`;o_IXHWqyvXGL>z$LX@G@Xt&w76ti0{vI9V?EU6|}^cx(a zOt*jjxy)Ui9RM=D+uuwm2J0N#S&NcJaG$xJHzFYu1ZW+fnn%f9oqZ$VRuli=S^oHA z*IS^o8($co*gZ0O`rO&>j)E+|b)J=G%gN>Pin4qn-DXuHuw6TFws|JrI_1XjD&GW0Zu7#Ew!(P330LJ0I2O&d!`ux zsFw2Jo>J(=l<`*Cx#-7h-;6WH;wV;B82}Vjj;ry?*J*{7W3{H>9@0QobUj>5Y^H zclDT;7Cc)^Kl#e+Klx~9F-^R%b+I-Zv#7m=5BGn(9ypDO6RG=t;`PO5%~uK9tINb= zyymU$3B&*xpr^wc(G?c9zE$-XLmHlY;oc974SxCQGxzT)^miDtZT|HS7e97S;ly0? z;k~K3)|qCw%_AJ!NM~2aIxp8j!vFvTE6@x`v$d4TOdmNG?YY|&ZJHorCeJ+SC3yXUpr&>mb?e| z@>EBKa#cx%vA;5&$C~rb+!+9{I(CsnY4!iCV0Z7sW)=XrTWOqm-d#Ma4?mRM^#}k2 zg@J6UnCRS{Ec7!TQWmt_sRoT)1}=wct)|;{y;jfWvJEdtsoFa8s*85dg0pq zoMw7@@<^kRG?FaIl59zqBensv2J8h)GMIOl2dH&CN9#!WM09alnfE8$5 zF6?wYNzt}e*?l!!Z|?5h-9I>9{gbav-hWr@3*VXgf8LQ-QJqq2PgnNnIcHB_+n@g9 z$zOc9y>1Q%fvL(lKq#tDW{{goW{2FCiW>lcAJO5eKMeUp@oGZ_%<~%Yqa$DXaJKK3 z-orm>J2RJ3mRzvI(6n;h4oT>eO@95z+O{(5sral?X>9SbH&9X$cgAXdWJg?r4^Mf{ z+-ht`8%lN*gjAO7o41?x_*xlQ0BGpD1zu&q1HhiRK#1#lr6}^?s=(e?FAx${C3mbm z`Un5#_fM6Ff9KFIZcns3&di#8)g>`KSTg`30BAMjz-MRPH@?u&Z+15?~n4O$Y z0jd_~OaR}Fe98gLQ~8Rl#_~KME(}65ng)P-@ZeLhYc$!@`OuCuFHt`ncUTsA;x!!i zZWe}XZbTUXJTv3momW?xEc!|TVF7>kuh?7O9%*YRv;<-3`4`3PQ%C>$(7yYZTKLS# zA9mmTzKu5YiglLHXp){#QnKZwUO1N+nH+xPZckSMAW+k01|k6ifZ5*U8ghwUJO%yF z4RYgSr{3|#89dkd{CPGz#YrlA;319|k*v_!Db9D;&OMvk+8=o^N^(5OCHaB0GUKvo z%Uw{S_=JvB-I1y*Vbq<_vKr_Bt0CM4EV}C#7OV`J*V?qsng_=#;VVwE1HjbDSjSB( z_gJ)axSGX&yv7dZSQ41w3Vm!Dq z0Gn`$6((=|h@ji(m3eu_nYII~;pMXFB)fn_RmxQ(Zei;DR-o$5>hy_L#X^%9a^T#f{5OJlU8`#D^*-+bDW>9FD!`J zv6#S2wC*}ko3)sMf*UWRwZn_NtU6z7L?{UW=}dZRa=JmUM-eH^EHbZ=GFl{Nz2tN# znjyy6&d#Vc%TLY%00^n(O6}BBAC+1=I4rjAemwvTo&J9D_;&yR?YL|E-S4~flLcJ- z>bY;v9siD&YL(=9BiZJG+r!8qkw07+awrQJSFW2;L>jt#0PYIi{Zcn904QR2WHSIr zDI&P@^E_O3rI;N6cm_6yiHL+y6r82U2_@&`6`zQl!E-Xuejko4^{Yh@gcVKZr|Z5Q zKsGLZ;Ehdx^0i4(ylAC_+>@GkiycIMM6EzJI1d0KRu4#x1H4QQY7{9v4~!UqujJWz zE*`PP`|)V)dfO{NX;7Sf`cQA{13UW*MC{1Q&9U^{?6?!oG$mt7EdL)rcjEo`H*IU? zO$&n1qAW6SHt`SNDgD$NYvy1VKh>PRX}CuH3pSeb&s-#GO7rn={RIHD?t92~FC*Cz z5T z@xLDYPX(fJ8qMfZov^ib@-_)P@#^XZG z(POQav*zHM)Th4@{Cw|vTY3XOA~;_=d#Q-&>6ypo|GMN|<}GH|NY*{;YEfKt>$3qM zF5@{u7uCxPJYSt|W@2kw=UG3=ymu03eKj0T>CGR%KTNfMc)Q4X_&k1Y*O$ z05ms)9{>Ph48n+i=f7gb=|xA3H?SHAG;EikT@pg1&bVx(X4}F1i`XahRLMM50!_qS zajipP%d_n&R_jpNx~8gFtw-UD6>>e0>;T|Yg=FihymVK&*pD_g-IjEV*4coJ5di1{ zwzGU7 zM)s(6w&+cD#Cv*@{Qxlh)MwAX{Kbw3{-8PHvk?T+In5{ZQ+MNz6&tIN=Kuo&B3_o`~LV|MI$0NB@) z0D%53d8{&At<4Hp%*Ofz+*Y*NNG$>g^BTs-z9%S2Ik_XM+PcUuknEV_6amKsUJ-c! zsCdD`t|e04N@mx4x=b?ZF{QV z+YY5Zg$TF{s&l5t^c8jYS3^Le9cqmpOOr}N(*%H-5EiY_@Bmx5)CQ|2uPhd1>>v5=hd=p-kG#3}u7|r0+Rls6F})UFc-r9c{jewrxs9~> z243x`_!ns@XVp?r#9?W3$2yniA0kz7OEqCpUm8YzZ=Nqu{3$in!F}hOc2B?B+kZ=I z?(wmiBh}zg`jr`nja#E*_48>tvm>>8O+OTAw67`s!t@*fj8;8Eh_y=BX+^VP7enuT zBPFYv-sHKVLi@QnegvGG3y2ri)0Du`6Q!?$%JrIin05Ap%PBF=BV?#GA+Bbp*;oi}#)+t|d zqw`gJfzGxAa$>fA4x^i!V#d-L21zA3<7}a^VODQDRfFqC8ghL$Cz{`H8nY%&ZGb!BGIC{%PZhU z_Sy2uX={8Sd$6hhuCc*yoc-Ewdz8)4h? zdaoe$j#s0Iu`RM$TNEJ)hGu`T@ZY4&DlQ}yF(sRY`m;sTMjYOrxpSzDdBmwAU-!a> ze1S05u#`zEcQzU3Na;xch@xn2Zav9!mzv2`-O7Oj?>18101!fCBnvN37XYAH?*o3@ zc>Uree#~)-$on1boyj{}l`tiH#1Caj;W;%XNN_PniUI&=ypN4)Ku4-p#SIdv?y+g} z4Y%xg+addOK{+vYj#4^0HVOcp9i0dE?v#1s?CjV&59{>-0gDQ+DuOOxo<|~y{Q8+^ z1Arm`mc{MOMuH^D2CDh?4Ke$=fxrX601%KR?N%0r$Z^dA0-(TQMauBJ24R_mZu7P~ zy7oTAsWID~w(TiG{fiG4Yw4To@~=uEX-L;EIkT6Y;??NxuRuQDf4+8Mn9oK7fKmiC zx`>z^0C<^i@uG>^g_a{uL?Ew*Hy0$^4?|hxd6bCA8hCckn@h&xzy0nm%t;dX5>g&K z&`W|)Rhkwe6Ju-$pdA1zZZN0HdFFB)Qg9POoWvVWcp1-*$u^EJB2MxFOxsT+P;~h) z2Xh*S$x@yo0xuAvFQs;069}_sYEQoZ4R=kMVNBsnx9?B>{)8r>e|Tc^H+~1^4nq_jz&YjK+Rx-QWH@$C}8{Wz5oYnqQZGzQ{?o^rSl(o z^dm18j(_i+pXo4Ke*55igV3Th#8@W8y{+}upZnHtxWxaX!@siNoByhVEN2*}{C`h< z{PTlffB)`xN*rFRQA`5}iJ;%{{48tS^GQXN-6uD0sUrwl>FjY{P&3>2xzWlUh%mB( zpel-qhEY4^{V-aC0c+TtVG)5>pU1`xY#Ij3$Ja5w5|G#$@9K_i+u+uRCyIrsf+WiT z5MJa6v_uX7G{XobUiKpo2nhodux8e(Bya$rEw3~d<>V|SA=lL6pFZv8yV9z3OFr@3 zbk&T)7=Nv=?6ctJ!RBfylRiQOsNUL5{x2x0Z z8>14A$w<6fPaOp=FDd{ajgLWl#|^4|gJ6`zfW#I{O!WzUa;ny%i34dxpo_e6w=@b> z#A36Y8LV7KqF}^vSG!f-z_kPewh^kG11_VWZ3YiuJ3&1Let)*(SdE)?$*fCWDEX_T z+AIDF4Um_%ExmyTFqWWPhE$4N6+XErvN`Vj(AYr#_Orw1J6g9;uu_SBwC5xj;=+8tU) zht_evJ~U%bSu2%-t_I?8Z|073Wj=B)dwV7oF(ESqmg`@;(LJTpy~$Xi{_Kc7|7fC& z49)%^t2VijYdLn4me-ZuSw~*bhF9F6?#aE`yU))(zHt4l=2}|30gTvTP0_RMyB-FB zoR~co9#sUbC2?@H%KOg67d_^<&V<%!$h+?Pl?i+7rNU!ZyT&)uCIS0z*nDg02WEsTb-ar@hED z_Pq%JZIyM-Fe!l+>EGX>OxSDl2u!l_wbA(%JfBC^^=YVc_)+qqsIU}L;n{F|Jl`pc0M1~?%?OMpqtfuvs z!VhbXn-Ucw^7`Y06W=~E6RwEVDvW9l0dry=C060+!;?0H{)a#C?NTPrZ z2rq7thb9hUfv2PlO~G`oYWpF*!U_g+N~IQXOY{aqQU?GH-RzUuh}-BxJc{hGsc(yd z?#a9V|Gyu7^DW7AT>0+N@|`&TT6_)#ND8L8zB*Chh{^4vf^Fp0n?RGGr{woS=_J@@BG7E65@b(zqie^ zmzz0pDFnfgM1$wGkG=S*|N87F-qru`pWO4|W|^1BvWsAO7RFef5_f z=sbK!Q@`h}r;PjxqESo0SozqCpL$~Q`LDk1FZZN69k;NKlPmE0M^8TFL>I+DD$f|X z>q7(I+F&CQC+7Fxnc2RN6EF=|)iB4MMVyFDTYc^%IlQN4IjeN7Av7@Ga2w_#&z+W) z&FQb-z^e}B%Wvekl%$LhN&q0FApj6Yt{^2rH03b#P z5L*O5G6p#T0CB{n;uj~1a&k7(T7X2*zk~J+yj-m9&BfEIbZ=XHuI5!~DIumdrID+_ zsq*nlqhe>>!n1`Z4mGVj{rpm7mHDSi-479#uTPhDNdf}7P zr;fMfn>I^9KU_T%UB}Vu5sgMFXUop)j(rbsB;`glDxaEk<$SJ(UdPSeQgj==-A3=3 z@|mJHwPGHL%*$~(BMC`_VifdKrEq}}YtZXaG%{*R0L93rZ+ehJJoM~7{Qf@! zfQIOyI`}e=L?>o+Wlm2;aOHt-`4O1%cpUU36e(5%2*F`pK3D1%uH0dP2` zwayGaHT1-1n|Ium@4q7ms*X1|6A+t1z@Tx>U-1+O7%WSmZ^;?d#aPjv-)NI$l7JLL zSf;3e-}ZrDD}_dr(M*F00k#7b{4ivwyyBK9*a5W&%u=@IyHONkFOT!K9d)IRzk71z zSKqijpJp$gcY5=$yxQdJzGDqDR_wQQ%v@xEUnG+O4~ zKuDCNq^9Jbo*8;!c5r99FD@ECzT@Ga9(b51HQz5^z1LCXv>9!kiO!yQXFk>%5sxmW zCcFNC1tF%XO~Y30e;ob7J?*#NlH2uDJKmh;k?YN_Lt54WMapsrVL^(B9j?~FgGI#Sy81|S21Jp^O0YVOgDAui78nphT}ikW z=8`vXy`kvNPT6A%96?MpZf(A^P4Dc8b#=tLx{Tf~qqisC7Za0;q{Vn$!m=jlhnf#- z!sc+Gii~4Y5EGf9aE8LAQmQO)94`Qf05EGi0e}R+BE}*XPss{@*{hJ_H7dpcfH5j_ z)M4C|>9=e6SlK>Naj~F}RG(F_qVVdbw00R>L9#dC6K}?z(uLUS8z3MwW`%??%Ah?i z;nk@Xt|buW@#$0O*fBP+dnumXb3@0EqKNQ3mIYqmaTt-7uC9<$007KIQ_rL|tj8A@ z0G@d9pL!4dx)4h&`t6!<);z16JD(mNul9D#Sd$yHcM!3-H+|FM-!aA*!~HwCWQr*o zLYOgj!-I0uz?g<;TU=ors(KLsFo0RdpLR(~)1=G$`qR#ozgV8c#-R$j#JA3DqK)7N zu#Ri%HG4Upe>Q=6Ch41h;>M2}G~yIvJ$zq6L^q}I>Dmir_p&mx7dZi~=e5?7M*)B_ zXwz1h+cauLQ_ga2XpiwJc}Y9a8vpQh!LmKO z>6aZLWM;Y`Niya!A*52NRx8yY3?)fK=z34RS`i}VtSAcrgt4^Z*sGWpkid`==1KPH z<3AXF>htN&ef@X8&+&?WP@V{xNx5k2hbn7&{J^=c*L~}r-vQOUABSvUBCPx zLfMSVXA|3{C{QGk<48bPwxI$Mro~nIW@^7F`*tG7K-Jd zE02&UiU!6A_*}&!0H8~7h20#c27|RHW2#FhElLbCC%O4)A zUEJj+P3ktH7JewSkFSft$D&}!a$1#hLsoglt+nX+zkK=c-uume^QplvSKI=N!fn}Y zC9h^EIe}LgqW~P6uSa2?S9z?;a+<@jFP!=IzkTe#{PpoKq?P3Torg1W%s|xjip%V8 z7&-^?H|4bSOU09MH79atm7YNVZ@GDKb`MEDIa}K;%GFg{WFGeLaz-lH?1V5Js{lK;%?ic4V+HQLxh64sr5jt<8#D zR^n?;bfV${K+TJCvCbLuh{OD}lwPy}n}Q>=&rdsxbGRW5=iDMjd|X@=Ys?t+I8^f@ z07$7ZZD}9sR|*_LoXD}RE-Fgwsxm+jhPE5|VT2G;H7yFgPoDkT-+BCZe($+|f4*A! zvHph|RQveRFSO@7L}~GA&9hH@e#aaB-Nu`G);w!j^_|~;Vf?<^3PEY(+^Z^RZF=XD zUo%D+<@EVPfg4o&rUNsY5xFKqw?pDa6aYfP#_L{$__!=C6s4w}X)oFmN--&=1DtOV z{jWw;Cgr*FYP|Wn>$YtvXvCd+GSzeIYMGHW;q(vEoj27mzvkOq#%OO^I8%G+3X;76 zC$v>Q>M@!lfG%CogcS&aAv1KM<=QZi2n2lnQfb!%1YQG0;c}@}N>v(Qj2NmmIaO?K zZnJGulElqz)$r)#u3dXDo}aaB*UK}-*`}sV>#?7&4;7s?&zN5au3%NxQ72%)FrxLq z5M8c1`e?5IPE|==-3fWEA*19vV?8!;L*nPOu2k%n=@K?UDmkIcbkmQ*t0rJI>9WF| zn5>Sw%#36y@+lWwaxqsyJ556-x`b5Ovx1f7w$~xDYLo1_#ee>2^~~d{s5b37DDVoQKFElo!1d>XuwL?Q zs`eDUdXXT-I5Zt}o~{H%Clo|HH~z!%$N!h_RTG((wp5D{*^GmgJkQnu$990@H~>)+ z>opT`D3wlzK@|9btX!EL`lVW#{=e4wsk@7mtsxNe?#5fs0ij`a@{^wAuF_ymw4ny6aY??g3fqOtIZl) zpso{9lO$-SKfLe>2J7v&r5_(O-+zA-3A9AqxHBFHfJ_Qz%g;BK@vKt=@#K+`1OSt^ zpOBS2n`igjpn{N?lm{x_VAVU`_)y|gF{z*D_=+=i>DDDts$0Y`T79~B0+lQ~vKX%h zOO@{$eTXG{ffCo}d1^K(Royd}`n*Sx9Yx-@CPk7`bLGkvzcTId=HJ91(`d>Km)jvA>y-)4D|CixHv5SVjU74g2RT5c6Pn*`{IwnWRd~TdO zP^iz3?OP2w&rbx-8EOV=9pyBN1Ol&Otc+DBKK{Zd9vyvR(kgsl?@u1c?fk{v?|SF9 zw=iPI)OHqF)$A>JyD9r@}X?R)UIae8gMQDTC?)doApo%YZWEict6Taiab))S<=sdKBX+RJWT~ZK2tp%cea^MA z`gNzjKv;leGXT)5+)*2Or#z4KnEvSLf4r~%Ex_?#KlA0+cfJ0D+x|5{7oSMAk;nA? zi#zIA^;x6swhcD28kA@K5&%f5{QR3<$N126H^C0Fk&?GO8eZ*D;7b4VFQm8rMA(uK zUfY_xO-Bs;TeI?*s|?PW4HuM=syl7^yRxw+kuplQuKb@=lI7sKAS)}AG5{o7*H${x zQsLN(@%DYMEo;=`ke2Pc1%M-u0hrQ^=1MR^|4 zM!Lyz1JQ(tl8A!p;-fzfJ2oDcwHB&W9D=T=6tBEMTzv#Kf)hY|{n z8Jt+C70>9&j^yj#J8exbY8ta56hY&W=o8;}{E^D0Wd2=iAP%<}?as(c#m7H~L}}0c zA4+uXa6_|Zo^M!=R0)(K0033WOw?MFN_P^Wp^DcyHAzJTfXO3YNeE&S8vWhF+K{CX(?@*~9_}A=OIN_XAZ` zV}_0~CWI7bij9qK?zS3mLp!VRb`SvoLW`SNE0Z`sqn z!tCgL#FnV@*CyLSC$)wWRI2|Ki zsx6uAJ^bFGCqMJlr$5x(e^>YI?*f3~Xa0WrwhjD>oV=}H5qwJO8ZbS zP;utRdp!v$9zN-Lt9h|uo|h5FBP<{eBP3uXjn`+sd**wi=JX#N{vZI9y!vk)`oQZu zZi@?25L7Whv&{D(4RJGjTF(}qs4Y8z zROPh}qq}_>5%g8iFGv?ht6qy5k6%xcc7zvaYZmfOc^(76uYK=#zjo$xPc`k=Vh`u- z001BWNkl03B{u?g~0ul=|Q{~cJM7W8;=i;#?JBY()pBXs#GaG5-S@Ud2gXDBc zse7{n-4pHv7i|vHZD^~S6%hrlhoTsc&C*rMs=h`xnuSZycp@ zCD*%72A@!723$v?4*+Uzsk+9*BZ@rAdBA{j7NcTHQEI{B!nCY{w;4W%uC@8{s|y%Q z_~~b(gE!H2%^*)Dq@j_~ZGC-XW1}t2n-hpyEtM1TM9R4Mt{gnMY1yX>xRwd18wX`X z#uZP>$m!ZVa4|AbM-m^ zYH<0QQG;se;eb?j3R}B3m0aDH%N8>Xx?^j(Aqm~j;}kw(~y#u$?LJG?5xVo;(CK3 zXia*n=GM>u@ULUZ&i=RjDgZQy#3})sf=3~^z}re>I{+-C*8+ep@?8nN<^>&Z`WOJX zAZ50Th@R$oO_X!3P^@ppAeayW02pJ;28wplX4B&Zi_bTWdQYLL5048m}D$4tC-jKtZw`oN!KPttgZKfk&+$!-&FNhEl zOm`e1@rhHFCkAH(MSstsY)?z}-+k(t+xojrYn-wG02q)|@JwAf*tjJc$*4T)Xj1yR z@njSNkL5U#a zj~sZRDnr5xd_lI?Ar7N7aJ@NUS2uQi0BBYHira{rW42Rh-g$czn1NGGbslIe-*MAh zvOTv0KrGu1036~qwR!a{?G?i3fi!=Clf4oMi9A+#UPeeji01%T0_$vjYQij)oWjrU zd1pkzLx20ONvklB?t7&7J^<)2T0VZyZ-$`_)MHE#7wiZqO@ID7jD}%H-n{#!?o^Na z^ZP`P(PPgM68_;GA4-cxORNcTl#sx2W`b~?)?iU&QyPBazTf@yiLYC}1qcmWwV0S} zi^amoqKr@yQWjAfZYuMR5yCuH1VQ7mGGUuWji$2de}DQfKR5Wb9jTt3ne8b#0RaEu z@UQ>JJ3d5NNQfUr-m0bg%R$oj9II!)cxpaVQRUfphAe>l9%wnfD?Yx_J-Yxw&;USE zGHN1Kv(|BTsN)sHn+B3!`hnzgp_uf8C8bgTK&kI{w*ml!H(Wbk8Jx1B$+~l1!g%h zF?r#|;*x;UP99_V zEHy4N&I@^`swB)fg`fVH_t(7IKfmqE3Q@|%3B!m-UKl|b`N8;^ld*V0ggK*S$5QJr z%nWtBao@U|ccy&CA$3iTXHE>y96nHW%hSd26>{xY2h6yBt#_3R2P6vf&6uCpAvP55 z8*jr6Tnd4Pdy{-uTsb;t*#QB7vKu}zQEAcc70Aehb9!?(hdBWN?CU_!9=O=Ik(ORF zAxIfZw)&Mxd96bDS1;-XNmPlvF8}luQ5;eS?pdyvwG2E$PgX)r?whPTGH&b3L_?*= z7tAC%4tE-fkkv638;bQSK-oolltV#}5j4x<*}CLJ;Dl7dTukI*B1+13Qhcowkt?E+ zfEqmi47&AZ60T=93@7?YO(~aa7^5%@H=a=Hx_;e@cJ*G=BM%Lo%cSF*m3`X4%jKij za{}t3aQ!iY;!6JZ^6{^{(rtN#fe=3vaHq?*eMzw)sfhipi4>+oRT!2%3_p((c83M2rStdlDw?TEuU za6yHZRK%?6_31Lk0)PSl2=fi!e}s9jHZ^tj`#lHWGvQB8o8zmuWxpDVpuYL;17Cmg zIcqJ`Tdxyj)ux1;$Os&WiG6SVf3SO2$s|_0DvTlLEx*ZYSyiop__F}mN(xt z=4!pX<2dO|x-?hXI-Xs;;Q!`^SmtFfTD&h8M=Z{Zy4F$|Kb~yg%^_Y*Hk@Dz<#tIa)Hlt}9h7TXS@7bv8Rg5G< zNru!6LqU)L00iDRJ!!t{w$6OY`15Zb0~iGWD=^Z@y`{>_4XQmP*0|>GSea_`CouNZ%kWTutkepk(Oox#u%YJRK4h*3Y0jevK z8!lOH@>!X2Wx}tAWM60`VLs>z00>wBhyXx92!L4jRBqQ{#9_*a=a(o60RYEk000b( zM$;!BZ|=VxA#pXtv8?YtR?qnt1ay0{h%}2kG^m^7Ke7E@Sx5rFr%!(Q z(knX#sdGAl}e8W9nBw~&bKaAWkwAW-W)2KioEbv%v%;@A0KUSUi z<7fWt_}rQI?s&^Dy_AGsc=zw#`isAR+b>=5wL1@;hBybX~eY%mHdhyS<@4J1eO++}k zs3Xv7P!DR;rOBpr763-xa7WcGPt1-;(#mEptAQx2&F_y{!F_&Agk(sgs#I+7Ix1XB%&L(b1z+ycL{j0oguRRK9wEVz2)dR6yV9klI z9iH8s6Wexgl}`?hxQ#IQwSX}$1OSiF(`D3?xUXzKWd^3g>pRlj30VaQC<_P+c%*Xd zqD(1db&k7oZK@dT%iIvHuLlST=;TXi|4q>bBz}5^j*rd`^zRrveX6^obtCNw!*F7{ zaMMi}`wyj3iP6A_ZE}!O-Mi9l_4-HIDaLh(_dmoD$BIBjJbks53N{5*CZ3*kE|m;x zBHy3VnngxwKq+(^z1>DH0K7E!eAO#$5!>#0UW37uWqIN6YlDykbne^R1 z$syjzc1@e((|)jw(70Ipmu9V7l6rh12;5jWGd?u<$=S(4{GLA@9vy4zxOcMd6>Sdy z$|oK*%fox${F^x~XPd)$$fZ}Ryt{MO; zYO>A&_M%yym-C6%ZyuSvxj%hJzqqF-@w(leANj)3ogFa|)fbE`qhPL8F_U^*1URCU zG5`QOB$-$;vh0{D5hB`-APCs;0s$k+U8c7UXgOfDWsL1G;(af%XizEzo3g<3RKk@a zx_F_F(r|rwu$O|PSP(S;h=jIj(*uB%jD&EAF%m^i7}-(eM3F9{I}qPL$83;<=mhH@C(+fKRBhfw9DKJcoEn>D3oJ&ufjCR#nc) za(c!K|J#wz{msd*eeA`*`PRr|@9uwi(w=*vaO^!h-tpc&KaRl*vW97$_x!masD+W; zIBT0*rc;fB$7-qh6Nywanbe9jGy3)wshyM>)VBwOGgv&r04k@ z&xMgcQ5vaMYso|c^PAA$&B(bXb>&O$GBCy%10%)_pX0JwPLIlLITb+(7mh8`E1&X0|iTRS`EibY*pe-7L5=;ZE!0W8c5{b&`zi5gM>@7IDX3g@_0hsn z4JP#>r#-o?;?1jeD;~wTC8PK2^0pZZHAL2VO;+*A@#?XF_<vzt zNS$>*3@MFw-)5cqM)AzkxgED81gR2kXu@EvR<|wNG%ee*DWx$ZrmBi*T1`#4t$3gj zLIXb#M8T|EJkL`?c%By}krEn(k+|8J*bSKeTxV)qBPKMUqKZpCxr~|A5p>8>OlzM$ z`S|#ef9ksB9hsi}v-OctpZS+R90(zma-~|S5kiIQ=J~IP+Zxde?W#5BOt0p8z`ydr zw^1-D6%dlB?{sF8MUOPNm06d>^rXfDUF;CB&S*r~`V*W8vnAXf5h{r|qNXP1JzDbp zN=Lds8&^y#P{f)Q3IFwrXMX0sd~3pssDnVbNVP`}7YxPONQY+ga!1XN0DvJ;_Dlf6 zV?Lp$k}=hCeazP=T=}F}K0QW68AHuD(c|n2jh0rfmQKp5yjqoUs1XLW6l;)3w&3 z=l#XeFMRNOAI|H!o$0=}_1*u0J@2}|{pOpqy^OeiP?ebD`*VI!3Br09nhoBc@)(|8PCy3aZ9&!8Ac36M9vDaHM>4wr! zz$zi0;}tiseilZy$j6dj`5x(N4@Fq2zQPz&#DsG6jJvmw5K9s^St)Y^D}XT_(H=wM zd8z7$jnbwUkr~TBU-MiLWI>;^CSX)uYgjNTqxp08+Ufrad=P zF&(ZWbVOC@P8!XW-!P_`6wG4+aC^{u!V=U(f1R><% z`uo25OJ6$d-)?kPL!-gtzk;w!LcJij?ph}y zhz0iAA=$5U7!ulP;MTYjFl_oE0JtG>soG{Fcywidp5qAR91d?`%gmd0#Vbu%WA(^vQr1}X zT?|LZUtj>~bkg?&-wzZ;b}R=tj#0KnB+;fIsW$mU<`IW^J}%TeCWM%EE1oa_0Q0zBt1GHir zR(3b)sICe|HYxP>J62HNqWqZ6f`G-elF91%n5gO)l98l!|t`!WJ z%7a4^jWKC!JXdu`7rqrau1ArKSU1NZL5-z5_htKTnlY!Q0($lQgL=(G2&K}=zz+gH zkQLdn9ROhL6?^{kh{w3QG3?E&!HhGrXzI)rz`ydrw*df!njg6wQ&pgyhE%0|qZB#o z62hk>a*Csd%(u&e;YI6D>3E1YLs+xd4TFdS6wswg zf{f#Q!j{wUO0Wl_9L64nb@wtE&nwcb73!I)9P=Uq98Pd6ko%GppFQ^+FDdEn{mb+0 zJg*ITogtwB(4XdM{jr6wWI3b$U-sTKOp@y^^Zmy;v2VFAwO4iZzDV7YT2gDVyh^q( zco~l|_Ati40|OTr;NIbx%Y}gf&&IugJ)XH-{J_iuGcXKe8!vbhvSrzpEL%&r)ZOZ} zy1VwQ$~`moILrNzrRq|5Rdp>{y~zE0>O*B!WaNp+$jEcv^FQya6+dzGuYUUL|56o| zUpn-YKQjC#U;&V}AIvT4=~rpxSe9%}%V}C3V+8=Xu7taWogI0P)IGmMh__PXMbXe( zOdXpEAA3`v2uM~LBU{%&Usw|mx1+cfMvXA41MzaIabIztCMpQT`+M)sD)yvPdUE2~ z5AS}rgr&EC=BJ*Tdf|%~p8op858ku=(I5^U`kSAaa_6=u2Ok}JXm4h_ElEGN?coQC zd$wD76A?eChEX+++mwYE%NVNwz4dH40T6(&Mb1`? zMV3SC#*FSgDHbipusz#2*_>F(}-Ga!Gi){LE4 z(hS23+>|A0Dh2>S%^|B#vXY8jT%*X|VX4%91riH1djJ4bE#=fEb-Pe2Uo@?O>DdX% zSj|f(t;u&5bAt&ppy9l)4#>R$pEE?mm=xTqlPdOYe$61}Y`~JMuSxCokoH&#UNV$I zSPY}kc%B`r0kfBM++AF*e7O|xK)4%`OuU`1-fIaZUKI)eEnjn>%u-9F!Z)MzOchl}dI1$Z5rO z7qc(IIp-X`cE1(@=nq-_-Sy#ke=stzWAY={D;|5)J&{ z{)!I_P#JCh^vXIfm0F|2!xzUVQ%QThPj9sy2Dq>9a^1tplP7xe8AXwg&cEmr4*)2q zZq%A=kJqERE}QBmmZH9J@dxR25@RgOQmffAEwfQ?rZcHlv%N(kQCHAq%_RxJnVkLR zzvUN|JZ_+4-kFt$2QJc#j~U{ODmR zlbdRnrozBu>llh60r%L00HCD$jsD$bw-nP*)l}E>#%Ipvi=(pI?>9=Zp5HaFd;FEp zP{$wK`Ct&WUAC!S))m6~*6Hj3pzC_O?G%c6gwX4&>G{^Zs1wx(Qwt^SUMwcH(2v^y zAPYi|W~Gfn;5H;#mt8qT)0q^;Sdyhiy^9qxNg9*|mN8E>CE4sE1IGTKn=yIArT*kg}MJDkknu1m8fU$f*LG7#K265yBw} zBi5`tjiix7GXMDBo_)uiNdWlb^OKq^{Oxy20FX<_NnK3Yq(6~>SjUJ{?1w>}0|kK4 zIoD?lb(+_rq8SD>PJtd;x>^ZlR|-2-gzW$j^7B{!i*nbAm-+i5gkK~0Q4%FplHAw? z*kFJs07Ox{{m5Oitm$oB_o41bBbhs+_VcShi^QG+*Vdtsw%4r^01yR1Cucg6HbSzY z7tb_i_bQo>?R)<}+V-}7I~N4?(4Prcv=PU$WJ;1DNft0>J^2GrD~snj#D;+o|ktSOlh0gD2FuH`&`*;^Ikl(gRc zFaU7zCjH|7Awgo%E(5k%$y&rOHT^})#g28mBBC8>b3o-?v~G`HE2)r>JZ!Hu-SN8N zMV_c60Dy#%l*tLI%!4v9Hd5x?p--W5Pxf@Rp|NFOo z`*UYM*Ll{HANs4VDOJ)1zjEQ-kCfx;vZ>=6M#l1i?7_|KVbQA{|EE8I zk9Jc4^6PPoHx7+}WKww_mt8KG?TDkC#fddFR1Hiw~!#rfgNzH05aJ1?Tn6 zi&<3h<{ClOl#|=7(Ui9C1*x;%G-FrV2w)LojIp?t{=%DsQhIjsB?;Qw5@v1krPA4_ zdw0L>4Q$blkT~Y?v1*$vQOXLYx<9Q*EQa+fl6R!*6jIhPZEjE0E@z~7Jms-~C0VP_o;>l?Ct7potitwv zM}D!!{H}=X5|+#J_V54t?!Wl^@5gkrH*-p9qtOh5u;V%2u>zkf&1bV&S=nH+ktP|o zl9I!q{@nkX8hZu+(me;Vd+*_l_;I`8R%XdE)zH@@XY_>iDe%$&;HN|XHN%`tCOtDf ztK(@)9erhXmSaON+q*40~p|`IG0A{9VJHKoxE$<~mKIBFu zq|8+J*W4Ld5QcRtp(c)h>5sfd>BvVvNr*eqnkf^`*6`k4KY#gEk+I^vmVv~U^T(r< zHtLNqjC5VMY_rqUD;JJ&>7*O(HvqOPSQL%%rVjw)O@CkJ&8+=|fUzMBc<~J1P?jS? z(R{6?82|vX;tE1C2x>q7?*3QKHv!;-4`zA`dQKNe9L2Ovh(~DEX{2JBFBVdzb|an0 zG@54sfCJ5`t!Y;QfN3W_p!3)PQ&R{F$ciHt90WQcOjUPK+_km3iv(m&6k`ILTE7#; zjt&q-m4ca{ZutOkvT5x}JjC1|tfcA+fH|dDyk@uuo{KX80RRjpD|2>5DNB<(rhx0+kQ}4yGkyJ zX51$Nfa6YSY6c66a&g8S>0Ra3w-m;rh(%GnFh_!r{CNLCgcrUQ7->0ijgVmFxrf&g z#g2(H);E8^-uG5fG*-SQH-e%KoN|hU697;|wBIi8*!fL>&QiD=R?AkKR~4nW80n`d z#o5VKq;}>7bB56e01`GO(T&Nbj6`p99gtX55TTF}BV^9F@x`Xw2?huWJ2BrnjfCA< zt6%QUa3X$f>8QS3uqksRu1uXo%!@u$9=wkrzU*Gxv z{^{F3847T^_R^i1BLMKTU->_N@4;Uwnmx-(?VSMF-+KCY{{H-zU;3%<9qE5Fqw%Tg zD-FNa(de(?EE3kj#@D*!O#MrrNALc*!G zPqd?r>u3sAZ;}wy+q{uz#tSaq&9G5#pLnSMj_*!2I#T<0ry2)~c0sh65KtQ3R@=7% zgd_op^he)KySFY@6d{>YYSnTwk!-acd(E=rOlf}mwxPv`wN|~+Yz+40&(_Y?R#=on z7-U2nA<+csM*M^RPZ^%YqL07aG;Z>KjKt(F4-xm>F+ zzrCcJt;)Gxc-xI`)K(EA>7}y2H0)Fqgk4!{NV|qr@9HGv%;9`y!kw6CUf9eeG$Eu? z>B4fcEoIJ`0%vNa|GKW1OeV5M@#Uxf{nW9qDSGmbM}K2r-{Y^8Uzn;~>PiC)DM2;% ztN+(UC+vb!(QY{y;X*OrZaM9ilT0Oi&sS6>ioy-(>>Y*OmW`lUy70N*27uljkM!L6 z7Cl+?{P|{kY&wRGN#2@dAg4C*h2MkS9~m4t+{vL`iXXcP9O=TO)6cFVDBv)yu3MfE*jQ4|1B6vg-a8!}-gibm)!bhEu+nR>5w%fVPI z6q8G@|78r?9CE@BcPNtGFA`!{owD(h)#za62zJVr(xXX5KQ66NZAXI4IqhsIh|Q!m z#Bqhh;6)_`6*1FM^y)ps9g__jJKk*ja(_aE-k$unRzN@b)w6~w{`_Nw#%smm$bVH4 z?+ytI3FFErIKCf70a-DfTog=2Qyf18z9l&r1g6RB;>iPv%3IM=Z0xy(vhJ+of zio?mbXQJmqvV5s>dgu;4Ik5VQLe<hK8&M$raS7+Vw=imD$Jw~G0 zz68s?p$N&Ul9EJIKq3HGPdtacAQ~M2gedjB6pe!MWuLebqG)t>#Tg;Qb-ma!2F&MP zW$Ga{n+<{+|Gn6e-8T_!O9R1ez4HMsiH1~cwpTORUl)p)z7XwkqX+;*B;1*7d9C9B za03-~0HCqpIJWuvn_e92G& z3x+iqF^tJTI9GEzYCB>4#C!|#_U5Jb$@chS!Eaj4Y__>w$C84J+$t_ymcEqOV3Ef9 zVU#2gBuoTAfk7pxPP8vJ!ul2U(Tvk}{N0S2rP1zJ=HY=JtGB06It!r}DW(DdG3w^Z z*#wHyn%oNGI}4fm$*)1rXs_5C8Q$ zzVqRKxI$`2SVUO*s~7(K-@f?CfQ5hY_@@w-NaQ0d{?&=k9xt8vyAM3LbmPu1k|?tS z2ZeoiAkJr+6Ce2eN18$NzrW|xEDF7F;XWQmezSD3e|UT7lk%lkv8-FUUI5^f25voU zHyTboVWn0&%=!6?9^OB7>UqUVsz$0%Tx;hz;8Ee_)1IN%wiV~y*>#@XYq0rZ_C+E} z#BB@4{aBQjUo>!=HE_IgtQMC2$S==ViaiC#b#wV_dA_nJ49zrN=r!Il<3<2b^W&PY z81lWt8L#1${VdB*ZbhUD)1z5L)P5bk|hV(qU%G+cuIrcmBMlDw1^VE=(N9go0sT zUO7E=>C(tx--J6c ze}b_1?TIHYOpfIXT_~^s012UFBFa1%RopJzWIWF+6!REk%Qojq^T|}g^ZZOUU9HsC zD~#GovS1W6#0@O)bPnD7lgT}I$XE`;W=COn7~1fP2U|(CkNz);)E)QSU-D*`Rj^9V z`Qc1{s-;a$9aHc@0KL~NPJH*zGTROoHEY7#icG;b4wd%NwDv&FkFX%LW1~4o=b!q0 z&dC0E{)*KzdcHB$WY=&xPNovoN_DO@uPAadm8@2(nQR6CG+nD!sy9SuH|0#(2LLc+ zF=ES@mn?Vvd&_88qF^Jbg(Z+st`NGOrgx?*Pc^l>QyHM(2OvuWnqG9G@qk>Tf?E=D z09wbbg+as8cQpbe3VA~usJ9(mQFW=m;h((viAazW*1l8a+FyKQ_N{l=Z@VKIxnfei zrxCmW01;{SnbL(u2msYMQ&cCtAVyLhIEX@;@GB*0!kebTNt;=Q>}>s4o-XAO&pB{> zy-(zfq`vrF=TUkvGjgiQI~vxdhUXiH2h3?ABwN(baUciBI>pxlpzRO+BmhLwid}Yu z&-0tTvg5L+*Ds4i$?oN+6I93qxUlw zMzIsE>YcI*iky(9%W*ap3l0D<7WqM?{*NAE0#+4~5Wl+x;5P)%uSl6;0f_>Ds&;4c z;FG5w_xR;Ii!So7ol}2x&*pc$S>{Vd$1Y|mrfE0pt#p3H(ZA=HrNI&Xg;VOpTu@Af zQT6I=>~9~9hI>i>isIL8ZWNr+ei;UOjZ%cp*4$3;(TVw%)tgLgZoFN4O=*&lygjk2 z3vKN(Mi>O;(iE2UY;Uh58yz+IdbVKF89z058q0i@US=bxAmMvG`T&XcogJG507aJp zAXn_48aq+!$;)dPU9XXYITb*?_}x!Uy!`n+5B<#W-9Pc`cmEutR z^U*K=+{1tUjwgTo3qy&~#s5~^xxC#!%YsFveo^opZ%!O2?(h8Gk>dg2$qQfno73Me z8b(sfzisgDL&f`l;cLG(n%e%!2mfyn#6^)E04kFgI=?8Uk~4?mC~lW$oZ7UR?gIcj zQ7m8l&bFaDS31VI(%81Q{R#*u^rB|z;?T$-ED`z_+keHgCY^Br(B`Vux9pg2Pj=n= zvMa^xi;&0{Weosuy$q?`ZK-{|T&$cuRywK~+Txnl&QKX+tfdnVja$LVk~h7s*Hw|+jD>C=%?%^+F#yQg8+Jv-^hqmG+^RStw=jn52M+UE5W6z)-Og0Swgp#?^W+NZ38xC~`hVQ@8t>``-h5dYep~40LL_xTtU>9Z1 zSlktbeJMMvoja_Z6Yj*UGwH<+dE+|pT#fJfJBzz>W^YdGed|yEPXLG`|5*9OYPFuz zbEa%lPQy)m*vr!HA+*^4!6J^rc^mp$1(7*C& zR1R-}>V_LtKJP^BVXG$NtS*T`{o>>kzbz-X-TD6CmdR|%ooO zLg)>@|0A^E9im{QGY<)9m7}=qb<@c~T|@v(!=0R25=I=gn~iv9&YTH>GENzHxKY$a zfl&z~j3iae0<#%kJ^YhKK|zu@1D69eqyfU(zzj`J)LOn}#j2QQJc`-tj3ZPvo6Q{f z%yXshoUH%cqdj+y7$UM;q0$nSqyk}72LMA&&-yX|I3XF-s4NR^JSGYWk&gnCm~iD( z1E)F?WJ#nE+w!+cmGW&z5yUpEvnX1YEv4L!dom$8S5$qZ^tM9+0B%fYe7)qOdO+uW zp(PBYtO1TCCJl>70gwr)t{Ay#KXSgl(2SkQ(2)3ld-cm{#onD6{n3$!D07EkR&7o^;=Mp=e`5Tl&kWu5 zk9R)sGbHj?KOvkm&e{8Sy{F>W-a7Oc5b_^i{;%Jgeet7T{@AJ7`Sa6HChJ`pLgI@tFtu?wx6kA1jYl{nF97ll@Zaj^4Z8x$Rva z-1%c+%n5njMQEk-NPyb>bQs2>BulcS8Ac*q&`d)!3{e)H@xR-<_d!uw#&w;<;j5=# z%x`}uU_>LT*>);dz>2ZU&=^oZ#7bGYzS)Uj42y* zr4?-JqBXC~p0qMUZ_H^PMuf5FQac{nswkc5<94DLn%OR>-jWm(vQUDfNmeIp8FMyh zD-?;HX!MxziB@21wvKPR|8)~dH1KCWhl&|$Xj>65D{4}$>SdC)+iI!$YU{jxKjZ?= zo&S1Ye)QGK(U7kDLmIKL5!7bg8IL$wZAF9lk~ibUE-c9jv~0_=t#;e# z?d#dP5Wh`ADC^w+8KXnV*Rq8;T+c4z7J-mB5ug{#&a4wqcDaoGNM9-;gj;%m2|3Yk z4yM&q$YR3CdKKXev^spbih;H5WQJZEWm~!jvtHB*J0~3xhJ`EES0fD%pB|mwneyPkRa|`G7la zwAS9jO?CfI>f7r90)V20zMk!PLtq%??7;yw=4f(Je5yH76so)$3 z0L%w5LL3rTj}8eDOihE8Vp6+G6cIw0CS?hlSl1I7Bb`i9!NZ|HnL%@Q=1r%nSGL)W z$cd_;h=ZfDcIoBsCwA`7qvbOJRCE8a%EE1FIH@c2^lv`8H7vv+ zSL#N-uu^^fEkqPI6`HVKx(EQ|(2(PYp(h>>mXHh`YW5`ZnE!GkRA}f3C#bh!Dn~pKIQgw>MnX9*~6^ zfrNbXu49nRoSNu~DG__RSx~$>lg{`=>*D$G^Xn=}@Q4fWU1Qsx(uFYq*mK{TQ+5sj zcBc8+np^SE!L(qBo2qR;@r^&6Ir)`c5B$`~eIHwU5j3OZ8;Gww>&cZ7=QL@_V7+f6#*cj zXpN?Og~;B)%=VetzIMIRC|$&|ZY7eEeEGmhYeLnoT$j_KQaZ2q?XJ~ohGr|8xU`GM zhqiI^wImN3GfEcMH#DP0z#{+%Vy_u?-y>o;G1B#Y0stiudDna7sYw8ku^8Q!+E=CR zHBUQd+J1!!8~{?OWWC-f&sP*xv2Ck7U&-aO0H7J#QtOxwQ{EZy&J^`N$+~m49d-=X zL&`2SdEZ^k>@C+=k1t@xFK z)w^tM`_U--|6u6P{%(Hr zA*j&t`l#0CO7oo@)M};HS&X9T+8V86BrIo*VuCkonZd!gK86#isn%4Lz=r+Muf~vV z_u|(nQl;LVUTgB2+fUTKpEn0nvJ*nZ-)pK2J*v$zNkhpSD z7lGGRrf01~<4timL-Jy^bmAYV_l=SJKWJKo3x&JpoPaQXF#=ePpbRWNZFUsPF5oT7;pM!M(g31 zKl74^HM|2O%Ly+m>)7su;~Dcl85JTn7eszc3<{p8T|nWe>*-j&n9&bl(%%jjmUS~8 zDwrM`HnRz_KdUBPZo&5Z_0Kh-69T@Y1`Ne?H&4CTAh#jAr zS}00^v*1)K3JIVIf+k$QWaC^XJ~WmRU3$?QiR+c51EcEkF;O(u8;D9{^!KGhmz;$< z?#H(KopSGjp`_zyq76CrYz2u_IA1C$O7V)nJ5Fm2z7z|AsMb@@^EVv|!rIcA1I{@B za7u7j?WAwB6-X?)uV_Cr)97Sod~c@FXY0F@vb4?%wG}lfCjfv1v?slPYZ}`f5S9>@ zK-SoGvDY|OexVvvHe5a7#;5WleIxcBOO&dPYwOlf%F5`<*u19*Xfrc*FMsuS=gxg+ z?^}L(@Zbm5TmIZJULQ(~KK)O=0k7%Q%kG5HxFgE{Cub`03fN|xfo*M@~!x4 zTbQg6JlJO~1|c3TIS=$D5WnU7?KcAmNkYny-uL5MDmQ0x`ox7xd-v>q_0;KszWlOM zd#mjf@mLV}s;*^U=2rL<9RhGD4bx^0__u36W_C+?;Cxr#Ga zG+JJHI$3EiRoItUv3K7nW-aVa?FWEM&iPqq z){C!g-M&R$8BrKlDwS+DyMcty)k&(kq?$bc-H+Ra9Xs#)>6JwGO(J2rVD|mH|FHAJ zKQrBx5Y!HtOnPQ|Hj_yM03qx4dP-|~8-tEh``+;jURZCqmF|k{NWhw;$9=mCnQbv8 zYZ+28PBoc=3jlDb8ST&P6L}K=42G1oND$EtC!)Bcv&-O900Tq) zs>|nUubV4LY5aVmN4@uZjScgjM++=cGZFZ z^p&{>cU$i~Jfwe<*5kJN@T?O7KuVJjWH4gY zX}A0bZ~7NG5d~p&@t`y{YvQbVw!{pL%Mt(tyNBH!1Ms&|ZHHoRia z=botIjFNf2985GFTNWt?ggL@k6*f3p+KkBFp<@oyk=IvQdffS!fN);bf9Ij!?Y9Og zi2wj$Q9ziFY)4pHY=G-s`_3aPnw{%Y%%p%s!gY}LQ2+oS07*naRG@zGsiAx(neJb9 zW8t)rOcvr)1^`gcfOOCOOjam~I*ngE1kg-+=&+Q|3J57LAJvZ@t=_eFCY+DDnqmi? z=z{cqQ`Eb=+skk+0&s+t$%)9&1ccZA5&j|JROS4u^%t8_W7#$Aj^lPpw@k}4Ez@z_ zVozc9Vy=LARewy!^}a+ZVoFRo0K}Bn12J!G&sdV)VH#a1ss9$O1jX5ir z%B&L;&I#wW0QYKK*o14`Z8}Jz!6lj7MohNWjmNOWiHX{-9oxq)PMAxAB^H^OF6~;J zP6imiG&avF)6V2Wz4unyWzM*)$jxS3Kq!+*g<%wik*2BZYD2`rMp!Qga~NSuT3Avx z*&gqFZ(h;ixg`uh+HEJ7Dh%2qBydaTp3aTjubH`9(K;qZ(hp`@@e-Gq137DdLehoR zdTZB*q?{fwheSyZNkAC6rjKIRX}2AO5hYYz=LNqywvsGbecMxeReNyz;SY(jzWS-2 za4v1kH>TGfKmvZ~ZPgw7YZY&nN#_rjfN#xStMO@gtq0LQ&EC^`~y%N{a zHMSH5Ffk+~sn~NrfFWVTA@t9Dw(r1WL-+hh+nK!RwdX@u6o-960ibB1s(WUQ&A55) z{~{6vG}1YQUfpBStRg^-qN_hRS6u&B>g*gS;VpqBy&z6ml20cXixn{~fJ|C#qM02N z-dT^tl5VIV@j#Om&Ve!}Vp+olLJ);3D;g*ZEM>?iH4aS?C1O?u;J^)8Oh=@pNQQ)s zh&c4MGI_@0IChivuBT6VUwXcFWVh9F*|$#2fA)K`Pn~ScRKg>B3Q^S3xnAXVOc?{P z%^r!CO}S8MwkU5d^=C&&PHDSpt-#V%NyM_K5>8YxDPbcZHNIvGbx|}lTtEm2iTE`a zNHWzAB!r!{?;ik=Aeoa*{lpj>9R)#9{HT0(S@8iH%kV5fwZPh zruIGV2}(@ayvGf5yAEZ>LMid!soFvXbm$%X?s=eCPd& zNgyV(f+T|=C{luQ!q%fu+@CwQ_;bTW_6{)#6xkL8BnSuuVMP!96;Q?AF|x~v2y~X| zS#zOxersB~aS#S85iR}E46=fc(baIqVzzT9O(z9}WYJob+9lD_=3MOg!C?Nj&VEZE z3$)+X0pX5wE8|dd!Zt-&UBPR-lkjlB+O{pR{iYY$MPce3G%L(ZY~6UH6*XU}zC7>F zbVaD;z}=`F5dT1`&yUc_T5GE1&wG(ac;7X9Qdbeh@pE7PmyOBe2j2dh19$w$bujYo zXxaVN&{E%a0U-fl0AMuk{4wz3c+IuFq9iMtZdi%xsn6`$eRx@Ob^r(`+ws18Kv7u~ zhEXhGzU-UMIa3r}z_=CobErPIciS9quH9vO?PS#K_QdwC?{+DaGlZpR;*|0aPrzOG z-8O1pErE-n{l1Kv9#MxUv8kN6&1Vh(u@DYw0e_$`){}~y#XeCq3neKpor+synT}> z>`O^ViH_PH(GJ{Yx+_ac%Sl)Q z0M>-l&z{x$*0fx{70i!j2dlmS00E)0l1?bi(&_Kaoq47(a#++;26uC!5OE;}eEp|< zx{E9b8ByqyVeR8WRn6*Ju5#vS*9#@9PXJNh{_ehkk!JJM`GEM0=Zv9hV09+!oQUtp z47P*Wm99D&D_u|J-8{CMZbiAyA@ph$8r1;cYKwNb>Vm&gX9oa)Sip5zltWnXfuRtP zSo8h3poldPDdUVoGb9rZZwjU?hnO~lNKhn65Clz5$T&q=K>1~9fI}<^dBS}LPQ(@} z!9}E-ayI5=UFs18!HvocmUck7q4j>_xMQeTmvDbherWf|d+r;4^8viCKXlwF5=SH~ z7>Q)Xj{%?&@LmhkxJGy#1PUl#)QC9;#8ZyPG({3IYB*jPB1HxyV3$l@B_(43v}~<9 zV<7-Xi2D4@HNz(fcXY8YQ?t@UDelYBwC(lVZd?h%DrI38qcstdO`}hiY$i(4&LLOwqNoV~3hLG6jDWp> z%*C+iV8dhLDN+Ii!TR=5)HA>pX}#L?O~yhXs`bQkFgy}6ckNRb2+8x(k$HFFb96A{ zh3%tT*3KISV-aJqEZYEpV=5^L#$v`IP07kthvrkB&M^m3THZSOhZX_hCY72LxeU7u zHwf}M20>CV2m-oM^{1HAtPDBRsE4E@ce)XYI4UeJU|xwKB^2Dv+K?>*OA7ktlf1Xc z?erFnI!@P4oNJu%;&vB1ZH&`a)NIDJgSmc9QRlq~02t?^Np<|(nej6x=BCEyrp5~c z!>jKnj@*|%|1aFR^Y=dXJJ}sa)_4X^*G{aGd$uvKqzKbfVB4MYb^!1~!q{5RnA56< zo{MF<^75bW+WW||+tge2`J{m}yMrK%DMJV;^75-F5f-5_&nvaE(4Gip%R$-OgoEu$ zNJzfF=i#pJ_G%a=7cYzB-a2+>S?QpR%2YblECI<9FN2qDh7=Xx8K9XarTc=N$r zBWeW1y9uS1HPUW7+j2WIT1L^#xeL#@L49!FyKcEJP=v&zWw*0F^>9xjgX5b@VP8r@ zO7xq9*Hdi|f&f5JHI)zw0$d$-xB)cD$f%j}6Q4qno9RDDS4b*a%8A;`8<5D6fD2~N zfBDqT6E7u34_@%Qy=Z1*I(t^nOOr2^PCq?-{|B*Uje9L`Nl%_qTCX=6^+puOiXwOV zKc(3@MNzT1*0Me%;G~wi^u>RtnrR-JzVGAQTEC9#-uOs*XFXs5P!FP%ohXb9&7b=I z{MqO7yANZeFc#SubV1+(+@iJZNI*#pgKJmV1*~g%T`RU{&YybnPiJ3!%2ug0@>Vw{ zRX-|uGMB2KUaV5i8Hb856zrXb6uQyn^bsVWqO~n;9i}kSW2YPb%@xy_ zw?=D$4gd;9MRB~NOx8E5vjYdph32B!I%Oe+c~h670EY89hYG=KA!7ldC10GQmSveT zo@XS+NWn-^#T?-tU6PL>p$y?w1`GXWT`HR`l%Y`3tiZLlt$II_@|JCZirXa(vke2xS0*losQcMLy&>T0+Y$v5w&pn^$E- z8PQ}*7DYb{UHVD{b$XR43MK~>nGv@9@Hl3zkXF|wLvzj%gZ0(2F~;OXA@08{M&Ovn z#S8#otY9p~ORAYTr?O-qfl%tDB$wcHJ0t+$#&q5n1P%pD{nE+5{M~2%+3(!{OTT>R zLykAoDUMLptghu#U-&kJQMi9JmYL_z1z~kL&!0`9s#y!?1cpIGAfgyWp1)9LPI)_I zB|n~}{B@^@a~csxl61+5#8QP14vC@`#cmg+|Lemgw~&-w0H7?CBtxC40{~>R(V9bz zG=2N&=7Q#UAcsivyIa%J8xLaK+{y)kiBIZcaMnzH?1PQbW}CGAZn zmjbxx(u}TQev9>eJH$wSr52yAIwdFU{LH&y$q6Ug!TDx1>$4WcfTeYLwsa9ypu?6d zib}Gk&Uiyd2DLQI>r`yjob_n;tyZ3;{q8 zU^Jo3PES~gw3SMG?dIw_yC`cXzwt-asbly5=3Mwb7$4afqU~MZ) zu27mbCOoy`s_UKKX{DKH`h>NcQvje?yQ5gka|5Zg*=nQ{iIL=vv(1>^IAb3zLAF8= ze?yAww-BZz5IRLz1OPIY_h#-`Y0FpZ3lYA%vX&}rNoeN}4;U#JD{S9Bo=9}dwDX!E z1R7Q+XUj{a_6y_Fd-m*I{IVMxJD*9}XIdvHXMgV$OD zitLMY)OJnM0vc?!+TLuoOvA(?MhH8utLxe(cPL>wXB3-He!4YxZs&a;lFh<3FPP`& zf8cFsxnx$)tCCSI;~)FTWHapkKw|@59}<=ak$&#U|7_U3J0ALpsdlMGUe~HtvyB9l z&ZOdqL}8?As^@wj2m*kttTn>TkS$!EY`*%0z3o0Hg=uN4l`}6E4!i{cVl0vnw=oz3_Lt48you=;#pGAb8bC-Eu`bKDs-!hFmr3mtYV{M} z{`B~ZUle6+=bJv-d*IEwjLy^`BrK*ZYZjXRSm(J7f2L?j6w;jvymm+;mhDgNNa=k^ zJ)hLKEApOc$7lr1Cp2PuP7|EC! z9Qx;au{M~=AuM+6+5vzvUiRsPXMmbkl~87aAP6yS#O(4c8I2Q24B2bWFuL5U;tT)~ z?)YTRiN>zDCJk|q=Np_gH7)sxFU^jXf=lz^kzIu^y-+G-k|~`EOiLL(gt@j(Ixg+) zko2dr5Va(1a9|W(XJd^7(Q`7YB1s~~A`i&)q9+L!jE=ht77SDAi&=y6E|j6IS7ZkO z08Usa2m)hKOq@U=LCz2a0U=2ln-Z+#6$Q~4D;TTCzx>C3dv16jZ)mBC&j3IXQJ<}0 zLD-!jZ|T49@sWEScb0Pk0EXVH$VmW*`wQN#-ZrlXL8a>oyC@o#F{p+(`PnB~!lY?C z2&;=C`{Kbae+oDaqc-pDp#yyYfRHT924!*A8@Z))MD`AZ_`=S;G;Jd!6B?{?AWJRg zpO_vzTQknqj5iGsGx+v(C~UcbFcw8|TNvCXPtJ>twlKI&z#;%}N`kP0kgTg$dV_A5 zb8ULD;kpq?YO;xL_P*m42nbJw_{CDIb#>PBYs8eb!?@&x)d-TBc4Gu?&XW@NL28FF z0E8TRb@2`3^1Kj&x&`L!$I35EITMSk_1BApWEHC_))cHLSP_vJFL$@eskxj{?C9)_ z!;YlVF4sBbqAaeivx~9@0A{jx=)k*;{LVGDYThqjY@Npf7Hjdu*jXwFZoPcXs`+bz zuqdz)dV7|-_pHU7y#t}dsg|vwXP9Fbe-@X5A@u6v~C?W_5fu&C- zg-YD$x+i-F3CZ^r9@vUKuLS2DA&l!~VRjm)GW4b&Y6`HaV0kOia!s^VI2KmCc1?e@# zRyfv?J5AZ@GY6O5Ou*vF>cY2G!H_K}eq;Akw;B;^f`A2tC=IUXnM5*ODz(=e?VY0| zn!YeW7)8(_eP)02h0izV&mDO8uf^P(3WF;yxLU2A&ZIELk}Ngq4a>F~jb=KX>R4B;@l{e< zu6^bOzcrmb@&M65F2A9gUs><9L0FtO7mV5iLUkn{VRvw7U+Ltx)kGoFvyalKQ_LzM zo)+O2GHsUyp(vpQUcR}KXmwns6(vQZaPGvnXHR~MGM?`{`1L>e0Exq$k9=(VLqCBH zqvXs?wx$NtgB4!@03?W%j`>~dS86}` zut|fs;drrdfwqI;6+Wx~5@M!6J1T(Werc?QhFbsnTR-!!?*Fv`D^*Ygcj0!7EwfLG5t9G_LX|n~ zY3Tlx8#eTUgbhH5>ZtW24+l2(+85X9Ge{kGN>#I}k^#od7suq${xFg8gDTmAmH1l? zV^I_}WH|`{hE{C0$5z_%pYQof=NDN@oQV&+5dnZ6m5}xu-|~{NsO?R{+wKwlSe8

    4t6Qwv%Wb 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%0AyqPhpIDoB_2%yJA(NbkR2)u_5WPlje+GV$7 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�ilGKtEeoF@APo+Qm~B7Cg-Q4 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%0Dgz}a%T0}tfcWhm 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 literal 0 HcmV?d00001 From 1dad92ae0bcba93d87356d08bcc932762113cdfe Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 30 Jun 2023 16:46:50 +0100 Subject: [PATCH 1623/1725] fix lint error --- apps/openstmap/imagefilter.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/openstmap/imagefilter.js b/apps/openstmap/imagefilter.js index 61d14bb53..07ff1acc8 100644 --- a/apps/openstmap/imagefilter.js +++ b/apps/openstmap/imagefilter.js @@ -30,7 +30,7 @@ function imageFilterFor3BPP(srcData, dstData, options) { rgbaSrc[i+0], rgbaSrc[i+1], rgbaSrc[i+2] ]; } - function dmul(a, mul) { return a.map(a => a.map(n=>n*mul)); }; + function dmul(a, mul) { return a.map(a => a.map(n=>n*mul)); } const KS = 5; // kernel size const KO = 2; // kernel offset const K = dmul([ // 5x5 sharpening kernel From 0662bb44f5dae9e5fa1babbb456a0521e684033a Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 30 Jun 2023 16:58:02 +0100 Subject: [PATCH 1624/1725] darken dithered osm images --- apps/openstmap/imagefilter.js | 4 ++-- apps/openstmap/test/index.html | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/openstmap/imagefilter.js b/apps/openstmap/imagefilter.js index 07ff1acc8..aa976dc0f 100644 --- a/apps/openstmap/imagefilter.js +++ b/apps/openstmap/imagefilter.js @@ -8,7 +8,7 @@ Stick this in a file so we can function imageFilterFor3BPP(srcData, dstData, options) { options = options || {}; if (options.colLo === undefined) - options.colLo = 115; // when adding contrast/saturation, this is the max saturaton we add + options.colLo = 140; // when adding contrast/saturation, this is the max saturaton we add if (options.colHi === undefined) options.colHi = 250; if (options.sharpen === undefined) @@ -103,4 +103,4 @@ function imageFilterFor3BPP(srcData, dstData, options) { idx+=4; } } -} \ No newline at end of file +} diff --git a/apps/openstmap/test/index.html b/apps/openstmap/test/index.html index 654bd0d21..f17761b9c 100644 --- a/apps/openstmap/test/index.html +++ b/apps/openstmap/test/index.html @@ -17,7 +17,7 @@ Final dither (Bangle.js preview)
    Sharpen Line Dither
    - Lo threshold
    + Lo threshold
    Hi threshold
    @@ -104,8 +104,8 @@ } document.getElementById("getmap").addEventListener("click", update); - document.getElementById("slider_lo").addEventListener("mouseup",update); - document.getElementById("slider_hi").addEventListener("mouseup",update); + document.getElementById("slider_lo").addEventListener("change",update); + document.getElementById("slider_hi").addEventListener("change",update); document.getElementById("finaldither").addEventListener("click",update); document.getElementById("sharpen").addEventListener("click",update); document.getElementById("dither").addEventListener("click",update); From 27d905d8f1631f8640ab011bdfbdbdfe2d43af11 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 18:00:24 +0100 Subject: [PATCH 1625/1725] rep: icon size tweaks --- apps/rep/app-icon.js | 2 +- apps/rep/app.png | Bin 8375 -> 8617 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/rep/app-icon.js b/apps/rep/app-icon.js index 87bad2960..6ad60b46f 100644 --- a/apps/rep/app-icon.js +++ b/apps/rep/app-icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("k8wxH+ABwUBkgACAoIXPEZlJumYzGe4XCzwFBulJFK8Ap4gB4YABEgIoBAwfCp4oTJIOeDQVzOANJAAUkktzGQWYKKMAC4WYp50CJQZ1COgNPzARBugnJstlEoYTCIgIiDEIQrBFQeYktJHIQnDxgmHEoIeBkhPCOgQcBAAUlBgyHBE4hxHug2BpIpBC4MlJAhKDuidCTgQUBO5K9BRgMkCAOYIQQhBzFzJgNzBgIzDJYRPBeBMAS4VzLwRPCHYMwmNbrcxmBfCCAgzBDYImGXwV0p5PFpNbw2G2AACAoNbN4RLEuh2HkgwBkpPCCwUAwGMEgYADxmAJYQ2BDQkkEwiRBR4LCCBwMrJIgAHw0rHYaiBAQRzF4clAQlzrZLIJ4lbV4UlAQh1DQARYBJgWYgxMMJwUGJAJOCDgK2BEwQgBulJaIXDttVH4MGg0AAAwJBLYNVtvDpJRBpL0BpImDEYILFbwIaBABRcBwwaBIIYdBp4mCp4FBEwRcCEwWFABQmCRgYmBEAQmDI4LoBEwOYkiMCExuwkgVBSQKPB4QmDgFJgEkAQMlAQImRDQMlAQMkEARNpPQK/BTYW8Eye8TYTFCE34m/E34mH4VJuYCBfQImTCoNJ4VzAQImDgFJgEkAQMlAQImRDQMlAQMkEARNpTYNPuabC4UlwwmPw0l4SbCuYgCEwlzEwV0KAImCrYAKEwS/EDoQmDKYILDAQNtquMDQIAKreMqttHwJBFEwUkzxvBLgQCBRgQAMLgKJBRgfCz0kdIeY4clAQlzH4IlLLYJJBzElAQjpD/znBzACCJwPClZOMw0rCIJMCuYCCEoZ1BBwJYBCIQ1CwBPIxlcMoQ7DDQRzDOoV0aANPQAQWDrbeBJImGrY2DWwVPDgRzEE4RLCQ4Q+CegMAmExrdbmMwBYPCCAlzJ4QlGEwJLFz0lUQPDDgIZBGYIMBGINzkueJ4lJEwXDOw5vBJYQZBuhFCAATRBugzDCgRfCJgwnDJYUkC4IABuckkpMBAAMlBgxPCEpQnDT4UlJQZICKQgHBGAITBEpp3DCYVPpIhBRgIiCzwrBpNPHIVzEpwnCTgadCOoYECGoSaCEovN5ooMeAK/DJQJQDGQVPJQ4lMKIh0BOoIACAoJ0BN6ApMgEkAAQFBC54=")) +require("heatshrink").decompress(atob("mEwxH+r/+ACIZBkgACAoIaSFiVJumYzwAEzF0p4yggFP4XC4YAB4QtBAwnCGLpbBzwjCuclklJAAUkkt0HYWepIxZgAgCzFPR4ZcCMQKPBpNPzARBugwSstlFwYcCKwIrDFQQ0CGYYPBIQQwDxgvQFwInBklzDwKPBRwiQCBgo3BGAiMSJoIyBXoRaBdYYJBMgMlGIIsBaYSSSgFPFwMkMIQiDEYNzLoNzBgI8DLoRhB4VPGCEAXYV0FwKUCcAUxmNbrYDBOISKCLoTDCF54bCuhhFP4Nbw2G2AACAoNbT4RdEJAKRPkhCBkphCD4UAwAtEGImANwQ/BDQkkF5q1BWYICBDQUrFpAxElZEDYwICCRxpHBkoCEudbxgvLxlbuZgBkoCESBikCOYJeCzEGLxhgCgxaBpIcDbQIvLFIN0pJbBAQNtqpRBgwABgAAEBARtBqtt4dJMYNJug1BF5dPFgIUFwxQBrYAKNwOGIgJKDDoNPF5tPF4R6BkovCwoAKF4SnDF4IgCF5hZBuYCBzGYkiwCF5uwkgVBVoKqB4QvMgFJgEkAQMlAQIvRDQMlAQMkEARf7TwV0X4WeF6eeX4V0X54v/F/4v/F9/CpNzAQOYzAvTCoNJ4VzAQIvMgFJgEkAQMlAQIvRDQMlAQMkEARf7TwVzX4XCkuGF5+GkvCX4Vzd6FzF4V0MQIvCrYAKF4TsCF4QdBF5huBCgYCBttVxgjBABVbxlVtpHBJQovLkmeRQPCzw1BzCwCABhuBUgNJDgkkF5cAzHDkoCEuZRBFxZtBLYOYkoCEgAvL/1zLQICCMAPClZgMw0rCINJMINzAQQuMSAIXBOYIaCI4WAGJGGrh3CIgYaCRxiQCunDulPUgQfDreGGIgFBrY/DbQVPDgSONGARdCCwOeKAXCDYMxmNbrYDBIYPCNwWeFYJhCFx4vBLouekrGB4YlBudJpKzBA4K1BkouBMIgvC4aRQzx/CEQV0boIqBFgWYug8DT4IuBRqAwELoUkEAIABuckkpeBAAMlBgphDFyYwDYYQeBLgWeLQJkBE4JiBTwK7CFyySDDgVPewIqBGYQrBGgNJp5CCRigwGVYInBEAKJBR4aVBHwTTCFwvN5oxVp4jCLgZiDAwVPLg4uVMYiPCAAiPCRTIyMgEkAAQFBDSVfA")) diff --git a/apps/rep/app.png b/apps/rep/app.png index 3b38ddbf76b5c527c3065c8522356e28add57492..795cd94b4451587e23988d3f8f8f77633a797cef 100644 GIT binary patch delta 4955 zcmV-h6Qu07L8(KKBmu*bB_Dr54#OY}yXO^q0^k7QIdtu${b0{uAZgcDvqWm_$PJ%l;Zun9*+R~bY=MzBu_V% ztI^o=wZS0E`1dS5mYBqcNf?&uFImB)X7)d)h%?;jdXAvI+<=0004nX+uL$Nkc;*aB^>E zX>4Tx0C=2zkv&MmKpe$iTeTt;3w96@$xxl_q9Wo{t5Adrp;l+0Yt2!ekfAg(S>iY`*(|B^zB7!Qv7@$TN^?j7K-mzipI!~s>ajC3*~ zWOFM*@D*JcMi?^)OU%?~MKJ}>@pTU$U+-c(%lq7)qgTnB4DboWai$v<@jCI;rloV< zCyua^q!6DIj~R49;zzE_F28XuI_&3}5hIhHBaRRY#Wt4Pn3aDFm3Wdks;C;}`?D@9 zoVPfucI3T>9v*? zJp%f+fs5;wChtW7mpj0~lP(#OBL!&s3kBf)jJ_!c^xpzKt8Q=2eVjf38R{x^0~{Oz zqeaSI^LTf6dvE`qY4-O6)fCEo5XjWGysiWH~K4GBhzQG%__cGC471Vlp{1 zlRpPf2RAx3IXW;lvy}&K2m~JZ7I%{e5Ho)eI|ec2z3Tt~5Nt_AK~!ko<(heXRn@h} zzvs^P<_?)}CdfeMQKE!|c`%@&5D`$Rg4)_=YqiyumeT39RZ+A)+B&oq6>GuAB$HB^ zk%+;7VahFKPPy~xAGv54LW$Zx-skP}IiJtHXYYN^`t7}@z19*|z1bx`_w9dh zf$KC+d7%uSMB@{E7Ddi}@rrH121^dEP#88XJQoV8EbN12AB9P>+cK0(c}ZhdUEe2vVs~$Q6`zwzB5f z5yz(9>aD;pfu`Xf+h_TyFh{pW95sMP8pT_IXaP3787CHa{9~s9&%IkPzhF^vmY|SG z`K-N#Et3rrB7dW@icp<~B^jAah={@E^RlJ-oVcuH=cm9bpcoK$^*kBv6NGp{@RlqH ze#Lt&I%U^-_;926DDZngF8T-p)&jGESC7nHmOL#w4wKWtj}GjiqszkT`E!ZW8Bi;f zAP6*@`Z#j2fo{7UfG~}QtWYC)(Xk+k%#BN=(QM-9AAjyAGF->%Tj%gV`c1+ZgJJT_ zkN*A!@O|K*PhcvD(?n5v2C&@l4t%Fc%<}no9)TbqJheVfFaaA&?s#~7eq^jr(bLI) z?cByanK^uKd>#skgl_vFTPn`+O63WXF%T`$qY4<>0f)^+tIx~@%si1ffyHT=glYnC z`aHaLs(+O22Z!I|!M))pV*!QAo8ic6y1Y+`$56`Lw6_`xlCq=to&5Ex8=Qgzw;Y)%LD zre4l>_wdTeQtr>pWI<{=k$OD`n`(LY^ckL>Tz^1zSS0V)R&dY9TmA{$?^m^7OAD=i zJUZv`Kh0SnYclt9|F(^+DZGz4)u4C?7Z1^Yi_Cd2jK(MC%MZx&H&t>&<0< z0)Kw|bpT8Tw)8Ar5vh_&S-x=#caBfzp{$#!?CB(9_v`GN@&JY760r_CIZ$86-K`%m zZgMaQQ6U6}3~8ahUOV-zebjy0&yMJM%uX1GR;^@zeJyi}|3T&a$4Ltf=k2p6*;8J_ zJ4+T~^Lhy1u%-=I1eArg+UfAnRMX4ml8bD4sfwTFO`$M8iDKEqEZ?<_ zO+`z1I4hU)J-zI0tl{qD4Bnr<#JKR|&G!PQ0LQh6lw1cu#CU@5njRA;vAUf6?SI$_ zp3E=6>GAN&(c?TfbuLq5;yKmcO5wh@NqsYgdzR&roMpU(S4#I-SfM6EDpq>@L7K5|P&fQ1F8Z1+fOD zies%8DauL5sMb=|(~WJw#q=?8^nX~btf=14Pxdch{G>4`lu`sgUw(OCx`zHMlu~l1 zj%CHc1+1t!NUz1pj4|<;yPcfx?Im2JWqwWypSCp0CD(@{~iWM6d0EpMt{~-qnr@ z3FD2CRCado$K-M*&WJ-MlYXfW#Oo}{us*q5O8$&^UQDi_s-uJP#wg^7RCaZc7!-mJ z58XBkQCgiOoxs_C|LcZ@IDa|I5ThQWHL#mSuf;6?Z8j3g&@Kq#wYBrmV-cTEvJ@G?28|mtDWd@ps#M5CfIh38_@JO6RcLV$7Z}KZ!$B7oZc7TG zrM@40B1t!ge#s)@<$p#-ywd6jfKS9Z=q4^Xgko$AI2^hEm690EjB743$EKN-0C5kfBp3 zQ6WR8kfW6#{%?s1;{|pZwjYlb~{lX5m-}H$i}L3oNa68 zrCD>3AI1Cn#WLq;WWcPF%6ta3hG3lrxl}@kR)0qb8WeIFv4KIv5{Sj*@UxA0*>OO; z+6-L&%s)pEV4!c1c!G%w3_>QA5Q2sftqz$~La1JgL9Ia{k@-dnuZ*+>%{0dS$;YL|Px9uk8?I8`)^}c=WNU#Ec7O{U1MNVx$qI63#Yt zFm6mJ0PQ9-g=xunJRbT62IWBYr~sVn?|&F5&H9Zh!BM zh02EYx!qolA8BA^T_$M}5uEDmz=J?qn31~vUSuc;3((SLwfL$r9T+Kha6Ln|;e2nG zfX~Z{S(Es@y$#Xp<=H!C@y_AX47yx=Z$ci`FEmnD)rC0hLb&!l{Hm$wqHawik4>1s zpv%Sj!(}`>?^b+XFQ2!!@RQjE;D7T{-PbJu?|l_ZeEiR!ooF;U9ZZfM%g!^^bPifc z4GBXRtl;D3210dOUQC(Ii?{Bi?30VQoZhRn&XpR-<@9o*xQVrMKH!Cv*@OgWIn-27 zV3?Ye;1Ig(R(74KqabPwCZ~fxd{)u`93P2D>2&}&IeTTnHW8m+aiDWatbkWU|ZG#^LZ#TiMNl-IZ8=*}?16 z=aU@~$|3bn>3<@9*Q=KWcMsOrQ`EADgvkctqk;(y)eNb`9y_&deKZ~I zV`uDL%t}l^t5mYLu7=w_*+Au8kCPS_&bqTF*>|pn_4h8s>UCq>@M0Tqj~zZ!Kl-}| z5q-Obb^qOeqrqMLQQ=L$K6da2f0{K<{?c7@S+aQ(@qxk27@I&%(SH+scgGGI`ubU# zoy~&uG{p3DPPVpi{8Td?Jwpl2DWOpm#82er+hYI`tINr2CyukNvVyvzCrJnn;mE~0 z)}1`Tmc{p>kjnV=p*?Ot?;lq`vQiB!Mv$BU`bV1|FaYmuo3Z%zh2t_f+uhE~$4Yqc zrW|I+Cemg$v%9*Ie}9}S=gC|0NC^!kAt)HFQhnJ=tjRZovjWM$#*%s8&drY; zD^&G#@|_(!SeTK)_jB`5Nn~`}ZEUS9=Z_VoBw-*LJt~bq#eZaX(TbTG2KZstL>8rG z5T*{m;dAq9*=OviIM2GGB2q)cIo8%BPTBL;Nk8#5-$Jv5|UK z&zgfyq2x$Q1Anvk{k__sI)*w4;U1 z73FlB?JUelAxdY!7@#Fgtsy|6^ru;!bPw9;v{`Af46wbtnus6`i_)q$(1qh<}Yf)sMJZI0rZ)yjI zw`kyQVCDnHjG1>PCI?39^ggXZDb>rBD6c5?u)3YTc8f*WS#!Ssy{^h5em>s;w2oY8 zaz`*=m1pm9{U-oia!2&T%5A0tx1_^DaR6HFlf;t)ruS@>R=8!cmQtM{i4%hh)MW$=IH&q&PTxfRI8R#P=30x zUX7xjpKn3_BlH)E6`KbY4}wgCJ)q99LM%C*M_609BF{sekVf_qa=(9Tvh8h)i4bXE z1YP|1YgmGVf11I5s8`ltSF}7Ilk`Us#B3>t+-n4Yi z`@~^Zk`&@|;&Fp6Nc_lk+2uFRMTh-7Gi+qibHrg{q1eW98?%3sp%PCKM-^40e1Fzu zh4U6?wOnP*d-4~C^4jte*J%zRi3Kb|ga8>;Y@iGaFvVNRA);4}N!R7A7a$q)-Cre6j71Q6RVrG-|f}eQeu}6Cm&mTxl(Tr4Gz|l3r_R z(IcRL8@RY`Y4SxLaJd5vKIxJnIZ}Y8zfb_)&*+#I8Dvk15)$?bR8fcsXsLo)^|iIyYD-J4wXd}mMe9pjM_Z}VTJUAbvQ#z_ zF&Hqc3_>>9`{b;g{q&C2S5~{t z^4*W>&JDcZdgdT-5ZDT|+$;d$MjR@+Ps~wEBtobt&?d|N*bB&kWx$FRDH9@|9GjCr z5+r|DmzCIGJy+5WtOVW%+}{|0@3x6jpBw3Wv4ZQeUva>1?h8y=xMJ!wWlnfBE|-&j zr<0v^XL;|~No)*~fB}P64ZwiaK|Lk{2;kwo9PUg=AxNb{Ay-h=*~+RTha4Mvt2YDB z0ZqdP+hh5uFk81u95H~08^u{bv;gb=8YdQb{B@@QFTGzduV7(vmY|SG`MkY_O_TT% zB7d#2icp<~#Tl85i-^JH^RlV>jJUL9`)9zjKrtZh=y@vICkXL^;4PUS{D$|2W#FMk z@loJKKrZ?S0#*Yvfj1A$S(-d0Iu4W5!H@RsqNB^g%6W5$(-}}JlpqK+oBB9(zJYGL z9e^;6hOAH{dC{>Tip+^iq|t2R=l|SGWPiAhm9u7ZfBG%LD1%|*^pF4k4)A?ozfWK? zh*LySdJ3@I@CrQABxd=1yo^AQ51w8dCzycsC3ieDHa{{}sOahBzqW7Tp3EG+H#QH2 zL_)WHkWCe5c%$+d$ry;1=urg>t$@SkqSa^S9A=)(9LJ)xOhPpQIDH=8I#J5j@_!2c zGQWuQFe4>x=fw%T{#phs`LO%xdJxnL!d|!B3=5?q68i4r_g1odr7S1V3%-~da zJFAP2@IdZZX2d1YZZ@&CvWg9r75w0~JW|8LNC*rjK&iToDok+c&{Y|yJfASR1Oe`QfEPs*@Yb&_tlTH5uzU^1FUrP(Eej+;Oi9gJqFKaUQ z^X)C`Sygx^Q)1$&>FwpQ9b5TMW)AmdW}{Uo0fA#J%^a<7q0=-pamGL$`3W(Mix~xi zh}G$2{h8DJZ^dceDJo)2a44TN*YoqeyZKg2~i;ghYV?< zzFs@^t$oye*3Y)+xy(!$gI29%Z+$JZi~m98yeCKt4d=bn$Jte0!`~J!z~=Q3zHU_; zun;J@8AGN5?%h6hu`xuYVSh_?1UD~zN;i0LfmyIRo+4Nc!Kg*j$VSEzBvWHl+- zCdb5cqP>;EJ@1kF*A(tqnoDw)@e1Mrlqwm?Sw`+zmP_)xi4^Wx%gOduCXJ5c*OO=R z=4YiiJszIUE8x$EzrgBrGJRCMG?TEq0OPfYydHppAB-!AH7HdaX+2L-PC7=lma3j^ zYy&Q)j*6qlYGrx#UVnbFcRph$j6$K5BKZ08;(g&7dRHi=s;_30@)tNnJ69qzvPi#DW0g@EiX<42~!;CN+$t<#D`qtbY`hLcy}>xA2Qy`;bVb z+!h(dYx|FYL`q6`3=G=n zv)XZcee_x^^kT>5@zP{6(S!-DK{Z63AY4MUaG8a?;@hw`x*!!z^wDJM$K&b%jdbU>$_nYP`=$-sL%%^{fI%$bSR>mp#El-2j# z&VTx-sD*bV@mbNA!=OL?f4>Qut|*%C4!PC11UxANkHyxV)Ws8UJ66)kLl$ zJzrfUBdUE91N^6pg#Y8^{{aBuaz+)uQh!iHt~3N!v=T(FE;!yFEBuej2=hM5`kN4GOu8*nhwvVhO}za`@Rsykt8dUTFp{{pN2Y2r$q$NIb#B z1qLCLN(ezih*pP8Dj`&_#h})pkjQ-3I$pWf3iLQV9swXYKtqq+Hsm1b6*Tsn$cu<3 z9371{y=ZkxkO_sY-T;Y*kO-{UCA4mk0YB^0ceS{K#UZtXOz=TRabblDuW3>^i z89LQ)dR+q0JrV%t`mJ`k*XtoMID`Y$bpRwphj6;NgT#iLmQe4o0(y*#3h>=LBgYtPbOweFl&GR8RH|3AeC^sse>`2LIG$unJG+5#^dqO zH!vs%sz(IiOn=8{6Q|6bcA$17GT<_8GN$L}b+T_mUAFfeV2Xoo%E?M6mo^2Bn7@aJ#)Xc2qX(pMTr!<>;XXR@7yZ z77@XT&JH{Xq=gx&>+eN|g0KKBZB~n~8q>aO#SX4#$kv_h?Go^LSw3R|U$nO&dcFMi zjv4&z;7JBuF1|M|kLp(%sjKQj9CjgG{T_bRRCH0ds*%UXjbqT|V(q~)emi#-KChQA z+FSU^%mVOvsqX6*fPW8e#u6X>In=}lM)<4m)**aQ*{(X zjl$$~@Vn1T8i1qMB2s!C0FDl9qw_;Xjmr*;5CXI^wpLX#Cx0P{r0@`)*t3Jw;BdxA zkLFvEN$mL32`bfn$Q3el1{E^drE}wOc&M%HX5Y?AEYEfD_SAV~M?`YCxq)X7?_<^M z*@S2Uc(M2(cju&%ZH(k!4d=XXG#!5**baDZ=5V(F*xd7-pGK*rGL~)nkUKJxcqsce zs(QLe-|^-phkv{K>+30M*+s%c1MyM8gobK{RAP^v+O|HL4)?J=_AX{5CZJU+*jw~hJB2m>-9M5jWeKq1 z`6K&(@P`?5<*(f}hs7H=5FZ%Kw9yIF6g|mf+qTir*MHBF>}=+zry-`NbG)^MqbHi_ z=ot!VP6~~pAbvcz-W~&pSY1xuI(C#Tl@-(#Jw-xr2#3zsvF7+OHZ8gjg;d7#2X?vr zynj^v@Cr4s2tjfT=pSi(zyN%(W!j?K7mUf^bay+iA1UF1TXL8gn@F44%+Bgc{&A+9 zr*6w5C4V%OgrH!wO7$h3Se=8^_V;nFr-wftFXe%(Z0<@;B~qtnUteH;XqFW(AUg^(Aw^o0}gwTBz#jN2589)3nyA12#DBSP8!T6eztQDqa*dKoG}}nLdl_)24?R0d$m8v zcYgrDb$YG>@F=qX>HE3>1Yk1o(%ORg6BZ|D3QCEL(vB83R+Q6iwzD83g(#f?V}O=0 zwT1wN(jR7Z(miOW(`Kc`GQigIY9fL(EK18HFER#)*TaT$XT*m}c63>zWqTEUIW?%k$a^% zyDGm40Qir(?+2d!aZ-NdGq+CA1S-{nMkWV|1VoW8n}uG7{mWE?umGJu)xd|{?SH1< zVHaQjqQw4s-O)DSx4^o~b-nw{+yFropBF{;$a8k>|E5-8c!>t?2BzO{%$R;>Vsc=l zPVdtylv2H1iSlBy2UeF8tJ~>ow^)SjHD~)j=&C&A=kskq>oxNSmoKfT>l9G z7u*s3uymWLz-_4n#sxBzZezk_IVFp!5x9_UbHbl)WB$77Hva|zNX@?Z&;ben0000< KMNUMnLSTZ$4L6_w From c930936b39d0c157cada21c55d622c377e11ddd5 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 18:09:11 +0100 Subject: [PATCH 1626/1725] sched: drop alarm index guard --- apps/sched/sched.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/sched/sched.js b/apps/sched/sched.js index 9b5bb149c..eac91c1c3 100644 --- a/apps/sched/sched.js +++ b/apps/sched/sched.js @@ -51,7 +51,7 @@ function showAlarm(alarm) { } else { let del = alarm.del === undefined ? settings.defaultDeleteExpiredTimers : alarm.del; if (del) { - if (alarmIndex >= 0) alarms.splice(alarmIndex, 1); + alarms.splice(alarmIndex, 1); } else { if (alarm.date && alarm.rp) { setNextRepeatDate(alarm); From 27bf21466ac97452beb0ab61358744da6a206ab1 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 18:47:20 +0100 Subject: [PATCH 1627/1725] multitimer: revert triggercheck, tailcall sched after hardmode alarms --- apps/multitimer/{ext.js => alarm.js} | 21 ++++++- apps/multitimer/app.js | 28 ++++------ apps/multitimer/metadata.json | 2 +- apps/sched/sched.js | 82 ++++++++++++---------------- 4 files changed, 68 insertions(+), 65 deletions(-) rename apps/multitimer/{ext.js => alarm.js} (72%) diff --git a/apps/multitimer/ext.js b/apps/multitimer/alarm.js similarity index 72% rename from apps/multitimer/ext.js rename to apps/multitimer/alarm.js index 6e29e737d..1fbcc7955 100644 --- a/apps/multitimer/ext.js +++ b/apps/multitimer/alarm.js @@ -1,4 +1,4 @@ -// called by alarm.triggercheck +// called by getActiveAlarms(...)[0].js function hardMode(tries, max) { var R = Bangle.appRect; @@ -62,3 +62,22 @@ function startHM() { //between 5-8 random swipes hardMode(0, Math.abs(E.hwRand()%4)+5); } + +function buzz() { + let buzzCount = 3 * require("sched").getSettings().buzzCount; + + require("buzz").pattern(alarm.vibrate === undefined ? "::" : alarm.vibrate).then(() => { + if (buzzCount--) { + setTimeout(buzz, settings.buzzIntervalMillis); + } else if (alarm.as) { // auto-snooze + buzzCount = settings.buzzCount; + setTimeout(buzz, settings.defaultSnoozeMillis); + } + }); +} + +let alarms = require("sched").getAlarms(); +let active = require("sched").getActiveAlarms(alarms); +// active[0] is a HM alarm (otherwise we'd have triggered sched.js instead of this file) +startHM(); +buzz(); diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index 73b1dec2e..d5173a8ef 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -63,6 +63,14 @@ function clearInt() { timerInt2 = []; } +function setHM(alarm, on) { + if (on) + alarm.js = "(require('Storage').read('multitimer.alarm.js') !== undefined) ? load('multitimer.alarm.js') : load('sched.js')"; + else + delete alarm.js; + alarm.data.hm = on; +} + function drawTimers() { layer = 0; var timers = require("sched").getAlarms().filter(a => a.timer && a.appid == "multitimer"); @@ -297,14 +305,8 @@ function editTimer(idx, a) { } }, "Hard Mode": { - value: !!a.triggercheck, - onchange: v => { - if (v) - a.triggercheck = triggercheck; - else - delete a.triggercheck; - a.data.hm = v; - }, + value: a.data.hm, + onchange: v => setHM(a, v), }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), "Delete After Expiration": { @@ -630,14 +632,8 @@ function editAlarm(idx, a) { onchange: () => editDOW(a.dow, d=>{a.dow=d;editAlarm(idx,a);}) }, "Hard Mode": { - value: !!a.triggercheck, - onchange: v => { - if (v) - a.triggercheck = triggercheck; - else - delete a.triggercheck; - a.data.hm = v; - }, + value: a.data.hm, + onchange: v => setHM(a, v), }, "Vibrate": require("buzz_menu").pattern(a.vibrate, v => a.vibrate = v), "Delete After Expiration": { diff --git a/apps/multitimer/metadata.json b/apps/multitimer/metadata.json index 6ae92fbdc..7a23052c9 100644 --- a/apps/multitimer/metadata.json +++ b/apps/multitimer/metadata.json @@ -15,7 +15,7 @@ "storage": [ {"name":"multitimer.app.js","url":"app.js"}, {"name":"multitimer.boot.js","url":"boot.js"}, - {"name":"multitimer.ext.js","url":"ext.js"}, + {"name":"multitimer.alarm.js","url":"alarm.js"}, {"name":"multitimer.img","url":"app-icon.js","evaluate":true} ], "data": [{"name":"multitimer.json"}], diff --git a/apps/sched/sched.js b/apps/sched/sched.js index eac91c1c3..bd84c3e47 100644 --- a/apps/sched/sched.js +++ b/apps/sched/sched.js @@ -24,57 +24,45 @@ function showAlarm(alarm) { Bangle.drawWidgets(); let buzzCount = settings.buzzCount; - let showPrompt = true; - if (alarm.triggercheck) { - try { - const action = eval(alarm.triggercheck); - if (action === "skipPrompt") - showPrompt = false; - } catch (e) { - // ignore errors, continue - } - } - if (showPrompt) { - E.showPrompt(message, { - title: alarm.timer ? /*LANG*/"TIMER!" : /*LANG*/"ALARM!", - buttons: { /*LANG*/"Snooze": true, /*LANG*/"Stop": false } // default is sleep so it'll come back in some mins - }).then(function (sleep) { - buzzCount = 0; + E.showPrompt(message, { + title: alarm.timer ? /*LANG*/"TIMER!" : /*LANG*/"ALARM!", + buttons: { /*LANG*/"Snooze": true, /*LANG*/"Stop": false } // default is sleep so it'll come back in some mins + }).then(function (sleep) { + buzzCount = 0; - if (sleep) { - if (alarm.ot === undefined) { - alarm.ot = alarm.t; - } - alarm.t += settings.defaultSnoozeMillis; - Bangle.emit("alarmSnooze", alarm); - } else { - let del = alarm.del === undefined ? settings.defaultDeleteExpiredTimers : alarm.del; - if (del) { - alarms.splice(alarmIndex, 1); - } else { - if (alarm.date && alarm.rp) { - setNextRepeatDate(alarm); - } else if (!alarm.timer) { - alarm.last = new Date().getDate(); - } - if (alarm.ot !== undefined) { - alarm.t = alarm.ot; - delete alarm.ot; - } - if (!alarm.rp) { - alarm.on = false; - } - } - Bangle.emit("alarmDismiss", alarm); + if (sleep) { + if (alarm.ot === undefined) { + alarm.ot = alarm.t; } + alarm.t += settings.defaultSnoozeMillis; + Bangle.emit("alarmSnooze", alarm); + } else { + let del = alarm.del === undefined ? settings.defaultDeleteExpiredTimers : alarm.del; + if (del) { + alarms.splice(alarmIndex, 1); + } else { + if (alarm.date && alarm.rp) { + setNextRepeatDate(alarm); + } else if (!alarm.timer) { + alarm.last = new Date().getDate(); + } + if (alarm.ot !== undefined) { + alarm.t = alarm.ot; + delete alarm.ot; + } + if (!alarm.rp) { + alarm.on = false; + } + } + Bangle.emit("alarmDismiss", alarm); + } - // The updated alarm is still a member of 'alarms' - // so writing to array writes changes back directly - require("sched").setAlarms(alarms); - load(); - }); - } + // The updated alarm is still a member of 'alarms' + // so writing to array writes changes back directly + require("sched").setAlarms(alarms); + load(); + }); function buzz() { if (settings.unlockAtBuzz) { From 887acfe346a732263ba2954be007999e836d0c0e Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 21:03:34 +0100 Subject: [PATCH 1628/1725] multitimer: changelog update --- apps/multitimer/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/multitimer/ChangeLog b/apps/multitimer/ChangeLog index 252d8a227..842384c8d 100644 --- a/apps/multitimer/ChangeLog +++ b/apps/multitimer/ChangeLog @@ -1,4 +1,4 @@ 0.01: Initial version 0.02: Update for time_utils module 0.03: Use default Bangle formatter for booleans -0.04: Use sched's triggercheck to run hardmode, and listeners for timer reset +0.04: Remove copied sched alarm.js & import newer features (oneshot alarms) From 56401ea1831888e106681a4f1414852ad1738fb7 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 21:04:20 +0100 Subject: [PATCH 1629/1725] multitimer: fix `settings` & `alarm` scope --- apps/multitimer/alarm.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/multitimer/alarm.js b/apps/multitimer/alarm.js index 1fbcc7955..389f8a873 100644 --- a/apps/multitimer/alarm.js +++ b/apps/multitimer/alarm.js @@ -64,7 +64,8 @@ function startHM() { } function buzz() { - let buzzCount = 3 * require("sched").getSettings().buzzCount; + const settings = require("sched").getSettings(); + let buzzCount = 3 * settings.buzzCount; require("buzz").pattern(alarm.vibrate === undefined ? "::" : alarm.vibrate).then(() => { if (buzzCount--) { @@ -78,6 +79,7 @@ function buzz() { let alarms = require("sched").getAlarms(); let active = require("sched").getActiveAlarms(alarms); +let alarm = active[0]; // active[0] is a HM alarm (otherwise we'd have triggered sched.js instead of this file) startHM(); buzz(); From 03a0c5264dbd0b1acd7a7adb81266f2c27f5068d Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 21:04:31 +0100 Subject: [PATCH 1630/1725] multitimer: disable sched on load --- apps/multitimer/alarm.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/multitimer/alarm.js b/apps/multitimer/alarm.js index 389f8a873..b202ae662 100644 --- a/apps/multitimer/alarm.js +++ b/apps/multitimer/alarm.js @@ -1,4 +1,8 @@ // called by getActiveAlarms(...)[0].js +if (Bangle.SCHED) { + clearInterval(Bangle.SCHED); + delete Bangle.SCHED; +} function hardMode(tries, max) { var R = Bangle.appRect; From 8cf0782d936c81e086760124a007ef9483d8aee9 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 21:05:32 +0100 Subject: [PATCH 1631/1725] multitimer: reset alarm's last sounding time when enabling --- apps/multitimer/app.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index d5173a8ef..e133820b0 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -281,7 +281,10 @@ function editTimer(idx, a) { }, "Enabled": { value: a.on, - onchange: v => a.on = v + onchange: v => { + delete a.last; + a.on = v; + } }, "Hours": { value: t.hrs, min: 0, max: 23, wrap: true, @@ -607,7 +610,10 @@ function editAlarm(idx, a) { }, "Enabled": { value: a.on, - onchange: v => a.on = v + onchange: v => { + delete a.last; + a.on = v; + } }, "Hours": { value: t.hrs, min: 0, max: 23, wrap: true, From b2e74d91e3bdbd5555a0b70d3cab5ce19566e522 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 30 Jun 2023 21:13:31 +0100 Subject: [PATCH 1632/1725] multitimer: readme update, remove dead code, restore sched --- apps/multitimer/README.md | 2 +- apps/multitimer/app.js | 7 ------- apps/multitimer/boot.js | 10 +++++----- apps/sched/ChangeLog | 1 - apps/sched/metadata.json | 2 +- typescript/types/sched.d.ts | 4 ---- 6 files changed, 7 insertions(+), 19 deletions(-) diff --git a/apps/multitimer/README.md b/apps/multitimer/README.md index cbbe5c92c..04bdf4a6e 100644 --- a/apps/multitimer/README.md +++ b/apps/multitimer/README.md @@ -2,7 +2,7 @@ With this app, you can set timers and chronographs (stopwatches) and watch them count down/up in real time. You can also set alarms - swipe left or right to switch between the three functions. "Hard mode" is also available for timers and alarms. It will double the number of buzz counts and you will have to swipe the screen five to eight times correctly - make a mistake, and you will need to start over. -"Oneshot" can be set on timers and alarms to have it delete itself once it's sounded (uses the "Delete after expiration" setting from the alarm app). +"Delete after expiration" can be set on a timer/alarm to have it delete itself once it's sounded (the same as the alarm app). ## WARNING * Editing timers in another app (such as the default Alarm app) is not recommended. Editing alarms should not be a problem (in theory). diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index e133820b0..ae8647db0 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -1,13 +1,6 @@ Bangle.loadWidgets(); Bangle.drawWidgets(); -const triggercheck = ` - eval(require("Storage").read("multitimer.ext.js")); - buzzCount *= 3; - startHM(); - "skipPrompt" -`; - var R = Bangle.appRect; var layer; var drag; diff --git a/apps/multitimer/boot.js b/apps/multitimer/boot.js index 13f1d6363..70b9032f6 100644 --- a/apps/multitimer/boot.js +++ b/apps/multitimer/boot.js @@ -1,8 +1,8 @@ { - const resetTimer = alarm => { - if (alarm.timer) alarm.timer = alarm.data.ot; - }; + const resetTimer = alarm => { + if (alarm.timer) alarm.timer = alarm.data.ot; + }; - Bangle.on("alarmSnooze", resetTimer); - Bangle.on("alarmDismiss", resetTimer); + Bangle.on("alarmSnooze", resetTimer); + Bangle.on("alarmDismiss", resetTimer); } diff --git a/apps/sched/ChangeLog b/apps/sched/ChangeLog index 951f4e2cc..92b04fb32 100644 --- a/apps/sched/ChangeLog +++ b/apps/sched/ChangeLog @@ -23,4 +23,3 @@ 0.20: Alarm dismiss and snooze events 0.21: Fix crash in clock_info 0.22: Dated event repeat option -0.23: Allow alarms to run custom code (and disable the default prompt) when triggered diff --git a/apps/sched/metadata.json b/apps/sched/metadata.json index 7f94a0a18..aa286ce6a 100644 --- a/apps/sched/metadata.json +++ b/apps/sched/metadata.json @@ -1,7 +1,7 @@ { "id": "sched", "name": "Scheduler", - "version": "0.23", + "version": "0.22", "description": "Scheduling library for alarms and timers", "icon": "app.png", "type": "scheduler", diff --git a/typescript/types/sched.d.ts b/typescript/types/sched.d.ts index f12e425db..78ad0c8d4 100644 --- a/typescript/types/sched.d.ts +++ b/typescript/types/sched.d.ts @@ -65,10 +65,6 @@ declare module Sched { js?: string, data?: unknown, - // optional features - triggercheck?: string, // code that's eval'd when the alarm is triggered, - // may return "skipPrompt" to cancel the default behaviour - // set by sched last?: number, } & ( From dd692187f79042f0d204c8d9347b9df651c22f3b Mon Sep 17 00:00:00 2001 From: frederic wagner Date: Sat, 1 Jul 2023 05:29:19 +0200 Subject: [PATCH 1633/1725] gipy: improve tiles on screen detection --- apps/gipy/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gipy/app.js b/apps/gipy/app.js index a451b6373..60e4bb5af 100644 --- a/apps/gipy/app.js +++ b/apps/gipy/app.js @@ -328,7 +328,7 @@ class Map { let on_screen_center_x = center_x - rotated_center_x; let on_screen_center_y = center_y + rotated_center_y; - let scaled_side = side * scale_factor; + let scaled_side = side * scale_factor * Math.sqrt(1/2); if (on_screen_center_x + scaled_side <= 0) { return false; From b957b61ceb30d8e7d81978dabd6ed4b35bea7047 Mon Sep 17 00:00:00 2001 From: notEvil Date: Sat, 1 Jul 2023 10:48:43 +0200 Subject: [PATCH 1634/1725] apps/chargent: fixed boot --- apps/chargent/ChangeLog | 1 + apps/chargent/boot.js | 7 +++++-- apps/chargent/metadata.json | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/apps/chargent/ChangeLog b/apps/chargent/ChangeLog index d7172c8d2..d7081ecfb 100644 --- a/apps/chargent/ChangeLog +++ b/apps/chargent/ChangeLog @@ -2,3 +2,4 @@ 0.02: Support BangleJS2 0.03: Added threshold 0.04: Added notification +0.05: Fixed boot diff --git a/apps/chargent/boot.js b/apps/chargent/boot.js index 666fd3a04..c8fd4f930 100644 --- a/apps/chargent/boot.js +++ b/apps/chargent/boot.js @@ -2,7 +2,7 @@ const pin = process.env.HWVERSION === 2 ? D3 : D30; var id; - Bangle.on('charging', (charging) => { + function gent(charging) { if (charging) { if (!id) { var max = 0; @@ -37,5 +37,8 @@ require('notify').hide({id: 'chargent'}); } } - }); + } + + Bangle.on('charging', gent); + if (Bangle.isCharging()) gent(true); })(); diff --git a/apps/chargent/metadata.json b/apps/chargent/metadata.json index dda0369a6..d43493ada 100644 --- a/apps/chargent/metadata.json +++ b/apps/chargent/metadata.json @@ -1,6 +1,6 @@ { "id": "chargent", "name": "Charge Gently", - "version": "0.04", + "version": "0.05", "description": "When charging, reminds you to disconnect the watch to prolong battery life.", "icon": "icon.png", "type": "bootloader", From dedaa93e66d31ccb6a584fde1ebc0f8bfb1c492a Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 1 Jul 2023 11:52:17 +0100 Subject: [PATCH 1635/1725] recorder: add widget typescript definitions --- apps/recorder/widget.d.ts | 40 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 apps/recorder/widget.d.ts diff --git a/apps/recorder/widget.d.ts b/apps/recorder/widget.d.ts new file mode 100644 index 000000000..30430eac4 --- /dev/null +++ b/apps/recorder/widget.d.ts @@ -0,0 +1,40 @@ +type RecorderWidget = Widget & { + getRecorders(): Recorders; + + reload(): void, + + isRecording(): boolean, + + setRecording( + isOn: boolean, + options?: { force?: "append" | "new" | "overwrite" }, + ): Promise; + + plotTrack( + m: unknown /* osm module */, + options?: { + async: true, + callback?: ()=>void, + } + ): { stop(): void }; + plotTrack( + m: unknown /* osm module */, + options?: { + async?: false, + callback?: ()=>void, + } + ): void; +}; + +type Recorders = { + [key: string]: Recorder; +}; + +type Recorder = () => { + name: string, + fields: string[], + getValues(): unknown[], + start(): void, + stop(): void, + draw(x: number, y: number): void, +}; From 7b760ae8033bc83b6d636381e4133751437293b2 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 1 Jul 2023 11:54:25 +0100 Subject: [PATCH 1636/1725] rep: add settings for <> steps --- apps/rep/app.js | 3 ++- apps/rep/app.ts | 7 ++++++- apps/rep/metadata.json | 1 + apps/rep/settings.ts | 29 +++++++++++++++++++++++++++++ 4 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 apps/rep/settings.ts diff --git a/apps/rep/app.js b/apps/rep/app.js index 0313f5af2..b5ca4f7b8 100644 --- a/apps/rep/app.js +++ b/apps/rep/app.js @@ -14,12 +14,13 @@ : r.dur; return r2; }); + var settings = require("Storage").readJSON("rep.setting.json"); var fontSzMain = 54; var fontScaleRep = 2; var fontSzRep = 20; var fontSzRepDesc = 12; var blue_1 = "#205af7"; - var ffStep_1 = 5 * 1000; + var ffStep_1 = settings.stepMs; var state_1; var drawInterval_1; var lastRepIndex_1 = null; diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 976dafd14..aeded4a23 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -1,3 +1,7 @@ +type RepSettings = { + stepMs: number, +}; + { const L = require("Layout"); @@ -31,12 +35,13 @@ const reps = storeReps.map((r: StoreRep, i: number, a: Rep[]): Rep => { return r2; }); +const settings = require("Storage").readJSON("rep.setting.json") as RepSettings; const fontSzMain = 54; const fontScaleRep = 2; const fontSzRep = 20; const fontSzRepDesc = 12; const blue = "#205af7"; -const ffStep = 5 * 1000; +const ffStep = settings.stepMs; let state: State | undefined; let drawInterval: IntervalId | undefined; diff --git a/apps/rep/metadata.json b/apps/rep/metadata.json index faf3a636d..4b34175c8 100644 --- a/apps/rep/metadata.json +++ b/apps/rep/metadata.json @@ -10,6 +10,7 @@ "interface": "interface.html", "storage": [ {"name":"rep.app.js","url":"app.js"}, + {"name":"rep.settings.js","url":"settings.js"}, {"name":"rep.img","url":"app-icon.js","evaluate":true} ], "data": [{"name":"rep.json"}] diff --git a/apps/rep/settings.ts b/apps/rep/settings.ts new file mode 100644 index 000000000..539ff98bc --- /dev/null +++ b/apps/rep/settings.ts @@ -0,0 +1,29 @@ +(back => { + const SETTINGS_FILE = "rep.setting.json"; + + const storage = require("Storage") + const settings = (storage.readJSON(SETTINGS_FILE, true) || {}) as RepSettings; + settings.stepMs ??= 5 * 1000; + + const save = () => { + storage.writeJSON(SETTINGS_FILE, settings); + }; + + const menu: Menu = { + "": { "title": "Rep" }, + "< Back": back, + /*LANG*/"Fwd/back seconds": { + value: settings.stepMs / 1000, + min: 1, + max: 60, + step: 1, + format: (v: number) => `${v}s`, + onchange: (v: number) => { + settings.stepMs = v * 1000; + save(); + }, + }, + }; + + E.showMenu(menu); +}) satisfies SettingsFunc From 98597073ef1a97c95f01321382a68d4a27767c28 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 1 Jul 2023 11:55:00 +0100 Subject: [PATCH 1637/1725] rep: add recorder functionality --- apps/rep/README.md | 3 ++- apps/rep/app.js | 18 +++++++++++++++--- apps/rep/app.ts | 23 +++++++++++++++++++---- apps/rep/settings.ts | 19 +++++++++++++++++++ 4 files changed, 55 insertions(+), 8 deletions(-) diff --git a/apps/rep/README.md b/apps/rep/README.md index 85d41956d..343837f4d 100644 --- a/apps/rep/README.md +++ b/apps/rep/README.md @@ -7,6 +7,7 @@ You can rewind, fast-forward and play/pause with the control buttons. # Todo -- [ ] Recorder functionality +- [X] Recorder functionality + - [ ] Recorder toggle functionality - [ ] Fastload: scoping, unregister layout handlers etc - [ ] Swipe handlers as well as "<<" / ">>" buttons diff --git a/apps/rep/app.js b/apps/rep/app.js index b5ca4f7b8..e57eb19aa 100644 --- a/apps/rep/app.js +++ b/apps/rep/app.js @@ -246,8 +246,20 @@ }; buzz(); }; + var init = function () { + g.clear(); + drawRep_1(); + Bangle.drawWidgets(); + }; Bangle.loadWidgets(); - g.clear(); - drawRep_1(); - Bangle.drawWidgets(); + if (settings.record && WIDGETS["recorder"]) { + WIDGETS["recorder"] + .setRecording(true) + .then(init); + if (settings.recordStopOnExit) + E.on('kill', function () { return WIDGETS["recorder"].setRecording(false); }); + } + else { + init(); + } } diff --git a/apps/rep/app.ts b/apps/rep/app.ts index aeded4a23..a85793883 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -1,4 +1,6 @@ type RepSettings = { + record: boolean, + recordStopOnExit: boolean, stepMs: number, }; @@ -308,10 +310,23 @@ const buzzNewRep = () => { buzz(); }; +const init = () => { + g.clear(); + drawRep(); + + Bangle.drawWidgets(); +}; + Bangle.loadWidgets(); +if (settings.record && WIDGETS["recorder"]) { + (WIDGETS["recorder"] as RecorderWidget) + .setRecording(true) + .then(init); + + if (settings.recordStopOnExit) + E.on('kill', () => (WIDGETS["recorder"] as RecorderWidget).setRecording(false)); +} else { + init(); +} -g.clear(); -drawRep(); - -Bangle.drawWidgets(); } diff --git a/apps/rep/settings.ts b/apps/rep/settings.ts index 539ff98bc..0041b95f9 100644 --- a/apps/rep/settings.ts +++ b/apps/rep/settings.ts @@ -3,6 +3,8 @@ const storage = require("Storage") const settings = (storage.readJSON(SETTINGS_FILE, true) || {}) as RepSettings; + settings.record ??= false; + settings.recordStopOnExit ??= false; settings.stepMs ??= 5 * 1000; const save = () => { @@ -25,5 +27,22 @@ }, }; + if (global["WIDGETS"] && WIDGETS["recorder"]) { + menu[/*LANG*/"Record activity"] = { + value: !!settings.record, + onchange: (v: boolean) => { + settings.record = v; + save(); + } + }; + menu[/*LANG*/"Stop record on exit"] = { + value: !!settings.recordStopOnExit, + onchange: (v: boolean) => { + settings.recordStopOnExit = v; + save(); + } + }; + } + E.showMenu(menu); }) satisfies SettingsFunc From 4fe104334be8d671d6da94d16fff283d7e2d21a8 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 1 Jul 2023 11:55:20 +0100 Subject: [PATCH 1638/1725] rep: regenerate js --- apps/rep/settings.js | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 apps/rep/settings.js diff --git a/apps/rep/settings.js b/apps/rep/settings.js new file mode 100644 index 000000000..bfadacda1 --- /dev/null +++ b/apps/rep/settings.js @@ -0,0 +1,44 @@ +(function (back) { + var _a, _b, _c; + var SETTINGS_FILE = "rep.setting.json"; + var storage = require("Storage"); + var settings = (storage.readJSON(SETTINGS_FILE, true) || {}); + (_a = settings.record) !== null && _a !== void 0 ? _a : (settings.record = false); + (_b = settings.recordStopOnExit) !== null && _b !== void 0 ? _b : (settings.recordStopOnExit = false); + (_c = settings.stepMs) !== null && _c !== void 0 ? _c : (settings.stepMs = 5 * 1000); + var save = function () { + storage.writeJSON(SETTINGS_FILE, settings); + }; + var menu = { + "": { "title": "Rep" }, + "< Back": back, + "Fwd/back seconds": { + value: settings.stepMs / 1000, + min: 1, + max: 60, + step: 1, + format: function (v) { return "".concat(v, "s"); }, + onchange: function (v) { + settings.stepMs = v * 1000; + save(); + }, + }, + }; + if (global["WIDGETS"] && WIDGETS["recorder"]) { + menu["Record activity"] = { + value: !!settings.record, + onchange: function (v) { + settings.record = v; + save(); + } + }; + menu["Stop record on exit"] = { + value: !!settings.recordStopOnExit, + onchange: function (v) { + settings.recordStopOnExit = v; + save(); + } + }; + } + E.showMenu(menu); +}); From a0747b4ac3b8e1d534a36388084dc01e87b06a11 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sat, 1 Jul 2023 12:00:19 +0100 Subject: [PATCH 1639/1725] rep: check settings --- apps/rep/app.js | 6 +++++- apps/rep/app.ts | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/apps/rep/app.js b/apps/rep/app.js index e57eb19aa..06c8889b7 100644 --- a/apps/rep/app.js +++ b/apps/rep/app.js @@ -1,3 +1,4 @@ +var _a, _b, _c; { var L = require("Layout"); var storeReps = require("Storage") @@ -14,7 +15,10 @@ : r.dur; return r2; }); - var settings = require("Storage").readJSON("rep.setting.json"); + var settings = (require("Storage").readJSON("rep.setting.json", true) || {}); + (_a = settings.record) !== null && _a !== void 0 ? _a : (settings.record = false); + (_b = settings.recordStopOnExit) !== null && _b !== void 0 ? _b : (settings.recordStopOnExit = false); + (_c = settings.stepMs) !== null && _c !== void 0 ? _c : (settings.stepMs = 5 * 1000); var fontSzMain = 54; var fontScaleRep = 2; var fontSzRep = 20; diff --git a/apps/rep/app.ts b/apps/rep/app.ts index a85793883..181ccd921 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -37,7 +37,11 @@ const reps = storeReps.map((r: StoreRep, i: number, a: Rep[]): Rep => { return r2; }); -const settings = require("Storage").readJSON("rep.setting.json") as RepSettings; +const settings = (require("Storage").readJSON("rep.setting.json", true) || {}) as RepSettings; +settings.record ??= false; +settings.recordStopOnExit ??= false; +settings.stepMs ??= 5 * 1000; + const fontSzMain = 54; const fontScaleRep = 2; const fontSzRep = 20; From d2789d84188be567e704e49691fa9bb730442a1b Mon Sep 17 00:00:00 2001 From: Graham Fenner Date: Sat, 1 Jul 2023 16:55:42 +0100 Subject: [PATCH 1640/1725] battery voltage estimate --- apps/lcars/ChangeLog | 3 ++- apps/lcars/README.md | 3 ++- apps/lcars/lcars.app.js | 3 +++ apps/lcars/lcars.settings.js | 2 +- apps/lcars/metadata.json | 2 +- 5 files changed, 9 insertions(+), 4 deletions(-) diff --git a/apps/lcars/ChangeLog b/apps/lcars/ChangeLog index fb778c278..e3f1f6d77 100644 --- a/apps/lcars/ChangeLog +++ b/apps/lcars/ChangeLog @@ -24,4 +24,5 @@ 0.24: Add ability to disable alarm functionality. 0.25: Add more colors to the settings and add the ability to disable the data charts+Markup. 0.26: Use widget_utils. -0.27: Report latest HRM rather than HRM 10 minutes ago (fix #2395) \ No newline at end of file +0.27: Report latest HRM rather than HRM 10 minutes ago (fix #2395) +0.28: Battery Vref implemented correctly. \ No newline at end of file diff --git a/apps/lcars/README.md b/apps/lcars/README.md index 1564b4179..89918ae87 100644 --- a/apps/lcars/README.md +++ b/apps/lcars/README.md @@ -25,7 +25,8 @@ the "sched" app must be installed on your device. ## Data that can be configured * Steps - Steps loaded via the wpedom app. * Battery - Current battery level in % - * VREF - Voltage of battery + * BattVolt - Voltage of battery + * VREF - Internal Voltage Reference * HRM - Last measured HRM * Temp - Weather temperature loaded via the weather module + gadgetbridge * Humidity - Humidity loaded via the weather module + gadgetbridge diff --git a/apps/lcars/lcars.app.js b/apps/lcars/lcars.app.js index cbb6e6ad5..4eab1c4eb 100644 --- a/apps/lcars/lcars.app.js +++ b/apps/lcars/lcars.app.js @@ -239,6 +239,9 @@ function _drawData(key, y, c){ } else if (key == "VREF"){ value = E.getAnalogVRef().toFixed(2) + "V"; + } else if (key =="BATTVOLT" ) { + text = "BATV"; + value = (E.getAnalogVRef()*analogRead(3)*4).toFixed(2) + "V"; } else if(key == "HRM"){ value = Math.round(Bangle.getHealthStatus().bpm||Bangle.getHealthStatus("last").bpm); diff --git a/apps/lcars/lcars.settings.js b/apps/lcars/lcars.settings.js index 7837eb4d1..81c71020f 100644 --- a/apps/lcars/lcars.settings.js +++ b/apps/lcars/lcars.settings.js @@ -26,7 +26,7 @@ } - var dataOptions = ["Steps", "Battery", "VREF", "HRM", "Temp", "Humidity", "Wind", "Altitude", "CoreT"]; + var dataOptions = ["Steps", "Battery", "BattVolt", "VREF", "HRM", "Temp", "Humidity", "Wind", "Altitude", "CoreT"]; var speedOptions = ["kph", "mph"]; var color_options = ['Green','Orange','Cyan','Purple','Red','Blue','Yellow','White','Purple','Pink','Light Green','Dark Green']; var bg_code = ['#00ff00','#FF9900','#0094FF','#FF00DC','#ff0000','#0000ff','#ffef00','#FFFFFF','#FF00FF','#6C00FF','#99FF00','#556B2F']; diff --git a/apps/lcars/metadata.json b/apps/lcars/metadata.json index 2cefb544f..4a7707b8a 100644 --- a/apps/lcars/metadata.json +++ b/apps/lcars/metadata.json @@ -3,7 +3,7 @@ "name": "LCARS Clock", "shortName":"LCARS", "icon": "lcars.png", - "version":"0.27", + "version":"0.28", "readme": "README.md", "supports": ["BANGLEJS2"], "description": "Library Computer Access Retrieval System (LCARS) clock.", From 4287f3a92160cbe069bc63cd2adf8c9de96c024b Mon Sep 17 00:00:00 2001 From: Gabriele Monaco Date: Sun, 2 Jul 2023 19:37:54 +0200 Subject: [PATCH 1641/1725] agenda: Fixed "Today" and "Yesterday" wrongly displayed for allDay events on some time zones --- apps/agenda/ChangeLog | 1 + apps/agenda/agenda.js | 11 +++++------ apps/agenda/metadata.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/agenda/ChangeLog b/apps/agenda/ChangeLog index 9e7151e1e..836810638 100644 --- a/apps/agenda/ChangeLog +++ b/apps/agenda/ChangeLog @@ -13,3 +13,4 @@ Added dynamic, short and range fields to clkinfo 0.12: Added color field and updating clkinfo periodically (running events) 0.13: Show day of the week in date +0.14: Fixed "Today" and "Yesterday" wrongly displayed for allDay events on some time zones diff --git a/apps/agenda/agenda.js b/apps/agenda/agenda.js index 6d2b783fd..814525a2e 100644 --- a/apps/agenda/agenda.js +++ b/apps/agenda/agenda.js @@ -38,13 +38,12 @@ function formatDay(date) { if (!settings.useToday) { return formattedDate; } - const dateformatted = date.toISOString().split('T')[0]; // yyyy-mm-dd - const today = new Date(Date.now()).toISOString().split('T')[0]; // yyyy-mm-dd - if (dateformatted == today) { + const today = new Date(Date.now()); + if (date.getDay() == today.getDay() && date.getMonth() == today.getMonth()) return /*LANG*/"Today "; - } else { - const tomorrow = new Date(Date.now() + 86400 * 1000).toISOString().split('T')[0]; // yyyy-mm-dd - if (dateformatted == tomorrow) { + else { + const tomorrow = new Date(Date.now() + 86400 * 1000); + if (date.getDay() == tomorrow.getDay() && date.getMonth() == tomorrow.getMonth()) { return /*LANG*/"Tomorrow "; } return formattedDate; diff --git a/apps/agenda/metadata.json b/apps/agenda/metadata.json index 737568cb5..2d5864145 100644 --- a/apps/agenda/metadata.json +++ b/apps/agenda/metadata.json @@ -1,7 +1,7 @@ { "id": "agenda", "name": "Agenda", - "version": "0.13", + "version": "0.14", "description": "Simple agenda", "icon": "agenda.png", "screenshots": [{"url":"screenshot_agenda_overview.png"}, {"url":"screenshot_agenda_event1.png"}, {"url":"screenshot_agenda_event2.png"}], From 560f9e1e536d8230269b181412ec0de62e2fb23b Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sun, 2 Jul 2023 23:00:43 +0200 Subject: [PATCH 1642/1725] Added chess game Human with white and computer with black. Based on p4wn engine[1]. Computations are rather slow but it works. Usage: Drag on the touchscreen to move the green cursor onto a piece, select it with a single touch and drag the now red cursor around. Release the piece with another touch to finish the move. The button opens a menu. [1] https://p4wn.sourceforge.net/ --- apps/chess/app-icon.js | 1 + apps/chess/app.js | 280 +++++++ apps/chess/app.png | Bin 0 -> 445 bytes apps/chess/engine.js | 1614 +++++++++++++++++++++++++++++++++++++ apps/chess/metadata.json | 17 + apps/chess/screenshot.png | Bin 0 -> 3602 bytes 6 files changed, 1912 insertions(+) create mode 100644 apps/chess/app-icon.js create mode 100644 apps/chess/app.js create mode 100644 apps/chess/app.png create mode 100644 apps/chess/engine.js create mode 100644 apps/chess/metadata.json create mode 100644 apps/chess/screenshot.png diff --git a/apps/chess/app-icon.js b/apps/chess/app-icon.js new file mode 100644 index 000000000..2aa34d5ae --- /dev/null +++ b/apps/chess/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwxH+AH4A/AH4A/AEnPAEAv/wAAcF6XWAAYdFBQgLLF/4v/F/4vTFKoLGF/4v/F/4v/F4QpWBQov/F7UslgKBAYIABEgIDDF/4v/F4es1gvTdKoLBFYYAHF/4vTmQvuvQwJFxAvbAAOIxIAFFxIvzFKYLG6CMNF8GsF92BdpwvfqwvtRwgvQAC+IxIAJF5QAYF93OwEyRwqSPACwsJGEov/AH4A/AH4AwA=")) diff --git a/apps/chess/app.js b/apps/chess/app.js new file mode 100644 index 000000000..1750d5c8f --- /dev/null +++ b/apps/chess/app.js @@ -0,0 +1,280 @@ +// Using p4wn chess engine: https://p4wn.sourceforge.net/ | https://github.com/douglasbagnall/p4wn +const engine = require("chessengine"); + +Bangle.loadWidgets(); // load before first appRect call + +const FIELD_WIDTH = Bangle.appRect.w/8; +const FIELD_HEIGHT = Bangle.appRect.h/8; +const SETTINGS_FILE = "chess.json"; +const DEFAULT_TIMEOUT = Bangle.getOptions().lockTimeout; +const ICON_SIZE=45; +const ICON_BISHOP = require("heatshrink").decompress(atob("lstwMB/4Ac/wFE4IED/kPAofgn4FDGon8j4QEBQgQE4EHBQcACwfAgF/BQYWD8EAHAX+NgI4C+AQEwAQDDYIhDDYMDCAQKBGQQsHHogKDCAJODCAI3CHoQKCHoIQDHoIQCFgoQBFgfgIQYmBEIQECKgIrCBYQKDC4OBg/8iCvEAC+AA=")); +const ICON_PAWN = require("heatshrink").decompress(atob("lstwMB/4At/AFEGon4h4FDwE/AgX8CAngCAkAv4bDgYbECAf4gAhD4AhD/kAg4mDCAkACAYbBEIYQBG4gbDEII9DFhXAgEfBQYWDEwJUC/wKBGQXwCAgEBE4RCBCAYmBCAQmCCAQmBCAbdCCAIbCQ4gAYwA=")); +const ICON_KING = require("heatshrink").decompress(atob("lstwMB/4Ac/wFE+4KEh4FD+F/AofvCwgKE+IKEg4bEj4FDwADC/k8g+HAoJhCC4PwAoQXBNod//AECgYfBAoUP/gQE8AQEBQcfCAaLBCAZmBEIZuBBQgyDJAIWCPgXAEAQWDBQRUCPgQnBHgJqBLwYhDOwRvDGQc/EIaSDCwLedwAA==")); +const ICON_QUEEN = require("heatshrink").decompress(atob("lstwMB/4Ac/l/AgXn4PzAgP+j0Ph4FB8FwuE///PgeDwPn/k8n0+j0f4Hz+Px8F+g/Px+fgf4vgACn/jAAf/x8Pj0en/8vAsB+P/+PBwcHj//w0MjEwJgMwsHBw5CBwMEhBDBPoR6B/gFCDYPgAoRZBAgUH//4AoQbB4AbDCAYbBCAZ1CAgJ7CwAKDGQQmBCAYmBEIQmC+AQEDYQQBDYQQCFgo3CXQIsFBYIEDACmAA=")); +const ICON_ROOK = require("heatshrink").decompress(atob("lstwMB/4Ax/0HgPAAoPwnEOg4FBwBFBn///gEBI4XgAoMPAoJWCv4QDDYXwBQf/4AKD/wmDCARuDGQImCEIQbCGQMDCAQKBj4EB/AFBBQQsgDYQQCNQQhCOog3CCAQ3BEIRvCAoSRCE4IxCKgQmCKgYAZwA=")); +const ICON_KNIGHT = require("heatshrink").decompress(atob("lstwMB/4Ann1/AgX48IKD4UPAgX+gEHAoXwgALDJQMfDYQFBEQWAgBSCBQQcC4AFBn///hnCBQPgAgMDGIQnDGIIQDAgQQBEwQQCGIIQCEwMECAQxBsAQBEwMPCAQmBAIJDB4EPDoM/CAIoBKgP4BQQQB/AzCKgJlIPgQ+COwJlCHoJlDJwJlDS4aBDDYQsCADOA")); + +const settings = Object.assign({ + state: engine.P4_INITIAL_BOARD, + computer_level: 0, // default to "stupid" which is the fastest +}, require("Storage").readJSON(SETTINGS_FILE,1) || {}); + +var ovr = Graphics.createArrayBuffer(Bangle.appRect.w,Bangle.appRect.h,2,{msb:true}); +const curfield = [4*FIELD_WIDTH, 6*FIELD_HEIGHT]; // e2 +const startfield = Array(2); +let piece_sel = 0; +let showmenu = false; + +const writeSettings = () => { + settings.state = engine.p4_state2fen(state); + require('Storage').writeJSON(SETTINGS_FILE, settings); +}; + +const generateBgImage = () => { + var buf = Graphics.createArrayBuffer(Bangle.appRect.w,Bangle.appRect.h,1,{msb:true}); + for(let idxrow=0; idxrow<8; idxrow++) { + for(let idxcol=0; idxcol<8; idxcol++) { + const bgCol = idxrow % 2 != idxcol % 2 ? 0 : 1; + const x = idxcol*FIELD_WIDTH; + const y = idxrow*FIELD_HEIGHT; + buf.setColor(bgCol).fillRect({x:x, y:y, w:FIELD_WIDTH, h:FIELD_HEIGHT}); + } + } + return {width:buf.getWidth(), height:buf.getHeight(), + buffer:buf.buffer + }; +}; + +const idx2Pos = (idxcol, idxrow) => { + "ram" + return 2*(1+8+1) + (7-idxrow)*(1+8+1) + idxcol + 1; +}; + +const drawPiece = (buf, x, y, piece) => { + let icon; + + switch(piece & ~0x1) { + case engine.P4_PAWN: + icon = ICON_PAWN; + break; + case engine.P4_BISHOP: + icon = ICON_BISHOP; + break; + case engine.P4_KING: + icon = ICON_KING; + break; + case engine.P4_QUEEN: + icon = ICON_QUEEN; + break; + case engine.P4_ROOK: + icon = ICON_ROOK; + break; + case engine.P4_KNIGHT: + icon = ICON_KNIGHT; + break; + } + + if (icon) { + const scale = FIELD_HEIGHT/ICON_SIZE; + buf.drawImage(icon, x+(FIELD_WIDTH-(ICON_SIZE*scale))/2, y, {scale: scale}); + } + return buf; +}; + +const drawBoard = () => { + console.log("Free: " + process.memory().free); + + g.setBgColor("#555").setColor("#aaa").drawImage(bgImage, Bangle.appRect.x, Bangle.appRect.y); + for(let idxrow=0; idxrow<8; idxrow++) { + for(let idxcol=0; idxcol<8; idxcol++) { + const x = idxcol*FIELD_WIDTH+Bangle.appRect.x; + const y = idxrow*FIELD_HEIGHT+Bangle.appRect.y; + + const pos = idx2Pos(idxcol, idxrow); + const field = state.board[pos]; + + if (field) { + const fgCol = field & 0x1 ? "#000" : "#fff"; + drawPiece(g.setBgColor(fgCol), x, y, field); + } + } + } +}; + +const roundX = (x) => { + return Math.round(x/FIELD_WIDTH)*FIELD_WIDTH; +}; + +const roundY = (y) => { + return Math.round(y/FIELD_HEIGHT)*FIELD_HEIGHT; +}; + +const drawSelectedField = () => { + ovr.clear(); + if (!showmenu) { + if (startfield[0] !== undefined && startfield[1] !== undefined) { + // remove piece from startfield + const x = startfield[0]; + const y = startfield[1]; + ovr.setColor(2).fillRect({x:x, y:y, w:FIELD_WIDTH, h:FIELD_HEIGHT}); + } + + const x = roundX(curfield[0]); + const y = roundY(curfield[1]); + ovr.setColor(piece_sel ? 1 : 2) + .drawRect({x:x+1, y:y, w:FIELD_WIDTH-2, h:FIELD_HEIGHT}) + .drawRect({x:x+2, y:y+1, w:FIELD_WIDTH-4, h:FIELD_HEIGHT-2}) + .drawRect({x:x+3, y:y+2, w:FIELD_WIDTH-6, h:FIELD_HEIGHT-4}); + if (piece_sel) { + drawPiece(ovr.setBgColor(1), x, y, piece_sel); + ovr.setBgColor(0); // back to transparent + } + } + Bangle.setLCDOverlay({width:ovr.getWidth(), height:ovr.getHeight(), + bpp:2, transparent:0, + palette:new Uint16Array([0, g.toColor("#F00"), g.toColor("#0F0"), 0]), + buffer:ovr.buffer + },Bangle.appRect.x,Bangle.appRect.y); +}; + +const isInside = (rect, e) => { + return e.x>=rect.x && e.x=rect.y && e.y<=rect.y+rect.h; +}; + +const showAlert = (msg) => { + showmenu = true; + drawSelectedField(); + E.showAlert(msg).then(function() { + showmenu = false; + drawBoard(); + drawSelectedField(); + }); +}; + +const move = (from,to) => { + const res = state.move(from, to); + console.log(res); + if (!res.ok) { + showAlert("Illegal move"); + } else { + if (res.flags & engine.P4_MOVE_FLAG_MATE) { + showAlert("Checkmate or stalemate"); + } else if (res.flags & engine.P4_MOVE_FLAG_CHECK) { + showAlert("A king is in check"); + } else if (res.flags & engine.P4_MOVE_FLAG_DRAW) { + showAlert("A draw is available"); + } else { + drawBoard(); + drawSelectedField(); + } + } + return res.ok; +}; + +const showMessage = (msg) => { + g.setColor("#f00").setFont("4x6:2").setFontAlign(-1,1).drawString(msg, 10, Bangle.appRect.y2-10); +}; + +// Run + +g.reset(); +const bgImage = generateBgImage(); +let state = engine.p4_fen2state(settings.state); +drawBoard(); +drawSelectedField(); +Bangle.drawWidgets(); + +// drag selected field +Bangle.on('drag', (ev) => { + const newx = curfield[0]+ev.dx; + const newy = curfield[1]+ev.dy; + if (newx >= 0 && newx <= 7*FIELD_WIDTH) { + curfield[0] = newx; + } + if (newy >= 0 && newy <= 7*FIELD_HEIGHT) { + curfield[1] = newy; + } + drawSelectedField(); +}); + +// touch to start/stop moving a piece +Bangle.on('touch', (button, xy) => { + if (isInside(Bangle.appRect, xy) && !showmenu) { + if (piece_sel === 0) { + startfield[0] = roundX(curfield[0]); + startfield[1] = roundY(curfield[1]); + const startpos = idx2Pos(startfield[0]/FIELD_WIDTH, startfield[1]/FIELD_HEIGHT); + piece_sel = state.board[startpos]; + if (piece_sel === 0) { + startfield[0] = startfield[1] = undefined; + // nothing here, do nothing + return; + } + } else { // piece_sel === 0 + const colTo = roundX(curfield[0]); + const rowTo = roundY(curfield[1]); + if (startfield[0] !== colTo || startfield[1] !== rowTo) { + showMessage(/*LANG*/"Moving.."); + const posFrom = idx2Pos(startfield[0]/FIELD_WIDTH, startfield[1]/FIELD_HEIGHT); + const posTo = idx2Pos(colTo/FIELD_WIDTH, rowTo/FIELD_HEIGHT); + setTimeout(() => { + if (move(posFrom, posTo)) { + // human move ok, do computer move + Bangle.setLCDTimeout(0.1); // this can take some time, turn off to save power + showMessage(/*LANG*/"Calculating.."); + setTimeout(() => { + const compMove = state.findmove(settings.computer_level+1); + move(compMove[0], compMove[1]); + writeSettings(); + Bangle.setLCDPower(true); + Bangle.setLocked(false); + Bangle.setLCDTimeout(DEFAULT_TIMEOUT/1000); // restore + }, 200); // execute after display update + } + }, 100); // execute after display update + } // piece_sel === 0 + startfield[0] = startfield[1] = undefined; + piece_sel = 0; + } + drawSelectedField(); + } +}); + +// show menu on button +setWatch(() => { + showmenu = true; + drawSelectedField(); + + const closeMenu = () => { + showmenu = false; + E.showMenu(); + drawBoard(); + drawSelectedField(); + }; + + E.showMenu({ + "" : { title : /*LANG*/"Chess settings" }, + "< Back" : () => closeMenu(), + /*LANG*/"New Game" : () => { + state = engine.p4_fen2state(engine.P4_INITIAL_BOARD); + writeSettings(); + closeMenu(); + }, + /*LANG*/"Undo Move" : () => { + state.jump_to_moveno(-2); + closeMenu(); + }, + /*LANG*/'Level': { + value: settings.computer_level, + min: 0, max: 4, + format: v => [/*LANG*/'stupid', /*LANG*/'middling', /*LANG*/'default', /*LANG*/'slow', /*LANG*/'slowest'][v], + onchange: v => { + settings.computer_level = v; + writeSettings(); + } + }, + /*LANG*/"Exit" : () => load(), + }); +}, BTN, { repeat: true, edge: "falling" }); diff --git a/apps/chess/app.png b/apps/chess/app.png new file mode 100644 index 0000000000000000000000000000000000000000..9db78e27d56164cc2c2af8a315cac147f38180b9 GIT binary patch literal 445 zcmV;u0Yd(XP)F6XU=)mkK?nYyY4|@FFvE!Vz`~CD0m1*N6$4C zJD30-^}s?Z$AGh62njLZ_h`_?Kyzskk)H5-WZ~xPG3Y$75Q?YlzWaZ|sh?PJ|H&VR ziE{XWdSKTboF15P>c^oWF|6|H;RTGOW8v*BO_JjW(gUZC?!@$fyPwOD@xYX6lQ2AB z=I+-qWIPa-n2N;%{mao?N>-^vD`4*C_l#5zn7jEuXBaHN noK(k?(kB=NqhJ&;3<&@L5LfC~3w^9v00000NkvXXu0mjfsldr! literal 0 HcmV?d00001 diff --git a/apps/chess/engine.js b/apps/chess/engine.js new file mode 100644 index 000000000..88edf78f5 --- /dev/null +++ b/apps/chess/engine.js @@ -0,0 +1,1614 @@ +/* p4wn, AKA 5k chess - by Douglas Bagnall + * + * This code is in the public domain, or as close to it as various + * laws allow. No warranty; no restrictions. + * + * lives at http://p4wn.sf.net/ + */ + +/*Compatibility tricks: + * backwards for old MSIEs (to 5.5) + * sideways for seed command-line javascript.*/ +var p4_log; +if (this.imports !== undefined && + this.printerr !== undefined){//seed or gjs + p4_log = function(){ + var args = Array.prototype.slice.call(arguments); + printerr(args.join(', ')); + }; +} +else if (this.console === undefined){//MSIE + p4_log = function(){}; +} +else { + p4_log = function(){console.log.apply(console, arguments);}; +} + +/*MSIE Date.now backport */ +if (Date.now === undefined) + Date.now = function(){return (new Date).getTime();}; + +/* The pieces are stored as numbers between 2 and 13, inclusive. + * Empty squares are stored as 0, and off-board squares as 16. + * There is some bitwise logic to it: + * piece & 1 -> colour (white: 0, black: 1) + * piece & 2 -> single move piece (including pawn) + * if (piece & 2) == 0: + * piece & 4 -> row and column moves + * piece & 8 -> diagonal moves + */ +var P4_PAWN = 2, P4_ROOK = 4, P4_KNIGHT = 6, P4_BISHOP = 8, P4_QUEEN = 12, P4_KING = 10; +var P4_EDGE = 16; + +/* in order, even indices: , pawn, rook, knight, bishop, king, queen. Only the + * even indices are used.*/ +var P4_MOVES = [[], [], + [], [], + [1,10,-1,-10], [], + [21,19,12,8,-21,-19,-12,-8], [], + [11,9,-11,-9], [], + [1,10,11,9,-1,-10,-11,-9], [], + [1,10,11,9,-1,-10,-11,-9], [] + ]; + +/*P4_VALUES defines the relative value of various pieces. + * + * It follows the 1,3,3,5,9 pattern you learn as a kid, multiplied by + * 20 to give sub-pawn resolution to other factors, with bishops given + * a wee boost over knights. + */ +var P4_VALUES=[0, 0, //Piece values + 20, 20, //pawns + 100, 100, //rooks + 60, 60, //knights + 61, 61, //bishops + 8000, 8000,//kings + 180, 180, //queens + 0]; + +/* A score greater than P4_WIN indicates a king has been taken. It is + * less than the value of a king, in case someone finds a way to, say, + * sacrifice two queens in order to checkmate. + */ +var P4_KING_VALUE = P4_VALUES[10]; +var P4_WIN = P4_KING_VALUE >> 1; + +/* every move, a winning score decreases by this much */ +var P4_WIN_DECAY = 300; +var P4_WIN_NOW = P4_KING_VALUE - 250; + +/* P4_{MAX,MIN}_SCORE should be beyond any possible evaluated score */ + +var P4_MAX_SCORE = 9999; // extremes of evaluation range +var P4_MIN_SCORE = -P4_MAX_SCORE; + +/*initialised in p4_initialise_state */ +var P4_CENTRALISING_WEIGHTS; +var P4_BASE_PAWN_WEIGHTS; +var P4_KNIGHT_WEIGHTS; + +/*P4_DEBUG turns on debugging features */ +var P4_DEBUG = 0; +var P4_INITIAL_BOARD = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 1 1"; + +/*use javascript typed arrays rather than plain arrays + * (faster in some browsers, unsupported in others, possibly slower elsewhere) */ +var P4_USE_TYPED_ARRAYS = this.Int32Array !== undefined; + +var P4_PIECE_LUT = { /*for FEN, PGN interpretation */ + P: 2, + p: 3, + R: 4, + r: 5, + N: 6, + n: 7, + B: 8, + b: 9, + K: 10, + k: 11, + Q: 12, + q: 13 +}; + +var P4_ENCODE_LUT = ' PPRRNNBBKKQQ'; + + +function p4_alphabeta_treeclimber(state, count, colour, score, s, e, alpha, beta){ + var move = p4_make_move(state, s, e, P4_QUEEN); + var i; + var ncolour = 1 - colour; + var movelist = p4_parse(state, colour, move.ep, -score); + var movecount = movelist.length; + if(count){ + //branch nodes + var t; + for(i = 0; i < movecount; i++){ + var mv = movelist[i]; + var mscore = mv[0]; + var ms = mv[1]; + var me = mv[2]; + if (mscore > P4_WIN){ //we won! Don't look further. + alpha = P4_KING_VALUE; + break; + } + t = -p4_alphabeta_treeclimber(state, count - 1, ncolour, mscore, ms, me, + -beta, -alpha); + if (t > alpha){ + alpha = t; + } + if (alpha >= beta){ + break; + } + } + if (alpha < -P4_WIN_NOW && ! p4_check_check(state, colour)){ + /* Whatever we do, we lose the king. + * But if it is not check then this is stalemate, and the + * score doesn't apply. + */ + alpha = state.stalemate_scores[colour]; + } + if (alpha < -P4_WIN){ + /*make distant checkmate seem less bad */ + alpha += P4_WIN_DECAY; + } + } + else{ + //leaf nodes + while(beta > alpha && --movecount != -1){ + if(movelist[movecount][0] > alpha){ + alpha = movelist[movecount][0]; + } + } + } + p4_unmake_move(state, move); + return alpha; +} + + +/* p4_prepare() works out weightings for assessing various moves, + * favouring centralising moves early, for example. + * + * It is called before each tree search, not for each parse(), so it + * is OK for it to be a little bit slow. But that also means it drifts + * out of sync with the real board state, especially on deep searches. + */ + +function p4_prepare(state){ + var i, j, x, y, a; + var pieces = state.pieces = [[], []]; + /*convert state.moveno half move count to move cycle count */ + var moveno = state.moveno >> 1; + var board = state.board; + + /* high earliness_weight indicates a low move number. The formula + * should work above moveno == 50, but this is javascript. + */ + var earliness_weight = (moveno > 50) ? 0 : parseInt(6 * Math.exp(moveno * -0.07)); + var king_should_hide = moveno < 12; + var early = moveno < 5; + /* find the pieces, kings, and weigh material*/ + var kings = [0, 0]; + var material = [0, 0]; + var best_pieces = [0, 0]; + for(i = 20; i < 100; i++){ + a = board[i]; + var piece = a & 14; + var colour = a & 1; + if(piece){ + pieces[colour].push([a, i]); + if (piece == P4_KING){ + kings[colour] = i; + } + else{ + material[colour] += P4_VALUES[piece]; + best_pieces[colour] = Math.max(best_pieces[colour], P4_VALUES[piece]); + } + } + } + + /*does a draw seem likely soon?*/ + var draw_likely = (state.draw_timeout > 90 || state.current_repetitions >= 2); + if (draw_likely) + p4_log("draw likely", state.current_repetitions, state.draw_timeout); + state.values = [[], []]; + var qvalue = P4_VALUES[P4_QUEEN]; /*used as ballast in various ratios*/ + var material_sum = material[0] + material[1] + 2 * qvalue; + var wmul = 2 * (material[1] + qvalue) / material_sum; + var bmul = 2 * (material[0] + qvalue) / material_sum; + var multipliers = [wmul, bmul]; + var emptiness = 4 * P4_QUEEN / material_sum; + state.stalemate_scores = [parseInt(0.5 + (wmul - 1) * 2 * qvalue), + parseInt(0.5 + (bmul - 1) * 2 * qvalue)]; + //p4_log("value multipliers (W, B):", wmul, bmul, + // "stalemate scores", state.stalemate_scores); + for (i = 0; i < P4_VALUES.length; i++){ + var v = P4_VALUES[i]; + if (v < P4_WIN){//i.e., not king + state.values[0][i] = parseInt(v * wmul + 0.5); + state.values[1][i] = parseInt(v * bmul + 0.5); + } + else { + state.values[0][i] = v; + state.values[1][i] = v; + } + } + /*used for pruning quiescence search */ + state.best_pieces = [parseInt(best_pieces[0] * wmul + 0.5), + parseInt(best_pieces[1] * bmul + 0.5)]; + + var kx = [kings[0] % 10, kings[1] % 10]; + var ky = [parseInt(kings[0] / 10), parseInt(kings[1] / 10)]; + + /* find the frontmost pawns in each file */ + var pawn_cols = [[], []]; + for (y = 3; y < 9; y++){ + for (x = 1; x < 9; x++){ + i = y * 10 + x; + a = board[i]; + if ((a & 14) != P4_PAWN) + continue; + if ((a & 1) == 0){ + pawn_cols[0][x] = y; + } + else if (pawn_cols[1][x] === undefined){ + pawn_cols[1][x] = y; + } + } + } + var target_king = (moveno >= 20 || material_sum < 5 * qvalue); + var weights = state.weights; + + for (y = 2; y < 10; y++){ + for (x = 1; x < 9; x++){ + i = y * 10 + x; + var early_centre = P4_CENTRALISING_WEIGHTS[i] * earliness_weight; + var plateau = P4_KNIGHT_WEIGHTS[i]; + for (var c = 0; c < 2; c++){ + var dx = Math.abs(kx[1 - c] - x); + var dy = Math.abs(ky[1 - c] - y); + var our_dx = Math.abs(kx[c] - x); + var our_dy = Math.abs(ky[c] - y); + + var d = Math.max(Math.sqrt(dx * dx + dy * dy), 1) + 1; + var mul = multipliers[c]; /*(mul < 1) <==> we're winning*/ + var mul3 = mul * mul * mul; + var at_home = y == 2 + c * 7; + var pawn_home = y == 3 + c * 5; + var row4 = y == 5 + c; + var promotion_row = y == 9 - c * 7; + var get_out = (early && at_home) * -5; + + var knight = parseInt(early_centre * 0.3) + 2 * plateau + get_out; + var rook = parseInt(early_centre * 0.3); + var bishop = parseInt(early_centre * 0.6) + plateau + get_out; + if (at_home){ + rook += (x == 4 || x == 5) * (earliness_weight + ! target_king); + rook += (x == 1 || x == 8) * (moveno > 10 && moveno < 20) * -3; + rook += (x == 2 || x == 7) * (moveno > 10 && moveno < 20) * -1; + } + + /*Queen wants to stay home early, then jump right in*/ + /*keep kings back on home row for a while*/ + var queen = parseInt(plateau * 0.5 + early_centre * (0.5 - early)); + var king = (king_should_hide && at_home) * 2 * earliness_weight; + + /*empty board means pawn advancement is more urgent*/ + var get_on_with_it = Math.max(emptiness * 2, 1); + var pawn = get_on_with_it * P4_BASE_PAWN_WEIGHTS[c ? 119 - i : i]; + if (early){ + /* Early pawn weights are slightly randomised, so each game is different. + */ + if (y >= 4 && y <= 7){ + var boost = 1 + 3 * (y == 5 || y == 6); + pawn += parseInt((boost + p4_random_int(state, 4)) * 0.1 * + early_centre); + } + if (x == 4 || x == 5){ + //discourage middle pawns from waiting at home + pawn -= 3 * pawn_home; + pawn += 3 * row4; + } + } + /*pawn promotion row is weighted as a queen minus a pawn.*/ + if (promotion_row) + pawn += state.values[c][P4_QUEEN] - state.values[c][P4_PAWN]; + + /*pawns in front of a castled king should stay there*/ + pawn += 4 * (y == 3 && ky[c] == 2 && Math.abs(our_dx) < 2 && + kx[c] != 5 && x != 4 && x != 5); + /*passed pawns (having no opposing pawn in front) are encouraged. */ + var cols = pawn_cols[1 - c]; + if (cols[x] == undefined || + (c == 0 && cols[x] < y) || + (c == 1 && cols[x] > y)) + pawn += 2; + + /* After a while, start going for opposite king. Just + * attract pieces into the area so they can mill about in + * the area, waiting for an opportunity. + * + * As prepare is only called at the beginning of each tree + * search, the king could wander out of the targetted area + * in deep searches. But that's OK. Heuristics are + * heuristics. + */ + if (target_king){ + knight += 2 * parseInt(8 * mul / d); + rook += 2 * ((dx < 2) + (dy < 2)); + bishop += 3 * (Math.abs((dx - dy)) < 2); + queen += 2 * parseInt(8 / d) + (dx * dy == 0) + (dx - dy == 0); + /* The losing king wants to stay in the middle, while + the winning king goes in for the kill.*/ + var king_centre_wt = 8 * emptiness * P4_CENTRALISING_WEIGHTS[i]; + king += parseInt(150 * emptiness / (mul3 * d) + king_centre_wt * mul3); + } + weights[P4_PAWN + c][i] = pawn; + weights[P4_KNIGHT + c][i] = knight; + weights[P4_ROOK + c][i] = rook; + weights[P4_BISHOP + c][i] = bishop; + weights[P4_QUEEN + c][i] = queen; + weights[P4_KING + c][i] = king; + + if (draw_likely && mul < 1){ + /*The winning side wants to avoid draw, so adds jitter to its weights.*/ + var range = 3 / mul3; + for (j = 2 + c; j < 14; j += 2){ + weights[j][i] += p4_random_int(state, range); + } + } + } + } + } + state.prepared = true; +} + +function p4_maybe_prepare(state){ + if (! state.prepared) + p4_prepare(state); +} + + +function p4_parse(state, colour, ep, score) { + var board = state.board; + var s, e; //start and end position + var E, a; //E=piece at end place, a= piece moving + var i, j; + var other_colour = 1 - colour; + var dir = (10 - 20 * colour); //dir= 10 for white, -10 for black + var movelist = []; + var captures = []; + var weight; + var pieces = state.pieces[colour]; + var castle_flags = (state.castles >> (colour * 2)) & 3; + var values = state.values[other_colour]; + var all_weights = state.weights; + for (j = pieces.length - 1; j >= 0; j--){ + s = pieces[j][1]; // board position + a = board[s]; //piece number + var weight_lut = all_weights[a]; + weight = score - weight_lut[s]; + a &= 14; + if(a > 2){ //non-pawns + var moves = P4_MOVES[a]; + if(a & 2){ + for(i = 0; i < 8; i++){ + e = s + moves[i]; + E = board[e]; + if(!E){ + movelist.push([weight + values[E] + weight_lut[e], s, e]); + } + else if((E&17)==other_colour){ + captures.push([weight + values[E] + weight_lut[e] + all_weights[E][e], s, e]); + } + } + if(a == P4_KING && castle_flags){ + if((castle_flags & 1) && + (board[s - 1] + board[s - 2] + board[s - 3] == 0) && + p4_check_castling(board, s - 2, other_colour, dir, -1)){//Q side + movelist.push([weight + 12, s, s - 2]); //no analysis, just encouragement + } + if((castle_flags & 2) && (board[s + 1] + board[s + 2] == 0) && + p4_check_castling(board, s, other_colour, dir, 1)){//K side + movelist.push([weight + 13, s, s + 2]); + } + } + } + else{//rook, bishop, queen + var mlen = moves.length; + for(i=0;i= 0; i--){ + var mv = movelist[i]; + var score = mv[0]; + s = mv[1]; + e = mv[2]; + if(! board[e]){ + var x = scores[s]; + x.score = Math.max(x.score, score); + } + } + /* moving out of a threat is worth considering, especially + * if it is a pawn and you are not.*/ + for(i = threats.length - 1; i >= 0; i--){ + var mv = threats[i]; + var x = scores[mv[2]]; + if (x !== undefined){ + var S = board[mv[1]]; + var r = (1 + x.piece > 3 + S < 4) * 0.01; + if (x.threatened < r) + x.threatened = r; + } + } + var pieces2 = []; + for (i = 20; i < 100; i++){ + p = scores[i]; + if (p !== undefined){ + p.score += p.threatened * our_values[p.piece]; + pieces2.push(p); + } + } + pieces2.sort(function(a, b){return a.score - b.score;}); + for (i = 0; i < pieces2.length; i++){ + p = pieces2[i]; + pieces[i] = [p.piece, p.pos]; + } + } +} + +function p4_findmove(state, level, colour, ep){ + p4_prepare(state); + p4_optimise_piece_list(state); + var board = state.board; + + // Changed for espruino compatibility + if (colour === undefined) { + colour = state.to_play; + } + if (ep === undefined) { + ep = state.enpassant; + } + var movelist = p4_parse(state, colour, ep, 0); + var alpha = P4_MIN_SCORE; + var mv, t, i; + var bs = 0; + var be = 0; + + if (level <= 0){ + for (i = 0; i < movelist.length; i++){ + mv = movelist[i]; + if(movelist[i][0] > alpha){ + alpha = mv[0]; + bs = mv[1]; + be = mv[2]; + } + } + return [bs, be, alpha]; + } + + for(i = 0; i < movelist.length; i++){ + mv = movelist[i]; + var mscore = mv[0]; + var ms = mv[1]; + var me = mv[2]; + if (mscore > P4_WIN){ + p4_log("XXX taking king! it should never come to this"); + alpha = P4_KING_VALUE; + bs = ms; + be = me; + break; + } + t = -state.treeclimber(state, level - 1, 1 - colour, mscore, ms, me, + P4_MIN_SCORE, -alpha); + if (t > alpha){ + alpha = t; + bs = ms; + be = me; + } + } + if (alpha < -P4_WIN_NOW && ! p4_check_check(state, colour)){ + alpha = state.stalemate_scores[colour]; + } + return [bs, be, alpha]; +} + +/*p4_make_move changes the state and returns an object containing + * everything necesary to undo the change. + * + * p4_unmake_move uses the p4_make_move return value to restore the + * previous state. + */ + +function p4_make_move(state, s, e, promotion){ + var board = state.board; + var S = board[s]; + var E = board[e]; + board[e] = S; + board[s] = 0; + var piece = S & 14; + var moved_colour = S & 1; + var end_piece = S; /* can differ from S in queening*/ + //now some stuff to handle queening, castling + var rs = 0, re, rook; + var ep_taken = 0, ep_position; + var ep = 0; + if(piece == P4_PAWN){ + if((60 - e) * (60 - e) > 900){ + /*got to end; replace the pawn on board and in pieces cache.*/ + promotion |= moved_colour; + board[e] = promotion; + end_piece = promotion; + } + else if (((s ^ e) & 1) && E == 0){ + /*this is a diagonal move, but the end spot is empty, so we surmise enpassant */ + ep_position = e - 10 + 20 * moved_colour; + ep_taken = board[ep_position]; + board[ep_position] = 0; + } + else if ((s - e) * (s - e) == 400){ + /*delta is 20 --> two row jump at start*/ + ep = (s + e) >> 1; + } + } + else if (piece == P4_KING && ((s - e) * (s - e) == 4)){ //castling - move rook too + rs = s - 4 + (s < e) * 7; + re = (s + e) >> 1; //avg of s,e=rook's spot + rook = moved_colour + P4_ROOK; + board[rs] = 0; + board[re] = rook; + //piece_locations.push([rook, re]); + } + + var old_castle_state = state.castles; + if (old_castle_state){ + var mask = 0; + var shift = moved_colour * 2; + var side = moved_colour * 70; + var s2 = s - side; + var e2 = e + side; + //wipe both our sides if king moves + if (s2 == 25) + mask |= 3 << shift; + //wipe one side on any move from rook points + else if (s2 == 21) + mask |= 1 << shift; + else if (s2 == 28) + mask |= 2 << shift; + //or on any move *to* opposition corners + if (e2 == 91) + mask |= 4 >> shift; + else if (e2 == 98) + mask |= 8 >> shift; + state.castles &= ~mask; + } + + var old_pieces = state.pieces.concat(); + var our_pieces = old_pieces[moved_colour]; + var dest = state.pieces[moved_colour] = []; + for (var i = 0; i < our_pieces.length; i++){ + var x = our_pieces[i]; + var pp = x[0]; + var ps = x[1]; + if (ps != s && ps != rs){ + dest.push(x); + } + } + dest.push([end_piece, e]); + if (rook) + dest.push([rook, re]); + + if (E || ep_taken){ + var their_pieces = old_pieces[1 - moved_colour]; + dest = state.pieces[1 - moved_colour] = []; + var gone = ep_taken ? ep_position : e; + for (i = 0; i < their_pieces.length; i++){ + var x = their_pieces[i]; + if (x[1] != gone){ + dest.push(x); + } + } + } + + return { + /*some of these (e.g. rook) could be recalculated during + * unmake, possibly more cheaply. */ + s: s, + e: e, + S: S, + E: E, + ep: ep, + castles: old_castle_state, + rs: rs, + re: re, + rook: rook, + ep_position: ep_position, + ep_taken: ep_taken, + pieces: old_pieces + }; +} + +function p4_unmake_move(state, move){ + var board = state.board; + if (move.ep_position){ + board[move.ep_position] = move.ep_taken; + } + board[move.s] = move.S; + board[move.e] = move.E; + //move.piece_locations.length--; + if(move.rs){ + board[move.rs] = move.rook; + board[move.re] = 0; + //move.piece_locations.length--; + } + state.pieces = move.pieces; + state.castles = move.castles; +} + + +function p4_insufficient_material(state){ + var knights = false; + var bishops = undefined; + var i; + var board = state.board; + for(i = 20; i < 100; i++){ + var piece = board[i] & 14; + if(piece == 0 || piece == P4_KING){ + continue; + } + if (piece == P4_KNIGHT){ + /* only allow one knight of either colour, never with a bishop */ + if (knights || bishops !== undefined){ + return false; + } + knights = true; + } + else if (piece == P4_BISHOP){ + /*any number of bishops, but on only one colour square */ + var x = i & 1; + var y = parseInt(i / 10) & 1; + var parity = x ^ y; + if (knights){ + return false; + } + else if (bishops === undefined){ + bishops = parity; + } + else if (bishops != parity){ + return false; + } + } + else { + return false; + } + } + return true; +} + +/* p4_move(state, s, e, promotion) + * s, e are start and end positions + * + * promotion is the desired pawn promotion if the move gets a pawn to the other + * end. + * + * return value contains bitwise flags +*/ + +var P4_MOVE_FLAG_OK = 1; +var P4_MOVE_FLAG_CHECK = 2; +var P4_MOVE_FLAG_MATE = 4; +var P4_MOVE_FLAG_CAPTURE = 8; +var P4_MOVE_FLAG_CASTLE_KING = 16; +var P4_MOVE_FLAG_CASTLE_QUEEN = 32; +var P4_MOVE_FLAG_DRAW = 64; + +var P4_MOVE_ILLEGAL = 0; +var P4_MOVE_MISSED_MATE = P4_MOVE_FLAG_CHECK | P4_MOVE_FLAG_MATE; +var P4_MOVE_CHECKMATE = P4_MOVE_FLAG_OK | P4_MOVE_FLAG_CHECK | P4_MOVE_FLAG_MATE; +var P4_MOVE_STALEMATE = P4_MOVE_FLAG_OK | P4_MOVE_FLAG_MATE; + +function p4_move(state, s, e, promotion){ + var board = state.board; + var colour = state.to_play; + var other_colour = 1 - colour; + if (s != parseInt(s)){ + if (e === undefined){ + var mv = p4_interpret_movestring(state, s); + s = mv[0]; + e = mv[1]; + if (s == 0) + return {flags: P4_MOVE_ILLEGAL, ok: false}; + promotion = mv[2]; + } + else {/*assume two point strings: 'e2', 'e4'*/ + s = p4_destringify_point(s); + e = p4_destringify_point(e); + } + } + if (promotion === undefined) + promotion = P4_QUEEN; + var E=board[e]; + var S=board[s]; + + /*See if this move is even slightly legal, disregarding check. + */ + var i; + var legal = false; + p4_maybe_prepare(state); + var moves = p4_parse(state, colour, state.enpassant, 0); + for (i = 0; i < moves.length; i++){ + if (e == moves[i][2] && s == moves[i][1]){ + legal = true; + break; + } + } + if (! legal) { + return {flags: P4_MOVE_ILLEGAL, ok: false}; + } + + /*Try the move, and see what the response is.*/ + var changes = p4_make_move(state, s, e, promotion); + + /*is it check? */ + if (p4_check_check(state, colour)){ + p4_unmake_move(state, changes); + p4_log('in check', changes); + return {flags: P4_MOVE_ILLEGAL, ok: false, string: "in check!"}; + } + /*The move is known to be legal. We won't be undoing it.*/ + + var flags = P4_MOVE_FLAG_OK; + + state.enpassant = changes.ep; + state.history.push([s, e, promotion]); + + /*draw timeout: 50 moves without pawn move or capture is a draw */ + if (changes.E || changes.ep_position){ + state.draw_timeout = 0; + flags |= P4_MOVE_FLAG_CAPTURE; + } + else if ((S & 14) == P4_PAWN){ + state.draw_timeout = 0; + } + else{ + state.draw_timeout++; + } + if (changes.rs){ + flags |= (s > e) ? P4_MOVE_FLAG_CASTLE_QUEEN : P4_MOVE_FLAG_CASTLE_KING; + } + var shortfen = p4_state2fen(state, true); + var repetitions = (state.position_counts[shortfen] || 0) + 1; + state.position_counts[shortfen] = repetitions; + state.current_repetitions = repetitions; + if (state.draw_timeout > 100 || repetitions >= 3 || + p4_insufficient_material(state)){ + flags |= P4_MOVE_FLAG_DRAW; + } + state.moveno++; + state.to_play = other_colour; + + if (p4_check_check(state, other_colour)){ + flags |= P4_MOVE_FLAG_CHECK; + } + /* check for (stale|check)mate, by seeing if there is a move for + * the other side that doesn't result in check. (In other words, + * reduce the pseudo-legal-move list down to a legal-move list, + * and check it isn't empty). + * + * We don't need to p4_prepare because other colour pieces can't + * have moved (just disappeared) since previous call. Also, + * setting the promotion piece is unnecessary, because all + * promotions block check equally well. + */ + var is_mate = true; + var replies = p4_parse(state, other_colour, changes.ep, 0); + for (i = 0; i < replies.length; i++){ + var m = replies[i]; + var change2 = p4_make_move(state, m[1], m[2], P4_QUEEN); + var check = p4_check_check(state, other_colour); + p4_unmake_move(state, change2); + if (!check){ + is_mate = false; + break; + } + } + if (is_mate) + flags |= P4_MOVE_FLAG_MATE; + + var movestring = p4_move2string(state, s, e, S, promotion, flags, moves); + p4_log("successful move", s, e, movestring, flags); + state.prepared = false; + return { + flags: flags, + string: movestring, + ok: true + }; +} + + +function p4_move2string(state, s, e, S, promotion, flags, moves){ + var piece = S & 14; + var src, dest; + var mv, i; + var capture = flags & P4_MOVE_FLAG_CAPTURE; + + src = p4_stringify_point(s); + dest = p4_stringify_point(e); + if (piece == P4_PAWN){ + if (capture){ + mv = src.charAt(0) + 'x' + dest; + } + else + mv = dest; + if (e > 90 || e < 30){ //end row, queening + if (promotion === undefined) + promotion = P4_QUEEN; + mv += '=' + P4_ENCODE_LUT.charAt(promotion); + } + } + else if (piece == P4_KING && (s-e) * (s-e) == 4) { + if (e < s) + mv = 'O-O-O'; + else + mv = 'O-O'; + } + else { + var row_qualifier = ''; + var col_qualifier = ''; + var pstr = P4_ENCODE_LUT.charAt(S); + var sx = s % 10; + var sy = parseInt(s / 10); + + /* find any other pseudo-legal moves that would put the same + * piece in the same place, for which we'd need + * disambiguation. */ + var co_landers = []; + for (i = 0; i < moves.length; i++){ + var m = moves[i]; + if (e == m[2] && s != m[1] && state.board[m[1]] == S){ + co_landers.push(m[1]); + } + } + if (co_landers.length){ + for (i = 0; i < co_landers.length; i++){ + var c = co_landers[i]; + var cx = c % 10; + var cy = parseInt(c / 10); + if (cx == sx)/*same column, so qualify by row*/ + row_qualifier = src.charAt(1); + if (cy == sy) + col_qualifier = src.charAt(0); + } + if (row_qualifier == '' && col_qualifier == ''){ + /*no co-landers on the same rank or file, so one or the other will do. + * By convention, use the column (a-h) */ + col_qualifier = src.charAt(0); + } + } + mv = pstr + col_qualifier + row_qualifier + (capture ? 'x' : '') + dest; + } + if (flags & P4_MOVE_FLAG_CHECK){ + if (flags & P4_MOVE_FLAG_MATE) + mv += '#'; + else + mv += '+'; + } + else if (flags & P4_MOVE_FLAG_MATE) + mv += ' stalemate'; + return mv; +} + + +function p4_jump_to_moveno(state, moveno){ + p4_log('jumping to move', moveno); + if (moveno === undefined || moveno > state.moveno) + moveno = state.moveno; + else if (moveno < 0){ + moveno = state.moveno + moveno; + } + var state2 = p4_fen2state(state.beginning); + var i = 0; + while (state2.moveno < moveno){ + var m = state.history[i++]; + p4_move(state2, m[0], m[1], m[2]); + } + /* copy the replayed state across, not all that deeply, but + * enough to cover, eg, held references to board. */ + var attr, dest; + for (attr in state2){ + var src = state2[attr]; + if (attr instanceof Array){ + dest = state[attr]; + dest.length = 0; + for (i = 0; i < src.length; i++){ + dest[i] = src[i]; + } + } + else { + state[attr] = src; + } + } + state.prepared = false; +} + + +/* write a standard FEN notation + * http://en.wikipedia.org/wiki/Forsyth%E2%80%93Edwards_Notation + * */ +function p4_state2fen(state, reduced){ + var piece_lut = ' PpRrNnBbKkQq'; + var board = state.board; + var fen = ''; + //fen does Y axis backwards, X axis forwards */ + for (var y = 9; y > 1; y--){ + var count = 0; + for (var x = 1; x < 9; x++){ + var piece = board[y * 10 + x]; + if (piece == 0) + count++; + else{ + if (count) + fen += count.toString(); + fen += piece_lut.charAt(piece); + count = 0; + } + } + if (count) + fen += count; + if (y > 2) + fen += '/'; + } + /*white or black */ + fen += ' ' + 'wb'.charAt(state.to_play) + ' '; + /*castling */ + if (state.castles){ + var lut = [2, 'K', 1, 'Q', 8, 'k', 4, 'q']; + for (var i = 0; i < 8; i += 2){ + if (state.castles & lut[i]){ + fen += lut[i + 1]; + } + } + } + else + fen += '-'; + /*enpassant */ + if (state.enpassant !== 0){ + fen += ' ' + p4_stringify_point(state.enpassant); + } + else + fen += ' -'; + if (reduced){ + /*if the 'reduced' flag is set, the move number and draw + *timeout are not added. This form is used to detect draws by + *3-fold repetition.*/ + return fen; + } + fen += ' ' + state.draw_timeout + ' '; + fen += (state.moveno >> 1) + 1; + return fen; +} + +function p4_stringify_point(p){ + var letters = " abcdefgh"; + var x = p % 10; + var y = (p - x) / 10 - 1; + return letters.charAt(x) + y; +} + +function p4_destringify_point(p){ + var x = parseInt(p.charAt(0), 19) - 9; //a-h <-> 10-18, base 19 + var y = parseInt(p.charAt(1)) + 1; + if (y >= 2 && y < 10 && x >= 1 && x < 9) + return y * 10 + x; + return undefined; +} + +/* read a standard FEN notation + * http://en.wikipedia.org/wiki/Forsyth%E2%80%93Edwards_Notation + * */ +function p4_fen2state(fen, state){ + if (state === undefined) + state = p4_initialise_state(); + var board = state.board; + var fenbits = fen.split(' '); + var fen_board = fenbits[0]; + var fen_toplay = fenbits[1]; + var fen_castles = fenbits[2]; + var fen_enpassant = fenbits[3]; + var fen_timeout = fenbits[4]; + var fen_moveno = fenbits[5]; + if (fen_timeout === undefined) + fen_timeout = 0; + //fen does Y axis backwards, X axis forwards */ + var y = 90; + var x = 1; + var i, c; + for (var j = 0; j < fen_board.length; j++){ + c = fen_board.charAt(j); + if (c == '/'){ + x = 1; + y -= 10; + if (y < 20) + break; + continue; + } + var piece = P4_PIECE_LUT[c]; + if (piece && x < 9){ + board[y + x] = piece; + x++; + } + else { + var end = Math.min(x + parseInt(c), 9); + for (; x < end; x++){ + board[y + x] = 0; + } + } + } + state.to_play = (fen_toplay.toLowerCase() == 'b') ? 1 : 0; + state.castles = 0; + /* Sometimes we meet bad FEN that says it can castle when it can't. */ + var wk = board[25] == P4_KING; + var bk = board[95] == P4_KING + 1; + var castle_lut = { + k: 8 * (bk && board[98] == P4_ROOK + 1), + q: 4 * (bk && board[91] == P4_ROOK + 1), + K: 2 * (wk && board[28] == P4_ROOK), + Q: 1 * (wk && board[21] == P4_ROOK) + }; + for (i = 0; i < fen_castles.length; i++){ + c = fen_castles.charAt(i); + var castle = castle_lut[c]; + if (castle !== undefined){ + state.castles |= castle; + if (castle == 0){ + console.log("FEN claims castle state " + fen_castles + + " but pieces are not in place for " + c); + } + } + } + + state.enpassant = (fen_enpassant != '-') ? p4_destringify_point(fen_enpassant) : 0; + state.draw_timeout = parseInt(fen_timeout); + if (fen_moveno === undefined){ + /*have a guess based on entropy and pieces remaining*/ + var pieces = 0; + var mix = 0; + var p, q, r; + for (y = 20; y < 100; y+=10){ + for (x = 1; x < 9; x++){ + p = board[y + x] & 15; + pieces += (!!p); + if (x < 8){ + q = board[y + x + 1]; + mix += (!q) != (!p); + } + if (y < 90){ + q = board[y + x + 10]; + mix += (!q) != (!p); + } + } + } + fen_moveno = Math.max(1, parseInt((32 - pieces) * 1.3 + (4 - fen_castles.length) * 1.5 + ((mix - 16) / 5))); + //p4_log("pieces", pieces, "mix", mix, "estimate", fen_moveno); + } + state.moveno = 2 * (parseInt(fen_moveno) - 1) + state.to_play; + state.history = []; + state.beginning = fen; + state.prepared = false; + state.position_counts = {}; + /* Wrap external functions as methods. */ + state.move = function(s, e, promotion){ + return p4_move(this, s, e, promotion); + }; + state.findmove = function(level){ + return p4_findmove(this, level); + }; + state.jump_to_moveno = function(moveno){ + return p4_jump_to_moveno(this, moveno); + }; + return state; +} + +/* +Weights would all fit within an Int8Array *except* for the last row +for pawns, which is close to the queen value (180, max is 127). + +Int8Array seems slightly quicker in Chromium 18, no different in +Firefox 12. + +Int16Array is no faster, perhaps slower than Int32Array. + +Int32Array is marginally slower than plain arrays with Firefox 12, but +significantly quicker with Chromium. + */ + +var P4_ZEROS = []; +function p4_zero_array(){ + if (P4_USE_TYPED_ARRAYS) + return new Int32Array(120); + if (P4_ZEROS.length == 0){ + for(var i = 0; i < 120; i++){ + P4_ZEROS[i] = 0; + } + } + return P4_ZEROS.slice(); +} + +/* p4_initialise_state() creates the board and initialises weight + * arrays etc. Some of this is really only needs to be done once. + */ + +function p4_initialise_state(){ + var board = p4_zero_array(); + P4_CENTRALISING_WEIGHTS = p4_zero_array(); + P4_BASE_PAWN_WEIGHTS = p4_zero_array(); + P4_KNIGHT_WEIGHTS = p4_zero_array(); + for(var i = 0; i < 120; i++){ + var y = parseInt(i / 10); + var x = i % 10; + var dx = Math.abs(x - 4.5); + var dy = Math.abs(y - 5.5); + P4_CENTRALISING_WEIGHTS[i] = parseInt(6 - Math.pow((dx * dx + dy * dy) * 1.5, 0.6)); + //knights have a flat topped centre (bishops too, but less so). + P4_KNIGHT_WEIGHTS[i] = parseInt(((dx < 2) + (dy < 2) * 1.5) + + (dx < 3) + (dy < 3)) - 2; + P4_BASE_PAWN_WEIGHTS[i] = parseInt('000012347000'.charAt(y)); + if (y > 9 || y < 2 || x < 1 || x > 8) + board[i] = 16; + } + var weights = []; + for (i = 0; i < 14; i++){ + weights[i] = p4_zero_array(); + } + var state = { + board: board, + weights: weights, + history: [], + treeclimber: p4_alphabeta_treeclimber + }; + p4_random_seed(state, P4_DEBUG ? 1 : Date.now()); + return state; +} + +function p4_new_game(){ + return p4_fen2state(P4_INITIAL_BOARD); +} + +/*convert an arbitrary movestring into a pair of integers offsets into + * the board. The string might be in any of these forms: + * + * "d2-d4" "d2d4" "d4" -- moving a pawn + * + * "b1-c3" "b1c3" "Nc3" "N1c3" "Nbc3" "Nb1c3" -- moving a knight + * + * "b1xc3" "b1xc3" "Nxc3" -- moving a knight, also happens to capture. + * + * "O-O" "O-O-O" -- special cases for castling ("e1-c1", etc, also work) + * + * Note that for the "Nc3" (pgn) format, some knowledge of the board + * is necessary, so the state parameter is required. If it is + * undefined, the other forms will still work. + */ + +function p4_interpret_movestring(state, str){ + /* Ignore any irrelevant characters, then tokenise. + * + */ + var FAIL = [0, 0]; + var algebraic_re = /^\s*([RNBQK]?[a-h]?[1-8]?)[ :x-]*([a-h][1-8]?)(=[RNBQ])?[!?+#e.p]*\s*$/; + var castle_re = /^\s*([O0o]-[O0o](-[O0o])?)\s*$/; + var position_re = /^[a-h][1-8]$/; + + var m = algebraic_re.exec(str); + if (m == null){ + /*check for castling notation (O-O, O-O-O) */ + m = castle_re.exec(str); + if (m){ + s = 25 + state.to_play * 70; + if (m[2])/*queenside*/ + e = s - 2; + else + e = s + 2; + } + else + return FAIL; + } + var src = m[1]; + var dest = m[2]; + var queen = m[3]; + var s, e, q; + var moves, i; + if (src == '' || src == undefined){ + /* a single coordinate pawn move */ + e = p4_destringify_point(dest); + s = p4_find_source_point(state, e, 'P' + dest.charAt(0)); + } + else if (/^[RNBQK]/.test(src)){ + /*pgn format*/ + e = p4_destringify_point(dest); + s = p4_find_source_point(state, e, src); + } + else if (position_re.test(src) && position_re.test(dest)){ + s = p4_destringify_point(src); + e = p4_destringify_point(dest); + } + else if (/^[a-h]$/.test(src)){ + e = p4_destringify_point(dest); + s = p4_find_source_point(state, e, 'P' + src); + } + if (s == 0) + return FAIL; + + if (queen){ + /* the chosen queen piece */ + q = P4_PIECE_LUT[queen.charAt(1)]; + } + return [s, e, q]; +} + + +function p4_find_source_point(state, e, str){ + var colour = state.to_play; + var piece = P4_PIECE_LUT[str.charAt(0)]; + piece |= colour; + var s, i; + + var row, column; + /* can be specified as Na, Na3, N3, and who knows, N3a? */ + for (i = 1; i < str.length; i++){ + var c = str.charAt(i); + if (/[a-h]/.test(c)){ + column = str.charCodeAt(i) - 96; + } + else if (/[1-8]/.test(c)){ + /*row goes 2 - 9 */ + row = 1 + parseInt(c); + } + } + var possibilities = []; + p4_prepare(state); + var moves = p4_parse(state, colour, + state.enpassant, 0); + for (i = 0; i < moves.length; i++){ + var mv = moves[i]; + if (e == mv[2]){ + s = mv[1]; + if (state.board[s] == piece && + (column === undefined || column == s % 10) && + (row === undefined || row == parseInt(s / 10)) + ){ + var change = p4_make_move(state, s, e, P4_QUEEN); + if (! p4_check_check(state, colour)) + possibilities.push(s); + p4_unmake_move(state, change); + } + } + } + p4_log("finding", str, "that goes to", e, "got", possibilities); + + if (possibilities.length == 0){ + return 0; + } + else if (possibilities.length > 1){ + p4_log("p4_find_source_point seems to have failed", + state, e, str, + possibilities); + } + return possibilities[0]; +} + + +/*random number generator based on + * http://burtleburtle.net/bob/rand/smallprng.html + */ +function p4_random_seed(state, seed){ + seed &= 0xffffffff; + state.rng = (P4_USE_TYPED_ARRAYS) ? new Uint32Array(4) : []; + state.rng[0] = 0xf1ea5eed; + state.rng[1] = seed; + state.rng[2] = seed; + state.rng[3] = seed; + for (var i = 0; i < 20; i++) + p4_random31(state); +} + +function p4_random31(state){ + var rng = state.rng; + var b = rng[1]; + var c = rng[2]; + /* These shifts amount to rotates. + * Note the three-fold right shift '>>>', meaning an unsigned shift. + * The 0xffffffff masks are needed to keep javascript to 32bit. (supposing + * untyped arrays). + */ + var e = rng[0] - ((b << 27) | (b >>> 5)); + rng[0] = b ^ ((c << 17) | (c >>> 15)); + rng[1] = (c + rng[3]) & 0xffffffff; + rng[2] = (rng[3] + e) & 0xffffffff; + rng[3] = (e + rng[0]) & 0xffffffff; + return rng[3] & 0x7fffffff; +} + +function p4_random_int(state, top){ + /* uniform integer in range [0 <= n < top), supposing top < 2 ** 31 + * + * This method is slightly (probably pointlessly) more accurate + * than converting to 0-1 float, multiplying and truncating, and + * considerably more accurate than a simple modulus. + * Obviously it is a bit slower. + */ + /* mask becomes one less than the next highest power of 2 */ + var mask = top; + mask--; + mask |= mask >>> 1; + mask |= mask >>> 2; + mask |= mask >>> 4; + mask |= mask >>> 8; + mask |= mask >>> 16; + var r; + do{ + r = p4_random31(state) & mask; + } while (r >= top); + return r; +} + +// Added for espruino +exports.p4_new_game = p4_new_game; +exports.p4_fen2state = p4_fen2state; +exports.p4_state2fen = p4_state2fen; +exports.P4_INITIAL_BOARD = P4_INITIAL_BOARD; +exports.P4_PAWN = P4_PAWN; +exports.P4_ROOK = P4_ROOK; +exports.P4_KNIGHT = P4_KNIGHT; +exports.P4_BISHOP = P4_BISHOP; +exports.P4_QUEEN = P4_QUEEN; +exports.P4_KING = P4_KING; +exports.P4_MOVE_FLAG_OK = P4_MOVE_FLAG_OK; +exports.P4_MOVE_FLAG_CHECK = P4_MOVE_FLAG_CHECK; +exports.P4_MOVE_FLAG_MATE = P4_MOVE_FLAG_MATE; +exports.P4_MOVE_FLAG_CAPTURE = P4_MOVE_FLAG_CAPTURE; +exports.P4_MOVE_FLAG_CASTLE_KING = P4_MOVE_FLAG_CASTLE_KING; +exports.P4_MOVE_FLAG_CASTLE_QUEEN = P4_MOVE_FLAG_CASTLE_QUEEN; +exports.P4_MOVE_FLAG_DRAW = P4_MOVE_FLAG_DRAW; +exports.P4_MOVE_ILLEGAL = P4_MOVE_ILLEGAL; +exports.P4_MOVE_MISSED_MATE = P4_MOVE_MISSED_MATE; +exports.P4_MOVE_CHECKMATE = P4_MOVE_CHECKMATE; +exports.P4_MOVE_STALEMATE = P4_MOVE_STALEMATE; diff --git a/apps/chess/metadata.json b/apps/chess/metadata.json new file mode 100644 index 000000000..a66391deb --- /dev/null +++ b/apps/chess/metadata.json @@ -0,0 +1,17 @@ +{ + "id": "chess", + "name": "Chess", + "shortName": "Chess", + "version": "0.01", + "description": "Chess game based on the [p4wn engine](https://p4wn.sourceforge.net/). Drag on the touchscreen to move the green cursor onto a piece, select it with a single touch and drag the now red cursor around. Release the piece with another touch to finish the move. The button opens a menu.", + "icon": "app.png", + "tags": "game", + "supports": ["BANGLEJS2"], + "storage": [ + {"name":"chess.app.js","url":"app.js"}, + {"name":"chessengine","url":"engine.js"}, + {"name":"chess.img","url":"app-icon.js","evaluate":true} + ], + "data": [{"name":"chess.json"}], + "screenshots": [ {"url":"screenshot.png"} ] +} diff --git a/apps/chess/screenshot.png b/apps/chess/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..11d96163ba66fae183a2214c996365863a626b2c GIT binary patch literal 3602 zcmaJ^c{r478?Q-BDvW)Z$V|wwWhvVkF$ReUg~*ufA^SGNR1;Y;nTTW=m8qt(%-A`M z=9Ew}jGb)95@T#(D8e_K@B04y-s^hb=X&nvxu5r5e)sRXpOnis7RULe`41d8aNP0& z!k#-)_g)|`_e-gnLUM7hg)6&a-TS$S29NZ zQ&0Re<15!t#k&g@3-Ta2mY?Kn{5%!Nu(!R;GWO2lY`H^V#I(=HtabzSe`E;Y5!#7$ zDYmLm(saZt)9mTKCBYfa*N*S>yh)c+>pZ5f%VG_7ge3Ks(AGy9; z@axV^L7y}MzER>XjOg5lEBSlO+xXddEk}|OGH%drY;)Zpq%CD^W{Wj#`@``8{x@0H zu&-|8XgF%>`J3M&C)n>atH8DSl^OKDrC5Ps#rd)0*WD}x;(F&bhHX`D8G@PhDePN| zLkU>@GuiO@Q}fS|zc;GWE9p*z6X~uz$N^?Y2GZc!9g%2HJ|EqXp;qGb#nsa8FK)3d zei|#=?KlFcr@tcY5IgJB=AD2$o#lOfI~$@O*bQM5XhyVS$Lz5fTd}$JZn(g(;g#$| z&!){+OT%9u+C6cYfn(E+lMaca>Uo|V>Ig6O>+lotRr|H|wmFufikqf0r5x(-h|i9^ zP-)i*7x66_R^}Ncg$cIFewa4hpx%unGr~r(ND9ncCK9zOd0hYWAMaa4Z`bfo(dDqv zL)__ZP=8&^tg8$(E_K~>v56(QAZw%d?%qgKR$iUwYV$~n%vH&Nv9|PG*u(FU9-)#E;VdizpICBee`(+N~5Q|1@P>CtN3&FSQ`NIY8JUFf7adaAWdZB z{^K1>)6oLPK*7u}+O^R2_tz2)TxUXItPwS82G-$7K1ei&EZ4QQS<*l1!

    B z)BUEBm(>+yhePv&A9g(Eb*j04B3}Fbx`^-$TYp0&t+N4a`PaWJkdpQ%-=P-+(NXP= zBLzM$BQxo=aX(gjd2mnN#qB4f9~12spep&^WAXqJk0ErzB>{CLS^@x7GL7>7X0dSR z32^|OGWYwwO)A|wA&clUZ?Kf%P~J?ugmNTT@tN=#4V5)AS5iO#*PYH&)PBjnDKzC{ z-}zKyC!xX`kLN!M%-}tOlRd?geJIa!D@d$27AAPz8Cq^-Zqqz9$~-d9@{YK+K*C(E zKSsmI#(dCUP7e1Lc{u2a;6V8ZnY&v?Ay+bWH&T;}zj-0bFZ?QBxwyWquqqrf-6VV zI1qq^(s5?bmg>#7p3NsJRB5d_g|T>5TJ$O(XdsjyL~O7NBaUeB=e}BdK&J@GtShRg z`nBdD#&@viK+Zh3w*(S^zvGOXwGhpDB7Jre^_uh3^Enu8VE$X(T!z=ZKa1%~Rjte>5A=V*>053Su_eK7dt&2Q; zf%`5~fq$y_O8jq^y!aQj9I&Q6A4f)w;Ae7c%_e^|C3ZDk`yTrp8OU)<_Sh`+GFcEZ zE1Z5a=7+u_=r7UR9iX(I05P-_h`a=EC|28=TWZ=y>xih~m|=?KKT8)vzr2y{Nn^5^ z=<9+U8D*zE*T&4d>rvRKGl(JzT}U0S`uaF2o9X19#QNrH!6UwBk)F+X`f+NuV;~mv z^XA)Dt&frfA}|=n>UE!MXfHLIz$24<*%q=XUTYOx*l7ygSX1Ux57NqPUbX?cp4U?T z>a{1gq%d$~3Kvkc8(TGvHu4etFC2hG_)lAT=S2h(=uNrR>)BO!VN>f}Q7`h}A3O8- zB&!0>+bU=sD|36ClhC^I2d)0F)_l#FiAe)OVxp{nr9uU_0dt{E9coCdH12$6R+O{9(#;Eng(!b*I2Fn~{X5GWQSt*LN< z%oUFBxK!BN)D7|f8%b_zw8_F!v5}7W(sVW+8e_r63)>f%Q?09UQ!kug)HAJnX_{pufBQAk?Mxm0p$MOz_id zvQS->2A(1|VeYS^IExld|CaQJva3&x^^IcqH9hdErZIe<`?5zz0L8Qh4i`u7)9o7S zvu>ci|JLR|!omhlRNrmWO3;N5Zg$nnDtEUw!UVwz2mG_A{kTk zkf3j#*gcYG#C4PUl6K^nv7M|CS)E2w{ zAZ5AFG`^UUG}k}*W6p##xI^Pye$NbB*O?Z;TmtwK??6ae<|h4mlb3i@^q5Po(-)S+ zc+9EF3qi~Z-Lw+ere$5cwEP(>J)P%%`e9*}Vbp|_InM>pbh(GYeGhQ+xCqjE`bv-h z{xrT&U17o?{q}bU=d)$1WUu_H;`qR!TtpiqJrCCU*#(Q%*@%M_N|b`3Jm$^G2+?lE zi=Fke-p$-|Sv>o#5%Kc>YmJlvQ zQ}&j&VsI~5a!@#{|DTL&PG`PfcdWxKeGqyY>FBTl#4)GJCK@=Mr=0s! zt5@d?1DtN_(oXAj)>Y}BW6CFb%h5*PKOt8LS(2xY$hqLc46lCjkJN}Pz=Akg z3^Q*-cbuXgX%olMnyHE%u_vk!9_*aR1&hr#qPh3F O1D0ksh*CJ}-hTk&F8Ch+ literal 0 HcmV?d00001 From 3df2f223aa6f720692f0f083fc80c0dfddeae777 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Sun, 2 Jul 2023 23:17:11 +0200 Subject: [PATCH 1643/1725] chess: enable emulator --- apps/chess/metadata.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/chess/metadata.json b/apps/chess/metadata.json index a66391deb..3d5d39496 100644 --- a/apps/chess/metadata.json +++ b/apps/chess/metadata.json @@ -13,5 +13,6 @@ {"name":"chess.img","url":"app-icon.js","evaluate":true} ], "data": [{"name":"chess.json"}], - "screenshots": [ {"url":"screenshot.png"} ] + "screenshots": [ {"url":"screenshot.png"} ], + "allow_emulator": true } From e5a3dc48f932b22b3b2615701b6fe98ac6d69053 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Mon, 3 Jul 2023 01:43:19 +0200 Subject: [PATCH 1644/1725] Revert "chess: enable emulator" This reverts commit 3df2f223aa6f720692f0f083fc80c0dfddeae777. --- apps/chess/metadata.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/chess/metadata.json b/apps/chess/metadata.json index 3d5d39496..a66391deb 100644 --- a/apps/chess/metadata.json +++ b/apps/chess/metadata.json @@ -13,6 +13,5 @@ {"name":"chess.img","url":"app-icon.js","evaluate":true} ], "data": [{"name":"chess.json"}], - "screenshots": [ {"url":"screenshot.png"} ], - "allow_emulator": true + "screenshots": [ {"url":"screenshot.png"} ] } From 2c4ee723ef203c5430a258f73400f2cd09c18ccf Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Mon, 3 Jul 2023 07:43:38 +0200 Subject: [PATCH 1645/1725] chess: minor tweaks --- apps/chess/app.js | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/apps/chess/app.js b/apps/chess/app.js index 1750d5c8f..bb3ab147d 100644 --- a/apps/chess/app.js +++ b/apps/chess/app.js @@ -83,7 +83,7 @@ const drawPiece = (buf, x, y, piece) => { }; const drawBoard = () => { - console.log("Free: " + process.memory().free); + //console.log("Free: " + process.memory().free); g.setBgColor("#555").setColor("#aaa").drawImage(bgImage, Bangle.appRect.x, Bangle.appRect.y); for(let idxrow=0; idxrow<8; idxrow++) { @@ -155,7 +155,7 @@ const showAlert = (msg) => { const move = (from,to) => { const res = state.move(from, to); - console.log(res); + //console.log(res); if (!res.ok) { showAlert("Illegal move"); } else { @@ -165,12 +165,9 @@ const move = (from,to) => { showAlert("A king is in check"); } else if (res.flags & engine.P4_MOVE_FLAG_DRAW) { showAlert("A draw is available"); - } else { - drawBoard(); - drawSelectedField(); } } - return res.ok; + return res; }; const showMessage = (msg) => { @@ -220,17 +217,23 @@ Bangle.on('touch', (button, xy) => { const posFrom = idx2Pos(startfield[0]/FIELD_WIDTH, startfield[1]/FIELD_HEIGHT); const posTo = idx2Pos(colTo/FIELD_WIDTH, rowTo/FIELD_HEIGHT); setTimeout(() => { - if (move(posFrom, posTo)) { - // human move ok, do computer move + if (move(posFrom, posTo).ok) { + // human move ok, update + drawBoard(); + drawSelectedField(); + // do computer move Bangle.setLCDTimeout(0.1); // this can take some time, turn off to save power showMessage(/*LANG*/"Calculating.."); setTimeout(() => { const compMove = state.findmove(settings.computer_level+1); - move(compMove[0], compMove[1]); + const result = move(compMove[0], compMove[1]); writeSettings(); Bangle.setLCDPower(true); Bangle.setLocked(false); Bangle.setLCDTimeout(DEFAULT_TIMEOUT/1000); // restore + if (!showmenu) { + showAlert(result.string); + } }, 200); // execute after display update } }, 100); // execute after display update From cb2760a3f191e3b0a0ccb178010291358df6ee33 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Mon, 3 Jul 2023 15:54:27 +0100 Subject: [PATCH 1646/1725] docs - fix #2860 --- apps/messages/README.md | 18 +++++------------- apps/messages/lib.js | 4 ++-- 2 files changed, 7 insertions(+), 15 deletions(-) diff --git a/apps/messages/README.md b/apps/messages/README.md index 83524d7c8..dce2a26c1 100644 --- a/apps/messages/README.md +++ b/apps/messages/README.md @@ -1,6 +1,6 @@ # Messages library -This library handles the passing of messages. It can storess a list of messages +This library handles the passing of messages. It can stores a list of messages and allows them to be retrieved by other apps. ## Example @@ -37,18 +37,10 @@ myMessageListener = Bangle.on("message", (type, message)=>{ }); ``` -Apps can launch the full GUI by calling `require("messages").openGUI()`, if you -want to write your own GUI, it should include boot code that listens for -`"messageGUI"` events: - -```js -Bangle.on("messageGUI", message=>{ - if (message.handled) return; // another app already opened it's GUI - message.handled = true; // prevent other apps form launching - Bangle.load("my_message_gui.app.js"); -}) - -``` +Apps can launch the currently installed Message GUI by calling `require("messages").openGUI()`. +If you want to write your own GUI, it should include a library called `messagegui` +with a method called `open` that will cause it to be opened, with the +optionally supplied message. See `apps/messagegui/lib.js` for an example. ## Requests diff --git a/apps/messages/lib.js b/apps/messages/lib.js index 7a515a1f8..f3ae253e6 100644 --- a/apps/messages/lib.js +++ b/apps/messages/lib.js @@ -107,7 +107,7 @@ exports.dismiss = function(msg) { }; /** - * Emit a "type=openGUI" event, to open GUI app + * Open the Messages GUI app * * @param {object} [msg={}] Message the app should show */ @@ -215,7 +215,7 @@ exports.buzz = function(msgSrc) { let repeat = msgSettings.repeat; if (repeat===undefined) repeat = 4; // repeat may be zero - if (repeat) + if (repeat) { exports.buzzInterval = setInterval(() => require("buzz").pattern(pattern), repeat*1000); let vibrateTimeout = msgSettings.vibrateTimeout; From dda1ed508d69fd088c9118722113dbdccccb3f86 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 4 Jul 2023 01:03:33 +0000 Subject: [PATCH 1647/1725] build(deps): bump core from `f922941` to `e1ccf48` Bumps [core](https://github.com/espruino/EspruinoAppLoaderCore) from `f922941` to `e1ccf48`. - [Commits](https://github.com/espruino/EspruinoAppLoaderCore/compare/f922941a17cfdc3c37bf3e832961c0ca958e27d3...e1ccf487abc3dd74735eefcfdf8dddb48f4f8951) --- updated-dependencies: - dependency-name: core dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index f922941a1..e1ccf487a 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit f922941a17cfdc3c37bf3e832961c0ca958e27d3 +Subproject commit e1ccf487abc3dd74735eefcfdf8dddb48f4f8951 From 0414dd5515dc1d8ef64d641a995310baa3f89bb2 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Tue, 4 Jul 2023 16:18:45 +0100 Subject: [PATCH 1648/1725] Default to sending info to banglejs.com - there has been zero complaint so far and it's anonymous, app id only --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index e1ccf487a..e521afd72 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit e1ccf487abc3dd74735eefcfdf8dddb48f4f8951 +Subproject commit e521afd722c46689007e62fdb5e370991f249823 From 026778f656146e2454c7cf34658aabd8e3fab3a7 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Tue, 4 Jul 2023 16:19:30 +0100 Subject: [PATCH 1649/1725] Modified Geissclk for Bangle.js 2 --- apps/geissclk/ChangeLog | 1 + apps/geissclk/clock.js | 74 +++++++++++++++++++++++++++++-------- apps/geissclk/metadata.json | 4 +- apps/geissclk/precompute.js | 18 ++++----- 4 files changed, 70 insertions(+), 27 deletions(-) diff --git a/apps/geissclk/ChangeLog b/apps/geissclk/ChangeLog index cd46173f7..680d820ae 100644 --- a/apps/geissclk/ChangeLog +++ b/apps/geissclk/ChangeLog @@ -2,3 +2,4 @@ 0.02: BTN2->launcher, use smaller text to allow "20:00" to fit on screen 0.03: Changed setWatch to Bangle.setUI 0.04: Tell clock widgets to hide. +0.05: Making geissclock work on Bangle.js 2 (but only animate when unlocked!) \ No newline at end of file diff --git a/apps/geissclk/clock.js b/apps/geissclk/clock.js index 5401fb142..2f1428d24 100644 --- a/apps/geissclk/clock.js +++ b/apps/geissclk/clock.js @@ -1,4 +1,7 @@ var W = 79, H = 64; +// if screen is always on, only animate when unlocked +var isScreenAlwaysOn = process.env.BOARD=="BANGLEJS2"; + /*var compiled = E.compiledC(` // void transl(int, int, int ) int transl(unsigned char *map, unsigned char *imgfrom, unsigned char *imgto) { @@ -46,6 +49,7 @@ var map = new Uint8Array(W*H); var pal = new Uint16Array(256); var PALETTES = 3; var MAPS = 6; +var animInterval; // If we're missing any maps, compute them! (function() { @@ -65,6 +69,8 @@ function randomPalette() { var n = (0|Math.random()*200000) % PALETTES; var p = new Uint8Array(pal.buffer); p.set(require("Storage").readArrayBuffer("geissclk."+n+".pal")); + if (!g.theme.dark) // if not dark, invert colors + E.mapInPlace(pal,pal,x=>x^0xFFFF); } function randomMap() { @@ -93,7 +99,7 @@ var im = { }; var lastSeconds = -1; -function iterate() { "ram" +function iterate(clearBuf) { "ram" var d = new Date(); var time = require("locale").time(d,1); var seconds = d.getSeconds().toString().padStart(2,0); @@ -108,27 +114,59 @@ function iterate() { "ram" gfx.buffer = dataa.buffer; } var x,y,n,t = getTime()/10; - var amt = 100*Bangle.getAccel().diff; - for (var i=0;i Date: Tue, 4 Jul 2023 19:56:16 +0100 Subject: [PATCH 1650/1725] support fastload --- apps/lcars/ChangeLog | 3 +- apps/lcars/lcars.app.js | 260 +++++++++++++++++++++------------------ apps/lcars/metadata.json | 2 +- 3 files changed, 142 insertions(+), 123 deletions(-) diff --git a/apps/lcars/ChangeLog b/apps/lcars/ChangeLog index e3f1f6d77..d4a5eb53b 100644 --- a/apps/lcars/ChangeLog +++ b/apps/lcars/ChangeLog @@ -25,4 +25,5 @@ 0.25: Add more colors to the settings and add the ability to disable the data charts+Markup. 0.26: Use widget_utils. 0.27: Report latest HRM rather than HRM 10 minutes ago (fix #2395) -0.28: Battery Vref implemented correctly. \ No newline at end of file +0.28: Battery Vref implemented correctly. +0.29: Support fastload. \ No newline at end of file diff --git a/apps/lcars/lcars.app.js b/apps/lcars/lcars.app.js index 4eab1c4eb..858ef51dd 100644 --- a/apps/lcars/lcars.app.js +++ b/apps/lcars/lcars.app.js @@ -1,7 +1,8 @@ +{ const TIMER_IDX = "lcars"; const SETTINGS_FILE = "lcars.setting.json"; const locale = require('locale'); -const storage = require('Storage') +const storage = require('Storage'); const widget_utils = require('widget_utils'); let settings = { alarm: -1, @@ -18,7 +19,7 @@ let settings = { }; let saved_settings = storage.readJSON(SETTINGS_FILE, 1) || settings; for (const key in saved_settings) { - settings[key] = saved_settings[key] + settings[key] = saved_settings[key]; } /* @@ -36,10 +37,10 @@ let cGrey = "#424242"; */ let lcarsViewPos = 0; // let hrmValue = 0; -var plotMonth = false; +let plotMonth = false; -function convert24to16(input) +let convert24to16 = function(input) { let RGB888 = parseInt(input.replace(/^#/, ''), 16); let r = (RGB888 & 0xFF0000) >> 16; @@ -55,17 +56,17 @@ function convert24to16(input) RGB565 = RGB565 | b; return "0x"+RGB565.toString(16); -} +}; -var color1C = convert24to16(color1);//Converting colors to the correct format. -var color2C = convert24to16(color2); -var color3C = convert24to16(color3); +let color1C = convert24to16(color1);//Converting colors to the correct format. +let color2C = convert24to16(color2); +let color3C = convert24to16(color3); /* * Requirements and globals */ -var colorPalette = new Uint16Array([//Used to change the color of the image if the user selects a color that is diffrent than the default. +let colorPalette = new Uint16Array([//Used to change the color of the image if the user selects a color that is diffrent than the default. 0x0000, // not used color2C, // second color3C, // third @@ -84,73 +85,73 @@ var colorPalette = new Uint16Array([//Used to change the color of the image if t 0x0000 // not used ],0,1); -var bgLeftFullscreen = { +let bgLeftFullscreen = { width : 27, height : 176, bpp : 3, transparent : 0, buffer : require("heatshrink").decompress((atob("/4AB+VJkmSAQV///+BAtJn//5IIFkmf/4IGyVP/gIGpMnF41PHIImGF4ImHJoQmGJoIdK8hNHNY47C/JNGBIJZGyYJBQA5GCKH5Q/KAQAoUP7y/KH5QGDoQAy0hGF34JB6RGFr4JB9JkFl4JB+gdFy4JB/QdFpYJB/odFkqrCS4xGCWoyDCKH5Q1GShlJChQLCCg5TCHw5TMAD35FAoIIkgJB8hGGv/8Mg8/+QIFp4cB5IRGBIIvI/4IFybyCF4wTCDp5NBHZZiGz4JBLJKAGk4JBO4xQ/KGQA8UP7y/KH5QnAHih/eX5Q/GQ4JCGRJlKCgxTDBAwgCCg5TCHwxTCNA4"))), palette: colorPalette }; -var bgLeftNotFullscreen = { +let bgLeftNotFullscreen = { width : 27, height : 152, bpp : 3, transparent : 0, buffer : require("heatshrink").decompress((atob("/4AB+VJkmSAQV///+BAtJn//5IIFkmf/4IGyVP/gIGpMnF41PHIImGF4ImHJoQmGJoIdK8hNHNY47C/JNGBIJZGyYJBQA5GCKH5Q/KAQAy0hGF34JB6RGFr4JB9JkFl4JB+gdFy4JB/QdFpYJB/odFkqrCS4xGCWoyhCKH5Q1GShlJChQLCCg5TCHw5TMAD35FAoIIkgJB8hGGv/8Mg8/+QIFp4cB5IRGBIIvI/4IFybyCF4wTCDp5NBHZZiGz4JBLJKAGk4JBO4xQ/KGQA8UP7y/KH5QnAHih/eX5Q/GQ4JCGRJlKCgxTDBAwgCCg5TCHwxTCNA4A=="))), palette: colorPalette }; -var bgRightFullscreen = { +let bgRightFullscreen = { width : 27, height : 176, bpp : 3, transparent : 0, buffer : require("heatshrink").decompress((atob("yVJkgCCyf/AAPJBAYCBk4JB8gUFyVP//yBAoCB//5BAwUCAAIUHAAIgGChopGv5TIn5TIz4yLKYxxC/iGI/xxGKH5Q/agwAnUP7y/KH4yGeVYAJ0hGF34JB6RGFr4JB9JkFl4JB+gdFy4JB/QdFpYJB/odFkp4CS4xGCWoyhCKH5QuDoxQCDpI7GDoJZGHYIRGLIQvGO4QvGMQRNJADv+GIqTC/5PGz4JBJ41JBIPJCg2TD4QLGn4JB/gUaHwRTGHwRTHBIRTGNAQyJ8gyI+QdFp4JB/IdFk5lLKH5QvAHih/eX5Q/KE4A8UP7y/KH5QGDpg7HJoxZCCIx3CJowmCF4yACJoyJC/4A=="))), palette: colorPalette }; -var bgRightNotFullscreen = { +let bgRightNotFullscreen = { width : 27, height : 152, bpp : 3, transparent : 0, buffer : require("heatshrink").decompress((atob("yVJkgCCyf/AAPJBAYCBk4JB8gUFyVP//yBAoCB//5BAwUCAAIUHAAIgGChopGv5TIn5TIz4yLKYxxC/iGI/xxGKH5Q/agwAx0hGF34JB6RGFr4JB9JkFl4JB+gdFy4JB/QdFpYJB/odFkqrCS4xGCWoyhCKH5QuDoxQCDpI7GDoJZGHYIRGLIQvGO4QvGMQRNJADv+GIqTC/5PGz4JBJ41JBIPJCg2TD4QLGn4JB/gUaHwRTGHwRTHBIRTGNAQyJ8gyI+QdFp4JB/IdFk5lLKH5QvAHih/eX5Q/KE4A8UP7y/KH5QGDpg7HJoxZCCIx3CJowmCF4yACJoyJC/4A="))), palette: colorPalette }; -var bgLeft = settings.fullscreen ? bgLeftFullscreen : bgLeftNotFullscreen; -var bgRight= settings.fullscreen ? bgRightFullscreen : bgRightNotFullscreen; +let bgLeft = settings.fullscreen ? bgLeftFullscreen : bgLeftNotFullscreen; +let bgRight= settings.fullscreen ? bgRightFullscreen : bgRightNotFullscreen; -var iconEarth = { +let iconEarth = { width : 50, height : 50, bpp : 3, buffer : require("heatshrink").decompress(atob("AFtx48ECBsDwU5k/yhARLjgjBjlzAQMQEZcIkOP/fn31IEZgCBnlz58cEpM4geugEgwU/8+WNZJHDuHHvgmBCQ8goEOnVgJoMnyV58mACItHI4X8uAFBuVHnnz4BuGxk4////Egz3IkmWvPgNw8f/prB//BghTC+AjE7848eMjNnzySBwUJkmf/BuGuPDAQIjBiPHhhTCSQnjMo0ITANJn44Dg8MuFBggCCiFBcAJ0Bv5xEh+ITo2OhHkyf/OIQdBWwVHhgjBNwUE+fP/5EEgePMoYLBhMgyVJk/+BQQdC688I4XxOIc8v//NAvr+QEBj/5NwKVBy1/QYUciPBhk1EAJrC+KeC489QYaMBgU/8BNB9+ChEjz1Jkn/QYMBDQIgCcYTCCiP/nlzJQmenMAgV4//uy/9wRaB/1J8iVCcAfHjt9TYYICnhKCgRKBw159/v//r927OIeeoASBDQccvv3791KYVDBYPLJQeCnPnz//AAP6ocEjEkXgMgJQtz79fLAP8KYkccAcJ8Gf/f/xu/cAMQ4eP5MlyQRCMolx40YsOGBAPfnnzU4KVDpKMBvz8Dh0/8me7IICgkxJQXPIgZTD58sEgcJk+eNoONnFBhk4/5uB/pcDg5KD+4mEv4CBXISVDhEn31/8/+mH7x//JQK5CAAMB4JBCnnxJQf/+fJEgkAa4L+CAQOOjMn/1bXIRxDJQXx58f//Hhlz/88EgsChMgz/Zs/+nfkyV/8huDOI6SD498NwoACi1Z8+S/Plz17/+QCI7jC+ZxBmfPnojIAAMDcYWSp//2wRJEwq2GABECjMgNYwAmA=")) }; -var iconSaturn = { +let iconSaturn = { width : 50, height : 50, bpp : 3, transparent : 1, buffer : require("heatshrink").decompress(atob("AH4A/AEkQuPHCJ0ChEAwARNjAjBjgjOhs06Q2OEYVx4ARMhEggUMkANIDoIgBoEEgEBNxJEC6ZrBAAMwNxAjDNYcHNxIjB7dtEwIHBwRoKj158+cuPEjlwCRAjC23bpu0wRNDAAsHEYWeEwaSJ6YjCAQUNSRQjEzxQBWZMNEYlsmg2JWAIjCz95SoJuJggjDtuw6dMG5JKCz998wFBJRVNEYW0yaVBJRNhJQN9+4pCzhKJmBKC4YpB/fINxIgCzFxSoQ3J4ENm3CAQPb98wbpEcAQMYWwKYBNxMDXgc2/fv3g2IEAOAgAjBjy5CEhEMfYICBgfPnjdLjj+CgMHiC3JknDhhoINw4jCAB0IJQIANR4QjPAH4A/AFA")) }; -var iconMoon = { +let iconMoon = { width : 50, height : 50, bpp : 3, transparent : 1, buffer : require("heatshrink").decompress(atob("AH4AQjlx44CCCZsg8eOkHDwAQKEYgmPhEgEQM48AOIgMHEYoCB4ATI8UAmH/x04JoRuJsImHuBKLn37EwZuIgEQOI8cEpXj/yYBhE8+YNGgkYoJxITBUPnAaC///nC+FjBuIOJZEB8YeCh/8AoYACoMEEAnEjhQDPQJKJ/DCDAoi5DoLdHAoMQgLjFWYPOnngh02IwXzwDjEgPGEYS8BI4MBYoSVG4fP/nghkAgZrDkngJQqSG4gvBg4sBQgkImHihEAWwP8ZBMBEYl5/+cSoVAGQIUFh04weJn///0gj/OEw5KEz45BzhuCTYQAEgePB4IACAoJuBnAQEa4XHjxKB//xFgWHJQsCRgMDEonipwjENwUBDQNx8+evvn/hTDLw3igE+EgZxB8UOXIvEJQUfEYOfv53DEQkgga5BJQvzx84cAj+CDoNh8/eEYJKDuCSEcocnEon+/7xEgFBIIcfB4Mf/IICXI2DgDdBAAn758gCIq5Dv4zBvJuIOIfjEgvP/ARHgwdCB4P3AoTdFAAk4EYk8SQgAFTALaDSQwAGh08//vnDmBABYmEEZYAzA==")) }; -var iconMars = { +let iconMars = { width : 50, height : 50, bpp : 3, transparent : 1, buffer : require("heatshrink").decompress(atob("AH4ATjlwCJ+Dh0wwAQMg0cuPHjFhCZkDps0yVJkmQCBMEjFx42atOmzQmLhMkEYQCCCREQoOGEYmmzB0IEY4CBkARGoJKBEYQCEzgSGkGSpAjDyYCCphuGiFhJQgCD8ASFgRHGAQKbB6BuHJRGeOIsINxEk6dNmARDgMEjQjHAQPnVQojIyZKB6YSDNwK5FAQt54BuDXJIjBEwK5EgxKKXgq5BJRdgXIojJAQJKMcAM0EwM2JUApDoCVFExa7FkGCgAmIkAREEwUEjAmHCIgABhEggQmFpACBCIojBEwRQCzVhwkQU4YADgQmBwQCCI4IFBCAojFAQojGJQQjDAQgRGEZICBEo4gFyUIkilFJQUYEAZrBAQMYNw5KDSQSbCNwwABgOGEwgCBsPACQ5xGwdNnARJcAVh48evvnCJK8Chs+/fv33gCRcB48cuPHCBYA/ADAA==")) }; -var iconSatellite = { +let iconSatellite = { width : 50, height : 50, bpp : 3, transparent : 2, buffer : require("heatshrink").decompress(atob("pMkyQC/ATGXhIRPyNl0gmPjlwCJ9ly1aCJ1c+fHJR1Hy1ZJR1I+fPnlx6QRLpe+/JKBr5KMuYjBJQMdCJce/fvJQW0CJUlEYQCBSpvvJQbXJjl0NwnzNxGQwEOnHhgF78+WqQyIrFx48cAQXz4ShJgAABh0+8cP//9LJEhg4jDuP3//0LhGQgYlBgeAn///5cIy8MuAmDCIP/9I4HkmCEYMOgHfCQWkCI0cuBuDgF/CIP+CI1Ny1IkeAgHANwIAB/QRFrj7BhkxEwQRC/4RFpbXDgSVBg4RCSorXDI4MJAQMfCIP8cwImDn37fwN58+kwHgLgSVFub7CI4NyBAJKDLgkuEYX78+evKtCLg0jEYRKC58JMoRcFkwjDJQTFDl65EkojEAQMdcwn/+gFC3YjEJQLXEpYRDWwQmEdI6SHAQO0CJUkx4jDF4gCIJQgRMXIjCEARIjCCJ2XEYPKCJqJBJQIROcAUpCJ0kybaDARtdCKAC2kAA=")) }; -var iconCharging = { +let iconCharging = { width : 50, height : 50, bpp : 3, transparent : 5, buffer : require("heatshrink").decompress(atob("23btugAwUBtoICARG0h048eODQYCJ6P/AAUCCJfbo4SDxYRLtEcuPHjlwgoRJ7RnIloUHoYjDAQfAExEAwUIkACEkSAIEYwCBhZKH6EIJI0CJRFHEY0BJRWBSgf//0AJRYSE4BKLj4SE8BKLv4RD/hK/JS2AXY0gXwRKG4cMmACCJQMAg8csEFJQsBAwfasEAm379u0gFbcBfHzgFBz1xMQZKBjY/D0E2+BOChu26yVEEYdww+cgAFCg+cgIfB6RKF4HbgEIkGChEAthfCJQ0eEAIjBBAMxk6GCJQtgtyVBwRKBAQMbHAJKGXIIFCgACBhl54qVG2E+EAJKBJoWAm0WJQ6SCXgdxFgMLJQvYjeAEAUwFIUitEtJQ14NwUHgEwKYZKGwOwNYX7XgWCg3CJQ5rB4MevPnAoPDJRJrCgEG/ECAoNsJRUwoEesIIBiJKI3CVDti/CJRKVDiJHBSo0YsOGjED8AjBcAcIgdhcAXAPIUAcAYIBcA4dBAQUG8BrBgBuCgOwcBEeXIK2BBAIFBgRqBGoYAChq8CcYUE4FbUYOACQsHzgjDgwFBCIImBAQsDtwYD7cAloRI22B86YBw5QBgoRJ7dAgYEDCJaeBJoMcsARMAQNoJIIRE6A")) }; -var iconWarning = { +let iconWarning = { width : 50, height : 50, bpp : 3, transparent : 1, buffer : require("heatshrink").decompress(atob("kmSpIC/AWMyoQIFsmECJFJhMmA4QXByVICIwODAQ4RRFIQGD5JVLkIGDzJqMyAGDph8MiRKGyApEAoZKFyYIDQwMkSQNkQZABBhIIOOJRuEL5gRIAUKACVQMhmUSNYNDQYJTBBwYFByGTkOE5FJWYNMknCAQKYCiaSCpmGochDoSYBhMwTAZrChILBhmEzKPBF4ImBTAREBDoMmEwJVDoYjBycJFgWEJQRuLJQ1kmQCCjJlCBYbjCagaDBwyDBmBuBF4TjJAUQKINBChCDQxZBcZIIQF4NIgEAgKSDiQmEVQKMBoARBAAMCSQLLBVoxqKL4gaCChVCNwoRKOIo4CJIgABBoSMHpIRFgDdJOIJUBCAUJRgJuEAQb+DIIgRIAX4C/ASOQA")) @@ -172,26 +173,26 @@ Graphics.prototype.setFontAntonioLarge = function(scale) { /* * Draw watch face */ -var drawTimeout; -function queueDraw() { +let drawTimeout; +let queueDraw = function() { // Faster updates during alarm to ensure that it is // shown correctly... - var timeout = isAlarmEnabled() ? 10000 : 60000; + let timeout = isAlarmEnabled() ? 10000 : 60000; if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { drawTimeout = undefined; draw(); }, timeout - (Date.now() % timeout)); -} +}; /** * This function plots a data row in LCARS style. * Note: It can be called async and therefore, the text alignment and * font is set each time the function is called. */ -function printRow(text, value, y, c){ +let printRow = function(text, value, y, c){ g.setFontAntonioMedium(); g.setFontAlign(-1,-1,0); @@ -210,23 +211,23 @@ function printRow(text, value, y, c){ g.setColor(c); g.setFontAlign(1,-1,0); g.drawString(value, 126, y); -} +}; -function drawData(key, y, c){ +let drawData = function(key, y, c){ try{ _drawData(key, y, c); } catch(ex){ // Show last error - next try hopefully works. } -} +}; -function _drawData(key, y, c){ +let _drawData = function(key, y, c){ key = key.toUpperCase() - var text = key; - var value = "ERR"; - var should_print= true; + let text = key; + let value = "ERR"; + let should_print= true; if(key == "STEPS"){ text = "STEP"; @@ -246,17 +247,17 @@ function _drawData(key, y, c){ value = Math.round(Bangle.getHealthStatus().bpm||Bangle.getHealthStatus("last").bpm); } else if (key == "TEMP"){ - var weather = getWeather(); + let weather = getWeather(); value = weather.temp; } else if (key == "HUMIDITY"){ text = "HUM"; - var weather = getWeather(); + let weather = getWeather(); value = weather.hum; } else if (key == "WIND"){ text = "WND"; - var weather = getWeather(); + let weather = getWeather(); value = weather.wind; } else if (key == "ALTITUDE"){ @@ -280,18 +281,18 @@ function _drawData(key, y, c){ if(should_print){ printRow(text, value, y, c); } -} +}; -function drawHorizontalBgLine(color, x1, x2, y, h){ +let drawHorizontalBgLine = function(color, x1, x2, y, h){ g.setColor(color); - for(var i=0; i{ data[h.day]+=h.bpm; if (h.bpm) cnt[h.day]++; @@ -465,9 +466,9 @@ function drawPosition1(){ }); // Plot step graph - var data = new Uint16Array(32); + data = new Uint16Array(32); health.readDailySummaries(new Date(), h=>data[h.day]+=h.steps/1000); - var gridY = parseInt(Math.max.apply(Math, data)/2); + let gridY = parseInt(Math.max.apply(Math, data)/2); gridY = gridY <= 0 ? 1 : gridY; require("graph").drawBar(g, data, { axes : true, @@ -493,8 +494,8 @@ function drawPosition1(){ // Plot day } else { - var data = new Uint16Array(24); - var cnt = new Uint8Array(24); + let data = new Uint16Array(24); + let cnt = new Uint8Array(24); health.readDay(new Date(), h=>{ data[h.hr]+=h.bpm; if (h.bpm) cnt[h.hr]++; @@ -511,9 +512,9 @@ function drawPosition1(){ }); // Plot step graph - var data = new Uint16Array(24); + data = new Uint16Array(24); health.readDay(new Date(), h=>data[h.hr]+=h.steps); - var gridY = parseInt(Math.max.apply(Math, data)/1000)*1000; + let gridY = parseInt(Math.max.apply(Math, data)/1000)*1000; gridY = gridY <= 0 ? 1000 : gridY; require("graph").drawBar(g, data, { axes : true, @@ -537,9 +538,9 @@ function drawPosition1(){ g.drawString("DAY", 154, 115); } } -} +}; -function draw(){ +let draw = function(){ // Queue draw first to ensure that its called in one minute again. queueDraw(); @@ -560,14 +561,14 @@ function draw(){ } else { Bangle.drawWidgets(); } -} +}; /* * Step counter via widget */ -function getSteps() { - var steps = 0; +let getSteps = function() { + let steps = 0; try{ if (WIDGETS.wpedom !== undefined) { steps = WIDGETS.wpedom.getSteps(); @@ -581,15 +582,15 @@ function getSteps() { } return steps; -} +}; -function getWeather(){ - var weatherJson; +let getWeather = function(){ + let weatherJson; try { weatherJson = storage.readJSON('weather.json'); - var weather = weatherJson.weather; + let weather = weatherJson.weather; // Temperature weather.temp = locale.temp(weather.temp-273.15); @@ -599,7 +600,7 @@ function getWeather(){ // Wind const wind = locale.speed(weather.wind).match(/^(\D*\d*)(.*)$/); - var speedFactor = settings.speed == "kph" ? 1.0 : 1.0 / 1.60934; + let speedFactor = settings.speed == "kph" ? 1.0 : 1.0 / 1.60934; weather.wind = Math.round(wind[1] * speedFactor); return weather @@ -616,15 +617,15 @@ function getWeather(){ wdir: " ? ", wrose: " ? " }; -} +}; /* * Handle alarm */ -function isAlarmEnabled(){ +let isAlarmEnabled = function(){ try{ - var alarm = require('sched'); - var alarmObj = alarm.getAlarm(TIMER_IDX); + let alarm = require('sched'); + let alarmObj = alarm.getAlarm(TIMER_IDX); if(alarmObj===undefined || !alarmObj.on){ return false; } @@ -633,35 +634,35 @@ function isAlarmEnabled(){ } catch(ex){ } return false; -} +}; -function getAlarmMinutes(){ +let getAlarmMinutes = function(){ if(!isAlarmEnabled()){ return -1; } - var alarm = require('sched'); - var alarmObj = alarm.getAlarm(TIMER_IDX); + let alarm = require('sched'); + let alarmObj = alarm.getAlarm(TIMER_IDX); return Math.round(alarm.getTimeToAlarm(alarmObj)/(60*1000)); -} +}; -function increaseAlarm(){ +let increaseAlarm = function(){ try{ - var minutes = isAlarmEnabled() ? getAlarmMinutes() : 0; - var alarm = require('sched') + let minutes = isAlarmEnabled() ? getAlarmMinutes() : 0; + let alarm = require('sched') alarm.setAlarm(TIMER_IDX, { timer : (minutes+5)*60*1000, }); alarm.reload(); } catch(ex){ } -} +}; -function decreaseAlarm(){ +let decreaseAlarm = function(){ try{ - var minutes = getAlarmMinutes(); + let minutes = getAlarmMinutes(); minutes -= 5; - var alarm = require('sched') + let alarm = require('sched') alarm.setAlarm(TIMER_IDX, undefined); if(minutes > 0){ @@ -672,13 +673,13 @@ function decreaseAlarm(){ alarm.reload(); } catch(ex){ } -} +}; /* * Listeners */ -Bangle.on('lcdPower',on=>{ +let onLcdPower = on=>{ if (on) { // Whenever we connect to Gadgetbridge, reading data from // health failed. Therefore, we update only partially... @@ -688,31 +689,34 @@ Bangle.on('lcdPower',on=>{ if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; } -}); +}; +Bangle.on('lcdPower', onLcdPower); -Bangle.on('lock', function(isLocked) { +let onLock = function(isLocked) { drawInfo(); -}); +}; +Bangle.on('lock', onLock); -Bangle.on('charging',function(charging) { + +let onCharge = function(charging) { drawState(); -}); +}; +Bangle.on('charging', onCharge); -function feedback(){ +let feedback = function(){ Bangle.buzz(40, 0.3); -} +}; -// Touch gestures to control clock. We don't use swipe to be compatible with the bangle ecosystem -Bangle.on('touch', function(btn, e){ - var left = parseInt(g.getWidth() * 0.2); - var right = g.getWidth() - left; - var upper = parseInt(g.getHeight() * 0.2); - var lower = g.getHeight() - upper; +let onTouch = function(btn, e){ + let left = parseInt(g.getWidth() * 0.2); + let right = g.getWidth() - left; + let upper = parseInt(g.getHeight() * 0.2); + let lower = g.getHeight() - upper; - var is_left = e.x < left; - var is_right = e.x > right; - var is_upper = e.y < upper; - var is_lower = e.y > lower; + let is_left = e.x < left; + let is_right = e.x > right; + let is_upper = e.y < upper; + let is_lower = e.y > lower; if(!settings.disableData){ if(is_left && lcarsViewPos == 1){ @@ -747,16 +751,30 @@ Bangle.on('touch', function(btn, e){ draw(); return; } -}); - +}; +// Touch gestures to control clock. We don't use swipe to be compatible with the bangle ecosystem +Bangle.on('touch', onTouch); +let themeBefore = g.theme; /* * Lets start widgets, listen for btn etc. */ // Show launcher when middle button pressed -Bangle.setUI("clock"); +Bangle.setUI({mode:"clock",remove:function() { + if (drawTimeout) clearTimeout(drawTimeout); + delete Graphics.prototype.setFontAntonioMedium; + delete Graphics.prototype.setFontAntonioLarge; + Bangle.removeListener("lcdPower",onLcdPower); + Bangle.removeListener("lock",onLock); + Bangle.removeListener("charging",onCharge); + Bangle.removeListener("touch",onTouch); + require('sched').setAlarm(TIMER_IDX, undefined); + g.setTheme(themeBefore); + widget_utils.cleanup(); +}}); Bangle.loadWidgets(); // Clear the screen once, at startup and draw clock g.setTheme({bg:"#000",fg:"#fff",dark:true}).clear(); draw(); +} \ No newline at end of file diff --git a/apps/lcars/metadata.json b/apps/lcars/metadata.json index 4a7707b8a..5fbb8dcf2 100644 --- a/apps/lcars/metadata.json +++ b/apps/lcars/metadata.json @@ -3,7 +3,7 @@ "name": "LCARS Clock", "shortName":"LCARS", "icon": "lcars.png", - "version":"0.28", + "version":"0.29", "readme": "README.md", "supports": ["BANGLEJS2"], "description": "Library Computer Access Retrieval System (LCARS) clock.", From 4a727df8912e54532452b6cebd8f2a62515fa764 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Tue, 4 Jul 2023 21:46:16 +0200 Subject: [PATCH 1651/1725] openstmap: Remember latitude, longitude & scale see #2844 --- apps/openstmap/ChangeLog | 1 + apps/openstmap/app.js | 50 ++++++++++++++++++++++++++++-------- apps/openstmap/metadata.json | 2 +- apps/openstmap/openstmap.js | 7 ++++- 4 files changed, 47 insertions(+), 13 deletions(-) diff --git a/apps/openstmap/ChangeLog b/apps/openstmap/ChangeLog index a991d92fd..c1b8e5f21 100644 --- a/apps/openstmap/ChangeLog +++ b/apps/openstmap/ChangeLog @@ -20,3 +20,4 @@ 0.17: With new Recorder app allow track to be drawn in the background Switch tile layer URL for faster/more reliable map tiles 0.18: Prefer map with highest resolution +0.19: Remember latitude, longitude & scale diff --git a/apps/openstmap/app.js b/apps/openstmap/app.js index c69ccece3..dd0120857 100644 --- a/apps/openstmap/app.js +++ b/apps/openstmap/app.js @@ -6,11 +6,27 @@ var mapVisible = false; var hasScrolled = false; var settings = require("Storage").readJSON("openstmap.json",1)||{}; var plotTrack; +let checkMapPos = false; // Do we need to check the if the coordinates we have are valid + +if (settings.lat !== undefined && settings.lon !== undefined && settings.scale !== undefined) { + // restore last view + m.lat = settings.lat; + m.lon = settings.lon; + m.scale = settings.scale; + checkMapPos = true; +} // Redraw the whole page function redraw() { g.setClipRect(R.x,R.y,R.x2,R.y2); - m.draw(); + const count = m.draw(); + if (checkMapPos && count === 0) { + // no map at these coordinates, lets try again with first map + m.lat = m.map.lat; + m.lon = m.map.lon; + m.scale = m.map.scale; + m.draw(); + } drawPOI(); drawMarker(); // if track drawing is enabled... @@ -45,7 +61,7 @@ function drawPOI() { g.fillRect(p.x-sz, p.y-sz, p.x+sz, p.y+sz); g.setColor(0,0,0); g.drawString(wp.name, p.x, p.y); - print(wp.name); + //print(wp.name); }) } @@ -59,24 +75,33 @@ function drawMarker() { Bangle.on('GPS',function(f) { fix=f; - if (HASWIDGETS) WIDGETS["sats"].draw(WIDGETS["sats"]); + if (HASWIDGETS && WIDGETS["sats"]) WIDGETS["sats"].draw(WIDGETS["sats"]); if (mapVisible) drawMarker(); }); Bangle.setGPSPower(1, "app"); if (HASWIDGETS) { Bangle.loadWidgets(); - WIDGETS["sats"] = { area:"tl", width:48, draw:w=>{ - var txt = (0|fix.satellites)+" Sats"; - if (!fix.fix) txt += "\nNO FIX"; - g.reset().setFont("6x8").setFontAlign(0,0) - .drawString(txt,w.x+24,w.y+12); - } - }; + if (WIDGETS["GPS"]) { // one GPS Widget is enough + WIDGETS["sats"] = { area:"tl", width:48, draw:w=>{ + var txt = (0|fix.satellites)+" Sats"; + if (!fix.fix) txt += "\nNO FIX"; + g.reset().setFont("6x8").setFontAlign(0,0) + .drawString(txt,w.x+24,w.y+12); + } + }; + } Bangle.drawWidgets(); } R = Bangle.appRect; +function writeSettings() { + settings.lat = m.lat; + settings.lon = m.lon; + settings.scale = m.scale; + require("Storage").writeJSON("openstmap.json",settings); +} + function showMap() { mapVisible = true; g.reset().clearRect(R); @@ -108,7 +133,7 @@ function showMap() { }, /*LANG*/"Draw Track": { value : !!settings.drawTrack, - onchange : v => { settings.drawTrack=v; require("Storage").writeJSON("openstmap.json",settings); } + onchange : v => { settings.drawTrack=v; writeSettings(); } }, /*LANG*/"Center Map": () =>{ m.lat = m.map.lat; @@ -126,3 +151,6 @@ function showMap() { } showMap(); + +// Write settings on exit via button +setWatch(() => writeSettings(), BTN, { repeat: true, edge: "rising" }); diff --git a/apps/openstmap/metadata.json b/apps/openstmap/metadata.json index f4e0f2729..14c789798 100644 --- a/apps/openstmap/metadata.json +++ b/apps/openstmap/metadata.json @@ -2,7 +2,7 @@ "id": "openstmap", "name": "OpenStreetMap", "shortName": "OpenStMap", - "version": "0.18", + "version": "0.19", "description": "Loads map tiles from OpenStreetMap onto your Bangle.js and displays a map of where you are. Once installed this also adds map functionality to `GPS Recorder` and `Recorder` apps", "readme": "README.md", "icon": "app.png", diff --git a/apps/openstmap/openstmap.js b/apps/openstmap/openstmap.js index 37f82a127..0a8f35f66 100644 --- a/apps/openstmap/openstmap.js +++ b/apps/openstmap/openstmap.js @@ -37,10 +37,12 @@ m.scale = m.map.scale; // current scale (based on first map) m.lat = m.map.lat; // position of middle of screen m.lon = m.map.lon; // position of middle of screen +// return number of tiles drawn exports.draw = function() { var cx = g.getWidth()/2; var cy = g.getHeight()/2; var p = Bangle.project({lat:m.lat,lon:m.lon}); + let count = 0; m.maps.forEach((map,idx) => { var d = map.scale/m.scale; var ix = (p.x-map.center.x)/m.scale + (map.imgx*d/2) - cx; @@ -68,12 +70,15 @@ exports.draw = function() { } var mx = g.getWidth(); var my = g.getHeight(); - for (var x=ox,ttx=tx; x Date: Tue, 4 Jul 2023 21:58:04 +0200 Subject: [PATCH 1652/1725] openstmap: Fix gps widget check --- apps/openstmap/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/openstmap/app.js b/apps/openstmap/app.js index dd0120857..88883b6d6 100644 --- a/apps/openstmap/app.js +++ b/apps/openstmap/app.js @@ -82,7 +82,7 @@ Bangle.setGPSPower(1, "app"); if (HASWIDGETS) { Bangle.loadWidgets(); - if (WIDGETS["GPS"]) { // one GPS Widget is enough + if (!WIDGETS["gps"]) { // one GPS Widget is enough WIDGETS["sats"] = { area:"tl", width:48, draw:w=>{ var txt = (0|fix.satellites)+" Sats"; if (!fix.fix) txt += "\nNO FIX"; From b8ddb0cc58f1628e6c1a5e5c7ee3d00e0796d10f Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Thu, 6 Jul 2023 10:25:48 +0200 Subject: [PATCH 1653/1725] chess bugfixes --- apps/chess/ChangeLog | 2 ++ apps/chess/app.js | 65 ++++++++++++++++++++++++---------------- apps/chess/engine.js | 1 + apps/chess/metadata.json | 2 +- 4 files changed, 44 insertions(+), 26 deletions(-) create mode 100644 apps/chess/ChangeLog diff --git a/apps/chess/ChangeLog b/apps/chess/ChangeLog new file mode 100644 index 000000000..fb08248ff --- /dev/null +++ b/apps/chess/ChangeLog @@ -0,0 +1,2 @@ +0.01: New App! +0.02: Bugfixes diff --git a/apps/chess/app.js b/apps/chess/app.js index bb3ab147d..6d91c7252 100644 --- a/apps/chess/app.js +++ b/apps/chess/app.js @@ -20,11 +20,12 @@ const settings = Object.assign({ computer_level: 0, // default to "stupid" which is the fastest }, require("Storage").readJSON(SETTINGS_FILE,1) || {}); -var ovr = Graphics.createArrayBuffer(Bangle.appRect.w,Bangle.appRect.h,2,{msb:true}); +const ovr = Graphics.createArrayBuffer(Bangle.appRect.w,Bangle.appRect.h,2,{msb:true}); const curfield = [4*FIELD_WIDTH, 6*FIELD_HEIGHT]; // e2 const startfield = Array(2); let piece_sel = 0; let showmenu = false; +let finished = false; const writeSettings = () => { settings.state = engine.p4_state2fen(state); @@ -32,7 +33,7 @@ const writeSettings = () => { }; const generateBgImage = () => { - var buf = Graphics.createArrayBuffer(Bangle.appRect.w,Bangle.appRect.h,1,{msb:true}); + let buf = Graphics.createArrayBuffer(Bangle.appRect.w,Bangle.appRect.h,1,{msb:true}); for(let idxrow=0; idxrow<8; idxrow++) { for(let idxcol=0; idxcol<8; idxcol++) { const bgCol = idxrow % 2 != idxcol % 2 ? 0 : 1; @@ -112,7 +113,7 @@ const roundY = (y) => { const drawSelectedField = () => { ovr.clear(); - if (!showmenu) { + if (!showmenu && !finished) { if (startfield[0] !== undefined && startfield[1] !== undefined) { // remove piece from startfield const x = startfield[0]; @@ -143,28 +144,34 @@ const isInside = (rect, e) => { && e.y>=rect.y && e.y<=rect.y+rect.h; }; -const showAlert = (msg) => { +const showAlert = (msg, cb) => { showmenu = true; drawSelectedField(); E.showAlert(msg).then(function() { showmenu = false; drawBoard(); drawSelectedField(); + if (cb) { + cb(); + } }); }; -const move = (from,to) => { +const move = (from,to,cbok) => { const res = state.move(from, to); //console.log(res); if (!res.ok) { showAlert("Illegal move"); } else { if (res.flags & engine.P4_MOVE_FLAG_MATE) { - showAlert("Checkmate or stalemate"); + finished = true; + showAlert("Checkmate or stalemate", cbok); } else if (res.flags & engine.P4_MOVE_FLAG_CHECK) { - showAlert("A king is in check"); + showAlert("A king is in check", cbok); } else if (res.flags & engine.P4_MOVE_FLAG_DRAW) { - showAlert("A draw is available"); + showAlert("A draw is available", cbok); + } else if (cbok) { + cbok(); } } return res; @@ -217,26 +224,31 @@ Bangle.on('touch', (button, xy) => { const posFrom = idx2Pos(startfield[0]/FIELD_WIDTH, startfield[1]/FIELD_HEIGHT); const posTo = idx2Pos(colTo/FIELD_WIDTH, rowTo/FIELD_HEIGHT); setTimeout(() => { - if (move(posFrom, posTo).ok) { + const cb = () => { // human move ok, update drawBoard(); drawSelectedField(); - // do computer move - Bangle.setLCDTimeout(0.1); // this can take some time, turn off to save power - showMessage(/*LANG*/"Calculating.."); - setTimeout(() => { - const compMove = state.findmove(settings.computer_level+1); - const result = move(compMove[0], compMove[1]); - writeSettings(); - Bangle.setLCDPower(true); - Bangle.setLocked(false); - Bangle.setLCDTimeout(DEFAULT_TIMEOUT/1000); // restore - if (!showmenu) { - showAlert(result.string); - } - }, 200); // execute after display update - } - }, 100); // execute after display update + if (!finished) { + // do computer move + Bangle.setLCDTimeout(0.1); // this can take some time, turn off to save power + showMessage(/*LANG*/"Calculating.."); + setTimeout(() => { + const compMove = state.findmove(settings.computer_level+1); + const result = move(compMove[0], compMove[1]); + if (result.ok) { + writeSettings(); + } + Bangle.setLCDPower(true); + Bangle.setLocked(false); + Bangle.setLCDTimeout(DEFAULT_TIMEOUT/1000); // restore + if (!showmenu) { + showAlert(result.string); + } + }, 200); // execute after display update + } + }; + move(posFrom, posTo,cb); + }, 200); // execute after display update } // piece_sel === 0 startfield[0] = startfield[1] = undefined; piece_sel = 0; @@ -248,6 +260,8 @@ Bangle.on('touch', (button, xy) => { // show menu on button setWatch(() => { showmenu = true; + piece_sel = 0; + startfield[0] = startfield[1] = undefined; drawSelectedField(); const closeMenu = () => { @@ -267,6 +281,7 @@ setWatch(() => { }, /*LANG*/"Undo Move" : () => { state.jump_to_moveno(-2); + writeSettings(); closeMenu(); }, /*LANG*/'Level': { diff --git a/apps/chess/engine.js b/apps/chess/engine.js index 88edf78f5..f67ecc456 100644 --- a/apps/chess/engine.js +++ b/apps/chess/engine.js @@ -1594,6 +1594,7 @@ function p4_random_int(state, top){ exports.p4_new_game = p4_new_game; exports.p4_fen2state = p4_fen2state; exports.p4_state2fen = p4_state2fen; +exports.p4_random_int = p4_random_int; exports.P4_INITIAL_BOARD = P4_INITIAL_BOARD; exports.P4_PAWN = P4_PAWN; exports.P4_ROOK = P4_ROOK; diff --git a/apps/chess/metadata.json b/apps/chess/metadata.json index a66391deb..3c2ea69ac 100644 --- a/apps/chess/metadata.json +++ b/apps/chess/metadata.json @@ -2,7 +2,7 @@ "id": "chess", "name": "Chess", "shortName": "Chess", - "version": "0.01", + "version": "0.02", "description": "Chess game based on the [p4wn engine](https://p4wn.sourceforge.net/). Drag on the touchscreen to move the green cursor onto a piece, select it with a single touch and drag the now red cursor around. Release the piece with another touch to finish the move. The button opens a menu.", "icon": "app.png", "tags": "game", From bcde01f7a586d94f567cc2d28c033b701f88d2ca Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Thu, 6 Jul 2023 21:17:09 +0200 Subject: [PATCH 1654/1725] chess: Disable button when alert is shown --- apps/chess/app.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/chess/app.js b/apps/chess/app.js index 6d91c7252..3d584b261 100644 --- a/apps/chess/app.js +++ b/apps/chess/app.js @@ -259,6 +259,9 @@ Bangle.on('touch', (button, xy) => { // show menu on button setWatch(() => { + if (showmenu) { + return; + } showmenu = true; piece_sel = 0; startfield[0] = startfield[1] = undefined; From 3094dca06b401b59c5253b0eed02c65dc2cc24bd Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 7 Jul 2023 14:31:07 +0100 Subject: [PATCH 1655/1725] pebblepp 0.03: Use smaller font if clock_info test doesn't fit in area --- apps/pebblepp/ChangeLog | 3 ++- apps/pebblepp/app.js | 20 +++++++++++++++++++- apps/pebblepp/metadata.json | 2 +- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/apps/pebblepp/ChangeLog b/apps/pebblepp/ChangeLog index de19d9ba4..f3886a42e 100644 --- a/apps/pebblepp/ChangeLog +++ b/apps/pebblepp/ChangeLog @@ -1,3 +1,4 @@ 0.01: First release 0.02: clock_info now uses app name to maintain settings specifically for this clock face - ensure clockinfo text is usppercase (font doesn't render lowercase) \ No newline at end of file + ensure clockinfo text is usppercase (font doesn't render lowercase) +0.03: Use smaller font if clock_info test doesn't fit in area \ No newline at end of file diff --git a/apps/pebblepp/app.js b/apps/pebblepp/app.js index 555183d3d..5121f450e 100644 --- a/apps/pebblepp/app.js +++ b/apps/pebblepp/app.js @@ -8,6 +8,16 @@ Graphics.prototype.setFontLECO1976Regular22 = function(scale) { return g.setFontCustom(atob("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/nA/+cD/5wP/nAAAAAAAAPwAA/gAD+AAPwAAAAAD+AAP4AA/gAAAAAAAAAAAAAcOAP//A//8D//wP//AHDgAcOAP//A//8D//wP//AHDgAAAAAAAAH/jgf+OB/44H/jj8OP/w4//Dj/8OPxw/4HD/gcP+Bw/4AAAAAAAP+AA/8AD/wQOHHA4c8D//wP/8A//gAD4AAfAAH/8A//wP//A84cDjhwIP/AA/8AB/wAAAAAAAD//wP//A//8D//wOHHA4ccDhxwOHHA4f8Dh/wOH/A4f8ABwAAAAAAAAD8AAP4AA/gAD8AAAAAAAAAAAEAAD+AB//A///v/D//gB/wABwAAAAAADgAA/wAf/4P8///wf/4AP8AAOAAAAAAAAAyAAHcAAPwAD/gAP/AA/8AA/AAH8AAMwAAAAAAAAAAAAADgAAOAAA4AAf8AD/wAP/AA/8AAOAAA4AADgAAAAAAAAAAD8AAfwAB/AAD8AAAAAAAADgAAOAAA4AADgAAOAAA4AADgAAAAAAAAAADgAAOAAA4AADgAAAAAAAAABwAB/AA/8A//gP/gA/wADwAAIAAAAAAD//wP//A//8D//wOAHA4AcDgBwOAHA//8D//wP//A//8AAAAAAAA4AcDgBwOAHA//8D//wP//A//8AABwAAHAAAcAAAAAAAA+f8D5/wPn/A+f8DhxwOHHA4ccDhxwP/HA/8cD/xwP/HAAAAAAAAOAHA4AcDhxwOHHA4ccDhxwOHHA4ccD//wP//A//8D//wAAAAAAAD/wAP/AA/8AD/wAAHAAAcAABwAAHAA//8D//wP//A//8AAAAAAAA/98D/3wP/fA/98DhxwOHHA4ccDhxwOH/A4f8Dh/wOH/AAAAAAAAP//A//8D//wP//A4ccDhxwOHHA4ccDh/wOH/A4f8Dh/wAAAAAAAD4AAPgAA+AADgAAOAAA4AADgAAP//A//8D//wP//AAAAAAAAP//A//8D//wP//A4ccDhxwOHHA4ccD//wP//A//8D//wAAAAAAAD/xwP/HA/8cD/xwOHHA4ccDhxwOHHA//8D//wP//A//8AAAAAAAAOA4A4DgDgOAOA4AAAAAAAAOA/A4H8DgfwOA/AAAAAAAAB4AAPwAA/AAD8AAf4ABzgAPPAA8cAHh4AAAAAAAAAAAAHHAAccABxwAHHAAccABxwAHHAAccABxwAHHAAAAAAAAAOHAA4cADzwAPPAAf4AB/gAD8AAPwAAeAAB4AAAAAAAAA+AAD4AAPgAA+ecDh9wOH3A4fcDhwAP/AA/8AD/wAP/AAAAAAAAAP//4///j//+P//44ADjn/OOf845/zjnHOP8c4//zj//OP/84AAAAAAAP//A//8D//wP//A4cADhwAOHAA4cAD//wP//A//8D//wAAAAAAAD//wP//A//8D//wOHHA4ccDhxwOHHA//8D//wP9/A/j8AAAAAAAA//8D//wP//A//8DgBwOAHA4AcDgBwOAHA4AcDgBwOAHAAAAAAAAP//A//8D//wP//A4AcDgBwOAHA8A8D//wH/+AP/wAf+AAAAAAAAD//wP//A//8D//wOHHA4ccDhxwOHHA4ccDhxwOAHA4AcAAAAAAAA//8D//wP//A//8DhwAOHAA4cADhwAOHAA4cADgAAOAAAAAAD//wP//A//8D//wOAHA4ccDhxwOHHA4f8Dh/wOH/A4f8AAAAAAAA//8D//wP//A//8ABwAAHAAAcAABwAP//A//8D//wP//AAAAAAAAP//A//8D//wP//AAAAAAAAOAHA4AcDgBwOAHA4AcDgBwOAHA//8D//wP//A//8AAAAAAAA//8D//wP//A//8AHwAA/AAP8AB/wAPn/A8f8DB/wIH/AAAAAAAAP//A//8D//wP//AAAcAABwAAHAAAcAABwAAHAAAAAAAAP//A//8D//wP//Af8AAP+AAH/AAD8AAHwAD/AB/wAf8AP+AA//8D//wP//AAAAAAAAP//A//8D//wP//AfwAAfwAAfwAAfwAAfwP//A//8D//wAAAAAAAAAAAP//A//8D//wP//A4AcDgBwOAHA4AcD//wP//A//8D//wAAAAAAAD//wP//A//8D//wOHAA4cADhwAOHAA/8AD/wAP/AA/8AAAAAP//A//8D//wP//A4AcDgBwOAHA4AcD//+P//4///j//+AAA4AADgAAAP//A//8D//wP//A4eADh+AOH8A4f4D/3wP/HA/8MD/wQAAAAAAAD/xwP/HA/8cD/xwOHHA4ccDhxwOHHA4f8Dh/wOH/A4f8AAAAAAAA4AADgAAOAAA//8D//wP//A//8DgAAOAAA4AADgAAAAAA//8D//wP//A//8AABwAAHAAAcAABwP//A//8D//wP//AAAADAAAPgAA/wAD/4AB/8AA/8AAfwAB/AA/8Af+AP/AA/wAD4AAMAAA4AAD+AAP/gA//8AH/wAB/AAf8Af/wP/4A/4AD/gAP/4AH/8AB/wAB/AB/8D//wP/gA/gADgAAIABA4AcDwDwPw/Afn4Af+AA/wAD/AA//AH5+A/D8DwDwOAHAgAEAAAAP/AA/8AD/wAP/AAAf8AB/wAH/AAf8D/wAP/AA/8AD/wAAAAAAAADh/wOH/A4f8Dh/wOHHA4ccDhxwOHHA/8cD/xwP/HA/8cAAAAAAAAf//9///3///f//9wAA3AADcAAMAAAOAAA/gAD/wAH/8AB/8AA/wAAPAAAEAAAAHAADcAANwAB3///f//9///wAA"), 32, atob("BwYLDg4UDwYJCQwMBgkGCQ4MDg4ODg4NDg4GBgwMDA4PDg4ODg4NDg4GDQ4MEg8ODQ8ODgwODhQODg4ICQg="), 22+(scale<<8)+(1<<16)); }; +Graphics.prototype.setFontLECO1976Regular14 = function() { + // Actual height 14 (13 - 0) + return this.setFontCustom( + atob('AAAAAAAAAAAD+w/sAAAAA8APAAAA8APAAAAMwP/D/wMwDMD/w/8DMAAAAAD8w/M8z/M/zPM/DPwAAAAPwD8QzcP/D/AHgD/D/wzMI/APwAAAAD/w/8MzDMwzMM/DPwDAAADwA8AAAAAAD8H/74f4BwAAAA4B/z8/8D8AAAAAeAPwD8AeAHgAAAAAAAAYAGAH4B+AGABgAAAAAAHgB4AAAAAYAGABgAYAAAAAABgAYAAAAQA8D/D+A8AAAAAA/8P/DAwwMMDD/w/8AAAAAwMMDD/w/8ADAAwAAO/DvwzMMzDMw/MPzAAAAAMDDMwzMMzDMw/8P/AAAAAPwD8ADAAwAMA/8P/AAAAAP3D9wzMMzDMwz8M/AAAAAP/D/wzMMzDMwz8M/AAA4AOADAAwAMAD/w/8AAAAA/8P/DMwzMMzD/w/8AAAAA/MPzDMwzMMzD/w/8AAAAAYYGGAAAAAGHhh4AABwAcAPgDYB3AYwAAAAAZgGYBmAZgGYBmAAAAABjAdwDYA+AHABwAAA4AOADOwzsMwD8A/AAAAAA//P/zAM37N+zZs/7P+wAAAAP/D/wzAMwDMA/8P/AAAAAP/D/wzMMzDMw/8P/AAAAAP/D/wwMMDDAwwMMDAAAAAP/D/wwMMDDhw/8H+AAAAAP/D/wzMMzDMwzMMDAAAAAP/D/wzAMwDMAzAMAAAA/8P/DAwzMMzDPwz8AAAAA/8P/AMADAAwD/w/8AAAAA/8P/AAAwMMDDAwwMMDD/w/8AAAAA/8P/AcAPAPwDvwj8AAAAA/8P/AAwAMADAAwAAP/D/w/AB+AHwA8B+B+A/8P/AAA/8P/D/wfAB8AHw/8P/AAAAAP/D/wwMMDDAw/8P/AAAAAP/D/wzAMwDMA/APwAAA/8P/DAwwMMDD/8//AAwAA/8P/DOAzwM/D9w/EAAAAA/MPzDMwzMMzDPwz8AADAAwAMAD/w/8MADAAwAAAD/w/8ADAAwAMP/D/wAAPAD8AP4AfAHwP4PwDgAAAPgD/gH8AfB/w/AP4A/wA8D/D/A8AAADAw4cP/A/APwH+DzwwMAAAAA/APwAPwD8A/D8A/AAAAAAz8M/DMwzMMzD8w/MAAAAA/////ADwA4ADwA/wB/ADwAAMAPAD////8A'), + 32, + atob("BAQHCQkNCQQGBggIBAYEBgkHCQkJCQkICQkEBAcIBwkKCQkJCQkICQkECAkHDAkJCAkJCQgJCQ0JCQkFBgU="), + 14|65536 + ); +} + { const SETTINGS_FILE = "pebblepp.json"; let settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#0f0', 'color': 'Green', 'theme':'System', 'showlock':false}; @@ -86,7 +96,14 @@ let clockInfoDraw = (itm, info, options) => { } } g.setFontLECO1976Regular22().setFontAlign(0, 0); - g.drawString(info.text.toString().toUpperCase(), midx,options.y+options.h-12); // draw the text + var txt = info.text.toString().toUpperCase(); + if (g.stringWidth(txt) > options.w-4) // if too big, smaller font + g.setFontLECO1976Regular14(); + if (g.stringWidth(txt) > options.w-4) {// if still too big, split to 2 lines + var l = g.wrapString(txt, options.w-2); + txt = l.slice(0,2).join("\n") + (l.length>2)?"...":""; + } + g.drawString(txt, midx,options.y+options.h-12); // draw the text }; let clockInfoMenuA = require("clock_info").addInteractive(clockInfoItems, { @@ -111,6 +128,7 @@ Bangle.setUI({ clockInfoMenuB.remove(); delete Graphics.prototype.setFontLECO1976Regular22; delete Graphics.prototype.setFontLECO1976Regular42; + delete Graphics.prototype.setFontLECO1976Regular14; require("widget_utils").show(); // re-show widgets }}); diff --git a/apps/pebblepp/metadata.json b/apps/pebblepp/metadata.json index 88c1d8fd5..881b558db 100644 --- a/apps/pebblepp/metadata.json +++ b/apps/pebblepp/metadata.json @@ -2,7 +2,7 @@ "id": "pebblepp", "name": "Pebble++ Clock", "shortName": "Pebble++", - "version": "0.02", + "version": "0.03", "description": "A pebble style clock (based on the 'Pebble Clock' app) but with two configurable ClockInfo items at the top", "icon": "app.png", "screenshots": [{"url":"screenshot.png"}], From 456d2c729390cea44ce5e5d7df8847db96e23195 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 7 Jul 2023 14:31:30 +0100 Subject: [PATCH 1656/1725] misc tweaks to built-in tools --- bin/language_scan.js | 17 +++++++++++++++++ bin/lib/apploader.js | 40 ++++++++++++++++++++++++++-------------- 2 files changed, 43 insertions(+), 14 deletions(-) diff --git a/bin/language_scan.js b/bin/language_scan.js index 99d91b519..77c91f152 100755 --- a/bin/language_scan.js +++ b/bin/language_scan.js @@ -3,6 +3,23 @@ outputs a list of strings that have been found. See https://github.com/espruino/BangleApps/issues/1311 + +Needs old 'translate': + +npm install translate@1.4.1 + +For actual translation you need to sign up for a free Deepl API at https://www.deepl.com/ + +``` +# show status +bin/language_scan.js -r + +# add missing keys for all languages (in english) +bin/language_scan.js -r + +# for translation +bin/language_scan.js --deepl YOUR_API_KEY --turl https://api-free.deepl.com + */ var childProcess = require('child_process'); diff --git a/bin/lib/apploader.js b/bin/lib/apploader.js index c1aaa5389..737a2d904 100644 --- a/bin/lib/apploader.js +++ b/bin/lib/apploader.js @@ -30,20 +30,32 @@ exports.init = function(options) { DEVICEID = options.DEVICEID; device.id = options.DEVICEID; } - // Load app metadata - var dirs = require("fs").readdirSync(APPSDIR, {withFileTypes: true}); - dirs.forEach(dir => { - var appsFile; - if (dir.name.startsWith("_example") || !dir.isDirectory()) - return; - try { - appsFile = require("fs").readFileSync(APPSDIR+dir.name+"/metadata.json").toString(); - } catch (e) { - ERROR(dir.name+"/metadata.json does not exist"); - return; - } - apps.push(JSON.parse(appsFile)); - }); + // Try loading from apps.json + apps.length=0; + try { + var appsStr = require("fs").readFileSync(BASE_DIR+"/apps.json"); + var appList = JSON.parse(appsStr); + appList.forEach(a => apps.push(a)); + } catch (e) { + console.log("Couldn't load apps.json", e.toString()); + } + // Load app metadata from each app + if (!apps.length) { + console.log("Loading apps/.../metadata.json"); + var dirs = require("fs").readdirSync(APPSDIR, {withFileTypes: true}); + dirs.forEach(dir => { + var appsFile; + if (dir.name.startsWith("_example") || !dir.isDirectory()) + return; + try { + appsFile = require("fs").readFileSync(APPSDIR+dir.name+"/metadata.json").toString(); + } catch (e) { + console.error(dir.name+"/metadata.json does not exist"); + return; + } + apps.push(JSON.parse(appsFile)); + }); + } }; exports.AppInfo = AppInfo; From 2e6574f6ed3b72f6a85818523d421589d4635bc3 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 7 Jul 2023 15:19:32 +0100 Subject: [PATCH 1657/1725] Making appinfo language scan work under node.js moving language_scan and other libs into AppLoader core from BangleApps --- bin/apploader.js | 2 +- bin/firmwaremaker.js | 5 +- bin/firmwaremaker_c.js | 2 +- bin/language_render.js | 64 -------- bin/language_scan.js | 327 ---------------------------------------- bin/lib/apploader.js | 115 -------------- bin/lib/emulator.js | 115 -------------- bin/runapptests.js | 4 +- bin/thumbnailer.js | 4 +- bin/unifont-15.0.01.ttf | Bin 12273948 -> 0 bytes core | 2 +- 11 files changed, 10 insertions(+), 630 deletions(-) delete mode 100755 bin/language_render.js delete mode 100755 bin/language_scan.js delete mode 100644 bin/lib/apploader.js delete mode 100644 bin/lib/emulator.js delete mode 100644 bin/unifont-15.0.01.ttf diff --git a/bin/apploader.js b/bin/apploader.js index d4a5f828e..84e7d2474 100755 --- a/bin/apploader.js +++ b/bin/apploader.js @@ -38,7 +38,7 @@ function ERROR(msg) { var deviceId = "BANGLEJS2"; -var apploader = require("./lib/apploader.js"); +var apploader = require("../core/lib/apploader.js"); var args = process.argv; var bangleParam = args.findIndex(arg => /-b\d/.test(arg)); diff --git a/bin/firmwaremaker.js b/bin/firmwaremaker.js index 4535c4a5e..d5ebfca37 100755 --- a/bin/firmwaremaker.js +++ b/bin/firmwaremaker.js @@ -14,9 +14,10 @@ var APPS = [ // IDs of apps to install var MINIFY = true; var fs = require("fs"); -var apploader = require("./lib/apploader.js"); +var apploader = require("../core/lib/apploader.js"); apploader.init({ - DEVICEID : DEVICEID + DEVICEID : DEVICEID, + //language : "lang/de_DE.json" }); var appfiles = []; diff --git a/bin/firmwaremaker_c.js b/bin/firmwaremaker_c.js index 54b63d5d9..4bd7fda2a 100755 --- a/bin/firmwaremaker_c.js +++ b/bin/firmwaremaker_c.js @@ -34,7 +34,7 @@ if (DEVICEID=="BANGLEJS") { } console.log("Device = ",DEVICEID); -var apploader = require("./lib/apploader.js"); +var apploader = require("../core/lib/apploader.js"); apploader.init({ DEVICEID : DEVICEID }); diff --git a/bin/language_render.js b/bin/language_render.js deleted file mode 100755 index 07c23f65c..000000000 --- a/bin/language_render.js +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/node -/* - Takes language files that have been written with unicode chars that Bangle.js cannot render - with its built-in fonts, and pre-render them. -*/ - -//const FONT_SIZE = 18; -//const FONT_NAME = 'Sans'; -const FONT_SIZE = 16; // 12pt -const FONT_NAME = '"Unifont Regular"'; // or just 'Sans' - -var createCanvas, registerFont; -try { - createCanvas = require("canvas").createCanvas; - registerFont = require("canvas").registerFont; -} catch(e) { - console.log("ERROR: needc canvas library"); - console.log("Try: npm install canvas"); - process.exit(1); -} -// Use font from https://unifoundry.com/unifont/ as it scales well at 16px high -registerFont(__dirname+'/unifont-15.0.01.ttf', { family: 'Unifont Regular' }) - -var imageconverter = require(__dirname+"/../webtools/imageconverter.js"); - -const canvas = createCanvas(200, 20) -const ctx = canvas.getContext('2d') - -function renderText(txt) { - ctx.clearRect(0, 0, canvas.width, canvas.height); - ctx.font = FONT_SIZE+'px '+FONT_NAME; - ctx.fillStyle = "white"; - ctx.fillText(txt, 0, FONT_SIZE); - var str = imageconverter.canvastoString(canvas, { autoCrop:true, output:"raw", mode:"1bit", transparent:true } ); - // for testing: -// console.log(txt); -// console.log("g.drawImage(",imageconverter.canvastoString(canvas, { autoCrop:true, output:"string", mode:"1bit" } ),");"); -// process.exit(1); - return "\0"+str; -} - -function renderLangFile(file) { - var fileIn = __dirname + "/../lang/unicode-based/"+file; - var fileOut = __dirname + "/../lang/"+file; - console.log("Reading",fileIn); - var inJSON = JSON.parse(require("fs").readFileSync(fileIn)); - var outJSON = { "// created with bin/language_render.js" : ""}; - for (var categoryName in inJSON) { - if (categoryName.includes("//")) continue; - var category = inJSON[categoryName]; - outJSON[categoryName] = {}; - for (var english in category) { - if (english.includes("//")) continue; - var translated = category[english]; - //console.log(english,"=>",translated); - outJSON[categoryName][english] = renderText(translated); - } - } - require("fs").writeFileSync(fileOut, JSON.stringify(outJSON,null,2)); - console.log("Written",fileOut); -} - - -renderLangFile("ja_JA.json"); diff --git a/bin/language_scan.js b/bin/language_scan.js deleted file mode 100755 index 77c91f152..000000000 --- a/bin/language_scan.js +++ /dev/null @@ -1,327 +0,0 @@ -#!/usr/bin/env node -/* Scans for strings that may be in English in each app, and -outputs a list of strings that have been found. - -See https://github.com/espruino/BangleApps/issues/1311 - -Needs old 'translate': - -npm install translate@1.4.1 - -For actual translation you need to sign up for a free Deepl API at https://www.deepl.com/ - -``` -# show status -bin/language_scan.js -r - -# add missing keys for all languages (in english) -bin/language_scan.js -r - -# for translation -bin/language_scan.js --deepl YOUR_API_KEY --turl https://api-free.deepl.com - -*/ - -var childProcess = require('child_process'); - -let refresh = false; - -function handleCliParameters () -{ - let usage = "USAGE: language_scan.js [options]"; - let die = function (message) { - console.log(usage); - console.log(message); - process.exit(3); - }; - let hadTURL = false, - hadDEEPL = false; - for(let i = 2; i < process.argv.length; i++) - { - const param = process.argv[i]; - switch(param) - { - case '-r': - case '--refresh': - refresh = true; - break; - case '--deepl': - i++; - let KEY = process.argv[i]; - if(KEY === '' || KEY === null || KEY === undefined) - { - die('--deepl requires a parameter: the API key to use'); - } - process.env.DEEPL = KEY; - hadDEEPL = true; - break; - case '--turl': - i++; - let URL = process.argv[i]; - if(URL === '' || URL === null || URL === undefined) - { - die('--turl requires a parameter: the URL to use'); - } - process.env.TURL = URL; - hadTURL = true; - break; - case '-h': - case '--help': - console.log(usage+"\n"); - console.log("Parameters:"); - console.log(" -h, --help Output this help text and exit"); - console.log(" -r, --refresh Auto-add new strings into lang/*.json"); - console.log(' --deepl KEY Enable DEEPL as auto-translation engine and'); - console.log(' use KEY as its API key. You also need to provide --turl'); - console.log(' --turl URL In combination with --deepl, use URL as the API base URL'); - process.exit(0); - default: - die("Unknown parameter: "+param+", use --help for options"); - } - } - if((hadTURL !== false || hadDEEPL !== false) && hadTURL !== hadDEEPL) - { - die("Use of deepl requires both a --deepl API key and --turl URL"); - } -} -handleCliParameters(); - -let translate = false; -if (process.env.DEEPL) { - // Requires translate - // npm i translate - translate = require("translate"); - translate.engine = "deepl"; // Or "yandex", "libre", "deepl" - translate.key = process.env.DEEPL; // Requires API key (which are free) - translate.url = process.env.TURL; -} - -var IGNORE_STRINGS = [ - "5x5","6x8","6x8:2","4x6","12x20","6x15","5x9Numeric7Seg", "Vector", // fonts - "---","...","*","##","00","GPS","ram", - "12hour","rising","falling","title", - "sortorder","tl","tr", - "function","object", // typeof=== - "txt", // layout styles - "play","stop","pause", "volumeup", "volumedown", // music state - "${hours}:${minutes}:${seconds}", "${hours}:${minutes}", - "BANGLEJS", - "fgH", "bgH", "m/s", - "undefined", "kbmedia", "NONE", -]; - -var IGNORE_FUNCTION_PARAMS = [ - "read", - "readJSON", - "require", - "setFont","setUI","setLCDMode", - "on", - "RegExp","sendCommand", - "print","log" -]; -var IGNORE_ARRAY_ACCESS = [ - "WIDGETS" -]; - -var BASEDIR = __dirname+"/../"; -Espruino = require(BASEDIR+"core/lib/espruinotools.js"); -var fs = require("fs"); -var APPSDIR = BASEDIR+"apps/"; - -function ERROR(s) { - console.error("ERROR: "+s); - process.exit(1); -} -function WARN(s) { - console.log("Warning: "+s); -} -function log(s) { - console.log(s); -} - -var apploader = require("./lib/apploader.js"); -apploader.init({ - DEVICEID : "BANGLEJS2" -}); -var apps = apploader.apps; - -// Given a string value, work out if it's obviously not a text string -function isNotString(s, wasFnCall, wasArrayAccess) { - if (s=="") return true; - // wasFnCall is set to the function name if 's' is the first argument to a function - if (wasFnCall && IGNORE_FUNCTION_PARAMS.includes(wasFnCall)) return true; - if (wasArrayAccess && IGNORE_ARRAY_ACCESS.includes(wasArrayAccess)) return true; - if (s=="Storage") console.log("isNotString",s,wasFnCall); - - if (s.length<3) return true; // too short - if (s.length>40) return true; // too long - if (s[0]=="#") return true; // a color - if (s.endsWith('.log') || s.endsWith('.js') || s.endsWith(".info") || s.endsWith(".csv") || s.endsWith(".json") || s.endsWith(".img") || s.endsWith(".txt")) return true; // a filename - if (s.endsWith("=")) return true; // probably base64 - if (s.startsWith("BTN")) return true; // button name - if (IGNORE_STRINGS.includes(s)) return true; // one we know to ignore - if (!isNaN(parseFloat(s)) && isFinite(s)) return true; //is number - if (s.match(/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/)) return true; //roman number - if (!s.match(/.*[A-Z].*/i)) return true; // No letters - if (s.match(/.*[0-9].*/i)) return true; // No letters - if (s.match(/.*\(.*\).*/)) return true; // is function - if (s.match(/[A-Za-z]+[A-Z]([A-Z]|[a-z])*/)) return true; // is camel case - if (s.includes('_')) return true; - return false; -} - -function getTextFromString(s) { - return s.replace(/^([.<>\-\n ]*)([^<>\!\?]*?)([.<>\!\?\-\n ]*)$/,"$2"); -} - -// A string that *could* be translated? -var untranslatedStrings = []; -// Strings that are marked with 'LANG' -var translatedStrings = []; - -function addString(list, str, file) { - str = getTextFromString(str); - var entry = list.find(e => e.str==str); - if (!entry) { - entry = { str:str, uses:0, files : [] }; - list.push(entry); - } - entry.uses++; - if (!entry.files.includes(file)) - entry.files.push(file) -} - -console.log("Scanning apps..."); -//apps = apps.filter(a=>a.id=="wid_edit"); -apps.forEach((app,appIdx) => { - var appDir = APPSDIR+app.id+"/"; - app.storage.forEach((file) => { - if (!file.url || !file.name.endsWith(".js")) return; - var filePath = appDir+file.url; - var shortFilePath = "apps/"+app.id+"/"+file.url; - var fileContents = fs.readFileSync(filePath).toString(); - var lex = Espruino.Core.Utils.getLexer(fileContents); - var lastIdx = 0; - var wasFnCall = undefined; // set to 'setFont' if we're at something like setFont(".." - var wasArrayAccess = undefined; // set to 'WIDGETS' if we're at something like WIDGETS[".." - var tok = lex.next(); - while (tok!==undefined) { - var previousString = fileContents.substring(lastIdx, tok.startIdx); - if (tok.type=="STRING") { - if (previousString.includes("/*LANG*/")) { // translated! - addString(translatedStrings, tok.value, shortFilePath); - } else { // untranslated - potential to translate? - // filter out numbers - if (!isNotString(tok.value, wasFnCall, wasArrayAccess)) { - addString(untranslatedStrings, tok.value, shortFilePath); - } - } - } else { - if (tok.value!="(") wasFnCall=undefined; - if (tok.value!="[") wasArrayAccess=undefined; - } - //console.log(wasFnCall,tok.type,tok.value); - if (tok.type=="ID") { - wasFnCall = tok.value; - wasArrayAccess = tok.value; - } - lastIdx = tok.endIdx; - tok = lex.next(); - } - }); -}); -untranslatedStrings.sort((a,b)=>a.uses - b.uses); -translatedStrings.sort((a,b)=>a.uses - b.uses); - - -/* - * @description Add lang to start of string - * @param str string to add LANG to - * @param file file that string is found - * @returns void - */ -//TODO fix settings bug -function applyLANG(str, file) { - fs.readFile(file, 'utf8', function (err,data) { - if (err) { - return console.log(err); - } - const regex = new RegExp(`(.*)((? translatedStrings.find(t=>t.str==e.str)); - -// Uncomment to add LANG to all strings -// THIS IS EXPERIMENTAL -//wordsToAdd.forEach(e => e.files.forEach(a => applyLANG(e.str, a))); - -log(wordsToAdd.map(e=>`${JSON.stringify(e.str)} (${e.uses} uses)`).join("\n")); -log(""); - -//process.exit(1); -log("Possible English Strings that could be translated"); -log("================================================================="); -log(""); -log("Add these to IGNORE_STRINGS if they don't make sense..."); -log(""); - // ignore ones only used once or twice -log(untranslatedStrings.filter(e => e.uses>2).filter(e => !translatedStrings.find(t=>t.str==e.str)).map(e=>`${JSON.stringify(e.str)} (${e.uses} uses)`).join("\n")); -log(""); -//process.exit(1); - -let languages = JSON.parse(fs.readFileSync(`${BASEDIR}/lang/index.json`).toString()); -for (let language of languages) { - if (language.code == "en_GB") { - console.log(`Ignoring ${language.code}`); - continue; - } - console.log(`Scanning ${language.code}`); - log(language.code); - log("=========="); - let translations = JSON.parse(fs.readFileSync(`${BASEDIR}/lang/${language.url}`).toString()); - let translationPromises = []; - translatedStrings.forEach(translationItem => { - if (!translations.GLOBAL[translationItem.str]) { - console.log(`Missing GLOBAL translation for ${JSON.stringify(translationItem)}`); - translationItem.files.forEach(file => { - let m = file.match(/\/([a-zA-Z0-9_-]*)\//g); - if (m && m[0]) { - let appName = m[0].replaceAll("/", ""); - if (translations[appName] && translations[appName][translationItem.str]) { - console.log(` but LOCAL translation found in \"${appName}\"`); - } else if (translate && language.code !== "tr_TR") { // Auto Translate - translationPromises.push(new Promise(async (resolve) => { - const translation = await translate(translationItem.str, language.code.split("_")[0]); - console.log("Translating:", translationItem.str, translation); - translations.GLOBAL[translationItem.str] = translation; - resolve() - })) - } else if(refresh && !translate) { - translationPromises.push(new Promise(async (resolve) => { - translations.GLOBAL[translationItem.str] = translationItem.str; - resolve() - })) - } - } - }); - } - }); - Promise.all(translationPromises).then(() => { - fs.writeFileSync(`${BASEDIR}/lang/${language.url}`, JSON.stringify(translations, null, 4)) - }); - log(""); -} -console.log("Done."); diff --git a/bin/lib/apploader.js b/bin/lib/apploader.js deleted file mode 100644 index 737a2d904..000000000 --- a/bin/lib/apploader.js +++ /dev/null @@ -1,115 +0,0 @@ -/* Node.js library with utilities to handle using the app loader from node.js */ - -var DEVICEID = "BANGLEJS2"; -var MINIFY = true; // minify JSON? -var BASE_DIR = __dirname + "/../.."; -var APPSDIR = BASE_DIR+"/apps/"; - -//eval(require("fs").readFileSync(__dirname+"../core/js/utils.js")); -var Espruino = require(__dirname + "/../../core/lib/espruinotools.js"); -//eval(require("fs").readFileSync(__dirname + "/../../core/lib/espruinotools.js").toString()); -//eval(require("fs").readFileSync(__dirname + "/../../core/js/utils.js").toString()); -var AppInfo = require(__dirname+"/../../core/js/appinfo.js"); - -var SETTINGS = { - pretokenise : true -}; -global.Const = { - /* Are we only putting a single app on a device? If so - apps should all be saved as .bootcde and we write info - about the current app into app.info */ - SINGLE_APP_ONLY : false, -}; - -var apps = []; -var device = { id : DEVICEID, appsInstalled : [] }; - -// call with {DEVICEID:"BANGLEJS/BANGLEJS2"} -exports.init = function(options) { - if (options.DEVICEID) { - DEVICEID = options.DEVICEID; - device.id = options.DEVICEID; - } - // Try loading from apps.json - apps.length=0; - try { - var appsStr = require("fs").readFileSync(BASE_DIR+"/apps.json"); - var appList = JSON.parse(appsStr); - appList.forEach(a => apps.push(a)); - } catch (e) { - console.log("Couldn't load apps.json", e.toString()); - } - // Load app metadata from each app - if (!apps.length) { - console.log("Loading apps/.../metadata.json"); - var dirs = require("fs").readdirSync(APPSDIR, {withFileTypes: true}); - dirs.forEach(dir => { - var appsFile; - if (dir.name.startsWith("_example") || !dir.isDirectory()) - return; - try { - appsFile = require("fs").readFileSync(APPSDIR+dir.name+"/metadata.json").toString(); - } catch (e) { - console.error(dir.name+"/metadata.json does not exist"); - return; - } - apps.push(JSON.parse(appsFile)); - }); - } -}; - -exports.AppInfo = AppInfo; -exports.apps = apps; - -// used by getAppFiles -function fileGetter(url) { - url = BASE_DIR+"/"+url; - console.log("Loading "+url) - var data; - if (MINIFY && url.endsWith(".json")) { - var f = url.slice(0,-5); - console.log("MINIFYING JSON "+f); - var j = eval("("+require("fs").readFileSync(url).toString("binary")+")"); - data = JSON.stringify(j); - } else { - var blob = require("fs").readFileSync(url); - if (url.endsWith(".js") || url.endsWith(".json")) - data = blob.toString(); // allow JS/etc to be written in UTF-8 - else - data = blob.toString("binary") - } - return Promise.resolve(data); -} - -exports.getAppFiles = function(app) { - var allFiles = []; - var uploadOptions = { - apps : apps, - needsApp : app => { - if (app.provides_modules) { - if (!app.files) app.files=""; - app.files = app.files.split(",").concat(app.provides_modules).join(","); - } - return AppInfo.getFiles(app, { - fileGetter:fileGetter, - settings : SETTINGS, - device : { id : DEVICEID } - }).then(files => { allFiles = allFiles.concat(files); return app; }); - } - }; - return AppInfo.checkDependencies(app, device, uploadOptions).then(() => AppInfo.getFiles(app, { - fileGetter:fileGetter, - settings : SETTINGS, - device : device - })).then(files => { - allFiles = allFiles.concat(files); - return allFiles; - }); -}; - -// Get all the files for this app as a string of Storage.write commands -exports.getAppFilesString = function(app) { - return exports.getAppFiles(app).then(files => { - return files.map(f=>f.cmd).join("\n")+"\n" - }) -}; diff --git a/bin/lib/emulator.js b/bin/lib/emulator.js deleted file mode 100644 index f7c82ec3c..000000000 --- a/bin/lib/emulator.js +++ /dev/null @@ -1,115 +0,0 @@ -/* Node.js library with utilities to handle using the emulator from node.js */ - -var EMULATOR = "banglejs2"; -var DEVICEID = "BANGLEJS2"; - -var BASE_DIR = __dirname + "/../.."; -var DIR_IDE = BASE_DIR + "/../EspruinoWebIDE"; - -/* we factory reset ONCE, get this, then we can use it to reset -state quickly for each new app */ -var factoryFlashMemory; - -// Log of messages from app -var appLog = ""; -var lastOutputLine = ""; - -function onConsoleOutput(txt) { - appLog += txt + "\n"; - lastOutputLine = txt; -} - -exports.init = function(options) { - if (options.EMULATOR) - EMULATOR = options.EMULATOR; - if (options.DEVICEID) - DEVICEID = options.DEVICEID; - - eval(require("fs").readFileSync(DIR_IDE + "/emu/emulator_"+EMULATOR+".js").toString()); - eval(require("fs").readFileSync(DIR_IDE + "/emu/emu_"+EMULATOR+".js").toString()); - eval(require("fs").readFileSync(DIR_IDE + "/emu/common.js").toString()/*.replace('console.log("EMSCRIPTEN:"', '//console.log("EMSCRIPTEN:"')*/); - - jsRXCallback = function() {}; - jsUpdateGfx = function() {}; - - factoryFlashMemory = new Uint8Array(FLASH_SIZE); - factoryFlashMemory.fill(255); - - exports.flashMemory = flashMemory; - exports.GFX_WIDTH = GFX_WIDTH; - exports.GFX_HEIGHT = GFX_HEIGHT; - exports.tx = jsTransmitString; - exports.idle = jsIdle; - exports.stopIdle = jsStopIdle; - exports.getGfxContents = jsGetGfxContents; - - return new Promise(resolve => { - setTimeout(function() { - console.log("Emulator Loaded..."); - jsInit(); - jsIdle(); - console.log("Emulator Factory reset"); - exports.tx("Bangle.factoryReset()\n"); - factoryFlashMemory.set(flashMemory); - console.log("Emulator Ready!"); - - resolve(); - },0); - }); -}; - -// Factory reset -exports.factoryReset = function() { - exports.flashMemory.set(factoryFlashMemory); - exports.tx("reset()\n"); - appLog=""; -}; - -// Transmit a string -exports.tx = function() {}; // placeholder -exports.idle = function() {}; // placeholder -exports.stopIdle = function() {}; // placeholder -exports.getGfxContents = function() {}; // placeholder - -exports.flashMemory = undefined; // placeholder -exports.GFX_WIDTH = undefined; // placeholder -exports.GFX_HEIGHT = undefined; // placeholder - -// Get last line sent to console -exports.getLastLine = function() { - return lastOutputLine; -}; - -// Gets the screenshot as RGBA Uint32Array -exports.getScreenshot = function() { - var rgba = new Uint8Array(exports.GFX_WIDTH*exports.GFX_HEIGHT*4); - exports.getGfxContents(rgba); - var rgba32 = new Uint32Array(rgba.buffer); - return rgba32; -} - -// Write the screenshot to a file options={errorIfBlank} -exports.writeScreenshot = function(imageFn, options) { - options = options||{}; - return new Promise((resolve,reject) => { - var rgba32 = exports.getScreenshot(); - - if (options.errorIfBlank) { - var firstPixel = rgba32[0]; - var blankImage = rgba32.every(col=>col==firstPixel); - if (blankImage) reject("Image is blank"); - } - - var Jimp = require("jimp"); - let image = new Jimp(exports.GFX_WIDTH, exports.GFX_HEIGHT, function (err, image) { - if (err) throw err; - let buffer = image.bitmap.data; - buffer.set(new Uint8Array(rgba32.buffer)); - image.write(imageFn, (err) => { - if (err) return reject(err); - console.log("Image written as "+imageFn); - resolve(); - }); - }); - }); -} diff --git a/bin/runapptests.js b/bin/runapptests.js index b50a7e15c..40a898fa6 100755 --- a/bin/runapptests.js +++ b/bin/runapptests.js @@ -62,11 +62,11 @@ if (!require("fs").existsSync(DIR_IDE)) { process.exit(1); } -var apploader = require(BASE_DIR+"/bin/lib/apploader.js"); +var apploader = require(BASE_DIR+"/core/lib/apploader.js"); apploader.init({ DEVICEID : DEVICEID }); -var emu = require(BASE_DIR+"/bin/lib/emulator.js"); +var emu = require(BASE_DIR+"/core/lib/emulator.js"); // Last set of text received var lastTxt; diff --git a/bin/thumbnailer.js b/bin/thumbnailer.js index 22cdc27a5..b5cb359d2 100755 --- a/bin/thumbnailer.js +++ b/bin/thumbnailer.js @@ -8,8 +8,8 @@ var EMULATOR = "banglejs1"; var DEVICEID = "BANGLEJS"; var SCREENSHOT_DIR = __dirname+"/../screenshots/"; -var emu = require("./lib/emulator.js"); -var apploader = require("./lib/apploader.js"); +var emu = require("../core/lib/emulator.js"); +var apploader = require("../core/lib/apploader.js"); var singleAppId; diff --git a/bin/unifont-15.0.01.ttf b/bin/unifont-15.0.01.ttf deleted file mode 100644 index bc3428d96f2b4c04885f37cdad6bcc22aace4c1e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12273948 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≻EOccY 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 z zKky65EhJ}q7xkdd4%FSD37r^}za#fMQftRHq~#aIK;5Ela9%{+opMkMdhbllox9}k zLcLw)$LpcI^^$O0BY<`Zb>zUiI4%Dm z<~WEs4jPwVVPX{Q9~?t1X5=42?aEO8;W_fF3gsV_FTXku)H{azV}|7)OTA-fD|`E$1f{BP0LhIwa+vk_%=%h1u(}K&`ql`KQJ}{HdezPowu~ zO_-8@Iy0Zn`t(8h_1WkGz0W8F&vHf|xIdG)GutpCe?C3tb2h(UenTF}Ig7ossB=~d zlk(5zxz3JbLjF0-!+U|>Sc-1U$Um3-bE(CrxjUe{|))&y{ zLi%0E-i1l|7v+N57p3Gkvu>tl^ML$|sdF*4FR27GF5qlIoBWm>)PVYz=A%dcWkNMt zF(v=fc_7cKMyTNMKC<9qipPh_w7WYvtcngcn{KU{(ijLBb0?o#S6rFI|jeQn6df2175KQbr((F(BtXbPM?76W^awSc{3HX6_i z>O7tcp5^fo`TXtCUq;Lm)P8~*PfW`1FGV+IGMJXrsVT3;issV8kYZ37TV>%%=P6O%*kI)o#iv~he|-~ zE9AX0ApccjUM2Qb&R#18`NM_a>~&&Z=j?UP-l#=V{+rDDW;r@BE`OvB-SXd}&RhMM zmj5<+Z#RKj?^J`h(FBI%zf1nRRUrReV&7x`eP()}XBeZ`7 VDE!^aQ~qT)*ll4 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≪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%0AxFtBT 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

    #ZAMqo=1e;wq`QF4!b;MO-iJ%Nkqw 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%0Du0RB{4Nsf;QKi%~BwOK2nElfv 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

    SSiYCmo8Gew6Cy@ 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%0AsOv^EDGU)85m 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�wstbTA>gRQDV>~wsK-#ZBoYC7y9>Z&@c0dey# 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

    ^D31cU;+ApKeY3O9? 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�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у|J`Xib|rwj ztFR_mDpx6uR4kB4%f8I@EW72u>+jYUoa<%$r4d=>-x1cq%HaejV}Wn9xyZda7(a~@ z44yS30(BIJ2yrjO6oOo-x!X6I@WLE?`ju275Drr+R;cy$`dxUBy;ESC?vbp_aRZlh zC*CI|9e4kQqy6Pb*pH9+T+Kw3^(Td;O$&t}GdVC{pr%Eda&fXDqv8CWe=_)9;C9PU zKoM+!Q=Jo*ZEUV>4Wf{T_4x$fOkq#vY&lGy7uwno((NgsXP*l(Qye@bjm$m?gtqUSKExkL3O(SaPppqVfbY%>xjAcZ&SCm{ zbLNs@KeOw1y{uD2Fo@FH*UJXmVJZ`xz!I2HpHVrrvBF_+kw-!^*CV)tvzBH+jE!9l)Y`|u>| z#Ndss!1FDS7r=K=GJh7{feU!R2$>U2LA+Ww-;Z`(I{e_3{neDiE8oR1dF30Nzn;}q z9aWh#yXO-fku*hSenMve90ijP=`n*>gz>1&^h}eB?;j8S&h+A3y zLGA3KClr^|F6;~|Im?Mw+yws^+>K17Hg;Yt!{2sD(c!8A=-^kQoYbhXnMs0NH@f&C z{h;%WIX;8y^DeWkNh2L)e7d0(;-_kU`sOqiVk?$MNXPM|D}Z+FMjYqAM=0g;U@#CD z{Oks8z#jE%@O$q7e)gP#-t~6;@WauHw1?W!!&+-&SQD`*9kY!*aVR~6u~EeAjZ#W2 zRn6~=*?LQ$REWy~g2jQyK&d$YGJgkg*ezFGZ<3UH4`=1&4=u9)VP+uw(3l%K?bO$| zigBcoPxjX{CRtqr8igRA!-Cx~7|}MW8E&!MUd&mQe3Uq;CbyTHRH%sQF$2|cj(8}s zO6ChztSp)4n3Lk4EJD*E#g$@&i|i=hN`)Zcy-l;qkz|bNnlBrY%JQ&nm&0dP|E~57 zQ34oH847inCPJ}4Sb9dRSH9P^@U!&*TdY~p0~fM`#1h!rB*wNK(BiMo>ows zdqdg#mCRd?uztuEYTYb>-{-SeH4D1ln^$vl97pq+1>-D$0u*on9-_ZXwALaY&qc2R zo6#`}W*ie47;sm3J4VuAUDX5|AVS#LcEAy0egT@pfeMDI`Sq-6Z`OE+eV!V1Y7`xRdWF!q@6bf4#k@bbx*u!NHck3Pex&gFp9&O zGAbZcT~vbWRr`CJU`eYIc2Gsb1-kr>z<5#$^iIARlm6IEzp1O=sGa4V06qvJb;_4E zNhccVf}69)g+M5-X0i-q&-UUyW3f}GA%!)-o~gRo3MHZa7Nx=z^?|bP^{(OEB8rx8 z1cvUY+pZ%OQ`gvE89ihFp;gai@)1d8PUb*GIg_6IRtnEw5E1ZCCbD7IDo`y>k8{Y- z*{9-I>UdTOeSmO=j&{1&Cr+GyTva2aU%}wc$U!l>^Y0I>y%P%3zM{n z#D)UeOAto$QWm~#a&>c{E|rn>=p-(!cP^H!qwl|6oX_#SjF3$%=36`e;Mw;tmBk|j zpYQ9OVmkJvdFKNqMuwW!+3kyEsW4w26UKb z5eSOJ7Y;lBJI6fCKg>+$4b7r6Hl483rYIaw&|PwCR)?X$2VxcYRap(<`W-wdS9Ph0wd z{pXC^$_q@+K!u7`g&Swll1i$?d36p0MA?8G4R}(@Z>7iv$ z`_5;vzML3%z9ljKzt|q$&)`wc^8u329X4IAXg1TR7b_E?5q zLjGHl7P||Cv6Y;F2c1*UsM7cXuJt)I71-iBgMdB_Cuf!IvXKq@QX`8$ytGT0--(9+ zAYd0(ZHt-1DpD52UVnN~LpAo_*iXY)QE3;DtCCPqMRJBWX-61#T@9lbpbOm#|xplPA2K{Y%<(rN@u`hs2I*;}qmc{?YMSSiHI9{MnwYs1bQKYAh$ST}?${$g1s7 z@yID49Wi3~bEA+1iKCu~zc+w$YTv(k(@yvvW@6Rzygs>7efnRgop6rS&)JxNja57T zW!ZM^??<86c#!)rtX(_@8;#bCbUgEtW!p6*70 zoRJ83po@F3*KWyk*k?g=3$wLaT+bHT!BvTf6XcMBPF;%bRF2a3rpB4p-EiT}oVVK< zZ?mQCERsLQEZ|?_{j1|`fTewhgb$LFbiGz}!7C_9f*&?t#ET}P1bwK(KTt#JiE zQyV{*O~D0n3#)3!-SRiI#?~0l*@E?c!27=AfyX1bsz0~Rc z`Ch|0ul9sK{H)O;?YE%u1@6a%t_OI~400-+HVBHMvXaAJ4;%MQ?H+xGE!6CstQe}t z@7J?ozvCF$`?*-|P$v--P@p=Ak!V`V(Qnr`ls*#77OQAzQ#8s-G*HRJKuhlM`jp$y z*+WNaN=_`+JIbN0A^GUavp@+r`Trw~XwM&9|y{yJx6Y#lv0021zZ&19lP`xR7!JR_Apu&+aSr7XN zEvQ8Il$t&g*(Tj2#Y~o!-CCcSy?uVYo`|a_K)%E0zz-HaMB|_rdiTka4;(k@21+1? z)~*Fyap6?ydR5_I zxK8OW!VxYi_MY413W}e{B|kf!q|gP?^qKy;)yH2}7ti3VA*pe`j{*x9pn&u=^vA*yQ}*b^)K8+juB z&t{FTyp{SBfC;41{S~Ii7M~D5jrb~9VUdC;2Y!O4s6v485i365qFJRx;voT*cmnvZ zW(BgTG6lXR;&3gbr(A|6-8yo&nV}Au=gA8>sf2bbWqrKDy;?9nQ)^4H);Mr|fEsaA zK7%)ijt0kJ8+1ufAmPc`yuBSReXvoo(1+VCPluEQU*NOB6kxyOC-#ft9acSz_4K|4 z$40J;l@g9C=L|P`$;cDHs=Z0xB_!w#^<3sW&vmeB9>84b;TMQ62A)D5CQFYG;=)&4 zArCb)O~>XiqiG2v{zb5KZK8EefY4Ex1M*TpI=DcV%dtcltO0VCTPF;ppounLQxM}Q zbg_W^8oRw3k%~{l*q>Mt<#b@SB*#p{dmRK3K>pxF86CCnLa!Bt)Nqix8-Obn1yH3? zV9C-u1~O@XQC6B4xH-Lj*U@J9Qs(a9VTt8*M_7Vv?(GVq2242I3l+}(qS?Hub|FH* z-JwGV%x850imJ1xxXPqqC)Yta*U0oBoj>LKCuc!@zLn~9(b2484k z5s9na!H(&;$R>>)s?@sm2BV?ls6mBo?XPwf9M>!Q9fOa*@9@{O6UNAC`DP63(x5*l z06Aj@mp5%o+70{*Ux2iucjyZRCNx^{GS>->%yepi2pdn2CjVPbG^>aLwr_cUrTQHl zhdg`P9bf%ZjG`-tex~J9OEBZ{TMB37Q&Tn>`T?iQCC{mx&-o}$+5mimY83rej}DGu z&PH3;?k)OY3K>!GtA0@*c9H?h)@U3DT~58-K$>E)%J`2QzW@ZXrN^6q%7SkJay-?LnNSOyB?}srFz2CVbe+yEM8qW*m;rTHDE2 zQfsxuL4$aW)-8z(!Jd&V5;Zs`A)9Ag`lDn1%Zg`saYpX=Yeev~RuxQ(=Wwo1s=C2Y9q#x8pggxz14a)y`Fh=F>zx zAEKmP0#Zmkj0lfm0xyII_8J#|nuf5t43V^BszR06TkFK7^Z87K29OFFKoqfgsJ!ue z+br4Hb~EgCz>A7mV$BZL(K9dX+LY`X*L3IbX_;R|)q7L=e-8Gyc;gqIVYElGY3Rg$NdEx>n9 zv|O!8skB2d{70>0r)q9gfxD;d{jP2Hx$AXfQ3}ei&^RHOK7mz`je!uM7)!8zPqXZ> zA02e!ivv->HW~^WWRv0;G{H$&C-#=M+8hrHE5{Nf@_F|CT!_ALC1tsP$siGC@tpZ^`osQ8z&&Eu0z7Bva#CT`X^|D!R zvarnIaF$6U5SrnKswjhpA0b=b!oO zN)3o`Ra-%fF?qn=;h=Xa7|M`&3ec%>Gc5Tb)2QIvk zW2^;alqefy0+24=3MReZD9EjWc~l3%)K17+v#+@;?X_FUyjxGTzEbmjuMs3N4YKg13O_NpL6n`tY7*d zUTRks-eBSvq=9up8?c8szeomf@Ctrlexx&~xVHCF0@{K8d;3uSZRSjTWBX;^HTHS? zP*?(Ao5j=NkR!GXT4A=z;vvtW4!W*Ei?FNc*1;ghqP?$g1rBe>#Bi0&^Shd0F254w z@Hu6i9Oo4rWFga@IHg>a0dKIrlkFVuTf1F<LDue-ZS2**YaPPZyx%h+7< zRUNmQ)UK)xuSqDmAvjHAtvo}>^{ol6f0BhGz6%K?;NK+l8-P??>{V7I~kXSz*et$}Xm-X?MT!KFXw z!xz?Rx}8;1PbuUL&9F}vs?V`+L3Yd{_&hid#(v;U5P{ix`zpsJ0XdViI)~R~@w8n- zeaBpc7syhI0Ka8_7gH&NXn;K=(~59lS=TODoi0`mUnCkemqeAM2KBycY3G(tj}B-H z{X}=6O||%*IE)>XVlnFI^fZw~jeK;GhZ$IB;sZH4i61+A{T7f$w!{QfTA|g0;l6R& zCPHJ6KGf_Naj&+}y5>o>)#r1=_NgB8e3i=Z3^|9 z!hM9TB|ZXBP~n`>lL zJbb>V?=NKK1L>b&3f@3`Tdde)G2wS&J0q(ZOwJdDm8j0~ZKs8$i7Ue|EdxBVD=w%b zdBWWJfs&~g5>2c%IMjsAWH{y&OavznP7-*wQ?Mouw=))d!|43q&RbYwjmj294&TH8 zk8I=)F=SsY+j7(t7>z;`2vVP%kT~~OCh+F^=K<)YzypVC!^jp2TM9d5NyZH{Xr2`L zB_bV0k222Pq*V2qq`A*QU*pqd9az^>H9DK~8~;F_tCKdRqm%9M-)!Pe1)#z-`(R#6 z4gEGj*mPiJpLOC3mFk^(mupv1;l7;j0>>cn7(G5s6~$FXrddUmCD%D@k$Y`;r?7du zP>QNp`abDHTlJiGI%n#gE4BZjv***!=Q27E$hY>|rjZTz;xt0=>4R+y2Cv*sef=as z2XFviY^2%7PdiFsbB_JQtslLF2~OeaTk4Q@@j|et#3K^w>Dgaf&+x65M!iG~rwxs< zIR~DqeZ9=G0-0slZL%(*a+o1iWe4!a@rClk5S6Py1REddErPAECCWJCg5E$vee5@| zOZP7xtFb9p6Ksr$N@JLFS`z3FGww&gFRj2F62l)|cPQrn4IkGFIL|=#(;(XEN(mAo zVuH5N^~X0OlV8|e9e`ecsl=zY~lOD*7>e-0i=Sbs+q_;ZBPENSvH%Ig1%G;c4-RWbkHF#tHfI zupM14i(_oyvi9%#B$XroU*Bw*M+**3FdSQ@|MX=j>WIiOj3{zVtC=E#c*FM&L;y*z zP*3PJbyhq|Z}%-Ih#MF*>My#xZ$iz*e5nE0H)}u4w^q&hS*}(y=e7U+!b7`aS0uc7 zj1GPTOBDa#6FZOS6mKZ~?7o5y4GzgVPs_4TUpdhCI?OC~*#?98RV}*nTAct7Q|H&l zK801_7Ca#lxnW+d7!`-3YK%(l`Tq8}n+6PNoa2SYNF3HARBn`npfoPX_)<@Mta@Nv z6{TiX&DC7&pD234aafE+Kx<&X}Md zn=$AB#@d0sMe;c!DJ_v0^1UM^hrgEsNu4bREeF~cWyLj$+tIhLjNAY8%`x)%%crDk z3HdOHrUGjP%_t{twD_m8&Y*s2f5-Y%>{nvJ)cYYH-uBYfSJ5H$Ywd&L%;(J5Xu)B9 zQ>*i99$w#i&}US03}#Ra)|U;jv7V{(Tb{FZjhO0ln=SA^E!M9UZTf|mE*9{_gvtF$ zfj}RbmlD&H4c-q7BR1vR5KH9O|2H*pMWY+}&TryW{H6qC3^w3v^K^s514)i=92$JJ z26g1=7Y?5OD6BXLcE8U^a$k-9DNDTdr2lXe>9r;=Q6j1 zr$-)w5TFn6OFN@xPk>C+2i!093aWuqJJrb41Lv=jFA4q-u1kf}fN=%Ko`quic)kSU z{KO-+TxphBMW9694bqHbDbb_|jNQAJ871tSxz1Now8q)q)mOeRrqu9!K4%~6b-Qe? zee{!=xABd!UhALShBjXSJKbqu#RrN_mM@(C9Hh&0xoEY+Jt~GI!ZLt4at?YRQeY?l zB4udPpaQA7ZxXNQb)BgOBSG<=6rGY9NkKuB`SbbW9{~6B{gyrxSWlJ9Ty?szRgueP z$y+7-VF(Jyj4H&~iT$P`hv~R9ke%)f_QU8Nc*pK$P7#*6c@oBF7yrf4zH#Uyyl8bF zp}6?J6;6+tW?La3$IEW~|7a{AP*G8le>_3n37-X^wK@uq-gjR17;+G^) zIxR4bFfEmSD`ezi&1@Iomn`lK|De&nS#HE*Ax`$i#m6BOIhzy1T4kPRCi7G+|WIGw((pU{O8tK zG5QW@>9iOSzHwfQs`EI^=B$+SC{*UX$X-7hJb`n zy3#Njpf_UbDsJw2IEmg2TrHcaA2G>WibCHdrgH54ZsZ;B;TPcq^Q`J;-d68pjvT%4={A$|lpXV2Lo$&Z|wjCoHxXl>!dBsZ946ij4`d{rkO z1uwLEI4O6VIGU1aEtc&?dEJ|qYi+mx2&=Qr*k1gq7oyObC>_{5oG6cTGb8}b`&sQ0 z#a5d*@eL;Yz25PrY}+^S@YFRb*DFr}sOZ`}(+m@|K*@6=cvKwU=%ezv!uh_C%m7qq zhFc|OSI!>O(SSq|)%kl^P zKgJ)n_lcj+_Zg$R=i2)mE@e69oZaKCdyeP*881Crtm(>DFRNy*pnKPd%L-L9U`>{V)(sGjP}Mw6+nvSKxD5C#5vC{HJJ=ujOa6VMeXyczyw6rCu0vXr zEkvlAv~zIX;h#oPp>xi$DaW>dl6AGN5BZh$H`{NvzwMq8(b!NXzEvnh^Orr1<_VX= zjN#NcA+G~N(Ke+a5&Nuqewq;GMH_3ZdF_$5m{(T@)h`$WAg)1Y1i-uBZhXlsa3?+4 zcWda^ss?eaDDa+xK5AdWTj*HHexAT0+U$O;_oHJLz_%8;yGHH)Db9Yaq*}f{==cN{ zrnDlr6A$wAi=IsM-x~6`?3M?Q)Pka7XsaEpJ!Is?0M%^hEdT`^;7{BD2w;=%c`yDZ zx$y(=!8b9^2ZIz>ck>OJD&kb%W2?S=>ASeH&iQ*sLwut2hud0hzGk#)Ey{1VzcYI< zU}$njOl)S}roeuVk8`i<*ZLznbY}-pwx7jtvONqYr?! zUJkJXu;l*G(Q~2_1RGEg2K&q65+R%ZJ$JF7uvW1%VPOx0o%?NF_Y+Vae<&QKk)P;7 z;4X8NkE>(PdD+U7hi>o(e?ag!a#{lqWEi&Y5uDsqYeNa?^SQs_SpWykJjZ_axrVZK z^Z5ppR;#Nepd=(L>`x1IaCy`nYU5*8$Jrq(Eyzp_mTXRBpT0?}4ZVULTBpfMJotBG z@*ce38YmxBi29QTTLV0*r{!EVEJfJ8q=V_|Q+52S+Npc3kvzP;xODUJ(us6rSGBE7 z-^hCD_nq_Z#SE|q|FkuDqAdrI)V`d+erxc~Zri)qCSGsa!pguk17HT&E_@GshaG)W zZva`ip6gYo&k#+LcH7Izw+xC_w0I&qL#_MyBeW$Pc>}lr^qq!aIVS&HWJLQ&_Mq(n z!YZyswDJB@97*Whqyr3Rz6qQr4F)vuz0b7|syZ~|KQ==fDKE%M#U}uw&+{}DghU`p zH6i3wnsiyn8g;8lK-?ai#Q!Gr;Rz5t4i5gHTl!2!3HIv}sjD(9q&qYTxE2_PtE7{% zTXd?o7rWZBRu$)6b~JoGk1J?2T`2e!EGLNHB&8VEV31=|O&17o*{J4nEXY1UEhag4 z#zVoxtTOs>Q3(-1zo3>vv|pbO`?kwoj4z*7^vQrM(CFp#ET9*5R zkY(*(LE&Qzk9^BBa`(hQ@SFvJi=7DQs5F2t50w}MS+GF5>9~$bT4|Wx6+BCT7rX#O zbqT%o=scomy+WzA3>Tz!l2E%5s(;qQyK845Muh{}gq0IoLjFXxg;SUIU1;cfwz7)+iJ5no+lm9qrX&p0@U-p?t%RgaMZgz zU(REcgwf)AYT$(;?=M%6{b97}wsWdBT8KQUxeXsC4RtI#DS~pSq4Y!WtZ)gE=WhQf zDdZkf|N60ak8doo7x>rc&-`Ya>sRifyI+0~cTQQgR|o;8fGM@pBUvg%W&Vm{ebm~v zy;3Ek621H>Y&h}Tn7|)mm8ndjK@*aBQTGU=Y|9r+m3mJl@;B<#|nEJ}nZvG_GVu2n#+3Z$6pBjNgO=YcQ2y7E{`(9JCXk-Ub6*AD%xX$3EfW zlWqm1v|a%z8KHmZItI7f10WS7D__8j4H_AbtM!O~e7?WPzRX&U1TAAB=9{hUtdus& zP)GGbLJ2PTa zUQa%xx1a~a2ene4I6es6{HR1v^Fy2}JIK;q<8Hul&>4(Ixk@`KiXD87O5ua=*! z_nPlz6_v1pn5kv+uo`^f`V5uw)hA3>!pRc9PZSpey#7R)Ep@!n*bXQ(Fk#r}_}U~l zv$}^-EvK?D>cjU5ip7Z&8Rw#Oa7p*a?k<=6>94AqNyx~zMe-p*We+~ssjI~`~h@_>PjqaTw$!pJdf${ zGrte$!2}eCU%(bvL2epgGf+M#BnG>C6eq*4kQ2X$)wdK>KZL?Yfd`& z$AqZ~o)E6$FNmQhTaz;fVAYZOI3T^59)PTRt|WOBJspmhL&j_n#3@+1kQKYZJH*Y{ zTFzZ~G#e-iU&M&P0fe2h-a*B%lBATEsy{xU)4zm;C~fgm=PLMsB1Mz~cnHZ*n9NZ4 z`NnC7=Zs#aNws&S8K~|;O#YUp$B2=Fc?5-)3=XP_P)mS1&Gd_ekBZ84w?@^2l6!B2 zv+ce|alI$PzFwpq{L$XmH_o_S)#gjf0fo$h;amy7x_~#BKLb}8vfpT?EuyKtux^wf z66G*xu-jUjPMzMzl#}%DXsi4);y3v|1)tDzWcvOc_1fc@A3Q=*YE-=$m&u zavv_%o$@BP<^naC2rl3YN72GL&eOm$l-QsL-~fvzEcK@QaT7ucfr|>m<6DkEI{Fyg z$Y=sr5xR$q9dft*g0bmYca zoAr)nDS90VhZ6x2a6&^Af*QKURp)WG{UNH4J{uSC5BzE8Fnih1LvHMI;(?f6)-fDD zs4D-J5~H1bNm4~ZlCZs}th{dDbL;|?aS;vU6liE-3$vQwS!YS{2=dKz$`T|467*RM zuSp-zz1)Tk6Za!Lw5K7om*&_$kr!fcHVi9_sI8%H*t;A^KCB3Hg$~=`!jhtbL7Zz- zmh?pHfHmQY!)!mVH; zN7{BM!Vi!x&mG@*KE?5mKXLRgYUZ-uH+@GP1Q}wik&iXz0p(Bv1uc@|vhM|C2791j z&SBCo7~F6gJUXp6_RDhd)yC>k$P+uh>H^xsBj|PC}(=+Zf z=6aMG!T*uA)|b|roSLU~FG=1ysx*B{FC<)vbRA$uFGRcmi;t=dF4UR)f_V&TW(Z+f zDF=hrfY>>Q%d$LL3>auSh)l>K=drX%JM=zPsR4OA>ab^zm$WTaXDGNRkDh#2}(TCl)0j=)i3y|w6K`DmI=i@HeW9LR|z+C@z< z8(H#L54TM&>)=mZ5k|g=)}e!|j}BbbDxbwoa#H-sa;rF&&aR_;H7$+UQ58__QAw91_*5I_NW`OO-& z36G_S;}?n8i*7wotldcmo;2+Y43KeO0nX7e6|h654qwVE_yxc#y#>}VJoL|XsWQ${ z`sTaZS`p%EnOb4QY8m(fU?(?BQcqSu@027dLg9c&NYu@y571o{@hSPadN1e{m}#LvZNiu_ z5=^Tg4D00I-ER zux*WSEHn6!dEq%AK4>(CFS!6+1%U-qDQE?-y=KW{>fj=OS8k}IEsEy_3gQpQgEC5@Z z$`V(_-T-+c3`G0Nzf?YapNcYa?(*rr*1vGBsZ%<{;gS=k*-J{MoWKz>#nP(+cA0HC zJhutQG8ng^tx);3l9wPKkS;+N9yka#dsz&kl?0A@!M4dM&AogF9*Q?7BH8l66bb%%4`=VRA_(naR5;dN5X6aZt0vwh?<$OHR9wsLOrI}0@DtP z$m#E3Gp|y=jV~AkpvKi#t39N?#@-z6%YUb_A*DLliI(W$$LW|X&$O)1rRTpjWB_co zT}Gd6M0s_zQd>ipjWU!Jv}_FR5IVJ0DXYVO>a2QGz#MaZ1i>^&EbAG{<o9LNit0HL;;c90YtRzB}AA@A&c7%2`KsB8eFmH}GLbBxO=BlV2aPsH*& zSCc0k9%5hgXAb=o>L@5u@ggU*U$ybbZ+*%ffiEDxN5%s=&>!aGHVTX=VfaRySnUH= zBM8peQA32W4$&Osi50MbmdVdzf;{MG)eudfk|4S+Vb17`D(KqUatFZ3$+voXtB2_G zP&Bffe4zp_QMlwFT{5z{@`7~&x2EjF`lBkx3g@qBTIgppiqh!KUX7l66jK9c2n^lh z;0p!-uOKwfWKo<#X}&cg?W!l%e(~^{dn(9Yd|Ff3b6ZTQfJ-ggI|Mx^4ySV%Q5@8W zB~XuD`WEFUl~lPx>Da@R2A}d2`*5d2>}O~*p426N;7ts-I_2IIuRcXNk+*T@4-Oi9 z7ob`rW0>i4HhoHrl;}cOL1(-IN@4*T>nN={H2TgvKd_!}UTaHheR@4Jb&k*ZRL+0f z{`>Na)tD+m0Tj5)2qh)gVYMG5oprUPL8vd%WLL0t7?P=8G$_mCb8|><9k$Lx;ulAd z-e%w56^H=|qK%0ckrL({!Bd$di7Lt>(jdpA(#@IFjBvWVtVeb9egJ)5G{&VUIi$(= z2zuK&Cgu3uxxO+pZE!p&K$@o-wy*XYNN?})#_FZjY@qJEz828=SA!o4sk&(Xd#{70 z=fmBzG49)D%gX=K&pc-~P%{zF*a@Ze+C8(CYy?%Eo*eOQN-1$%^BL9kDEF$|m;t6C zNv4u)JPj9+PV{#0C|O!S!tih>hpyYNH!(PxLu+HXqc-55jM+uAJe3?yi>BhgNMUiU z9Q#mhpR7kdFc(zeu2`-#M>JnT3b57Z^Z<&d7at8MK=eh}7I@2ZE3^RN1-|bSb+LDT%m+B;2O(;6FiR%j@h6%Lkx z@$b6J(&1at7h{g$I|KU@bB~^1skjOsg&aieVvI6;*&&8x$pXzWbq?l28PHG)V&i8ia7R8+!W_- zWik#Mx8bF2jm(`tWk}>)H|99PdVkG<`EC?tPyTSO$=bm{4?~rZ5udN|#2pPNXot zEFP}NxF2i%YM~Mh`}*ToAjQVPvwmsh5juiKxET0wf*LS}qDNz@BL^Q&6_iC{9^Q^S zOn{VxoR|U;8<(}JH~Jy})-e+8%A!cCPO}}>63A+Ln4-qtWCaibMpBXTQ&`uqRWUaT zM;7OH&|lcn4q7y9KS5Bcw?2rFtTC)4Os@;jLBgzep0Yzym$8Js1pl&@<^DZ+{{}vd zD+7IB;2&X^cf2_Sw+>i1;yDytNCVK7dLjeX-Zt#z@3bMTLzvy1}3Z_gd`uRvPH5B07d88O`V3K)HpH#Xc zyRrR{SH0{#q7=0Csawx)mYCC&z=H&i}b`;T6#PSmo46Tv2m~gMY8~aYoi`WS7?9xdQy9;QK>|6gsN1r(t@jJ{8oK?&H&7(dBT^rIt=ziEcU42EC)PQVtiCP@-YSq zlPV`hqkfd^)dhix#Bv=xpFv1$Sl{0za|G<<3U%i?=;oj-3F*nPS(7P4*UQP;gXeJC z+^_MajwzlikKCPl&ym{yrv2U@LGRr3*aP0g%QHIm0NDP?(z7Ta2>RwAs(wd2b1uL3 zoq0!h>Ul@K&j%hLEPa;F zO5yL*rPID%SIJ%_H0Q%8gH~@1fH)Im9e#(BhgAyltRhbWC1nG4v=V& zb~h;sa~LR^Iol^p8=%w(C zKFc_HH)<5(;DW2&{~mgT=jy|sV5f=lWA$K#f-z(pE`(+HqfatGMaDO22K63l?ok_x z7Nnn2t=Sqa12$wlit;5IlnHnv!~LiY)hc|zHHMz!j&6Mky#)$HeXsMAuUUyz`7# zb%R=1`l8hU(#Zn$HbM%hh`Z_j zTwJUF^Y!c}G(f*Zk#!){Mgpdzh5pjiigr(uO0MixsyZcyZ{G>9=B@2ROFxDgM}V#) zisGvGztNmgDqVSww*W~LVsxYssqr|#sMk+a2zBA&hoGR&ikZ15B5s0rG=vBv5WTdv zT!>HBCz!OGsL-qcL3_pL34-=gB+YyYdAIpFe(9cd;5*N3eJ9V&uF;4eZfj*9()T#q zc$pky2@X7~mgngp`Ssxm%G&#rpKCSAtJ3mRd%$R5_+f!Mr!6hV&XFb#tgnh(=IgA+h6g3OFhpTOvc*G$bx=#gCoI3sMC#b(jeoVK3mg^9j&7qwx!aGRY%^V(%P_7Fc z2{!r=3I!CfhAceb_PzmqdrNAs3YLbrh!gB99$!4ky1p5;DiDm^%TTzX(g=4;tX_!Zmx(LCu z4m5?4Z3CX!_#419$);n*V?Tfhdk$6Z*^!_!@Ixx#^g0kEjtF2z zq;zmZs+*P5b)N$F>skAmev*-ybIx8y%#(f6PqB2TiZnmRgFoR|1{t6z*#Sbrj{F-g zR@&YniBkD4xwl3(?F$2kxO09UFy4~CLsV1~0Eda~GR<|`Gc_J^< z>!OpUsRtG694ILE6TwUb;#(IwPeKm|LzXHwlRK&aZgHsYO6hnYSl=Smg z41X$y$@(9fH$d{$?xg`T2-l*xXtC`bJHI|UTt5RDJH8j~4*2MUj&0jJ8O8iWObFTg z;l)J4tkp7)*5gO&*Z(WCuU%uau3!cWN_BW2a~5R=UP3$2Qrra;8u8;9GBKwwU;9_( zTCpg?zOLk?2bu?4kRHiI(DNYVsPy!g0wkNJwtW*y4U_#W3SE10If%0m*m0zS&wgl) zrs!?`-0=qJJgsu+lcuvALI%o7QecHxegySG(1*$q)=M|9yfi_cMtx#rX_VDxMcs`9 zn%Q_EDPs4^8J@Q0@tudz8)WpCS610Y-Gfi?faF+Hj1UIj>v+=*Pv!@h9s5Re=4d^4 zU!#wXu}pI%Z~>jQOEnsKhY+2zHC;U|ea6#d5Z}`DgzT_7mRn@BmfN0-GDH&y5w@P6 zM?>H9+6o@!9KsyYSG0wPG)KOL8ad(CI;rs)9TZ$35lhP5Qb2;iQHuzX1xL7_Oa2qg zCD+=Tzr_B$HLe{jME@cOdOMTQad844Oda-)Cb)Nbmb)t7uYTaNs_~a<Ag~6a92)^7Pkf12D+ce4rW4 zhAZ{LpONoFo1v#NuxO2=zf~SVj3h(0eFb^sgQdX zohsvt#*q=LM zTwPB)k8eu*&4o_0gPC4RW(q{zC*G+#o%8KQ*o)iPi%B81g1F>vYcMFZB;0m{TTT!m zyE+{Vi7LL+!gHAw_HGUZK_Jz-cc84)02XoZCzVeTWrm*PI&`vg8AodWGufqV|F<-F z-Z$>Kx_yndJBkHAytMdmi(2p&nWxx|@KFg727nf&(_2}3{#zO?AL(z!s*ed85Yt53 z5~p#k3mIuH*@O;GV0BL5Nv{|SptCb9@;ENO%RiqHW1rA>?y;UlhNaO}2TxD(Pd300 zOAl@iH73buDsp}3C=}OIB>e^fMvM}FA3{x;1R}^Viqa6;hfh^CeeKvtEA{2=c}mLm z)*BGjwdqpRsy&lpuIK6TL%x(Yij21D{Gp7asG)x|(1!OIQ&HMmY7DY1zgjWO-KKc5R zH#G|o@~c$~*Rk+9&mq{TfqrFInytqJAT$>hfwGXIKt$4*JiIkPA>{zx1~MXu6m}I; zt_0|A1*?ey?{Jxu{1<@zJLpG$e|7=!Y5B53dA>m@+MCy9 zDr$?IwMjWJV^7ppFhe;EEaR}#F_|Ocovs7z+N-H^$VUWBAdLDQ9D4X&>I(`r_`>XS zCIrCWl1o4XHBag?)LQQ(`hY2hx%^1xh`l)1L%0sdU7OsM&3AQcp+7y=g8J0wf0DO( z{Z{+k_IGQA((;4C=K@+CqSO0R7?#;s4&v0o&l(vpclWBmQ*OLaz7gS{SZkVX)CwGx zzw+iVznTGzv_n8596EyG2Jtkgpj>e369ZgGdLTEWBxS$BXH@H2X9L&s$v4SlmU55B zV->GX!sR=67>|PP4I$Cun5vvGW-eS1zt6ZPs{`_5xC% z@6!6H(@bjNftC(92n?~q@lRZked`{ewwb>7XHNb+Gqyx(X;N+uWg#j}CIo^*a+5__ z2m;Y1Abn0xZ-<39cpm_TFd&tGa6IBmHu`e(sTnw@vKd2GM{k~Udmr&M;9rqgq|FS;;C*8kQWm=>pz@K|8n5kODtvpzBI-l z03rcOdi0P$x?>h5yBF_wOSZv*7oZ{MibQd}c?r-z=khHEac@L;u|N_zLf1eMYJjJ; z=IQg+Zo6MZJd6Kd)@_$R@*@vO%+??tkf{JJp~osfa8+NIE8rU1jsz8IM8!V%aH^wbsV1#EdB)q!TNT^gNG)efHoOfWv%S^Mc?{@+V_D7Y}l2B6l6jxpouq5A0;qxa8xeSxqanRAX z!NnrQXYs-!Zym@c6jn0y9QU`wb8Qh;Z~i@IXztL1eG@y~+Uwe$l!uYLyt97c<$Zs* z-gUT79iDz|8JuuT+}khoalafEfdz{r=@dDKDB`ZDI+297j^rcC%Ct!Ghi)!hT+|X- zV=rX|DB(3Ba(=PIGaypXEw!(ZDaTQ%PBysUYp7$QxzS{*nXyhI713YUvAd7pB3J3J z(e>&Z*L$*j2FJN|-!3-opPEfMRe=esa7MKqix}e^oaU^$jOEjPnTzdWuebkU4eMU7 zxQT_{{e4N7R$E8k^pd;4lcnyUubUFT1CAIbh{HEjRgn#kk<6fTSiCilH5hMqqwi>;LnA+4$1VUWAY8jx^^ zE;2Yx0*HK|U_`e7T&;cMPCvwzU zV|2?v1&aNrl%s)npskuly=6PN#{Ca>rImmYNr7M`jd-Uw9H&NK9Dz zYiRt!J2FFgN9kmM_<<9!k?R#HO;pjAB;eXU)!7U0Ws1=`vtsP-@`3LL9F70!iiBS_M+^AicT^V-p|3J0Z2gNL6i(6u22-znGHrbB-hl7;Bc30dv;BG5cASGvlh1^ z+jIAj6Jp$D|LYjE^64(hYkngBnr&Ce_`qe=XO9I%Ed40MQ;hXYYHsGTTE@b;G-z2! zXU&x|{$6&9z!FuHL?Xe3ykw5LdOcrC?nZ8>V7GX~{2TA^2a()n2`tbJzWfIzSD&<= zh+XSrek|TN5DJO_K}&@Sid~n3l9!>rxwNDfIxT2w&>flS9f&;gmpkym`Pb&tTyzL^ z2%P$y2MgbCO@NLz6T9{|T}$bk1LS3&F|qG?@Gvx?afcRlhijP{k$=J*bEbwP1?I<;UBPbfMOJvgi?!{x*w^VMN@szwKZAf}6J^a#~5w+<|hPs&%0$r;c}GU6KW4atOj zN}FkZtf`9?;2so8ZgPL9C zZ%!YhbLN|joVXYH$?!l$>uR#vxqjo{pSx$)DyXf%kB0F&}v-XM-v^zJ(2!jaPMvH8c=Lt8_^Z{U{LE(OD9yh8`ZNM{T<6(%zy3mr2 zc)r&KP!fT4y)V;||B@#C{aSGpIg%szq5|OzrS5Md?L!ueiBRtq!gL z_;f^;>~cq!ZjgUof@>E52*nD<^YziZ9NPn9>K9$P|4Jne&K)#%xH zd<<%p8jFKlL}fItELgdSw?p2x*6j$z4znIeK=M`&mO z|3n7A&Nni5zR&Fu9sf1x@pFtz_!i3l>eS~89vyUhiYJ6Mbh`2^PrqEAj8<1Di!%?t zojj{F@}2y9OKMGDK*cl=hUA>43W$v-BSyVNQ`@`i=Is~oHBpuy%E>Telt(Z&(*kVJt6S(?U&kLRj+5okQ1)BF)*p0?4opsufQqguQT&_zlRaS+p&vFw80Q= zz6qE4n_I?3@1Mrjwq^9MxLx=qz8|n4^`9@D1~M&GC(T~6tfJd?{Y5?@L3D_2oL&DR zJcJ8?(42hzyY&NteQQ<&+Qwl7ra&V=Cf8TGUe^cLlOO+Hp2u3xzvON90;FztmI;17eY44jL>3-sxT7Qkxe3SeSieEtFrgP|y(13tMw z_9%4rf)`=Z`HGXEb8JW;hSDA3!XNA(CSH6oTcmdSc~iD)*_=%6e1w z1hmxL5UI|e_q4#x2@@el6*lAH-M1z?1yxsNuQl7>nF$9tA362`Dq7$p(>o9K)kRhv zRkYW*o}pa3_BwJ(+w=TZ8cypJR$vOP0t3*pr*VE<##|H(b^`_MCCTU8$i}ckKKq?nDAm=;&IN^ls&$_OWhsz z^Av|Ilu8jwH0;Tb%X4^T4XEomD?(hV1l4$6q2&1E>Mc(!TrdLXqGz@a5P}vi)ozdo zD?%mWKoDho!9Z5vQN*PIUktR1zsN;1P@pYuBnuHkY+T33UB9}<$7_~h+9Q>5DceXJ zJSyv61o9CwQ{yR6esBq^)8w%`x)acJbeg*(WVR-jr0>ckJ}|_u4laD?D}K>VoUlu@s}j1;?c zE=!1Nl#}#AThL@WDy>+w7PMQw zAJfQ;OwtxU76_!w8J`%}K)s*VmHVQ5Q5T!Jbb|0a}f;M_q z-MolYu7OD0g^af?5;rU+#HJY;enTW+J=d$auj<`1kFV6cv~+a|fG;xj8YYuBrJF;W zr+zuscSBd*;U!CYgGvx&02Zeiqb_I&4G&GAB1G(UP)(Q-dL718$__GnbnUq&tM(KA zckuP@-@6c>zGNsg3+1L`4_PMX2^2sUUDiqB+{xC59pBUEr^R>$oq2f4CrRemZR1S4 z#r8<+KQxBNWs^09+WMg;@oOkWWR9woJMzib`}TaH=ZTls+4JM$<5{Rbw{|j6Uj`4; zYSu`*5>-BKa3)efkwbKE4h;!=LvUP+$?ZWMPeiLz!o9Rn86zNyv`I1!5}ZlRS-aF3 zWF}xrI~<#M2MQ(jZq3Jm3o1EjO$F-ZAB+I=ITrOjbB0K}P;ak^A5l~f#}>5}!Kg`m zDqwonxuOz3V5Lf&$$aD~+YyXZr@!(U>CO1EaPw$})z+0!Uq=4-*wc z7MV+_66t{2&M`(;ZJ&F&qn$3&irmKkd!nU_%7UgzRD4fjFOfw=?nD-4LwBsx7Kj5` z6C(wm7qikjKPHSM6~XP(>`i&4$abG=q}}gjtpjsC{`pRhpE>9C92HaT)BO7-`859W z9^OgAOfUeP&Y%x*))8r*rj9m12nb?BQHqU2hl4l|qod24tZBn)SMzx$cXl)w^$yBQ<~7hcs}h962(y0pQ|B*)@;@{3j1F z4&}E`?|sT+sz(zaB9fNUNE=7<`4XzM+iNC4(~}LY%Hqkr06qqIAu39=9Y|~fR{@^+ zm-#&3Ky>c+H{auq@Bo1F1Dwza5S|ewf9XmC=mP*vB_l4#&rZwQiq(^$ewK98KH9NM zrH zCm;U)vigV&5IqXj{KRSik}#G91R_AUJY~vVqSwq^5X4j&c=8TZ$(_Ixa?5q{{Sr-- z)9jyi8hjTrsDH@>4;{JzJ=I2zeLrojIHfRFhNxILLot3&Mjg+xg;a4kT>FWVYy3mi z6Nm5H9p6N=X56&S_Zo_^sKV)~iq@kySqcU^mV5L7N|1tMA;s0JpeeQ??HEMR#UABy z*aMN*@c1FBOH0Yg5Y_~U!B3^_C5J3u$JOMCA8x)cqn>4OU&~+T-I_<=T#H#IBqW!# z$U?sIf)X6h52{LQY3@FbGw154VY5}7G9*e!8YG9jLxUu%}DXY+F6{JxK4$2K#H-1-~} z(SEPDT#3*5s=54~Ww)^_A44NIh|JKz2>5_$h@o<*)s>g1PH;qea0(KMP&+9iBj1pK zyb7>kOKiOD2o2cuf}U^k?+@Leq;>0E*LK}lPhGRJO4Qm((xy?25bgWh!LbwZK+av*8vp0ROLxz#_L_Y zK7VwuOE{XAz_gvwP@`fa(qo~c)8SdpUQpwP6c86izD_(x{el-&*fb)YFg&!Yf9vzp zf0n1gi_dG6$5zW|LKp>`qaexE&`~<6K_0-%jo5THP>}b#R8F0}V$fy^}I@4|k&b&Kxf3);5e?3*(u)fySU|%5)0mVG6HGP;`Ppus$s0 z;B^Gppq>4k@1~Eib|h!C5BS5~fDL*=@FzJQ!b@SmqPVz2rr=W>9uy}mpGw((;HNK< z0iZmBj3W$~ej#!f>_KzY4yCnSfItw==j9q#3^F(a$9EiKUbn18`cBp& zIpU{hesHZQND-nRA|rNiZ4?f(<=Hdo>T7=Q|H89z0!I^a3oJ(${6^q)L^8YXv0 z)560l!aR^(bR};&T2Rh8jbl)=skM6CCB=d7*r6As23vsLx6$>k$Q1gqCrE#;VhW*C z(sw@jrV!tX466p=4NOK>AVwWm|d}-SPvYJg22RoE>FflxKD}yvHc-uG{ zyM``Ttk5gMpHp2LpU>CcSef&qbC2-y?Ecp3g@&)6RC@v+V4s0VnEV6@H=vFRv>f%J zurn1%ttBZ|yI6k8b(b{=b}{^qr#H6|4IZBuuvQ=zAUa3@DI^KQ!#2YB#Hc`FtiS5A zTY3p$n_l-3kF$qPMtK8d@#VU4S+jCO2iU9lCH9d2wLEiV4?SG3f}1^PnWwlrsxvGR zwh%Mo0F5tnK@7)@s$vMkv$_G_}*(3S$hAviDmPJC`tsPXTHd z-O7Y`&)m3Gt<%*FoDG9}BaMBeq_T{Tcf`T!KqFHhyphQX9y-ULZuq$Fqf_tj<{f)e z#=wHp!V7j72774A?2g#R7dB(CJdZ8)At zBlC-Tl|fgAqqspFMo944xXJ4_8eabl4i=?=K7|Zy`>`nCZmrHB zg#4Jj1^vB1cdp5WP&(m23Mu7r@CzL;a@lXaxlirs%knmX@TJ`mAc%89tNBc+j63rj z%N++^E$-|KY#B7%13m}v8(@VmZ31D;AFSC+NNHgP4uMmaqjDTOmH6zLlGFK?f~UGe ze&a2rhsfthSVr-F9x>WiuPvCTUXEoq-UFNOO0?`9)QeSmM zP%RXpM2+r*94=?`D(HH4qFd;T#vQ=~fJ;A1J{XGTU}r$o{Tvh9M*JEPXO$irpU;Y% z`=poOI`_Y&^+1!~Q}yF;!lza`cSnDa%ijRx-NRPJ8l}U*2;AjoN3C>PPy<&akl>7#=VbmQtaQP z;Ee-uFa@0xAp9utTc_t7GSEcWO$ME^R$Pk3Xk=&@(WZf;dmMpkF3bV$7Vhi<5}z|5 z0UO}NkLc-(uf2}kA-mQY+4pi}8s^KW37Ru8{m=BX;Ku5QDWhS?$&{&=freU7ahk+A z8`{;V8_n*twsQm`B7DM%0|iWsT!IlQP-sOEu}q>IdX6$Q0H>TIKh8y~G1rp(Vyp31 zR~u#SLj0d*oP?^kBu^PsLq?k#2X2ZK!IaEe)9E4G+|)k(BnfV=zq?*4sC;_E-<^Hb z8;pit0=&Cn)&K!0cVUonWjn|a6NI~=2bmO1_F>5-jIeNJ2S=2NaK8zT%2A-HKbNvN_}i)&E`L`2Hq8(zuPot&4!JM=D2 z^7RUD1A6Y(Ti@>~q5Z2JOoF3VQRsCip3(b$wEx2=@XU8RhS2cnFEKQvF!0Pw-Fl3ny-y=Nc5BS6L0`1ni$m#i7V3ocjWH4Iyx~X~Q+I1oBzg85<4ZEVOx zs4Eb(w$;#mHxcS4Vw+7WQX{bSZ)ppz#`To)1*{8Pj^F%+x%1PK2T}bb%L1R!L8*Kq z7E+E)$-~mK9AoS(MT{~PLr=JXi_Q+-f_6fwjMEyLGsB3&9He@FaP%GnVwQQ-zf?D~ z)SPE!UtekrC@MYs6>Q+WpC8wY`YUkkuVhD<-_CpO|6bV&;legP16g6={s9Ddb@mfJ zfEeIL4REo%%JqNvSUCL79X}1n)YDi_3u`f0(K7_QZ0O`>@~`0omLr3GLnT4*KHXo> zXm)o_-1G_=^y(mXx*A;s^Cf3`v7?XTm$Sd%>Vl^^rd#s@SsVMx86bK?k3g>M7K=X? zQ(TVac=5^|`$P`k;dOb0Ednb4J_XfA(G*%OuSi`|^0r`IJcTN=oL}eamy09L_kVu= zUL$L6tGEB*T-7BTto2+n!~eG(N6N%ZNm}Lth4}SSay|@!CmvSNcn+W}^2PiQKobfTGE6sga z&nNC{e?{LC$~y4S9MK1LLWdU$iwBbrYRq!A>kUkLlIz*~%5M3?3-Xg9qX7`_}e8XK}%T7yzt(pny9J(!J++9V_@AyoTD3 zrk*OF<8(Sdv29a5(l%P>3|NLd5NuMw@8@#{KrE@BQ@i`w(-^x@O@9%VZ$LUQRAkEq zJKvJ&51`V0{P$gaGfdScvAhTmVV#ZV^zuC1q8|>@Q&^mZE=qDdHZj z&oPru{$HH#iBQN4I4`bRrb^s)lQIziI`y_AK zF~et%&-HHS-oMKOc#dxt26xgr&zluXqZB_(ZMIyJ%m_Qr=oR94ndW40S_gjv`2dDa zo4<(G&h7%wuA(2}%PX!!TIA25;~T|qdU&|{r{5Xx^e<72Q*ouYht`ahpz^3P?j zRl^gCj8$i+csYP_faCWCD>m*|wY^pbyx((8(t#fnZ|JR!8`PJDZEN3kYk{o*05m|V z?k^rbXafnmv4T%53Mlm!^1#9hv;RA|p?Bt+z!iz|M|X45zFV~T|9k_*PcA(GN6=h_ zxjK6{**RRW)_bbs04|KJcmE>~HL|;Sp3%AK%8#r-kc9P;k;qar3g+!LsJK7a znrBC6Mb6vqtQL`Bc8jBHNl`=ICp)z>z0r%rPchQ`u1bX8m| zqJ&P{@82#$ofzpmk0^donIX$QwsW2){Drp_}~X!&-GYq--}v(qYS%m zNlEd!9xH&07r0iPR@4q!z=R*Q8UqpZu@|!5Uww6v<=`y?grH2k)_XMd!Sqi3sZKXZ zt%KUra^jqOU#Mtud{>d3QVrmZYN;~}aMm`+At1szSG1S$=XUp^-N{MVS~@n|%P(lV z%tN~F^v_+^EB$=t-(d_HWLoZtCIv#=`6+&?L77b9T$~)VLd@HbY$Yv=XPmr4xy9)M z_#qAwkc~)r36CzS>~YFHIm!fKL6k(Gks12QAj+1797NwBD!k_$`uFpUV!cW0e3D3A zRx$x-;Q--F*B+}zhTGUUg{1~aMWt$X+NqiEU^yN6Fg< zOCTxCX|)aK*GUn&Uv7d$0CRawW#tEGYevPS>V>Yi!%tm%x?X*j034+TP&D(Ts&1Xu z{h|j8LZB>FujQI{UC{O1PMuyXul(r4>B|h-JQgr%C46ZRMo2xP4v>uLxDSi0KS@rV z-5jdsXlw-}Vt;QLK@ZuldeZk`_*{!?{f~VhQGRN;_}npM7siJ8e6IOPw}>3i zr@32XSM54}StC>cUd!rcOFNth$z!IWI87vjAdJQ76gFei@1qRtAX2W!?BhG>zT{a_mp!A)DXoP&qAeH5_xZvXtE95z39u207Xm;~(f`@Y zPadd2-QHk0~h8JQxl>+cYCXo@WS-p$~cLWi2Nw}g1r_1Th4fwa+ zpU6h^FSz;2oj3pI+mEd=jQCzp5!j;_{unQPq9j`o+$MP!r19EC$eZ-Gw}!Q+ZKHsp zku~JkU`kz?^dDPb5Hw13&Sy}3^C+w*>x?`~_(^TqxO zpM-=AlAxcUAS{m3y3D-*>DRNlom`y3B}n(^Ad@8ICs6C0c3fP}P=OZGaFw&tog=*{ zWW0_ve1vToLjxHQiGzVX31FjIzQ)A-vDl5nBOxHNytY@U6$8g7wuJD)QEa~!zJadFpaoa)I* zYOB2oTk}{!c8DBX2qGc=tx+`If)?vj47$SAqzL^wepGMpk;1O|(#vzs(zSA|9ee~f zHIx+9HYvJzsz@m5rO@DkY%51P$aBil2Q4p^#L~srDWq~8{38z?=o+-npDmX1rWCP4 zROOAbW`zkPmhzJ6Ik<*=Z~?^cV3g=uGJEFvG!nO@jBgGD*0{*<$?xU${`wUYG#+T6 zE0G|D_7~5Pn;zEWARi?tU43xFT@5a`W2RCEWuk#Qis7%1Y8fEfKz|;))QwOaV~SNM zG=Y^!?={M{4eG}u+bA`}84?>KS8*Jp@;apx?c(8_Q*v(md*O^4b3@0ck!h%)X`p0& z6~Gfr;MYPW0SOn9_-Ie_{beD$D`#!+K3x9Q!^@qv3c^76Iq&aC9bs!^jW9Je)M)U< z5DKmc#2w(#Vvehfqrd(BK4m_6=Uk&Qjv38w`X!JpjRXHup&A;lhu^1BtK@}?<=h%U zE!}tV*q>qPLmHHX(jUQ-co8!UHius@&t3Ej(2FoRxlx7aCPBdtEZ|Wpj&(st1k59Y z+Z8^mj081%7pKIrmV=bhgq)BS-9IyM1?>MlU7kJos6Dc3{2ZaGXHo8-AoE=|8PjHERgmT5fCJanpKkkd*pI*Ov zB1QjDNhzej6;F1L=@$z$2n*jV?vZi$T{=Okmnl@pCf=}fNgpbMzDXA!A>npW}GtPqV^$y)oF?8)t6*LCxXG z3&jrwRTRV&v#COrIVA!?gKM4@52X`4n0>!Ih)Sp%(Q@%O$UCJCehcEBxT&vl@pXG3 zwYqm<2n@y$Rw>wt5jghlx~X2O=cPXq$Bt2fc&iqviF zsNgh4tztufsTOm*@ICsbuxNeY7=j>Bv2g(bftF98nQz z6Am>H5LE>##hp)qHfS?ok`dk@-_R)rB#AyMIrWZ=HN|H2ov2L}kc0SK`%msItxm1o zz?tX4mSnzGuL&WTgMhO8(xd`bBu0xqLq5UrQ^prg(1?Mjc||mFBb*=QWuK{ye3y`cgMq|8`UpZM321m_t33 z13177Qnp5}D5xP+BCz+n*12XI2X02O0adxmoA=H=yMZ{lEhpIh(&xA_M&R?qKDqZF z;bZ#-9QK-h^_*^fSpoorivA?1N^mj2iGjznil}>5!OB3Y&82LQbxwsdk$7^@8c<+8 zaL1q80lqtOG=P9a!U%yC_y*F1NAwhLz#}Gyhwiz1BGfTa1gFj~j(w&3K8IDv7~tuA zj_HRcme#IJt{{xpCMqU61YCvyNAOMIDf|LHA{rcJFHVQ*TSLqmkXKPHSD%ghaHmIZ zy9tn}u&wSn>1JdEQla<$S>Ku{=w{qtmj<_x%lLaR1;@-VsC1^xRPHdw2qR_Of!oeI zZv*Qiq8r*lJIe>|srL)J$J_aak$Nh^x8wK@^aD5GBb^R0gD8cgo9xl(!enfx3XM3tISNn|DyO|xYuU$BTyCpCRkXq%IbNmnW z4w*5S<(Z1UVyT?nP)No5P}wV~KzqBoM&CA%$dOYEi!662ARuZ-f}}(S<_0b>1Q{KS zjWY(%QB7yRRUPm;$Rp8{!C`BO^&Fk2L}P=bx0Mbdi1OdvoMQz)aZyNU*Rkvy&z`S0 zcxQyf#;dtYc|T_`WLh3%@l;vS&=hO5_`;DBbtI;NPD%BGdqwS1uIsm?t=yH~|9QEp?4{*qhKg=0ETn2iW2h$jaU7qwG`{CQZW)9D%Fs}PW zYOSXxl52Fj3X;$tMgh>}v;*-Qo>w@bI=VZB7+(AQ{Cy9g0Zd!4|yp^ov!j>Gnkz~jRXju22}fd;(H&%I}M>XSD?iq*Cq zdf56w3*A*<0J!+(MNej*FNj4V)#gER$GXc6oSsfR;%%0#OJ_hsVt zcMo>(s&GLZS10*Cok$X+&()&|jzH21#=r_ZLy*H^7CC2HC?dlYh}yY|YS}?=BuBm= zU!;mdJB;<^R3EQa)w~^jmXJ6@Pjnvp5XZ|8?7S)b$1}26dsqCI^Nnt0xx^+2^LXJH zd8YKQc#V3#uXruS-La5g* z10;~5hXneDb*MWyz@1y;JVVb-SITowV&n)X62N7L)48Rkrd8HgU+BhOeZF06%_}+M z9IVMaf%(83?oMfAEq_n}-tqvuRjGCzJa~kmjK{&omB-%F4M(N4*!Fp1<4+y$OJ47bT>T{BL!JV9H0IM{ zpvVYP7^721-~=1w#ZeYSac9M|vp5GVr^#MjMy2jXU2GA-W$i=;KboKR?*?2S87GP- zHYv&p?`CV1jzC%*M)C}ZXUAo1=6JV?nYtT$QHEpDs8yAat8-7p?_m9>R;v0H%VVzh zCNAj$4O0fxMj$}&gMuIeWTpmZs#SO5ab7^yOQE^=%#2&fYZ=Ii!q3cPK@*0VI_1^^ zV6tSLt;s=vbLTz7GUA}rR)%0qXb3L22@B@R_hiTa@ZPl$!CR4Wm8EZIG+TerC-~|K z_y1T~(wE^=G6HtQN3?gDG^M0|C%c@luc}VfBQ?0lH(xliQo?lWpV1m1V59-FCM;

    _1)Cg}c|skGa?ND~$Cw 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 z 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�KI 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�f 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

    Cj!vwv% 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

    YwQTQ7wywhNt9I&?T1y_*&u;KOI z!TMULvlTVE^IykHh7={o_UN6kREOL8h(YxDYwAetGVQf!MwXaMXU?x9FSuUckyna2 zyaA)VU21<`wvsR11yM#urz5j;DgaP`xR40t1t6-2xpc7SGow0E>F2aarSyR9S`-;htB zT1A5gX|_KaU1;G!UP8M$uC5RNd3>%~8~iJC|19mzt6_Bxtu^#kq*eEYM*63!M!-K9 zl3jfH)=JRPtAk$m4h>&dv)39KZ%_VLa1l= zqe?i<&x!*qzaxyaIl!$fmma#^8}_HN@9$rYCX$C~qOY;3gZxtumA)-FOWzKyd#E4A z0%era#YgUBE*{Zw1+HV4O=DL$)7m3$ z0Y`VCb)YQJ?FowlfQHx{+>j3Behy96o{NJ90%BZDQ?ZA(Yt5J6j&ek>zCctvez-36 zuOF*3!`bO2NLFO{Grq7PrAwIA=rAsE>U=m}e(zIxLymeF8scn~{?!&{rKJsJt89V` zfAJhSp{qcM!5CmiF`VB)=(L89z(irVT6xfjjxJ}jpc~!D_hY^zRAYw6IKT4kLUHU9 z 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 z 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�I;HpROdR|nA9Yb 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%0DG42ghb_egJ`1w{wNqz)c-O2NyPaN!q;VS+IC+ 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�Jp&b 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

    }^et-~ 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

      ch`TNxG6Q++RmZ7m$!Um*-HYn=JMz)aVq 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�%Xz%g5Jv>e7ww0x~7 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�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�@AFwl4)ZDc@8Z-{uUhZ|KaMdc~t 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

      CYk;fj7yfTb*g9ufvsh3Fwp4Hgpn7_$ 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

      Wkt$qcBf0FmQo?hMoKOcimY_65B9ykD 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

      hG%?35<4%2ZnhW%De|B_c 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

      P0eI1v_s8#9{R)t|DLad+Wb;OU~sp;S-k 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ξUfr4c8vNxnl4H}k_ico+ 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%0D<|I&zpBK?Gj`*xk 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�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 z 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%0Ai;(@4uM-L_ec0j6yfl9M9&k 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

      bPpS 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

      iLZ-e2q5v-9UB;Cr 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%0DiuQB4QpK^~r99t(fwd!Z4#EsPA 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

      Z_fnkDT5z_%AfP%f_9bwN>vcO*# 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℘pTE`8RAonIu^VN)a4y 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

      $6V%@K!S4oqCROQlC7IS%CN7?R;28#+%QiN3sg zTtyQ0`lLCH@+@?vl_dHDciF%rx)e?klP=wm3h3sMdK3>IIom1Bz !t zyLJQ?(D-lo%>z?3vi!sk{o{3v=uyhXN5nUf>Y?u7qPL{`6MyjtH(GYE;tUOi8_1>K zr1q*h#dXDRcwewO+wAvGadmW>$3TF%BxL9z4ZP@w6w<*jV9=O_M!ZhqvUGhe2uF_6 zV|?R^vI@~aJ=v!$fQ&qPajxWg-;oMN?-pkw&0dgyji7G>h(tHq9*RC}0W3lgw3^1b@PR){ zm_RTIMjFLNh&vEkIpE681f4h$zF*c$4LddRo(sm`wn- zp#5NWCU9(h;2$CkA{A1II4YF#8UGm1h%amscWe&PLl}4h4JOS4nhk8YJ2(PkDMz*$ zd=Bg3DT&%q;@-s?fJg%xfJ9&L?5?UH8po)Iaf;*t0S=RmXA%>0N^i83Y(}sDskNDR z+QWi0i`#QwFAxH6h`<9bfpH>6>iK}+!X38*dNi;0vKErgRQy4_-!Qu@WIlEE5aQELpQBwLNkvPx;KtBOZn{7u_ZdRgk%iSu98q{x4CTGb=_v!JFnru1=tMU^=jc|}BH)vywY4_?5H3nIZr>3r!2J4FA^o*tVz}*wjw%sxzvdu2_Q%6 zhU=OruFX31fE-zenjAhxfw;GCNnW5v{dz{uh11u#NvZSMRmhWLrB@d?T!p~4Xvqq- zKu_Kun35{wWFScJgJc@w(;Dd;6Noy% z;wg#7RGVlo8&CL?Qw9vRCcgIjPA-cFSO}!ZM3RrR7e30%L&wRCHI)_WB4qT`9h5+Q97WKCe^AdKqmm`^!ZVUk z%T~Q3mqa;A&LfUGx!{=~FPSSlM*0T#GRM$ft}HVqB;9T-cA}P6M4}cQN=py z7)<6HL1I>Q#=ek=y^BR@M@Uydg(l8)dO83*uASf<@W&RLS&H9K8zXW-XheJ6X*pT^ zcse#X%^6)5G!JRdTb7H`mIR%Sks5S@P*?_q?;$m?HjgL>xJK!g-{H$-*8z5|T@eLS zBoQP7STJRTdS`$sA_QTaJ3@$=9RcsBW857>aYUt6PwBeaO~yQs{F^H;^@WgtNoPo= z!`$2hlx0$?-jG-54&y4e`Zw>KBKsi(=RebRMrpbzR)EzCksfxmIljbOmD(s4Rw&2D z2THBIQ3u{HBm)UanEp$P1t(0V5~5B+#AZx84HSliQON47yfK~2l-LWGTv)Lf<6%G# zX)iR_28(%pNzSQPgfi;T6)X@V)=W_u0);-)E5fsyc$aXP`UM7aO=PcMWI!k7cW`)l z#6ySJqQj4*FS_pCcvXACK#3B;w_~KoAO?raH)1mO^NFkny_Ni+suq{7eo3It&xAaK*MDE{nY6+yk|RIk^k4v0=iK`kRa z4Siv)UdiK}GV3I9pqY9j5By?aBr`Ff_#)-U`8SR`{YINx(7bD5)s*o=)1( zTH`CM{d6_8+g-pAQoG}m`bubzVw4bDKiJ{}{N3E4g2p7GgL7&Tw6)XE>NUYq{mU!n zU)t$q=8B%@T4UXU8m5%cK?ojskxt)!Y$U85fwFwsf59sj!w`=^_oBhD=Y$eOF(9Cd z$={+a1Q0OueM^JZ(h)U3)4&CN-VNrG5=6^R_eoBlBn_AitC8Cyol(M%V zuc6oWtMe1m%Ilt#=uarFW$uwRDc?^1*_bJ8k6&RSo+5qmDdHv7Y)T72lsVxgHMPAs zwBtesEuqo+ewsv5@DYdSYY}Ck&c+>{K<`SLQ+0hn_pz4lmC|BBy1y#@D|%yMBE^i#(=HbH;Cm-# zqm!*PvVfNzd>{$KM;HM^q85KhzIOm8vAryU017rD$9Aye2%QkTSNQ`(YPYbw03s(_ zcOWz;B7i1wwOE?K-*pZPAOUlNM-=s&3&;*q1PGw%i2F2@4!ef(HL%E2SBn5|7X(c@ zTQX4$qX+*HAMMknIe>?JcFd=GhK%iP`Po8u%L=)>k5CWjpg{8I2@@YOO~|(A$8uGl zJw(5}lgJO8o*$D?1GG;OQ=RJ;8kJy#>-NcEiqA$DK$oDb)veBplwsTF@>8ve`{)X5 z;uX=c<~Vi-0ZOc={Dy?`t4X?kto77esx;RF#N+9%UC}4 z@`#5S{YCF~WfVB1?SNS!GR_$X%#EW@TVRy&BOfZXSZu$XT*El6=L4+-8Z9my3XEeC zZ$N6m-!W0BceJ*oZ`3_8xT|#AqZ7MgRs>d+z%)t^T1J8sA|+3o1xL`TKBTnPt8wK% zvMNW@A#<19QI`yKA1e`+sxIWFMe%;%Y-p}~Wuo6>D#6-E;A3c=`(-!t%t_&jU@ zesn2n=p!vb!?FiKAGDX+&-R>_zM1nGCEd=M6%Di%y$2V8jNlog?{Q){^0_<&uA`3> zVeQRHgp_T$Ari3OB?n$y`f=Z>1Y)b9?W z_7FP7k1-Q_P&Wt@3o5l>+gl?wtw>pHe}n`*#S6egnM*(<#*7Vq?)ktmnM{iP)O|Kw z)iRwnOA_}A40*X`k2vw@<1)4sn(Ce#DVzd5&1^yXl zn3WEk70TDTaBK`8HR22cNWr-EY@p8kWBOabSL()Dq~0P)W5W=&=))x1eb>l-){`T5 zNibATu_X4kEb?-rGskMgFefhqR56U`it8PSi|5`Pb_7U?R%1)696VrloOkFLsu?QB zm50r*>OLKr{YS{tYTVl)Cxbt!0DA!ipMd5R=q9C-$p?u;HM7mUYiG$iFt-E*Xgn#k zcpMNM@)z)85}9rNZu@s|8f??SvqYeyM18M|r)Zst78;J-INfkp`MzWr%fJF=<+Q(w zdc+tAjh{>t{xWCOeLa#vTLi0g_AH4F3hj6I6sght_!r5{Sa5~Dy2l53+6c{B_7p}$(e3l`x*IDxaexoW zK#urQ;yq(wb*4zfjHJ!xEs-lBLqImuD*~Z7BIo$;Gh(GVtRO=V9?Sa#3=&jzSbuwo zdEWFK*C^He!Uda>$ke}jz-K)QxC^f27X_1Q&U_i}w|XT|-cTk1F#xu*IYy~K-h1-F zn>7N3BZN+}8t8_#HFPo;(T>SWj;G~|%HED=V56@g2 zEwg&wXMm%Z#td|7>w_x)AK8Z}LAx(TJk9g?QS#;Jv>t${{8msYN_lbaQ zg^uFNHG6w-6(P8~?t!`jz6@6i{cF>fdlz@sr-=iN&U(>a!MW8|<*;YSbrWhL?$dJ} zlZz<+V0IN$*i=M&u8l}FRAmM zF4v*2#72wTRBMWbN``}Wztf!7<}_ar3ajG7gkt@ek1&UmKpXq3_FY>|3)Re=*oQOq zhRO&Lni3{6wM8Ma>zyf&XI#~NO=gv?rm#j~=908j7VKpv#vr2ZT4ka!2#xI7zIndO zzAVuSV}aDpxdRoQtit058NFy*^5k@eY&zd1qAC{>^ophQXb^87`Ea=|u@jTS)X2&8 z)g@4jFF$lr*nGiP>$6Bo)nyTq*yq!B)66L(E`o3eDbz>h_EpxyL^|%OwKsjCU?Ej( zHkd+0LS9d83;D0bKVU3fi;8B{4I#Fd=8Sn%yZQ`ubHrm#Gm}K-hpAPGxkX@VAY+S@b&)QLvf>cKK1?<62Zz3+fvV5M)g}%W)6MkIKt0cPm zmS7z}zoKjTJeMoVDtrRebtwxQWbaZW_^ux4~ihXI)4@1;IZfFB4g<8`MQy~Wq z%)?I*#fNcBX)e0`NO}(?TEyyORk@G~XWl+Nfvz+6 z(?Y{1a!NdN)w)w;K|q*akd8#G0-X0`Lp5FyQ(^`&i|J`D3q;vsY#cv8EeVsr1qDup zRpuY9!x_`gr@^LPm764%K9!;LG@Umf#=vPUo$OJmd=|02*PrqPYUvLXUEAVgbF;~! z^z>VN!|X@koT*gz(2bRNvpGgTVpnpGZSbHRdKXU}%A23-!0$~Muy*@de_xkyKrYya za#PkDqM%N!gEvJ!ljtU;#HypBs&onEV3+U(zuR^i@8@8k?9%%nf0Dl;p$$+)Rm;BhVlhJC9;W8pWAc3CVe7HlvWr_Ux@0F$_PBr&t`;@ zvwqw^-DQO+N9lRQQ`aR3!orAnjD#`hxG8cA9p~IxX8MfdO`RaTZZc=P3{jd_*YXMQc{&n;W=sKS!)IARAq`05dU7lF z{Sx(R+J}_-GT{8M9N5lCTe%ygOF=+C2=d|>7qhl(&jtHIs-3T}&VE10rD$3_W+WF- zRV3Hbp{0*F%=(!w*ZMo-Fe5UV4MU0eSRV1vqqXR-f2PZ&)MD($JTf8#7Dsb~CWVl! zMxbfQ=X!fzwL)LHKBlOMyWk2VTZYPdL=?X#-ZDDVCH9D15_7^^Mlk@A0IdiD2ux7S zSvs~KgMHZs>9=e1tXUqgw`R?7q(I^&z4U=hg{1`mi>Zgu(VeA__)6o0sPR>Qps(xz zx=$ry&;pfOV|D2)@zmlfgD!#|vhww%(r3LR-LNLAhXuqDdh)e)S?zze+7~P(A}R|r z69QMVfK6VfpQj=gD!U$B;+*0r<8GXMh6~Tdy=MglN10O@)T4UVs&s~oo&26XFI8kH zwmROiBf0cs8nbQ>dZEy81TO^5;*m%eU(?Zx&NeS$y-H6@XSbwYl1uwcm`PuLViCvC z&x;)rD=~Rdjg~Cv)FUfn-Z~>=?8u|OlCpDep|9lHmx+-eJVG9AZ%N;iHA*VkQIB1B zj%T*`3U{bt`WYSh=2Ekr9+N(qku+N7=7RiGrs0e8Zh0EzPjUC4cxKBxWOF>A!!8k? z&%0fqorx%O&{40+oRiEE>gpa(=YA6-?H(Gk5I1nYMLI$`7HEQsFjsh#TJfwFh{Jbj6VgOjN5@`DU&(e+0esr<*ea|D`QF+`mTpx7Z@LG5%b#X`p?at;vpAbpwX z&^mmP7GyVV3kxEMjVTaKz~4=?n~_>gTp_N)wKZnya(C`hanUp71eOIs*&1t`#h6H- zoA9q>y?*tE!YWmF3 zCdCG9@e?zHA>Dl(CiNc5XMOv=RV))B4hwvT$)2AZKU~g&tx$Cg-a$on@*pKS2Nkc_~@m3pI1+8eu%C zk5x`+yE=m>JiT)joV1auVP#Tiqg+l`b?_1<&5{NQr>NcX^cT> zTp)D5$B6#+r|!?)&*^c7;)nr##`k~)@%axQzJB|W+=n@1KeNOP8W_VrpnIeV!S{>scTzj zPB!OBGg5_z`J7Pfjo6aOx0oZ+f6w5dC}KsMj{&7&Oy(aO_ibjlMQQBKewdWdi-N1w9S z;hKM3__ik#la zeNRSG*`bup0bCpEg&Oje7+krQt_={GPuG&VaBc*0JzjToP1hTv<3Bo3 z)^P3BVrW9m*~^%(r1{6vg%d*S-k5@Bw0?&>UYQBNQisIgfS6!si89Eqr(vZqMF2QT zGCa(WB@VoGs@I<++SmyB6&BDzn?B+dmnwSpc%~7AQ8SFc0fK=Pi@P>)@n{BQT?MO` zS%!99tjQKWi#;Zml9DcXo@7Z(0@8xiU^e`xSCN;-9gQvN$t2yJf!BLm?*3zRR9zLR z(Co66zkQPVWX_Os74GmP8m%V;HeME~h^JP6HSxI}+$K9Yz`7_$oQm==Vu3P}{6#WK zVpI`?#$V+AnPk`HzCI~(!M1^XOrilB*=iG0pWCg>9fy1cv&K80Rd?t^T9XZ%=Bo7G}=)<3ffEX@>;;C3w zk50S?rZTmEJJU*g=4xt+tc^`e{!L+-JM_HjTAEG4p`%Kn$<8S@(w>D@{A#abW|NXd z|9@9&)X=fvf5xp-@V|pmtI9?&_*xqHGN?Ino@i;&UJgbh(c9?mJ9BzG4D}8{)MQPP zdtvmHGWb?QKntXDc*C3OnLIt2%f>ooL#9Nzw~+_+9F%jQWD=(;*DHBRnkP7OO=c~` zR^)&ec_1&C(>--!He}BuZTuNC{g>6uv^y=Mx9lkh6^&lS7 zg@)9ZA?HuLp->;smGe~h4DG&@%b2}WXld+`gy=ZwKJ7E%y?fK1JN6ArUUs^=tc!p3 zigC~0H^-h7vVkH7ILw1S9NbGF_Ry=Bqa7aj#xEFVFeoM&5LJ{_KyAtMW%Q1^zb(}> zf*FcfNDR@7)fMX5U90FS+y(|(CB^f9Jz1w*3bS;;qzUOE0|GHwSDMq5>*u%+8|hGh zMgmh^+qeo_v4kLZi6wR$ziN6=Sb#K1BE)=j-XuLc^3+mUu+q-=7~W^JT~ytHDU6XA z(g<0}@=y#(OUi`Z$=pQEa%2e#wO-zX3nWRZ&695KN6C78fjG)7ILu+zJh>J#vl#`{EzQRc2`&k8O;MHsfq4$^oNe_Q7Pn>s>HP2s_;E$GX%4L#ShgMf(i z=~=H(X)=A9YLR(U~lb%eUv%cKXmONby8UAZnY>CG~f+`#XuP__^-bDDK^w}C~6_+LyhU^ zBN!cO& zr!&Y`;zRtQCG=&sW7fBMov5$ny&y0X<%%FLbc!li)SQ-Zt2+CfKSM5p$XrSX3*@-+ zbuLe#z&AXfPueT7{ZrT%dz4G$$*V4cx_0P!IHNUC7WdIK)uY`1*qFW86s+6}N!gNCc3a3^Gn``FbO9B2)28W{=GIV8UQy3_mP;tt4&v{|2VHI$9$=`WFM8;m!k zH4-DX0Bj%zt!g4kfehls%gqzuk&`O|*M*4er#O*l`F^prikb@5d7UVt^hQMCf)U^G z!gZH0&e;N&APMQvR_Y1n6TgA8a(@fb`fc>U6Ay@YLhjIcMtE3OroS!8JH&_ed=Vv# zzXE$Yw1b=EB0|1?1y<3Quf{jZm$*;Xb;f;)%4fRXq2UAbk5ajbMCC19Jx#F|{@Gkl zo?0(>p+zwuQ<({d_y&nf)1mQ&vC0{V4HA?j+NU*ipr8rO6&^&C?~mN|U6D~jWOteo zeny3|IrNDi;zB(RivEcWrHnXL!l)kCh=c)n&MFsTr7=W<>=09EVQrfc?iwRnrsqI_ za}07w+h%ro1O&ecRdo#d3_kulI3bv5Zjw?&uL@B7nFAD4N|o*(#tNsh5r!{2A3T`KCf_48DxsYQ zHcXB5Z0%kEUCCy=2OEKm;2EQ5Ib}|WkTHHkx)AW6ZqQ4AzGV)TYU73v(TZf9s}aKL zVG9LiIuaj3{D6A0HTTgncPK9Qg>)&zn!eZ&G!TO>v8MEz*mJzk_CWfU`rUyV50WzF z)Br|T@`1`p;e~SU+mX;;;ZCMPF7%IZr{&3{wjvl&02?5&*b_M!@WKx~A2@13AVq#?r)^J=ZMOA7dvQ z3iVfaD3eQHkv0h;EiP4R1ESJ@f|FI@eRbrhdu>`YY9`Y?fZS-gkSL;Hf=3|R4ik7c zS+DZxnH$B?4kZkQGQ*Pq;d0)@09p}kC3pHY{4$#vPF|V%q>^7g z*4aVD*CQfMgI3K`)Tk2pDJn`hD*}iYq`?VM73s-i$st+p7AD1C6~i(a!Dw&KY9+9P zBm-snWKKfqDTvd)ynaN*aBSz0=PbR%v)Ch-5#(!(P*kS*Ie8FX7eXshe#3uF!r}89|gnHl4AqtI(f92c_ zSr2QJ)1IGY`*ReJg~2YICV9*(OR({X`={#8rVbv)%^(vLEI=?iFNECLF-O3FemMvf zIT;=?9EP>OU(b7G*lCxG^$Pn+B(Vo(vn0T@3mp(11*iiPC|)w^Z7wI?MRz>+fflCo zPkrSI=Te946MzducngkLttBQZ1RM(Z6jU2RN z)?6W3HIWchGWRoxm8Dj6MeHhfMP}@(sO&5%dJvP!v(1REaD7)tgnZSwMlAcq^sJb7 zu@_HH=@{cwGjbYq3bOI7El0Y-0Gev)t1u}&nd8TTSSW5`RkT)v4O7dy`HC#Rz}UyN2?@XUUduS!3#zub0l}bZtgV)P*yx;rg^8c)Cn_ zLmG|%?)yYozbCe&`;gjGXbcs@=wnON(uc$enO0 z*HK078_aLjTDYkzSQ(vZZcw3+{eX!zm5k9-eTlDiZInr`?Xp_qLv4WSSpM*p{;B(n z<`#eu#OT<1mV>3OWDXV@^gFraxNV2jM-ejbPruoA=jFa(RJi8Mw7E_;uqF?=NQeI$~_cA z^AJph%+&NkQOVeZ8zouQr^s%0WaPAcJjU!xtm)3E2KZsrQT)Qj^W7glyM#li@v+<+ zQaOk+4(p~z>}O=Y*;WC(lau10@aO@RCPt31mx^{HIT=@`6Yor_uOHySw;V8M2g;ok-#g`OQN&UJaTl9%OzTvG( zRG!js^JUc`aSA&-L|}lFY!Mydxh{xONOP7p;wL7OkIzS``hhy+)u_pYJ_xjo_ydS5 zVX(>-dAAPj1gfIY2`lLu`xJMR=u^GiXGN%6qu>#iI;vE;(>@<{~dwrm> zcG5>45J%8wP-Uz|unp&=Mm$F~o@tUAd){(8lEeYhjA$#g^BMmb^W?NzWa!8*m@=`{ zf%QN~J#0hMDtwtC0t1PNJhQulan>UyeT4Hud50i5WrNWOl1k^B=xw;)MN;&XlV7@T zk+5x04*oa(*B%!~R?dI808t^nfUjW)hN5$~j&7%lLign8M2)lUKA?Y|&5+Dj3gI_RB;Ue3sq=L5~ zB8Z|!E{uR)W?k^?)~pNmIlvr}N;)*a#sJqOGTO`HXT9)|rIG3+%0saVy?3PS9E{ha z!8JWKjH}esnFMCX$L>72#$}jy&^pli)5w57t9;xrnf3D#a+1_VpK6K=1#OO}pA5wU!JU*;uJ?(} zuta@l#&+H{+akJ_SX61@kLH)fXqvs0$`#9E!kf+uDR7 z0?Mg_MzIOfLM(W=M@%9}>{(Ha-Nud{Iq4jf8AVjgL8O66VZbG1Z6(eTS18!I$(ulxXb$p%i*p|kC6}^$cGEMv@B27?BzBrW zC^7-Sf9WY0ors6`@mDQ7XUHK_n|i1ihuEK?_hKQf$*Vva>CAs7US>5+i%(d>14Psh zMq+rR9HckiXYG!34UvwtuA_a;B1!H_x^M?v(Niv2h67D2g-L$a2=kf*W%pL@gs8|t zl-%XXD5CX|mO&g%{qTXcr)qpCMaa*NR+PvrN{&IR%#rgU+8!%nyzWSCj}r2-a1BzR zSDF(QCjUUD{!qJUb`#HJ7UE&Qqy3qLI9%e(w=Q3N2YLO*}H|gIQChx8e0EjHj@$vF_QBV>Je&ib;RGlCvC=8aT~kMgE^k6g1gWTbs+=B@A~eFQ;`m=hZluHjG2-{F}T5 z(4SAd7aCZP8=I7x7Jk9>ot3%FS$I9wzl1V)YutFlxoI%FlOi3p{?i%8^jv#d7b7(L z3xIcVrRob%CUmjtCVhOyKgL6;zK{3t3Z&2ULz$C0rFURdMyI*ZK}(QsSL?I7Sh$ZO#oslBec z4cFz8_>W`7-MuPELXrScILws!+BS}t6I4?_Q8{6>rsLc(@NgpOI4B3@HhA!ji!xXh zRVbMVTlj<%A4&845{9RwqI_OvJ+S6XxPatPT604iUqM906htUmaSIWxK=5Bf2XX~m zGhL_TlUi@5F2d<4qY-w=FaJs^j>Vhxfn(8dCUU!tUIqHB{mQb7=G+ITVDR?pHq@QxF zbft3EXt@?$^YQ9>oE7}p5-AMIW8*`hbH2>{@$Blnhx7$mBXjukz-M?V9$04g4WSfe zB5H^cd2)vUTvy!T7{-WlrWY~OBEt1K_HKwy=s^s$5WO>gjEfZGa8MD%~;+fFp{%NBzwrQ5C zC;PLyp35$UH;=1BQ2oe;5Aavx8_ARbwI?as*w5NJ&HVG)I?~&VH%Yh50ZMH>@NSW? zkOT#XQQWENnx8nDBzb9h6c+@eaR(|q`mUf9Ciz+Wdzt;R>=n*ulU&x-Qwf4F+Bj$E z0Kqt(1~Zc2QIC@tP5iJ~Oq$u@r}R`tkk;CEkqy!aL;~nCeCrz#(N%rNGp$X1C*pCZ ze4^eh(Z4nV0o+RJ>h86nwvZ~;j{mW?Nfmustt@AcQUlu1^A<9|?D+tjY3u3}UEo+X zalnTVK%ph^F#gbp2Op^2D3#g!@O|rlwysVZO8uLqu8#InpB}_Qu}wNQ56Xl@WY&>1 zKcXztuOFp%`6;cm??!+5By%Cx75|l(@T$u%uQ)#Wd4fTvZ<_JwX{XuHbk^PLR1>_ zNq;8fqZ|)tcU2ti*VKi!HjZwA(JA06U^b~UG-TkDz>js*S&^m1o>V0$&1gTtoE{JJ zxI+-=c9c^{cJ(65C#_lieOc3^9lg;%Qc|C@mmG*>u>!Wzih?@8Usw`DX0+pSy>qVi zwb%k4V2JI~rIJFzHt)XcaZ&Keb*EP9XD(5EQl zQXQ?196El%D`(%}mYu}+%Pi-QO!TWxu@J@~@>EH;*WZFfGjF)38TKL^hzPhcu8wcu zNyHF)h7Mqxb^O;TY^vuMtSxawWIg-z>gX-J_pm6cnx%YkhH*KKoeusz370|2WVn=5 zAG^owm^#04?r6Nbsoac+lL7A=`syvT_Dvfo+`;C5&;Ri~f)PX`lqp>vQ#P*ZJ+nd_ z1u7E4)ziGF*ZtIFt?A0N56EJdihD)?#1JcOKc!+wNs99UGT5Ont!jUecc;spOMzf0 zL7i&*lEfWGbdX9IbF>fy@qx%FB+`m+%7Cgn;)}V=NpGx$P=~+fEJP2}y9+~ary>k+ z9JDbcf{sQz@mrvN8Nv8tUdyAs@N9`Hn~-bMWSe#Hhf5K)_4!ObAT3JqkT~aC<4V{8 zX=I(Ay7pmqkk716UnF#c=mJC+aOp53wNtZqoZ+R!DeCegQzfNp^843B?U*Ckk2Fzd zHowLX%e6nLqckET%!Yp!f`DeGuo(I{1k;NJcoQE)Cupd!@qpbXse8XYOH|j+7lH!K z*C7Tu>A1lf`UO=|pV7>FzNYp>{pe~>>ep)OFP?12%=ubhw(^fRXq{P+$W135%=kfj zW*P}v8ac~1ewlPh8a35_^(0DR_luP3>RFdo#RWo^r`9HEwd$uej>2&Ah3QSzwRXfd z2Dst0#7Zq202~#@rw^CZ^P4*0;=T0E(T5GUa!IjMl zm1$OK%)!KIVg{e*KG0m3t8YWPnv5YA`{uSqpn^fkKaKCFg=IMdcK_50?mbA!hq?V1&3PB(%3}&aqqwimCzJy@DL(ly%UQKLSTI8 zh02#X*ZtV8;h6iOUMm#g8&acAM~d`P>FTzWdS)!w@8!FkvDfo$8WXfZp3kMP%3w4- z8(k5pGd5o1Biiw@rX!w!AWa5Ciae;rU*FBjto^X>z^v0S2cz$`eFqD4K~({E0HZ;u?dmwpeaC@q&MM#k%L^YCm}tX-UNfGfLzWg^hQi9oJux_ zCy<2*qOe9dzzv;HP!%2my3-OkLJ0DVTGJJOwAc#zf+Lo2w)6)qT3S+d?OYHR{wL|j1A1zA_5<+H>` z*vlWq*$XKP;Gh-srAM+%TBI5}Q<_DgW8x3W4r0Z(Wq2EMXY&27>Hm(q&r@H77-E9? zdWI?5CN6`x;;2&xDrk+Z#_=}cnQVnKv-t8_cJ*@?tahiXj^%bb1BU~aiJ#n7U z8psIL4D3^=)i2;X;DtKSsN71j^ah@>8#xE|CVDd@9)46+08{drc7t-zE{}Ma^HBWW zRsy9zpi>j}2;DVZ;WY#P^_`!eCA%KUw9sScyk=c{F&M#bP^G~581H6e@xu!2IqTYD z78di-ej3ijf3tAR&7mIm#T;Vn}C4fHMX-(nS{2v87OII z^r;~ZIryhiZ_)-vIMlz?46~;88j0%36=`M{jhc!XAKI9RA2}xBB=@ECaVeRP4Bo@Y zh)RbQc8!^LIq*k?PWhRE2%-8gBNu(t#}ZEUukRpLi~Iy6ESw-Uf5%UO9N`T-OR{{7 z%pV`L15@pIwoT`Q9AaxNb_K1lf^N~P^XfoPD`y02t`-lDCk2a*BNoe&tY96@>QTBw zWERo#b3#F74t{<@v8`cwpPN+i$GgqlLAUx;L$Po6E~v)mWvtc$7Vko3Xb`V8 zBfu0HQLia=9t9)JohC3Uvaad@<{*n1NUTv537gU-0-NU>#V%`1Oe31<8XBQuBi$-8 zcBNJbjDImVPGnbTtT8g=a)K+t$FEVcE}c*>QhINYGEfr^m}3|9!3QK)$J_?Bukw%{ zq|PZCWe3k)tjq!vW0-97m-ra>+NArw{Da&JhxzJ3ai23`#7YFTE$Il$n17w6( z;)gwV13iqf`$zXm(jvyDf^M%d%y=)hb5;~_n7Aze9UR#EU_%NF`%B!5=gYFF*K7NnJmhRbchoUa?V;e zY5&phw!LJpR~<-~z-~||Xx}|Wf>}tCc``r(ro7^1hPmqWdESwm`_!pZ{NZlPr4;i@ zfB_bG61^mhq*ll04)EHmZe37Pr(M9X8$0z77dYquV<0uY>vP!cNlrM=J4<4KgiV`= z+YIzPU*c{>FykNry0vF~Z zH$f8PX@f9vwPGv6EspKqFw&0Py`-@e+dci`Fg8XCPq>0qYsDkh8hhJ4N_O%<$CNRw zIu~{K(ph7TarX?9+GT(=sc>BU!AQ_08q2%zf)%EhwYOLH+S}eQIYSw?kgY+!%AQ;| zBVI6C#^R7!r89>Tm=g!DG12xgHTTdx(%O+!k#eWnSi0USZUIYNgq#E^qT^JuiL&4D zb`nl=8-{VC+9r4O2W{s{#XIAUoRyr02H>voJYEtrW~tXCpjW%lJ=@k7^0CjZo=eB# z>xpD@dbJ~>!a$F*)bwf*2RsHnBg6KB*q$q7c*MYl4(&}E>$oC;pPWFMIC{$iRcX{y zGKACg-rerY>KUOiQZPVje83qI9&s+krG!hQsL-=s2fl9mDO)b9iT@tI?V)7%52Mq| zp&j1ht`--0u^#6&a-1!wyYTn8jsQK+<9oieyW!LF1n~SEp6VfZyrk@!@(Jy+H)(?3 zBpxHOn=EXuRf$QDe7-Q5Jzoj?M-DO8>Zd5@ALza+C-n!$SYg*jJFCVqwpesTyrLs% zXA*4Y09M_Md?@sD$Ox*Bu`j7xX=hvxy8spO7~KtnITmLXkZ3RwZ^tFZGs=fOM()9C zBLAGbsnLIivSDpRa{DMc09ztJyCxwsJP$i~${jKP-=GT9r;zgW1sAQzVk6t*pE0Pc zSPY?L%|fFP6%iqE?&^n%W1I`$laC8Cv&_kfVX|nWmZ`eaeO%7&+fJqG1uwwVe1csA za(aE2ZQfwS@}!m|MwJHkF7^aN4>Wj^w}+&yVj>6APh!=b(PwfQR(I7ZP?1*{T8B_B`3TD zl?6sY1eH&!^6>b$m&=}?BfIioxNly}67WkPw*)yvyif%Tm;)l^h_&iY&opZo6!;hP z#bx)+iC~vvULwK0+jVfqsAmXtw=`srLD1#3zGXxVsJz>O|4`W>3N|Wa0P6d0=5nk;yakw&2ntgAG7iOA!QwroTrum+ylbv!#J`=3M+01oe^xtAhc1aQT&%jE3u4pwpPb) zPcgFb;S`!Tw2VRT2Xc5rfHc0O_d#U|Xj)+i3`jtsMBc7)j#_ctj(5Pza>pQ&B|=m% zGp(+fGw`8ma=Ob6wnyJBw}>!(%80t!@nRRqG5nxcSk7Z~9m;P`kgY@O&vLOGxJEzO zkwkrI6`HfIhD~L<)uY@Zz+{+gQ^`nsDFS>(D46gqW=GLx2W@jgKAoG-$!PqbRL(`W zk38Ll68(}IjqpPlA6!>ZbMcypwSpGlFvSYJ+*@K^O(vpQN5<@lnu57S>@qf zt~AISVL1#I_(Tlrob@zs#h@_%9AO&_RYzY%m3V<&$gyG^=Yz5fTPi^!4IGU~T!aAS z2Y6X16%Vo*ww)&_yLL4G=dmyI z0Fsy`MlBKDm;LM^PK}y?gEz_LqWiN@Ykxb326A>?6<)!@&D5H|n>rvs%ov1bq|+{E z0$8o@SeZNqji%cX#BcjynJ@3RAR^xpRG{tS0o(+T1p%EWhorCR+p2L@(@(){36sPi z2{YC@{veNI3GXpg+54T;cF$kBA9^X=q+aI<)8pyG7Fz|>G5nqe8{^e${Gr89$KiP6 zv35+Q9jy8k$8x<@{r&gs!M$U(w^iZIY2aTwM$H5FPF;2E=gRngn6Ezda8`dqh#{Z) z2=@jVFsyYl3W}WXNhPAUIQ*W`Ar7QUSoB^XPwBPL3xv-?fz6$wA=~Hj;u?E;x#(Sy z1{K|rdA;VI_nd~h!7W8Oh>h{!3ZgZQMTpLNaXOd}6BBPcw!UyB?65IIkUvB3@bcOc zVo~5QaL-@4@Yo&d(Hg6%@w3()sCP+q=6(Nb`geAY0A+K z?&WNy-Ct40srUAKkK)>m(I%C!4cGaP_Uq6VIIo&3bhRbDrtK-ZcAhD0K*dj;=Lt6n z41Pva5J@OBe8VeM|M9i2ttK_{z-IN_!`7=;^=@_Mcr*jGOa*}~Kk5Wvp3S`v;-D`# zcgu)`lG08Alx8T-UR^%9G-2V7JN`VZt6Cr`QHC(_uPRErSEl-8-*=5TVnbpzmulEf zG>2~$1~J#+8~d#zORVcspFx^mwF|~>z9iQQdu;1%I1eJr*Xs*F1h@pu<|!XXA%TS{_Gt5)X|UBeUbp+9I! zN@ruNDXWI3HRVLNjK0h!@<|$6M;`5rK=ewDndS40c8Q(Z6;{uK%}??;HZ_duNH#fa zY4@!v<5CjoYUJ&Efg{TrzhZ1seJGY+!F_4#dKaJ1Iq4A$Yo0v#q~#y~Jwyas(>5Lk z9*$f37#L?*V^%%rh)tC_9~l2}t~KE_e*RDm)x**78~)uA&9nf(oUPYXW1V@|H$wM> z5B5b(E6-)yStK~vDNq2(eguf0Y3u{O$amn1ous^Ocu&~r2DJmLGfA!{?H$lHHevSG zA=05Ss$)VdUNm(L(0kB54+I`+bXEnP0K@EGq+NK_Qo26Qv;jeB*tn2FYU<)E*8 z4=Y!}*U`bA&(Ued+~ccp(dPnPFJqM+S0u*BHh-RW--ldx;`1%AJ9lG9plRWn$y4KG zNm~<(B6tA)QNlbs`{P<-oz2~;DuOy!$x_J=!)BxHRBL5|ol8|FFm%phi&6YT*Se-c zYNUy@AMIDKGS`4S_gw3cBr;w|0|@sx7b69>Yfdz=ONp=AV_%+C*%x!gtnkYtR-@IxoH z{`q6w-F5TQGuz7hb#q^L=BKwrV?ua?hw=V94TsmrLupVl3x&$J;Yz)eR<6x+APwu? zMiSP;XPxrQuK+X1kW+Ni$YDM5D#te74emnwIOlIe+}Rxu#LT`_suIQEv=s0-x~RkI z49ja`QPV_0>xW zbQchB%W9JafZDc-Zws%Ik< z#a*);oSm5{48g$EN-oIbS%|V1gSFSMO5Zv&d^@kwStANkREM}Ztj7UkNMi(Ln=6pa*rC|gHqmD-=Kg+Qba^tWZDgH40NjQJj=LxWlft%4Af=(l74(agH}8?-YeF%%Q5#-?GGnSD;*A8{gclH;S-9Kg*l82 zW_k{wDX{3UF#Lgi3JS4)1jC~g)J}KUspf5(U&zzdn(7|8IG+QuHUz3!hKf?O&*2d5 z?#lXD9TaiWV5$cX-+Ye8TykE+SS%$JW0{yKSzLlLSEhBsJL>Ya_>5Eeqt z;;gQu;74YpcSaN{--B!Dg1FZZa~@Fh%_hbkPc?M;c#n`NX2gY1FV_f~{$_^f-#Qug z`LE_DKM4Or$WJnPn^_K@s4c7X9xs+&=##;nulO$URldaM75Y72sZ{9rR~mJ8ED_*; zDc4-!1fuNxRZ~ zVtSzjg}BC}`Amtd^QwG>sHw{1P-hTay^dkZZldWUk0_dNFm9q_-0`$c?8{E&7O{*phDE5;C>NdE<*0>=6()^0iFKt_|e^yxeH zARL&ocQig^+FRJS5TRBYTY$IYYgiugD!gDItWF`xSNJ)8@Fij~fFTw=J&cPxCJ#E# z<;X9ZJM`NK093F6Lz-X+2}=S00!F?kmSq0yBm21QEXJ>8WxRmtrDF0SUu*MQf@lUJ zg2WO87ezIcj6~9byaX%WCRYUBCq-_ok$;`~DtF^eZE~EzP;E@!pp+pZ$t03$?F)z} z@=Lim?z3iG`sl|&?#^&4+32qP6I9EsFVT}lu=&sG6DOf$dcK_E7wu`;^hTEP-0}|J~k{^T;j4k z5Kf41E1)JNTif zWDcnWq-x)Wi~9f@`CPH+m$~LYg%-8i7sH;23vQ6K;&1%V@clsj?>@;9pX+UhYl+(< zMHmVYC|UWRql}SG3Y^LnC&W|Ye2F;G?5C_~xwc-BXn%KqBUX4C7w=mbhgU4XQ7{9! zVuvrLkxzUP`3_tO*u8C%-+rsrk;g1wGZXsSCG4qU-Q;WieqgGEV34N{42<4R4dd}_ z!g447#T9P?PvGqpQl(h;0ZLgF6sVw`2{loiinY0~|K0HO)~DVpFt?Ua*?~!Xt^(%d zCddinIF~X^UAYVu6gmTi90>NaKoZCir)Z<@WaH?Tw~_PDm+EK>y`4oG>_eS z6s~7>R?WkY*b#7(73H|nq=<{wB-hL>@~`O}eIG^LVfsVi5`G^3hMsawy5)qwjP@gX zJ<#&=4`H;=Q5s+u{Y1(;#cM+LYy;q)%p^}}$Mi9$=OwQ(pV8g)m+bb%fPdJAJ``aq z#AWs7$e9?|p^?4uBcHX(euraS^D!mIj20iW+UJH@JH{am{2cGl(1I@jB#j`pF^2sB z--hNz=RQqUmFj-^+a+`z`>=&bS-AoYkbtOOvncqa)8`*vi$JbhU>hrt;v=9ql8bB> z1~^~qSk7blm~asn^HmHZma>l`j0$0~;65!fAXof#;Y_I`>^nz=g-z%eJyiCo-(Zt+ z>fJ~z)QJj2zCe!Cl+NghqK{QP+8-b}%4^sK`8(Vim9J#a8NR+`FF_WAi2N<@Czu#C z!Ra-#7tdRK1NW|lw_vy9l&||7iPaADZ+Mk>I-Grj7$SpUNca(%q=KmS(sSMZt-$-%Jnim# z;b$6SPO%Nxj1K0FsJz&S6e8@xiv;TWd?xl3VNbRX;ZtSz;ayX%V*;%c8T0HNega9Q9kzz= zMkx8N9VmH4iq4DAtGU6-{)BI$GvPl`!>=KV>6v(Q<-Z*P-V)NVh?fXd6UY=S&^kw5 z;;woo2lATPEim(sa3I&D2}Luy?+_=X1aU@;&tc_C5Hjyd~3i4=AJvLXK;4UDMTC+?qp&Qt_qNvrIWa>Sr8l~t_+G3x}#2_&O$8& zZiMN0SE|$r`zXBZy)BcY_-^>Dc(>TH=s>+)c$D!xMxn?orD0P%{Lq5Nck3XaHXX(9 z6zjWie5Po_r;O3E(`RKVg;i&@~rR z+9NJ})~h#5AIb7tQX2`hmpQ>sH3zj`X1#B8A%czBhzo8V|h`HI>v^{jfYFQ1wVohrJ#ekvdLithtxM&CHI| zoJLSUiu^dbt~R3-K~-GJ?MU9lTyMthj1l%LIaY63hfuf`hR1=V4dpA^7i-%>{aX4{ zUZ7vX`co*sH!M3peZl=|Q`QGe5AOV@gcYVId;kD~3ZG*cq9H~6l}osOWe+)mVYtp|2&KPoYUfRS5`?uo<#evdZ`RK;z)N8g;vVG{FBU9%(K@}7 z&+)w_*3)w8Ay8~AeJuktiH?yJ$zpu2G3+`pK1nK0ayeIo0}O~w#^j7mj8T0GL}NH@ z%y9f!i{!FRA)0Y73v5PgItV>7LWE!;YFfamLF`$Hp@uK_fY;jbDnes)E1{Z=Wbq0Z#}!hyN(BjnX3}M)cbOP z?JFVlZWFg5{r0x8j zU#2ftEoEbP2oM=Q1Gi&q;t;-J$LBrrh1V>&SG%}LzDzdaa^7Ri%{E@K5p3aZ2w`${ z=2ucA9)Y_RN&bqKIfw6O&$z=;`- zxEk&m+$E1!eui_fr@dh9ydI?r_kn-Y^vE0{6S#@4ONOXBrMEGub5V8tLjuj^k zXY`C;3zRdmOnKcma~flB5JAJpjAAR^!%!6Q8COj5sW+2mz0&hC|G@TO`6xQ*pSggt zV`C;LGcv_Di=Mvb(b$D&h+oyPV`jEV0F4wVv^!I2req+mC&k_@_p=-%AP9!@(nqS;Eqlkc1V0pk2c*fP*1=_AfU(5n((0)e)2i+ zWAhgBbEFw~3se|XR=e;q+IMrpGHOL5G>tsI1JCm5IV(ij=BS3sK zaJQzxbfa2e47PfqV&Q!pSQPzi%#yWy47qKX9!|D}e1@Pf`wh4f0pg;38d!yzVH=J| zX7_WV$f@te`K!8mEpd*!aeBx%BJ`ppYM{ZA1I+HC7aZZo{EoQAehyXF+Lyy#B1R9= zeRCnBGlvXZ5h+4P;J9AdArFe5YsB!l(3%5!6lsoX+3safmd4@mZb7cGzyQ)!2Q1E5 zwq#0s5wZf&7>L$xq;n?PuF?HTzho>y2uY9QOBV(Zb=?>X6;kg_vvsG6g=-jlcFGeJ5ux#i zOwVWo4ZM7r$<4^7o>E6&r{UOJ zh5Dc}N8?yx-99Vyg+FSL$Jk;|l>Slp+Va!5K*pa0f9?B``u7@>G@i?B734B;qVuBnY9Nf-%%SQH7;pv_YJTFp&Jy$&E2ogl~y{qs*B^qr2Rn4JhJ7M zt{|hSuAwQ-bO5L4m{R}RPt*1V{T<`?DtesoOoM2Cqq4nN0UV*w*blGlg9-bHm@T4@ zB$YGo`-5aHTFu2GA!lqILcK2@&})G~OK?_t06q_VzgFt!7O(FU`o}XZ6t-;1KaEm> z!+emQ(y;joMJ2w7%&EYdu7=0zI~i=!m%EuEvOg zvR;JWOrgd6wB)vwF?)${`r+IX9B0MEwgp6|-%;Vk!+J>^~?untFt zi{_OQObnm#p%*+xx0CIeBi&_(F1 znrsva6;x^!Ry3vl9bq4pf69Ac@W0Z9F0)S+$_eKb#Z-ZcE4*9~;01ifHT{^HJMA4B zn|KFuOLKlH3QSfFicwziGR0c;r@T^qvgCqQs(^CL-W!8571HW~Lo8o`z{#_>)p2$0 z7@UK1CJc-XGad0pQKUdcO#xJ2*YUrjXFS&$Zf?GrDXI}?PPjl4+4C{~5uD5p6?byA zkK!UPG&loiEE{8ms+Mnb9Jv=) z?Xhq<`P`ea1ys-Un%@{rgK|=XSS$JmE-nN;RC8F>eMHQyyv@m(H)Diy8gp5!J<17J z;{=&#sy)IlqBGI#KS^*JKhrUk_f!32sRD21`4MoBi&zzGq;z@B0&&&9)=;m}iLl5$ zjD>M_85#fyXfWI{>p8l0m-mowS>`=0+cHN$Ynnso{I>G5M_$F9aWk>0^~t%#+HO>m z7ZY3}BF5o?=}3lXTyo*7gO!b_l;XU|9kpJMu)CI*kl4LqQ3@B4Srp0OG&urP0xpSK zV!}oPk}Kl%=nMKgta}z%fUWJ{8SSld=iH1XTu`nVlewgK%Gadqd6K05J)KFO5bma7 z>XtnikGzY#>uIISeS@P;ow|r`!Hb%8s7M#$$Ct2@qbnI9QWo#thx6)qKMPXh%?;C^ zavubR-}{v%wclFwZfhImJT9DbGqwefZozY8bU;+ES@g5M7}MvsxF=zift9D<&J}2! zMjWXwNpysU&7z(havQsEc*10OX_&F}ry&r63Sqv$Hub0R78*T1xz1X+=mC!#?S@h; z@_O_+;V5#3?rp|63gjd#ukK?goP^+GSQFxmmr!g)SZd4OysJGw2`wLS<)j;9B>1$H z4f=p%;gyjI1FIWhu!Jx1J%1!uB_{ZAdIX%%`Z@WDOQ+qG;3$mT?6jK*2pr!}yQ>nw z*M<%D@~qfwS@CZexe8JDBk)YyuF8YlyInQ(C zI_5o?4idsIn0fDD^&qtb7obnNRHGv0+f1U7KbBu%3b?GC&yYRd%6q)eNjSYs1@x9& z-aUg&0V_s%#mgFd)w%H?$boa`$R#GEC>_Z{AOC~;5aoEL_KL%5?AqtUxVz}B>4i1t zM+zP)Hue6IgKV|KXC=-kCUPZrpN!LauP^)%?!4*IB%?`eh;R}Q)&6$)i{e!7%7wc;79$C~a#@Zb1 zypeB$u+63s8+UKYwQuGq+iJ_q2bITJ=7TMhbB2nhxrQ}~7ptC`pT75LI-T|25)Iaw zD?lUM8TA0wLZVscy~(afo*XeMzufaY_n)Y9hFm>PEkxaJWcHS%VHy`X&owK<} zur?)l{)Y){8%v-|3IKvZJfV$sL{Sff=wzqY@a}gP}G@1f!9%x}SFWGM}($wZvsM$#jd+iC|t+P$uU|L)B^JmNa7B!7f#<-_VUYCY2VI zi;tsQSC(nyAC+rD9`-(LQ^pv?Wg`m3Suc#}7g7XVy-w^6RdYFehkL)ycYcv^5>8)Q zk2Z|baZizJ6r4g#4BzM#&nqW;pm;Rzs?Vef+2HEvADW?R!lI#MEVy;4jPVU+g z&D|!QG6D&eMFN;mOgJL-7NlT~cGzk}zFj#a_*EX8?sdIarV)`)G4KQkCQ%w45d-On zh|-EaN<};kPUDWQowqYtc8*}T1Rsld0XD*FJwf4~(?$;SlM?5ZGpao-E5@h+295@< z*Yib1c=U_ZX|~F&j<0;j;JlqH!T|;t@~n?00t`)Q0i?zT8ZI05gCE@)l3CfOSp$>OzNiJIxQGp=BRD|z(;r&_Yb^laNp5qQzU&1 z$fbsW=WhXX#4_sEGV5hIbg~rAXR&kYX@l1r?Ue6{UfKY|Wo7Q*Y7>mzhVxy|4no2g zcS^MjoJTw1cp9jQF`!4v&KqYI+0T;THEu`F$`xsf4L_pyW-4XiuJOFR6@;jv@f@i6 zfh)=@Ui##&8b*y{)`OGJ*crzzV{=-`ZtcR75WO%c)&TZ-7hCC6`XnFus%F&GvevqhNI2oAb-loE8}(g1{S})E-aM>G1aw z-zi(phW_IDnRGgvJZI!pvHH^Uk{hWn=@aQ8^|{3i`*RwpZ^4V4b+N=GNuk8Qr~}Nv zyIG-RLRkQwcG&Vt`v@kcL3e{7raTN#0UX}pv8C?Yg3zx~dah26{Eyk8)UH!Y{-vM< zvU(A61KZ(z(#Y~#I01E`;bvFTx-Q+7^%zD@+m7@QE0Bt#&xOwzmrjRfOtYMvVp%NO z)wYah(MWR#%kr{AH0D@hHYk1`tjutP;*1rOaVyAokU4Ng#%Xu@m49BB* zB+hsh!$)}eTH8^}slbkyD=c>ywXDjbt4AVpf)N7>KJ;qHl`Uv%kE_$U11K|zkQ29z zX`KBO^*FQDdZKYxz2w_}ZgG&2QD9+UMkpL26+Mu?WP#}i_V-l1>24%BpXq_szz|K# zxwKZKT$mj67XSgn^KvadBUm8;D*qPh#gN%qn-RI*t$DK5PeM6O=LDx;uJV(*8^h1^ zT|~%lL`l?`gXMK5QcPz{jZ_6b-X|BNo`Xf5!;=!bo_mRJ8vT^)ABQ1i%w3`naQ>FPt!R3)3G$*6DbK?07rNgDk+hi zEAJ4M7o|m#EIN;wT+N?`pM@(Y>D&z*lJgn<6gs86^NR9{mo2z&N?MZfKPh^Dj(fJA zod<7o4@f8<`No%Uq^VG8t?3e$uYj5O^mvlaop`VmD3cSXn5g76s3!Ih*LQHL`OZAF zR&w(=lsTPo0MaH1X@=;e21id3lFFVlKsk$(YLC0royP8bb``DhJGVjb@l`TzRd^-G z()zQ&8@WQV^{1@GCHSpcP{)`9zhpL9bzois01;lHey_^dt0wNVQunXwDbi6BoS}U`1|CiQQ~EufTN0 zwB+-8QE6f(cckQ%Wp4k*AC3LD1(xvb9u3{buM`u$7!XNC#Ll+0Bj_ZDZ26>1$Y7@@ z&}MPO^God$w*E4dlXPZ!UZ12hiY2$y#}5F9F{lkE$}^gT@pWs#E0)Qmty~lBnK`jN zY3qmi`4$%gP&^OuRe4gE zMKs50&9T{OI>+pSdgTtaR-t=>+Ok3;HMsEyd%hwc!QN-n)n~|W<@{~NZ_RyvXnR3C zIaZcy5GI^-Q8dHW6FKBvr%s}5rUCV!@(1c6%v>rhzXeZx8jHcm_OGg!qAidT^3S2&gbk{4zltyr7MNoCIZ*H$aZT>*!hd@4~NBN2NFD z6l4JZgyXJ{Z~y~%MhGzEfp=oJcFPQ`rF2Z^PrjL`q;!U9-lTm1MsxW+r~$~ZO09r*h-EtZDBUBmjp4uQ>I`_(0O*i z#60#+RIDjj3!lQ;bCb^;*q4DpirkO4XOq|9d0(gY(r`Xk5He+2h)xk|ZRX=8@1HSG zwmRUmR*GDy&SR(51=ics;@$Uwsu>C>Pr2|JA43QDBFH=N286NTZSf^tPAW`g--|9V5+^SfdgJj+B5Q0trMFxSwx?cki$B7^Ha( zdEX0}&4YOO>sQ0<0{Y!ao)6O-=g`&WbnN^rt}_qj*kEn(Hr`*IB4B2>f?yuo?z7h% zhdeT43!lq`*muQKGb-elFLF?14Q<3xO1zM&=~7bbDJYd5FGA^N>F4AY8aON?>}|2ZZ-RyBT}_)ERy ztzCr@a8=(WSHY-}_wCJgHeJIOx!7I?N2GXj5AR7?D^!ozBXD6o04pU`(DvI2b%azhO&KF9I4ETt| zq-rKfVunWmX_lQ@zI@k9Rl(!Ea<#fvZsI>s*H00z<(X5qyqtqas|3}&fVs<^#yAzM zt#j11?q$*)?z%IT)kmBA~C8&ZWg0 z3)~l#5aj|yf@p`@WD1bck^(zHX+aY)T>G@?VU?okmqu(t_8-gkZ-l;=QdJj7{mH~d0puHXf_y&8O<%M zmIg8zG7U^dr?bNkrorF~c^ltpoR->;=16~Z+?yn}FZp9-j4s%|H+uP6=ac64U(n-= zbpY`;RB?BmSDul%2lz1Dm%n9BXPLPn#78_>9JnIHjH_Si&{}43=7>q2 zaClE-$=xY%Vsbqv$YkVGXqETz=jm8p`2*CkjD`7Wc6UaQhFgB!uq*H0+@Scm>q#2U zoEL&s$wIgbGgdk4WT*#RFzd{{FrM6C2bwDzmxbtf-+YXH=D!mb3o&gzgUE|jj$8}q zKK}W$b$Yyf7V0nHlmD5k>3ztt-(R>RpX49=Y1SH{B1|333gCdInJbeMDc~hZtyg=R zs(-SF44J}R{xIN~)?N`&B0m7VWQ}m$edf5-3KY2eSYmr8zpL3nb61`6724^OA8pqc z*&9Ydk{B>j`&;pFyw8o@;<4Cd=dui`z){UN7ynj2bB?{)p2k- zu3`{G>co&@g$L*QJhF1UAyhp;gxLo7jETKA`iwT0$&b2itkx5{43LNl_YO7)K9C}3%eDbxTO87;-a)Gx+vSs|oOc}HNd0c;_@f-HX8&ZrTuSUpPX6)q!fb@nf z;w1_qKs{ir1R4C_!#wb1zGvrebuE1W;5FtsOV+`^CBQt2m=l1wX@0oyS+C+i$$r9) zr-V=+^ABPp^{3+Vl)3fvz!nN`b~Xvxr+v^CK%N9B|A^MmNWB-2!fp&fYo92Xeg*gV zwdY4pXpnV;&VJy}?uFX1XaflwW|VeW%8+xqg1zI>_VD*brZnLZkA|P07)&qgBbzod z6PpADzw?UnikGvQ_&8yGL$zmtCkNdL7{-D4^CegMK3=2@il#oY;Kn>${IYvMU8lmi z_w~XAHe_*`VGDDBkecJy3^vevgwKjk8NNRWKM@OX9NU@na;?0D+?loYp6sn`OPrU^4W8TkO2TC1 zN@8vJ@;v&~wW;F&QRvQvhE`C#>29|3I7v3H*NC6REdW>qy1@)0e=b+z@8xBz5Pe8| zaTl3K$Ity#nSgVC?h%Vs)&j@JeBdAe8v%J_YnX*z_yQleqP*fI9c|4=-eV5Q&I!5C zdS*x3Q;Ft;E^2KUvo{_l^BDCk@cs*9toBZ@CrdbrEBIVj)-{wg=u?=( zAk=erZ-LWzuD@`nF`wiBZP(U;vFm1W8?brItL$S|zCtH0s}}^`$kUD0 zYl^C-mNkwqXCf1h4>!`!B0#^=byQzGnp-ldj+nmkON7@pk9rm?M%CW4{Nz1<`(G(w z?TmX2`j+)upm#`5SAeGlyV}cl_ym}9OL1)96$61KWY#Z;h=-PuSwA+Mm1Q?ne3oO^ z+C})k^L*iG2U1tXliG?v&-0tA``X{8ohu-un9}5D(x1eAW&Y&Z^x55%9>`1}fGptBSN;9WyNY-;177N0J1MuDu)xJ9$}+F7f=uY`AqIO2QJWc5(s?}Q{;zT z-o>6YHY!hLYy0DtoZwrDUX_!kC2|xD8SzP07abmpqx=Xz<*(D{@fH!9oDHgv{H{L5 z(BEVjv1|?hSI0lleu;P#L6V{6#g&{}6CVwOoNv?Ks~MqaxjuE)AsAZw7OB861l00- z#8m4p%M0pWJgMLNdt@VgQ(jM<0gGocUfD^GSOa8MO$N$4$Z$a95qFI##^K?t_rl?w zsa5TXp2f8GXy0O74`CWQh`{=E;Gn4RDrfhZWFlDE&U@ZQvQ%gtQwLEUf`?#Ca8r|C zOh@U#1s&D{NB6TLvl&O%_PWghADOwOT*W=0dc79FtDcRIb0>M9drncbtQ57s&6%Of z5fUC*Uy)zMVQX0JwPWOUJ0mE{xu9Tlw7G!4d+lrM@ldBrK+j4%H9UX9`z-JP{<(;# ziEh69uKjE+FbOQs*$iD9@Q&OR>y5mV^*T!9)-;%$!bITH=CwIWDw}Ugi~!C*q((J) zl1CF?zDJ^M*V=W&URm?SZTi;sc%#K}CUEkWsLVM0k@o%AF%7%X3#&Mbl zR^?GN=PY?8Ry>%-GiS%fjdh)lB7e1Oo&k4~g<1Tpm^~vl1h0SuGrn90f-x7CpZjSx z-Ev`Ph{=T=E#(#fB?8nS^e6mW;3lz{iKL5pk9n_-BYy7%ptF*~c8w+=F;}s3CXp|^ z<_kf!6RU~84R)sMa~avRaa`G!M`#$2BOu}9kbbnRmik?fg?v`CqiePTw4G;bM6|;d zq%Ih&xhr9tuViv-?n)8gV08ndJTg|)=qL!x$SO*A&Qs}Gy%(Zb&r>Ovb3-&5ppLwx zejwU0-jYofO}|D=7CN~jXyD;A{?7TQ zamCWpPI2glo^lceR3EHdlV;xjl$KdP*+>bNDkAKPBq>oiA@YPRAQJmN5B%bsT~a&o zIBid3-v2w}mD)bC71WkZnqp1BTdsMC4NuEjY&_Co@7M^k89~hFdVia<~!-UC0E^7{!oeIDAP@l$8g+ zCm2YJV&f$}vQNaOAuODn@e=3gfF-aPX52Fe9*Kck0Wi=+3@)7XDrMP3n&|F4&c;YGgp!Spy7U?d2S%BND4k zs6XX*coIUc2*>P>MeZ~Cv4-7mfr_KUNGf-6)ngW6TYMd}E6DH>jO^#TeBDsa3a3~tl&lH#ivBtg( z-}H>6GlW`=^`|%uAtIbBkF$`TJNRXYllyMWuI|%ov+L%9K)Lv&6OsA@R{+<=WAZn@ zjh;_CA7;SbT#e0E{d|N~jr(g_>^o!%bChM&EoKNpbXL9a86OkJDJPty)^0z-+WPz2 zIggb+Gm!FCW^S&AYmb*6CCfVk%R?L^7qGyKYwqnnMzV)Vu`XDft7ysHc*IC^gteKW zjewc>Aum%IOKZ4`QE#LVr7$+v&V4%bMa2z7DFICcCI~RFS7|2cy}ho*G|ju3bC^z% z#FnIY;Wus<*@l%ES?Zn3)59llW`B_~s+h7T?!p_wotzVjT%rFh(x-cYq|~F-#Zd zRnLxfIYYt+xs(&8hKg;@m^w-cOakJT))7xiPHuUgbLvb+H!=wB10OSbt5({hi^)9DzmbI%Re zVHnIIPlMoqQm?5!p|X^ITSmdJhToIjcdx*mf~1M*bcbB=)4}h-V%B_w6~> z(3G5VG}DnXC`T{=0W=YxQtDLn%#CNgF}dq+%$=aVp?NH2#f)|LyvYPo5l$4d=~alO z^}w0%?57`7Yh)#-=U86`xh2RX;)TKy6NkQ>jZs=XSu(|1{p$tJl>U7|$%y<3Unn%j z=Ba~0d0U{GC@gWb21nWfF~Z{aPJ^Ipiw=2`b!BMkxG)?gZYR!t7@JsHIf#fTr6YhR zW&E#%e;>X9uF}?{Jg!;{BtW8e<@9ZdCRPJ!lYMJs0Ug1!@e=p*xbqb`iJAKYhNw`& zEFp29)d*IP3TP@UStVkts4oJm#TpO4B1{5niWx2~8nA56qvRAFurxv&z>5cfNH1zW zZoMjXXGMdPYv~m?JL5S-$qiIlM~IhKl86MBc1n`1abn`M#3cAec0UNL6yx zjQB!~QX;=Xit5hJ?liyQSyDFoQgc0Lah!i8EQp~uC|~o#wyNK<#{0UQU2J>>{I>XN zjwz7K8Xc>_rtZfXMnI8KBI9f&6;q;IRk>43SCMjMY;Uu~NVLZmSX6!bv0|bY zr!eNyx`gk5Cz<_HOPyI{JUim1atC^jHDqy#J$PX9gZhcb>V1K6IabRfa6GxK2b_W9 z<1aq+LO%@pTH+VT7oUh+_FIId@(Jt0iOuHzpfx?oFz67j^(ip$F&I$2n?9t0Rsi1V z!1*w-H;XT%s8@qUb28ooQ_bEOsI!;1FZBAoM3^VM1CPe(J4B<%u84 z1!LepD}t^1Wp9P(xAb+))C}Pg9fZn*)T!Sans8`B9$|%)gg$FP$w@2`4Qc`EeU^PM z;wy3#zlGH-pZqcAC~i~lJ8HV;Dq1l%Ak7~UE>kPRFS*7Qp?SRQ^Y|vtu=*=Tt|e!2 zH|Q;4iGf}dhE6ls1Nvf#z3Q9K)q4#|Th+%?b!Ogl@Shu19ihdU%GIMC`h+4?=wm0*$8@U{%gR7zLr)2w;eU zc)=G3gkNwSA?S#AnA1KhFXES|9G;`#P*0+i<%b*I>*qsL=C^Wh&n>hkaO~KuCbkReu>jO>?!W010bhq@SM5C z``tWm50dAmy~;(vEE+ojE-?<+OK&d6X#aWQyKy0O#A-5)ZEO8_=(<3Tqkry-1YZ80 zMt1sIqRO-`P}x8!2|wXiM4|LEv$x>hp$9ln|h!#1UOA5_MZ; zi*I_X{X)d6^Wd9twL!zU8=H?ktvy%J^SKx&OkRq;Zv*s%>MfLk0`Y<%5dLDqXIT_` z(6jhv&uQBu#=|esITq*k>}2@lXHeVQvxQlV?KQ0XS|-w3vZAs#fXm*!Iksb za~<|uh$wm0pU-Es1L(!6Pe#}b0|H!=UuML;Yf=qRSe|BH=v%)mS$yHq8lnXcYKC=; zYv^N~yFn%>U<1a4Od!umaP!$6+yVcBZnRWq-(I;q= z0Lw4yDEy>}dEeqaxVh#T<8n93nZlWc?ki1y5fGzs;X&-NNYCzL(;oZ$ojJr^8APrn zXm5L(i3$i#^Mz`E%I4;*xaE^(Hm5s+j;q5BN|Y0%8!aY8uk0FPVDS)LKTn8f`0Hd= z@oBI9clk7s*YE;lk;nq{D`S}MvbP{hRs<+JD`qN30Mcu1Z;CZJ{z*@dzL$YQVl0%^ ziig5#3&jIE{F{bWTozwMW1?^eDZ<*S42_RkdxCN-M=yB5t?D)%p(g|Zg3nt*plHL# zk(YW%*l@7heLwnwVj?$%yS{V(JY%Ph;Ij4ePB}%jLYNTqJV|9J>lrh)MtZL5ubG>! zs+c?2D#E`duH!!LwTuT0uekfPe)l@@wozJrp6ZPzw-^0`X@{SGgMi1bn zDqT8WXoRUGN13fO^H@CS3Gf{H1h^6g;rMhM+A2QzdW zgGBPVHo@C)3y`L8389Z~ijln7kK0;yj&jb7WzAdp3N<>1V>C{LxZ?|kV_bMSARZ88 zMdxb2d&yBWWA1p5Ir0TlwuHVbTc&{5;M0gOo8njAtUIxIjep6Uoy`Ic$=fdw`-NE? z>)|qwS{EOAw2l*byA<$(2Z=v){>~q8O>O7V z6K+)>>hno_zVdGW&}!s^FmJ~>)%6QYt(zIZV;1eS@ckb7!t25c_N>?$b4=ynu!7CK zUw3$pSUB|&4-fzVcW>l>NPpL{s>MgX^DGBeULTDHOwEpU*AOL4`V!1}FtYP`EC+5m zx_na1T&nl7bezQ@6&^BmFoT4@X8T)gE&hb8D-K|NVm80Z*~z-M%J9!wJDE*H^6QN! z@?wwycz{m)oE^BI#7Qi*vwV8&p2Pd6(>jHeIygsvTmATSxFaJu)KtWTwDw3aJx&fk zz-LRPPba$PD>ZCh)|Q>`!}-#ujnjjs<`y_&^^Sbm$a^Bx!$<>H=a)`Zy{}VGP->of zQ+7S;;t=oTb0>*mSi=+nWXiN(+G&T^L$~b>RpOU;#{7zLZj{+Fhu<=VI3pHHPwfdUrqb3Nv1hWaL_w3an@JaJ#UV zpFu1F-?5pLoLK-359}j=`J39?*A7>{Zu#?)2|-{{=e~@#oS$ zA5*tvJ^RB9R}!O~OR?h6bMWM((Ts!lZ_xj9RajWn;HP%-^hCY%4S2~E(6by{dH+qj zx4*}yP27tpvvV3;8nR(5C^5Zd{G@^hofZZrTw#Ezgy)FiAJRaa%Eb7%(PN=Zg_}Fqc-xz{M8pJd38@JTp6Aj^$5@olV5Pb0 zy`s-GR8Dz<(irCQS4-#Mk=K@;rtbV2*9V_w-fTacyBWDZYbO!fDhN zqbpx!KBxN*rPtwtt-nG9?@mElR5e0H&;ymPf-Mc*(YUIdaa3OY3De1)1|v*Vnz<-ZD`$xJf|emu1Lx zb(iY@57BRNt)8y^Xmf>QY~`P3nl|nU`E!uM=4n|2ECp4apHs z*~cRK?sUh=Cv7IdO?Rs*spX8E7(5IbaiqpDIFR*F+{sGq9(kVM_XqI#KSiavhs+Yy zh;$K~zcEu!tER+6Uky;wFoc&xNRSx5AYlB+3r`W_hjK-z(dqFSPFebQI8{g@gY|{+ z9?_B|B2%_+X#@*!fD5A`uTH5&l4Cmcr`!;GPL|Bjb@}zokXTtSGXYlw7V`qs3(VFY z#c5|%pEE*tg545i6!Ah~P2dg)p)gdk*Xav6f2lA*@JT7p@q9>dLNo3@J0}#o1qgm3-0=( z!vPf{`5akNXsnU|YlJKx>EdDopJ2?)JZB9a-z)j%ktjuqG_ZjLJx)k+f^^^g*(tnR zsgh*%R(Ku7iv^)kvGP1K>$5uOBlt-@m%0TE!@~Ly%fhu2Cvo$F`lF&o4T0|^#PApR zVL7TK1zgoW*=14KoFZkymOuDOGlRJgJ4>KR@NYV?)!Hr^ht}%tRdE&;CnJ5uo_t7^ zT+U^r#tVg2p%aNJr`NgfTBya;dVjjB=En16b66Q(y5FQX@G} zL(+!3WJ~}FXkr2&289{&y}gQc^yuMaC3aeMj0paqjN}^)3e4=rt=fFwgG4sXYT`y2 zIU|MRC$x-8QX@eCziw?4zYNT>Dh|!Dy0df6@|czp8RuC2*-o(o)12;9@!VvG@z0H) zDa$Q`QI-(V!5p>AMHP)-uH^P9j%SdQodWd;weI!u@{9aM&ahN~`~fa_d@o9dr{-)Y z%?*`fD*FSi$~lwh{Ddb$ZnP{|_%mL!bTG(oG3inM`dx7PpBd*_>IekUGnC4U!?oaI zbSv(cc#D7c=97=)72z(?NqWfZvz|t>&G0b+DGHt!zp-8DJU^>pT~4the)ZhT*m4o1 zP#Q?Qq7mS46dWU*fJZy<_N!;{N~|BBKb`&kg1omx%_j(f@{mK84zk5B5`U|gxH~|_ z)?5Lx!Ki0YOO&58E%)J!2$pvM&G-gTpA=o|c~F&M!4kwjaR0k%P{}JH5a;PRNJ3_D zT8LI0U7ia&;);S##Bw#?UgzA@9w5%L?rL9p26euF$kiDrVEXK8yc}zE4GGv;mcVTe zJr=qYJo5k}epzwZ8Pu?QW?#T^*w1$z;g;xid#r4VF1}*vPK{Y={4}>G1f>x1Od@6t z&%?L01Bdr_^4h|cq*+ZU9^p^62&37tUO*O+;^5zek?;v0dWjsK6r1H3Uk~5ZRh?Pf z@_AmL3k?xVni+R_l$Wg9$wmOt%Iu#DPL;Qf^X>IWM>YhLauTGV`IE$1GI;n=ql9w& zv^gh`yN7-o)z>{PthX}P zF$HD}M+*T%0|Wl|ZdAn3XGPDppY1iD;*rO~fUlav{+N}pFJf#3%#HV3p!5?AEXLj% z1V|A?Oh-f>kM2+VoxJ~Vb$0YAs4cau#n#viVbqdBbuhqIeS#MAZ&AJF8dJMgW>V1x zEo>`AT`&M7 z2$KqY*iAoSP8Z^x0I;C&tk|UCkSE;ay8!3&m$OQ&Qky~9t(#;5MzeX|5_Udfc$gEL z?l0kSd$#C`u(q*)fQnhiR76dUVfRpXu||6m3oD;)zaib2Ys1W9#{7X{-1lCM@NGc| zoQf0lKOupC05$Zn^>uAjlRB&*p+~#aJg;Ccigwp3)E0y4P{) zTD9K7n^o#@9V#2M-lAgm+g9Wla}YlPV{h!;ViZ=N zE;Y*x;agbv%=fmm?``$nq5=lI!!CT;A%gzA?V(Q;mMpW%sI?`T38?YPi1faIGa zr0}HE)9+skt@fdZJ@RAd#PEkYzV2I*HT*T~5W+mv#wU8mB>QT(MMFsd zjb3SFidpY_j>X@yr!k#Y!rJ=7T_{_CxM6p=VwB-vUQq_75b&WF+HSi2CmR1*7yqtW z8%G^g#%zvZUMx)xc}!QXVr<=Yf`L+F?O!5;#&2_{)-$njn=8i^?QdtO^#u_Vlx=dG9f4tD6b>AlFfQm}6RfMS#F4o^BrSMuGb@6JK8p&Td?(lI)~;)@~9VY#h%_k3kxRvlW+ja&~pERl9*X+??A`oFfL z9uw_8&g4|bwmAO>Wo*VgslrdkhYi(zAp;E5*Br#N;`fF@I`pyxPEj<`rzxFA1|&gX zS8*K0(gq~t0-7JuzYH7e^g(4jlM(k+@Z4f`{xv)VC%5}!fR3u_fi8iw5dvB~Dqb#FG!CQkv=exMyQ)tdfBP0J7tichB}|98kz;Qy8r?+a8UYA9;R2x{^*jxQRKhJBDDMCP}i$G$=;V5Hy49 z=)@{J1+DL4Q;N9rs5U28kYoB9w{eJ1VVmqhA|L$8i(5nkQ5S8Hy)-*9ju;1l#`a-U zxhjugane0~dKDk<-+!?+Hc8={h)HE57pwlTn8=>5gxixPcG}(xt0jIL-P>8(OS?t2 z)iVs!?0&H00#K4O5oFK!2~@J%rV#H-ZT9N#FtTStdR0F8(RLQpZx{h}R=_9`U-lLu zIW>L_82BwNzAH5tHOlz)hR=Q?+h})=ky6)mRozBgX_#uyVvuEtDDb#$3%VIT0ICt6 zV|`)f^F{YrkwfJwBs1*UikW6+dnLBUA5#Ph{Dolfni`VOCV z&wLV&Y}%KnReH9^M&S70m9M}M-eJEC3EyUtps_(aKNmLmfVE-V37C0-{A{Puz!3L_ zu{jE7cpSSOU)QpPsWTt(&v23*^~*D}PB{u>dX5p;2`xl`N_)N@@YNAv%)gB}&^{?X zLViLt&$>?T@y`TB&FhJ_7&exON|D$J7k=QRrx{z^jF5-j=g-e;l=0{W9V0QYWzm+?P$qRe#&6~XHlEZ|7sh1j9Pk$w*(-%cIvMzBu}2;E zJA5)+%QVc)k{(-FPG87lt}O!b;2jtSFuvS9fO0WS&bHB5R6|8uN7Bua!r+bFB3v-F=R7!XZ#Mf!gD< zm7&x|uTZF{R6dJtVcDs*Zh7{Hyf3G~-rmR^C6FD$Baq!?9`4mf&>d&@M0PR#@yB|>=YkgYWxoTfeJ41^HF$}B~W}x@Y#8& zQdw5XF{>Ie1ouc0IBWbwvE$)Zw1h3+@r!W)t$Ma|P7y)pNWS)<_t3P~-9j^P0t$?S z5&bfEaMRF^$y#xle{js&Aut}90ed!d-})a+ zJ&J$Qpv=6fk2I3gu=q#LX3qw)oXO4^m6*H2Jgxm(t4R?T)t0Xw-622#lRX2d$7Cm8 z{DqxVIk%^R&T%Qn(?c^~K{NLTw^N=b)nmnzO|r6w;kzfAI=F zJw9Kd^@|ADlqcK+U&0!C7a=r=e?QzCQ!M4_-Q+&m1TNvjDtz4fnXUYm=U`}&6Xk{Y zbqE&TU4gUtHj~NTXIb0ZJ+o+9h)b;U*3P|cjOe0)R8okMV=DEg>^?c}tt+jk? z$3ycv0?fW!C11zw^FXeNizghIPRtla`6maOEr3n^ru({b=G9j3Gn;rRod(&XV0ChW zW+Mhk%J;~n;}`{8*&eD*Xx%P3!fWUqR*D;x`jzy<;p#?ZdYIX-v?84~y0-IxF)7YrDcM-;^dkOK0R z{%W_cQ4e9k+5v`j=@H}4-v{MQtM|+#tib|n+9GY@46v{p36dpd)4#4sFHoQTDEtJ^ zhW_jD_u;?P_5E>Do_0vw#0nOo=VY?EsKDu25e73=gUkw3mn%AZAxH4**bRZ{qW;r< z2{CGZ30nUiv$??_V5lpj!7qcxBErRnkpNKm&Z<_1yMk-6;4T$(_PwH^l^h7`%Aq_rv0P0lPIA})5s zwe@SL;=6mSj~6m<0%7j?2y3vkmkVfpoUC}|`Chf=dpu%eZ<3bGQaUfC%qS1!m(bT> zUwyaE;VGBT4NU9MGm0cl-keVX&m|x8flrLyJn=E z(e)W=HOM*Db&dLY3D*4ksILAd{1VSum1i{6nY~5`dc3B3hG`4c@NR*owTMZU62bg% zCHXk>_fnT7&a>tm%I~~Ihs7@?>LTk=E0me?yPRh~E@FATZQ@)y&wVw&GAVpH{y3ttB@6*TN=ke)xRHLRsz5@^hYIAZ)sdJjHO9_;i>qhYo+RmwO z=pv*ulz)JKiaj;8hO&9;nL>Z_zH=r9PdLO$zlpqiLagW52eThps{Y68`J^&gfbP(5d#QG*cZ@AruIv#mkeb6UbJew*{OH%gRp%4edxrFJHm==Iv=8A^d(}(sIn|B#-w; ztk#M49>gsp%ew-XfYTGVh!;V)!d}Q(wx3n_xt@(8@8{^-`4lIK@F~YX15^9I);!`7 zbMa=B&%5oWrHRs5B{H)RF|V}yiw-LuMG}9PVAy=+wcQb$8ur z>10BDyJ;s9x5fM1_U9dFQBj$!UEXyT9Z)8N%#v#S_85 zC+6L;y=&k!sjJ9+{59-94*z43_M^~erne8mp3;F}$CKbnLhI5iEoU-ZPt-ql_`S`C z=k&_Go5$g<0UKwM4j1`5ZN%-n5T52ok{@1PJR46&Wq>yc8n=)>>fL78Q{mx zjxph$*(tNo&ChZz)!R#SQt6XV$fW%5tv$ZZv%F`fmYeb3xNr=eCO2x33k*Kr0&I{v zvq>RxQEj}e9LJZD-}6fHF^?6M7-pM}TT?Z^S6gLn$^8Bw`?-qMmg?l5Ie)*Kqj$iT zDIU)i^U@1n-~-p?i0Ic}<%>DDUnn0|{ScZg9ggIS@0lH0;+4fhi-`0@J(*pUU-Au! zAM&zNqV`5Q^#%3GB(X+&Bzc!u*rPhf*@Dcu-ZS5oHZj+_E+ea$%$RfKmE;3oMEsTO z+R9w*Rci}&8)9X?cP7Rl_u8A57hL-y$~=XNPvb;s8asR3JOlSJHAd4lc@KIz&PDj6 z;Mj7^tTD*pGye0w+5gFip|*67J+-Gq^*x~d?3Ak<+tra|R!u=&bAK9<%w2fwIA_k= zo=~X07F2~=*&o;nzUHalZ&n>!eKIS|q+Xn&o91+0wO&)Z`?K&@_pf4(slJORgJEGY15#WI z8*^>C#bqjPt8HqX`9U&7gs3eWaA zMtePlNDG-SQ6y!XDy7ardF`C9zlJBzcd4nW$z{(V2Jt47p=mpnRU$DB1 z95>H<)4lj_!SDS!G-Q3o=(U!1UQl+HDR_GFO1Ck?>IIrxR1!W%AZ{+ zSlR@zJrZflbe{pHk8Y86B+yo%3&ZVtwAj<2y_MQ|{6B^NrRFA&pTl|o@mvL*P~fi< zM9qs1%xkWWme}_8LoWL_umctMEFG8q_=z!Gz)#mkgkJ}ZoJ-hNL(_h&5Bc|z^$SBF zHqO8^?n8d0ZH;=77n(SBBd;eU^>WjT{0UZGxl8hzP2Y6b5qJH54#QglqkiPo#Hb+7 zWsmZTm%L)nt*nVl+iK79BO{vEU&}@> z=g6tZ2fnxx>AauSId%63r`OAKKFdFQBH2>=$9@fQPlI<(oDCuN}>DH}1V7-L<~vxg8xz zXBgC}-;7viJ}niedl^$oms}Oy#x+qWb>72xftH^%c?t@3wPN33*y87 z!&UixXLXHjzA+y?n=2F-sA+jGUgb;7`&^%8;(Rx+g!aRx&)H%HJ13D{y{G@ZLR=m8 zI?oLi?sw>R7Nj%w!02V`&0zhf{m!-eTlYIZaz(xYR>LTt1#;Fzk#oVPB%kJK2EvNV zFSPIZ4{-NTR^m0E{P@+FOdyt2SX5MaXEVyP$Zrn%d73(LPDd{4KfSM&IcE7R#IyPk z13QiJt_|8@u62~<=^r4o%e88}RIgIRSMs>J{*yn}dl6DC_5AVUt!2~?J@@M*wjZy= zD8{6UU%BI)TO;#i-8wvF;_)*<)+r^7XO7QI-#nSYm`Xt`okb|xz2yia-uTD3Gu?Ja zOPi-vHy4=Wr*gOl56}UFyG3A&5ci5cM!|+Kn;3_rQyK!eVVMPy6EGEbVRlh3A(K@v zyTn-QmwwdUAX4M{1dewgozdM2E=wN31Rox=_H^EW7rE%bE}mkx@_`rE=7w9S$Suh? z1g&d4ZuT_f6^^UiRpz_plX=fnWPfD>^js*XH0&+rP{?JrPrGSkJBlLzWB>I3Q8SfC z%*h*C?V#?bcawB%tRk5q@WL7P=3=HfQCG`0Z?TTMJh6Z2P`}EY2@zB~!o%s*kZFvpc119>esSGTS zmGpiKG_kb9Y17%n_TJ-@&-YaSUqvqn#ji%p^kcfJd;60~ZVB?n{89w| z(`izFJFh6Oc)2{+YJau2y52>8RCjehAsAs^`%la;L9YulY#gWJX3nBL)_*7ZVaCEW z^zLpT-ftaX$BJHf>yru4)Gp7!INu$9WOHDzwVdWt`I>t}K<2DRf!h;Nkn?ylT!mbT}pwO={!-><$YUoqZf_WPc>kD`sY;+6v+&l&T|7rw#=uImxhuj6%& z?8!d%*EekVJ+mbLeP+qG0N9b>C$o(5OTIx|R$o?1)z)lp%8moFXWVFSws2onqqBvb zbG~QZXWGS_>-sKbS(5q5OW9pee}=F0o4Due@(Sb}=G-x*dPyT{KCT>2n4Sj{$}iimV2mpd<} zIbSdS?LoKJo9_F#|G&p+_!_r9O8HiEXIPyO?UVAln(w19zqPny z{oKd|?~OgPj_%&J7xW5jp5cdXY+c>*gK<%4ynA1j?P+$;YOW$%HTKbu`5e7iWe zOY^IBW9{|++xxB2aq=v-PYbZ!Ci=Nj%nVbs&mwm?fgtMZzlTZBF(|YDfdC0P-TF<+|VLKoh z`}If@N}}ZQlJKIZomdXWpYy^yBDuhz_ul9i>f7H7`y)J?Ts_Dmegc#EhRq;jnUX09 zTq5BiGbhIWUckfQ+FO8784oxr7UVThOL|%C+a@-PzOk zSn~_T@6ALRdHIFNeU-X!GJ*C2>GO*CJ5N?r349N)i1JFcQSHUJcW8*`N??3W=AH>X zE%u^M%8GNNA=-pAJI##7tVLsFggtwnJ)d0wi~#z+EPI75wDSdS9af(wP^C|s61&3h z{4)4f5)81Nb-FHK|5P2BN(77_EMFyOZ4xjwhC zxsdPv0B5LFw)_4W!LK#QoajYnq;!m*Q(ej^K_mX;MyUuTeco}KrbgBgZ zo!MT1wrF&`BK{`%n0tFE$?;!T-PL-ha=g+fQ>{?GdL)ZoBZ0TXE8MjY3YZ=9llk0A zxD9n3sq^`To|frn)b?-RvyhXquG;dmx&?rYggTBE3BTj76F=l-KA|t7b1|J$l6tP5 z8`9lP`cTaDSYw#m1wQ(qGfr2o3mJfq>&6Ft-_D-CM?=O!S1oNbm2hoBz6ZT5Qgn$B zeax$Vqgcr~|NQ=HqV3SWhM1mk1@a-N)%$gpr~7k3+}YFjNISF3vuDGV1$C9KV?t5F zp3#kBGZC+I4;eAaF0g5jc9dGL<&tHMeSaqTWt|zZPkbJQr}4*B*>Xn10NwUydrrLa z#_s&-do*{EHLmkqtVR)2GvzT$PMoWJzB=hWUy1Un>r=g#ZZSbQ;>VoF^9n0K*NuIp zG9EN!FT#bZI0aKIR$s zd*K}F$IgVDO@bi_idh7=nIuBB>%wYNYaX?$KMUB?O{Djr^(=33lj&jusI~ceWkE@n zB*eb#1{G_~udUj7RBwT|7wNqMn)wMHCSpkUS`Jq2q;j_!bw7Du=GH}B7{;2fjb_7f zv5c@scysZlVy`?c^5NGXh^2Ls53-KOb8fcC9~08+f_>Xs&wgvIU6cr?OH_3%@C)6XWRA@gmVMR#<-?y$-A(PbNTFnQfd-b;Sj6P;_r7Z0wOe)gSe9p>@MZCPkpC2P39w0;a8XESz}w} zf>AT_jspJN%?9_AIpc&=(Gpi4e0N1T6?4r!&>5C7KZFo(zI~#{mG5p#Q)?odlXAx&fN_0bKjvemg@}jwMl-P! zE!E!XE$3csEZBwX(!PD=k~_}z-j%iMoqpsD87J&GNg&!y)dWXEiIb%+dK~de3 zpYMp2evNLqXJOW4UJ@@+OK2JNN>2}=EnnSzC;ie3>xDK?IOy2UF>$UdWwHouQ^iTI zbbbz6o#%&Qr2F;4YZddoz)NG2yK0uuMd%S+b50)4dotb z&SR0^N387pKMqQ(zNgrguYL@R*7ituwz!%BeTfO+l_?AZ=ej@opZ}Fkw(e$lOY?Xs z#bHWDgu=k`bn(^P$5u?Xh0aB9^xx>6*7s+$`&D8!(}Z$8yVR8_&ew!1ebN8*U-^XV zJ2V_ITT`#+xuM`Jj=7$T5b$QXAVj0Oi=Oqq#a{T2PjQNJ$?opWdWJpG-E5~G3rJWQ zqAY>o)q59Wgy}+u9%u{<>yg;5fN5V z;o8jnyec1_@1uRFUg+b@NR&YxG(}$HG9v*t=fvgRUHp-o>U?gs?yLOxqs}?NZu7j| z_PXI2PY$r0#C*N89%!S=O*5WHv>NHB?kP(jvfhp>?mQJWKnd5YZl7y-4qfjWy*GCo4YqNT96uc+Ram{a|W( zUG@>{5hBMvI}4i(JG+D>!GDd7n-3j6D!UHi=D@E% z=DrtQnWvYCOQVe8L5Pcm1dJ$c1|a6HoI9cSxCOiwcLKZ*S6&_5)4i*pz_kgCi zZjojbE&=EJU~vV!*~X|R+MS7gkCltpzAi2Fx+$9XvtKlNSfy>8RN%rv5#xeJ@H+SB zzB4+M306BY4*kdfKWlHoCRcJ?hh|q{u{0h^AOwvlnxa7v9B~H)K|^t7#5*HW`%W#E z_55V%vn|_i`M&oL@~7nw8w}q$5g9l4ym`Aj(S5tRsu~r0M4pVytEeEzIjbNniorwF ziWa(~g?^OU0hBxN01jmM_}F9iBMj1pH1>GZQ+bbcJZa#5Q1gd{_*XG=y0wTutYPM1 z7k$A~!po1(#Xj9D-7qZz#eE}Epsjm6Hl=y)fdJKXG~QW>)D{R_fnr{2Z=!V)aZJ^jc27o#0CehT^!!L zxt1Sd;4x+aUt`U58WS!N@G@oOh#HK(uOx6qm)D?mq$A-< zcvfT9!CNqc}Bkrvi6kv ztpBBq=l6wbk2MG$Q;wA>Od!KL(92*C3QqZ?*H=`H2U)hB-}7F1$g*dBZtu0Od~Kkf zZSS|9P6awKv8I>!^=;+?1$tfD*=1x@pqlxK5ajlo6=uh37Yp^ zm$7d)B>-a{+Pc9%2D_j(q&_tEoE~Pq2fuOewdCaUk-a{}A^0vIq^b|$WI=uW%a-xcRjno}9} z{72_4E$_`+^Iep)8<%?VG-~N*OkGNCb z4{=|}KTz-OS2kVLfcLz8%5!s`+yE~B@P@X?(g@3?CQY8(O8+UO?CU_spGneMur1|}Q#Z|IfpK95Muw%-lr7sZ=as%kpRzMHB z#`L=YCGmU5mtlE13tC_Ln4iDye$#!&@$8j9a({tNN5KWPI+^m4FG|?y*EzmFV(aR+ z;^vpanPVIRS2Ak-;K@rUR3t2Vc{83LsVe#UBk1Xs`)yd4qRv=h`O-M0<@mC2!R-!( zT>%z^h~wwu2cu6*H65WO+>mA}Sp1h`TcWmHS(F+^>Bv3_=BIe!RdU)h1%_a>eE1 zmiSEeraMUE9$)L%CY;{)s4{Dev<0KXdf4Zi4d<>&Im1 zr)8vuqAO3y`?O!;4D#=ylc#es#)KoF71EKt?EO8Ka7QmzDIWGiPP0VQXUY@nC=lr> zU*E4|o1uVnzS7wq*E@5^cyNll3Z$v{OL&de^51noaBt*p_J56&B-+!DCwoR~O#1yL zUN108(ZhA&@2?4eE1vS0kD zAW3;c??%s_$^A5rJ~z6$hYsu|e=MdQA@ySWP=wQqs&T=v;&rLLUr7mM?b0>8c; z_3#=_T$^mrBYz$!F?Y&)vcCczzU`O~c(yV7lK&y^$?j|7OE>vl4Xi`T*6`NiCGhPc zMq*M3Cpij~rC-eu?MiPpM`v%(S8z^sliO#rEz1Z*jNiv3SG**`{GrJX%Fk;TC1W^Q)`ZJ zgWXPPQ|fn5fq1iwfIsP{3thk15JMSHUX+#FBr9~V?WgDC3sz#_p_ouIz42jaxhq|@ z0lF)DO>u^pcQF$koku<9a&>M4>No1jgAY6e6E+6XpYWL1_jq}Wy?>;ptY#thU1ap} z9U||}8BGmJ5yp_vgV718<8j9jvv;hfv<#R1lKVQaoR5J2{mC3hOP$u|jgHeEf=XVr zK%N325e^g}e%A~hG~jn-ZTT8YZw@MG_&v-)Id@*1Ka-8cQZf0;yU1q6j4i)&p-Bs5AXkosQ+{6wT|skFJlsVm=X~+LF`R{ zn^zAd8!<28_bbfF!=E8#U@{OmT>+0FbgkL>JD%};A;_!zeIIxh8VMi|G~x^skNoiq z?p;AL6s!CQc@&s(T>s=<<7Lf}&C`0jIHXL{hr~(n8&uj7v6Vwa!a+MpC8eH(;j)jn zfe+;(G@}p#C-_}y=ZhR~1Ll`_(#vnScu?&i(VA|p!Zk#=qJ{LlQk|Wbw8d#r+_%0zDHup|OH*s>#gJ^Ghx?Q~2T^}vS z4I~%zHejcQ%KbWHyMw{mdul2;%=sf$&b1k$ntvvUxuOqQ7#te{4LtJ>TB8wO99CME?T|^yAFC`B>$F@q3Ah6u*rJ`u`^OmhS&?f{U1i1`)2rdb<9DU=iw2F19pesF#|O z4;f!XW9{tHrfYpgKiaqW`q>>=6O6o0xO3({hgT`Ij(R%|#O{{A58D`s+UA7j;<>UY zS)ZV$xD%I%9=G9Ak)wjol#_|8b8emMk!bAS>1s82joh+Y#SY$I59DVT5~10B1toEb%_caXpBg z6Q`{$AKNT0kw@5AilVt4*F65U(|bAOnnj(9!UDDL8kftKELzH8Avsll^s{RG6`Nb(eo@&;E;sCOJ!10PG zf`9Ii9~U)iyu_a;^NY@FxT0x!Qg)H9_$m9Aq3=;l8cc0I-+1>pAn%R@2VO*ZgL%Oq z(7JYxV`%lcIZlDX4XA>>9GsI1Y^TLOuxx+(9nC5Z}N=)r{MnI@4B^ELyV`W`qr|>&9mp0Lxsn0 z;?J&?UC&_^)@&$ZNuEB$gPg-b45C^oor0|lW4QvC_0~3@64Y^oVg2wR4C*F zj>aseoUb-%h>~{ZE@_DCLGe74x?r6fAwj!~TTFj%;gD3!#qr7^3QF|X^Qbh(y?fQE zbM%w*bkev~W2QR#UHH$Jv6@xH1Vpr=Z+)pE!C$-@)+0_K`oU}+U>71IM&M;b5DXMH zzToyfdwPriudF2VnuJ(=6B9TG!rZSpCFQO@!(iqGjRe7H5_A0+53Wk~gh6?B!DrH1 zIq~{mbN>OIyX;WrsaEI<2M^#5;(soI4Ja7EFk;^p%GR*^3;6I5J|v5KDZ*DgWG|i^ z7`id281?LcSHkA;jSG$=XYR@e-i5yoo9QJ0$LBc&&oT_zJYF zOMVP$g()-I@m@R3j3pnS4t^&kX|B=Qmwf5@_FuwWMDcE(7q9sK-@ACv<*QiPZekNn zMIO!iblGB33SI-JUVZI(nBE2M9@VD}2uYJrD`G^ze}G5$UtFn7;oS2j3||xx8Ux8Y z`>($UpDHrZLu4W#%BXV|&9mfoFLST3KFEE*gzY$H{7>itF{L4pJGSpY!%?n4D<8@a144$viN@nOZ6KU={c}L5H)6wS~z7ZbQ?ULG9 zWk_*4`d;GaBd6;Gf7af&ah0R>)dFBS1BXM#>l9Q+%ylzg9%B-psakAs*Y$vTV)bCm zD$Er{Nhd2DXmX5grI?!dO>3z!reZdXV9I~z_)Y!#gUp{V2Ti#~?6@u0T^KClU~135 zB(s8-*{nd<6*62_xu;dH*9CS0f%P#AWN>js<9-;KIdhK2&w(W7wSn7o1exW@W5%i6 zuitZD#ajAz>lt{`zC5BW$ekxveSABo@tTU?_k#v5JoiE6ag7xA&Ic-dfVW z;(#@!#R}pn5SW3sbFQy$1I7ZSj#Q4uIlLUTzR~sdm!OPKa#6GRAbd+bK|g;XJ=ec0 zyBWCt@L$}2vlR%nbXN8RyguL@g^%R7*LSa?YHPnuZIRUOArBdlhzJF;s*2(e-+@BJ zVI+IE`B_?zkP72wS<7~g%|O$WSq&1kzrlo)qy=6?x05-|IDWVM_ZbYld1e8UnN9x?7JS-^V|Oyvidal00phjC z3}3o-MLS5bE5|aWIz17;o*|EGm&CrxG2njY^&TmVNQ*R9drozQcm6=a65r4uS4ZaV zVn>Q++;`BQ;rCD7`S`M$o^u1B=^Kg;iZOw5P^ag^0Qv^#vknK9KOy=FNtLQq&bt#5!2irI+Cu1yJ|}P>MT}4(JvRpMP2l+ z^fJDP=Kyf;d7SlDt0aqjU8gH0FhDs(ewbZ742!%3UL>N3t0Cn0p`-QIOOn5Fy`(eG zQ5$SlOzs|49QBYdnw$tM@SZr_L(PEb%i^^uATA7pQtAgegmoj>zCRj-+f`75w@b#Z5e7s^(cVjWA4 z;9kdkm367@tNHqlAMBlNvbQzou}n*>L9TaT7quBddFaEFW9PvyWKZdH%=yL}VkjZo zo_~PhSM;iD;~VUgYbv&jIojvGqM~N{@-Fsbs{hDgBJVBm*T~0(`G$Gm%cQv7=M9!0w+%=wR_Pa~6 z$Pr1pBE(KTsA26t#moYt5XPPe@i^=Z`sIA6wb+JuqxJKbWzQLHkUN~J^J8wJEk2YU z;CQFmTPFIJ)tewIDju9HB#N*zOGAaE(BbV4T`tB~Y9_flw-mYog8ci2;?zl1C$(g+L=%kL5W(Pk@w+=5oba%AFz?1kKC} zh?R7DivGZCGq#q4b=e!o-K=(^k9EfVXY303?~1vb*4`^})bkhRTFPCxzLHxq4oyNw z2Cjp3PyP=CfH$bOs>r-ze)5O-ukbZ3EhEm(xTR}P?BD6sC~c;)wUj$??!mRhD9mHA z0N{jdxf}*73sLb;R(SoQE7#eSSIyJkM(-6*1O9t-*8QvdAMXDtwQu=3pUk)GDR(JN zcPqG&Ol?-c%o}J3_^IQpWbE$(1q?CG?Lm76HrNAW*pr?$m`B_^L)Na>RPHoQq$$Ar z0hKWX=%fln3kP$yH4IQ#l->fMkz$*!y);#-o;~vX)iZ4lh|S9Et-Oyp7MR=i)fX== zAY3juJH+Ajz2Gzii5PR8=Dc$KrKwEDt1tJ%ZMgt*hTEW=>Xp1Mup9TDsttc}KW~q? zhx7=j{_^`D+}UU^2;pM4CyZ6&J)$>5{#1c0^Z$FRpd*&y&*B+W(K4cu1CW^ zpNi@14Yoo&xr4f{h!3&|gLsNq1J6^sz5bMIK>WbSX8xWoX9)-UQ;x%EhHvN^Of?63 zE;F5G1?GODi_=m7m4K||qL4b{au!`Sh$t-io36vq-?$F*EBh{%H#p_;)9yM9?pqKG zsKwQn!0-9NKw$uWmm1fn0kO7h%a@*VZi~QJ^S%R`9PvR2W zb}wM!;!<7bL4Jm_82#Uk=ZfxYMrvaOc6%I1-9~r~3;<)h4I|;=p#aEqjT_Im@*5o% z4MSy3{!7SG-*VrR8OKMiIgu*wOP%nR7i)UQh9@&NQGxX|MjkJYCKsR+Xhp6;t{W{6 zN`t}Sk1Op7zaB4h_>LA+Ue*>pO zolJxLA&V&f7}VR~IA$?*EW;}5Knb5}`J_cwu~IPbCA%!ouDUa~w8rz?D%jTNH|26$ z3rVNQXphz4B&(ymUhguQ^3H^H<7lru_otuQr&*mQJ<9EF(-C;=4nHaWj?y!)&3G>b z;!Ap;nXJDoXz9o&`6zQOFgnWSA--<;{p_LiL1 zbZyzehicF2Hm`+}s=e7Q{s(*=ReiZ_>%4<&oJECjbD&k*Nix-J>cP%AL9X?fn%BC- zQ!VXBF*)T{<%4H+rQIZdBIgiKtusbp0H9Ca;2`2z5kBGu8TK4Ilb~DgA<&5-mZ~e+|AE}V&N+eJDI)_X=0f3{obkN3So|BN+^X17p})3u!4p z2m6dCs&B{#;RR2~&(q@A;s`t)rp>r6u48R+-GVvyn}Ylnnm>$9&k(um6^)tZ2cBIm zV6^F{8?tPVNCzp%=UfJj^AoKCC(v>?)2$Z^F7*yw?R!^tZFK;;I89x$N{nrxj61w%YBR zBV^S9&p)?iUA&H!r5E)bFTezfYru;EuH!*p3~bD18~6*+;h`~3w*sDu&+v5__zTYf z<7|(IM~?a>^t=+y(Y+C$V*aq-_X3uNqa<{{TZ#a>S`tsoJ-qt`$p$GGPa1LAN4<9y z?hWER-d&O1JuyUmKBvF%68O2$zQVzcE<4!jLtG517ErE!zzCj>yFFA9AfE#Y7&9bj ze1JCCS)hY)EUy{a5Ayw8C)UFjyZ0o!p5?Dyfv|P2hE$$er9d&KGk{pO5POK#I%QwNeSVZfd)vj(M$E<~h$ z$WVMAcmV?%w`q^M2EjR8gD>@0AndjgE4Dgdi|7MVqlYO55&szmqb|XR{w-Bo)DCcjOpx=XM->hN-RMIpuvK zMZ^no{buK_NQ4nvX0?opY}rE%L$XxA#Q(4i@Lue=oBxBnG>k z%53$%ISWmsaDUM@cVEXw|=1cRH}&_%eyB&VS9IElrFu% zYK9r9%^HIF2k3w}m3^|6jJi-hGSUs5(HDYB7*P>Z(~Qd)7l-%DfYMgx6Zt!;tcmEhfQ0PTAB4>KqHqS2vioU(ICt4-mhygV* zWUz{HPcejHkkK+OX0T=jGi{3O#1S&8W6igI(RrL_wOv`U^PbGMGxfJ{X2g$WAH_3Z zeCR`9SJBIu*YoIy9f=Y?x!loN&e+}}3~qoKZ7lJ{|*uf zau4t3Zpz46ppz2^0d!um`6=6ikcYq5Z*ubU^9lWDfs?@t1s_O`-^r*Y&6MLwFbt~B zz`_2ijMI95qVJSwVx$|nb4Kvu$_2@%(dUH2az@J*AROLMQ~$QVXpz@X$M^20F4lM| zbulRw(eSbj7=#)E83`Lk9is6RS6_yldc1+dmsLcH)w)l@c82^2eTITI>N*81P8#h_ z+Zt2JCG;4oO$~g3L609H)XKsWI;8MPn3}Flu%n@B`X1ffr!fT3kjLAi} zV?^&?u~d+thqZ|F!43v^aWt$w=oN9Jqb}%xJ!coFgdC(1>>-qt=pNm%JJHQ>ElcE7 zjGiaB7N{HA$x9jcTKYw49(tQI;BxHh9l1Bw?2g^yHMnpYVIIUM&O;MXU`hf4q)Sga z&<7nXNNB?wPvoI@n!7x=dme-<96oWt(iN$HFtg9m)~i#tTCTPsybk7IYdyA_qxTC; zxklBSbG(0{E6tAui5Dw zrd`We&`89^kx{0|e_sy>gv0T)fEWLn!j%GBR z2*(-nd#K1}cYOfekyE1kmBwJ58-`puHW)+7C_C~`Wt4#wyysYdZixy1P50(r(P+Wz zWa@VD+s)QfEbP=rJ~4y92)s}l0oOt3+yU-t##ZXq_~WWhvsX&1<>UFz9nk$AyQ|PX znD1Ei&NoEE*UR~8+8eJv%AE-9I^Bv^pFMvACuKkAF{0n)5_Si8hvd;jTR0yt4A|q- zC0kkkKXq^Jwahrk|Ca#LeE^jkM&EQheu=-bu`qbKjXi&mePq1|b&LRbwy_ z6mvm#O4}L2w&#Gh$O)hoJ z@U!!9P)`>8(M&wIueJMfuSAD6WWE;{ApH?6AHYtljs}!ZnB3#Gr!hz5p&2nO=`eww zo}R}?EW@w^#ob@8w&v zfp_Bn2ph_ZSl@0}?-<9vw%_wP-hF0_O+6(;&z}inES{dd277D(`k*K+cA)X%Nf$10 zfOH4b3HVj-3AXVe26$;vp0}7gi9b` z=ql*dCZMYPdK_+W%nAOnNo#h z_7d$7sz8M3Gmh6Fm}sE*MTTnB$KSl#bE{g78`LXt@yb3UCVrq?S|_;F%{{Q#zI|S? zNW8IZEsb=o_IFBA_i*sxALJFP&I2o6odgH+@bd#{uIxVeD&r! ziGa)2+Ti>r7~P%CQ$C3?a<0*+)mzT5-fQPaa)Lcix3-hbXLsnnKc+7MuAz?#+^%UZoc{ycb*I$7f@&}SiuH7(}(f!O8yS*KltJdbn5 z8Ghh{@sy-(m8T7wIm49Vl8h)S5NXi<^^LO24hAgn`=OD4*N)KBa>bNtdJB;Vamknbp(C#CC5W#K5;tpJ) zUIGw0GTjkd^MDOq*_n5ocXM9Hy~uVVMz!B&9;wT6qY3dc8#5ArmZ7rOg{9M6V=iZaO+@3v#h9Mv< z9xt{i1)ghJ{)}(s7%>Xn+kGW!UTv@PPv!3IypQ+4x&N0DY;FP8v!74yfhfs++dqVp zJeIY9_g8(OV+oLjm6@DB&=&B7{>1gHXz&*@g7^69=W#m&Q*o)U;A7Jxj%?iq?@wzVD$XbhCyutG0!t1c?AuXk1Vm6-X#a>a7pz>|Vw_npfmOhf{C9i9rE+PzV7cR^o#f@bfW>-GnRbS?h6hMRJ>%_!w$$U! zVH{M^nF2c18M^Y^W}RX$#5n(4b%kX$&Rk)Ha;lRr{f;LH4O9kq;};`T>2jY15H%L)j4Z40 zDg+@bH0ZL#16`Ni_5lrhMk|EPY@Oy&HouSesF52emvO=nWUU8fIRk`a-gkp;SL2bL zF3>sVgT+0+F?%6`P0~SQ99ZfM+gtesobacT3&wl^rM5N`-!6uFgBDRamEN8Vd^+|8 zY=Y^(o1JRK^J#D%NaUuo9&;C_kfkIhNO$fz)=sh)`;-FsyMos*px*mc^dcwZ?H}E~ zJ2~>28(X_Ba~HNz%|TD#JX&Ma+p+-ge$2jMh{~Awgg1uhlOD!z12OC3-$IFa zU?Y%W_+!FcbiYPA(S~<~`(({3f4>~Ev)YquB_Hi8zumiTOFWR-?0rS?A`r0dKyAS+ z6wb#3;r>)~Pc@6K6Qxz})RRGO#V2%Lp!)uxS_`_17330Ntp#)fIrmm3AVOn#dcp!! z24P<>N~gB|SNGrC|5e7s(R$H+7BJl#hWA3TFm$w;}rK=xnHA`aw!TUoQqPY z>hxr<@1mQpiAl)f*?QCm&6?AlqB9JXOH!DshEq&JRs2HXa~r?py3|LzXU4f0=c2uJ zseAKDm@2CaB%Qc4bv7W8WgVw{vfMkwlRG&tXUEGA5tV=1?j6eSC01qW#dWE-Pz{{P z@k-Mr)%_)@i<>S*CEL`!s^7_KYP~B7z9hFS?}mpiG_vAIza%Ih3d3Den8e!pQJXna)n@VVhU_>hyUasrp* z!o}?v3Kvg9bmzDla8}O+zPY2gT>aGhQ15pr!Cn2*^3hpcTGQ#2xq4v<{armzY&8cq#be1C|D@-WM7k@j z<@~0z!Oq;Rid=3d=ZlzPTLAoDApI@M|{ zU_jd{UrZDix2nY)Yk5a7h#zEYEPqiVYxl#?W(!9*ew8Pvm8(X}Oyz4RdMX-o^rud- zmG3-L7W8=5AI93{OB6xPid8x42JVcapq9g39`rn#``j=kf}352jk1WshSC41Da z@)LJu?z0M$Wv$Z2n<=Y-#U1`Gps}Xr*3Qyq{x^QvTi(Rj^ZcfDr0HF6j}^=y5^l$} z0%l#lQ++^es6318PxrgQ{%h&2OfzdCw%#{1l|j8A)bn8vgQl7>2Kpb?3!mwq(HmL| z$o<;RCQE$`)oL)T!2Ug1JBV@`i3{C_Y!Rp@fT0D5Oil&plxOp^%7#1S@)e*puDNGu zs_~rjtJ@S2?QxA%I#M^Z%F?SF!MRnaYxYig$BXcH?h|4^U~~Tf(Xzz1(aO)77c6TZ zGD!8txg54}c)8-TTyP}2*LhFxKIRKK%=QaSwJnX2;=MAzj>~Y3^vSY|^k3Y6cmKDp;;cocwY@@fSqv-zq9_rj!0;6Kbqmoz zdNKlT;NE6$I}eZbo5e9bGp(?Oo3$$S8RCAmS7=(CkK&pKewbEs;1@ODgAhl1p!7Or zdDh3oHJdIHFj}>Fvc&x~S6!ilY{91I0$uIWCp`WZL;NG!hCUOoZBd?Lx$XD-q~5<7*^3-* zfD`IjRl+iCPL+Br)BOLQ@eD4aZtIu^Nk3CGC!0*?uoW?;T#Z?bII?ClkFtmeddK&k z(_xjn2`=Js2qI2{Nrf|VPfD*cPW*8VM$c$2=0T%XnEQw>PD&>KbGO9>m>#d)0AtbR zMCEJvl*j#2cuK}()dhtBzPN%h=#7}Hy2z=94k5wAwY)D=;s!=T)C_S({Hh&*cwaRT zLOsI~>Vb52p58kpbupzC7c7;rW%=Mp^c!6)tQtJ``zL)CutIdf2ZNTpWCzhmZ5V+U zVFCdIZv**}M|nP8K6j{!_9t>&-tYG=`>j!x&ZD~Kt4BBGn#+tCCAegT?hoAr#cYGp z2@ZuLh}=_U`mA0DcU4I>>E`Udbar>EW~C)%r)B=y^_G0wR<=@h1;x}{msw~ikflIg z*jAV;5x>NeWW=@SA7CKL%1=I|NoF?rNcK1J{^H6#)-S777JAEUIk4n(UjgL09crRJ zYqAKhT!}q`EwBnAfdGV1s}N7<5aKoF(H2kN2mXv62W$}o*{+Tz7&hA52?lrNd8x4Y z*K<~5{iwWhZRPBJ;O~p!OMqrPE+AO$zT#AQxo@^Q?X0XgSl|NRDQ2=Cvb(B+Sc$@) zCDse9uZ&l#=Rp%jdO=C#EOs6RPO!g01|Cspt9922oQV%zedttF86SdO-5W3D>@X34 z3F;JIOAMuZ%zO>I;X5lS>}`QY_HBj7qMtPFY5hCwCXu+0 zdQmmF@2NpLUsmE8r({%#U3%9v z6)gYo%(AWz9Tx0qbqqB#yy9!sZ_|Rj?*^uj^O<67$!B(t_sFSiVTD$)i4};^GN(_t zf2Loj?z)9iKq@&NvWf{I$(9S>$_I>5_!+2Ne05@Q>%~d0#FWjJZRal7l8w43+Q6q? zbpvno?App_`DUtP(i=d$51@bQ(rsn16=OH=*0}Ni>(Cgj7==geXLp%MxcZ;S9ci^7 z;D*3y(Rzc@VO|+{EeWU=D2rDepL?u;gwUN)Nj&zgg9g}sGpS0v=&6tCv^TrAJ9&Y+ z7Umqqu8@JP?o(UvQ82`q0uUzDk!Lui8sFt5@pO%Abj@1FUXnh8ig2VlHAN0lG^mfM z(H`pW^)o}mE&kd>7$!;G(I#P{sx`fqYzKKQzCryl&Zkt5@fG^$)`nc#st%Z@?Nv#0 zNwv$AVbi_b*R@*2975a!&0ah>jVyztoJ&0RQ3#l~U<6(){EVlMPTmDcmNQ4)lS==y zIrHpZ?k71#utLy!hSLVP(`oTu?tQj-gcTUaKd?x~15DhLCp_RN)ZJIGz7bdaPo)&B z|Aca|6I*-ta$o2F8In=8hB2~kvu$C*??lpMkv2)FK9rY&zCOiAoNy?Asqcn8=YHI| z2Q&3k9E%Y%4WsI6%o^mD3rMc+0OM3?xmkBI3jWRpofS%J)f(&_%qBUHC-38aPkeeL zP!LL@M*cfzRO8Yyt6ANz_k%H{D_^OQc70LbVe*uSJqSjcX8c8F)*G426$eYK{ZP^j z-sTs<$W-qQ=hW~fRy+7Xe(sD9oW=;i4LQgBtgUDolpxvR+P&PDJ#1dzI9;I_A#@!@ zDNhs35&vb86>}dubuah(@h{2ZX>~$N^QBlKW=kbX-e2%9=#XcDT>|nV?;2n$6x?6& zySgKUJxMQPM$cp4{O&RIrb{?ni=eTQ++rXMg7kn;m-)Y*SNjcTch&w_t7cNi%B(uP zN#;si>B9Didb(@n7Af?lmv37=*WuJOs5ldiZv!SwcoKiDgJHRd%X-fg>lOLf{p6V1 z<@JS{XjsZ`9U?qBfhn&Wv5}!#v@{*fNJYTFR z4HM?>xt7pj3~~-0F9y=rC^)(MuFi8_Kmg9CiA zmPsSnLvWSzr1xlP5!u-}UUy*(At~hR0mrPhYXRT|Ut|7Kp4W&CTE< zXh%1d;dsN)x=Y8#SW^1~ax;I>_;1vH=sw-)eP-SFccGb;)e_y5?=j)2{xG_2El}=+ zrdT2A)_nsr%44P&RE7$cL6q+2NRzGLJ;You>uw_TJ`?@)k@3uIAcn&6;xlLDy2GnRfy49zS3TY+jEC7aGpEuo2~gvdDH5rTyNUvUfolk z;hI&;%qHuyWr^2b8lB}&IvQe`@5G1^JfGD$dY;o)$NQ}~pNaouFWHRWK}yY?@4}=B zCuB^%@vS4a5l|ut%ofE%-xq_th>N7#!dA6YC#`($r-y*DZK9C!#L9aip`a+BWapy;_$KOCX(Yms!SMKBfusP&+E98No0+{$sR%9I;) z-k{v>S@=j>``J^YatgAU ze5k9PF^;bLyu9G7I)_MepaxSuihyz7000rLWSzQCdcz;*YhruC4teDOXB@~{xOSsp z&MM!E5vWof5;SrQU3u1uFJ(Eo{~qtAF^~9Vd^pCy!v-F9xtZnfh)rd-_;Bd=Lp#mB)+sI7MAm23iFC^^otaf=zeBYLw=H_Kr+ z&yX9|@$iN_nAQ{v2jN||z>SzMIg?bD$B{aZNl$b&U5q&R%L5A?M0d=pwi5epI1|F~ zHV$>SAdlsOhxjTj6Hn+6AItfvyCURF?{SCz9eDBx8L$-6L7e*>Q^Hf2vz5)g)aDF{ z_z`+saObRfym*S$$9RrXT`V48To>XL7$A=W3hAb)x5TzFE{<0YDkIep^*rU%eU8Ga z@3s}6&T)xdug-Hx*;;*<>_|^6Y&!I~s0*=6FW8a%mvQRaa3Jq`F@d7RS2qVWcQwzk zM!mO2RfBVWfqIP?kUWx_4v%l|3lQ(-OH8`vs*_U5l#X!d;;6k{ytg@hAwN;_w{Swy zj}scr*?QVDm&c?zCe000D0A4^?>!xp*T9I2!JwoODDY`~T{bzA$l=9o;5}Z!X|<&- z);eDWj+o9c{rwg16?FP=_Y5coaegNO1f$FZ4;(?RB);#!0h1+g;^|G$UK|oq<6I}F zzw(A7`@h0XB>u>c+c3hA%89@tH=b|hcW=uY)-E>KPsnOdi>4nrJ2~TTuzwLaitg5& zW%9^dZd}W!57inYkC$j{)IhB|Jk|Gm;n(v|Fnmvo$p#I}E^H7pIwGk@iagk!hFpR3 z@aQ^QX^1T&Ix`o$gqrfvTA-Z^VEyolZP&Y;upZjGJNf$uxpB(UO$aa{swL2ww>91Z z9VjSI9zXH5#^VDAo8-Arzu~m|IGu&Ar{T}g?mICmcfq*?lrbO}4CBEXuWP6`B2g7q zl06#so#ua-zrr5*@6HD4ZTH=ZO(I~1u79=UM{H|@zO1&fyJLQWbIgo>=GMd6+|&ZE zak34(0KUJb6B^tqBeuUT@xdJWk<)d&zdXkY^X<_wa|KM-b*OHf-@wv{s|b_#!d^UA zBi9pWYR$?RY;8$bhL%syA~<4ko1PccwZMb}!60g1va^wr4iC>pnr5`UGoEP5T{-2< zs15&PW#%|ahu4(5TMT`8IudJJoj_iJ>u)9${$HC{$Qplla(?3T!)!l? zbejr);#{pfn#SRjOO=Q2*+sJ$L>^9@^3&mj70fAC;t4-po!A*a?1gSI zdP8^PE|lX4TcY&Os}+-Jp1H!M+88Tp3ozGdtnIpCo@LBbyYaS%Z)@K}RYM%}Z_wLA zcr3R^vsy~%MBU@>H{WuMtl}-6)boa7i3gthK zepGj109Uo@yP=ADr@XplaS?BM$|AeP>KV0k9 zpt!BI@V+9+3f_*vKMM=<={y$OIzY3om}gH7N4hoVsB!FoMWTKImI+cZ7I_Tv=6Jy` z_%ctAPd3$HnnP>8`PP1x_J*~$GphpUjgngQ2*9hx7#9c>vj4e@EJ3TzFlzeRY%YCo zcmRk7@vC|PrOQPtcu97b)(z@Rabo4*DjN~zkrIYxC-Kx3fe)>I#FhLgSKt($ZY_}b zO6v&4ykoGEaJOjTq@MAx7r_(PmFCUB!jdP^2A!-axLE5n{q0!42Do7>?^R~g$O!0z z%R#RmVoT$TS0COW&%b_k@o?p%bp%j}MT9`n8{zsBA;8Nb!ozIM<15HSzXOa09?o6? zehMP=9>6dyz@&hiL*gsgb;jpjy@}n{>g})>>i=o#uANnaA(8Y-h?bL;Lqc<6RnH;j_2bdZ^H1J)?Km-;`(2gGj0R}kULkOGmn=r z@au+dM`(U%8lV-k#4w^V@Q&)RiN|6S9&*+*Y`%h?5LS{#8;z4`cHb5I>J3jKI3xF$ zT0euFEjzAeBx=@3Bz>2)rnzHc6+g~si>ocSlJiqw7Q8QWoWHM-kK!vT;(&S&F8S5~HHt@?Pv$%j^=;NE&e;li zNWJ3cIH8+jtZ*OokV<3i zI5L^ddC?Pl{1{%_apl9rKJjY3fNQb1ItJ@G=LF|AN=7`8i;Ln+Ib{EnZ zpf<;I=HEx0{h9VUBs6`5E}yl)Rzu(^W4q7~;6uypJa71bqq_o$H_Ckz-^>Ui^{k8iC z`oJwBQ$cwj37(bBV8p{Iid*;6M#diSxu`*Ti`J9^)i3O|s_|%hIV3lp=g-y>OQiQo zng_m&NnS#Br<`;G?H7dpTt`N~Vf6p#{`q#A+A(XLUA|y086mkdjd@Sc9$rT`^2Kb@rsc50To5M*;s5lamq{W$?te$OtrSl~@_4 zh`;W$BkhxKP*<$%o#RMj?-er3@K#!2z*BKl0hcM?>q|aRU;D4}Kwk1O(&jOY`0DRk zMjZE7-)>rTh1>#*EE*5TjDsNWh!@g7EG!Fj=T`#9mi<{J2y@0F0LNBH)JVx5ho*8&Y;UA%1+h5q<+J$|sQfJ8K!x4uNReRm z58Sr*&b|u_0iVjM5T6P}1QS_wj=#X~NEhWNzOh+u*e?7S?9WL~4TWKfj%Pib0^lM( zERD}0I?#uB|FHS&*Q=lYw8R#BM9|JJp33qALLet6-=IbJHiTFgJpp22_woERW!ht@ zM7mn+@CuP&;@*gg1YR732PNsCwRhzvr26&E7!+t$^ zMH-79-0wK;MV+C2YlL#z4N9}wPglJvNfDkm5o!)=9m6Gk63^o)(l)miH1F8@piocr zZtF`8QXLsr_SwY2zJ$A#*=GxilniPX6Y%+nL5j}#E)6g@m@zJWjp0LgyD~a{SW>d4 zo;^CH={I6dYfFq&pk_+e9Anx4|~FDZpB#0$INz4Ul)IU@NQWf~c<#~^gX$k^&{wqZS!$AM&9s4O!?y{4;#+j~&-t(>bk=}D})sA}@P~We7jr@S-wm_rI zp_>h)WwD?4$@>a$cddT=J$9T$Ekyq-SkKTMR+toCF}K27H1^;D$O()|EvW^4#B+G> z1hLjUVyc3rnM79WLFK`$uR?FS(ll)gfkthIME9W5@2k}am18tL5@2T#Ba}J}m5xDy zlh8zi)k~IVb~I*1DpGgj<3_bNKWv(#Q@keL@@3i6M15sw%UTWoR4^7pS9;P>o1xi+ zzVQ&2fr)1}q|~aXv$iCV-1G9;S+i?GIG!t$1v6Ac*)l>Ul+UtQkvr=Z2RIr z!YaT_5Sl;`hWGN3fmezMPvWV4(91px$iN$BIrt06=YiNSes{coxf# zALEhOnTMSj*7C;vl+hf%*xe&N(><-Q)HXa2o&*I47`$i7?vaYg$WEt+)JjQ8csGm8 z>D4}~AH`D)k8qcvOnXFM0=&lK;z7)aY)W|J@N&gvPWyx1r*(%6s^-{DBN)soflzwP z2KZnREI)qNdw{e%de7V^(ZRg*KGu_rjvbFVK?_2?p)y^1sLTU`ia4V*eGi?M1yx6O zhpwnL*rW+M#gj{mQu26CM(9!4kB4f18~jD-^6_<`tqCfTyv=^WMcparURLIk7k#P<;8{B%F<_Cu^4 z7IuL+B{RH{#BFZ$9^NN&qe}9c=^#Ex{_0TM6~fQ(n}QekTM%6sgV?))Cu9V6HRU?c z`b%ww7|CmPa751+4eUq`PB9=tGUTPAJ;z8c2%-tm$qi_a3}QP%;!%Xi^MdwcaaJw! z>D2iH$?siEQ>u{?W|jk~OO^#?nc1U|^Fk{wfnRdzNL|~Na(O?JIIFg!eM>*CyZ$(5 z8eu%Qkv@3H@`bNB0ShvMu!4tPe#K>;Fp9XyI*|9`i&)EuN<(>Ci5EmMYJ1372x;rC zVLVB;Z1*)kst1eyonxw)z2;232Uae)3*es@LofZ#lI9<3Cj z#4iR-$ZI0mPMqk$KxM?xdz#UHwYIf$Mk5L^i`N$I$Zs#&wUpD(3={H^<`coK#D{2~ z<(|-=I_XZGOMeX&s?&SR3mBnG@yh(pt32HH(TN}XYx*E)*H9i$9`ALV`ru2+M$pDg z6Hhw`QOyCVDUAq3-*|*W_yB8W4*nkaz=lCZ#gyV)l}H~dno--Nl$g`Xm=-h3n4)QRseN-RdVoMkCgDUZo=@W-3O~qX`(>QS z_B(UU=Lk|oT%~aQ8nGlN#5AhL?Qw);HuxlqO!Uo!N1`l149$Mr(eDKRGQ zf7WPKVN4^s6j@@|c|LzkNK;N3jZ227ZYffHr9p(LtR@p}iZx07#kz5XHI1ljJj02n z`T}vvNlo^KXXBU~+tsB$ohL+n=&AUo9A9vXi)~j&C=`$wL6+PN8p{G z2QkEtjTD17P#eB!eTV(_aXPh)}vzzL8N%CKxbnK_yL6TcnL zzWReyU7Vt?gFZn(TbEi-YDHinii>8?(aKTC_VOZhP1=)AiShgz(aa2MS|ges1wZSH z645;j39`9F$S|gF>kLTjiH=z9?pxP&b?6?_XP-h$jvy-)il+y1G_r%N9?|xSzMfZc z&(;yXv?j++f0c94OiE>kJ)=V4pKRCmNWSSc4R^ zT%hNR9t=7V!33O^+%@IFL0bEd@HU zH91?X#I&eF@4x*<$l0B&^qh?X-tnvEF4QVKs$)_ z^mVv$7PCq7)8Z~y1?3DuC+tB}p6qYn9P2`ZfUhP5scRdOgUAC%kgs9POjr{6$ZeVU zQCx4$k(eDpvRrt#QLZGDOGLg2l24%6|&Q*J(*g=vsg8Z`)ZnT&HN^8kbqdpg4PN>Jv&GW)B zP6WwTw0M5V}8d3zBhXfbFtHg&WZ==&rSo#^W$Qh}xp+(oR^l3yUeCF#w$HGsHW2WS7xCHHE zc%12h^Io2IE?Im%pY)I-(9u%?%)IF)B0-HK8b*}m4(%nf%6r~Rw2(cn_}CH^>JqH6 z%9BXMuOL5Ka`POg7~6L>W6Uw3wTMd;A+UU)-l^yTp@Fa37)RKAKBY1Cx6eei93ASD z0^LVc$SXCCb`2JCIW1O~S!J_hL90^Ak)VNyK+i$$Pcff35V1X}Xgj?|3pUp2H);|9 zZ3=SoGuMTyCb|>@k{XJ2-v|R*l$w+5!;&+eI)z6g;ekvY6XSZ2;Xhvo{(~I~poFIc zEOs8TFXT&l6A|D*uy!Oz49LyPuej13Hav^x_5t}hfy+pi&tS@QEr>8MQ9(= zA^NGaB>{?X*c7@|P%=qVErY91jz~LqLL8`I{>IB`WXtbB1 z{TOdd0}Pes;2!VxVE1ZZzmnW7>-iC)bee%nfYdxL9&`;^pwxwAyi3OdAITo9cPVuZ z9d<9({syD)iZcy_3^gDKV^pjSickqVD2>gqt3 zCv_$D)I=PCEXbv!1#N#SB<+J=QM;?M!(abW9z12aF5E(<$g9)-}~Su|Z-N zUl@}s=akkvrRUL1P_j|f>1C`dq*Y>NkaU2!K{Qmriw+u?*M~k(A=zl_-$#3msWFj# zRFbL2btTtY&QV@rX9L13O6R0MEa+xG)sNFaQxc z+p4n6ndoZg6FZuAPI@xW@w2%OHM~%lBweTeDvfq<4@`IDSZ}VdkLXh@P0savQ^GRD zN7*!0N|C?n@RV*R5@?%MCci{u>a#-K$GUZdvW=+idXWPY|txMiAm- z`O*3j=KcHGNMEdyp!izV;8XM#-o7%omMs@f`)wYRFVVZ148&> zMogW{6J92><#{e2qGeBZIbB0jjF3vW{caZ2P-ET|K8DlpRD2Ki*rm9bo{Pl3xLIm@ znCRg?5s^=p00P7XaxgW+BYb7Uw5Go0ky8@}7WW+nSDj*B|vB%7Y`C@d@Bg4@NPW7@N&gvOz(qTmx^gsXCfUF zg<`uG+k*;?j(~^w%7)1*eYWPB&Y4I{pAXCJ;#K%mkB`NVF%c;a7)I4O4{1aNBXkuE z612eV>I(ypL19EvM5T5&gOw9U-((I;Y>&7|=RBklb%sWzK#-#b6?rHdr60-Rj~?3*jY2t$O@N`qCS71|(O?@6X4Qv3`?IR0RN zjOS&TC)@nNi>)f1AJlgwK!9FGjFMz?o4q=uS1+IJGtZ(q@Y%pGxipl@a*E0Hk@!^* zS`8bj(9*jHYLhT%&f+!5^cm$K7SAZn_$j~e=Qa%3$sP;?if13qqrmfLxkL*h7(Hbw z(5Y5hpD#b3SkF=2R3JSwDwr!M1A0rqgMDPzR)mI}pQU#(2!o3E)xJYhg zDD(`s0S#R`JCVoXY^}V%s<*E#JNIZL1R1a>31{SNcDDTRvfRJDzjT(3YIS8O8!?JgCBtG=>qfo>zW@dp%}#NRF)R zW=K!=MWl{+ipTS9gmMx=VTvZF2fK~cwe2B_l1pWXod|g%jd@;9`ZCN!qsyx^h)EV* zV6Z)$gi?uLO$_AwFXn!U9>Yga&v5E?79Gi?a5KosM>_Ds?|{gS=N;`j*u-~MPd-Z4ON4NE@)3d|0#xNs)$9W(vb%tm zN4p&-oa8W43Pci-l4LuAXVpX@FezRFdirz;bQ6SRbuJ@q(q|O!F*VPjL*(RI$+1nT zLbanB!={6@V>HG;z)*G`l0O)hvesji%wNTdX}DOI&tewnQL>~K4T)G%ir+3M{9%rw z=*OaG5Btlpm0O>JRFijvv49*UHGm`&syq|$QW`^=6V~!4_l34Z9|A#_kk{}5w2q`K zlzO9=HWBO>`B~7PbZ^)TYU#K?YuZm#OBc#VPU3=NpR&LJ85U`=e3g2e7@MbkL>+qI z30+KvB&w^Bo&%za_>=INTbznid2~LhlsQMHPYTP=sT{;g^`Q+uq_iqta}p8Z{+>Dj zO~?(_J2aE3&O(6i!2Ajew7$Ybvtl?EE;6g0N)+cD<@BlpNe4~}btSx^J2&9>$FR3u5d5 z^C`U(zcJArI;q;d7rRf`Pt)zRj{eN72zZK2a6y{SyjE(eT=D_o1wn|{Y~(o5E_bCr z2>l5Us_v0^M?|R60{9r?LZCS3g$#IJI1Z9Z5i=7;w1Cpw00n6!Ux=Ae-AfY=$!lv! z@z!pfNw!Uz6gN7mBMao{m@=9w#WW$UA4q2XL4SA;Cnr_0(rc%f{}f%I_jiKQ zu{OM?m+{J4fLD3AVMI0?t?bP4O&oy|sdBC2eVg!^dV+WlwkbZ*+Z%TA(0=0+4V%}#slvD+`IZdgp4?);Q5mU$;OMain@+4<@1#iJKfr`jSA>Bt} zLrJ#8r6LAALMGRcDVtu+@F`G5@nQsCZ1AaIzsS#mWcRS3nK;$qz9Q@@VKH8GL5$}5 zP&a}#XyBz$z4iYXWEEAPXlmyHCy*vay zz^H-=k?w+D@RdfF2F**IbCpJ(@vx=?w%x_1@Y!nncrYWT&XM19opY5&)G(%ZB3XhL z7*0!_?STZZbV)NjD!F8|wN2)<);m;nj?88OM0JQnmBHf>hnfm7p-{L}=EZ>%IK`vg zwyfTG(>qgXB+U|iIzuhJVy5nVo|Vy?Vswo;RUIVE{4)vLJnKEYk2}@g6jpkspNI}E zcF_si`@94(!9PtnE|*cJg67;hCKyv8c2Lf2Ire@i@} zdn7qxEpoBzgOTflLgQD|lOQO!KnD^%ZB532-cF=C?mzk&`uheq;3w23{( zgn}3k7;6-;Go)<8x&R^U3V6KdJ@qf`L4x#W*3(0Rrc=sOaLazAiqaY81De#5@gR*!M6Kt%-@xg) zQ*GycNd;jvwcNjGt%CJdEBxV3%86PamT^1u?O%_nq};5TPOhDYG1( zbZFR)Mxj&4&eMvjKCa^1h}0JsKq0KsT`={|<{6B)iuW8w+oF%D(4iu8l_S#1FCG_A1;dBRTKX`tbn?9; zKRbz&ex^TgcRM#p);yjm))GNQ&`B~=p(xZlsyA#plm|R+a@zQugGW7{V?=Sjc4w4mU)kM&sY3aIy03v32+^b& zmf#|jq}B;ad%}$Fc6L$;h?psZtV_t}5p$`7BWfj%VR$k=l06uPl=_QKph(epVY~Q` z`PrEP=XMdGh{kFy{k1e%4m@#oQcs95R`^O6TOz3v67V44>xj5VRemPM^l3RupH+&K z6HulyDJD&e+c*i8g#;-!e?)1GHkmk`+Uh3r-h??tG!}DTnfcDBHq`0bjkQCFEbKi{ zQwewQr=9eMcJ@L2etlQ;Bii#bl-iJ+<0E3LDfWT`dfuVr1E;In#IV;XiH9^dZLz7U zn}t=(jGG#rdcUKQ3k}GDBK*8Mn11PvFn2L^K3m#;C!y?W=hd}i-aj3wul5MGP zhYHh@`FGO9J)l~RR=^KzB5VQlhpJ?O*L3uPH|jV_O3Aho#AL_u!R z%13+s^nf^p-|_A7stu1%i+wsCHQX;?Z}&?*ZwcGqF>QIyyU$F{&63%qeJcJ_pAv9D z?~Z<2sI2O9onb~l%s*GU(N{iMx{o<=6ezAw03;D02}Wk}TvLI97NLUQ5JBv*A}v?Q zfOo5S74KpvvulaQ3lfQRbQZ5NDdnV?8P95rJDK{38IE3BkXzkT<%fjrg7Tp!C+hN% z#CN5U*w}AEI>%=%ognlQVCMMz0DXi3shmBEw(uSuLwXT^7NmED zGA|CG=18A(g1$o2XTO6_&hL!}=VH`3_4%Y@Km+Z2LO`^-TaQwTR}5D#BiZVG24A@{%9yXDx({rVXj;NlgJc(ar< z_N+96oIo@6fsL=@kN~Qyu@tYgX5!h=ShZi$yYx^3E9y!QHOt18f_~AGd3|n^O2hZ{ z%%xQtSl;OwM`KDjlbMndUAtJL)cVPGY5l(Kw^{S(8%3*dOP?pyJd6Owy5CRo3N`j@ zPP)fL%VK(>$G+jI1eNTlZn$^6XB_j7)qi?7Hd*;0va=%9Ye6kTz{PLC1v>8R^B~lx zbPqos^eOgK(#O~t*CJNyQ^oI9rf{YgM5A8fE&?xJy(d?AcIc6d4JM=*|1kZ+q=&AJ zaX>iVfFE&$;=VJK+MN(bX@No=bNdOPkM{GP-qS6&AK(u-zK&)6 z`;;WhQ&7weLb6E+$wBG^%J`xrT^w>&fXRjm0*NL}k$r|ZCL~4jNNJ1(iI(qce^Nya z=>h5hy50x{B^__#3@G0;P^6OWNTzpg78M zcaAX=c()9n>0dFG-=O}1s_) zJK5epDQkMdB~ax7#PH|Ha3RE$`&m!p-GRbuEqJH>ffL#dhxwg_`@5ZGfSY2#0URDA zfe}2I@j$tg=*`O&mjgyLu2Tn!&v3QFGR$oZ!(-mGNtrST5Tq!}Gx)WM5R`ACOY`1~ z`W|n$Fk0HI!}kUnCw4%!hpBUczDLf^2~G5Ux=T({|5*w<_ztE^LqZv8LFqBId%#Wp zmT3NQyYuW^^tJw_d=5P$8^+Ore|lz6%m;h4|FrE@I!}8a6FT64`FBO~v~&a#1{T;% z$|Z&o5ntvUvU|_Bvw5ZNU%I#)D4eAhTdW387(u?K4)9jq$oGP+!WXm-`@YVLpR-04 zUyw)q4K-^yS3XWRg=GcuqF zgb&F{@8D!G#hgBLi~UNc6H{efYxyY}7kDFoGUf^D(H>{Dh9(Xq{YvLNon1FKu*GS0 zh}7V35T7QgzlcdKZSfv(=V?oL)d7VPQ5HzFpp*A25xZjjs;KlIbL2EGe}4rR!hns*n~%KMd!FWv_><};iLezH1K`ohe z7fi`7V`YBsQ%$$#fxTbpEC<*_Ab4Uvv3MEr#Sd@Zym+iA*i<{-Z=0!x)difB7mhV1 z<*m2`OwqMpiM3_&U7q}eo(lM4wu*3^1Fp}IIrJ}fjBM^H9@F-lfbj2$0X+d^jxc@FLdnD1HvS8DD`9`}J~)MTV!nKDsAd zxhTA#1CS6{`3U6)vXr2ap!h#i4Tw56Ka z=0{S^oVH}M$isOO<#kxRB)uyx$F;krXXz}BPZXnrqP72MY^6}D=hs1SP`obDYIvR0 zi37y$v}ZZVjUL5zgzm;6t>B`d1IepZkdODOHYaK;h!LVKs6GQ2fqlg zN08!$8W4iV@@s(i%LBZs12T4>dCp$1jAtIfN^NtC@s+(zIFki|K8viwb0J6+&z2%x z`USx6%>^XMyd7i&kmLE;bQvdf8c~5RosBrdym)#y|6c3SMMj~WT{8$Z#b`)4(J8Rj?q1%AB>QNYXGGkagzy0 z$%As3052T7hXwgHUX&XjfAggVl6_bom7dw7nBR&LKB#GiCBPm!REJ1H0sPsM@>*#e zI_L6&pZ#LYv_IB6pO3M>+mKu#fIW#DnE|0gr4G4^_2U(LapUOlP+@>Saepf)5M_*% z3IP2zmLd|I&I%3BFBnoS`xXi8nvc;tMgr{}WT@aM*^BjR$)0pnUNURH4bfN4b_^y> zTroQ62Yu@<#ht}F&BZ^^HAA5&5tSlh0b(o8FC7y~TUep=kxTcm)4sDGIz97@ zk~~3aLxRr3}8YJ z@@0gfA_#0-cT?o<#gipAzRLK3s)^V$|ql80x&#fa- zZgH28P(-*#<3C}iQ}l)3mLgQjY25dy>(QSm#!_eqDL~hyt#&-HhhQrq+r7{eG^dAmWk8t%66g=S=(bP}!{I%pMB4G=+w#m2jjJ zBKwhmT7!nSVltQFfZ>uhTk7MIZ>*zeo?Gfk26|A5k2!q4Cm9{{3wT~e51tJ1HTjW; z+nj#u_lv6!`SeI3Z0(A^Ee9n^Ipd(9_BdlabY;GH<+fGJ$+qH~>@){sCJ>=aKVg9M$8l`K z5Aa_GxxYGVp6~HIzLR*S+HbK#V1QLVk= z{T_2PeWrUGcpj(3@?%C6 zz2f4jSvMf8#3qHdH1}(9Nx>BAmCljWhPb3U%@tZSyc}xWB}tkcw3#G$12y9f*)x=C z2Z$8J0woARlL23SDytx={VB8%It)8IPFhLDG$K)bd zYRBM=TABdg78oeZeEFh_jp{NMAg>&Ovo5fb<<*3T$=b9;0kIf)6r)1fRX5_r;%%Zm zNAvnjC|N=~9?pXW=uWvJ(cL+LE$uX2qnurUt@T_TDDt4KC;osJgzO-;Ka~7#_DXw$ z*;Tmr2(vqtJSywik-9D;5~r01a^!j8m?n`&F0WNNU;i#Dv#NJ!WG9BtMO*Ju#X#;s z8ooNYtVHBs&^0~8;?{Th=_&#O&J#q-1FC4FbFzw{0h^uUZi1$-R*G}nO)0;^AbSSe zqHWZ2KVXc2HinJ~#-?{bTa0`)#-hZ zw2>xY&|42h3k!_#EgV4+G%6&WJ!V+BVrS6CS~WMu&a$bb&n6xp) ztZa54$FkFCq!gQnAY6-JDPZ_1ijIq8L<F znylVSHU4eq9G*zmWZps192FBuzX{{g2v%TRE3#9JD@HI_RN0%CTVU{@4Brr5*Yph6 zg5VN;3C}`}Ho&t^d5WWOHlIMOvGI{u9W%?jx-Fg`##5niZyr>S+EvGZDfdbQ3}=g~ z1mxI%Bakw>a0FDmk{pN!PK%EW5xLTjmwhE0UJ?(633|LmhsOuwqs8t$=0IO?JWZdG z4FiJLLlCvV?bx}tHG5D)8UhX6_r;Uh$~*4YfrZz| z%ZkCsXTxwV)LN@1s%S{SgWb3F^Q-$iE|{zVKQvEBn-T1a?}iW*Bch8THG9O-JW88U zntm(p6Nmfk7|)Sh`bUBF$l4Ux8Iwiz@lAogUDNhM^R<(-rDiVr+FWo@AE+CvF`vYc z#uO`w-~5K7{Petl!nzn57UHH&U*5ypxhbinw;wva7ji+glD%zR2Y4%Q;Cr$hL%ib~ zJTW%MAR%4*x8jjGjr0mht29pEv4EXMJQ#Xvu6L!cLP;Uby{GEtIM9!_V|FQ|I7R(> z8OTx$G{vzO(EA^l6c11PI`Su#DCh{ZMISiz9=bZHt;Rz9VLih;FRxTIga;txeo2Fx z0@aHgt3_g~vL^H96#Mwu-_d(vAExLCO+*mo+OsH9z{vyRhRCZ&g5*?ofe>F}th+ka zHP-RJxt~yXOCDN+C9kE}ERXc+SiOKwqD;^jwbeDOJi5g9g&dz$y1#|o^;WwA{Vx&>nlBM%OA~jYz;CNL+wPtz(=djeLNlEGF~pt{9W6 za#BwR;>kuTt??}667azY9Qe;Mm{FS&0nZ1%s3Ua9D`@&MqJ>1^>4{w{ba{N#I$@+T z@DD_oMs8mBQ-^w9;nAlT$8>c>!ui<+wOwCX5rBZMQrs`=NM_BIjLG&Le$J$hC8NXq z_+XD?@4Ek>cb@ufry@dUA3T4%2}X3cKtD~$88 z5r%oMXS<|K$H+c>(f7ixmuEl^02{mneJyC9k$gXY>$<&#-)tzPX@GbHL3sJluz@xp zt@NvC$9$E7Dr_U3WX;t1oM-_*{0TA{06feRIpe}d;ye4`H&_1|vbP|N!oSaa#q$&J z$?}mKelVf{6_a>CEX%zOHw6?i}r$Z7WB9>#d#g%QnrT*8)(3_Zwmte%}| zS@zRC$F9@V2N1dhLNXyI44Gj_sgJb#JnlY1Hu$2=MioJT)?_!=SYPns?Gic!K|-Ji zAH?8QN(;z=)ggIriqznJ6ah1b1(~sI+;SjcMAlA^r+K&Pq&?*{+Id$}B@uxe?sPjr z=p{fj9v8|;%zncopA4SPR|5)TdQ(h(Qk**eib0veV`QEaCQ)Mbz(&jyxui0*AHn3N+l?VAvILxap|4?l6XeL0?QUwe1lp zWXa6C=7L8+Lnm|;aRTJyYY<~Wwu}JUa~aznsfuQ?QmdU7aaj*YY!m8LvFozNA)YMfj|4CirqfgX+3++_yW!9 z{GcTS(BVS@ANtY-(fJsOIMJ+CfmZCK2Y!F#`HT^JX|&aq5u>%#C1X#|?NI9@J70W7 zBI^D-2+@&40wH|Q!18H*;m@4w@r0(dV+t0x`>^7cFYxgP72FMHhFV7!r;7`vFeQc_ zd_kce59kQgEv-yPw6%f!;+ybx(4O#4>rbxF7GIF)0FdYiws6*wOGE-a$jf47qOU$% ze1Sskpqm2|9dbv&MCe%s!}~tKsC&Hob=h-4lx~6MJ~+{#GSuLNACX7#=f1OWuJ{_Q zm%vD9_IR^(sDxg3Ia&DnW$@xzOYA&rTD6GO68R%Mv-0 zWbomLxga2f7;*6%e>Ib)!thHPk)92hBz^yT@$7KOgNOxd&O^lFh7*0v&3NeHTMuKz z2ZR#3poPi`97uIui1hej!vp{FSC6=4^WqJgcj#ANo-4#j-ws63rHRDQ^(RDW-lA_PP2Y1c z)SRlBDsKdA(Hm(O-kc*W%mo>BjF7=+zTBnpEldC@ru5@SyDpX1Z)3lEHHV#1`xFxm z&LrC4Ga=VYyG9Xwx&(jjm?PQQp)hUfKS{nkmmvDQ<=`Wlv-Xb0D(95LPFE?{CFGL! z6#FUfr;hU0xt#Rhrz+w(JZZ*7yJpc`yEHb7|RAUPyn(ZT^4K z-gR4&<2V<~UAI{=wLX6KRQ#N;Vsh^@8VtQ3et!v|A9XBYjXmOTi&P{2M!bLvp5O;9$`zOWU|4-6 zV@6g~F`Dd9>cTM|OL-MGCJZi4w}-%Sh?wlR$NAua=`HBoVel6kOr@PMv(zvw5^ zN2HGvY9a*59Pk#*P2ep5!1IKQI6f*=#2;vgY2}0Rhg{nD-{aLff}UuyMD?+VA<2pn zSmuaR#dqbU``rF7SZmm60ezsHc)@LqSB@GMdWr^QZjNGSl?v^NvM*^=sef3UU1NX7 z8^2#J0@I+*OoTN7H*TnuOv*(LA zK)LA$Q{6l?ni1hYQXkfUv*`%55cC0m;FnK?-FQ6Wl;e0+TJ!^wu|CJ?P-{>NU#~p+ zJv#yeteH?>RcpHPk(D*;kN3@5U#lbAc2t{le^F&?kis6)pyNJj8L?Ttt)BnQv4e9C z>o{hr9l&=ks%{NNYVs|RFJ=6#^*3FI#<)OG?nJ+?z-3joq6*w{V}KD%B*wG)4gPsV zeGM;bn-t=Vz1bd5*rTtAo7(!qUX_XVCy5WJ^*uQqMC2eI?DwhgT}uf4 zs$*MMHv#N~-==HqO5}y@&S3pg^sUzW}`#SC;=e#*B*DkLsg6zo{K2NKHzGrwo zSinVLuo#4`Wwkz9z3pG}*^JwHlIseg^e93YjWNSpmMUR%BARt%S|}{=%h^9YeqS&A z|8C?swcRUGGlkI*R#1rQluoe95l z|NH%<@@Q(}YCdBwbXkF%gUq=a!R=k~$NS87mqb$06YR&=w{OZ>tX1`Xu5~#@HWQp6Ban$WZp71GW~=)SsapWsM-ut;X5PPZ0V$$;G)! za9MiNnwqPX%J<{TQ>F%QBwLQil1Kn}tWArOj{wW^I#~A_O5Aq`Nn4TJ08*P^@+4wf zVdDE4SIzHi?RVXKSkKPB!L8-Gym}bo_fg7oaOQ=BV#T3h-4WKzjG4Q#{0&_7e$w_L z;`FDy`c1^FivX5FwiD}E6ATl89B{0lm;k#Ku~rdZi>}8~L(~-sxn?o1A>xd~8$7M& zxI$deHDO!CeA~cBgIVy&M@IQaQO2(BS@$YlpPl{Dz>nlIswH%ml)z|6Uaq*XiyQo} zN**;oJNq_w^N0g_OSaOg!Uj#nGM=kPZ;kl;zO;b{woA9d;dzCLYPbdUQut$-X6I(# z;8Lyzs?%wT84HGq_kr-%2y^|9OIXE*)qYON_jR>B?-L{^r`3G_9uKYhr%vY*F04e> zcJI*EZ26I`XT&={H~R*6iT6Fi51x2CJNfvSF`2dvSFq)=&n*pi_4SO`G_tpQ*lV(_?mkTA~e4@N>J$v z{7H{?%6dL!Z{o_k^C``kI=Yk4SvWbSKgnmJj;=6_(l zan7jk$#!35Q`8SA<3z@@(i(+)gf)A$AN&+raT>mkW;<&2o^JV+&U=07D{4Hx^y@c| zc+NC5A%=;pVB~g$8S2r&*?HNl9kp2N{pX}2e%DVI)VYfG89e;B-Y)lLE{QWnXm#K< zL6>-yr+7p=!nSAp2wTE=+1aPm`k2|FKQH@+?$0V^o9w8ok0EBBo2b>sEI_IDdGD-j zIlcZmzqHf?ep^1O!9eRKC`b6LDMHyJS~O zQeCj~vTtaCt9)&RPd208wHAA>bs+-Rxb#&SCoF~@&&$4n&$uRgeLx;C);t5d_CW-4 zx2lhIU#NPprk-^t=g`VlwtCpNo|ipQLf9>!;WsV~J;pq6RD5^N%lRoF)p0jUQ>B7a#}6w+SkoaZdRcqpzJlfeD)L}*Ed03xf zb>^?j`LMYnRlU_+Y~#W>jMwKJC^(foygW$wmjrirJ2x-K7o3XqLpv?m*1Dk*g}t9! zNd`L_Yv3QaC4mqGi`MZDI`mTXSkK4eJm|Ip^$|Smm#>MYiS#1ioT_I6u;7X^TusDG zefL;dd*a^T>&nx|0zMMJMO+|gIV>xTkeSwrEb$p_JKWEO$9i5?xmz2&0}2%!3f}Ke z1W-$bl#c)oiNT6?RW<@JU`E&o>;;hUXKiY(&R=M?q>M@q2Rzlq=~)vj2arwh2n!>y zEC5v>$`f+Sxx+vsGb`DJ6&77W)3Ob^PB)@#!h@Xf2hOCbaR3(SU4>sWeBLIz)2cE$ zslVKZ_9;xb!rP)tkQ?wZ=K}Ah?30s;JVxHXDbMP&^5rqIMuZI|re~K-?2rmKsc=(H zdaPjS3hjBivut#?8Y^GS221@&G51Kdp0pmrEIVOVQV;QNK|{@e(WMo!uz9@s@iO@E0dCKLTx|9SBPRfrwXd$yzbCM8@I|{GbkFJqs!=u%=- zO0NKtQ3e^wGA`@R;i{M(xdxc)KxKHQqf$^S> zri|nZXfUhxf1Nab=eHh+^BGfWElc+LbN1h|rAw}^58?_UN{3PuErC4SGK|!>(QC@w zYE&nz$Z*ob=2~l6fdg~7M5?8EhMlmb_w$p&X)`_S{fS&t{#qZP=Kf4B+u{GgcHP|P zGMpM58Y`RV>ie&`jdHHR7+>K>X;IVz{NfoZ&y5wso}W?d&JA?^Hbh#wXs_VB&OIdIu=F6XtA%&OR4ErDt{Nx$qJW zzhxN8QrLy#d^Ao|0%Sn+D5DA%e2c3@w&LjGVyF^F89WH6+cEk@oDM7kauump8GeF& zMel4*6G$*vzlHgJoZnFv1ufFZ0m_5rLivMFdok=AlEvc=d5LV4{y@P>7tb=MgzZbem=#hxFatEQ-2k9ADf1_jj zj^YDKBfE-Ap`{}nAprE7j!;OaOjsUVg{2*5^b{jKgDdaQ({bhomQ`V80EUPy#aJ0a zH=XLA4k6x<7F)TnuJK36Fa7GCEkG-#bWlJOSU@Co)SJ45?ggaH8a*0FGeF3l%HHlE zObRD6Fa<|cNVwJpCcG5?$~8_rFUzv*-R?eOy##k8Xf4R52oMOn26$tIBnezxYXipT zf|1(9lc5&rMjI{kyb0&r82Ijc09lNP#8E51yby z(fx^6*jib0FCDSrYRezkk@4!80XJ&&oPZn>~5-D`v85qw!~ceK&Z`ib>Fx(53DXeAfk~w5quHx zQH8Y46v=y#{IS%Y@vWE{S93js;Jq9J8-z@Fk9aaM>qOW%j2XJ(D&j20`%0=Fztx)O z4K50*s{%p?aaBEt!q${oCJzNH|3cS7J&!?Se%9=NCAFGM{d*vHnH3B=bkM%GS^&za z3Ys=KlTEgthY_8z-K(D z@Vte<@T9`y-&nfXwq3@h8cw#=9yD){5W4OUjI3pWpAsxW|yxclru#IU|4O#x6Ef zap+#5;bd-R_AA$`)e&u)^4`09GuA?K6j57=w zJHd~!yEzKCb!{(A-$}o$FWu@wlijyWa6qV!N2F4QDVUn(+xj(I_pLsaC#uw3|6g@{ z;>yPzwl|7x%=Z1#&5mQl87QIzmPwoHaAHSd{zNn$RvB8}4;jL;neko?re(nu7&H|m zv^vaAH*v^XK4l@kE18}X5+@+6%6o}*AahFGU!;{t#gDCi-6dHc`5$Fu;e?{ z$~bllja3uGdo^j@RKdh~fGG(-Gi0qpQ(N%7$}7~f%x)p%PM7&k1@3X__y)(OMTRv( z3YZ^CkF&K|k8`n)Xy@sOvsN3_yZjR>X*mbLteWD4G`|K`f%l= z7dvqR=gKK?7MQrgzT-7#n*}*Lpk07}jP^`klncXRX^Ckh+@#lAi;cU}uu3E*=TYv* z81s)6udhi=fGZfozBl;l&uiV}H~mTP;IdB5z-3<6dJyxE+5rwD!Uv>*&Gep`r-_eq z4i|M6yyDk&zm3k)bSD%27oB^j8CO1DY>}Nfqg-)G_G2&LJ+;QF8?|v6D_kymu=yZ~|3YQ_$YSoQ`^XY{tGrp98vwvp#}FD@UiuREvN(j>e+u#ctlb@;Ltjdwi-qlPgTgH=G>-a`zORhbY)k$B$tFa!#nKau$ zbA)CDMTmrC53l7m!#X%7#Ba8Lrt;Y^+I{27ii#_4Tb-U%NY+`#WU~yQB>7QLypr`0&}m`28xy!! z#z)QKQMp7G|Hw}%Pheg7ok8INGAJE_hvecIFVGv1$7H)Sek^rZvuE<-mYuK)#Z&;U9#7Kux!^$$EFm4 z2ESkuu1S9IN^UqBC(g#1T7y9>#JCL+T)(Q~rq%}y8q%=1>WZFHtEmZY53gkb7%l2=g1K9T1F2il3)(c#dH(gD>Zg-xOGlilctpw| ztN=71?A|u!o9h|QvL^oGjG@a43s1_6)rbk~2$TR=rj7XVQ=4)r<`-i2($9rgtZi^L zfn?vZPh}$}=z^ZU92y)XT24sGl;q)wHC3oX9uuO}DC~^oJTEw}q-?dNq_`(^8aznQ z!pLFO@y0L}c0`Df? znMPc{D%FbZiO6bHa8r?97cEu=QYL|egW6=?RGRerUvU=DXZ-LU%e7I3F5`6=aDSSY z(566^#GyCUrj`ERa(|vja3uz=uPEw5Udy`tfeT{bcy$WrcTs|73vgbF928TT;NB3HV4D9U5kG^l%JJ@_f*G908>*QBF_TKgNS$7ONxm^u^u5+4HSh3e>dJbVy@j^5lVx?Hv(W_J(1tBh z&O91)%lnr68M9ZrkCw$>R+lJiFgD|r<@oSEO+|vmJSRv^L8&*n4fqBx5^#RUiP)Pq zP-|iJzK8#eeY&!HZqLb=;xqfLZX3 zE@(9hJ$EGszbIwW&w zU7nU_$=Aq+$^vE7lCD*S*wMs|R~SQ_xuoD|_pzmnrnh2CsKzp`C9U1qS>>Yp{A{Hb zDgzkYWpBm~!>5x9LTb1XQv?M3sxITr+E{ORAhE?9O2wgd1F4}h2AWh2uoq(|9jT!P z@$`sU;Y=em6b}t7$_y>a6_?cz_!5%%ELyupY(K^h7Fswa;BiNr?1g@V7k+~sk3jn^ zhCMtyU?VV`XcQoXfEOTrSg~w1N`xd3@DAKb=0Spg`~x`w<44R$@x_?yhr)k&;DT@d zs*+Sn*cwK1kzWS&lBSeM^9bnM??U<=$U*ZGKLvUb6km!zCOw_GlDP?^m@5+01Evsb z!tk=WM8K1W(I)gGz(}!zd?*O3Elr4Gz3H@7!s9BMA)#W($q7Peuh=Bea@b>dPx_ftJVyTIHyf(o)Hh;wn?8h z^$VW(+*J))&+_Heiu|PiLpjaZb5P<2%*5MRyhJ$|Pu_(ub*-S}j`U;9dCl5o4ix(^ z?!jVYk980;>-KE=&yYWupetxuo2#7>8`s-%o~+ArTWqyX@DT_RI^9F4$w-5-`bv&O zI;+H!GB|TO-KAliY`1FT?zmHq9--C_9zl!>Le4|R3bb>b_%G5@rU*0AdA(qPI|+Ax2h?N^uL-Kat2_mGY5QKBxg~s-PcxTo zuS~*t$g>_l^;~u~GN~7AQUJ|7VKjm%BA)FK9@%clWCFqm4N|okJKr;pfaE9qOTT7; zdDuk^0~EqI={Yz!cPCT{yu}7>z<+2%O^@p*(8A)OH(B5%vZi)`b^dc?iI}X-eB3MN z<1~Ab9UsP*huhmR9ds>kJDI~TWhHC@V+2XjpGw=}sTyNS_261Q65DR$TauhcxIV_D zck>>?RSzl#q{pZyEIciAkuLs7k&2s`IHQRY=V20mL^nXfk>C|mU6;$Uen4L(amG9N zC1`HH?%-N;gSh-y>jz8arRr##=|`;}X!YPT>|6g5Sv^vD{$mxvaipsu9Eo3!a=iM^L@MJCZYUHWzyaxH8984_I>K(j&27XzLUHlDdUf z6VUxY0Yo|yG)6GysZ%K=KxYxC92z}D(q>s9%R=d^pO%s1OHyN)A`jN&Q|MlnKMX%sSz673E~*JvZS6BJ>Bi(B@18 zqvegMnuUr%{nUHplued)8^>u?3qqM=p)faKUPR|k=-dy)PJfJQ;6Ju#$PM@s3)}Y0 zX_7`NoK`QUY*J{jgXz;#qXO0HC>jI05NQ1V-w0+LF{s+1?INaVHq5>+*HzJ{DG$Rc8O z+BFZ^b3Bh+g8va{Jm>=WcwY5_pV3A~u;RPdW6eN+t+QUW+SSxPvisg+Zj>3GQFsp- zTQ$6BZ3;EVnK<=XkrzM`)`g~Cqy>O^pa#=Aa!K~{l{>rkz zikY*VWNu#<`FJg-mQ??L;o*ekL@sST08~BEeFT4;YZc->>b%PZhv8}&p)FNc4E54i zR4mL%-=G#Mv0L^In7Doee{qvedC_Tc$`gDMvDM*q(oQR+O>vPCHB#*@8_7I zL@r!U+{ns%p`L*pjJZNHLlogQAXvG~?5g4z<7=ta+>Wm!ao~3o>l4L(sCPL!E04tv z;CWo_=G&%XbHO6Wj;<%Ajo6~77pwzM$j>lT52|k2{t=0pmUW!l;)89*TFu!R!AWq^ zHhT3^)`eIl`U}n~KPms1k0U{OmC;RChonTa6q6(|$SdFqJ;Gze2pF!4YfW7e8o*rRD_>L?^mhT2ZcLY971fatz{xX)~wIkp{t|{7xzu02pRS{R2z2wy`keStQ8lZ-- z!*lAo5#pH4#4)Hl0;mxM9*k^wEq*USS9INo?)ua;MWrw|0apM{*_Z9gSxdvflwYTR*bEN&b;*XOt^0Gq8>Az0UDxt+iv{pVzoK z=N?oXcx|jBSzt+`aDdRU%Gv!7a^#D((A`Q7r}0brr&VSSKtP8l`b1ryD%4BSCt~1g zl3(I(L>m;3wnEctwNGL>=mQK4D-G@duO<&@^iEaJjW@aSzu`|;mAQn*xNf(yBoHR- z5BOa%rnoF;i^OQFvAZ1#oeni~!4^H;LW%@+=BpY$3R0JMRjk#&GES+ptK3J^tu~+w zY0c4Mm_F-jaUUFF0!JM=i9^LNIslAwM@#VD-STs6De`J#gV)i|{5)Z;1jsYSTe4gC z+G@R`9&l<_ZQ&WtpuMsnqB<9z*=mPLY8HlbsK!7=)FQE@2;HvFFEX1BT|Y$6^ZSd%lMeK zx#NB*e#_!CS&7$j^i@}BX}O9iTFM#;KqBh~<0>)B%KkkDtE&z16ER>#Syy3MB7t^Y zLYW!3ucf?^RWas|cpnhik2D6j=KT9L-cfN=y|)JpJ#&BODx zlNKB6CVJk+|22(KbDm%$H~r_jlCt3RN3K!{1TXf^Zn&1D)5dbGnULSKADiWux%JkD zo+cF(tIGF?m8~ZeSs0aY7*9#q^Sjs;CnWg}K54LW{;GPwRb|{qly{UY*Q(rzk;Kdc zh(#eKk25FFq=X+qi+nDukVjH=DEM&j0JZr7~bK!^+*_H+us6B#0(%n&Amu{QUO zH8=SrXHqzwvX$zc^(zX+)kk8rnJPmh{X`>|%%n=+Vz(OC-X5WITzwH+lk{>tuCn?B zvMOsw;4@q;q~*)awJc=KZZ%5)EH%Ph6EXF1`pr5>S@ZM`o`JPWq;B%ePBU%MnIGxw zF36w}YZZiE83P~8G+v^B@vdaut+JSM9&q79Yu%N5@RTiI%k6MXuaZP4+!xWl$Dp|tR6lR z6AqtUIEFMG%jpas*AJ3=^T0-(&(IZN?2g92e7KN}M+ zi!L;B=DM99BlmQtpz1;7@j*BgL=?~Fepg^n_C1!5xe`Q zX+4FR5o7k86U{3s7JaaCx@R9FcPM)V2h#~f)F5faJAPPs49=~kU-tpmGf}x7M(!TG zt+IS1@FRg^5McsO(;hmxe6mHk;a$pnw2qo?&dK9_|TS21@Gm(sTx)+ zwSF)AscQyg+3&Tqf#O((@DN@3aF z%I2gu(4XAsKNh2a*K^IG8Sno~TY(gfXXME0j++^}F9ToWxuNrdd*?RXxMAn5>YAGF z><@6iRD1eWHTTgYkdfHsYWz^PC$-xo7BSZ#8~0R){Q4TnV};YA|EucH?yQV-S%s45I?S0-CXDd2NXKD zoi9;nS5D-Ak@1D{@Am@f+8aBuL#tO8HKJ>tKGOO9DQc{^{IbztpCYJJ<} zUuVB_{oqTh#?T{v)2=1l^Bw4Y1!>29Q&v2#!9rjE*zw=58EV(#{J%MlH{|(oUq`wn z4b99<7`ImC=m_gNC{HmYL_Asf8C@H7ik`J=b08IFyt~yod#T)Cp(DtNGcA!;TlH&n z@@YWx%9H8S4Ss_xBEtX(kx%8xTJJ-NqGQ6xr>ymOb>^OHb#k5eTZ}rgGV*OcJOIfs z6uw!(zvu1aZ0b?Vr5~yjL|NL}O}~iFQy1!*9h`W#ShaHjFp#5hy>f@hB0LWL2ru(A z+U20L_+KK9kBa{zG2wTglMvB1ym0ZqU&o`K44grDDrdNiD|s&12D#FGF%gbvDoxz^!@1fT^75b8xqBkSY%z;_~;g#s4ZtD@^#!;&*aay`ZrO8!KJ;r-iJi(Og= zzmv|{DjHH7k{)t8Ux?zb*w)OnRwcVl=9Q`yVMx2FPtD1*^D_v|xoT}qs+{?f@mL{K z6B55_X9ew%VDCg1=t98}OF;&VcxNm@b=+FWhiePofBm@yw@WODzr=bbv=j0rK?kHx zJlUQjd|$0Im3<}qD$@$aytXvQlvxICno7><4T{h9Slv1E<%(AV@<=}JPw+c&0+WF& zga?dr#btrD+LlI6&ABg^#zk8)|2#nfJxfywdY#d+VmSNd2JN${4^8M(w-*5F_-Qqv z@$8qjBD7N-$rGTX2aR5H;w2n>jKMqQl4g2+La&u4%;CqgU%JZA9av4hX9ygSEeC>EvLdrg#ncYi!diuh5!;! zKQ7yWFxY@C;0ooS=pOV>PmwpFu@y5X-gok`TEpyQm?{z}SZ+^-iTGL`BxPlX)W`oA zYQhn0u?)t;8f(Ag{l))H^8g{sP+JymSnu~>Fz7XP2)eu;l2k$xaFRo2GXtzVPDjL8 zk6d-M^I>?mjepJcbp>~)Dlz39;DT4_2ozib8du`&apTQpd7^_~b-j^m-eoiw2v_p` zan?FWli2}!9k|x*lsrk-iE(G({^XcFuqNe%^`^QeAa<^gTq3-1=>lE6S95vZJD@*p zc3BNsS&0}a0bn2~8Rj?E=Kbhc3*@3C4Gr{a?xIw|4)R=2m$Q_@)O>%vv~n zDQeh@<}H_~$E>S2ahH2lK3mP?qfU|8D+!rqeL%*aigUm033;w9MLsV0@Aca1D7Q|M z+2d}MTjZeqxYTihymt+5Jn*%ZoblFmBdc{U_mTHCmW|?w&V$Q4ZLj+s>ivd!4~=fM z)ctD9m90`^>e@*1c1wCkf=ISYcHh&@`NnzrhNhogS)jVi{_t~KBVHQ z^%%(x+SU|lDIPfBKLKhHP=ls@woA5*K1mMAKL#r$J{wH^FjBW3eL>#Ac3no&cc1T zj>*#mGv$-1$DXfc$x@hAbjJG04E<&uOB{j`;!8_}J`bxko*b>;uky@LK0tJ+^(?qb z{}l-m4~f?)J45vywdPZ5r&nuOE;Jj~m0*#0ApN@7VdSW?lb>SSxL%iMTMcM+>dXbW zKu$)tc4a^X*Gw?H%$fJ%Vq#Vne}?_%bq)QZDm0g?1*J|D9)(JG%qNFSD>qm2(#VW4!%+{&c%z~al!*wcLEg~y_ z%x_NWNZ>-^PA1iTaD;IfCb$^TekF58guk=2g)rtu<(UQ|lsDX+VKk_gcN> z_Oy4qH7hYP@g+slj-)S^6_0?|rTbX4f>!m|>PDi+!u6qQv;zRyH#MUJRKS4&#sZ2T zW81YWe^35!CM07r#*b@PcJO3~BEmqaB!Kf1IW11S$5=uogg;{9rRAKLm+hUBtPL9S zgj29=`JbWfwhV&!X&fS(2+E`d>XkdL#%35=jwAG-8@UrKJ%j7?;}=ZOr~1yxwq%Bth-yk9rkyHm`Z~JKj^=pRaPu@Hv+G8qX91g*FB8Qv8msX&KL-Y1g#u zn9-!ZbO>%;%V=YS6p$O^ao~>X(J3`2o4FfSIWWiJM$@~>BRLf*!Y`IO&W2wU96y-g z+(z+bdsK{8zbW>(U*B?Yt4XBxA#vBoYQvFOpW*Mdz6#8RIcI%{qO)30;#fM~ zL29}qX~$V_R*yi33@*iu^AmH|3x_g%yyvRgR}!qY_9bWKwTg6Ajrj=7&S%STx3)T9 z1zNe{GIQE5#b;SQu4m7PH>eeuExPFIFB350DmJ!XF<9M2;--1ks}RFTKA-RJ?+Nisr8lY@7L9p9bX>=N>vjL z$`gVUL7SrCaprye*)w%kS$BNc=_C2<8LKu}$Vc9;D=J&;2pP^8sr|e%fZ$c0!uZ+t zJvnnr_#~dT>~`}GeqD^tfDBX}Pbwa(dr0iU7>gCl;k=pbm$#T8BE+S!uX#+d z2{gb$o9awmGh?-mpM_sw&Q#8usnrhNSIOe4NyQ_u`w;}@YiB|!dK_U`J>zZ5Y9G0- z2cq@9%q>f%#VRl+00)pH12kVnlZ6Bw3r8rcXll+;YayaNcd8*XKv0OLCNhT=6Bx%| zFQ5+EW*yDnVQ>L3dG`Pu_$L$Z=By4ge!M*sJ@O;@}Q5Yq)errV406V z*{2hnbJIFvBVHxJK73gDj6Ur&pv7HlEC2Kn=gwTqUy4CTf>a^O6aj4ypWFs-fnBb+ z?ECOi#we?|_`3O`;xgkh6rqk0bHgHE+d-nYDzB3^W_^VdS#MNf7MRYa7PG=dfhWGX zw3XL|Pqi+Sck$Kyj2PVcGxwxRi80+hsGx35!bCR}CO+GiXnHRCvs`MeW?BhZS8Hbc z^m%Vnv)S{NLO=VmO$XXzuC<%u1HfaB&x`YCK912%4d({(G1Kd?*L-iRNKo# zyK`u6^}yGZc2a=pS=)HOJLk~+Gfoxxz0RSz)t{?6(_HKNd$C);GYM*lGcA!;o2_-I92I1{2z(fI z-eb1fRH^%ZdvO-cHGd!Hq(-$wO^Bu4%>}Gp^%vL^a$T{SvNrg-)dF3F_W=WWSuyj) z#odf$-{B1Gnh$KMSW{4%qg>}HM6?YzLX~l?Yney8S=pK+Z0lPK#!(OXgPs8Cigy)b zt#!$IvX85FO>siJ824gd^IG8*xPXeb*TI9UOCIrv*dh97JUQo`oUe>{L2qTogKi&D zOClV>Zvwfy=}l!gKSzpM{?{->hqc^1iN52LkwxTzdj+M}(vA$zR;SBGa*0mOZgM zV0{t(Lf5m2*V7q+x383@pWx6tdB5@GL6|+nm!m%k{W=r-lTqLalnAd1kjOXCpjd{+ z^YcadsprCAs^8e^`3d%6Ly%`G3oHq=g$!bi+|BT+@KftP?^z$u-%SN4X|X&CFJ9yR z13xVlk2RBz05ux>etc2BTQlkzS050fd_Nxt8q}Yj$aBF@8b9Sd;wVY{ z>!@T4bOz${LJ+2|f|o4TshtR~j9_n*Rfcw^$uF0b^Xe3L*8hYwqZiaFoO#sVlDB*_ z9WW5Uf=_7abJtDQ;YrV%eM8qMpiXNPnom?5)n~8`l8lz(_23WWUYyPN$?xYhx88YqN`(>SgiLP=|G#^?s~>L-*w&-eezG|+SAQ{e?v5h@4; zd@n10Wevh-a`n6kJPiffj0#o)~ySKhuet1PP_ z9AC0NVl@n8K%)~;&`&hFNxl$gq5NFvKB|A}!jEi^UmE?lj_!dkMCb9PCt4N_gjD2# z_pQmNN(ACWdh2|F?$Y&hOQynbD<-hv}Xg zKWZ}a-N%$h8-vjA&%HkU7h;echp2uPg33*iY}c3PBFj(YE>02+wD-3uqaX6LuirL$ ztjSl7c%C@lW-^TDNsS@vI7d?k-b#--mW*wy>}n-Dy2@A+DU58OVF?LiXOhk>^|Cvp zzv&SmIrwYPV5jN?EpB86w}QhqFf(<4N)lg<<4f8RP%`2dT zjAsmc=j;~pK$jgH;}58ZYECMnLhz-?#`3frv4|E-GPSQJymBy}5;j{Taw0*U`B>Of z@uWO}NbmVMAe`ZH_tyPo`1^d1ja>$J0dBmh?wVgJ8oA;!1^HZf$Gq+*&?$>JZwL!g zhjuLZgO^*4De|f`>1%Uz0Y5uNkwuf8bRH6B=^+)MKa&l*3hj(Dp}Z>nRob~~v8SHB zh%;s%WFx#RAWl9n7Bj*a{K`v*hj)Se`yvCl5xU1RA{2h;EERS#RO4AeqWgwl^_D!r zmGZ|@898jN1AUJ2itATPCNM<&4K_r|cK*aYga{ArAY8=KijjF`y^H4m-g1#{VCExj z&y1~Xb{suI&g1a-pm7&5(<@NP&a(&IyGiWZ(grD*0eBtcn4IJOs)O>3_JG*KWy6KT z&Ker2gN2rRI#U~GgE6^0=+fFjzs!__%``6slrnN8u2Z7bR}zuh1>l}h$mbJ0{{E}bjO{&|5pXXxw`=Zalj=7I63qV)5^Zp3KeO`OLkfpZ5VCf;|IcMkro zuI{@)=jsUKjsuUm;jHdZHpZeaU~kMkE@R%J2jnPQVw{*6thEOAMeTwsFoe5P{d@~= zsCB`TTQ9=;j0H(PoDEA~ajLB3ZlwJX5?XlWc*~K*qR9Dao4-BAVc9w62fh(NpoP>! z7!A}=k`6qp%nE>jchT@EVhK>?;F4dDiTQW-#_J5+O#sZsiwCGAm?otc+n zd`7rQc%}1P1oXs|Tk^=V@c`42F)`QwVwLM7&*wj8{9V3(pu->%;Un00IF}s+LjW985TKJMThU{*76=C~j6*U_Im4oBV-on#&cFVH-iMEM z+78!P0bojFKOMve&?K@7QfP_+Empv$m>?%Y)%U>11^=E!H%?$?O+aKo6>AC=ZRG(z+qQ|Fddeg$gdrtNBams5dlS!lEd;x zV`BTpw!$XQs$yQ)XrbKnpqeKWZW+?Re_VY5Gx7q+zaU=~ZB;J41J=Nf@= z^;Mo(--HYrTH&~=1h3v{DPkRR_recUKdQN4&I3ILhIu;sehZ0E1YtBY7zbr%=zYDy z^8UZVTua_LS*^RBq3^2{8>A1QO4L4Z3^HY=NTg_ZL^IHMsv4*rii{|7TNt{{p=*5j z2IG?R{WH&0s})Pngz5z+=jc-+8X~^Z2B24tsI6fbKC23SgSh8^(w|O|I$t_gEG}W}ajUjGy@gNcsu-IHrPvk6 z{aVk++&8GI*6a%VHV?q7eQ}+78D(Wf1oJHv#AL|^YGPqigeiLC^?U*A>0xn@QS#Pl3k|D%reaWBX1d!u%az2iFmCaV1yUFD_g7_3&-)I!XAYX#)Z z#yY`tsffV*FxEkn*o-aU3V)s=MZ?t%i}KkbaLNO=}iMD54QOO|9Z@^F0%GwTca>)tZKpKPm~i;*!kP960Drl?!VV zvJWC>ej;c8J4K)#1gSp6i5#ewbE4?uE76HF zj{`pqKSyrg)g6rT${YA}D6e6VPJ0^_CL4-4a}dCy`e|4gYhJ7}XP%~`fiuhr99!$| zEweI(B7yR1TIMyN#iMtl>(-e+Srqn`*$pxa3{`JF0u@{XO{d8gRX+q(%`QBy>d)Hx z!EA=zuT^j{FY5;b=SV}G2Ob|GySF38NDE=>k(z(Q>)H}41|DjoU(CVtTu04l4I}-U7K*6ab%m|Q!!gP zz%%V7U_5B*07ESc`Mw0&KC0ys=ACoQ92>I#JqzQR+uTW3|Did5zgsNl{G+ZZRZI0N zk1)nl;Z`>3>2Zg3A4jMaLRfE5H{DSc3RALEqg&_lx%%a!h(arPr>`OgPTYYbNyXL*lmm*t_YGA-rvvuzW6xGrLT;=Gw<~c>>{M9N) z_gIaK>&!e=d4qQy^2|+3%bh{a@^Rs2_5SO8+#$?iv)t4#`ZV0R2vvWw6a4Oj=w`gu z{M#b9%e4h#m;xg^OVX`U?idt+LfHZ=gww{8ujr>FhtxIwW#5VSO0FEh+^Lyna=dxq z`ys$YGHf$EN#4m9`D6zO{CO^zm|OSjx%=GO0dP4DG=q~$RasOh7Pm5=cG}@-_OYAf z(oRc8A;|0%h(Q$7J_{>UQ-{u0{%h`R7T)B}mE#|S2F;aad|%|sZvDW(h=AUYYX^>0g+RGSUf8D6Ke!4^_Ei5dBwzMaBe&sCx3e0` zh6#>zeh(wdTdO%TqO%DFvWRbD43zg*|8bicTRoyg#JXo2k@_P-aU&xV-BOYFRfqz` zct(kQ%R-@|uMxRCX*8o*q0+4h7>VKQb6$-8qyzeC1UZ@@>_)ec_>*xUSw~iSD1trCvgA6VSy#D#%r(IWFjo`KBzu9*}Tc_Etd8-LoMx*B=MD!V*Mr);> z0T=^V(d36J63e?33-@H-$$YN>9SN)jtpwht2_(k$!gai_ZNyb&Kzsgq$px>3a0G}s zP1tbe7`*L%sC0g?&UPo9SLdrLHKRwJOM~RiN0Z;Ax6E>lVwqzv#^w_cfB@&9=HNIr zplG-!9tT^m`bP|#J=6t-M9-UDxfzD#w{swr0I<4+&+q{)mM^jHZjsq~EH%G%%b})> zAtH|E8$=qz9&iBE#nvw|uO)xDmvx%e_CCrYSzCSYTvLm$xG4~hfJoXc$n!My$<{)J zDkz_ekK)|-Hk;kJEsyDdFR^SEaX?nA*n2Lo{@6-?!CD)me)`lYd z9LIL9)2D57jl8VUs5_rK>iCm&tE-*is-348H{?JCkXAgPv07N6*z^<5h%}!vjJj{V z>VxSf{qyRKMKZ|;%}&@pWCQ0a0xS0Inpny+8v*Y-d^k(2M37+ z0ASbA9P@L*z)E&$te3?-g&m4vWU)<~-SN=eRMOOHPHM}V(LPp^+{KUN6 zdiDARj>xeIokT18vj9SgwNOI!ZOk*=j^RnK9RrFG3Z=vJ)EtPVn1^-S(Q4zQCbOK- z)i{ZXD!7}ni4?-@_2x9{~DPW0viKOX2-qJS67u;uE<4Bk}{GrURzI|5`R@s!z zh2oF%dwe&(9FI&P(+LW4hZ1&=0S(^D`JG5z5KX|#-{Af8k4hXScbVk) zv8Fesh>v)lP2aRHDdKf7Od1@c^)sW0`JL$d`x5>L{!iwnG$#ZXzxm*HgHYumwC@ra zmx@zK!bsSA9sHk*Tr>~dp2jupFQbvu=YMS<(YNgC*^vmImJU*eo<4KG>(jW_AdZBt zLH81P2CjNF0_id1>#^YPtfM$pADe`Q01!DCA~CMLSv*>31pA@BCu_owS3u z%kMoXPxh*C4}XwoF7VX#c0+WQZ1O2csGRxc*FlROIv|9nkd=q|`d6hSpF ztNws_8GHZNI4`2h7ojq9-=JaBhxeA6wfq>|Lj+N9LmD3O~xVBwkK^(P>eDHm55GvD99GYk@)Cgh@Kn; z$NRds{wmv=;8E#-SV|xiQ_ZtlgE@!RvgRmwe#G-yM!ST4h*5rE(X{z)41cgY2!oE? z9A~u%FZVx_+U4ZiF$U%dc~~K*0y`RzG)l!ByEk<}tyJ^)kcbw)&m$SncaOX2M!kh@>NCd&AwLMu>mlA22gQg7H|;T$3p z&$~~;&vhJcvzxv*)EM1(8)&>pSUPQm2tkB&QXz$L3Oad|zP#pnIPahx;ESvv#q%a= z#~b3T(bXe~(!mQ2Jpvg~0}v~;KpicpPMlcJ!hH|m9Wr2ve7=733iT^4sCy@8fR+5^ zNXRvUC^>nRmx-Pf40`&A--B3;5E4~A_vL&QwE6~kxrpuiO7B;c;LNUjeoDRL!GenieQ?nM6c zDIF?6kns>MgzYO0C(a~DN)kdQ9&#TPIjSbSb0mreBt@Sf-{-8Wq{F?fGRg@hs%_)c zFu3iy&j{jt1j+-1FoMNN-}xCJlm-lA&pjUINOC$EvhekZ#n+$?FeOD?B4|%xP4cA) zwnKPDTX>Ce#xjA=w*VfeYX6KEMOQj|sC0hNXB>OOqr4$t{DQ&gFfP^p@E2am+SyR7 z_Q!iab@v44iafZGy%AEs0*1>VwHB-xSW%Z?TNE&kIi1v<5s;yeZIETF@a=mxKZ@R-|4-* zC4v^e3`f(myi4*YrxdyoKS5Af^Otkco0NYPr-Q5YLd7^7QSjg5`PcjC=KFpzY7cnUdK1A@t+uKWEz0dN`PNO7)CQmqz$2$gtXUwJ&dQ!veBZ2WSs@gG7A>W@8 zW*$JzaxU68^IfjeFpBexcOZ;!%teRHTV5TTPc#W?{QME6a4_|kpQHq zHgWOq5g=b9zKADmvHG2XSFef<>RHfs@)L96Cs>9~&|0a(D@Aq-n66E*Zs-AI5pfWi}{*ZSo62o76aKm7B3;5)F0z$-ezwu#fOnmIZ}^J0a)YHtjb3`pUJpNmyt~uI zz+L-yX^D+8!aLc-X2IO$Qs=`aRB#IqB= zXaM?lKVQv-2yg&ffxfI_Gwdml;mvwhA+<+?fw@MfECEA5q1e ztb;_tZ!<2<()C`bl{RyBiEr9``6`fLxj-y(DmI01VXU@Snt7HFu3=Ce% zIA}S(a2Nh&$nv|&X7HmUpFFOgVC2Ymin*EnPmn<(aI>cX%Q6+P4YEW`)>iHfR&DX*A0lJp zoMEj5TnP>TSJfX>5`J4-h)*P5>jABKR=RCW$+6&a1kJImhygSbep}jj0WYniN}oHj zMqpmys!A}Gg%%3bv<4ti)B|24UFinv1rk?io#3)!Fk%Vf>!T|gfO;Y)AO^3rCtlZf zsTZsr{4rM`)yl!PUI5}vsQ||$#d(c@>u=v-G;JrnQ4~Nq@Cg^>ol5CQv33ATg&&fj zvk(=FFa$*Ou*65;QiePidm_%zHNLWEq+Kr{R31tt7YpXZKr0=Qj13cljwtF8HLm5l zBHMrUcN!~lhyDb^8^tgd3G|c$jE`OKi6>B(QWoKP02!ZGK1BYBCezel2-N9>>QGE)}Q`RGp<}^4SfaEI2|67}{n&Mpj@yq2xBj z_9!xW4Ga5u$$n6fnP`e~CA&TdWI`7bf=DQ=h6|O>53sTYbvd8E?`c8j)tuqSNA^<( zX9OF4BTe2p@*dS<^*;YN#?FdCqMJPeS@?)SxRw7YIS1GI{qn{d;IBXE*0pjt67?M- zm1+473Yd*~ZvYvPBum!e{=6<47OqC_)&Ngs(H@494?o!>VsNlRq``B+RDD*vHhH|) z(AQz-jvu zY&u+zMtMYxzRgGx*$_QhI~=0X(0zVvYqM>?1oimeX!i?5IHN>XN&8@GOqw&!)CX2E zLZE?H4x_xvQ|fZd#sZpeuq7;NHQReBeyXmc#;%j8UO(Q#AiL@CMHJd)$B?zxJt6{= zZPa@%7I^gBJIxE|8@gRn*%pWJSdah@8vd4-8c{<4QvW+rpTQ!z#E+~2Wu(A)=tul6 zL4gyx)@(=3E)@nBPYn6?oj4z0k-eg?_;!pTA6^MVALQf_s195&9svs7qPI50blc!y zjQswGV#fFX7}@b^l*0OjnkCz0cS{IeVJ;32PgYiHpyRfx2J`!*{O9GY1DV}e>_=&6 zdsnMlV=w@mO^+1_`j{f#N~bpOz6=rGmPSTYKD=Pw?`InA*<3ZW(xW6pJ z^Hi3D9O&X}6B>9g9JgFJg2%d6J4fO340Y;}G7s?W=Od88&>J={Y3V9IVSR@5Pm?)5 z+u~qudYzeGfjLqWnGJ9l!6}R7ic62_DEj9zQYbTwxC^S^!+<`35n6PiYI|}KEJ4Ss z-ibZ?JsmC+oqxZCs#_W~E7D;mZk)v*v?i!fK;QCSn38?c3vvyR+32KOLRPa+bbvmg z>l*&1R5|RQV!EC-=^lly+i{vHOL#fsrjY%TOJ$)mq>68yQs&9gLR>iNX+!pow%cLq zX}^^}?jjHlG=i1hw-~?&$9;eU4_*onYSdeDO2q>YwqierjDG63@}<=@0rUXF00VHf z;g24az2o(wWRZnKfTaKM$_iaYLis}(o&rFOTmnVlC>G~<Sw3seUG$?T-ut9iBa^-^-m8xTwh)M5g`bk0x#Qqwwt zL4^W@n(cR)9l|MbsD1jtVzGFm*f1cnbQF;xCO-y><#5|CfJIN|$3ga{KMl?fx~e|E z&Ca^P9bLsd;K|U?lS9{_1@ubv8=l?+xp~e7XRe*LntMp<&k zOomg?)^Kw-JZ%PCMZ=fT5;)Y^EMo!9SM%EE4M*Av5Yw51D%L~d(AsW4#E#mUbHWb><1i+~;`{&4Gr%SI~|r9{iGxWXegHy8c3f&}tXlH!D7@+hPW_poVOu zb|jFA313YTqqy*5;yc>lAsm!|<}v)_DyzG|5#cOu0s+((%28yo$mS&Xz<4hk{gyE~ z!}B37KcN`FB{HvcT-=g<_PfDdw6PJtJa#@1&gYaC3uo0R8{U3m^=kTE_&AAOHr&iU zFwh~OD3L}Z1l7o&UddZO$lMKjg^n>S88WvG0_c_W1Ll-hE_WTzY6TG5I(g#H5akTo zKjNID1f9&!`0ru48J3o67oa(vKm9}8{Q=b$cOTlCBgF5R4bch61rr;90H2Hp?$jlo z@LcqX`&r*`=2N~6te5y#9zJ!62fh^lGv`^!eKALulfOuO^t-jz9+7u&Es^e({V`@o zWJRUcXEygwas4vKgv6H}ruXM2O>2S}eWucFWucymGUEPp(^*Pi2P5`fSj{ zS3;iJo$#vgO7kc=eK&s}Rj1qa%0C?mMhfR6MDQ-15v@ok6SIynif~kG-JMY;^Cmlu zbT_9rBYq_C316PjtJIPo6QvHrqx7A-gnp=egg=nQ)UKDB9YHp!?VkGg+O7J1oQJ{b z%k3Op!@2UEtSYqMdje)^rR4KWez)Bp2l1wwm9rM7*c!;emIH5Q0q`_z)9({hGNI0X zs!rJ2&YzEcVGt#uOI5g@91lR1iM68EMv$E2Tj@BXDq>5M_dOZT7lJ>~!af}78wO2# z%Fv55o3iVwP}U%>(5^OZ{hgjnOLO>?`kzbGc9;)WPv^Y4l zwQj2eAQ0J6;X}`WM81$bbh0W!@cxZ!HA{ZC%4eztIGa^Y;LGvd7$6eX?N>91RTO92 zdUk~8;v;k~A-n{8Jv|royA-i-3=Z9mAmnhX>0Z9N9y5i}8pS!G5&E_dBg8`g=hb*kZc5YF@+#u&5{ z{~+C*W;iWUEzZ5?13p~wyfi%ES~a^v49??+WwFz4H>K;pRmNO*cns1*4)+$~#jgrkGnxs_NN0^+ zpi$lsdl51y)rLPR*-*#Z2Vw}Eizxb3d*eDrMwV|qOozxoM7Vr7kNnv9AL?rz$LV!@ zkE`Rj%nYP{9LKi~{HXj zVjdu4$SM;U1l0*$XylW;x3KOKqc;0W3p0`|w}41a+Wsq;*Dp*>E<lwnRiHj3f?>K(s6;N!PV+dXHSp9psYv!R~qzT zZ;_!+vXPMvWUN;C6nk3i%ADA%(jU^|*->AO)XIHgI-*U;Y8`~;IxQ=d7Y6;(&@XpH z%RGh4VU()b1EbZ!pn3?Fx6B}r;n0KOMu{zk)qNYg4CWRRsM(Ymf<(hETIUgp$Ep5C z<1LNj-;ejV;E3>`-8C^73O2nR^2^26@%RXIKL>*j3I?s`llq@*3HT6$Vh1mHebLxV z&J7d`5NXM?Y!Q-i^>`YIrJCmu*vPF6a%w0lH~J~vbH@s#M9Lmb-E}8uu5<_-g2kfa zKy${CJ&BAX8YVuS>;#YaD_!@;Rkz)_JgBHiJmupn*39QltCQT?cTt%5L5p(5C5@h? z%1&eJT3wTRfGzMFM$Npyuc!*fQTBgoOP)rFlFWkpg?$rB^1YSqh1Aqo5D)nK8n!u8 zxtklUq|KVsVgvRKo|wmjw!;4HOdazp)X{Rs2=7mPFtb|3H*gG@46qo- zh$&Gc<*}&G*&)W?(h{TK*4x;5t!Kur`Ip^gY>|O=gOo;o;{v{dhdM^6#NLNm&fjq@ zU%8{NW}@%7l)f!895L9p zngTvRGsKv`6yyVX7oSenr*S@synzc|4z+*GA*d~=L+2A&>^$eJEg1hwg843!i1Y;@ zrr%FWk<>^KJf(qPkj7ugIBl)V34P%?G_0Hb1o4tlvy3qJYDN@N%84OmH7C6$-;6=^ z92z~Z1NJ^L7z&;3htzZco=?@NoSNRE>nzEMmkEr#oiIi{N8Mh zhH`=9OW;uK>;|YPu|%Ss;Z%AWmwevmeit-L!b!3tU25!<@Jks-c&5w`QKkEWD>#~* z4>1ttWp>ul#By+TS&c-!2$_MXblXW{CB(Rk!hU%Xz zmu1dBoN`mMSvl49CPECV@DOl6EB`6#s22_;_-M~P#g{}Exu=ciQ2kwhV$dqPy{nbL z>3r$Ns{r4HGp(|=oJYKAIpuZ7xu^;6)HuYvH#S@8^30eLi*)D4Tu>Lkupz%ON;|id zxt`KjzrnjG{yO}YUKWSTsn5XV)f;+|jK=1~cXs(m(?egUSgAzPlQuz)e7zfqLYe#Q zbJXmI-H9x~FDFrLc=(8r5Y5_Z{z!ZU_1*M`wMkuDp!cKvHvGGC z)A;qu@o~(U?NhTT2V7mB6Qipn*XV06V#M=~wOW5Tr5`*=LVF=xh2)3%OI!3kLphug zlcsFNi}WNtkl^EV&85p|w#cSGYLlAQM8zF>Dc4O1m25;qgVF2>p9S! zH)BGW;Kc9%Vj|U<<|V#q?IIS`jN(UJN#f6j*{OdZXCfwpA&Wup;}Z$%r8UD>ZhX|c zb=J86$-FP(!AP3;UBsazyNE=+ZfK3CL|}e?HJ=>2>pB=uXOt2RYV169fj@u=G@UZM zl>Tc@&Pog7gGE;UVXFraL29z|m4cdf0!!p@^&U zn0w~HV`MbUEiv(6|1uz!kse^_nL5It6Yx@!uT@&#qucnZB0rsz{ZjK2?n0Q&$S(Mw zkjT8(e{sbd}Mt`}YWm>>7 zVs3LbW?FQ8P(WEwa2SKmW6&xVDExxT6RfjCmPMt3W3A4-@6Y)GKKu6uvpe?B>5u2t zk%&$4jXIRkfHGK^1VFXIR)2^?*2f4%u@i7ew@|#5S+5C_2j*ry8gK`e3ObaS{6-mz z;J{RN3aE#|Evep5>0Iou?W}7c5*we0U!R&22zvu9?Xj|kQ5^wOuC zAU5h{MG%6WvtlufVW8dc%xF1_`4Y`GvZ-U8rYpiSi)4jnQEIw8LU;a-Iiy8FvbKMijpbd|?Vs~_4}7)D z992i0f5F?d*N8{7nB<`#LI0mi|Cuv>Wh((!v$1o(+hvM9M?h2w3w1?=ryfSA@h0W) z#YzH?y8Li3YvDvB&xKC;dSp)+B@x_v8b0)<8YPfEZJArwsSe|e7zG$8Kb&wulW~?ftsGumFDOP1tcz9o0Y?uR#5AhS^ z5A#9DVUiC*#6W?cEC}K}O{YmfD!dX}QE2i0mtS7YxjKDj zt*@0#JLl@t!~zHEP}mY7A2#ChQu3HM=lYj-=3B3TK{;LYwc?cEiE_ndfv?Jkd83XGDmR_3+6R*DTk?LCyd;CBut(vX;1 z(yWU6Xz?)i>#{lTJ^Fo%_fb(#!5wMIvq(^B#N6QOb4@$JSnnN69*MT}xu(UYmSOgs zQ*RAUfOAkopRpW_sVF}gQ23zIgvliN1GXRK30~*oyu!ohMz`MQb@>h>(CWV?@9eeP z=X(cLhtds*ODQ<{jjg6rr3=o%@(#~veuCcKN}L>W4h{Wy zaXyXvZa5zZt~R*e!mD-JY>yIJ4-J=JL<)Q+0j<86gnlswG8H^u#nqbQ%ILJ5BXzpj z`-TUIEi&EeRcZe~!4{J|04V~F;_6+Tula7St@}wc__|M!}baI^=YevjnKt6h!WXM>rEc8VB(OZfxSDwjV^W@!}=uR60`*y~8 zwp`_J+6dnh1Yxg_N2ob7_LsIf^OssRc+Ux`VP+JHcS85@kE>SE>441ngz0D5(x?6a zJpQ89CwwPr*D}|J!>s7zu{P0b66(@1604gf<)1Jkbe91ui98p-tu&xPUTa$_ZT37N zHkmCol9=BE>-g*DFF02GEbx4_zpm#1U(&xbU&^k-ku7ITTUhw8wCH%w{1`l+ht`n>Upee>dk%oz%PStUf6&DAF`3E^q`(Gk2=H!#-l} z)B(DjKUIyCXqpfrFKorC_=oXHeH-X{>DOCx;Ld>48Q82_F3*E z=li`zp>cLQFP0$?ioqZ*gw*Kw6iLeOCvOjmCEt0e%3zP>)*P$&10do!zeA)^uGR9W zdpgHzGpu?ZZ_$oE@9i|iMUtGMIp}r+I*vyuw~xZJ?8IdgAzPB4!G&;`kOtN@{+qew zFvBTa6sz%>WsCDh##?kNqXGc*BMA;~O|4!LPglp-%(*&8a&O+1LQVKpOo@*JBrG^0 zpQ@j;JXi9ls$<{?W`V!KKDBzv2*MSdmsmO2a;=l5%W~Boy)hU@Jf4vkwwcp=E@K17 zV`hDu@z^rn=}3$hqnn8(K{`BVcP%aEMi;b}bFnc(9msnc^%MR;t6Cu>vthM)?ax4y zt0_1Wo9}?P=6BAwZ_mdP)P6>mFbhuJb;*zX9K%u4+@bQQ?u{L?V zUJ~ZCUJ4&or#X`bF0Lj0^cFVPWwdi0kBIRI!g3iQTs2Q3YH-{8NzGq1;<`6S>-`c4 zEV9??A!*l9kkssze_FipT==26YtE&;=TSlF`9^EM%?v6{GuH|xDGL9c-tthZ6OXEW0st40Fc^No@G2F_r zi{7x0be37(I*uesR*wj;7>|$=?Hk<+8f%;qqx~r)Jb0BhUu8{fM;uz(%=lISI;Wbz zTu%8mAap#7z`!xW&-wmu%p+Q_yq)#!p*_IsD6SYPz@ePzKpa}8vbJk+!U_`~kQN7q zJ&WHVznI%{ZhDs8LLFG8De{5&1t>N_2#{J7kx(`XF}#K8UzBIyjYK>zLW_K{9Jkzc z9%T@kLcinI#aXOX_3U7bdP0+d0*V-;Pj)LLe#rO}i!ngOywp54n*-KU?(b&3OMp;d z7YBkBbFQg?ha2RiC=t_HnR+`kOws_-i~qxCC@_<(SqeP3}Ec%APRjTGcl zzQ){%bLD(HU!?QRU50G=_necJZSAacjVlD>+^)Uu>D+UdG39I+X%hF#-a#O8%>91S z$2{}BFxyLv->Y&baOom-P`U1&e&;JM2y2(f{E1@4HK3r-YmhyDbq&b z>Y5eewz*%spL??>!aNKkHCaPF@rWJDWV`TIr&McRoq4jCNVurdJ4w(!goI{A~asr#D zmeKI;O!c6l=>H<$cix)H07Pst$phVXqm{1;uWY_L*Sqdy{WH(E&ix%Q1tW;oVP=!N zao!r|EjJQuXRdn|dBGhtXg7Q9B<7~Cy|F$QzVz|tP!*VSVOkq-EI{We4B^2b6_{J0 zZ}Zq%8A2~PZ1ONQUzyPCSkANLB5#+*PHF{pHk;bvN(J2U(1l4Ahs|eWMZ=wn!IUdO zef_*{;F$wl+E&Bh5o+z=ZC^R~QrCgM_0LG{fg)-`pg#bTNJp<@o{*!@&Ihl>p<#0U+%;8VC29r zyoONl#2H#op;A4P&|zGPXK08F@;94}M99u^`Mg#Z-*u76SCZTO9W*2QJ5Ao_I5cn9 zyL8^o+B-1lvx^tgzzp&SoKOMClVT(lQ|0?^pKld5D>+e?NtCERY3IT63GeIo(?7mr zeDJPho!&Fm&cU-lU&b6<=}@aCgr1B3kj|e^?v|o-v8u>wd8Jc6wHb14u_th^Axk}j zQk(L2v9{*evfHNi)hn{b-8gyq5`rDQO!aCZM9Q17_Yq9ds}ELQ=bc<@3^kL!hlGxC zfkZ>vilxS|ZO%N-rcUEo%a|*!?({0}at<gY`4R)B}0N2DqRA%%|lo?~`VFrA@$5&47o}z)tP4ZsH8DWp(&Zt94@Mx~vRb%dC zy49AwX#tn>SE9edt9SrVJWXu>KWlHkWLc7&_no}AD$9VeAz3Wc3j~tnO!e3QWIX;+g4d_IhkNR%HrS;}) z^iz?-J)n|R5I2zI92A0q--2ajt&i73FZT96nR!->aR_9@t;{nGrBOibd4u>&Evj$X zE9W}bX*QMf%waA5D$87llUknui^Q&+I>5l9&N;Je$EJ5>Y<%nf-pU(#w#y?y68Jg~ zl)MalL~CQP7QiM5r<+oSaUt^W$G(T)7E{m1+ zQ^+afyJeNGG~c$zx3CoEn8VrRchO}j2;LTgZ0CgKqlY=+oY`q^xXtcvToczA$1U)VwZ{#P>|CVgedd4K`rMdnO@qZ z-BRqczbZS+n>)f>zs~=5#69VXhGzhB| zQLs&3SQz!L*pugn>$%@*ObG{k9_N0YvO={&JoHR?E#qCy7gOB&ri?ME23meG@9S_- zkHVY88iaX)E9Z|-oVJ`3A8oTA6sRaLFr0&d5Z48jbM8lSva&xXzvyW90nvnH|ATLaOt-NjrPiNNQ~iUCeed zzx(IoirUuOrPw;Hk-WbFopgB3vLJMQ*j@3}_TzBt+V7}oVD)N=gQCQB)&!{ zT@Oih7T_)%#-n-LzxfC3CcegeIcJ;tQrKI10MD&Ob$2k{56!q+bLnSx6c0!{+d%px z__7K2EpadsL4*0{Rs5cFYl{@0nXeta@tscZa%{fJ>^e+0`Cv-3vl3Rj&1Y%7VR!M2 zYMXOcP*HGl+jy})w^Hsstg&5Z-^=_8QIRJf&J>A_rUjLFe ziA$B2XWf9yj5|dhM!D#4=qb1PUCz(l6I^EKwUU=3)m5IJAp~AjC)H-^Ng=8}YkFd$x8>WEC+fEs7N1d1bgJt%vc|M!JZu57=0Fg$I1I7Xzt>Wf2sr12@ zrRHLLU)#ts<l@?&-)g}H9o6^lo;3Tpfh-r-iNJkOGES3&nqy+ws9SmevCKpj^>q-?pBr{juEp8R9>9B;V>zQ*U7 zPMKZ$d~hR9_!juJwsLy!8sDJ&_{&hUPp3VPoHAl^1R>|f#+#R5ga{^AcGuEUPCShN zeMWpu(KKa2ax$!1qZ;Rk(;Cdy*01M?d)vC>{0xQj{iN$s;wB5u+ER4HnBoXsAd+D+ ztq&%LfWEZ3?_$4knVC(imVe#p$UPvEDxBNFupE-yCp;?)@An($_0x5o^4~3DCgMR% z?5lR6+q}bgz}a(epXcqn{l4NBzb~V$S;|{Cmm-EFP7u(QwJ!jkmoh83LGKi|@ zZ{2U)p}5n*T~1rsa=;+|kQSmn5$a?hoxgtje&YenHkXAiS_W}m)HZvY8ei#*tYN=# zo56O3TVdR!Ha^d5G>g9}>1$~E-qLI1tT}V-2&R~B8`r6em{_!~w%o3A_k7i@_cB}k zG*DjUsv)sg&u1a4T(uc+D($!JIqvBn=F!3?N2SLuXK6zGI3dCBv0MV1fiV%{bOjS29-sNvAFC*(o5wD-!Ja9yv@KLNgr-5^6)TXjAC(t*yZA#jz+`j^VaF?B;%e{ zpq`qyUP!;?DtOV)cuGfOmx-MtWW|yt3ar4!N;`KGe6iRU3!XVR8O35%HG-Y|z*m)R2XFX*h8I#>#GoxUttU?&dw+-FZXMJT-L^IW zf&wlIPi|X}*VmX;C%D>^eC_mZQCtgYzPnGerjkLDTu;A`KOa;M@{F_12?ef~^+tu# z8$BM0!rhcnDKq%4i4!Jxr~9TiKiD-eG?HUGWR zlf&#NZ0ZXggTUr(uPC>JjPI`4BIf|@k6);`;~K-P3zxp zxx&G9s8{GZ`A)?4|4Uf)VM z``WYB)uqQ;bZbv5B3v)edbgA`PLaxp6L2BZlFu3LLd9l+o9;qPXXc&)f}X{| zm(e6Sf^}eaA^sU99T>kNnpf2p9#$5%S`p$ZSnh55Z>vPFs$x4yut9*@{Yquda@`X zksFi_4FWJE9@m1U`V{5O7k3+8`hrH&dRZKuZfWW*M%@I$FIEj*Feh8zh{{)uO=&P6d}9y$l1+ z$rlbL>bbL2D%f!5R(!!%^-jZDw#D&|x_g8_`gzxhTN_-)73gtUTu-#J?4dfxtX1dK zE^J#FrSCvqXtQQw!Si`F5(XVcWC{!_n!IsqK8;R%X7*t_=JvC_8%l~FWh;=N6;j1M zJjV;f4jOawJZZVR@Y*W+)z;so+%Mb69cl~Sn!!e)um_$yu{UO`zoDT8Z9QE0{QPJ; z*U|FN1?PK<)j`a+aK505W7NasMA%>{CK?+5;q-M*>vyh^mJ2Nqd@_EZpeQQm#D1k6 z(O+{`;aA`O+#a!vIKv?*0T2I(XKN|GV^M)6?(o;*&--F0(#Lw|;03N1`IF&f>Xp{8 z2moP7Iwli2_C|dKLP()aM^bEf&%SFo8a3HzKC?HwvyT>$-nf#^BIaVWm5BH_>N{`z zrM=ISi~yu}7XrXTTrzXSa*X`YuLWX!>+tTG8fO8W8U z)bQZARr@{e>LN7g;=$zuU!l$6HyCoU5z)|j6=}`Dci9k-qQ?0bjboniipZDGurdbv z;=f#&@d^SoQxv_B451@ma;V=a0DNcqQt9CW{5NyKbxrk;JZ)6+eL|5u+2+1)$on`^nnc;2FV9??BL zuUG>|>R^&fYA1hORVU$U?xXYB&(SfY8`oNlu zdY_}m!jcu88qqfV;hUwlwEp2IjI8Dp&4#d8^AHzSg_1}|4s#M=M_XOp5U+OZw7)g& zlm$OS-MvT~j^nX53^4X@fn>+>zW5c#Gi3-b*V?+sFn5sTW5^`Yf<3C3{zxwN7_m)f z9Y4ml&OEOWDsXs+u!Px-PgEYNeY^P%D0z>($yFnus?`_nXNb0Mj1A^6wE!k-Tj(2=wbj?)Q>%E*r*)VFq&WW`!@aBXZwt6ChZ^TTnCBA02DyQ z4d4uy=aWD47SnU*WILHFUQq?KZ6b(7>)7KrLP%w!M&Cr+&hLN9 za!G1*j`S4*s9r)ShFaHID5vr2mEYkhoicT8oiA{s`jRh$t=t>aTB?0}6C7QWzu_!J*ao!50MgVw{@&pV*QoGlT zeJ3pAnD~@wxAZtW+djtyCAf@TMSV9wcE0?l=E`FbmKpl5Kxy<T~fXF~VMm(?z&Fl&U zA?ZV}vIaMQ#iV$L*>y$yQ>}m%9i>(vEp)%eqe9wfXqqn1@{oedY zFxp->u)TQuy1`>e!`+uBjumV~>v^#3%LglrT@B$s6dvuuTt1%!J@Rg@B+TM1V8zH& zE!ZOuF};|$TIH#FLcLQInapEQ2vkEfqtl>h1&Oq<^M?bw8egEXACV8mW2uK_WNg6Y#rO$G` z&)76KHLM+8@u{vHm+P!XcnvSjZ0`X|o~IHO_otgc|61D~)k#6(i)(?+eY@@v;Hs>*O)jfk&n)jYz4y~HC=8%0!q>VNYOFvL` z)AK{i4c8bHU^aKYYJAihiIEHjVurFZ^s$Cf^X~t&kFfeV{i$*>@a!HzHELe~o`NXp zU=&`Sy>%Ms{Rs*zQX34tuGvv7Lpv~w@4xm;swR{>VKscchZEO5j!57nt*IykrUSZj zM15T&CI1Egu*5W#XIr{*-+LzZmJOW zwUOC-dqu?Vpw)U8)WRwxSX9NP9@m>_1*yl$5G8`0$le&0|>5~6;@W}rbW(5CSxhh4qQjd*gpV&c5zF?E>D{GIr#L3I^Stm4Pwts(exK zbajiz=eaG{K3IS>S1T^~BiUdCsm1i1%?@zYSE@$w#bkmwY~|NpC_$Bp#d-&fLt)uQ zE|r%2a$R4MssKAFpajwZjE?89mVsiy*eT)dFq^2h=(UH%xo)HCbsnHg;FbzNXAgQk zBj}uh>*R?}3Ws9NVIB6$2y&gljqw4LR9;v@kwkElo|Ty~_IP~7X}3yXho{yQo<>E$ zzDHG)3&T}?SYJPwXWrLq7@8S8yJwM`%+Xa1;;cgo1|>mnyx^x(Cz*`3sCd?(Hhx~~ z>i^VNh+;e6dxgzj>D_Maf??~ViYu`({UGs~K^g=e>{%iWr?-yu3XI|Wcr#6!?6LZ(Jome$S9AMIs#1^@ z+1}vxd3-wiZ51_K=kbo}jyg=rB1UxCyI9gGjG=ajiC@*=);YWR(aj8h@&-9)_nenZ zJxs`M2QDC_6k|d)TmPf{-0GbVP&K}4m!B`WxX;St9(m$s&d8XlgIqATP8e+p?Y^(l?Bg^W$(GuYdYq*Vp&kF};dTUlg@^ighMEv>1TQGwVtQ_* zZhJBa&OydXPO@NGpLPfM&$xHsE^_hIlt{CK+an3Sp}+cP`?y`Ux~}$d|H`c0I4t3s zfZ=9YA@FNop26jV#&G>og&^P7juISswk7(gF7qC4COKvrw$lU2t*CS>0qz@OTs6=C z_Y^J9j99dc9{usyQFP@;>fY{jr!oA=9z$C!_1)cHCpag3?RyU(`btmfu4G4$!=rK8 z-v%4xV7WI+B7z61yq8J)yx~3b``VMSW=^6H)6ZL+Aw-CSLV{J31Ww4jZ)j*9zr=sg zkuu}3>LRIcRr6W!#7QeMJ=u6;{R^}mh{Oiy#{o^Bi~IiX$9EKa2PtZ5A6kK52WP5zlQ?xJ>g5b5pGRF>13}xR;&X`w6L{g&24CDHdqzF z=*jw!$fB=w&5~d5YSx78Ph}6H`6sHzKBk(o-)~I&+vMbajKmQG#2`KcKqy#A()+5D z!l9X>X)VG^3v>4S@&uHW{MtgX8I5FeD*aXD)as=0XijBVb-p%8;i=j0v#8M2D^#*7 z`3~W#{;S_dKFvX=U7?f4&0 zZfReg#cXChrqTB532SN1<`Kp85XrVJ%0S`>tjDLiW3o zEChpCGNOWaRl1I@!=?P!gj;=$_L`Tu`X_dqPf~8B3MeR;=Z#syBSz;OJZsy6eaE{p zcKE*YyeoV{p!^U1B~B^&=w%gb&JRGCU2?$Ym3lMm=&2^=cmG<9M=9ULNoWne%V$Yd zA?})NYiFMG$}cKTX!oPn8NWS>bnn1%M|$$s^mpXODNksIB?XcF>8Vo_sWVn6SCCpX zkC4~gXRLW|y05bJQ+y`r^j<(on>+Jc0LchWWXE6{`=xY5kM<_J_#J_o=6O z$WO~y;?YiZ$A)>t5t>*KP@g~|Db4^d?jeHxb+d?tE;i7^4#~jTg21P{i1cV?RrQ3@yL7L7nBi!*osMq zhP_BUcq~!r`@VO^=S?pANcYS&VSj)SLp4G#`M|f{CVAhEU~2+&GWXAIM)xz>EGrRB z)6D#M;6UpixIRBMhm9v>$?oVP)^#53Sq1+@XJuj2TuUJb7v#tXbteD&cn`mc8nSN! zPXtslSa`72$$ zwyNJI*1K~8e4DKjqn8s9*L3Gxm6GPEz78PhAqr7_gDP?(8oss`T040?{t+{@mMwUG z3WvYzSfB+L=Pgb|AqG`08l|B$So{2KbQDMAe=`ly?C4mB1N2%#t&jcZ z+W(Y#lCN(P(cV>F$s-uFxoF?6e5Q2n=MiPk>J#0YvnN9#7V#YD?O~UuM1^ z=87w9h6|$Rjss+6SgHf8I0d%0jqIwpG-Bbc@Ef9uU5%C{y(+`+X$D?K-;-iZFi+Lk zaqfGyBaOlNWU{$uzqna327^{g=%hMJ!8s`zG)l!l{{C>|RXWkyiQ@A%55!K2Z6tf8 zkNs%;3)$?L1>WhGaTc>h1LQmHSJiT{)*g6Hf*)Lo{=!;3J`|tk@j=e~3|ZoPkLROj zTHk-=)gPraw*ZPs&{6D&PACJhck*WG>ML(!fK8e2|*&mY+QV?iO*Q z$RomTCVZ;Y8hDCW1?dd-$b$wrnyNOTim8#4?kQE*$#!>?nz?jmJkh$`4SA_k(UXo~ zYpXwBWKS28fu{O;n3f*vexDJZtSRSl^fcSmn)SsQWLYm>EO}fQa2tFlb1_f|MI}(g zA`ij?FDj69>R4|gNk1|k?YkQCfzFz39z-)nSWIWUJ4j`oa*Ha;tJ_>9T2Yn4?J48Z zEb1_~HR5V#D&K-m>bvKep$kDVn&*7kx8!xZ^1=VO?5F$Fai_9Iw+`u$Y1$o`I!=!F zXKu9Hbqb+kLL=nHC)U$~I*yLI_tiKHob*oG|G@HEX}9^P8;9v4152-mLcO)f)_*E5 zRc=!9K#vL9ytIuAdyymBRWo_wM-!*Z9?h}>H9ZPclsB^VIwy##UWoKV9Qb!nMCPiEW`Gs-jHNGC7G)DbG`(;S9g!+3Kh{5ed0gS4M&@VhNMIFcy;d6ap(Ii*SXI!F69|d zW$mh0El>(oMR_{{P05UGu(8YnZ|5}fy5AmCt{r@z&l_twTF^DVZeH(eceCm|-@sYT z>)>@kF1u7H0dPI&nMWVuZhS-xVyHTTY`}t-*Y5*8qQi9gyAWGopr3>MowGvE2-Y&n10* zPa|xy=OGYlF)24Q54@i@eS`}B)qcMx_W}f6IBc?& zA*!&9eD=^0R<_=jYpb{2rt2JwVHQ@_nKF=n4!(s+x@c-^x@$8 zmcQefAi&E86euDHENTT%Y8!oUOtIwi-#pIf;g{w6x46vf0d~gI9C?6zKvQyNPvtl; z;ycaL#(w3JqZT3*v~bqIbSvv(lDBACKE!zDO;y4v&woK2H&V;veUU-V_kDFo9S@xP zHsc>b(A$*tgJTCJ;xO98zracNn~v~e%>V7K#e;4-wr45;c9&=P6C1?{LVASYIFU;O znAb&fy-dQNSqrVNEx;=uUk}Zu|M8J_M|w>lm4vj#A^rPkCZ$?UQlDHKIN(i#QbLpp z@klHXU6FXAY1j`eQ%BO_2l%D-YVr*5uht6En#UhiEntpOG30qa#I1!3^RuzS#=bqFt zz&c45K4(W+095+QV-$0CbCB)Gwa5eHP|DWoRu5`Xa42j_x^l)+e_z70$~_!~?XdMm$D4=R5^(&3(qY#E`4Ly)xmWh>{&w z22+5lptk^U(}r`^g~nHxP`yonQV)8)RlG6P0g`imT%{Ozy{l9lvv#N_Xt#HX7qg|i zUWBB-Uazp#w1&*x=+z{dhT7A}fvB%6zd zIoB`j^s0*aM^-Rq?A5oodFU_}IdZ`cdQiI>ky_pGdWNr{uEX`VqA^E6Ff>qBfMn!% zh{fWiPiS#?ePfKrx|+fqm#@$uxobFkqtExk_IRwXcl@1vY9Eokwc@b|%gCc}nSIrx z8FX|KLk-Fz8$Oh2fW7++xps&SwZu%b&uj|LlG zNnrxdG;(=+UX2Ebz3@-_s8u^jdn@ycbfO_&v0kJA@i3WF-HTz4T3`f-&P!*dVM8FnYVzB|;Rd%lW)J~^Z6pbBC7@3E@Up5OzBc_=WvvY}k6nuH^@XOq1A`mCkB%O6Lp^b8 zM-tJi1@{AgiC?e0&gMB%o)D77H-j5bX0lxTKQiJ8Tx3uxe0f_>xE*) zHmjE0juFHya_#7ak{IRZob> zOhbBHc`g0po!uM3RdDd4M#^h=O1H$KGuR^!JB(FE9}caqXFrEzB!7yJ-*V|rKqN1! zjVN5YQ5Tn#smzKimEKQSkGR_9eMJ+)NL7xoq^p1iU0o2a_Ud$3JH0oQsnNR8wv(>6 zRmYX%p0qfjNOg^38cAnQ%d5nP^^WfqBFk4+=TFU$QY~WxDdvRb9$aHzlW*3Xi7>5q zeQz+;3WmFqYi0?V!W0@0gUH(GKVz%@PBn^lz5Y;H(RjBpp=NHeIrq$l5=o9_TJemN zUWEiwPmY#I_-IwErU19Z$##738qnqL?-Y}c<3=(0T0Kz$<<*oKXat^dQ_njCbQ#N6 zW?X5nquD%8nScH1XDfL#vpGxoen2$Q#6@sc{~0E*AWT^GBIrR4eO)>E>Q{VywRzBu=S-Cb=bS}0T(X88dDX-@ zjQ*3I_B89R@Rg*xs=^gz6oxLYNP7_>NvN$GDEiHrtnSU0vX`|St}6(R>>g+3IbVWV zsL#$si9+pmwBl$zhQ6i6YKv{1z;|Ud{`Qf#$Q6T6rbqX1&Kg5(l*-o zRs#0Xu;qwSM_(a<7WBHAbN@7?R-5qi3etHcyVVie5VMHXUB>hht2C+da_u0xB>!kR zR^z`GlkY!xu&exP9Jrr-X1|67ziQjKtR^m(-16@7B|pkKiJhPrGT{~Z{3M{9%M&Ud z%9#2(LLd7*8*g64oa(m{l}ED3`xaKa&6hm*p0yLnnvj7ncNn?f9-Y=h(BCKDS@l8r zx%R_c>^Q&F(8IiSsG0eQ2eGIHd*orM3OBRgKn7*!r`1fH#G4;GV#-XG2j3`uFnBY( z-|&I_^2S`V0+Il&fGSAN_jKLUX3T3A&cY8a%v@KO_kFU3D7NS22tW$vU8FNMD-qNS zDDe5I_S;A?BCo9otmn{5+Fxl!b{%!KG=CuC8Gl~w5PlOe;K=9;nM6v;Lk}W~3@w_d z@xIxRPT%raa?;CBtbEoT)Bf!Eiz8*-)q=Me=G>b>s_V&Cn z-*_?_lS6tWEA;O2qCSbTMS*FyPf0-fknOQ?1nt~ zONFpSkT#OzkRtA9z>qfMR^DrWVOfpP;`nTDoG8muo-4Mg=tGf<_GRRI z;glTNap4?0-lUwlXh)uZ%4eiiUYTYZFgo7oO7EzUTLMQod0NAd@*k{4#D`*^>AZ_? z>bYozYZ(c(!XD{M`G)$GoD}+VYAJ@N#UNX94!U5fHL=iXQMy=9ehN2*n6x8Q>D(IkY0s z0umX%EBHK%p>_y8cWzqJ(hW9pyf58QeKQ(MgiqN5V>T( z<2$gvHXoVwc8w3~AM;iZS9^5|WPS)WNNx3U)GG;1m^+=){f^UF-e}6CKo|P0-OcB) zJAUL5I&+qW&WSz<)ClO_6<%om`A^;R?bq%Wt_u0wxHJw^`n|0o@-W&Nmr{iie6a&z?ViO=hUYhxV$UaH_U@#Gd2{+KWdl z>juD{KroLF3q+&!m0EG^d*Rc{a`%-Bdb_-_Cr(GAgdXXhnw(J73lMoG8|)o|f$P~9 zDxdpVmoK&eN}kw~;is#PzA>KudH4Kb3f|;Dc zmxl733+AlkDi;)+1T`wRO?{;^^bMq6dEcU%Awp}6W zX>CA$>H%vPQ0R4%G@X=TBTX>gwh4DR=TYdmrC5&iVOV+TW6Llu@(qK3hrF z^pR|OeQsC_0CRWtW&pivwhKQ|t?yPNlVpt1gKja>XaDeVO z?)#Yq<;>%e8&3IAUev;{QS&4|>T{xy+0ztZ1dAcI$%kCGbV69l;~PELo($Gf4@!E> zo}^;>?dd{p%zcuN8A1ce9!rOQCy85>MJqJm!ic`NYd(tl+*{1=6qmd!V~z40RmJeJ z`#fhwH^`|!L)hp-ohH&p9lOO}&WoM=7CE{_lMCxroO)v%?>MPchSpuXj|()4nmcGE z=yAa==5V~NFXZ}_Z$GVT!&K;y3r_oqI|=3NsOBfFe!#&q=%*#K&Pz-$c6rG{K2o;O z=OQg-^$yD3VyhZSK4;27@T}?TO%|ef$5*1_PEYDo`aNzzmyA3FKFv!|6VLp5I_D~# zzuZb9$4}+5TrT(&Di@08vQNpF>(k`3Ej`K8?#Fx6=SrijIq9f$SxW6gOAI18Svfk2 zD#aZHikcph%GC9y%GLUuICL+yeohQ=eygeR{FJ;}8D9IDL2d2FtcWb#i#7UkG(a54aA@Y8ZkTLY~{F9@QXjqE(98FqJ@jU-DMBfy0c;URpg3wO9vWJ9nq zAeUjle`x)u#@WR^d25z6AtE-LrFcJZ&;f1?h}@S(vB@5KR+YQn8Yc5;zUEUo*RX^4 zYa}RvwL7CUVX$#*gA_|WX9Nf;lc7C3+Vn}#vw0yO1*#l#4z{Qay4C4Oj~p?yqfA}j z$(4gH&-G2Km5wEy?&&BeTSVi@swkCemC&A=@S~s*3Zjq5BaH0UIwMt>!aCrWuW<^Z^bMB-_-tLE_SboHpXRw#6H(MtRmJr+v zPiSUquKPJNuRM3mwVP(fYm2DyI}cWEHaH)w*=%`OP$v#*+Aw>goco>@@5*O-zL!={ zwVwOsGoESKx9R@qHdqmQ9k70KPMm;Vf~M6u0fNcrGJchY=V&UQwBOC4>Tb4+VCv3A z8O#qZ9C+F5*)8%BUuL~O^*8*`xrg{dyldKnj&XQWfX*zEky<#BM)s6b+c zC5m=#aRKIC87DkX{N-h)xE2K6R(vxH01X#yPXTjYCmk4LsK@b|1dMc7eT2e#(5ZaR zd8Ew?TxF6kHqZ8{@VBhGj9JCh(-@%1FZyPWyaU2-5k&H)?f9$tE{%7Lznjc*qiKh_ z)uxxr&I7<(oTPg@g6(;f_waeHHoNql&*H1`_7-rBfq&$J=WilHI_^a`be7XUGtKab zL3zICc{x-NRQnCLi08y8#TuH@$cRa#gzjB;O?d%TCi1_0Rpt53_NRJr^r^`ldkPJe zT=P;lq}TP_XS>g4f5t%S$wkKaTko2>2(N_T2+)pn&zf8iEq688yR+nqm5*8<+0A#= zjw22~vFWJ2g_Tet^3t=eU$)#HuG@kB`I<5$u|!G}3`ND(`(TeeOjs&^RU!CA$;`T)*{-PAr)j%* z>A%uf^;2Erg>%{aSg)&?wPu!<`4FMze>UH1DgG(;DBBCe^`$Elfp?89=-i`!QIO}{ zs!&LGe$CcalZDg^Q%!mT*+ZS^$Vr1(5VshAJQmko_;S`fQ%>_=bM)Pk9<(>Q)W zd}zYVq_?My0a}Y*^cHR|Xh}#`?_3P5~%E;r`Zv5&qG1yv|U$Zd3_QE#WYx_M@rfXvj zUG_CnFg~AU=(P@Z%3o_28W-F1chYLGmVf=dUB4{#|Bll!s@ByY+ETnR*@|K&f7c+g zPa5?sa~7$BcFoUUguvxBLM?uPzA4B2|J=0v{Jp?Yv z#ZP3#b@>S(hM2Mj$g%Gt9(nw&G~|J>=oOWex8z)DBxVY63jk-`=}0p~xTRlilq<63 zTo?C$?LANbO0l6l-vx%&1%AU~=C8ihvKS2wvFSc8rc0gR3oJoFJ9Zc}eW4Z-TN>Ug zhcezX58?A|BQO;~-;2K3O$J>BfRM#$vx=Byz?w{W0T*7)pGM@Hb1JPRSMN9TZTBTl zM0%KWYq?+;kcr4!qmLa2Di*6v>kOMeVz=L4`d&ZlGpc4@wsm_dORt3_K=YhiCz`?- zN94f7su@|XLWDiLg=A~v7NA$9gT% z`J|n2!wk-st?#-I@$A*q2Q>I62KG9ob48{s6YcVU z7uK`Q?iwAd%54DFR@KYX@eG+29P_0%xR|v)-zCjKqHv2C3d#+lCGtdIji0HY?TwOlpewW z!oWxwN^0~HoG$@aODr(kUr*0h>t4{S`QehPTfT=EG7Lt6vN{*r0`Aqqxzd8QyGM37S8oxB>lPeA?-qv8PM=@8A_EL;K z_o(^GT4W*#{2!XJ$LkMi^w~)IGqyR*)X6h+A+M)A;v3#Ua}Dsb*Lm@fPk}FCR(%8ma^2>ud@meDHntx7$Fm5dQPmnFzWODGorRDY6?1SZrFGeVW zZ6s^Is!|Nh=KAaLsPb94sA`@T?eueWE6(~%oxI!~#v)RB(U7HG3Py_%t8h#r2An60?ySm*P@5CyQCThrU4Wa<&D2xA8=8E#M9+v{MlkH0YxQ3R zu8}R{oMN0o#Z}^~Tx}5EtJ#BN^ZfUJKkSY@m-+8g08!)`2`(UtZ^p)8k33|1UEr*C zrCivmH7RE8eC3K;2u>a|d&^dIm|7#ckvWy7e1%rhWgk7|V;j2YL!TYD#7$$W;*8WG zX0kcWmuTKn=MZfXB+s%k@HVN**)qcMn8oZI-ba2i7?fw_Yg|_{9?cn~sG;T#t>^JM z8pe%{2AkbrD;ZLn+YEqNfeLc8d5W{s;vSdgI*WaQY?4)4UB}R;T}W?1Cw;y`S7(4a zd}9vn*~Om{-w!8W$`!O6%=0flPqFg~YjVXg&AR1GT0@r!)rRJdq1YLgsW1Df(GGL3 zdtXtXvz3BX()P-;#)lTzD&S4ZC8^8$XTRmZ#N;c>%r(T2Y(xHFx(5&3T;|sn%RJD@ z`vHIeii}X)r1^Lg#XNhcob)Nxj)$*iztJ%I+-k~9Di?`9J}V8mDlo2mOUqHPRzI8b zs>#s^{Tb|$hpne=<*s?xsV<&pUYEL<*p=sCom>+~>}|NEtDMN<)7BP})uvh5N7SV~ zskbBfjgb-?jJbHtEC2fV+c}cCUL(6gc*o?TYgE9&cDZ=rm86rj%h=Ut;#$MdDH*u? zygbjTmW;0DV)iIG8-IXODJC)e0jA2$2H=GQ0au@=XI#0$@ja)Y{t3Oz8dBl z?(XM()st+-na!ma{w0F(6}2OuKQ!ZUo(DEAcN|`1>npTkttCik0-o?CfC`;u#kiqp zv{vwt!d2|=IeZ%R%4s~q3~`&ouYAfK!gD6yITC3CXw*W|(M7CQZQ1X8QYu-kmviy@ zy4y$Lq%u#)MV_3tajrua?ThrV^=^HB_A|1xf7R#sFEz7Yu_z1eh9M&|;>yEFw$h3+ zZJ%i#6zE-}KYcto<@_t+DURL6vLbptW>&fQe025@&5U%X$+kvU>(R#iW2^-D!FAG} zVEPe?2g@_m9VaRduLW3a@r9A_Q7vG}mBZ{N)VXVHMTXU>hk$vz&P0y5m8L?ObZ)8x_Yh^Y^2?`0Z&?j2IH(Ztfo&5$T=vmo0iX39YfHMgF3+^Cyz)G+ z9fEp55{d?#5ig~;XQZ!bKUto`b^cabmbtW&r7sP&zCzHJBBE35AuMER%`7OsLJgHgtZMnC9yoMVp+Z@E3XiOrBEO zd5h|GJOd7~R&eHf0;z%J*!C7;41$>8JzZ!3gV zHp=sr%jJx>%Q9vV$vbN7mi4#dk?M?kG1p*KgU__4oN-AHW$Uy1mZ&j*MHM1NFH~3f z+U(;=%E>dxBH9$-rSJ7ghv!*vF@5qDrVrd_NcBo#DW`YT9A)o0a)$o^j^di-Y?~#Za;f&2*9Nsn$`@?ke9c3+>ia;@n19&UU9J?yUfz(Idl`X zxw4l-uO)Lm+Dl&Zys%0>Y+EGwk$3yhjHA+fpVfq`7aUz==kg%49gy4!34WxXO&1W! zT0B)pQqW!P!E^C6Vm*_K&z|)?KW3&4dLqkcz?cY+GBQxa3iu z-J|(}eK4Y0Bs68&JwJfvZ81t!`D^ao?X}CW%j~<&itF9iR)M%-W{ig67NqfkJe!a# zo+;I~iFm->@q^@HhZ1hI6cb4OKP|TPx!$4L)6B*jC1!jX(!bZhDA$#p!Y!V1n~;*so;fYXI%oeM3V$%)&#OtLvCO&!io(~pG`g=Jpo))< z(;j))GlPZ*TyI0`Fz{;u}0F&=Bjz@SkkPxAL#KVr=D{6pT|%Ce93--=W=uxF(q^;jR( z7%a4%OY}NHJLhk!Q>)D7Qd-nGwr*$rR~)`c@COXz`F=?7F4qu%4O8(UdZ^wv+Q(TJ z%B&Y2aK_*3s?YzIyUh5S3hRNQsA0Y0&Waz@4_3zH_>1~3towu6R7iT8*8$AyDwdT5 z4fM}w1>D600VcabahTTGm{~tA!k-lhtn|Y1@)dSg*92I;RW)Mgz&kB@!tTIb{rJ2x zpqiicCfFkndr#iSHFPY>kB*1=CEpBB~as;OFz)+W?m~W#8%1jo7DnK3rYeN z66}Yt(pb>Pcm`!_=sz+2lRU>Y@v0a7r#ZTMylP;D^e%j^eF3piraE?3o;9$+odmlw z^jgmp{yaxtDz0nKq=-@Vh@FHRv=TO9;UNe?57lTg&`U@3k2?NleEk}N|1onp`_OhW zXkK#%sgrEK(qLuuS)ezJA8`@`A4a$LPxuAX!22Ea<}`y>mPO!jyA;) zY55(+RXsoxGlJ8sJ}^cEsZfTK7a)wWWW`k1AQ0bt!LvQ8j%@YkFnbGAjbv1ztl?PW zaYj4@Xh+%IliyRVL|(6}lzdHXggpwMyFK+tA!-8S6cez2-XObp!l$yQUNX?WglSKG z%K7c-D^)?XwWrm;1BRZc0o-=Tp2EZX8{sFUW1naJQz|_2(!I`0lnNg0X-y3Dsm@`( zV4@iLxTBi)AH*~U*ZRg^uc&UYv)uQ41V+{`AwtpUK4p_;)uh{}_9 zMfcnN^jhc9I)kr!+Dw?!$7F2L`3`aAdCvTn>p3P1^gq`u(#jsR`C-MPC%vmvv>+-Q zvide~Uah~5<@x>eZDnEs=tj3=-~q1l!ktioq#Wo}3--vv0#}v8^$o_%ep#3wm%pO zj?!PLAuMi`++}{6Z}Hke+Fe#NnpW9!<)AmX6^wG)Su(g5Mo?^{O2O@D%&i$~GXIM$ zfM(`McSn-v5TSxu4?4yeB2N^0Of|;tYXNCargBN6Ps^zs#pX&tk1y>pipu|Q)m`1f zNduxQ>++)gvS-FTcc^`29C*w6X7lg;D)#_n3(QBFRM{e4Ehrzp=#m(r^l$xp7WK4;mVdSpVA zEQx2hbR?1krnQwnT9d!rJD>f~gKWCTSvk1Rp<_|$%*lc}b&4^c9#${)!Fh66=DP^KfK9lJG@n1p4;x`=&J!%c1h?cLmJ2+Tp%b^%qWtxYp8xOSq1!m&2>v0{g!OE zLQ&*(-j9IXB7j0%fYP62ZV74ByBS@cqjY>Z|9$I@`W3$nYl711XF+M;t0L^))M2!9NG5RUz_nrd9UsuI;_MnUMtcW=H6G<(kkdG9~ancxn?+g zph4`?eq0Yi(o@gP-?jsP!POQiT*boxB>NX}cEB0sYBJ0=Pw)BZSfgRh`TCFAiT{YZ zU`A&nJ`rFgOH&_a{_-c@_8z*`1JB==S@jEbt^0zTIke7sJQNd-927mU^_ITp^iy2a zXZ4RzNU0jb=wMtJ^L~!~*X+9a+quU7V2*vktGk9Q*R+6d9_QDq{Ia$g>l|~EV_X_@ zt^Kw0>$)RSIS0PU8q#X|ocXW#*&vmGgP_qu5iV~s$On$*(cJpq{DXGrUvqh16HsT0 zxlBFbTWbhw$?w&?dg69FDy=F6mr*@hL1=}>nhx8XdP14Cc&rrkKB(GKt{IdS`RnuC z+uiyrzjKETi`oI7HrzW*G5CyF^^EBCGG=YDc^#qD&z{;Xu#z;Y2}S4yQRit25&_e+ zy%+53n5r#Y?%H2~$&T=bkt0Il)&oSYV?}yVb}!TMGD9o9_uY8>g*tRyzxvb&oMPo| zyez^G#@i~RTz|+O#Q~3S5CnR89z>0SIwZ9dGd!d#nx zH3gfXrFNw+48s@u_%(N~Szf!t^_Qkjap%&Jwct`)>4H)z-&Y`x@RIQNc-QDc+B@F+ z6`$J9ixxg>^WvAOKEag(CK1pGnL#`~-DYsS9lQsDXtjE$y2P}P-)fqg)OtXa-n4V- z3(66GcGUZEtInw}_wgqjZF$&Fr~f$d;U0nF-hjT3^Xi6-{%5y8Rw0g#KUEfakATg5 z&U5S99Z)3UcmERm50o2j>tzTqosd4dIL>&}izJ6vlX)P1%r%D+k3Ugym{?$`{G#5_ zLxDH|Xwv>@@7m6{n7q#L%s&2Zo_!4rj?@@7&Rp7;7&_&xvbo;JKYF$ifV74sv+o{i-&XX6M#19>FNi_y>z`pAw|VTI%9Bs zI4#HVy1{e;dh4fr=1=$fwehksj}@Fc51$QG3YnP_6xFL@0Q%d(H!_u-12KUQ@x%lrVj8DzSw+yU)t_JE23p@X>I>2J~+bRHa z3^HMBrMjvCj9f&B8Z)wpJJU|Gl|Rh$@}&ZsWefNA^YWMI7`%tPe-Q8)Q7}x_pOy8u z@_kKXe_dbyETP-wOsqO$hT4@exb8eqW zGp0tdXK9lyJ>~OLJke+K*Hon)bjy3(k)4f>Sf$&>b_U<*TI02*L zT(d$x!;~13-ZbukPt}m=}V`po>%&R90jO==hNk2dG;E3A+|2`4EPW4z7t*KE4Z{M)?0r7lu`uKa^iDzP3}^H}og z+tDll!0%QWymBXO?fYiW{@3hvv)fcB7a#zZSAWtbIGg{sUEq91_@LDUB6YY<*^DHX z&;`wcK>~O?6hH9hgme?LzOqw6_v`zYI<>*-6(!3q^1c9pcGookBajfqXnu3Py~NV4 z1^8X=Os4x;|8wRjb$2qrYOG1P=B!&sXPB$JfXI;K$NIq~+%z1pHZYCP2(ON!BS_Ni zG_Ls9%FZhWe{A^>SUyrBP!?VhAyG|R7P-MDL;}GHf-=tA5pT(4UszPahN?zxKBff5 z6wlB9)FS1yFL;xoKf$6gPhWyVtqS|Xg+yD7%Gdow#3%ObKMV905mn#;nEGAwk*J5F@n}4{R_O&pZTs5%e+3zEvT}JcY4Y($P1y)wq!fNgRliFtNr>eK%{nI;I(ckdAfgU{5{cNLYu1)&v+xysxDyxIuHWC19uZJJ?+7@>j*M7 zuR-fXzJF)uAf!F|1!cqAd0&31NYrp~4)oCoxQE)&12I~uMN}VnR@?W)zvmCh3U(f~ zt|Pc}e=Cg!h1-nz)BX6K8~i153vwlS-lVS?TFTs!6h|0ifR_kXu8{*|BR*I z#V%u{SZQs-#n;90ggwC55-;iOe_y%wU~hh@GhRs>QAbpeC Z%p6V)7~?-Ip*(@ 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 jazVmqr+@+hrz=^ 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 z zT4vRL#C&AoOrV_^imucQQDf??tjUkW(kYI_;HH^S~qY|xQssSig5VEKw$+XlN~-GJ{(1SvNB~0 zf3g_)didZKraf#9L)K#r^VGyS1xOIgBQQhGz3W4yg&bhxQR-ohUDdD5eoQl^$Z>E# z2k%?<2au6-1*DCdK+E6i*HD2v?W}o@b1u9Y@Ry_AK6N^yIYaWIgHZA2GAu>{;;2sH zCU({kk$h6eTH1%DDh=^D8~*A9x8%_Ja&s)P3H^XDp(hgFMTYO%U9kw)6u`$qK_|n{ zm2sd4HS+2?38QYVXL~`myG`omDn714bWEHIDQhgxFs+_8@Ozd&;I3I`n2#8sxDChm zaZ6%@iWPTS0SwE%MJmjl=&?Zg;`qj{(j)n|Diy)P=${fDd!9r7fw6d#B2o`$P2!th zJOYyCOKz`ZyGI2jJ(H%6b7L8GOVx2iy^oL{Gj_?hedI~0-5Wm8*uMpXA7nh?8_W6q znt#5u<)3Dp`d&W60E=QY?w}g8Qj%)xRErvlJ=8=@yiT-Z21EyD9#^COny|kSQsmj8 z@3CDk`;DT*QWpsn+!3mKN;5NJ|=>J%q=g!nCG z7k*v|IlH9CXf>D$N;V%|CRG}PZkRRlggtU>g|#%9RA93b70fga5nS`8HehK~Y*;V9 zAdEL33FXqh3LD4%>JC5b3$ATg3>48HZ6^*Ih#amE19r<{wM2IU5d*r*PT|sk{N93@ z4&UpCwx;}dQ#>d_YqW>_mSTmhi5)T`2L6l`+0#6d?UmK5?UJ%C2CZVpX3Kf@qrc0@ zTRoB9_sRTc<0+1kJmhI}5!R5ZadCK%xrkVQFq}vHf?-ZEX9c9~v3OtcvE~Pc6);K} z1xAWGkNK+F@y_v_$to8}uQqfG5F6y@$LdI}%8=T+P)d(ceIR#A>%v9@Cf2s;pkc{8 z8SQp=GX?C$yR@-0-S533HN@|@U(YuDd$~vb`W}|wno(DVc~I>~*fDyG?G%nRRx7gR z99qab0A`&0T6Abf5N%UM!pPcTo~!-Q71TggC)Rxu4;UfQ1|48r$}f1XhVC_ku->V~ zn(s)bIp&{TekkuYINo0J%kZt={S&XjE6vAz8%t^)a(U0?t!PLLhlo;z7|&ZcsYM=+ z8|8`LRRaa&$bRhegOpCJK@?%cT84(76?#i1c7fotXd!Gl$N**{yQdNjvuu>7-aa~q$gATnMhQENZo~elzNN;3rS8;Nh_kV zY&##DIKFE1-?uqy$#b;M(X1NrZ==TWA1$%Ug=bzkvR}P)J@8+QcgAJ>f;PrJ08G!z zlA$~7!$kO!sqs^JR2M&^1wv!Qty;j&tEIawf0A zp}>$mJ4y;GF@r5u)6jvoE+b%x^=Lt@HCHH8AJ_&Q3Q2tfFr9u?A!}-WTsS1&@^wY( z*}w-cBmVs|&$s!I@y~xJPw$?V6?ZcRe88w6GHwyLd4W@3eala`mG&?2TKN_|1JSsr ztby~=VPy7bprj%F-X$npm3v_$j;2>@1H1ll2UCZ2@&fRQud%xA+Z;9dAi~vdXp}Bpd^HG5T|*^V*0ZYO!z7rOL@EjHr92 z4wWRcTjLWR5s@~)ie<$c?kDX6cO%ZBx^i_2ABWWY@`+tfe+P^AEkLuErlhcQH7`FU zCH)VXf^_*-$mrxr!o_Yl)?W~Mq79x+mIF^N)>MW6$DzOo)O5kP40{{tvHI~)O8cQffV6jL!hb6dZbU0-M zb08H4%`EI$$<@_@cWW({_1MaClii*aJ%7Gz!)ML;LSM_ff5%n1u%_S?Vl;iqQ7|-x zx{7^~J77plfmT;jmd0)9b>B#+Cu_gy^R*N~iF1RHS+}5Lo~%gau0UYzW!4lrQSzVTMv|5fQ zW5{B3kctb5f$CFqzP4~_c`Prksnb@sIgQ9&Fx*@<0PzUebAgg(<@u2HzRjr&sqK?R zxRKlB{lYlweAdhF;ke-30fYH@puYh|PGL(0j*&)m>M+xXhQXJDtK`he&dkXYuXnCD z$ga=>6YCv`wUE_}QX6?zu+Y%as>axz)#}1bXMY`HhE%Lqp5?l5y6&bNS7wQ>9``2R zEkB&Q^&NY2r0G8<)*l)h1{I<7D#;S~+#KU3fW!{ClWT>o(%kO4A$U7d?43@lf>@$8 z6sz(pq&4|Rkc)KpEeYw#E~=~?-F+ix+1)=k2^m@1qD zs2ihDB=iAaHs(D4Tl>=n^<`Jyiw&9aSFuPrcKIt)-St5Zb?dPuv9w*VX-F983HD>^ z$ckVSjzDM&qr-mPBDF1M(y-_5CX0rGG+1kFTY+TXCYiBJ8y5cK=tlb{(~Mui_%TQ2 zj%ONtAG2Y9cd2JBY6%fD!c2p!GS_@YMW234tVFesI@lM^XS$6OUMk8Rtl~jZ3Iqo4 z7VS%Yd8s@i!eo^`7HfRMuSbSPA7gLWL?K+aifgKfZA#1!cjtC@QS7&Y6$SnQn^q^G z0(A|hUD|SCEX`-&8=-l3pm#$qAI9E=;~AnX^SFzqBV;@L*t?Qf!u2CkySa};4+3(X z9m8?ZTTb6a8jQ)J$P$}}<@T^=M}?5f8l>i;o{QZizj)lQI<1TQDc3DfVNWISPb?cg zzxeZwQ!g16EK+4AVzRW@x&k_7B7@h`ld-!A3T2)>cl2vUhu3;ci}H+k+ZtNq_-C;cIfWj65bMIEP)6#kGrBQaNSern z{Rn^58ck1&rWHabcWHpc*;a5_Ibv}xA*u82qH%hrlA~qEJBfc~+!qs{2^0xfS&9nc zQ;S^TOI#tz)3d%}AMBVT$IoIS;FtBOKLZ*U*!M$%PFzHXxWRBahPrqKza)2(VDlne zjf1;9yEioko3FaN;g>_mlE%tPr|YuLar<%J`S-_*?||@)cmG==1|7nkk&TTY9ER&~ zUMvh&WGO8I`(t$Ak~V_lc6F(v(TmDVUFR?I(R*-?Q_FK-uT7DL8~iWO?(l~!SjS}L zEpdAfs~|CgdG>CX#pRWb%CUq1%f={t^?^j8_v{zK*f{i%1!VP)ZJ^smq%0ILo}Y)bPA>T=I#q9^=*f?h53(=%ih zv+8Ftm(*%ilOXLuvjpAHZ_mjXO*Yun6i;}ze@d%m9s9Z~n=VPM7v43qRT);J&3C|xWE&}>O+SWLrp_yF)LT+(GO1Rd3j zTo+2=cyrjpDW~cI88?a@>D8^6Iz_@V2D!|(`Gx+Y9r<3`#a~HV@*mK1e$X-^#B-Af z-LMl?jbK?sRgIp~e4_F=1-PqFO*eE_=j&E8ZAgU^X(}E6>V2DOC0p$!C4%D0Zxp$a zC9OilKIPJgP1u%CwjQ;gC;$1~^o@Nd-*3~?^lc>06u;&i1KbVzcIQZT$5$f_I#f*X zh|E8{fAI!(=}U8fqoB9LzP;KXsv9ze^A5u>QXIfUW%>*n_8kL)f@Gx_<>ova-y7GD zSZ5EVj+Po39kF)JNvbDocribfk8m<0 z#5>=H5tlyLgWVz2P0}cZIQ3h8*UoyhqZGqe-$nwbmb!X&_K^gL3grd7hQM}brLw^9 z`TE*VFWzHO?`){6OZEJ`xAnJm$(Zo*2@sJv5%{!-;4~hyc7ADvPnrNu?7N1*kGC6e z^A-H6!v0DLaA~y}hrGZ@+i(T2bHV19O*{ZEce1baKRYF)UW?|+Dn08gz^^bXAJ!~n z;kU8C9~^!1`}D}2@m2RE<{o1VAJUIrXjB3;L}5n)t)Lu5K{13xS3t>pmN6UWyHZpV ze^C*R0124#7mp`tn+cUb6ENp&tqXi1Zxw}wN|MH{xiiT=}CE*V2FO*5v<|F~)V_D(4?A z|3myu6rya6lO_Tem8npM1VxQ4Mj78kJXWV#QGsLcwN_nGgkTwh7{xVKQsE$ntI6Xi z+%^Z@;q;sC4rZD>0cUnIKQt^!4zqLuXGQo%~Iws5;!^aRez{xVQ_ zdkVmC;In4jSSan#NW#Lh8FJCTKJe)1Eh=D0!lGG|1$E8ZRyT%4&6AqHHXCr_4iqa9 zS&J4W@Hoc0KbH{!z1bKc+53O9iKYR&l&6+G`IYT_U@*@Wt2cNTSjSx?9YU}}d!|Qf zW?R{!*?8n!fuRY{peAI7htzYUM{LVMbKMt{=hr+dLC|7EAVu?_{I5oJg*cGVAYi6u z<}uZ;+S=%?y`JnN{{I5L!Rul^ZDF*J>DvGrq0o-zP#}YW7emRMsq6N~L!VY4L`!&g z5ra&|MXN>ETq1%_b6-a^+KXjf;*HQP14VY^0FQHn%4a+Je#YBtZttn}pP`$M0yU9^ za_A@9fhD;r1|KTc4WW}m2lH<82kNC42vOx1I)vdq_QV}<%N#{3F5N|)Rt7VI-R^O9 zzfzrzy&Q=jamV2FJO=b)zs~u$GUrOGku}v1B}ABSv=#>k^5Y2JSqy_u+<^s&8|?A- zM{;D;=3KYxlo42kx_GbEtE1`LqY#=dM@e}D8 znCsW%FI_7n^A@#yEqg*N!83t0$~U)Mvz_ZB5L`SKhwwg+#HCrM8?WK(9xCZIx97QK z-=CT2U(X$NznPgqN3>doD5ql*lo$*?pVm&W$%vM&MyTT2ec8ujj|fj;6muiX5UAWWe@YYwKEJ;np6tAqgJ89p}fajp9}M(zDS?to4FIK?%i}=ZlYFa z8ccDQ9;79-pEeA4j_5t@i8v;`k}sm+3C7fL^EMjQrp`MITZhTDW2d}wo}P~<^}~A>dvo+bQw@z-G`Q}?09ml& z%X&jkbOPu?AFhCd`R$3*H8wQ;ZpILSOgB4I-!p%C?$2E^U*)T4O3euiHn*@) zp>{EHXiFFokh`!>J$qOFZAq^=YLj8VqZyfS%9(sfE4{ory%$%9zbo=sLR*r8?6tx8 z+Ux??dhN*CT4hwpdZ19+$}<7L+`3SMOno;Khn?pJ)|f`k!Tk$n;r`3^R?QHB z*Rg$InQ;c<4#wT%$P3%|a7(sZ;`@?3VOJnlo?ndzf1c$;cZOB~WXCyk&cb1r(c(J; z@if!X;WjSe2?W^|ar9bog3?Vgq*fa(fNJJs3P-99%cpFlfh+$Bq@P}$gHrJzieQ&X|*3mIbs zaJ{;LsT6k%;lzC-cN)4zdncO`PIpo*;DT}&70NdXBs9seVPr+qBP?ixX<#Pd*O%ef zzn}RsUmwrT+WTedM}45%(6&goKzf~DuC9=s8gT94%-|tLcq%wsq+8QFF9Rm zaM=;8tVw@0bXMTEr)Wa!*>0Yok+qWp4|Y&a?bCDG?0W9YZ+K@+>GO$T^zTX<@)d>E z%x~4yyYVY-l~=?gPyD=|;J=eVR6d&FL{i^iioCSDOJ*iR?0cMa8K!s<>UK}+cOjwO zH|^5bzI=YRwB^YL)+h-GvmBQ=f}=LEF5=R%_Kq-JAX8#;X_b*>6}|I-Zr)g+1>ocT zbr-I9|1wuDyi-v>>9q@NGMaC*duL8Y($mwanU^=B*?X5N&FSv595P(MJ@2&-N{FgX z<8gM7XlL|~c7Dn2{RK{jv6P3C;w1cF(~OG=SU}D=ChGO#nLX?W6*k-GGh|Od3LZlh zbDBC4$5NXGDySjlfGSdR*%m7jYIM5ZI{ZDX4%GI$ zS!r)ESf$B!gn89O*Z) z57}dleK5-Qz_ttGDr_bS4I2fTs(eXd{CMA#_Y-}Z=al{O>CFvwjW4bty}jWLs}GfS z6>fvXwZ=SD20PnuJm1_f9&b`HaT$h6sbavVmSM}-FP#E@q^Th-TV3uK!V8r`UD@Ga ze~(zft#J;L;91esn@fa`Iyg}z2U5_qul=h&9M9)5V*4gf=BfGMJ}ru#QW*w3-D@DW zXcL-gQe#a8+!z>DOIhpLGTy2w`_o>8Lp^aFI65+iPnU|T%Tm`zM3j`mRl(I+i$t@h z+$(I8Qx4%E4&zIYkwa3ZdaKnnj#Gtr;~R$);}psb{}5@=F3U18)2=^W!> zjUOp`f&wLVmc%zM=XdMpca(gJ_aOb$QqNGU_dfkWW`cY7*q<+pJzKmS3>GsmR3;3E zDOTjp$EawL%8n($&kOd)<7HBv?CJ{Vo9bX!Z4p0N4{)rjjuJO^gkr=J-a0GYU}M== zxg8=Sv_|@!0_$b<3QciS#@FuJV496>ZNWg3q2N_V{D+?rk_#0f`L{RgH2R3K{snd6v*zYM)ib_8_ z>8}${O45hUPEQ4?P~A`>$!2L@2i4iE)GS1~@Mx^GcHA)*&bU}cG~pF`uFZJDznCOb;76NL?QcOY}GOFLR_aEdiwfDuPP z4bhv+V5ho!M$dV>yElh=6o>UWXL(H=KlD82liDv$B!SSZMutfpUJ1$0+7`03o+<-1gBeCRZKTuS0_ zSbcLtP*5o#W=H_%us;GtK`3P%+J|oqI(br^!H}-w16tG(7BON9k%dBo!pgz`Nexnu zAihy;G!qLgx;xn+24s^~s)8S7uv$gq{wO!to5a{`)|{9U{%qjUGA{T7%-Z_7yo+Lv z+{|8NY|ZH3r!!4`^4@$eX{CAKz2LNjag6GU);XS$Nru)wphOSoRz3^qwF0XORyBOsDgn7jvFo;R){ z-10W4&l3xO@pLt;X2WPpdInSgnZM*6YeSY_K;q9L$)~1opa7$_yTP!;2WtZ?;KR{W zM2ym`3pU+L9+xEz89W6Fd828ASoPaD5z$gZTwn#A$TeQ^wdvk%cIl zCdV%v^$-Vnee?D;_9Wti%a-r<5#`Vva#I(E_^1$6CmHzj>$a7iSrQF`@~Jmj!2iX_{7p2)ZOJ5l$cZ%;s+^)b>{`ubS$T z8Rayyb-vkZki|CzKvGg1PnNi{?4SL3-3Z{dx}tez|lXtBL=G3KaPym zvmL*gzJR)nHf!8E0yal;;Vne=s&CT3J{vY-)#IVVO2@eG($xy7MXajFWq~9bN6dXS zyAjr}ofX(-TgXlHgD%a?tL{VvyGm}A_Ka5G6h}B_s%?J{*YoF-gctOI`KPdeUW{j9 zyzfgLRB1VYsaQMejW*Mr%Vd9s?4wpAe&G2B{_FVrMDe)QrCF#oqwzKTz8MIXGsYY# z{#J7)16*SqtOUTbfd6OqF}(6d-re#=p0DY>*7aO)$J5gzQwX*OXt);{E5!h2Pphm!GL+ znM}`;5}xUTT4<78w%`d}gB54OVWP{5983(+^7!@*6xf9Oh?> zLgf&})D;9mxr!v^v69-W6fXYsC&=DE?P^fgXn8jmtlhD8wzkG^j8aBpwwfSd@z#3e zvDJ7^i(mIT=X_fBoTZp(#ychj&pvp#D8duI%plpw4vli`H0CWUWIa&-URU(2P(9mP z6XZcIrkh4A%8UzQqeGsW(c}_t@!x0}J75GhM$?@qRfJ9I1QRgu$dNd?Xf&3&U{a9O z0TeFFCzp*jZ9})td@C(%0}fCfvIxqCcL)xK!s|(T_pk~>sGDsy+$QkDwO#XjS-7dO zK_EQn!XO7KFk}`G-YnO;*}mp8d?4Lcq^CNS;EfVJL}t4T=hxgs2kV*o@>b(jMkjiM zdwc){mMJ(aU-8A6J8o**9aTK8%J{+Rnf+-8mAG^|v!kF-5;c*O;iqV4H?A)(ZY z1qGd59S_wtQ@p=^i(+<~0Mc?YalYXMGe_|}WjpjmKBh1FMaDk$MJfQ0PQow&wi59Sx1{H64UaMpta$%v|iN`xQ6DCB^mTKj3(iS;%j zl1_D4`<5yJ`pbynF2v}+pC_99<2*Uc=P^P7EEE$(4s;jT*%vls##&(u`?yO1^i#rU z5G;EF?Im*a7(O?5)d2FmW?iplm1-BrtJK={dKAN0WJ)+1Yk@H#S>Z}?2}5euvfxPp z=qcg)wqpl}+4ggwg6-@97xZ(C-#lkt`z`m%R@>?Oza2S<-}`D>cH8v%C5A7(3|F_* zB80^aFiyo1-sor+30RC|_ljtBbPyk1TimGMnKCR(3ULP5(enHxw?F2dsd`H=*THQU zZj}dk6O~l67m-9h?txgfFCW)zsih|YQ{aKFPV!WwQC4-kj$@m9G3er>0(Is43v4k- z17XW@Nz*t6y0b(mlUhtJ@q$Z^#8#X&j7ISbV+x93w>c1TEly>>M8KEjJibzO;-n+d~kOlj2*v1pw zT3fnR=V-VBk5D7l_wO%Iiq>`LAt{IjZXh%aNmhim!OI50odqjNZ%rAhs3-p1W+Keyr24)m=*mW35tK45`p?HCx;gdD*n$4w_0oRaFv<-5tZA-3A=KXb?+oT-mX%3z!}}@CEgW zzbE?8zLRLP`vBVW`46h)3OKOXgC5IZKugxhsW_}UOV+B=M{HKk62ZUVC9TGJ+&k)S z!~;u3fgald5)AuRi6UxSIZ1F^u5!#x4zC*g7boI>I<+O>DsK2r^zt8a?FZ2e{|Q$N zSqgdGoW!>9>P`-uM7hqJs#!HUpn~`12rSU*1ExT)fr2yIU*>!nT@LEl?4^nAPz{lN zUF;sc;foF30j)m+pVs^xkKbH4c)bq{e6NdiY zcypJw`CljV7oJ$XHe2Qx&V~u-jt{e2%%4=^ZcNGa{K$ zNf~4QE&rjLf3N=SR7=4dmcivYv5DAOVg;?SnyJrB*12e?-~&^NYN5f9T9#Y03u3CO zl=Jw(o|0C}`j4@sZEzf|#ozrnPuKXR{pvzJk@AoAa=5D?btjAbrj-G%Mn?eyYhGn0 zbAZW6dz`=e=SOc;a~W+iqIpPy+X){b<;!sL5sDd#9qJ$EGiN7rb&m2jL-sV_bV1%^m$RiR`l0aMdLo_Ll5Zzg{2W)6<_PXL zhd*%4;m(#()u`d7y=57`R9}ET#~mE~Z=YeLN|fe!(^XpCT!_sezy*R}v&X{GWj1*! zWe;oU$F3QaGxdrkdlooB@d0fcDf-Yg5TC+BO|2vRTBrBwwXuW3>;B45XI#Qw?p1sd zUB82Bf9Do5;!Y_z7)h|aw{^`ClRbdKD_|7bMIt@-hlqrA2789nF$2Nw)m7vZePfw-c;>T0=7;^#w#{paGa?EdCRFiWmS8*=sY?Obk(kn~k9ALTBp1B-G zh;-OV;&q#g>*K#Tf}OotT7#uj<&*DrYIDChdKl;Dt^Y;Mh&V@TQ{O-;SWU#RNU9SrZ&QvL`imaB3*6RUUzW%$ZO!w56tt(Emb*@o|dYgJZ zJ+$6;0XiTf06O+8X4_pVrf0LoLL*T(YTO3mx^i=)%i~cW8n5j(!)*5PXf4hctd0v+ zys-dMVG6vORIfDR3;swbEa2xTo5tD;6_K(<=RlTx$u={i$*i5tJ$gsq*xMV1U$KIB z6Jgu2>|{9nDlMerTKa{)!9T2Lu|I?FTXe?2ZLm&YRGl7S2lPiS+X{}tv0sN)_Go005;-L^L+= zaNb%=|LAkMqBUn2aBZ8`P?cv{(P2VmIC^Q+9B|cdQK+7Q;+#~uenDS<1T1mm*o(*xQe{)(*PBPb;ntffs%Y`<@$ z0lXg1i(?kFty|n%Yi>7+rC+s8J3wKQb6uzdXKACiSDnr5L1<*V!c&#y_ZWx&fiWZD z=ko-JUpLM}UJ)9~3BfFFGt<{`A+bs|`-uM3Ztu*~V|x9v8jDPJkyT2)P9E_<4&)hT z*`di5pXQ`Cb+2`pTi_PnyD2J4`Icm6CEwi=o@U02GOk(hg|G89wI9!W0(^VKv{5Zm z1H@b9tN!VvR5A>ZJWR>F)sP~Qf(Gd)HVi-0y_eqJN4&MfKiNw64m~riY*pt1$+S`G zn%~;tH+slMbNT``T9sY<>{8y%Q#5$|#6AYQ%M4pnLb7#DFXgAgD^?I&J^}#CEN<^> zPEXD2@o}9{T4@*+QtE9K4H_?OLikKaE+w*5O|hE`;5??g*9E?=CA|!a> zY&D8y+s27Nj@8~X<23WoaXSAGZ8y^S3VX5dFXzwHA}_w>;z|z+F8a0t1!7-B>lDtU zQ>SiI+&ByiSg5~O87_fG2~Z)Gv=cKn^VBxClnls{4#2bNqE+Gmk3A(_La%Lg%X@yy zpMU>SPyO?%YrP-WwGEnq6E*i`v<74g}JFTPyU zvA#Iv7GHBcih%FXgd}lYSZMkhO?d8&wfNyt;u_q(ECnFwtex#jEvs}7%kuzR*AW2- z7Rv69t0h^l*9v|08O4Ri7nW~~JF9$Jn9rjnf~EnFuMB^%iN>Uv0}8Q`<2(C)`pQCU z>gcYm45r5aSfK_0PjEzW)u#g#0U2X_<~F!oLOct>0Stbs5XzMNh3$fg$}MFL7W+nQ z)7R{z&>gLP)C&x$`<1_vDu`1UNxXaeVLtTJF}Y5t-moy^*z zY_5bsNci@-alM&)z^F;BO8g@=Hon)_BYvJ<#%~Zy_+;bii{m%rF~f7V)$w%5_=XAI}deom!Pz%bKNTNDD%)Yp8tn^L^vQ zBv+L)PeEs4`+B_7@r#*j`qMnQq26uo6LrQDuwFuZ5R6)>M^l&J55A4z@;Y1bx-VC5 z)n{S7JXkF~)BKH~_I^CxwL^DQs5yt6v@WFro8}fH?C^t9fdF5kL7j0M4kZ**2N)YSFr& zR*eFRQtXOM?-X>Z)k1HFeNBAq-xzm&?er#&8s|@x3`)jLK}vk)&+rm0sqX9N@b>yD zO0>cJa_5Ly3Q(@}1L|Z{%Sr7z?A5umpac)~unx&!sk5`q91CP0d~x$R}5Qh;61G=3#rP4OQwp$8Z{BAI=8;5k@_> z%qsbl>T9VCP^vB4%{(kPx?-S5V*woO&rfUL^Bghq9?5yab2Z%$w|&T)wd=wk!s0?E zTG9Bh#1({@wP$tH;H1NjyXE*;msDHoDRMI%&p^JB-IKQQRB9H|rW`)u!n~*N;?9%r zUz{6e-zTrL&KLobd~us5b9%R%**suAm(ELNIo(H);9vz*dLgP=MswyQ^tF9NN2P9G zuzhgEG5vh!TDABjpN)6Rh}1VuKD(X^>wVv?jnu2YEm|(W zRoh>FN*`r6+BJgn~>$qLo|< zv)*(1@p+QerlH_C;nGIN>01u!0+-~!M21KI?XNvC+Mp$eW7rT3U78wL9(#vJbGycqQKCt-`Xn6v?;2n1D%|vO}TZb z%@374J?Gn}UVI*%c%Lix_R)_K6uELtGJ=^}FyxG8=x(NVz%X9v`g_Y>MV=;#JmXr# zBMNwt64Kfk8!DGdVZ*qZ#bH`k1e03aNaXn@z3Szzb!-XiMtN~}+)MxIj5FBJ^r`i} z<5QkWGqq9~?LSrQu-gLRUpZHa4?yVt0C ze8GEp&WrOkhV}vryuy-Abu{;g#3SthLHjD=(M>fFNjR){{E%n;Z_cVq(IH(8~`t$`7C?EDM1Q4h8pz^CkUn3%c3ce zhuU#vZ>#AKw)eV?-qUD9Cz(<%GUst%rN48q>h)dx%X@nYNF zSX0zlpi7AD__3?YOmNuU#ztBjg`LV_wsGrN@|Nbikd8j=E&Tc}g#r3WqGieZ$a}6rnL7LNPi*!JgUxoK^6r6>07SdbLU0 zW!q!;j&$TkA$T5h814Ig4{gP~Zs2%s#&T`P(xU^1yMbO9_HvdP3gJAs0n+H+Y5BGu z*;kf7)CZSo7((Y5%;KCVxP#OcAY`A^%F&dq;4Yh%;VyPW>l}V!b3^sg4i?g&lG4DJ zTx-^`E{m+=a}u> z(R=0CH4AcH2_pS9<;LocsBWKBy-7qB<6&q8PXo(@2@2w{vm!5JM2x9IbBVU2DaR6Qng;WLW zu+ACc+0f0t-zdH53l<>Z)bjg@-8R3L@msFT({@7+oM>jK%1|YOtHb}4GEEJd$Q)xe z#`{M&cF`3}RfpWfE^KZy!4$j0mww9DXXs2vligEpNi`b0kTVmGFj614+ zD$fzNHJ2OBT9%NW;Z^Z7xl)MZHyab18+xX4kCYK!#puitrNLNx{As@cqI3`K>S<)4 ztO2jwjb<6Ppjoqr6OwsSTI3+nI7e?4o%FN*+0*jb4PK?F+3t!WDyDDe6Bc&y$X=Av zMMazR&(%-LU0&s38mT~T>%GB)taKK31ud#}pACw0fw^wZhnWWXgOl3mR43I!tuhYi zk;ik!6V5UGH*?)x|DJxMxFVAeV+@dpe?hTgE4j-4u*X<}(ctJO+cyqh73N={KGx7n zJ%AcY8(So;Ue60Vy|Z6#li&{PP^3t+!g>YDukBmH)agsf;pzI(CGXa)=g53>yeYGK zlIUCwXlOhLqZ~zAp%?7ARk2vx{$zH~opQxZhyV?}Qp|#h03hO3HasdN^ZHtDq`vzQ z`72e<6x%6=SayC5CbOpbS1{yDLKcDsK&(qAqYG&q!;hAWW6;y>RcFi8aVvTjbRu!M z_ij+Cu8?dJb87s^VS^WR_PRw!-Y*@+M`QIAeA0_RNy8b-AcSsfi{z;`3uPU=L`*Xk z+4)IzP<@ZH+nt!hVxGhcC6^wuAy_?!a0e55_+rs!MoywTdx7dfoChZGuNxMKAjK+q zS02$-d*K0mw$!1$9ZbzZS=a#b-LZ+RZgdKs@o7z z8I3?d$$}U)*uI>c?)jAyU&2!C9D`nmn3+m%1O+uIL}0v_r%v}GhygF~IkMCm^>Qrs zV!}<(RbW5G`jAqwmU_L~ml|7ajQQFpc)@*SK0kIoF>B8E@cvFcb>s+@F$H5^ONPZ1 zx5%|ZiK}^W0}M5we8ltEMjBW2WlVgN#)a96VHb-=UM(_&;OIS@a0bV!eQ&V}3)sz< zMai4I7GhIH89xTs8ka!Sm9CSa1!$Zh11(~VeO&jAD*ml!rq&bWcJ4I}qz?V4`=JJ? z#kuv3v`0K*t9wFf;DmRG#OEZyTXe+d$LTE!2QJ5lFZk@1K&XifZ2B0r6p{Cdae*WS zADsXRES#q0Nc5h}x{R~h$OR)RbO34V!tMuHl>hWTm!q#Zv4F4Z;Raksr1_Eu%e-{f zbfhhx@ez;5gbJ1#IF)U0)IvlHOgW^hlb3fk`UZ2chv)!h>>IYwU}GBzUiKs$-oVx= ztDYe1CI-E40bylT&uD6C59>K7^X~7TAU?5muX`xd#$(oT=%x78z z22yARcV9VRQ1!Kh+ni*#DIU6m-_{#;EgYF#mZFkinmufRhz3CF{umWwhxfb2B{a)$ zsW3^dsrl$aQn*V_}U*lQCY&TWKGG;@UM?~M0uPnnOfEM86LhoV<>$*9q; z=BL0Xp$-fK%UBMFF;U7o&4KEIq;s>L0#8DQknBA;nnTy$+pP79-%x|0{4m`-fPHco zKI7wM5Z$(HtftyW&3YH*g(n3rdmq>l^+N}KlBZk!n@c@K_}9j4oq0bTSH{XKR)@hB zLN0;j!Tk{ys1;vhAhc$hSa;qmF<&A56*S`I8*ZEsI(x(gQ*#~;%ocBi4IT8h*4ZW) z_{*hy2CC6Y?gFIv5jsmiCF>@|+2-hn_e?D89rmKb4EAJ}?dgQ?unq08r8(MqSWxEQ zswVLoS*KydnHq-;YXX93iYVTdPj!76)}mJ-LObBplt4YqAgr5rQ0r3sEntQxBYqz_!QpepR~oyWY%OXk7<4Q7o0eeNXr^W~q6 zXCgQX@PF*%01!OP2yRCXP6tM;FVyhjo2;ef8TDvCEP!(wm)emESlXTEIqm=OzFwPU zZ09aJe;^o?Ke+!Y+t0zTrp=u#_0mz2MgHI%FbyE|G;VZUXDdLm)b9utWmfPAewT&C ztImSMQ<8Ep_Zru$SZt2Ah|qJx*sQv8{CIiH+0=OorRdp%RUWvt!K4yvMd?z))v4G{T?sJE`F zS&x0-1d56b2XhjBDbxGA_0>1HJ_iNWKlzkf({@=JC=TY?VJC3=NE|xNJ}VH?lv^n6HYm|0GOXUPs0U40#59956=tYMd*H{}{ z)8m~Tdf;;(+5@2E(8~_Sd`K+JtxGUy#2}Wemd}(y!F92yHx}`W=WAC#&(#L+#&AX_ zdi4xKFOoYn=?-nUVw7D#HIypgrO#bDM$bDp;~8)?K5CE#VgzXv zI?fRoRJJ2@eer%Z3PA0aO~0X-f++vD}vPxBE_H6)uj$i z={;9V)sU7H@xzapP=HQ>TW7OU3IbhcZ|<7zjn@f^EC+0ST_xiNmE7vvqm*7UsT?tu=+NQAKSQfn&(y9tpw80Q>PlDS-{G!3oRu*=xVyzv&ntFM-Q=jNN~rMS zJq(s}7$k7iEx1(YMmGTl(T&Z}s_$K4w18xZVJK8*2xtkvt-DV{B*78iO6NXs_YhUC zl^=tD+r2B^e`xRZ>T~|l@}DpNBu_Vpk|0OrUK*jxm3EaS@_$l~N{ixr&=jE)9J-7u zi(6AwTsx1UzCkdd?9d<3A?Y8oYIgM6y>D1p`J_f=Q@1kfEKdF8AIXe_>fzM;sWM7n+pT5X6;cLG*cgn98NUh^siEx+ zyE1prhXX;Bj$$q=1B?R%3>Ii!bvjQ>$(M|%*4t`+uUdUu zAU>rMpaC=Z5k^b|;{G-fkf>xvN^nYuFpv@s_HtAO@S~xRH4!Xb`k;Q37Ab&eiWA>^6+*V>c(a2}X`eBf7azVXY0;WLT<%jh(o;Y@E>|90-xq)L7M{#l5v7`{y1};g_EY71vs7W z(fwQW&i>sRXSb!wTqb-d^eSL8k`8zL9278MCf?P_PIV|;a+lpK)rw|?oBQdVwHM@= z=DDd7i8Un5(GDkap$=gszLtE`P^dt=8*-`~sf#?_v$*SZ9Vi6VO#n`c{vX`W)C{gZtLH@+^eS`{K>(-^ZcZ&%pb*HX}QTvATxYlzZT>0aNyerMM3?_ur8qg3h zYSDQPA``U`H=w2C)C9b942zZu+enQ+yH(?nBjij8>n{3%%M*h7vpqWi~ca~~Kc%yUU{*RXQ2tP6pXl-5SCN(ck zrTsjvOW7av`n-2vAJ1Er)5%|Pm$;z%ct{l+VF?gavn!M6%Z&u=xypYD_ZOtkoqaIq z07Mzfe2(LL8knp@leC)}A0b#5x3U5CJ&dNr1)C~$xJG>KTUH+eHcB7}p$3KY=-3Hl zXqiVu}Ao*Y1w?>g3%De&pk%mjsV>Az>=(T!*z|x&?IiZHuZZxvK=&a@;Lc zJyFCB;>pz(OK`8Cj-BpcnFmf?7Gda$B|nbpY0rJvNgKZ2=S_L1)ZdA>pL2HG@=xn2 zX}7AQ>|%Z7TvUL2;y)s*2yZ;bK`ZqjUD43&3o^fyNI6M7I%^w9dSk#!c*Mg6q8R>B zj($I?evy7uwr!2|kyHn^N*~}&3>yU?G&&3(<{^B6YuN;+ZQcNpG=fME>K|=fwrb*K z6h0KiS{{=X$Q?F*%UJBZzvPErUaB z1vwz0W0t2**U%qBN#?M4YEI~lnZ+VZLMmHkhF9w{F7E{t{qf#wVKtNCRWjELFzmub zVz3*V@=Er0aT^@$?DCRDC>RG)Oq)yI``<6>YIqyK@)ZT~`s8 zVqK$pyqD4oCu9$uiF)#RgRR~rtD_ms4D!ty!>NW0oh=*(g&o-XM(Scm zI<}2I>#Xv8-1qfjzaIG`Y42?Vekaj#&C1PtEu$T9SUp4f2?Ah1^&;%ogr>Y$WPg7L zGjpR9YK;f-efB^(c#u!JuP-P!%Cs};+8(3{Ru!}wG9;I#LKw4$N&85ylQPMsqE(u%FBgJ zcB^T;(^$m7Vt*czA{PnC>l`=nJAuo~9i!jfR0duqt_;V>u5bFt*~vBOlV{ z`yIaQTbFL`pRkr`A8#_31Gtd(&|03P>`7C>hR?Y9p1v>eCZnIZrtQEh&I#PS0|RIE zT6-=63pZ6BLw$o}F^n<|sy;Sn+TUv$hrcQML`k?ftFbNgnAPWcx#Tvh|f^9GKY{BG)^E1sa&K<3Uq$Rz2JMw`!g|(57EY z_FunTORU=}PH&d$d{47&@ax}KI^jW*(`xm}U%RQ+?agh*ZW&sx%9w(u+O`sGmc_xf zfjp$uJ9qy&_wD}dYdwsCV5ro`Fz)&;a_;;!LEYUtRJ?%4{7{9?$ZAX?=1d> z*U~sFL<-AR#Pr>*rb`UJtlmPk6pz$gKOp|GjXx3R92R7Vxl{ddC=R_W-kI7bZ2e5D zv7_%)dopr7(YptUuTz5=IhMwv0R;Pi)Mq5tb&ROTwMlJ;iVsZwL5%ad_W+;mYQ#Bb zyLug+XSbxs5zx1x8B?NKRONx-iF40*>Ia^Tc}`dkd0)_hceH*Yt+xpr@1N-M+U!3z zZ39WY)4L-04(N3R|5yOe$qo`^a~~XSYe`_P>te^z%|4P!F(Tt z*bi{~?DG0JLh3$dh*-lSZzBx`9!H3WJS#pNk^fubL#`lCwY!dPIwE`+9zO7PLC3|( zbPgiRYwVtpN0gW*G3eWumxd!3Q*#|{Z4 z6k~a_H__jiaEuR{uSYa~FZZN;kUNo{>YM0OD*W4nE4<&w2nh>UDA5VN&C!JBEU5k{ zB77JZe3tRsAK|*y*Iw(Z|4JdDBhC{0?$kcA@pGGEJow$yYddg!9!Web{o{p$)nB=4 z@cQF$u+_lfqbBc>4!qT-{%YZ1Jf&d1Mec8m2G3Z2iW&A#jxilLe!NgH#`Km@5R-o@ z68xBSeY`L*$h{pkWd0}$Jp8yZp#JjFh}?nJbeq`pJA{C0U8n7Pv+sFL1o)7yAIRJ7 zUgL8nUGEhB4YIDRVMXh%;{>$uQS^6NwuOt$Yv)ci`|nbNh33atj8{hMtIfX8V8acF zb7mLdKu1gEKs|Ct2wQd-IAzXz(>d=234C|?C-32?ua`&ea0GQiLaT0kwYA*;leu4v z89OBdyg8dBvda0s-Fr+1m4m`tP6}RJR_DKSs!$c0Y$w*9a~w2PtF(CB`I`$;#k!O+ zJ%Q-sE+?Hlb9R`V%odGBrHGvQuID*E{ts2piD(Ypd^k=X-XZ;bW{B=ELt04d&i_R; zg%643N@H=rIT@ON;mn}MacwgJ1NeE{j@JoquIRhaGJmPgbW!GYQ4^Lu(|w|7F5&P; z{z;vBoV9s!bi8NXHiFjXE*Jite>9)z<_rtpu|CI!YSyBtIA%IrRb5ukH8sr8!SScY zhmI>bbDV4AvJ#}IbGcr`x}V|#p^(JOR^c*WZWMGVrPf3` z3H#N_C&up{Q_r=^jN|}f>*!L;b@hFKehL6u*LG;syjBSZuc7?f7Cx6}K)e?Hd40{` z{g6V9>%JrUJ(Lbbf|)m}&{Tc6;@jR$f9819Pcf2;Q+Z&`LsusCkFH`qM*d{TUdu#b zP7%q({cOgXatztkQ#O3)iu(RWdMDzOUWO2^LxI=RE7B9^x1l@Gnhzy@uw(_>pFx5kBk1YxMf)>q+l-C(f!jmp;&lo!&f(1bE*a;E?;Y z9X_HKtx+4EbRTD0ZH-QzV`}et;E2{gWZDkBJGonQvc1vYwTvX~`ujAs=YHNZTF)mm z;hNg>*1LI$qLt&b2tD_6WF-eW4ayj|{pT;8_(bgTm&KTLRl1{(;F{r#OYATV% zx0Y(;`O8Q8+JkrBy)hIKNxgW;_;1- zJdibpW%l2e2h!Tgc;?P|*Jb<57CwAd@4{@HNvWa7{s)(wdf2h2Zk}pe7ipZQ=B`uD z8d}FWzjyI2<2Epeuf2-?l(^VG?oS$=`1CH%_K zPM!6Tf8H&bXZZxppG>Ut3$NqkErUI;ZO0&@ zhkh3CPCY`6a@A5!1mKEp{qA+Up#{Iacr~_&(p^%}Bp(Fz8K4w@K#PkRFyRo3B@rYaOwdwR_+}HY9POxezESS zymS55nW1P4L$NB&2Z&uCxglo`MCdujN87D+{ullOPl~F4U?PA1s5{3PB2Isozr5i; z7seJgpA7v~Cg$$#K=1gQ=KtVnR%$V)dgIUfYQNU2KDT4s6J`=>qhkvWvfpo@1 z5V;BH8F}5jKi)6KUszIacC34xDk@{p!{Jx&nOym2?=8)}3v5fsk!T*-koUkAnz)1K z2EOS8@ejNjq6y_fs}$nN?X<&bQR;n7jGZ*0eAR3W`1{;L!ZEXc$&3?Yv{Zh1X|MXl z`!rbq4)vZb5CRPynR#!*cM!iW$9?|wdeXeTQye~6Tki)$%wvbpBznGmA+0XLlh4kQ z)|dS8Eld9M)y5yujx8&!ZO#}zVem;XD4s6fS~;qDx&x<@v%I9{2W@Mz-{r-#R$Y$0 z>1d$Zs=!cI)Yv#6`nRm&vo7J8XC2eJ-#ts8bJw32Q~^+RDAHtXq%eANi}-9K0kB82_&p`u{~G%W;~_Pt(BaJRQRM`sYPRci)MR*PiDBZ*M)1{alz` zH*`R|z0Dg$L#m-Wb&`uL)Y>V3Xf*#=K=${z#)qOsBI*4&c?#?Qz_*<=&(WOT;-Fz%%i?ueDwN2Jhkec%7$dx1lrUQ%85!8Wg_?TlCch_#vm;>KbHmtAj9t6q@7JXfg5r2vEZz`rL3v2DL1iDm3$1iZE!{c=%g1IfBOzL80 zAbimGDer#JQVC(f^{Xu54?!xu97{mab{B|kH0p2RO+Unuw;tmIH95pTi9w0PCsMbk z?sE|2xlz_vivC+}3iP=A8*1RejW6+Q-#Ec}oJjk5&6sI!93TkiyuzC3_2Z41F4Ap8 z1f=BHdVMScozO<=St^)P`z%w|9>@j0MVM(0z!c$USZ?9ioJ_j~wm3sh;LUsD?1_Wj z#JQU7e&7tD+Y-OG`x)x`Uy%uNgqb15C&v9tKhbQDc<*SW&DogQVWJc3*Jh) zZ|dJ~unen79Q3+ye)*)R4_~GI99N2l6?u0nj{8~6{DZH6uD5*U?DCDOfy?G!EMzn< zO4g<2pRfBl^LpKbaU>Dhui2eJc}sU;%Z(@eFOWEj)H`y?)^TNaA4d`o2~Bzp98ir8 zv{hZ={yOa&|E8jU*x}Gqm&{j;g0za=@K=Xj(D5hoDAS-ihj1i+>q5KO>^+n1%X55U z&pkQ%Rj=68`(~aRUrB%JsTtIdgZt~@6;Nr9ap}>HKD$y)t?IAqL#@!+2A^1%K981_ zs9pcc^8vt>g-mVWF>uOZ34b|ApfgIa}tM#H)1Fc{{Il0f@ZrcbsgZ% z*qqx(Th@9OvOR{y=;N85=>3?D-2vJ~CYRI=rsqBniXjYQF#cV2?ZJdhs~woVI=9PW zTzRe5PCbayRT$6l;K{M^e2uNTQph&4y4Kw{_*nyHYNO_L(7F-%=_ifl@}1G>5kXS* zDh|D}lhHyyhg8%j8uUSEZMqT;h3Iv}>1*t9i;o`d29K@S+vioTCV}gquRn@!3?Vp^ zC&xWt3Y?#IY4h-9xp>^(4y65{sX4VDO`pQS!7&HtqH=FXCc4d^62Rt2 zonkC-*Y8B;i!p)!&9GVZH|wghZ?^v%-alr$cir10B6tu_pJUgrvKv$*;0K5Ne=g*h)i6Gv6;_AQY=qomKE zO>46!!-*YHxThaJ3=h#&D*h|q<{z<19(psom*u=tYhXK1 z*F0V0YY_>O#R8h!ICsU+`?!;^^9-ibVc)nvmF#ql%ezrKzk7eevRcB@IiPP3j5f<RixNH2Nvrwtw=&j&mV>pq|L;2=_%XYGd|&Qx=5bp`v5Z*%m( z(Tn(v+d?4z!n}yo0~w8TIWn-jZsz%!#Jz1aAuQ^=_&Kjm)JOyrL)Qb%-p|f?SB@{2 z(KpZ3cW~#KDKDDwp*M|l&prwkPb*V&KGJMR>Y;JXX>H>|qJAU3SQ=|I;zZ$ozEF0; zFl1G$&WWW69lOHNzCv{DA&&nKbMN}C+mhdP)tYPVvkAxMu(PwW(;bua?%k(Pl1?YP zvspPI*O?A!FMGc2991dUj!awJn zK7PL6UscVTm*-i}+9%yoYdv$;tY<#;yZ`D}ms#@_bv51I^HUVh{;YXwY#Uzka>{eG4T!7>g`g z{h=iiN2|WL?wdg-(!Z~behWBTtCv>LqjSjVW2`vZ>vKrVPiI_gHH=yd2GMbI4GU)E*xH4- zNt8~hsdL4qEQmB+R$nj1wDru+C&Rv;Q;YQXT09I(R@5n`zIyr29V;A?y@2{X8VaZ) znWrptIcPVS+&L?LzESx(d+bP&o}qznulP2`;yQ2x*5J>SR3|)}hefF~QCa4rP?=mANGg=;D~{D((2oY=EsqD& zwpjxALYfk&?tqnfq-F(A{j5^wjY3}X;eDQew9u=QQbU!%zKFPEx$Py_{Lmt|y1L*% zaw{bE(kmUhD2IG-fuUV~0$wG!_@fUGfYe9QPn4LnR+eg&(mxF@H|-FCH&` z)@TAW+R;LcO!XGKYA8B@c8~Sr_iBw&`#soFlXlgqF-q3>7sE`mk)Q&f?ZY)z&}rZB zS2ATEv19&bp|T;?HQQ*#T>ioHUj7QoDM=3eE!0;I*lU;^d%_# z0U6LzC>25~GLC*$=;E8qeb8z@0!o7lfTq#gjxc6P;#ebF63NepH0X z;xlA`&r*#|3OYC0E|QQGo^qEx36+t+F_=+&8HcP>;bU$%2sTX9 z5SsIhRT-ZRm`xUfDLs@AgQDBO!FHy|BsQUIenqwGgQ9T^6qH+1u34Q!D&l49`!<=p zg-kvcKBB?aS)&Wp*JQ&ft|a_T@zdQmZ~q* zGb4-!HMv~tDZFvOMru{Sw$x#>$^f)dJkZDLB;TXKyjt(3RX(t_qbBqkr_|Mf8q1&zz0cx#y{;4Ml|k;0cV0_J;Ct+^9qVG$%%gGzJhNok z(v+0Tn!{5@Y!Xl2NQ}){Pvp-uORN=Z;yLxipS+9yG)C7U3kshpQIlv;eMR*XWpd`< z$uVbxstZ6$k2D^LZnnOVV1GO%H(AuWrKdA*O_CaLr_#kiTf3&`lgG3?s`&Ssr=*&4 z=77QoQwgWjK~`m5L~;VM1!z#@YN>R75i5lo#LEQh#Hy=I1*90GmrJlBOqp|}?2~-5 zJQwv_E{`pfDiKEcsjB@&pL+o@C1D>t7oY~C%%reo<&**nh!1q!OGWliMM0)E*SalJ*L)+h&0+$Z~5*0rz-Xv2#Q*W1SG(LRR$E>Pf84iW^3ROTHm z*(K6Pv!$fbotTaO_GBjqZwQ!0f%)v=wArB8W{+{%~i zv`A{EKRH?j*=hvU7*f9)jIKjm&_LxZE6#)da8JcZ8B$fCHcl&>($fW>KIKyuKYt39 zDN(CDS|Fs*ge)m=DFB_DI6;0_uY@BxGTESU(m% z9Qc>>T$qv_Oo42PWX*vxlTOjEn1Qwg?$x;(dWm5p5s$E8H*YUl22e_Ib%J6)!X*XJ zajkl$L_M`9vqVwRMss~D_0f6a#~xR5b4OLw!G9#Gq{c^q7ok9l0Y82kvmVLlryWHF zt;rQrCEsWt^8<=(nFf&<+w*>}3Lagxnx&JvDB6cPP)Nk^mb^x^0#eHO`+b=WVp zlEihMlvlM;mk`9n5}-Hn_IJQME~8 zUf+ltNxIBB$WSwIxLGtznqOmm%hN5s61i&Op{4=1Iq{3D*?jc+5v`7BZ%>eZPcj<7 zC>0-P#~PmV4t{yB06V}si%@N<_x`y*9H-KANbd`4o{8!Im}^$E2(wLYN?Tm z`G9t{gNk#lb-~zcX3XCMY+)_cs6G&Dfv3(3~at*EKykSUFdSjd^4qan(Z^SMyviRUVBWfdE%y76>uNF&uQlO z+!r-0_tm>(K{HmLiBWYQ&oTubaeusGNcCd*6X3BzD(5$@yR_fL-3PyEzc>jeAjB_= zpy=5ZLpcrS;5Y3TmYF<5r$=qIIUBUcZzEp-rbQEZnlncwjw$4x;fi=Ko=`_%c&3iA zhMSZ%4xIA#_fboo!L=_bz^8$?Lly#tKf&zOWx^9i(u}~IA;&6;;#(8<+W!WwDefBY zokM1C7^j>H(oa>bfkeD>`NIqNcuF#^X(5qU1;h5 zeytX#Ys&R}NCT{$qBi{1eibsbhuN6J7Em99b zM5KCw3&9V!eTYg{Gen1FXPX88o430VopvN^ow?6851wy-fUd}?iP`shzm-$w{u4^F z){%I6qIlAxQ}e;^Fn;gx+7o!H|8sE@5@;UT z)(%TK6*@wqjGaT zh<#R`tMavDtPqhv?G?eI@qPflfTPoPQUd~65Ykv$DW@JjTy)@)_-C-HdoW$cKhoDd zswMc@+-zg-DO3~v;Zz(yD*|plmenRt6+P2qV95UR6M z@&8q}=r~G(%i(>X(S{nX$FLp)H}*R7Di_)zZ3Pg}qQ`Xt_LM>p1}6{!Sz9Y82X_{z z&H*;v@CkYqFKJYM7=Kn=x1HJPBk>|vL@A9klSRO$tYW8J&z#5#W*t+Zj}mjN8i79; zcQ$lJL^Oc0=JJ%#%e(-uGnb`Oenn=JvLM^ek*#`3u@W(!*4KUl2Xo*tfT*6+t9OWW zW2h&Fq>)30pQS+|tLsSZtTj!gxU6K+{YLUw3-BAn>d0P(=5NY*$d=Sub?z-#H} z2Kto5O)583X3l{>M^bSHa=p||l~cl^@?a|Tz+)}dS9@=Vm)fsD15XXOhx@pW{;SB| z@I&&q4g@51KLsliS#VhNpe=r=JmDMCz!UJ%4&L8H+^C+BwBa;QVk|d!B$UOUhRu{l z#t4d>6UfXPwlpOXX7Gn2srD&XYa}Eq+eOSuoZ(0eW2l=g+KX%C(0I|VD-VnlwqTtw z{cY!n^VBzuSfEX5qGJ{8HV97vdK&^U!zmew&J;- z>B|F~m{JB4K89kzT(p$uDJh?IutKOQEJc_6qU+{hpD~&uysVqFxL$2{jd_U8Cv}sy zR?RKdLosJ36Q8G=pWm;=RU9be8wd9J@*Z8h291sudFkSmL}Uq8a1K<&lp>7yB2t)T zh8bLQ0SciH{aLcN>?uay#8}Slt9NP3yC5WoN~dj5pmkl-LLOsU)-~Fj_DsTPV=)XN z#yael%Ux)ZhmA_9drid*g_p={R!J87J)@t{f*Vl@(9XzSBK7wnt zmJpIFbp$KtB9KriFcl)F!aYiWQ%vEp(^BCL&#$`P+vneXWz7?RsH82r$gR4Zu|?_t z=cpsvs``|s>JUF-CX)H#r7l#U*JkvnQi%#l6Q4rlSKtEs&Pc>WHw~BiOH&)afDX+o zb{xDT*%t1!fGma;z#gSpuqMF@jZaPt^F%Pd!E}*?WQ@`5Wtms{HY)c)l&T)ieO~hbHo4ZwDNsNfyh8dVs=n3 z*_JT;j(dSAs@f3Cnj9DF8_}cKH*e_i&I*!pH1-3}4k1oSeA|f zvzQo`Ve3$nuPu*3+#7Ua>~|Ft1WzVqV6bK zEn?X@PH6fceETjm=?B6Ro>m*{w$}CLA=sW{X2-XzwCoUNcx!(K&eFFSRsZ(76X*}` zd8_44{JFn}pSTEjexfM2v$)}xYo;>ZS5wj{>!5^06oXJub+hPd#x|Mbl$~^5Yi#!$ z(1*{Zx*w}-bj#}xg}u>|iqy2p78i3I6j?>5Nr*m={ma_cwd?%r+54RZqY!jT*{~IJ z2@NM@i*r-bDeJJ-3*QcZJ*K`Mw?;1 z45?~A@L0>oo+^)kD9dlw|D3!+bs17C)3x&Y?j5=Eid6<5p_lpB2T^hvSrwMqsYma$ z&Z*&sS66(8&Gd1GSm!0&KC?XAcifJG96F_SZ;u_*2oimyiU%-2f-)7WbV{6+0RtUK zCFdONis1)mK3Zk<%?H{J^-MIqV7keT*=ON`oQQiE@T24aUc9J1OwOPUjV}=lAFun< zg|Y<}G`;SALn~*ReC`5|UCVwF7mq&BeoRTQGoKYcKowl^N-68G!ODRKF{Q`4!UxCu zOiso$TUm5gC^`d$A~{R~6#!QfsPTo@HpWcd8WhmZ;o|TG^Xq)0u>X=fGlNIk0tG9ZD*E&{LUF%T2GLaJ%D)!Gc z_I#7)JU+!!2i2y9nOYZ~@pC+JOMxY|m~}Kh%QZfvfNY`b5~*bPmj$X8a4tfCL(!q8 ztTUt~#w$BMTCMbr&F2Xlo~(TsCa3X``kun#23cpf6Y(Yt^cKF_OCWW2Z)zT8M?Pfm z@6LrXnNQJCy)GF|OuTN`bUPNP@34Pci*fAgkS);L8hcPNi^x~Rrt zScckxDUjXskFhZ&7zrSwXF1yT;O3sEEkaf%;%0CAy;EiP8VagslL~;L&EmUX+ zu&6t40nukQoNU?zXQ1sKNK(7g&_vA^9^kR9>#EnvX}-l?jLHr)drC7YS6$}J#i+*E z>Fhq8>bk9Mo;hXPSZRy*OR?QHZJqdWQk_M8%QmEi7f4D-o{&}v(44aVITsy#iNr=7kuO~7$UVMr zfx6Ls*N$5NC{pvA%Yi|~m4H7OJT&ZpuF?l?+r_sJk zo;(ZGG*}`#+BQIH?6yP9x3ycIKp8mG>hPeb-A~x!H;9f?j}8{*Wz`hWi8-Y zi5uW?$XIP@tayq3$ugH*r<7jaDHax&P14DhRAflPPJ^gjl+{PdP1>60%jj1bWc{|E zb7Fqyw6xFTv6A=-8Gwr;rkg_`$>o62;@m!>0H>-a6~5JT?RMuXz8+Ls$xP~c<*~Kl$-?GM4%&yan4H98XrCIl2Q1e9BzXSG(_D8m z{kX9po65?1@=%^vss*4(@c)e}TS=nzj|T5q^@|7!8(Qq>ZLYau^L`tahZ%M;fLje1 z0PqHpbCx7H`w(cr_HIkUBl<<_R{3%a7M82_HGEJyfc{41L9VdXM;v&7%uhiVAD-=a zu)_eT3lFw9Wbs4^9^?=5H9fN$8?5#&gyBQajIGuCJc;r!U$sn}V*DnPq*z6umw$m8Xet+xo)}|_HkUR!ji`a6~i+sUDr(Y`VW6y z`4sK;;4x2F)l*F)KxSN=@T+HAwOb~_Qu-t6socAfmfwc zjLTySU^+RVAMQKVIodbfYt()yHKy0VuV}E=--h6Hl=?|mWd2&9q_4~s@)HOr4aSxZ z9Xg7{H>QjfQWO+@Ej8wcWSp8Watx-Kp`l+Xte)K2?O2sA#ON$K5h)oFP}txy@+fAh zHat3oP4Mm{kJcC&cqQMbHBLDgHn0fU;V*bUPC+-KM;NoI(hv)U!TMJ(KPm?$v(s#V z8n4?yT5?57*~fnHrNlTTVhLZBIg)h-&FS_LkUxop1lN-V>hX`G?JBK<`Q;LGsmdNFn=PW*DaOFQ# zgQaW~g&&NunAv`!jSgsLowjSG4Ns&A2410_(g*=sr>sjWh09}tsyN?q81y1`)z`C$ ztcGry(Mi8dJ4EgY1v#xEF_*j2k$BEtPm$r-wpwy2PC_L#Wsg=C8;TB7*7213Vo*tQ zhSrxlSJ*UFhRGjsx1PdXc1dvy+19kF@@g63KdYB0eb3bzR{}$E+?yV^MgotJwr zJ$TRN&1EzC#9d3P+>H>xS(OM{HGdvq#+d=5!=+3sqk!rvOQ~Lqt5Sh9 zDuZlOA2;VLO?s3HeM7;I@#Rma?+%$Z|MeQUWPnpSI2_>PFJw^8)B~phsT=Wq6)#!K z?u(S(;W?g(pQc@8G}k0BDe}b}%2%)e$`^Rj>JIH>%&|a{BIl^GA2&gTVT?3Id~-h( zq2se5Bt5dPs--eQ;p2N1O_;|wL|?8-UvMb@F{AbYW{R5*1P6j|qC z3=(dyx%nP+^!i2Cy7q;R89HLFuG4W41{lw5O}y4zex)GhxT zvoX(^bL-K?JNLkm)b_9prp$0_0Qjits? zz`R`63$(pP?PZ;j^+;R58ECslt4=~Q9ea494v=9d=$HCUlH3UmbM@H_SsKn!&r0BL zJ7@?6c&4!K&aq~1fBzK zoU2Vi@&>xv;^r?y2esC?TmK0il-tB~YY3!^h!o_y3551~32qIaxdyqQM^Vv{gD`Hl zP@Hqs(~K-*^rAoc2`oiI>S7s~GJ%4;tX{_AxuQ%ptx9EeT{zpFWF=iF6{(KkX`vjk zwf1-LNXcH>>(w9!;QcZfDx}r|rOG&EjzCwW0SOs7u=@GWL+o1OZ+VJ45e{c@AkK0Q?xUTBWbj5XEwVZEIZ|U`F9Z4Vmwm*~!tvuVPTLP=m4E#tTK2r5%rQa%v z7N1P0P_|jcT9OV|ZK~Fid{(`VXVe&cjNV%GtYpP17O_V-2nGG^(Ewsg$GE(KjTgob zWM990*>(RZcwDm@mhiyIMff$ z$_f5e0)N^7t?a#?!CgCU_O~d>v#Y1~2=1T*w|2C5?<)JsDp`lOnzE_Zxe_%MU(E$5 zq&Sj+t_gT^g-2v%xmQR~gy2!dc7)D`1uLtaR2@u8x`0k6fa)@?0AU!SNl&H_35+n- z)YMwxmMhwzJ@DolxyJK2u1&m;(a0Tt_@*&N+Jeh%qddk>I+P8pF~`LV&XPlY`*^1v z^&I)K#X3cO>=R->w7N3%YYaI(T}kjMQbhzxd7e_p#;TC4%foX#@pc*BXd)fEHqA>n zCPqFSVbg(n=AA^$SkBEI|@J?986p{mi(tr*GukC=&A{=+{j&!_0P z^lfG(ie(^QCI%RebWYE0D*n`4fPZyRFAm5Ae`!VQlJr!Z6 zDd>8lo>NWE6<=^H5hJ*ecN=q~3P6dmXycX95!r^ZO)&hk9Z!A!v=_!MLj?(zU7iX5Ry5t6uekQHkAQ}CWwN|zu2*|jcTI8n($uESx*oN6;`gDxgmsJF z=9$DHm!h0fj3-nWVKKuST%J)c3eoF61+PGbaNfeq0zu04Faloa!~ZvZtU4lEq#uF} znP;?eN>p9;dRgY#U(H93Tk}=$bp=^4> zb#*0K-~yRH`j67H#sx{jn@Ff8>dJsD@D*h#Dj1d51+Z7L-S}u}&)dYdwS^Lu&?!ni zb}mmOs;@cR=br-u!>R&~JjWtk$TMl>n!9h7W{*_Ah!&%1SEKm~OoZXyCqw#5u?F&Mm%IKBeniquC+- zB^uwtvH%Of0%Sf$LGv~nee+&P==>VKb}g@QQ{%See-Rc<^A9lzJWe2^wm~w<2U-C1 zz4i;Ar+l-w0LVTvfh>yvhgog0Y{0fYO8-QpB0XqUU@ly238C<&xaxvLQut)>(1E9s z!BuKH*yg;m1$rCO`lgMF)0#}0jD%T@-WPR5GsD4TV39bMdj5j((1l@Z&jIm2bYbL5 z9oIXuigS1rAdQwWpppf%=#ZE52A?+d4S+9?Jx?@Sc^4ry3tG!vTg;pR9dkZ0GE-CB1oS zzSy5I|IJp6(h-gQR{5DxiY=xz4=LAtndd1v&yIkcbM^%XR7QY0y!IBa4a7R>egdd; zXG*O~)0gWNeZVpTPn0jvWjunPB@_I)`p(hk3VJ$A5OOXF7BiX29TMTtjwEM`*%a5?f(upFQ7f|R429;46bIb>XmXkhPGYJTi>X* zBG&oU{U4~b_v+Pdo`x%?9fLO1BGAt1xWK=`56+gOq^Q+p(k>ur|5s@k^xZP7!b%o? z1UI7&*Oh5)napRr+W!4YJ2~jB)?Zocz!P8$s^&T2wqDdjB?V5WQrR;L7sV1tGUh%C zd@rbaM6kDYe8oFE4SSg!^q;3RA4W>Wfq{S`;YcO*zTW_A(>D^@_d+bHR*X?9KKfiu z-ut7h0asp4EjD}J_zkaXpX3RUpUS!E4-PV!M$H)#8iW8<`y_lpF3qI8^sB|g7I|py zx<;Xvsk{R+ehM5@$;JJ>5g-6bDeF*l&{3jO8oDCHpSGWEKV%hmiOSaM@8hj~tR)IJ zLBHqf(HD8^ZQr9u7P6Wa>m9)?5Yc0+1#A{gMTczN*}`r#ZsW@pjgKma8-3UC9U-3R z#sesq0z{`6iiNK2m{QeK)s5iXCf+l$lugLN*b;!m))ME@JRFnA7PEQVdXw%?jgTFo zSxc=$2X+}gRuOCUI>A*yItjk41@$p9BN8{zp1XYeJea74qX%QI{8-gwRms6A3#?2< zkmO}zjfZHPD{XCD+5PsBy0?J@aot+Zj6gLW10r|W!lb5vF7#}xt8u6r|Ir+5_1N>P z(qL&&(_&#L%$imOhmVyi3p|HGvHE^U6`o|fj7c%a-ePj``99bpTYsl?I-u`Sa2tz5 z^E}*BR()xAfI2<|Ot(Pdyl8%^E20_1Aapc%qVR?+Of90Wh)`(<0%Pdb-ZAeyJ**ij(ErN5@6reJ2segb#y>*_(ZK>LSMNF}O zs%OcdX{_~H=7czbsp%R+erZKh2sOEO_|HO304yVN7k~{DvfniH7Y?96*k->itM67PGF@H=qR@5Qa0E2|0x;!m^l*|LArk$!zD zNi_*)Tgb{FYkQu;R19{Mq`iH{CC>m+f+^-L-{xPU|Wj~df_rCT3cq2+H72CC-m zF?}bg0JNyWqRRDOsB95<=86*2lhG^5rqd&vyt;cXX=nxVee@*iJtPPql_sEV2tqHc zW0j_=W9?m<8V>>q{+?BG#Hw6OMJ}d;f?6$g$v#Af{7cZ$$13lk*#1Q@lylA2PH5#c{mz79Vh^4Cr)eMQ4g zR-)#S4eE|qh*d<9XQhR}zg$xZ1a;GS-9-o~i`Y?gT)D`Yn%8i8%C_W>)m2%v*$>8| zbhRma6x5#ZuauWV&gO;SmkR%D>Ft{r2N<+w?;I~ySe(UUk+l&57qyMFYm@qOiX5~f zp%wRCF+&Ra0mXtb=U z-f)Rc-j?jS5J-Kb-9B6N+7=?ViO{&pD1a&DEQ~a&D(|6elKzS85*HE*X)7CwvdU}9 zK0^*I{YcZYbBbvCo=VfNS8KV`oh~`>{jikH^Xt*pg#`U)fBTr6p1UjoijHU|KAn-zT)PG2GGAI0WFudTbU|cbA5ndv zb}@_HkAl~q^IQLZefmuizYXi?n|}xTtq_uStPtfw`ePlc`9ON5OCZ*@35}5pdjQwD zyIWU~EYh8FJ?j+tMX#C455n#L;RBFPrM}@3T@Um0! zCX&>BcmSvN5ot@*!qr_5B}SR2Xg8ETzH9IRtDAJZz*S`+RP230^~NDAOPy3ooC@E} z=|=v7m`PNsy{Yqa2O4D}jYvE!tU!rr)`ZD+lg|Q1Qq?O{PIF7Oy+j_9+RLwQqx7P% zfgoQ=i_Jg+k||N$kui))R;`@xsNV6HXj01@G{xI>j^fz{QeyP7OT$9lG(dDnnc?!K zNK{g`CR1Kz2z{l}#|TlAVFPzap`nTd*Ap4loOKw$sKB=%yLHSff8U<%XLJ`$gdAih z=IT!>6a$fD&?UaLo}z;&26d8@5kOLo&q!>s9dpbm52^Kqnve3kDaW~sc}gmv?Jj{qz;ATNDt5iWt5e>AUPwLll1^~om

      I$)*)!^E^!z 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

      xgXq5?icr) z`@{X^{_#opq|8}m*0rhGHLIp2bhZ{fG{+xYGL4t^)Ui{H)f;rH_U`2G9={vdydKg=KD zkMhU(zA(@a|NFk&YQVFSrG(uV-oseG0AY>FW37Lf~LRKN0kX^_j

      rVxrIDJ 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

      Y-hF$+m-Fcc4vFAJ=tDt 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 zzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZ zuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9 ztN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXj zD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x> zivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+} z;=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g z_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V z{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro z|0@2g_^;x>ivKG9tN5?tzl#4V{;T+};=hXjD*mhZuj0Ro|0@2g_^;x>ivKG9tN5?t zzl#4V{;T+};=hXjD*mhZuj0Ro{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbke zui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G= zYxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe z8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u= zhW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ z;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l z_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B z{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj z{~G>l_^;u=hW{G=Yxu9>zlQ%B{%iQJ;lGCe8vbkeui?Lj{~G>l_^;u=hW{G=Yxu9> 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 zKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5F zKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5F zKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5FKk`5EKk+~L{!jc*zW)>dlkfk;|K$5W z@jvT^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u z#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u#{b6u&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H; z&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;&i~H;!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk z!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk!T-Vk$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg! z$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!$^Xg!#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s#s9_s z#s9_s#s9_s#s9_s#s9_s&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+&Hv5+ z&Hv5+&Hv5+!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto!~eto z^M97^9Y=B`i=v=7>+!$4=-<7x(pv9-hzyg6D;*$9Fa!zIm zxAlMie_Q|O|F`vj{(oEl=l{3$fBt`4|L6a=^?&|<=Z^G${(oEl=l{3$fBt`4|L6a= z^?&|zcfB*jTouU7||NmZ4+rRh!-wRv&_x}HTfocEV z|9>y^?BDzU?**6rd;kBv@UegI|GyU?_V4|F;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q z;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y|Q;(y}*_lN)eJ@}vapZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5n zpZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5npZK5opZTBppZ)&N z{Lg;>XZ~lu|1{|L6a=^?&|L@z|KHaC`TuSG zpa0+1|M~xI{h$Be*8lncZT+AB-`4;6|D7w>|M~xI{h$Be*8lncZT+AB-`4;6|84!B z|KHaC`TuSGpa0*Pbp4AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8>AU zf8>AUf8>AUf8>AUf8>AUf8>AUf8>AUf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Qf8u}Q zf8u}Qf8u}Qf8u}Qf8u}Qf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MYf98MY zf98MYf98MY|Mw8@fB*ga&-ZWGfA9ak2Ws~3{onUs%l^Ip`yMdazxRLNgC6_${_lI> zV*lR%eGfkD-}}Gs0fhZ~|5x~5_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6 z_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6 z_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6_+R*6`2YRk{r(>KU-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16 zU-)16U-)16U-)16U-)16U-)16U-)16U-)16U-)16U-@78U-@7C{;&M6e*ahgSHJ%& z|Eu5smH*Z6|H}XB_kZPo_4~i_zw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EG zzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EGzw*EFzwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Gzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KIzw^KI zzw^KIzw^KIzw^KIzw>|afAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|sfAD|s zfAD|sfAD|ufAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9w zfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9wfAW9v zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3u zfAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3ufAN3wfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAjzF|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36v|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx 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 zEB`D1EB`D1EB_n+8~+>so8SM9|IP3J#{cH`f8&4i`@iwO`TgJc-~9e>{BM5$H~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&Ncm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?ASPySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE- zPySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-PySE-Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7 zFa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Fa9t7Z~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoZ~kxo zZ~kxoZ~kxoZ~kxoZ~kxoZ~kxoAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0WyAO0Wy zAO0WyAO0WyAO0WyU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbI zU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;bbIU;f|!vvj9O66IJF z1!1p8vjjEnrAV>be}Btx^zEX9(%b^*CI2t~FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9 zFaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9 zFaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9 zFaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIz9FaIC^AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c! zAO9c!AO9c!AO9c!AO9c!AO9c!AO9c!AO9c!-_QT={LkP0v+w(N|L^<$-T(W(fA{~s z@8A8u@B4TE@B9AU|NFjw_y4}{-~GSu`*;8E`~Kbk`@Vno|Gw|v{lD+~cmMDE{@wrk zzJK@szOzI6KmWh2|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Zz?{r2q5(+xkEM zzpelC|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_GfVnE|G%yO^Z(oWKmWh2|MUOb`al1_ zt^f1?+xkEMzpelC|2yxb|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh8 zQu;stzpelC|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?J7=Z;^Z(oWKmWh2|MUOb z`al1_t^f1?+xkEMzpelC|J(XM|GzU@`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oW zKmWh2|MUMl-=+Wa|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzq4WbKmWh2 z|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Zz?nrvLN*+xkEMzpelC|J(XM|G%yO z^Z(oWKmWh2|MUOb`al1_Gimxi|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzpelC z|2xm7|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh8aQZ+0zpelC|J(XM z|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?J4dJg^Z(oWKmWh2|MUOb`al1_t^f1?+xkEM zzpelC|J(XM|GzVM`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh2&;P*x!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi z!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2iJi!2ihq$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy z$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Uy$p6Iu#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q#Q((q z#Q((q#Q((q#Q((q#Q((q#Q((q#Q)6y%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^)%>T^) z%>T^)%>T^)%>T^)%>Tmw!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm!vDhm z!vDhm!vD(u%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$ z%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kys$%Kz^n z-v9pl_n+_IkpJHQeGk;^-}}Gs!Iu4d|Mxv$vVZUYz6U+_@BQERz{UQ(|N9<%*uVFG z-vbEy_x`W(zwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8E zzwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezwy8Ezw!V3!~6X`@W1iD z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSxG^S|@I`~Bbf-~ImY{O^AMcm8+3|2zM?-~XNe z-S7X-|L*sH=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva=YQva z=YQva=YQva=YQva=YQva=YQw_;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N;Q!$N z;Q!$N;Q!$N;Q!$NzxzMm z_wWAC_x-#7^L_vB|9s!S`#<0J@BYvC{k#A3egE$NeBZzOKi~K7{?B)IK>z3exAlMi ze_Q|O|F`vj{(oEl=l{3$fBt`4|L6a=^?&|<=MMCL{(oEl=l{3$fBt`4|L6a=^?&|< zTmR?(xAlMie_Q|O|956V|L6a=^?&|7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7 z_}}>7_}}>7_}}>7_}}>7_}}>7_}}>7_}}>dJ;eXtfB*jT{TuM#`~UBOy8V0q|2^2Y zfA9al2h8^G{r~r%*Z#f#{~oy7zxV&&gHQYS{{MRbY5(5;cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& ze}DMDzeoOe{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U& z{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U& z{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U& z{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U& z{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)U&{&)Tl z{tx~S{tv(Z2mgoP|AYU-@BhL7;rIXG|M2^N@PGLIKlnfV{vZ4w{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u z{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{2%-u{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v z{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{Ga@v{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE z{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{9pWE{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF z{NMcF{NMcF{NMcF{NMcF{NMcF{NMcF{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z{6G9Z z{6G9Z{6G9Z{6G9Z{6G9Z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa{J;Fa z{J;Fa{J;Fa{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^ z{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{D1s^{Qo~oca9@jjzv*W?DcRa zMUHzZrL@|Ae}tR#aiyb$!GV0t$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw z$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N$Iw$N%^9|2zNtyZ`;ZfA|02_wWAy z`~Kbkf8W3R|L^;E|Nnje?*G5<-~Iph{k#AFzJK@s-}mqS|NH*k|9{`V`~UCzcmMx= z|L*_4@8A9ZcXp`%^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G#rb{h$Be z*8lncZT+AB-`4;6|84!B|KHaC`TuSGpa0+1|M~x&S?d4%|F-_m|8ML6{QtK8&;M`h z|NQ^9{?Gq!>;L@!w*Jrm@4Qq0=l{3$fBt`4|L6a=^?&|;L@!w*JrmZ|nd3 z|F-_m|8ML6{Qu5(^?&|;L@!w*JrmZ|nd3|F-_m|8ML6{QtK8&;M`h|NQ^9 z{?GsKJX`;L@!w*JrmZ|n0v@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB z@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@IUZB@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF z@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@;~xF@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD z@jvlD@jvlD@jvlD@jvlD@jvlD@jvlD^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H^FQ-H z^FQ-H^FQ-H^FQ-H^FQ;y@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC@W1fC z@W1fC@W1fC^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G^1t%G z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE z@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE@xSrE^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I z^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@I^S|@|dx+;L@!w*JrmZ|nd3|F-_m|8ML6{QtK8&;ReNME~dixAlMie_Q|O z|F`vj{(oEl=l{3$fBt`4|L6a=^?&|<=Pdd^|G%yO^Z(oWKmWh2|MUOb`al1_t^f1? z+xkEMzpelC|2w16|M~xI{h$Be*8lncZT+AB-`4;6|84!B|KHaC`TuSGpa0+aj{eX8 zZ|nd3|F-_m|8ML6{QtK8&;M`h|NQ^9{?Gq!>;L@!&W7}V{(oEl=l{3$fBt`4|L6a= z^?&|;L@!w*JrmZ|nd3|F-_m|L-hJ|L6a=^?&|2z z`TuSGpa0+1|M~xI{h$Be*8lncZT+AB-`4;6|80H#2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C2mS~C z2mS~C2mS~C2mS~C2mS~C2mS~C2mS~CNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3tNB&3t zNB&3tNB&3tNB&3tNB&3tC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh?C;lh? zC;lh?C;lh?XZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY zXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mYXZ~mY z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi z7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLi7ycLiSN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2 zSN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2SN>Q2H~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&N zH~u&NH~u&NH~u&NH~u&NH~u&NH~u&NH~u&Ncm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+&cm8+& zcm8+&cm8+&cm8+&cm8+&cm8+&5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS5B?AS z5B?AS5B?AS5B?ASe-H8f@4tWl`TiU1-}`^x19kTA{lD+QHv9Mf-}iu-{d@oKd(g}N zz5n+;aAp7A|N9<%vVZUYeGeenzxV$p|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^ z|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n+^|0n;y zKYYKxNBp1spZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZs6^U;JPEUw;2D{x84( z7yp;v|BL_2@BhXB<@f*M|ML5P@qhXKzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluUzxluU zzxluUzxluUzxluUzxluUzxluUzxluUzxluUfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+fB1j+ zfB1j+fB1j+fB1j+fB1j+fB1j+fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp;fBAp; zfBAp;fBAp;fBAp;|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|NhU?o#RN7BTy6+=RDj=k?UPrX|3-+ zjtrBCFFh>{QBJV<|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s- z|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|M>s-|9<{|*Z=z(>P|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEM zzpelC|GQSI|MUOb`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh$tolFyzpelC z|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?yGE=3^Z(oWKmWh2|MUOb`al1_t^f1? z+xkEMzpelC|J(XM|G(?I`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh2|MUO5 zHmv{i|J(XM|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzw65SKmWh2|MUOb`al1_ zt^f1?+xkEMzpelC|J(XM|G%yO^Z&aht^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh2 z|MUOb`al1_>)HB0|G%yO^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzpelC|GO5h|MUOb z`al1_t^f1?+xkEMzpelC|J(XM|G%yO^Z(oWKmWh$==wkZzpelC|J(XM|G%yO^Z(oW zKmWh2|MUOb`al1_t^f1?y9TfS^Z(oWKmWh2|MUOb`al1_t^f1?+xkEMzpelC|J(Zf z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O z5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}O5Bv}OkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7P zkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PkNl7PPyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2( zPyA2(PyA2(PyA2(PyA2(PyA2(PyA2(PyA2(&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B)&-~B) z&-~B)&-~B)&-~B)&-~B)&-~B)FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3FZ?h3 zFZ?h3FZ?h3FZ?h3ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4ul%q4 zul%q4Z~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk zZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~SlkZ~Slk@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul z@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHul@BHulAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(Ku zAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KuAN(KupZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv zpZuTvpZuTvpZuTvpZuTvpZuTvpZuTv{~qG~-+%x9^Zhr}zxRK?2Wsu#`@i3Vt@iKz z-|qoa`}h9u_n@c!d;j-);L`rR|NA}oX#d{-{T@KHfA9Y;{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7 z{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAM7{xAN2e|Ud?5Bb0N zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoS zzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoSzxcoT zzxluUzy1E-{NH~6Z~kw;|2O})-~XHc+wcF)|Lynx=KuElfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy zfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFyfAfFy|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t z|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|M36t|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx z|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx|MLIx 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 diff --git a/core b/core index e521afd72..8b9207920 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit e521afd722c46689007e62fdb5e370991f249823 +Subproject commit 8b92079209028d81be2f837f9fcf9649e292189c From 9de21e461c51d394fa456c06b7793e78944879ca Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 7 Jul 2023 15:22:47 +0100 Subject: [PATCH 1658/1725] Moved apploader from BangleApps to make it common to AppLoaderCore --- bin/apploader.js | 262 ----------------------------------------------- core | 2 +- 2 files changed, 1 insertion(+), 263 deletions(-) delete mode 100755 bin/apploader.js diff --git a/bin/apploader.js b/bin/apploader.js deleted file mode 100755 index 84e7d2474..000000000 --- a/bin/apploader.js +++ /dev/null @@ -1,262 +0,0 @@ -#!/usr/bin/env node -/* Simple Command-line app loader for Node.js -=============================================== - -NOTE: This needs the '@abandonware/noble' library to be installed. -However we don't want this in package.json (at least -as a normal dependency) because we want `sanitycheck.js` -to be able to run *quickly* in travis for every commit, -and we don't want NPM pulling in (and compiling native modules) -for Noble. - -*/ - -var SETTINGS = { - pretokenise : true -}; -var noble; -["@abandonware/noble", "noble"].forEach(module => { - if (!noble) try { - noble = require(module); - } catch(e) { - if (e.code !== 'MODULE_NOT_FOUND') { - throw e; - } - } -}); -if (!noble) { - console.log("You need to:") - console.log(" npm install @abandonware/noble") - console.log("or:") - console.log(" npm install noble") - process.exit(1); -} -function ERROR(msg) { - console.error(msg); - process.exit(1); -} - -var deviceId = "BANGLEJS2"; - -var apploader = require("../core/lib/apploader.js"); -var args = process.argv; - -var bangleParam = args.findIndex(arg => /-b\d/.test(arg)); -if (bangleParam!==-1) { - deviceId = "BANGLEJS"+args.splice(bangleParam, 1)[0][2]; -} -apploader.init({ - DEVICEID : deviceId -}); -if (args.length==3 && args[2]=="list") cmdListApps(); -else if (args.length==3 && args[2]=="devices") cmdListDevices(); -else if (args.length==4 && args[2]=="install") cmdInstallApp(args[3]); -else if (args.length==5 && args[2]=="install") cmdInstallApp(args[3], args[4]); -else { - console.log(`apploader.js -------------- - -USAGE: - -apploader.js list - - list available apps -apploader.js devices - - list available device addresses -apploader.js install [-b1] appname [de:vi:ce:ad:dr:es] - -NOTE: By default this App Loader expects the device it uploads to -(deviceId) to be BANGLEJS2, pass '-b1' for it to work with Bangle.js 1 -`); -process.exit(0); -} - -function cmdListApps() { - console.log(apploader.apps.map(a=>a.id).join("\n")); -} -function cmdListDevices() { - var foundDevices = []; - noble.on('discover', function(dev) { - if (!dev.advertisement) return; - if (!dev.advertisement.localName) return; - var a = dev.address.toString(); - if (foundDevices.indexOf(a)>=0) return; - foundDevices.push(a); - console.log(a,dev.advertisement.localName); - }); - noble.startScanning([], true); - setTimeout(function() { - console.log("Stopping scan"); - noble.stopScanning(); - setTimeout(function() { - process.exit(0); - }, 500); - }, 4000); -} - -function cmdInstallApp(appId, deviceAddress) { - var app = apploader.apps.find(a=>a.id==appId); - if (!app) ERROR(`App ${JSON.stringify(appId)} not found`); - if (app.custom) ERROR(`App ${JSON.stringify(appId)} requires HTML customisation`); - return apploader.getAppFilesString(app).then(command => { - bangleSend(command, deviceAddress).then(() => process.exit(0)); - }); -} - -function bangleSend(command, deviceAddress) { - var log = function() { - var args = [].slice.call(arguments); - console.log("UART: "+args.join(" ")); - } - //console.log("Sending",JSON.stringify(command)); - - var RESET = true; - var DEVICEADDRESS = ""; - if (deviceAddress!==undefined) - DEVICEADDRESS = deviceAddress; - - var complete = false; - var foundDevices = []; - var flowControlPaused = false; - var btDevice; - var txCharacteristic; - var rxCharacteristic; - - return new Promise((resolve,reject) => { - function foundDevice(dev) { - if (btDevice!==undefined) return; - log("Connecting to "+dev.address); - noble.stopScanning(); - connect(dev, function() { - // Connected! - function writeCode() { - log("Writing code..."); - write(command, function() { - complete = true; - btDevice.disconnect(); - }); - } - if (RESET) { - setTimeout(function() { - log("Resetting..."); - write("\x03\x10reset()\n", function() { - setTimeout(writeCode, 1000); - }); - }, 500); - } else - setTimeout(writeCode, 1000); - }); - } - - function connect(dev, callback) { - btDevice = dev; - log("BT> Connecting"); - btDevice.on('disconnect', function() { - log("Disconnected"); - setTimeout(function() { - if (complete) resolve(); - else reject("Disconnected but not complete"); - }, 500); - }); - btDevice.connect(function (error) { - if (error) { - log("BT> ERROR Connecting",error); - btDevice = undefined; - return; - } - log("BT> Connected"); - btDevice.discoverAllServicesAndCharacteristics(function(error, services, characteristics) { - function findByUUID(list, uuid) { - for (var i=0;i ERROR getting services/characteristics"); - log("Service "+btUARTService); - log("TX "+txCharacteristic); - log("RX "+rxCharacteristic); - btDevice.disconnect(); - txCharacteristic = undefined; - rxCharacteristic = undefined; - btDevice = undefined; - return openCallback(); - } - - rxCharacteristic.on('data', function (data) { - var s = ""; - for (var i=0;i=10) { - log("Writing "+amt+"/"+total); - progress=0; - } - //log("Writing ",JSON.stringify(d)); - amt += d.length; - for (var i = 0; i < buf.length; i++) - buf.writeUInt8(d.charCodeAt(i), i); - txCharacteristic.write(buf, false, writeAgain); - } - writeAgain(); - } - - function disconnect() { - btDevice.disconnect(); - } - - log("Discovering..."); - noble.on('discover', function(dev) { - if (!dev.advertisement) return; - if (!dev.advertisement.localName) return; - var a = dev.address.toString(); - if (foundDevices.indexOf(a)>=0) return; - foundDevices.push(a); - log("Found device: ",a,dev.advertisement.localName); - if (a == DEVICEADDRESS) - return foundDevice(dev); - else if (DEVICEADDRESS=="" && dev.advertisement.localName.indexOf("Bangle.js")==0) { - return foundDevice(dev); - } - }); - noble.startScanning([], true); - }); -} diff --git a/core b/core index 8b9207920..a45f06d2f 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit 8b92079209028d81be2f837f9fcf9649e292189c +Subproject commit a45f06d2f51b387100372d69b237ef58be02a9b5 From bb7450d96c680850942f1eab4a8a45657a33e948 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 7 Jul 2023 15:43:44 +0100 Subject: [PATCH 1659/1725] Translate JS inside templated strings now --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index a45f06d2f..e90c74675 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit a45f06d2f51b387100372d69b237ef58be02a9b5 +Subproject commit e90c746751f7ca2036d414713c35eb90e3b866c9 From 585cbe7ec4003c047a4fdc58b26d195146cd9048 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 7 Jul 2023 16:23:35 +0100 Subject: [PATCH 1660/1725] Handle translation of app names as well as internal text --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index e90c74675..39c007cb2 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit e90c746751f7ca2036d414713c35eb90e3b866c9 +Subproject commit 39c007cb2a41785eff33fdde3e6a315c53d102ea From edfb9000e8624623106f24f49d2ac16aeeaa19db Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 7 Jul 2023 16:48:42 +0100 Subject: [PATCH 1661/1725] Ensure apps are always uploaded localized --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index 39c007cb2..92769acd6 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit 39c007cb2a41785eff33fdde3e6a315c53d102ea +Subproject commit 92769acd60bc31548ff7c635128d4e7ef02b7325 From 597703cda9b4f27188e3d2fef3414a9bc877153c Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 19:51:40 +0300 Subject: [PATCH 1662/1725] Add manual download from settings --- apps/flashcards/README.md | 3 + apps/flashcards/app-icon.js | 1 + apps/flashcards/app.js | 158 +++++++++++++++++++++++++++++++++ apps/flashcards/app.png | Bin 0 -> 640 bytes apps/flashcards/metadata.json | 21 +++++ apps/flashcards/screenshot.png | Bin 0 -> 10699 bytes apps/flashcards/settings.js | 56 ++++++++++++ 7 files changed, 239 insertions(+) create mode 100644 apps/flashcards/README.md create mode 100644 apps/flashcards/app-icon.js create mode 100644 apps/flashcards/app.js create mode 100644 apps/flashcards/app.png create mode 100644 apps/flashcards/metadata.json create mode 100644 apps/flashcards/screenshot.png create mode 100644 apps/flashcards/settings.js diff --git a/apps/flashcards/README.md b/apps/flashcards/README.md new file mode 100644 index 000000000..948ee7a0e --- /dev/null +++ b/apps/flashcards/README.md @@ -0,0 +1,3 @@ +A simple flash cards application based on Trello public board. + + diff --git a/apps/flashcards/app-icon.js b/apps/flashcards/app-icon.js new file mode 100644 index 000000000..72371cac4 --- /dev/null +++ b/apps/flashcards/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwhC/AH0iABQWKgQXLkAXhCxZIKFxgwKC68zABwWGgYXPmAX/C/4X/C/4X/C9ndACQX/C6dEAAQXS6gXDpovpR/4X/C8ENCyPQC4YA/AGo")) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js new file mode 100644 index 000000000..7c689a6a8 --- /dev/null +++ b/apps/flashcards/app.js @@ -0,0 +1,158 @@ +/** + * Copyright 2023 SHOGEL + * We believe in Finnish + */ +var Layout = require("Layout"); +var locale = require("locale"); +var storage = require("Storage"); + +// Constants +let SWAP_SIDE_BUZZ_MILLISECONDS = 50; +let CARD_DATA_FILE = "flashcards.data.json"; +let CARD_EMPTY = "empty card"; +let CARD_LINE_LENGTH = 9; +let CARD_LINE_FONT = "20%"; + +// Global variables +let cards = []; + +let cardIndex = 0; +let backSide = false; +let lastDragX = 0; +let lastDragY = 0; + +// Cards data +function wordWrap(str, maxLength) { + if (maxLength == undefined) { + maxLength = CARD_LINE_LENGTH; + } + let res = ''; + while (str.length > maxLength) { + let found = false; + // Inserts new line at first whitespace of the line + for (i = maxLength - 1; i >= 0; i--) { + if (str.charAt(i)==' ') { + res = res + [str.slice(0, i), "\n"].join(''); + str = str.slice(i + 1); + found = true; + break; + } + } + // Inserts new line at MAX_LENGTH position, the word is too long to wrap + if (!found) { + res += [str.slice(0, maxLength), "\n"].join(''); + str = str.slice(maxLength); + } + } + return res + str; +} + +function loadLocalCards() { + if (storage.read(CARD_DATA_FILE)) + { + refreshCards(storage.readJSON(CARD_DATA_FILE, 1) || {},false); + } +} + +function refreshCards(cardsJSON,showMsg) +{ + cardIndex = 0; + backSide = false; + cards = []; + + if (cardsJSON && cardsJSON.length) { + cardsJSON.forEach(card => { + cards.push([ wordWrap(card.name), wordWrap(card.desc) ]); + }); + } + + if (!cards.length) { + cards.push([ wordWrap(CARD_EMPTY), wordWrap(CARD_EMPTY) ]); + drawMessage("e: cards not found"); + } else if (showMsg) { + drawMessage("i: cards refreshed"); + } +} + +// Drawing a card +let drawTimeout; +let queueDraw = function() { + let timeout = 60000; + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(function() { + drawTimeout = undefined; + draw(); + }, timeout - (Date.now() % timeout)); +}; + +var cardLayout = new Layout( { + type:"v", c: [ + {type:"txt", font:"6x8:3", label:"", id:"widgets", fillx:1 }, + {type:"txt", font:CARD_LINE_FONT, label:"ABCDEFGHIJ KLMNOPQRST UVWXYZ", filly:1, id:"card" }, + {type:"txt", font:"6x8:2", label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg } + ] +}, {lazy:true}); + +function drawCard() { + cardLayout.card.label = cards[cardIndex][backSide ? 1 : 0]; + cardLayout.clock.label = locale.time(new Date(),1); + cardLayout.render(); +} + +function drawMessage(msg) { + cardLayout.card.label = wordWrap(msg); + cardLayout.render(); + console.log(msg); +} + +function draw() { + drawCard(); + Bangle.drawWidgets(); + queueDraw(); +} + +// Handle a touch: swap card side +function handleTouch(zone, event) { + backSide = !backSide; + drawCard(); + Bangle.buzz(SWAP_SIDE_BUZZ_MILLISECONDS); +} + +// Handle a drag event: cycle cards +function handleDrag(event) { + let first_x = event.xy[0]; + let last_x = event.xy[event.xy.length - 2]; + let xdiff = last_x - first_x; + /* + let first_y = event.xy[1]; + let last_y = event.xy[event.xy.length - 1]; + let ydiff = last_y - first_y; + */ + if(xdiff > 0) { + cardIndex = (cardIndex + 1) % cards.length; + } + else if(--cardIndex < 0) { + cardIndex = cards.length - 1; + } + drawCard(); +} + + +// initialize +loadLocalCards(); +cardLayout.update(); +Bangle.loadWidgets(); +Bangle.on("touch", handleTouch); +Bangle.on("stroke", handleDrag); + +// On start: display the first card +g.clear(); +draw(); + +// cleanup +Bangle.setUI({mode:"clock", remove:function() { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + Bangle.removeListener("touch", handleTouch); + Bangle.removeListener("stroke", handleDrag); +}}); diff --git a/apps/flashcards/app.png b/apps/flashcards/app.png new file mode 100644 index 0000000000000000000000000000000000000000..e16b8a263e41685980201e0664cf9cca244dd540 GIT binary patch literal 640 zcmV-`0)PF9P)1RCt{2lub|KKp4m8#AnkFu*UU_-vGFBZ53ZJTDG+u_MpLR zG$?BnToDyEuDh76fC>!@23$2BHX-fpZTL^GX_(r_$OwO=6H`6$^QKK1~S0)bQsmgQ>*%XQ$AC2|BN zw`K5e%es9y_-g4+AzY}FAu#&w2*h9KAg0e@bo03T1Oj^%2p(K2eELy&wHJ>~SgtGK zxfB5-G__l7gjbo`DH?KKkl6xb@naCv7a9REeFAmZh`Um2?P(cqod^l#^ZVA9e<(#k>ZVlKT)txU}Pf)!q2}ggnt0{ z;;VHjUu#^SOZl2|_1YpZ^S#`1c$J0RzeaeKIqAxJfr+g`+u`S52*3J>-gz)oU}WP6 zX4@DY%xCEezW%vwDiF~*4{e184gtv^D!|bl0Afc-awGWCk6@wiW$-h}L$JW&$L8Tx z76%9xkUaW3a7gkFfCV5bz|kE5Izq2i_aEXJbZU1=P2o{zYJf5T0000x literal 0 HcmV?d00001 diff --git a/apps/flashcards/metadata.json b/apps/flashcards/metadata.json new file mode 100644 index 000000000..bdba0b9b0 --- /dev/null +++ b/apps/flashcards/metadata.json @@ -0,0 +1,21 @@ +{ + "id": "flashcards", + "name": "Flash Cards", + "shortName": "Flash Cards", + "version": "1.1", + "description": "Flash cards based on public Trello board", + "screenshots" : [ { "url":"screenshot.png" }], + "icon": "app.png", + "tags": "flash cards", + "type": "clock", + "supports": ["BANGLEJS2"], + "storage": [ + {"name":"flashcards.app.js","url":"app.js"}, + {"name":"flashcards.settings.js","url":"settings.js"}, + {"name":"flashcards.img","url":"app-icon.js","evaluate":true} + ], + "data": [ + {"name":"flashcards.data.json"}, + {"name":"flashcards.settings.json"} + ] +} diff --git a/apps/flashcards/screenshot.png b/apps/flashcards/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..f9c5bcb6390187d7a6d117ef671186b7669cda8c GIT binary patch literal 10699 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 back(), + "Get from Trello": () => { + E.showPrompt("Download cards?").then((v) => { + let delay = 500; + if (v) { + if (Bangle.http) + { + if (settings.listId.length) + { + delay = delay + trelloTimeout; + E.showMessage('i: downloading'); + Bangle.http(trelloURL.replace("$cardsListId", settings.listId), + { + timeout : trelloTimeout, + method: "GET", + headers: { "Content-Type": "application/json" } + }).then(data=>{ + var cardsJSON = JSON.parse(data.resp); + storage.write(dataFile, JSON.stringify(result)); + E.showMessage('i: downloaded'); + }) + .catch((e) => { + E.showMessage("e: " + e); + }); + } else { + E.showMessage("e: list Id not found"); + } + } else { + E.showMessage("e: Gadgetbridge not found"); + } + } + setTimeout(() => E.showMenu(settingsMenu), delay); + }); + } + } + // Show the menu + E.showMenu(settingsMenu); +})(load) \ No newline at end of file From 5be8ef57f9e3f2e70419b2e4f6c6c9d8aa9ae64a Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 20:28:59 +0300 Subject: [PATCH 1663/1725] Add default flash cards --- apps/flashcards/flashcards.data.json | 1 + apps/flashcards/flashcards.settings.json | 1 + apps/flashcards/settings.js | 5 +++++ 3 files changed, 7 insertions(+) create mode 100644 apps/flashcards/flashcards.data.json create mode 100644 apps/flashcards/flashcards.settings.json diff --git a/apps/flashcards/flashcards.data.json b/apps/flashcards/flashcards.data.json new file mode 100644 index 000000000..2bda9fd54 --- /dev/null +++ b/apps/flashcards/flashcards.data.json @@ -0,0 +1 @@ +[{"id":"634fb1548fcbf401dcb49cf4","name":"monikeitin","desc":"multicooker"},{"id":"634fb18855a957017a5d03f7","name":"lihamylly","desc":"meat grinder"},{"id":"634fb2b50f1f1101890aa7f7","name":"uuni","desc":"oven"},{"id":"633988016d09b300c3770b6d","name":"riittää","desc":"is enough"},{"id":"634fb26ea0aef000ec78e481","name":"kahvinkeitin","desc":"coffee maker"},{"id":"634fb1f8e1378600b51bb317","name":"mehulinko","desc":"juicer"},{"id":"634fb307df637101f7f36b2d","name":"palovaroitin","desc":"smoke \nsensor"},{"id":"634fb29699f51701d79a2cbb","name":"tiskikone","desc":"dishwashing \nmachine"},{"id":"634fb2bbe01e1c0446179a40","name":"liesi","desc":"kitchen\nstove"},{"id":"63419634ce475100b444d577","name":"kohtalainen","desc":"moderate"}] diff --git a/apps/flashcards/flashcards.settings.json b/apps/flashcards/flashcards.settings.json new file mode 100644 index 000000000..3b85f6bc4 --- /dev/null +++ b/apps/flashcards/flashcards.settings.json @@ -0,0 +1 @@ +{"listId":""} diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index de66488cc..74339ef07 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -17,6 +17,11 @@ var settingsMenu = { "" : { "title" : "Flash Cards" }, "< Back" : () => back(), + "List ID": { + value: settings.listId, + onchange: v=> { settings.listId=v; writeSettings();} + } + , "Get from Trello": () => { E.showPrompt("Download cards?").then((v) => { let delay = 500; From 6a3c6c9a83649271493f995e663c6c13be0f7f98 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 20:43:16 +0300 Subject: [PATCH 1664/1725] Fix error when missing data file --- apps/flashcards/app.js | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index 7c689a6a8..29497119b 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -2,9 +2,6 @@ * Copyright 2023 SHOGEL * We believe in Finnish */ -var Layout = require("Layout"); -var locale = require("locale"); -var storage = require("Storage"); // Constants let SWAP_SIDE_BUZZ_MILLISECONDS = 50; @@ -13,13 +10,15 @@ let CARD_EMPTY = "empty card"; let CARD_LINE_LENGTH = 9; let CARD_LINE_FONT = "20%"; -// Global variables -let cards = []; +// Modules +var Layout = require("Layout"); +var locale = require("locale"); +var storage = require("Storage"); -let cardIndex = 0; -let backSide = false; -let lastDragX = 0; -let lastDragY = 0; +// Global variables +var cards = []; +var cardIndex = 0; +var backSide = false; // Cards data function wordWrap(str, maxLength) { @@ -48,10 +47,12 @@ function wordWrap(str, maxLength) { } function loadLocalCards() { + var cardsJSON = ""; if (storage.read(CARD_DATA_FILE)) { - refreshCards(storage.readJSON(CARD_DATA_FILE, 1) || {},false); + cardsJSON = storage.readJSON(CARD_DATA_FILE, 1) || {}; } + refreshCards(cardsJSON,false); } function refreshCards(cardsJSON,showMsg) @@ -88,7 +89,7 @@ let queueDraw = function() { var cardLayout = new Layout( { type:"v", c: [ {type:"txt", font:"6x8:3", label:"", id:"widgets", fillx:1 }, - {type:"txt", font:CARD_LINE_FONT, label:"ABCDEFGHIJ KLMNOPQRST UVWXYZ", filly:1, id:"card" }, + {type:"txt", font:CARD_LINE_FONT, label:"ABCDEFGHIJ KLMNOPQRST UVWXYZ���", filly:1, id:"card" }, {type:"txt", font:"6x8:2", label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg } ] }, {lazy:true}); From 18686d5ff555d72d66758c05c3a8ac6eb70a6b26 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 21:04:36 +0300 Subject: [PATCH 1665/1725] Fix issue with settings when missing list ID --- apps/flashcards/settings.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index 74339ef07..19a1160db 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -1,34 +1,34 @@ (function(back) { var storage = require("Storage"); - var settingsFILE = "flashcards.settings.json"; + var settingsFile = "flashcards.settings.json"; var dataFile = "flashcards.data.json"; var trelloTimeout = 3000; var trelloURL = "https://api.trello.com/1/lists/$cardsListId/cards/?fields=name%2Cdesc%2Clist"; var settings = Object.assign({ listId: "" - }, storage.readJSON(settingsFILE, true) || {}); + }, storage.readJSON(settingsFile, true) || {}); function writeSettings() { - storage.writeJSON(FILE, settings); + storage.writeJSON(settingsFile, settings); } var settingsMenu = { "" : { "title" : "Flash Cards" }, "< Back" : () => back(), - "List ID": { + /*"List ID": { value: settings.listId, onchange: v=> { settings.listId=v; writeSettings();} } - , + ,*/ "Get from Trello": () => { E.showPrompt("Download cards?").then((v) => { let delay = 500; if (v) { if (Bangle.http) { - if (settings.listId.length) + if (settings.listId) { delay = delay + trelloTimeout; E.showMessage('i: downloading'); @@ -58,4 +58,4 @@ } // Show the menu E.showMenu(settingsMenu); -})(load) \ No newline at end of file +})//(load) \ No newline at end of file From d469765f362a023b184800049f35caa8c8865cba Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 21:11:45 +0300 Subject: [PATCH 1666/1725] Fix cards download --- apps/flashcards/settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index 19a1160db..fe291e348 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -39,7 +39,7 @@ headers: { "Content-Type": "application/json" } }).then(data=>{ var cardsJSON = JSON.parse(data.resp); - storage.write(dataFile, JSON.stringify(result)); + storage.write(dataFile, JSON.stringify(cardsJSON)); E.showMessage('i: downloaded'); }) .catch((e) => { From 9745e24c7b50fcc24906fb2b75ce95e0c5f99ae1 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 21:44:29 +0300 Subject: [PATCH 1667/1725] Add instructions and minor hotfixes --- apps/flashcards/ChangeLog | 3 +++ apps/flashcards/README.md | 17 ++++++++++++++++- apps/flashcards/app.js | 2 +- apps/flashcards/metadata.json | 2 +- apps/flashcards/settings.js | 1 + 5 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 apps/flashcards/ChangeLog diff --git a/apps/flashcards/ChangeLog b/apps/flashcards/ChangeLog new file mode 100644 index 000000000..aef6fca5e --- /dev/null +++ b/apps/flashcards/ChangeLog @@ -0,0 +1,3 @@ +1.0: Local cards data +1.1: Download cards data from Trello public board +1.2: Configuration instructions added and card layout optimized diff --git a/apps/flashcards/README.md b/apps/flashcards/README.md index 948ee7a0e..733f412b5 100644 --- a/apps/flashcards/README.md +++ b/apps/flashcards/README.md @@ -1,3 +1,18 @@ -A simple flash cards application based on Trello public board. +A simple flash cards application based on Trello public board. +Configuration: + +1. Create public Trello board +2. Create new Trello list +3. Add Trello cards: +* card name will be flash card front text +* card description will be flash card back text +4. Add ".json" to the end of the Trello board URL and refresh page +5. Find your list ID +6. Save list ID to the "flashcards.settings.json" file on your watch, e.g.: +{"listId":"65942f7b27z68000996ddc00"} +7. On your watch go to Settings -> Apps -> Flash Cards -> Get from Trello +8. Start Flash Cards as watch app or set it as watch clock face +9. Swipe left/right to change card +10. Tap to switch card front/back text diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index 29497119b..402bf3c84 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -7,7 +7,7 @@ let SWAP_SIDE_BUZZ_MILLISECONDS = 50; let CARD_DATA_FILE = "flashcards.data.json"; let CARD_EMPTY = "empty card"; -let CARD_LINE_LENGTH = 9; +let CARD_LINE_LENGTH = 8; let CARD_LINE_FONT = "20%"; // Modules diff --git a/apps/flashcards/metadata.json b/apps/flashcards/metadata.json index bdba0b9b0..2b330c09f 100644 --- a/apps/flashcards/metadata.json +++ b/apps/flashcards/metadata.json @@ -2,7 +2,7 @@ "id": "flashcards", "name": "Flash Cards", "shortName": "Flash Cards", - "version": "1.1", + "version": "1.2", "description": "Flash cards based on public Trello board", "screenshots" : [ { "url":"screenshot.png" }], "icon": "app.png", diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index fe291e348..67436dd02 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -23,6 +23,7 @@ } ,*/ "Get from Trello": () => { + if (!storage.read(settingsFile)) { writeSettings();} E.showPrompt("Download cards?").then((v) => { let delay = 500; if (v) { From 0c52665fd73dd693f454bfa09d070e964ab8d389 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 21:48:06 +0300 Subject: [PATCH 1668/1725] Fix card horizontal layout --- apps/flashcards/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index 402bf3c84..a3c775fdf 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -89,7 +89,7 @@ let queueDraw = function() { var cardLayout = new Layout( { type:"v", c: [ {type:"txt", font:"6x8:3", label:"", id:"widgets", fillx:1 }, - {type:"txt", font:CARD_LINE_FONT, label:"ABCDEFGHIJ KLMNOPQRST UVWXYZ���", filly:1, id:"card" }, + {type:"txt", font:CARD_LINE_FONT, label:"ABCDEFGHIJ KLMNOPQRST UVWXYZÅÖÄ", filly:1, fillx:1, id:"card" }, {type:"txt", font:"6x8:2", label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg } ] }, {lazy:true}); From 37a7a9b3e41c71ccf4dc5ceb3fa735e57e54e58f Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 22:02:39 +0300 Subject: [PATCH 1669/1725] Fix empty card layout --- apps/flashcards/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index a3c775fdf..d1c25309f 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -6,7 +6,7 @@ // Constants let SWAP_SIDE_BUZZ_MILLISECONDS = 50; let CARD_DATA_FILE = "flashcards.data.json"; -let CARD_EMPTY = "empty card"; +let CARD_EMPTY = "cards not found"; let CARD_LINE_LENGTH = 8; let CARD_LINE_FONT = "20%"; From 584e33c480f44ed4d3ca753642772ae49dfd8463 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 22:55:27 +0300 Subject: [PATCH 1670/1725] Fix empty card layout --- apps/flashcards/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index d1c25309f..b255316c8 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -6,7 +6,7 @@ // Constants let SWAP_SIDE_BUZZ_MILLISECONDS = 50; let CARD_DATA_FILE = "flashcards.data.json"; -let CARD_EMPTY = "cards not found"; +let CARD_EMPTY = "no cards found"; let CARD_LINE_LENGTH = 8; let CARD_LINE_FONT = "20%"; From 8e5d0f19d3ca2d57d1d82d08df4719537cecd224 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 23:11:31 +0300 Subject: [PATCH 1671/1725] Fix empty card layout --- apps/flashcards/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index b255316c8..f94cc8ad2 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -6,7 +6,7 @@ // Constants let SWAP_SIDE_BUZZ_MILLISECONDS = 50; let CARD_DATA_FILE = "flashcards.data.json"; -let CARD_EMPTY = "no cards found"; +let CARD_EMPTY = "found no cards"; let CARD_LINE_LENGTH = 8; let CARD_LINE_FONT = "20%"; From 1db67bc5436cc3cbbd683bf17e7ad0bbbe482823 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 23:12:49 +0300 Subject: [PATCH 1672/1725] Fix empty card layout --- apps/flashcards/app.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index f94cc8ad2..405df38be 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -140,9 +140,10 @@ function handleDrag(event) { // initialize -loadLocalCards(); cardLayout.update(); Bangle.loadWidgets(); +loadLocalCards(); + Bangle.on("touch", handleTouch); Bangle.on("stroke", handleDrag); From f6e7fb55258dceef83fb1c84f2dbb3ca70f41909 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 23:18:01 +0300 Subject: [PATCH 1673/1725] Update copyright message --- apps/flashcards/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index 405df38be..3b3b6f67e 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -1,5 +1,5 @@ /** - * Copyright 2023 SHOGEL + * Copyright 2023 Crisp Advice * We believe in Finnish */ From 05d25d778a002bd39c7d7de323d0021a505b8f8f Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 23:22:54 +0300 Subject: [PATCH 1674/1725] Add readm.me to metadata --- apps/flashcards/metadata.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/flashcards/metadata.json b/apps/flashcards/metadata.json index 2b330c09f..33d475c32 100644 --- a/apps/flashcards/metadata.json +++ b/apps/flashcards/metadata.json @@ -4,6 +4,7 @@ "shortName": "Flash Cards", "version": "1.2", "description": "Flash cards based on public Trello board", + "readme":"README.md", "screenshots" : [ { "url":"screenshot.png" }], "icon": "app.png", "tags": "flash cards", From c09ff6fa3606a2ec5f2dad5f0b4fe9ed18a039c6 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 7 Jul 2023 23:28:18 +0300 Subject: [PATCH 1675/1725] Update instructions --- apps/flashcards/README.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/apps/flashcards/README.md b/apps/flashcards/README.md index 733f412b5..846871ed9 100644 --- a/apps/flashcards/README.md +++ b/apps/flashcards/README.md @@ -5,14 +5,15 @@ Configuration: 1. Create public Trello board 2. Create new Trello list 3. Add Trello cards: -* card name will be flash card front text -* card description will be flash card back text +- card name will be flash card front text +- card description will be flash card back text 4. Add ".json" to the end of the Trello board URL and refresh page 5. Find your list ID 6. Save list ID to the "flashcards.settings.json" file on your watch, e.g.: {"listId":"65942f7b27z68000996ddc00"} -7. On your watch go to Settings -> Apps -> Flash Cards -> Get from Trello -8. Start Flash Cards as watch app or set it as watch clock face -9. Swipe left/right to change card -10. Tap to switch card front/back text - +7. Connect phone with Gadgetbridge to the watch +8. Enable "Allow Internet Access" in Gadgetbridge +9. On the watch go to Settings -> Apps -> Flash Cards -> Get from Trello +10. Start Flash Cards as watch app or set it as watch clock face +11. Swipe left/right to change card +12. Tap to switch card front/back text \ No newline at end of file From 5db8249ac998a7518e6af9f8d040fb8464ee09f7 Mon Sep 17 00:00:00 2001 From: Tom Wallroth Date: Sat, 8 Jul 2023 11:58:21 +0200 Subject: [PATCH 1676/1725] first release of guitar-songs app --- apps/guitarsongs/ChangeLog | 1 + apps/guitarsongs/README.md | 22 +++ apps/guitarsongs/app-icon.js | 1 + apps/guitarsongs/app.js | 157 ++++++++++++++++++++ apps/guitarsongs/app.png | Bin 0 -> 3468 bytes apps/guitarsongs/manage_songs.html | 223 +++++++++++++++++++++++++++++ apps/guitarsongs/metadata.json | 17 +++ apps/guitarsongs/screenshot.png | Bin 0 -> 2285 bytes 8 files changed, 421 insertions(+) create mode 100644 apps/guitarsongs/ChangeLog create mode 100644 apps/guitarsongs/README.md create mode 100644 apps/guitarsongs/app-icon.js create mode 100644 apps/guitarsongs/app.js create mode 100644 apps/guitarsongs/app.png create mode 100644 apps/guitarsongs/manage_songs.html create mode 100644 apps/guitarsongs/metadata.json create mode 100644 apps/guitarsongs/screenshot.png diff --git a/apps/guitarsongs/ChangeLog b/apps/guitarsongs/ChangeLog new file mode 100644 index 000000000..5453557bc --- /dev/null +++ b/apps/guitarsongs/ChangeLog @@ -0,0 +1 @@ +0.01: First Release diff --git a/apps/guitarsongs/README.md b/apps/guitarsongs/README.md new file mode 100644 index 000000000..12af8a9f4 --- /dev/null +++ b/apps/guitarsongs/README.md @@ -0,0 +1,22 @@ +# Guitar Songs + +Upload lyrics and chords to your BangleJS2. Play songs at the camp fire. + +![screenshot](screenshot.png) + +## Usage + +Install the app. Use the App Loader to add songs to the watch. + +You can scroll through the chords by dragging your finger left and right. + +You can scroll the lyrics by dragging it up and down. + +## Attribution + +[Fire icon created by Freepik - Flaticon](https://www.flaticon.com/free-icons/fire) + +## Credits + +Created by: devsnd +Inspired by: NovaDawn999 diff --git a/apps/guitarsongs/app-icon.js b/apps/guitarsongs/app-icon.js new file mode 100644 index 000000000..554372bb0 --- /dev/null +++ b/apps/guitarsongs/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwg967oABCaHQAYUNDCISBC4wfDC5gQCC4YYPC5BJOC65MFJCQXIGCIXGGAY0MC5K2EC54TCMhoWGC5YHEC5RBIIxREKC4gWHC5QLDFwXu9oXSCAXuDAoXILIYDD7wYBeJhxHC4QwEC6QwEaB4WCGAgXYDIxGKVQwXJLAQXESJYXGCYPjmYXPFYPtFwQXTAAczmc+C6fj+YXNa4QXEn//C43QC5kz/4XBMAPtVIQXM8YWBC4bBDC4xgCC4RFBC5AWGC4guDC55IBC4IuDC4xGHC5peJPAfdCQIAEVAdACglEABVDDAM97vUqgGBkUAggXLGAQXBotUCwM0oAWLC4cz6tUokyGANCIxwABooGBmkzmQuMoQXDDwQXBmgXMI4gGCmRFBoR3PFIYECVYJgOAwtEbQ4AoA")) diff --git a/apps/guitarsongs/app.js b/apps/guitarsongs/app.js new file mode 100644 index 000000000..9a3004374 --- /dev/null +++ b/apps/guitarsongs/app.js @@ -0,0 +1,157 @@ +const chords = { + // name: [name, ...finger_placement, fret], + c: ["C", "0X", "33", "22", "x", "11", "x", 0], + d: ["D", "0X", "0X", "x", "21", "33", "22", 0], + dm: ["Dm", "0x", "0x", "x", "22", "33", "11", 0], + e: ["E", "x", "22", "23", "11", "x", "x", 0], + em: ["Em", "x", "22", "23", "x", "x", "x", 0], + em7: ["Em7", "x", "11", "x", "x", "x", "x", 0], + f: ["F", "0x", "0x", "33", "22", "11", "11", 0], + g: ["G", "32", "21", "x", "x", "x", "33", 0], + am: ["Am", "0X", "x", "21", "22", "23", "x", 0], + a: ["A", "0x", "x", "23", "22", "11", "x", 0], + b7: ["B7", "0x", "22", "11", "23", "x", "24", 0], + cadd9: ["Cadd9", "0x", "32", "21", "x", "33", "34", 0], + dadd11: ["Dadd11", "0x", "33", "22", "x", "11", "x", 3], + csus2: ["Csus2", "0x", "33", "x", "x", "11", "0x", 0], + gadd9: ["Gadd9", "32", "0x", "x", "21", "x", "33", 0], + aadd9: ["Aadd9", "11", "33", "34", "22", "x", "x", 5], + fsharp7add11: ["F#7add11", "21", "43", "44", "32", "x", "x", 0], + d9: ["D9", "0x", "22", "11", "23", "23", "0x", 4], + g7: ["G7", "33", "22", "x", "x", "34", "11", 0], + bflatd: ["Bb/D", "0x", "33", "11", "11", "11", "0x", 3], + e7sharp9: ["E7#9", "0x", "22", "11", "23", "34", "0x", 6], + a11: ["A11", "33", "0x", "34", "22", "11", "0x", 0], + a9: ["A9", "32", "0x", "33", "21", "34", "0x", 3], +} + +const chordCache = {}; +function drawChordCached(chord, x, y, options) { + let image; + if (chordCache[chord[0]]) { + image = chordCache[chord[0]] + } else { + arrbuff = Graphics.createArrayBuffer(60,65,1,{msb:true}); + drawChord(arrbuff, chord, 0, 0, options); + image = {width: arrbuff.getWidth(), height: arrbuff.getHeight(), bpp:arrbuff.getBPP(), buffer: arrbuff.buffer, transparent:0} + chordCache[chord[0]] = image; + } + g.drawImage(image, x, y); +} + + +function drawChord(buffer, chord, x, y, options) { + const stringWidths = options.stringWidths; + const fretHeight = options.fretHeight; + const circleSize = options.circleSize; + const drawFinger = options.drawFinger; + const drawCircleRim = options.drawCircleRim; + + const name = chord[0]; + chord = chord.slice(1); + x += 2; + buffer.setColor(0x1).setFontAlign(-1, -1).drawString(name, x, y); + y += 15; + for (let i = 0; i < 6; i++) { + buffer.drawLine(x + i * stringWidths, y, x + i * stringWidths, y + fretHeight*4); + } + for (let i = 0; i < 5; i++) { + buffer.fillRect(x - 1, y + i * fretHeight - 1, x + stringWidths * 5 + 1, y + i * fretHeight + 1); + } + + for (let i = 0; i < 6; i++) { + const xPos = x + i * stringWidths; + let yPos = y + fretHeight * parseInt(chord[i][0]) - fretHeight/2 + + if (chord[i] === "x") { + buffer.setColor(0x1).drawCircle(xPos, y - 5, 2); + continue; + } + if (chord[i] === "0x") { + buffer.setFontAlign(0, 0); + buffer.setColor(0x1).drawString('x', xPos, y - 5); + continue; + } + buffer.setFontAlign(0, 0); + if (drawFinger) { + buffer.setColor(0x0).fillCircle(xPos, yPos, circleSize); + if (drawCircleRim) { + buffer.setColor(0x1).drawCircle(xPos, yPos, circleSize); + } + buffer.setColor(0x1).drawString(chord[i][1], xPos, yPos); + } else { + buffer.setColor(0x1).fillCircle(xPos, yPos, circleSize); + buffer.setFontAlign(0, -1) + buffer.setColor(0x1).drawString(chord[i][1], xPos, y + fretHeight*4 + 2); + } + } + if (chord[6] !== 0) { + buffer.setFontAlign(-1, -1); + buffer.drawString(chord[6] + 'fr', x + 5 * stringWidths + 2, y); + } +} + +const chordOptions = { + stringWidths: 8, + fretHeight: 10, + circleSize: 2, + drawFinger: false, + drawCircleRim: false, +} + +function drawApp(lyricsLines, chordsDraw, scrollY, chordScrollX) { + const R = Bangle.appRect; + + g.setFont('6x8'); + if (scrollY < 60) { + for (let i=0; i R.y2) break; + g.setFontAlign(-1, -1).drawString(lyricsLines[i], R.x, y); + } +} + +let currentScrollY = 0; +let chordScrollX = 0; +let currentChordScroll = 0; +let lyricsHeight = 0; + +function main(song) { + const lyrics = song.lyrics; + const foundChords = song.chords; + const lyricsLines = lyrics.split('\n'); + const chordsDraw = Object.values(chords).filter(c=>foundChords.includes(c[0])); + + g.clear(); + drawApp(lyricsLines, chordsDraw, currentScrollY, chordScrollX); + lyricsHeight = g.stringMetrics(lyrics).height; + Bangle.on('drag', (event) => { + currentScrollY = Math.min(0, currentScrollY + event.dy); + chordScrollX = Math.max(Math.min(0, chordScrollX + event.dx), -(chordsDraw.length - 3)*60); + g.clear(); + drawApp(lyricsLines, chordsDraw, currentScrollY, chordScrollX); + }) +} + +function mainMenu () { + const songs = ( + require("Storage").readJSON("guitar_songs.json", true) || + [{'name': 'No songs', 'lyrics': 'Em\nPlease upload a song\nAm\nusing the Bangle App Loader', 'chords': ['Am', 'Em']}] + ); + const menu = { + "": {"title": "Guitar Songs"}, + }; + for (let i=0; iTA+aa!>*QK%<348(*pTzeNtY>gJ&1 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 + + + + + + + +

      + + + + diff --git a/apps/guitarsongs/metadata.json b/apps/guitarsongs/metadata.json new file mode 100644 index 000000000..d0e34fd3a --- /dev/null +++ b/apps/guitarsongs/metadata.json @@ -0,0 +1,17 @@ +{ "id": "guitarsongs", + "name": "Guitar Songs", + "shortName":"Guitar Songs", + "version":"0.01", + "description": "Songs lyrics and guitar chords", + "icon": "app.png", + "screenshots": [{"url": "screenshot.png"}], + "tags": "guitar, song, lyrics, chords", + "supports" : ["BANGLEJS2"], + "interface": "manage_songs.html", + "readme": "README.md", + "storage": [ + {"name":"guitarsongs.app.js","url":"app.js"}, + {"name":"guitarsongs.img","url":"app-icon.js","evaluate":true} + ], + "data": [{"name": "guitar_songs.json"}] +} diff --git a/apps/guitarsongs/screenshot.png b/apps/guitarsongs/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..c2d7fe2ea58faf7400fe1e0c471a499192756233 GIT binary patch literal 2285 zcmeHJdoMYRS~j~XM*F+>%i5yE=3l2$t;5(y@4m1#*v zZA(2G9h8bBwj^OA)3nuUF^p%>km%B=h_EIihty`~%pdc|{EK91Zu`Z7KN})fFrQ#ZA7w?tgFu`?`}YO_$qGV50S2Q2 zDa9ZVP=N?O6-7!=)y~~*aQRD!K(_NBN0{5|<7IRmNGzVH4aj;pb}*h(e14p&-_k3X zZ-*oji46H^b^pxXH8rX_ppng3Yzrve%rK#@41BTJL|omk)~Rniju!8R|q=opysarwoe7V*^021lR+*ynypS_J~j z{3kiXB0p}euYV91NM{3uUhmNFoSB;gvY2%P<-dJDCNC{B!_~wj-}AlsLLL} zNe?g@Ja`F?-NFa{_B}A{a#|HI^^)iW`QD$9(w@{V=h*sZe)ap@!Lm_lKs3zVFcJ|c!l%5@ZWLR& zZ4omm%#Hw$;AsR>^3O5|-VxU_he!XlE`S;y%#%T_u$Oob#0}b`> zy19ciw39>PH~74JBhxKZ+?rziI!b(ux!n zc&mu#_c6DG&}qcS8j7bX*%IG;BE>6VYUzpzp73%Js5N@F3~Xla&8|nJ`BQ_^BD$z8_rKI%ubMC$_cH+26=o^$HH6t!qrIe1PMbZ!3emT^=jFz?{^M zi_y1jz@}gf4bD8C+Q@2VR!_x?^j?K7nTsp4Ni1cegIk4}mi10`h_hUGu83#7ipooP zKG~wIY2OfI33_&srJ{;$Y@fPyQktvc#Y&M#VX{CByZU70Tz_W$75br{Asluhx|heV zU{aK=ucs(A(mlf>RV{lo#!2D0;u=i8%Y-*f01Itw3XoL{q-_N z+a(g`7$IkHz_wLo8QwJF`yR{lyQuN>jL-i1Pp8|a;FtED{4{j_OQ1Bw)?~XxEF!$B zlG@q@g)tFzx`TA+re|R%ng!jwpHsfm>;X~z*X%m3VcP#@|mH;oQ5vM!e_eG=bvNWw0lZIDk|IZ)uFKq7!LPX!t3-g*sW_ky$T^6Cb6>U;udXGKY6m{ zlavljx*6;M|6L1AZO5qTVTTfNeaS@XLdAQW)()l-RMJZ(V`?WhzKbr73}H13@v>n~ zbD7F3FG8QxA&f%S?nUlPfqWqKfxd$VVr|cX;TC~%pl|*U^oJ7v-xh3|`$U*G5~}Yf R8cr4v;>+-0P7wC$e*uDaBkBME literal 0 HcmV?d00001 From 3da2306c816d8bf718496aa099018872bdaf14ef Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Sat, 8 Jul 2023 15:05:10 +0300 Subject: [PATCH 1677/1725] Add changing size through Settings --- apps/flashcards/ChangeLog | 3 ++- apps/flashcards/app.js | 27 +++++++++++++-------------- apps/flashcards/metadata.json | 2 +- apps/flashcards/settings.js | 22 +++++++++++++++------- 4 files changed, 31 insertions(+), 23 deletions(-) diff --git a/apps/flashcards/ChangeLog b/apps/flashcards/ChangeLog index aef6fca5e..21b246bda 100644 --- a/apps/flashcards/ChangeLog +++ b/apps/flashcards/ChangeLog @@ -1,3 +1,4 @@ 1.0: Local cards data 1.1: Download cards data from Trello public board -1.2: Configuration instructions added and card layout optimized +1.2: Configuration instructions added and card layout optimized +1.3: Font size can be changed in Settings diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index 3b3b6f67e..04a7e40f7 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -3,27 +3,27 @@ * We believe in Finnish */ -// Constants -let SWAP_SIDE_BUZZ_MILLISECONDS = 50; -let CARD_DATA_FILE = "flashcards.data.json"; -let CARD_EMPTY = "found no cards"; -let CARD_LINE_LENGTH = 8; -let CARD_LINE_FONT = "20%"; - // Modules var Layout = require("Layout"); var locale = require("locale"); var storage = require("Storage"); // Global variables -var cards = []; -var cardIndex = 0; -var backSide = false; +let SWAP_SIDE_BUZZ_MILLISECONDS = 50; +let CARD_DATA_FILE = "flashcards.data.json"; +let CARD_SETTINGS_FILE = "flashcards.settings.json"; +let CARD_EMPTY = "no cards found"; +let cards = []; +let cardIndex = 0; +let backSide = false; +let drawTimeout = undefined; + +let settings = storage.readJSON(CARD_SETTINGS_FILE,1) || { litsId: "", fontSize: "20%", textSize: 9 }; // Cards data function wordWrap(str, maxLength) { if (maxLength == undefined) { - maxLength = CARD_LINE_LENGTH; + maxLength = settings.textSize; } let res = ''; while (str.length > maxLength) { @@ -76,7 +76,6 @@ function refreshCards(cardsJSON,showMsg) } // Drawing a card -let drawTimeout; let queueDraw = function() { let timeout = 60000; if (drawTimeout) clearTimeout(drawTimeout); @@ -86,10 +85,10 @@ let queueDraw = function() { }, timeout - (Date.now() % timeout)); }; -var cardLayout = new Layout( { +let cardLayout = new Layout( { type:"v", c: [ {type:"txt", font:"6x8:3", label:"", id:"widgets", fillx:1 }, - {type:"txt", font:CARD_LINE_FONT, label:"ABCDEFGHIJ KLMNOPQRST UVWXYZÅÖÄ", filly:1, fillx:1, id:"card" }, + {type:"txt", font:settings.fontSize, label:"ABCDEFGHIJ KLMNOPQRST UVWXYZÅÖÄ", filly:1, fillx:1, id:"card" }, {type:"txt", font:"6x8:2", label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg } ] }, {lazy:true}); diff --git a/apps/flashcards/metadata.json b/apps/flashcards/metadata.json index 33d475c32..89bb72109 100644 --- a/apps/flashcards/metadata.json +++ b/apps/flashcards/metadata.json @@ -2,7 +2,7 @@ "id": "flashcards", "name": "Flash Cards", "shortName": "Flash Cards", - "version": "1.2", + "version": "1.3", "description": "Flash cards based on public Trello board", "readme":"README.md", "screenshots" : [ { "url":"screenshot.png" }], diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index 67436dd02..62dc98d13 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -7,7 +7,9 @@ var trelloURL = "https://api.trello.com/1/lists/$cardsListId/cards/?fields=name%2Cdesc%2Clist"; var settings = Object.assign({ - listId: "" + listId: "", + textSize: 9, + fontSize: "20%" }, storage.readJSON(settingsFile, true) || {}); function writeSettings() { @@ -17,12 +19,18 @@ var settingsMenu = { "" : { "title" : "Flash Cards" }, "< Back" : () => back(), - /*"List ID": { - value: settings.listId, - onchange: v=> { settings.listId=v; writeSettings();} - } - ,*/ - "Get from Trello": () => { + /*LANG*/"Font Size": { + value: settings.fontSize, + min: 0, max: 2, + format: v => ["15%","20%","25%"][v], + onchange: v => { settings.fontSize = v; writeSettings(); } + }, + /*LANG*/"Text Size": { + value: settings.textSize, + min: 4, max: 14, + onchange: v => { settings.textSize = v; writeSettings(); } + }, + /*LANG*/"Get from Trello": () => { if (!storage.read(settingsFile)) { writeSettings();} E.showPrompt("Download cards?").then((v) => { let delay = 500; From 958a834d1c32099640d8669801b41fb269d4930e Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Sat, 8 Jul 2023 15:40:55 +0300 Subject: [PATCH 1678/1725] Change card lint text length from settings --- apps/flashcards/app.js | 5 +++-- apps/flashcards/settings.js | 9 +++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index 04a7e40f7..2272aca13 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -17,8 +17,9 @@ let cards = []; let cardIndex = 0; let backSide = false; let drawTimeout = undefined; +let fontSizes = ["15%","20%","25%"]; -let settings = storage.readJSON(CARD_SETTINGS_FILE,1) || { litsId: "", fontSize: "20%", textSize: 9 }; +let settings = storage.readJSON(CARD_SETTINGS_FILE,1) || { litsId: "", fontSize: fontSizes[1], textSize: 9 }; // Cards data function wordWrap(str, maxLength) { @@ -88,7 +89,7 @@ let queueDraw = function() { let cardLayout = new Layout( { type:"v", c: [ {type:"txt", font:"6x8:3", label:"", id:"widgets", fillx:1 }, - {type:"txt", font:settings.fontSize, label:"ABCDEFGHIJ KLMNOPQRST UVWXYZÅÖÄ", filly:1, fillx:1, id:"card" }, + {type:"txt", font:fontSizes[settings.fontSize], label:"ABCDEFGHIJ KLMNOPQRST UVWXYZÅÖÄ", filly:1, fillx:1, id:"card" }, {type:"txt", font:"6x8:2", label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg } ] }, {lazy:true}); diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index 62dc98d13..faa1d0a2b 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -9,25 +9,26 @@ var settings = Object.assign({ listId: "", textSize: 9, - fontSize: "20%" + fontSize: 1 }, storage.readJSON(settingsFile, true) || {}); function writeSettings() { storage.writeJSON(settingsFile, settings); } + const fontSizes = ["15%","20%","25%"]; var settingsMenu = { "" : { "title" : "Flash Cards" }, "< Back" : () => back(), /*LANG*/"Font Size": { value: settings.fontSize, - min: 0, max: 2, - format: v => ["15%","20%","25%"][v], + min: 0, max: 2, wrap: true, + format: v => fontSizes[v], onchange: v => { settings.fontSize = v; writeSettings(); } }, /*LANG*/"Text Size": { value: settings.textSize, - min: 4, max: 14, + min: 5, max: 14, onchange: v => { settings.textSize = v; writeSettings(); } }, /*LANG*/"Get from Trello": () => { From 8d2c14f5b816f38a500e92bb8b9fc88465b31ab0 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Sat, 8 Jul 2023 16:09:05 +0300 Subject: [PATCH 1679/1725] Fix default values for font and text size --- apps/flashcards/README.md | 2 +- apps/flashcards/app.js | 6 +++++- apps/flashcards/flashcards.settings.json | 2 +- apps/flashcards/settings.js | 4 ++-- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/apps/flashcards/README.md b/apps/flashcards/README.md index 846871ed9..ddf199b4f 100644 --- a/apps/flashcards/README.md +++ b/apps/flashcards/README.md @@ -10,7 +10,7 @@ Configuration: 4. Add ".json" to the end of the Trello board URL and refresh page 5. Find your list ID 6. Save list ID to the "flashcards.settings.json" file on your watch, e.g.: -{"listId":"65942f7b27z68000996ddc00"} +{"listId":"65942f7b27z68000996ddc00","fontSize":1,"textSize":9} 7. Connect phone with Gadgetbridge to the watch 8. Enable "Allow Internet Access" in Gadgetbridge 9. On the watch go to Settings -> Apps -> Flash Cards -> Get from Trello diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index 2272aca13..fc81cb65b 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -19,7 +19,11 @@ let backSide = false; let drawTimeout = undefined; let fontSizes = ["15%","20%","25%"]; -let settings = storage.readJSON(CARD_SETTINGS_FILE,1) || { litsId: "", fontSize: fontSizes[1], textSize: 9 }; +let settings = Object.assign({ + listId: "", + fontSize: 1, + textSize: 9 +}, storage.readJSON(CARD_SETTINGS_FILE, true) || {}); // Cards data function wordWrap(str, maxLength) { diff --git a/apps/flashcards/flashcards.settings.json b/apps/flashcards/flashcards.settings.json index 3b85f6bc4..505738ce1 100644 --- a/apps/flashcards/flashcards.settings.json +++ b/apps/flashcards/flashcards.settings.json @@ -1 +1 @@ -{"listId":""} +{"listId":"","fontSize":1,"textSize":9} diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index faa1d0a2b..4f2793e96 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -8,8 +8,8 @@ var settings = Object.assign({ listId: "", - textSize: 9, - fontSize: 1 + fontSize: 1, + textSize: 9 }, storage.readJSON(settingsFile, true) || {}); function writeSettings() { From c150e388b6db2f8c7c02d862c6a98b1ae99c76b5 Mon Sep 17 00:00:00 2001 From: Tom Wallroth Date: Sat, 8 Jul 2023 17:06:02 +0200 Subject: [PATCH 1680/1725] render larger chords --- apps/guitarsongs/ChangeLog | 1 + apps/guitarsongs/app.js | 46 +++++++++++++++++++--------------- apps/guitarsongs/metadata.json | 2 +- 3 files changed, 28 insertions(+), 21 deletions(-) diff --git a/apps/guitarsongs/ChangeLog b/apps/guitarsongs/ChangeLog index 5453557bc..dda3f0fd1 100644 --- a/apps/guitarsongs/ChangeLog +++ b/apps/guitarsongs/ChangeLog @@ -1 +1,2 @@ 0.01: First Release +0.02: WIP diff --git a/apps/guitarsongs/app.js b/apps/guitarsongs/app.js index 9a3004374..89db72c50 100644 --- a/apps/guitarsongs/app.js +++ b/apps/guitarsongs/app.js @@ -1,15 +1,16 @@ const chords = { // name: [name, ...finger_placement, fret], - c: ["C", "0X", "33", "22", "x", "11", "x", 0], - d: ["D", "0X", "0X", "x", "21", "33", "22", 0], + c: ["C", "0x", "33", "22", "x", "11", "x", 0], + d: ["D", "0x", "0x", "x", "21", "33", "22", 0], dm: ["Dm", "0x", "0x", "x", "22", "33", "11", 0], e: ["E", "x", "22", "23", "11", "x", "x", 0], em: ["Em", "x", "22", "23", "x", "x", "x", 0], em7: ["Em7", "x", "11", "x", "x", "x", "x", 0], f: ["F", "0x", "0x", "33", "22", "11", "11", 0], g: ["G", "32", "21", "x", "x", "x", "33", 0], - am: ["Am", "0X", "x", "21", "22", "23", "x", 0], - a: ["A", "0x", "x", "23", "22", "11", "x", 0], + a: ["A", "0x", "x", "21", "22", "23", "x", 0], + am: ["Am", "0x", "x", "23", "22", "11", "x", 0], + a7: ["A7", "0x", "x", "21", "x", "23", "x", 0], b7: ["B7", "0x", "22", "11", "23", "x", "24", 0], cadd9: ["Cadd9", "0x", "32", "21", "x", "33", "34", 0], dadd11: ["Dadd11", "0x", "33", "22", "x", "11", "x", 3], @@ -25,13 +26,24 @@ const chords = { a9: ["A9", "32", "0x", "33", "21", "34", "0x", 3], } +const chordHeight = 85; +const chordWidth = 80; + +const chordOptions = { + stringWidths: 12, + fretHeight: 14, + circleSize: 4, + drawFinger: false, + drawCircleRim: false, +} + const chordCache = {}; function drawChordCached(chord, x, y, options) { let image; if (chordCache[chord[0]]) { image = chordCache[chord[0]] } else { - arrbuff = Graphics.createArrayBuffer(60,65,1,{msb:true}); + arrbuff = Graphics.createArrayBuffer(chordWidth,chordHeight,1,{msb:true}); drawChord(arrbuff, chord, 0, 0, options); image = {width: arrbuff.getWidth(), height: arrbuff.getHeight(), bpp:arrbuff.getBPP(), buffer: arrbuff.buffer, transparent:0} chordCache[chord[0]] = image; @@ -49,8 +61,8 @@ function drawChord(buffer, chord, x, y, options) { const name = chord[0]; chord = chord.slice(1); - x += 2; - buffer.setColor(0x1).setFontAlign(-1, -1).drawString(name, x, y); + x += 3; + buffer.setFont('6x8').setColor(0x1).setFontAlign(-1, -1).drawString(name, x, y); y += 15; for (let i = 0; i < 6; i++) { buffer.drawLine(x + i * stringWidths, y, x + i * stringWidths, y + fretHeight*4); @@ -91,26 +103,20 @@ function drawChord(buffer, chord, x, y, options) { } } -const chordOptions = { - stringWidths: 8, - fretHeight: 10, - circleSize: 2, - drawFinger: false, - drawCircleRim: false, -} + function drawApp(lyricsLines, chordsDraw, scrollY, chordScrollX) { const R = Bangle.appRect; g.setFont('6x8'); - if (scrollY < 60) { + if (scrollY < chordHeight) { for (let i=0; i R.y2) break; g.setFontAlign(-1, -1).drawString(lyricsLines[i], R.x, y); @@ -127,13 +133,13 @@ function main(song) { const foundChords = song.chords; const lyricsLines = lyrics.split('\n'); const chordsDraw = Object.values(chords).filter(c=>foundChords.includes(c[0])); - + const R = Bangle.appRect; g.clear(); drawApp(lyricsLines, chordsDraw, currentScrollY, chordScrollX); lyricsHeight = g.stringMetrics(lyrics).height; Bangle.on('drag', (event) => { currentScrollY = Math.min(0, currentScrollY + event.dy); - chordScrollX = Math.max(Math.min(0, chordScrollX + event.dx), -(chordsDraw.length - 3)*60); + chordScrollX = Math.max(Math.min(0, chordScrollX + event.dx), -(song.chords.length*chordWidth - R.x2)); g.clear(); drawApp(lyricsLines, chordsDraw, currentScrollY, chordScrollX); }) @@ -142,7 +148,7 @@ function main(song) { function mainMenu () { const songs = ( require("Storage").readJSON("guitar_songs.json", true) || - [{'name': 'No songs', 'lyrics': 'Em\nPlease upload a song\nAm\nusing the Bangle App Loader', 'chords': ['Am', 'Em']}] + [{'name': 'No songs', 'lyrics': 'Em\nPlease upload a song\nAm A7\nusing the Bangle App Loader', 'chords': ['Am', 'Em', 'A7']}] ); const menu = { "": {"title": "Guitar Songs"}, diff --git a/apps/guitarsongs/metadata.json b/apps/guitarsongs/metadata.json index d0e34fd3a..cec4be2fd 100644 --- a/apps/guitarsongs/metadata.json +++ b/apps/guitarsongs/metadata.json @@ -1,7 +1,7 @@ { "id": "guitarsongs", "name": "Guitar Songs", "shortName":"Guitar Songs", - "version":"0.01", + "version":"0.02", "description": "Songs lyrics and guitar chords", "icon": "app.png", "screenshots": [{"url": "screenshot.png"}], From 40c90ffb9de32ece1487d75bfac9c3ad601b8998 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Sun, 9 Jul 2023 19:29:00 +0300 Subject: [PATCH 1681/1725] Add setting to select swipe guesture type --- apps/flashcards/README.md | 2 +- apps/flashcards/app.js | 52 ++++++++++++++++-------- apps/flashcards/flashcards.settings.json | 2 +- apps/flashcards/settings.js | 20 ++++++--- 4 files changed, 51 insertions(+), 25 deletions(-) diff --git a/apps/flashcards/README.md b/apps/flashcards/README.md index ddf199b4f..b053c25ac 100644 --- a/apps/flashcards/README.md +++ b/apps/flashcards/README.md @@ -10,7 +10,7 @@ Configuration: 4. Add ".json" to the end of the Trello board URL and refresh page 5. Find your list ID 6. Save list ID to the "flashcards.settings.json" file on your watch, e.g.: -{"listId":"65942f7b27z68000996ddc00","fontSize":1,"textSize":9} +{"listId":"65942f7b27z68000996ddc00","fontSize":1,"cardWidth":9,"swipeGesture":0} 7. Connect phone with Gadgetbridge to the watch 8. Enable "Allow Internet Access" in Gadgetbridge 9. On the watch go to Settings -> Apps -> Flash Cards -> Get from Trello diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index fc81cb65b..1d588b1a4 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -18,17 +18,20 @@ let cardIndex = 0; let backSide = false; let drawTimeout = undefined; let fontSizes = ["15%","20%","25%"]; +let lastDragX = 0; +let lastDragY = 0; let settings = Object.assign({ listId: "", fontSize: 1, - textSize: 9 + cardWidth: 9, + swipeGesture: 0 }, storage.readJSON(CARD_SETTINGS_FILE, true) || {}); // Cards data function wordWrap(str, maxLength) { if (maxLength == undefined) { - maxLength = settings.textSize; + maxLength = settings.cardWidth; } let res = ''; while (str.length > maxLength) { @@ -116,6 +119,17 @@ function draw() { queueDraw(); } +function swipeCard(forward) +{ + if(forward) { + cardIndex = (cardIndex + 1) % cards.length; + } + else if(--cardIndex < 0) { + cardIndex = cards.length - 1; + } + drawCard(); +} + // Handle a touch: swap card side function handleTouch(zone, event) { backSide = !backSide; @@ -123,23 +137,27 @@ function handleTouch(zone, event) { Bangle.buzz(SWAP_SIDE_BUZZ_MILLISECONDS); } -// Handle a drag event: cycle cards -function handleDrag(event) { +// Handle a stroke event: cycle cards +function handleStroke(event) { let first_x = event.xy[0]; let last_x = event.xy[event.xy.length - 2]; - let xdiff = last_x - first_x; - /* - let first_y = event.xy[1]; - let last_y = event.xy[event.xy.length - 1]; - let ydiff = last_y - first_y; - */ - if(xdiff > 0) { - cardIndex = (cardIndex + 1) % cards.length; + swipeCard((last_x - first_x) > 0); +} + +// Handle a drag event: cycle cards +function handleDrag(event) { + let isFingerReleased = (event.b === 0); + if(isFingerReleased) { + let isHorizontalDrag = (Math.abs(lastDragX) >= Math.abs(lastDragY)) && + (lastDragX !== 0); + if(isHorizontalDrag) { + swipeCard(lastDragX > 0); + } } - else if(--cardIndex < 0) { - cardIndex = cards.length - 1; + else { + lastDragX = event.dx; + lastDragY = event.dy; } - drawCard(); } @@ -149,7 +167,7 @@ Bangle.loadWidgets(); loadLocalCards(); Bangle.on("touch", handleTouch); -Bangle.on("stroke", handleDrag); +if (settings.swipeGesture) { Bangle.on("drag", handleDrag); } else { Bangle.on("stroke", handleStroke); } // On start: display the first card g.clear(); @@ -160,5 +178,5 @@ Bangle.setUI({mode:"clock", remove:function() { if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = undefined; Bangle.removeListener("touch", handleTouch); - Bangle.removeListener("stroke", handleDrag); + if (settings.swipeGesture) { Bangle.removeListener("drag", handleDrag);} else { Bangle.removeListener("stroke", handleStroke); } }}); diff --git a/apps/flashcards/flashcards.settings.json b/apps/flashcards/flashcards.settings.json index 505738ce1..1bb8fcf22 100644 --- a/apps/flashcards/flashcards.settings.json +++ b/apps/flashcards/flashcards.settings.json @@ -1 +1 @@ -{"listId":"","fontSize":1,"textSize":9} +{"listId":"","fontSize":1,"cardWidth":9,"swipeGesture":0} diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index 4f2793e96..7d31aa1ee 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -9,28 +9,36 @@ var settings = Object.assign({ listId: "", fontSize: 1, - textSize: 9 + cardWidth: 9, + swipeGesture: 0 }, storage.readJSON(settingsFile, true) || {}); function writeSettings() { storage.writeJSON(settingsFile, settings); } - const fontSizes = ["15%","20%","25%"]; + const fontSizes = [/*LANG*/"Small",/*LANG*/"Medium",/*LANG*/"Large"]; + const swipeGestures = [/*LANG*/"Stroke",/*LANG*/"Drag"]; var settingsMenu = { "" : { "title" : "Flash Cards" }, "< Back" : () => back(), - /*LANG*/"Font Size": { + /*LANG*/"Font size": { value: settings.fontSize, min: 0, max: 2, wrap: true, format: v => fontSizes[v], onchange: v => { settings.fontSize = v; writeSettings(); } }, - /*LANG*/"Text Size": { - value: settings.textSize, + /*LANG*/"Card width": { + value: settings.cardWidth, min: 5, max: 14, - onchange: v => { settings.textSize = v; writeSettings(); } + onchange: v => { settings.cardWidth = v; writeSettings(); } }, + /*LANG*/"Swipe gesture": { + value: settings.swipeGesture, + min: 0, max: 1, wrap: true, + format: v => swipeGestures[v], + onchange: v => { settings.swipeGesture = v; writeSettings(); } + }, /*LANG*/"Get from Trello": () => { if (!storage.read(settingsFile)) { writeSettings();} E.showPrompt("Download cards?").then((v) => { From f839fd5ccd087376014627e641ce7732205ea2d0 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Sun, 9 Jul 2023 19:43:13 +0300 Subject: [PATCH 1682/1725] Set card width range to match font sizes --- apps/flashcards/settings.js | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index 7d31aa1ee..fa8802aa1 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -21,24 +21,7 @@ const swipeGestures = [/*LANG*/"Stroke",/*LANG*/"Drag"]; var settingsMenu = { "" : { "title" : "Flash Cards" }, - "< Back" : () => back(), - /*LANG*/"Font size": { - value: settings.fontSize, - min: 0, max: 2, wrap: true, - format: v => fontSizes[v], - onchange: v => { settings.fontSize = v; writeSettings(); } - }, - /*LANG*/"Card width": { - value: settings.cardWidth, - min: 5, max: 14, - onchange: v => { settings.cardWidth = v; writeSettings(); } - }, - /*LANG*/"Swipe gesture": { - value: settings.swipeGesture, - min: 0, max: 1, wrap: true, - format: v => swipeGestures[v], - onchange: v => { settings.swipeGesture = v; writeSettings(); } - }, + "< Back" : () => back(), /*LANG*/"Get from Trello": () => { if (!storage.read(settingsFile)) { writeSettings();} E.showPrompt("Download cards?").then((v) => { @@ -72,6 +55,23 @@ } setTimeout(() => E.showMenu(settingsMenu), delay); }); + }, + /*LANG*/"Font size": { + value: settings.fontSize, + min: 0, max: 2, wrap: true, + format: v => fontSizes[v], + onchange: v => { settings.fontSize = v; writeSettings(); } + }, + /*LANG*/"Card width": { + value: settings.cardWidth, + min: 6, max: 12, + onchange: v => { settings.cardWidth = v; writeSettings(); } + }, + /*LANG*/"Swipe gesture": { + value: settings.swipeGesture, + min: 0, max: 1, wrap: true, + format: v => swipeGestures[v], + onchange: v => { settings.swipeGesture = v; writeSettings(); } } } // Show the menu From 85224c58e2ca8abcbe8e9c5a7fb28896166e31a5 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Sun, 9 Jul 2023 19:53:23 +0300 Subject: [PATCH 1683/1725] Fix settings localization --- apps/flashcards/settings.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index fa8802aa1..a6df1db4c 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -32,7 +32,7 @@ if (settings.listId) { delay = delay + trelloTimeout; - E.showMessage('i: downloading'); + E.showMessage(/*LANG*/"Downloading"); Bangle.http(trelloURL.replace("$cardsListId", settings.listId), { timeout : trelloTimeout, @@ -41,16 +41,16 @@ }).then(data=>{ var cardsJSON = JSON.parse(data.resp); storage.write(dataFile, JSON.stringify(cardsJSON)); - E.showMessage('i: downloaded'); + E.showMessage(/*LANG*/"Downloaded"); }) .catch((e) => { - E.showMessage("e: " + e); + E.showMessage(/*LANG*/"Error:" + e); }); } else { - E.showMessage("e: list Id not found"); + E.showMessage(/*LANG*/"List Id not found"); } } else { - E.showMessage("e: Gadgetbridge not found"); + E.showMessage(/*LANG*/"Gadgetbridge not found"); } } setTimeout(() => E.showMenu(settingsMenu), delay); From 38de2110fd9d9a8eb49b20f452de5c8ab00f03f3 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Sun, 9 Jul 2023 21:15:09 +0300 Subject: [PATCH 1684/1725] Fix issue with word wrapping --- apps/flashcards/app.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index 1d588b1a4..badd6b49e 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -16,7 +16,7 @@ let CARD_EMPTY = "no cards found"; let cards = []; let cardIndex = 0; let backSide = false; -let drawTimeout = undefined; +let drawTimeout; let fontSizes = ["15%","20%","25%"]; let lastDragX = 0; let lastDragY = 0; @@ -29,15 +29,16 @@ let settings = Object.assign({ }, storage.readJSON(CARD_SETTINGS_FILE, true) || {}); // Cards data -function wordWrap(str, maxLength) { +function wordWrap(textStr, maxLength) { if (maxLength == undefined) { maxLength = settings.cardWidth; } let res = ''; + let str = textStr.trim(); while (str.length > maxLength) { let found = false; // Inserts new line at first whitespace of the line - for (i = maxLength - 1; i >= 0; i--) { + for (i = maxLength - 1; i > 0; i--) { if (str.charAt(i)==' ') { res = res + [str.slice(0, i), "\n"].join(''); str = str.slice(i + 1); From 8919208caf78d35e3e79a5082965aa839f90607a Mon Sep 17 00:00:00 2001 From: Tom Wallroth Date: Sun, 9 Jul 2023 20:33:05 +0200 Subject: [PATCH 1685/1725] use simpler chord format, added many more chords --- apps/guitarsongs/app.js | 152 ++++++++++++++++++++++------- apps/guitarsongs/manage_songs.html | 84 ++++++++-------- 2 files changed, 160 insertions(+), 76 deletions(-) diff --git a/apps/guitarsongs/app.js b/apps/guitarsongs/app.js index 89db72c50..a12fa842b 100644 --- a/apps/guitarsongs/app.js +++ b/apps/guitarsongs/app.js @@ -1,30 +1,103 @@ -const chords = { - // name: [name, ...finger_placement, fret], - c: ["C", "0x", "33", "22", "x", "11", "x", 0], - d: ["D", "0x", "0x", "x", "21", "33", "22", 0], - dm: ["Dm", "0x", "0x", "x", "22", "33", "11", 0], - e: ["E", "x", "22", "23", "11", "x", "x", 0], - em: ["Em", "x", "22", "23", "x", "x", "x", 0], - em7: ["Em7", "x", "11", "x", "x", "x", "x", 0], - f: ["F", "0x", "0x", "33", "22", "11", "11", 0], - g: ["G", "32", "21", "x", "x", "x", "33", 0], - a: ["A", "0x", "x", "21", "22", "23", "x", 0], - am: ["Am", "0x", "x", "23", "22", "11", "x", 0], - a7: ["A7", "0x", "x", "21", "x", "23", "x", 0], - b7: ["B7", "0x", "22", "11", "23", "x", "24", 0], - cadd9: ["Cadd9", "0x", "32", "21", "x", "33", "34", 0], - dadd11: ["Dadd11", "0x", "33", "22", "x", "11", "x", 3], - csus2: ["Csus2", "0x", "33", "x", "x", "11", "0x", 0], - gadd9: ["Gadd9", "32", "0x", "x", "21", "x", "33", 0], - aadd9: ["Aadd9", "11", "33", "34", "22", "x", "x", 5], - fsharp7add11: ["F#7add11", "21", "43", "44", "32", "x", "x", 0], - d9: ["D9", "0x", "22", "11", "23", "23", "0x", 4], - g7: ["G7", "33", "22", "x", "x", "34", "11", 0], - bflatd: ["Bb/D", "0x", "33", "11", "11", "11", "0x", 3], - e7sharp9: ["E7#9", "0x", "22", "11", "23", "34", "0x", 6], - a11: ["A11", "33", "0x", "34", "22", "11", "0x", 0], - a9: ["A9", "32", "0x", "33", "21", "34", "0x", 3], -} +const chords = [ + // name: [name, placement, fingers, fret], + // sourced from https://github.com/spilth/chord_diagrams/blob/main/lib/chord_diagrams/fingerings.csv + ['A', 'x02220', '', 0], + ['B', 'x24442', '', 0], + ['Bb', 'x13331', '', 0], + ['C', 'x32010', '', 0], + ['C#', 'x46664', '', 0], + ['D', 'xx0232', '', 0], + ['D#', 'x68886', '', 0], + ['E', '022100', '', 0], + ['Eb', 'x68886', '', 0], + ['F', '133211', '', 0], + ['F#', '244322', '', 0], + ['G', '320003', '', 0], + ['G#', '466544', '', 0], + ['C5', 'x355xx', '', 0], + ['D5', 'x577xx', '', 0], + ['D#5', 'x688xx', '', 0], + ['C6', 'x32210', '', 0], + ['D6', 'xx0202', '', 0], + ['E6', '022120', '', 0], + ['G6', '320000', '', 0], + ['A7', '002020', '', 0], + ['B7', 'x21202', '', 0], + ['C7', 'x32310', '', 0], + ['C#7', 'x46464', '', 0], + ['D7', 'x00212', '', 0], + ['E7', '020100', '', 0], + ['E7sus4', '020200', '', 0], + ['F7', '131211', '', 0], + ['F#7', '242322', '', 0], + ['G7', '320001', '', 0], + ['G#7', '464544', '', 0], + ['AM7', 'x02120', '', 0], + ['CM7', 'x32000', '', 0], + ['DM7', 'xx0222', '', 0], + ['EM7', 'xx2444', '', 0], + ['FM7', '132211', '', 0], + ['Cadd9', 'x32033', '', 0], + ['Fadd9', 'xx3213', '', 0], + ['Dsus2', 'xx0230', '', 0], + ['Asus2', 'x02200', '', 0], + ['Asus4', 'x02230', '', 0], + ['Dsus4', 'xx0233', '', 0], + ['Esus4', '022200', '', 0], + ['A7sus4', '002030', '', 0], + ['G7sus4', '353533', '', 0], + ['G+', 'x21003', '', 0], + ['Am', '002210', '', 0], + ['Bm', 'x24432', '', 0], + ['Cm', 'x35543', '', 0], + ['C#m', 'x46654', '', 0], + ['Dm', 'x00231', '', 0], + ['Em', '022000', '', 0], + ['Fm', '133111', '', 0], + ['F#m', '244222', '', 0], + ['Gm', '355333', '', 0], + ['G#m', '466444', '', 0], + ['Am7', '002010', '', 0], + ['A#m7', 'x13121', '', 0], + ['Bm7', 'x24232', '', 0], + ['Cm7', 'x35343', '', 0], + ['C#m7', 'x46454', '', 0], + ['Dm7', 'x00211', '', 0], + ['Em7', '020030', '', 0], + ['Fm7', '131111', '', 0], + ['F#m7', '242222', '', 0], + ['Gm7', '353333', '', 0], + ['Am9', 'x05557', '', 0], + ['Bm11', 'x20220', '', 0], + ['F#m11', '202200', '', 0], + ['A/C#', '042220', '', 0], + ['A/E', '00222x', '', 0], + ['A/F#', '202220', '', 0], + ['Bb/A', 'x00331', '', 0], + ['C/B', 'x22010', '', 0], + ['C/E', '032010', '', 0], + ['D/A', 'x04232', '', 0], + ['D/F#', '200232', '', 0], + ['F/A', 'x03211', '', 0], + ['G/B', 'x20003', '', 0], + ['C7/G', '3323xx', '', 0], + ['D7/F#', '200212', '', 0], + ['G7/F', '123003', '', 0], + ['D9/F#', '2x0210', '', 0], + ['Am/D', 'xx0210', '', 0], + ['Am/G', '302210', '', 0], + ['A#m/D#', 'xx1321', '', 0], + ['Dm/F', '10323x', '', 0], + ['Gm/Bb', 'x10333', '', 0], + ['A7/G', '302020', '', 0], + ['G#dim', '4564xx', '', 0], + ['Adim', 'x01212', '', 0], + ['D#dim7', 'xx1212', '', 0], + ['G#dim7', '456464', '', 0], + ['Daug', 'xx0332', '', 0], + ['Aaug', 'x03221', '', 0], + ['Dadd11', 'xx0032', '', 0], +] const chordHeight = 85; const chordWidth = 80; @@ -72,34 +145,39 @@ function drawChord(buffer, chord, x, y, options) { } for (let i = 0; i < 6; i++) { + const placement = chord[0]; + const fingers = chord[1]; const xPos = x + i * stringWidths; - let yPos = y + fretHeight * parseInt(chord[i][0]) - fretHeight/2 + let yPos = y + fretHeight * parseInt(placement[i]) - fretHeight/2 - if (chord[i] === "x") { + if (placement[i] === "0") { buffer.setColor(0x1).drawCircle(xPos, y - 5, 2); continue; - } - if (chord[i] === "0x") { + } else if (placement[i] === "x") { buffer.setFontAlign(0, 0); buffer.setColor(0x1).drawString('x', xPos, y - 5); continue; } buffer.setFontAlign(0, 0); - if (drawFinger) { + if (drawFinger && chord[i].length>1) { buffer.setColor(0x0).fillCircle(xPos, yPos, circleSize); if (drawCircleRim) { buffer.setColor(0x1).drawCircle(xPos, yPos, circleSize); } - buffer.setColor(0x1).drawString(chord[i][1], xPos, yPos); + if (parseInt(fingers[i])) { + buffer.setColor(0x1).drawString(fingers[i], xPos, yPos); + } } else { buffer.setColor(0x1).fillCircle(xPos, yPos, circleSize); buffer.setFontAlign(0, -1) - buffer.setColor(0x1).drawString(chord[i][1], xPos, y + fretHeight*4 + 2); + if (parseInt(fingers[i])) { + buffer.setColor(0x1).drawString(fingers[i], xPos, y + fretHeight*4 + 2); + } } } - if (chord[6] !== 0) { + if (chord[2] !== 0) { buffer.setFontAlign(-1, -1); - buffer.drawString(chord[6] + 'fr', x + 5 * stringWidths + 2, y); + buffer.drawString(chord[2] + 'fr', x + 5 * stringWidths + 2, y); } } @@ -132,7 +210,7 @@ function main(song) { const lyrics = song.lyrics; const foundChords = song.chords; const lyricsLines = lyrics.split('\n'); - const chordsDraw = Object.values(chords).filter(c=>foundChords.includes(c[0])); + const chordsDraw = chords.filter(c=>foundChords.includes(c[0])); const R = Bangle.appRect; g.clear(); drawApp(lyricsLines, chordsDraw, currentScrollY, chordScrollX); diff --git a/apps/guitarsongs/manage_songs.html b/apps/guitarsongs/manage_songs.html index 3f6d91d71..9280d8d96 100644 --- a/apps/guitarsongs/manage_songs.html +++ b/apps/guitarsongs/manage_songs.html @@ -24,17 +24,17 @@ - - {{song.name}} - {{song.lyrics.slice(0, 30)}} - {{song.chords.join(' ')}} - {{song.lyrics.length + song.name.length}} - - - - - - + + {{song.name}} + {{song.lyrics.slice(0, 30)}} + {{song.chords.join(' ')}} + {{song.lyrics.length + song.name.length}} + + + + + +
      @@ -80,8 +80,14 @@ return { newChord: '', builtInChords: [ - "C", "D", "Dm", "E", "Em", "Em7", "F", "G", "Am", "A", "B7", "Cadd9", "Dadd11", "Csus2", - "Gadd9", "Aadd9", "F#7add11", "D9", "G7", "Bb/D", "E7#9", "A11", "A9", + 'A', 'B', 'Bb', 'C', 'C#', 'D', 'D#', 'E', 'Eb', 'F', 'F#', 'G', 'G#', 'C5', 'D5', 'D#5', + 'C6', 'D6', 'E6', 'G6', 'A7', 'B7', 'C7', 'C#7', 'D7', 'E7', 'E7sus4', 'F7', 'F#7', 'G7', + 'G#7', 'AM7', 'CM7', 'DM7', 'EM7', 'FM7', 'Cadd9', 'Fadd9', 'Dsus2', 'Asus2', 'Asus4', + 'Dsus4', 'Esus4', 'A7sus4', 'G7sus4', 'G+', 'Am', 'Bm', 'Cm', 'C#m', 'Dm', 'Em', 'Fm', + 'F#m', 'Gm', 'G#m', 'Am7', 'A#m7', 'Bm7', 'Cm7', 'C#m7', 'Dm7', 'Em7', 'Fm7', 'F#m7', + 'Gm7', 'Am9', 'Bm11', 'F#m11', 'A/C#', 'A/E', 'A/F#', 'Bb/A', 'C/B', 'C/E', 'D/A', 'D/F#', + 'F/A', 'G/B', 'C7/G', 'D7/F#', 'G7/F', 'D9/F#', 'Am/D', 'Am/G', 'A#m/D#', 'Dm/F', 'Gm/Bb', + 'A7/G', 'G#dim', 'Adim', 'D#dim7', 'G#dim7', 'Daug', 'Aaug', 'Dadd11', ] } }, @@ -115,36 +121,36 @@ }, template: `
      -
      -
      - -
      -
      -

      Chords in this Song

      - +
      +
      + +
      +
      +

      Chords in this Song

      + Please add chords by clicking the bubbles below, or use the Auto-Detect Button after having inserted the lyrics. - + {{chord}} - + -

      Available Chords

      - +

      Available Chords

      + {{chord}} -
      -
      +
      +
      Please paste the lyrics and chords in the box below. The width of the text area below is twice the width of the BangleJS2 screen. Everything in the gray area cannot be seen on the screen -
      +
      -
      -
      -
      - Remove empty lines - Auto Detect Chords
      -

      +
      + Remove empty lines + Auto Detect Chords +
      -` +

      +
      + ` }); var app = new Vue({ el: '#app', From db49453f7de30d5db38c91693d686b75c2fbbc03 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Sun, 9 Jul 2023 22:10:12 +0100 Subject: [PATCH 1686/1725] batchart: update changelog/version --- apps/batchart/ChangeLog | 1 + apps/batchart/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/batchart/ChangeLog b/apps/batchart/ChangeLog index c2462d397..394622c78 100644 --- a/apps/batchart/ChangeLog +++ b/apps/batchart/ChangeLog @@ -9,3 +9,4 @@ 0.09: Fix failing dismissal of Gadgetbridge notifications, record (coarse) bluetooth state 0.10: Remove widget icon and improve listener and setInterval handling for widget (might help with https://github.com/espruino/BangleApps/issues/381) 0.11: Initial port to the BangleJS2 +0.12: Remove debug log diff --git a/apps/batchart/metadata.json b/apps/batchart/metadata.json index 6ab0c0f78..be01ca767 100644 --- a/apps/batchart/metadata.json +++ b/apps/batchart/metadata.json @@ -2,7 +2,7 @@ "id": "batchart", "name": "Battery Chart", "shortName": "Battery Chart", - "version": "0.11", + "version": "0.12", "description": "A widget and an app for recording and visualizing battery percentage over time.", "icon": "app.png", "tags": "app,widget,battery,time,record,chart,tool", From c36e3587c527e149f380d42c507c51a3cf7f2407 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 10 Jul 2023 22:11:06 +0100 Subject: [PATCH 1687/1725] swiperclocklaunch: check `mode` after pulling from `options` --- apps/swiperclocklaunch/ChangeLog | 1 + apps/swiperclocklaunch/boot.js | 3 ++- apps/swiperclocklaunch/metadata.json | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/swiperclocklaunch/ChangeLog b/apps/swiperclocklaunch/ChangeLog index f62e10940..a341ee512 100644 --- a/apps/swiperclocklaunch/ChangeLog +++ b/apps/swiperclocklaunch/ChangeLog @@ -3,3 +3,4 @@ 0.03: Update setUI to work with new Bangle.js 2v13 menu style 0.04: Update to work with new 'fast switch' clock->launcher functionality 0.05: Keep track of event listeners we "overwrite", and remove them at the start of setUI +0.06: Handle apps that call setUI({}) to reset diff --git a/apps/swiperclocklaunch/boot.js b/apps/swiperclocklaunch/boot.js index 11abb84c9..bb033891e 100644 --- a/apps/swiperclocklaunch/boot.js +++ b/apps/swiperclocklaunch/boot.js @@ -8,8 +8,9 @@ sui(mode,cb); oldSwipe = Bangle.swipeHandler; - if(!mode) return; if ("object"==typeof mode) mode = mode.mode; + if (!mode) return; + if (mode.startsWith("clock")) { // clock -> launcher Bangle.swipeHandler = dir => { if (dir<0) Bangle.showLauncher(); }; diff --git a/apps/swiperclocklaunch/metadata.json b/apps/swiperclocklaunch/metadata.json index d46c56693..436d36868 100644 --- a/apps/swiperclocklaunch/metadata.json +++ b/apps/swiperclocklaunch/metadata.json @@ -1,7 +1,7 @@ { "id": "swiperclocklaunch", "name": "Swiper Clock Launch", - "version": "0.05", + "version": "0.06", "description": "Navigate between clock and launcher with Swipe action", "icon": "swiperclocklaunch.png", "type": "bootloader", From e72b0be23058ea0ed8cb33b6e1187413da2492df Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 12 Jul 2023 14:04:26 +0100 Subject: [PATCH 1688/1725] change recorder icon to differentiate from 'run' --- apps/recorder/app-icon.js | 2 +- apps/recorder/app.png | Bin 1530 -> 10890 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/recorder/app-icon.js b/apps/recorder/app-icon.js index 4181d2b12..cb80f4b5d 100644 --- a/apps/recorder/app-icon.js +++ b/apps/recorder/app-icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("mEw4cA///vPWvN8kvkuu14/s3OMjN0Kf4AQ2vaCB0Ftu3oARfgdt23AGsO2NaHQT+MB2XJCJ1MyXJsAQMgUky3JkARMjIRBpIRNvMl2VJlAQLldvtmSpN+CJcbt2ECJsBregggRBv4RRdJfbgEkyVLq3ACJ1Jq3dCBMKBYIRBpFW7d0CJUDsgRBhdbtvQCJHYgUTm1IgEttuwCI8GCIMSpMwA4MVEZPoCIUkaxj7BoQRPiQRCwARNpARByARNpMJCJyNBgKjBCJy1CCJ79BfZYNDCJoxBBoQnCABBVFN4IRJPIoRLV4sCpMgCJTbECJYKFCJUJBQsJfpoA/A")) +require("heatshrink").decompress(atob("mEw4cA///8H5vPWvN8kvkuu13OMjN0HMsBkmACJ1JkmSCBsCCIVAA4WSpARHiQRCBgUEyVJCLIJBCIIMCCMpZICIwHBOAZZLABQRRUIsB2fNZZLFErnb5vgdJkC23e5uwHRkZCINtCJuZ2+ztu6CBckyds7dt/wRMyUGCJpbCCIX/WhARIEZkAm3bt77ICI9t5IFBABEJCIdsXYOQCJUDswRBAoLfCCI8ggWlu1sQYQRL0mSqgHBiQRNpDWMfYPUCJ8WCIKOLCIfaCIMgCJvbqQRO23agSgBCJ0ACKKyBwAQKgu26AROloRCgLoKBgNt2wfCawIRJhdt2gFCCJdbtugAoUEfRIRCAoYRMtAGECJULCIsSdZoA/A=")) diff --git a/apps/recorder/app.png b/apps/recorder/app.png index 036f5d132181624c52b034f07732d39a958903fa..f67ae63d649658db2ef34a5447f8303cc7781c81 100644 GIT binary patch literal 10890 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 P00000NkvXXu0mjfXmr>L From e6443ba9a3afa30b89859f9358cd71878f423dd0 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 12 Jul 2023 14:30:45 +0100 Subject: [PATCH 1689/1725] 0.20: Make Satellite counter widget 24px wide (was 48) Move 'Center GPS' to the top of the menu If 'Recorder' app installed, add a 'Record' menu item --- apps/openstmap/ChangeLog | 3 ++ apps/openstmap/app.js | 91 +++++++++++++++++++++--------------- apps/openstmap/metadata.json | 2 +- 3 files changed, 58 insertions(+), 38 deletions(-) diff --git a/apps/openstmap/ChangeLog b/apps/openstmap/ChangeLog index c1b8e5f21..6b5e8172b 100644 --- a/apps/openstmap/ChangeLog +++ b/apps/openstmap/ChangeLog @@ -21,3 +21,6 @@ Switch tile layer URL for faster/more reliable map tiles 0.18: Prefer map with highest resolution 0.19: Remember latitude, longitude & scale +0.20: Make Satellite counter widget 24px wide (was 48) + Move 'Center GPS' to the top of the menu + If 'Recorder' app installed, add a 'Record' menu item \ No newline at end of file diff --git a/apps/openstmap/app.js b/apps/openstmap/app.js index 88883b6d6..2afe56751 100644 --- a/apps/openstmap/app.js +++ b/apps/openstmap/app.js @@ -83,13 +83,12 @@ Bangle.setGPSPower(1, "app"); if (HASWIDGETS) { Bangle.loadWidgets(); if (!WIDGETS["gps"]) { // one GPS Widget is enough - WIDGETS["sats"] = { area:"tl", width:48, draw:w=>{ - var txt = (0|fix.satellites)+" Sats"; - if (!fix.fix) txt += "\nNO FIX"; - g.reset().setFont("6x8").setFontAlign(0,0) - .drawString(txt,w.x+24,w.y+12); - } - }; + WIDGETS["sats"] = { area:"tl", width:24, draw:w=>{ + var sats = 0|fix.satellites; + g.reset().clearRect(w.x,w.y,w.x+23,w.y+23). drawImage(atob("EhPCAP//vmU0Cv++BUAAAANVQAAANVUAAANVVSoA/VVWqA/VqqqA/1VVoA/9VVkAP/VVlAP/1VVAP/9VVQD//WVUA//2VUA//9VUAX//1UBV///0BVX//ABVVAAABVVAAAA="), w.x,w.y+5); // 18x19 + if (fix.fix) g.setFont("6x8").setFontAlign(1,-1).drawString(sats,w.x+23,w.y); + else g.setFont("4x6:2").setColor("#f00").setFontAlign(1,-1).drawString("X",w.x+23,w.y); + }}; } Bangle.drawWidgets(); } @@ -102,6 +101,53 @@ function writeSettings() { require("Storage").writeJSON("openstmap.json",settings); } +function showMenu() { + if (plotTrack && plotTrack.stop) + plotTrack.stop(); + mapVisible = false; + var menu = { + "":{title:/*LANG*/"Map"}, + "< Back": ()=> showMap(), + }; + // If we have a GPS fix, add a menu item to center it + if (fix.fix) menu[/*LANG*/"Center GPS"]=() =>{ + m.lat = fix.lat; + m.lon = fix.lon; + showMap(); + }; + menu = Object.assign(menu, { + /*LANG*/"Zoom In": () =>{ + m.scale /= 2; + showMap(); + }, + /*LANG*/"Zoom Out": () =>{ + m.scale *= 2; + showMap(); + }, + /*LANG*/"Draw Track": { + value : !!settings.drawTrack, + onchange : v => { settings.drawTrack=v; writeSettings(); } + }, + /*LANG*/"Center Map": () =>{ + m.lat = m.map.lat; + m.lon = m.map.lon; + m.scale = m.map.scale; + showMap(); + } + }); + // If we have the recorder widget, add a menu item to start/stop recording + if (WIDGETS.recorder) { + menu[/*LANG*/"Record"] = { + value : WIDGETS.recorder.isRecording(), + onchange : isOn => { + E.showMessage(/*LANG*/"Please Wait..."); + WIDGETS.recorder.setRecording(isOn).then(showMap); + } + }; + } + E.showMenu(menu); +} + function showMap() { mapVisible = true; g.reset().clearRect(R); @@ -118,36 +164,7 @@ function showMap() { hasScrolled = false; redraw(); } - }, btn: btn=>{ - if (plotTrack && plotTrack.stop) plotTrack.stop(); - mapVisible = false; - var menu = {"":{title:"Map"}, - "< Back": ()=> showMap(), - /*LANG*/"Zoom In": () =>{ - m.scale /= 2; - showMap(); - }, - /*LANG*/"Zoom Out": () =>{ - m.scale *= 2; - showMap(); - }, - /*LANG*/"Draw Track": { - value : !!settings.drawTrack, - onchange : v => { settings.drawTrack=v; writeSettings(); } - }, - /*LANG*/"Center Map": () =>{ - m.lat = m.map.lat; - m.lon = m.map.lon; - m.scale = m.map.scale; - showMap(); - }}; - if (fix.fix) menu[/*LANG*/"Center GPS"]=() =>{ - m.lat = fix.lat; - m.lon = fix.lon; - showMap(); - }; - E.showMenu(menu); - }}); + }, btn: () => showMenu() }); } showMap(); diff --git a/apps/openstmap/metadata.json b/apps/openstmap/metadata.json index 14c789798..0ece4397e 100644 --- a/apps/openstmap/metadata.json +++ b/apps/openstmap/metadata.json @@ -2,7 +2,7 @@ "id": "openstmap", "name": "OpenStreetMap", "shortName": "OpenStMap", - "version": "0.19", + "version": "0.20", "description": "Loads map tiles from OpenStreetMap onto your Bangle.js and displays a map of where you are. Once installed this also adds map functionality to `GPS Recorder` and `Recorder` apps", "readme": "README.md", "icon": "app.png", From e408fb98797997f21403eca2389cf106d224b4e0 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Wed, 12 Jul 2023 14:36:24 +0100 Subject: [PATCH 1690/1725] fixing warnings in latest PRs --- apps/flashcards/app.js | 18 +++++++++++------- apps/rep/app.js | 2 +- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index badd6b49e..5fa2e6de7 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -161,6 +161,15 @@ function handleDrag(event) { } } +// Ensure pressing the button goes to the launcher (by making this seem like a clock?) +Bangle.setUI({mode:"clock"/*, remove:function() { + // Code to enable fast load. NOTE: this doesn't work on this app because all + // functions and vars are declared global: https://www.espruino.com/Bangle.js+Fast+Load + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + Bangle.removeListener("touch", handleTouch); + if (settings.swipeGesture) { Bangle.removeListener("drag", handleDrag);} else { Bangle.removeListener("stroke", handleStroke); } +}*/}); // initialize cardLayout.update(); @@ -174,10 +183,5 @@ if (settings.swipeGesture) { Bangle.on("drag", handleDrag); } else { Bangle.on(" g.clear(); draw(); -// cleanup -Bangle.setUI({mode:"clock", remove:function() { - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = undefined; - Bangle.removeListener("touch", handleTouch); - if (settings.swipeGesture) { Bangle.removeListener("drag", handleDrag);} else { Bangle.removeListener("stroke", handleStroke); } -}}); + + diff --git a/apps/rep/app.js b/apps/rep/app.js index 06c8889b7..8172bc362 100644 --- a/apps/rep/app.js +++ b/apps/rep/app.js @@ -184,7 +184,7 @@ var _a, _b, _c; State.prototype.currentRepIndex = function () { var elapsed = this.getElapsedTotal(); var ent; - for (var i = 0; ent = reps_1[i]; i++) + for (var i = 0; (ent = reps_1[i]); i++) if (elapsed < ent.accDur) return i; return null; From 71b5dafaa7e4ab1173e77442ca67ee1fe618c8d1 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Wed, 12 Jul 2023 19:59:04 +0200 Subject: [PATCH 1691/1725] messagesoverlay - Use event based mechanism --- apps/messagesoverlay/ChangeLog | 1 + apps/messagesoverlay/boot.js | 8 +----- apps/messagesoverlay/lib.js | 42 +++++------------------------- apps/messagesoverlay/metadata.json | 4 +-- 4 files changed, 11 insertions(+), 44 deletions(-) diff --git a/apps/messagesoverlay/ChangeLog b/apps/messagesoverlay/ChangeLog index 0a2cf27b0..832c1d45c 100644 --- a/apps/messagesoverlay/ChangeLog +++ b/apps/messagesoverlay/ChangeLog @@ -1,3 +1,4 @@ 0.01: Initial fork from messages_light 0.02: Fix touch/drag/swipe handlers not being restored correctly if a message is removed 0.03: Scroll six lines per swipe, leaving the previous top/bottom row visible. +0.04: Use the event mechanism for getting messages diff --git a/apps/messagesoverlay/boot.js b/apps/messagesoverlay/boot.js index 7731d608a..778f42339 100644 --- a/apps/messagesoverlay/boot.js +++ b/apps/messagesoverlay/boot.js @@ -1,7 +1 @@ -//override require to filter require("message") -global.require_real=global.require; -global.require = (_require => file => { - if (file==="messages") file = "messagesoverlay"; - return _require(file); -})(require); - +Bangle.on("message", (type, msg) => require("messagesoverlay").message(type, msg)); \ No newline at end of file diff --git a/apps/messagesoverlay/lib.js b/apps/messagesoverlay/lib.js index 5587fce19..ed5a4d9b9 100644 --- a/apps/messagesoverlay/lib.js +++ b/apps/messagesoverlay/lib.js @@ -1,15 +1,3 @@ -/* MESSAGES is a list of: - {id:int, - src, - title, - subject, - body, - sender, - tel:string, - new:true // not read yet - } -*/ - const ovrx = 10; const ovry = 10; const ovrw = g.getWidth()-2*ovrx; @@ -84,18 +72,8 @@ let manageEvent = function(ovr, event) { if (!callInProgress && eventQueue[0] !== undefined && eventQueue[0].id == event.id) next(ovr); - - else { - eventQueue.length = 0; // empty existing queue - eventQueue.forEach(element => { - if (element.id != event.id) - neweventQueue.push(element); - }); - } - - break; - case "musicstate": - case "musicinfo": + else + eventQueue = []; break; } @@ -453,8 +431,10 @@ let main = function(ovr, event) { let ovr; -exports.pushMessage = function(event) { - if( event.id=="music") return require_real("messages").pushMessage(event); +exports.message = function(type, event) { + // only handle some event types + if(!(type=="text" || type == "call")) return; + if(event.handled) return; bpp = 4; if (process.memory().free < 2000) bpp = 1; @@ -475,14 +455,6 @@ exports.pushMessage = function(event) { ovr.theme = { fg:0, bg:1, fg2:1, bg2:0, fgH:1, bgH:0 }; main(ovr, event); - + event.handled = true; g = _g; }; - - -//Call original message library -exports.clearAll = function() { return require_real("messages").clearAll();}; -exports.getMessages = function() { return require_real("messages").getMessages();}; -exports.status = function() { return require_real("messages").status();}; -exports.buzz = function() { return require_real("messages").buzz(msgSrc);}; -exports.stopBuzz = function() { return require_real("messages").stopBuzz();}; diff --git a/apps/messagesoverlay/metadata.json b/apps/messagesoverlay/metadata.json index be80150e7..500de5f66 100644 --- a/apps/messagesoverlay/metadata.json +++ b/apps/messagesoverlay/metadata.json @@ -1,7 +1,7 @@ { "id": "messagesoverlay", "name": "Messages Overlay", - "version": "0.03", + "version": "0.04", "description": "An overlay based implementation of a messages UI (display notifications from iOS and Gadgetbridge/Android)", "icon": "app.png", "type": "bootloader", @@ -11,7 +11,7 @@ "readme": "README.md", "storage": [ {"name":"messagesoverlay","url":"lib.js"}, - {"name":"messagesoverlay.boot.js","url":"boot.js"} + {"name":"messagesoverlay.0.boot.js","url":"boot.js"} ], "screenshots": [{"url":"screen_call.png"} ,{"url":"screen_message.png"} ] } From 784c7b203a759ee9819c87d171d06e719df31423 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 12 Jul 2023 21:46:01 +0100 Subject: [PATCH 1692/1725] rep: fix interface.html typo --- apps/rep/interface.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/rep/interface.html b/apps/rep/interface.html index fa137bdb2..99ec1c890 100644 --- a/apps/rep/interface.html +++ b/apps/rep/interface.html @@ -59,8 +59,8 @@ function renderRep(rep) { } buttonDelete.appendChild(iconDelete); buttonDelete.onclick = (e => { - reps = reps.filter(a => a !== alarm); - document.getElementById("events").removeChild(tr); + reps = reps.filter(a => a !== rep); + document.getElementById("repsTable").removeChild(tr); }); } tdInfo.appendChild(buttonDelete); From 94ebd6bf4902f3655efbdeb91c695ea698634ae0 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 12 Jul 2023 22:05:25 +0100 Subject: [PATCH 1693/1725] rep: setUI() on init, in case recorder cleared handlers --- apps/rep/app.js | 3 ++- apps/rep/app.ts | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/rep/app.js b/apps/rep/app.js index 8172bc362..692164cc3 100644 --- a/apps/rep/app.js +++ b/apps/rep/app.js @@ -184,7 +184,7 @@ var _a, _b, _c; State.prototype.currentRepIndex = function () { var elapsed = this.getElapsedTotal(); var ent; - for (var i = 0; (ent = reps_1[i]); i++) + for (var i = 0; ent = reps_1[i]; i++) if (elapsed < ent.accDur) return i; return null; @@ -252,6 +252,7 @@ var _a, _b, _c; }; var init = function () { g.clear(); + layout_1.setUI(); drawRep_1(); Bangle.drawWidgets(); }; diff --git a/apps/rep/app.ts b/apps/rep/app.ts index 181ccd921..d34e2bca1 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -316,6 +316,7 @@ const buzzNewRep = () => { const init = () => { g.clear(); + layout.setUI(); drawRep(); Bangle.drawWidgets(); From e46e2bd5a18f6ca972cecc10c7ffa5a7489ceec3 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Wed, 12 Jul 2023 22:08:55 +0100 Subject: [PATCH 1694/1725] rep: changelog --- apps/rep/ChangeLog | 2 ++ apps/rep/metadata.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 apps/rep/ChangeLog diff --git a/apps/rep/ChangeLog b/apps/rep/ChangeLog new file mode 100644 index 000000000..142fd767e --- /dev/null +++ b/apps/rep/ChangeLog @@ -0,0 +1,2 @@ +0.01: New app! +0.02: Fixed interaction with recorder UI listeners diff --git a/apps/rep/metadata.json b/apps/rep/metadata.json index 4b34175c8..f3c00da10 100644 --- a/apps/rep/metadata.json +++ b/apps/rep/metadata.json @@ -1,7 +1,7 @@ { "id": "rep", "name": "Rep", - "version":"0.01", + "version":"0.02", "description": "Time running reps, using a rep schedule/program uploaded via the app loader", "icon": "app.png", "tags": "run,running,fitness,outdoors", From 86f78c1f0b4d62957b6e3782b16e21e218718f58 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Thu, 13 Jul 2023 19:11:29 +0200 Subject: [PATCH 1695/1725] messagesoverlay - Don't handle nav messages --- apps/messagesoverlay/lib.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/messagesoverlay/lib.js b/apps/messagesoverlay/lib.js index ed5a4d9b9..0ebe78918 100644 --- a/apps/messagesoverlay/lib.js +++ b/apps/messagesoverlay/lib.js @@ -434,6 +434,7 @@ let ovr; exports.message = function(type, event) { // only handle some event types if(!(type=="text" || type == "call")) return; + if(type=="text" && event.id == "nav") return; if(event.handled) return; bpp = 4; From 7f0f8cc51a3cafb4d3b179593bc9dc304cd156c8 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Thu, 13 Jul 2023 18:15:08 +0100 Subject: [PATCH 1696/1725] rep: clarify assignment-and-test --- apps/rep/app.js | 2 +- apps/rep/app.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/rep/app.js b/apps/rep/app.js index 692164cc3..a30a96c09 100644 --- a/apps/rep/app.js +++ b/apps/rep/app.js @@ -184,7 +184,7 @@ var _a, _b, _c; State.prototype.currentRepIndex = function () { var elapsed = this.getElapsedTotal(); var ent; - for (var i = 0; ent = reps_1[i]; i++) + for (var i = 0; (ent = reps_1[i]); i++) if (elapsed < ent.accDur) return i; return null; diff --git a/apps/rep/app.ts b/apps/rep/app.ts index d34e2bca1..d1dd67179 100644 --- a/apps/rep/app.ts +++ b/apps/rep/app.ts @@ -233,7 +233,7 @@ class State { currentRepIndex() { const elapsed = this.getElapsedTotal(); let ent; - for(let i = 0; ent = reps[i]; i++) + for(let i = 0; (ent = reps[i]); i++) if(elapsed < ent.accDur) return i; return null; From 35dd5b143ae9063237cc52954bbbc104f3708190 Mon Sep 17 00:00:00 2001 From: f-teacher <97449225+f-teacher@users.noreply.github.com> Date: Fri, 14 Jul 2023 11:00:01 +0930 Subject: [PATCH 1697/1725] Update README.md Added description of Karvonnen zones, of the displays, how to navigate, and the necessary settings for it to work properly. --- apps/runplus/README.md | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/apps/runplus/README.md b/apps/runplus/README.md index 659cd964d..1776e1186 100644 --- a/apps/runplus/README.md +++ b/apps/runplus/README.md @@ -1,12 +1,10 @@ # Run App -This app allows you to display the status of your run, it -shows distance, time, steps, cadence, pace and more. +Displays distance, time, steps, cadence, pace and heart rate for runners. Based on the Run app, but extended with additional screen for heart rate based training, based on the Karvonnen calculation method. +It requires the input of your minimum and maximum heart rate in the settings for the app to work. You can come back back to the initial run screen anytime by swimping left. +To use it, start the app and press the middle button so that the red STOP in the bottom right turns to a green `RUN`. -To use it, start the app and press the middle button so that -the red `STOP` in the bottom right turns to a green `RUN`. - -## Display +## Display 1st screen * `DIST` - the distance travelled based on the GPS (if you have a GPS lock). * NOTE: this is based on the GPS coordinates which are not 100% accurate, especially initially. As @@ -23,6 +21,11 @@ so if you have no GPS lock you just need to wait. * The current time is displayed right at the bottom of the screen * `RUN/STOP` - whether the distance for your run is being displayed or not +## Display 2nd screen + +Unlock the screen and navigate between displays by swiping left or right. +The upper number is the limit before next heart rate zone. The lower number is the limit before previous heart rate zone. The number in the middle is the heart rate. The Z1 to Z5 number indicates the heart rate zone where you are. The circle provides a quick visualisation of the hr zone in which you are. + ## Recording Tracks When the `Recorder` app is installed, `Run` will automatically start and stop tracks @@ -55,10 +58,12 @@ your distance, steps, or time repeatedly pass your configured thresholds * `Dist Pattern`: The vibration pattern to use to notify you about meeting your distance threshold * `Step Pattern`: The vibration pattern to use to notify you about meeting your step threshold * `Time Pattern`: The vibration pattern to use to notify you about meeting your time threshold + * `min hr`: Input your minimum heart rate (measure it as you wake up, prior to any movement) + * `max hr`: Input your maximum heart rate ## TODO -* Keep a log of each run's stats (distance/steps/etc) +* Keep a log of each run's stats (distance/steps/time in each hr zone/etc) ## Development From 98fb9ff01840be004b502c0c8f760cfd0227e863 Mon Sep 17 00:00:00 2001 From: v-crispadvice Date: Fri, 14 Jul 2023 13:16:56 +0300 Subject: [PATCH 1698/1725] Fix fast-loading support --- apps/flashcards/ChangeLog | 9 +- apps/flashcards/README.md | 2 +- apps/flashcards/app.js | 333 +++++++++++------------ apps/flashcards/flashcards.settings.json | 2 +- apps/flashcards/metadata.json | 2 +- apps/flashcards/settings.js | 4 +- 6 files changed, 176 insertions(+), 176 deletions(-) diff --git a/apps/flashcards/ChangeLog b/apps/flashcards/ChangeLog index 21b246bda..6f9ed7196 100644 --- a/apps/flashcards/ChangeLog +++ b/apps/flashcards/ChangeLog @@ -1,4 +1,5 @@ -1.0: Local cards data -1.1: Download cards data from Trello public board -1.2: Configuration instructions added and card layout optimized -1.3: Font size can be changed in Settings +1.00: Local cards data +1.10: Download cards data from Trello public board +1.20: Configuration instructions added and card layout optimized +1.30: Font size can be changed in Settings +1.31: Fix for fast-loading support \ No newline at end of file diff --git a/apps/flashcards/README.md b/apps/flashcards/README.md index b053c25ac..484d1102f 100644 --- a/apps/flashcards/README.md +++ b/apps/flashcards/README.md @@ -10,7 +10,7 @@ Configuration: 4. Add ".json" to the end of the Trello board URL and refresh page 5. Find your list ID 6. Save list ID to the "flashcards.settings.json" file on your watch, e.g.: -{"listId":"65942f7b27z68000996ddc00","fontSize":1,"cardWidth":9,"swipeGesture":0} +{"listId":"65942f7b27z68000996ddc00","fontSize":1,"cardWidth":9,"swipeGesture":1} 7. Connect phone with Gadgetbridge to the watch 8. Enable "Allow Internet Access" in Gadgetbridge 9. On the watch go to Settings -> Apps -> Flash Cards -> Get from Trello diff --git a/apps/flashcards/app.js b/apps/flashcards/app.js index 5fa2e6de7..d2118f8cb 100644 --- a/apps/flashcards/app.js +++ b/apps/flashcards/app.js @@ -2,186 +2,185 @@ * Copyright 2023 Crisp Advice * We believe in Finnish */ +{ + // Modules + let Layout = require("Layout"); + let locale = require("locale"); + let storage = require("Storage"); -// Modules -var Layout = require("Layout"); -var locale = require("locale"); -var storage = require("Storage"); + // Global variables + const SWAP_SIDE_BUZZ_MILLISECONDS = 50; + const CARD_DATA_FILE = "flashcards.data.json"; + const CARD_SETTINGS_FILE = "flashcards.settings.json"; + const CARD_EMPTY = "no cards found"; + + let cards = []; + let cardIndex = 0; + let backSide = false; + let drawTimeout; + let fontSizes = ["15%","20%","25%"]; + let lastDragX = 0; + let lastDragY = 0; -// Global variables -let SWAP_SIDE_BUZZ_MILLISECONDS = 50; -let CARD_DATA_FILE = "flashcards.data.json"; -let CARD_SETTINGS_FILE = "flashcards.settings.json"; -let CARD_EMPTY = "no cards found"; -let cards = []; -let cardIndex = 0; -let backSide = false; -let drawTimeout; -let fontSizes = ["15%","20%","25%"]; -let lastDragX = 0; -let lastDragY = 0; + let settings = Object.assign({ + listId: "", + fontSize: 1, + cardWidth: 9, + swipeGesture: 1 + }, storage.readJSON(CARD_SETTINGS_FILE, true) || {}); -let settings = Object.assign({ - listId: "", - fontSize: 1, - cardWidth: 9, - swipeGesture: 0 -}, storage.readJSON(CARD_SETTINGS_FILE, true) || {}); - -// Cards data -function wordWrap(textStr, maxLength) { - if (maxLength == undefined) { - maxLength = settings.cardWidth; - } - let res = ''; - let str = textStr.trim(); - while (str.length > maxLength) { - let found = false; - // Inserts new line at first whitespace of the line - for (i = maxLength - 1; i > 0; i--) { - if (str.charAt(i)==' ') { - res = res + [str.slice(0, i), "\n"].join(''); - str = str.slice(i + 1); - found = true; - break; + // Cards data + let wordWrap = function (textStr, maxLength) { + if (maxLength == undefined) { + maxLength = settings.cardWidth; + } + let res = ''; + let str = textStr.trim(); + while (str.length > maxLength) { + let found = false; + // Inserts new line at first whitespace of the line + for (i = maxLength - 1; i > 0; i--) { + if (str.charAt(i)==' ') { + res = res + [str.slice(0, i), "\n"].join(''); + str = str.slice(i + 1); + found = true; + break; + } + } + // Inserts new line at MAX_LENGTH position, the word is too long to wrap + if (!found) { + res += [str.slice(0, maxLength), "\n"].join(''); + str = str.slice(maxLength); } } - // Inserts new line at MAX_LENGTH position, the word is too long to wrap - if (!found) { - res += [str.slice(0, maxLength), "\n"].join(''); - str = str.slice(maxLength); - } + return res + str; } - return res + str; -} -function loadLocalCards() { - var cardsJSON = ""; - if (storage.read(CARD_DATA_FILE)) + let loadLocalCards = function() { + var cardsJSON = ""; + if (storage.read(CARD_DATA_FILE)) + { + cardsJSON = storage.readJSON(CARD_DATA_FILE, 1) || {}; + } + refreshCards(cardsJSON,false); + } + + let refreshCards = function(cardsJSON,showMsg) { - cardsJSON = storage.readJSON(CARD_DATA_FILE, 1) || {}; - } - refreshCards(cardsJSON,false); -} + cardIndex = 0; + backSide = false; + cards = []; -function refreshCards(cardsJSON,showMsg) -{ - cardIndex = 0; - backSide = false; - cards = []; + if (cardsJSON && cardsJSON.length) { + cardsJSON.forEach(card => { + cards.push([ wordWrap(card.name), wordWrap(card.desc) ]); + }); + } - if (cardsJSON && cardsJSON.length) { - cardsJSON.forEach(card => { - cards.push([ wordWrap(card.name), wordWrap(card.desc) ]); - }); - } - - if (!cards.length) { - cards.push([ wordWrap(CARD_EMPTY), wordWrap(CARD_EMPTY) ]); - drawMessage("e: cards not found"); - } else if (showMsg) { - drawMessage("i: cards refreshed"); - } -} - -// Drawing a card -let queueDraw = function() { - let timeout = 60000; - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = setTimeout(function() { - drawTimeout = undefined; - draw(); - }, timeout - (Date.now() % timeout)); -}; - -let cardLayout = new Layout( { - type:"v", c: [ - {type:"txt", font:"6x8:3", label:"", id:"widgets", fillx:1 }, - {type:"txt", font:fontSizes[settings.fontSize], label:"ABCDEFGHIJ KLMNOPQRST UVWXYZÅÖÄ", filly:1, fillx:1, id:"card" }, - {type:"txt", font:"6x8:2", label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg } - ] -}, {lazy:true}); - -function drawCard() { - cardLayout.card.label = cards[cardIndex][backSide ? 1 : 0]; - cardLayout.clock.label = locale.time(new Date(),1); - cardLayout.render(); -} - -function drawMessage(msg) { - cardLayout.card.label = wordWrap(msg); - cardLayout.render(); - console.log(msg); -} - -function draw() { - drawCard(); - Bangle.drawWidgets(); - queueDraw(); -} - -function swipeCard(forward) -{ - if(forward) { - cardIndex = (cardIndex + 1) % cards.length; - } - else if(--cardIndex < 0) { - cardIndex = cards.length - 1; - } - drawCard(); -} - -// Handle a touch: swap card side -function handleTouch(zone, event) { - backSide = !backSide; - drawCard(); - Bangle.buzz(SWAP_SIDE_BUZZ_MILLISECONDS); -} - -// Handle a stroke event: cycle cards -function handleStroke(event) { - let first_x = event.xy[0]; - let last_x = event.xy[event.xy.length - 2]; - swipeCard((last_x - first_x) > 0); -} - -// Handle a drag event: cycle cards -function handleDrag(event) { - let isFingerReleased = (event.b === 0); - if(isFingerReleased) { - let isHorizontalDrag = (Math.abs(lastDragX) >= Math.abs(lastDragY)) && - (lastDragX !== 0); - if(isHorizontalDrag) { - swipeCard(lastDragX > 0); + if (!cards.length) { + cards.push([ wordWrap(CARD_EMPTY), wordWrap(CARD_EMPTY) ]); + drawMessage("e: cards not found"); + } else if (showMsg) { + drawMessage("i: cards refreshed"); } } - else { - lastDragX = event.dx; - lastDragY = event.dy; + + // Drawing a card + let queueDraw = function() { + let timeout = 60000; + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(function() { + drawTimeout = undefined; + draw(); + }, timeout - (Date.now() % timeout)); + }; + + let cardLayout = new Layout( { + type:"v", c: [ + {type:"txt", font:"6x8:3", label:"", id:"widgets", fillx:1 }, + {type:"txt", font:fontSizes[settings.fontSize], label:"ABCDEFGHIJ KLMNOPQRST UVWXYZÅÖÄ", filly:1, fillx:1, id:"card" }, + {type:"txt", font:"6x8:2", label:"00:00", id:"clock", fillx:1, bgCol:g.theme.fg, col:g.theme.bg } + ] + }, {lazy:true}); + + let drawCard = function() { + cardLayout.card.label = cards[cardIndex][backSide ? 1 : 0]; + cardLayout.clock.label = locale.time(new Date(),1); + cardLayout.render(); } + + let drawMessage = function(msg) { + cardLayout.card.label = wordWrap(msg); + cardLayout.render(); + console.log(msg); + } + + let draw = function() { + drawCard(); + Bangle.drawWidgets(); + queueDraw(); + } + + let swipeCard = function(forward) + { + if(forward) { + cardIndex = (cardIndex + 1) % cards.length; + } + else if(--cardIndex < 0) { + cardIndex = cards.length - 1; + } + drawCard(); + } + + // Handle a touch: swap card side + let handleTouch = function(zone, event) { + backSide = !backSide; + drawCard(); + Bangle.buzz(SWAP_SIDE_BUZZ_MILLISECONDS); + } + + // Handle a stroke event: cycle cards + let handleStroke = function(event) { + let first_x = event.xy[0]; + let last_x = event.xy[event.xy.length - 2]; + swipeCard((last_x - first_x) > 0); + } + + // Handle a drag event: cycle cards + let handleDrag = function(event) { + let isFingerReleased = (event.b === 0); + if(isFingerReleased) { + let isHorizontalDrag = (Math.abs(lastDragX) >= Math.abs(lastDragY)) && + (lastDragX !== 0); + if(isHorizontalDrag) { + swipeCard(lastDragX > 0); + } + } + else { + lastDragX = event.dx; + lastDragY = event.dy; + } + } + + // Ensure pressing the button goes to the launcher (by making this seem like a clock?) + Bangle.setUI({mode:"clock", remove:function() { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = undefined; + Bangle.removeListener("touch", handleTouch); + if (settings.swipeGesture) { Bangle.removeListener("drag", handleDrag);} else { Bangle.removeListener("stroke", handleStroke); } + }}); + + // initialize + cardLayout.update(); + Bangle.loadWidgets(); + loadLocalCards(); + + Bangle.on("touch", handleTouch); + if (settings.swipeGesture) { Bangle.on("drag", handleDrag); } else { Bangle.on("stroke", handleStroke); } + + // On start: display the first card + g.clear(); + draw(); } -// Ensure pressing the button goes to the launcher (by making this seem like a clock?) -Bangle.setUI({mode:"clock"/*, remove:function() { - // Code to enable fast load. NOTE: this doesn't work on this app because all - // functions and vars are declared global: https://www.espruino.com/Bangle.js+Fast+Load - if (drawTimeout) clearTimeout(drawTimeout); - drawTimeout = undefined; - Bangle.removeListener("touch", handleTouch); - if (settings.swipeGesture) { Bangle.removeListener("drag", handleDrag);} else { Bangle.removeListener("stroke", handleStroke); } -}*/}); - -// initialize -cardLayout.update(); -Bangle.loadWidgets(); -loadLocalCards(); - -Bangle.on("touch", handleTouch); -if (settings.swipeGesture) { Bangle.on("drag", handleDrag); } else { Bangle.on("stroke", handleStroke); } - -// On start: display the first card -g.clear(); -draw(); - - diff --git a/apps/flashcards/flashcards.settings.json b/apps/flashcards/flashcards.settings.json index 1bb8fcf22..7c8ef545b 100644 --- a/apps/flashcards/flashcards.settings.json +++ b/apps/flashcards/flashcards.settings.json @@ -1 +1 @@ -{"listId":"","fontSize":1,"cardWidth":9,"swipeGesture":0} +{"listId":"","fontSize":1,"cardWidth":9,"swipeGesture":1} diff --git a/apps/flashcards/metadata.json b/apps/flashcards/metadata.json index 89bb72109..096e7e918 100644 --- a/apps/flashcards/metadata.json +++ b/apps/flashcards/metadata.json @@ -2,7 +2,7 @@ "id": "flashcards", "name": "Flash Cards", "shortName": "Flash Cards", - "version": "1.3", + "version": "1.31", "description": "Flash cards based on public Trello board", "readme":"README.md", "screenshots" : [ { "url":"screenshot.png" }], diff --git a/apps/flashcards/settings.js b/apps/flashcards/settings.js index a6df1db4c..cc03349b4 100644 --- a/apps/flashcards/settings.js +++ b/apps/flashcards/settings.js @@ -10,7 +10,7 @@ listId: "", fontSize: 1, cardWidth: 9, - swipeGesture: 0 + swipeGesture: 1 }, storage.readJSON(settingsFile, true) || {}); function writeSettings() { @@ -24,7 +24,7 @@ "< Back" : () => back(), /*LANG*/"Get from Trello": () => { if (!storage.read(settingsFile)) { writeSettings();} - E.showPrompt("Download cards?").then((v) => { + E.showPrompt(/*LANG*/"Download cards?").then((v) => { let delay = 500; if (v) { if (Bangle.http) From f4740b149b5649bf0328210de1414ce56c4fb839 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 14 Jul 2023 13:16:40 +0100 Subject: [PATCH 1699/1725] messageslist: Fix invalid use of Bangle.setUI --- apps/messagelist/ChangeLog | 1 + apps/messagelist/app.js | 4 +++- apps/messagelist/metadata.json | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/messagelist/ChangeLog b/apps/messagelist/ChangeLog index 8db873bb9..37854d8ae 100644 --- a/apps/messagelist/ChangeLog +++ b/apps/messagelist/ChangeLog @@ -1,2 +1,3 @@ 0.01: New app! 0.02: Fix music updates while app is already open +0.03: Fix invalid use of Bangle.setUI \ No newline at end of file diff --git a/apps/messagelist/app.js b/apps/messagelist/app.js index 3e71f9544..dfa7e43d4 100644 --- a/apps/messagelist/app.js +++ b/apps/messagelist/app.js @@ -86,7 +86,8 @@ const setUI = function(options, cb) { delete Bangle.uiRemove; // don't clear out things when switching UI within the app - options = Object.assign({remove: () => uiRemove()}, options); + options = Object.assign({mode:"custom", remove: () => uiRemove()}, options); + // If options={} assume we still want `remove` to be called when leaving via fast load (so we must have 'mode:custom') Bangle.setUI(options, cb); }; @@ -1164,6 +1165,7 @@ // Internal setUI suppresses Bangle.uiRemove between internal screens, so we // need to call setUI to run uiRemove from previous app when fast-loaded. + // GW: This shouldn't be needed! When fast loading setUI() gets called automatically Bangle.setUI(); Bangle.loadWidgets(); require("messages").toggleWidget(false); diff --git a/apps/messagelist/metadata.json b/apps/messagelist/metadata.json index 72404263f..37fed5795 100644 --- a/apps/messagelist/metadata.json +++ b/apps/messagelist/metadata.json @@ -1,7 +1,7 @@ { "id": "messagelist", "name": "Message List", - "version": "0.02", + "version": "0.03", "description": "Display notifications from iOS and Gadgetbridge/Android as a list", "icon": "app.png", "type": "app", From da9c60f4a20d36e06f0cbb9761e7758acee876f9 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 14 Jul 2023 18:34:29 +0200 Subject: [PATCH 1700/1725] gpstrek - Remove unused osmand namespace --- apps/gpstrek/convert.xsl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/gpstrek/convert.xsl b/apps/gpstrek/convert.xsl index 7afbd6813..72b19b565 100644 --- a/apps/gpstrek/convert.xsl +++ b/apps/gpstrek/convert.xsl @@ -1,5 +1,5 @@ - + From 5a7fca1511bb5064703ac1ff358b4b482c13e395 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Fri, 14 Jul 2023 18:34:51 +0200 Subject: [PATCH 1701/1725] gpstrek - Allow GPX 1.0 to be parsed --- apps/gpstrek/interface.html | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/gpstrek/interface.html b/apps/gpstrek/interface.html index 1f6ed1f37..b645abb53 100644 --- a/apps/gpstrek/interface.html +++ b/apps/gpstrek/interface.html @@ -15,6 +15,9 @@ function handleOnload(readerEvent){ var content = readerEvent.target.result; + // Replace the gpx version 1.0 with 1.1 to allow parsing older gpx files. The nodes referenced by the xsl exist in both versions. + content = content.replaceAll("http://www.topografix.com/GPX/1/0", "http://www.topografix.com/GPX/1/1"); + var xsltProcessor = new XSLTProcessor(); var myXMLHTTPRequest = new XMLHttpRequest(); From 077156c559b1c540da12dd821288d396bedaec00 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 14 Jul 2023 21:04:21 +0100 Subject: [PATCH 1702/1725] multitimer: fix hardmode in new alarms/timers --- apps/multitimer/app.js | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index ae8647db0..677b971ef 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -265,7 +265,6 @@ function editTimer(idx, a) { a.last = 0; a.data.ot = a.timer; a.appid = "multitimer"; - a.js = "(require('Storage').read('multitimer.alarm.js') !== undefined) ? load('multitimer.alarm.js') : load('sched.js')"; if (idx < 0) alarms.push(a); else alarms[timerIdx[idx]] = a; require("sched").setAlarms(alarms); From 9b805d4692e69c7006ffa2bf80f86b77182cf784 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 14 Jul 2023 21:29:58 +0100 Subject: [PATCH 1703/1725] multitimer: version bump --- apps/multitimer/ChangeLog | 1 + apps/multitimer/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/multitimer/ChangeLog b/apps/multitimer/ChangeLog index 842384c8d..27cfd17a5 100644 --- a/apps/multitimer/ChangeLog +++ b/apps/multitimer/ChangeLog @@ -2,3 +2,4 @@ 0.02: Update for time_utils module 0.03: Use default Bangle formatter for booleans 0.04: Remove copied sched alarm.js & import newer features (oneshot alarms) +0.05: Fix creating new alarms/timers in hardmode diff --git a/apps/multitimer/metadata.json b/apps/multitimer/metadata.json index 7a23052c9..1db3235a1 100644 --- a/apps/multitimer/metadata.json +++ b/apps/multitimer/metadata.json @@ -1,7 +1,7 @@ { "id": "multitimer", "name": "Multi Timer", - "version": "0.04", + "version": "0.05", "description": "Set timers and chronographs (stopwatches) and watch them count down in real time. Pause, create, edit, and delete timers and chronos, and add custom labels/messages. Also sets alarms.", "icon": "app.png", "screenshots": [ From 696623c6598fa072b5e19b39b98385d005045f17 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Fri, 14 Jul 2023 22:36:38 +0200 Subject: [PATCH 1704/1725] openstmap: current position overlay - Draw a current position marker (Bangle.js 2 only) - Enable/Disable previous position marker in new setting "Draw cont. position" --- apps/openstmap/ChangeLog | 4 +++- apps/openstmap/app.js | 30 ++++++++++++++++++++++++++++-- apps/openstmap/metadata.json | 2 +- 3 files changed, 32 insertions(+), 4 deletions(-) diff --git a/apps/openstmap/ChangeLog b/apps/openstmap/ChangeLog index 6b5e8172b..3d08bdf46 100644 --- a/apps/openstmap/ChangeLog +++ b/apps/openstmap/ChangeLog @@ -23,4 +23,6 @@ 0.19: Remember latitude, longitude & scale 0.20: Make Satellite counter widget 24px wide (was 48) Move 'Center GPS' to the top of the menu - If 'Recorder' app installed, add a 'Record' menu item \ No newline at end of file + If 'Recorder' app installed, add a 'Record' menu item +0.21: Draw a current position marker (Bangle.js 2 only) + Enable/Disable previous position marker in new setting "Draw cont. position" diff --git a/apps/openstmap/app.js b/apps/openstmap/app.js index 2afe56751..1a87b6d57 100644 --- a/apps/openstmap/app.js +++ b/apps/openstmap/app.js @@ -25,10 +25,12 @@ function redraw() { m.lat = m.map.lat; m.lon = m.map.lon; m.scale = m.map.scale; + checkMapPos = false; m.draw(); } drawPOI(); drawMarker(); + drawLocation(); // if track drawing is enabled... if (settings.drawTrack) { if (HASWIDGETS && WIDGETS["gpsrec"] && WIDGETS["gpsrec"].plotTrack) { @@ -67,16 +69,35 @@ function drawPOI() { // Draw the marker for where we are function drawMarker() { - if (!fix.fix) return; + if (!fix.fix || !settings.drawMarker) return; var p = m.latLonToXY(fix.lat, fix.lon); g.setColor(1,0,0); g.fillRect(p.x-2, p.y-2, p.x+2, p.y+2); } +// Draw current location with LCD Overlay (Bangle.js 2 only) +function drawLocation() { + if (!Bangle.setLCDOverlay) { + return; // Overlay not supported + } + + if (!fix.fix || !mapVisible) { + Bangle.setLCDOverlay(); // clear if map is not visible or no fix + return; + } + + const icon = require("heatshrink").decompress(atob("jEYwYPMyVJkgHEkgICyAHCgIIDyQIChIIEoAIDC4IIEBwOAgEEyVIBAY4DBD4sGHxBQIMRAIIPpAyCHAYILUJEAiVJkAIFgVJXo5fCABQA==")); // 24x24px + var p = m.latLonToXY(fix.lat, fix.lon); + Bangle.setLCDOverlay(icon, p.x-24/2, p.y-24); +} + Bangle.on('GPS',function(f) { fix=f; if (HASWIDGETS && WIDGETS["sats"]) WIDGETS["sats"].draw(WIDGETS["sats"]); - if (mapVisible) drawMarker(); + if (mapVisible) { + drawMarker(); + drawLocation(); + } }); Bangle.setGPSPower(1, "app"); @@ -105,6 +126,7 @@ function showMenu() { if (plotTrack && plotTrack.stop) plotTrack.stop(); mapVisible = false; + drawLocation(); var menu = { "":{title:/*LANG*/"Map"}, "< Back": ()=> showMap(), @@ -128,6 +150,10 @@ function showMenu() { value : !!settings.drawTrack, onchange : v => { settings.drawTrack=v; writeSettings(); } }, + /*LANG*/"Draw cont. position": { + value : !!settings.drawMarker, + onchange : v => { settings.drawMarker=v; writeSettings(); } + }, /*LANG*/"Center Map": () =>{ m.lat = m.map.lat; m.lon = m.map.lon; diff --git a/apps/openstmap/metadata.json b/apps/openstmap/metadata.json index 0ece4397e..1b4ab2d7c 100644 --- a/apps/openstmap/metadata.json +++ b/apps/openstmap/metadata.json @@ -2,7 +2,7 @@ "id": "openstmap", "name": "OpenStreetMap", "shortName": "OpenStMap", - "version": "0.20", + "version": "0.21", "description": "Loads map tiles from OpenStreetMap onto your Bangle.js and displays a map of where you are. Once installed this also adds map functionality to `GPS Recorder` and `Recorder` apps", "readme": "README.md", "icon": "app.png", From 611fc9310b58cd71de39b9262887f018cf8681fc Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 14 Jul 2023 22:14:37 +0100 Subject: [PATCH 1705/1725] multitimer: add fastloading --- apps/multitimer/app.js | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index ae8647db0..79ff2495f 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -1,3 +1,4 @@ +{ Bangle.loadWidgets(); Bangle.drawWidgets(); @@ -112,6 +113,7 @@ function drawTimers() { else if (idx > 0 && idx < timers.length+1) timerMenu(idx-1); } }); + setUI(); } function timerMenu(idx) { @@ -256,6 +258,7 @@ function editTimer(idx, a) { E.showAlert("Must install keyboard app").then(function() { editTimer(idx, a); }); + setUI(); } var menu = { @@ -325,6 +328,7 @@ function editTimer(idx, a) { }; E.showMenu(menu); + setUI(); } function drawSw() { @@ -414,6 +418,7 @@ function swMenu(idx, a) { E.showAlert("Must install keyboard app").then(function() { swMenu(idx, a); }); + setUI(); } var s = E.showScroller({ @@ -551,6 +556,7 @@ function editDOW(dow, onchange) { }; })(i); E.showMenu(menu); + setUI(); } function editAlarm(idx, a) { @@ -590,6 +596,7 @@ function editAlarm(idx, a) { E.showAlert("Must install keyboard app").then(function() { editAlarm(idx, a); }); + setUI(); } var menu = { @@ -663,11 +670,20 @@ function editAlarm(idx, a) { }; E.showMenu(menu); + setUI(); } -drawTimers(); +function setUI() { + // E.showMenu/E.showScroller/E.showAlert call setUI, so we register onDrag() separately + // and tack on uiRemove after the fact to avoid interfering + Bangle.uiRemove = () => { + Bangle.removeListener("drag", onDrag); + Object.values(timerInt1).forEach(clearTimeout); + Object.values(timerInt2).forEach(clearTimeout); + }; +} -Bangle.on("drag", e=>{ +function onDrag(e) { if (layer < 0) return; if (!drag) { // start dragging drag = {x: e.x, y: e.y}; @@ -688,4 +704,9 @@ Bangle.on("drag", e=>{ else if (layer == 2) drawAlarms(); } } -}); +} + +drawTimers(); + +Bangle.on("drag", onDrag); +} From 5675a95a9414c3858764063c2fe6ef30563313ab Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 14 Jul 2023 22:15:56 +0100 Subject: [PATCH 1706/1725] multitimer: version bump --- apps/multitimer/ChangeLog | 1 + apps/multitimer/metadata.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/multitimer/ChangeLog b/apps/multitimer/ChangeLog index 842384c8d..e4985434e 100644 --- a/apps/multitimer/ChangeLog +++ b/apps/multitimer/ChangeLog @@ -2,3 +2,4 @@ 0.02: Update for time_utils module 0.03: Use default Bangle formatter for booleans 0.04: Remove copied sched alarm.js & import newer features (oneshot alarms) +0.05: Support fastloading diff --git a/apps/multitimer/metadata.json b/apps/multitimer/metadata.json index 7a23052c9..1db3235a1 100644 --- a/apps/multitimer/metadata.json +++ b/apps/multitimer/metadata.json @@ -1,7 +1,7 @@ { "id": "multitimer", "name": "Multi Timer", - "version": "0.04", + "version": "0.05", "description": "Set timers and chronographs (stopwatches) and watch them count down in real time. Pause, create, edit, and delete timers and chronos, and add custom labels/messages. Also sets alarms.", "icon": "app.png", "screenshots": [ From bbdf9439616cd46799cbf5d210e03365ac9f23e4 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Fri, 14 Jul 2023 21:29:04 +0100 Subject: [PATCH 1707/1725] dtlaunch: add interaction-buzz setting --- apps/dtlaunch/ChangeLog | 2 +- apps/dtlaunch/app-b2.js | 15 ++++++++++++++- apps/dtlaunch/metadata.json | 2 +- apps/dtlaunch/settings-b2.js | 12 ++++++++++-- 4 files changed, 26 insertions(+), 5 deletions(-) diff --git a/apps/dtlaunch/ChangeLog b/apps/dtlaunch/ChangeLog index 1155647ab..6c096f45b 100644 --- a/apps/dtlaunch/ChangeLog +++ b/apps/dtlaunch/ChangeLog @@ -28,4 +28,4 @@ immediately follows the correct theme. 0.22: Bangle 2: Change to not automatically marking the first app on a page when moving pages. Add caching for faster startups. 0.23: Bangle 1: Fix issue with missing icons, added touch screen interactions - +0.24: Add buzz-on-interaction setting diff --git a/apps/dtlaunch/app-b2.js b/apps/dtlaunch/app-b2.js index 2070f1147..a3ddd2538 100644 --- a/apps/dtlaunch/app-b2.js +++ b/apps/dtlaunch/app-b2.js @@ -9,7 +9,8 @@ showLaunchers: true, direct: false, swipeExit: false, - timeOut: "Off" + timeOut: "Off", + interactionBuzz: false, }, require('Storage').readJSON("dtlaunch.json", true) || {}); let s = require("Storage"); @@ -89,6 +90,13 @@ g.flip(); }; + let buzzShort = function() { + if (settings.interactionBuzz) Bangle.buzz(20); + }; + let buzzLong = function() { + if (settings.interactionBuzz) Bangle.buzz(100); + }; + Bangle.drawWidgets(); // To immediately update widget field to follow current theme - remove leftovers if previous app set custom theme. Bangle.loadWidgets(); drawPage(0); @@ -100,9 +108,11 @@ if(settings.swipeExit && dirLeftRight==1) Bangle.showClock(); if (dirUpDown==-1||dirLeftRight==-1){ ++page; if (page>maxPage) page=0; + buzzShort(); drawPage(page); } else if (dirUpDown==1||(dirLeftRight==1 && !settings.swipeExit)){ --page; if (page<0) page=maxPage; + buzzShort(); drawPage(page); } }; @@ -123,8 +133,10 @@ drawIcon(page,i,true && !settings.direct); if (selected>=0 || settings.direct) { if (selected!=i && !settings.direct){ + buzzShort(); drawIcon(page,selected,false); } else { + buzzLong(); load(apps[page*4+i].src); } } @@ -134,6 +146,7 @@ } } if ((i==4 || (page*4+i)>Napps) && selected>=0) { + buzzShort(); drawIcon(page,selected,false); selected=-1; } diff --git a/apps/dtlaunch/metadata.json b/apps/dtlaunch/metadata.json index 4262ebc26..5e25b61fb 100644 --- a/apps/dtlaunch/metadata.json +++ b/apps/dtlaunch/metadata.json @@ -1,7 +1,7 @@ { "id": "dtlaunch", "name": "Desktop Launcher", - "version": "0.23", + "version": "0.24", "description": "Desktop style App Launcher with six (four for Bangle 2) apps per page - fast access if you have lots of apps installed.", "screenshots": [{"url":"shot1.png"},{"url":"shot2.png"},{"url":"shot3.png"}], "icon": "icon.png", diff --git a/apps/dtlaunch/settings-b2.js b/apps/dtlaunch/settings-b2.js index 24959df8c..6a50f90d4 100644 --- a/apps/dtlaunch/settings-b2.js +++ b/apps/dtlaunch/settings-b2.js @@ -6,7 +6,8 @@ showLaunchers: true, direct: false, swipeExit: false, - timeOut: "Off" + timeOut: "Off", + interactionBuzz: false, }, require('Storage').readJSON(FILE, true) || {}); function writeSettings() { @@ -55,6 +56,13 @@ settings.timeOut = timeOutChoices[v]; writeSettings(); } - } + }, + /*LANG*/'Interaction buzz': { + value: settings.interactionBuzz, + onchange: v => { + settings.interactionBuzz = v; + writeSettings(); + } + }, }); }); From 6915b8d4c3a30070c8bfaf8dfaed95b41277da95 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 15 Jul 2023 15:04:32 +0200 Subject: [PATCH 1708/1725] messagesoverlay - Fix overlay keeping the LCD on --- apps/messagesoverlay/ChangeLog | 1 + apps/messagesoverlay/lib.js | 4 +++- apps/messagesoverlay/metadata.json | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/messagesoverlay/ChangeLog b/apps/messagesoverlay/ChangeLog index 832c1d45c..8ce792783 100644 --- a/apps/messagesoverlay/ChangeLog +++ b/apps/messagesoverlay/ChangeLog @@ -2,3 +2,4 @@ 0.02: Fix touch/drag/swipe handlers not being restored correctly if a message is removed 0.03: Scroll six lines per swipe, leaving the previous top/bottom row visible. 0.04: Use the event mechanism for getting messages +0.05: Fix the overlay keeping the LCD on diff --git a/apps/messagesoverlay/lib.js b/apps/messagesoverlay/lib.js index 0ebe78918..9af14bbe4 100644 --- a/apps/messagesoverlay/lib.js +++ b/apps/messagesoverlay/lib.js @@ -163,6 +163,7 @@ let showMessage = function(ovr, msg) { }; let drawBorder = function(ovr) { + LOG("drawBorder", isQuiet()); if (Bangle.isLocked()) ovr.setColor(ovr.theme.fgH); else @@ -170,7 +171,6 @@ let drawBorder = function(ovr) { ovr.drawRect(0,0,ovr.getWidth()-1,ovr.getHeight()-1); ovr.drawRect(1,1,ovr.getWidth()-2,ovr.getHeight()-2); show(ovr); - if (!isQuiet()) Bangle.setLCDPower(1); }; let showCall = function(ovr, msg) { @@ -432,6 +432,7 @@ let main = function(ovr, event) { let ovr; exports.message = function(type, event) { + LOG("Got message", type, event); // only handle some event types if(!(type=="text" || type == "call")) return; if(type=="text" && event.id == "nav") return; @@ -456,6 +457,7 @@ exports.message = function(type, event) { ovr.theme = { fg:0, bg:1, fg2:1, bg2:0, fgH:1, bgH:0 }; main(ovr, event); + if (!isQuiet()) Bangle.setLCDPower(1); event.handled = true; g = _g; }; diff --git a/apps/messagesoverlay/metadata.json b/apps/messagesoverlay/metadata.json index 500de5f66..a043fff64 100644 --- a/apps/messagesoverlay/metadata.json +++ b/apps/messagesoverlay/metadata.json @@ -1,7 +1,7 @@ { "id": "messagesoverlay", "name": "Messages Overlay", - "version": "0.04", + "version": "0.05", "description": "An overlay based implementation of a messages UI (display notifications from iOS and Gadgetbridge/Android)", "icon": "app.png", "type": "bootloader", From 8e4eb3f5faa51c54c99588a4a41cd56bac4ee955 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 15 Jul 2023 19:06:22 +0200 Subject: [PATCH 1709/1725] qmsched - Allow to use two theme files for switching themes --- apps/qmsched/app.js | 72 +++++++++++++++++++++++++++++++++++++++------ apps/qmsched/lib.js | 23 +++++++++++---- 2 files changed, 81 insertions(+), 14 deletions(-) diff --git a/apps/qmsched/app.js b/apps/qmsched/app.js index da43dd7d6..8e1141058 100644 --- a/apps/qmsched/app.js +++ b/apps/qmsched/app.js @@ -4,7 +4,8 @@ Bangle.drawWidgets(); const modeNames = [/*LANG*/"Off", /*LANG*/"Alarms", /*LANG*/"Silent"]; const B2 = process.env.HWVERSION===2; // load global settings -let bSettings = require('Storage').readJSON('setting.json',true)||{}; +const STORAGE = require('Storage'); +let bSettings = STORAGE.readJSON('setting.json',true)||{}; let current = 0|bSettings.quiet; delete bSettings; // we don't need any other global settings @@ -17,8 +18,8 @@ delete bSettings; // we don't need any other global settings * Save settings to qmsched.json */ function save() { - require('Storage').writeJSON('qmsched.json', settings); - eval(require('Storage').read('qmsched.boot.js')); // apply new schedules right away + STORAGE.writeJSON('qmsched.json', settings); + eval(STORAGE.read('qmsched.boot.js')); // apply new schedules right away } function get(key, def) { return (key in settings) ? settings[key] : def; @@ -37,12 +38,12 @@ let settings, * Load settings file, check if we need to migrate old setting formats to new */ function loadSettings() { - settings = require('Storage').readJSON("qmsched.json", true) || {}; + settings = STORAGE.readJSON("qmsched.json", true) || {}; if (Array.isArray(settings)) { // migrate old file (plain array of schedules, qmOptions stored in global settings file) - require("Storage").erase("qmsched.json"); // need to erase old file, or Things Break, somehow... - let bOptions = require('Storage').readJSON('setting.json',true)||{}; + STORAGE.erase("qmsched.json"); // need to erase old file, or Things Break, somehow... + let bOptions = STORAGE.readJSON('setting.json',true)||{}; settings = { options: bOptions.qmOptions || {}, scheds: settings, @@ -51,7 +52,7 @@ function loadSettings() { save(); // and clean up qmOptions from global settings file delete bOptions.qmOptions; - require('Storage').writeJSON('setting.json',bOptions); + STORAGE.writeJSON('setting.json',bOptions); } // apply defaults settings = Object.assign({ @@ -82,7 +83,7 @@ function formatTime(t) { * Apply theme */ function applyTheme() { - const theme = (require("Storage").readJSON("setting.json", 1) || {}).theme; + const theme = (STORAGE.readJSON("setting.json", 1) || {}).theme; if (theme && theme.dark===g.theme.dark) return; // already correct g.theme = theme; delete g.reset; @@ -95,6 +96,55 @@ function applyTheme() { m.draw(); } +/** + * This creates menu entries for setting themes. This code is lifted from the setting app. + * @returns + */ +function showThemeMenu(back, quiet){ + const option = quiet ? "quietTheme" : "normalTheme"; + function cl(x) { return g.setColor(x).getColor(); } + var themesMenu = { + '':{title:/*LANG*/'Theme', back: back}, + /*LANG*/'Dark BW': ()=>{ + set(option, { + fg:cl("#fff"), bg:cl("#000"), + fg2:cl("#fff"), bg2:cl("#004"), + fgH:cl("#fff"), bgH:cl("#00f"), + dark:true, + quiet: true + }); + back(); + }, + /*LANG*/'Light BW': ()=>{ + set(option, { + fg:cl("#000"), bg:cl("#fff"), + fg2:cl("#000"), bg2:cl("#cff"), + fgH:cl("#000"), bgH:cl("#0ff"), + dark:false, + quiet: true + }); + back(); + } + }; + + STORAGE.list(/^.*\.theme$/).forEach( + n => { + let newTheme = STORAGE.readJSON(n); + themesMenu[newTheme.name ? newTheme.name : n] = () => { + set(option, { + fg:cl(newTheme.fg), bg:cl(newTheme.bg), + fg2:cl(newTheme.fg2), bg2:cl(newTheme.bg2), + fgH:cl(newTheme.fgH), bgH:cl(newTheme.bgH), + dark:newTheme.dark, + quiet: quiet + }); + back(); + }; + } + ); + E.showMenu(themesMenu); +} + /** * Library uses this to make the app update itself * @param {int} mode New Quite Mode @@ -127,7 +177,7 @@ function showMainMenu() { value: !!get("switchTheme"), onchange: v => v ? set("switchTheme", v) : unset("switchTheme"), }; - menu[/*LANG*/"LCD Settings"] = () => showOptionsMenu(); + menu[/*LANG*/"Options"] = () => showOptionsMenu(); m = E.showMenu(menu); } @@ -251,6 +301,10 @@ function showOptionsMenu() { onchange: () => {toggle("wakeOnTwist");}, }, }; + + oMenu[/*LANG*/"Normal Theme"] = () => showThemeMenu(showOptionsMenu, false); + oMenu[/*LANG*/"Quiet Theme"] = () => showThemeMenu(showOptionsMenu, true); + m = E.showMenu(oMenu); } diff --git a/apps/qmsched/lib.js b/apps/qmsched/lib.js index 9696657cc..305092b90 100644 --- a/apps/qmsched/lib.js +++ b/apps/qmsched/lib.js @@ -3,23 +3,36 @@ * @param {int} mode Quiet Mode */ function switchTheme(mode) { - if (!!mode === g.theme.dark) return; // nothing to do let s = require("Storage").readJSON("setting.json", 1) || {}; + print("Theme is ", s.theme); + if (!!mode === s.theme.quiet) return; // nothing to do // default themes, copied from settings.js:showThemeMenu() function cl(x) { return g.setColor(x).getColor(); } - s.theme = mode ? { + + let q = require("Storage").readJSON("qmsched.json", 1) || {}; + let quietTheme = { // 'Dark BW' fg: cl("#fff"), bg: cl("#000"), fg2: cl("#0ff"), bg2: cl("#000"), fgH: cl("#fff"), bgH: cl("#00f"), - dark: true - } : { + dark: true, + quiet: true + }; + let normalTheme = { // 'Light BW' fg: cl("#000"), bg: cl("#fff"), fg2: cl("#000"), bg2: cl("#cff"), fgH: cl("#000"), bgH: cl("#0ff"), - dark: false + dark: false, + quiet: false }; + + if (q.normalTheme) normalTheme = q.normalTheme; + if (q.quietTheme) quietTheme = q.quietTheme; + + s.theme = mode ? quietTheme : normalTheme; + print("New theme is ", s.theme); + require("Storage").writeJSON("setting.json", s); // reload clocks with new theme, otherwise just wait for user to switch apps if (Bangle.CLOCK) load(global.__FILE__); From 6390350c7ed840adb126d7f23290f467209903be Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sat, 15 Jul 2023 19:15:07 +0200 Subject: [PATCH 1710/1725] qmsched - Bump version --- apps/qmsched/ChangeLog | 1 + apps/qmsched/README.md | 4 ++-- apps/qmsched/metadata.json | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/qmsched/ChangeLog b/apps/qmsched/ChangeLog index 88185f337..897d06c26 100644 --- a/apps/qmsched/ChangeLog +++ b/apps/qmsched/ChangeLog @@ -8,3 +8,4 @@ Changed time selection to 5-minute intervals 0.08: Support new Bangle.js 2 menu 0.09: Use default Bangle formatter for booleans +0.10: Allow using theme files diff --git a/apps/qmsched/README.md b/apps/qmsched/README.md index 660bda787..e55a92084 100644 --- a/apps/qmsched/README.md +++ b/apps/qmsched/README.md @@ -14,6 +14,6 @@ Automatically turn Quiet Mode on or off at set times, and display a widget when Switch to dark theme during Quiet Mode. * **NOTE**: This switches between the default "Dark BW" and "Light BW" themes, so custom theme settings will be lost. -### LCD Settings: +### Options: -If set, these override the default LCD settings while Quiet Mode is active. \ No newline at end of file +If set, these override the default LCD and theme settings while Quiet Mode is active. diff --git a/apps/qmsched/metadata.json b/apps/qmsched/metadata.json index 23bdbd2e4..26019b6ba 100644 --- a/apps/qmsched/metadata.json +++ b/apps/qmsched/metadata.json @@ -2,7 +2,7 @@ "id": "qmsched", "name": "Quiet Mode Schedule and Widget", "shortName": "Quiet Mode", - "version": "0.09", + "version": "0.10", "description": "Automatically turn Quiet Mode on or off at set times, change theme and LCD options while Quiet Mode is active.", "icon": "app.png", "screenshots": [{"url":"screenshot_b1_main.png"},{"url":"screenshot_b1_edit.png"},{"url":"screenshot_b1_lcd.png"}, From 8d2616da5856ab7e50a7628d922b1f021ce60f75 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 16 Jul 2023 10:45:22 +0200 Subject: [PATCH 1711/1725] keytimer - Use matching theme color for time display background --- apps/keytimer/ChangeLog | 3 ++- apps/keytimer/keypad.js | 3 ++- apps/keytimer/metadata.json | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/keytimer/ChangeLog b/apps/keytimer/ChangeLog index 1c3954fc7..789ab85a8 100644 --- a/apps/keytimer/ChangeLog +++ b/apps/keytimer/ChangeLog @@ -1,3 +1,4 @@ 0.01: New app! 0.02: Submitted to the app loader -0.03: Rewrote to use scheduler library \ No newline at end of file +0.03: Rewrote to use scheduler library +0.04: Use correct background color for number display diff --git a/apps/keytimer/keypad.js b/apps/keytimer/keypad.js index 5844c9a63..6b34d19f2 100644 --- a/apps/keytimer/keypad.js +++ b/apps/keytimer/keypad.js @@ -95,7 +95,8 @@ function getFontSize(length) { function updateDisplay() { let displayString = inputStringToDisplayString(common.state.inputString); - g.clearRect(0, 24, 175, 43).setColor(storage.readJSON('setting.json').theme.fg2).setFontAlign(1, -1).setFont("Vector", getFontSize(displayString.length)).drawString(displayString, 176, 24); + let t = storage.readJSON('setting.json').theme; + g.setBgColor(t.bg2).clearRect(0, 24, 175, 43).setColor(t.fg2).setFontAlign(1, -1).setFont("Vector", getFontSize(displayString.length)).drawString(displayString, 176, 24); } exports.show = function (callerCommon) { diff --git a/apps/keytimer/metadata.json b/apps/keytimer/metadata.json index e0e46f92f..43edf9957 100644 --- a/apps/keytimer/metadata.json +++ b/apps/keytimer/metadata.json @@ -1,7 +1,7 @@ { "id": "keytimer", "name": "Keypad Timer", - "version": "0.03", + "version": "0.04", "description": "A timer with a keypad that runs in the background", "icon": "icon.png", "type": "app", From 2fb27c315a61676ddd49b1e3b0d3ca24f253c24f Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 16 Jul 2023 11:08:31 +0200 Subject: [PATCH 1712/1725] keytimer - Center icons on timer view buttons --- apps/keytimer/timerview.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/keytimer/timerview.js b/apps/keytimer/timerview.js index 4910d805f..e3c4de478 100644 --- a/apps/keytimer/timerview.js +++ b/apps/keytimer/timerview.js @@ -17,11 +17,11 @@ function drawButtons() { .drawLine(g.getWidth() / 2, BAR_TOP, g.getWidth() / 2, g.getHeight()) //Draw the buttons - .drawImage(BUTTON_ICONS.reset, g.getWidth() / 4, BAR_TOP); + .drawImage(BUTTON_ICONS.reset, g.getWidth() / 4, BAR_TOP + 12, {rotate:0}); // rotate option centers the image if (common.running()) { - g.drawImage(BUTTON_ICONS.pause, g.getWidth() * 3 / 4, BAR_TOP); + g.drawImage(BUTTON_ICONS.pause, g.getWidth() * 3 / 4, BAR_TOP + 12, {rotate:0}); } else { - g.drawImage(BUTTON_ICONS.play, g.getWidth() * 3 / 4, BAR_TOP); + g.drawImage(BUTTON_ICONS.play, g.getWidth() * 3 / 4, BAR_TOP + 12, {rotate:0}); } } From 903995ca70cf8c0c52db31beaa464ba73d87be88 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 16 Jul 2023 11:29:29 +0200 Subject: [PATCH 1713/1725] keytimer - Use theme colors on timer display --- apps/keytimer/timerview.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/apps/keytimer/timerview.js b/apps/keytimer/timerview.js index e3c4de478..1b01fec6c 100644 --- a/apps/keytimer/timerview.js +++ b/apps/keytimer/timerview.js @@ -7,21 +7,25 @@ const BUTTON_ICONS = { let common; +let s = require("Storage").readJSON("setting.json"); + function drawButtons() { //Draw the backdrop const BAR_TOP = g.getHeight() - 24; - g.setColor(0, 0, 1).setFontAlign(0, -1) + g.setBgColor(s.theme.bg2).setColor(s.theme.fg2).setFontAlign(0, -1) .clearRect(0, BAR_TOP, g.getWidth(), g.getHeight()) - .fillRect(0, BAR_TOP, g.getWidth(), g.getHeight()) - .setColor(1, 1, 1) + .setColor(s.theme.fg2) .drawLine(g.getWidth() / 2, BAR_TOP, g.getWidth() / 2, g.getHeight()) //Draw the buttons + .setColor(s.theme.fg2) .drawImage(BUTTON_ICONS.reset, g.getWidth() / 4, BAR_TOP + 12, {rotate:0}); // rotate option centers the image if (common.running()) { - g.drawImage(BUTTON_ICONS.pause, g.getWidth() * 3 / 4, BAR_TOP + 12, {rotate:0}); + g.setColor(s.theme.fg2) + .drawImage(BUTTON_ICONS.pause, g.getWidth() * 3 / 4, BAR_TOP + 12, {rotate:0}); } else { - g.drawImage(BUTTON_ICONS.play, g.getWidth() * 3 / 4, BAR_TOP + 12, {rotate:0}); + g.setColor(s.theme.fg2) + .drawImage(BUTTON_ICONS.play, g.getWidth() * 3 / 4, BAR_TOP + 12, {rotate:0}); } } From 38f6ed54ff2bde3b51ab4d1529bd4b23bb97cd97 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Sun, 16 Jul 2023 11:35:47 +0200 Subject: [PATCH 1714/1725] keytimer - Update changelog --- apps/keytimer/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/keytimer/ChangeLog b/apps/keytimer/ChangeLog index 789ab85a8..d2481d44c 100644 --- a/apps/keytimer/ChangeLog +++ b/apps/keytimer/ChangeLog @@ -1,4 +1,4 @@ 0.01: New app! 0.02: Submitted to the app loader 0.03: Rewrote to use scheduler library -0.04: Use correct background color for number display +0.04: Use theme colors From 1022b623d4c431ab82ebe62c150b6adce69ad227 Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Mon, 17 Jul 2023 17:48:20 +0200 Subject: [PATCH 1715/1725] openstmap changes - clear overlay only once - Add exit to menu --- apps/openstmap/app.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/apps/openstmap/app.js b/apps/openstmap/app.js index 1a87b6d57..43c747ba7 100644 --- a/apps/openstmap/app.js +++ b/apps/openstmap/app.js @@ -82,13 +82,17 @@ function drawLocation() { } if (!fix.fix || !mapVisible) { - Bangle.setLCDOverlay(); // clear if map is not visible or no fix + if (this.hasOverlay) { + Bangle.setLCDOverlay(); // clear if map is not visible or no fix + this.hasOverlay = false; + } return; } const icon = require("heatshrink").decompress(atob("jEYwYPMyVJkgHEkgICyAHCgIIDyQIChIIEoAIDC4IIEBwOAgEEyVIBAY4DBD4sGHxBQIMRAIIPpAyCHAYILUJEAiVJkAIFgVJXo5fCABQA==")); // 24x24px var p = m.latLonToXY(fix.lat, fix.lon); Bangle.setLCDOverlay(icon, p.x-24/2, p.y-24); + this.hasOverlay = true; } Bangle.on('GPS',function(f) { @@ -171,6 +175,7 @@ function showMenu() { } }; } + menu[/*LANG*/"Exit"] = () => load(); E.showMenu(menu); } @@ -186,6 +191,7 @@ function showMap() { m.scroll(e.dx,e.dy); g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); hasScrolled = true; + drawLocation(); } else if (hasScrolled) { hasScrolled = false; redraw(); From d60b2da468f280b0fbbb822a6520711eb81a2719 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Mon, 17 Jul 2023 21:11:11 +0200 Subject: [PATCH 1716/1725] qmsched - Remove debug prints --- apps/qmsched/lib.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/apps/qmsched/lib.js b/apps/qmsched/lib.js index 305092b90..f6107df5f 100644 --- a/apps/qmsched/lib.js +++ b/apps/qmsched/lib.js @@ -4,7 +4,6 @@ */ function switchTheme(mode) { let s = require("Storage").readJSON("setting.json", 1) || {}; - print("Theme is ", s.theme); if (!!mode === s.theme.quiet) return; // nothing to do // default themes, copied from settings.js:showThemeMenu() function cl(x) { return g.setColor(x).getColor(); } @@ -31,7 +30,6 @@ function switchTheme(mode) { if (q.quietTheme) quietTheme = q.quietTheme; s.theme = mode ? quietTheme : normalTheme; - print("New theme is ", s.theme); require("Storage").writeJSON("setting.json", s); // reload clocks with new theme, otherwise just wait for user to switch apps From b9e73d47f144c0c02b7be539ee2767fa2ba7a196 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 17 Jul 2023 20:10:40 +0100 Subject: [PATCH 1717/1725] multitimer: remove dead code --- apps/multitimer/app.js | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index 79ff2495f..2c2493a59 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -68,7 +68,6 @@ function setHM(alarm, on) { function drawTimers() { layer = 0; var timers = require("sched").getAlarms().filter(a => a.timer && a.appid == "multitimer"); - var alarms = require("sched").getAlarms(); function updateTimers(idx) { if (!timerInt1[idx]) timerInt1[idx] = setTimeout(function() { @@ -79,7 +78,7 @@ function drawTimers() { }, 1000 - (timers[idx].t % 1000)); } - var s = E.showScroller({ + E.showScroller({ h : 40, c : timers.length+2, back : function() {load();}, draw : (idx, r) => { @@ -120,12 +119,10 @@ function timerMenu(idx) { layer = -1; var timers = require("sched").getAlarms(); var timerIdx = []; - var j = 0; for (let i = 0; i < timers.length; i++) { if (timers[i].timer && timers[i].appid == "multitimer") { a = i; timerIdx.push(a); - j++; } } var a = timers[timerIdx[idx]]; @@ -140,7 +137,7 @@ function timerMenu(idx) { }, 1000 - (a.t % 1000)); } - var s = E.showScroller({ + E.showScroller({ h : 40, c : 5, back : function() { clearInt(); @@ -225,12 +222,9 @@ function editTimer(idx, a) { var timers = require("sched").getAlarms().filter(a => a.timer && a.appid == "multitimer"); var alarms = require("sched").getAlarms(); var timerIdx = []; - var j = 0; for (let i = 0; i < alarms.length; i++) { if (alarms[i].timer && alarms[i].appid == "multitimer") { - b = i; - timerIdx.push(b); - j++; + timerIdx.push(i); } } if (!a) { @@ -344,7 +338,7 @@ function drawSw() { }, 1000 - (sw[idx].t % 1000)); } - var s = E.showScroller({ + E.showScroller({ h : 40, c : sw.length+2, back : function() {load();}, draw : (idx, r) => { @@ -421,7 +415,7 @@ function swMenu(idx, a) { setUI(); } - var s = E.showScroller({ + E.showScroller({ h : 40, c : 5, back : function() { clearInt(); @@ -507,7 +501,7 @@ function drawAlarms() { layer = 2; var alarms = require("sched").getAlarms().filter(a => !a.timer); - var s = E.showScroller({ + E.showScroller({ h : 40, c : alarms.length+2, back : function() {load();}, draw : (idx, r) => { @@ -563,12 +557,9 @@ function editAlarm(idx, a) { layer = -1; var alarms = require("sched").getAlarms(); var alarmIdx = []; - var j = 0; for (let i = 0; i < alarms.length; i++) { if (!alarms[i].timer) { - b = i; - alarmIdx.push(b); - j++; + alarmIdx.push(i); } } if (!a) { From 03861111e2681c55f8d72ad9411aa06bafbb611c Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 17 Jul 2023 20:11:31 +0100 Subject: [PATCH 1718/1725] multitimer: declare missing/accidentally-global variables --- apps/multitimer/app.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index 2c2493a59..3a29ac362 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -83,6 +83,7 @@ function drawTimers() { back : function() {load();}, draw : (idx, r) => { function drawMenuItem(a) { + var msg; g.setClipRect(R.x,R.y,R.x2,R.y2); if (idx > 0 && timers[idx-1].msg) msg = "\n"+(timers[idx-1].msg.length > 10 ? timers[idx-1].msg.substring(0, 10)+"..." : timers[idx-1].msg); @@ -126,7 +127,6 @@ function timerMenu(idx) { } } var a = timers[timerIdx[idx]]; - var msg = ""; function updateTimer() { if (timerInt1[0] == undefined) timerInt1[0] = setTimeout(function() { @@ -152,6 +152,7 @@ function timerMenu(idx) { } if (i == 0) { + var msg = ""; if (a.msg) msg = "\n"+(a.msg.length > 10 ? a.msg.substring(0, 10)+"..." : a.msg); if (a.on == true) { drawMenuItem(formatTime(a.t-getCurrentTime())+msg); @@ -237,6 +238,7 @@ function editTimer(idx, a) { var t = decodeTime(a.timer); function editMsg(idx, a) { + var msg; g.clear(); idx < 0 ? msg = "" : msg = a.msg; require("textinput").input({text:msg}).then(result => { @@ -344,6 +346,7 @@ function drawSw() { draw : (idx, r) => { function drawMenuItem(a) { + var msg; g.setClipRect(R.x,R.y,R.x2,R.y2); if (idx > 0 && sw[idx-1].msg) msg = "\n"+(sw[idx-1].msg.length > 10 ? sw[idx-1].msg.substring(0, 10)+"..." : sw[idx-1].msg); @@ -396,7 +399,7 @@ function swMenu(idx, a) { function editMsg(idx, a) { g.clear(); - msg = a.msg; + var msg = a.msg; require("textinput").input({text:msg}).then(result => { if (result != "") { a.msg = result; @@ -430,6 +433,7 @@ function swMenu(idx, a) { } if (i == 0) { + var msg; if (a.msg) msg = "\n"+(a.msg.length > 10 ? a.msg.substring(0, 10)+"..." : a.msg); else msg = ""; if (a.on == true) { @@ -572,6 +576,7 @@ function editAlarm(idx, a) { var t = decodeTime(a.t); function editMsg(idx, a) { + var msg; g.clear(); idx < 0 ? msg = "" : msg = a.msg; require("textinput").input({text:msg}).then(result => { From ff6158c32983cfb10da80824cee4d3dd1e16d561 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 17 Jul 2023 20:22:28 +0100 Subject: [PATCH 1719/1725] multitimer: use `let`/`const` for global variables (avoid leaking) --- apps/multitimer/app.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index 3a29ac362..5f8db89db 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -2,11 +2,11 @@ Bangle.loadWidgets(); Bangle.drawWidgets(); -var R = Bangle.appRect; -var layer; -var drag; -var timerInt1 = []; -var timerInt2 = []; +const R = Bangle.appRect; +let layer; +let drag; +let timerInt1 = []; +let timerInt2 = []; function getCurrentTime() { let time = new Date(); From c54e33ae7f37b51e63995e18643119c0ed7b5d4e Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 17 Jul 2023 20:23:13 +0100 Subject: [PATCH 1720/1725] multitimer: drop `var` Not strictly necessary, but matches the globals. --- apps/multitimer/app.js | 65 +++++++++++++++++++++--------------------- 1 file changed, 33 insertions(+), 32 deletions(-) diff --git a/apps/multitimer/app.js b/apps/multitimer/app.js index 5f8db89db..3c790d8e4 100644 --- a/apps/multitimer/app.js +++ b/apps/multitimer/app.js @@ -67,7 +67,7 @@ function setHM(alarm, on) { function drawTimers() { layer = 0; - var timers = require("sched").getAlarms().filter(a => a.timer && a.appid == "multitimer"); + const timers = require("sched").getAlarms().filter(a => a.timer && a.appid == "multitimer"); function updateTimers(idx) { if (!timerInt1[idx]) timerInt1[idx] = setTimeout(function() { @@ -83,11 +83,10 @@ function drawTimers() { back : function() {load();}, draw : (idx, r) => { function drawMenuItem(a) { - var msg; + let msg = ""; g.setClipRect(R.x,R.y,R.x2,R.y2); if (idx > 0 && timers[idx-1].msg) msg = "\n"+(timers[idx-1].msg.length > 10 ? timers[idx-1].msg.substring(0, 10)+"..." : timers[idx-1].msg); - else msg = ""; return g.setColor(g.theme.bg2).fillRect({x:r.x+4,y:r.y+2,w:r.w-8, h:r.h-4, r:5}) .setColor(g.theme.fg2).setFont("6x8:2").setFontAlign(-1,0).drawString(a+msg,r.x+12,r.y+(r.h/2)); } @@ -118,15 +117,17 @@ function drawTimers() { function timerMenu(idx) { layer = -1; - var timers = require("sched").getAlarms(); - var timerIdx = []; + const timers = require("sched").getAlarms(); + const timerIdx = []; + let a; + for (let i = 0; i < timers.length; i++) { if (timers[i].timer && timers[i].appid == "multitimer") { a = i; timerIdx.push(a); } } - var a = timers[timerIdx[idx]]; + a = timers[timerIdx[idx]]; function updateTimer() { if (timerInt1[0] == undefined) timerInt1[0] = setTimeout(function() { @@ -152,7 +153,7 @@ function timerMenu(idx) { } if (i == 0) { - var msg = ""; + let msg = ""; if (a.msg) msg = "\n"+(a.msg.length > 10 ? a.msg.substring(0, 10)+"..." : a.msg); if (a.on == true) { drawMenuItem(formatTime(a.t-getCurrentTime())+msg); @@ -220,9 +221,9 @@ function timerMenu(idx) { function editTimer(idx, a) { layer = -1; - var timers = require("sched").getAlarms().filter(a => a.timer && a.appid == "multitimer"); - var alarms = require("sched").getAlarms(); - var timerIdx = []; + const timers = require("sched").getAlarms().filter(a => a.timer && a.appid == "multitimer"); + const alarms = require("sched").getAlarms(); + const timerIdx = []; for (let i = 0; i < alarms.length; i++) { if (alarms[i].timer && alarms[i].appid == "multitimer") { timerIdx.push(i); @@ -235,10 +236,10 @@ function editTimer(idx, a) { if (!a.data) { a.data = { hm: false }; } - var t = decodeTime(a.timer); + const t = decodeTime(a.timer); function editMsg(idx, a) { - var msg; + let msg; g.clear(); idx < 0 ? msg = "" : msg = a.msg; require("textinput").input({text:msg}).then(result => { @@ -257,7 +258,7 @@ function editTimer(idx, a) { setUI(); } - var menu = { + const menu = { "": { "title": "Timer" }, "< Back": () => { a.t = getCurrentTime() + a.timer; @@ -312,7 +313,7 @@ function editTimer(idx, a) { value: !a.msg ? "" : a.msg.length > 6 ? a.msg.substring(0, 6)+"..." : a.msg, //menu glitch? setTimeout required here onchange: () => { - var kbapp = require("Storage").read("textinput"); + const kbapp = require("Storage").read("textinput"); if (kbapp != undefined) setTimeout(editMsg, 0, idx, a); else setTimeout(kbAlert, 0); } @@ -329,7 +330,7 @@ function editTimer(idx, a) { function drawSw() { layer = 1; - var sw = require("Storage").readJSON("multitimer.json", true) || []; + const sw = require("Storage").readJSON("multitimer.json", true) || []; function updateTimers(idx) { if (!timerInt1[idx]) timerInt1[idx] = setTimeout(function() { @@ -346,7 +347,7 @@ function drawSw() { draw : (idx, r) => { function drawMenuItem(a) { - var msg; + let msg; g.setClipRect(R.x,R.y,R.x2,R.y2); if (idx > 0 && sw[idx-1].msg) msg = "\n"+(sw[idx-1].msg.length > 10 ? sw[idx-1].msg.substring(0, 10)+"..." : sw[idx-1].msg); @@ -380,7 +381,7 @@ function drawSw() { function swMenu(idx, a) { layer = -1; - var sw = require("Storage").readJSON("multitimer.json", true) || []; + const sw = require("Storage").readJSON("multitimer.json", true) || []; if (sw[idx]) a = sw[idx]; else { a = {"t" : 0, "on" : false, "msg" : ""}; @@ -399,7 +400,7 @@ function swMenu(idx, a) { function editMsg(idx, a) { g.clear(); - var msg = a.msg; + const msg = a.msg; require("textinput").input({text:msg}).then(result => { if (result != "") { a.msg = result; @@ -433,7 +434,7 @@ function swMenu(idx, a) { } if (i == 0) { - var msg; + let msg; if (a.msg) msg = "\n"+(a.msg.length > 10 ? a.msg.substring(0, 10)+"..." : a.msg); else msg = ""; if (a.on == true) { @@ -486,7 +487,7 @@ function swMenu(idx, a) { //edit message if (i == 3) { clearInt(); - var kbapp = require("Storage").read("textinput"); + const kbapp = require("Storage").read("textinput"); if (kbapp != undefined) editMsg(idx, a); else kbAlert(); } @@ -503,7 +504,7 @@ function swMenu(idx, a) { function drawAlarms() { layer = 2; - var alarms = require("sched").getAlarms().filter(a => !a.timer); + const alarms = require("sched").getAlarms().filter(a => !a.timer); E.showScroller({ h : 40, c : alarms.length+2, @@ -512,8 +513,8 @@ function drawAlarms() { function drawMenuItem(a) { g.setClipRect(R.x,R.y,R.x2,R.y2); - var on = ""; - var dow = ""; + let on = ""; + let dow = ""; if (idx > 0 && alarms[idx-1].on == true) on = " - on"; else if (idx > 0 && alarms[idx-1].on == false) on = " - off"; if (idx > 0 && idx < alarms.length+1) dow = "\n"+"SMTWTFS".split("").map((d,n)=>alarms[idx-1].dow&(1<",r.x+(r.w/2),r.y+(r.h/2)); } else if (idx > 0 && idx < alarms.length+1){ - var str = formatTime(alarms[idx-1].t); + const str = formatTime(alarms[idx-1].t); drawMenuItem(str.slice(0, -3)); } }, @@ -546,8 +547,8 @@ function editDOW(dow, onchange) { '': { 'title': 'Days of Week' }, '< Back' : () => onchange(dow) }; - for (var i = 0; i < 7; i++) (i => { - var dayOfWeek = require("locale").dow({ getDay: () => i }); + for (let i = 0; i < 7; i++) (i => { + const dayOfWeek = require("locale").dow({ getDay: () => i }); menu[dayOfWeek] = { value: !!(dow&(1< v ? dow |= 1< { @@ -595,7 +596,7 @@ function editAlarm(idx, a) { setUI(); } - var menu = { + const menu = { "": { "title": "Alarm" }, "< Back": () => { if (idx >= 0) alarms[alarmIdx[idx]] = a; @@ -650,7 +651,7 @@ function editAlarm(idx, a) { value: !a.msg ? "" : a.msg.length > 6 ? a.msg.substring(0, 6)+"..." : a.msg, //menu glitch? setTimeout required here onchange: () => { - var kbapp = require("Storage").read("textinput"); + const kbapp = require("Storage").read("textinput"); if (kbapp != undefined) setTimeout(editMsg, 0, idx, a); else setTimeout(kbAlert, 0); } From 461f0f0fbd708b50d153a4197026ef2f90b952e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Rebelo?= Date: Mon, 17 Jul 2023 22:48:12 +0100 Subject: [PATCH 1721/1725] Fix git submodule init command --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6ad899421..066ad0ad0 100644 --- a/README.md +++ b/README.md @@ -98,7 +98,7 @@ This is the best way to test... **Note:** It's a great idea to get a local copy of the repository on your PC, then run `bin/sanitycheck.js` - it'll run through a bunch of common issues -that there might be. To get the project running locally, you have to initialize and update the git submodules first: `git submodule --init && git submodule update`. +that there might be. To get the project running locally, you have to initialize and update the git submodules first: `git submodule update --init`. Be aware of the delay between commits and updates on github.io - it can take a few minutes (and a 'hard refresh' of your browser) for changes to take effect. From ff0c236b031e68fd395a5460fe7490c893759da0 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Tue, 18 Jul 2023 22:03:02 +0200 Subject: [PATCH 1722/1725] qmsched - Remove quiet property and save one theme copy --- apps/qmsched/app.js | 31 +++---------------- apps/qmsched/lib.js | 73 ++++++++++++++++++++++++++++++++------------- 2 files changed, 57 insertions(+), 47 deletions(-) diff --git a/apps/qmsched/app.js b/apps/qmsched/app.js index 8e1141058..cc698ae1d 100644 --- a/apps/qmsched/app.js +++ b/apps/qmsched/app.js @@ -84,7 +84,6 @@ function formatTime(t) { */ function applyTheme() { const theme = (STORAGE.readJSON("setting.json", 1) || {}).theme; - if (theme && theme.dark===g.theme.dark) return; // already correct g.theme = theme; delete g.reset; g._reset = g.reset; @@ -105,24 +104,8 @@ function showThemeMenu(back, quiet){ function cl(x) { return g.setColor(x).getColor(); } var themesMenu = { '':{title:/*LANG*/'Theme', back: back}, - /*LANG*/'Dark BW': ()=>{ - set(option, { - fg:cl("#fff"), bg:cl("#000"), - fg2:cl("#fff"), bg2:cl("#004"), - fgH:cl("#fff"), bgH:cl("#00f"), - dark:true, - quiet: true - }); - back(); - }, - /*LANG*/'Light BW': ()=>{ - set(option, { - fg:cl("#000"), bg:cl("#fff"), - fg2:cl("#000"), bg2:cl("#cff"), - fgH:cl("#000"), bgH:cl("#0ff"), - dark:false, - quiet: true - }); + /*LANG*/'Default': ()=>{ + unset(option); back(); } }; @@ -131,14 +114,8 @@ function showThemeMenu(back, quiet){ n => { let newTheme = STORAGE.readJSON(n); themesMenu[newTheme.name ? newTheme.name : n] = () => { - set(option, { - fg:cl(newTheme.fg), bg:cl(newTheme.bg), - fg2:cl(newTheme.fg2), bg2:cl(newTheme.bg2), - fgH:cl(newTheme.fgH), bgH:cl(newTheme.bgH), - dark:newTheme.dark, - quiet: quiet - }); - back(); + set(option, n); + back(); }; } ); diff --git a/apps/qmsched/lib.js b/apps/qmsched/lib.js index f6107df5f..1d636f263 100644 --- a/apps/qmsched/lib.js +++ b/apps/qmsched/lib.js @@ -3,37 +3,70 @@ * @param {int} mode Quiet Mode */ function switchTheme(mode) { - let s = require("Storage").readJSON("setting.json", 1) || {}; - if (!!mode === s.theme.quiet) return; // nothing to do - // default themes, copied from settings.js:showThemeMenu() function cl(x) { return g.setColor(x).getColor(); } + const readTheme = function(name) { + const n = require("Storage").readJSON(name); + return { + fg:cl(n.fg), bg:cl(n.bg), + fg2:cl(n.fg2), bg2:cl(n.bg2), + fgH:cl(n.fgH), bgH:cl(n.bgH), + dark:n.dark + }; + } + const s = require("Storage").readJSON("setting.json", 1) || {}; + // default themes, copied from settings.js:showThemeMenu() - let q = require("Storage").readJSON("qmsched.json", 1) || {}; + const q = require("Storage").readJSON("qmsched.json", 1) || {}; let quietTheme = { // 'Dark BW' - fg: cl("#fff"), bg: cl("#000"), - fg2: cl("#0ff"), bg2: cl("#000"), - fgH: cl("#fff"), bgH: cl("#00f"), - dark: true, - quiet: true + fg:cl("#fff"), bg:cl("#000"), + fg2:cl("#fff"), bg2:cl("#004"), + fgH:cl("#fff"), bgH:cl("#00f"), + dark:true }; let normalTheme = { // 'Light BW' - fg: cl("#000"), bg: cl("#fff"), - fg2: cl("#000"), bg2: cl("#cff"), - fgH: cl("#000"), bgH: cl("#0ff"), - dark: false, - quiet: false + fg:cl("#000"), bg:cl("#fff"), + fg2:cl("#000"), bg2:cl("#cff"), + fgH:cl("#000"), bgH:cl("#0ff"), + dark:false }; - if (q.normalTheme) normalTheme = q.normalTheme; - if (q.quietTheme) quietTheme = q.quietTheme; + let miss = false; - s.theme = mode ? quietTheme : normalTheme; + // ensure referenced theme files actually exist or remove reference + if (q.normalTheme && require("Storage").read(q.normalTheme) == undefined){ + delete q.normalTheme; + miss = true; + } + if (q.quietTheme && require("Storage").read(q.quietTheme) == undefined){ + delete q.quietTheme; + miss = true; + } + if (miss) + require("Storage").writeJSON("qmsched.json", q); - require("Storage").writeJSON("setting.json", s); - // reload clocks with new theme, otherwise just wait for user to switch apps - if (Bangle.CLOCK) load(global.__FILE__); + // load theme files + if (q.normalTheme) + normalTheme = readTheme(q.normalTheme); + if (q.quietTheme) + quietTheme = readTheme(q.quietTheme); + + + const newTheme = mode ? quietTheme : normalTheme; + let changed = false; + for (const c in newTheme) { + if (!(c in g.theme) || newTheme[c] !== g.theme[c]) { + changed = true; + break; + } + } + if (changed) { + s.theme = newTheme; + require("Storage").writeJSON("setting.json", s); + // reload clocks with new theme, otherwise just wait for user to switch apps + if (Bangle.CLOCK) load(global.__FILE__); + } } /** * Apply LCD options and theme for given mode From 6e0b934ae2ed2d5e3e52e384576f7feb1fb9a3af Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Tue, 18 Jul 2023 22:10:51 +0200 Subject: [PATCH 1723/1725] qmsched - Do not translate the back item --- apps/qmsched/app.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/qmsched/app.js b/apps/qmsched/app.js index cc698ae1d..023c247ee 100644 --- a/apps/qmsched/app.js +++ b/apps/qmsched/app.js @@ -136,8 +136,8 @@ function setAppQuietMode(mode) { let m; function showMainMenu() { - let menu = {"": {"title": /*LANG*/"Quiet Mode"},}; - menu[B2 ? /*LANG*/"< Back" : /*LANG*/"< Exit"] = () => {load();}; + let menu = {"": {"title": /*LANG*/"Quiet Mode"}}; + menu[B2 ? "< Back" : /*LANG*/"< Exit"] = () => {load();}; menu[/*LANG*/"Current Mode"] = { value: current, min:0, max:2, wrap: true, @@ -169,7 +169,7 @@ function showEditMenu(index) { mode = s.mode; } let menu = {"": {"title": (isNew ? /*LANG*/"Add Schedule" : /*LANG*/"Edit Schedule")}}; - menu[B2 ? /*LANG*/"< Back" : /*LANG*/"< Cancel"] = () => showMainMenu(); + menu[B2 ? "< Back" : /*LANG*/"< Cancel"] = () => showMainMenu(); menu[/*LANG*/"Hours"] = { value: hrs, min:0, max:23, wrap:true, @@ -226,7 +226,7 @@ function showOptionsMenu() { let resetTimeout; const oMenu = { "": {"title": /*LANG*/"LCD Settings"}, - /*LANG*/"< Back": () => showMainMenu(), + "< Back": () => showMainMenu(), /*LANG*/"LCD Brightness": { value: get("brightness", 0), min: 0, // 0 = use default From 06d3ca59db6b653f5ddb1f11f3dd9f3855973232 Mon Sep 17 00:00:00 2001 From: Martin Boonk Date: Tue, 18 Jul 2023 22:17:09 +0200 Subject: [PATCH 1724/1725] qmsched - Add german translations --- lang/de_DE.json | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lang/de_DE.json b/lang/de_DE.json index 6c2204cf1..9f9af6b18 100644 --- a/lang/de_DE.json +++ b/lang/de_DE.json @@ -53,6 +53,13 @@ "Delete all messages": "Alle Nachrichten löschen", "Unread timer": "Ungelesener Timer", "Quiet Mode": "Stiller Modus", + "Silent": "Still", + "Current Mode": "Aktueller Modus", + "Add Schedule": "Neue Aktion", + "Switch Theme": "Theme ändern", + "Options": "Optionen", + "Normal Theme": "Normales Theme", + "Quiet Theme": "Stilles Theme", "Utils": "Werkzeuge", "Piezo": "Piezo", "LCD": "LCD", From 1b5f342142707b3126e616e33c6345853b83a880 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 19 Jul 2023 17:29:32 +0000 Subject: [PATCH 1725/1725] build(deps-dev): bump word-wrap from 1.2.3 to 1.2.4 Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4. - [Release notes](https://github.com/jonschlinkert/word-wrap/releases) - [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4) --- updated-dependencies: - dependency-name: word-wrap dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index eb7270554..c7cf318f3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2146,9 +2146,9 @@ } }, "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz", + "integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -3739,9 +3739,9 @@ } }, "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz", + "integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==", "dev": true }, "wrappy": {
      +

      List of Songs

      +
      + +
      +
      + + + + + + + + + + + + + + + + + + + + + + +
      NameLyricschordssize
      {{song.name}}{{song.lyrics.slice(0, 30)}}{{song.chords.join(' ')}}{{song.lyrics.length + song.name.length}}
      + +
      +
      + +
      +
      +
      + +
      +
      + Size on Bangle Flash: {{watchSongsSize}} Bytes +
      + New size: {{localSongsSize}} Bytes +
      +
      + +
      +
      + +

    xHf>)Nk@WBm*5{vz?`QHHp1bE2zGOAg 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 z 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 z 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μ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 g53f!M@cRv=M*L=FwJ`R`b%EPH)Kdc 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

    ~wUzHJ+R7(*yFD^wnVun~zyRDp{YnBgjp)y7RB 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%0Dl}Gj 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 z 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 _zQR>>C)2gu_*1XNzoEWegMWr=mu&)ZhHwR*u6 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