Category Archives: Uncategorized

Project 1- Alex

I like taking digital mediums and making them more accessible for untrained artists. I think that everyone should be able to mess around with computers and make cool stuff. For this project, I decided to make a physical interface for the media lab control patch Jesse gave us.

insert photo of the arduino I forgot to take here

Arduino control code

// constants won’t change. They’re used here to set pin numbers:
const int buttonOnePin = 3; // the number of the redlight pushbutton pin
const int ledOnePin = 9; // the number of the LED pin
const int buttonTwoPin = 4; // the number of the yellowlight pushbutton pin
const int ledTwoPin = 10; // the number of the LED pin
const int buttonThreePin = 5; // the number of the bluelight pushbutton pin
const int ledThreePin = 8; // the number of the LED pin

// variable buttons
int buttonOneState = 0; // variable for reading the pushbutton status
int buttonTwoState = 0;
int buttonThreeState = 0;

//variables knob
const int potPin = 3; // select the input pin for the potentiometer
int potVal = 0; // variable to store the value coming from the sensor
int mappedPotVal = 0;

//variables slider
const int slidePin = 0;
int slideVal = 0;
int mappedSlideVal = 0;

//variables for ir detector
const int irPin = 5;
int irVal = 0;
int mappedIrVal = 0;

//joystick
const int swPin = 2; // digital pin connected to switch output
const int xPin = 2; // analog pin connected to X output
const int yPin = 1; // analog pin connected to Y output

int xState = 0;
int yState = 0;
int mappedXState = 0;
int mappedYState = 0;

void setup() {
Serial.begin(9600);
// initialize the LED pin as an output:
pinMode(ledOnePin, OUTPUT);
pinMode(ledTwoPin, OUTPUT);
pinMode(ledThreePin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonOnePin, INPUT);
pinMode(buttonTwoPin, INPUT);
pinMode(buttonThreePin, INPUT);

}

void loop() {
// read the state of the pushbutton value:
buttonOneState = digitalRead(buttonOnePin);
buttonTwoState = digitalRead(buttonTwoPin);
buttonThreeState = digitalRead(buttonThreePin);

// check if the redlight pushbutton is pressed. If it is, the buttonState is HIGH:
if (buttonOneState == HIGH) {
// turn LED on:
digitalWrite(ledOnePin, HIGH);
} else {
// turn LED off:
digitalWrite(ledOnePin, LOW);
}

// check if the yellowlight pushbutton is pressed. If it is, the buttonState is HIGH:
if (buttonTwoState == HIGH) {
// turn LED on:
digitalWrite(ledTwoPin, HIGH);
} else {
// turn LED off:
digitalWrite(ledTwoPin, LOW);
}

// check if the bluelight pushbutton is pressed. If it is, the buttonState is HIGH:
if (buttonThreeState == HIGH) {
// turn LED on:
digitalWrite(ledThreePin, HIGH);
} else {
// turn LED off:
digitalWrite(ledThreePin, LOW);
}

//check the turn potentiometer values, map them to the bay range
potVal = analogRead(potPin); // read the value from the potentiometer
mappedPotVal = map(potVal, 0, 1023, 1, 9);

//check the slide potentiometer values, map them to the saturation range
slideVal = analogRead(slidePin);
mappedSlideVal = map(slideVal, 0, 1023, 0, 255);

//check switch
xState = analogRead(xPin);
yState = analogRead(yPin);
mappedXState = map(xState, 0, 1023, 0, 255);
mappedYState = map(yState, 0, 1023, 0, 255);

//check the ir values
irVal = analogRead(irPin);
mappedIrVal = map(irVal, 0, 550, 0, 8);

Serial.print(buttonOneState);
Serial.print(” “);
Serial.print(buttonTwoState);
Serial.print(” “);
Serial.print(buttonThreeState);
Serial.print(” “);
Serial.print(mappedPotVal);
Serial.print(” “);
Serial.print(mappedSlideVal);
Serial.print(” “);
Serial.print(mappedXState);
Serial.print(” “);
Serial.print(mappedYState);
Serial.print(” “);
Serial.println(mappedIrVal);
delay(50);
}

Control patch

bpatcher edits

video of working is too big sorry

heres the gist

<pre><code>
----------begin_max5_patcher----------
3562.3oc4cszbiaiD97jpx+AV9ztU4nBuAXtkZOkC6o83toRQaywlSjD8RQM
YbRs+2W7fjhxxDngMDsnilJVwPxhe8G5tQitaP8me+28oqto9ak6tJ6Gy92Y
e5S+odjOYGyLxm5G3SWso3a2ttXm8Md0s0a1Tts8pq6dw1xu0ZegaxL+qIKa
Wl4w2L+3I8+U0L7d2teS010ks1OIb+nU2Y+6qu4K+P9va8wh1aenZ68+ZS4s
sNDRwqPWmwDLySXI07DQ+yreYzme8919K.pe3csOstzdMF93+b811cU+gcTr
9CzN7+66+Nyy5mtFLcrs720.+T1XWVScaQySZHAW7o9DeQN0I3DySRKKPHwI
9uZw7yqqiRRvXxHttYSgUHDdDOLQO+JzOHBsPRry0bTHgj3YN9whlhMkskM+
Z41habu5.o39LZe5wR2kW+moUgK1d+UY+xqlk1TtaWw8kmpMfI7Wl6HuD2gj
9zCHHlvPT44DM2nUJLjFWSZL1Jte1B6gsNkPdCDwzVEEqW+qqqZKiPUBo.SG
TZ9.cvmWKDOy84wL260EHNWpFLRVjy8OrOlodLBLabzTe9kxTOKlodpe8bU9
JJkxx0Bn.ysqEtDl0uo3IQzl7L3TgvtTgTZm8ErEnIO2uRdtzHrTIaANuGm4
NR.mI5l1oKPKco202wRse8E5DNORCcYNblvMgKTKxU0w9kSDd4NiGoINANSr
fMwE98joW4xpLurlqYQZcKTfHgErgsvu+KFhsHmlixjVh.wAKYiY+duwJwvt
PVXS0zXsnIvYhkrYs2cho2iNa4NgGkssfAmHVvF3buqVqb5vKrYZRjl1bIDN
XAaTy8FMhTJVjSxwYNifPAKYCYu9q37k3bLNVCYNDNXIaH6Mbrt5Ct3ljixP
lSgPAuKFxSVe3rSenkYWchMOVWc+Csa0ZH1pF+rGvoFlW0+b4nhLxrpHDtyH
.MSDj9i9lxHpINw+9qvHxPFSvD5RrrowxH3.QkRUKcFYRinuT+zt1pa+sgNr
33GuIKGLArkCoq4KrkggxXyn4yjTSUS1cU6ZiIWjf2Lam.i6ziduj0vqK3sr
YZ8ei.IoZCBt1VP+.KleoZxn.PviAH2eITxo7UXgfiLt.j1kAI4W7QB7e0NY
ZpyvwvC9SwZNJeECKnJSqhPcEKWp++E7P9CihLNa8MCgyWEAYjCmLVh8Nwth
n7tg.yFG06D7KisDDiQ.Mfy.wJVdtzNWqjefcF3OtnbLZkj43Atv5y+Cpe.N
XdXw0PEQ4CHW.mH5RHv714Td5dVytAuYeaa8V3xq2ECMp77C8Oqbw4lS4e4M
AC8WD2b9WXSfY+EwMGFLOr3Zpj3byQfSDuKt4Rh0u+E0LgvgTTBm7A25W4eM
MJ11xXVd3Cs0uRBlGVb8eRTV+JEbhX4Z862WOhX2LmMWUers986pGgnC4r6i
s0OELOr35Pk3r9YvIh2Eq+XO4bpCVC5OmpM5+ViNfMsL8iWssebzgQgcL6TX
61evDxGp5hrac0ckM+ms+Msxy9lh1p5s+8g205psk2Vuea6QBT3FazeCiHTq
x0tbURCaJGUd.JaAsvhzqiDIVrRx+fulhj4+X25NJpejWMQxAv.KtViJp0Qj
BHTvkURxJWmIiXRl.td.XrsbmTwaY0gWVY+521TdRb44u+gHJyFosE0dw41K
hSYtv69GYccUhgE5b8wUeDc8I755i5RV7hqYxhx0GCCgBt3b8IfOISgWPHFI
+B00mOtHB6dp.bxRWlbQDsKLkEH0QrC4TcQxEzH3B3YTXYxEjH3BLffAWlr.
NBV.AMBgKWpX56VU1RKuKh1vExpjuS8IXzMPq+M6vkijkEWyDmFkeh+dIfxF
QQebcAP7t.ISJ+qAK3+zV3b9s.Ygra0tFKahsKa7uwwi5xFk7BochVW94n6l
HuNIopwx4Ex1h1u8wha+sLzw+Kh0E7ur.4PFPwjfRrJF87JyZzw9TBiKHbm0
Gn4qjiBI789XBLnO74l5MY+z+5e7y+b1tm1bS85r15LWvBYu0pivCzzMV+fT
WnxX28huYqvHSeFQL96tWK8ZdniQ9grhl61WsUOP416Nhs18xbDENGgBbPkr
rBkORogodu4H8E7w8sYqi5rzvBzDFDWdTIWTlGZ.VV8UMTy9oNUfuVrde4tq
yzZBlgMbP1u+P4VsDnmtxp1k0TVb2aUsf4OELDG8fQWTpEOV2zlcSogVLbPV
g1XovvN5ebSw96dq9SXL.9Svb76QgVmjT9m1rtabbrKqHyDrVV4WKadJqU+1
eHq9y5Q2oYis2cc1iMZuO5.QzpTsOTlU70hp0lsDoeCMUEqyLD7a1iCC4+Fm
nKpLkiDyuLzrZ22rMyU+h5sQbdEo96.Nh0sJE+d3xY5xTYCICa5mCSLT5+iE
SM7H.t+X2ECBCmzx0bN1.hI7D2JsQLo6mBTih5H7Ae+cmApZqKdYYm9Ry9R.
xNy9DCkTY+MFs8Th+erN69l58OZRubDEvkHByCD2cKcEMoaG+rlPB5jcsxKp
Lv8mcVWLDtT3EbuZzWSNINuYnwtl3sY4BTLafMOLofcVHx7jpYzsszyAWz2Q
SQXgfUgsPbQArTZnIazSQP.A5N97CL.kcwrLQa882uNl6lpb.NBc+j0+yWiP
FWV7SbpYNrcM6WnFQTwFuNCDHYxqXi6O0F69y+VUwh.yK7LQeW89la6Yt9Cw
d1HPbmdCCUascz5n2k0af4sMMMC+JpfbEeNtpatqrwZ9MaPv9kiv321lp6dr
VqtsanQNr8jq6D9KECmocbt1TG2+0lvvK7BBCdFEF4qSXHHtvHLtu+O7ILnT
HLRPJGp.xBydihzd+3ffIilXFKjCuPZTq4fPtHc1QLPWPd.pR6Chze7Uyc6T
+jwNWlgLXZtwKBDDRrR0cSYZJQ.Oih.8UHB5mUceqSLkHjDSNJH8HVHSN9p7
tiCde4pORpbYOKE3ECBujzYng.cAwmyEr.AAY.W7Bc.YO2VWgHAMTPylDX+l
KHVQPhQyhstBTnROWPOQBX4mXnbjTkLCEEn0RUpjYnnDftfAzRoDqFo6HU2M
EexXmI6LXRfHOdIfgolB3eV0OgAdQ7fmi39.eJ7On.E9jJD3YpU7tVns235H
AJcFWfV0TwRmwEAzELPfFHsZX+NS5mcOYrykwEHIP7Jj.LhETBvymDfeERPt
HnDjDyLPAO8b47DIf5NLpjQqgcjTkNyLD3jEfmDuJB1dRZTBaKDSMMRkYKhC
2c9FdgykdCB7V0BJETWljsAb2exIrictzXfG8KXrahAJD1IyF1sAj.F6lkX5
uAeLE1oyG1owfcDczWfkSfc1rgcYL56RhqCul.07YC0hXPMyk02oPsHAnVBJ
JeYdxBDQBJRMY5RzkjAVaZ50rjHzPHrWezucl78.C0bULnVwO26g.HpEQfZk
Tdt27fDTv3R+ovx3ggvGBnoWHRVnLRRRRs8nLXiUzWN01GdgzgbbPjGp.CT9
A.xIladj1ZJbT15O7BoA4fB2U3G4LpzroR2gS2obvvXaJmFFJInU.JASxzUJ
NgD7Jddnmwbgyjmpvma2qvfNmEKz4hydpN.BcbrPmIO6oXR.KESoKkhBPAav
vo6BBZoDQ5xqi.lKpzUNCNn5EKRmWFNHkFtLcWPXAwvS2EDzbHmlrKHUjjRQ
LtrCH9okhvLV5vavHHT4gJcBd.aLgxdf3FWNE6XoAu7jTSzw0+rieOYrzg2v
QnEpJz5.cdN+NtttIjeYIIa+D5gr82wuGks+zwuLP5u7PUm.Mf2d9cbEKRH+
RSRZdGmR2N98jwRGdCyugRrNEMfsd9cbppSH+BZubjI5H.7rh.7YJLVJNEa5
taW1Nsqw+VZlmvPzqj98KJw1DXzoQ0mlfDpLg.Ax.6GfnF1OPGRGuu0Di127
VpGu6E2b+ICkDzR.Era51uBAzd6noKZdBnHAIoK3ZBnPiHhzdAIy4EDV9lS2
0C1VNS20CdyjMccNv3N6USWWYpugYwVE4vWEl1wNSK9ASBDh3k.t6TMNE3Iy
G3wwCdBAeT483moRSBSB3wS+4c2hBl.6r4C6rnwNO2qlCe1vtqYiiC7Drda+
ztlMdJQHEAMBJp0.Q5fbQi4na2MOri+M9v2G0b2ujD2lXPYmmjtrJggcvNRW
kcwx49BBJ3E44beTvf.0elHz9b6avH9yxglcryzJI.wNOFrON+TSgcz7gcVL
Xeb9flB6z4C6zXv937pLE1YyG1wQf8tcsOEpEyGpQQf5w62bJnKmOnOgKtTD
1.FzN1voaSvXF3tn2SXJHl7jHbYtSR84L3VffmFO3M2D6BEdNa1j.aY.iSBT
3ydHt.wNNZryx8p4HlMr6NUw.AOo6fDKTlCDH9v8D6Cuv4JtnHNalwMSPPTR
vrDflQQHdkIrjJBJBIIBODrimONcUq+jCJ9TzVBWu.AaEJjHgWRJrKIKgWRL
rKY5RNr4BxBl7aTf1hjsRuuZ8RulnTs6rtqGms+VxvY3L75uyHE4jU4DkFoN
jY25OsGm7jgyfEpgDXOKR4JBloC4b.mr98.jRbFNSEg1exvjrsVRpzCQQPHF
P0jyWIMy3rAbdTxsRKZoAsbC0UzpUBlQCc.sc6HIs3jGDmAJIq49VklSI4GX
0wqAlVzJCu1l+tTPJ6zSc15DFdXez1wNAoc20bJd7wuV1rq6h4.4UaJ9Rsam
eW698pste2cGK6plxuV0+mvbCUzb6CUsk21tuwcW54ahtasnWsoVGJv18U8w
jYwf9G+e.HxPBhB
-----------end_max5_patcher-----------
</code></pre>
view raw gistfile1.txt hosted with ❤ by GitHub

Project 1 – Kevin Darr

I decided to make use of the MIDI Fighter 3D midi controller with built in accelerometer to control the lighting system in the Media Lab. The Fighter is being utilized as a drum machine which has kick, snare, hi-hats, crash, and a series of bass notes. The accelerometer channels control the lights as well as some digital effects on the drum machine, including distortion and reverb. When sent MIDI notes on the correct channel, the MIDI Fighter lights up on the appropriate button with color dependent on the velocity of the note. I used Ableton Live to send these MIDI messages, as well as play the samples for the drum machine. To get control and MIDI messages into Max, I used ctlin and notein objects. When tilted left or right, the MIDI Fighter as well as the overhead lights turn red based on how far the device is tilted. The same is true for forwards and backwards, but blue instead of red. The snare drum triggers a flash from the UV LEDs, and the bass notes trigger a green flash.

 

I had trouble screen capturing audio and video at the same time, so here is a short audio example of a drumbeat I played on the MIDI Fighter.

Audio Player

 

And here is a video of what the patch looks like, with added pwindows to imagine howthe lights in the media lab would react.

Continue reading

Project 1- Tanushree Mediratta

I took Project 1 as an opportunity to explore controlling systems using mere hand gestures. I used a leap motion device to detect my hand gestures and movements to control the different aspects of granular synthesis of an audio signal. While one hand controlled the pitch rate, grain size and speed of the synthesis, the motion of the other hand was used to choose an audio file on which the synthesis was done.

Here is a short video:

I created the main patch entirely from scratch. I used a modified sugarSynth patch as a sub-patch and also used the leap-motion patches for collecting and routing data.

This is the gist of my main patch:

<pre><code>
----------begin_max5_patcher----------
1680.3oc2Zs0bahCF8Y6eEZX5joo0gQW3hXmc2W1m2m5ic5jgXK6PWrDKfab
1Nc+su5B3awADXRs8lGLfhPebN56N78wibdPrlU3.9EvmAiF88wiFoGRMvnp
qG4rLd8zz3B8zb3rmDO7UmIl+UIacod3BPBeFac83YwkSeLgu39b1zRyxGQB
bgS.9gQpCd5ewXWH3KU2Ce0xDdJqTKGT0fIyzKuTj2gINamoXUY8TgUiVT9b
JSOaG0.+X7X0OSNMbkIRe9eAEqVDm+om4kOBHM.wv.eWeIDizfCg75LFCBdK
w3RVQQ7B1K.YYb9BVI3cnIfGh4Kr.g9XEzhPMCP7Q.n+wAH5k.rZDyjJeNiY
dDbb.eoO6uqV9.K2BngzPyG148N+fsqdd7RVIK+dFO9ACdfGE13N.6I.G8tS
+f+wUuYqyxAu+cyQ+5ugbu8i3O7d0E+t77atwLL181a+H4C5gwtfatAnGlHm
smYTh6M2nGyy8114WOpVowyu6N.7iNS5NySERIVunyE4Ki0fJnczRntjH4ed
8RkxCc8oRULMNkAft.rDvpidtVnU.ga3IDzuYhJ3kDE4boZLUrbIiW9BV3Sr
TIFE42AJzmU.JejAhWMKQ.lmHInmEq.OEyKAkBPFKWoTAVjGyWkFmCJTgZXE
IE.AudoSS3rohUb85SZfQQZCrpfOvP0g.XGT5HTqiAswhfWVj7O5AQxn7+TM
wHAd8zgMI7Jz55uyKa2bhf0rAA0cN4ziOK2JU6cCHn+X6HFSIZrFounKYjP7
NYDmvGV7lIdBfa.yT+JOj5CdjNmEFgbAtK2FpCBCOQTiOqntsDPq1UQlDj5i
+rK5rEZC9Uau8G93nqO24q3YwS+KfIQIXiIJgoZ5wbf1ixmCOt1OoqZ+SdwI
CIijCRYyKuOKNcY6rAUawDD1LY.OBYDbgku3e7nT0RhQcZhYIR.mGWxl.JxX
rYfX9LUxgIbUVV.w7cRlrHYAONsqIIhg3sIIhn3NmjH1+Ljj3qQdquapPjOK
gKorBC8H81nYMcWojYbyWr04ydjDtURB6o8EgL8uhP5BKgeKamyqQGOuCczf
MjwDBS05.Fut3NoB.OC8iqXqcPCPyyzigcJpLf1YGlH5aJ9ZKdnACDXPOCGh
BtV6c.RFKjHM5zmfgvFiKVQS9U1nQct0AHuyUGIeMMbsO+lfLQCVOCz8IcV0
H7bX3V2VHj7oGbGBZ1acs.m61aHiS3NsA6eos+tI7dSNmqbgYNDDz8VGd12i
gtX.10BLt69qo66cq2eWOcEtBwDBsuN0uBaY0csqBfin8r6MHxEW2arulNhu
I+6P+dVSGBccTSmTpLPYRVlnHoLYaOsafSH5vZQ9ctKOnWIm6NZFblTIppuG
Ez2x7Qv+2oRTyI3fdpRDcF0H5QThJS.roef8HJA8BNHQO3ip8+9yGWgUBkCx
SV7X485NYzt6RSivnnt2HrKqjiqgcaeLQnc6+WX26+GZfgsVv5FKcvGSk9YW
M99bQgXU9z5kp9M8C197OiUTp5eixw31Io9.HTS5n7ssRpdQZVRACfjTue0V
kDYHvDwFLUSwmjjTe+RsJofgf8p2BZTRpuItcljHeFKWqx+1K5CXhMhFcRh1
lMRUJNmL8RsQPJ1EcpZL1JnSVgwBAENDFa1HHxfHIOajj+PHIhMRxa.TGTuD
Z6jzIiIaBoPFBMOaHug.QXa7NTSvmljTpu31jDZnjTqt4GhfjXqBnLD1s1nh
iFhsIjMjm+aQHRqjL4sHBIxp.JCg4FxF2uH5PHIa7ffFBUSjU5lCggMxF2uC
B4AsIasgRPn13tAQRVfnW5RzTDVbV12X4EUSVKBYomeUnM8BmnuLgatT2TLm
b12Rpmumdj3bYAmkxpMWkaJCbM0zCAmkBoQLeURkcrDbiqJW7fB+3wKM25Sp
UBrTvEEYwSqdmORLMOdUZ497.Kkodg9SEolGuOCftgTBxCOQcVDMfnOi5gv3
P4dwNU7p97Jpkojg9SAOdpvYy+VUgsdckkVqnGV85CmryO6tfOrXuminvPeT
jdJpIGE4SBH6eG6MeHJ.FEoWWDh5izmAIDeuCEy7jzzM25nMrg7YtpZamE4w
yR19kNbfjvQPTTfZ8IvHJzyblbHzdRp5tPUMPnBta+4f4gqWdZ.NzyWS6gPe
J0bF0ib3xGyWXZZ.NTQlUilkKxD405tp2z0l4upTrAY0AjL5xF8JSCqj+2Ca
GgyRopSR88nT7G+iw+GvQ22SC
-----------end_max5_patcher-----------
</code></pre>

This is the modified sugarSynth patch:

