NEWS
(erledigt) Kommentar in JSON String
-
@homoran said in Kommentar in JSON String:
was spricht dagegen ein weiteres Attribut "comment":"blabla", zu erzeugen
Dann muss ich das im sript abfangen und nicht berücksichtigen. Dann braucht das aber jeder Eintrag.
@paul53 said in Kommentar in JSON String:
Kommentare kann man mit "//" an jede Zeile anhängen.
das hört sich gut an werde ich probieren. Danke
-
@paul53 said in Kommentar in JSON String:
Kommentare kann man mit "//" an jede Zeile anhängen.
ja so wäre das schön, funktioniert aber nicht. Wenn dort was steht läuft die Schleife nicht mehr
[ // test ob das geht [ "alias.0.Aktor_x.CH1_State", "javascript.0.ST1_Buero_Auto", "javascript.0.ST1_Buero_an", "javascript.0.ST1_Buero_aus" ], [ "alias.0.Aktor_x.CH2_State", "javascript.0.St2_Buero_Auto", "javascript.0.St2_Buero_an", "javascript.0.St2_Buero_aus" ], [ "alias.0.Aktor_x.CH3_State", "javascript.0.St3_Buero_Auto",
-
@ubecker sagte: läuft die Schleife nicht mehr
Das kann ich nicht nachvollziehen.
const arr = [ // Kommentar [ "alias.0.Aktor_x.CH1_State", "javascript.0.ST1_Buero_Auto", "javascript.0.ST1_Buero_an", "javascript.0.ST1_Buero_aus" ], [ "alias.0.Aktor_x.CH2_State", "javascript.0.St2_Buero_Auto", "javascript.0.St2_Buero_an", "javascript.0.St2_Buero_aus" ], [ "alias.0.Aktor_x.CH3_State", "javascript.0.St3_Buero_Auto", "javascript.0.St3_Buero_an", "javascript.0.St3_Buero_aus" ] ]; for(let i = 0; i < arr.length; i++) { log(arr[i]); }
Log:
19:00:34.344 info javascript.1 (6050) script.js.common.Neuer_Test: ['alias.0.Aktor_x.CH1_State','javascript.0.ST1_Buero_Auto','javascript.0.ST1_Buero_an','javascript.0.ST1_Buero_aus'] 19:00:34.344 info javascript.1 (6050) script.js.common.Neuer_Test: ['alias.0.Aktor_x.CH2_State','javascript.0.St2_Buero_Auto','javascript.0.St2_Buero_an','javascript.0.St2_Buero_aus'] 19:00:34.344 info javascript.1 (6050) script.js.common.Neuer_Test: ['alias.0.Aktor_x.CH3_State','javascript.0.St3_Buero_Auto','javascript.0.St3_Buero_an','javascript.0.St3_Buero_aus']
EDIT: Mit innerer Schleife:
const arr = [ // Kommentar [ "alias.0.Aktor_x.CH1_State", "javascript.0.ST1_Buero_Auto", "javascript.0.ST1_Buero_an", "javascript.0.ST1_Buero_aus" ], [ "alias.0.Aktor_x.CH2_State", "javascript.0.St2_Buero_Auto", "javascript.0.St2_Buero_an", "javascript.0.St2_Buero_aus" ], [ "alias.0.Aktor_x.CH3_State", "javascript.0.St3_Buero_Auto", "javascript.0.St3_Buero_an", "javascript.0.St3_Buero_aus" ] ]; for(let i = 0; i < arr.length; i++) { const ids = arr[i]; for(let j = 0; j < ids.length; j++) { log(ids[j]); } }
Log:
19:10:19.288 info javascript.1 (6050) script.js.common.Neuer_Test: alias.0.Aktor_x.CH1_State 19:10:19.288 info javascript.1 (6050) script.js.common.Neuer_Test: javascript.0.ST1_Buero_Auto 19:10:19.288 info javascript.1 (6050) script.js.common.Neuer_Test: javascript.0.ST1_Buero_an 19:10:19.288 info javascript.1 (6050) script.js.common.Neuer_Test: javascript.0.ST1_Buero_aus 19:10:19.288 info javascript.1 (6050) script.js.common.Neuer_Test: alias.0.Aktor_x.CH2_State 19:10:19.288 info javascript.1 (6050) script.js.common.Neuer_Test: javascript.0.St2_Buero_Auto 19:10:19.288 info javascript.1 (6050) script.js.common.Neuer_Test: javascript.0.St2_Buero_an 19:10:19.288 info javascript.1 (6050) script.js.common.Neuer_Test: javascript.0.St2_Buero_aus 19:10:19.288 info javascript.1 (6050) script.js.common.Neuer_Test: alias.0.Aktor_x.CH3_State 19:10:19.289 info javascript.1 (6050) script.js.common.Neuer_Test: javascript.0.St3_Buero_Auto 19:10:19.289 info javascript.1 (6050) script.js.common.Neuer_Test: javascript.0.St3_Buero_an 19:10:19.289 info javascript.1 (6050) script.js.common.Neuer_Test: javascript.0.St3_Buero_aus
-
@paul53 ok, dann fehlt dir eine Info. Ich habe dieses Array als Datenpunkt gespeichert. Aus diesem hole ich die Infos für ein anderes Script.
ist ein Blockly Das schaltet alle meine Aktoren zu bestimmten Zeiten. Jeder Aktor kann unterschiedliche beliebige Zeiten haben
var f_send, f_objekt, f_value, send, ID_Liste, write_objekt, Listen_Elemente, Wert_aus_Elemente, ID_, _auto, _an, _aus, write_value; // Werte an Aktoren senden. f_send = soll gesendet // werdenf_objekt = Objekt_IDf_value = Wert async function senden(f_send, f_objekt, f_value) { if (f_send) { // nur senden wenn ungleich if (getState(f_objekt).val != f_value) { setStateDelayed(f_objekt, f_value, false, parseInt(((10) || '').toString(), 10), false); } } f_send = false; return f_send; } // senden mehrerer Aktoren zu bestimmten Zeiten // ST1 Büro, ST2 Büro, ST3 Büro // Garten 1, Garten 2, Garten 3, Garten 4 // Licht - DVD, Esstisch, Fernsehlampe, Gabis Stehlampe // Licht - Küche send = false; on({ id: [].concat(['javascript.0.variables.dayTime']), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; ID_Liste = (function () { try { return JSON.parse(getState('0_userdata.0.array_ein').val); } catch (e) { return {}; }})(); var Listen_Elemente_end = ID_Liste.length; var Listen_Elemente_inc = 1; if (1 > Listen_Elemente_end) { Listen_Elemente_inc = -Listen_Elemente_inc; } for (Listen_Elemente = 1; Listen_Elemente_inc >= 0 ? Listen_Elemente <= Listen_Elemente_end : Listen_Elemente >= Listen_Elemente_end; Listen_Elemente += Listen_Elemente_inc) { Wert_aus_Elemente = 1; var ID__list = ID_Liste[(Listen_Elemente - 1)]; for (var ID__index in ID__list) { ID_ = ID__list[ID__index]; switch (Wert_aus_Elemente) { case 1: write_objekt = ID_; break; case 2: _auto = ID_; break; case 3: _an = ID_; break; case 4: _aus = ID_; break; } Wert_aus_Elemente = (typeof Wert_aus_Elemente === 'number' ? Wert_aus_Elemente : 0) + 1; } if ((obj.state ? obj.state.val : "") == getState(_an).val) { write_value = true; send = true; } else if ((obj.state ? obj.state.val : "") == getState(_aus).val) { write_value = false; send = true; } send = await senden(send, write_objekt, write_value); } }); //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0N2YXJpYWJsZXMlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyQSU1Ql9zTlVVVDl5aSU1Qlc4T0xjZ00lMkMlMjIlM0VmX3NlbmQlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIlN0QlNUJKZG9va3BlRSU2MCpUZSUyRklKJTVCNyUzQiUyMiUzRWZfb2JqZWt0JTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyMjIlMjUoJTVEJTJGdyoxKEZFVThhJTNBRXg5OCUyMiUzRWZfdmFsdWUlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIlNjBWfn5nNjZzUkpoZiUyRmM1WmE0MlElMjIlM0VzZW5kJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyIUxffmolN0RNZUUlMkYlNUVSN0MuJTJDRCUzQUZPJTIyJTNFSURfTGlzdGUlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIqMlg2MShZOENySjlKLnpLKmRNbSUyMiUzRXdyaXRlX29iamVrdCUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMkIlNUUlN0MlNUU2WkIqX1N3c2QlMjUlNjB4JTIzdCglM0ElMjIlM0VMaXN0ZW5fRWxlbWVudGUlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIlMkYlM0JFQ1AyYkQuJTdCRmZ4alltUmp4JTNBJTIyJTNFV2VydF9hdXNfRWxlbWVudGUlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIwd0cwRjg5KjN4diU1RCU3Qm1EZHo2bk0lMjIlM0VJRF8lM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjJoKiUyMzglMjVfIVkqKWIoJTVCJTNBKmElMkZpQ2QlMjIlM0VfYXV0byUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMkUzcHR5JTNCdUdoUWZ4Lm92RWx4X1ElMjIlM0VfYW4lM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIlNUU2JTVETSU3RCU0MCU0MFJNViUyQnN1WWpudVFoJTNGJTIyJTNFX2F1cyUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMmxBMUdXaGhDSWZDLiU1RCglNURQJTI0RilIJTIyJTNFd3JpdGVfdmFsdWUlM0MlMkZ2YXJpYWJsZSUzRSUzQyUyRnZhcmlhYmxlcyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbW1lbnQlMjIlMjBpZCUzRCUyMlg3Ry41JTQwQnolNDBFYkglMkJGJTNEJTJGd0EzQSUyMiUyMHglM0QlMjItMTM2MyUyMiUyMHklM0QlMjItMTUxMiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTU1FTlQlMjIlM0VzZW5kZW4lMjBtZWhyZXJlciUyMEFrdG9yZW4lMjB6dSUyMGJlc3RpbW10ZW4lMjBaZWl0ZW4lM0MlMkZmaWVsZCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb21tZW50JTIyJTIwaWQlM0QlMjIpNyU1REUlN0NRTE4lMjN6SzUlMkZfNSU2MEl4TiU3RCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTU1FTlQlMjIlM0VTVDElMjBCJUMzJUJDcm8lMkMlMjBTVDIlMjBCJUMzJUJDcm8lMkMlMjBTVDMlMjBCJUMzJUJDcm8lM0MlMkZmaWVsZCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb21tZW50JTIyJTIwaWQlM0QlMjJtLnYuRG9JJTNGcFJXZ2t4am1ycXVGJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09NTUVOVCUyMiUzRUdhcnRlbiUyMDElMkMlMjBHYXJ0ZW4lMjAyJTJDJTIwR2FydGVuJTIwMyUyQyUyMEdhcnRlbiUyMDQlM0MlMkZmaWVsZCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb21tZW50JTIyJTIwaWQlM0QlMjJxJTVEJTdCTjRXJTJCJTVEJTVCJTJDNVBlKSUyQ0pHYUMlN0QlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT01NRU5UJTIyJTNFTGljaHQlMjAtJTIwRFZEJTJDJTIwRXNzdGlzY2glMkMlMjBGZXJuc2VobGFtcGUlMkMlMjBHYWJpcyUyMFN0ZWhsYW1wZSUzQyUyRmZpZWxkJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbW1lbnQlMjIlMjBpZCUzRCUyMmElMjU4SW1xRiUyNSUyRiUyQ1FNc2JhQV8lM0ZHJTVCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09NTUVOVCUyMiUzRUxpY2h0JTIwLSUyMEslQzMlQkNjaGUlMjAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19kZWZyZXR1cm4lMjIlMjBpZCUzRCUyMkZIMn5UKCklN0RSJTNBJTI0LiUyRkp2fkx0RCU3QyUyMiUyMHglM0QlMjItMTM2MyUyMiUyMHklM0QlMjItMTM2MyUyMiUzRSUzQ211dGF0aW9uJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmZfc2VuZCUyMiUyMHZhcmlkJTNEJTIyQSU1Ql9zTlVVVDl5aSU1Qlc4T0xjZ00lMkMlMjIlM0UlM0MlMkZhcmclM0UlM0NhcmclMjBuYW1lJTNEJTIyZl9vYmpla3QlMjIlMjB2YXJpZCUzRCUyMiU3RCU1Qkpkb29rcGVFJTYwKlRlJTJGSUolNUI3JTNCJTIyJTNFJTNDJTJGYXJnJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmZfdmFsdWUlMjIlMjB2YXJpZCUzRCUyMjIyJTI1KCU1RCUyRncqMShGRVU4YSUzQUV4OTglMjIlM0UlM0MlMkZhcmclM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5BTUUlMjIlM0VzZW5kZW4lM0MlMkZmaWVsZCUzRSUzQ2NvbW1lbnQlMjBwaW5uZWQlM0QlMjJmYWxzZSUyMiUyMGglM0QlMjI4MCUyMiUyMHclM0QlMjIxNjAlMjIlM0VXZXJ0ZSUyMGFuJTIwQWt0b3JlbiUyMHNlbmRlbi4lMjBmX3NlbmQlMjAlM0QlMjBzb2xsJTIwZ2VzZW5kZXQlMjB3ZXJkZW5mX29iamVrdCUyMCUzRCUyME9iamVrdF9JRGZfdmFsdWUlMjAlM0QlMjBXZXJ0JTIwJTIwJTNDJTJGY29tbWVudCUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFDSyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjJsfndIR180KSFPSFQlMjR5cS05SFhXJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyaykzYlRqSSUyQ05vSyU3QkNCRColM0FmVmIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMkElNUJfc05VVVQ5eWklNUJXOE9MY2dNJTJDJTIyJTNFZl9zZW5kJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbW1lbnQlMjIlMjBpZCUzRCUyMk1+QWlpX2MlMjVZNyU3RDR+bWYzeCUzRi5uJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09NTUVOVCUyMiUzRW51ciUyMHNlbmRlbiUyMHdlbm4lMjB1bmdsZWljaCUzQyUyRmZpZWxkJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjIlM0Q0MmFlYXQlN0JQJTNEJTdCeCU3Qlgta3BDWUclMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjIwJTdCOWgqOG50bCU2MFdvayUyQjJySiU2MDhWJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VORVElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWVfdmFyJTIyJTIwaWQlM0QlMjJDKGpiSSUyQlc1ZyUyNE9TRiU1RExGfiU0MDVVJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyJTI0JTdDYy5XVUk3RUdlMG8tTldZJTdEJTdEYyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRU9iamVjdCUyMElEJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJ+TkEzM2I2NTYpLXRiM2QlMkNMSiUyNS4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU3RCU1Qkpkb29rcGVFJTYwKlRlJTJGSUolNUI3JTNCJTIyJTNFZl9vYmpla3QlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnRrM3Z3R0hzZHEzZUl5QXUlNUR1VXUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMjIyJTI1KCU1RCUyRncqMShGRVU4YSUzQUV4OTglMjIlM0VmX3ZhbHVlJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sX2V4JTIyJTIwaWQlM0QlMjJ5TTdONi5lbzdidVNZeUhHRyUyQmdZJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVFlQRSUyMiUzRWZhbHNlJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDTEVBUl9SVU5OSU5HJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMjZ1engoV0tiZShOJTI0JTQwbEJHeE5HQiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRWhtLXJwYy4yLkxFUTAwNDIyOTcuMS5MRVZFTCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIydXczUWolNURNekQ1NlgxJTNGKlRzUkYlM0ElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU3RCU1Qkpkb29rcGVFJTYwKlRlJTJGSUolNUI3JTNCJTIyJTNFZl9vYmpla3QlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJmZDNidDNleEcoYUJkJTdDJTNCMmRPS3glMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnAhWiUzRnIlN0ItJTdCbiUyNU0lM0RkRjVqUGJ5dSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyMjIlMjUoJTVEJTJGdyoxKEZFVThhJTNBRXg5OCUyMiUzRWZfdmFsdWUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJERUxBWV9NUyUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyJTVCJTNBRiEqJTI1V3VqNlJfJTdCRWt1UyE1SiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTEwJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMiUyNUklMjUlNUQlMjQ2ZmM1OSUyQmwlM0ZzbzhPLi1qJTIyJTIwZGlzYWJsZWQlM0QlMjJ0cnVlJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0Vsb2clM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyZSUzQSFIc3JLUCUyM01fJTdCbCU1RDEqJTNEREYoJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRlc3QlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIyQ3pZJTNBJTJDcCUzQi11UUJzR2h1MiUyRiUzQmpqJTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjMlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJPWFchVSUzRl8hX1BMJTVEOXlFcX5HTyUyMyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyQSU1Ql9zTlVVVDl5aSU1Qlc4T0xjZ00lMkMlMjIlM0VmX3NlbmQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIySkRDJTJDNHAlN0RteiU2MFAlNUQlN0MlNUJZdmJpUSU1RCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyKjJYNjEoWThDcko5Si56SypkTW0lMjIlM0V3cml0ZV9vYmpla3QlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTNBTktXMyUyQyUzQnolMkY1JTJGMSU3QippJTdEJTYwJTNBVWElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMjIyJTI1KCU1RCUyRncqMShGRVU4YSUzQUV4OTglMjIlM0VmX3ZhbHVlJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJCRiUzRiUzQmdFUDZlSk0lMkIlMjRTdlZTNzd2JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJBJTVCX3NOVVVUOXlpJTVCVzhPTGNnTSUyQyUyMiUzRWZfc2VuZCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJMbnpIcH4lM0F4akYxTipoRU4lN0JtRGclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlJFVFVSTiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMlFRODclMkMuZTVMZCU3QmVhUzhVJTVCVm9YJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJBJTVCX3NOVVVUOXlpJTVCVzhPTGNnTSUyQyUyMiUzRWZfc2VuZCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyKn4lN0RLU3I0JTdDJTdEWTg2NypNKHdGZiU1RCUyMiUyMHglM0QlMjItMTM2MiUyMiUyMHklM0QlMjItODYyJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlNjBWfn5nNjZzUkpoZiUyRmM1WmE0MlElMjIlM0VzZW5kJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMiU1RCklMjVrJTI1JTVCejclN0QlN0JvTCElMkIzd0hENWIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fZXh0JTIyJTIwaWQlM0QlMjJZcGtMc2IlNURBKEhFJTNGNzlhJTdERmR6WSUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGl0ZW1zJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09ORElUSU9OJTIyJTNFbmUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFDS19DT05ESVRJT04lMjIlM0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRDAlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjIlMkZ5bHZxJTNEZCgzJTNBciUyM1JtN0dfREFGJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFamF2YXNjcmlwdC4wLnZhcmlhYmxlcy5kYXlUaW1lJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjIyOX5SMlVSUWlqOWd2TCUyRkJwJTYwJTIzYiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyIUxffmolN0RNZUUlMkYlNUVSN0MuJTJDRCUzQUZPJTIyJTNFSURfTGlzdGUlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udmVydF9qc29uMm9iamVjdCUyMiUyMGlkJTNEJTIyLTlTU08lM0YlN0JhM3klN0IlMkZyQSklMjRZRyUyRkolMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZV92YXIlMjIlMjBpZCUzRCUyMiU3RCU0MCUyMyU1RGRnWHVBJTdEIS5LSEglM0RJJTYwNV8lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJLQShVJTVFZGdhaFl5SHZzTGNkdCh2JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFMF91c2VyZGF0YS4wLmFycmF5X2VpbiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ1cGRhdGUlMjIlMjBpZCUzRCUyMkFRJTYwWlpSbiU1RCUzRGpKJTNCVyUzQXNuZnlzSyUyMiUyMGRpc2FibGVkJTNEJTIydHJ1ZSUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5hcnJheV9yZXQlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfREVMQVklMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb252ZXJ0X29iamVjdDJqc29uJTIyJTIwaWQlM0QlMjIlM0QoRSUyNCU2MEVxMXlRcCUzRjhtYn4lNjBNaiUyNCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlBSRVRUSUZZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyOXJZZzklMjNrJTJCJTJDSyUyRl9jUiUzQkRsaTklNUQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiFMX35qJTdETWVFJTJGJTVFUjdDLiUyQ0QlM0FGTyUyMiUzRUlEX0xpc3RlJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sc19mb3IlMjIlMjBpZCUzRCUyMkN2Mm4lN0JuKlZBbDMlMkY2Y0JVbVo3JTdDJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJCJTVFJTdDJTVFNlpCKl9Td3NkJTI1JTYweCUyM3QoJTNBJTIyJTNFTGlzdGVuX0VsZW1lbnRlJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJGUk9NJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjIlM0RnaE9tc3doeCU2ME9QVjQlMjNjaU4tMSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVE8lMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMiUyRjdqJTI0JTYwJTIza2dNUEtDUEglMjUta3NpVCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTEwJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsaXN0c19sZW5ndGglMjIlMjBpZCUzRCUyMiklM0ZQQSUyNG8lNDBQJTdCNWZ4JTNGKCpHRV9WJTYwJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIlNDB2JTJDWEpEY2wlN0NkJTNENmtWNS02X0RkJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIhTF9+aiU3RE1lRSUyRiU1RVI3Qy4lMkNEJTNBRk8lMjIlM0VJRF9MaXN0ZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCWSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIybWwlNDAlNUJQJTNETGI5SiUyM2VMQzB5V0N+NyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyNUdMYzJRWEVKUC5pcFIlNDBTUSUzQXI2JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlMkYlM0JFQ1AyYkQuJTdCRmZ4alltUmp4JTNBJTIyJTNFV2VydF9hdXNfRWxlbWVudGUlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMjJzLiUyRkQzKTZ6UGdxSSUzQSUyNEVJanRoJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sc19mb3JFYWNoJTIyJTIwaWQlM0QlMjJXaFMlNDAzRTYlMjN2NyU3RFJkSyUzRk03blBEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIwd0cwRjg5KjN4diU1RCU3Qm1EZHo2bk0lMjIlM0VJRF8lM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkxJU1QlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsaXN0c19nZXRJbmRleCUyMiUyMGlkJTNEJTIyZmVMTzFZNVQlN0M4KTclNURKJTNCbVglMjMlMjQlM0QlMjIlM0UlM0NtdXRhdGlvbiUyMHN0YXRlbWVudCUzRCUyMmZhbHNlJTIyJTIwYXQlM0QlMjJ0cnVlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJNT0RFJTIyJTNFR0VUJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRSUyMiUzRUZST01fU1RBUlQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyY3lLfmxJMFQlM0RJbzQuOUExJTVFJTIzYiU2MCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyIUxffmolN0RNZUUlMkYlNUVSN0MuJTJDRCUzQUZPJTIyJTNFSURfTGlzdGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMl8lNDB0R2UteDMwYlolM0Y3LiUyNCU1Ql8lMjRPbSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyQiU1RSU3QyU1RTZaQipfU3dzZCUyNSU2MHglMjN0KCUzQSUyMiUzRUxpc3Rlbl9FbGVtZW50ZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8lMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIyJTQwanFvc0U2MiUzQW1kRkJPY1Z4SlhJJTIyJTIwY29sbGFwc2VkJTNEJTIydHJ1ZSUyMiUyMGRpc2FibGVkJTNEJTIydHJ1ZSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlNldmVyaXR5JTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiU3REIyTzVSOHNtRUElMjRzJTVEISU2MCUyMzZMcSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXN0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2pvaW4lMjIlMjBpZCUzRCUyMmNTX3clNUUqck1PMzIodiUyQ2kwOCUyM3IlN0QlMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyOSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlRoczFNQyUyNEFnJTQwKCUzRExqQnNZN1kqJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRUVsZW1lbnQlM0QlMjAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyNjNXbGZxYyU3QiglMkY5b1gtVCU3REVDfmglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMkIlNUUlN0MlNUU2WkIqX1N3c2QlMjUlNjB4JTIzdCglM0ElMjIlM0VMaXN0ZW5fRWxlbWVudGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyTlJVM18ySlpzJTJGSXlyKk5fbWptKSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0IlMjAlMjBXZXJ0JTIwYXVzJTIwRWxlbWVudCUzRCUyMCUyMCUyMCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDMlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJzYyUyMzljJTJGJTI1UVF5QyUyM0tlJTdDTSUyNFRFJTJGJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlMkYlM0JFQ1AyYkQuJTdCRmZ4alltUmp4JTNBJTIyJTNFV2VydF9hdXNfRWxlbWVudGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQ0JTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTQwJTYwJTJCJTJCJTQwTXhEJTJGRTJBVihkciU1RCUyQmhSJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQiUyMElEJTNBJTIwJTIwJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQURENSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMjNld0ZfViUyMzlxdGNNOCU3Q25PRCU1RUFHJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIwd0cwRjg5KjN4diU1RCU3Qm1EZHo2bk0lMjIlM0VJRF8lM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQ2JTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyWW4lNjBSTU1GVW0lNjBOJTNBZzZmJTJCYXQ5UCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0IlMjBXZXJ0JTNBJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQURENyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZV92YXIlMjIlMjBpZCUzRCUyMl8lNjBfdm8wbmdYV0t2T0xBTTVXd1clMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJyeX5RX1EuJTNCRWdmKWc1U0hKRiU1RWMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VPYmplY3QlMjBJRCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyKSgyTil0eiU1RDduWEhLSCUzREklM0Q5LVElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMjB3RzBGODkqM3h2JTVEJTdCbURkejZuTSUyMiUzRUlEXyUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQ4JTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyTXdzNW1ZeCkyJTdEdzQ2V2JwRVBFNiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0IlMjAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX3N3aXRjaF9jYXNlJTIyJTIwaWQlM0QlMjJ1KTElNjAlM0JQTldvJTIzMVBGeWdnKXVmcCUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGNhc2UlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJDT05ESVRJT04lMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIlMjM3JTJGJTJGQ08xeShlVU8tIUQlMkNFJTdDaGMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUyRiUzQkVDUDJiRC4lN0JGZnhqWW1SanglM0ElMjIlM0VXZXJ0X2F1c19FbGVtZW50ZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkNBU0VDT05ESVRJT04wJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMjd2JTJGZlZQODYxU2ZpJTJGJTJCJTdEYjR5cVolMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkNBU0UwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyM1Y2WlV2Xy1oTSglN0IlN0RuJTIzWklrRSglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMioyWDYxKFk4Q3JKOUoueksqZE1tJTIyJTNFd3JpdGVfb2JqZWt0JTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMllGSEJQQk8lM0ZxaFJCLiU1Qk4wTHFLUSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyMHdHMEY4OSozeHYlNUQlN0JtRGR6Nm5NJTIyJTNFSURfJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJDQVNFQ09ORElUSU9OMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjIlMkJPWkowcjElNDAlMjNXVUo2bTBURVh3WCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyQ0FTRTElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJHRyhFJTVFQlFoTiUyQmpENCUyM1N0WSUzQUkxJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJoKiUyMzglMjVfIVkqKWIoJTVCJTNBKmElMkZpQ2QlMjIlM0VfYXV0byUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIlMjNmaiU3Q3lTYyU3Qm11eiUyRm4yZzZubyU1QmclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMjB3RzBGODkqM3h2JTVEJTdCbURkejZuTSUyMiUzRUlEXyUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQ0FTRUNPTkRJVElPTjIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyJTQwJTdCdzZ+cXR3WHpldiU3REdOKjhGJTNGLiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTMlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyQ0FTRTIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJfKmglMkZxJTNCJTYwbDNSaHlLTXpFTSU1RCUyNXYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMkUzcHR5JTNCdUdoUWZ4Lm92RWx4X1ElMjIlM0VfYW4lM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTVFLTVEJTVEJTI0eC1UZSUyQzhiJTVEKXIoNkJCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIwd0cwRjg5KjN4diU1RCU3Qm1EZHo2bk0lMjIlM0VJRF8lM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkNBU0VDT05ESVRJT04zJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMkxwSFN5JTNBISUyQkE2Lm4lNURfeCU0MHRRJTNBcSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyQ0FTRTMlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJZMnklNjB2aU9mJTNEcyolN0NTVSUyQ01PNzlVJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlNUU2JTVETSU3RCU0MCU0MFJNViUyQnN1WWpudVFoJTNGJTIyJTNFX2F1cyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJ3RUUzUyFGJTdCQyU1RSUyQ0s0WSFMQjclMkZtJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIwd0cwRjg5KjN4diU1RCU3Qm1EZHo2bk0lMjIlM0VJRF8lM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX2NoYW5nZSUyMiUyMGlkJTNEJTIyRE8lNURPQjdGJTNBTHJtYnZBSlVtRC5BJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlMkYlM0JFQ1AyYkQuJTdCRmZ4alltUmp4JTNBJTIyJTNFV2VydF9hdXNfRWxlbWVudGUlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkRFTFRBJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJwY1clMjVsVDVhSWRrX2prVyU3RERmY3glMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmRlYnVnJTIyJTIwaWQlM0QlMjI1WnRvR2hmJTIzJTYwaEglM0ZtenMoJTVCYjlSJTIyJTIwY29sbGFwc2VkJTNEJTIydHJ1ZSUyMiUyMGRpc2FibGVkJTNEJTIydHJ1ZSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlNldmVyaXR5JTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMm9kJTNBNmFRWGUoJTdEUnkxUyU0MFRMJTJDSX4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFdGVzdCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjJwVHBTNVklMjUxSjVRJTJGSCUzRkd+bjVqRyUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjI5JTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTQwTFFpWEIuJTNGN0NSKSUyNXMwJTdDX04lNUVtJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIqMlg2MShZOENySjlKLnpLKmRNbSUyMiUzRXdyaXRlX29iamVrdCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJmNUV4JTI1dF9vMG5KaElIJTNBdk8xcEwlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTJDJTIwJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMk4hQ055TDhsbSU0MCU1QiF0cyUzRCE2Kl8lN0QlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMmgqJTIzOCUyNV8hWSopYiglNUIlM0EqYSUyRmlDZCUyMiUzRV9hdXRvJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlVUJTJCdmtOLiUyMzMlM0JfJTNCc0FzRzUpY3glMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTJDJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQURENCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMjVVJTNGJTdCJTJDbDc1KiU1RCU3Qmhpb1k1YX5uWiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyRTNwdHklM0J1R2hRZngub3ZFbHhfUSUyMiUzRV9hbiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJsUCU1RWElMkNULkx2OEJLJTYwTy04aFclMjUlMjMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTJDJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQURENiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMjMlMkMxUTJ1IU0pZWMlN0JCSXFEYTUlM0IlM0IlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU1RTYlNURNJTdEJTQwJTQwUk1WJTJCc3VZam51UWglM0YlMjIlM0VfYXVzJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQURENyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMkZDUU0lMkYlNUJFLTQlNjBkJTYwbiUzQjZ1M3ElN0JpJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUyQyUyMGZlcnRpZyUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDglMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIzcFFPSXQ0bSUzREh3MSUyNSU3RCU3QypwbkQlM0YlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMkIlNUUlN0MlNUU2WkIqX1N3c2QlMjUlNjB4JTIzdCglM0ElMjIlM0VMaXN0ZW5fRWxlbWVudGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjJzT3E1dFlQKDMpOUpQJTI1JTNBRmkudVYlMjIlM0UlM0NtdXRhdGlvbiUyMGVsc2VpZiUzRCUyMjElMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMklGMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2NvbXBhcmUlMjIlMjBpZCUzRCUyMllKSColN0JPOWpWN3AlNUVudyUyQlUtJTdDRkklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUVRJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fc291cmNlJTIyJTIwaWQlM0QlMjJubW1SSyUyQ0tsaF8lN0MlN0QlMjRtNyFnRTd0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXN0YXRlLnZhbCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWVfdmFyJTIyJTIwaWQlM0QlMjIlMkJneTRack5aJTI1QyU0MEolMjUlMkZtMUYtUSUyNSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMlRSNVU2N2c4aiE4JTNGSXUhJTNCJTIzMW9DJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFT2JqZWN0JTIwSUQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnpWcyUzQXZPZjRabyUzQTlIJTJDWSU3QiUyM3drNyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyRTNwdHklM0J1R2hRZngub3ZFbHhfUSUyMiUzRV9hbiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiU3QyU1RXlfckUlN0M1NSU3Qms0JTJGJTdDWkt5dG12JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJsQTFHV2hoQ0lmQy4lNUQoJTVEUCUyNEYpSCUyMiUzRXdyaXRlX3ZhbHVlJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMnAoTSliZSU1REktJTVEZ2pVJTNGZlZ5cSUyNSU3QyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VUUlVFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiU2MHZKZFZYTnM4V25UR3RHTkt5JTdDSSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTYwVn5+ZzY2c1JKaGYlMkZjNVphNDJRJTIyJTNFc2VuZCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJ4JTNEJTQwdiU1RDB+ZnlfMFZXMEslN0RvJTIzTWElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfY29tcGFyZSUyMiUyMGlkJTNEJTIyKWpuOCU1QiUyQlRFLSU3QiU0MEx1dnVLM35heiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFRVElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9zb3VyY2UlMjIlMjBpZCUzRCUyMk9LUTclMjNVYU8lM0IzejJBQzFSSjMlMjRuJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXN0YXRlLnZhbCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWVfdmFyJTIyJTIwaWQlM0QlMjJCJTVFMWxPJTVCN2lsayhTWCF+ZEd1bS4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjIlMjVSJTVFJTdCeCU3QzF4ZmZrJTJDcjRtWSklMjV+WSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRU9iamVjdCUyMElEJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJhQTclMjRiZSUzRiUyNWhLM1VJNUQoTlMlN0Q4JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlNUU2JTVETSU3RCU0MCU0MFJNViUyQnN1WWpudVFoJTNGJTIyJTNFX2F1cyUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMjkzUVZQQiUyNVIlNjBrT2QpVCUyQjd5JTVFS0YlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMmxBMUdXaGhDSWZDLiU1RCglNURQJTI0RilIJTIyJTNFd3JpdGVfdmFsdWUlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyN0ZLQnIlMjUtJTJGZ2Q4JTVFN3BHUlpiJTNEbyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJoNCUyQk4lN0IlMkYzNEVvKC10JTJGQUclNjBQMUglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU2MFZ+fmc2NnNSSmhmJTJGYzVaYTQyUSUyMiUzRXNlbmQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyJTdCUjdnKmNEaVBqLXptMiU1RV81WFhTJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJnR0NZJTdDRVZEYyU1RDBuWjZSJTYwRihlSyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTYwVn5+ZzY2c1JKaGYlMkZjNVphNDJRJTIyJTNFc2VuZCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJwcm9jZWR1cmVzX2NhbGxyZXR1cm4lMjIlMjBpZCUzRCUyMjBoKXlJdyElMjRsaVp1KElGX2ZTbUYlMjIlM0UlM0NtdXRhdGlvbiUyMG5hbWUlM0QlMjJzZW5kZW4lMjIlM0UlM0NhcmclMjBuYW1lJTNEJTIyZl9zZW5kJTIyJTNFJTNDJTJGYXJnJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmZfb2JqZWt0JTIyJTNFJTNDJTJGYXJnJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmZfdmFsdWUlMjIlM0UlM0MlMkZhcmclM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFSRzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJYIU9WZCU0MCpLJTQwWDYlNUV6aUYyJTdDT3AlN0IlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU2MFZ+fmc2NnNSSmhmJTJGYzVaYTQyUSUyMiUzRXNlbmQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBUkcxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTI1c1UlMjRwJTNCQSUyNWpnTiU3RFRBQlo3MSU3RHElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMioyWDYxKFk4Q3JKOUoueksqZE1tJTIyJTNFd3JpdGVfb2JqZWt0JTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVJHMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnQhJTNEJTdEbyU3Q2dTMDN0ZWEwJTIzM2Q1NWolMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMmxBMUdXaGhDSWZDLiU1RCglNURQJTI0RilIJTIyJTNFd3JpdGVfdmFsdWUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGeG1sJTNF
-
@ubecker sagte: dieses Array als Datenpunkt gespeichert.
Im Datenpunkt kann man keine Kommentare ergänzen.
-
@paul53 schade, dann bleibt nur die Lösung von homoran
-
@paul53 andere Lösung, denke auch so ist es richtig.
Ich erzeuge in einem JS Script den Datenpunkt als Array mit den entsprechenden Werten. Hier kann ich auch die Kommentare hinzufügen.
In der weiteren Verarbeitung wird nur der Datenpunkt benutzt, den ich händisch nicht mehr anpacke.
Danke für den Anstoß. -
@paul53 said in (erledigt) Kommentar in JSON String:
@ubecker sagte: Kommentare einfügen die dann nicht berücksichtigt werden.
Kommentare kann man mit "//" an jede Zeile anhängen.
[ // Kommentar großes Array [ // Kommentar inneres Array "alias.0.Aktor_x.CH1_State", // Kommentar DP-ID [0][0] "javascript.0.ST1_Buero_Auto",
Sorry, aber das ist falsch.
Standard JSON erlaubt KEINE Kommentare
JSON5 erlaubt KommentareIn einem JS Source kannst du natürlich zwischen den Elementen Kommentare einfügen.
EDIT:
Und was mir grad erst aufgefallen ist:
Im ersten Posting wird ja im Gegensatz zum Titel gar kein JSON String gezeigt sondern eine Array Definition. Insofern hast du natürlich Recht, bei javascript Code sind Kommentate natürlich völlig OK. -
@mcm57 said in (erledigt) Kommentar in JSON String:
im Gegensatz zum Titel gar kein JSON String gezeigt sondern eine Array Definition
verzeih einem Anfänger der bis vor 2 Monaten noch nichts mit JS, JSON zu tun gehabt hat mit der Begriffbezeichnung.
Was ist JS Script weiß ich mitlerweile und auch ein wenig wie man das programmiert,
aber was ist genau ein JSON String und was ist Array Definition.
Ich meine, ich habe ein JS Script erstellt in dem ich ein Array erstelle und das in einem Datenpunkt speichere. Der Datenpunkt hat die Definition JSON.
Bin da aber nicht sicher was jetzt was wie bezeichnet wird.
Datenpunkt:{ "common": { "type": "json", "read": true, "write": true, "name": "Array_IDs_Timer", "role": "state" }, "native": { "type": "json", "read": true, "write": true, "name": "Array_IDs_Timer", "role": "state" }, "type": "state", "from": "system.adapter.javascript.0", "user": "system.user.admin", "ts": 1704717802711, "_id": "javascript.0.Array_IDs_Timer", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
Script:
var ID_Liste; ID_Liste = [ // Listen Elemente äussere Schleife Länge von ID_Liste [ // innere Schleife Werte aus der Liste "alias.0.ST1.STATE", // Wert 1 State ST1 "javascript.0.ST1_Buero_Auto", // Wert 2 "javascript.0.ST1_Buero_an", // Wert 3 "javascript.0.ST1_Buero_aus" // Wert 4 ], [ "alias.0.ST2.State", "javascript.0.St2_Buero_Auto", "javascript.0.St2_Buero_an", "javascript.0.St2_Buero_aus" ], [ "alias.0.ST3.STATE", "javascript.0.St3_Buero_Auto", "javascript.0.St3_Buero_an", "javascript.0.St3_Buero_aus" ], [ "alias.0.Garten.Aktor.1.STATE", "javascript.0.Garten_Quell_Auto", "javascript.0.Garten_Quell_an", "javascript.0.Garten_Licht_aus" ], [ "alias.0.Garten.Aktor.2.STATE", "javascript.0.Garten_Licht_Auto", "javascript.0.Garten_Licht_an", "javascript.0.Garten_Licht_aus" ], [ "alias.0.Garten.Aktor.3.STATE", "javascript.0.Garten_Licht_Auto", "javascript.0.Garten_Licht_an", "javascript.0.Garten_Licht_aus" ], [ "alias.0.Garten.Aktor.4.STATE", "javascript.0.Garten_Licht_Auto", "javascript.0.Garten_Licht_an", "javascript.0.Garten_Licht_aus" ], [ "alias.0.WZ.LichtDVD.STATE", "javascript.0.Licht_WZDVD_Auto", "javascript.0.Licht_WZDVD_an", "javascript.0.Licht_WZDVD_aus" ], [ "alias.0.WZ.LichtEsstisch.STATE", "javascript.0.Licht_WZEsstisch_Auto", "javascript.0.Licht_WZEsstisch_an", "javascript.0.Licht_WZEsstisch_aus" ], [ "alias.0.WZ.LichtFS.STATE", "javascript.0.Licht_WZFernseh_Auto", "javascript.0.Licht_WZFernseh_an", "javascript.0.Licht_WZFernseh_aus" ], [ "alias.0.WZ.LichtStehlampe.STATE", "javascript.0.Licht_WZTerrasse_Auto", "javascript.0.Licht_WZTerrasse_an", "javascript.0.Licht_WZTerrasse_aus" ], [ "alias.0.WZ.IPAD.state", "javascript.0.Ipad_auto", "javascript.0.Ipad_aus", // ein aus getauscht da Ipad ein = Aktor aus "javascript.0.Ipad_an" ], [ "alias.0.Kueche.LED.STATE", "javascript.0.Licht_Kueche_Auto", "javascript.0.Licht_Kueche_an", "javascript.0.Licht_Kueche_aus" ] ]; // console.log(ID_Liste); setState('javascript.0.Array_IDs_Timer' /* Array_IDs_Timer */, JSON.stringify(ID_Liste), true); // console.log((ID_Liste.length));
-
@ubecker
Das erste Bild zeig JSON Daten an. Die zeichnen sich durch key:wert Paare aus.
https://de.wikipedia.org/wiki/JavaScript_Object_Notation"Echtes" JSON Format kennt keine Kommentare. Das neuere Format JSON5 kennt Kommentare - benötigt aber naturgemäß JSON5 fähige Parser.
ARRAYs sind ein Sprachelelement von Javascript.
https://www.w3schools.com/js/js_arrays.asp