From 726acf77de30643ad0363152b416b6296b3bd622 Mon Sep 17 00:00:00 2001 From: "David A. Mellis" Date: Sat, 29 Oct 2011 17:31:04 -0400 Subject: [PATCH 1/5] Fixing SD ls function (Paul Stoffregen). http://code.google.com/p/arduino/issues/detail?id=700 --- libraries/SD/utility/SdFile.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/SD/utility/SdFile.cpp b/libraries/SD/utility/SdFile.cpp index 47974e206..e786f56bb 100644 --- a/libraries/SD/utility/SdFile.cpp +++ b/libraries/SD/utility/SdFile.cpp @@ -590,7 +590,7 @@ void SdFile::printDirName(const dir_t& dir, uint8_t width) { Serial.print('.'); w++; } - Serial.print(dir.name[i]); + Serial.write(dir.name[i]); w++; } if (DIR_IS_SUBDIR(&dir)) { From 10001866e612a3929e4e929108b27f4c6ec13790 Mon Sep 17 00:00:00 2001 From: "David A. Mellis" Date: Sat, 29 Oct 2011 17:40:23 -0400 Subject: [PATCH 2/5] Protecting the version of parseInt() and parseFloat(). (Paul Stoffregen) This should allow us more flexibility in determining how to handle these functions later. For example, in specifying that initial characters shouldn't be skipped. http://code.google.com/p/arduino/issues/detail?id=698 --- hardware/arduino/cores/arduino/Stream.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/hardware/arduino/cores/arduino/Stream.h b/hardware/arduino/cores/arduino/Stream.h index 8f2de1ed7..a3b25c56d 100644 --- a/hardware/arduino/cores/arduino/Stream.h +++ b/hardware/arduino/cores/arduino/Stream.h @@ -71,14 +71,8 @@ class Stream : public Print // initial characters that are not digits (or the minus sign) are skipped // integer is terminated by the first character that is not a digit. - long parseInt(char skipChar); // as above but the given skipChar is ignored - // as above but the given skipChar is ignored - // this allows format characters (typically commas) in values to be ignored - float parseFloat(); // float version of parseInt - float parseFloat(char skipChar); // as above but the given skipChar is ignored - int readBytes( char *buffer, size_t length); // read chars from stream into buffer // terminates if length characters have been read or timeout (see setTimeout) // returns the number of characters placed in the buffer (0 means no valid data found) @@ -89,6 +83,12 @@ class Stream : public Print // Arduino String functions to be added here + protected: + long parseInt(char skipChar); // as above but the given skipChar is ignored + // as above but the given skipChar is ignored + // this allows format characters (typically commas) in values to be ignored + + float parseFloat(char skipChar); // as above but the given skipChar is ignored }; #endif From fe243801a4e5642e2a75e3bc4dfee472bf799402 Mon Sep 17 00:00:00 2001 From: "David A. Mellis" Date: Sat, 29 Oct 2011 17:47:17 -0400 Subject: [PATCH 3/5] Fixing "auto-associate" preference text (.pde -> .ino). http://code.google.com/p/arduino/issues/detail?id=699 --- app/src/processing/app/Preferences.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/processing/app/Preferences.java b/app/src/processing/app/Preferences.java index 4cee5ad8e..f98fc9df6 100644 --- a/app/src/processing/app/Preferences.java +++ b/app/src/processing/app/Preferences.java @@ -340,7 +340,7 @@ public class Preferences { if (Base.isWindows()) { autoAssociateBox = - new JCheckBox("Automatically associate .pde files with Arduino"); + new JCheckBox("Automatically associate .ino files with Arduino"); pain.add(autoAssociateBox); d = autoAssociateBox.getPreferredSize(); autoAssociateBox.setBounds(left, top, d.width + 10, d.height); From 6953c2ad5dacf9a5ccba9238f7c8c059429e55aa Mon Sep 17 00:00:00 2001 From: Tom Igoe Date: Mon, 31 Oct 2011 09:20:06 -0400 Subject: [PATCH 4/5] Updated Max patch for Serial Call Response ASCII example --- .../SerialCallResponseASCII.ino | 132 ++++++++++-------- 1 file changed, 71 insertions(+), 61 deletions(-) diff --git a/build/shared/examples/4.Communication/SerialCallResponseASCII/SerialCallResponseASCII.ino b/build/shared/examples/4.Communication/SerialCallResponseASCII/SerialCallResponseASCII.ino index ea624ba1a..4d2c57e11 100644 --- a/build/shared/examples/4.Communication/SerialCallResponseASCII/SerialCallResponseASCII.ino +++ b/build/shared/examples/4.Communication/SerialCallResponseASCII/SerialCallResponseASCII.ino @@ -144,66 +144,76 @@ void serialEvent(Serial myPort) { Max/MSP version 5 patch to run with this example: ----------begin_max5_patcher---------- -2726.3oc2bkziaiiE9bU+J3XjCciwo.WzZeqPCL.4vLG5zXlCIAAzRz1bhrj -aI5pRkF8+89QRIWR1VxxqQNoPrL0B0G+dK7QxG8ed+cilj8UQwHzuf9.5t69 -y6u6Nyozm3txx2MZA+qQI7BysMJU7b1j++nw1KoDeUYN8z7rEEurXRVR0kxV -oRDJ0KKE1pezHzmJuzRtJZtLc1myEQJ6UodtOfGibCLG7czeRwOfW+LxXy6A -d2u0u5ULMKUkxWXdAidLWxW+xixRxxs0LQWU3GBBwjPO82vkeiTq1SWsPlBv -0zFI0p9B42LUOgBUy56011r2r9j+082q+X7owgRUFuU1Slp5EA5oAJxwqKBL -3BSfruSD32RPyxyVsrcUvw8TMjEZOzEK5reVrAqPODVgd9XkBQBz9PDLhvZk -YlvSmoYmpicyRXK8fMpF9tcwRD7ARSGj0G6HnoEhhB9LwV7jm6w45h4Z7V4D -XXCF8AWvzHX2rQ3kTmgbV0YPj8przKZw03Ph0oCIugloTT1hEBvi6l7x6EZL -g9UdRxa+MQwxrzBA5w2+qu6cnOl9wz2KRiKPbzjWTBD.AjZt.UXelkY4pwHd -ZLJWvg6hU9bhzrXQ7Xj9UxgadIOmqDwHjLcLRkuJMxTbxKP8lHSESEh3GPuy -T2ov8qJPSyxEyxVAUsws8XzWWlUXeWu.eCkMEd1HYdTh.sp.DSFb8DOYkn.P -iZUdJ7FzcguIfe.YZW+mLk3WP+9bYAxHoQ.OsBrifamaajwhmjQPaN0TJC9H -GZYw5W8FUIBpjYYFPjAmGtGnUCEArYosoVjg7bQ+jkhd7m0UbghmqVs7A.GP -E9EgFGOyk11uEI5JXbEwXDEokr7inmgyJdBfkTAOFn2fV.zFJlq3OXZjQfbQ -yzDGziKyAcUb3GSAZ+8QYJE5eIUealHmmDa30eG3p2MKasWDsjIBDAJqpX6l -ENVmld9FOnNX8AhOc21EtWRem3yncgJWNCXGzOARhOn9zOqEIQZkK4r4p2lH -lp.UyzmfGUBlLfV0iIIV8lb9yZcAMmtLOCdFi94yR35y4KWBRxIBs9M5ey+J -nq9GfJKH5.2Vk5uOf9eZwsRqaVghoxbAn+CB5szB.cNdwWPOlGuRllYzbpUW -6TZx5niPqONOpoKPmxCs3626lQZlKjoRE.K3kVXDSy.KiBiIDpzaAXPxM12S -2Io0gE.wFiOydfvrkbZgzbtUHsn4hnuT4KR.ZYQRYomLvkFnjo4Gs92DwLYp -wc+pTI3bGrHzFDSUZeSVdu4U0dLWviMd1fuNIIK5Knh4q.6f3rmSOXsVGaDa -LeiyGZU3KsH.XCMAPKgrrD8wQZuIF121Y2GGcjCFkYhYw2NX.pmIZWRXKDDc -mDz+UjGyS4i583ivsEUWcbJxKIlRlApCYhtWsBPOo1ce2nWaMV4an0SksCGm -fZAhA78LsJkvzlvUmLVL8PpiLvU8q2O1NlwZez7NkoKAWzfYjQAey2KeUh5y -6lbZd8o7HQqObKhh6FMKWFmkpgQimUe5pWn10t03nNxM2QJe4NdXUVVxDd9S -xB4jDQCIAnMySkK.OnJoEQPnEUWTtXYtzZwt9bhTNTGyKhxyRRZTU1q7zNth -M9qmkwp4l55U9pwL7TSyogcViy243k1bZelMAHI2p+W+lZ2lq0gLXcLQbMJM -gAlB07Ks0Hv8q+9Z0+TqieXaiPxCtgtj.+lO3liw5tJmV1uL9RQrX8emFkRK -oTq5ra3doTuaZJsQeCaOjVsVZ2DZqyCRq5rXaH71Cd1g4R5ffcakf2vOUa8r -1QuqsMCIWd1cIGhIAeNzXsF+kJrj.7dIT1QSnNGCgdkTW+mHR2DY8IDt8Ipq -txoy94R5Qykzez4xRGo8lJI2tTYWcLAgUyyGiVxANKCFdC5MDzann2vPuw4r -X3Wcft2tpv2zcUYvyIqU55qmt4R0wsCYcy4SJnURoCMqZWoZvu5JbzfiLHz5 -Fm6mMB+glMX3ChM7vCT1v95Fsmd5nAOvf+43L17890jI8JVqMlxhCnI+5PG0 -yMSKiByzZzWe2bQQ1p7nJ4d0ndPMaSwhBkLc8Xo+vqMuMtw4x33lib0P2x3k -YfJUI.QepWRuCF2d2n3Feahau9ha8PRFP3V6Vte3ldihaXDKHxvA2A8E2CK8 -69ia1vxeB8PvMa3faxgfa5vA2taYt0Bt8GV5It8ku8FV3l0WbiOi3t7jPCvt -bIE7mDweFdMPHhelqT4xIqT1Pvpu7Im9pIz4E22hYLKIaBOobocVWKMp6sP0 -l008uxDmmURCezIgHyFyMKj8ZpP0VN+35eijKT+i21QpPsOFwobPXtjdvHt2 -HLhNa..Opjia0UKojxke1syT800YnQIprYyRDmr9fclJd8yc13Yct.6WZwK9 -HW7baxg5zKwK9VJeHwmVBQVo2acN5zctEGLzxHxjn3Va9IxBkt4WcTaDLte4 -XQ.obVZ7VeXW7AK7.LEbNexckNKDS5zZumIKsG0llMzMW3fFMS2CNWRHeuRE -1m3Iq8OsqIl1l779kQD32UylbYa0GURFsZwDQ99D7F69Ns4Cn0XAWuNE92Tx -dZGx9xDgrex9fgmvuilMoilMMzu2MaJ9GVcdlqeu04ozgmR+YhFpRhvRZvsS -ZX.Z62ROhqRqmpGH793oVOzCtyKDWKALak7Burjm6YeqXg6wdqoe6wFZoSFW -aHFcERIavsQrZMSpSjfF1bQtIcoiRxJDatIR5vKbYRDxvk63nN23QTualzKu -Aony+zCfSJG5AsLap1Cm3Oz3j11wdFUiibS6YsbJ0RXakWjMHDxPaTpsQHl8 -WE+HYDmvZ5HNjtXDxfaeL1lYyu1vrYlPY1EcEJ8dxnlsSQmQyVeeRPw9cZ7L -zrcNw4qh53X2gZVNfV84N0JHeelup+XgPkms24moGMypNR6dGMSuYbGX1ZAG -m2fxXtrJ81cuaqdCX2LyhmwfmiB8v3SaRcr5KLlwrHnyI4jbQ2Bamyg0+aBd -bkWQY5xUJzjUSmp2IuOIxeQ+KHvBYB38TDkkFWbn66uxrxpz+IA2019ibyrW -Iscvn2Jy5smbWyNfusKUe61ZgzY2HjqVLXl2dyzSyRGatrukjxVK2qd3WutZ -+srTuzF47v1Ky6tWh2sDQGDlb1ClXWUHwZjEBsQSgWeZBuOLcc4IWbOvDAeU -wjeOfDy8vfD02QuVvdjx.OBVW5DAaPO.q+Uk9b5AhBtpHhzGkLmCTfZEgtzP -yZ7aEulRmCvROyfsDdkKGUsRmJXo8w7045JsI8ASW2dnHrK.Ow7Cr5dtlCtr -0kNUzFdIPqqAsLLqFZMkN0t0HWBzBiARiOpWczpKcpAFzGeQazjt3Aqf6QvJ -jvgmUL6.CLnxFobZ.sxXSoSEs8oSO2lz7EOzJVewzAvfNXS+cN1ILrrSPSoq -BC5bXLXkcqcIJcbbVW5DQqWe52iccsX5i31fa50aDGz9hoqmYAs27DdfYp5d -cwjaeMHOB2G1ewWc7Br4NX8RL6OpBk2ooz0nKW2q6fjb6yfLcYGZPKFGbNj5 -Lnoz4X1LN2gXUMHX2xYa1lC.MJwpRWPqabh6o63tGMjvgmsu2Q1KsMHVO15R -mHXCGdC2yI3BXIcpxz9DLiyoLIHPg+59+Fv1JXFJ +3141.3oc2cs0iaiaE9YO+JXMxC6hNYfHonj0hhhNH.EHOzVfMKZeHyh.ZIZa +sQVxqD8LYxh8+dO7h7H6wRV1VVxIIHiFpKTG9ctSxixebynwSy9hnXL5mPeD +MZzebynQ5SoNwHa6QiWx+RXBuPeaiCyVtTjJGeq4ZRwWjlyuHKqPf3nBQdLO +AsJKWhlkmsDIWDWffmYc4yjtdY1ZYhPp6QG6YmkkJKh+pPcNL4txSuJWT.uO +tLNK8S4hPogX8I9vsfHSvpCN1ef90xmhKCWDmNu1mf3XZU8ghizijro+1ao9 +iqPVo7kZxZ78pgVkgQbZ4n.qN2edyMpebaKgxTwSv65UHoE.C7bbP+C9ZYV1 +JQJxY+nGoYzybmxmWILfv3XEqCMdbSHEw0UgMTpFVwtrlPJraOfTKEEE74hW +Kzk.xb6GXvGIvzHhPMxNTGO8g.MtLY+.BAej.Bo6Dcz3wTd57tASz8Ti3RfV +RAaN30rfh2QhKNcGtjjwi5QXw0iVEVbZBVHtCmkFv1JXZIRaqtGzh7IF0GpV +NwOnQXYRO.Kqq2qD8Dsqtks0XoXo4M82DKWIe9uugC.On0qaS.lmAorlcHNM +JHQwCufDek5POHJYQFBSaWNXRi.CY3.FIJLQvy6FDwzUMpgYkTHZ6OtzFgE5 +vAKfhQdOJkXfCRyQ7Mf1gyggknAqvGaPdGLBOKvfCzVT7HMBLdCGvnxen34k +SyR5ZokvrjrbyYsYPLIvAG3oSiv9a3lSnfXh2gMw3NysIPzeH00x3cC5o7wc +I.Pi7mqWS.3wFN.s6.vulflCZnq5IcyRTwjkAqQa3tCWpFEhDfjQXGDl1MgP +YBP+kiMiRNF3wQK742blGNCXJpdr9H+Tl15iqYtMnj6X0meZvfJyfvciZTqD +RJgEl1.CsQCLd8.rT2bm8AyL97NdRxa+YQwprzBA59O7t2+dzCoOj9AHl5BD +GM8YHJA.IPxEhpSy1sHND6ctfC2E09bhzrHQzsH0qTMmbq34boHBghSuEIyW +mFpaN8YneShSEyDhn6PuW22ov8KKPyxxEyyVCcs1V+snurJqv7tdF9MT1L3Y +CiygvRQqK.jWSWOxSVKJ.pQtNOEdC1o.bKB9Njdb8uyjheB8KpoGTy7P.NAo +jU.2N2LHiDOFGBi4TcqL3G4HUdFvqdmtDAcx7LMQjAmWkKBRQS.sYfsYFJC4 +wP+fAht+GUcbgjmKWu5NfNfN7yBEc7DO1L9MThpCtsDXzrhTKJeO5I3rhGAx +JVBOFH6hVBvFJhK42oGjg.eQgzXWz8qxUIwE7PJ.6eHLSJQ+yX4WmKx4IQZb +8W.r58yyDOjtdUj9wnNn+SnLapP8n3MJOJVVHvazxOX5IMwp6YdKLVS0ZKLW +yr+Mwa+5KrdvlZc5Kx734.pg9AfC8Q4u9iJVUnRnKd9B4aSDyfztxReDdzXP +UBj1tOIwHOkyeRIinv5U4YvynkaeJFt9BcxqnoBkbO5ew+BHC+6fnLvRAyYV +456P+OkXfdJsKohYw4BPu.D.dkzAHKxK9L597n0woYZIpJ80dYlcEujXr84Q +ztFcsGpwmf2PxMyEwowR3MAiqBMaZNH5WnUsPVqHfhJWq2OaufFoi.MrIVdp +4.1N8Kt0.ZtCHnEtPD94RaTBPJKLN1ZgCL0ABYJ7QI+MULONU6FXcZbndYTT +JDyjJaVFbe6qprjtjGos3A+5zjrvOiJVrFzChxdJ8xJ055axE.aLDUFVSMLf +AbFLVgdXrxZhF8MNAeX7QDomyIFoGgpAHe6bs6YVJhfZ.n8OyW+WQdDOku+7 +lp9pE4VfwhLP+Dmn71U.xIUFZiFC1Nqb5QUdDEb9alLEY2t4Tf0v7pcvHvJv +iwkOef4j.S5lxKVN9MRD1IV23hxcRkP5.14bkDqHph.3nwQhYGSenVwsWtem +pKw3Vqyn4NiSqtHk69d4qSjeZ+79su9Ldnn1GtFl2nwyyiixRUjwVOq5zkuP +ky.i5TUJWeGo7U64gkYYIS44JFxzDwVLZPYgmFuDLPKiMTDDQS4EiWtJO1XP +Xy4DobnOVTDlmkjrUWYtxi64Jlv9dJNRtP2WufWasb0UkxppFu04aLMscmso +4SAPhU9up2zdUoesZM9NV.COwux0qW+t1zVLoyhYNuL41Uyl6UyBf+3cnm8Z +KrlbXFUZSzpxco.VG0eGJHkXgTih.K3fPp2U.jtkqmWmIsRJsA.kVGftwA7Q +NML0JtZVWJr4fmIKabCXKqVrcGia62A9kGcWwgPdbNYI1C.vGDPM58VYU7Dm +CBnzSFPc6G.8uhvW.fr57QW+7DVU3z8vXI4jwRx26Xo0FZqgR7UAT1jiI8Jp +dKZEGF9YP1Sn2fQugfdCE8F2gxUkU6u7.4ftpbtBbUo601gXmjnGyWMk1VYt +WGL6tyM0jZGzUUBJysV8Xi+FBLvjpZfGFMB9tFMnNGEZ34LnngYHVOb3b.2Y +jI2Qg+35dq92a2PFWe.UGwP9kTGUS8SMYgooY002OVTjsNOrj6VF6BZaJORT +HiS2jK8GewL2N23h3nnsyb0L2BQqx.AmM6upVw8NZ5l0V5165itwsgt8utna +bawak.E45gtIGCcSuZnakKz1S2NeCR23qK5N3Xva72fzM4pBu8bZKcyttrC1 +V5165R9dOtA+1ft8GB51dxxE.YbA+QQzmfWCDH3m3RYd7z0RSHXUWcl4IYS4 +I1ktYSVfaVpf8tHCWtUlnwKV2BibyKHQ2rPcNWf893dqPHyZEGPeYGXU2VMh +4ObaAq+xaqaGX00HhqMuLFtEHBa3PD0lM.bnh6gsomERn9NlcXSS6GMVer2N +kYymmbfBn6jY7jMkqRCiR5kdg5srWmdf8Z2Sptsh85LvaCSmdbeXVJ2GzhxR +wcRO.LIg0TjRt0MNShKzE3U4wVUGsl8pwDrcFZ71bXu0YQvkuXj7XnjdrNhM +5CdDyt3gr6BFr0nmczaUktb6T8HOgNti1CSLyd122FQfeSCabuLpgNXZcEb0 +Ix3ObMvNgTAEXdMx7GZdOoq3818YY638SF5gMtqF1j.+VOrINe2JySY9sVlm +P9tEFJ2ihVXf0HLzO5903QbcZ0s5QcAIxNMbp1Cs.67LUloc+cVK3ELjfmsB +vbpK0oKZ8eY+hbPLwVcfJX0YH2n1IwfD1BQtd2Xq+.crasqzUVgs6avMet.Z +rdmHdWMfh96ayEBSrodPr6hpCfI9CXgBpqhIdeTrftAUfDWbSeLavACXYw8t +sjRlKj5ZUqPppvgJhJEclrB1tGBbZwWHp93iJwEY5YrecmvlYofPJ+4dY+3K +sSjeeoPlmU6zQz4eZdri9R+FMW2vjdP3uVyA5cReOXMvFhgY5pL0HasVCnCn +0feVviJU6iSWsVhltd1LUAg9nH+YUgnuLNALOHByRiJtnkIlci2XMPXrZTWU +hgGxRqyXAUUQrppbsyx1y23yv2TYB3FsShOGep5Nb6sajAN1cY7rfxqV9NxV +aGfZV5N0mvtJ2zqV1tcWxNeJSsXF1r8nAZEncZYCOkQ02opkYM8dEissiDMQ +hOvHg5cbiDpefYjfMQQaVplsZoK.XUcR4Z9nB3c1iDhaa3IziajnJbP0BLYH +SJHZV15bwcuVPsD7QRsNTC8g0TKX0sr0YRsz1PsziTduWnIZ+RSsQFjR5WZh +1FZB2uzD4JjlvsvR3NF9uzzDlbA7ybtzD8BPSkVV80t.s92zsNWpM3RPsLM0 +RslasdiUsNWeX3KA0Z7CPMqW1lXGb6lXGND0pVQ5JpUWboyVQStGGMUhYlXw +bsACvN+nunrK.+lf0RmdLaRWlY9cqVzx0N1LtvrydjDb8Ynh0FQA290ftaaR +bf0uAsvZiAcuiMRTcF.ttFSOdzMsNShsMA8Ezuvm+EfkRoZaLtXOSQHEro04 +ZwwoMTqe+hfr1Zy9Dj.Me.Mc8lX1CUUaQ8pht5V8gpzNC2KM5RZk5c+lSBgz +VZp+hbn0vDo2HIuVklTv0m2BlyI5tv78YxD.it04FNXaBnldjTaY5I1+aavN +MKNcjw4CkBJte42sxgAoeSUuUbUb+ZRSsTSULMTSzlGofluNJ.lcONVoUWPr +NcLwZzZYj.St6taZctwL2BZseihuMAw2ugP0lXPorSR5yC6Vwnrt045BoMRe +Xm9Mhj1j.KommMYValQxf9GmbOjjV+SRGxxK4b7F.M9ya9+PS8xmX -----------end_max5_patcher----------- + */ From 1143f4b325d987b39efc54245ac00002abc778fc Mon Sep 17 00:00:00 2001 From: Tom Igoe Date: Mon, 31 Oct 2011 21:18:02 -0400 Subject: [PATCH 5/5] Further updates to Max Patch for Serial Call Response ASCII example --- .../SerialCallResponseASCII.ino | 145 +++++++++--------- 1 file changed, 75 insertions(+), 70 deletions(-) diff --git a/build/shared/examples/4.Communication/SerialCallResponseASCII/SerialCallResponseASCII.ino b/build/shared/examples/4.Communication/SerialCallResponseASCII/SerialCallResponseASCII.ino index 4d2c57e11..1cfc5d446 100644 --- a/build/shared/examples/4.Communication/SerialCallResponseASCII/SerialCallResponseASCII.ino +++ b/build/shared/examples/4.Communication/SerialCallResponseASCII/SerialCallResponseASCII.ino @@ -144,76 +144,81 @@ void serialEvent(Serial myPort) { Max/MSP version 5 patch to run with this example: ----------begin_max5_patcher---------- -3141.3oc2cs0iaiaE9YO+JXMxC6hNYfHonj0hhhNH.EHOzVfMKZeHyh.ZIZa -sQVxqD8LYxh8+dO7h7H6wRV1VVxIIHiFpKTG9ctSxixebynwSy9hnXL5mPeD -MZzebynQ5SoNwHa6QiWx+RXBuPeaiCyVtTjJGeq4ZRwWjlyuHKqPf3nBQdLO -AsJKWhlkmsDIWDWffmYc4yjtdY1ZYhPp6QG6YmkkJKh+pPcNL4txSuJWT.uO -tLNK8S4hPogX8I9vsfHSvpCN1ef90xmhKCWDmNu1mf3XZU8ghizijro+1ao9 -iqPVo7kZxZ78pgVkgQbZ4n.qN2edyMpebaKgxTwSv65UHoE.C7bbP+C9ZYV1 -JQJxY+nGoYzybmxmWILfv3XEqCMdbSHEw0UgMTpFVwtrlPJraOfTKEEE74hW -Kzk.xb6GXvGIvzHhPMxNTGO8g.MtLY+.BAej.Bo6Dcz3wTd57tASz8Ti3RfV -RAaN30rfh2QhKNcGtjjwi5QXw0iVEVbZBVHtCmkFv1JXZIRaqtGzh7IF0GpV -NwOnQXYRO.Kqq2qD8Dsqtks0XoXo4M82DKWIe9uugC.On0qaS.lmAorlcHNM -JHQwCufDek5POHJYQFBSaWNXRi.CY3.FIJLQvy6FDwzUMpgYkTHZ6OtzFgE5 -vAKfhQdOJkXfCRyQ7Mf1gyggknAqvGaPdGLBOKvfCzVT7HMBLdCGvnxen34k -SyR5ZokvrjrbyYsYPLIvAG3oSiv9a3lSnfXh2gMw3NysIPzeH00x3cC5o7wc -I.Pi7mqWS.3wFN.s6.vulflCZnq5IcyRTwjkAqQa3tCWpFEhDfjQXGDl1MgP -YBP+kiMiRNF3wQK742blGNCXJpdr9H+Tl15iqYtMnj6X0meZvfJyfvciZTqD -RJgEl1.CsQCLd8.rT2bm8AyL97NdRxa+YQwprzBA59O7t2+dzCoOj9AHl5BD -GM8YHJA.IPxEhpSy1sHND6ctfC2E09bhzrHQzsH0qTMmbq34boHBghSuEIyW -mFpaN8YneShSEyDhn6PuW22ov8KKPyxxEyyVCcs1V+snurJqv7tdF9MT1L3Y -CiygvRQqK.jWSWOxSVKJ.pQtNOEdC1o.bKB9Njdb8uyjheB8KpoGTy7P.NAo -jU.2N2LHiDOFGBi4TcqL3G4HUdFvqdmtDAcx7LMQjAmWkKBRQS.sYfsYFJC4 -wP+fAht+GUcbgjmKWu5NfNfN7yBEc7DO1L9MThpCtsDXzrhTKJeO5I3rhGAx -JVBOFH6hVBvFJhK42oGjg.eQgzXWz8qxUIwE7PJ.6eHLSJQ+yX4WmKx4IQZb -8W.r58yyDOjtdUj9wnNn+SnLapP8n3MJOJVVHvazxOX5IMwp6YdKLVS0ZKLW -yr+Mwa+5KrdvlZc5Kx734.pg9AfC8Q4u9iJVUnRnKd9B4aSDyfztxReDdzXP -UBj1tOIwHOkyeRIinv5U4YvynkaeJFt9BcxqnoBkbO5ew+BHC+6fnLvRAyYV -456P+OkXfdJsKohYw4BPu.D.dkzAHKxK9L597n0woYZIpJ80dYlcEujXr84Q -ztFcsGpwmf2PxMyEwowR3MAiqBMaZNH5WnUsPVqHfhJWq2OaufFoi.MrIVdp -4.1N8Kt0.ZtCHnEtPD94RaTBPJKLN1ZgCL0ABYJ7QI+MULONU6FXcZbndYTT -JDyjJaVFbe6qprjtjGos3A+5zjrvOiJVrFzChxdJ8xJ055axE.aLDUFVSMLf -AbFLVgdXrxZhF8MNAeX7QDomyIFoGgpAHe6bs6YVJhfZ.n8OyW+WQdDOku+7 -lp9pE4VfwhLP+Dmn71U.xIUFZiFC1Nqb5QUdDEb9alLEY2t4Tf0v7pcvHvJv -iwkOef4j.S5lxKVN9MRD1IV23hxcRkP5.14bkDqHph.3nwQhYGSenVwsWtem -pKw3Vqyn4NiSqtHk69d4qSjeZ+79su9Ldnn1GtFl2nwyyiixRUjwVOq5zkuP -ky.i5TUJWeGo7U64gkYYIS44JFxzDwVLZPYgmFuDLPKiMTDDQS4EiWtJO1XP -Xy4DobnOVTDlmkjrUWYtxi64Jlv9dJNRtP2WufWasb0UkxppFu04aLMscmso -4SAPhU9up2zdUoesZM9NV.COwux0qW+t1zVLoyhYNuL41Uyl6UyBf+3cnm8Z -KrlbXFUZSzpxco.VG0eGJHkXgTih.K3fPp2U.jtkqmWmIsRJsA.kVGftwA7Q -NML0JtZVWJr4fmIKabCXKqVrcGia62A9kGcWwgPdbNYI1C.vGDPM58VYU7Dm -CBnzSFPc6G.8uhvW.fr57QW+7DVU3z8vXI4jwRx26Xo0FZqgR7UAT1jiI8Jp -dKZEGF9YP1Sn2fQugfdCE8F2gxUkU6u7.4ftpbtBbUo601gXmjnGyWMk1VYt -WGL6tyM0jZGzUUBJysV8Xi+FBLvjpZfGFMB9tFMnNGEZ34LnngYHVOb3b.2Y -jI2Qg+35dq92a2PFWe.UGwP9kTGUS8SMYgooY002OVTjsNOrj6VF6BZaJORT -HiS2jK8GewL2N23h3nnsyb0L2BQqx.AmM6upVw8NZ5l0V5165itwsgt8utna -bawak.E45gtIGCcSuZnakKz1S2NeCR23qK5N3Xva72fzM4pBu8bZKcyttrC1 -V5165R9dOtA+1ft8GB51dxxE.YbA+QQzmfWCDH3m3RYd7z0RSHXUWcl4IYS4 -I1ktYSVfaVpf8tHCWtUlnwKV2BibyKHQ2rPcNWf893dqPHyZEGPeYGXU2VMh -4ObaAq+xaqaGX00HhqMuLFtEHBa3PD0lM.bnh6gsomERn9NlcXSS6GMVer2N -kYymmbfBn6jY7jMkqRCiR5kdg5srWmdf8Z2Sptsh85LvaCSmdbeXVJ2GzhxR -wcRO.LIg0TjRt0MNShKzE3U4wVUGsl8pwDrcFZ71bXu0YQvkuXj7XnjdrNhM -5CdDyt3gr6BFr0nmczaUktb6T8HOgNti1CSLyd122FQfeSCabuLpgNXZcEb0 -Ix3ObMvNgTAEXdMx7GZdOoq3818YY638SF5gMtqF1j.+VOrINe2JySY9sVlm -P9tEFJ2ihVXf0HLzO5903QbcZ0s5QcAIxNMbp1Cs.67LUloc+cVK3ELjfmsB -vbpK0oKZ8eY+hbPLwVcfJX0YH2n1IwfD1BQtd2Xq+.crasqzUVgs6avMet.Z -rdmHdWMfh96ayEBSrodPr6hpCfI9CXgBpqhIdeTrftAUfDWbSeLavACXYw8t -sjRlKj5ZUqPppvgJhJEclrB1tGBbZwWHp93iJwEY5YrecmvlYofPJ+4dY+3K -sSjeeoPlmU6zQz4eZdri9R+FMW2vjdP3uVyA5cReOXMvFhgY5pL0HasVCnCn -0feVviJU6iSWsVhltd1LUAg9nH+YUgnuLNALOHByRiJtnkIlci2XMPXrZTWU -hgGxRqyXAUUQrppbsyx1y23yv2TYB3FsShOGep5Nb6sajAN1cY7rfxqV9NxV -aGfZV5N0mvtJ2zqV1tcWxNeJSsXF1r8nAZEncZYCOkQ02opkYM8dEissiDMQ -hOvHg5cbiDpefYjfMQQaVplsZoK.XUcR4Z9nB3c1iDhaa3IziajnJbP0BLYH -SJHZV15bwcuVPsD7QRsNTC8g0TKX0sr0YRsz1PsziTduWnIZ+RSsQFjR5WZh -1FZB2uzD4JjlvsvR3NF9uzzDlbA7ybtzD8BPSkVV80t.s92zsNWpM3RPsLM0 -RslasdiUsNWeX3KA0Z7CPMqW1lXGb6lXGND0pVQ5JpUWboyVQStGGMUhYlXw -bsACvN+nunrK.+lf0RmdLaRWlY9cqVzx0N1LtvrydjDb8Ynh0FQA290ftaaR -bf0uAsvZiAcuiMRTcF.ttFSOdzMsNShsMA8Ezuvm+EfkRoZaLtXOSQHEro04 -ZwwoMTqe+hfr1Zy9Dj.Me.Mc8lX1CUUaQ8pht5V8gpzNC2KM5RZk5c+lSBgz -VZp+hbn0vDo2HIuVklTv0m2BlyI5tv78YxD.it04FNXaBnldjTaY5I1+aavN -MKNcjw4CkBJte42sxgAoeSUuUbUb+ZRSsTSULMTSzlGofluNJ.lcONVoUWPr -NcLwZzZYj.St6taZctwL2BZseihuMAw2ugP0lXPorSR5yC6Vwnrt045BoMRe -Xm9Mhj1j.KommMYValQxf9GmbOjjV+SRGxxK4b7F.M9ya9+PS8xmX +3365.3oc4bk0iiaiD9Y2+J3JLOrAq6Fhj5LOscRP.lGxtCxDr6CYBFHaQaqL +xRNRzcOcBx+8s3grkZac31Vr8jMASKScPU7qNXUTUw+3lIVyx+LqzB80neFM +YxebyjIxSINwDc6IVqi977znR4sYMOe8ZVF2Zp5Zb1m4pyuJOujghPkrhjnT +zl7BNZQQ9ZDeURIBdlsUOyh7LdYxuyDOGlbms9zYaWmjkx3x2Cd+Iy2xqNa0 +stIhOeUR1xOVvlyUTuuqOzSHRfs7fspEz.8K5GJIVRn4y90ao90okrn0RZw5 +dAkaItvedyMh+LcffRF6QnaO.SzPQnmsM5eFskmmugkgrOebfzNNPbbDibJU +hCXG2tvArSEsn5b9SaXptwJQviQVV6drKCRslUVFsjcn3SJH8bJ.C4n.Ctcf +gRjhDTaO4gPI7DbbbgfaEWtz.RKhNR7XVT1xSASrOYLITJrfUG75VVwqULQR +mlAWRyihOUXAepvhiGsNrX2ErPbtFfkMELvzRrzp6nBM9Dk5CUJq3G1IzDXL +snsuz4WR3r054+rduzb86jPHxZp3OyxyWK92seS5VFX+lu5128c2e6s3c2w9 +K7C4wr0G47hG38OkMe2k99jB12m9zsgem+2b66e261CFMYCz1YCdJ7WaLiX2 +oHJE2qU9FV5EWWiIlU5MZi3vnJ+pANhxagvfNwMxq8r.bz7TVTw3pQqkgHRa +dNzNQDZqHhhPMCr.JsEFQJQgIjt8kz40VJo.dwrKjoeRufBNTZrwizInztyB +igWks.LhvOJeBLfmd4jVlmmlWnFJXABXeWPnMNzS7Ka8uv0.ki4htxQK2.0b +nNcAj9u1BWI77nSA8nlB8TBfNdcgdAcNwmY.veOEsDzP2b9A2P5GTTg031oQ +bmqAUyRVJP7HrMBSOekyN7ThXqfDao7le2g3X2su7S2ezTwE64NtAE6Js93D +HQGJ4N21CJN701TDHyfvipZTEb3JssP6z1hWuxJWZXoskdSE2B5aiRSu8GYk +axyJYn6e+2912h9P1GxdO3ScIJBM6IvKAfXQ7Ur5qR2TTD36cAKBtKp94XYP +vLwSQhWoXI81DUDwYwHTR1TDuXa1bYyYOA8aZRFaAiEeG5sx9NCtedIZQdAa +Y9VnqkF8mh97l7R065I3Wn7EvyNOo.bbDssD3CR55gHHtoRfZ3aKxf2fdEDa +Pv2gjiq+UNm80neRr5hRVIBvIHNvR31iTCxX1CIygwblrEDKFq.Ihy.d0OqK +QPmrLWRD4v4EwhfDzDPaJXaghxPdtn+tBht+qDcbIOpfucyc.c.c3mXB53wn +D03WQIhNXZEvHYEYZT9dzivYYO.jUBGdLPhFsFfMTbDO5N4fbNvWDHM1Ac+l +BQjdgeHCf82OOmyQeeB+2WxJhRik35OAX0aWly9P11MwxGihQ+6477YLwih2 +o7HXYyAdiT9ASGy0k0QY3UpP45nVTx.uiqR4ZYD8EdQxR.0P+cfC8y7e4qDr +p4Bgtjkq32lxV.gckm8.7nIfpDHsceZpRdpH5QgLh.q2TjCOiTt8wD35qjAu +hlwDx8neH5yfL7uAhx.KELmokquC8eEhAxUDuhJVjTv.8BP.3.oCPVLp7Sn6 +Kh2ljkKknp0WGkYNp7Rhx7nGQNKpi9PKSW3YHtYAKIKgCcJLZKkrokfneoT0 +Bosh.JpQR89EGEzHiIngUt4SUGv5EtwoEPywLf17Ur4epxFECjxlmjnsvAl5 +.gLA9Hj+lwVljImFXaVBXzGzHDJDK3BaVJbu4UEVRWGEKs3A+bVZ97OgJWsE +zChyeL6UPp0wWEo.VYHpximVX.Ti7kg1f9fkvZhD8USB9Aqi5Zi8KILqio6R +knfudQ98Te+ivVPgSdku9Orh3nrcQJJI.VgFXzHC7HIohY6JA4jZj6DKv1Ys +SOo1iHfyeUExn6zcmBrFVTuCl.VAdHo54CUmDXR2TcwJTPw70qquZ1HmfZN3 +ArykBIVVbMgpIVwrEmReH9Le6ueaUft09Sy6LIaCLC.nkJ0ed96MZaJ+iGWh +n40WDMm05C2BeZh0xhj37LAYz3YEmt5EJr6qzbpS4x6HKZyQdXddd5rnBACY +VJqAiFTVhxRVCFn4IJJB7no5hIq2TjnLHr6brrHnOVUNuHOMsQWotxCG4JJ2 +9dLIluR1W6wqFes65RY0Uiab9NCS64q1zxY.H4V8u52TCFH9N2PWbfesqerv +VZW+t0vWTg2hcs2u310il6fUBvuNM1tpdW1CmTYSTqxMV.qs3+MOjRzPpREv +MrWH06pARaL0ygQRKjRaGP2M4aqS.29xvzp3o5yTgUG7TQWi6.Kc6DKacIYZ +e1Iyftah.Wdr6QhsC.14kJrpz60xpXclvzE.SeoBqlEP+GH7KBHe4Z8MjTc5 +GHIcBj0Wr4+uCK0FPGLThutfxtlXR9MOmh1DATUND8D5MXzaHn2PQuww7SUo +09qNP5cpJ6qlopjidq1PD6WLh3KVOasL2g9v97UeJ3zj7phsV77eA.FXRcMv +9Qiv+RiFT6SBM7ruNPC0a15zcMytmI7HA2Qg+ywYp72CCTZXptug79PGEK8S +KQgIIMw0ONVTlusXdEnWEACpIAFyJ4IY6hk9m2SqO6FWkDG2LxU0ZKDuIG3m +6R.pAw8NY516KT519KS51anzsHliqH5VXEdXzM4KT5FBAAgudn6fgR2WWx2C +mtoWW1SHmBcSudna7oP2jqG518.0sVna+qK4D2gh2dWWzMcnzs8Ejt0mr5Cf +XUF8.K9ivqA726iQbdQxrsbkKXM95LG6qHLde5gNuXee4iko4yhR0eloc8h0 +M6QhKyGpydjqII0WCNjtO8qZKeib8uBRlw+1sWhLvpqRuQGWlKd.Hh6U.hHR +1.vhpQPEpusJMZ5JuzbMW9nyyWtLcWNKdl0bklwS1UJKcLDo8v3u3r2w0LfN +GUcFD609pHMLsG07vrRdOb.0jhSfwSDyz4wmfPuSuIkQ.VuVKd6Nbzhpn8Lv +MMoTVHWUG2W8tWxhQxyEkNtEurRQvinxQGxy+XAMPC2WXsKW+iDbgRmpGhRo +iZ0s6pRoees+B9cALXqK7nFnxYWhBtpKE9.RswmqWmL9936cT2siCumLp7dc +dVNLdefk4F13QcXSB8G7vlX+EnLO00evx7DxqiPuAfgpDSTCCtcBCuR59sLi +31r5o5wkXi8vsWbxSU9k5D3rUfJrOfp0ClB7zU.lMBOp0+kda+fnbwpmpV80 +q9uZMQsSS.IrUrBY1XK2UPddsqLpVg0oT3tMZfNKIJhm0q.nH2TcLIlniNY2 +VMT2XxEdqFpsBETlEti5ZU4DVaTqlOtsREDatZErMYjusgLxRFWVoZkbQ8MT +SPobbkTv57KXHaJUDqq1EmQuoRgUKPAgT82ix6wFawY9s0LdQ9EYwH5evWMC +R2UPLwn6FPsYLPkG8ip0.s+GpEqRUorsZMf9paM3GYQwUp8IYa1xQy1tXgnb +PefU7jnLzWmjBlGXyyyhKMeQhoS4FsABkUi1pQLrgJrNkETQ8vJpw0wMVOer +x9RP+6pT3K7Dphw6rsbd9toOWkTkFS0dQUeiK7wvA5NbXVdQrptm1clkGtoW +3GDPnthe43a6FD7rM8hZkCzgEmNVAOOuVhNNGXGybmcoYPDKh8ihr39cmV7z +4fBRsAf8cjo09Se6UG9pMRMW+9WTeha26KES6+q5T0oKyxAZPH9VeLpXMMFK +MJLq5iEI.oJBLu8Ufm.OZ77fOQ1Rn34+P1W+kPXrawJ7qhXkOUMireP+hUgz ++BKVI63l4SoRJ644ofVV6f7SPrNA6SOkVxMARijz4v7R334jvAR9mDM4zCMQ +MJIQaj1LsASglGlr6ilLKN4ZO.ZBaaTZxe.jD08zHIhuiHwD7v5HCB105LI1 +fAPr9FE9bF.EEXTJBODgLmSjgpXgtjPYBmnXuxVWBhkbgIVM4o+9n0ZctDKd +Hpulc1.5P31Dr4oo9lN.a1oCFDuidhldItTUBXo2ze8105bmnfN.p08DoVGa +o1qiCtlUYYqyjZ8HCAaMK+dH.njtIlyiDxPoIr4noAiSFzKoAI76ZVZxcHzj +yKSgTsEm53Enxxs5snpsA.8cJaYhILbMqSTtCwIT2SzWcJUNwuCtNBJactl6 +F.wFd8ow38BmsvSI4Q205b8XNXDX1mK.ND23cLqe7CI9Uri4iy+RSSUgG5p+ +HIpz3nQKZUBfJEBksNW2AcFp8b7I6NnNwkbbb10xHTqsY8b.OBxBZWnopDbs +BOIm+BGfGCsIpqTxkZqhBPSshVmK0RGCp0OPE7taMpU15boVxUnkJ7PVQRyZ +PmNnvjLbn5zqPZZHV6nFdYVFhSeT5UHMYV8Nr2HrbTNZCrNXoAV8xrHZctyg +MDIM7IxUE6mpR5SM8u1pqn0kvKf9roQ8N0YETQVpJnPOhptBazRteTK1KOcT +a+8meDTjfQXFCepaMuunggpQRiV5jcsxuB+C9dg27m27+.7QBpFG -----------end_max5_patcher----------- */