<pre><code>
----------begin_max5_patcher----------
16567.3oc68lriiislvXqu2mB0I9sQeakkJdF3TabArlmmmUe+QBJRJQJQQJ
QRM1nqMMfA7Buy6Mf242AuxuJML7qgI4gJBoHz.kDUjYjUV.UFhTTjG9c9lG
+2+q+kuLzXir0Wh7uF4eKxe4u7u+W+K+EuS4dh+h+w+kuLSXinlfk2k8k4lx
Vx1e4qjuZtfsnhp93uYJKZStMbX1XTeMB.P49GDz8eg7wnh7ee+uw8NnaKXq
Zn69S.9mWe4LUcMYaqCOopj2S0X3jeCi+xqWowR68WJ1+rV1a0j8t58WG4hr
2NWlrzdYwG4Kp5d+43Sbxk3AuZr.N22Fd9K8lY+MIAag8fzWfhjk8PYyCd6b
N2qWK8WIul.r6xYjlgyk6+IA2UHv8ws+hPzm9hnO5h3N8EQczEwelGG0QWFl
J.qJHW.tHty7.gbH1XLLXDE6WivrGXP48bMszTkb.cNeTS0x6VxCAN+FJ2+8
EHGkGTY1RMa028CN5sA.Pteksw3wNnLufNb38B5curk2XObossClp6c1PRN.
WF4lcHbg8LvE.u6qLGDfd8h4AA4Aepq5cOWdF2S6i185aI0AWBCz8KVNSVe4
qWA8AeON.3PzzA3hXXBvEwehUyg6aL2.fjEbhaFJx+cBo2+we8qmk7D9Kxy2
SdBXfw.rLrzb+h77WjmOIxSpfPdh9E446IOwrLLwv.VdF9eQe9K5ymD8ILHz
m3eQe99KhmkiJFflCRg9E84unOeRzmfWoOIe5+3u9W2SrFDq6EMl4bCew7d2
M.x40TEmFQQ1TNhsQjwx1QDVJoZDYjplbDA6H1JN+iptj7l8+TMUcYQik51G
nP8w1Ue5q38NT.Pw5Y1M.y38GZhiEXBAWJvReZWJPcVWJbNOCv5s1XnhQ+lU
3crILS1xRXr761D.WvqKr7H2GMsmqIHOeH5VgPv2Cg.trFOEHBDbutDT+pvv
91E+c.7zkW6rteGry7XrySAA4vtOXu0.l+9.fTm..hX9v.fXvaW72A.Tdmjf
3ebA.EF3gqSiYcw3vdBkc+2GFWiEGRTiLHjGmBHX+Za+J7NfG9bX8Ws1xy7c
W5WRIjYo9zXBpib4+9U2+Ypfl5rgBGctxBi0WZEokhbD+O9aQhaJ6cQudUyU
EzMhjuA4rGBJGo5s5btOhN73MrThjK0+5u21R1z52sEbteJlxxyjkTMErsE9
8TxVSsMl+6NuCQ717js9cOd0ve+B6o7PpXPOVWdfLe0itcBfSwi8E1VBKcVX
FyWpIXKe3EOWvTXlrsr42j0EFR1hoNIl.J3zL9N306+CH4C.w9tW9vjCzXSA
UcK0cxWXi.wRSbtr2Zf487gtJ+FJ9vfeSX9dOW040zzcS+BLU3Hjr7Dlvfa9
8lE9i1qs0bYYoK7JCwduxXDQlM5lek4n9N8JeNsDW4rscoWXFx6H6qawfvHv
PLb6eniLzs0c3k38UwMUEzhjvPSJRdaGFyhGtdEMzLLIKKGyxf7X.zUWcHCj
ES69IDKClE3Yc2gaHARrj6xviN2c859ddQtOPhhGnChWFArDh6L1FFZQFY3S
K9ahJB5ik+ZDa0Yx+lksoryI+ZDKGVvxF+lky5TP5qQ7LzbtCbyaA+0HB5RQ
lY3XAfpdDmqPy8GeRs8wOj19Hh5E7DdwrdvF5vPYeFpO0nIHOACDSg1ix.BY
zDYAqstnAysbMySSVvTOhhwZ2CVZI+DLsC4qoFwtE++DJl1gYN+t842g444v
rj8UDs69piAc.Nd.ND1gQWeGll.EHZgv8PFQdtsXPL0YyMLsiXYLSlXEumQ7
C2FQxTX7+iRlFy+G5vXV1Bl6sx+enihYIq4rPi7htZ+FIX2VQbUO9eniiMWS
XaDC8H1NJ5tVXkrC2lYQFJq4f9rV0Vwg0w4Pg3tJJD9RnPLD2B3yv.5C8nCC
bH3OZ3PWkKAlg79yRzlf9UtmgmpMdJ13XnSDlKJsmX8EMi2eHp0BgmS8lS45
A1qC8CASpOB95r9tC3zdO1s+FZNSvCHvbInimfdZBibBJ7QPm6EmED.9dA2f
K3Ygn1N2P8wG+aeOT1w5qgNW14g1WFaFfHh6XeGTJD4H9JiKUqW3b8OcALaZ
RpMwQbr.fn3lqAaO9lG3GMFNWcKBQQzPCheGvH733nYHH45UzHzTTWhmC.hI
ZQyReN2XbUd9mbGnpkvTgerX5bV+REKluv5iSvMO2Lo6xaR6kCI1AP7+jCv7
Dm22HV+yqXrR1zAj+xILcLJvX16uAGa6vANf4DTS9N4.bjmm.g.0D+Ez2+XU
8uDCQAMGUXbUM544Vpa0P.h2pHDdGAvtGzn8AX6B9of4fGDv2v8PQVEh+xoz
46.edBS95q+8cYtohKBoqGTutWhIJGAfj2NNxaGJjiYy+S+CSWOwpIrTWTYn
owZKYyHJ11y+W+8ees7vXyDDi4HX520cXvXnKI76t+04K984ld5kGSwdl1ks
x976X9uZDdhznaQ2KD2GNeP96hM34jpCo.fH++7+UDcigK2JXsLhO.9eneIn
e3ahq+dgu6M4HF3hBEhG5.ye6i0UFvf4JCeKb8MbCExta+ew4Mh+Rg6i7zw9
wH5JJJbRRjmopBjP+Gl5KbF3z7HoLV5HxKoaD9+lsw2FtbzHYy+vARYXJ4Iq
+DjDnqRRftfu94Ia7PpCh5BlOLB1Jj8A8wGDw5p2rC0.EjEw69IF.lgk+X5h
giO3WQDHd3+bF5G3Mvh7qWRcwqDNKREX.8ouv32Ce8BLnoO1x9b35KtBbbTv
y5XntiJPymevoONsulILg.GXeIqub1iLdShZZJuRc+u+0zCSvzA0v1Ycuzj.
N1vs25U2aigjro9RUukxKYc1ec+M70Tu.SrQziOKhDGEzg5m3tcoYHNUV5.z
FGX9bYcU82hp8xWKIORvQK1ucDrmJ1I+9QBhxm8GeRy39KeYropjgt6h3HXs
6o2+39216KP5CeY7tBcg4m3G6PC3.WNyWZ47RtzZnfo6VguRt6yzcu.Db7W8
xuSSdjs+WOWUW+MPQai4m+KMUGqbge6PCmub1kt2dei02VpS91u4vMy9aVN1
ne704nitO6siu8aDzUmIXK6EpB2WWpW9Rhh9JVhlFZZG89R9lUm3ajbvhEkW
qJYq38fNDYv4xUmuGI5KurKKoNV1x93yYKL153y7NFBNmZ4Pepzu4Xa278wL
+0K3nJ25PRxCEDbz4unJqGKUf5vypnJIcLtz4M+lXh.xOTVtYT.2A3tmSt5a
4iC4N74edhnyJh8LP0KqM5Ykz9W1Ks8nLe81A3Gl4lGrLcV56WofiOuCjx4N
rW1zwxVN6l.GovzfjPpP4sWbwMAvY1DXOZU5stOVVoqli.hHRZFNFujcDvyP
wcpE5Ysv9VDnddgpj8VS0SwK+VPF95KAEOr10u.YlyVbj6iTCBHQ.j3ST+DW
4tH0X9YjT6HkceKLWKB3gf4DEpd.1a.v8Byg2NL+EWkbdXO0GEr+u+2cHleH
XOgcleTiuKXO0GH99gtl56HXeu6be.3NjjqRLWGteFoIz2KXGceLw8cz5G5N
fWkH7GWGN6UuCukZVc7w5TdNw6rDi6HR4oYteF+ef7fbd4zIgc3X+Z7xy9sF
P8j2oHKv6hff6PyLIIa.j9NnG3OO.95psr2omu87jbb2cOJDAVG6g0i4rz2X
YDQA27Ay0aQjzE42bLpdocj+4Yph+tqKg9aQbya4H99UxMWhFJGwZqtshr61
qzg23S4g6ylprj3F4GVBhutYf2ihtWg2zw9L5t1vdhp5bosmF9oo2K.+25Uu
yAaYdIHOtkVJ09z171As3q.ZeuO4NiCqoA.OSMfbbNV33YzAKMEj+ZlGbi6M
beX6MZFFyc2OhXn+6tQr5Jxg2G8MONNDlPGlxAAeGAcu78+thkeAsadI4.bs
l5dUuDeP12xSe+PW3OiVScIzXWfNg6RD2mtCaeKYw+1Y4oCu79.YavK689ZD
Veystm8AvmRr7KAnEcSG2HhKMMctBeP9WBBzjTOX.R9UbeX0T+zAMII1pmlJ
eIPJbSfh94px8.DA7+Ty38fLy5FY8R31RhUkuFG2E7k6OardGKnpeM0FX3ds
XJP36G3x7oD4ceGP3JNL2W0pWrk9NcwAf9K2fGuCImK8wPpOOxPGw3S+1PGq
GNVrSvoy48UZ0CKji8twE4o+ggP+suwuFR8igymMz5mK75u4mepvrelPse9v
se8PtetvteTn2eS328ncHEqpu5FbuYS8zgeO.gfOHgg+pgh+7gi+vD04RgjO
Xgk+Jgl+pgm+pgn+Jgo+5gp+pgqO.grOHgs+VBc+EBe+UCg+kCi+kCk+kCm+
ECo+4Bq+oCs+440b8P7e5v7+VVCuk69699qwk+DgG6nfRdV4lX+x4E30GHHZ
F+Fi0dOScza9xSUOyml496nWuXrBt.fOXYV76dMNmdJGI88XIvO5d06ze476
E9tpyKnjPpSIb8hBXeW4zy+9m5E0m4xhau0cii0s4IBguB0fyKrogqsMAZOf
XgMvqS7PxAlqSO.O+d.C3QoG.OH8vOBz.uO+INdKhnRpgtm6hi.h44YXx+bj
y.Ou8m99bBPhmO5skh2MuugQeG229Tx2BvgCI9V+Igs0CPTPECEfMl8DELdD
E7fGln.w7mchBOvTvoI7i51Iiv7YSF9SpVE3CDtdlHSebzoAe.P62Eh+yCtI
cbIZ1aAdeIVPWAdSEX38CCLO15T2.wbESI7fOtW2kgzVFKME2iDruwV9dHli
IT1p5uXW++1qp07Zid9FQBt2EHG3FVg7eOVfT2vBzUCiuOqPP.Wgtr6+vWgr
2BZ3d.9G5Jj4VPCY+dfGtG0JXDJeOHk2iZEVqvC9xCcx4Wb8Ukz2H9r6aB11
lpCWZSXfdJO7dW9K5JNj7RN8brlwPAMeGH8x8HH9c5UmT8WeOHILh5xAss4C
CTfujrltcVne2xlj9KuOcjb+4t8YffWP.6ymRPfhjKfmySoVRlsBCbjdzjGK
Ht8nLS5bAB53LJyzXoivZuu1S8hfGinCRjKW.0ExPpq.gNp7JdsJMbrE.yS4
kMUTTHdn2m334b97a949lRbvCysfggzXuRjzuPPd6Scok7Q+RPfRxWu8eceT
Ei4e4NKhiyk7u6CPv6ejAGbdg3.47N+NDXvGSP5HTS+QDqkiELGtbzUSrAeW
1xbPgBc4HxgNC9N5CLhb94R7GU.3Op2N4+vdS+c5rdVBdPmLDit+fueCIU1s
E0Y38Qa8NeC9cJAT9W9i6sRd37KMZ5C5qTT2QRzy8yKhuGVzeDrjiBPJODVz
aaMLAFGmMTAU6qxfPDbHuSPRLffCV3a6632Hzf4IU8EufBE5U8RfxDQ+Hjvc
+4gD9OybBefpVgzkSPzvGrpUPO0pVA7AU1sdoRafvXIM6pWK1maubCevRKIb
SYItPVBw4AwdU2v+s6S57KYAJ8qyCj6qVOw+HmRnu1QOdmiYecm3TNI4f8i2
6HV525bjy3XDxnc53q7fcn.glbqKNt.t1XuzJ6nx8WR176+xEfB35clpzbCG
iRs1mQjdSPEHqekjy8xQGcud4sj5o7VxDv2Rt66kDvQBgneGI1uvxN9n8iRY
Ovg2QATCk64cE77dWg.3ONuqAlQ.3CmO.NfKM9O7UFj6GX1mPlejWbv.u393
WaAjrG9ChfmftdAT25584HBADTpF78wWE4kcP9s1eL+KG7j3bBBJqSH2OHv+
.yqGeuBwI.cd98yUs8GcZMUdNjE.7SVgL+WLHj6PExbO5YgogBJl1GNOySIC
4LRoo+AgJHvq3.ie7rQng2ft2fO1sePPwLY93QMoB3Z6iWKnfB0P23Jym+y9
7S3Z4lv+98zVJOWiN8xIZvo5ckuIACHuGgS6J9nVY0o6Ak9c67CmDtvaX.P.
fL25bmAca802SzZpdhM34+9eOxkGYFDWbRp6UzcLldf3m3b5IrARmqO86VB6
+2.A.uhAdPzbuM3D5yx7L5pSgk8e06jZdROoSlWEX5ChM1MRQB+jC4bKptKQ
Dx4SCxtejucy3VT2JD5F5E4uqj3dlDhWGLgIyIbR+s81.S.9eFPjhbI9TjjY
venxhuBpD5Tvnmo3uyVkkOQXl5qSGjyBunw2ONE3Sj3uyNDHDlOWVvTPWT9l
3syf8a29nCBr+svam86CE4OgyAgqzHF9AYFHbTNN+qYfvulABeemABWH4B+m
96GmbgmzlfCGyf9sWI7cjnBrmuAq81hB3Y2TpgeXoHx9IH5aRSjyWLpGN33g
v6.Li+.gx+P.hEEzsIdL45.48CuCBTlm9tgxLT+LBlea06dR6S7B++kJb2yV
ztGwM.7bo2+PyCu2mzhmFv4kvW7OX5IxB+vyOwmRVbwFT+Hy9dWg+jixRfWZ
3yuxdN9dmMngEf4MU9Y3lhQAcUvBehqB7iuH9nB4vYLM3SQzHbGxjzWZHSRr
HFSlWI2yPljh8S0Pl7bSi0+4+G9aWZBCSLwCSTsiEDdyScJlOcCTc39JEi+.
ORQE1y798EGQDx.B25xC91S41LhCyHk7CONzFqsbfOc6X9CjahRL9S01PeGS
c1bCS6HB5ai3RAGwXDYZaDw0YUVQ9mWZ4rAEo9RUwosbrz+ucxMT5KDeKJRa
vExPlv.dGvAtEW4cyiL5fuADlt5bkp0RAsuIOZjqjLu4V+2HywdG82rt.aJZ
zK9Jl9kAV+MwNm86H27e4xye4xye4xye4xyK3xye6Ody7S479hC60jKQb2sK
OAGOdQextI5Ct1ou.LN5eDL.LoTRHCYx6D.y7mR.rKaPKEC6+HBhJXfZR8Ww
S8.3xejdV9LiPuuGsegq4VORWV.w8vnxn+ThJqanZIe0dN.EwtCGkTNaa3Nf
sYD3OuP4f39dB6fG288TOc.0GpG7CTjO3BGPG36OnC9QG7C+bTl1qNY+UvOB
dDF7DK7zbgdfCm..x7DWFfSTThmacfepqifW8orO00A9Gg.r7BtW.QONt5cd
Scm4WL3jAoAGcL36OhB95PEv6fm16E7ln9.+J1QWyQjG0A4de2i6zMeFeYBn
6rHVXBPbOtPCR59yU720TjBCW4dGPP39VcD9Ngfzz+LAAOWTEbViVxQlaXo5
QzcA3IYxWB3ISHWheetknCfA+PEcf6.kxOXtH9ygRcug7hA+XnZNuXpybdYb
u6u3memG49S9BGvmIR4kCQle43A7Mw5fpmJDQlIchN2HiM1TPU+lioIhLVsw
.u+Plz1gRLMYPe5hoIMieOOCdPFtd2A0boy90x8KDUa4Y6K3dGzpu5faA8+K
1+uL9+ky+uf8W.X+2.2eonW9s6uXF7qaXmXSlLKSvjRiILohgOFUrfllwZIS
gwmWJB51JbD+tf7WN4q1g60fC2qODjDhDmMjEzbiGSjrlB5K0DLizbqtshrK
JoYDGFvQJKr42K2r1kpASzqciODEHz15tfn9HILzjNtK8cBRUHOF306rgLts
BaBQKClEDBjp3qm9AjnRSfJLOzt20p7SKY6KVirvCyTaB6zyGf7SkvNHpmXD
xelEv3oSoBh8ZLuLgwdqVSABi8jE7I+cHRA5nBCBbTaemAQ6f7dIzzGG9BtF
FLKoQYCH4TzofSNBzkT8cO09EzQ8z92zv1OL4w7uNX.tvQpZZdW721+V85S9
DWj2+Bto66crTNdKj2s286sERwyQgIex4TugUyg2.uprvCQh8UUAO7BlaZ3l
bQ6SEhXH9ScWVZab31.UnVWq1N186PBob4NUf+vhimjxG2rMH.H2SrLoubOc
.Dil2Q8M1PTjJoe+GYqwRyHykM8LhQWTNhyhvfjbXtY0yI0BFcJBxfpmL.P4
aBDIMUHsNB2Jn8wSXS3muz+i0u1gY41mYDuX2PHtYaIq47DiLWSX6PAwoQ7l
4I2ZRaBI83CpPNmMA.tOeIsI6ghbfLOj8Mmgq1u6Y3zkXoQx0Y+gNJl6lSnP
9OWoG9Q8J9un3vz+HLBNOrANhlzuAK3sWKqmV1u9uGoU0IfzzjFhfefJYBMa
G3YthwCAw1uKXQAfgywlBOZCeA9f2qayq.PhBdmbx078y6ONpmbPJsieLSTd
2zk50IK0+u+u7+1+e+u++w+0+4+m+W+m+e+e8e9+5gziAdfR81gI046YDHR6
Hwmg+8K967yUpSNUIu.K1CFzTzGjvuWFu6010tqrkyvs9Bvq2NZoftVT3oM6
KVaP6aK7amsTuctR4P0+xulAP6f46QA39AzwOzyLYoNi+RNXhRMWv4m9kaC0
+jJ18lwH0sLBodWO4+0Wp2O5nBjTLhmoA9NvADtRwb64LWryXQw3wTklTqJn
aWJFK5Vkh8iZ2KxK6qC.nh3Q.hSwuIPEC3yh+QNC1jcD0HpWDDsOjcD8SIYM
3s3CI7yDa5is28YMZ+LcCFDPFQ4F1am.Dw7DwpdSVX8cJ5cHRHLnIIXkOL5V
BHLj8iIfv6aKFG9a+XBR74PBeeBUeA.LlLt63umZc8SksLqEVI6h48GWGlv.
8P2XXI.Evgd5iXWu5azC5n4q467NXfTuj9DxYewIlKGM5fLf4MCLxSGJp2nm
GMvUoN20E+deIy6tfoeUksyX3AyY20bKwoidHHdHfl3hfS7IZO+d9xS4L64e
8hePS0x9xZG3e58a2mwar6+j+dEKF3.etVf2HpJg.TuG6HL8bj671k3OvKfp
hIMeRZRpc32LXBkhv9ymugX7GbmD+Ly9LbMz7HC0T0m9sgjlhw42W3oIIk.q
2LPfGcygTim96hFi+pbS+U4l9qxM8Wka5kpTOWGKD4ZEomu+0fj7gNH02zYl
R0b2ceICc6kdxYazsO6Bcx1X7XM4qBSIYGKlXcM0cOOVeo8sdMyeByVY1GSw
247hXZDgl553m9oq.50Lz+tpxQFvGX428gN3ZuTKJjn.ju4ON51455WVx+b0
ZQGR+Rh0P+RTztuNCI5mwdV3svKv0GxOFufO4rBtSjTGKTBVUlSQlCl72e6K
Ew7m0FqoON5CWeobfmHL5Gu1pIfLB5QjIuwCTZo7feNJsT9f1gHAOwRGjCba
i+zmyhHnU2JF8rWEAYRWhdlkXKaPQK3dpMNz.2yWel3E3fVVq7OSRDDyiuJ9
UMnFrjlooq6g+cKai4QHAaT00h0mTly.nn8yVFRlwCHtYl64l6LdSFxaH4Yf
2X1yzvCt8voNCzMzFjnI3kALWOgY.GGnH2L7GSCBoTkooCJw26Lk4NRIF+zw
0OpJ9UpJaHGSEBxPDR4yJ57RZZn4UDSdsSxKmWt2SJWi8yfNRvYH8azPJ0cw
e9R3ZVRHQH9BjDkl6NeqOxF4SO95NXzPQx2JTnjp6.zsm1.26ni5xEdClXh5
gubgWjtFKXK6ni2kxfLDIcnfbjJY61yJJ..9oorwVpYqZood4n9sOwAP9INf
ew2yGJ8D6WDFRVFGQYyyfYoHxfdI8MwtYd7ayv5yiwFz5x5gRG4uDvXqSlto
L94YOA.dG6ZlAeGyOX9DeQBXCih8ihJHbJFcr1DH+sMGcH7xDWu8zSnePXuc
sm9flh50B+6J6gD+qELUBtx98QfepPNUXMinIqO9hUoFCM30QgGM8kYkQcpM
ab3wJ63hCvgbFw9Z1o3QZ6dp2ja0eeFrkWGx5rlI0O.QTL8cTcwTnvqIjbWv
1mG.L5EGvr79YHJo8sbsjp8j7fdlRX+fRm1nWTKDHzutRA2ILhm+yOHJ.b31
Cm.2KKNdtep4vcNaFcy4Ien6+P+edlkr3eK7MTD.IVEgIoOOfzKaBESEoY+7
Ujm98mbOkBXYdHCEOWh7YJOWVWJBY9bbwrzm0el5cfYq2j3KNzmzdiwq1B57
HUc9RQAM4uFw4HoklBG14wBdIn6Ox37mVgn8UdTfYVyg+jWHM6Q7LkEjtXWS
XOjh6N6IKbze5K4HqHCiXE.ZS+VKA.AucnzMWBMn6n.b+fFY5+KtEt9kqbc.
muOiXChx3mh.j6SU4dbGkbzdXjurXF5Pqny43erZQ504B64iHvSuBkBjna12
A5B01yPfPwIZT4meT2jAAetpnoyI0181957C9BN8..7qwtauOV.+jKiwz4oJ
GYu5LQdQKmffeQzQGPek4IF5DfMzSVnyGk.mIp1wVXGalwJU4H+O61poHUsD
0WBfNf9dG+NbHDO9IVpvNuSeyQHgo5lPGJdNSLEWZZ5b9WZnuOQ6LI8GTZ+N
2FL7ZlPre9FYm.D9.6L4eL6LONMMNUeHF6O1hP6SU22TndWsSkR+vrT8krGh
ntuTNs+C8CBQ1+P+MQd4zcwrS3vSBuAVxeHLZoukdEGM9yvzr7kFy4kjNSu2
nO5WcCxMwljl+yhzYxzrM.vBR2CzOQBBkdHK2ogD3fCI1u3eoKSb7ItZDvn8
KcWtCd0dGGY6uIIXKbP5z9R8U52btNLKf+xqWqituj.Af8qeZOqgdsRp8TdY
+EgnO8EQezEwc5Kh5nKh+LONpitLLU.VUPtKbQLe8ffsdP.eeoDwA7PfKiV2
+8EfAk2K5Qwz+kevQKPur830rMY+V7A2KuTY7nD0KBIi5t5UQtUG7vb6IYu1
r0d4YQcvkvfC.vml9rWz9Tt7kr87DnQv6BMh9mazHHEC1Mw.b+2.hFgvz.Vt
eRwk9Mmqhhlm8fWOlSektPtXLrTXPPP9P+4hGFk2XBJ.LwPtoxF5SJKLH8GK
GL7e1PhBlfPWO8v+iIJD3ZnPAfuEHfXPN7vAbAAMh9NPinhwFZnQzWGMBEt7
hBBZDM1qnccy38.gI8at73XQX1erXIEhHTWWFnCPCGiCCwTrAAwi4ow+5Xzk
KvAK.3d9kw8GHKLR6xGB.AG0ihh4Hdd+LwICAX4AWG4yApEi24JgLuh6Ep9.
5klat0bYYoH2bRAPZUSXRzaIo7a3j4KeBcIIwKj.h6N7qBlPtGVYoN9OtXP0
oNHtFH5a1sSHvO8ckx8A8Ab3zn5VfQv.DE8OOiovykNBWBMyus4QxCAL+MGj
V3mrde5YgQWIZ16mpNrGzIEtI3D5mB3T.Rv08Ltfv6LAWgf+LlB++S+9eb8z
Fh5vAdAys2ohgT+TfENWQvxvL.RO8SmW+ZP7lxXe5OWPpy29RkMkMbTI7vDc
LnpDxRxM.DolBY4COUB+7MROw9IoygEnDLra1riETuXrqoHkoEyKCW0PpIyR
C+7MhU84ERDybHrHL2ObmDtQbWTOubAAS62lgHwZGFdDYTe9Hx7moCDErXne
JyBLSAcIiYjdMPDS2d14MOHvH4nBYiiAEZ6XX9OscS.BmI.E6SgN786UmJ4D
v3C3NRl35gB2QL2m0sEDYRMbHr3IPHEjzk6gFYhHethDVjjhMHTFXh3OeEkE
DeX1x4qm6cyi7Nb5xdkPHshwPbDfiodrzx24tqNy4k4vt972uo1FMQTFfzBE
vnGJE7uisI+Fux9sITnsMg3+YZaZuFGjJkf9CeahgzWICepID2OSaS6a0Nf2
Al9fl+Q7TGtMgCusI5el1l1KbxmZB+Lp6nnWxuOPRgA6aSkiNB2p+rQ3eV7m
M8kZ2NP+dABALQe6i7L3OEfIcCUK4+35.Je5d7sW04neN76uW0XE42.wHsu6
HvK4lZZRzJ86lP9i67yC0XNATi5SdAs4Fb2KGQIe0nw36N1k7+TfYE8ObMe5
R.JhuVw7zAAPcpfd7yBK8..jHElA51k6AP+4fgNGI8VvDu1cGLzgz+bvP2iA
0kC2nuIjX+lx2sW4SP3OMvpubUS37AS2Ql5.3+IBkJ.JF3CotCYd.tOy4zjh
so5wIjfmWD475W0P7a60cu0rz29qY8FVnu9uG2gQOqVYgtmFtTOPNRBCMouD
vtA9wdYExiAdPF.CGCzejkxyQguXW.myuuqdldr9OhN0v2I8OnSMNCQ4R84t
oDJkqV6WxtY+tNAI+l7SEzaizD9DaF.uYxy9gz1NjsinanK+0Hte5sy32yWX
4PhKp.2yzo+StQOj4h7eDDf09VdBgmDfh61Mr9i.cKzSQSO1eWRYBrew16Gd
Ghwgbg.WZXX2xbN2z+kB9Zab.PBXG9N4ocUnkuaYCenE3CBZQywFZPqykrbF
Za+iHa9lGUoiBZvqCO8s0FcBGCFH.Jyo5.tbOQBVeU2950Uh6JaG.3A9uF.N
fG98zNEDzk0tDsN+A4LAfCbPS2Nn8hD1asYZreJyr+JdsUjE6Lipd98SGEtW
5H5dSUk21WwMb6fm6GPywP7OC.lewPPvKwD5cV1aAfw+7AXu1v3eAz4OgYBc
.182yw12FhIZ5cGdUCPA9r2OUWYnJJacY3zdNhr9St7aFNg+zz+OGMWUb+SR
d1Pxvb5RSiJhPBOWMRHLw3vPz6qgL4zvkK0pvtdWdgvX+bK5CJzSHlwuEtkO
wzlYoFkXfdLm+qVx7iSUuQbmOZV08DEy0y8OqzyiGVx8SoJMqV95oSjaTrDr
ii0OWhXwZ0pYiToS0FstOinc1VsjlNMVTXsnwFHUnJStkoDh2tTh30yoWomx
3RzyyHZtyreoRMGNex39MLKHpzYallk2ZSaSkY0fl80JvLYfZy01MWglLoeN
My7cljMS1sCVTYitVt3r4yEWONd7.UV6w1i4aChFKEyRdQHasLlQaOsMFljm
uhLjga3xYawR1PdFNQYHjSDkTFoZvgfbChuJK+prMqjiWxJly4GFsTx4hwna
Lq+jbIJ0aSUkbaFkaTdc3zpSEc9cLiawstZ4p.LUU50osm1daQMkc4m3bAaQ
biqZmUI05NK5ILHAiHVXhnboBCnMJZ2iCpUPvt4bdsj0DEWLqvNgnYjKLIQt
p84WDUIcsbMsULpx1f0vTVtplw3AyU4h1c9rFza3x1t9ToQcrSW1PN9DPJ01
y36Mz4Fv.qpxWA4HCa1XE5MKjioSkaE21BLzKyGcmRkpSKuYLiPwEZc6kXyL
l0E3aAVJmlSbUzF0mMFtqR2BEw0WkQSXm4pr4ZoTtTz7qFMozfjoUyTVMdyL
qVUKSshwaRGuR+B6Zx0WOeMY6rKPM6GkuQoMY4xZ0ttbx9SJj1hFWSINcQaq
lYWOaCO23dsDUY2NnNBWH2xoqVrTomMLWsnbkTRkGUKZ5hahC04pqTpJCe1h
nFSEUoopyHtPsBSyrP6tVkV4n4orZRg4JsVqTadOms75kxWo4l7c5CXgU6UU
rtnnvPTxT3pFS50Spcij6rnqn21RKKernIU1oTN2RjQuzZkTxXkrNbvt5KSV
JEWkU01wMRq1x5a0g5o0TyWolztrUxqPYXqzWag33L5ykJspFcoZxYROnxrn
wSEqd5FwRIOYbiD0ylZcoj8kFV0Z.sYwAyWVuPw0UaTXsdtTYAcVmC1QrZKg
hhM3RloTUQ60kGfk3nFlbgcWr4r0sSKtcWsxkW0sZqRSjyLtLPdn1tQalSOd
WmVIRYkjWRb1lLk41UjhpwrgFZzJzzCiMvHKmdb8pbZ41MZx5MZBll7klkda
0FY6VWfio9lQh0D5LjavR6ACpMoztAaLUiJYpyIzXagFijD2jMZtMhMs1Ncf
QW6VyRVKKrtcbEgLwqKssZ7NsoWW2zdkRIFfzVcfDdYm9MYi2dWgoz100KqD
uNWktiJWXSaY5k.kIYpUHKS2kC1rVkaaypKYjQkLmUeKWr9s3s6ZjMaZTbJ8
wyEPcZIYMGmp6xtN3kLLxT1pspvTns.SIF6Roxxrc95D820NmRBoU8WukKoV
QC7jLc6zPbFdg3fD850hI1PikVsqvmdfZTy470oz6VOiQzUqqqAwcRWrNJYE
TrU8k6aWMCdSWz.1AxZEJzrZrxqY0XJje6ZcYttcv39pyrkQMsKj1FjUYVQl
9CTULolVlgY1xJRiSwoZyXlrvxMZnjKnyzpSzJ3o6VJ0Ztc2Bz6npIUs2Fyn
QWmtlIX2ZEI9sSaUYoYSoJS0MKTntQQ9QSxTsrESo7CikrCVcYT9pCE2JNUf
pkVyAy5TuKsdo1hwxZTnPOCisRcb3zZmztqfCTZHVNMVpDkcsAVI4pliNlyY
yVwHtcyoixYNuulPS83I6UukpXT8XBZYrGJNbTTGNlZyEEJWWXkb2xkLA1Yb
9MLJ4KfmOWexh4JrRqvqitUaV15LJQSLd5zQQ4Yx1qQ11R3LXUdgxLSVVUjE
SUIVeMvJUsbq0iOtqczN3UkmU.OC0qTgMZzpPd01kGLwHtn4hpVoqvq0bEir
1fAiEknYzEMlwMbx1l6xa2YS0NiamqSWPKyMELvwasUXNXaxdZaVzopQmYYr
Ys25.2kxCWmiZslcz3y3Sri0p8VA53MSRKpOYqT9BF.ICdQ9Z.KqIom1SqNN
q7P.J8t9vrs5DunJJQ2B0SqmJQWsVIVMJelTMKoWe6NiNbo52X6twb5CWpDu
MLQzsQWOWO0LJ0JiRXzHuwpoJriRLBMIuxpDsSMUDHTKszlhEWkq2r9oROa6
nbZ0G0XkbpwQUFOtzfQRTymYyHTyVml2HAid04ryoZrgAFyx1JMc875aJFsR
T4VlRbcJkvlK+hbIT6Up+vcpynFJGqlwTsJCTr36HmGJ0DupnV8VRiR0Kshx
HtIxrsZXXUg1XNZdWkpsEGZJgkZVKZosy3q2sQMtZc5alSn0NqryaIljoRyj
4ZWvAnnaFCOtwtw4FOl1NaAFk40MnnJR2daEdE.d0h0MfBoZVHe1L8oLkRjN
VdE87TbE0Y6Ve0lbkMFkIag9ZizStZr8p10spnKBysganRobJUYiESL4JCa5
xVTaXrsqvfmrt95Eq.N7QjmMXNyFft9LXx4i3LY6uNwjrIhWBmNa7tMWMVMQ
2dCPTUfcqWI6Z9N5S5lXCNqkdO73l4RnTrP+TixIHjiOkR6FZy.o4ZjKVeS9
xVk5rrn8BOFKK3nYYpLuv3NIz6jlYNaOCzP0UbxSqTqdUWAdUoGqLcpQtAMV
WgxQMvxoqLQgt+14lliUxC1lUNCXad0QIYQam01J1rzUiksIxPqR1bi6XkK1
HMTed4kYrrKWsZSlc65QwVJwj045EUXU8N4Qn5NXJ0SYpNsTwN7rS2NTarUm
krlKfk5tPoXsJxMVjnxxMa6jrqP60qXyZMbU0MBMqV.2eMWoda6FGujRbQZ.
cStdrI1JMrfMLd1LosM6uto4pdVKFNKZgwIDLqHwCsyXta63Fs4sLWLMa5sq
oo4XXkmyLvpHJQZSvPLUWkr6VIrIkQigCpwyOeYs7KnMAy0s4lNqh.Scw1i.
YxXkQjiCUNUsbiqo02plzLSshY4TKNqr7XlBylJ4vnoawxcElOYXVvJVkYNh
rx2nx17IRzc9hLoop1gaqcBI0nqx2OqUOtbIEWWkIY0jixUHGyDLVBkJeYrj
RVNEbd446vvnzcJoXRSafFnYUTAO1YuTIZyDLEDfUoTLqstYtFSxmd0l3Klr
AzkdHZl0t986lN8XT1sUWTxPZclb3pfMwysq4xjwQSh2oTuF8vvZYJupmPCa
me2VI.6N69Xocaqjt.GdmBKjmtyPPbc0wiv8lNr5fEIx2o7z38mgJkIYB1Tk
prF1qbYo5Bs2krRgJqWNPzD1lVp.siRjSauzfEEKgilBEqHJTwtalEI0TSf2
f41H2e2tnfpSf3YSxunBk9vjo4XpUi0LpB0p0a1VWyRPoQEYqIL7QajPPdlR
TlsTYfcVzTYk4zRpSPPqciRObtRAqBC.kmVJ1.c1hMp2oS0hN5PN0.i5OpOR
efb2BCKhWK0sYA6wJ7h4oK0IGSG8dLTq6sQvXk0jrLhba2pROp7n9U6VXW4I
L0E52a0biBCVjEUR2rOCST9VcyLBxmbo8ploqy1Zawkk1LLSy3MZkpoVc0Nh
CYpvLMy.aw4l1fZMGkPnTmtLIQqhxpqzomJmkMH8V5lkKj.tPb8lpa5mtnZE
Xa6giLUSjtBMfdYWIrJa4IrK36atNYm7sAFKJyj2hxrGvdz1cwY3mHhjTlB.
noUzl5vdpUE1pqA8oW2vzVs1RAJ07N69Y0pCWmQZ1vryD1kyQofxcVkLc1g7
zKYZuClVf0h2YoOrGqZ2Vllz6Tm1ZZ1csXLWUWVdXh3ImWbZRqokxCxKFecI
QX+prVV6RRsqQ2gFBTY6ZJH1ZrPo1xyVf4GaZFcXyrMmDO9vto0VamWMoJpl
xnYC4JpNanilvCZCysjY8B335I6XLuScrvtBBxsKNlSawVMA9UnoapJI0rXh
Nc6WXgxltrEx2sKh0dSR43w4GYOd5r73xF8zMZ0QWYTbJoFlCzJLpmlPiMi5
Lz1AUs3zXMFFukjjXcW0VlmqEk7xV6LxJwmMtQqUIqzzQGtsSRWcgdNZidFs
wirnbXhmOUcVVN0c0gbnpP60ZnQyZ3XVyZqYqanTtWVoxIqvVP0gnqv1pVNX
UMEjXWvXjrBtuvHYX+1BP8jQ0xxLrkHiw1r1FSF1CVd7rAzsLY6zegJcFyJ7
SkmTnRzsyWMNZ4j.118ToFTOa4FS2tvtgbevrhqKqrdRLKpccpa2pIe9h4Fn
lnd0oCob.TEczUvEAgEwrbXkdos1NRsedQ13KJOs3RbZitK6rvBXkYlBuDdT
VV8IrBx4KrYZAZkZ0W0HeUb7l7ETTRLo3tRNL8b3CWeXVX9INxtWHWFuZs7T
pMSgaRzmAjuiUgkqlhhZlYFd9rdahZzUOFLYKC5BrRkYzGYWJVztKWtpwRNt
lc1wEq3VMIkxhqxHLu3njQKrcpil3s4UVxS2hsMC03xRKpI1s05YCq.VWWUo
oImCWF3xd46Lc1lBBVUyLoOcaiYBUgaJq1cL.zewRZrdKA6Q4.iTzQLyZkZR
8gia5Zww3T5QcD.Fu1VGoDiaHUbIUkQ4Slpohg9HN6sSPNuy8QqM2rYoBewx
aVVp8LTUwIEzmXJLJKCKzhcX1kQaixKgKYkec0A7CaWudmd4mmHcwIIz3Zok
aNuCpQLqlqmfLapzs21pEZyUXwzAfA.VIb5p3riSV.QAiWErPtwbVI1QMhyF
qdgcymzYf5btMSzJROYnI1gDTk0PdjUA5k6luQqi7zYif39aG2sWZiZULRkd
ckj8cTMH4nJMaJ1swjDqqtYXZbCbQ3bT9csqtSqHepMCsJpkvjMEGrPzry1N
mMdWlx8ylc8lJMlTeczbYErWVkc3P0wJoaZt1A8OZgMSTf34Fak4T2lGri0T
suCWP6JRB.l34bdEmXYMMS4ppiL1LWFPMVXCiTG6sNhqaWNasUi1z.yA.C5W
EWYqgkP6lFZ7I6Q0mdD8vgzNlM6nUl7VsIEQslNbxxwEEpmccgn6JVHmTQGY
uoYRuXrhQrRwmJmQMKZMPrXkUixssjC4i3rn0JTs53Ars2MDVIe43wq4nzcw
kUitKa5rC5OqmjRzwSRWnYWtFNLJaOq3jhKSpNXWC4DUZ1ZxhgUELykmuZ+p
MsUKuiZV6lk020q+Z65S1nVQM8Zgb53FQM2VU.syTXk1BsxRsKNnapgrlyLl
me2zhnTkw8s1MY0jtyMpnMbSEqoUytHg1rExCauqUUI9hMjkSLqcbNsg8xpG
eBJgN6zh6RMbZWqLJK02f0Kyfvq.BqzymrSZiAbHCGkEGOVak5ZdTVZloJQG
N1nUg0Y0Dr0xMYy1IxycdKR2E0XXKJtMLQWSUDwlNZIipSED6fpYVnlcg1T1
YKupgP2kaW2EuNOhq.i1tZFKWTq4xVobTbYMa6woyLUjt.Vet3rRq2TBxmAN
Iojdy58RKlg2pyfZ0hJtAROAkbBnP23YqjbwlX44DWqIuPsYOll4WB51wA7m
rr9571sxstblQUhgquNSpgZU5ULpw.LHJmh.xtbFiwE6VVvTuY+s7s6tdw.f
skLkxzYIxVLYwxE2lRPJ5LEwdq2tSrqdwNamfyMoSibUqkZxzoypYU..5tSS
Pn7xNhpI6PSqUpgw7510mQWSqTz5Z8hVyLWzX04G2KlpVojZkTqq5HBth3vE
.GKxLzDVILbrsi0kbJn1cFaUL2pVRqPi15fuBczpkIZQGQMEEAzaTT0yVVus
yOOi3NdKZGdTCfiptRZQp7EWgyDkNK1xncC75dyltPHJWy5yr0puQXz3tSaf
S0rVoY0R5n6e9XIp6r4kYj7tdMsqOcjdudNZD1qvVkcasTFrX5jnPgIhyfC6
yYTXFJAjOtlvtkIqpWd953YqRm1ULKNVuVyilxwTywSpOeVVNwdaxQuavHaZ
gX18YD21eAWG1YKn32lqY7EC5KYpzuxhhM2DMAP.TLVtRfnzr1SSJHXgS2oT
EoZ41zu3lwEL062o+LNgbaJ1sHiPeiUU6Mt9ZyD0yTQJoY+FRylaLtIOLWyo
UjgaV0tEpIWNfX+RYporcpxztKSmuS7XZH3byB7VEVjHc7hSysSXyXlpX0zM
JBGpuM67hEXlz1ATAoqLKSl1bKR1ligyH8vAKv0Q03DS3H2yhsu9LkVRoKz.
2NCeMGSKWLJc8gMRUeTGyNZTygoFjwwLEX4NQ6AmrLt.6lI6DjE6JqZOJArk
MqReTZ91EKmguazw0qaHqXYTgonkQo97tbxMZukadKlNYpxTUbcKvBtxIZpu
fmYVW9dsimU.krcoFb1E3zxEc5rxoWtoeEihF7wqUZ6FlsoqmdyzsyVZ45dS
MUknlNB.wcTV4nZchVTKUiN1w3G1VoplkY1xTBcFkvdwL6jyJ3vcocTgESVV
HZKiU3zY5W1tBkkReJAoosvZsPnI0arjeLrd8VvpSAMVpxubSK3xrVBXTE6N
nBYDpmqVpzSpuwQr4.QIGI54bdFEURXYWolcBP+LM4zRlDNmsvDDJYz18aN1
wVqLcluSHQa0cU5ZMxrlfx5YUYbLad31roaLswfMImtTdtiNnqhuXaGgbq5g
njm1dCM+l4HY5chnMkJIjrvjsY1jqhzDbA4Is1PUxJqZNTkBYpmRsX2pL.9d
SWy1rbZM44FqJlnjdGwcRUGfzDmOEvztn3790rsprsjd7liRUem314b5x6Ro
0LSwIImslEmo7Bslhq6faUdW4ofoyXp1QtBdficMIK1MyLdl0UEMyOpQkr0m
zN0ld4ymIYUoAqa.JnrZQGUFfhTJaC5bJI41oZI2ueltEDVQ2NpQoDaKSUKU
U09aJxWTKeUYGTf91MJx1uqoXg5VbVfd8yKCi20picRG0DWDCHNgYITjmqOT
OuptPts8ZsLdoAaXEY5Wa2Jdpzih1nlVt0NV.kDlpIswXs1MorLRygx1HcxF
IxESIeo9rwFyHJjRsYpg6Rxi6XhqjSAJHrXcQfU6RaGMnrREtL01VKy5Q4a1
aEJW7YsLkyEudRlslNj+kb4vU24YEUM4TGkAZlACFjIgC+NEG9cqFkOUglJo
FWJZZGMR4x1OdAoDF15apxUzAiQDasyzw7f9aflf7RkTyXkbbcNsw0giZkZr
YroRU6ucT+czMVqjpYt3IRgRMjNeAGka6CxuZnFWJlE8KUe1bDLWurMxWpSs
VRaS0EkMdJ8VIxUynonVg70UxS2e3xELsTmun8HkJoRub8tFoEiwpVKQKslP
1hZk5OmZSGg4wnYTRTDWHwPpbKMmo10hYMJ4h9w34htdP5gZI1JWuYIg4p7q
xnUn2Z1VYrqKRsAHAGjNS61NJhwhZ1MKt+loYJrr.PcZ9rsSrUcFTELeN65d
iY11FTtIjSebFA5Nr0msSRnWRETLAt5Y1xvf4iUqYQV1NVLaYwUoXYm2dhdU
1JZcVXtvHa4cV4ioloFSsL0YhkrNC27oBTVYl6vxEkyBYRIYWpxtNxk5X0cR
4t7qF3HgZob6DMrPkmzsyDlVHK7JC0RbVNp0VdsJKc2MEAq6kpdbGaLkLnzT
D4SGecVojPckkZVCvKsF5Z.vfYbTCkcjTuq6TtXby1EC1re24sJjaZ+MzaJM
d8ZbCPVX790yTFWzJYAwI3NPnc0sbYxHJAlwOVp.WU8IbTkSMtU8TETpIUqQ
9M0lNhslCXPoROMQOO0mtP8ra1A4Y0nG02w3z4ZUY0FudY+x4KUVpklgcoxc
5CciLTGkkX2Og3SwZXxjTdnbhnQiwtaSgc03ZINNqaXwhku8jlovyqMJetu7
bRnBDIqxXObTN38m2LqzOWGI3lpbyWx8BSik5R9gKkdevaUDjLV6cJpaLiCd
23bmJFlGC.d4dAFvyP48IVdHfljVrrLXVvUC8IoFz8qfVdRFtvQeX1wd6o5f
e11REimlgiAcX1gPEzjcv6p75VDV6GrFDjAucX2yeLJgkwRSw8w9c+jiNxAw
vU1x1g279m1+1A4qPjykHOA9QwEfG090yi8jXCvSBd7xYlpzbCUcae3n6DRi
90LRk40idz0FSPfBrWbswv4tZX76Sau+.eZXxq.6gjvuPAS87eI.tEO1UeKb
SaL2DvGQ8xQue0B9HVsTAb05lygurXOAnE9XKV5.sXoCCxD28Gv0PEQWDrfH
XbHJR934NFa2e3it5PAgPgJLfCnf.GnHWzi8jfA3cBEFuRfffEAXBiGEU.dT
bbgwSJ.OH5v3AwELghgwFEWPDJxEFBEcGSzQfW6IQeQpc.Oo5XAdT4.HO3kC
CaQLdK2qQTxcYIL.remG1m4zqK2PAXd0sMzG01F3MJyDRBN4BhrH9KuGrGGg
06OurG3d3iBYv2vp6wdRnfy19LfAJ+g3reeOjTzBGeDfzThYvbm3HRS5jgnG
J3B8rr.+NED117gg.B1.wM83MSEUIIY8GGClkMPbxCCsoXCBRBSXXHEK7F.n
O1SBDDlvgBRhy8.eUtbWhDiywBBHOOOGmaKFlTDlPTLdJJJ25C9DmB52wMYH
rjnXeXhJl.Yog26wipJISP3MGF6LL3.QBwFFOJX.P2vWTEE+BaAS53BHdOEU
7N5QWaAQiZTn.vCvC5h9GfkLKJXnX2aK19idvUF8GlF3d2jqo0C+4DYDtVjG
n0BWfWLTO+EyaXCcgEC5CXw.C5hA+7WLP1ftXne9KlW7hy0WMOlVPzAxmRzG
w78M7T1Kjj8PUUeyQj1wEvuyAhebdt3.stoBCFN3f3CHVTX8j9PDjfChJ9.T
XnnH9F7hw4LTjH0B6OaB78jHl5wc4NJHhsfvmgEznf4Ioi06IjDUfBhqk.gg
qkPAgNEAuD+k8ZpA8LvEwfe4nGcsguEdHmYwQ44jaLGs2hyeo5dTnumErU6S
AUEEzMwGFcIPdAGGBFIgBhR6PlK64FhuNYIQV60CBc3efVqmYq+Aw5n9nbnP
PjxxDFdiAxGXxd7YsiB3oICl0iYjqu216eAuS8nqvfvdFhtDSy8gk1O6DH5e
8li.jiP9t99wcbHjMf1mhOO6TOpHZNNR+ag5kiBaD6.sVArmllB8A7nofWVt
CAPQZfB7LnWNJrY9DvU6Y397X1WCYBp3fy6wCRTmw.hCO3d4nGEWOPFfbQZT
NxhBSP14fzwfm3PFxjQC32fUebcdgAWsG5yCUIHbjbAik4DG4pDj6QP5WN5Q
W3nfZq5C+jfAFD8n5g.CjyCCiXC.oBpTkG8IABhDVu3ubVZCFjmjUZDmGU.K
o2KSNLrEE.BtBAnqrdwrjwypam9xQg.2ggp2oBalx.tfBgCcAmA5QSfVvyAs
bmoXG.sf7uD3kmCzJPhvBC+p.nCpUEOJeCPfbgCNLzLGDHAFggq1.AyoHnv4
YEnHxgCij6BDHi2g7gxqUfrXKjdVA4sJTPACjIQj2pGdyBxFjPay+TxJAPfT
29hITBMI3d.xvmmlLBCdyQjdq99bFA935lAfAKSZCE0KBjt2uIaYCKQIA5Y+
FG4GVRdCll6vPQPVfT19M4RZ3QDDD8uOezCevGNU.H+A.vEc+BgFjF6YJDw4
vdG7vaKAwKYgCBPPBneXXrEHP5eyeQWwRx5dLueoIwehiXeI241ezCutYBDh
RnHoEDrzGBDJOqfP5y9AkUCAa0.tbBf4lkOuJRDwv+xQgt7g.Q2ftXAk3u9P
90TFwVID.D9NAMXq1WRBxmcxH7B96CvIfkvqkzu28aD9GezSfS.UP3fgBEFA
TAxxe7SQ2m8N755OaPX6I3f8diX9fXJEHHA5X4CemWMWjAouWZo8GfkjDrv6
nmCRzUY4bQ9i79KOvAwb26nvGqiMnd4+wIrCTMK.CkGELvgz4gMllBbGgO5s
YXFhDgcJxbjlnr2wGwPlJl6ynUHUHvTOHN23841LotqElOekrok+U68P9xLg
IjZ7l8q+UxTSx30Rl+KlxqT2e8XuyHXJpnZKKZuzjTJ6a3HyxFuRJ2TeopO4
nyS9+3u9+OOQ8cgB
-----------end_max5_patcher-----------
</code></pre>

I modified the visual subpath and fingers subpath in the leap motion patch:

  1. Visual sub patch
<pre><code>
----------begin_max5_patcher----------
2836.3oc6cs0bipiD94jeEpbkm1JiWzEtsOc1eGmZKWXaEGlACt.4LYlSc9u
u5BfgDvHLBebRTUI1wRX5VepUqtE5S4ut+tEqydkVr.7e.+I3t69q6u6NYQh
Btq7y2sXezqaRhJjW1hT5OyV+8EOpphQekIKt.jPehs5PTx9p5NDw17bb5tU
4zMLkH7B8V57H.4AEu4Qjef+2f+W42I8393zDJSJKXYgwakhfK1ugbWb5JyN
xptTmxRKX+JgJu5EhB966uW7xiZ111SKJh1QeWiaWxlrjrbfyROW9KPn3kP.
b4if8YuPYYfGffGPfGvOBJN7LMmxu.Gup6SRbJcS1wT4MC2O5fIAB.A65HdC
5fEuQb6CdPc.O3JY9TVJKMZuBK9u4wQIcCbv2CbkkntH1uNPUZ2hE0pg3lWD
+aYEPd22E.08XF8B80C4fGdBB9WBHzwcwvvEDqfKoMEBMFqIx0GtPWDbMrkI
+GBg+hOYH6R7oZIfGbAO30p1NsZI82Mfb7W5dxpE6JdyMXLVsnO3VseOlsbW
xxheP4nC34nzsf+HId2yLARQSiVmPAPveTrOKi87phmi1xq..WLHnRH9Ri5P
2Q6oDFLVPEMBP8wqCv96Dv2yhSOCP4VNIBV4KH773TWFevuD3DwyaZ3Dz+S.
NkykLE7y73B1grhXVbVJflrN6m0eRD.S0GFqmvRaQHR5IzO77NBIcfwdiEiI
iDie7yBVWZOOAr18iHVuIa+dJGb5FrEgf+uyES7HmDp3bQhGHsU8ktCfPkga
3XlewYr3mSu32LZDBjvw2Dvw23Z+Y.DOjJ36S1S86ezoC7.9AOHlbo4iFHUo
atRjBMdj5id3dpAaP.Z34aUiuPvAheC2AJM5T4vWf+IShVxlyvPhxtAU+p91
MDCZcT4Hs4kGmtkJafn+I8Lic7mlmYuOWNlQAtSxwL4qheYXf+j7Ki+B3VNH
bZdkQezbJ2CVw.IfjAwoxnqwHwZQLpUev8SSxhb6I.FP.tCiVpwbAdmGs7dO
ZM5Tq8tvTQthVXG.OwAIZ9p3yNaGzQZbAUKzkOdzqyU3XwN2Ifc8haMafz7R
zpDt3WcbB8EZdgHO2Ssh6VDc3PihuqwWQfweOSdi7ertn3TUQ35hxouDW88I
0kFkygYFGiOlqZguFTETf31jsklmdLVpJpB4812WcCqm2U5czSZZSBkcODn2
odFtcwtjrM+ftsw7IbP7.MMN8PNsfGMTDqT2pqdK8oniIrUcCfsq+onMzd+x
c1Ue2hc4wayREJQKjVTbk33FcxlFzsYiQdEoQG53KyMy3nROUVvajGKVGkK5
HVqrnPUUxxxRZWU82SLodY0GhSSeCJxxNzekxHm5u50Y7J2et6srlhUGSU0t
hOVlspH5k1nMKJIobvc6a+qQow6iXTVrpK.4TWoZwtetXSdVRRq1qplW5nls
ba3MzeFuk8rTPMMF3Wd7gJinE08xai2QKXsKiEsqncIuaDNuniqKGithQ2eH
g2JZeAsddnMGP1zMXqxei6PkSj5Qa8DiOFKmjvmzctP854q2bo6Or9dfh2lD
D2T3G+pYk0YC4VUlbhgR2EyI5f78LD5.ME5jy0vNAGxUGb34BZFvwwTfy93s
aSncBOXCBOsBzncvFa3YGsip4fNhLnVU.GMSrVajKrof5etndSF3LvZmgfDK
VVA0asz0tBd6FAqqFBOYrNvh0TM8HLYr1+KMVypSwqWfF4uzWjrRYZJ3KFo8
tTjFNdj9lAdIC.uvPOCAuteEgW7PvqmofWxmT3Uq3ufdPyD+E1TgeoB1pqnu
PyJ37bb6meR+KwiBjlLhYrbcXOeb+5NQL3Mz75U31jmWG6YChhp4v5oC1tew
ihBMDRicMz7PX7Ww44g541v.vK5qG7tKhQGLOfJGyPGkKifggXTOPL7RgX2K
yYQmOMi+Aw6BZBPNaLPNELPsTR.wxsAd2JRdFicLtgM+46J75I3hKdRRuw2U
rNRrbhC+9sPWj5wfJUd85KbTaFyvKdTA5hSv.cgiJtAf4em.JRh2PGz+tujm
KAxWcwWNHi+rBxM2GZmGDUdMzIiDmdxDFZzIAaCQcrE0FNYkSOPSwNotmmjk
DPD02MZVjcLeSkNUtf2f1fyVZAKNs9w69mmdZThKTqNywpDA5pDvYTI70UIb
lQkvSSk.OmHg6sfRPfZpEBucymVbK.EXcsJlywnXssJlSk.eSzeftIzBwMmn
gVDN2JAVCkHXtUBjFJg+bqDZYT3M2ZATGsvcF0BQBWZYZ5M2JgNllyNRnioI
YtUBsLJvysVn0.j4bZLjtynilUayQMOFbN0BcrKP8acVVX0tLcgXqFtckZaU
tJhwxiWejoRVo41lcTa+u91Po6RxVGkTto+pSw8b6QvSajv6O0NLylhNIKZq
Zsc5mkTgvFmpEtdim3+vvYjHGRs2jae79NYKDafX1if7LlXIYwN.3R0obA+G
MfOWTi0EbbDce7rv9173nPvXn5sk24vJEAq7tDSMzm.ddLlybFESOlvQNSX3
GkiblIbVm3LHBR7KeBqNimvGen3VT+GbOh4fka5c.Y4ifSGjO90+JNGejqhG
cmXg.qOLepO2dF6glPo0a04KEbzmTOgezISICHmWArFPyiJNmyw.ryIpBpVs
8QYlRlSpBJaDMePQpVy0jM2k3yEyl65kNe1YyM13N+xo76cdoyurb1yYhi2o
M7937HQDJ7PUvK4tEyx9QDqr.3xR+jqh1uNVLb1YYP8uhZk8gqTtAfKq+Yrm
hbApCWupiNJhZT9XliB6LidXe2i1rswJ1vGKRpmol2fSHgB7N8.0F2AHUvmF
tttmxh1DkeHJAbHO60387+HNkQy2S2FKBCeabAKZXdCWdJSgvCL6taGno+MA
eNudLstj09WNUqQNeo3ZcEdcwjsd7oGeKw159NlQ1wCpQQ3Zv4IbMxG2fv0W
x4KRvGgyWDMoeNxwYZzOmPr7O2x+bK+ys7O2x+bK+ys7O2x+bK+ys7O2x+bK
+ys7O2x+bK+ys7O2x+bK+ys7O2FDkk+4V9ma4etk+4V9ma4etk+4V9ma4etk
+4V9ma4etk+4V9ma4etk+4V9ma4etk+4V9ma4etk+4V9ma4e9j3e9fr2JbZ+
q37ZwcKXi1t7azNsRET7VSpR.4clRh+kOexOWelQsBgbQV9V09ot68ltthNr
UJr8ECDoaQCmeQiPyRqlnSqtwTaWtjzPP9m7RMI4.0PNHCHGjFxAa.4f0PND
CHGhFxwchxwWGaceCXv4qggfwDD5ZIH70RPjqgfb0nOJzPxQGmOSUNDcbmBC
MfaNojf5HIjIjDRGIgMgjv5HIhIjDQGIMU2cDzHlfs7h1Gu8PVbJqnhG+xcu
KASDuEFT+ASGGhTWGxlB6XhwIHMroLmjFbDYf93OBpH5V2c.SKZr1KVceo3i
LArnyrvFv4AVS4LU2gn.cFlYhoRPZE.SfojD7pIIzUSR3qhjzxDGaBIgGgKl
oIIzUSRvqlUtiFV4DhojjVAmMYIogfbMjbFzAgIlEEFdsxZCFdsRaCFdsxaC
FdsRbCFdsxbCd0lFD5oS+D4bQv4Ak75D6fTqope8mLgtMHJ.MEJ.0QRSMTJ8
VC1yh2tP2dwaylxBTmL6gFwfWm0p.ZhUvDp0hHXhHWfXcZSdlRRC1lLwbhPj
tn2j6mzZVQnYvOs7z.gHiHqoulEtpSsGQVxNMWyBy6..N8D7qU1xCWnxD7wK
M9iaAB003bpIdC0Lw61FKpGf2aNzgDh3MG1Pu4fF58GxP8e.C81CWHtj+66+
+axh5F.
-----------end_max5_patcher-----------
</code></pre>
view raw visual.maxpat hosted with ❤ by GitHub
  1. Fingers sub patch
<pre><code>
----------begin_max5_patcher----------
2935.3oc6c0sjahqD9ZOOET95IYQ+Bbt67bjZKWXaMyPVL3BvSlrasu6q.AX
vFrDVnDaO5hwohDlt6O0RpUKoO+OOsX45zOX4Kc9eNeyYwh+4oEKpJprfE0+
+EK2E9wl3v7pGaYB6Goq+9xmEUUv9nnp3bmrnWeqXUwaG1sto18gEadKJ40U
YrMEBg3g.e08YGOX0mdkeB4k37m0ekjC6hRhYEUBCTWXz1JYvk6WffkGexzC
EMOpaco4E+LlU8zKKK3ee5oxOdddLtnjsrOtfw4CIkFD.fqrNzjsNOSZbhW3
ETefKtR+QtBMmz7ox5OIPYCntjMo61wRDvbEH+k8QI+0OapVf3kBy0DVb.Ao
mASc02fy35zY1afILWeJPSyEnu4tKZ6V9CcpA6aBC1iFnoAC02f6MpQq85YB
6kJFQUC6Eou81aJfV6kdE1ay69zwi6MDwfCj40cfLbkWOHXJ3.t40+RZRQR3
NgQ++yhBimJBU9Fxi96pBAbUYFAhtCcLzva9PMgAxcALzeHkgF3yOPSffdW.
DxBPwKfpIN3cWfCRiBkC.DsvA+aJbP5DCXWMCzg3qyDCwrWFKvNhILWDPy.c
HdZatCFVG1DVKDnYTNDp1V6HQ0gLx5TfZFkCgns8NbPcPi3Lq6hxvZasCGRG
3WXHcXDRuYtPODQzgvtZBCOHQzAwdZBDOFQzAHXMwgGiH5n.8BnCcaEP2HIh
rvI1IV5TE.hv94xFAfjIlCRTvTQB3nHg3gJ94dlP+3Uv+qUULGPkwkLyA3.c
PNXGhTHCV633EHExnmCYX2oBYzIBYm92u.HbSZL2Y6r.2GZtYfeEF5IRsOdx
o8FClJ9guR7aTbq48E9Na6JtNwMtUgEEYQq4NR40nWM7sXIa2ZVk5Wg2B.el
f88Yr8rjsN4EoYLIfdkiJVrYC9SG0gSE0AS.0+k5gJKpIHsiCJc565DFYcPm
pCZInqoCJ4gwAUd7rHbGWTevzAKp0EcptnkftltndOLtnRWoAF1cVdxzwJeq
G5T8PKAcM8PCdX7PksFPhaWGzfICUDWqC5TcPqw7q18j.tWbOGKyDuxJbdgC
JrLmns4WBpfhkkKNWP0GRnIkjBB7dHIE6qgiUWFNJyhuXs10HBxe5AlSlbf4
DMV4srtsUVIK6ztouDEydmkkGklzwLVrLb+9NEunyWoDn+dZ0Kx641hhRDEg
ZKJi8dTy2G2VZXFGqK3.8gLgE9geSvgkulzsrrjCQsYvupI+olWXarQUSvKN
+L3.OQZ0nGaZ3NGuFmt4upG.povT9nFQI7QOx48UBKp0s1p2xdI7PbwpgAv9
0+R3F1ne4AapWr70rnsoIkJQOjtr3FwUlyTQVx5ZLUOQR39A9xhggGoxbtQd
HecXVYCwZgGEroxhzz39U098JmPqt58QIImfhEo6GuxpSYy3UuNkW4tK8tqp
Ie0gDQsq3cnKVUNkS+mKLNttGd+W+GgIQ6BKXEQhl.naakrjPtg9V9lL9j18
rWQMuOPMa49vaX+HZawaUBpqy.+wi123DsrsUdazqr7h9kUD9Zd+RNqGNunC
qq6itpfsaeL2J5+.8NNrc6P1crvdkeocyazkFipN9Av5Tkc1V5M5PemN7G.t
r+237g9GAJNca95liuA1f9igWrnYFBigNPO5LgNf4Bc5jeoA1O+eofCOfg4A
bbmKvoWtMFX6+mI3oWzFmrDg2B4AbnXmNwNnJ19vtQeoLxEzUPiOWz4vJRJr
NXHHQkAcJ9md55PQvcif0Mcg0Fq8sXMSwQDzFq89Ti0Es6R3n.MeAKdGWtBD
c0HM8ZQZvzQ5aF3EKAdAAzYBdIeFgWjL3kNWvK9AEdUJ9Kf3flne7Wn4J7qt
4sefSinw.m2hRJNSwF7xXH.IsQrYasNcyi7.mnwaj40avMsmWGQsAQwTras9
fM4SdTTPYHMhLSyCgPeFmmGn1vFy.7B+7AuuFVvjtNflAlAthgL7kCwvQfXv
0BwjqavhA2Miei3cNK1oZ1XmpofcDoRxoLcaNmkQxK3rKtb.M6r1EaJniDbw
UOIIc5MEqCKSmn7+8VnIRbRZqTd0ZKbq1xHRvU2q.d0Kv.dk8JtAf4+N1ION
ZCS536cOfXDz0CxnGUPtxzUBDQHUWQh6HqDFLqSB1Gh5thEkWrxwMzLNJYrc
xpBPJqeXzLO8P1lFcpNg2N8Amsr7hnj1s28aG2MpxGToFyopD9ppD.CpDdpp
DtFTInJpDHShDjaAk.CTTKJGsybZws.TfT0qvj8QQJ6UXRk.cSzd.uIzhxWN
VAsHvzJARAkv2zJATAkvyzJgRNETSqE.UzBhA0hxEbojqI0zJgJtlFGITw0D
aZkPImBjo0Bk5fXxowfpNiNzn9lSZdLfI0BU7Kfi6cVWXyoLU0S29jN9eicf
ReMNccXb8g9qcItW5LBd7fDd8Gp9wNq34rXtMWe9nkeWaPT+i20locRwuGNn
3woga2wxycZu5ZuEscauCX6v2ZK2NfyUbaNQt24WIllKmQF6kitQJgcbWIBe
ZW2qk9UQ2MWWiC7NfGZorlB1t5jgziPabV9b4Gcu+acKp4jM1sLwQAsaI0Ip
ttndbfXux5Kf9jgYuB6IhtjhZK9LNKAI5T.bcmdSK73.RY7F1BV1Jwo1t63C
gwwo+XaV3qcKbvMxTkV75MurN+fWQq72iJ95FVb75xqhPiX5bJycaYznXgci
jgf08M.t7gfAAAADPI6P3NFPBG.HU3Nov0m1S7tuaKwJww72CqTbh6EuvYuc
tIxmao7pczsnyv63n7hwuQKmbgKVlk9CAnAFpaIr8ZurNMaKKiaRhqmx2bb+
J74NeT4E9qiDTpIAU8XAEn6mJVPoFyziFT.AOpzfx.LS8f6.F0UuKwOvydCT
m7UjtD006NRC7eDtizmyl3CQIvzdb0yzond.w5hNUWzRPWSOT5iiGpb1Z1qK
c83eEnkktdlrOZInqoOJ9wwGUJQZ6qIc8.rTd1jcQKAcMcQgONtnRYDyft70
iOc5fkkNTlrKZCne0dnAeZnCE.fhzjOT7efnCkxepZzlNTvXKcnXoCEKcnXo
CEKcnXoCEKcnXoCEKcnXoCEKcnXoCEKcnXoCEKcnXoCEKcnXoCEKcnXChxRG
JV5PwRGJV5PwRGJV5PwRGJV5PwRGJV5PwRGJV5PwRGJV5PwRGJV5PwRGJV5P
wRGJV5PwRGJV5PwRGJV5PwHzghHYJkm8y+n5Tb57VXxEOjzv5k36Ru1iLN8d
3HimUeEOJgiuvU9K.HheSQEmjdY+j25NvAF+N+9vjI9kAVNPAf9c.J3jAJz8
NP0PE.KkQ.F0ctftR9E9FM.oILUPBcE29f4Dr5lbrkuGdbDwCb+EWWWZadvG
Gunij1LotTfYzwYfricRlwpQlpuQ+rgI.pSmIrFtNaFPPuzeM1re8hreYE+f
zdwrNqMZRhFHQzdlPxpXycSx0UKHBRAIgcOFgidRBnhjfygjfpHIzbHIjJRB
OGRBqhjH5JIfBdDj4v2CqhWN1eNjjmJRhNGRhnhjPygjvpLFQvLzysRR.UjD
bNjDTEIglCIgTQR34PRXUjjt8bwPU78.ygumqB1Dwe3YFA5KZYMbDOiIZYdm
DpwDsrtfDhwDsz4Cv+9DsQB8SI.+jIvlSQKM7EOiIZowyPLlnkFfCzHhVkEX
LCytgTY4Dj4H1.TfpQ0qsjfJXS822ktDGqdxVkHU6ucjymrUYno9aB47IaE8
W0MtOnRiAhmAuHnqpwxpsjToYatDjLrCNG8.UJ+HAlX5YkjLEMrnglOyLTnw
Dsromo.iA3xldl5ZLQKMh+feahF3arD.JcUhTiIZoKEF+aKsm.nQZq8UYh.u
4XXSpJRhLGRRoD0LGg8ATY1Mvbj..fhgfzWNh8B3DZWpTDmP2RmP0RmSyRiS
wRmRuRbI+uO8eYQqvTA
-----------end_max5_patcher-----------
</code></pre>
view raw fingers.maxpat hosted with ❤ by GitHub

 

 

 

Project 1: Enhance It! – Anish Krishnan

As I make a lot of videos and short films in my free time, anything related to processing videos excites me, so I really wanted to learn how to use the computer vision object built into Max. For this project I used the cv.jit.faces object to be able to alter a face in a movie by either blurring it or placing a virtual spotlight on it. First, I downscale the image to 1/5th of its original size, then convert it to greyscale, and run it through the cv.jit.faces object. I use the output matrix to determine the positions of the face and accordingly place a blurred image with an alpha layer that I made on top of the face or add a spotlight. I hope you like my project!

Original Image:

Blurred Face:

Enhanced Face/Spotlight


Google Drive Link to Code AND Necessary Media:

https://drive.google.com/drive/folders/0B_T97VaALHA0U1Z6bVllU0MzWEE?usp=sharing

 

The code:

<pre><code>
----------begin_max5_patcher----------
2626.3oc6bszjiaaD97r+JPTkCINi0P7h.bOs65D6xI0V4PryEWaMEDEFMbG
JRERp4QbY+a23AoD0HJJLRDRSb1spkRCAIazeciOznQS8yu4hQSxeTVNB7Vv
OAt3he9MWbg4T5SbQ8eewn4hGiSEklKaTb974xrpQWZaqR9Xk47e3o2BdeVR
4sf+Qg5XlHq4RVHphuMIa10Ex3JqnnzvwAWBnQ5iPZf9Cj5H3SM2SgrTIEQU
Rdl9Vf0mur5oToQdMO8rkySxRkUksuL0IyWV0b1fNdns5LDloaPBGS6tyjL0
Hw7Ie9qwrQ5y8Ku4M5CWdjX1eK6VQVrD78U+gd.KX.xz+LcLL2fb3PG.qaxy
pJS9uF7Bqu60hONOMuv93MO11GBYqdxdAtw0VcCNiC1RcZA2H1nV5RlXtsy7
gjYf+d9sYCos3atMOuTBlmeehDTkCVjJdpGiBR4svwXHV04ouF7h4zUcHdvt
5PsgV7PhdeWg3oxXQpDbSdAXQQdrrrTgXf+TwrInzkyE+4l6IMISFmuLybin
tTptuhssADDesQf2Rmw3yEUBesaAC2hOYidTKq.kNjVg+YQxrjLQJ3iZu3d7
d4LiqwqBGWDi+x7bwGjm6mSpFu3gjro4OzKWajkOx9As9HcuHiC3.xceGXfg
kGFQFSfggLj56b3XUqpl6DSBZTJq.qdZgz9XUVJ0+AeZHoJ+2.kLUcbPUgH9
tRvMB0vcfnPMlcJP.LDASAJjNCburnTomf7a.U2JA4MdnIyEyjcRIPNJJArw
yIB1xOJ7b4YGxIF4y0DAHDpOh.TjOBr3aUFl2B99r3BoPM4VZxraqzrx0lJs
cCHTeYpn3NYFXhxZNyzTmVF7wXYXTioASHsLMD1YxzPQDauIzZaH8ZaBGRay
GRWVnsAZaSOLQjPaeBxdUPRy4VpPrKgVfND7JS9f5l2BtTtiURPlghoO3hZ6
fglQYL67anV8u8fJndoraqbPOvztCcelPo5PPvdbSn5EGXrHTxvn2vs06ncq
1GjJOWEfXqo.Vqyxp8ZrQHiaHwtjnPr2TZ9.qz6vNWARAS5QewATsQFqbq0e
D7R0WnqN2jd8smHxlcX5siAeAUrLpPbvLhRKsygiBrA1GQaotGlxEhNcib0J
rHcwshIoR07quad9TYuiiUQ7Yiuyn61XEfX+QiEh2IXn56WOWTUj73gCK6Zz
MrGHHhiVY8QPqm.MRQpE3sw2TzoY.9h7zm90lkE225xvnwp38C4Lk0mELV8U
Sv+b5VPvAN6O9PVZBOfspagszscziZubjHOLTyMRDdDq0bCHTjkEwkLBb7qg
qIrRdzNEd6wfmV9H4iKJ.uybLI6mB9zWo7u9KpuA0eizGjFZnhaXjqQ11orS
mcN8j1sijrc1GgzwQHLCRG5fw5L8fuuHQjdVn2llLWwjyCLG5eMTcLKe8pVs
ImodARQdf0CQNQwxofi9hpwtBGHwLJg4OVdBdf0WCSTp3ozjxp9TP6veyJLC
pmQG4PtjhSSVbqTuVcS9PvFt2P9wDqGtedKloSBqC6vtVOHNrUesM4N20wVW
pcAh0xRT7znUOqohJQM5VCuVcd09P0pA8X6DULTMisu5GKkEkWIz6zzc0azz
U+073k50ZWd027we7pe3AkYQN8ekLKSjVpZT8wzenX47EW8Qwcx2OWVjDK9t
Bon58yDIYWMWNMQnZq3twyyuuV4Zj7cpIbrN45bppOSqKHMOeQKNOihnXhTc
kqKUfrrQKaqOFXawxJcHg0w90fLMsdci5pfzkXFNHH.GQFswkoGaYu6Ke1CX
Zg3gp70N3sZRrrJW0wJp5RvE0cX04WOHz50jWlz3jZ1vnMZ897ztuMylLsVM
GIJlMYy9iF+Z0e171Wlk7eVJ6pEK.dslmYYQmWg9AuHOIqp1mRuwVahDSEK5
DElVVsdbg91tbaD9lBk8oPtHu6NtV3RqWyyaR0ijEK5pkpj4xcc9qKkwkcC9
xrYpoWZ.36uYS7csO6t7FTiVSh6D8KkaBEOu0xh3c05lM0MFVa71zUmSLt5n
s8RdFZ2zng319kKOWDGOnY9mlOC8pj8H.YfT5WXO9B6wuuYOPLpwUG++TrGp
6QErW134KHGB2AzibGz.VWzweg63KbG+di6Hpl6H3P3NpOo8LdIoVgbnMoV7
clSb+kTKDGMFEACogqyrkcWI2Ylsvgms7+Qr6MDkYwn.XS1JOxcO.SeEu6AT
rYmgpS5oO22.LwqIV6k.HPG7BPPuCHnyAfbuIMt+wDH3q.zwf2oK4FQwdgET
jIs8j5swOjOL6jXG4bicZ1XEsiQhZhsd0ZbPfYzAzTQdjngQowaqz6oz.NXm
fIKqpx6qdpwbSl6rlU6dPnON3VUztIA8+lCayJdsmqs93HAmjY.CipmLIrIA
8Qp+wo6qp7PAmt4LhuerFHMkNwXcf38gkg1Bd2fkQTuk3cHyEtwglOnohi2K
.TWkmLr2pmBH+bL4PaWg86EXqbH6.J+.BQdEDbj9vVKlq3O3ayebfZ2IdWbs
vE3clkQ1aPgHJyVUiq1NGuYgomC2b8JyzQC1+tLhrSMhrkEvKuv.cdtQH4zD
xy5P+t5EE5WMNXKPRXnGAB7oAHrUFpaVeakXXqiAurL.H5bPCjjcS990dn8C
F0elb3opPIm.RAo8R5YKp.aQRRB7Wr9A8GJ7k9OUGn10OQcJYfQmlPha+V67
xeaU7vXkEhLY5ddkS0EOKz9ZdhrSJp+37TP812Jj5ij5WFxlxrqyWUrUyuzj
X6FAqb2r8ODa8a44rBwTXSlaI3HDLT+xcxHQAH8WTCTp+FgrRb5aB4zMgwsf
sbcFRqAMUSQ9v7wfFyGF9Jw7YKEahovYnA1YSUyuzi8K7vseXHKjvLubtqr.
Q5SAMFPb2Fv9uqSsE7qwQlJgh9pv.FFtd3GxtDn8L76+ysdn52yjWSVO8ANg
s0K4W6TvvOb6FK.FEZsQPZH2PEx4gHFsO6V+2kq1MyUYJczm8qyfw1jVuyaq
Mlk4KKhalEs980Y8diMZprrJISrdqTWUl1M6o0V9KtJHtCBBNDBh4ffzxAdj
xQ+pQrWAoeYRNZMhLp0dStCAwGH4rWSz.HGrKNcOCdyKlJM+RTDb7hdeXo90
83ncObRIwjtUR3IPzntEM53DM2USKbvMstHZxN7pH9WzXR2Z8I.vwntEM9DH
5tw6P+K4cnyP+KY8Z96RooGmncgdVWQEGO+LxEIQ8B0ExQK6fOy.B5XbCGK5
5hFNDVQnKyBP7ATBcYRVD7ToiPlO7TgNw9E3E78kDK8.q0tDcMJXHLsTWTRt
OBhwMQy7w7KtI5Pu3U4T3+zgvz5xJmZ5NGmjbgrso6bbRB55BoQCtgyEQiHd
wc0EQC8xJMdVPV8.3C9JMbRzHuDejQzvSxfzfM7U2gjFjIwc.MYaIGaluDKV
T+SGlQHZQLZt3y1ezJYWZ9yjL6eZ1ctQEx6SZtdyugXiDEw2lTIiaJU+QOxs
4f2jKvhrkI01Mkj+k27a.z6GU0B
-----------end_max5_patcher-----------
</code></pre>
view raw gistfile1.txt hosted with ❤ by GitHub

The helper patch “process”:

<pre><code>
----------begin_max5_patcher----------
947.3oc0X10aZCCEF9Z3WgUDWlFh+Hesqlz1sSZZa8pooJCwhZVvAEaZopp6
29bbR.ZKDRKNfJUMM4Tm9lmWe7wmzGGNvYR9ZlzA7IvuACF73vACLgJCLn95
ANKnqmlQklg4HX2mOYtia0uRwVqLgyWo.nlnR0CYLS3lHhUK3hLlx72.tMn9
1Zh5WGcIUM8VtX1MEroppmLX.xy2EDjP7B0ehibA3nxHHcbvepuQdZ0Sxj4W
g7cJi8zvgkGb6HZKXRIcF6UrcErifg1KXM3VER8vRVEUNNadz2Cy3nXOnF1f
PM3w9FZS7BNLyvDax7EAYb7l42tgb36A4CjAKYY5mDf+IAN5PfOgJl43dDC.
El3g0eHDsAPpNOp7bTaI6PhEcA0sb4x7rG9G.dRqlOnQvEpRen7GsYEvnPyR
9cRIBiayERrnITVLC1WEyRhdIXsWKK1hfwE.7Iw06agMDBKID6u83gnMxtzh
t.zFBMyrgjtQ76pF1jUJUtnefyTpp05zvHORRRRXhKHNzTflXHjreBC9vQHA
h2PX8rWqDRr4VuRlhlkA7q95RrOLAuo0CjtmKXccpnj1xiwPatMDXxkJ4dW3
CR1.ecBvgZ3LxlY.oRUJegTQKTfQPvHjKnJDSjBFgAiHWfrBBJbiwfIaaNEl
z59xX76wYlyUdKumKRyu2FMcbzNuvAXSQ6RfH58iafiX5BgP7B16rtM2atD4
ETUAeMf.ldKs.Dg7Me+4URV07ee0TlV6apztCNUzFmBmr8bDr0pCnvOBoAAA
3sK3gHCbQnlJeIGn5OB2KoAW9o5cdETn98wf0tQPPqyzHK5FY4zzxpj.9hk4
EpE42wYfwWKYExwTAWd6eKzGDTw3ulOckt9nRN9Ke65w+5dtTwR+IelflIG+
8h74ZrfiWvR4zwyJnO7Cp9rLj2xx2K6r2i3tMXT0BUP6kQQP61XL7B.M5s0X
7yH1L.mLt3k+2pL5TF+41fLeUwzlmpp2OzErUlTlTwETEW2h41wf7qFzdc52
hPviHj9U1Ocgh5BQgVPnvNHTfEzInC577ow7hTVgIgr2EVWVauJ6eRJS5hxP
K3s51vNSYKX34RITWVAfsg6g5xRf39H0rSJih6ibyWjwe.oi1uznyfzg8hg2
Iow8hgCeC0gNIkL6+bzMoRrkRGiInMpFzEyqoJ3qZrftb4c5dJqGsQCcmTyy
MypQtlK4hpKwlKKX2waFOwDgVna3Qo61YUQUCUqiCcpt0bc9gXEuN6Tq7SC+
O3jI9.G
-----------end_max5_patcher-----------
</code></pre>
view raw gistfile1.txt hosted with ❤ by GitHub

Project 1 – Sarika Bajaj

This project allows a person via the Kinect to use their hand to move around balls in a virtual ball pit. Much of this patch has been built upon some of the dp.kinect2 reference patches as well as a reference from https://cycling74.com/tutorials/00-physics-patch-a-day, integrating the two by creating a kinect system that uses the closest player’s right hand to move around the main movable physics force. Most of the work in this project involved figuring out what good bounding boxes would be in the physical world and in the virtual world/how the user would actually interact with the Kinect (I wanted the output animation to be very obviously user controlled – almost painfully so). Additionally, I had some fun changing the aesthetics of the actual ball system.

Video of the system working:

Gist of code: https://gist.github.com/anonymous/9ddab8deb04b40090d8efeb8cd0b5f06

Assignment 4- Tanushree Mediratta

This assignment required us to use fft- an object that segregates the different frequencies a signal is composed of. So, I used Alvin Lucier’s “I am sitting in a room” audio signal and got rid of frequencies above a certain threshold. I then delayed this signal and added feedback. This added a certain villainous tone to Alvin’s voice. I also modified the patch we made in class to create an audio visualizer that visualized the audio signal before and after the fft manipulation.

The code for the main pfft~ can be found here:

<pre><code>
----------begin_max5_patcher----------
1246.3oc2Ys0aihCF84zeEV73pzHtXtsOrZ18k8880Uqpb.Sh6.1L1l1lczj
e6qwFRHsDBp31QZUUHAigy247cwel986V4rk8BV3.9UveCVs562sZkdn1AV0
c9JmJzKYkHgdZNYrpJLU5r1bMI9EodbTgDyAEERPEhRpaJQRBi1OMZSEgVhk
5mgW2faa1tsDKH431Qc6FUHOTpGvYvMyZj82s6E28vmWMRlsmP28.GmIMbB5
5twcMvOzq8KuP8YAoabA+S2MQx0Xw1938PnS6X+3t6ZOrdlBBE+r5leid7KG
Agixd+YxydVYFRdnFanjifrihJcNwfQncpehln9wluzZf+3r1K7+KrNIvc9r
1l9ZAlleDrEWv33Ii3mar8HjKHE1xmjT8Quo3VXp04lN69ihZvdWk18EOM2R
dObCIk7Fxhr+94sWxIYrRF2X6l5JCObxpeSH7zorolnViatqR0EpPKIzF3tx
GLVvHxiMSlUFGl7D1FdeKTLyOQGkj.mL7v8if+VHy1B005DfzIE.XfEEfGIx
MOSn4rmAhZk4vQfuTTxTqrS2A7Vjd3eM8XKhtyY8MRVhBLgDwZgwKJcJIIHw
lwDfsixa2kFGLIeiME7CfccyLIceWo.WqsNBstQBPM4DFvDpBt+2.YL5SXtT
.jLU6dpJhu.TYHU82cIghyXMT4PO8LZAL3inEvnHi1kDsI7bKfwWQ7rc5SVq
AcD3unlhtZxhBgGL5+MSY5aNxT9HJYxPHnkUgckapvh8mqhjyQO+PEKGCDeq
AckZqoe9xCDFaDloSwBsYJ1eA9Sve.9cqzc0rxHR589l9shzm.uBUiren.W0
RoZuhmBFvbj.aZoA3p+6m6ZKC6F0OXx1QChsYq1WYsEKzhcrapYkRCahmrGJ
KRIIXKP6dWH0BtkKUCR6OzCLo+0UG8mnOFMoR.8rnT7sJrjyTXA9BJSp5q7J
Q4KdmxyUALU777mL.G5+djf5RzgRhPdbQN8vazy75w+U6mbRV6qeBwOLoRD.
iFnDcsF3dEkn2HyQRTG26H+JmrRR8oWi1fKntTAoDSQUFhxYrp6ETR8FDon6
A1Ooup5z1ra01tsZGYvDJYr5AZmFSFUpVO4AgDIw8FzPnUTlnnbFi2x312Fm
1.OwNi3xI6HJkSYj6j6q5Hw.Mv3cY4mCuDjLmKtZq6drmcaOgHpbZCPsL.N+
zloG01j3pZV2T7eso0Ax3OAQYCWRpviyJs7H1SJtxcWvJKYOuqjs8BaXJA7D
PpfPII6qhKUJs3Ianj1TT869.d4Sq0XERNVYXiAlpYoRh7vqbE8WWmkZ9Q2f
lQrSAr5hB4QP0g60IR9psgD8SaKwcItdg50p87lrL96pJN9eyQYGWTEZ2aZ+
9d5kkgg8GGy7unBrdB5MX8p2ZuFj1wujSBVCOqWXMhw5ywTN4pfMUv64byND
UZ542iEW0sl1gMpLZafceKv9e3.GlLNxtKBY3LP1abfWlVGFNCjC5lzxPxcN
bzFHAClCRPafj+LPB5YCjZeH92J1zV.cy.hXagj2mBRyIuN8iHuN.9YkdELm
zq.aDz6ENWj7VJRv2GmLK8gpqeByEcyVChZg6GM++XhWqOkPMmp20nCG+Doe
9P8HHtZ8XoZw3FtY86WRLsxn6ykSaHckfUH+i69O.zouGBB
-----------end_max5_patcher-----------
</code></pre>

The code for the sub-patch is here:

<pre><code>
----------begin_max5_patcher----------
1046.3oc0XtsiaaCDF9Z6mBBgdUgqAOHpC44H2UTTPKQ6kIxjBRTa1EAYe1K
OHmF2XKQrlxN8FYIJRO5algy7K800qR1odg2m.9.3OAqV800qV4FxNvpwqWk
bj8RUCq2MsjJ0wiboNYi+dZ9KZ238GUJ8SbYOvbDzKNHYMmlTiPxqTCR2Lwi
CJGNJjMbs6uEMN3tgc6Z38hZtcTx3n85WabCjj7uKVMnOsZ3Yq9G++ZY5pmD
xC+cGuR6wDSJ1B2.Jnaoa.HBwdAIeKD7WiqQT6LkZ2m9CTYhcrusds8vl.cQ
6FzZkLYJNminSyyOj90Vt+gOYGSdH46OpWBOZokHTIx9CN8zwKgG9+e3gxwg
iW96Aui79d1A9OkfC2huHy3ak4PBm3B+Ok1jVL9J7RiKuoO.dGiugwKIl7Rx
fO.dooPWAnBWQIhOq9Z7BiIuzhG.toib5+Y5vKp38fqj+Eyh+IZaYeF7aH.B
9HBxjBWcJ+V4b3TwXTdDg92eaYfcr69zHmuEaavlQCHRiiHzVwF2F23Y3dS.
8oFC4kd4EYSExIQD99m2+Ff.AWducn5oRm2ALwYS4VxvixtbaBxldq.583Xt
l9Ts3HGTyaXu9KopzTzXgQn0+3qTbUUoYwzwrmyq2wp9bxC1CT51vPnN+Pdw
TB6PwbKSqpQqpXcKdMiv2dPIz42dTD0FEfESda.XiJy7w9TK8o3ovNKhXueu
1739F.cSjCmMdl464SSmTcWbASHuFWg9RZj2QWfPp86psklOYo+H5KzrVWP9
Z56Q2gD7QzSybY.4SlGfhpJ+pFNq6Q7dMiUvycB+HSFsKiaz1k4CgKTz1XfJ
kT5.c9HNwzVmNWDOlR9MMxzJSKseg5lgg346lQiojlO9DumC5a4Uh8hJvyrl
AdOPs28oIOo2Avj0dAg.m1vuv63fpmT8bIXGuhMX9KFWRsn2TOsR6VhPpMyz
NvA.e+dCstO44qf1NU8PEud6EEXROSKj8Q8Hq6fPZuW1sjodtHqVkvaOq2d7
FGpTMpNeLAtkfPvTzF2YozxR+YEDZt8L3j8oyb8oS8eAUTF4T0rK1O6rFZtY
37H+mu1ryL1wOON2qF5pNk04KRXd79tcpcA.lVnj+vbx8y4hYRgZmh.rCNR1
AEfcP2ncxCfGSKmaGnr6T.hFfiqHBNN5chGRHAnXjIfCYKD9brUc0bWkCzcv
zvKaZ3sY5P1.fIKB0As2qXQnNjr2rXjTQtWFBduJjgJtaVJjDDRLLDN.CQig
gPgVM6lsTH4CKxdqfrb1RTPAEPquyaOFKjCIpl+nPd4r7rLilOAyq7k019Lu
qeb4NiZdWlO4kkmuwcoP5uz8gWR53OKNMe2GjOg0YDjqMpwG57uPvKEYI9kp
LFVNHFo1X4us9eTp059D
-----------end_max5_patcher-----------
</code></pre>

Assignment N. 4 – Jacob Randall Holmes

For this assignment I created a spectral system to be used in live performance based on a tutorial video I found on YouTube. The patch consists of a random pitch generator and a noise reduction patch linked through pfft~

 

<pre><code>
———-begin_max5_patcher———-
1714.3oc0akzjiZCE9r8uBJW4Th6NHP.lbJyobO4PNLUJWxFY2ZBVxADd5Yl
Z7u8nE.ClM4tA6jKfaIgdu22aUK82lOawF1q3zEV+h0GslM6aymMS0jrgY4+
8rEGPutMFkpF1hsrCGvT9hk5933W4p1+MlEglRhvVblEZKmbBwwVGQ7suTLV
Z1AVFOFyUyjcdqo7uDiUSQw3TeDgtecBdKWyaAvm8VZ4F9r8RKfms7ki3o0e
k+IjH0Lv17om7gUnGgVPNfrsuOet7wRCkU7WiPaOOBruqshyc7fxWPuhmsw+
vfV4em2.+SweVLiMTUG2sie1R73I7+jghIeEmX4AbZWNAcJm5Aw+xQrVHWjR
1SQwKJEptABfSfTeBbbUvhSGHg+noI6.InLRJ97cTvWoz798J0dimTmcXCNo
cwywbwawRqEaPz88Jffv.oT4qDybOztjvN7PKm7DzALGmrFSQazLm8aP52Ey
Dy+8Q587j1yddNFH8N2tzm22NVxAjhh9uA73.NMEsG2vI3mkN+O+tcBLAerU
V9PPe3i6pQK928zBXkqTBg9JID35zqH5+fLA1jw4L56VUOHX.UQAb0tCNvhm
shENScP9nziobQwHcDmGZtbSj08nLqPpej+2xWCiFPfJrfeuo7bsmZzPm7Wk
36oDbTlnRMF8dk9GB0Y+0uf8BENgSdcPVe.Z8mjs+MNx5OHGxhEFIQV+Nd66
NhQNTr7F.kU5RaC6ERZOznc04VjuWCD4HgHjAIFeBmjJzyUznyVfNdrRyyp7
IR36SL0DErrrIBU2jaYSI3SjhuGV1JJQHgbg3kkngoWWUDuSNMrHbBMiTZVq
TjyKlvBPw2UUNAvVEBYktPwfvJ07KT56iYRkWELPnKNhoD5wDbpXUJHdN2U1
cDdGJKludGixSEU9pXCIMZo+cns3N+XpHDsR59PBQppyGx9DRDiJYhZXsr4B
xIpUxSqrqJLpQPQGa4iEpdAtzQmxPaYoaPIRUQdxBmhN4LVb8tJ+tX7Ndd2G
IT5UnHmcr6NSH6eomucCSz4g9laUOoqyn5dWKbT4qSQmpi1bTbbtma8o+UDk
HRBh4DsJvwtrScByWR2lvhiqIu5dN0ROQBq3s3OSh3unHTUiAwvIGKLhVTpk
iH6wo75swQ6Sq2Ri.Ehlx1j6ktliObTFwo9.psd7ptjUiwUq89p4o6nXcvfl
U+SWQxbzY5bB5nL3qimAbuhOaTKzP0C0VMQyJRPjGa4MBj0V7zCBHcBLCHCd
633HhXwjS3m2iHzyUYmSnjxXksOh53pWeHXiDqK0nZYIYwjT9fvafpHcOnd0
35Lut98XmF1I95L.9VE+kQ3hVi37DhnPb7kekVAbqftRrKNCy1Us6p8WkjB2
988iy0Fd5KrD9ML9BcfcG8ePfIx9eJ3R7yliAoLi76bDDJgKylpzR10UH0FX
lXfkNcvKiozJt5OGifAUqfrdUj+TO1xfaOFwUEL1uILLTuBqP4ZO6MRqW2Vv
iHLUeKFpiS+.PjndTgpAAIPw1t5091Nz.kf2ETpGioXBEedTy4bINoQYdJfr
Pk8kq+fPF3QCYhJM28XLq.pEt4BGDir6N878AiRPzH1A41tOpHU0M9X.vBnq
ILvaHvJ7tXOUaivFGv3Vbu.5U21bmwtFMV8nsbDoaSXVPp0upNSOrE39CZg4
aEfpLX.XPSH+GcHoe7rn3kvGQYA41WtZuMnyPPk2iFpRQe97iDnbUVStgCAT
t+mvlB7HfJ8xOcCWYlIkyiFopcntOBjx1s8S4sQcA2kf6Zgoa3vdP3nykeDn
25ZW6hmcZS3azFTTb2RtlAHzH7q+u.W..vsALAiCvzlq0k8VVtphN1TQkLH6
ucDKkkkrsvKH2l0ptzDgS4DZ4Ns+wxn.xwYj95l4AaCYB49Kd0.YIQ5SHw9A
yZvtYMvzvZlp5bmRUGzT7ALkbgmobgnHNKvc0.5lXs6qATno999SotqoJoCt
HXB4BGS0RdSHS3ZHSLk7f2s.DfIhI7MjIVMg.wJC4gvIjGL0AskrTSbrCS4r
faKgcNNVbABxOgE84k2xwq7s2x45tOlsAEmepskmXReGx6kSBd9E98Qc0i0U
h53CF9lGC7G7F2n9r50SpklqMHxkolANq4mzUn6JNIMvMioTnATRJxWxlbkw
1cfz1MIM3cQZ4EHqh.0QEd9i.955XfP5ZOFTx2DJsZLnjIVmPmQfRPno9Af2
Kk7LQlFCKBnI5I4+dCiuGm4jd.ONc.tqtZbRpd0Uh6pqCWyqBW2WCtquBbBJ
+84+Ki.dzi.
———–end_max5_patcher———–
</code></pre>

Assignment 4 – Sarika Bajaj

The goal of this patch was to create a rendering that would react to the amplitude of the microphone’s input. I made this by originally looking online for a sample of a rendering tutorial I found interesting located at https://www.youtube.com/watch?v=qf1OGUeIs1s. I originally started off with the video’s original patch, removed all the audio processing they were doing in the patch. After then playing around with the rendering part of the patch that I had kept, I changed the noise type of the rendering, as well as the scale and appearance of the rendering. During this process, I discovered the “distortion” input that this rendering originally had set to a fixed value, and decided that this was the input I wanted to be dependent on the amplitude of the audio input (as it was giving an interesting zoom effect). Thus, I wrote my pfft to be filtered and then have only the amplitude passed out which would then be scaled down to act as my distortion input.

For this example video, I simply used ambient noise as a catalyst (people walking by and talking) as I’m interested in making renderings that will use ambient noise/images from an environment in a way that is obvious yet still interesting. Unfortunately, the Youtube compression ruins the effect quite a bit, but the general visual is preserved. A Google Drive link to the video is located here: https://drive.google.com/open?id=0Byn46tolhCwUUlNzNDVObGppY1k

Github Gist Here: https://gist.github.com/anonymous/f69fd0c33650aeab618f81ad8d37ecfe
*** When I tested the compressed code just for checking to make sure my file was all right, for some reason the rendering just stays stationary while on my actual code it is working fine. For this reason, I also am uploading a zip file of my files, just in case something messed up on the copy compressed feature for some bizarre reason.
Zip of Files: Assignment 4 – Sarika Bajaj

Assignment 4 – Anish Krishnan

For this assignment, I used the pfft Fourier Transform object to cut out certain frequencies in an audio file that can be controlled through a slider. I combined the output audio from this with a modified version of the sound visualizer that we developed in class. By moving the slider up and down, you will notice a change in quality of the audio which is also reflected by the characteristics of the moving shapes in the visualizer.

Input Audio:

Audio Player

Output Audio:

Audio Player

 

Main Patch:

<pre><code>
----------begin_max5_patcher----------
1906.3oc2ZsrbiaqDcs8WAKt7Vxx3EekUdQp5d2jU2JqRMkKHRHYLCIACH3X
6jZx2dZ.PJQIKIS8Hy3JxVTPf.nQe5tOnAn9yauIbg5EQaXvOE7aA2byed6M
23pxVwM8e+lvJ9K4k7VWyBaJ4uVJaM+U3L+ca3l7mj0qdTKxM9QBiXyQyBnI
ywYvqjYA3HjqF3Zvm56XcWkrtTXbiKtuRYgSJpEe9NR3lFp5LCsLpu1VyqkB
WiGZmuQlWaD9oQXqbUMuLb19KYeWHyMRUMW+Z354UA2v6AfdD3lv7RYyZXZz
MfasTVJp4U9oxuvyk0FU6SA+ue9mt+WaE51640x1m9hFtTyqu+mUOWWp3Es2
upSZ354ULduBLLZeQV6QAdWgTYqYTCJUplQ.laxopMhZyisFtQLLyGOGggUo
q30lbk1Zk.M1qKqMFtFYjUhViV.1y8c61Fgnn2.Oe6aozxUR.VAjXk4opdjB
sSqrtN6af6mb6en+8Ndozz2uvE7VYd3VMnRUHN7cajf1bb0tsrSaU88OoGTM
inpQ0OEInip+qGHvAyHy+R61SI2rzzUCwL9VxXn2NmaeRt7.PxRUYo54UkpE
aMsfFMzluc6sCE5qzWi652tc1Di0KEeUTVILB8lncsnE703VvbTDOIKZNEdg
oyBHPz+PbeZlqZZ7LPKmGaektNPaOLGDFx0ARJvYfyl13rWhjwSzCPvfiFzp
Jt9KPnpeNbWLX3tiAyf6rx6NBCtfIvE3avshGK3QDS3CRL0O7cs93mzCwWIs
AAe5LLT0hmAEZPbFwKN3D7rkEhfHD7+QXqIjDqqJgjtFtiy70bH1Z5aAS1An
qwSmtdIvKdl..zUPrCiriPwocwGQsib5HCuVq8qQcXsdOtPL7FfUycgJOBqF
rvqpn8hHjoiH1knVvs7DWQuh6Cnj4guKvfbePYGGSH6ASP+H8Db9752itJxo
VXT57TKWRlUec0vFmgxgAGe7wd5x4xEQyNcGoS.P+NGUgShsebFATzjOvATm
Adfi7tJI3yEPXefADweTvyO1NAxHNRjrT6GrngqSlKgh2OWB5sZ30ifrY4Ry
eErTK98NQc9q+WaV0GwBi8asg5YCvwmLgYxEyW1uolq4pDeVZlupb9S75hRQ
vC7Ni5QsxtCi.7QPiXDdNCgP1jlrIvYWZMMxtAvjS10mb.f4Dcuu5vh3kFcv
Ctqx5eC8o+CaydU2CjDk3BBXPZVqQFJ8j8RHzKFMfI+i.kkV9x4iKK5LFXUr
2UcoIr4LXo0jHaRV9TsNAaON6hCJt5INYs80JYqHfF3xPgRfTHNZ3vfsGQ2X
6Imdj.l8gv1ebphptRirAHKZa.8W2UE7fgqWIL1SGIn50++S7FfIoPzZdrPV
AoJDOIrKBVv.dEiAmp2iEYOwMX5GSVD.wZJ4F0H3p0gPEpBQN+IQgVUC0kyA
HE1U752OznJe8Q6wdDfg+dHWUpzvcxf2IvaV.ddvCaC5V5av5KyCVmbdorVj
q57m6B4HlA.+swvYIyIfYvtQ339y2K5TbgIejcg8K42BvQwceU9G2wgkSesU
1dD2y9E7YItbavz3SNpN6GPtM5fEGQmRhSlm0ySQiwaHviNtxgdqxEG9iYOK
G5nPNtdiYq0abVz7D6ABXOJqSmpN5GfQ0Rm3CL5i6GnTtanVKrtdMqGVy9Bb
Ik7dZf.5oxLL1aY7JbDJwxXbRzCzO5Kv8rRWVLhq1uGLKD5fU.YrkEZdq3wd
FY2e3SEU2JC5H+QolRroOEexjtGHsA5Yr+v2fotIgSq144G4zIa8aCz.4pNe
XX621ylShOzlVfrlu4P5GnHG0Fk1dzN1no8ZaulB1twy8IYx2GIieqjwWjji
mhj8s4hji8XfeWAk30vKSP3IJnKViPSPPCylKSRaY32ufhtBxglMEmgqA1Qm
hC+..eYRh8cxcfNA4X2xwE6fSlD1cEzHxjUoKVRS2FccY+lhfwQ+SrVCdJwZ
3qgYDOkH.xaMi90w4MMeUna6asSHPpQeV4ffjYtuJq8e0k9PnV7U4P6YtZ3Z
HWFCjHSm1mUwKo9cA3dF855NYukDTua6y9XmbGV+Co3Y6HETopUsM779yeET
pk7tRy1HgMMMWFWOJqs5fXzyeeykQOD8vEqVJKKc8Y2enGCo9DtRyKjBHasY
C+DPFZtcnIYHbl8wAOmhxRQLeInJ7VRpuW30OG+YaeYm1QFF9zXRBKxNnoIn
nzTeoTFc2gGxLymAGIwpk801nUMJ8foGlYYqaemQsVyFbt81C+izn1LXB.Ol
eQUyyUa9kwrEDfvwnrLG5hwoQXWIDkFw1Er2paYIIQ3rdH.9ZVDMltcODkhJ
QsYqtkjRwLhsGIYowTWoTFlPR566sazC6SJA5+tY2F5NfpAsdbH1FutJBBGg
hHH9+d73PtCgOgMTJCebeOLMA4rlojjXpqao3zTR1GGeOX5j5bAHoo3drHBS
2I73MtdfNvnNXHIMJJwWhPrGo03twyy208C7uQYdeNBg4KQQHFYJdtnLrGEg
M0g8wxPjbb5Y64B84a292RFBHLB
-----------end_max5_patcher-----------
</code></pre>
view raw gistfile1.txt hosted with ❤ by GitHub

Frequency Gate Patch:

<pre><code>
----------begin_max5_patcher----------
612.3ocyW1saaBCEG+ZxSgkubhEYCXHrK1KxTUkShSGUD6HiSVppZd1m8AXY
sk54DXa4Fivbh+yuymjmmEgWpNJZvnuf9FJJ54YQQvVtMh5tOBukebUMuALC
KE+Ps7Qbb6iLhiFX6JIJoeycbypuWIe3dsXko8rSRWLmDiXL2ZJwsljLmftq
6mH2usRVKLfFztMqVCGsUtO+qy1ZnZu4sV1XdpV.F2aWqQlm1IZeAvXzctm7
xrYtk3wQ6AKXZd8ITBK2C0zhLfTRg6RQterSeO1zQicS0CRd8jB+lMFqLmPT
OjWBfml.fyx7Cdx.wa1vjSdO4SGXe5jGhxgTWZYBvR4b1kRT1+0X4lZkU29i
diRukCfk6I6MuDPNAtvthh1zy9SMeqvHz2Kj7ksbRFzcjbAUzwH7Rt7gIM49
qmPDOYAKRcAdZFTJmxt77ZxsXE8NUsQshq8k+WzBKC5imStXxok3wFv6HO9u
hOvhuQYcDd8ATG1krq0Er311EXmg6qmNMC5iyJuxY3T1s0Pb6brJo+wXsA7r
hyqWFwePO+zQDv+fPO7Ngqqju8q4.pb6+ZGTiZudUuH8ymPmQasnw5c3lJk7
2LxUD6LZvfPvJkFfRtFkH5XUhDBSVaRFqPApyXcc89e+tN1ToDMDkFaPx0U7
OyzqyNU50BMTz8OPZxvRSFuzzPJ2Fs+kEBjoSQNSPsPVLUJQCQI5TnTRXk1S
bxYnJSm7byPKHoCLBhua2AgtoyZPC6z3GUv6UQLbakr8VXNHVKNT0aeFrCWa
GDarSg2qaGOdbQ6eyFuUYITtupy8ZU9kY+Dh9+7G
-----------end_max5_patcher-----------
</code></pre>
view raw gistfile1.txt hosted with ❤ by GitHub

Sound Visualization Patch:

<pre><code>
----------begin_max5_patcher----------
1053.3ocyXssbapCE8Y6uBFdrGGptg.c9G5WPmNYvNXWRAIFPj5Ncp+1ORBg
cvgPDARONOP.wVZo0RasYI+60q72JNlV668ude0a0peud0JSS5FVYedkeQxw
c4I0lv74o+Tr8Q+MsuRldTZZ9Sm7.AvtlKSj69dF+v8Uo6jsiNiEDiU+Q23g
PwAgpaQga7Hn.ftk.f22rcl2TjwySkF7P1Fydv.iB56fT+KQJZjcgBssVK+U
dpI5t3ZCR9qxz14hec1AdRtu22zu+OqWqurYdBP8S6O4AA.faZ.Tcuh3T73z
GO.8CGl9jIS+Mid2RJNOlICJE+H8jWcoRMpZJtqHQVkczC5gFQvHgf.pVwfJ
QhQB.TJUkz.ogSOqgL6rl+ZRxX6iPT1hII3aKI4eNMJygQr.MwID81Gflt32
AoQ2hUO9zIGKcFRNW5jRBfpEeJYhJP3Mo.n97Q3XUBhBzY4X36cYGNaVuOWj
HWTR+4wV0gDhYY2jtii0zGwLWmDuA2hq1e1wz82OuY2hztxaaFu9MyxasFP.
imjCdIoiuspmW+VzECLamgXRfCVAgujvQCSXvKI76gUMEaSqFa5qbmDdd5qL
0N0oO8xfWkTjJSqtOkmrscNCFjZnIrVp7xsMgeXQWS2uWlw2KN81qprPspDE
M9V2ATExr82lwkZx+x+82x.miGBnm+Mbf9i4QnIVn6FyC2tjJonTj6ZA9HyV
HJXxeP+UrwglwofV78Ii6m8YxPaEeHZ5aVdEaM3E4vf8DDyTxOOie8uWfgZ5
16qR0hlpccfX+jr2Eh8PZsRgRjYB9yhA0FyfqCthSrC3nsCNafBc.HbuXDUO
n9hhNM8CGX84cGBYvGOxuBmgyBYMcPuAxQ+eAL8iPqQtn0gKPdLj5.RKBPNk
9PWBjPNRI3bAB5.PrVfV17RmPVe7ugfddYllQ0kR4yVccTbAK.NHGpjCW5J4
t.roR9xuF5Bx3OjDWWPFMbEU7rQF5xNFv.NeRJKeJsp1FsACkSvGEl4UzFyi
Y71GM1u7qReJqKdyoW7SpTl.kJGfMUstxNF2dFP+Bghg7lLq7pX2Zq6sqbaw
UGTzz0epGIuBAWTWlnnogUJRsOoIW1WHztR2IxEU2mw0bvpIFS2Wt.elsysG
1mkma5icnrikZvrVG8OTk7PVp9vU12bNb8PiX.HipGZLfECHs2oZB1CIauf1
eyK673xkqhC0M7wTTDITOnwQfv3316hI3qGd0Afac.ihzrz1ZYk5PJUcK8pY
F6b7MRwYl0sKqc8P+58BtraIPkw7EAOYmv+rt0SB.PJfwLpKDFGBM2Av3Px0
hcutwhhBgLqDndjEho398HMOsPM+50snXLjfz8HhESwl6hIPDJx120W3g9Gb
P0+qOcfegJ0Iqi05D+0+Y8+A2+DlB
-----------end_max5_patcher-----------
</code></pre>
view raw gistfile1.txt hosted with ❤ by GitHub

Assignment 4- Jonathan Namovic

For assignment 4 I took the piece “Pa Pa Papageno” from the opera The Magic Flute and separated the frequencies using a PFFT so that all frequencies within the human vocal range were allocated to one matrix and all other frequencies were allocated to another matrix.  I took these two matrices and used an altered version of the patch from class to create two groups of shapes, green polyhedrons and red cubes. The red cubes fluctuate in size with the orchestra, and the green polyhedrons fluctuate with the opera singers.

<pre><code>
----------begin_max5_patcher----------
2046.3oc6ak0iihqE94pk5+Cn73UoJ4EVmmxHMuNRy6sFE4.Nob2DLiwTK2Q
29298XafrTjTTDRMc0Z5RgECly474yNz+8m+zMyVIehWMy6W79h2M272vH2X
GyLxMsCbyrsrmRyYU1abVA+Q4puNady0z7mz1w+pPe2CoJuErLVo1C6sPwY4
ZwVtGt6tEY16Ed.2Rh6FsndqrVmy0VJPZGtjoSuWTrYohmpcLIN7NzbObLxt
KjX1Qfsd+Y6jpzOmysDo6w6d15mK4tGhgUWtkoUhmlMGtucSFXDQQKePsC9+
97mL6gcyGLDYfhxGEEYxG6SxoiWxIA1cwAlsli2w6uPJOmrgGsrcpkekGvqR
U1VduK1ImPjwmQjCrqxQIlsgIiao9T..Zz.vVdUEaC+kHPkVV16xs+HjcbfU
f88MaozKV3WKKzUh+q8JXiYSefBY+6tfs087+UkfkOa5wqGUBM2ihty6dRnu
WgTskk6EhP8Bhgi.DC8ctIbawVPjNUfH88DDMdTVWVsoVzK3DMZGJTpEVbNT
oguYvY9K.n0rT6UQuIUO70.0Nkuppy5qJ.eBzDcV6UmkJw5YNBOHC1IxkrQ4
HkmmuJWl9sdkntAUxGODtOTB8Om23Haz1.qhuGFQsBb.8rwfxEUZqNx7goqj
JycJtAg+y645bY5vepDR0wtUT7Eze9e7ukzGzOFKSBBeW.362oEgGq2+gkkC
4p.OERQE3a2actjooDy5Y+YAhiu..hRb.j+0DfvWE.ZS9caqgriKy4dUkfjo
p25sPyTa3V8Wuz5U7m8VjwqzKyDaOMBRPiGAaLloz3Qlfw6phkxaUu..dL4V
RP6oB47Z+iP1kmSmwoq5svpezpzbqaTBn7.7UmA2hNcFuEk4rBHdWcg1i1K.
5OBMnV.z4jxmD8wxFDforUrhM8hGgiJgcWB.9txUPiCNrrzjCBqp0ZYQuhZv
EHpwtRR8a29ifn9p4BQHSXxPggg+axP8jLD419C1SFenpPB8mlrgvj3SjMD8
BhkG6+Sb1PBUJbsAjND1+BzwBapI1+Cb5P3wD8J.GtmNzG+zgvWP5P3wTyVC
.13k5CW5PMFg2yJxLlYrZsboRpY5Sz79wXjEhhcYH4ZdePzzajc0.FPmQK2y
0T08LP6RlpY2yyTxBXjTFfbn6Hc+VTJyed4VYFfgF8NHbtTAWgB+Rfe1AOv6
lA1gUeQpWu8.Eiu.TOxZSGFm7yshIFMdLp4kq7AQyLik989PfjQz8xl3elWn
VfQW4s28xwGdSK2rIu2FwFOh.YjXaYoTzanzjRlBrB0b0RdAaU9gIg+hUYQg
98aQtZM3444uaT7yDx0BvF3OXkrM7B4sMGv9sZNDLrr+XYiIYHGDF5rIhFYq
gpDaJf5Mle9B853iJ1C7rk.KCrwRlFbz.Es5d0z2rCz.bjUIR00EByyDpQyu
cgxTsSdt7wM4xUrbMeaob+0QykUaYE5ToxHpBnd3CtrwOsqXYCEl0MtTI1H.
IImWrQeeSAv99DB3DOfPiwfDBdr+V0NQb2j5XCLAc2NZUJ.P+TLxeUyxE5m6
iWLuL8JshCy1wHvZh6ZM5bueg9Lsm7sDzKoIv2dA8bM370h4kbA9ySbEoG7A
KlW4505u6UpjFiAp4LnjQzdcoae7IXLt6cV3Dh+aoj5qsqt9KmIbDxGsINlq
WbjneDDOi0ziRUd1dlRtvMFKBacJfPXNlqXU7kMFN1+V.xcYcqxX+I9bpNGP
e8F40Xm3SCGedOtdodMrRx4Ovysgm6McGxHRRflPso6D3d+QDq2hvCRSXKS8
Mtp4Si51P3525GCangvFhOrASfMvYlo91vqCyfngR0UbqPEOH3yM8Y4hhW74
aYkWyENBTqj0pzVVn8axwaOQ1zaEHnUaDour6yzxirG6JxJkfDzPVv2pAI8i
ceiEwcm0DYp2U7Ayhlu5iKlEirK1Qz83vH5Twf9uEFbBHHdvzCcR.gj3p.mz
9tuBZNYudWqx3JycG7txy3WkmcQ1Sh5NoGd1eB34igv9YZZycMADbPzCOYjK
ZPqInIidCxNAOcxGcXqeQSGAOT8se5ENoj6UEufoCOICySbvzQvfAowbdOc3
Pqueeh66wB27tpw851.+9w0zgv0At1Q0v0AG8091x0nofqGj04Qh1+.bf0eD
9ZszMrvT9SlFNdPtnlNOT3g4ymbEWlGFKXdEdWskY7fbjgmPXePtpwjoifjA
CxSDAQChfISGAGB8RFVNvI64i0dVO5cz2Sd90yA1u4+1KIcm0COSd2RbeP3L
1l2tOh1c10xEyfzEOUrrSTmMqr7AnF8lGhi3Pg6eUZmTzb24hB24tVtLSweP
zNE22RzLlJ8dglmpqUtlD7TXSW8r8eVUTKZ4Bi3aHssgBGWie2G0yiaIHb.J
ffXM8a.j30r5b8Q3joOT1VJsTTXDkFHyt3rayAIFwRS4EtI0dywAXTh4di8I
De2QTDxmbzT447sGO2nXTB12NEDhficOFJTQ9QS9fYgiiiIlakDGiQ1oSCvT
J9nIsZyZQdd2TO3cFz15kYaTrLAvW65n9AzBzUwIgVRfRhaHlYniHVyzvMYq
4PuD3eQ9sGkz+THc.IlFgvVHfDERcvBHqjjimGqXiqgRjnCdEBJYoT081Cti
lraF0ZYmj1YU0pPc72EFXQ76xBVpb19f4A3RBvV9TqnEEGDD4NhPvsK6sFMy
asUU.oeQmvlY+De53Hq00m+Dr6+yLuWI9
-----------end_max5_patcher-----------
</code></pre>
<pre><code>
----------begin_max5_patcher----------
1673.3oc2a0saaaCE95Tf9NH3K6bc3+hbXaOB6EXXnPwQNUY1RdRxYonX4Ye
T7H4j5RpxRS4E0bQTnrr3G+34edxme6atZwMUOl2rH4mS9ijqt5y56bk4dc2
4pgab0hcYOtdaVi4AWTl+OU2b+hk8eVa9isl6WmuNu3g7mR1Tm+2G+3haMen
9a7dl33cKOrq5P617VyqDOb68Ysq+XQ4ceP+tZATIErU7kITBYEZYhD086t+
N4OG9RMseZatYRN95g2c6m1mCujEME2UlscwyeIM.JJON+la9uu8McW0WVdA
3BZ.bAWBbgPNm3hl7xaGgHHNHBzHDAiyMqcIt6BPGeSh3RskeSQ4ueXm00JJ
fMcFxrVYTU2ELBOyz.bSGTU.zAFyLVBnoxYEe.ZAiPFoAnGjBh9XrQ1P9pPO
n4gMOo2VPHqqRWt.Xd3BPeoSamdVa3KG8ubHNPiNK8NMGwswPDVHNFz5DZFh
kJLpFpoPkfDcN35mRH1n.bHwInPhUjNN.mZ3.77fC9seUKHXUSgGRvRHzpzm
UU.Kky.R3oDJhIVYUg.KCOpQBnPH3yCd3WdJQIsJLvNCggdRfMSzHtKqUG0.
Nwt+C5YXcDrKJlI7v6cXXfnNCJ.AwNQlM5CDWARDRnzBjxXU.RafOSrJ7SOY
k.vgKFz6df.rwbv8fCyhjv4fdgf4hUw2YUH3bhQfwEyIgfqS3XxJqFDSCIbQ
lbkP+iLUm9DCcNhBa1Vk0FehP+ZKsmpHw01NwyErzn9y8q9Qapp2kYdIhme8
0Y6xayq+PdY1MvW.4je5Ru5lrx6tb4Zeay9l1tvHrFOoJfTPUTHfZ94jAZQY
aGW.xKKONt6xEiZz4cJEqrFXANDqIoXiUDrBrlNSx779h1U6q9KcblM60Kk5
C6duVFut3Qrq.OIgjSpvjJJuuxcoAF00qDZwZp5jP7.yzImy+ggWrGjdH4oP
3j4k7h8HSI3yoxEv47LWhJYzjUInyI7LHUs4R1pNUQHtLcfYAU8+zeTroRbY
6.GhsCkTMu3kqsGbVP9SfL46iAY1jPicBHDimLkXFR.uKA4nhuAcLoBd2xN0
H+S4upRky4Yj1cdfM1n.U3L.bVfLTbM.fh+4D5bwKC3jPwn9y.864fOhUtVG
1cSdssURZ.IpiQP9keWIo+ZOi7MaZKJ2TY0jGKf7wwn9s3ARheFIj+0WtX7x
nQGXuv2mQLkymnCVmU2VsuZq8DLBPqZnigfi9PfhTODbwHDiBjiSDxUHCzwJ
MAzrH8lKSidKU3oFD7XK1VT9UcgnAzcevIzUS0g50CHn2WYxK.9s4MZpJqsn
p7EOTWLEcOk6MFumuTeluthRqUgO9T6Jtcek1zRyf8qTyoPfIlH2TRzJ7P0n
6tUT.J2GfR+xGpp9VsqrwEgiK.5xC7kO0ILkDif95PgfVcRJVMLzBrQWLXS8
B1bjQCSojqFFYA03Hf5ttq0isaQzzCXTulPJnHDiID4klmXTMOF1zYHrglkS
cbzDoD3IpoeIpiqngePf3EwAsbHWAdNDxISMryt.4aAZoCyW3KE.Rc.fXv.T
kuVvGwSCliew9lRmbAg6diibwfMVLpAzi3FYhYUg48kEUYE2zKGtY9w2vwIi
oT0wg+uJlfmRKLTub9zUP7QnNYJCZeUSLQRNwHoZFFE+GTt2fLRSHyqIDGuI
zKWxDV7lPhWVnh3JD60JTEuID48Jzsjs.2WVRSLrbAzEVbTjDrIJuiDKRSnW
4.00PAiPJJt74jdfdTMkCkvLMVp7Dt2IqEoIj4cLpt88w6OHXrQbI0jviYvD
4v1SPS8CzPOfHfy3GqlrDd7D0DuPMwDcTuSaynIxYMwKCXCtphwD5kArHNe9
LcLRzlut945kVYbHFDuEHV5sW8ucrNHHVGnwoNcjorbRRemQzMLNK.guRDiX
7dHdbvklruEJsNhfd9QiyBvuJaMdgkRIFeMDJvx80qwLbhLX4IrIeGvt27kK
TSubnF4EpgBuKF7QLctz7C0mpJ6.0XnV4fJqYzD4b.6kwyHZ6D667EmJ3g8x
WDlLgYp5IDF25MKE53DBDOeeOvRltRRi8oTTzorVTdgfS05h6Nm2xNt0nEpT
SBFfGVF7eInYTbju8ITjSU5N0nCFC4.AF3Q7ii9JH1e5YY62+PdcS+r.nawt
r6qLTe5RXbQILFNUvE04OTL7UfSZeQV85OVzlut8PMbxeOJ5Oa9E6pzajkGJ
F1KMXP+q+CnStNWO
-----------end_max5_patcher-----------
</code></pre>