Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Werte aus Ordnern auslesen und Zeiten zuordnen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Werte aus Ordnern auslesen und Zeiten zuordnen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Mosel 1992
      Mosel 1992 @paul53 last edited by

      @paul53
      Korrekt.

      Ich habe mir Ordern 1-24 gemacht und darunter sind die 3 Datenpunkte.
      Ich habe bereits Preis und Startzeit in einer Liste eingeladen und Sie dort sortiert nach Preis. Bildschirmfoto 2023-12-23 um 19.21.01.png

      Jetzt geht es darum, wie ich halt am einfachsten jetzt die Reihenfolge in die Datenpunkte übertrage?

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @Mosel 1992 last edited by

        @mosel-1992
        Das ist die falsche Konvertierung, wenn mit "Aktuelle Zeit als Stunden" verglichen wird:

        Blockly_temp.JPG

        Mosel 1992 1 Reply Last reply Reply Quote 0
        • Mosel 1992
          Mosel 1992 @paul53 last edited by

          @paul53 ah ja korrekt, da hatte ich etwas ausprobiert...
          Gibt es eine Möglichkeit, dass man einen Datenpunkt nach einer variable schreibe? also das ich mit den Pfad selber zusammen bauen kann ?

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Mosel 1992 last edited by paul53

            @mosel-1992 sagte: Pfad selber zusammen bauen kann ?

            Ja. Mit der sortierten Liste:

            Blockly_temp.JPG

            Preisbewertung von 1 bis 24 = billig bis teuer

            Mosel 1992 1 Reply Last reply Reply Quote 0
            • Mosel 1992
              Mosel 1992 @paul53 last edited by

              @paul53

              Bekomme ich eine Fehlermeldung:
              20:24:00.019 warn javascript.0 (9860) at Object.<anonymous> (script.js.Tibber.Preise_sortieren:38:5)

              var path, hour, price, arr, attr, Liste, i, start, j, obj, k, id, test;
              
              // Beschreibe diese Funktion …
              async function buildObj(hour, price) {
                  return {price: price, hour: hour};
              }
              
              // Funktion buildObj(hour, price
              async function sortObjectNum(arr, attr) {
                  function sortAttr(a, b) {
                      return parseFloat(a[attr]) - parseFloat(b[attr]);
                  }
                  arr.sort(sortAttr);
              }
              
              
              path = '0_userdata.0.Tibber.Strompreise_heute.';
              schedule("*/10 * * * * *", async () => {
                Liste = [];
                for (i = 0; i <= 23; i++) {
                  price = getState(([path,i,'.Preis'].join(''))).val;
                  start = getState(([path,i,'.Startzeit'].join(''))).val;
                  hour = getDateObject(start).getHours();
                  Liste.push(await buildObj(hour, price));
                }
                await sortObjectNum(Liste, 'price');
                for (j = 1; j <= 24; j++) {
                  obj = Liste[(j - 1)];
                  id = (new Date().getHours()) == getAttr(obj, 'hour');
                  if (1 == j) {
                    test = getAttr(obj, 'hour');
                    console.log(test);
                  }
                }
                for (k = 1; k <= 24; k++) {
                  obj = Liste[(k - 1)];
                  id = [path,getAttr(obj, 'hour'),'.Preisbewertung'].join('');
                  setStateDelayed(id, k, true, parseInt(((0) || '').toString(), 10), false);
                  console.log(k);
                }
                setState('0_userdata.0.Tibber.Strompreise_heute.ListeStrompreis_heute' /* ListeStrompreis heute */, Liste, true);
              });
              
              //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0N2YXJpYWJsZXMlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyZHBaTSU3Q1YtJTNGJTI0Q2VuRi5JWU9DfjAlMjIlM0VwYXRoJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyUFhtc0pGSUQlMjV6OFVEeVolN0JoVyU2MEUlMjIlM0Vob3VyJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyJTJGQ1klN0JWJTI1LVJVQ2s4b2ZxQSUyM2dIJTJCJTIyJTNFcHJpY2UlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIlM0ZlJTVCYXpXYSU0MEIlM0QlN0JUMCUyMyUyNCU2MHUlN0REeiUyMiUzRWFyciUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMl9JYlVldCU1RSolNDBRU0MlNjBIR2JUdG0lMkYlMjIlM0VhdHRyJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyJTdCaTdvJTJDOCU3REczQ3A5JTJDZFRkY1dzNiUyMiUzRUxpc3RlJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyYlJoajI3fmlLZlBaJTQwNyUyNWxqJTNEJTNGJTNGJTIyJTNFaSUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMm8uJTI1KXclMkZKMkUlM0ZYVVlhdCUyNXQlN0RTKSUyMiUzRXN0YXJ0JTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyJTdEUSUzQjRUVygtRWJUYy1OJTNBZyUyQ1pyMiUyMiUzRWolM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIlN0NXLnhvVlVMNE5rJTI1IXhlJTNEakpTZyUyMiUzRW9iaiUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMilYemslN0RHQW5PbiU1Qi0lN0IlMkNBbSUyQiU3Q1oyJTIyJTNFayUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMnZkM0VaSFpoc0UlN0QlM0JuNl9nSTdwJTJDJTIyJTNFaWQlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjJHcyU3RGRLfjJWdi1IayU1RW1WJTNEci5+VyUyMiUzRXRlc3QlM0MlMkZ2YXJpYWJsZSUzRSUzQyUyRnZhcmlhYmxlcyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMkklNUU1cSUzQUVaOHFKcTElN0MlMkMxZWJBX0glMjIlMjB4JTNEJTIyLTgzNyUyMiUyMHklM0QlMjItNTg3JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJkcFpNJTdDVi0lM0YlMjRDZW5GLklZT0N+MCUyMiUzRXBhdGglM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIycmVJUEdncDJYJTdDR0FCdU0xdUR4JTVEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRTBfdXNlcmRhdGEuMC5UaWJiZXIuU3Ryb21wcmVpc2VfaGV1dGUuJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnNjaGVkdWxlJTIyJTIwaWQlM0QlMjJuKElzdHNqZ242eTBBYlglNjBfc0FzJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU0NIRURVTEUlMjIlM0UqJTJGMTAlMjAqJTIwKiUyMColMjAqJTIwKiUzQyUyRmZpZWxkJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMn4lNjByJTIzU0clMjNIMmpHVn5TaWklNURBJTJDISUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTdCaTdvJTJDOCU3REczQ3A5JTJDZFRkY1dzNiUyMiUzRUxpc3RlJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxpc3RzX2NyZWF0ZV93aXRoJTIyJTIwaWQlM0QlMjI3fiUyQndYdzYlNjAxV0I4JTdCTi1UQyU3QkxCJTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjAlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbHNfZm9yJTIyJTIwaWQlM0QlMjIlMjUlM0YlM0Z1RCU1QiFRJTI0MEQ2SEclMkJLYXZmJTVEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJiUmhqMjd+aUtmUFolNDA3JTI1bGolM0QlM0YlM0YlMjIlM0VpJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJGUk9NJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjIlM0Yudk4lM0ZNMGclMkNsV2gwbCU3QlU3d1hzJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJUTyUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyKSU3RE90bCU1RGxHNSU1QmRyfjNReTElM0ZyNSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTIzJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkJZJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJZJTJGQzA0JTI0NUtadCU0MExsJTNBam94dlMlM0IlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMmF6JTdENSU0MEFveSotUlJMVjZUJTNEKUJnJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlMkZDWSU3QlYlMjUtUlVDazhvZnFBJTIzZ0glMkIlMjIlM0VwcmljZSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWVfdmFyJTIyJTIwaWQlM0QlMjJna1clNURPKG5KNWMlNjB0KXZ1ejRTLSU0MCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMmdaUDFOeHYlN0MlMkZfeE0lN0JjbG4lM0Y3aFAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VPYmplY3QlMjBJRCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjJVSy4qXyUyNXQ3aiU3Qkl3SmQlM0QoJTdEMVVjJTIyJTIwaW5saW5lJTNEJTIydHJ1ZSUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyM0ZyTXM3dzglM0FqTnQqRl9NJTNCTnglNUUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMmRwWk0lN0NWLSUzRiUyNENlbkYuSVlPQ34wJTIyJTNFcGF0aCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJJcjUlN0I2eGZ6QUIhX3Y5QnZyMiU3QiUyNCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyYlJoajI3fmlLZlBaJTQwNyUyNWxqJTNEJTNGJTNGJTIyJTNFaSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJpciU3Q1Q5TiUzQSU3Q1MlN0MlNUV+aXladikudCUyNSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UuUHJlaXMlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJNQW51WihXb00lM0E0KiU1RDQlNDAlNDAqKWguJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJvLiUyNSl3JTJGSjJFJTNGWFVZYXQlMjV0JTdEUyklMjIlM0VzdGFydCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWVfdmFyJTIyJTIwaWQlM0QlMjI4Wk0zRnFwIX4wcyU3RCU0MCU2MGdkVHdmNiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMmdaUDFOeHYlN0MlMkZfeE0lN0JjbG4lM0Y3aFAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VPYmplY3QlMjBJRCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjIzVE9ISDNESS1lVE0lMkJZVDMlNUR3bG8lMjIlMjBpbmxpbmUlM0QlMjJ0cnVlJTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjMlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJyViU2MDdlJTYwJTI1S3YlN0NtcUtIKiUyRm0hJTdESCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyZHBaTSU3Q1YtJTNGJTI0Q2VuRi5JWU9DfjAlMjIlM0VwYXRoJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnZyXyUzRCUyNCU0MC1ZMSUyNUU4Ym0tNnhVMWglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMmJSaGoyN35pS2ZQWiU0MDclMjVsaiUzRCUzRiUzRiUyMiUzRWklM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTdDJTVFJTIzViUzRFNPJTVESGV5VSEtMDFXWjNLJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRS5TdGFydHplaXQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjIwJTNBKmwzcUZNRzZBKGslM0JnVUlOZSUzQiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyUFhtc0pGSUQlMjV6OFVEeVolN0JoVyU2MEUlMjIlM0Vob3VyJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnZlcnRfZnJvbV9kYXRlJTIyJTIwaWQlM0QlMjI1TDQpS2hCWHdifk9yLWhxJTJCMjBRJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwZm9ybWF0JTNEJTIyZmFsc2UlMjIlMjBsYW5ndWFnZSUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUFRJT04lMjIlM0VoJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiU1RHhpTFItM1A1eW1YJTdDZlBRY2N4MiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyby4lMjUpdyUyRkoyRSUzRlhVWWF0JTI1dCU3RFMpJTIyJTNFc3RhcnQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxpc3RzX3NldEluZGV4JTIyJTIwaWQlM0QlMjJqSHklMkZpU3dwKCUzRGZTT055RCUyRkQwZCUyMiUzRSUzQ211dGF0aW9uJTIwYXQlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTU9ERSUyMiUzRUlOU0VSVCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUlMjIlM0VMQVNUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJMSVNUJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyZFglNUVXKGl1IWslM0QyKU0lMjRnJTJGJTdCIW8lNDAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU3Qmk3byUyQzglN0RHM0NwOSUyQ2RUZGNXczYlMjIlM0VMaXN0ZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRPJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19jYWxsY3VzdG9tcmV0dXJuJTIyJTIwaWQlM0QlMjJjZXVERE1fQjVjOXJyMn5FNExYJTNCJTIyJTIwaW5saW5lJTNEJTIydHJ1ZSUyMiUzRSUzQ211dGF0aW9uJTIwbmFtZSUzRCUyMmJ1aWxkT2JqJTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmhvdXIlMjIlM0UlM0MlMkZhcmclM0UlM0NhcmclMjBuYW1lJTNEJTIycHJpY2UlMjIlM0UlM0MlMkZhcmclM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFSRzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIlN0IlMjREViUzQXp5cDBaYlBpVlAoQiU1RURqJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJQWG1zSkZJRCUyNXo4VUR5WiU3QmhXJTYwRSUyMiUzRWhvdXIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBUkcxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyfmcxcXUlN0N+JTdDYSl2VUlOLmNrVDQxJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlMkZDWSU3QlYlMjUtUlVDazhvZnFBJTIzZ0glMkIlMjIlM0VwcmljZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJwcm9jZWR1cmVzX2NhbGxjdXN0b21ub3JldHVybiUyMiUyMGlkJTNEJTIydEclNUI2YyUzQiU1QkRVJTYwbzhxJTI1Z2tNJTQwKGolMjIlMjBpbmxpbmUlM0QlMjJ0cnVlJTIyJTNFJTNDbXV0YXRpb24lMjBuYW1lJTNEJTIyc29ydE9iamVjdE51bSUyMiUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJhcnIlMjIlM0UlM0MlMkZhcmclM0UlM0NhcmclMjBuYW1lJTNEJTIyYXR0ciUyMiUzRSUzQyUyRmFyZyUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVJHMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiU3RC5iZSUyNWMlM0IlN0JBTEslMjNXJTNBRE8lNDBPVyU2MCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTdCaTdvJTJDOCU3REczQ3A5JTJDZFRkY1dzNiUyMiUzRUxpc3RlJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVJHMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMloxV35TJTIzS2Mpa2slMjVmanRVZVAlNUJmJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXByaWNlJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2ZvciUyMiUyMGlkJTNEJTIyeH4lMkZYYkxWRUxhJTI0dGhkNXYqaDBVJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlN0RRJTNCNFRXKC1FYlRjLU4lM0FnJTJDWnIyJTIyJTNFaiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyRlJPTSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIySTclNUJqS2d+WTZMJTVEb2Mhekh+dC51JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJUTyUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyY2NlTXNPZmdNTyU1RSUzQW9BJTVFJTI1YmRWUCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTI0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkJZJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjIpVVNlbFdnJTIzb1A0WkRBemolN0JsV1YlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiUyMzNnJTNCd1MlM0RFYjRaJTdCNmolMkI0eiUyNSUzRF8lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU3Q1cueG9WVUw0TmslMjUheGUlM0RqSlNnJTIyJTNFb2JqJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxpc3RzX2dldEluZGV4JTIyJTIwaWQlM0QlMjIlNUVpKmklM0ElMjVXJTVCJTNGb24uJTI1Sm9XWWV3JTJDJTIyJTNFJTNDbXV0YXRpb24lMjBzdGF0ZW1lbnQlM0QlMjJmYWxzZSUyMiUyMGF0JTNEJTIydHJ1ZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTU9ERSUyMiUzRUdFVCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUlMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMmNjJTNBV3A4Z3JhKEVvITlnJTJGdi1VJTVCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlN0JpN28lMkM4JTdERzNDcDklMkNkVGRjV3M2JTIyJTNFTGlzdGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMlp0ek4lMkNjJTdDTTNQaSU1RDdFOTlCVFJ6JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlN0RRJTNCNFRXKC1FYlRjLU4lM0FnJTJDWnIyJTIyJTNFaiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyJTI0UFpQcjFLY2QlMjVuJTNBWSU1QiUyNWUlM0ZqakwlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnZkM0VaSFpoc0UlN0QlM0JuNl9nSTdwJTJDJTIyJTNFaWQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfY29tcGFyZSUyMiUyMGlkJTNEJTIyJTdDN35ZISUzRCU1QnliLlMuKWslM0JHQyUzQWNFJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VFUSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRpbWVfZ2V0JTIyJTIwaWQlM0QlMjI0ekljdGx1SG9PLTklMkJ1bS1uJTIzZVklMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBmb3JtYXQlM0QlMjJmYWxzZSUyMiUyMGxhbmd1YWdlJTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QVElPTiUyMiUzRWglM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X2F0dHIlMjIlMjBpZCUzRCUyMih6S3diMjElMkJJV2VyJTNEJTdDN1QwUyUyM3YlMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJQQVRIJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMk5ubXZCajd0USU1RFYlM0IlNUQ2YXFEZSUzRH4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFaG91ciUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPQkpFQ1QlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJQbkZlQ0tnVSUyM0t5bXRnRyolNDAlMjNWZiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTdDVy54b1ZVTDROayUyNSF4ZSUzRGpKU2clMjIlM0VvYmolM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sc19pZiUyMiUyMGlkJTNEJTIyJTNEaFVhUVl0JTNEdG9RQTl1R2JkaDZXJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfY29tcGFyZSUyMiUyMGlkJTNEJTIyY2xHJTIzJTNEaXklNURqJTNEJTdCJTVESl8lM0YlNUVod1UlNDAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUVRJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMiU1RDdVLm51VDQlMkMlMkNTJTIzQ3FRZ2olMkZNNiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyUGhJbHMlM0RjSVRBejN4VG1QJTVCWiUzRC0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU3RFElM0I0VFcoLUViVGMtTiUzQWclMkNacjIlMjIlM0VqJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJtaiU3Q0glNDBva3ZvWmtwQVpaJTdCTEklN0RYJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJHcyU3RGRLfjJWdi1IayU1RW1WJTNEci5+VyUyMiUzRXRlc3QlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X2F0dHIlMjIlMjBpZCUzRCUyMmhMS1IyWiUzRkt+Q25xZTBHayU2MFpMeSUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlBBVEglMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTIzUFdFJTNBeG1WakolNDAlM0REbFZCOE5vaSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0Vob3VyJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9CSkVDVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMlQob0FxMGsuZklMZVZqJTI0SFpUeF8lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU3Q1cueG9WVUw0TmslMjUheGUlM0RqSlNnJTIyJTNFb2JqJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIyWm8lNjBQJTNGJTNBTE9+YyUyRjZJMyUzRC5WNTZBJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0Vsb2clM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIydFZXdk8lNUU4MDNQJTNBVlVjR28lNUIlM0FOJTVFJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRlc3QlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiU3RCUyM1B2MnpETGtBaVpfdUpSbG8lM0ZRJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJHcyU3RGRLfjJWdi1IayU1RW1WJTNEci5+VyUyMiUzRXRlc3QlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2ZvciUyMiUyMGlkJTNEJTIyJTVENzQlM0QqcSUzQkd3KG8lM0JvJTI0JTJDJTQwQSUyQmclMjQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMilYemslN0RHQW5PbiU1Qi0lN0IlMkNBbSUyQiU3Q1oyJTIyJTNFayUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyRlJPTSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIycmhkTCU0MH5qIW4lMjNuJTVEdTUlNjBMX204SyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVE8lMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMiUzRCp4JTVESmpwdWhpJTVFJTdDJTIzcyUyRmklNURnaSolMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UyNCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCWSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyYSlqZCU3Q2ElN0QlNUQlN0M0OSU1RVdqcGVuQXUwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8lMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJUNX4lMkMlNUIlM0J6YzBKTU4lMkZ3MEMxeVopJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlN0NXLnhvVlVMNE5rJTI1IXhlJTNEakpTZyUyMiUzRW9iaiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsaXN0c19nZXRJbmRleCUyMiUyMGlkJTNEJTIyU3IxJTI0ciU3Q2VXcDVWJTNCNTNHJTdCdSUzRFdxJTIyJTNFJTNDbXV0YXRpb24lMjBzdGF0ZW1lbnQlM0QlMjJmYWxzZSUyMiUyMGF0JTNEJTIydHJ1ZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTU9ERSUyMiUzRUdFVCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUlMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiFMJTVETiUyMyUyQjglNDBjaiU1QkY5Q2o3JTNBJTdEREMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU3Qmk3byUyQzglN0RHM0NwOSUyQ2RUZGNXczYlMjIlM0VMaXN0ZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFUJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyeVppKlp3JTdEVVN3LjY4SF8lN0I3Z2J3JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIpWHprJTdER0FuT24lNUItJTdCJTJDQW0lMkIlN0NaMiUyMiUzRWslM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMnJlJTdEdUglM0YpKGJfWlFwTHJZeG5BJTJCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJ2ZDNFWkhaaHNFJTdEJTNCbjZfZ0k3cCUyQyUyMiUzRWlkJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIyT1RLJTYwaHNzVjR1aDklMkYlNjAlNUJhZTdpKSUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTVFalRjVjFrJTI0flVpY0FrNVZMaHNxJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJkcFpNJTdDVi0lM0YlMjRDZW5GLklZT0N+MCUyMiUzRXBhdGglM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X2F0dHIlMjIlMjBpZCUzRCUyMjlLJTI1dHkyQmJldlVtVXY3ZyU1RSUzQkwlM0IlMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJQQVRIJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMkFvJTIzUnYlM0J3NzQlMjVmMlklMjQ3VSUyQ1hiKSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0Vob3VyJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9CSkVDVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiUzQjAhJTI0WG05USpJJTdESVAlMjMoJTNBdFhOSCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTdDVy54b1ZVTDROayUyNSF4ZSUzRGpKU2clMjIlM0VvYmolM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMjA5JTdCNk5zJTNEREslNjAoeShza3YlNDBCSnclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFLlByZWlzYmV3ZXJ0dW5nJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sX2V4JTIyJTIwaWQlM0QlMjI3cWZRJTNGMkRiKCUyQjRNbyU3QyUzQSU3RHBsaFolMjIlMjBpbmxpbmUlM0QlMjJ0cnVlJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVFlQRSUyMiUzRXRydWUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNMRUFSX1JVTk5JTkclMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyNl91KCU3RHQ5cyUzRkhOMDRkKVVuWCU3Q2wlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VPYmplY3QlMjBJRCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTI0YmNzSmglNUQlNUJPMVNWTSUyNUIlN0JfJTIzTCU3RCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIydmQzRVpIWmhzRSU3RCUzQm42X2dJN3AlMkMlMjIlM0VpZCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMiU3Q08qJTVEJTdEOFElNUIlMjVFIVRCdCUyRmp6KDQoJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMklWKHY5Skk5QmRpQUNHOHZFUC1mJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIpWHprJTdER0FuT24lNUItJTdCJTJDQW0lMkIlN0NaMiUyMiUzRWslM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJERUxBWV9NUyUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyJTNBUVdMZHhLZCU3QllXJTI0QzFDbXYhemIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UwJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIyeCU1RFF5M3U2ISUyNWYhbkxNJTVEZiU1QkI0NyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlNldmVyaXR5JTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiUyRiU1RXhVY0w3UGYlMkJKJTJCYkolN0RUbHktViUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXN0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjI2RThPeCF1JTIzbExxJTI0KUNpNWlkbCElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMilYemslN0RHQW5PbiU1Qi0lN0IlMkNBbSUyQiU3Q1oyJTIyJTNFayUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnVwZGF0ZSUyMiUyMGlkJTNEJTIyZm8hbmZpJTVCQWJ1NHhmXyUyQyElMjNhaVYlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuVGliYmVyLlN0cm9tcHJlaXNlX2hldXRlLkxpc3RlU3Ryb21wcmVpc19oZXV0ZSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9ERUxBWSUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMm42JTdCVyUyM2tEMDB1RUIlN0JQJTIzJTJDVjclN0JZJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlN0JpN28lMkM4JTdERzNDcDklMkNkVGRjV3M2JTIyJTNFTGlzdGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19kZWZjdXN0b21yZXR1cm4lMjIlMjBpZCUzRCUyMjk1JTJGN2VoKSUyNS40JTIzcyUyNE4lMjVaNlAlNUQlN0IlMjIlMjB4JTNEJTIyLTQxMiUyMiUyMHklM0QlMjItNTM3JTIyJTNFJTNDbXV0YXRpb24lMjBzdGF0ZW1lbnRzJTNEJTIyZmFsc2UlMjIlM0UlM0NhcmclMjBuYW1lJTNEJTIyaG91ciUyMiUyMHZhcmlkJTNEJTIyUFhtc0pGSUQlMjV6OFVEeVolN0JoVyU2MEUlMjIlM0UlM0MlMkZhcmclM0UlM0NhcmclMjBuYW1lJTNEJTIycHJpY2UlMjIlMjB2YXJpZCUzRCUyMiUyRkNZJTdCViUyNS1SVUNrOG9mcUElMjNnSCUyQiUyMiUzRSUzQyUyRmFyZyUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTkFNRSUyMiUzRWJ1aWxkT2JqJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTQ1JJUFQlMjIlM0VjbVYwZFhKdUlIdHdjbWxqWlRvZ2NISnBZMlVzSUdodmRYSTZJR2h2ZFhKOU93JTNEJTNEJTNDJTJGZmllbGQlM0UlM0Njb21tZW50JTIwcGlubmVkJTNEJTIyZmFsc2UlMjIlMjBoJTNEJTIyODAlMjIlMjB3JTNEJTIyMTYwJTIyJTNFQmVzY2hyZWliZSUyMGRpZXNlJTIwRnVua3Rpb24lMjAlRTIlODAlQTYlM0MlMkZjb21tZW50JTNFJTNDJTJGYmxvY2slM0UlM0NibG9jayUyMHR5cGUlM0QlMjJwcm9jZWR1cmVzX2RlZmN1c3RvbW5vcmV0dXJuJTIyJTIwaWQlM0QlMjIpUVElN0QpTjhTJTQwdkJrQWthc0o2LkMlMjIlMjB4JTNEJTIyLTQxMiUyMiUyMHklM0QlMjItNTEyJTIyJTNFJTNDbXV0YXRpb24lMjBzdGF0ZW1lbnRzJTNEJTIyZmFsc2UlMjIlM0UlM0NhcmclMjBuYW1lJTNEJTIyYXJyJTIyJTIwdmFyaWQlM0QlMjIlM0ZlJTVCYXpXYSU0MEIlM0QlN0JUMCUyMyUyNCU2MHUlN0REeiUyMiUzRSUzQyUyRmFyZyUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJhdHRyJTIyJTIwdmFyaWQlM0QlMjJfSWJVZXQlNUUqJTQwUVNDJTYwSEdiVHRtJTJGJTIyJTNFJTNDJTJGYXJnJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFc29ydE9iamVjdE51bSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU0NSSVBUJTIyJTNFWm5WdVkzUnBiMjRnYzI5eWRFRjBkSElvWVN3Z1lpa2dld29nSUNBZ2NtVjBkWEp1SUhCaGNuTmxSbXh2WVhRb1lWdGhkSFJ5WFNrZ0xTQndZWEp6WlVac2IyRjBLR0piWVhSMGNsMHBPd3A5Q21GeWNpNXpiM0owS0hOdmNuUkJkSFJ5S1RzJTNEJTNDJTJGZmllbGQlM0UlM0Njb21tZW50JTIwcGlubmVkJTNEJTIyZmFsc2UlMjIlMjBoJTNEJTIyODAlMjIlMjB3JTNEJTIyMTYwJTIyJTNFRnVua3Rpb24lMjBidWlsZE9iaihob3VyJTJDJTIwcHJpY2UlM0MlMkZjb21tZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ4bWwlM0U=
              
              
              

              Hast du eine Idee?

              Mosel 1992 1 Reply Last reply Reply Quote 0
              • Mosel 1992
                Mosel 1992 @Mosel 1992 last edited by

                @mosel-1992 said in Werte aus Ordnern auslesen und Zeiten zuordnen:

                @paul53

                Hast du eine Idee?

                hat sich erledigt... der Datenpunkt war als String, schrieben tue ich aber eine Zahl.

                Mosel 1992 1 Reply Last reply Reply Quote 0
                • Mosel 1992
                  Mosel 1992 @Mosel 1992 last edited by

                  ich komme der Perfekten Lösung immer näher, habe mit dem dazugelernten Wissen, auch andere Skripte vereinfacht.

                  Eine Sache stört mich aber noch ...
                  Ich setze immer eine Variable in ein Objekt.
                  Objekt - Variable

                  Preis 1 = Variable 1
                  Preis 2 = Variable 2

                  Wie ich mit einer schleife das Objekt fortlaufend automatisch ändern kann weiß ich jetzt, aber kann ich das gleiche auch bei einer Variable? Also dass ich sage Variable (1) +1 usw...

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Mosel 1992 last edited by

                    @mosel-1992 sagte: Also dass ich sage Variable (1) +1

                    Variablenbezeichner sind keine Strings. Man kann sie nicht konstruieren. Dafür gibt es Listen.

                    Mosel 1992 1 Reply Last reply Reply Quote 0
                    • Mosel 1992
                      Mosel 1992 @paul53 last edited by

                      @paul53
                      Das hier ist mal mein Versuch, aber leider läuft es nicht, kannst du mir helfen ?Bildschirmfoto 2023-12-23 um 22.53.02.png

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Mosel 1992 last edited by paul53

                        @mosel-1992
                        Die leere Liste muss vor der Schleife erzeugt werden.

                        Blockly_temp.JPG

                        An die Liste muss PreisEinlesen angehängt werden.

                        Es muss auf das k+1 erste Listenelement zugriffen werden und die Datenpunkte müssen in der Schleife geschrieben werden.

                        Blockly_temp.JPG

                        Anmerkung: Das funktioniert nur um Mitternacht, da Awattar zu jeder vollen Stunde die Daten für die nächsten 24 Stunden liefert. Man kann sich auch den "Umweg" über eine Liste sparen.

                        EDIT: Alternative.

                        Blockly_temp.JPG

                        Mosel 1992 1 Reply Last reply Reply Quote 0
                        • Mosel 1992
                          Mosel 1992 @paul53 last edited by

                          @paul53
                          Habe es jetzt so angepasst.
                          Unten (sieht man leider nicht) setzte ich um 0 Uhr alle Werte für morgen auf 0.
                          Durch die Abhängigkeit mit der Uhrzeit, sollte er dann eigentlich doch auch automatisch die Werte wenn sie für den nächsten Tag raus sind weiter schreiben.
                          Bildschirmfoto 2023-12-24 um 00.19.31.png

                          Mosel 1992 1 Reply Last reply Reply Quote 0
                          • Mosel 1992
                            Mosel 1992 @Mosel 1992 last edited by

                            Ich habe mal noch zwei Verständnis Fragen.
                            Im Anhang mein aktueller Ablauf, der die Strompreise vom ganzen Tag sortiert.
                            Jetzt würde ich gerne noch eine machen, die nur die erste Hälfte betrachtet also von 0 bis 12 Uhr. Wenn ich jetzt einfach das ganze kopieren würde und neben einander setzten würde, würde das gehen? oder funktioniert das nicht, da die Variabeln dann doppelt genutzt werden?

                            Sollte das nicht gehen, muss ich ja alle Variablen und die Funktionen neu erstellen und anderes nennen, hast du noch eine andere Idee? Also ich will hier nur die Daten von 0 bis 12 sortieren.

                            Bildschirmfoto 2023-12-24 um 00.24.19.png

                            paul53 1 Reply Last reply Reply Quote 0
                            • paul53
                              paul53 @Mosel 1992 last edited by paul53

                              @mosel-1992 sagte: funktioniert das nicht, da die Variabeln dann doppelt genutzt werden?

                              Wenn dafür gesorgt wird, dass beide nicht gleichzeitig laufen können (kleine Verzögerung), sollte es funktionieren.

                              EDIT: Besser innerhalb des gleichen Triggers unter den bestehenden Blöcken ausführen.

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              660
                              Online

                              31.9k
                              Users

                              80.1k
                              Topics

                              1.3m
                              Posts

                              4
                              29
                              1668
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo