NEWS
Alias auf Shelly - unerwartete Änderung des Aliastyps
-
@iomas
Nachtrag 2, In der Adminoberfläche macht es keinen Unterschied ob ich konvertiere oder nicht in beiden Fällen wird entsprechend true oder false angezeigt, habe mich dennoch entschieden es wieder auf val=='on' zu setzen da das mit meiner Logik irgendwie mehr entspricht :? -
@iomas sagte: soll ich den js adapter einmal neu starten?
Der Alias wird im js-controller verarbeitet.
-
@paul53
habe die readfunktionalität noch einmal entfernt und auch den js adapter neu gestartet leider mit gleichem Ergebnis. -
@iomas sagte: js adapter neu gestartet
Starte mal ioBroker neu.
-
@paul53
hat leider nichts gebracht -
@iomas sagte: hat leider nichts gebracht
Noch ein Versuch: Ändere die Rolle des Alias in "switch".
-
@paul53
habe die Rolle in switch geändert leider bleibt es dabei, es wird ein string draus. -
@iomas sagte: bleibt es dabei, es wird ein string draus.
Mal InfluxDB auf dem Alias deaktiviert?
-
@paul53
InfluxDB abschalten hat leider keinen Einfluß auf das beschriebene Verhalten. -
@iomas
Ich habe den Javascript-Code mal zum Testen übernommen, zwei Aliase und zwei MQTT-Datenpunkte erstellt und getestet: Ich erhalte immer nur:0.1: Hinweise: Typ:boolean Wert ist: false
oder true. Mit welchem Ablauf erscheint?
0.1: Hinweise: Typ:string Wert ist: off
-
@paul53
Dieser erscheint wenn ich den shelly über die app frühzeitig ausschalte, also Licht geht an, ich schalte per App oder phsyikalisch den Schalter aus. Wenn danach erneut der Bewegungsmelder aktiviert wird, dann kommt es zu besagtem Wechsel des Typs. -
@iomas sagte in Alias auf Shelly - unerwartete Änderung des Aliastyps:
Licht geht an, ich schalte per App oder phsyikalisch den Schalter aus. Wenn danach erneut der Bewegungsmelder aktiviert wird
Habe ich mal nachgestellt:
16:49:48.115 info javascript.1 (2077) script.js.common.Neuer_Test: 0: Bewegung 16:49:48.116 info javascript.1 (2077) script.js.common.Neuer_Test: 0.1: Hinweise: Typ:boolean Wert ist: false 16:49:48.116 info javascript.1 (2077) script.js.common.Neuer_Test: 1: erkanntfalse 16:49:48.117 info javascript.1 (2077) script.js.common.Neuer_Test: 2: Licht ist aus 16:49:48.117 info javascript.1 (2077) script.js.common.Neuer_Test: 3: kleiner Schwellwert->Licht anschalten 16:49:48.248 info javascript.1 (2077) script.js.common.Neuer_Test: Alias: true, Ack: true, Skript: script.js.common.Shelly1 16:50:00.164 info javascript.1 (2077) script.js.common.Neuer_Test: Alias: false, Ack: true, Skript: script.js.common.Shelly1 16:50:48.117 info javascript.1 (2077) script.js.common.Neuer_Test: X: Licht ausschalten 16:50:48.176 info javascript.1 (2077) script.js.common.Neuer_Test: Alias: false, Ack: true, Skript: script.js.common.Shelly1 16:51:02.813 info javascript.1 (2077) script.js.common.Neuer_Test: 0: Bewegung 16:51:02.813 info javascript.1 (2077) script.js.common.Neuer_Test: 0.1: Hinweise: Typ:boolean Wert ist: false 16:51:02.813 info javascript.1 (2077) script.js.common.Neuer_Test: 1: erkanntfalse 16:51:02.813 info javascript.1 (2077) script.js.common.Neuer_Test: 2: Licht ist aus 16:51:02.813 info javascript.1 (2077) script.js.common.Neuer_Test: 3: kleiner Schwellwert->Licht anschalten 16:51:02.886 info javascript.1 (2077) script.js.common.Neuer_Test: Alias: true, Ack: true, Skript: script.js.common.Shelly1 16:52:02.817 info javascript.1 (2077) script.js.common.Neuer_Test: X: Licht ausschalten 16:52:02.916 info javascript.1 (2077) script.js.common.Neuer_Test: Alias: false, Ack: true, Skript: script.js.common.Shelly1
Der zusätzliche Log-Eintrag kommt aus dem Debug-Log auf dem Alias:
on({id: idLichtSchalter}, function(dp) { log('Alias: ' + dp.state.val + ', Ack: ' + dp.state.ack + ', Skript: ' + dp.state.c); });
Was mir auffällt: Der Debug-Trigger liefert stets "Ack: true", d.h. auf das ursprüngliche Setzen mit ack = false reagiert der Trigger nicht. Allerdings reagiert das MQTT-Kommando:
17:25:49.123 info javascript.1 (2077) script.js.common.Neuer_Test: X: Licht ausschalten 17:25:49.127 info javascript.1 (2077) script.js.common.Neuer_Test: MQTT Command: off, Ack: false 17:25:49.180 info javascript.1 (2077) script.js.common.Neuer_Test: Alias: false, Ack: true, Skript: script.js.common.Shelly1
-
@paul53 said in Alias auf Shelly - unerwartete Änderung des Aliastyps:
on({id: idLichtSchalter}, function(dp) {
Ich habe mein Script mal um folgendes erweitert, analog zu deinem JS, hoffe ich...
on({id: [].concat(idLichtSchalter), change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; console.debug((['Alias: ',(obj.state ? obj.state.val : ""),', Ack: ',(obj.state ? obj.state.ack : ""),', Skript: ',(obj.state ? obj.state.from : "")].join(''))); });
ist was im blockly unter JS dazukam.
Die Ausgabe sieht bei mir danach wie folgt aus:17:21:44.814 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0: Bewegung 17:21:44.815 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0.1: Hinweise: Typ:boolean Wert ist: false 17:21:44.815 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 1: erkanntfalse 17:21:44.817 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 2: Licht ist aus 17:21:44.821 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 3: kleiner Schwellwert->Licht anschalten 17:21:44.913 debug javascript.0 (291426) script.js.EG.kueche.beweg2: Alias: true, Ack: true, Skript: system.adapter.mqtt.0 17:22:03.022 debug javascript.0 (291426) script.js.EG.kueche.beweg2: Alias: false, Ack: true, Skript: system.adapter.mqtt.0 17:22:16.783 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0: Bewegung 17:22:16.784 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 1: nicht erkannt 17:22:44.823 debug javascript.0 (291426) script.js.EG.kueche.beweg2: X: Licht ausschalten 17:22:54.973 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0: Bewegung 17:22:54.974 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0.1: Hinweise: Typ:string Wert ist: off 17:22:54.974 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0.5: Bugfix wrong typestring Wert ist: off 17:22:54.974 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0.5b: aus 17:22:54.975 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 1: erkanntfalse 17:22:54.976 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 2: Licht ist aus 17:22:54.977 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 3: kleiner Schwellwert->Licht anschalten 17:22:55.046 debug javascript.0 (291426) script.js.EG.kueche.beweg2: Alias: true, Ack: true, Skript: system.adapter.mqtt.0 17:23:26.961 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0: Bewegung 17:23:26.962 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 1: nicht erkannt 17:23:54.979 debug javascript.0 (291426) script.js.EG.kueche.beweg2: X: Licht ausschalten 17:23:55.052 debug javascript.0 (291426) script.js.EG.kueche.beweg2: Alias: false, Ack: true, Skript: system.adapter.mqtt.0
hilft das weiter?
-
@iomas sagte: hilft das weiter?
Nicht wirklich. Ich kann das Verhalten mit "Wert ist: off" bei mir nicht nachstellen - bei gleichem Ablauf. Version des Hosts (js-controller)?
Außerdem triggert mein Debug-Trigger auf "wurde aktualisiert". -
@paul53
habe es auf aktualisiert geändert:
on({id: [].concat(idLichtSchalter), change: "any"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; console.debug((['Alias: ',(obj.state ? obj.state.val : ""),', Ack: ',(obj.state ? obj.state.ack : ""),', Skript: ',(obj.state ? obj.state.from : "")].join(''))); });
Debugausgabe:
17:36:35.502 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0: Bewegung 17:36:35.502 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0.1: Hinweise: Typ:boolean Wert ist: false 17:36:35.503 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 1: erkanntfalse 17:36:35.503 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 2: Licht ist aus 17:36:35.504 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 3: kleiner Schwellwert->Licht anschalten 17:36:35.588 debug javascript.0 (291426) script.js.EG.kueche.beweg2: Alias: true, Ack: true, Skript: system.adapter.mqtt.0 17:36:45.637 debug javascript.0 (291426) script.js.EG.kueche.beweg2: Alias: false, Ack: true, Skript: system.adapter.mqtt.0 17:37:07.496 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0: Bewegung 17:37:07.498 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 1: nicht erkannt 17:37:35.507 debug javascript.0 (291426) script.js.EG.kueche.beweg2: X: Licht ausschalten 17:37:49.309 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0: Bewegung 17:37:49.310 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0.1: Hinweise: Typ:string Wert ist: off 17:37:49.310 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0.5: Bugfix wrong typestring Wert ist: off 17:37:49.310 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0.5b: aus 17:37:49.310 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 1: erkanntfalse 17:37:49.310 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 2: Licht ist aus 17:37:49.311 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 3: kleiner Schwellwert->Licht anschalten 17:37:49.417 debug javascript.0 (291426) script.js.EG.kueche.beweg2: Alias: true, Ack: true, Skript: system.adapter.mqtt.0 17:38:21.305 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 0: Bewegung 17:38:21.306 debug javascript.0 (291426) script.js.EG.kueche.beweg2: 1: nicht erkannt 17:38:49.312 debug javascript.0 (291426) script.js.EG.kueche.beweg2: X: Licht ausschalten 17:38:49.425 debug javascript.0 (291426) script.js.EG.kueche.beweg2: Alias: false, Ack: true, Skript: system.adapter.mqtt.0
Host js sollt 4.0.24 sein.
-
@iomas sagte: Debugausgabe:
Wie bei mir - außer der Typänderung in String mit "off".
@iomas sagte in Alias auf Shelly - unerwartete Änderung des Aliastyps:
Host js sollt 4.0.24 sein.
Bei mir auch. An der Version kann es nicht liegen. Ich nutze allerdings noch Node.js 16.
-
@paul53 said in Alias auf Shelly - unerwartete Änderung des Aliastyps:
Was mir auffällt: Der Debug-Trigger liefert stets "Ack: true", d.h. auf das ursprüngliche Setzen mit ack = false reagiert der Trigger nicht. Allerdings reagiert das MQTT-Kommando:
Da bin ich tatsächlich noch am schwimmen, bin erst seit Anfang des Monats dabei und habe diese Woche noch dazu ein Video angeschaut...
-
@iomas sagte: Da bin ich tatsächlich noch am schwimmen
Dieses Verhalten ist offenbar nur bei Alias-DP mit getrennten IDs für Status und Kommando so: Es wird nur auf den Status getriggert.
-
@paul53
Ich habe jetzt mal umgestellt auf 2 Aliase, einen auf lesen (EGKuecheFensterLichtRead) einen auf schreiben(EGKuecheFensterLichtWrite). Das JS von Blockly sieht nun so aus:var LichtNachdetektionAnbleiben, schwellWertLicht, idLichtSchalterWrite, LichtDurchBewegAn, idLichtSchalterRead, lichtIstAn, verl_C3_A4ngerungLicht, initLichtAus; // Beschreibe diese Funktion … async function Licht_ausschalten() { console.debug('X: Licht ausschalten'); LichtDurchBewegAn = false; setStateDelayed(idLichtSchalterWrite, false, false, parseInt(((0) || "").toString(), 10), false); } LichtNachdetektionAnbleiben = 60000; schwellWertLicht = getState("0_userdata.0.Technik.EG.Kueche.EGKuecheFensterBeweg.BrigthnessSchwellwert").val; idLichtSchalterWrite = 'alias.0.eg.Kueche.EGKuecheFensterLichtWrite'; idLichtSchalterRead = 'alias.0.eg.Kueche.EGKuecheFensterLichtRead'; LichtDurchBewegAn = false; on({id: "alias.0.eg.Kueche.EGKuecheFensterBeweg"/*EGKuecheFensterBeweg*/, change: "any", ack: true}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; console.debug('0: Bewegung '); if ((obj.state ? obj.state.val : "")) { lichtIstAn = getState(idLichtSchalterRead).val; console.debug((['0.1: Hinweise: Typ:',typeof lichtIstAn,' Wert ist: ',lichtIstAn].join(''))); if (true && typeof lichtIstAn != 'boolean') { console.debug((['0.5: Bugfix wrong type',typeof lichtIstAn,' Wert ist: ',lichtIstAn].join(''))); if (lichtIstAn == 'on') { lichtIstAn = true; console.debug('0.5a: an'); } else { lichtIstAn = false; console.debug('0.5b: aus'); } } console.debug(('1: erkannt' + String(lichtIstAn))); if (lichtIstAn) { console.debug('2: Licht ist bereits an'); if (LichtDurchBewegAn) { console.debug('3: verlängere Lichtdauer'); (function () {if (initLichtAus) {clearTimeout(initLichtAus); initLichtAus = null;}})(); (function () {if (verl_C3_A4ngerungLicht) {clearTimeout(verl_C3_A4ngerungLicht); verl_C3_A4ngerungLicht = null;}})(); verl_C3_A4ngerungLicht = setTimeout(async function () { await Licht_ausschalten(); }, parseInt(LichtNachdetektionAnbleiben)); } else { console.debug('3:nothing2do Licht nicht durch Algo gesetzt'); } } else { console.debug('2: Licht ist aus'); if (getState("alias.0.eg.Kueche.EGKuecheFensterBewegLux").val < schwellWertLicht) { console.debug('3: kleiner Schwellwert->Licht anschalten'); LichtDurchBewegAn = true; setStateDelayed(idLichtSchalterWrite, true, false, parseInt(((0) || "").toString(), 10), false); initLichtAus = setTimeout(async function () { await Licht_ausschalten(); }, parseInt(LichtNachdetektionAnbleiben)); } else { console.debug('3: größer Schwellwert'); } } } else { console.debug('1: nicht erkannt'); } }); on({id: [].concat(idLichtSchalterRead), change: "any"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; console.debug((['AliasRead: ',(obj.state ? obj.state.val : ""),', Ack: ',(obj.state ? obj.state.ack : ""),', Skript: ',(obj.state ? obj.state.from : "")].join(''))); }); on({id: [].concat(idLichtSchalterWrite), change: "any"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; console.debug((['AliasWrite: ',(obj.state ? obj.state.val : ""),', Ack: ',(obj.state ? obj.state.ack : ""),', Skript: ',(obj.state ? obj.state.from : "")].join(''))); }); //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0N2YXJpYWJsZXMlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyJTNBTiU1QmNJJTNGJTdEMiU3Qjh3ZHZmJTNGOGM0VyolMjIlM0VMaWNodE5hY2hkZXRla3Rpb25BbmJsZWliZW4lM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjJofiU3RHQ5TUxMJTVEaXRfViU3Q1ZSWTNNJTI1JTIyJTNFc2Nod2VsbFdlcnRMaWNodCUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMjklMjRLaHElNjBaJTNGIUhMWSUzQTdFcmclM0R0bCUyMiUzRWlkTGljaHRTY2hhbHRlcldyaXRlJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyTiklMkIqMX4zWlNsbSpkeGZlaCU2MCU1QkUlMjIlM0VMaWNodER1cmNoQmV3ZWdBbiUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMi1uJTVCX1duJTdDOHElN0RMbGhYZmslNDBrKCU1QiUyMiUzRWlkTGljaHRTY2hhbHRlclJlYWQlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjJyaCUyMyUyRk5iSCUzRlYuSk5xYyUyM1RyUCU3QyU1RCUyMiUzRWxpY2h0SXN0QW4lM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwdHlwZSUzRCUyMnRpbWVvdXQlMjIlMjBpZCUzRCUyMnZlcmwlQzMlQTRuZ2VydW5nTGljaHQlMjIlM0V2ZXJsJUMzJUE0bmdlcnVuZ0xpY2h0JTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMHR5cGUlM0QlMjJ0aW1lb3V0JTIyJTIwaWQlM0QlMjJpbml0TGljaHRBdXMlMjIlM0Vpbml0TGljaHRBdXMlM0MlMkZ2YXJpYWJsZSUzRSUzQyUyRnZhcmlhYmxlcyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiotJTNGSCU2MFduNGdEJTdEMF8pKTdZb2REJTIyJTIweCUzRCUyMjE2MyUyMiUyMHklM0QlMjIxMyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTNBTiU1QmNJJTNGJTdEMiU3Qjh3ZHZmJTNGOGM0VyolMjIlM0VMaWNodE5hY2hkZXRla3Rpb25BbmJsZWliZW4lM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMnB1NlUuQyUyM1dSYlAlNURQOShNeCU0MC1LJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFNjAwMDAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyJTJDZzZhfjh1ciUyRk9tYSUzRGRWRjMlNUR4JTVCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJofiU3RHQ5TUxMJTVEaXRfViU3Q1ZSWTNNJTI1JTIyJTNFc2Nod2VsbFdlcnRMaWNodCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWUlMjIlMjBpZCUzRCUyMnZoQ3dnLTlsM01vQ2lUVk0lN0JnNDglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuVGVjaG5pay5FRy5LdWVjaGUuRUdLdWVjaGVGZW5zdGVyQmV3ZWcuQnJpZ3RobmVzc1NjaHdlbGx3ZXJ0JTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMjlGQiUyMyU3REV1JTVEbVBzNndDJTVEUSUzREopJTJCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjI5JTI0S2hxJTYwWiUzRiFITFklM0E3RXJnJTNEdGwlMjIlM0VpZExpY2h0U2NoYWx0ZXJXcml0ZSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMnNMJTIzKiolMjRFayUyNSU1RFhBaGVUTzcoNV8lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VhbGlhcy4wLmVnLkt1ZWNoZS5FR0t1ZWNoZUZlbnN0ZXJMaWNodFdyaXRlJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiUyNCU3Q21MdShnJTdDN0ghT3p6MERfZHFqJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjItbiU1Ql9XbiU3QzhxJTdETGxoWGZrJTQwayglNUIlMjIlM0VpZExpY2h0U2NoYWx0ZXJSZWFkJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyaVZyJTNBMDIlM0J3JTdDNCUzRCUzQjE0NE5Yd1VZJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFYWxpYXMuMC5lZy5LdWVjaGUuRUdLdWVjaGVGZW5zdGVyTGljaHRSZWFkJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiU1QnNNNUMhaHllJTdDNkV+SWxZajU5biUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyTiklMkIqMX4zWlNsbSpkeGZlaCU2MCU1QkUlMjIlM0VMaWNodER1cmNoQmV3ZWdBbiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJfcyUyQiU3QiU0MGElMkNkc2ZPJTVEJTVEKkl3TlkzJTVEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uJTIyJTIwaWQlM0QlMjJ1MSpsOClHUkElM0ZQQmolNUJSQTBhJTI0UyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWFsaWFzLjAuZWcuS3VlY2hlLkVHS3VlY2hlRmVuc3RlckJld2VnJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT05ESVRJT04lMjIlM0VhbnklM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFDS19DT05ESVRJT04lMjIlM0V0cnVlJTNDJTJGZmllbGQlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMllhUWElN0IlNURyVTlMeGh3WHJXJTI0RiUyNX4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWRlYnVnJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMnRFMClqc3MlMkZTTEhKeWQlM0YuTGkxRyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UwJTNBJTIwQmV3ZWd1bmclMjAlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjIxSW03JTNGS2J1VSUzQSUzQmMlN0MpYyUzQiUyNWRUJTJCJTIyJTNFJTNDbXV0YXRpb24lMjBlbHNlJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fc291cmNlJTIyJTIwaWQlM0QlMjIpJTI0LW4lNURZJTNCX0trWTMlMjVNKnFBOVRMJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXN0YXRlLnZhbCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJmJTNEVWYlNUJ0WE54T2t5c3Z5JTVFa1g0dyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIycmglMjMlMkZOYkglM0ZWLkpOcWMlMjNUclAlN0MlNUQlMjIlM0VsaWNodElzdEFuJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZV92YXIlMjIlMjBpZCUzRCUyMiUzRDglNDBpeSU0MEg0bWMpSVUlNUVJdiU1RDZjYSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJXOS5HM3QlM0ZmOSUzRHJ2T0g2Y1FqRiglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJOTWl2JTNEJTIzJTJCKSU3QyUyNSU0MCUyQyhYa0gtKVN+JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjItbiU1Ql9XbiU3QzhxJTdETGxoWGZrJTQwayglNUIlMjIlM0VpZExpY2h0U2NoYWx0ZXJSZWFkJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIyJTVEb29OKTMyWCU3RG0lM0ZmVjA1NSlLRCUzRCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlNldmVyaXR5JTIyJTNFZGVidWclM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIyJTVEanp5KU00dXFDQSUyM0ljR35HZ1VzJTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjQlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjIlM0R5JTIzeVolMkYyNDUlMjMlMjUlN0RNIWdTNFclMkIoJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRTAuMSUzQSUyMEhpbndlaXNlJTNBJTIwVHlwJTNBJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnZlcnRfdHlwZSUyMiUyMGlkJTNEJTIyaiUzQmklMjQyWkpZUGolMjRoISUzRCUyRmZmOUctJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySVRFTSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMlB0TWJrJTYwJTQwJTVEJTNEJTJDJTdCRV9VM0F6bWpmJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJyaCUyMyUyRk5iSCUzRlYuSk5xYyUyM1RyUCU3QyU1RCUyMiUzRWxpY2h0SXN0QW4lM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiUzQSUzRiU3QkhUJTJGcDBrYyU1RVpzUm5TQkElM0JJJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUyMFdlcnQlMjBpc3QlM0ElMjAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQzJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyU1BfdFYlNjBuR3V+Mm9relMlNURTMDAlN0MlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnJoJTIzJTJGTmJIJTNGVi5KTnFjJTIzVHJQJTdDJTVEJTIyJTNFbGljaHRJc3RBbiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbHNfaWYlMjIlMjBpZCUzRCUyMndHaSU3QmIlN0N3JTNCQU4xLi1sJTVCKnk4eHElMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19vcGVyYXRpb24lMjIlMjBpZCUzRCUyMkI0JTVEKTQxVXUlM0QqdGx6IWYqZCUyMyUyRiUyRiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFQU5EJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyeDdmcV9VZkVxJTNCLiUyNFZTJTVEJTI0TUFUMSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VUUlVFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2NvbXBhcmUlMjIlMjBpZCUzRCUyMkdHJTdEVUMpJTI1OCUyRmg4cU4zcXRuUmVtJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VORVElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb252ZXJ0X3R5cGUlMjIlMjBpZCUzRCUyMipHJTQwJTNGUiE2dCUyQiUzQWJjSFAzJTNEKXolM0E4JTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySVRFTSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiUyQm9KOCU2MDRPNWYuejlnc1ElM0E1JTdDRTMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnJoJTIzJTJGTmJIJTNGVi5KTnFjJTIzVHJQJTdDJTVEJTIyJTNFbGljaHRJc3RBbiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTJCaHRLKiU3Qn4lNDBVc3pwJTVEcktNVSp6QSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0Vib29sZWFuJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8wJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMmlzdmFvek5rSyUyNCU3Q3p2MiUzRDBqYX5hJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0VkZWJ1ZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjI3JTYwciFoJTNEQmFQejFrRW5QaG9+JTIzJTI1JTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjQlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJuaGtQcXRDYXZTOEMlNjBhS2FGRjBPJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRTAuNSUzQSUyMEJ1Z2ZpeCUyMHdyb25nJTIwdHlwZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb252ZXJ0X3R5cGUlMjIlMjBpZCUzRCUyMiooJTIzWCUyQmN4KCpEeSU0ME1FeiUzQnElNUUuQSUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMklURU0lMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJ5YWU1OCU1RChwRGsxJTVFJTdDJTI0biU1QjFiNSU1RSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIycmglMjMlMkZOYkglM0ZWLkpOcWMlMjNUclAlN0MlNUQlMjIlM0VsaWNodElzdEFuJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJpbWNUZkgwVjNiJTIzKX4lNURjOCU3RCpZKiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlMjBXZXJ0JTIwaXN0JTNBJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMi55THAlNURSJTI1QmR0biU2MCUzREMlN0Q1VENKTSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIycmglMjMlMkZOYkglM0ZWLkpOcWMlMjNUclAlN0MlNUQlMjIlM0VsaWNodElzdEFuJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sc19pZiUyMiUyMGlkJTNEJTIyc19mWEMyJTQwcnRpV04lMjNiSlQ0Z0JKJTIyJTNFJTNDbXV0YXRpb24lMjBlbHNlJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfY29tcGFyZSUyMiUyMGlkJTNEJTIydyUzQkglMjN5SDNhZSU1RHolM0RsMiU1RVJJNColMjMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUVRJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTVFeTVnTHYlNUUtJTQwZWYlM0Y0NWtWVnVyMCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIycmglMjMlMkZOYkglM0ZWLkpOcWMlMjNUclAlN0MlNUQlMjIlM0VsaWNodElzdEFuJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMk5PJTVCVihxJTNCJTIzZC05U1NUJTJGMG1PYiUzRCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0VvbiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8wJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyVkJXbCU2MGclMkMlM0ElNjBVMSUyQjYlM0ZDIV96VWElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnJoJTIzJTJGTmJIJTNGVi5KTnFjJTIzVHJQJTdDJTVEJTIyJTNFbGljaHRJc3RBbiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjIzYiFtKCUyNEJqJTI0NnJxbCUyNVQlN0RoRkd6JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMiUzRCUyNH44YiU3QiFYZDZ6emIzKXNqR2tjJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0VkZWJ1ZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJlJTdDYUklMkZJSyU3QkklNUVGQUtJNnIuLTcyJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRTAuNWElM0ElMjBhbiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJFTFNFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyaSU0MCU3RHFrUngpflB4LlElN0R3OGUlMkMyRiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIycmglMjMlMkZOYkglM0ZWLkpOcWMlMjNUclAlN0MlNUQlMjIlM0VsaWNodElzdEFuJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMk5kdGtLWlJ0dU5UWDFYJTVCMmlyZUYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMiUyM0YlNUUhfn5VSEY3ODFHaTUzQyU2MCFkJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0VkZWJ1ZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJOaWN2T0VVLTglMkZENmdlQ0wlMkMlMjVWbiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UwLjViJTNBJTIwYXVzJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMl9GNEFzSSolN0QzJTdDMiU3QiUyM0YlNDAlNUJlMDkyJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0VkZWJ1ZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJka2xVODFEbTFtSzFINHJpJTVFJTdCdColMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2pvaW4lMjIlMjBpZCUzRCUyMjl1Si5qZmNNRC0lN0IlN0MlMkMlM0QlMkZMMXJ4OSUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIyJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyLkRTUEN2aXYpZ0E1eVE4b0YtQjklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFMSUzQSUyMGVya2FubnQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIybCUzQTUuSkZwJTdCa2tBT1JaRjFGUFYpJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJyaCUyMyUyRk5iSCUzRlYuSk5xYyUyM1RyUCU3QyU1RCUyMiUzRWxpY2h0SXN0QW4lM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjIlNjBITSUyNGJvWklXOEUlNDAyQUolN0JDeChCJTIyJTNFJTNDbXV0YXRpb24lMjBlbHNlJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyNDQlM0FZTHElNUJpeiU1RCUzRiUzQUJ5QzMhJTNBaWwlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnJoJTIzJTJGTmJIJTNGVi5KTnFjJTIzVHJQJTdDJTVEJTIyJTNFbGljaHRJc3RBbiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIybmtGQyUyNHclMkMlMjRCJTVEJTNBJTVELiU3QyU3RGpuQzNkJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0VkZWJ1ZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJKc2VFay1+VCUzQWpoNilhTC5iMnUhJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRTIlM0ElMjBMaWNodCUyMGlzdCUyMGJlcmVpdHMlMjBhbiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbHNfaWYlMjIlMjBpZCUzRCUyMm1YOTJUJTNCaTlRdCUzRiUyNVkpb3F2JTVFemUlMjIlM0UlM0NtdXRhdGlvbiUyMGVsc2UlM0QlMjIxJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJtb3dyYmwxJTIzTE5oeW9UXy1OaCU1QmclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMk4pJTJCKjF+M1pTbG0qZHhmZWglNjAlNUJFJTIyJTNFTGljaHREdXJjaEJld2VnQW4lM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8wJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMiUyQ1lxNUJTUmYhWClHM3ZGSGRrJTNBMSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlNldmVyaXR5JTIyJTNFZGVidWclM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIybDUtTSUyQiUyNCpmdjMlN0QpU2kqbnd4JTVEaCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UzJTNBJTIwdmVybCVDMyVBNG5nZXJlJTIwTGljaHRkYXVlciUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGltZW91dHNfY2xlYXJ0aW1lb3V0JTIyJTIwaWQlM0QlMjJ3RUkwYlNpVzlHYmw4JTVFSXIlM0ElMkZ+JTNBJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTkFNRSUyMiUzRWluaXRMaWNodEF1cyUzQyUyRmZpZWxkJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRpbWVvdXRzX2NsZWFydGltZW91dCUyMiUyMGlkJTNEJTIyKipXMyU1RSU2MGVmJTJDJTVEUSUyM18hUSFLJTdELkQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFdmVybCVDMyVBNG5nZXJ1bmdMaWNodCUzQyUyRmZpZWxkJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRpbWVvdXRzX3NldHRpbWVvdXRfdmFyaWFibGUlMjIlMjBpZCUzRCUyMk1+NFolMkZ5JTJDJTdEJTVCcXYlMkYlM0YlNUVNIVVzdiElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFdmVybCVDMyVBNG5nZXJ1bmdMaWNodCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyREVMQVlfTVMlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMiU3Q1hFfm54TXQpJTQwLikySlZwTmlQWCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTEwMDAlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiUyQ1R0JTNGQWdUJTVCMS5wS2xuJTQwWCU1QiFrQSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTNBTiU1QmNJJTNGJTdEMiU3Qjh3ZHZmJTNGOGM0VyolMjIlM0VMaWNodE5hY2hkZXRla3Rpb25BbmJsZWliZW4lM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19jYWxsbm9yZXR1cm4lMjIlMjBpZCUzRCUyMiU2MHolN0JLQktYTCU0MEotQyU2MChjVElidVMlMjIlM0UlM0NtdXRhdGlvbiUyMG5hbWUlM0QlMjJMaWNodCUyMGF1c3NjaGFsdGVuJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkVMU0UlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIyRzFiSCUyRiU3Qk9nNyUzQUJYKCohJTVFTWQ0MSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlNldmVyaXR5JTIyJTNFZGVidWclM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyLWRiaCUyQ1dKLkYlM0Y4MVBCIWh6bmUlN0IlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFMyUzQW5vdGhpbmcyZG8lMjBMaWNodCUyMG5pY2h0JTIwZHVyY2glMjBBbGdvJTIwZ2VzZXR6dCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkVMU0UlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIyTiUzQmxwKWFDJTI0JTYwZilmLnpLSVR6TVMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWRlYnVnJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlolN0NzJTQwLVklN0NjendsJTdCLjMpRnBZbn4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFMiUzQSUyMExpY2h0JTIwaXN0JTIwYXVzJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sc19pZiUyMiUyMGlkJTNEJTIyUiUyQ3FhdSU0MFVsWnAlNUJrJTVFRSUzRDkqWHF5JTIyJTNFJTNDbXV0YXRpb24lMjBlbHNlJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfY29tcGFyZSUyMiUyMGlkJTNEJTIyWSpDUWstWmhOXzR2JTVCJTdEJTVCbCFKJTVCbSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFTFQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWUlMjIlMjBpZCUzRCUyMiFfJTYwSjRhJTdCMSU3QktfJTNCJTJDUHQlM0ElNjAlNjBkNCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWFsaWFzLjAuZWcuS3VlY2hlLkVHS3VlY2hlRmVuc3RlckJld2VnTHV4JTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnpHemhLUG5PLjhDV2QqJTNESS0lMjMlMjVEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJofiU3RHQ5TUxMJTVEaXRfViU3Q1ZSWTNNJTI1JTIyJTNFc2Nod2VsbFdlcnRMaWNodCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8wJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMkYocyUzRnYlMkYwVExUZUElNUVWa2UlMjVQQVolMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWRlYnVnJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMmlwYiElM0YodU1qbnlRJTVEWDguJTVFJTJDX2clMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFMyUzQSUyMGtsZWluZXIlMjBTY2h3ZWxsd2VydC0lMjZndCUzQkxpY2h0JTIwYW5zY2hhbHRlbiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyUnUzZEVNT3ElM0R+ZEMhOCo0QmIlM0RwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJOKSUyQioxfjNaU2xtKmR4ZmVoJTYwJTVCRSUyMiUzRUxpY2h0RHVyY2hCZXdlZ0FuJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMnAlNDA1SnNOS34lM0YlN0IlMjRwR2dYUTQlMjUyZyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VUUlVFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xfZXglMjIlMjBpZCUzRCUyMl8lM0RkZE9xZDRRNGclMjQxc19QdllxaSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRZUEUlMjIlM0VmYWxzZSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ0xFQVJfUlVOTklORyUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJSM3RUSThlQyUyRmUlMjVzJTJCci0lMkJNekFjJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFT2JqZWN0JTIwSUQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMjBEM0g1JTIzZlVkXyUzQWJDOUJjLigwMyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyOSUyNEtocSU2MFolM0YhSExZJTNBN0VyZyUzRHRsJTIyJTNFaWRMaWNodFNjaGFsdGVyV3JpdGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjI5JTYwMVM4NHlVJTVEbHo4aHN3TSpQbDIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJERUxBWV9NUyUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyLShTJTIzQ3lVOW5keiUzQnNrWSUzRFZ2JTJCLSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTAlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRpbWVvdXRzX3NldHRpbWVvdXRfdmFyaWFibGUlMjIlMjBpZCUzRCUyMklQKCUzQjhmeSU3RHBmJTdDS3MqJTJDTURONWolMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFaW5pdExpY2h0QXVzJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJERUxBWV9NUyUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIycHMlMjUlNUVYZk0qJTNEciUzRCU1QlRQejBxLkwyJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFNjAwMDAlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnUlN0J+bEQlM0ZSfjRxXyUyQ1AuckUlNUJkflclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzQU4lNUJjSSUzRiU3RDIlN0I4d2R2ZiUzRjhjNFcqJTIyJTNFTGljaHROYWNoZGV0ZWt0aW9uQW5ibGVpYmVuJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnByb2NlZHVyZXNfY2FsbG5vcmV0dXJuJTIyJTIwaWQlM0QlMjJtJTdCJTJDbEMwMnROSThqXzZMMyUzQipweSUyMiUzRSUzQ211dGF0aW9uJTIwbmFtZSUzRCUyMkxpY2h0JTIwYXVzc2NoYWx0ZW4lMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRUxTRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmRlYnVnJTIyJTIwaWQlM0QlMjJoZlUhbklMKlclM0EqJTdDSnolMjVodlolN0RFJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0VkZWJ1ZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJ3KjE3diUyRiU3QmguJTI0QXZKbilDV0clM0JSJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRTMlM0ElMjBnciVDMyVCNiVDMyU5RmVyJTIwU2Nod2VsbHdlcnQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkVMU0UlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIyYyUzRGcqZkklMjMtTHklMjMlMkNISyU3Qkd6c3E2JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0VkZWJ1ZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjIlM0I1JTdENFAlMjRhNEtqTWNjNkFsT1lkNiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UxJTNBJTIwbmljaHQlMjBlcmthbm50JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fZXh0JTIyJTIwaWQlM0QlMjJscDYlN0IlMkYlMjUpY3dSJTJCZWJpTHRLKEQlNUIlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBpdGVtcyUzRCUyMjElMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRWFueSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQUNLX0NPTkRJVElPTiUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEMCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMiglNUJ1JTVEJTYwJTI0eW0ybkIxenIlNDBOZ1klNURwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFZGVmYXVsdCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIybSkuUHdlZ19ieFBoJTNGZzYzMEN3JTJCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjItbiU1Ql9XbiU3QzhxJTdETGxoWGZrJTQwayglNUIlMjIlM0VpZExpY2h0U2NoYWx0ZXJSZWFkJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmRlYnVnJTIyJTIwaWQlM0QlMjJuKkRsX3IlM0RWMiUzREFhbF9+VTV+VlolMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWRlYnVnJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMnAlN0NEJTJCJTNCbHU1LiUyNCU3Q0lucy5OQXglM0QpJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRlc3QlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIydSUyM2JINW1RRiUyNHZZYyU2MCU3Q0glM0FMVm9mJTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjYlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJBQSU2MCp6ZHYqY2wlMjNYTFdUJTNBTG9XVCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0VBbGlhc1JlYWQlM0ElMjAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fc291cmNlJTIyJTIwaWQlM0QlMjJIYy5QdHEhUFMlN0JtbmlpcyU3QjllKSU3QyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0VzdGF0ZS52YWwlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyaSU1QiFPJTNBfiFma1VtdHJ1bERTdzMpJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUyQyUyMEFjayUzQSUyMCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDMlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9zb3VyY2UlMjIlMjBpZCUzRCUyMjAwbSU1RWUlM0RTOX5Rdi5sRzVTYXVkcCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0VzdGF0ZS5hY2slM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQ0JTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyOEYlNUU3eUMlMkJ5JTI0cWp1KiUyNTVvZHIwRCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlMkMlMjBTa3JpcHQlM0ElMjAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQ1JTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fc291cmNlJTIyJTIwaWQlM0QlMjJndnpCYXNVJTVEU0NxLlVvTWhJRXYlM0IlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFc3RhdGUuZnJvbSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9leHQlMjIlMjBpZCUzRCUyMkpUaHZhVG0uKiU3QkUlM0YlNUIyM2VHTiU3RG0lMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBpdGVtcyUzRCUyMjElMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRWFueSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQUNLX0NPTkRJVElPTiUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEMCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VkZWZhdWx0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJlJTI0JTNBQiUyNHN4MjAlMkMlNjB6dUN1JTNGJTNCWV8wJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjI5JTI0S2hxJTYwWiUzRiFITFklM0E3RXJnJTNEdGwlMjIlM0VpZExpY2h0U2NoYWx0ZXJXcml0ZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIyJTJDISUzRDFHOUFxNShvSEoodSlVWlBpJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0VkZWJ1ZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRlc3QlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIyYXBLMlUxeEZFaiUyQ01seW1sZCUyM3J2JTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjYlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJBayU3RE8lNjAlMkNvdlk0RUw1JTNGZCU1QiU3QmEwSCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0VBbGlhc1dyaXRlJTNBJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX3NvdXJjZSUyMiUyMGlkJTNEJTIyYWhuJTJDKXpaJTI1eS1XT35TTmUlNUIlMjMlM0FpJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXN0YXRlLnZhbCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJhJTQwZU14JTI1UUl5eW5VJTVEVyUyMyU1QmclM0JDSCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlMkMlMjBBY2slM0ElMjAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQzJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fc291cmNlJTIyJTIwaWQlM0QlMjI0JTQweSUyNFlOJTQwenBTbCUyQiU1RW1hMmpXcVElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFc3RhdGUuYWNrJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQURENCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiU1QiU3Qio3JTdCcE5+KGNhOCU3RCU0MGRhMjZfeCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlMkMlMjBTa3JpcHQlM0ElMjAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQ1JTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fc291cmNlJTIyJTIwaWQlM0QlMjJOSTRzWnMtZyhFV2ZBJTNBWHgybl83JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXN0YXRlLmZyb20lM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnByb2NlZHVyZXNfZGVmbm9yZXR1cm4lMjIlMjBpZCUzRCUyMnUwd1IlNDB5SGtsJTNBZCUyQiUyNCU1QnElMjRKOF9mJTIyJTIweCUzRCUyMjgzOCUyMiUyMHklM0QlMjI5NjMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFTGljaHQlMjBhdXNzY2hhbHRlbiUzQyUyRmZpZWxkJTNFJTNDY29tbWVudCUyMHBpbm5lZCUzRCUyMmZhbHNlJTIyJTIwaCUzRCUyMjgwJTIyJTIwdyUzRCUyMjE2MCUyMiUzRUJlc2NocmVpYmUlMjBkaWVzZSUyMEZ1bmt0aW9uJTIwJUUyJTgwJUE2JTNDJTJGY29tbWVudCUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFDSyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmRlYnVnJTIyJTIwaWQlM0QlMjJmMHctJTdERUZ3WnYlM0IlM0QxTEMlM0ElM0FtR2olMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWRlYnVnJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMnRWJTJDSzQlMjVCZiUzQS5RZ3VDWEclN0QlMjRVJTVCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRVglM0ElMjBMaWNodCUyMGF1c3NjaGFsdGVuJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjIlM0RkJTJGaCUzRFNFT20oJTNEbyUyNGtlQlRwMyUyQiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyTiklMkIqMX4zWlNsbSpkeGZlaCU2MCU1QkUlMjIlM0VMaWNodER1cmNoQmV3ZWdBbiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjIlMjUlNUQqNFh2aCU1RCUzQmRkUSUyMzZmJTI1JTVFMyglM0QlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbF9leCUyMiUyMGlkJTNEJTIyZF9LMS1EcSUyQiU3QjIlMkMqV3EtZTFfJTNCJTQwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVFlQRSUyMiUzRWZhbHNlJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDTEVBUl9SVU5OSU5HJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VPYmplY3QlMjBJRCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyYmQlNUIxRmpmViU1RWQlM0ZtaiU3QnF0Wm50KSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyOSUyNEtocSU2MFolM0YhSExZJTNBN0VyZyUzRHRsJTIyJTNFaWRMaWNodFNjaGFsdGVyV3JpdGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJ3aiUyQzByV2hwdWsyJTdCJTQwRlFRNWlqdiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJERUxBWV9NUyUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyMiUyQmJVSCU3Q2MlM0JsbmtXSyU1RGJSJTNEbFNLJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGeG1sJTNF
Alias Read:
{ "common": { "name": "EGKuecheFensterLichtRead", "desc": "Manuell erzeugt", "role": "switch", "type": "boolean", "read": true, "write": true, "def": false, "alias": { "id": "mqtt.0.shellies.shelly1l-XXX.relay.0", "read": "val=='on'" } }, "type": "state", "native": {}, "_id": "alias.0.eg.Kueche.EGKuecheFensterLichtRead", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1677258916765 }
Alias Write:
{ "common": { "name": "EGKuecheFensterLichtWrite", "desc": "Manuell erzeugt", "role": "switch", "type": "boolean", "read": true, "write": true, "def": false, "alias": { "id": "mqtt.0.shellies.shelly1l-XXX.relay.0.command", "write": "val?'on':'off'" } }, "type": "state", "native": {}, "_id": "alias.0.eg.Kueche.EGKuecheFensterLichtWrite", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1677258607761 }
führte zu folgender Debugausgabe (ich habe den IOBroker neugestartet,da dieser den lesen alias am Anfang nicht aktualisiert hatte, dies ging aber ohne Probleme nach dem Neustart)
Debug ausgabe:18:24:13.157 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 0: Bewegung 18:24:13.158 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 0.1: Hinweise: Typ:boolean Wert ist: false 18:24:13.158 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 1: erkanntfalse 18:24:13.159 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 2: Licht ist aus 18:24:13.159 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 3: kleiner Schwellwert->Licht anschalten 18:24:13.173 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasWrite: true, Ack: false, Skript: system.adapter.javascript.0 18:24:13.182 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasWrite: true, Ack: true, Skript: system.adapter.mqtt.0 18:24:13.197 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasRead: true, Ack: true, Skript: system.adapter.mqtt.0 18:24:26.354 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasRead: false, Ack: true, Skript: system.adapter.mqtt.0 18:24:45.147 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 0: Bewegung 18:24:45.148 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 1: nicht erkannt 18:25:13.160 debug javascript.0 (545343) script.js.EG.kueche.beweg3: X: Licht ausschalten 18:25:13.177 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasWrite: false, Ack: false, Skript: system.adapter.javascript.0 18:25:13.198 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasWrite: false, Ack: true, Skript: system.adapter.mqtt.0 18:25:26.413 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 0: Bewegung 18:25:26.414 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 0.1: Hinweise: Typ:boolean Wert ist: false 18:25:26.414 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 1: erkanntfalse 18:25:26.415 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 2: Licht ist aus 18:25:26.416 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 3: kleiner Schwellwert->Licht anschalten 18:25:26.431 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasWrite: true, Ack: false, Skript: system.adapter.javascript.0 18:25:26.440 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasWrite: true, Ack: true, Skript: system.adapter.mqtt.0 18:25:26.507 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasRead: true, Ack: true, Skript: system.adapter.mqtt.0 18:25:58.387 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 0: Bewegung 18:25:58.388 debug javascript.0 (545343) script.js.EG.kueche.beweg3: 1: nicht erkannt 18:26:26.418 debug javascript.0 (545343) script.js.EG.kueche.beweg3: X: Licht ausschalten 18:26:26.452 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasWrite: false, Ack: false, Skript: system.adapter.javascript.0 18:26:26.466 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasWrite: false, Ack: true, Skript: system.adapter.mqtt.0 18:26:26.480 debug javascript.0 (545343) script.js.EG.kueche.beweg3: AliasRead: false, Ack: true, Skript: system.adapter.mqtt.0
Zeile 16 zeigt nun den richtigen Wert an :).
Ich denke die Lösung liegt tatsächlich darin zwei Alias zu verwenden. Vielen, vielen Dank @paul53 -
@iomas sagte: Ich denke die Lösung liegt tatsächlich darin zwei Adapter zu verwenden.
Nein, das muss auch mit einem Alias funktionieren - wie bei mir.
EDIT: Welche Node.js-Version?