Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Dyn. Liste darstellen und als Auswahlliste in VIS, iQontrol

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    508

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.6k

Dyn. Liste darstellen und als Auswahlliste in VIS, iQontrol

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
111 Beiträge 6 Kommentatoren 11.1k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • R Offline
    R Offline
    Rookie50
    schrieb am zuletzt editiert von
    #1

    Hi,

    ich versuche mich gerade eine Fernsteuerung für mein Bluesound Multiroom System zu erstellen. Lautstärke sowie die Wiedergabe von Preset's funktioniert auch schon. Nun möchte ich auch meine Bibliothek durchsuchen können. Ich steuere das ganze via Blockly mit http request's. Wenn ich nun die Ordner mit "http://10.1.1.100:11000/Folders?service=LocalMusic" auslese, bekomme ich dies zurück:

    <folders service="LocalMusic">
    <subfolders>
    <folder>//10.1.1.10/music/Alben</folder>
    <folder>//10.1.1.10/music/Best of</folder>
    <folder>//10.1.1.10/music/Sampler</folder>
    <folder>//10.1.1.10/music/X-Mas</folder>
    </subfolders>
    </folders>
    

    Das schreibe ich als JSON in einen DP:

    "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<folders service=\"LocalMusic\">\n<subfolders>\n<folder>//10.1.1.10/music/Alben</folder>\n<folder>//10.1.1.10/music/Best of</folder>\n<folder>//10.1.1.10/music/Sampler</folder>\n<folder>//10.1.1.10/music/X-Mas</folder>\n</subfolders>\n</folders>\n"
    

    Aus diesem Ergebnis würde ich nun gerne eine Liste erstellen, die ich in vis und iQontrol als Auswahlliste benutzen kann. Hier beginnt mein Problem, da die Länge der Liste variert müsste man abfragen wieviele Einträge vorhanden sind und dann entsprechend darstellen. Ich habe z.Z. noch keine zündende Idee wie ich das löse.

    Ich bin über jeden Lösungsansatz dankbar...

    Gruß Rookie

    liv-in-skyL 1 Antwort Letzte Antwort
    0
    • R Rookie50

      Hi,

      ich versuche mich gerade eine Fernsteuerung für mein Bluesound Multiroom System zu erstellen. Lautstärke sowie die Wiedergabe von Preset's funktioniert auch schon. Nun möchte ich auch meine Bibliothek durchsuchen können. Ich steuere das ganze via Blockly mit http request's. Wenn ich nun die Ordner mit "http://10.1.1.100:11000/Folders?service=LocalMusic" auslese, bekomme ich dies zurück:

      <folders service="LocalMusic">
      <subfolders>
      <folder>//10.1.1.10/music/Alben</folder>
      <folder>//10.1.1.10/music/Best of</folder>
      <folder>//10.1.1.10/music/Sampler</folder>
      <folder>//10.1.1.10/music/X-Mas</folder>
      </subfolders>
      </folders>
      

      Das schreibe ich als JSON in einen DP:

      "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<folders service=\"LocalMusic\">\n<subfolders>\n<folder>//10.1.1.10/music/Alben</folder>\n<folder>//10.1.1.10/music/Best of</folder>\n<folder>//10.1.1.10/music/Sampler</folder>\n<folder>//10.1.1.10/music/X-Mas</folder>\n</subfolders>\n</folders>\n"
      

      Aus diesem Ergebnis würde ich nun gerne eine Liste erstellen, die ich in vis und iQontrol als Auswahlliste benutzen kann. Hier beginnt mein Problem, da die Länge der Liste variert müsste man abfragen wieviele Einträge vorhanden sind und dann entsprechend darstellen. Ich habe z.Z. noch keine zündende Idee wie ich das löse.

      Ich bin über jeden Lösungsansatz dankbar...

      Gruß Rookie

      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      schrieb am zuletzt editiert von
      #2

      @rookie50

      ich habe mal deine ausgabe der daten als data gesetzt und bekomme dann durch das blockly den output für eine werteliste

      Image 6.png

      <xml xmlns="https://developers.google.com/blockly/xml">
       <variables>
         <variable id="r.:/L/ksEV/7ta}nl(*7">werteliste</variable>
         <variable id="~haufMDgH0_wvT$|qXr#">wertelistehelper</variable>
         <variable id="KR[:^@%d*?bSB|tg)8b#">counter</variable>
         <variable id="i~d)Q@s1:QdazY.OqR((">data</variable>
         <variable id="(/0ez{fAEAbEKWTRB|gW">myarr</variable>
         <variable id="WjEdEj+`/m)CX{vlmMQT">anzahl</variable>
         <variable id="9x`r7OKq]7ckqe?R$)%x">i</variable>
       </variables>
       <block type="variables_set" id="OXmr~O^Y;Zn8N|ei]GTI" x="-138" y="13">
         <field name="VAR" id="r.:/L/ksEV/7ta}nl(*7">werteliste</field>
         <value name="VALUE">
           <block type="lists_create_with" id="HdlC|P0[LL4s5bi%Onj+">
             <mutation items="0"></mutation>
           </block>
         </value>
         <next>
           <block type="variables_set" id="A3~g8-Pn{_=e]9#,DEui">
             <field name="VAR" id="~haufMDgH0_wvT$|qXr#">wertelistehelper</field>
             <value name="VALUE">
               <block type="lists_create_with" id="f3SxT8yEK;HKWFH^)1Zu">
                 <mutation items="0"></mutation>
               </block>
             </value>
             <next>
               <block type="variables_set" id="g2AcmWt4o[2w!^y_PW$4">
                 <field name="VAR" id="KR[:^@%d*?bSB|tg)8b#">counter</field>
                 <value name="VALUE">
                   <block type="math_number" id="T)]$Mbx(RV[K.m{jed`Y">
                     <field name="NUM">0</field>
                   </block>
                 </value>
                 <next>
                   <block type="variables_set" id="z*fOm6NCDBBi4CQ|}jDo">
                     <field name="VAR" id="i~d)Q@s1:QdazY.OqR((">data</field>
                     <value name="VALUE">
                       <block type="text" id="AFyCwlSqUT-Zn;oInlfZ">
                         <field name="TEXT">&lt;folders service="LocalMusic"&gt;  &lt;subfolders&gt;  &lt;folder&gt;//10.1.1.10/music/Alben&lt;/folder&gt;  &lt;folder&gt;//10.1.1.10/music/Best of&lt;/folder&gt;  &lt;folder&gt;//10.1.1.10/music/Sampler&lt;/folder&gt;  &lt;folder&gt;//10.1.1.10/music/X-Mas&lt;/folder&gt;  &lt;/subfolders&gt;  &lt;/folders&gt;</field>
                       </block>
                     </value>
                     <next>
                       <block type="variables_set" id="]2+x4ZL/(aF#gkug8;on">
                         <field name="VAR" id="(/0ez{fAEAbEKWTRB|gW">myarr</field>
                         <value name="VALUE">
                           <block type="lists_split" id="is8RUvJkDE0XsZsXWsm%">
                             <mutation mode="SPLIT"></mutation>
                             <field name="MODE">SPLIT</field>
                             <value name="INPUT">
                               <block type="variables_get" id="`_f(g:|k@at;)cA2jvBU">
                                 <field name="VAR" id="i~d)Q@s1:QdazY.OqR((">data</field>
                               </block>
                             </value>
                             <value name="DELIM">
                               <shadow type="text" id="VMHJ~.$4zmC|HkMK$[k[">
                                 <field name="TEXT">&lt;/folder&gt;</field>
                               </shadow>
                             </value>
                           </block>
                         </value>
                         <next>
                           <block type="debug" id="X7)rE_4f=Wo#DUnh#:N|">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text" id="..i)1#/HeXD-jCDw|`UY">
                                 <field name="TEXT">test</field>
                               </shadow>
                               <block type="text_join" id="s579h`M4;N};}E[KvE,I">
                                 <mutation items="2"></mutation>
                                 <value name="ADD0">
                                   <block type="text" id="/A]{=T+YPIa(JmwpsN.#">
                                     <field name="TEXT">Anzahl: </field>
                                   </block>
                                 </value>
                                 <value name="ADD1">
                                   <block type="math_arithmetic" id="r{/RMeee.iaZyZ2nfTg#">
                                     <field name="OP">MINUS</field>
                                     <value name="A">
                                       <shadow type="math_number" id="iBB.MeBF8#3I}Z[!yx=M">
                                         <field name="NUM">1</field>
                                       </shadow>
                                       <block type="lists_length" id="+`3Om6{`S[zuyv?G%9~K">
                                         <value name="VALUE">
                                           <block type="variables_get" id="/tVpK6)MYjJ{62s^k+CB">
                                             <field name="VAR" id="(/0ez{fAEAbEKWTRB|gW">myarr</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <shadow type="math_number" id="yXhQZHFisnqvZj5@fOh*">
                                         <field name="NUM">1</field>
                                       </shadow>
                                       <block type="math_number" id="f!^FU+e,=Um[ljM:-E;R">
                                         <field name="NUM">1</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <next>
                               <block type="variables_set" id=")u:Y`qj9@GBXkYxmQSN;">
                                 <field name="VAR" id="WjEdEj+`/m)CX{vlmMQT">anzahl</field>
                                 <value name="VALUE">
                                   <block type="math_arithmetic" id="KJQgHDV.?f!]`!:dOC^8">
                                     <field name="OP">MINUS</field>
                                     <value name="A">
                                       <shadow type="math_number">
                                         <field name="NUM">1</field>
                                       </shadow>
                                       <block type="lists_length" id="#hRQoKWs+z;]LNf$NJGm">
                                         <value name="VALUE">
                                           <block type="variables_get" id="`d?SO%-LB7kLhAONHcXb">
                                             <field name="VAR" id="(/0ez{fAEAbEKWTRB|gW">myarr</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <shadow type="math_number">
                                         <field name="NUM">1</field>
                                       </shadow>
                                       <block type="math_number" id="-q[,WB3fYd6N}pXJeAG#">
                                         <field name="NUM">1</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="controls_forEach" id="wH3-Owxu*ek!T1iuIZBB">
                                     <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                     <value name="LIST">
                                       <block type="variables_get" id="bMioy~OXM{,tFH,aCBa7">
                                         <field name="VAR" id="(/0ez{fAEAbEKWTRB|gW">myarr</field>
                                       </block>
                                     </value>
                                     <statement name="DO">
                                       <block type="controls_if" id="5-DKA5Z_/B2gk2we}M8g">
                                         <value name="IF0">
                                           <block type="logic_compare" id="zf3V=r8PD2kpGTcG8LJo">
                                             <field name="OP">EQ</field>
                                             <value name="A">
                                               <block type="text_indexOf" id="$^zZ?wK!Cyj;SuV`_*Q/">
                                                 <field name="END">FIRST</field>
                                                 <value name="VALUE">
                                                   <block type="text_getSubstring" id="$C[DCnsTm+]b~tKn1?dP">
                                                     <mutation at1="true" at2="false"></mutation>
                                                     <field name="WHERE1">FROM_START</field>
                                                     <field name="WHERE2">LAST</field>
                                                     <value name="STRING">
                                                       <block type="text_getSubstring" id="[2#IC;,^$p(Dz,4q|Y?h">
                                                         <mutation at1="true" at2="false"></mutation>
                                                         <field name="WHERE1">FROM_START</field>
                                                         <field name="WHERE2">LAST</field>
                                                         <value name="STRING">
                                                           <block type="variables_get" id="6HP7s.!%N!n%dcg5|)om">
                                                             <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                           </block>
                                                         </value>
                                                         <value name="AT1">
                                                           <block type="text_indexOf" id="cy)D@Eo[xW!%LY!1N-mU">
                                                             <field name="END">LAST</field>
                                                             <value name="VALUE">
                                                               <block type="variables_get" id="3Jb/yo=cruU2:Qv}9YP5">
                                                                 <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                               </block>
                                                             </value>
                                                             <value name="FIND">
                                                               <shadow type="text" id="v-z-bY5v;N:V$OyqFS@n">
                                                                 <field name="TEXT">/</field>
                                                               </shadow>
                                                             </value>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <value name="AT1">
                                                       <block type="math_number" id="6c#6U:u$y3WtP~7.Ioeu">
                                                         <field name="NUM">2</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <value name="FIND">
                                                   <shadow type="text" id="Vdp!o(aRlvhk2;%t!:bU">
                                                     <field name="TEXT">folders&gt;</field>
                                                   </shadow>
                                                 </value>
                                               </block>
                                             </value>
                                             <value name="B">
                                               <block type="math_number" id="-UkOHbf-fmdZ,cozcv`F">
                                                 <field name="NUM">0</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <statement name="DO0">
                                           <block type="debug" id="lg2l)q]z_A#aqIk|0a_-">
                                             <field name="Severity">log</field>
                                             <value name="TEXT">
                                               <shadow type="text">
                                                 <field name="TEXT">test</field>
                                               </shadow>
                                               <block type="text_getSubstring" id="~_^lV02hVriR^NAq`#Fe">
                                                 <mutation at1="true" at2="false"></mutation>
                                                 <field name="WHERE1">FROM_START</field>
                                                 <field name="WHERE2">LAST</field>
                                                 <value name="STRING">
                                                   <block type="text_getSubstring" id="XruLqOt,IkbChz/e$5T*">
                                                     <mutation at1="true" at2="false"></mutation>
                                                     <field name="WHERE1">FROM_START</field>
                                                     <field name="WHERE2">LAST</field>
                                                     <value name="STRING">
                                                       <block type="variables_get" id="ZIA;OzrjxLpXeRJ-5Lik">
                                                         <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                       </block>
                                                     </value>
                                                     <value name="AT1">
                                                       <block type="text_indexOf" id="{SplU0xJQ;1-BDs1fMHm">
                                                         <field name="END">LAST</field>
                                                         <value name="VALUE">
                                                           <block type="variables_get" id="@iCYb+3e1jPEGvEdcei=">
                                                             <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                           </block>
                                                         </value>
                                                         <value name="FIND">
                                                           <shadow type="text" id="S:htKwH|#OxlFu1W%raC">
                                                             <field name="TEXT">/</field>
                                                           </shadow>
                                                         </value>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <value name="AT1">
                                                   <block type="math_number" id="A|nj/Tze34-P{p5;x*va">
                                                     <field name="NUM">2</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="lists_setIndex" id="7i)F-hvf=a@4$o)Svqnk">
                                                 <mutation at="false"></mutation>
                                                 <field name="MODE">INSERT</field>
                                                 <field name="WHERE">LAST</field>
                                                 <value name="LIST">
                                                   <block type="variables_get" id="p,D,WoW^H1HSEBrU4)E6">
                                                     <field name="VAR" id="r.:/L/ksEV/7ta}nl(*7">werteliste</field>
                                                   </block>
                                                 </value>
                                                 <value name="TO">
                                                   <block type="variables_get" id="6,XiQF14K`Ztrw/h18Qb">
                                                     <field name="VAR" id="KR[:^@%d*?bSB|tg)8b#">counter</field>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="lists_setIndex" id="6#,$lbywUZ[=IGl?M=W_">
                                                     <mutation at="false"></mutation>
                                                     <field name="MODE">INSERT</field>
                                                     <field name="WHERE">LAST</field>
                                                     <value name="LIST">
                                                       <block type="variables_get" id="UVNMa$|RWnnKYD:x+j=r">
                                                         <field name="VAR" id="~haufMDgH0_wvT$|qXr#">wertelistehelper</field>
                                                       </block>
                                                     </value>
                                                     <value name="TO">
                                                       <block type="text_getSubstring" id="K!Kk-nZ3`4}{!V]uvmCF">
                                                         <mutation at1="true" at2="false"></mutation>
                                                         <field name="WHERE1">FROM_START</field>
                                                         <field name="WHERE2">LAST</field>
                                                         <value name="STRING">
                                                           <block type="text_getSubstring" id="Lfbwm)6,6A?AjrGu;/|9">
                                                             <mutation at1="true" at2="false"></mutation>
                                                             <field name="WHERE1">FROM_START</field>
                                                             <field name="WHERE2">LAST</field>
                                                             <value name="STRING">
                                                               <block type="variables_get" id="dnr[gdwV+f29fin]04!q">
                                                                 <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                               </block>
                                                             </value>
                                                             <value name="AT1">
                                                               <block type="text_indexOf" id="a=]yu~sGA%n^=~R!:oih">
                                                                 <field name="END">LAST</field>
                                                                 <value name="VALUE">
                                                                   <block type="variables_get" id="3_HjY=Q5*ch|IyW4-aOa">
                                                                     <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="FIND">
                                                                   <shadow type="text" id="iF;~rf*Y~-YP/jhZ{D7]">
                                                                     <field name="TEXT">/</field>
                                                                   </shadow>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="AT1">
                                                           <block type="math_number" id="rA!yv`BYGs-J%q9W]U35">
                                                             <field name="NUM">2</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <next>
                                                       <block type="math_change" id="-2k{Xv4{/VjQpT-(oZBQ">
                                                         <field name="VAR" id="KR[:^@%d*?bSB|tg)8b#">counter</field>
                                                         <value name="DELTA">
                                                           <shadow type="math_number" id="~(zxv_kaUTwo@vXBtfJ1">
                                                             <field name="NUM">1</field>
                                                           </shadow>
                                                         </value>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                       </block>
                                     </statement>
                                     <next>
                                       <block type="debug" id=")!+/7H[M*J2`6F`TrTi1">
                                         <field name="Severity">log</field>
                                         <value name="TEXT">
                                           <shadow type="text" id="gJUKpiEQ~f51fG@h+d$Y">
                                             <field name="TEXT">test</field>
                                           </shadow>
                                           <block type="variables_get" id="*ZG~y3%cw=nK07%JvK8w">
                                             <field name="VAR" id="r.:/L/ksEV/7ta}nl(*7">werteliste</field>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="debug" id="kErr]q3y*A_wbBq58!1$">
                                             <field name="Severity">log</field>
                                             <value name="TEXT">
                                               <shadow type="text">
                                                 <field name="TEXT">test</field>
                                               </shadow>
                                               <block type="variables_get" id="W7wHzU(jD]ql!_!K!NS-">
                                                 <field name="VAR" id="~haufMDgH0_wvT$|qXr#">wertelistehelper</field>
                                               </block>
                                             </value>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                 </next>
               </block>
             </next>
           </block>
         </next>
       </block>
      </xml>
      

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      R 1 Antwort Letzte Antwort
      0
      • liv-in-skyL liv-in-sky

        @rookie50

        ich habe mal deine ausgabe der daten als data gesetzt und bekomme dann durch das blockly den output für eine werteliste

        Image 6.png

        <xml xmlns="https://developers.google.com/blockly/xml">
         <variables>
           <variable id="r.:/L/ksEV/7ta}nl(*7">werteliste</variable>
           <variable id="~haufMDgH0_wvT$|qXr#">wertelistehelper</variable>
           <variable id="KR[:^@%d*?bSB|tg)8b#">counter</variable>
           <variable id="i~d)Q@s1:QdazY.OqR((">data</variable>
           <variable id="(/0ez{fAEAbEKWTRB|gW">myarr</variable>
           <variable id="WjEdEj+`/m)CX{vlmMQT">anzahl</variable>
           <variable id="9x`r7OKq]7ckqe?R$)%x">i</variable>
         </variables>
         <block type="variables_set" id="OXmr~O^Y;Zn8N|ei]GTI" x="-138" y="13">
           <field name="VAR" id="r.:/L/ksEV/7ta}nl(*7">werteliste</field>
           <value name="VALUE">
             <block type="lists_create_with" id="HdlC|P0[LL4s5bi%Onj+">
               <mutation items="0"></mutation>
             </block>
           </value>
           <next>
             <block type="variables_set" id="A3~g8-Pn{_=e]9#,DEui">
               <field name="VAR" id="~haufMDgH0_wvT$|qXr#">wertelistehelper</field>
               <value name="VALUE">
                 <block type="lists_create_with" id="f3SxT8yEK;HKWFH^)1Zu">
                   <mutation items="0"></mutation>
                 </block>
               </value>
               <next>
                 <block type="variables_set" id="g2AcmWt4o[2w!^y_PW$4">
                   <field name="VAR" id="KR[:^@%d*?bSB|tg)8b#">counter</field>
                   <value name="VALUE">
                     <block type="math_number" id="T)]$Mbx(RV[K.m{jed`Y">
                       <field name="NUM">0</field>
                     </block>
                   </value>
                   <next>
                     <block type="variables_set" id="z*fOm6NCDBBi4CQ|}jDo">
                       <field name="VAR" id="i~d)Q@s1:QdazY.OqR((">data</field>
                       <value name="VALUE">
                         <block type="text" id="AFyCwlSqUT-Zn;oInlfZ">
                           <field name="TEXT">&lt;folders service="LocalMusic"&gt;  &lt;subfolders&gt;  &lt;folder&gt;//10.1.1.10/music/Alben&lt;/folder&gt;  &lt;folder&gt;//10.1.1.10/music/Best of&lt;/folder&gt;  &lt;folder&gt;//10.1.1.10/music/Sampler&lt;/folder&gt;  &lt;folder&gt;//10.1.1.10/music/X-Mas&lt;/folder&gt;  &lt;/subfolders&gt;  &lt;/folders&gt;</field>
                         </block>
                       </value>
                       <next>
                         <block type="variables_set" id="]2+x4ZL/(aF#gkug8;on">
                           <field name="VAR" id="(/0ez{fAEAbEKWTRB|gW">myarr</field>
                           <value name="VALUE">
                             <block type="lists_split" id="is8RUvJkDE0XsZsXWsm%">
                               <mutation mode="SPLIT"></mutation>
                               <field name="MODE">SPLIT</field>
                               <value name="INPUT">
                                 <block type="variables_get" id="`_f(g:|k@at;)cA2jvBU">
                                   <field name="VAR" id="i~d)Q@s1:QdazY.OqR((">data</field>
                                 </block>
                               </value>
                               <value name="DELIM">
                                 <shadow type="text" id="VMHJ~.$4zmC|HkMK$[k[">
                                   <field name="TEXT">&lt;/folder&gt;</field>
                                 </shadow>
                               </value>
                             </block>
                           </value>
                           <next>
                             <block type="debug" id="X7)rE_4f=Wo#DUnh#:N|">
                               <field name="Severity">log</field>
                               <value name="TEXT">
                                 <shadow type="text" id="..i)1#/HeXD-jCDw|`UY">
                                   <field name="TEXT">test</field>
                                 </shadow>
                                 <block type="text_join" id="s579h`M4;N};}E[KvE,I">
                                   <mutation items="2"></mutation>
                                   <value name="ADD0">
                                     <block type="text" id="/A]{=T+YPIa(JmwpsN.#">
                                       <field name="TEXT">Anzahl: </field>
                                     </block>
                                   </value>
                                   <value name="ADD1">
                                     <block type="math_arithmetic" id="r{/RMeee.iaZyZ2nfTg#">
                                       <field name="OP">MINUS</field>
                                       <value name="A">
                                         <shadow type="math_number" id="iBB.MeBF8#3I}Z[!yx=M">
                                           <field name="NUM">1</field>
                                         </shadow>
                                         <block type="lists_length" id="+`3Om6{`S[zuyv?G%9~K">
                                           <value name="VALUE">
                                             <block type="variables_get" id="/tVpK6)MYjJ{62s^k+CB">
                                               <field name="VAR" id="(/0ez{fAEAbEKWTRB|gW">myarr</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <value name="B">
                                         <shadow type="math_number" id="yXhQZHFisnqvZj5@fOh*">
                                           <field name="NUM">1</field>
                                         </shadow>
                                         <block type="math_number" id="f!^FU+e,=Um[ljM:-E;R">
                                           <field name="NUM">1</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                               <next>
                                 <block type="variables_set" id=")u:Y`qj9@GBXkYxmQSN;">
                                   <field name="VAR" id="WjEdEj+`/m)CX{vlmMQT">anzahl</field>
                                   <value name="VALUE">
                                     <block type="math_arithmetic" id="KJQgHDV.?f!]`!:dOC^8">
                                       <field name="OP">MINUS</field>
                                       <value name="A">
                                         <shadow type="math_number">
                                           <field name="NUM">1</field>
                                         </shadow>
                                         <block type="lists_length" id="#hRQoKWs+z;]LNf$NJGm">
                                           <value name="VALUE">
                                             <block type="variables_get" id="`d?SO%-LB7kLhAONHcXb">
                                               <field name="VAR" id="(/0ez{fAEAbEKWTRB|gW">myarr</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <value name="B">
                                         <shadow type="math_number">
                                           <field name="NUM">1</field>
                                         </shadow>
                                         <block type="math_number" id="-q[,WB3fYd6N}pXJeAG#">
                                           <field name="NUM">1</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="controls_forEach" id="wH3-Owxu*ek!T1iuIZBB">
                                       <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                       <value name="LIST">
                                         <block type="variables_get" id="bMioy~OXM{,tFH,aCBa7">
                                           <field name="VAR" id="(/0ez{fAEAbEKWTRB|gW">myarr</field>
                                         </block>
                                       </value>
                                       <statement name="DO">
                                         <block type="controls_if" id="5-DKA5Z_/B2gk2we}M8g">
                                           <value name="IF0">
                                             <block type="logic_compare" id="zf3V=r8PD2kpGTcG8LJo">
                                               <field name="OP">EQ</field>
                                               <value name="A">
                                                 <block type="text_indexOf" id="$^zZ?wK!Cyj;SuV`_*Q/">
                                                   <field name="END">FIRST</field>
                                                   <value name="VALUE">
                                                     <block type="text_getSubstring" id="$C[DCnsTm+]b~tKn1?dP">
                                                       <mutation at1="true" at2="false"></mutation>
                                                       <field name="WHERE1">FROM_START</field>
                                                       <field name="WHERE2">LAST</field>
                                                       <value name="STRING">
                                                         <block type="text_getSubstring" id="[2#IC;,^$p(Dz,4q|Y?h">
                                                           <mutation at1="true" at2="false"></mutation>
                                                           <field name="WHERE1">FROM_START</field>
                                                           <field name="WHERE2">LAST</field>
                                                           <value name="STRING">
                                                             <block type="variables_get" id="6HP7s.!%N!n%dcg5|)om">
                                                               <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                             </block>
                                                           </value>
                                                           <value name="AT1">
                                                             <block type="text_indexOf" id="cy)D@Eo[xW!%LY!1N-mU">
                                                               <field name="END">LAST</field>
                                                               <value name="VALUE">
                                                                 <block type="variables_get" id="3Jb/yo=cruU2:Qv}9YP5">
                                                                   <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                                 </block>
                                                               </value>
                                                               <value name="FIND">
                                                                 <shadow type="text" id="v-z-bY5v;N:V$OyqFS@n">
                                                                   <field name="TEXT">/</field>
                                                                 </shadow>
                                                               </value>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <value name="AT1">
                                                         <block type="math_number" id="6c#6U:u$y3WtP~7.Ioeu">
                                                           <field name="NUM">2</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <value name="FIND">
                                                     <shadow type="text" id="Vdp!o(aRlvhk2;%t!:bU">
                                                       <field name="TEXT">folders&gt;</field>
                                                     </shadow>
                                                   </value>
                                                 </block>
                                               </value>
                                               <value name="B">
                                                 <block type="math_number" id="-UkOHbf-fmdZ,cozcv`F">
                                                   <field name="NUM">0</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <statement name="DO0">
                                             <block type="debug" id="lg2l)q]z_A#aqIk|0a_-">
                                               <field name="Severity">log</field>
                                               <value name="TEXT">
                                                 <shadow type="text">
                                                   <field name="TEXT">test</field>
                                                 </shadow>
                                                 <block type="text_getSubstring" id="~_^lV02hVriR^NAq`#Fe">
                                                   <mutation at1="true" at2="false"></mutation>
                                                   <field name="WHERE1">FROM_START</field>
                                                   <field name="WHERE2">LAST</field>
                                                   <value name="STRING">
                                                     <block type="text_getSubstring" id="XruLqOt,IkbChz/e$5T*">
                                                       <mutation at1="true" at2="false"></mutation>
                                                       <field name="WHERE1">FROM_START</field>
                                                       <field name="WHERE2">LAST</field>
                                                       <value name="STRING">
                                                         <block type="variables_get" id="ZIA;OzrjxLpXeRJ-5Lik">
                                                           <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                         </block>
                                                       </value>
                                                       <value name="AT1">
                                                         <block type="text_indexOf" id="{SplU0xJQ;1-BDs1fMHm">
                                                           <field name="END">LAST</field>
                                                           <value name="VALUE">
                                                             <block type="variables_get" id="@iCYb+3e1jPEGvEdcei=">
                                                               <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                             </block>
                                                           </value>
                                                           <value name="FIND">
                                                             <shadow type="text" id="S:htKwH|#OxlFu1W%raC">
                                                               <field name="TEXT">/</field>
                                                             </shadow>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <value name="AT1">
                                                     <block type="math_number" id="A|nj/Tze34-P{p5;x*va">
                                                       <field name="NUM">2</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="lists_setIndex" id="7i)F-hvf=a@4$o)Svqnk">
                                                   <mutation at="false"></mutation>
                                                   <field name="MODE">INSERT</field>
                                                   <field name="WHERE">LAST</field>
                                                   <value name="LIST">
                                                     <block type="variables_get" id="p,D,WoW^H1HSEBrU4)E6">
                                                       <field name="VAR" id="r.:/L/ksEV/7ta}nl(*7">werteliste</field>
                                                     </block>
                                                   </value>
                                                   <value name="TO">
                                                     <block type="variables_get" id="6,XiQF14K`Ztrw/h18Qb">
                                                       <field name="VAR" id="KR[:^@%d*?bSB|tg)8b#">counter</field>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="lists_setIndex" id="6#,$lbywUZ[=IGl?M=W_">
                                                       <mutation at="false"></mutation>
                                                       <field name="MODE">INSERT</field>
                                                       <field name="WHERE">LAST</field>
                                                       <value name="LIST">
                                                         <block type="variables_get" id="UVNMa$|RWnnKYD:x+j=r">
                                                           <field name="VAR" id="~haufMDgH0_wvT$|qXr#">wertelistehelper</field>
                                                         </block>
                                                       </value>
                                                       <value name="TO">
                                                         <block type="text_getSubstring" id="K!Kk-nZ3`4}{!V]uvmCF">
                                                           <mutation at1="true" at2="false"></mutation>
                                                           <field name="WHERE1">FROM_START</field>
                                                           <field name="WHERE2">LAST</field>
                                                           <value name="STRING">
                                                             <block type="text_getSubstring" id="Lfbwm)6,6A?AjrGu;/|9">
                                                               <mutation at1="true" at2="false"></mutation>
                                                               <field name="WHERE1">FROM_START</field>
                                                               <field name="WHERE2">LAST</field>
                                                               <value name="STRING">
                                                                 <block type="variables_get" id="dnr[gdwV+f29fin]04!q">
                                                                   <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                                 </block>
                                                               </value>
                                                               <value name="AT1">
                                                                 <block type="text_indexOf" id="a=]yu~sGA%n^=~R!:oih">
                                                                   <field name="END">LAST</field>
                                                                   <value name="VALUE">
                                                                     <block type="variables_get" id="3_HjY=Q5*ch|IyW4-aOa">
                                                                       <field name="VAR" id="9x`r7OKq]7ckqe?R$)%x">i</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="FIND">
                                                                     <shadow type="text" id="iF;~rf*Y~-YP/jhZ{D7]">
                                                                       <field name="TEXT">/</field>
                                                                     </shadow>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <value name="AT1">
                                                             <block type="math_number" id="rA!yv`BYGs-J%q9W]U35">
                                                               <field name="NUM">2</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <next>
                                                         <block type="math_change" id="-2k{Xv4{/VjQpT-(oZBQ">
                                                           <field name="VAR" id="KR[:^@%d*?bSB|tg)8b#">counter</field>
                                                           <value name="DELTA">
                                                             <shadow type="math_number" id="~(zxv_kaUTwo@vXBtfJ1">
                                                               <field name="NUM">1</field>
                                                             </shadow>
                                                           </value>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                         </block>
                                       </statement>
                                       <next>
                                         <block type="debug" id=")!+/7H[M*J2`6F`TrTi1">
                                           <field name="Severity">log</field>
                                           <value name="TEXT">
                                             <shadow type="text" id="gJUKpiEQ~f51fG@h+d$Y">
                                               <field name="TEXT">test</field>
                                             </shadow>
                                             <block type="variables_get" id="*ZG~y3%cw=nK07%JvK8w">
                                               <field name="VAR" id="r.:/L/ksEV/7ta}nl(*7">werteliste</field>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="debug" id="kErr]q3y*A_wbBq58!1$">
                                               <field name="Severity">log</field>
                                               <value name="TEXT">
                                                 <shadow type="text">
                                                   <field name="TEXT">test</field>
                                                 </shadow>
                                                 <block type="variables_get" id="W7wHzU(jD]ql!_!K!NS-">
                                                   <field name="VAR" id="~haufMDgH0_wvT$|qXr#">wertelistehelper</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                       </next>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
           </next>
         </block>
        </xml>
        

        R Offline
        R Offline
        Rookie50
        schrieb am zuletzt editiert von
        #3

        @liv-in-sky

        das ist schon mal super cool, vielen Dank. Du hast sogar überperformt :heart_eyes: Um nun in die Unterordner zu gelagen, brauche ich den kompletten Pfad, also //10.1.1.10/music/Alben. Aber für die Anzeige würde nur "Alben" reichen :+1:

        liv-in-skyL 1 Antwort Letzte Antwort
        0
        • R Rookie50

          @liv-in-sky

          das ist schon mal super cool, vielen Dank. Du hast sogar überperformt :heart_eyes: Um nun in die Unterordner zu gelagen, brauche ich den kompletten Pfad, also //10.1.1.10/music/Alben. Aber für die Anzeige würde nur "Alben" reichen :+1:

          liv-in-skyL Offline
          liv-in-skyL Offline
          liv-in-sky
          schrieb am zuletzt editiert von
          #4

          @rookie50 ich dachte, dass der pfad immer gleich ist und somit kann man den in anderen scriptabschnitten immer als constante hinzufügen

          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

          R 2 Antworten Letzte Antwort
          0
          • liv-in-skyL liv-in-sky

            @rookie50 ich dachte, dass der pfad immer gleich ist und somit kann man den in anderen scriptabschnitten immer als constante hinzufügen

            R Offline
            R Offline
            Rookie50
            schrieb am zuletzt editiert von Rookie50
            #5

            @liv-in-sky ja, da hast Du recht, allerdings benötigt man den kompletten Pfad um in das nächste Verzeichniss zu browsen (das hatte ich natürlich verschwiegen :dizzy_face: )

            http://10.1.1.100:11000/Folders?&service=LocalMusic&path=%2F%2F10.1.1.10%2Fmusic%2FAlben

            1 Antwort Letzte Antwort
            0
            • liv-in-skyL liv-in-sky

              @rookie50 ich dachte, dass der pfad immer gleich ist und somit kann man den in anderen scriptabschnitten immer als constante hinzufügen

              R Offline
              R Offline
              Rookie50
              schrieb am zuletzt editiert von
              #6

              Hi @liv-in-sky,

              nachdem ich noch ein wenig über mein Projekt nachgedacht haben, ist mir klar geworden, dass die Umsetzung nicht ganz trivial ist und ich es nicht nur mit Bordmitteln vom ioBroker und iQontrol erledigen kann.
              Ich habe nun hier im Forum gesehen, dass Du schon einige Listen geschrieben hast und daher würde ich Dich gerne fragen, ob Du mich dabei unterstüzen kannst, wenn es Deine Zeit zulässt.

              Ziel des ganzen soll eine Integration des BlueOS, Bluesound Multiroom Systems, in ioBroker werden. Dieses System wird unter anderem auch von NAD, Dali, sowie Monitor Audio eingesetzt. Die Befehle werden via http request gesendet.

              Bis dato habe ich folgendes umgesetzt:

              d78484cc-b137-4229-b6bb-945cb597600d-grafik.png

              Die grundlegende Steuerung funktioniert schon (play,next,forward,skip,usw.)

              Nun wollte ich die Bibliothek einbinden. Damit man vom NAS oder Storage abspielen kann. Ich habe keinen Weg gefunden, wie ich die ausgelesen Verzeichnisse in Iqontrol darstellen kann und dann per Klick (oder touch) auswählen kann um ein Verzeichnis weiter zu kommen oder markieren zum abspielen. Magst Du mir dabei helfen? Oder hast Du evtl. einen komplett anderen Ansatz?

              Gruß

              Rookie

              liv-in-skyL 1 Antwort Letzte Antwort
              0
              • R Offline
                R Offline
                Rookie50
                schrieb am zuletzt editiert von Rookie50
                #7

                Wenn ich mein Blockly export einfüge bekomme ich immer Payload too large, daher hier das JS

                var originalText, suchText, tauschText, schedule1, Text2, AnzZeichenSuchtext, aktualisierung_an, werteliste, Stelle, result, wertelistehelper, wertelist_browser, counter, Teil_1, Teil_2, data, myarr, anzahl, i;
                
                function subsequenceFromStartLast(sequence, at1) {
                  var start = at1;
                  var end = sequence.length - 1 + 1;
                  return sequence.slice(start, end);
                }
                
                // Beschreibe diese Funktion …
                async function changeText(originalText, suchText, tauschText) {
                  Text2 = originalText;
                  AnzZeichenSuchtext = suchText.length;
                  Stelle = Text2.indexOf(suchText) + 1;
                  while (Stelle > 0) {
                    if (Stelle == 1) {
                      // steht am Textanfang
                      Teil_1 = tauschText;
                    } else {
                      Teil_1 = Text2.slice(0, Stelle - 1);
                    }
                    Teil_2 = Text2.slice(((Stelle + AnzZeichenSuchtext) - 1), Text2.length);
                    Text2 = [Teil_1,tauschText,Teil_2].join('');
                    Stelle = Text2.indexOf(suchText) + 1;
                  }
                  return Text2;
                }
                
                
                on({id: '0_userdata.0.Media.Bluesound.Küche.Library', change: "ne"}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  try {
                    require("request")((['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Folders?&service=LocalMusic'].join('')), async function (error, response, result) {
                      setState("0_userdata.0.Media.Bluesound.Küche.Browser"/*Browser*/, JSON.stringify(result, null, 2), true);
                    }).on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + (['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Folders?&service=LocalMusic'].join('')));
                  await wait(5000);
                  werteliste = [];
                  wertelistehelper = [];
                  wertelist_browser = [];
                  counter = 0;
                  data = getState("0_userdata.0.Media.Bluesound.Küche.Browser").val;
                  myarr = data.split('</folder>');
                  console.log(('Anzahl: ' + String(myarr.length - 1)));
                  anzahl = myarr.length - 1;
                  for (var i_index in myarr) {
                    i = myarr[i_index];
                    if (subsequenceFromStartLast(i.slice(((i.lastIndexOf('/') + 1) - 1), i.length), 1).indexOf('folders>') + 1 == 0) {
                      console.log((subsequenceFromStartLast(i.slice(((i.lastIndexOf('/') + 1) - 1), i.length), 1)));
                      werteliste.push(counter);
                      wertelistehelper.push(subsequenceFromStartLast(i.slice(((i.lastIndexOf('/') + 1) - 1), i.length), 1));
                      wertelist_browser.push(await changeText(subsequenceFromStartLast(i.slice(((i.indexOf('/') + 1) - 1), i.length), 1), '/', '%2F'));
                      counter = (typeof counter == 'number' ? counter : 0) + 1;
                    }
                  }
                  console.log(werteliste);
                  console.log(wertelistehelper);
                  console.log(wertelist_browser);
                });
                
                on({id: '0_userdata.0.Media.Bluesound.Küche.Stop', change: "any"}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  try {
                    require("request")((['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Pause'].join(''))).on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + (['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Pause'].join('')));
                  aktualisierung_an = false;
                  setState("0_userdata.0.Media.Bluesound.Küche.Album"/*Album*/, '');
                  setState("0_userdata.0.Media.Bluesound.Küche.Artist"/*Artist*/, '');
                  setState("0_userdata.0.Media.Bluesound.Küche.Artwork"/*Artwork*/, '');
                  setState("0_userdata.0.Media.Bluesound.Küche.Title"/*Title*/, '');
                });
                
                on({id: '0_userdata.0.Media.Bluesound.Küche.Volume', change: "ne"}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  try {
                    require("request")((['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Volume?level=',getState("0_userdata.0.Media.Bluesound.Küche.Volume").val].join(''))).on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + (['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Volume?level=',getState("0_userdata.0.Media.Bluesound.Küche.Volume").val].join('')));
                });
                
                schedule1 = schedule('*/5 * * * * *', async function () {
                  if (aktualisierung_an == true) {
                    try {
                      require("request")((['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Status'].join('')), async function (error, response, result) {
                        setState("0_userdata.0.Media.Bluesound.Küche.Status"/*Status*/, JSON.stringify(result, null, 2), true);
                      }).on("error", function (e) {console.error(e);});
                    } catch (e) { console.error(e); }
                    console.log("request: " + (['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Status'].join('')));
                  }
                });
                
                on({id: '0_userdata.0.Media.Bluesound.Küche.Play', change: "any"}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  try {
                    require("request")((['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Play'].join('')), async function (error, response, result) {
                      console.log('Play');
                    }).on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + (['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Play'].join('')));
                  try {
                    require("request")((['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Status'].join(''))).on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + (['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Status'].join('')));
                  aktualisierung_an = true;
                });
                
                on({id: '0_userdata.0.Media.Bluesound.Küche.Status', change: "any"}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  setState("0_userdata.0.Media.Bluesound.Küche.Album"/*Album*/, getAttr((function () { try {return JSON.parse(getState("systeminfo.0.Bluesound.Küche.Status").val);} catch(e) {return {};}})(), 'album'));
                  setState("0_userdata.0.Media.Bluesound.Küche.Artist"/*Artist*/, getAttr((function () { try {return JSON.parse(getState("systeminfo.0.Bluesound.Küche.Status").val);} catch(e) {return {};}})(), 'artist'));
                  setState("0_userdata.0.Media.Bluesound.Küche.Title"/*Title*/, getAttr((function () { try {return JSON.parse(getState("systeminfo.0.Bluesound.Küche.Status").val);} catch(e) {return {};}})(), 'title1'));
                  setState("0_userdata.0.Media.Bluesound.Küche.Artwork"/*Artwork*/, getAttr((function () { try {return JSON.parse(getState("systeminfo.0.Bluesound.Küche.Status").val);} catch(e) {return {};}})(), 'image'));
                });
                
                on({id: '0_userdata.0.Media.Bluesound.Küche.Preset-to-Device', change: "any"}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  setState("0_userdata.0.Media.Bluesound.Küche.Album"/*Album*/, '');
                  setState("0_userdata.0.Media.Bluesound.Küche.Artist"/*Artist*/, '');
                  setState("0_userdata.0.Media.Bluesound.Küche.Artwork"/*Artwork*/, '');
                  setState("0_userdata.0.Media.Bluesound.Küche.Title"/*Title*/, '');
                  try {
                    require("request")((['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Preset?id=',getState("0_userdata.0.Media.Bluesound.Küche.Preset-to-Device").val].join(''))).on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + (['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Preset?id=',getState("0_userdata.0.Media.Bluesound.Küche.Preset-to-Device").val].join('')));
                  aktualisierung_an = true;
                });
                
                on({id: '0_userdata.0.Media.Bluesound.Küche.Next', change: "any"}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  try {
                    require("request")((['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Skip'].join(''))).on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + (['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Skip'].join('')));
                  aktualisierung_an = true;
                });
                
                on({id: '0_userdata.0.Media.Bluesound.Küche.Back', change: "ne"}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  try {
                    require("request")((['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Back'].join(''))).on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + (['http://',getState("0_userdata.0.Media.Bluesound.Küche.IP").val,':11000/Back'].join('')));
                  aktualisierung_an = true;
                });
                
                //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0N2YXJpYWJsZXMlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyJTJCUVJtKCUzREVqcDUuMkZ3RGZydWxxJTIyJTNFb3JpZ2luYWxUZXh0JTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyJTVEVCUzQSUyRiUzRiUzQVFSTCUzQm0lMkYxd3EqUyUyMzdTJTIyJTNFc3VjaFRleHQlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjJTb3JlSiUyNG0lNUJoSiU3RFZzNCU3QmF1JTQwRTclMjIlM0V0YXVzY2hUZXh0JTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMHR5cGUlM0QlMjJjcm9uJTIyJTIwaWQlM0QlMjJzY2hlZHVsZTElMjIlM0VzY2hlZHVsZTElM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIqbUglNUIlN0RGLjZLdGElMjNLVyUzQmMzalBXJTIyJTNFVGV4dCUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMlNxSEVxWF8lNjBJMCU1RGUzR2xwdDlpRCUyMiUzRUFuelplaWNoZW5TdWNodGV4dCUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMnAlNUIhZDlnNSUyNGQxZml6dW83V2JEWiUyMiUzRWFrdHVhbGlzaWVydW5nX2FuJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyci4lM0ElMkZMJTJGa3NFViUyRjd0YSU3RG5sKCo3JTIyJTNFd2VydGVsaXN0ZSUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMm1vQl94dCU1QiUyM2lzaWslM0FZVDAlM0RKMyUyRiUyMiUzRVN0ZWxsZSUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMlYhJTNGYiUzQm0lM0FfbDBlVSU1QnFwJTNBMlNGTyUyMiUzRXJlc3VsdCUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMn5oYXVmTURnSDBfd3ZUJTI0JTdDcVhyJTIzJTIyJTNFd2VydGVsaXN0ZWhlbHBlciUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMnFibiUzQmUqLlFXJTJGVGxZVjNOJTI1c3IlM0QlMjIlM0V3ZXJ0ZWxpc3RfYnJvd3NlciUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMktSJTVCJTNBJTVFJTQwJTI1ZColM0ZiU0IlN0N0Zyk4YiUyMyUyMiUzRWNvdW50ZXIlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjJZJTIzaUFJKkZSIW9BV0lfVktuNHRqJTIyJTNFVGVpbF8xJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyJTNGJTNCek56QmElNDBfcTUlN0NsVE1oSURfRiUyMiUzRVRlaWxfMiUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMml+ZClRJTQwczElM0FRZGF6WS5PcVIoKCUyMiUzRWRhdGElM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjIoJTJGMGV6JTdCZkFFQWJFS1dUUkIlN0NnVyUyMiUzRW15YXJyJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyV2pFZEVqJTJCJTYwJTJGbSlDWCU3QnZsbU1RVCUyMiUzRWFuemFobCUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMjl4JTYwcjdPS3ElNUQ3Y2txZSUzRlIlMjQpJTI1eCUyMiUzRWklM0MlMkZ2YXJpYWJsZSUzRSUzQyUyRnZhcmlhYmxlcyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX2V4dCUyMiUyMGlkJTNEJTIyTjAlMjMzMl8tYzcwLiUyNXRLJTVCJTNBTHRKJTI1JTIyJTIweCUzRCUyMjMxMiUyMiUyMHklM0QlMjItMjQ2MyUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGl0ZW1zJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09ORElUSU9OJTIyJTNFbmUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFDS19DT05ESVRJT04lMjIlM0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRDAlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJXdyUyNCUyQ3I1JTI0NGY5UXZVN1c0UnY5dCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5MaWJyYXJ5JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJyZXF1ZXN0JTIyJTIwaWQlM0QlMjI4eGthbmFqJTNEN3ElMkZSJTQwJTVEcFp4UyUzQjMlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjB3aXRoX3N0YXRlbWVudCUzRCUyMnRydWUlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfU1RBVEVNRU5UJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTE9HJTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJVUkwlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXh0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2pvaW4lMjIlMjBpZCUzRCUyMjQoV0o4SlE1aSUzRGgzNzFpJTdCTyUyQ0d4JTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjMlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjI4JTI1SyUzQnAlMjVOJTdDNiUyQnA3cTNBVVdJeCU3RCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0VodHRwJTNBJTJGJTJGJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyIS44ciUzRDUlN0MlN0MxUlpyKCU3QylEV1BhSSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5JUCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjIqSzZkQ1F1byUyQyU1RTcuYmIlMjN3Y1klMkZWJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQTExMDAwJTJGRm9sZGVycyUzRiUyNmFtcCUzQnNlcnZpY2UlM0RMb2NhbE11c2ljJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ1cGRhdGUlMjIlMjBpZCUzRCUyMn5SV3pkRyUyNEFqX3ZNSiFoVjAlNDAycCUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5Ccm93c2VyJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udmVydF9vYmplY3QyanNvbiUyMiUyMGlkJTNEJTIyJTJCakpJdklBJTQwRUpXWGolMjVlX1ExRyElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJQUkVUVElGWSUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIySVZIa2klMjRqQ3MpWXFiJTNBJTVERmQlN0MlNURIJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJWISUzRmIlM0JtJTNBX2wwZVUlNUJxcCUzQTJTRk8lMjIlM0VyZXN1bHQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGltZW91dHNfd2FpdCUyMiUyMGlkJTNEJTIyJTdDKjIhUUolNDBJflUlN0M1R2ZmbmVfb0wlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJERUxBWSUyMiUzRTUwMDAlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlVOSVQlMjIlM0VtcyUzQyUyRmZpZWxkJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMk9YbXJ+TyU1RVklM0JabjhOJTdDZWklNURHVEklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnIuJTNBJTJGTCUyRmtzRVYlMkY3dGElN0RubCgqNyUyMiUzRXdlcnRlbGlzdGUlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybGlzdHNfY3JlYXRlX3dpdGglMjIlMjBpZCUzRCUyMkhkbEMlN0NQMCU1QkxMNHM1YmklMjVPbmolMkIlMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyMCUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJBM35nOC1QbiU3Ql8lM0RlJTVEOSUyMyUyQ0RFdWklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMn5oYXVmTURnSDBfd3ZUJTI0JTdDcVhyJTIzJTIyJTNFd2VydGVsaXN0ZWhlbHBlciUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsaXN0c19jcmVhdGVfd2l0aCUyMiUyMGlkJTNEJTIyZjNTeFQ4eUVLJTNCSEtXRkglNUUpMVp1JTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjAlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyUGFXJTNEVClrSiUyMyU1RVZRTExLa0VZRVYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnFibiUzQmUqLlFXJTJGVGxZVjNOJTI1c3IlM0QlMjIlM0V3ZXJ0ZWxpc3RfYnJvd3NlciUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsaXN0c19jcmVhdGVfd2l0aCUyMiUyMGlkJTNEJTIySHJFSE51VjFBY3AlMkYlNURWZkdRayUyRm0lMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyMCUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJnMkFjbVd0NG8lNUIydyElNUV5X1BXJTI0NCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyS1IlNUIlM0ElNUUlNDAlMjVkKiUzRmJTQiU3Q3RnKThiJTIzJTIyJTNFY291bnRlciUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyVCklNUQlMjRNYngoUlYlNUJLLm0lN0JqZWQlNjBZJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJ6KmZPbTZOQ0RCQmk0Q1ElN0MlN0RqRG8lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMml+ZClRJTQwczElM0FRZGF6WS5PcVIoKCUyMiUzRWRhdGElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjJ1JTdDaSFQT0UlM0RsaiUzRCUyM25WJTI1JTNETzkzayUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5Ccm93c2VyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiU1RDIlMkJ4NFpMJTJGKGFGJTIzZ2t1ZzglM0JvbiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyKCUyRjBleiU3QmZBRUFiRUtXVFJCJTdDZ1clMjIlM0VteWFyciUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsaXN0c19zcGxpdCUyMiUyMGlkJTNEJTIyaXM4UlV2SmtERTBYc1pzWFdzbSUyNSUyMiUzRSUzQ211dGF0aW9uJTIwbW9kZSUzRCUyMlNQTElUJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJNT0RFJTIyJTNFU1BMSVQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMklOUFVUJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTYwX2YoZyUzQSU3Q2slNDBhdCUzQiljQTJqdkJVJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJpfmQpUSU0MHMxJTNBUWRhelkuT3FSKCglMjIlM0VkYXRhJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyREVMSU0lMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyVk1ISn4uJTI0NHptQyU3Q0hrTUslMjQlNUJrJTVCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUyNmx0JTNCJTJGZm9sZGVyJTI2Z3QlM0IlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIyWDcpckVfNGYlM0RXbyUyM0RVbmglMjMlM0FOJTdDJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0Vsb2clM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyLi5pKTElMjMlMkZIZVhELWpDRHclN0MlNjBVWSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXN0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2pvaW4lMjIlMjBpZCUzRCUyMnM1NzloJTYwTTQlM0JOJTdEJTNCJTdERSU1Qkt2RSUyQ0klMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyMiUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiUyRkElNUQlN0IlM0RUJTJCWVBJYShKbXdwc04uJTIzJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRUFuemFobCUzQSUyMCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX2FyaXRobWV0aWMlMjIlMjBpZCUzRCUyMnIlN0IlMkZSTWVlZS5pYVp5WjJuZlRnJTIzJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VNSU5VUyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyaUJCLk1lQkY4JTIzM0klN0RaJTVCIXl4JTNETSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxpc3RzX2xlbmd0aCUyMiUyMGlkJTNEJTIyJTJCJTYwM09tNiU3QiU2MFMlNUJ6dXl2JTNGRyUyNTl+SyUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTJGdFZwSzYpTVlqSiU3QjYycyU1RWslMkJDQiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyKCUyRjBleiU3QmZBRUFiRUtXVFJCJTdDZ1clMjIlM0VteWFyciUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJ5WGhRWkhGaXNucXZaajUlNDBmT2gqJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMmYhJTVFRlUlMkJlJTJDJTNEVW0lNUJsak0lM0EtRSUzQlIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyKXUlM0FZJTYwcWo5JTQwR0JYa1l4bVFTTiUzQiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyV2pFZEVqJTJCJTYwJTJGbSlDWCU3QnZsbU1RVCUyMiUzRWFuemFobCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX2FyaXRobWV0aWMlMjIlMjBpZCUzRCUyMktKUWdIRFYuJTNGZiElNUQlNjAhJTNBZE9DJTVFOCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFTUlOVVMlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsaXN0c19sZW5ndGglMjIlMjBpZCUzRCUyMiUyM2hSUW9LV3MlMkJ6JTNCJTVETE5mJTI0TkpHbSUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTYwZCUzRlNPJTI1LUxCN2tMaEFPTkhjWGIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiglMkYwZXolN0JmQUVBYkVLV1RSQiU3Q2dXJTIyJTNFbXlhcnIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjItcSU1QiUyQ1dCM2ZZZDZOJTdEcFhKZUFHJTIzJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbHNfZm9yRWFjaCUyMiUyMGlkJTNEJTIyd0gzLU93eHUqZWshVDFpdUlaQkIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMjl4JTYwcjdPS3ElNUQ3Y2txZSUzRlIlMjQpJTI1eCUyMiUzRWklM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkxJU1QlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJiTWlveX5PWE0lN0IlMkN0RkglMkNhQ0JhNyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyKCUyRjBleiU3QmZBRUFiRUtXVFJCJTdDZ1clMjIlM0VteWFyciUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjI1LURLQTVaXyUyRkIyZ2syd2UlN0RNOGclMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjJ6ZjNWJTNEcjhQRDJrcEdUY0c4TEpvJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VFUSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfaW5kZXhPZiUyMiUyMGlkJTNEJTIyJTI0JTVFelolM0Z3SyFDeWolM0JTdVYlNjBfKlElMkYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJFTkQlMjIlM0VGSVJTVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2dldFN1YnN0cmluZyUyMiUyMGlkJTNEJTIyJTI0QyU1QkRDbnNUbSUyQiU1RGJ+dEtuMSUzRmRQJTIyJTNFJTNDbXV0YXRpb24lMjBhdDElM0QlMjJ0cnVlJTIyJTIwYXQyJTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMSUyMiUzRUZST01fU1RBUlQlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMiUyMiUzRUxBU1QlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlNUUklORyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfZ2V0U3Vic3RyaW5nJTIyJTIwaWQlM0QlMjIlNUIyJTIzSUMlM0IlMkMlNUUlMjRwKER6JTJDNHElN0NZJTNGaCUyMiUzRSUzQ211dGF0aW9uJTIwYXQxJTNEJTIydHJ1ZSUyMiUyMGF0MiUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTElMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTIlMjIlM0VMQVNUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJTVFJJTkclMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjI2SFA3cy4hJTI1TiFuJTI1ZGNnNSU3QylvbSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyOXglNjByN09LcSU1RDdja3FlJTNGUiUyNCklMjV4JTIyJTNFaSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFUMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfaW5kZXhPZiUyMiUyMGlkJTNEJTIyY3kpRCU0MEVvJTVCeFchJTI1TFkhMU4tbVUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJFTkQlMjIlM0VMQVNUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMjNKYiUyRnlvJTNEY3J1VTIlM0FRdiU3RDlZUDUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMjl4JTYwcjdPS3ElNUQ3Y2txZSUzRlIlMjQpJTI1eCUyMiUzRWklM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJGSU5EJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMnYtei1iWTV2JTNCTiUzQVYlMjRPeXFGUyU0MG4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTJGJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMjZjJTIzNlUlM0F1JTI0eTNXdFB+Ny5Jb2V1JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJGSU5EJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlZkcCFvKGFSbHZoazIlM0IlMjV0ISUzQWJVJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRWZvbGRlcnMlMjZndCUzQiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjItVWtPSGJmLWZtZFolMkNjb3pjdiU2MEYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIybGcybClxJTVEel9BJTIzYXFJayU3QzBhXy0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWxvZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRlc3QlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfZ2V0U3Vic3RyaW5nJTIyJTIwaWQlM0QlMjJ+XyU1RWxWMDJoVnJpUiU1RU5BcSU2MCUyM0ZlJTIyJTNFJTNDbXV0YXRpb24lMjBhdDElM0QlMjJ0cnVlJTIyJTIwYXQyJTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMSUyMiUzRUZST01fU1RBUlQlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMiUyMiUzRUxBU1QlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlNUUklORyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfZ2V0U3Vic3RyaW5nJTIyJTIwaWQlM0QlMjJYcnVMcU90JTJDSWtiQ2h6JTJGZSUyNDVUKiUyMiUzRSUzQ211dGF0aW9uJTIwYXQxJTNEJTIydHJ1ZSUyMiUyMGF0MiUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTElMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTIlMjIlM0VMQVNUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJTVFJJTkclMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJaSUElM0JPenJqeExwWGVSSi01TGlrJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjI5eCU2MHI3T0txJTVEN2NrcWUlM0ZSJTI0KSUyNXglMjIlM0VpJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9pbmRleE9mJTIyJTIwaWQlM0QlMjIlN0JTcGxVMHhKUSUzQjEtQkRzMWZNSG0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJFTkQlMjIlM0VMQVNUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiU0MGlDWWIlMkIzZTFqUEVHdkVkY2VpJTNEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjI5eCU2MHI3T0txJTVEN2NrcWUlM0ZSJTI0KSUyNXglMjIlM0VpJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyRklORCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJTJTNBaHRLd0glN0MlMjNPeGxGdTFXJTI1cmFDJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUyRiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFUMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJBJTdDbmolMkZUemUzNC1QJTdCcDUlM0J4KnZhJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybGlzdHNfc2V0SW5kZXglMjIlMjBpZCUzRCUyMjdpKUYtaHZmJTNEYSU0MDQlMjRvKVN2cW5rJTIyJTNFJTNDbXV0YXRpb24lMjBhdCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJNT0RFJTIyJTNFSU5TRVJUJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRSUyMiUzRUxBU1QlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkxJU1QlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJwJTJDRCUyQ1dvVyU1RUgxSFNFQnJVNClFNiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyci4lM0ElMkZMJTJGa3NFViUyRjd0YSU3RG5sKCo3JTIyJTNFd2VydGVsaXN0ZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRPJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyNiUyQ1hpUUYxNEslNjBadHJ3JTJGaDE4UWIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMktSJTVCJTNBJTVFJTQwJTI1ZColM0ZiU0IlN0N0Zyk4YiUyMyUyMiUzRWNvdW50ZXIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybGlzdHNfc2V0SW5kZXglMjIlMjBpZCUzRCUyMjYlMjMlMkMlMjRsYnl3VVolNUIlM0RJR2wlM0ZNJTNEV18lMjIlM0UlM0NtdXRhdGlvbiUyMGF0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk1PREUlMjIlM0VJTlNFUlQlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFJTIyJTNFTEFTVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyTElTVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMlVWTk1hJTI0JTdDUldubktZRCUzQXglMkJqJTNEciUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyfmhhdWZNRGdIMF93dlQlMjQlN0NxWHIlMjMlMjIlM0V3ZXJ0ZWxpc3RlaGVscGVyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVE8lMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2dldFN1YnN0cmluZyUyMiUyMGlkJTNEJTIySyFLay1uWjMlNjA0JTdEJTdCIVYlNUR1dm1DRiUyMiUzRSUzQ211dGF0aW9uJTIwYXQxJTNEJTIydHJ1ZSUyMiUyMGF0MiUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTElMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTIlMjIlM0VMQVNUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJTVFJJTkclMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2dldFN1YnN0cmluZyUyMiUyMGlkJTNEJTIyTGZid20pNiUyQzZBJTNGQWpyR3UlM0IlMkYlN0M5JTIyJTNFJTNDbXV0YXRpb24lMjBhdDElM0QlMjJ0cnVlJTIyJTIwYXQyJTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMSUyMiUzRUZST01fU1RBUlQlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMiUyMiUzRUxBU1QlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlNUUklORyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMmRuciU1Qmdkd1YlMkJmMjlmaW4lNUQwNCFxJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjI5eCU2MHI3T0txJTVEN2NrcWUlM0ZSJTI0KSUyNXglMjIlM0VpJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9pbmRleE9mJTIyJTIwaWQlM0QlMjJhJTNEJTVEeXV+c0dBJTI1biU1RSUzRH5SISUzQW9paCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkVORCUyMiUzRUxBU1QlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyM19IalklM0RRNSpjaCU3Q0l5VzQtYU9hJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjI5eCU2MHI3T0txJTVEN2NrcWUlM0ZSJTI0KSUyNXglMjIlM0VpJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyRklORCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJpRiUzQn5yZipZfi1ZUCUyRmpoWiU3QkQ3JTVEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUyRiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFUMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJyQSF5diU2MEJZR3MtSiUyNXE5VyU1RFUzNSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxpc3RzX3NldEluZGV4JTIyJTIwaWQlM0QlMjJGa1IyUU52JTVEOW9KcUdQJTdDZnE5dyUyNCUyMiUzRSUzQ211dGF0aW9uJTIwYXQlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTU9ERSUyMiUzRUlOU0VSVCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUlMjIlM0VMQVNUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJMSVNUJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyaGIlNjAhakUyZFNHTmJIZSU0MCU0MHVUdCUyNSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIycWJuJTNCZSouUVclMkZUbFlWM04lMjVzciUzRCUyMiUzRXdlcnRlbGlzdF9icm93c2VyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVE8lMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJwcm9jZWR1cmVzX2NhbGxyZXR1cm4lMjIlMjBpZCUzRCUyMkVDSCUyRiUyNSUzRllFRnlsU1VPSy5fOCUyRkslMjIlM0UlM0NtdXRhdGlvbiUyMG5hbWUlM0QlMjJjaGFuZ2VUZXh0JTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMm9yaWdpbmFsVGV4dCUyMiUzRSUzQyUyRmFyZyUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJzdWNoVGV4dCUyMiUzRSUzQyUyRmFyZyUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJ0YXVzY2hUZXh0JTIyJTNFJTNDJTJGYXJnJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBUkcwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9nZXRTdWJzdHJpbmclMjIlMjBpZCUzRCUyMihfJTVEbC0lM0ElM0QlN0RmSUxjTmglNjAlMkJBalh3JTIyJTNFJTNDbXV0YXRpb24lMjBhdDElM0QlMjJ0cnVlJTIyJTIwYXQyJTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMSUyMiUzRUZST01fU1RBUlQlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMiUyMiUzRUxBU1QlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlNUUklORyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfZ2V0U3Vic3RyaW5nJTIyJTIwaWQlM0QlMjIhWCpKciUyNSlXZ3dsaW5YNjA0MTMlN0IlMjIlM0UlM0NtdXRhdGlvbiUyMGF0MSUzRCUyMnRydWUlMjIlMjBhdDIlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUxJTIyJTNFRlJPTV9TVEFSVCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUyJTIyJTNFTEFTVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyU1RSSU5HJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTNEZkF6QVYlNUJOY0hERSUzQVUoJTVEV1R3UiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyOXglNjByN09LcSU1RDdja3FlJTNGUiUyNCklMjV4JTIyJTNFaSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFUMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfaW5kZXhPZiUyMiUyMGlkJTNEJTIyJTQwVnVCRGRnRCUyRkQzJTVEelB4MiUzQVQlMjRxJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyRU5EJTIyJTNFRklSU1QlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyKDRycy16QiUzREYpaCh1TiFaODFvMSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyOXglNjByN09LcSU1RDdja3FlJTNGUiUyNCklMjV4JTIyJTNFaSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkZJTkQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIybUYweSUyRlBEJTJCei1Obl8lN0MlMjMlMkJLJTVEJTI0JTQwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUyRiUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFUMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJ3eUlJLSU1Qm1lcHczcyU1Qno0NDVPdk8lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFSRzElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjIoaXFmJTdDJTQwUUUlM0I2JTNBdFAwJTdEcmJhRWolMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTJGJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVJHMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMl8lN0JIaUxoJTdDMiU3Q0YzJTdDYSUyMyU1QjRsQ3ZYJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUyNTJGJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX2NoYW5nZSUyMiUyMGlkJTNEJTIyLTJrJTdCWHY0JTdCJTJGVmpRcFQtKG9aQlElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMktSJTVCJTNBJTVFJTQwJTI1ZColM0ZiU0IlN0N0Zyk4YiUyMyUyMiUzRWNvdW50ZXIlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkRFTFRBJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJ+KHp4dl9rYVVUd28lNDB2WEJ0ZkoxJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmRlYnVnJTIyJTIwaWQlM0QlMjIpISUyQiUyRjdIJTVCTSpKMiU2MDZGJTYwVHJUaTElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWxvZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJnSlVLcGlFUX5mNTFmRyU0MGglMkJkJTI0WSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXN0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIqWkd+eTMlMjVjdyUzRG5LMDclMjVKdks4dyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyci4lM0ElMkZMJTJGa3NFViUyRjd0YSU3RG5sKCo3JTIyJTNFd2VydGVsaXN0ZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJkZWJ1ZyUyMiUyMGlkJTNEJTIya0VyciU1RHEzeSpBX3diQnE1OCExJTI0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0Vsb2clM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXN0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJXN3dIelUoakQlNURxbCFfIUshTlMtJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJ+aGF1Zk1EZ0gwX3d2VCUyNCU3Q3FYciUyMyUyMiUzRXdlcnRlbGlzdGVoZWxwZXIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMkZCQXB2MVc3JTNBJTNGJTNGeFZVJTJDJTdEJTNBMSUyRi4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWxvZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRlc3QlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMklGJTYwa0ZoKTNCYTZLdndxMkJmbWElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnFibiUzQmUqLlFXJTJGVGxZVjNOJTI1c3IlM0QlMjIlM0V3ZXJ0ZWxpc3RfYnJvd3NlciUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0NibG9jayUyMHR5cGUlM0QlMjJwcm9jZWR1cmVzX2RlZnJldHVybiUyMiUyMGlkJTNEJTIyKiUzRiUyNW4lNUJLRzVlMSElNUV0TnVuJTIzSGo1JTIyJTIweCUzRCUyMi04MTIlMjIlMjB5JTNEJTIyLTE5MTMlMjIlM0UlM0NtdXRhdGlvbiUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJvcmlnaW5hbFRleHQlMjIlMjB2YXJpZCUzRCUyMiUyQlFSbSglM0RFanA1LjJGd0RmcnVscSUyMiUzRSUzQyUyRmFyZyUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJzdWNoVGV4dCUyMiUyMHZhcmlkJTNEJTIyJTVEVCUzQSUyRiUzRiUzQVFSTCUzQm0lMkYxd3EqUyUyMzdTJTIyJTNFJTNDJTJGYXJnJTNFJTNDYXJnJTIwbmFtZSUzRCUyMnRhdXNjaFRleHQlMjIlMjB2YXJpZCUzRCUyMlNvcmVKJTI0bSU1QmhKJTdEVnM0JTdCYXUlNDBFNyUyMiUzRSUzQyUyRmFyZyUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTkFNRSUyMiUzRWNoYW5nZVRleHQlM0MlMkZmaWVsZCUzRSUzQ2NvbW1lbnQlMjBwaW5uZWQlM0QlMjJmYWxzZSUyMiUyMGglM0QlMjI4MCUyMiUyMHclM0QlMjIxNjAlMjIlM0VCZXNjaHJlaWJlJTIwZGllc2UlMjBGdW5rdGlvbiUyMCVFMiU4MCVBNiUzQyUyRmNvbW1lbnQlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBQ0slMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJMeVoyJTI1bFlXJTJCa2ZtJTJDNCl5VjhVTiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyKm1IJTVCJTdERi42S3RhJTIzS1clM0JjM2pQVyUyMiUzRVRleHQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyZGE1KnAlNUQlN0RzTyUzQSU3QiU3QiU3Q1pFIW5oRGUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUyQlFSbSglM0RFanA1LjJGd0RmcnVscSUyMiUzRW9yaWdpbmFsVGV4dCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJ5eCUzQnFwMSU0MDFmQyhvaUc0YzVnWnQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMlNxSEVxWF8lNjBJMCU1RGUzR2xwdDlpRCUyMiUzRUFuelplaWNoZW5TdWNodGV4dCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2xlbmd0aCUyMiUyMGlkJTNEJTIySnd6MzNBUkRMYyElM0Q4JTNBZURhZ0REJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NzaGFkb3clMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlJaV20hfllvNHc1KTY2R3UlN0NHc18lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFYWJjJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJHMkklMkJucCk1cWVlJTVEcSU3QjQpQmxOMiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTVEVCUzQSUyRiUzRiUzQVFSTCUzQm0lMkYxd3EqUyUyMzdTJTIyJTNFc3VjaFRleHQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMmVBR0slNUI4NVcpRFJhSWFOIW9NaUglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMm1vQl94dCU1QiUyM2lzaWslM0FZVDAlM0RKMyUyRiUyMiUzRVN0ZWxsZSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2luZGV4T2YlMjIlMjBpZCUzRCUyMiUyRiU0MHJqJTdEJTdCJTNCVlVDSjhPJTdDMjglNUUoSGYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJFTkQlMjIlM0VGSVJTVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIlN0RkZSUyNWZmTypySXQlMjVqNik5OXBmMyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyKm1IJTVCJTdERi42S3RhJTIzS1clM0JjM2pQVyUyMiUzRVRleHQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJGSU5EJTIyJTNFJTNDc2hhZG93JTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjI3TXByRVF4b1dxJTdEJTIzM35YeiUzQTMyayUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlMjUwRCUyNTBBJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjI3KXIuWDFhflRlZTEhZEF3WnklNjAhJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlNURUJTNBJTJGJTNGJTNBUVJMJTNCbSUyRjF3cSpTJTIzN1MlMjIlM0VzdWNoVGV4dCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbHNfd2hpbGVVbnRpbCUyMiUyMGlkJTNEJTIyNGxSJTdEJTdCZiU1RClEV0t5anQlN0QuKDZjYyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk1PREUlMjIlM0VXSElMRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2NvbXBhcmUlMjIlMjBpZCUzRCUyMmUlNjBlVVdLNmt5T1UlM0QlNUIlMkZ4JTVETSglN0IlNjAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUdUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTdEN0hMV1J3SShTRGcxJTVFJTQwJTNEY3pvViUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIybW9CX3h0JTVCJTIzaXNpayUzQVlUMCUzREozJTJGJTIyJTNFU3RlbGxlJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjIlMjN5JTJDemElN0JyJTIzJTQwczdSaS5VITl2KUElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjJQTSU0MFN1KWIxWU9oVFpvMnFQeEIlNUQlMjIlM0UlM0NtdXRhdGlvbiUyMGVsc2UlM0QlMjIxJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjJsJTJDdSUzRmglN0IpWi11JTJGT296SSUyQy43OUclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUVRJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyQiUyRkt+ei5BTksyKSUzQkkzKHVrNEJoJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJtb0JfeHQlNUIlMjNpc2lrJTNBWVQwJTNESjMlMkYlMjIlM0VTdGVsbGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMiU3QzN+SyUzQTZqckhxN294eiUzRGZMJTNBWXolMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb21tZW50JTIyJTIwaWQlM0QlMjJ1TiU3QiU3Q040LTBFYWJESnFZRTAlNUQlNDAlMjMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT01NRU5UJTIyJTNFc3RlaHQlMjBhbSUyMFRleHRhbmZhbmclM0MlMkZmaWVsZCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjI5JTNGR3klMkN3LnQlMjMxcGRsJTVFQU94YyUyM1klMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMlklMjNpQUkqRlIhb0FXSV9WS240dGolMjIlM0VUZWlsXzElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyaCglMjMlM0RiSiU2MERVJTI1eSUyRkpkOSUyNUhSOUklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMlNvcmVKJTI0bSU1QmhKJTdEVnM0JTdCYXUlNDBFNyUyMiUzRXRhdXNjaFRleHQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJFTFNFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyJTdCUipYJTJDN0spREElNUVkcSUyRi5+S0s3JTdCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJZJTIzaUFJKkZSIW9BV0lfVktuNHRqJTIyJTNFVGVpbF8xJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfZ2V0U3Vic3RyaW5nJTIyJTIwaWQlM0QlMjJJbWcwb3B0LkVCJTIzKVJNLWJwfmh3JTIyJTNFJTNDbXV0YXRpb24lMjBhdDElM0QlMjJmYWxzZSUyMiUyMGF0MiUzRCUyMnRydWUlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMSUyMiUzRUZJUlNUJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTIlMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJTVFJJTkclMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJBOWgqRiU3QnRnSlIweSU1QlEwdXY3JTJDJTNEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIqbUglNUIlN0RGLjZLdGElMjNLVyUzQmMzalBXJTIyJTNFVGV4dCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFUMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfYXJpdGhtZXRpYyUyMiUyMGlkJTNEJTIyKCU1QjVSJTVCJTNBOFl3bi10aEtOJTQwciUzQX4lN0QlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRU1JTlVTJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDc2hhZG93JTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIydSU0MCUzQSFqNVdpbUNqViUyNWZHOWhQR3MlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJVMHF3JTJDfiUyQzJLb2FBYzM3VU8lN0JsJTIzJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJtb0JfeHQlNUIlMjNpc2lrJTNBWVQwJTNESjMlMkYlMjIlM0VTdGVsbGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJEVCUyM3pSU1J1MS55JTVFJTdDNVolMjNHMzdXJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMkVsc2UlNUUlMkMlM0ZRRTlUVFMuWSUyNUslNURXJTNEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0YlM0J6TnpCYSU0MF9xNSU3Q2xUTWhJRF9GJTIyJTNFVGVpbF8yJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfZ2V0U3Vic3RyaW5nJTIyJTIwaWQlM0QlMjJlOEE3TnFZN08hJTQwSyhhRmxNcFYlMjMlMjIlMjBpbmxpbmUlM0QlMjJmYWxzZSUyMiUzRSUzQ211dGF0aW9uJTIwYXQxJTNEJTIydHJ1ZSUyMiUyMGF0MiUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTElMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTIlMjIlM0VMQVNUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJTVFJJTkclMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIlN0NqVTBnOCUyQmVJZ3duXyU3Q0lCNTYpJTQwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIqbUglNUIlN0RGLjZLdGElMjNLVyUzQmMzalBXJTIyJTNFVGV4dCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFUMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfYXJpdGhtZXRpYyUyMiUyMGlkJTNEJTIyRiUyMyolMjUlM0JSOXVnbXdhYWFzJTNGV0J3RyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFQUREJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDc2hhZG93JTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyOCUyRkklMjUlM0QlMkZ+WVJlSFYlNURJd28lN0IlN0QoSiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMlIwJTdDYSU3RGt4Mk1+U1lqUEtTNUNjJTdCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJtb0JfeHQlNUIlMjNpc2lrJTNBWVQwJTNESjMlMkYlMjIlM0VTdGVsbGUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyJTNCUShhSiUzQSUzQTkwJTNGMCUzRkglM0ItNDVjZ1MlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UwJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJkWTMzJTNEMUlWeGtyU0gxazElMjNYNkElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMlNxSEVxWF8lNjBJMCU1RGUzR2xwdDlpRCUyMiUzRUFuelplaWNoZW5TdWNodGV4dCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMk9jSlMhLUt1MXZRWTQpSSUyQnIlMkNnYyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyKm1IJTVCJTdERi42S3RhJTIzS1clM0JjM2pQVyUyMiUzRVRleHQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjIlMjUlMjVEJTQwblVxQjF0dCU1RSU2MCUzRnFyVWFoeCUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIycSU1RGwlMjUwRHBiODlCWnkxLW0lNUJUak0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMlklMjNpQUkqRlIhb0FXSV9WS240dGolMjIlM0VUZWlsXzElM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyZn5QT0ZVMCU3REs0LXclNUR4VmMxJTNGJTJDJTYwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJTb3JlSiUyNG0lNUJoSiU3RFZzNCU3QmF1JTQwRTclMjIlM0V0YXVzY2hUZXh0JTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMlU3N351JTJDUWZtYjJnJTVCTzE5ZUhvaCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTNGJTNCek56QmElNDBfcTUlN0NsVE1oSURfRiUyMiUzRVRlaWxfMiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIybGFvJTNGS1V4Rjc3U2l+WGMyaiUyNSU1RSU3QiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIybW9CX3h0JTVCJTIzaXNpayUzQVlUMCUzREozJTJGJTIyJTNFU3RlbGxlJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfaW5kZXhPZiUyMiUyMGlkJTNEJTIyJTVCKSUyQ1BOJTJDWnJBVyUyQ0MlMkZ+JTNBSyU1QnglNUIlM0ElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJFTkQlMjIlM0VGSVJTVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjI2JTdCdCUzQUJlVmg2JTNEYnNRRih6VWhZRyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyKm1IJTVCJTdERi42S3RhJTIzS1clM0JjM2pQVyUyMiUzRVRleHQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJGSU5EJTIyJTNFJTNDc2hhZG93JTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjIlN0JWZCUyRlN1OHVrJTQwbG8lN0MlM0EzS01pMUwlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTI1MEQlMjUwQSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyciU3Q35mS2tHUiUyMyU0MDElNDBHNl9HWCU2MC1nJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlNURUJTNBJTJGJTNGJTNBUVJMJTNCbSUyRjF3cSpTJTIzN1MlMjIlM0VzdWNoVGV4dCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyUkVUVVJOJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyLipEQS0lM0FxJTJGR3pVUlNFUEgyWmlRJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIqbUglNUIlN0RGLjZLdGElMjNLVyUzQmMzalBXJTIyJTNFVGV4dCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fZXh0JTIyJTIwaWQlM0QlMjI3KSUzRjFBJTVCUWFQUmpCbHFxVyUyQm8lMjN6JTIyJTIweCUzRCUyMjYzJTIyJTIweSUzRCUyMi00MTIlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBpdGVtcyUzRCUyMjElMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRWFueSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQUNLX0NPTkRJVElPTiUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEMCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMjRDeGclM0IlNUQzJTNBayUyNUREMDhjNSUzRC1KcyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5TdG9wJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJyZXF1ZXN0JTIyJTIwaWQlM0QlMjJrQ3BfJTNBbjhNJTI0JTVFNCU2MFlkOFAlMkZRRHklMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjB3aXRoX3N0YXRlbWVudCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX1NUQVRFTUVOVCUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJMT0clMjIlM0Vsb2clM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlVSTCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRleHQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIyOV82JTdDWG1nRi1vISUyRklEWChjNWJUJTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjMlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJYd1JzTSU3QmpldyU2MGFUSnRIM2olM0YlN0RzJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRWh0dHAlM0ElMkYlMkYlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjJ6JTI0c3R+T0hmZmMlNjBRRCUzQUpPWiUyQiElMjMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuSVAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIybilIQyUzRHJVIVhTbGFDeWV4JTIzeiUyNVglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNBMTEwMDAlMkZQYXVzZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIybmUzNy5QS3Y1JTNCJTJDIVFIU21fZmdOJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJwJTVCIWQ5ZzUlMjRkMWZpenVvN1diRFolMjIlM0Vha3R1YWxpc2llcnVuZ19hbiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjIlNUVZelFTSURyY2FfN08lM0ZIVFIlNUI1RCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sJTIyJTIwaWQlM0QlMjJMR3IlN0I3MTJ1YiU2MCUyMyUyM0ZLKkxUJTIzci4lMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuQWxidW0lM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfREVMQVklMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjI3JTNEJTNCZDdEVklCZ0QlN0NwaXpRdEVrLiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbCUyMiUyMGlkJTNEJTIyJTdCJTI0a3klMkM4OFBCeWNKTmJfMzR1JTNGcyUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5BcnRpc3QlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfREVMQVklMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjI0JTVFZiUyRiUzRlExZkQxaktsdCUyM08wJTdDb3klMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMnFhaGclMjUlN0Rac1UpKVE3LWNLJTJCJTI1dSUzQiUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5BcnR3b3JrJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyWUElNDA4WCElMjMwRSU3RCklM0YlM0Rta0MxS09jJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sJTIyJTIwaWQlM0QlMjJGOSUyNSU3Qy56KSUyQyUyQk0lNUQhKCUzRGF5JTVFTCUzQVElMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuVGl0bGUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfREVMQVklMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJpJTVEaWhsZiUzRkZuUkouTn4lMjVXOFotJTJDJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9leHQlMjIlMjBpZCUzRCUyMlNldiUzRCUzRjIoMyU3QkQ0eXElMkJwbHZqTWIlMjIlMjB4JTNEJTIyNjMlMjIlMjB5JTNEJTIyODglMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBpdGVtcyUzRCUyMjElMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRW5lJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBQ0tfQ09ORElUSU9OJTIyJTNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQwJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIySFhHJTdEJTVCSFJxTCUzRCU1RShkJTNCQVEtekVwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFMF91c2VyZGF0YS4wLk1lZGlhLkJsdWVzb3VuZC5LJUMzJUJDY2hlLlZvbHVtZSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycmVxdWVzdCUyMiUyMGlkJTNEJTIycmJSdiU3RDJjM0slMjU0JTVCWX4zVyUyQiUyNXBMJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwd2l0aF9zdGF0ZW1lbnQlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9TVEFURU1FTlQlMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTE9HJTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJVUkwlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyVk5RLjAtJTNBdzNRYnpJYyUzRnAlN0RCYmMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFdGV4dCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjJISSUzRnhLTTMhTyUyRlZFWU9TJTI0c0ElNUUlM0ElMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyNCUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMkR0JTVFekglN0MlM0YlNUIlNUVfRyFqaExZZDdRdyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0VodHRwJTNBJTJGJTJGJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyaClXJTNGVFg3Qi56anU2JTdEcVlGfjl0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFMF91c2VyZGF0YS4wLk1lZGlhLkJsdWVzb3VuZC5LJUMzJUJDY2hlLklQJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMlVyWEpkJTJCNU0lM0RlJTJCJTdCKDFvTENJMyUyNCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0ExMTAwMCUyRlZvbHVtZSUzRmxldmVsJTNEJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyLSUyM1QlMkZvd3NIJTJGTCUyM1hiOCUyQiU0MDFobHIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuVm9sdW1lJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0NibG9jayUyMHR5cGUlM0QlMjJzY2hlZHVsZV9jcmVhdGUlMjIlMjBpZCUzRCUyMk0lMjNYLWJHdVoqJTJGNCU1QiU1QllfMkRMSVklMjIlMjB4JTNEJTIyMTA2MyUyMiUyMHklM0QlMjIzOCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5BTUUlMjIlM0VzY2hlZHVsZTElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlNDSEVEVUxFJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX2Nyb24lMjIlMjBpZCUzRCUyMmMlMkNIJTQwdSUyQy5yJTYwa0kpVSU1RXkyNk9XJTdEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ1JPTiUyMiUzRSolMkY1JTIwKiUyMColMjAqJTIwKiUyMColM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjIlN0MlN0RCYXIwZyUzRDRMVmolN0RwfiUzRmliQ18lMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjJQMSU2MFolNUVTYSUyQkFkQSUzQV8wNVVqZ1RJJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VFUSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMmZxJTJDRnZLWGJNJTVCJTNGbSUzQSUzQWZ+JTdCcGYlNjAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnAlNUIhZDlnNSUyNGQxZml6dW83V2JEWiUyMiUzRWFrdHVhbGlzaWVydW5nX2FuJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMnB2TyUyNGx1Sm9+byp1VHNYejU3UVclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8wJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycmVxdWVzdCUyMiUyMGlkJTNEJTIyJTNCJTVCMEMuLnpETnVFMCUyNSUyNDclM0ZxMyU3REolMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjB3aXRoX3N0YXRlbWVudCUzRCUyMnRydWUlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfU1RBVEVNRU5UJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTE9HJTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJVUkwlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXh0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2pvaW4lMjIlMjBpZCUzRCUyMk0lNUUwJTNBcjdzRWN+SSUyNS1nJTVEbWhrJTVEcSUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIycSU2MHBTeGslN0NVaG1iMjJIaCU3QyU1RVYoJTdEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRWh0dHAlM0ElMkYlMkYlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjItJTJGUDd3LnJZSSElM0FLMkUqJTdDJTNCYSUyRlklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuSVAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyOCU0MCUzQWd1RWpPJTVFJTIzcEslN0MqbCklNUJIWjIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNBMTEwMDAlMkZTdGF0dXMlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnVwZGF0ZSUyMiUyMGlkJTNEJTIydipMWDkyb092LSUyNEJyR1lnd3glMjUlM0IlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuU3RhdHVzJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udmVydF9vYmplY3QyanNvbiUyMiUyMGlkJTNEJTIyZDcyJTJGJTI1S0hCNX50eCU0MG0xJTJCbGdsSyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlBSRVRUSUZZJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJQelRxV2olN0NXYWgxNiU3RHpDaCFoJTVEWCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyViElM0ZiJTNCbSUzQV9sMGVVJTVCcXAlM0EyU0ZPJTIyJTNFcmVzdWx0JTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fZXh0JTIyJTIwaWQlM0QlMjJlJTVEZ25YYlNpVmwpRSUyNG5vZSUzRiU1RVYlMjQlMjIlMjB4JTNEJTIyNjMlMjIlMjB5JTNEJTIyNDM4JTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwaXRlbXMlM0QlMjIxJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT05ESVRJT04lMjIlM0VhbnklM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFDS19DT05ESVRJT04lMjIlM0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRDAlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJXJTNCWCUzRkhzayUyM2doMnUhMHlpdmslM0YlM0ElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuUGxheSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycmVxdWVzdCUyMiUyMGlkJTNEJTIyOVVmYkolMkMlNjBfcCU3Qkg3dGpTYiUyNXElM0JNJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwd2l0aF9zdGF0ZW1lbnQlM0QlMjJ0cnVlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX1NUQVRFTUVOVCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkxPRyUyMiUzRWxvZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVVJMJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFdGV4dCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjIlNUVPKUgxdENrKXRpJTIzX3UlNDBNJTI0aih+JTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjMlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjIlM0QwJTYwRkhiYyppMWQxeW1NM2lpLWklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFaHR0cCUzQSUyRiUyRiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWUlMjIlMjBpZCUzRCUyMiolNUQ4dX5YJTNGdCUzQUlFJTdENnMxJTQwMDh1eiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5JUCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJhJTVEaS5wJTJGayU1RHAlNURwVDgtRX4lNDBUZyU1RSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0ExMTAwMCUyRlBsYXklM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmRlYnVnJTIyJTIwaWQlM0QlMjJLYXIlMkJsM2F5JTJGM2UqWiU0MHMlNUVvVHc3JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0Vsb2clM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyKk83NU0lNUIpVFQlN0RqJTJCOTlQLSU1RSUzQTApJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRVBsYXklM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycmVxdWVzdCUyMiUyMGlkJTNEJTIyJTdCVVdMIUwofnZjbUg1LlclNUI1N0slN0QlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjB3aXRoX3N0YXRlbWVudCUzRCUyMnRydWUlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfU1RBVEVNRU5UJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTE9HJTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJVUkwlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXh0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2pvaW4lMjIlMjBpZCUzRCUyMmE2Y0NBMkYlMkZhZS5jMjJjNmxsJTI0diUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTJDNmxGOGdhJTYwTjFXbHhlUyU3RFNHQiUzQiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0VodHRwJTNBJTJGJTJGJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyZVIlMkJYQV9tNGdxZXBUJTJDLiU3Q3BhWm8lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuSVAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyZDJwJTNGJTJCT244en4lNjBmKmZvTWpPJTJDOSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0ExMTAwMCUyRlN0YXR1cyUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyNiElN0MzSENsa20lN0NlX1UlN0RnJTNEYlUlNUV4JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJwJTVCIWQ5ZzUlMjRkMWZpenVvN1diRFolMjIlM0Vha3R1YWxpc2llcnVuZ19hbiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJGaTIlNjBWRiglN0MlNUQlNjBfNWdpOFghSmpTJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fZXh0JTIyJTIwaWQlM0QlMjJvMWQlM0FmKEtUVChac0clNDA5RSUyQ1d+MSUyMiUyMHglM0QlMjIxMDYzJTIyJTIweSUzRCUyMjQzOCUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGl0ZW1zJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09ORElUSU9OJTIyJTNFYW55JTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBQ0tfQ09ORElUSU9OJTIyJTNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQwJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyVmtiQW1mSE5MJTVFcSUyNSUyQyU1QnUlMkJGUGdOJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFMF91c2VyZGF0YS4wLk1lZGlhLkJsdWVzb3VuZC5LJUMzJUJDY2hlLlN0YXR1cyUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbCUyMiUyMGlkJTNEJTIySHBzLmElN0MpJTI0KEEyYnElMkJwS00lN0JXciUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5BbGJ1bSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9ERUxBWSUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF9hdHRyJTIyJTIwaWQlM0QlMjJGTCU1REJ2QWxzJTNGTTRwJTI0JTI1anNWJTdEdi0lMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJQQVRIJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMkxaTyU1QkZDOSU3RDVwZCU2MG4lM0I2MyUyQiUyNHgqJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRWFsYnVtJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9CSkVDVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnZlcnRfanNvbjJvYmplY3QlMjIlMjBpZCUzRCUyMlolNUQ2RHJ3YnVFWkMlNDBxaE0lM0QyJTJDS1QlMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyJTdEJTVER2clN0MqTE8lNUVudEY1JTJCX0lWZnZOJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFc3lzdGVtaW5mby4wLkJsdWVzb3VuZC5LJUMzJUJDY2hlLlN0YXR1cyUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMkMlNjA0ZFJkcDEzJTJDb2UoV3Z2JTVCckkhJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwZGVsYXlfaW5wdXQlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFMF91c2VyZGF0YS4wLk1lZGlhLkJsdWVzb3VuZC5LJUMzJUJDY2hlLkFydGlzdCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9ERUxBWSUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF9hdHRyJTIyJTIwaWQlM0QlMjJXUklhVG5UTSU3QyUyQ05vUiUyM09LQnhaJTYwJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyUEFUSCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJ6MGlRJTJCRmRzJTYwZXJLQlk4cE1uUXQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFYXJ0aXN0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9CSkVDVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnZlcnRfanNvbjJvYmplY3QlMjIlMjBpZCUzRCUyMi1ZJTNCWSUyQmF1JTYwdClFZCU3QzEpWH5MVyUyNCUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjIlMjUtJTdCJTQwJTI0LXUhUGFlX05JJTVEITclNDA5RCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRXN5c3RlbWluZm8uMC5CbHVlc291bmQuSyVDMyVCQ2NoZS5TdGF0dXMlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sJTIyJTIwaWQlM0QlMjJwV3klMkZraVVoa3g3TiUyNSU1RSUzRm8uTCUyQyU1RCUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5UaXRsZSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9ERUxBWSUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF9hdHRyJTIyJTIwaWQlM0QlMjJpJTdEJTI0XyU3QypqMzhZJTVFWilWSVAlMkYlNUV1dCUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlBBVEglMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyS1FTeGxPKkclN0QlN0IpWHluNTQ1JTNCJTJDVCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0aXRsZTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0JKRUNUJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udmVydF9qc29uMm9iamVjdCUyMiUyMGlkJTNEJTIyJTJGJTVCVSUzREppUW5ubzFpUTVSNmxFUWUlMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyJTVCWWNQam0yTiU0MCU3Q35vZ0UlMkJkJTVCJTNBJTVEaiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRXN5c3RlbWluZm8uMC5CbHVlc291bmQuSyVDMyVCQ2NoZS5TdGF0dXMlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sJTIyJTIwaWQlM0QlMjI0STkxJTI0QlU5JTdEenBDeiUyQktwUyUzQmNqJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwZGVsYXlfaW5wdXQlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFMF91c2VyZGF0YS4wLk1lZGlhLkJsdWVzb3VuZC5LJUMzJUJDY2hlLkFydHdvcmslM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfREVMQVklMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfYXR0ciUyMiUyMGlkJTNEJTIyUHkhNTVLbnZoa0taX0lFc0FpaU4lMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJQQVRIJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiElNURXVmElMkI3d1MlN0JudncoJTdESEgoa3QlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFaW1hZ2UlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0JKRUNUJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udmVydF9qc29uMm9iamVjdCUyMiUyMGlkJTNEJTIybjJsVyUzQjQpa2VscVolN0J4ejNnJTJDJTI0ISUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjJVSWNUaWhYU1QlMjQlMkYlNDA5aXhDLXIwLiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRXN5c3RlbWluZm8uMC5CbHVlc291bmQuSyVDMyVCQ2NoZS5TdGF0dXMlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9leHQlMjIlMjBpZCUzRCUyMlklM0ZTbTQxJTI0KEQpOSUyM2xRfmxKeHQlMjQlMjIlMjB4JTNEJTIyMTA2MyUyMiUyMHklM0QlMjI3ODglMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBpdGVtcyUzRCUyMjElMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRWFueSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQUNLX0NPTkRJVElPTiUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEMCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMnFpT25hQzUlM0ZzZCUzQUQ4aW44TFlNSyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5QcmVzZXQtdG8tRGV2aWNlJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sJTIyJTIwaWQlM0QlMjJjUyUzQiU1RS01TUNaJTdCTUt3JTVCYTJuJTJCTCklMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuQWxidW0lM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfREVMQVklMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJ2ZTlfcCUyRjglM0QlMjMlMkMlN0JTJTNBWDJhQkUzMiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbCUyMiUyMGlkJTNEJTIySklwKTBqRzRoJTNCejBRJTJGUFMyJTNGajklMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuQXJ0aXN0JTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyfio4VCFwJTJCeCU3RHJ+Slp2akVSKTElN0QlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMl8wSTlhd0N6aXYzJTdDaWRPKmYlM0QoYiUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5BcnR3b3JrJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTI0dUhEJTI1JTdEbm8lNUJjWXglN0R4JTNEMVVoek0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMi45blglMkIlMjMlMkZ6eCUyNSUzRkR+UE9wT0pxYyUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5UaXRsZSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9ERUxBWSUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMmEzJTdDUHNSaGQqSyUzQW4lNURoNkcyJTYwJTVEXyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycmVxdWVzdCUyMiUyMGlkJTNEJTIyKk8lMkJheiUyNSUyQm9+JTVFJTNETiU1RXlnSGVHZFMlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjB3aXRoX3N0YXRlbWVudCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX1NUQVRFTUVOVCUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJMT0clMjIlM0Vsb2clM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlVSTCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRleHQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIyNSU0MCUyM2NTJTNBb2pPJTYwTDVqJTJCd2hIVVoqJTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjQlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjI2JTdEJTNGc2kyeWtCIWhfMyFWQ0lrJTJCaCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0VodHRwJTNBJTJGJTJGJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyJTIzJTI0ZSUyM1hEJTJDMWo0ZSUyRiFFVSUyNUlHRWIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuSVAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTI1JTQwd0QlM0ZqJTdEU08lMkZlYUc3VmdYZzZmJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQTExMDAwJTJGUHJlc2V0JTNGaWQlM0QlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQzJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjIlNUQlNURoTVYlN0IlNjBJZiUyM2l1JTYwdXY4LiU3Q2MlMkIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuUHJlc2V0LXRvLURldmljZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyVHAlNUJQJTJGTyUzQSU3Q05tbHQlN0ItTC4hVTJaJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJwJTVCIWQ5ZzUlMjRkMWZpenVvN1diRFolMjIlM0Vha3R1YWxpc2llcnVuZ19hbiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJIdE4yViFIUEElMjRLSyh+JTVFU3I1SDMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9leHQlMjIlMjBpZCUzRCUyMldoJTVFZzg5TDJVflEyUCF4QjJ2KFclMjIlMjB4JTNEJTIyNjMlMjIlMjB5JTNEJTIyMTA2MyUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGl0ZW1zJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09ORElUSU9OJTIyJTNFYW55JTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBQ0tfQ09ORElUSU9OJTIyJTNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQwJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyYnZWOE1oN25jeUkxellSSSUyNXEoWSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5OZXh0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJyZXF1ZXN0JTIyJTIwaWQlM0QlMjJkdVRaeXJodnElNjBuNH4lM0ZjcmQlMjVEJTNEJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwd2l0aF9zdGF0ZW1lbnQlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9TVEFURU1FTlQlMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTE9HJTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJVUkwlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXh0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2pvaW4lMjIlMjBpZCUzRCUyMm5lJTNCNUt+MiU2MCU1RV8lMkMlMjRjLk1iKWpPTCUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIycy1pLVJZWSU1Qk9oa0pSJTJGLSU3QiU2MEozJTI1JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRWh0dHAlM0ElMkYlMkYlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjJXKSUzRFdqKDJPIUIlN0IlMkNSTWlRa1AlMjUhJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFMF91c2VyZGF0YS4wLk1lZGlhLkJsdWVzb3VuZC5LJUMzJUJDY2hlLklQJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiUyQyUzRnElM0IlM0QpLjQlM0RrbkEudWFUU1UyNiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0ExMTAwMCUyRlNraXAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiU1RDUqYS1sV3E2JTI1S0slN0IlMjVZJTI0ejFxOSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIycCU1QiFkOWc1JTI0ZDFmaXp1bzdXYkRaJTIyJTNFYWt0dWFsaXNpZXJ1bmdfYW4lM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyJTJGZ0xrSyU1RXQoZVFIVFlYJTI1KFVHJTVCbCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VUUlVFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX2V4dCUyMiUyMGlkJTNEJTIyJTYwb2RsclZpRCUzQWpTYXglNjAwaUdVWDklMjIlMjB4JTNEJTIyNjMlMjIlMjB5JTNEJTIyMTQxMyUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGl0ZW1zJTNEJTIyMSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09ORElUSU9OJTIyJTNFbmUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFDS19DT05ESVRJT04lMjIlM0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRDAlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJobiU1RXclM0IlN0RXKDUlM0YlMkMxS0VIWU9XaUUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0UwX3VzZXJkYXRhLjAuTWVkaWEuQmx1ZXNvdW5kLkslQzMlQkNjaGUuQmFjayUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycmVxdWVzdCUyMiUyMGlkJTNEJTIyKSUyNTEodTJseSU3QiU3Qk0lMjVFaCUzQSU0MCU1RSU3QigqJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwd2l0aF9zdGF0ZW1lbnQlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9TVEFURU1FTlQlMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTE9HJTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJVUkwlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXh0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2pvaW4lMjIlMjBpZCUzRCUyMi1+NjZKJTNCJTdDcUMlM0R3SWZqYzJrJTdCJTJGbiUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyYU0lNUQ0cVElMkZfU0V4bmNlJTNCZS02flklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFaHR0cCUzQSUyRiUyRiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWUlMjIlMjBpZCUzRCUyMk8lMkMlM0ElMjUlMjVuJTdDekNOZlklMkJWUCU3RG95JTJCMiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5NZWRpYS5CbHVlc291bmQuSyVDMyVCQ2NoZS5JUCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJFJTdEamRWKTIlN0NRJTVCJTQwdSpBd1ptREViJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQTExMDAwJTJGQmFjayUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyd0pkUSU3QlIlNUQzcUd0TSUzQWwlM0FrY1FjMSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIycCU1QiFkOWc1JTI0ZDFmaXp1bzdXYkRaJTIyJTNFYWt0dWFsaXNpZXJ1bmdfYW4lM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyTGRKT1VKa3lESyUzQUYlNUJheEslN0IlMjN2ViUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VUUlVFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnhtbCUzRQ==
                
                1 Antwort Letzte Antwort
                0
                • R Rookie50

                  Hi @liv-in-sky,

                  nachdem ich noch ein wenig über mein Projekt nachgedacht haben, ist mir klar geworden, dass die Umsetzung nicht ganz trivial ist und ich es nicht nur mit Bordmitteln vom ioBroker und iQontrol erledigen kann.
                  Ich habe nun hier im Forum gesehen, dass Du schon einige Listen geschrieben hast und daher würde ich Dich gerne fragen, ob Du mich dabei unterstüzen kannst, wenn es Deine Zeit zulässt.

                  Ziel des ganzen soll eine Integration des BlueOS, Bluesound Multiroom Systems, in ioBroker werden. Dieses System wird unter anderem auch von NAD, Dali, sowie Monitor Audio eingesetzt. Die Befehle werden via http request gesendet.

                  Bis dato habe ich folgendes umgesetzt:

                  d78484cc-b137-4229-b6bb-945cb597600d-grafik.png

                  Die grundlegende Steuerung funktioniert schon (play,next,forward,skip,usw.)

                  Nun wollte ich die Bibliothek einbinden. Damit man vom NAS oder Storage abspielen kann. Ich habe keinen Weg gefunden, wie ich die ausgelesen Verzeichnisse in Iqontrol darstellen kann und dann per Klick (oder touch) auswählen kann um ein Verzeichnis weiter zu kommen oder markieren zum abspielen. Magst Du mir dabei helfen? Oder hast Du evtl. einen komplett anderen Ansatz?

                  Gruß

                  Rookie

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von
                  #8

                  @rookie50

                  du könntest den blockly-export in eine textdatei kopieren und diese textdatei hier posten (einfach "reinziehen"

                  ich habe mir das schon gedacht - da ich auch schon mal an diesem punkt war.

                  letztlich benötigst du ja die ganzen verzeichnisse deiner ordner mit mp3 files

                  du brauchst ein auswählfenster , indem alle verzeichnisse und evtl unterverzeichnisse sind, um eine ganzes album oder nur einen titel auszuwählen

                  letztlich musst du immer wieder die ordner holen, über die api und dann wieder eine anfrage an einen neuen ordner zu stellen, um wieder über die api die unterordner zu holen, usw

                  beispiel: du wählst "album" aus und bekommst wieder einige ordner. z.b. "queen", "abba", .......... darunter sind dann die einzelnen mp3's - also lieder - ist das soweit richtig ?

                  sind diese ordner tatsächlich im filesystem abgebildet (auf irgendeinem NAS) oder sind das "virtuelle" ordner, die nur in deinem soundsystem existieren - und wieviele unterordner kann es geben ? gibt es z.b. "alben -> "abba" -> "bestof -> erstes.mp3 ......

                  wenn du nur über die api arbeiten kannst und nur jeweile eine unterebene hast, wäre es am einfachsten

                  wenn es möglich ist, das ganze mal zu sehen, könnten wir auch mal anydesken order teamviewen - ist einfacher, wie das ganze schriftlich abzuwickeln

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  • R Offline
                    R Offline
                    Rookie50
                    schrieb am zuletzt editiert von Rookie50
                    #9

                    XML-Return-Songs.txt XML-Return-Folder.txt Bluesound-Blockly.txt

                    liv-in-skyL 1 Antwort Letzte Antwort
                    0
                    • R Rookie50

                      XML-Return-Songs.txt XML-Return-Folder.txt Bluesound-Blockly.txt

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #10

                      @rookie50 muss nochmal kurz fragen:

                      in xml-return-songs stehen nur songs oder haben wir da auch unterordner ? wenn nein, kannst du mal ein beispiel erzeugen, indem unterordner und mp3's sind ?

                      hier mal ein json des xml - die konvertierung hat schon mal geklappt :-)

                      Image 3.png

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      BananaJoeB R 2 Antworten Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @rookie50 muss nochmal kurz fragen:

                        in xml-return-songs stehen nur songs oder haben wir da auch unterordner ? wenn nein, kannst du mal ein beispiel erzeugen, indem unterordner und mp3's sind ?

                        hier mal ein json des xml - die konvertierung hat schon mal geklappt :-)

                        Image 3.png

                        BananaJoeB Offline
                        BananaJoeB Offline
                        BananaJoe
                        Most Active
                        schrieb am zuletzt editiert von
                        #11

                        @liv-in-sky
                        Das Notepad++ einen JSON-Viewer kennt, da hätte ich auch eher drauf kommen können ...

                        ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                        liv-in-skyL 1 Antwort Letzte Antwort
                        0
                        • BananaJoeB BananaJoe

                          @liv-in-sky
                          Das Notepad++ einen JSON-Viewer kennt, da hätte ich auch eher drauf kommen können ...

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          schrieb am zuletzt editiert von liv-in-sky
                          #12

                          @bananajoe brauch ich täglich - colles tool :-)

                          Image 4.png

                          NppFTP ist auch cool - direkt ins filessystem von iobroker und dateien ansehen - wenn z.b ein widget die view zerschießt, kann man dan super einfach reparieren - aber vorsicht !!

                          Image 5.png

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          1 Antwort Letzte Antwort
                          0
                          • liv-in-skyL liv-in-sky

                            @rookie50 muss nochmal kurz fragen:

                            in xml-return-songs stehen nur songs oder haben wir da auch unterordner ? wenn nein, kannst du mal ein beispiel erzeugen, indem unterordner und mp3's sind ?

                            hier mal ein json des xml - die konvertierung hat schon mal geklappt :-)

                            Image 3.png

                            R Offline
                            R Offline
                            Rookie50
                            schrieb am zuletzt editiert von
                            #13

                            @liv-in-sky

                            XML-Return-MP3-Folder.txt

                            hier ein Beispiel mit Unterordner und Dateien.

                            liv-in-skyL 2 Antworten Letzte Antwort
                            0
                            • R Rookie50

                              @liv-in-sky

                              XML-Return-MP3-Folder.txt

                              hier ein Beispiel mit Unterordner und Dateien.

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              schrieb am zuletzt editiert von
                              #14

                              @rookie50 mit dieser datei habe ich ein kleines problem

                              hier mal die beispiele, die als unterordner ein array haben

                              Image 7.png Image 6.png

                              in deinem beispiel ist ja auch ein unterordner, aber das wird nicht als array angegeben -

                              Image 8.png

                              hast du den irgendwie besonders angelegt ? wa spassiert, wenn du einen zwiten ordner machst ? sind in dem ordner "sontestordner" auch mp3 drin ?

                              und wir müssen nochmal definieren, wie genau du die ausgelesen daten brauchst, damit du deine api befehle machen kannst

                              z.b. so kommen die daten , wenn mp3 sind: (müssen wir noch definieren, was du da am besten verwenden kannst)

                              Image 10.png

                              so kommen daten, wenn du ordner hast:

                              Image 9.png

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              R 2 Antworten Letzte Antwort
                              0
                              • R Rookie50

                                @liv-in-sky

                                XML-Return-MP3-Folder.txt

                                hier ein Beispiel mit Unterordner und Dateien.

                                liv-in-skyL Offline
                                liv-in-skyL Offline
                                liv-in-sky
                                schrieb am zuletzt editiert von
                                #15

                                @rookie50

                                zwischenstand - bevor es morgen weitergeht

                                AApossis (43).gif

                                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                R 1 Antwort Letzte Antwort
                                0
                                • liv-in-skyL liv-in-sky

                                  @rookie50

                                  zwischenstand - bevor es morgen weitergeht

                                  AApossis (43).gif

                                  R Offline
                                  R Offline
                                  Rookie50
                                  schrieb am zuletzt editiert von
                                  #16

                                  @liv-in-sky Wow, das sieht schon Klasse aus!
                                  Ich lese mir morgen früh noch deinen vorletzten Beitrag in Ruhe durch.

                                  1 Antwort Letzte Antwort
                                  0
                                  • liv-in-skyL liv-in-sky

                                    @rookie50 mit dieser datei habe ich ein kleines problem

                                    hier mal die beispiele, die als unterordner ein array haben

                                    Image 7.png Image 6.png

                                    in deinem beispiel ist ja auch ein unterordner, aber das wird nicht als array angegeben -

                                    Image 8.png

                                    hast du den irgendwie besonders angelegt ? wa spassiert, wenn du einen zwiten ordner machst ? sind in dem ordner "sontestordner" auch mp3 drin ?

                                    und wir müssen nochmal definieren, wie genau du die ausgelesen daten brauchst, damit du deine api befehle machen kannst

                                    z.b. so kommen die daten , wenn mp3 sind: (müssen wir noch definieren, was du da am besten verwenden kannst)

                                    Image 10.png

                                    so kommen daten, wenn du ordner hast:

                                    Image 9.png

                                    R Offline
                                    R Offline
                                    Rookie50
                                    schrieb am zuletzt editiert von
                                    #17

                                    @liv-in-sky said in Dyn. Liste darstellen und als Auswahlliste in VIS, iQontrol:

                                    üssen wir noch definieren, was du da am besten verwenden

                                    Guten Morgen,

                                    also ich habe den Ordner angelegt und eine mp3 hineinkopiert. Allerdings habe ich nicht neu indexiert, sondern direkt darauf zugegriffen. Ich habe nun noch 2 weiter Ordner, mit jeweils einer mp3 angelegt und auch neu indexiert.

                                    Folders-inkl-Unterordner-nach-index.xml
                                    Folders-Unterordner3-mit-mp3-nach-index.xml

                                    Ich hoffe, dass hilft Dir erstmal weiter.

                                    LG

                                    Rookie

                                    1 Antwort Letzte Antwort
                                    0
                                    • liv-in-skyL liv-in-sky

                                      @rookie50 mit dieser datei habe ich ein kleines problem

                                      hier mal die beispiele, die als unterordner ein array haben

                                      Image 7.png Image 6.png

                                      in deinem beispiel ist ja auch ein unterordner, aber das wird nicht als array angegeben -

                                      Image 8.png

                                      hast du den irgendwie besonders angelegt ? wa spassiert, wenn du einen zwiten ordner machst ? sind in dem ordner "sontestordner" auch mp3 drin ?

                                      und wir müssen nochmal definieren, wie genau du die ausgelesen daten brauchst, damit du deine api befehle machen kannst

                                      z.b. so kommen die daten , wenn mp3 sind: (müssen wir noch definieren, was du da am besten verwenden kannst)

                                      Image 10.png

                                      so kommen daten, wenn du ordner hast:

                                      Image 9.png

                                      R Offline
                                      R Offline
                                      Rookie50
                                      schrieb am zuletzt editiert von Rookie50
                                      #18

                                      @liv-in-sky

                                      Hier ein paar Befehle zum abspielen:

                                      Ordner abspielen:
                                      http://192.168.101.107:11000/Add?service=LocalMusic&playnow=-1&path=%2F%2F192.168.101.20%2Fmusic%2FAlben%2FMike+%2B+The+Mechanics%2FLet+Me+Fly

                                      Einzelne mp3 abspielen:
                                      http://192.168.101.107:11000/Add?service=LocalMusic&playnow=1&file=%2Fvar%2Fmnt%2F192.168.101.20-musicAlben%2FMike+%2B+The+Mechanics%2FLet+Me+Fly%2F01.+Let+Me+Fly.mp3

                                      Spiele als nächstes (&where=next) :
                                      http://192.168.101.107:11000/Add?service=LocalMusic&playnow=-1&where=next&file=%2Fvar%2Fmnt%2F192.168.101.20-musicAlben%2FLorde%2FLorde+-+Pure+Heroin%2F02+400+Lux.mp3

                                      Füge als letztes zur Playlist (&where=last) :
                                      http://192.168.101.107:11000/Add?service=LocalMusic&playnow=-1&where=last&file=%2Fvar%2Fmnt%2F192.168.101.20-musicAlben%2FLorde%2FLorde+-+Pure+Heroin%2F02+400+Lux.mp3
                                      Playliste löschen:
                                      http://192.168.101.107:11000/Clear

                                      liv-in-skyL 2 Antworten Letzte Antwort
                                      0
                                      • R Rookie50

                                        @liv-in-sky

                                        Hier ein paar Befehle zum abspielen:

                                        Ordner abspielen:
                                        http://192.168.101.107:11000/Add?service=LocalMusic&playnow=-1&path=%2F%2F192.168.101.20%2Fmusic%2FAlben%2FMike+%2B+The+Mechanics%2FLet+Me+Fly

                                        Einzelne mp3 abspielen:
                                        http://192.168.101.107:11000/Add?service=LocalMusic&playnow=1&file=%2Fvar%2Fmnt%2F192.168.101.20-musicAlben%2FMike+%2B+The+Mechanics%2FLet+Me+Fly%2F01.+Let+Me+Fly.mp3

                                        Spiele als nächstes (&where=next) :
                                        http://192.168.101.107:11000/Add?service=LocalMusic&playnow=-1&where=next&file=%2Fvar%2Fmnt%2F192.168.101.20-musicAlben%2FLorde%2FLorde+-+Pure+Heroin%2F02+400+Lux.mp3

                                        Füge als letztes zur Playlist (&where=last) :
                                        http://192.168.101.107:11000/Add?service=LocalMusic&playnow=-1&where=last&file=%2Fvar%2Fmnt%2F192.168.101.20-musicAlben%2FLorde%2FLorde+-+Pure+Heroin%2F02+400+Lux.mp3
                                        Playliste löschen:
                                        http://192.168.101.107:11000/Clear

                                        liv-in-skyL Offline
                                        liv-in-skyL Offline
                                        liv-in-sky
                                        schrieb am zuletzt editiert von
                                        #19

                                        @rookie50
                                        wir sollten eh mal mein testscript bei dir testen - es ist schwierig die api abfrage im script nachzubilden - ich bin gerade dabei, die "immer wiederholenden" abfrage struktur zu programmieren

                                        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                        R 1 Antwort Letzte Antwort
                                        0
                                        • liv-in-skyL liv-in-sky

                                          @rookie50
                                          wir sollten eh mal mein testscript bei dir testen - es ist schwierig die api abfrage im script nachzubilden - ich bin gerade dabei, die "immer wiederholenden" abfrage struktur zu programmieren

                                          R Offline
                                          R Offline
                                          Rookie50
                                          schrieb am zuletzt editiert von
                                          #20

                                          @liv-in-sky sag einfach Bescheid, wenn Du testen möchtest. Es gibt wohl auch die Möglichkeit ein Widget HTML Tabellen in iQonntrol einzubinden:
                                          https://github.com/sbormann/ioBroker.iqontrol/issues/152
                                          Vielleicht hilft es ja auch bei unserem Problem.

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          725

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe