Clear audio file reference from waveform on front end
-
the same as you would if you double left click on mouse. How can i script this thanks.
-
so i found a hacky way around this problem heres the snippet:
HiseSnippet 5597.3oc6cs0bbbbcdW.LjDf.7lnrbEYU0TnbUAzgBdlYuaEKu3JIJgKagcIkX4RQZvr8tXBlcl0yLKtHEUgxNwwURYG+RdvOjpzi9IW9wj23OA8VxSob9Gn7KP4b5dtzykE6rf.jvRDpJQLcOc2m96b5ystmFMrszHNNV14xOcqS5SxkeVglmX5t+J6qpalaiUyk+JB8vec4S5q53PZmKe9Ie.VP9omJG8mu5mrrpgpoFIrnb4drktFYS8d5tgk1n96oaXrtZaRK8dbucw5anYYthkg0.fNlTPJWeUsCT6R1VEesID.hXs15tV1McUcIN4xO0xVsOo49VGYxd+Gq6numAAePNWSniXEutkQajhwRysx95Fsa3OecxkK+0ZDN6mjM6uqvV5s0CJODEtEsBwvVviG4mHJ4MYDxSlm7j3HuTHo7bjzTLR51BM0r066FVCROWWXCSWhcGU.14IE16lah+GAgUrf2vzcwdpGPV2FdHnEKHKIIcewJxR26clYlYzM0LFzlrv76tuZeGfzW1R2fX22.lM+PuJc9gORew+Vm4GiFrok0AKY1dcBwXLaYCU28cFy1r1w8UMczsLG2F9PBHPZOlMZcKK2wtQMrIND2wk9djCwtIw0U2r631zl80MM4HyYfkYNthGpZKtzf15V.GpeCC0SH1xh+XQ559E6Rbo00TsWeCRfP2BySKUDahnWavNcn8nxYnGUh1iLY40+fLPbrWUDdW5LMrO1SCZ7Zlc0MIKpYS.3YYaK01ZpN.+agOclomWu87+Hw4WwB6wiEWU0UUbScnV.3l+9P8p1ccf23mN+VVsGXPl+9hy2FdoMLaSNFe3PUiAj4+vY9LJDum1hpttpZ62xxqKwdzattNviVzaYI123OhhPWmB19gg0KE9qy2.VoKpRe8NPuI5ZI10V0b.v3srmOfDZ21eNrv7Fv7MX3QJdSn.F6pCqjNCL0bgkNKvlh2WLXBdeQ5z6dy.HEP3NVvDnusto6BwEfPdCisrIwrq69KbOfXlVuSFdQw2UDUHIIcOXTlNfquHrXAI4EXj.zae1LhYrG+qO8dLtrJ1CXElfAGFg+YT9oOvHZYtMrfeGyEnHwL.gDupNcRsNjaaaY.qMSsZzPn8o0vELGzaOhMOe.eQv5PTSNBC2jCuEQMlvG2KZYtgot6N8IlCyNYNOIVv7zU8nJ3UcoFmtgmwokG35ZYlSGrAcGg8bMYp5fkZGAZuxQocfFySM2GzGWg0GutWePYJuu5gjNV18nc02IsZj86tPmMPwUpeBvJgtD.Rrc8GMZIqY1N4nGaFzzPGLCPG1aJbf4daQ0PP8zge79hu9qeimkkN4FgcRCUyjzbV5iai8wJVp1NjUItCLImstgNeVGz.97zIz4SK.Nc5a4jVe7nMPMcnOLdxKfLTehsqNJdleUxgfCgLOZlVXUhyAtV8ouau9VlnzU94Xi8b996nZRL7F59lFXmBLCfZNleXOg+AWxwtT4fiza6tePM0+WquOQu69gthJ8KquWWdGN0cI87edVghJUkjpUUppLWEJwpAGL9tXOKa.qZp+IQfEVo6p1VefCe43RoQOyuNNyYNnbJS6QMays8oLai9rBqf3ys9p1.gxQwwXIi4beJtd5lCUQxLnhjV5tfVri4CVHEV9LB69vkZzbmUeRLvHm94KXfR.0JHUplRsp4b.MRa3opaH3DOCT2YKqdPop1mvT0Bla.UzXbEaRTsM8CJfCkGJ1LGhM9dExAOO6myCOEp6CON9uZL3obB3o7HVYTStpTMkBorxnVgBJx0pVHgzyXhSYEVRtb4NXuvFmU0c.mgOgCZ9u+E7Pyh0Ghxh+zfDPx6xAITU.xJUUJTp74v5H9483rH5t0irHZ1wwZ7Xq+7K+YIfje73tHJwLOEd0HY7CWWwrgSSItIXcadd97d77aH3ZqC9Ef9K1wM9RBwDS1EF0RB3+pTQVIkkDxJxkqVnxYYIQJ.z3qAISHlLGh8wNogX2L.w1kBMe6DxtYHj0DHFNT6otogZWQ.o43f0Be6.rtNBVOxDC9jCn9iedZ1mtgfsWZL1zpq0eNXi5LaKOoQqowtEidiWw7c4gosGlspu52DGZ98e9nbrMosKkX0bQ572B0i3x+0NiQ.xsx683QpmTOluv+yIjczqmX9DxA56G16FswbAmLsLYikRAHLx7ANKqZOL95C+4Ymu9zUNy70ZEpUoZA4po6GaoJxm2d2KjLxl65AQqCpCP+PaoCN0y7wuigKhT7NwBNmwwS+908hmjE73cDZPrQo.bGG1TcO.xiBdhFI34Ee9b4WtpR0JxkKUrvPfpPV85VTwZgdD.V5EQZ4VCUU4znpRpluPL3C9TdLXg.KJFIUPV+iRLgAuasrLb0gHrEEvTA4J5tOQrM4PhAFT9eoi3Qj8fhIKlaDpR8ERRw1S0JkTpU5rnJMFpM9ZSGkb0MP4pFD0C1h3Fwk2u7Wxiq+fnxV2VXKUvQmiCaXLSQOIARKMxDITnrrRoBonusnrrRkhUyn91PzhllkIdq7Be5LXBgCUYg4wFFE5l.L+8wJYIo9GI91xzGW2xvv5n22x9.m9pZDnhNpFNDZcMIcQVvlj13BcnJoEknU7n9qRzTOAyTITphje4qZcjIeMkBp4QNjlvrQirx9plfNQL84t1C7FmCHGstpFlsZbLJPKrgZ61.6KXjKwd08sNZKUJ2.JU1q285T5TiPyLOTJMI43+fSzOblOKhvx2KyY5a3xINtmXP2czGZYq+InpQib8za21fzvBVGoawsgnJOC5v9b5K+he2u6+7mzieOSexy5oFINLmAc5nCkHHH1d4b8rZ6kmLMcTCm+peJQlAYx1jNpCLbebzjz8ceVfVgaIvl0hGZYLn2H0BTsTwZEjkJjtGnUjpULg0kpxkkkKHWCVb2vXPWcyFp1p8nKpnKw6GsP1V8dSex5wTxZjKEhXudVgdgbx99cLViGv01Vs6p51DMF6JBuzAj0nvUCq9C..5pBKCpJOhVdKXpsr0wI0B8lYM6ubxU+Kmc4JPJIpbEcy2OM4pmT2WtZRgM8jpDDPJhIQMmPeUy2dO89VFpIT10JEAq.An474TPGvK8LDcduXEil0m3vY54jLzzB9mxgycwnabpo+ksUyCKqM+peQ8Lm065O5RVdfmHS45jlGX.Tz03Ag2gaczSWJHOEGAtK.VRVQ2VyHQn2JIjnUBkneKgs1X0MDoCj3aKtjggnIf7NhVc5rXLQY4JJRUJIonTLonL3VjbAEohYNjROF736DzLivIn4PmfdOxI6YoZyGDt3tmh+0yHDzhnn2+QhXodZi3IFsXkx0JTcDSTl+K+Md9u.i16iiCZgujuqEr7QrilK.gaS2.zH9pro0QPyvVnPe9g5dOJUk4hv.GWqdOvVs+95ZNQZ5pLKiK0uOfo3xYdeSV1PU6.nq1EvQKpiHkqQ+oZUoJ0jpv7hpkU2t.eATlFomQFkmuIHo36IziInuNbzRvnAUtN3pVSzBPzdpwZ97f3kS2ayvQQwu70LayM1ki4.zsFlBluCUUn2dCbwsCayJnHAqIJWplxKckNpnKvq.++8.dsCBJqXnC+l3NlFmj6P9SpUjTULTkzywig74d9iilYB+sho4ZsZsw1OnY7vV+mhCgO6uKK66vv2sxT26phkjJVnZ0jf5PDEFyj6b0j4FLIhca9gZKh4.dAtuOGp8rcGlwsOVKgwMKNzZ5qr389AeMMcOIxkZwxPr7YApJTRtV0h0RBUQ43i211DW76lBnglvBxjeAQ.vVp6wukG+IBuX265AfWSXssevFauVLX72+4IfwOItPWRYKVEUpUt.l.fwXCSOGQRPVSHor1PME9ZnoP1w.Kkkp4p8rHZ4hXP7VBLyIMGxVndxoBgOe6vbB.KImOVFmvGihfR0YFb+28L3tps9gwrmxNbFQJZmAt8G3FonkgPIXrmnINfdxq1Ey4.ewOvvZOUikarUjf+csIpP.Kc8rdFVglpAIHs.AESOEwK0yZfo6VCP2zLzIQdgUL.y3TKuqjBQsokFZI2L1jcuAcSX8FLFimApGr4PnJ73zElqAVBJveoh2u4kcB7WTBJx6WT7qSwujB9kTbQI3eimvhQru+ap9ImrYz8U4Y6wspu9ACSsYtUSI2nAd.WPXMpKmhV1hs0cn+Jl1v9Cr6RDAdftgH5WFosXGBD9jMIdjeonSv2zUQkRURKxOEvUZoRRxYwc4jR+izG42XLNbUbdHqwAm2pe8gGQd1A5UqGIR8EhFo9B04xMCipDAhBlnYFiqUrV4JXBYSlpwZPMRJURpnQQtPU4ZkGyjz3QesnzWVXSQhw9VBZz1imHsVHtGIN6q406olqC+rYLkfi6Pi0Nar+3GJNts.25Bm4mHMMAL+aHfzzkUV+bLp6BgweEZeOB1t1yKaO1wXbHK4+stWDb8bwR5aHWeVg.R5RGO+5gz1XywmUv0us1Q41PbPjd5srLOmVneyr5qr7H8U9pBK8nU2XmuA4pbPTs4mLRLsixq46fdMy9fK9ljSyxOGNMG3aXfOyAkD3xbX9j38XNzqRdGlCJk2eYN+Xi4vLWMQ7XNr7g4xb3abg3ybpD1KTmlyrF.kQpA3JzTA+xQAvPSPy4kBfIFiLHeaTA.WhMir9ubzLvGemzCaEJFD+T1RRjL4CqOxEtJwW3RWjBrqOctXBCiZhcK+IFaip4mWebuSYdMm.eihkSJmK14TlEvKLRA7YASbs1YqkZswNa+J6brSKRXPjGyCXCWVf8IASaBiWDEH+h+93.4Wc3odXQjKVsTsBEqUqPVvupkTJm1Y2JovPVM18bIyUbnxba5IyIHrUiLj+wSt37C3hPz5FiPz5ZTQq9m1mvRrseCPozDm5+zwTbRQtbQkxRUKGSb55BEgknUKVsPFjdJ5I8LsfMo6.CuS3VlEel6z+tDB1tAinwh8a+GitAkLAnIENdzgbsb8rlQppkKIKWMkvmBBrJCYjJpH0HyF0P2Ht2L7vX68YZ7pci6Lsab2IAPdterpOm+DfNMV+XtiHSNFmPRZrcYCnhcBAtoPzlEyrWBvSZTmI8ZRkqIUohx38UC4O7LETWQXOKi1dmsf+qIXQsgGfP7K0fo2IRLXPMg2XDK4rBddyhFyC9JzKPD6flGsR7y91IQm1V2SMWjpBKdmNc.hmdZGBZzRsamNItK8KRO85VkXPbGRcqqdnkMfl38pRz.RoT1FvztMYYpXDe0aOnGCHPZmcxLYOSOgF9mJB+v4JD6m6OlkiwvwNNGP7AKAw4F.MQNQm9QMx9m2VtTP6Xz1tVG4c7QCZYY+fIS7uAssInfVa+kUsWFhTtc3wHUofTjwqjTYunOKG11.QpXMtRwnMVtlbhF6yZRsChNWUJFo4YdShdiDeyewMv9w+5mCCrAYs7MEn8KaOhnCm3drwK66Kz4hU3TzJb1+dbdivNitBeYCKsChpcj+LJ7z2aXlQZ7aFo2ImMyHrCLYwpRJkKmIvX7rImI++ecpiOr6WlWjeZ9o55hRrZtX8YYDgBjDqlkCqtvgnLI8TsbYY4RUKlDYRmuNlBPIuDqfXkwqVF7Rpg+N0BOlsdUfaxB+EYEdYUAlobOgeaAN2tnsxJIdagF5tZ6mNMNQJzHdpVu.nwI8S+zZc5PzbCIvoDV+CdAbWjcsfKGNcLIwOve3ibdoGxUDG8JSA7VQMBL89w+JFR4RjaCyCI1tMvCmdbPdxLOKkO8Y4TYVR.mRhWpkVui.ElurSjTV+kah7V3GIwKIRbWqAXjZrOEsb4E.uxi94Tg2kQSf1oYOK4e2F0jX1l9vWC+3UoL9bduJk8qLWxk1+EBrcfJDLBz9i.xa4UsXP8hAufzob4P9kY8xgrelubHiu1eprs1eDWFjSco6xfLqxpuVBViyKPw0HlItMiLED1b8c7PJ32BIL4QSXK68wHA0utM4mMfXpwU+0piRHaXx6cj+mEt2kKUPOsIoKLl7kzh.94z7DSMdgwl8rrb2mlZDd4t6VG+tuYGHt17cRi8UcHrPUizMP21xh8cGsBFxPDCYcMsrIrqPtHo9ktI4Aew6nyeMcI8Y4S8mJTt3hvOc9qv+esUf+WgcNeddbbRYD1OmHyRonjP.KGkItDp2mQkABdWRoxS0qzI+FsWoujrNBA0gWOjtzqgT5T7ldkvtYRkekIvWll.OsHIm3UQRdYJRRA+84z+VY0KNxvav2HDAr7N3tq0IX0J6RtN+uRH7FSsuMASlQKK7lZYAmfyX08E2CsFi4tH40rp2gUjlhuEz7TfbVtMVux4j4zWHp2BtOWysMw8H71f.4Qd+dt7WkwPbnf7G04Xf7I1NzCA6UEjVD9ubKQ21Nqd808jkANEsLHV8S5uuE9s5lmscT.eyiZXGJMe5+gpNsT0MPg+lCb5CD3NlTMpZdGSosYes5rSR1I3UBNtHRyOniE01OLIDbzZnvChvXm3q3jgS.M0iloK7ZkeRrd1rmMZrqV8dfpMV2GYzectQO7UNaC3DbC3rBcoNv+Q8.uMRLesIKxU8XMZSEpsokpcWhqi20ypo+GuNkLXmT2vqQ5bMhdRcCNDz43tRqwdx66zkcLGcRTB7L8V5.0s71fEmftkoSH7rGC1RL8tqJDPIrbaodr2yWQPtLTPyfyHrffL7LBaWUf06QZYNtac1b4hBxgSvTA4vpGOVZLPgScE+S4PGynfA1mgSX5SASWuKo3HH0U3PpoFNREBLbbrkF.wW.5j7M5ObPuTjtRAw7fapEzO.oEKWPplRsJkqJUsTwJ0p3wDnl0xEgHxkNEeEAknj7UEphWZLd+AM3A1vxIJSNn5hEptX0g0cCG.vKNEl0zfdBH+RJieOcMglfgE01Q5nxEOKcj22YxoHsxy0iTC0.J9D3dvDLg4MbdLVqlpgeOBZUet6fksrNnmJ0fvY59b9Es24uluyLAWn6doqJ06tMdGttvcQGyGvVrqwmvTGfKUZYqpc.94yvMTolpADMsn6AI+eBUXmRa58..FbJ+aSND37Q6ATySveEUneLJL3l9gnv9UCXribkoaPIlfaL8WEqwklcsJhizS6SirsjYMS1c6VvFAPumK7KMpS0aYYZ46kFu7CrnsaWTkVHsm5DZI7uvEGvmqrcIFDUGB+VjuI3mjpc7k.meIdJeF4WeWAF4JhqXE+y2ca7U404kkkCkWY43UVN91pkCkWY43UVN9VukiWDiQOUMaqORikoQ5eeBok.yaSpd3oE1BeVL3O.RrXHwLQ8QZZ9IYI81nbFZSgyPaJdFZSoyPaJeFZSkyPapdpsAMt3kgEZ5wvusR++bekK+04ePH+UitRg+OfizwxK6PLgAOypg2WDTypbVmGXXj3cvBi8dXNbvm+29d29duy+20qSGSXJgk8o28O7f+2O4e.0Iaqu2.WRhqMY14uhsdM2oL0l47ap8j5Yap8j59SMd6MmxTK9U8aj41VMVism64C7kBJ8+GzyayCJ
-
Another problem i am facing is updating a selection after init without re-compile.
this needs to update on selection changed
inline function onScriptAudioWaveform1Control(component, value) { ScriptFX1.getAudioFile(0).setRange(ScriptAudioWaveform1.getRangeStart(), ScriptAudioWaveform1.getRangeEnd()); Console.print("fire"); }; Content.getComponent("ScriptAudioWaveform1").setControlCallback(onScriptAudioWaveform1Control);
-
I think you're massively overcomplicating things here. Connect the waveform to the actual target like this:
const var af0 = Synth.getAudioSampleProcessor("Audio Loop Player1").getAudioFile(0); const var af1 = Synth.getAudioSampleProcessor("Script FX1").getAudioFile(0); af0.linkTo(af1);
and it should do all the restoring & syncing for you. If you want to clear the sample, just pass in an empty string into the
loadFile()
method. -
@Christoph-Hart thanks for getting back to me. really all i am trying to do is check sampleLength on file insert change. for example:
if(af1.getSampleLength() > 100000){ af1.setFile(value); //set the file ScriptLabel1.showControl(false); //dont show error } if(af1.getSampleLength() < 100000){ af1.setFile(1); //remove file to default ScriptLabel1.showControl(true); //show error }
how can i do this check every time the file is changed?
-
@ospfeigrp
I worked out how to do it but it's very hacky and poor.
i ended up using my own file browser with hidden scriptpanelHiseSnippet 2818.3oc6astaabbEdWIMxhzwNwwNEEEn.aEJLnZUY4RcgRInMThRxUHRVrlJNAHtPXztCIWnk6vt6PcItFHn+p+quD8AoOB8AnODAnO.smyL6kYoHkkT70FQGKy4147ctLmyYlQoYH2gEEwCMLKr+Y8YFle.o0YAhtM5R8BL1dCCyaQ5AecAi0OqOMJh4ZXZN4ivAMKLkg7y2+4qS8oANrrtLLdJ2ygsiWOOQVuMq+Ed99aQcY660Sa1KVeaGdPCtOe..jIIUL5ScNh1g8XJNsIHFlSuoqmfG1RPErHCyoVm6dVqt7SBTy+odQdG5yvF1Fs.Bo5dKtuKhXrWiFc87calHvQFFlyzLS7mTI9OfrqmqWZ+YpgORNfU1Jz0GlSjGdSlCd15vqhF7FAjL0fDQAo6QZ4D50WjMBhmaS1NPvBaSA0tNTd7fdqMv0iukmOhDhoInfUDvXh+CgzfCKKPTtG8H1VgPiTxTZ4JUl2B9wbeVQXVQbeVYGeFMrDzAXehDVGSCsjTeGNueSe5YrPaqemkziobGlPNVKZu99rTzVZVYuV3RrhWyr4nnBcAbWFRHVjWzkhrpkYs0WOD4FBfUuF.r5n.XSZ.yGwUhJDnWCdu97.nQBbTSBWdwQJVkiXBzzTZXThTCGH.b4KMGt9L9u+567UTgSWf2aFzwK.rKgLvSa8PN00gFAFvROunk0rdty9oVyBS2RNeV3ryicSC6DAC7My5j.2Ym2ZV1w3W9SEeAxrDVf3ay.J3r9GGvFvJIBGvxMNUHnNc2mmJ46xGDw1DoUTIcc.vg078sZP88OD1MGgrTNWqc7.DGvBsZykxVlxNxmKPy0H0bIlOo5qRdP45lPzRy9DV6PVT2sFD3H73AHecFDI38rZCqz5vP9IQRMS63YTJUsLukToLWwmaYYU74EK30tjrmxNhP+Mf8yVO7gVw8364bDycNXVER1tzOzCcE1kerWPGqHAMT7aYAtVgzfNLTLK7hh5DUQBqG9KrxykQQzXbachWfK+DKdePZckzr.pQZcFH+8JqlkUIst1fEcjf2edq1T+HFnM9UkOgdLnVRjeqRsmyB4Xgg2am5s1trf2R..oijxk2ZfueSpn6bR9iRz4VJXtTaz1gEzQzszbV+dK6JxORwqPgKdCxKgk3eeg7m40SW7xj+G3vC+7G31yWf+YtOypX7mTkIO3wbAaufRygNPvrrFdn1sG4XXXkPtuO3COpgwTlgWzBKELn2grv4gPF9vl1jIBIKymbhL9jS54NcTQ4zlHOX6.Owdfi23xnZDGZD91Wt8FTAEynE2GLu9rPgGBAyMXGCkGnxuUfD6gJma7NQntCgbz6PzBpX3A43tqdO1FmlVGw28z5mk13e1o9IdthtocT+aq2k40oaV8He2Q0gfS7SRCQgbqAtmLxZu.+yximaqvymDycoCxWQOlAAw5Iw0OYTiHwGAyAabVxWhwEw7e.MSvDw7eCC0mFBLSiqCIrQ.Y2NnIDeiIvr8LYnZYh+9I1gsckUwklczHBLgnuqpZJyIMzpwXJkM.ptg6NvmJxWxCVmW7.fqVt5LvxFBh7DmoWG3qr5ftrP7djldPBfQiwIFAFAGxWGXLt5w6P1rcaliHCfSQ15qe8TpnN6ueB6SCawTUI9.x4K9JmJJek7+qKak78uzUxCAWc.yCS2MQZy1OD1xAgo0YEByMSboy59Ibt.ibpeRBUtkVXJVf74lMjKMLJOExb+mkz3Se1WBw5idFi6EveVbvmm4b7oNGiYFM5gpD0V0dT412+5e4iL7ArIYWxX9Rv5lLt4jWzQTrulGQYp24Nhx6AQOxcJpBIXrkG5wrYvwLeX+gDieLj5oMcfuHo2baNlbWd.ueWdfmSd+Kn7hNcXg5XejBzZXsxGk0yCp+DFbfpHMG4eY8cf54ogCuE4JnKru75hKxd8SIJ3Zg6nsd+Mp+j++cT+mvGHfnl6RAmPL1Dbd+VPvVGFv8.nFA4Y9m.KES0tRR3pVvAQjM9uvm3AsSuf.XP6jA0EwYRDwVXwuB4Aokh3GF2i5r01Wv0C8ZHoxMwZu7wZm3lJ0dKumcTWpWw3BzAdhLOW85W1qyy7uQxNFX+PFd3g84XUdkhjUG8D.3yacnO24nVdeK67mcL9LCqiynjSb.jqyQLm9UT1p2Hg2xNj5iYhS3gGIsQweGN3oxfDIUxGz9T.9P0hnGq4sHUJC+wXM4wFgSo4E6KKELYuM49mkTyf4jp4j.905wGDHRjf+.MZepmO592ZPDbpZ28BjwTcXJ2uGKqIfrE0ATsmgWhAtMBOWN3yxBK6j56lCsYtOnNFIRRnSklBvTO4YKw6UeRbbk7K4lT3mg33Cm+z1X7rFGeHNg16FX+Qw1YncSZHT0s.zep9dYnQ6RBTaavVPPgITR41QOEG0g5a7TzCL1MZHYXZbx2MVFNvA8wLdIJwwqy9.xhUWo1pUqs3hKNBQpxEqNmVcU88fbEJFkCGehFNxlx40pCyxKqMcpXOHDD2gzwmeH0+fdb2pmWcDxJmM9UyEZprX56SC6vDHqm.1jEvbTaNjdx30RPH8F3ajJNXW2hnrjFibA2kzIjFnxkT0N+JKRZxgTF3BP.Aw6NM4Jm1vKpODFb8APLdUD3b8.s2NvkcJFz+2.kBnoeQutjV.d20KH1Qifa8M1kdZb6oI1KCczRv5iwVwIXCsUuXlh54VogtqsglgQoSxYPJR5A+aYr+qjkXhwJHSMdAQG2ptVaffC.HsRowg7gLNizmJcBWwvRCYP0xAp2x.q1WZHQZpIiRJpIilpaMPW8L8UU8n4ucNMzXcYVJGophdLGwNQopvxKqTd4EprZ0Uqs7JUVYoEqsZsXSgrZIibfvXzHdZR07P9VjUpTIFz2l7nPHnhzEMd36SVbox.6x9r73H83UF3k1pJXKkoUJWckUt5TZFRKn1Epq91kkuNjYClXP.6Rtq6NjH40Ab.Mr5PgCe.gEea.kSmyUy6kbgow9PrnFMWwTezIj0wbh7xwxBjp2Q70oGGmLZnoe9Qu3vhllwrFcCWYokVoxB0pYuZspKuzxKb9XlSnGybSnNPW3vTRRiBc9MWSoY9ld7luYH3KBkKLJhk3mIph8hqVw1dY6ysmYgJ1UV.lvpqtxhqVqhcrGP78sDS7OlTaox0jzwt5JUrqsZNup2Tvp.I4Retb3h7x71GUJmogC.JNmu+UbKzchUfMFDd7vzZD43yYwMtxUtAt6uRIfV1ugTh14jWYooiPEdabaYb8qiMr6EZbpNFiycfHb9dhVdcBxPuZ5+vUAqy4G0iJOCy05M2dKcgR+LxijkalcSAIUBKUY+73gsRG2JcB2bWSuUuqo6eNSSzaqq1+dJXRH6r0dwZJ3aY.y9kCr085y8o3IBlbqP1ed.b5aswmoN5grclCV8+d8jW1MdiTJk1g0A3odO6y50miu+ktyXqdbtnKrgKue2CpOx2956+7lcgTG60ts7Ae0HCP1846J+c+oAd8M5Ctcm.n3a0uFB582P9qAS5iViosw3Upb3eCY4EKCeZ+qwetZC3GKr2ql1Fu5dMiItzdonmPpIG8IdG7gLTnL0w6cTTdyys7FK63U4g7q9i6GxGBdc9GpO4c4G2C0K8MuIg96+OTe0adn9adn9ezm43MAO5QcB4G3nd.P4+WSH6Aj6.Yb3Bjcw1V1FGqevX78LNvwI4J1G8ZpdMVyBWi0r30XMKcMVyxWi0T6ZrlUtv0fIWhugZ4iiXrayMU03atY1uunF+OL4vDkB