Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Übergabe einer Variable an Schedule

    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

    [gelöst] Übergabe einer Variable an Schedule

    This topic has been deleted. Only users with topic management privileges can see it.
    • arteck
      arteck Developer Most Active last edited by arteck

      @ratte-rizzo sagte in Übergabe einer Variable an Schedule:

      temperatur

      hast du die auch deklariert ??

      let temperatur;
      
      for (var i=1; i<=5; i++) {
          zeitplan[i] = schedule(einMin[i].trim() + ' ' + einStd[i].trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + Wochentag_1.trim(), 
          setState("xxx"/*setTemp*/, parseFloat(temperatur));
         
      }
      

      ausserdem ist da ne klammer zu viel

      AlCalzone 1 Reply Last reply Reply Quote 0
      • AlCalzone
        AlCalzone Developer @arteck last edited by AlCalzone

        @arteck sagte in Übergabe einer Variable an Schedule:

        ausserdem ist da ne klammer zu viel

        Ne, das passt schon so. Bei dir fehlt eine.

        @ratte-rizzo An sich sieht das gut aus, auch wenn deine Art den String zusammen zu setzen arg kompliziert ist.
        Füg doch mal in der Callback-Funktion tempEinstellen einen Log ein, um zu sehen, ob die Funktion korrekt aufgerufen wird. Dann wissen wir, obs am Cron oder am setState liegt.

        z.B. so:

        for (var i = 1; i <= 5; i++) {
            zeitplan[i] = schedule(
                `${einMin[i].trim()} ${einStd[i].trim()} * * ${Wochentag_1.trim()}`,
                function tempEinstellen() {
                    log("tempEinstellen wurde aufgerufen");
                    setState("xxx"/*setTemp*/, parseFloat(temperatur));
                }
            );
        }
        
        arteck 1 Reply Last reply Reply Quote 0
        • arteck
          arteck Developer Most Active @AlCalzone last edited by

          @AlCalzone

          blind bin ich auch noch... schedule ist ne funktion.. jetzt auch gesehen

          1 Reply Last reply Reply Quote 0
          • R
            ratte-rizzo last edited by

            Moin und danke für Eure Mühe!

            Das umständliche Zusammenpuzzlen der Zeit bitte ich zu entschuldigen. Meine JS Kenntnisse sind begrenzt und das war copy&paste aus Blockly, wo ich jetzt weiter dran schreibe.

            So, die neuesten Neuigkeiten aus dem Log:

            2019-05-09 20:16:41.478  - info: javascript.0 script.js.common.heizung_steuerung: vor schedule: 17
            ...
            2019-05-10 05:15:00.135  - info: javascript.0 script.js.common.heizung_steuerung: in schedule: undefined
            

            Mit anderen Worten: Das schedule wird ausgeführt aber die Variable ist leer.

            Hat jemand eine neue Idee?

            Dank & Gruß & ein schönes Wochenende wünscht
            Daniel

            AlCalzone paul53 2 Replies Last reply Reply Quote 0
            • AlCalzone
              AlCalzone Developer @ratte-rizzo last edited by

              @ratte-rizzo sagte in Übergabe einer Variable an Schedule:

              Mit anderen Worten: Das schedule wird ausgeführt aber die Variable ist leer.

              Ich hab ne Idee woran es liegt, aber dazu müsste ich den kompletten Code sehen.

              1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @ratte-rizzo last edited by

                @ratte-rizzo sagte:

                die Variable ist leer.

                Ist "xxx" die echte Datenpunkt-ID ?

                1 Reply Last reply Reply Quote 0
                • R
                  ratte-rizzo last edited by

                  xxx ist natürlich kein echter Datenpunkt. Hab das nur gekürzt, weil die HMIP-Datenpunkte immer so elendig lang sind.

                  Ich mach es mal einfach und stelle hier das komplette Script rein. Eine Mischung aus Blockly und JS. Bitte nicht schimpfen, wenn es kein perfekter Code ist 🙂

                  var th_name, profil, Wochentag_1, zeit1, einStd1, einMin1, chron1;
                  
                  /**
                   * Beschreibe diese Funktion …
                   */
                  function zustaende_erzeugen(th_name) {
                      //createState("thermostat."+th_name+"."+profil+".modus",0);
                      for (var i =1; i<=3; i++){
                      createState("thermostat."+th_name+".profil"+i+".Aktiv",0);
                      createState("thermostat."+th_name+".profil"+i+".Zeit1",0);
                      createState("thermostat."+th_name+".profil"+i+".Zeit2",0);
                      createState("thermostat."+th_name+".profil"+i+".Zeit3",0);
                      createState("thermostat."+th_name+".profil"+i+".Zeit4",0);
                      createState("thermostat."+th_name+".profil"+i+".Zeit5",0);
                      createState("thermostat."+th_name+".profil"+i+".Temp1",0);
                      createState("thermostat."+th_name+".profil"+i+".Temp2",0);
                      createState("thermostat."+th_name+".profil"+i+".Temp3",0);
                      createState("thermostat."+th_name+".profil"+i+".Temp4",0);
                      createState("thermostat."+th_name+".profil"+i+".Temp5",0);
                      createState("thermostat."+th_name+".profil"+i+".Mo",0);
                      createState("thermostat."+th_name+".profil"+i+".Di",0);
                      createState("thermostat."+th_name+".profil"+i+".Mi",0);
                      createState("thermostat."+th_name+".profil"+i+".Do",0);
                      createState("thermostat."+th_name+".profil"+i+".Fr",0);
                      createState("thermostat."+th_name+".profil"+i+".Sa",0);
                      createState("thermostat."+th_name+".profil"+i+".So",0);
                      }
                  }
                  
                  /**
                   * Beschreibe diese Funktion …
                   */
                  function vorlage() {
                    // Wochentag
                    createState("jsState", function () {
                      Wochentag_1 = '';
                      if (getState("javascript.0.thermostat.daniel.profil1.Mo").val) {
                        Wochentag_1 += '1,';
                      }
                      if (getState("javascript.0.thermostat.daniel.profil1.Di").val) {
                        Wochentag_1 += '2,';
                      }
                      if (getState("javascript.0.thermostat.daniel.profil1.Mi").val) {
                        Wochentag_1 += '3,';
                      }
                      if (getState("javascript.0.thermostat.daniel.profil1.Do").val) {
                        Wochentag_1 += '4,';
                      }
                      if (getState("javascript.0.thermostat.daniel.profil1.Fr").val) {
                        Wochentag_1 += '5,';
                      }
                      if (getState("javascript.0.thermostat.daniel.profil1.Sa").val) {
                        Wochentag_1 += '6,';
                      }
                      if (getState("javascript.0.thermostat.daniel.profil1.So").val) {
                        Wochentag_1 += '0,';
                      }
                      if (',' == Wochentag_1.slice(-1)) {
                        Wochentag_1 = Wochentag_1.slice(0, Wochentag_1.length - 1);
                      }
                    });
                    // Zeit 1 auseinandernehmen
                    zeit1 = getState("javascript.0.thermostat.daniel.profil1.Zeit1").val;
                    einStd1 = zeit1.slice(0, 2);
                    einMin1 = zeit1.slice(3, 5);
                    chron1 = schedule(einMin1.trim() + ' ' + einStd1.trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + Wochentag_1.trim(), function () {
                      setState("hmip.0.devices.30150377DC0012999393BDE7.channels.1.setPointTemperature"/*setPointTemperature*/, getState("javascript.0.thermostat.daniel.profil1.Temp1").val);
                    });
                  }
                  
                  /**
                   * Beschreibe diese Funktion …
                   */
                  function thermostat_modular(profil) {
                      // Wochentag
                          Wochentag_1 = '';
                          if (getState("javascript.0.thermostat.daniel."+profil+".Mo").val) {
                            Wochentag_1 += '1,';
                          }
                          if (getState("javascript.0.thermostat.daniel."+profil+".Di").val) {
                            Wochentag_1 += '2,';
                          }
                          if (getState("javascript.0.thermostat.daniel."+profil+".Mi").val) {
                            Wochentag_1 += '3,';
                          }
                          if (getState("javascript.0.thermostat.daniel."+profil+".Do").val) {
                            Wochentag_1 += '4,';
                          }
                          if (getState("javascript.0.thermostat.daniel."+profil+".Fr").val) {
                            Wochentag_1 += '5,';
                          }
                          if (getState("javascript.0.thermostat.daniel."+profil+".Sa").val) {
                            Wochentag_1 += '6,';
                          }
                          if (getState("javascript.0.thermostat.daniel."+profil+".So").val) {
                            Wochentag_1 += '0,';
                          }
                          // Komma am Ende entfernen
                          if (',' == Wochentag_1.slice(-1)) {
                            Wochentag_1 = Wochentag_1.slice(0, Wochentag_1.length - 1);
                          }
                  
                  
                      // Zeit 1 auseinandernehmen
                      var zeit = [];
                      var temp = [];
                      var einStd = [];
                      var einMin = [];
                      var zeitplan = [];
                      var temperatur;
                  
                      for (var i=1; i<=5; i++){
                          zeit[i] = getState("javascript.0.thermostat.daniel."+profil+".Zeit"+i).val;
                          temp[i] = getState("javascript.0.thermostat.daniel."+profil+".Temp"+i).val;
                          temperatur = temp[i];
                          einStd[i] = zeit[i].slice(0, 2);
                          einMin[i] = zeit[i].slice(3, 5);
                          console.log("vor schedule: "+temperatur);
                          zeitplan[i] = schedule(einMin[i].trim() + ' ' + einStd[i].trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + Wochentag_1.trim(),
                              function tempEinstellen(temperatur) {
                                  console.log("in schedule: "+temperatur);
                                  console.log(i);
                                  setState("hmip.0.devices.30150377DC0012999393BDE7.channels.1.setPointTemperature"/*setPointTemperature*/, parseFloat(temperatur));
                              }
                          );
                      }
                  
                  
                  }
                  
                  
                  zustaende_erzeugen('daniel');
                  thermostat_modular('profil1');
                  
                  //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUzRSUzQ3ZhcmlhYmxlcyUzRSUzQ3ZhcmlhYmxlJTIwdHlwZSUzRCUyMiUyMiUyMGlkJTNEJTIydDQlNUIuQjclMjQlM0IlM0Y4LiU1RSUzRCUyQiU2MEpKM0pGJTIyJTNFdGhfbmFtZSUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjB0eXBlJTNEJTIyJTIyJTIwaWQlM0QlMjIlM0YlM0FRLkp2NWY4VEZsSiU3REZyJTdEaiUyQyU3RCUyMiUzRXByb2ZpbCUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjB0eXBlJTNEJTIyJTIyJTIwaWQlM0QlMjIlM0IlN0RDRUF0Llc3ck1TZyUzQk4lMjNuJTNCWGclMjIlM0VXb2NoZW50YWclMjAxJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMHR5cGUlM0QlMjIlMjIlMjBpZCUzRCUyMiUzRHdkTE9XODl0b3REcTFvJTJGYU8lN0MlNjAlMjIlM0V6ZWl0MSUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjB0eXBlJTNEJTIyJTIyJTIwaWQlM0QlMjIlMkYlMjMlNjAlNUIlNjBvVnNNXyU3Qi1vRilIWiU1Qkl2JTIyJTNFZWluU3RkMSUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjB0eXBlJTNEJTIyJTIyJTIwaWQlM0QlMjJQayU0MDdtJTdEJTJGTXpwRHApJTJCYlZnVmx4JTIyJTNFZWluTWluMSUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjB0eXBlJTNEJTIydW5kZWZpbmVkJTIyJTIwaWQlM0QlMjJjaHJvbjElMjIlM0VjaHJvbjElM0MlMkZ2YXJpYWJsZSUzRSUzQyUyRnZhcmlhYmxlcyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnByb2NlZHVyZXNfZGVmY3VzdG9tbm9yZXR1cm4lMjIlMjBpZCUzRCUyMmg1JTJCTnVRRFBWJTJDQ2tffiUyQnIlMjVsJTdEJTNBJTIyJTIweCUzRCUyMjE2MyUyMiUyMHklM0QlMjItMjEyJTIyJTNFJTNDbXV0YXRpb24lMjBzdGF0ZW1lbnRzJTNEJTIyZmFsc2UlMjIlM0UlM0NhcmclMjBuYW1lJTNEJTIydGhfbmFtZSUyMiUyMHZhcmlkJTNEJTIydDQlNUIuQjclMjQlM0IlM0Y4LiU1RSUzRCUyQiU2MEpKM0pGJTIyJTNFJTNDJTJGYXJnJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFenVzdGFlbmRlJTIwZXJ6ZXVnZW4lM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlNDUklQVCUyMiUzRUx5OWpjbVZoZEdWVGRHRjBaU2dpZEdobGNtMXZjM1JoZEM0aUszUm9YMjVoYldVcklpNGlLM0J5YjJacGJDc2lMbTF2WkhWeklpd3dLVHNLWm05eUlDaDJZWElnYVNBOU1Uc2dhVHc5TXpzZ2FTc3JLWHNLWTNKbFlYUmxVM1JoZEdVb0luUm9aWEp0YjNOMFlYUXVJaXQwYUY5dVlXMWxLeUl1Y0hKdlptbHNJaXRwS3lJdVFXdDBhWFlpTERBcE93cGpjbVZoZEdWVGRHRjBaU2dpZEdobGNtMXZjM1JoZEM0aUszUm9YMjVoYldVcklpNXdjbTltYVd3aUsya3JJaTVhWldsME1TSXNNQ2s3Q21OeVpXRjBaVk4wWVhSbEtDSjBhR1Z5Ylc5emRHRjBMaUlyZEdoZmJtRnRaU3NpTG5CeWIyWnBiQ0lyYVNzaUxscGxhWFF5SWl3d0tUc0tZM0psWVhSbFUzUmhkR1VvSW5Sb1pYSnRiM04wWVhRdUlpdDBhRjl1WVcxbEt5SXVjSEp2Wm1sc0lpdHBLeUl1V21WcGRETWlMREFwT3dwamNtVmhkR1ZUZEdGMFpTZ2lkR2hsY20xdmMzUmhkQzRpSzNSb1gyNWhiV1VySWk1d2NtOW1hV3dpSzJrcklpNWFaV2wwTkNJc01DazdDbU55WldGMFpWTjBZWFJsS0NKMGFHVnliVzl6ZEdGMExpSXJkR2hmYm1GdFpTc2lMbkJ5YjJacGJDSXJhU3NpTGxwbGFYUTFJaXd3S1RzS1kzSmxZWFJsVTNSaGRHVW9JblJvWlhKdGIzTjBZWFF1SWl0MGFGOXVZVzFsS3lJdWNISnZabWxzSWl0cEt5SXVWR1Z0Y0RFaUxEQXBPd3BqY21WaGRHVlRkR0YwWlNnaWRHaGxjbTF2YzNSaGRDNGlLM1JvWDI1aGJXVXJJaTV3Y205bWFXd2lLMmtySWk1VVpXMXdNaUlzTUNrN0NtTnlaV0YwWlZOMFlYUmxLQ0owYUdWeWJXOXpkR0YwTGlJcmRHaGZibUZ0WlNzaUxuQnliMlpwYkNJcmFTc2lMbFJsYlhBeklpd3dLVHNLWTNKbFlYUmxVM1JoZEdVb0luUm9aWEp0YjNOMFlYUXVJaXQwYUY5dVlXMWxLeUl1Y0hKdlptbHNJaXRwS3lJdVZHVnRjRFFpTERBcE93cGpjbVZoZEdWVGRHRjBaU2dpZEdobGNtMXZjM1JoZEM0aUszUm9YMjVoYldVcklpNXdjbTltYVd3aUsya3JJaTVVWlcxd05TSXNNQ2s3Q21OeVpXRjBaVk4wWVhSbEtDSjBhR1Z5Ylc5emRHRjBMaUlyZEdoZmJtRnRaU3NpTG5CeWIyWnBiQ0lyYVNzaUxrMXZJaXd3S1RzS1kzSmxZWFJsVTNSaGRHVW9JblJvWlhKdGIzTjBZWFF1SWl0MGFGOXVZVzFsS3lJdWNISnZabWxzSWl0cEt5SXVSR2tpTERBcE93cGpjbVZoZEdWVGRHRjBaU2dpZEdobGNtMXZjM1JoZEM0aUszUm9YMjVoYldVcklpNXdjbTltYVd3aUsya3JJaTVOYVNJc01DazdDbU55WldGMFpWTjBZWFJsS0NKMGFHVnliVzl6ZEdGMExpSXJkR2hmYm1GdFpTc2lMbkJ5YjJacGJDSXJhU3NpTGtSdklpd3dLVHNLWTNKbFlYUmxVM1JoZEdVb0luUm9aWEp0YjNOMFlYUXVJaXQwYUY5dVlXMWxLeUl1Y0hKdlptbHNJaXRwS3lJdVJuSWlMREFwT3dwamNtVmhkR1ZUZEdGMFpTZ2lkR2hsY20xdmMzUmhkQzRpSzNSb1gyNWhiV1VySWk1d2NtOW1hV3dpSzJrcklpNVRZU0lzTUNrN0NtTnlaV0YwWlZOMFlYUmxLQ0owYUdWeWJXOXpkR0YwTGlJcmRHaGZibUZ0WlNzaUxuQnliMlpwYkNJcmFTc2lMbE52SWl3d0tUc0tmUSUzRCUzRCUzQyUyRmZpZWxkJTNFJTNDY29tbWVudCUyMHBpbm5lZCUzRCUyMmZhbHNlJTIyJTIwaCUzRCUyMjgwJTIyJTIwdyUzRCUyMjE2MCUyMiUzRUJlc2NocmVpYmUlMjBkaWVzZSUyMEZ1bmt0aW9uJTIwJUUyJTgwJUE2JTNDJTJGY29tbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19kZWZub3JldHVybiUyMiUyMGlkJTNEJTIyR1YlMjNjMyFDTlJPcW4lN0QtSkMlNUVNJTIzcyUyMiUyMGNvbGxhcHNlZCUzRCUyMnRydWUlMjIlMjB4JTNEJTIyMTYyJTIyJTIweSUzRCUyMi0xNjIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFdm9ybGFnZSUzQyUyRmZpZWxkJTNFJTNDY29tbWVudCUyMHBpbm5lZCUzRCUyMmZhbHNlJTIyJTIwaCUzRCUyMjgwJTIyJTIwdyUzRCUyMjE2MCUyMiUzRUJlc2NocmVpYmUlMjBkaWVzZSUyMEZ1bmt0aW9uJTIwJUUyJTgwJUE2JTNDJTJGY29tbWVudCUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFDSyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbW1lbnQlMjIlMjBpZCUzRCUyMjRzVkZwNTRHU0hPJTNBcCUyM2VvMCUyM3lyJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09NTUVOVCUyMiUzRVdvY2hlbnRhZyUzQyUyRmZpZWxkJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNyZWF0ZSUyMiUyMGlkJTNEJTIyWkUwNCU0MCU1RWlqUzlnVVQlM0JIX34lMjV1JTVCJTIyJTIwY29sbGFwc2VkJTNEJTIydHJ1ZSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5BTUUlMjIlM0Vqc1N0YXRlJTNDJTJGZmllbGQlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIydSU1RCU1QlYzOElFRXhCKFp+eVppJTJDbnolMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzQiU3RENFQXQuVzdyTVNnJTNCTiUyM24lM0JYZyUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRVdvY2hlbnRhZyUyMDElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyLTM5bSU1RTRmZSp+JTNGJTJDJTI0JTdDRjZWZCUyNEslMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjJrYiUzRGwlN0JWdmgtIUowLnBSJTNBSiUyRlIwJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjI5czEqKEpJQU1BVkVPcjBRciU3QyU1RG8lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0VqYXZhc2NyaXB0LjAudGhlcm1vc3RhdC5kYW5pZWwucHJvZmlsMS5NbyUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2FwcGVuZCUyMiUyMGlkJTNEJTIybnlnSih5bWolM0YlMkZjZ2MlNDAuflRMJTYwNyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTNCJTdEQ0VBdC5XN3JNU2clM0JOJTIzbiUzQlhnJTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFV29jaGVudGFnJTIwMSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJWSkFTJTJDVWM5USUyMzMyUlclN0RIbHhlRiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UxJTJDJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjJiNEolM0YlMjUydSoyJTIzdVlRZ1IlMkIhKDdOJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjJxNyU1RSlaNU5hTGMlN0RyQ0Q3d3klNDBPZCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC50aGVybW9zdGF0LmRhbmllbC5wcm9maWwxLkRpJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfYXBwZW5kJTIyJTIwaWQlM0QlMjJoaSUyRlJKZlZCdEVLJTVCREdaN2Z5JTJDLiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTNCJTdEQ0VBdC5XN3JNU2clM0JOJTIzbiUzQlhnJTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFV29jaGVudGFnJTIwMSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjI4LlJYU0hiWURPWElONVglNUREVjVGJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRTIlMkMlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbHNfaWYlMjIlMjBpZCUzRCUyMkJIQiF3eV8lNUQlN0MlNUIlM0ElM0JyViUzRiUyMzglMjQlNDB5JTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjJHaDljNDJSZCU3RGpBJTNGZSU2MEFMJTYwKiU2MCUzRiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC50aGVybW9zdGF0LmRhbmllbC5wcm9maWwxLk1pJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfYXBwZW5kJTIyJTIwaWQlM0QlMjJLMEVneEVCaGJmZzAlN0IlN0QuU2RHM3MlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzQiU3RENFQXQuVzdyTVNnJTNCTiUyM24lM0JYZyUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRVdvY2hlbnRhZyUyMDElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyMSUyQiUyQiU3RGxhJTJDcyU1RUklMkZEdS5tJTNBQmdqTSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UzJTJDJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjJhXyU1RWI2ZmspQSUzQmVFN0FMM3QpWmQlMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWUlMjIlMjBpZCUzRCUyMipkJTdDbVZIVShJbEp3UEIlNjAoeTB+TCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC50aGVybW9zdGF0LmRhbmllbC5wcm9maWwxLkRvJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfYXBwZW5kJTIyJTIwaWQlM0QlMjJuYmE2SjBBJTYwZFpUfmVQJTJGcFZUZl8lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzQiU3RENFQXQuVzdyTVNnJTNCTiUyM24lM0JYZyUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRVdvY2hlbnRhZyUyMDElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTYwZyElM0Y5Mm8tQnN3dXZIVWZIbSUzQkUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFNCUyQyUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sc19pZiUyMiUyMGlkJTNEJTIyJTVCb2taTyU2MEE3b3BRbXdFJTdCTFYlNjAhbSUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMklGMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyTjZtMjhyR2NNanMlNUVoWEc1RVdkdiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC50aGVybW9zdGF0LmRhbmllbC5wcm9maWwxLkZyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfYXBwZW5kJTIyJTIwaWQlM0QlMjJ6ITgwVE5CM0coNnAlN0Q0biUzQW1pLnclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzQiU3RENFQXQuVzdyTVNnJTNCTiUyM24lM0JYZyUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRVdvY2hlbnRhZyUyMDElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyUTMlMjUlNUVTcCp+bTdPZDAlNDBVc2suaColMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFNSUyQyUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sc19pZiUyMiUyMGlkJTNEJTIyYiglM0Y0WkJZKWYlM0ZFOE4lMkZTJTJCJTNCUlMwJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjJ6KUxrTSU1RExwOXVMZEVwNi5iMiUyRjElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0VqYXZhc2NyaXB0LjAudGhlcm1vc3RhdC5kYW5pZWwucHJvZmlsMS5TYSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2FwcGVuZCUyMiUyMGlkJTNEJTIyWHZpaCUyNCUyNS5zTTYlMjVpXzN5eiUyQyU3QilUJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0IlN0RDRUF0Llc3ck1TZyUzQk4lMjNuJTNCWGclMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VXb2NoZW50YWclMjAxJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlNrfjYlMjRSbk5yJTVCSXk5JTYwbSU3QzB1MyU0MCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0U2JTJDJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjIlNjAlMkN5VS1EQmclN0QlNUIhNCp+TzclM0JsSGQlMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWUlMjIlMjBpZCUzRCUyMk9YJTYwJTIzJTQwSDBkeiU3Q3d1LWdqd0glMkM5WiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC50aGVybW9zdGF0LmRhbmllbC5wcm9maWwxLlNvJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfYXBwZW5kJTIyJTIwaWQlM0QlMjIlNjBoOSUzRG1fLU91JTdELVdrTFlJJTJCcFIlM0IlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzQiU3RENFQXQuVzdyTVNnJTNCTiUyM24lM0JYZyUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRVdvY2hlbnRhZyUyMDElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyS0QlM0ElN0JHJTJDRFFpZ1FkJTI1aGxHcDFnJTYwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRTAlMkMlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbHNfaWYlMjIlMjBpZCUzRCUyMndUMnhKJTYwVSU2MDhsLTg5UlktcE9mRCUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMklGMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2NvbXBhcmUlMjIlMjBpZCUzRCUyMlZ1IV9DKipyUyUyQlMlNDBCV0tqaiU2MFklMkYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUVRJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyIW1hYmVwKCU0ME9PJTJCVzUlMkMtJTJDMkwlMkM1JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUyQyUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2NoYXJBdCUyMiUyMGlkJTNEJTIyJTQwckxnZSUyMzFsYXpfJTI1JTdEJTJDZiUyNUpEQ3UlMjIlM0UlM0NtdXRhdGlvbiUyMGF0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFJTIyJTNFTEFTVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJTJTdCJTNGcEk4N0ZWciU2MEslM0JyX3RIUVQ1JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0IlN0RDRUF0Llc3ck1TZyUzQk4lMjNuJTNCWGclMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VXb2NoZW50YWclMjAxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8wJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyREI0RW5EJTYwLnhqTSUyQ1QlNURFJTYwWkUlMkJhJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0IlN0RDRUF0Llc3ck1TZyUzQk4lMjNuJTNCWGclMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VXb2NoZW50YWclMjAxJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfZ2V0U3Vic3RyaW5nJTIyJTIwaWQlM0QlMjJfRVYtVyU1RCpFWCUyQmJCV29mM2lrWmQlMjIlM0UlM0NtdXRhdGlvbiUyMGF0MSUzRCUyMmZhbHNlJTIyJTIwYXQyJTNEJTIydHJ1ZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUxJTIyJTNFRklSU1QlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMiUyMiUzRUZST01fU1RBUlQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlNUUklORyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiUzQm1JJTI0JTNEaVBYN1MlNjBCUHAlM0RjMEYlMjRnJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0IlN0RDRUF0Llc3ck1TZyUzQk4lMjNuJTNCWGclMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VXb2NoZW50YWclMjAxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9hcml0aG1ldGljJTIyJTIwaWQlM0QlMjJ0VyUyM1ZFdCpoJTdDcTclNUVoTm51JTQwJTVEZEklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRU1JTlVTJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJqNGguZ0ZwUWxkZCE4VzYlM0ElNUJLNW0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2xlbmd0aCUyMiUyMGlkJTNEJTIyM000U3FER3YlNUQlM0Q0a05IdEZveiU3QiUzRCUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlBNJTI0WCU3QjdSbyU0MCUyNWpTT1I1LmEyJTJDQSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0VhYmMlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMjFOTVYqbU9SZ3pzbXI0NlVWZ2IlM0QlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzQiU3RENFQXQuVzdyTVNnJTNCTiUyM24lM0JYZyUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRVdvY2hlbnRhZyUyMDElM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyTiU3QnhuKUxyNGg5ZFRwTGZTfjUlM0RGJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29tbWVudCUyMiUyMGlkJTNEJTIycSU1RDlqWHYxRERHTm4lN0RBbTRtKTAqJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09NTUVOVCUyMiUzRVplaXQlMjAxJTIwYXVzZWluYW5kZXJuZWhtZW4lM0MlMkZmaWVsZCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjIlN0I5JTVFMlB5ZzElMjRZUzYlM0FLWW8lMjQzVCUzRCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTNEd2RMT1c4OXRvdERxMW8lMkZhTyU3QyU2MCUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRXplaXQxJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyNyUzQS0tJTJCQUZkNzQlN0N0TTglNjByQ2xOaCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC50aGVybW9zdGF0LmRhbmllbC5wcm9maWwxLlplaXQxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiUzRiUyM19yJTJDOF81MDFOfjJKVFhmcEFSJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlMkYlMjMlNjAlNUIlNjBvVnNNXyU3Qi1vRilIWiU1Qkl2JTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFZWluU3RkMSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2dldFN1YnN0cmluZyUyMiUyMGlkJTNEJTIyR2shNyUzQikyZyUyQjR4ZkcxKC51UjVsJTIyJTNFJTNDbXV0YXRpb24lMjBhdDElM0QlMjJ0cnVlJTIyJTIwYXQyJTNEJTIydHJ1ZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUxJTIyJTNFRlJPTV9TVEFSVCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUyJTIyJTNFRlJPTV9TVEFSVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyU1RSSU5HJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIycGsyVHJmby5yX0dCNSUyNWtqYnJydSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTNEd2RMT1c4OXRvdERxMW8lMkZhTyU3QyU2MCUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRXplaXQxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMn43JTQwVXVwREFsTFFIMGs5U0lhQTMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMjlpdGRKUnJBTVNpKm4lMkNjKWg3U2slMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJmJTVEOTBjV3Z1ZzdkMTBMJTYwdm8lNUVHJTNEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJQayU0MDdtJTdEJTJGTXpwRHApJTJCYlZnVmx4JTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFZWluTWluMSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2dldFN1YnN0cmluZyUyMiUyMGlkJTNEJTIyQlMwJTVCNXopJTNCdTIlMjMlN0RyT3glM0J0V3IlM0ElMjIlM0UlM0NtdXRhdGlvbiUyMGF0MSUzRCUyMnRydWUlMjIlMjBhdDIlM0QlMjJ0cnVlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTElMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTIlMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJTVFJJTkclMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJYJTQwJTI0fmtOVSkyKVZfSSUyNEklN0IuJTVCVWslMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzRHdkTE9XODl0b3REcTFvJTJGYU8lN0MlNjAlMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0V6ZWl0MSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFUMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjIlNURfNiU2MDlqQW1QZTVGMks5UEtXY2UlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0U0JTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMlVEJTVEbSUyNVdCJTNBJTIzfjdwa1RLZSU1RSU3Q3NhJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFNSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyc2NoZWR1bGVfY3JlYXRlJTIyJTIwaWQlM0QlMjJtdyUyMyglNURrbn5PIXMpc2clNURVISU3Q3ZzJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTkFNRSUyMiUzRWNocm9uMSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyU0NIRURVTEUlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfY3JvbiUyMiUyMGlkJTNEJTIycXZ1dTJDNkF6anRJUiUzRG9mKTglMkYlMkYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDUk9OJTIyJTNFKiUyMColMjAqJTIwKiUyMColM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNyb25fYnVpbGRlciUyMiUyMGlkJTNEJTIyJTYwbFAlNUJ1bEclMjN6VVJ4JTVFd21aS1NVcSUyMiUzRSUzQ211dGF0aW9uJTIwc2Vjb25kcyUzRCUyMmZhbHNlJTIyJTIwYXNfbGluZSUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJMSU5FJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfU0VDT05EUyUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJET1clMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTI0eE8lNUVuSVlWJTNGdXElN0NudVIlN0NPZTMlNDAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFKiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyOVVFJTI1OSUyNUpDdk1xTWpjbzdhJTdDYXQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzQiU3RENFQXQuVzdyTVNnJTNCTiUyM24lM0JYZyUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRVdvY2hlbnRhZyUyMDElM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJNT05USFMlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyYUhyWG5VJTVESmthJTJGVmNRZjB6UCUzRE0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFKiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJEQVlTJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMjEoMGhkRyUyNDhSJTdDQy0uSUNkS29KdiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UqJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkhPVVJTJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiUzQkYlM0IpY0NYU24zeSUyQjclMjRjZSUyRiUzRmc1JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSolM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnBERlRpcVpzKFQlMkMhVDJna3JJak0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUyRiUyMyU2MCU1QiU2MG9Wc01fJTdCLW9GKUhaJTVCSXYlMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VlaW5TdGQxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyTUlOVVRFUyUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJRLnlmUFh5JTdCRHElNjBOdDR0VnZuRUwlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFKiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyeU5wekVyVCU1QmRwZE5lSiUzRiU1RVBzciUzRiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyUGslNDA3bSU3RCUyRk16cERwKSUyQmJWZ1ZseCUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRWVpbk1pbjElM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMm5DdjZjMSUzQSU3RCU3QnMlM0RtViUzQWRuJTYwUkhYJTIyJTNFJTNDbXV0YXRpb24lMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0VobWlwLjAuZGV2aWNlcy4zMDE1MDM3N0RDMDAxMjk5OTM5M0JERTcuY2hhbm5lbHMuMS5zZXRQb2ludFRlbXBlcmF0dXJlJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjJvOTNsRXNwJTdCTHElMjVWa3olMkJtLmRWJTdCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFamF2YXNjcmlwdC4wLnRoZXJtb3N0YXQuZGFuaWVsLnByb2ZpbDEuVGVtcDElM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0NibG9jayUyMHR5cGUlM0QlMjJwcm9jZWR1cmVzX2RlZmN1c3RvbW5vcmV0dXJuJTIyJTIwaWQlM0QlMjIlNDAlNURHJTdDTEE3dSUyQiU1RGElNUUuKWhPcVVmRSUyMiUyMHglM0QlMjIxNjMlMjIlMjB5JTNEJTIyLTExMiUyMiUzRSUzQ211dGF0aW9uJTIwc3RhdGVtZW50cyUzRCUyMmZhbHNlJTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMnByb2ZpbCUyMiUyMHZhcmlkJTNEJTIyJTNGJTNBUS5KdjVmOFRGbEolN0RGciU3RGolMkMlN0QlMjIlM0UlM0MlMkZhcmclM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5BTUUlMjIlM0V0aGVybW9zdGF0JTIwbW9kdWxhciUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU0NSSVBUJTIyJTNFTHk4Z1YyOWphR1Z1ZEdGbkNpQWdJQ0JYYjJOb1pXNTBZV2RmTVNBOUlDY25Pd29nSUNBZ2FXWWdLR2RsZEZOMFlYUmxLQ0pxWVhaaGMyTnlhWEIwTGpBdWRHaGxjbTF2YzNSaGRDNWtZVzVwWld3dUlpdHdjbTltYVd3cklpNU5ieUlwTG5aaGJDa2dld29nSUNBZ0lDQlhiMk5vWlc1MFlXZGZNU0FyUFNBbk1Td25Pd29nSUNBZ2ZRb2dJQ0FnYVdZZ0tHZGxkRk4wWVhSbEtDSnFZWFpoYzJOeWFYQjBMakF1ZEdobGNtMXZjM1JoZEM1a1lXNXBaV3d1SWl0d2NtOW1hV3dySWk1RWFTSXBMblpoYkNrZ2V3b2dJQ0FnSUNCWGIyTm9aVzUwWVdkZk1TQXJQU0FuTWl3bk93b2dJQ0FnZlFvZ0lDQWdhV1lnS0dkbGRGTjBZWFJsS0NKcVlYWmhjMk55YVhCMExqQXVkR2hsY20xdmMzUmhkQzVrWVc1cFpXd3VJaXR3Y205bWFXd3JJaTVOYVNJcExuWmhiQ2tnZXdvZ0lDQWdJQ0JYYjJOb1pXNTBZV2RmTVNBclBTQW5NeXduT3dvZ0lDQWdmUW9nSUNBZ2FXWWdLR2RsZEZOMFlYUmxLQ0pxWVhaaGMyTnlhWEIwTGpBdWRHaGxjbTF2YzNSaGRDNWtZVzVwWld3dUlpdHdjbTltYVd3cklpNUVieUlwTG5aaGJDa2dld29nSUNBZ0lDQlhiMk5vWlc1MFlXZGZNU0FyUFNBbk5Dd25Pd29nSUNBZ2ZRb2dJQ0FnYVdZZ0tHZGxkRk4wWVhSbEtDSnFZWFpoYzJOeWFYQjBMakF1ZEdobGNtMXZjM1JoZEM1a1lXNXBaV3d1SWl0d2NtOW1hV3dySWk1R2NpSXBMblpoYkNrZ2V3b2dJQ0FnSUNCWGIyTm9aVzUwWVdkZk1TQXJQU0FuTlN3bk93b2dJQ0FnZlFvZ0lDQWdhV1lnS0dkbGRGTjBZWFJsS0NKcVlYWmhjMk55YVhCMExqQXVkR2hsY20xdmMzUmhkQzVrWVc1cFpXd3VJaXR3Y205bWFXd3JJaTVUWVNJcExuWmhiQ2tnZXdvZ0lDQWdJQ0JYYjJOb1pXNTBZV2RmTVNBclBTQW5OaXduT3dvZ0lDQWdmUW9nSUNBZ2FXWWdLR2RsZEZOMFlYUmxLQ0pxWVhaaGMyTnlhWEIwTGpBdWRHaGxjbTF2YzNSaGRDNWtZVzVwWld3dUlpdHdjbTltYVd3cklpNVRieUlwTG5aaGJDa2dld29nSUNBZ0lDQlhiMk5vWlc1MFlXZGZNU0FyUFNBbk1Dd25Pd29nSUNBZ2ZRb2dJQ0FnTHk4Z1MyOXRiV0VnWVcwZ1JXNWtaU0JsYm5SbVpYSnVaVzRLSUNBZ0lHbG1JQ2duTENjZ1BUMGdWMjlqYUdWdWRHRm5YekV1YzJ4cFkyVW9MVEVwS1NCN0NpQWdJQ0FnSUZkdlkyaGxiblJoWjE4eElEMGdWMjlqYUdWdWRHRm5YekV1YzJ4cFkyVW9NQ3dnVjI5amFHVnVkR0ZuWHpFdWJHVnVaM1JvSUMwZ01TazdDaUFnSUNCOUNnb0tMeThnV21WcGRDQXhJR0YxYzJWcGJtRnVaR1Z5Ym1Wb2JXVnVDblpoY2lCNlpXbDBJRDBnVzEwN0NuWmhjaUIwWlcxd0lEMGdXMTA3Q25aaGNpQmxhVzVUZEdRZ1BTQmJYVHNLZG1GeUlHVnBiazFwYmlBOUlGdGRPd3AyWVhJZ2VtVnBkSEJzWVc0Z1BTQmJYVHNLZG1GeUlIUmxiWEJsY21GMGRYSTdDZ3BtYjNJZ0tIWmhjaUJwUFRFN0lHazhQVFU3SUdrckt5bDdDaUFnSUNCNlpXbDBXMmxkSUQwZ1oyVjBVM1JoZEdVb0ltcGhkbUZ6WTNKcGNIUXVNQzUwYUdWeWJXOXpkR0YwTG1SaGJtbGxiQzRpSzNCeWIyWnBiQ3NpTGxwbGFYUWlLMmtwTG5aaGJEc0tJQ0FnSUhSbGJYQmJhVjBnUFNCblpYUlRkR0YwWlNnaWFtRjJZWE5qY21sd2RDNHdMblJvWlhKdGIzTjBZWFF1WkdGdWFXVnNMaUlyY0hKdlptbHNLeUl1VkdWdGNDSXJhU2t1ZG1Gc093b2dJQ0FnZEdWdGNHVnlZWFIxY2lBOUlIUmxiWEJiYVYwN0NpQWdJQ0JsYVc1VGRHUmJhVjBnUFNCNlpXbDBXMmxkTG5Oc2FXTmxLREFzSURJcE93b2dJQ0FnWldsdVRXbHVXMmxkSUQwZ2VtVnBkRnRwWFM1emJHbGpaU2d6TENBMUtUc0tJQ0FnSUdOdmJuTnZiR1V1Ykc5bktDSjJiM0lnYzJOb1pXUjFiR1U2SUNJcmRHVnRjR1Z5WVhSMWNpazdDaUFnSUNCNlpXbDBjR3hoYmx0cFhTQTlJSE5qYUdWa2RXeGxLR1ZwYmsxcGJsdHBYUzUwY21sdEtDa2dLeUFuSUNjZ0t5QmxhVzVUZEdSYmFWMHVkSEpwYlNncElDc2dKeUFuSUNzZ0p5b25MblJ5YVcwb0tTQXJJQ2NnSnlBcklDY3FKeTUwY21sdEtDa2dLeUFuSUNjZ0t5QlhiMk5vWlc1MFlXZGZNUzUwY21sdEtDa3NJQW9nSUNBZ0lDQWdJR1oxYm1OMGFXOXVJSFJsYlhCRmFXNXpkR1ZzYkdWdUtIUmxiWEJsY21GMGRYSXBJSHNLSUNBZ0lDQWdJQ0FnSUNBZ1kyOXVjMjlzWlM1c2IyY29JbWx1SUhOamFHVmtkV3hsT2lBaUszUmxiWEJsY21GMGRYSXBPd29nSUNBZ0lDQWdJQ0FnSUNCamIyNXpiMnhsTG14dlp5aHBLVHNLSUNBZ0lDQWdJQ0FnSUNBZ2MyVjBVM1JoZEdVb0ltaHRhWEF1TUM1a1pYWnBZMlZ6TGpNd01UVXdNemMzUkVNd01ERXlPVGs1TXprelFrUkZOeTVqYUdGdWJtVnNjeTR4TG5ObGRGQnZhVzUwVkdWdGNHVnlZWFIxY21VaUx5cHpaWFJRYjJsdWRGUmxiWEJsY21GMGRYSmxLaThzSUhCaGNuTmxSbXh2WVhRb2RHVnRjR1Z5WVhSMWNpa3BPd29nSUNBZ0lDQWdJSDBLSUNBZ0lDazdDbjBLQ2clM0QlM0QlM0MlMkZmaWVsZCUzRSUzQ2NvbW1lbnQlMjBwaW5uZWQlM0QlMjJmYWxzZSUyMiUyMGglM0QlMjI4MCUyMiUyMHclM0QlMjIxNjAlMjIlM0VCZXNjaHJlaWJlJTIwZGllc2UlMjBGdW5rdGlvbiUyMCVFMiU4MCVBNiUzQyUyRmNvbW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnByb2NlZHVyZXNfY2FsbGN1c3RvbW5vcmV0dXJuJTIyJTIwaWQlM0QlMjJtaENkdyUyQ1NLeiU1RHZJUCgoUHZ2SH4lMjIlMjB4JTNEJTIyMTYyJTIyJTIweSUzRCUyMi02MiUyMiUzRSUzQ211dGF0aW9uJTIwbmFtZSUzRCUyMnp1c3RhZW5kZSUyMGVyemV1Z2VuJTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMnRoX25hbWUlMjIlM0UlM0MlMkZhcmclM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFSRzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjI0JTNGJTNEJTI1JTNGRXclN0N3JTJGJTJDdk1CJTIzRn50OG4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFZGFuaWVsJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnByb2NlZHVyZXNfY2FsbGN1c3RvbW5vcmV0dXJuJTIyJTIwaWQlM0QlMjI0eXNiUVlaOCU3QjNZRGJkJTNEMlBjUkIlMjIlM0UlM0NtdXRhdGlvbiUyMG5hbWUlM0QlMjJ0aGVybW9zdGF0JTIwbW9kdWxhciUyMiUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJwcm9maWwlMjIlM0UlM0MlMkZhcmclM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFSRzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJsVDd6TzF4MyolMkIlN0JxU1gqUTNrX2IlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFcHJvZmlsMSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGeG1sJTNF
                  
                  AlCalzone 1 Reply Last reply Reply Quote 0
                  • AlCalzone
                    AlCalzone Developer @ratte-rizzo last edited by AlCalzone

                    @ratte-rizzo sagte in Übergabe einer Variable an Schedule:

                         for (var i=1; i<=5; i++){
                         [...]
                         zeitplan[i] = schedule(einMin[i].trim() + ' ' + einStd[i].trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + Wochentag_1.trim(),
                             function tempEinstellen(temperatur) {
                                 console.log("in schedule: "+temperatur);
                                 console.log(i);                                                              
                    

                    Da ist der Haken. Du hast i mit var deklariert, d.h. zu dem Zeitpunkt wo der Callback aufgerufen ist, besitzt i den Wert 6 (Schleife vorbei). Wenn du i stattdessen mit let deklarierst, bleibt der Wert an den Schleifendurchlauf gebunden.

                    Außerdem nutzt du nur eine Variable temperatur für mehrere Schleifendurchläufe. Das geht auch nicht.
                    Lösche var temperatur und definiere die Variable in der Schleife: const temperatur = temp[i]; Damit ist sie ebenfalls an den Schleifenaufruf (den Wert von i) gebunden.

                    1 Reply Last reply Reply Quote 0
                    • R
                      ratte-rizzo last edited by

                      Moin

                      Danke für die Rückmeldung. Kurze Aktualisierung zu dem Thema: Das i wird jetzt korrekt wiedergegeben. Allerdings war temperatur noch unknown. Aber ich hab da nochmal was geändert. Morgen weiß ich näheres.

                      Dank & Gruß
                      Daniel

                      1 Reply Last reply Reply Quote 0
                      • R
                        ratte-rizzo last edited by

                        Sooo, nu hats geklappt (Titel gleich noch geändert). Hier ist die Version, die funktioniert -- ohne Hilfsvariable. Der Trick war dann das let

                        var temp = [];
                        var einStd = [];
                        var einMin = [];
                        var zeitplan = [];
                        
                        for (let i=1; i<=5; i++){
                            zeit[i] = getState("javascript.0.thermostat.daniel."+profil+".Zeit"+i).val;
                            temp[i] = getState("javascript.0.thermostat.daniel."+profil+".Temp"+i).val;
                            einStd[i] = zeit[i].slice(0, 2);
                            einMin[i] = zeit[i].slice(3, 5);
                            console.log("vor schedule: "+temperatur);
                            zeitplan[i] = schedule(einMin[i].trim() + ' ' + einStd[i].trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + Wochentag_1.trim(), 
                                function tempEinstellen() {
                                    console.log("in schedule: "+temp[i]);
                                    console.log(i);
                                    setState("hmip.0.devices.30150377DC0012999393BDE7.channels.1.setPointTemperature"/*setPointTemperature*/, parseFloat(temperatur));
                                }
                            );
                        }
                        

                        Vielen Dank an @AlCalzone und alle anderen Beteiligten!

                        Lieben Gruß
                        Daniel

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        654
                        Online

                        31.8k
                        Users

                        80.0k
                        Topics

                        1.3m
                        Posts

                        4
                        11
                        521
                        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