ToolBox2: Alpha02 is here!

question about WIP-comparison patch
(sorry about my color scheme here, but looking at gray on black all day influences my mood quite a bit :grimacing:)

first a screen shot with some of my additional annotations, might be helpful for @tremblap to see.

when choosing in the feature extractor just the mfcc’s, I’m getting error messages

image

correction: probably not related to the choice of the features, rather that my segmentation created shorter segments than one window size

I need to put some filter to exclude the very short segments

this is the most brittle patch (WiP = Work in progress) so I’ll finish with this this afternoon…

did you see the working arbitrary dimension one?

not sure what you refer to

Conceptual question, just as a heads-up to our discussion later:
when concatenating all these different descriptors and their derivatives into one long list - how is normalization and standardization helping to make the dataset ‘better’?
Have you experimented with norm./stand. each descriptor individually and concatenate those results into one long buffer?

Loving the new dimensionality stuff.

Really simple SC request: could you replace asInt with asInteger in the code, so it doesn’t throw a billion warnings up when the code that uses asInt is called? It shouldn’t change functionality.

will do. Next version is SC heavy so that should go away. I thought I removed it all but maybe I forgot a few…

JIT-NMF-Classifier question

after doing the training of the three classes and copying (5) each training, I’m switching to play and hit the source sounds (1).
But all activations keep showing nan

is there one more step to do after finishing training?

the 3 channels of filters have data, but the activations buffer seems still to be in its initialization state

In the short presentation that I gave in the previous plenary I demonstrated some dimensionality reduction techniques I was using which assisted in making more salient clusters out of MFCCs. In my code, I flatten out my stats and then standardise the data set as a series of one dimensional arrays before passing it on to any kind of dimension reduction.

The thing to be mindful of is every derivative level of stats introduce new scales to your data making it potentially more unruly. Data that behaves well in its stationary form tends to taper at each derivative level making the scale of your data become smaller and smaller as you flatten it out. Wildly varying data still tapers but can introduce more banditos as you go. Generally though, as you go toward the 4th derivative it;s likely you will run into nans and infs.

My thinking is, the point of flattening out a list and then standardising that data is you are trying to make a composite feature vector out of a number of things giving somewhat equal representation to each of those sample points. In my case, taking the stats of MFCCs was trying to incorporate some kind of representation in how the data transforms in time, and how the transformation transforms in time. It makes sense to me in that scenario to standardise all of these numbers together because ultimately you are passing it on to an algorithm which decides which numbers, across all the arrays of feature vectors best represent and can describe the variance in your information. It might be the case that taking the stats of a standardised feature set produces similar results, but I was mostly following intuition and not trying to get stuck in testing all the combinations and permutations. One thing that really failed for me was trying to create composite feature vectors out of lots of different descriptors. I did try creating a feature vector out of almost every essentia library descriptor on my fork but I think it suffered overfitting or something. My feeling is that lots of the data was polluting the dimension reduction process because the models of the descriptors were so poorly suited to the kinds of sounds I was analysing.

Anyway, that doesn’t necessarily answer your question but perhaps it demonstrates how one can connect musical needs with a pipeline of preprocessing and transformation.

2 Likes

Thanks, that is very helpful input!

Hi Hans, maybe this got dealt with on Friday, but as far I can see from the above, these are identical. fluid.normalize / standardize are processing feature-wise, so there shouldn’t be a difference.

this code did work with Alpha01, not it throws the error

print: addPoint 64 htmfcc.buffer
fluid.dataset~: doesn’t understand “addPoint”


----------begin_max5_patcher----------
18730.3oc68ksaakkkkOGwWAg5WsUelGpmpr5gpeo.JzcCznQhBFzRzNTjZp
knhgpPke68Zs1GJSJSQQQKImYk2H.rkEGt2y4rGV60d39u8i+vQe7peawsGM
6ua1eb1O7C+a+3O7C5WwewOL92+vQWL+2N4742p21QWd2EebwMG8N6kt5tkm
uX4xe+5E12wQG8tYG8w4W94il8uLdKWOe4I+zYW94ObyhSVZuqf2cr6cyJdO
+qr9GA7y2+YN6Tcst5i+768wUWKbkO6Rb0z8g+9u8alewhkKt4CKtb9GOW2F
tu7Ar6O8IB7W9u+i+H+i2smK1Od2xkWc4itXexEZIvkVLp+ru5O25xz+BsL8
Gvx7xE+JtGVcCrbwuoa+itd1oyWN+wOpe5Udq8kU9ic.214B+AKt0ufPJzVR
i0zObzmN67E+xhat8Lbl8k28Obz7qudse8Or1GgaD+7U5Kp8t6+Umco8q72+
qtYwub1pOe79e67avxdIVy2ci1TN52Joi9xWyUmt3lKu6r6OUzQx3VRa9Why
zaud9I1GlmQqd4urQ5s8vdh+o2mz9Zs59xlINc+74WcxeZwoqIUfyqqWb4YW
d8MKtcwkKmubbye+Ke5hOM+tyW9gOc0kKu8r+UcKH8ws75eZbKt0WjKBc++G
t4r4me+J3y2b1oWcIuI13nf+5UWNr3xZUkWewn2wkyudKeXHtf8kG4EuEKx6
t8iyugmTCUjvpWb4UWc9luz8qkyW7okiW95yt7xGrKt7pqe7W7ly97OsiO6G
uBu3E656Vuxse3tKsW8CPnX4Gtc9ur4c3x4me9PEcyu9ea9kmcw7kKVdlcDD
b2+hlYhe51St4pyOei8I6U9ks7JmBg7SV7qmc5xeRWn0EFva+rqWIDcz8mxm
d1mWb6xM+cKm+4a272b6xe21zO5mle4sNW3KuxcebnK+gkKt35ywhYs2W7K+
x0Vzewe05Jxqaiaie+Cr0YVStWKc6VuZIotEqM4aJd+eduX5CLhEV+KbaFx1
hwL2ZuxIWcwEPMcisMcIt7zE+1ZFPFl1G1RNvs.cys9UY2N1drMor1iRw8aG
x+n6PtGcGx+8ZGBlkuc9mWr904duh+Qrzu32u8p6t7zOb1oy7y9W3u3Smbxr
2m5GWCgVrLqVNN0C4bR+xdKTpoY0iSQWoFl8drm4Jkbcl+3bLiWc16cG2hwd
oO68Y7kzR9D+oXI3aY7kbr2Gh9F+oXqGyE9SkrqkyyBG2cMu2iuMeozi7qsW
a3CLqbbMVcQOt13ERt1r9wgbH2q3G5EWNUv6o37wT39ExUzs1oKlO68g3w9V
uiqPnUpMXRnkhc7853UxUq3sfWJlp32Tvei6P+w7Ex3uqAWf2KgRLw2nODJM
9Cce1W4R1Wx4bXFtJwVHyeSNkRtnd2U7J32DxdWVuF1m5XUhWKUKZ4Fp4X.2
ctFVP71+lEvZwY+xBHt9Sy9OCqK2tX43u9v+7kW89+4kK9+8+b9kmBSK9a+v
+i+2u+Ojd+0G+qy+E7o4meii1vZGs9n+3Xt1ZyJ3XLDCErjniqVtmhbQmcvb
A1LawwxtUq9hGaLwXpE6Zgic7djm+0LNevZAN269pCqz5w8fOU05yka37.qX
eMhc6vwEeszByRGiqL1gvwIjVB8YYH+TSMtqmbcdZFNNGfvCeoVYaGo3124p
7an4v638dtS2ss5dJm0MPMg6ObCDvupxy+bp04QZul3e66M753yF79H+6JNS
4NxwkZMRAkpq2wGQmn4die8ceI1R7mpQeIIg9BVM3BfOnqONlKAbQJ3hfkd6
.OU+3NNViqerlw9.tOgRYMh8zDNcfRbC6oAtLqgD1kgVDjScYdHUakHEP88i
y8LviMDCbT9EJWydeAGjwXUaO0Dj4y3bKVvl7r1wUOzenVH9D37dFhDJCoDH
m3wwtOT8Y7tvOjJbeF2aQdh.QgFzDC56Dp1Pg5qOZI1PG1LALtRA68TAKAcR
IvwMboy0qtJr7DNNVK3xF3Q.UeyP4L2ra5tSZ1vzTSmbPHClJnhVG2q79Bx5
5b226QoSGakft8hQbKKQinqSASHnloDQ2GZUImAcdX93vNZ+G1wIaZsS1JOK
5Qt5nYy.9m7PUKGWzw0LVoEX+.KUbJ.UzfsXgFFLegeStFcRKLJKm3f0mbPY
G1kybOhlAC3mbRv2GivnNsLl7tjGBMwRhlIxG2iEXfCl4hwXgRAPnO.S33HG
lC5xvZumgNzVNUgSU3EfVVxPhQmK33uxcVbcL8oViZL7tIURzzKLPh8dIOjo
dbISGEumBTNZJJhaAnai2ADHcAY0nRIX7QzpIVi8DUiivGi27X07RRLWwIM+
xwMbje4XsgsnC73bWZp40NOwQoyWZP8nCKa3fTxp3TE6I3bqAGjYsm1nXq4i
0W4sLM6BExwYKrRxWK5xThFJzPW38TcrfuGyKkV+vQWVq6dp35RygGCX2EG+
vBeuPi2MemG53CzgA.5GnBgkPQ1ty31caGn3pCKGR0mNqwkrQm7TMy6LGE0T
LJigP7Hl3q4RzOH+UodGKZ91gRdmdGnjMOrfykjvC.+HIJffSnlTowgGMdDf
OgXWeKU.xHKGsNOL2PgGHhz3cdB9gnsB74a3xdXGr+W9OsiC1x5flvtXJmHh
Df2o66zLRLAQ3nqUoVWFHAb1oTsEn1rmdWAVJAq.molSoL1GCxpI7EYJH8J9
I4VBhnxOMvXU6x0C8nB8TbbRGvQCJiOmG9khi8.XkrI6j.Bf40GdEgEzNu0.
Hn7VOjCDkiGp7vsL+PzPjGZTDYVHxCqrCFUzgCD7hdyDRxIIM7W0jdSPcNL7
JlgbnYmtDoNdzUk8FdH2MbWsrDdKth2VOPfxjN6XqQnTnfK+1.nL8Vve0Nzi
3cbBWW2IqCBY.1Bj0KEdJk34FbpBclDc2ACu3jBdI8.LDVJYd1zvAGDHvV98
FsAPEdbQAVbfCcWfvl9hSDrcqHzwcferH3TPEulMmxc9mPbpDENKdg0FdAPp
SBkboPYnDfsDJdYSEn8.R6so+Rv3YZPF2RYZ6rDkCitOlSBrNNy6xbaU6+X+
Ff0RzLO11aUZ7DxwAoy2fADgeKgynYxPhcCjbYB9iRpXgSGPvXDLKKivPAuL
PE6JcW1zVWYg.gNqfKf0fCDA0+0cb1113rkHJvsEhi.26.1Ck1Q3ygRn3Fv9
h5rA2fHFjFwZf0JUa7.xUCtOEZjLTORTmB3AyVPRPIDHxnWHXgCWAXRGtq6Y
ADAl16xkWzG42Yv4BV.Rc.LyL2CDGIdP0AnT33MdLQfjMLugZrssSWpXEKZy
C56ByqqZ3jZYYvAdJicoImIDfJ.xG5lNJjDnNNtYElJbNzj9F.8kiz7SP.Jo
CnRNIbuz7hr9R3fTtiNCntegf+kQaG1F7lsqhth.bc5vNW+usiy09ZmqYdHA
rScxjKt5PuD20DJiW6JMBv2YxcDtaVdUavuFE7IfYF8CAGzyFr0H2TDBipL7
vnUxBLUQPnwQbgV+PXssjDcXVBBHvGYFFQDyPEo3Tkh4XGDXHyzDKroEKxkK
.m68a+PE2qzvBblFyRhBFVD3EbL2svfhiyWnTGjY3ZFQqS8H.50YNpKxQaHD
A1GdhvCOJM5FR3HVGEZNBjyq6aD8iyhN1ULaATbonsjfqHjwQbf5oQgHCu6.
OX2EPJuacjwL9B.J2Oqws0lPZ.PIvLBbsfPSfUQGPPg2F.+QUpJYHnaKLhQf
BtvpMPVyiVfFFR2MKtQD.SQ5twbW9Y4q1J1G0Tfv5EhuVHg3PnmyRunT8Qy3
Ed+xMK.b14sQljNjn0B.wiFD1h6VfoFJ1PtiuWp4A27lwSfjM1EnJHaHIR.0
S+.BJuoPmgUIYtLDo6D5rJXdlgKeacAm1lpHL7KoP3zMIQCFGfNLA1KCYEN3
i0fVS4l9MgJvgGGA4FOPus+22EfJ+5zP0oWkJ8..DUcwhCPQJJWfuvjjkwMU
jAIH.Td.FTznvvOKFCMHPGgMB1BCvbHNQQz3dIrSNrZZiDGrRiFPdG7A.HIM
mEGQHQdP3YLO3UjC8AFaxZ.wpK6wL1ad231p21.rO.S7P0EPDLlBx3FPv7ZD
QjPvV4WFBpySyicg+Fw45ESUH9lRiZuEnaRYMmh9DetbNkjpOuCGvDIEbAHL
kj2YXUVANo3accIijDdbHDYgXWJEZb7vNS20Q5FzO4qzVCIZqhyDnyzMql3f
KwHI7XADIqNYDgWR.NaHzOGsV4gsJZOsSDBcimB.DrxHcfZrOjLuLv.H7dQ2
tXqyNv.NTC8JPRDk+VDlShzIBsHxQomDOgyvLuIfZDgLQJFQD1LnL7tYvXaM
HHmBlibbIek.3PJFr3rbwlcQwhhv3S7.D+cyIqjVbVEyrMf.1jPE93E4OBed
oNSWUUYdEl6jgGOzu6Fl6P2nWDwH1Gnl6b4yOeNJ.1P684dvl1GBn7wGPrHz
JPTlyZUgbuH9Z.tHibIfIEGQP4E6lHtWrPJGOhAJqHfgmwHEdIb+BslBSs.I
XbrYh36kukVHPTCLf2Jibxyfbfyv93jiJYH1YD5D17JTvBQQRFGChTRB.mAd
Ja6graqHiaTsHQA.7gyxwYzrkCIPy4JgJTUL4snXnHhaLoTVkNIfEaAlnCL3
nkXsnEFxRdfvJyFEHYC.e1jT6zXtt.U915DkHc5lKlWkdhXoNnyxcw3jecJm
5EJ3SKIsLi9KUnuCxD.zaiL3BHo4vhkwqTblsKnfwfIXXIvzYeEYDxEHBzft
PTnNHfvnEVCM0gfBClQQnuBT27viYFnRJGfABXYOP3NoDboSenvbF80g2rfH
CLT4GC9Kfk0gXhyWj0TX9uKBOOlPWkQ9TKI8RHFnyR3yULHT5c3SQf9ZdSOq
UcV.3HrUwOBbL2HDY3CwKdMvmoHy5MJxXXBT3YABwzv6BUA4Q0wHtzWRqUNv
SycpYl2vlqXjkoooQhXbIAbE+xBPLVD9TXowYn5.H31fZbDXurPBYRdS23+d
.sunsRbr4XNWFXmJRoBlej8GnwAamEsQi0MS5CY+gJnxmEh.xo2VkLTIOysn
qpfHfAvhgGMFZwsSlHwujXT3Ny9WhwcDYJGDwKGmLElXIJD.LHFw8Msd15VL
mjCYoe2LRX.pMfopGDyiMkwBXjIYViCDIhndZD6EDSs3TgG+bKJFmHhLwLbs
LBMOmKGnB6NodxuN2SYbWgUBrx2HodotBfjv3iF6MHbAGoADVMYnbRATtlps
nkPL7g3oKN0fKXkvC92AYDFFcb8Aah.Sovh.MSFJGN+aPTnw.f8LmCgdHDLm
bQuHyMy7AoON1bqEYinAnNaG.LrP3KTYbPhaRnUfVt9NCTQhGbDCUTTjQRjn
Ki5JfaoxPiMYr.B0PAaxoDaQjtMKL2HrXMRJAcQlrzK3G.bqQK4B3NklDfwD
CebuPTBG1A5tNOWmooBNEaABjjmm9RV4w.qI.YLJvJ.4WKaP8iFSuNxdsk.V
DLR2H3CPfZVfOH.Ii6QfZtaLmiHJbdCFamYtQQJB7qASytY40Chz4fPcgugd
UIOhHwRR6nmoMNZfF9mqPRqFUxB1xIK8lBc1BTQMGwduRXEsmj7MiEOFd4vI
cMOn5Nqf1orVyBqoIZmgoW.UhBX3ltJo7lWPvBH5UwMGTvKIKJ8BI4fZlvUZ
JNrhoTdPqevTnk4P72UwNIbuWpG1w7t3bxuNoS0HAV5ExWBAlZUJRAbJWoKT
3gsPNTkG1lRcCf9xMlDrolIyKEF0c1fvCG0UCCLybpRHD1ryhyMwtm7tgyL3
SmtPoFh7+Q.uQCGBvYYBQvFeZjTjb2n2Mjr7dAq.vt71Nio4CmbOi31zU0A6
fQiJ+dxbvvrBKzvF7VxToQtXXXwvy7pR09TvbSNfV6fwLAQjvfpq7Ka7JiHv
5YiQMiMpnwNNjDBhuZ.yuEjOcOgvcPmr6h0IeeCetIxCACWoSNDy03Hvzh3C
Ow7lqba2UxJjaPuyRAYBVZxprIpPmUdnwJFdkqCE3zpX4p.jqENO2UKR9.uX
oZT2fv+ESjQxVq3NtU8iZt.xJdEkDNTYjt7trEUPi.gPtW2NtXpyRf1PVnYh
Ivb5Xit1MduxklkzGG9EV5wogKK5Hrmz8B.LEqvQrV0zeKbYRcX5RV.DZiH2
gotpcERAxOG8jSBUsyxbXjmCGSP86sfARJPAOSf0gcNuKvUA2CNnc4H7IvbB
jPb3hv7lzlcLo.VPYX6pjF4gISte3wGr5XPf.hogN.zpYFNXvIsUdbpMi1bB
xhwOXlAh0PWEkAhDVb5QaWDQDfVFkAN7kls7pRWfpVIfhKyCSWUYwVoXDloq
Uq.PRASER0Jy.VSZjHtVnMRlHL0HrOHntrHWzReihDJySZWMGFoEpTULgtpp
eB5OiLpKtGDlqBiIW4uZXrfxnB7I9NBwwWRZ.AfXBNni2cRAUXcJnpLyw8DT
YfiXZdVgklI8PVTsQBQIELyhL0xJYyjTAyNb1yxagKIfBx2rbnjFrFB+oNkX
2.YBxpjHWPkORijEv8O7SLZjgNArIKsG.8Dv7lkj9G1XhDfhQmLKJI5GtzZa
+.tpxUR48lg+Ru9Mk.Vx2+pxgHMjgnCkhcyVUt2Br.rjwYXiNXGR.RQXX3v3
DGaIQcRCiL1knCzWpnpfAPwUrGpJlsqHBhKoRxJDElxXPL4vefbSdXGw65Dd
cFoZAk+NDwTsyRBv3NoSGH.IIKhFGueXsc0g5mxVN154MFMZCC6YiewTQVaQ
.mvbEeUlb9NKQIUFBARW.MN1M9yYtwShWUppWaF9K.iJjXoV.yhMEqsuvLFL
itSX7rHfbVhNYoKW7sGAokqTH+JjGXq1kZBVGQIVsLolTUVQ5SczXOKeG7+U
CRcldrSp3enB.r4XdcypVuX5mhVzUgjxBM0OyUCtVOWr3s.1hjBV.dwC1uhQ
waNvIHrgaCOr8cXGx+i65P9gjS4.P.3UswpWAvHFPZ7EyVbvGHPVDpLTFTHp
PI.VmE0hHLprxfeGx7VLQ.43JrvE9xz4J.oPIYl4NlOXlFXRzENGvQUswyLV
yRvcIviWG5LMXmOHylJcYjSrPSDVAgs314bjREzpHYcpHFiqh2WRqedDkRmG
UNQ8XkZsHnGqZ9h93H4pH9NCQFLkaDIKvyYkHIlNrlkiV.WZTJTvkl4rG3M7
VUK3Zoh4knykKIrFQeXI1u26OyS179TNiaTdTLUIXWuMqkjLsffnyBUvoLpk
Bq5BtdPnaFe4.+fbUwzb0TophuiPTYkuwH.L0WDroEpTfktg7JGpvyYzLa0Z
F2PPZhPUhTDiZJP0rfczrx+emIgUUAJIJoxL7GIoSzu31zcKTuQxCUuswVXZ
bFUE0HCPp5PH+VcwfuxuthcUXrvIQnGM5qblGWbMMpnxElpNd+PfnJovtABR
2n9Db9lUyjkxfcxdrYrifCTJ+GneYe8.OZ2I1pMItBpdQ5xaVC1l8LkEjPOl
sCRiLzAzdK2RIbg1w5GjVYlkXqLGW6Z6SlskhcgPkRFyMMDkjhEBQQ2JrPMv
mGvkGkUJ86iupJ4FCBZLnphRuoR3BOBXsCSzcUIUjToK41lQ4X4XkYPZgYvl
Bb3YziEPL152.veJE8gpEuPMTTYFf3grxYiNDsZjvJXUd5WYwbQ7eLxKVqTQ
iJYRco8laLDd8w6ES+sthXEZefFPhV.jIEi3ActtK5kCkMqnQOP1BcmJEshp
Rkv1SWIqiAW.QwNS+BPLS7fvbWK0rBVDeRhwhA0.q38Au.VFWhjFyvvBLLED
34Ypz5BWjRJpdMDYpqYDIjIWmVVj5jFCk38B9ghOGwIJ8qa0qdf0wBcisUDU
EdmS1z39KygZsMJF3lQXEK0Pmk1+n2psh.K1PdLQCwJMtd44DxWcUdlj+lpn
MMiXaUInhcsQBsRcKgD.RtQhgmUCuU00wfEvD1U7h2rDKYU88zZO2Xhx6Cgy
gMpSJOTi5ERBI66DroX3XYB1RpJVhzpKClz4UgkhPcn.eWUcsSkccLn1IHyx
JV0fbhjCU09BLi4Sdq9O8rd3LihTpfkmRToNh6YlREPTYt2XkIY4AOfcXq.1
cLobRHC.TSauPopTKqn1JyR1iWU+hUVzBNPldfsbt4TVags3vfkwTmU9k2vO
J5myjGKun.elpdBE.EibOtJH.ouStlCCaE.zX0zpaYyPcz2FdigEptAWuaX0
NnC3cR2bXcdqRL8WrLKYLuvZoJskDMW0H5RuJ8jrr8THsSISuqQkW4isWTA8
wn9IuPr0MR7nEZ5v.TULjf0Vdvi+pX7cUqrBYB.iF+vrb8KC.kNisCn325qR
.aUo5mAgY94I76GotKXnnLbtQoqR.67jrV3uR7GmLy0lkVwpguY2PPiUuY7V
MmxLSRVNFfQdBvlFe8ho8LI2REybv4MDVzbnE4DN8LcW.q1pdqjWDP6qtbXD
bbz0Ovi3ccBuN+U.LUuwBMblJLNnWPcoHKZ2bU4CIyp8MoZarEY09yD9zXMi
XA1CUbRGLD1sEF2yHT6D2niVfjLQgVNVBMK.WVeGVFBxsfJlUbjkpEqbKp4R
vrECy0Nqda5IV+bj2wh4rricLm+QNiYkWxum3nIOZdkf8bxbTFY0Rv+RAloJ
wHWL1fKdq.phVs2f0ovj0IPXS5ftt0orkfKDCnAVqqnGnOW3l2Ntyz7nxyUX
3XGFRF0OTObfXl2Esyw04rhTYfnPvEl0Ui2QiNrcZpUmV1QcfjXVc.HJV3DU
wScajhcRpwLVxirgajQW7lShzhbm4dPBxjIKqgBPnOUYJmUOTOO5GLR8uxOV
oKr3HjUV+1.JVVokgQhI9T34gpq.gwIr0L1GXtoX3T.AnNBg0ofURq4fRrCg
eK+uPZUE9hpQWdr.miAwBNjo5FBXDxsWIVHLJ2dUZfxFTuWsrH6Ib.CTLsLH
pxKN+nUurLMRB.LyA.SsUwccVUUG1A7tXeNtNqUMF6UfL90ZT4MHFEYSS3Yd
sgqNqr95LK1jleBmpgC.qrjpMSSh07oOaczUP9RyDCLYIf4Llw64jSWBCNL3
xAl8XVDg9RpORoThVzovAizMa.vyp9UTAJULNEp9d0Ofs.i5ssSrQgbRxlYn
JBfCzmoL7BSDVJj.xqQgrAvDp4XPbZFKnrT0sx10oJgGqTq.rFwKUY3.1dfu
LJJeWz5UEbtI+RPykoJlmjtQ2+wZESZy4gQIJH2Nvy3c1wWqSbUJQJ4v12rZ
R3lncS.UAWZ1lMdwBWm1hZPZnoxW.6APksnH3h0lUcnPc1K1Mh5rt.OyrzG6
JoBDZTmc7l7lQzXwjfslK4zfyJ0CKjSznWYlBZfYCbJfkPHMY5cNPX0.B.k.
2Z4w4YpkgrI7hXshWNKbSpXuD5dE4rnsQkNUJY9QvMhyRnjU0xN5wvn3.A.s
pB4rdDrzxBFt2ZDNBotMpQRlUKUXXwlPmo7Pa8bxvaAKk9C6XcmLNGWmpJli
EDtFT2.1J1JPTaKWYGZTTAFg6yN8Ynym1HfADEqUn9.zM6fVUbSogwVrjY3p
QlKLluHl93p5tMxTQ0.mwFzyJBxTtp3RiDkc1pTltgFxpBdm2ZCV7exlFqo8
.wyCgj11c8RVZFsIfw1H.c6zufUcnkAOb7Sb5VlOrzCHTGT4NobfR3GtrqHe
CVojyVJvniA14s.BHDbykZy5LrRvfCB3ZQq6g..Ai8QGLcqVePkeu9TpSaNr
C4ccFuNoUvIl50hlJcY3Tz3YQIvU3ApLMXrQKnNt5KLctHHFuWIhPUmbiTBI
TurDdvAjKupZyClwvFPSYgGFEwibAh3FFEzLo70p5A5rlElGbKjUI0A2yEO0
pQDOrlMRr1wIFH1NtIFHyV4kr0qrr4Jqpg3JsVZU3VR5YQU.Xhte.vUtMQjr
rD1Cj0LOgfCW7AK54p5WQZBnYDADYqIPoF0U5zTaTIIg0v0ncnRA0qf5vkQZ
pVTJzz4dIUFgNUXwkdPmx6hz43FzWALUN0kLcUcFNxDfOpllTPtHhgrUFGpg
CZCVyYud7dYOMnj+xzg0FrsVUSnBi0tVSss.IGAGjil8CweYM5JCgTkVQOyh
zmFtYoSyxljTSx76kpJ07vNBLrPFRCV5AIbOOqof7iT3UckZAnmXJoMK+e.I
dpMrF4s7F3UmASr.cgPNnpMnpRrff3SYKDuLavV5GksILMnqbSn.gguorU7C
wnUGNsAWz.egQ2AjhJJ9J1If7xk79moY5xdP6brrIsy4hr50Ilvl0atrPM8v
KDUaH0+AKNxXUjFzfBUkoEfAnx2eirvpV2irMlBxcCaE8jpoABSyJAK51xET
QfCnEEGQIylx0rI1..dU1jMV4WLVnN8HybOGKYtswRrkmEVkf0Jau9bHUoyr
t22pYUevZGEXTfHJdupPSmwCkJQKOKtNp3ZUhT09bU.Z2O5hhnAQfkFfFD.A
1rKptz0PWPMfuYiGGz97f.5Txpzt.SrtjCfMHUoljq6C8rcmHq1n5qHuc7fk
M1H8JvJoiAVnn3vFZQ4Yun10TtdHKVrt7aCePI4.G5vj41pHel0+qsRgGKx8
ZmgrJbL3y6pVcmFXMNi3TEwiVQMeLoPzaMJYxMRsVtpZZkIUHW1dg3Trruyu
Saml2.zhYPoHhEXwL0bmhgQV6FAqoCrBpWt.pFqRLZvtw1LPO5slfuZc9.r5
Zrv1pQqtWY1uE+FLNJyeK7AnhoDwFjrouQPIlPMFJ6khC5DcWLNG2r49ZFJR
5ZKPLfMKM23VOJ5iXyZUoVDoorFDKgLSL4dYf0AG6F7BDCiKX.MTIqndfiz9
HIVmHJPA1DTUs5Uoja0uON.hQKBW1ocU1PMZ5oXYcoRFPgJFK+BVdljlR.sp
tcyv9jvbESVWsfcXK+5oQ4ZkpcYNzylaW8ysT73T8XlpUgtQJJPr0sHb.9ZB
EJxKJ0tKkQ8m36V8axL0pIJ.MfEFI5OYFgfzkJvcb8s1XrFetdXK6CSyw0oo
hHNHwDMlV2LmYLQCAsiXaT11x5FzKRRcFzSxPrQVaRnlYkJW6xKYw0s1CQbZ
IpcgaKQ6XA9qhlMZIHql9iX15bj1Xk7uO5s.QrVRhdoSiF0ufydqiqBpp6Hw
30slonPPcoBOIJIiqgFA3KCtIivwpMGaTTtAyXYdnPF6id0kMfowEhJLKNZH
niXl5e4OJYhzT1KDrFUAAxlh1TUvKhuRLcmVmq5jfl371vXfcuPrbXGw6jq4
z5jUE5p1MgiyRmmJQADj38zXmnb+Yq5Kb1S5MAtUkkj0UUF5Fpra8QDhoOo3
8YKbK6R9PXDiIL54Ll74hy5yyPZDfeA3ISltByur0CAI37uN55cVJNLP5trL
r04PznMgwAr4ZjjBZ8wFiCJX4a2U0MZISyIV59xVwC4Z7tQmLUqM.gKgQUuB
4ewIYoEcgwDKQC1B.PTebtGLpN5dKNfXyVeigi36JaDLDfQUH15G3g6tNa8O
LAuxBbi0gXSU9jmrHEyRdGQdvva7xjYSabLu0hzlfxWiHTFAFYy0Dbnz6MKe
90dVQIyHEUNTXWWWalpbEXrrd9zzwwkt1rd6zKvzIaT4Xoio0rjRQFlaiN0i
oZbaFlyhVBNL.BAUT.dK8yzMe1nRppEkhNqYEtanpoVh5vRq6fAXMlVJV2rh
Ed02vdah0Xo1nUFrOEMtzX1OC85HMxVGbh33sFFCHUniFFdDfuKdDhpGNNnC
3cwzbZyoMkFcKLoPbD13SVuGlBdQRAmwI9jQDXMImK7j1wT6wJkZP5NSN3n6
8pgdQLRwjyqBYh9bSNkgP5XJ2GsxKN0U7VzAYRSkjf5hcU3Z7+UcEqxhhkpX
HpJPrEJDAFqtZNxn11Ar3rLN.JaAhvpxfC7.k5hHKquf0rXEinJVrDFozdUz
EHp8dQ.FsLBUS3GFUSYaEiKVisDXY.YU9XZUqNfXdsVIOmES1zdd1ZzufyZA
wVLbffp1EIyo3CBuEF+Xn5HZHOIKT67kpllOZUZsWEt+3taUiHrlTMrREVYd
QY+GvHW007.1QYz+w3DaDaenXk8JoqwHufUNoX2hfQrI1DzCX+ER2XEZcF2K
37rTlYkjbxrVVYMDu0y0tUL.HPlrkXfVVg23DyIP5qqVCvGLhsKbvkn3a8lb
U2UzTd.1yU9c8snXTrh2okkGWsY0hulhBV+sjsPeCkw.agcOUczUQdUB9vAu
wjch8V0AdrtKLUo0ImpwfQEmxNuP0xr85UNLoMzFMLEoI4RfgoxBSjXcE03b
ryvcaF0on0nlC1n.rCsDq.0wxhVAHG9NJHiSIx5kUfSji.KCYH1GqAIaVYpo
BjiQtpjF2k6AD4K6DjhNR70sikxSyJZzFHegohFmg7HXTRMkr7ihXwTQ0wZ4
vJ7JnVBTrJu.shkgGNV+rIUEmYgCjuEi9hHqnUKiGNpN6TSIYcmlZRTk9n7X
HCxRyv71mZipijrB7bS9WYeHXNsw.npxL2vAj.G5dMa5.woJVlsZIodLW0TE
iYZtMZGpHy4WxnUNpb8n5tKZkudgf8UGM2EmqjZwTTyVKFTu5WxN23GSMM0E
yZBCRELR0UOWszA1XMtYiwhL6kEbrS5n3zy3wHsfQHg6FWVYYk1s68A6+IKz
TewRNXJGsnNgK0xnDA3vXTCQAhDRftCVEbTnCxwDQvYMqKPnUSqBMVbY4zrU
QDUol2f3AcpGEXdvT7WUaZm4XmBGNTho1E0xoxFdbYyFmIITER5pS0sHKHmJ
TA81FTRlsvROZ8pL66lPWMuUw7fTqpWqH3JexhQx2ccquxwRajB.19tUywSQ
EDSNZiIJlFd2XvjTE48jDHO4yrXkHLomh0BdjhKU3PL+Hci.IEjYaty96fHu
L7usVnZ9EKr2Or1.qq.7vInlvRJDqh0Kqp9c.D8tkiiPtM5VjRbDWSXjfXFd
iUW63MOZ8yVVESawUh5J3.3S63NKoMhWKspSUe1Gt6hQ4z5DS0SGqlQHLqUn
PsMjKYIp2i9gMROYgQY3wWj0U0P0.TQP5bAlkMkcOYASMBpmHVMytRGkzq6c
hMn.TeiZzyUggXk3E1tVTWBesjGXl42J4qpxoCqxDaw2ZaOEeLpIEWqKn752
TJU0TYzJtVqrbiQqkswwkM5hXBEU+05UksQ8tvHOsheeeWL1P8PuQ4ruaEYO
B0WeULirVguO5DcmvuYCGyhFkNHf9m8bRntGDGmZa1otrfGr1EpPEorBmkPi
SVp4B9nw6Bqr7hJmJ4uhMjskMVDUd2xzChGwK3PM0EPrHqBIuMgafSQmZ3U1
XbR8lvb0D2iy3xZUphZPgjONVYTUYVapAlCNRtdQU4Am.RwsmSOMR+XYtWrY
0qlxP1vPke8JwRkt0v6IwNDG3rVAtlLjvgf01.Mesa0fS2MlDgUlc6Ypi0MX
64AAwcxWpAQxS1JsZ.sGsgdAGUdlUpfFcjvy6y0pacenLNsQ+94DHDV9P0NC
vPERCi.ezDE8ZSVWfZXzFMsLEjVs8wpZpHBGYpw7YaZlT37zzZU5tUJBhiYx
7FahV1OTZRr1UmABbqro4aJkgPYQ0orO6rZeE3xpZZswBeMN3mT7Es8RogL7
nB0xpmEHhTL9e4.WxNDZcEkCQ41xyrTPOFDI0UEFSBXEyVxGsHzvxppQLWE3
IslDyXTQE74HpoZrup3rsuIqnpTw6jSUqdZZUuYhfEB1gc5tK5iyaziewDWA
rJV4.wPicVp7U4vWqZD1w1MfAsBytV4LkJdkZmB6CN2p1ZSAwqN0E9iEgCbR
bEDmDvEkpYRl28A7B3hikmOqhYeRYzg0zspqYNFTJUM0LX1r0.aViRFNIZJc
UnsY3neqrT.eFJCwE0031jtXLoeY1zrZeqFUMLkXOqpJoJo9mswAdgMzqFcn
HKXaJNIEdUx1rfAJVoYDyiYV0Xl4xtCbjwGfHuMF7Z07n+R3LUj.0Ri1.207
t5Ad9tyQx5F7P45rU4ohYqyYmzXfcxI4VyZ7Rmw3M6qSKgIoZwpWkJ6zYaDo
kapS0UpyZ11gwRdHZsWMqOHJt2ngPAnVylilhtklKpZDLRZopV4slsAgJP+F
TWfAC4Ui2GXpnt8HYI8sZ9OWDq1pxU3GRdCs9RD2e8wDvvqdOfyEWi3ID7tb
z2aI2HeUEqOg7r5Qjgd7VBFeFYa.g4rBFopVC781z3UkFBjnKFIysrF.lDgb
0fHVY8XbXms6j+37CofhyqMVv4jdudPt0JLgd4wndiSKsBKLghgp..mZkQba
8wPifTRZ7hBiZ7LjYnK5sx+FXjbFb4No3YzqEb.LKB.EEyVudp9HHwpwWy3y
r2x.tyFmhB6tZeCJMgsU+1Kyhb0n+d3NmDaoQsXmkZuMFq0bFZLksM6xdKSM
QmqZzCxYvorllwQsouAyq0tEDbT4J.GUV4G6RpOMHhWmULEL40qXrPyGd.By
xODqnc2nhD5sCz77tXQNG2rVkYAKA.fcOoykjryR8ggZPnIplRrY5PiwVR9M
BiYBSuSax1n4JVr1JQCyUlRv.Iarp4yZTSSJMYHqpIhhGq40r9ccnVaObC3Q
lwTYNp41GQhFpZ1JVZVms6Uob4ej5azyg9pZiAiJ+TSeXNmFaV9I7iYmMSFg
psklkbBnF2LF70f.SC4whUwqotF.JrlXs74xBrv75xhdqZewIKF.x0pMP3Xg
kjrwltY.SC54h1uHvhCDU0tXONuYYRoPBXcj1Y6PRJjTroY1ULjZec3Xz7y5
GPssFbTGFSxb35vacEBgaZDHRTgZmD5PsQi35M8XV4QMQBBw9z71b01wIXgX
ofQNoo2ZhranZk.H8RZ7UAaBVl4ZAwn8VIXzQlr7B9s06IZ.cZ7KYSNYN06r
fnZiwEL4cQrfCnS17MOngVXhirEMijzy7BF5sJVBZBpMFKfwfFQ.b9FNF.74
pgniDTMFzMknpAeWzRZOaWzCzg6tnNNm2Tis0.t1BiiMyct3PsMHLSppvUiu
vNlMKmKrs4Z1HVC.qjUNqVxrIqG8qZMsILSOJDrH6+IM27x0vntLB91Xtv6C
1.piSWAqjpRpyQLh6UqKGkIfFCcBeqNiwnZPc261m3t7llg4NptYXSQkvQrE
G4Jfi6C0mHwgaQqcBHzOaN2WTewvQDu0jX7MDox8nULq4VyFtrQKYOMmyYSC
Gmwfbf0TsosxtrotJXH1liNMg0OrS2cBmp7fYhA7VvIzXm1DoODEWAeZajL5
FYhl8pY+n9ppDkVzdxT.PJQiXBVHfQKVVnC56VCr5x1VAcTNlyHZPqQFfJQq
vNf.e0FVq3WLNny7YTfQBqmZ9Yq5HU4WzX4VpxoHSNOertGwdbjvNLYT64V+
WAi9iQ2hmRyhJbuQcLjAygznGNUYvA8WkUd.xzD1hi4Dn.1+dqKpT9piNa4w
PFsvu7rRurp6PCrLUcG173lk4gIgzZsCDU0NIQNWePC0S9RwZrwYMQ15O.KY
XhOsFCYJYIDKVThunqRWXLlVPfMYQRNmpt1TkiyhLUKtrCjU4BwmGP5svgKB
4wBvUSVOhT8i9Lgk9tMplw27JEYWyJEwbG3eHJcOC+1Xrn8HM.Fm54J4ENa1
QAnY5gyCyL4HcpYq+f7xStFBWVAZF4Sv.MTK3refdHJwQoKiS87pI0cwl7ct
pe7vLH1MrkIk.AZSvFHW.VsMwSAZLwShJ6UkqwT9.wSsKJjyaTsTIlnUkNuV
ffa7ih+iC0YqXoHsNrP.orYUcxqMxOJlE6ZxHkRft.h3RwlnXdMVi7hYU4Ss
wYP3.1QozjotDKIpn0cFAkQ3DPLqz4IHcJosVAxQV3Iq0c0rgaeHPxieNyjx
plTY0rX4Amyi+p0yJotAyoV6V8m5YZ3kq0t5oKGYnQcIcz58+RpXfgwtjwGo
msegDcs4aABWyJtldly2DUuyNajL.jzql2ushM9y5rOTNnS0cwcbdSFpRzcD
ociw3RtBZJ7SkMMg9oQj7UqK1aFH2LaU2fL5IXlbEmTtpyrrWsT0npvmOvdX
Es1ikUkHQm0YbTQWnIKnGexNmJBc3PHxDAmyrq.keVeSrI47rnKxqJvoLc12
yOR0l6HjHFRdyljLprFfG16GpJJMt0H4LB+B0xHIEwD6IMq+44bzyFzyYmkq
NVzshwiZWQ5GnKWyUqZMDxTbNXU+S2UsY.QWOdYTsfZLnS1bddGos8fK4h6A
8YclOFsxLC77wu0XLAx4MZx.qzYsiqxE1GrGkJZdOSThol8bJnzr56KqIqf0
vP.4jXXmUJSKYXTBMWbLkBPDrV2Wkbps4QXeofps7PVo3gFQk1Jz1XAOUYOW
xbxywIJTrSOhI3j5VHnX1sQhRYTWrHjUgti8ZjM0Us4IJcAKzq4j0n7dqoay
95nENK8j8PfhCLbU+qMy1JGWRlcXHmXSLADUcQlI.JfTab.OROjdJWEjgc+A
dttK.TkMF74VZVvErzE+t5I3ioMpgbJeX5IBB4DWRzAq3BsG5MMupZB9LNPL
MUk7clOfMBCVbYqw0zrloRZ+3NNiHkGNE16TvtrFRX9NodmCiREWjMSPsxKE
uR1xdHqV6Ze6U6lt1rnYsTxR7bimgZVieK9DR5HsKFHYQN3Uo3vmHUVcVz4z
Tw9PAKHk.A0I+icqKtJ9wSErJqvbq8wBIKIAEKsRpOJ71CuhlRxoiZGiQAoK
FNP00cQibI7.00JgklzydOFkZxZFdVegjk9PefzfP3pVadTThrnsN2.aK6vb
6YDCUySpna.rZMhv3Pl26LffrgN0y7NMUgXVtrYuc0qIOHGAgUi.SEtRSOXP
BxWNe7aotoMpoGzVykWiFcypr8TLrv1np4Cmaj1bqrgItttUe7Zr8oxQD+lp
8H3ROaZrwFk2bGCCmJd1RzlF9cl2w2aObnF0FRyOlfmYaHAP.SqFmTv+qMtG
Ar5tM46KwC7jcmJrazzdL7EfYKNqxgPSQMTYTsvSZT59Aq8TIzUnFNFei1iH
GVJtcup4ZnOxgNCg91JVkrwQASeTEvdiQmJet7YTPVrNYiMlaQcSidZWTrYa
AhBQ0NSRsVixiKmZfEApRO2EoPTUi4msVaEpsvBZ.uMJWIw+AelKM5lxvp4Q
ROLpQ7vnjCigp01BPoyYLlqHerGCeEM9XccFbDqF1fUfsrbL7VUcoNbSvSjO
WN36jy.x5VZL2W7FEtoXqcfFk28i2qMlzT7g3DexRpg0pKIBzCrvJzDH.a7E
qQ20LUqaiqlPzJhbNFlE.QN6YzjghdiBZJ7gMJa9Ax4lXezCyUcXx8AahdkD
0aVs6RvrVMJCyqt1XNbVF.O7s9pplCQIYCdCfm0W1dNb4S5H4+nZObSSrbtl
YOnqrHPx1WGrkXXcKEkGnBmmNY64PRV0+EjDyVxN6NaX2jczJtwYWWUPES27
3IWznibYAOZnqZ5wPD710LFtJ4wS1MN5XaG346tNdyOrvY3jXIpojN77o4Kd
SCvPxKa1pIJ3KhsSZEBjp7DI3mRSE3BKbHaH8xNv9KcJfdPhz0iWJuR9ShQq
mFsSsdH+QzzkfEGafgenlBiCaSa5pS3vpn43LCU06DoTpxVbfYTOusZeKoA6
qJUun0y2EC9JPvLp185pdkk8Jx3g5SOK1M33XvlKC4h0k0QqYJguR64JUViN
Llc3Ry5DudIOvb4G0TSpXM.DtQjMfl7ZXwZErXqpO2G4ss8fG4x57QU3v0MS
jssFqVn53Q6ErRpGFPd9Htr6SiGLWd8HMjCyttRqJqBnguEOITjDSYEW.4Il
Ntjw1nWOcqzbFSOkt3QoQ2nU.kFCuv1fEBBGLeZTIGCpLKTmdmIy+Tyiga2d
DXULIp5A2UtmUWZvAzmp+NNfbsAzXuY0NALeLx1ZXLw2.fht8TdiUIq0I+4t
Q5LrgqFjfs1lUywMy0CKebKU.btjaQP4yiNKN2FvJ6cm45s2FjeTbO2NDosG
jIWVmJpL2lIaDEF+fEKGeFiV5rcX3.cCa4VaZwGEyFVB5bMHhH8dSSULUnLd
V3TJf8cAm+K4tEpt0FXAH8zU5FBNqjHDYFsQyTj5Z7rqurjEGLSKuFvlYkbN
MHf.fIlUGpvfCk3iDbqp+aVwyYapAAbc1vHrWFOFF.PBMKRz7owZTHD8k8z8
Y7HvjGVcqFfhhTwNA3a0of0XsbR5aPIF8xXP8WeTMrIiFFN+aqdLVMdrW0pJ
nqXJdfVk2IWxkMacuJW5bdA24bZKu5bivhpFOiE9LEUyPJqzrirx3ovt5riP
yZCOlMUqLNAdaukO.lY613gjXez0TN0YGZZFwp7S1lC541gLi4srjPtmshmC
tyruCpAS4ewqC2k85QP7iNL7Ydnn0da39SxwsGbdL2jw7phhxJRlj0wXYNNR
rGWaimLWQ6Yhyv.LaIQiGZe0lLDgjM6HiH.A4CvV5AUwpIqovFIghCEIKGzL
ZBiWyNe.1cPGw6jK4x5LSUkzFCwqw5NqHRBSNUWDEVyKHhvlRwQiSv0QQSD3
yZCC54pm02VkHpGD0bWOdr5QFFHKavc8f4zwoOrUQGIMqEsw1bwRLKGr5oQ0
QkpVfpINnhrDxGb1i8c12uhYXVeRgG4gSdHpAUC8EXSQDedPysJZMYFHqJS2
65iQasKNj.TtwFs.g5jqRyISqtxfUil2ZhWmdtywu+PuZ76XV94FjASl4+0d
HBIwICgUcD.Ur4Ov3d2Eex0MnoJPiYL3HNKw375azIs7o8RzFV5Q8LTjSyuP
Us4kS8qpBGz5aZFvo0Oxrlohi7WyFcIOnypXQPAylVTA4lE6LIBQOYuH+Qr0
qT.Yd00TQ8f9HGj+1PWihNDgLGxPzsRi817V0dYZ8MXyCG7ZniQentQ2434j
bPkbW1pqMx21nRPrZixaI.I4hNS..K8wipgTTSVEOGtmBqUzayvH9fDvJjJG
cmY3RXQholV02FJtPQwB0hO1rBGXrQqys7Qu6G+gw+cz4mc4hSvQ8xil82MC
1KW6kt5tkmuX4xe+5E709iyN5nY+Kq8x3Ri8vK+7GtYwIKs2QFqj2IIC7WEN
M8e2LDdX+X2FexyNku8it5i+76Sqeub4cWb1k3RdKe4vlufcynWwu5E92+we
b0Ob+2uVP2Z2N1K9u8iabGyWmu7O7fW8GNBR72bxp053la1l24mt31kmcI14
u5x0deA68skaq28MeO32y6gzidO7kslaW96m+X6MWN+BcYO5mle4sPD7KmK3
B9o42c9xseC+wO+oyN+7St57qtYs2vZuie3nURPG84ale5YKfn16V6Uu+i9G
s4vkuWdmMs0Ztj8S3W4eGMXt99v3S5W8Q4yJ8T9cppGbvuf8SLyzO1GMr5iV
3LK4c1it.fi19I6a6q9jyu7ymqUCfqAw60dkqu4pqu5lUGKDJ4Fet6Vd08qe
952+ZPJY8syM1O.ziTQ6B7Qfh21Y3r5K9U2ZGM+jSv28FebxlQ09PvURI9Nk
wJr8z+5O9mt5xk2d1+5P1y+vWd4hey9t+vYW9KKt41EqtFt2s1e7vO0Z2M9w
q+k+Xco02slBxMXYHQUIzrlf3EPJ7r027VW3dictscwV8FWb5YKoYqGrU+jx
O+352oGc67eYwoe.Zdv32Glub4Mm8w6VZJWqI+Sk0St4rqWIUb+p4nSO6yPO
dye2gdms5yu9QHO.W86+74W8w4mKKOKt4dE86urme0I+IrV16Mvub17.aEGs
b9mu09t+wuXDR+oYJT6JG8wq9sw1jsKczEy+sSNe9s1G8xE+J1UGekRrS+5q
u4r6MbrMWOAek2nHhNNam6oT29uJzdx5kBqsHV2Eje025Fte7e4WtlqG2Arf
N4pKt3KF8VaEc0eZwreY942s31YXsc0rSu6hK98Ye7tO8oE2La9svGO9gEWd
xhYe5J7KN8z+4qVaOXCG2ocrwTxxMrikfCm5dcN4ksMldiuDB5dqaL8W6clG
4nd4rOh++7Yeb0q7U.Q9HrBC+c2+22+y2uL1xFQIHI4n6qEPHoR4GWBo0eFa
DoWtMhavW6hYRi9w1IzpeWq5fWFly0srr4A+iupSostpCacUGNfU8EKt814e
dwWsr28B9oOh2pMfXXmq07yXs5eAWq+zRFMxwlR+gsniQSAuW+5Uccmq5X8U
dU+Hx0eb9I+zw+LLlM6uGWfYKOr0cOpCaVKeObYGJ9ctteVm1OOG9DaDb1iu
iOtP9RQ3+tvg6N7wDbN47EyOTAld+.UShouOBLme07SMa86xgv9njT2F7fzN
Wygmgwe+KIfmEWu3xS+J+9GjRBeb18vkcOuyks+6zxd9I+oYmM6SG1x0aP8h
Y+VrEVOdG93ituOh1BB2NL8qS9ge92Y+y8YCPCmpGhxYmFECaGjS90FjCQ68
omDo2mfIf8ZkG5O6i9P6YHpGdgcCdFN7eR2fuaO.5sZ8WBe85usSfdgmCLf3
2W2gOpPz4yb6b+aOUbBaK7.k2pcr+U99H+b8hE+o+7r8CA4dq+DqsssArSeE
gsimJ9piiTq4GrEL6u+14Wb8syBtmXyXehYLjkMy7VkJp6zdpu98Qp3Sme2Y
md7oyWN+1EK4dywby41kywUZ+rx9t8BSw12Sh6zRyyIN53Krg1+zhe+10SqE
2UdRKtOo.hsWDbawnqOsSZmdNFM9KSitq4+Bu8SWb8xeZl+ayIVOPCs9511N
C6Lzj72eeX51Zy7OY6tOLmOi83uNeSajvoGIQO93WxzyWcNtuWIxn0r3Sbkh
ad6bwYmdMCD41UYHndbfGVCRW3XYd7udIt4dpsAxXyKy1P3ItRuHWn8XEsZY
+Mcg7984J8Bbgx6w0o7BbcBk83BQDruLWI+Sck1Th4A5DgrwxfOuE6WMAhbK
u1258cce1gdINyC6iXbn+RckdpyBFxNeSeaWo8wXitReqqoXXetRuDRx6kf7
Kgx49X9LkdAtPo8wbyKgfWLs+WnsaCX3HLG1FFFW3Qdsu0aa29nYlegjsdRg
3WhKTrtuWouUS.w8Q3J5eIVS9msz0U2bpA5z+5ek8a+J69JLtyu95AnXcY4E
EQL7yVwCzdm9mmco8OUDMGcyhe4rUueA+9n4rB7VBj22ciULA+VwxtvQWbEt
vWd2YiUsJ4hGT6R1h+9RY3Ob2omc0+KDh6c29g+oEWdmEKvCJbowVyVJXoU.
8uuPkrWcUUM7fJTJ48pDLh9XMXEWSjkK7Z1beXsIkxotK7NahEOpkCNofyVE
47fOV34VMTaunjd7BR5QJFoUAy7te7wqCmMqAm0kDu+v3+w5EExQHhpkCwj0
NB1r9VbwdP6NsN+Y9S8wBd8n81rzlX8uncD1m.V4awhEMzWqbcVsVvpcrA8M
eSr37EW7vxrZ+perMu++5xlZ8a3uDq4ieCymdm5FtyoruUjXgdgKh0up2h63
SnPvVqtmGV0VOm5754Hs3eLok+o+Im+C+y2cy0muXWZsrzl9z7Ulz9xs69nM
+vxN7AJm7QNP39EW1m5gGndsoVoOxVG59O.ebJ47a6S7poFuYkn8.4hm91aq
UJXLaBSb.pKI3NeHi8.I3GTiftmPuHkhtl9x37yi2EryDJot+oEQ0ySu.21V
ImFvmq+HBqOUQq8Xh063S7.qMglW1DpbP5qUBvsE3V05en6cG+.6Cu6A+IGp
O6R8YkNv9ZyciBw6v86scMkmsb7gUXtGVQ49h46a6ZS6YA39MT7s6nvae9Ec
69TvseyN3GBaqJbxIwsIws2DwsIAtIAt2XAtIQt+ifHm6utD4lD59qRgt+pP
xZR1Zxf12EwtIAuIiZulRWSxWSF19dH5Mw41jX22Awt3jX2jX2asX2jstIgt
2bgtIKcSBcu8BcSgSLI181K1klD5l3H4UPxZB31jwr2XQtIXaShbuwhbSdOm
7d9ZHWkmjqlJ6n2XQto3OmD5dqE5JShbSP1dKE4lBKcxF2aq.2ja0IQt2bQt
Igto.SesjrljsljsdUjslvlMIW8ZHWMkWfI4pWC4pIx+mjqd4kqlrVMIU8xK
UMYqZhn02TAtoLXNw50aq.2DuDShbushbSYubBp1KtTkaRnZxJ1an71jWyIi
Xu3BUuRT4+VId77jf+dKK77dXZuKSUO1SC7j1j0nNdL.f2me0e8HuNk4oIet
ukhaSgpNIv8FKvMIxMw.7atH2jP2TvEuVRVSxVSFz9tH1MI3MYT6UR5ZJNzI
IqWGIqopJZRx50PxZxh0jb0qgb0j8pI4pWC4po5fbRt50PtZpbGmHz+sVjah
HhIgt2ZgtoRdbhz02TQto.Lmrw81JvM4VcRj6MWjaRnaJvzWKIqIYqIYqWEY
qIrYSxUuFxUSj+OIW8ZHWMQ9+jb0Kub0j0povEeaE3l.zOIx8lKxMIzM4870
RxZR1ZR15UQ1ZhghI4pWC4pIL+SxUuFxUSLTLIW8xKWMIUMEt3aq.2Df9IQt
2bQtIgtohS76fP2jX2jX2asX2DuFShbuwhbSTdLIx8FKxME25jH2apH2TWbN
Iv81JvME7vDiuuNxUSRVSFydqE5lBKcRj6MVjaJrzIQt2XQtovRmD4dSE4lF
5FSBbuoBb0IAtor2+lJvMEs5jH2aqHWaRfah3sWXopofQmLh8VJtM40bRf6M
VfaRjaJXz2bQtIgtIgt2VgtoLYMIv8lJvME5vj.2ap.2TVrlD3dCE3lD2lhT
8MTbapRdmD2dCE2lxP+jyz2Pwso7yOYc6MTbaJUoShaugha8IwsImouUhaq3
c6geMCgwm621TlJlDdeCEdWK0XuXBvSoaaRH9sVHdJcaSBbuoBbSoaaRf6MT
fK7B6j9kF0Z5E96K+h98s5t6i2sboIkttt5FRRsXIaRRcWzmLshTzE55m11g
OE0h9nTahEH0oOtqCYx1VjENewo67NnjJP9WZtAespu1VNk6OPMXw4Kt3g5A
6mh7l27x7fT67oUebWHlC8sbye4Umt31Mu82lN05eDXBXX03KelscuGC4jV1
w6uMh0U+tT7PT6N4pKtXX54KW6SNew7ad3WB1hcbif+T.FNCZCI0ddpw9mPL
7dbwSBhSBheeEDuWT7xE+5Ue7med6j2gEycOuOxEKt814edwy6Cs0ssm5Cc4
cW7wE2779LuD6mS6nun6ngocyWvcy3zt4K3tYZZ27Ea2bER+stHO7.ouOj3X
EHg7VrjqvWn+HDervg2Uv2tiykG74d1wr+BGF8KSPsaHFrE45GBOs47EgHpl
yQaYi84NW16LX8AJGEvtXpv2C9b80HN8mB72Atjd1XF8OFZ8ceGiE5hSOa4K
x87AtqcPFQ1dL6omocgUUD0VrWtOVErW8QXIa+1zdNlE95O1yLJp+B0pv1Da
y9ZOW1obysme1oOzOxAJ49LzX977yt7O+5oh+nNRRGxM6h+0Smexe9keKZON
c1lW9C7RuCorawl3ITv84Ej+2nmKsz181puky9fN4JwZrX+jqDzOkyeytZ1p
g6mxp4YWd9hGRPvFhedJ+IhTfaEmt+6CQxu5V3p6Vt6uMXRJXLrmtmjA2HkA
98yfd9YZPeUMGBa2KWbCrbc8O8Dh+qjOZCFrfzSgjineJ8DBZ53IG4+Y9fYt
Q1koE954MstmMO3e0FxM6g8sdr.MGcJMj1pgRlTx8D4x30Rqmhk6CuiGJvt8
N6SG.oagMWJmd1IKO9WNawut6UR0mrc9dN6LiNkPuDBaY24hEKeJ6FPCDeg1
8n2G02bLVB2eltgNyMKt8gZfaYKaGK6C1ej+wonbGhGWLe4Mm8amr7lyeZFR
u+dM64cqop3ykcvP5dIhd5Yy2iq9i6HN+.I94e7o+1NH0sBP84Z6FBzIWc8h
+72vp4w1Gi2mqSGU27OWZx25AJNYBCSd8pyRwPrzqgM2D1to1z8NSpq7LEF9
ndzcvVnGr3o6tRLa.ja0bstM6s.kKv5d0cWuCWZ6g700mO+2+37a1wWhqmSM
ca4ctgz.9ov8n0eZ+hkmoewUEG8WkNlCO4Ha+Fq9LuwdkJi1u0hUX+LY9WHb
y7x4b8QDu+Vw.8MFK3t8oLA066CTuuO3idRmH6CZzmGFItSOg6ZB20+QG20g
yDvdU4A7zXkIw1p0VE2RV3N+0AZrWc7SkmYUm0uuh.l7CN4GbxO3jevI+fS9
A+qY+fOaGfgIGfSN.mb.N4.bxA3jCv+VzAXbxA3jCvIGfSN.mb.N4.7uEc.l
lb.N4.bxA3jCvIGfSN.+aQGf4IGfSN.mb.N4.bxA3jCv+VzAXYxA3jCvIGfS
N.mb.N4.7u0b.5c6pIZ9Fa9BH05a5rO45Qy+XBGX1b0Hm2mhZ8Kon7oWP+70
yWdxOs3Fm6wlYz68W0ex7j9+4mNa4hcsC8VLiMO+rO+Sqb+ryNdZyMeWGJrx
hWGa90wOUa88Y53sRUMeuuq3iozdvqqKl+akOd0us2qoGrAiatcBWQ1G9Rm+
M.O8BzC+eSKXqM52OIJ1XwlR+5fHF1yeYusVMcids6ntUCawu9m1QG0UaMrO
7ts9S+kWK08BIUso1w9cJNFqB6qzkMnitWWOgco3KpGF8N9h03CVrZWCKmGA
ZzK+bx4uHlA0eCMn4dNxSealVWuJiTtGKLsm7y8vP.dUlccG1XW4QPE8rUAe
+jR3+wPI7YEd3gMrfd9MR8jJ9KnJ9dqaa65+Cme2hcqcuMJkdNgk+MdC9Ody
hEW9ruC2EOouf2b+eWb94W8qO66tVH6qFNTuEzuKi3+2sZbfuImq8Rs.zrD6
e7pyO8Ye6Wue5qmGS2RxUwZVeeQtAu5led9kyrO3e48zHYawquceU68f.400
sSu181DooDcklox5CuT9b1JumcJnqqjO6G7uWxkGNh8+VctDqIK3VWL2rmk.
tXIkdIkFMx1ehnQ11fM4cq8Guf2N2cy0OkdwCHzIMd3JDxtR2HytkKg1ddVT
ueDAm77oPy6ViJ0Wt00MKNYwY+xhaetFTuWy5K2bt0kReYt4LZ8nMymwN+SZ
sbqr++TyU0WjEzsKt7za+KMOqKme6xEe5tyOeLTi2+c5cM5Kezc59845nbue
.l5kZ60XQ8rWSA3pvdhOEueOOF5wd6EfH1ue6G+5SQMNA+7o4mrx7y82q6hS
2mvSV3d5bC2uwDFNhox4N.dswKsZQ7Gmcze3FkNw2DJg0U4nSNe9s2x6faud
r6bD446G+2+w++Bxgh3C
-----------end_max5_patcher-----------

Just change addPoint to addpoint and it should work.

1 Like

one of the many things we changed in the RC1 of TB1, and therefore in all TB2, is that Max won’t support camelCase anymore - this was quite unidiomatic to Max to accept them even if I LOVE them :slight_smile:

I feel quite stupid, as I spent a lot of time to figure out any changes in the logic, also comparing it with the help patch and not being able to find a solution. Well, now it works, thanks.

A trick to replace them all: I open the folder in a text editor like Atom - since these are text files I can search and replace the stringToReplace by stringtoreplace and bingo!

Is there a list of those syntax changes. This also applies to kNearest, and I guess to many others.

The short answer is: all of them! Maybe @weefuzzy has a shortcut but the best bet (and the way I did it) is to open the patches and work. Then you get errors of messages not existing, you know that it is the first option.