l  X  \__TEXTpp__text__TEXTV__cstring__TEXTff__symbol_stub__TEXTdkdk__stub_helper__TEXTll__unwind_info__TEXToHoH__DATAp p __nl_symbol_ptr__DATAp<pD__la_symbol_ptr__DATA1ɋwd\,w(wǃ$w\E$UUu.|$D$UB$VU$Uu,w(wǃ$w\Hu B$P$UDžT$D$$Uy#,w(wǃ$wmHu G<$PM$UTuS<$VT$nUDžu,w(wǃ$w}1ɉ‹\Hu G<$P,w(wǃ$w@$Tu9,w(wǃ$wDžUHu F4$P$TDžu,w(wǃ$wD$|$$TyA,w(wǃ$w\EEHu G<$P\U^w wiDžu),w(wǃ$w$SƅuA,w(wǃ$w\?P D$<$Ru;,w(wǃ$w\Hu G<$PHu F4$P$RDžu5,w(wǃ$w#Hu B$P\ <$QuBuQ,w(wǃ$wHu B$PwD$$Qt$2QPtC,w(wǃ$w1d$PƅuA,w(wǃ$w $P2Pu$`Pt$BPOtA,w(wǃ$w|$Ot$OwOtA,w(wǃ$w$dOuA,w(wǃ$w$OuA,w(wǃ$wbB 0B PB PB P $sN*Nt@,w(wǃ$w1Q$NƅuH,w(wǃ$wDžR$MuU,w(wǃ$wDžDžB B p$MuJ,w(wǃ$w1DžsB T$$MuW,w(wǃ$w1DžDžHu B$PHu B$PHDB$P6Hu G<$P DžDžDžDž\G<$PtHu F4$PtHu B$PtHu B$PtHu B$PtHu B$PtHu B$PzS;1Hu B$PHu B$PHu B$PUHu B$PEJu EP$RH| [^_UVS0[EED$TD$ $ED$ED$E $J1tnEE$IIu4$.I$FJƅu%hhǃh6E1EJu EP$R0[^U(]u}[}gD$ CD$ED$E $I1G$HyS$yH$Iƅt#1ɉ‹vMHu F4$Phhǃ h&$Hƅu%hhǃ hD1Hu G<$P]u}UH]u}[}EED$LOD$ `CD$ED$E $H1EE$HGtggǃ gxrt$G$dGyS$4G$LHƅt#1ɉ‹xLHu F4$Pggǃ gy tL C1Hu G<$PEJu EP$R]u}UH]u}[}EED$ND$ BD$ED$E $G1fEE$FFteeǃect$G$$Fu܅yV$E$Gƅt#1ɉ‹5K<Hu F4$PeeǃedG$EtnD$t$G$Ey։$kE$Fƅt#1ɉ‹5KHu F4$Peeǃeg 1K kB1Hu G<$PEJu EP$R]u}US[cD$ ?D$ED$E $E1҅t8D$2E…u%d dǃd@k1҉Ѓ[UWVSL[EEED$ED$KD$ N@D$ED$E $hE1EEE$+Eƅuccǃc*4EEF t$H$DDžuccǃc*HHu F4$PHu G<$P;Hdcƅuccǃc+dD$4$CDžtWHu F4$P$.DƅccF EEFt$<$CEԅuccǃc+XHu G<$PHu F4$P dD$Uԉ$ECDžuccǃc+UԋHu B$PD$<$Bƅuccǃc+'Hu G<$PEJu EP$RuE$Bƅuccǃc,AEЋE$BAtccǃc.t$|$UB $zAyX$2A$JBEԅt'1ɋUԋHUԋHu B$Pccǃc/X%A9EtHOF4$PEtHu G<$PEԅtUԋHu B$PQ@1UHu B$PEJu EP$REJu'EP$RHEfQL[^_U]u[!<$+Aƅu(<D$D$E@]uU]u[ƅt*D$;$$@xD$4$@1]uU8]u}[FDžD$$?t|$;$?D$|$4$?xtF@Wtr4$@E4$@~[Ut€u DD4D$@$&@t> tD$<$?1]u}UWVS\[Eg^Ek^E܍E܉D$ED$ED$FD$ :D$ED$E $?1EEEEC>E$>ƅu]]ǃ]D$E܉$>DžHu F4$P$:>ƅu$]]ǃ]EOD$<$(>EHu G<$PHu F4$P$=Džu$]]ǃ]ED$E$=ƅu]]ǃ]Hu G<$P$O=DžD$4$]=EąHu F4$PHu G<$PUĉT$E$(=ƅu]]ǃ]1UHu B$PUċHu B$P$<Džu$]]ǃ]EuD$E$<Eu]]ǃ]BHu G<$PED$4$Q<Eąu]]ǃ]1Hu F4$PUHu B$PEĉ$;z;t]]ǃ]UċHu B$PuԋE@t5O^Wx y]]ǃ]D$EԉD$UB $:yS$y:$;Džt#1ɉ‹#CHu G<$P]]ǃ]jCkF4$PEtHu G<$PEtUHu B$PEątUċHu B$P:1UHu B$PEJu EP$REJu EP$RE܋Ju'E܋P$RHE2\[^_UWVS| [EED$@D$ 4D$ED$E $Q:1EE=E$9t=~/1ɋX=pXlXǃhX3XdX.ƅ}D$$v.Hu B$PHu F4$P$-u)pXlXǃhXD$$-ƅHu B$PHu B$P$K-u)pXlXǃhX{T$4$*-Hu F4$PHu B$P$,ƅu)pXlXǃhXD$$,u)pXlXǃhXHu B$PHu F4$PD$$%,u+pXlXǃhX1Hu B$PHu B$P$+A+t5pXlXǃhXDž1\Hu B$P$$+*tpXlXǃhXbHu B$PD$E$+\$*u/pXlXǃhXhT$$*u,pXlXǃhX{Hu B$PHu B$P$))tGpXlXǃhXDžDžDžHu B$P$b))tpXlXǃhXHE@ny)pXlXǃhXX$(r(|$(u3pXlXǃhXDžL8y&pXlXǃhX뼋Hu B$PX$''$'u&pXlXǃhX3ry0pXlXǃhXDž]Hu B$PpXlXǃhXDžDžDžDž*Hu B$PE@t5Xx >ypXlXǃhXE$&upXlXǃhXqD$D$UB $%y]$%$&ƅt#1ɉ‹=Hu F4$PpXlXǃhXDž 1DžDžDžB$PtHu B$PtHu F4$PtHu B$PtHu B$PtHu B$Pz5f1Hu B$PUHu B$PEJu&EP$RH| [^_UH]u}[}EED$+D$ rD$ED$E $%AEE$$#t&C"CǃC?wG D$~(D$D$ dD$t$G$,#yS$#$,$ƅt#1ɉ‹(eHu F4$P&C"CǃCB7G tBCBx y*&C"CǃCCB 1Hu G<$PEJu EP$R]u}UWVS,[}E܉D$ED$E$v"G t2Bx 5yAAǃ}AGoG$!yS$!$"ƅt#1ɉ‹&Hu F4$PAAǃ}AI G$U! pHu G<$P!t<$!E܉D$ED$E$!G<$,[^_UWVS<[E܉D$ED$E$F!E%UBE؅t2@Qx yR@N@ǃJ@5UB $m $1!Eԅu R@N@ǃJ@uHu F4$P$ ƅE؉EЉD$t$Uԉ$ !yR@N@ǃJ@5mHu F4$PE؅tlEԉ$t 1 u94$$ ƅt#1ɉ‹%Hu F4$PR@N@ǃJ@.UB $K$ DžuR@N@ǃJ@UԋHu B$P$ƅEЉD$t$<$y R@N@ǃJ@}mHu F4$PE؅<$O u94$$ƅt#1ɉ‹%Hu F4$PR@N@ǃJ@} F4$PH}ԋHu G<$PUHu B$Pot E$xU E܉D$ED$E$HUB$<[^_ËHugUWVSL[}EEED$ED$k%D$ D$ED$E $XEEE$Et<<ǃ<E܉GG$ƅu<<ǃ<E܉D$t$E$y*<<ǃ<HK=1}E܋Hu F4$PEU܅u O"EԋGE܅t5o=x |y<<ǃ<E$rt<<ǃ<t$D$EԉD$D$ D$GD$G $E1tl$$ƅt#1ɉ‹["Hu F4$P<<ǃ< F4$PVQHu G<$PEJu EP$REJu EP$RL[^_UH]u}[EED$%D$ zD$ED$E $1E$:ƅD$E$WDžu*.:*:ǃ&:HHu F4$P<$t#.:*:ǃ&:HuVKHu G<$P$ƅu8.:*:ǃ&:F4$G<$P謿1EJu EP$R]u}UX]u}[EED$$D$ D$ED$E $1,EE$qt88ǃ84$Eȅ)@$E̅u88ǃ8vUȋB$ƅu88ǃ81,UȋB $Džu!88ǃ8E-UȋB$EЅu$88ǃ8EUȋB$Eԅt$9u88ǃ8ỦP pxUЉPUԉP}ŰB$PtHu F4$PtHu G<$PuЅtUЋHu B$PMԅtUԋHu B$P471EJu#EP$RŰHeT]u}US[ 6D$ D$ED$E $1҅t8$Q…u%/6+6ǃ'6芼1҉Ѓ[US[5D$ D$ED$E $1҅t8,$…u%55ǃ5\1҉Ѓ[US[!5D$ D$ED$E $,1҅t8$_…u%=595ǃ55蘻1҉Ѓ[US[4D$ D$ED$E $1҅tv$‰Ѓ[US[`4D$ ND$ED$E $c1҅t+D$D$$‰Ѓ[UWVS<[4D$D$ D$D$$3J$3,D$D$3$C2ry9FHD$F$6FVt$~ut$D$3$y44ǃ3T3r4$x t$ D$3$y44ǃ33 34D$j4D$3$1y44ǃ3 r4E܍D$3$ƅ$EEtw3$oEEEq EEZ |$D$UT$ E܉D$D$4$E* G<$PHu F4$PEtUHu B$P}؅u44ǃ3 E؉D$r4D$3$y44ǃ3 U؋Hu B$P$;E؅u44ǃ3c E؉D$4D$3$Xy44ǃ3c U؋Hu B$P$E؅u44ǃ3d E؉D$V4D$3$y44ǃ3d U؋Hu B$P$1E؅u44ǃ3e E؉D$4D$3$Ny44ǃ3e U؋Hu B$P$E؅u44ǃ3f E؉D$:4D$3$y44ǃ3f U؋Hu B$P$'E؅u44ǃ3g E؉D$&4D$3$Dy44ǃ3g U؋Hu B$P$E؅u44ǃ3h E؉D$Z4D$3$y44ǃ3h U؋Hu B$P$ E؅u44ǃ3iE؉D$*4D$3$:y44ǃ3iU؋Hu B$P$0E؅u44ǃ3jzE؉D$b4D$3$y44ǃ3jyU؋Hu B$P$@E؅u44ǃ3kE؉D$J4D$3$0y44ǃ3kU؋Hu B$P$ E؅u44ǃ3lpE؉D$F4D$3$ y44ǃ3loU؋Hu B$P$ E؅u44ǃ3mE؉D$24D$3$& y44ǃ3mU؋Hu B$P$ E؅u44ǃ3nfE؉D$4D$3$ y44ǃ3neU؋Hu B$P$ E؅u44ǃ3oE؉D$>4D$3$ y44ǃ3oU؋Hu B$P$z E؅u44ǃ3p\E؉D$4D$3$ y44ǃ3p[U؋Hu B$P$ E؅u44ǃ3qE؉D$B4D$3$ y44ǃ3qU؋Hu B$P$p E؅u44ǃ3rRE؉D$"4D$3$ y44ǃ3rQU؋Hu B$P$ E؅u44ǃ3sE؉D$64D$3$ y44ǃ3sU؋Hu B$P$ f E؅u44ǃ3tHE؉D$.4D$3$ y44ǃ3tGU؋Hu B$P$@E؅u44ǃ3uE؉D$N4D$3$y44ǃ3uU؋Hu B$P$\E؅u44ǃ3v>E؉D$R4D$3$yy44ǃ3v=U؋Hu B$P$E؅u44ǃ3wE؉D$^4D$3$y44ǃ3wU؋Hu B$P$RE؅u44ǃ3x4E؉D$4D$3$oy44ǃ3x3U؋Hu B$P$E؅u44ǃ3yE؉D$f4D$3$y44ǃ3yU؋Hu B$P$Ht4$2u44ǃ34<[^_ËU؋B$P<[^_J4$GbHU؋Huraise: arg 3 must be a traceback or Noneinstance exception may not have a separate valueraise: exception class must be a subclass of BaseExceptionOpypm.Input.Readpypm.GetErrorTextpypm.Input.Pollpypm.Input.SetChannelMaskpypm.Input.SetFilterpypm.TimeOOpypm.Output.WriteSysExstdoutlost sys.stdout O|OOpypm.Output.WriteShortpypm.Output.Writepypm.Input.__init__pypm.Input.__dealloc__pypm.Output.__dealloc__pypm.Output.__init__pypm.Channelpypm.GetDeviceInfopypm.CountDevicespypm.GetDefaultOutputDeviceIDpypm.GetDefaultInputDeviceIDpypm__builtin____builtins__OutputInput__import__OOOOpypm.Output class Output: define an output MIDI stream. Takes the form: x = pypm.Output(MidiOutputDevice, latency) latency is in ms. If latency = 0 then timestamps for output are ignored. pypm.Input class Input: define an input MIDI stream. Takes the form: x = pypm.Input(MidiInputDevice) lengthmaskfilterswhenmsgstatusdata1data2dataInputDeviceOutputDevicelatencyInitializeTerminateGetDefaultInputDeviceIDGetDefaultOutputDeviceIDCountDevicesGetDeviceInfoTimeGetErrorTextChannelchanerripypm.pyxWriteWriteShortWriteSysExSetFilterSetChannelMaskPollRead%n4n*n nn nnmmmmmmmmhtJ@hthvMiAI@htiwG@jGjLjTjYj]jdjjjpjujjjjTVPwjVtwjUjUjTj Rxj&xj!(y kPy؊>{܊@{F{ R{b{z{ { {{{ { {{ {{ {{  | |$-| (8| ,B| 0L|4[|8`| <l|@s|Dy|H| L|P|3T|X|\}`}d}h6}lL}2p~}t}x}kkkk%kS2}+k-6k1'Ak$Kk#Zk"_k| Initialize: call this first Terminate: call this to clean up Midi streams when done. If you do not call this on Windows machines when you are done with MIDI, your system may crash. GetDeviceInfo(): returns 5 parameters - underlying MIDI API - device name - TRUE iff input is available - TRUE iff output is available - TRUE iff device stream is already open Time() returns the current time in ms of the PortMidi timer GetErrorText() returns human-readable error messages translated from error numbers Channel() is used with ChannelMask on input MIDI streams. Example: to receive input on channels 1 and 10 on a MIDI stream called MidiIn: MidiIn.SetChannelMask(pypm.Channel(1) | pypm.Channel(10)) note: PyPortMidi Channel function has been altered from the original PortMidi c call to correct for what seems to be a bug --- i.e. channel filters were all numbered from 0 to 15 instead of 1 to 16. BFALSEFILT_ACTIVEFILT_AFTERTOUCHFILT_CHANNEL_AFTERTOUCHFILT_CLOCKFILT_CONTROLFILT_F9FILT_FDFILT_MTCFILT_NOTEFILT_PITCHBENDFILT_PLAYFILT_POLY_AFTERTOUCHFILT_PROGRAMFILT_REALTIMEFILT_RESETFILT_SONG_POSITIONFILT_SONG_SELECTFILT_SYSEXFILT_TICKFILT_TUNEFILT_UNDEFINEDTRUE__version__appendarrayrangetostringOpening Midi OutputClosing MIDI output stream and destroying instancemaximum list length is 1024 arguments in event list : writing to midi bufferWriting to MIDI bufferMIDI input opened.Closing MIDI input stream and destroying instancemaximum buffer length is 1024minimum buffer length is 10.03 Write(data) output a series of MIDI information in the form of a list: Write([[[status <,data1><,data2><,data3>],timestamp], [[status <,data1><,data2><,data3>],timestamp],...]) fields are optional example: choose program change 1 at time 20000 and send note 65 with velocity 100 500 ms later. Write([[[0xc0,0,0],20000],[[0x90,60,100],20500]]) notes: 1. timestamps will be ignored if latency = 0. 2. To get a note to play immediately, send MIDI info with timestamp read from function Time. 3. understanding optional data fields: Write([[[0xc0,0,0],20000]]) is equivalent to Write([[[0xc0],20000]]) WriteShort(status <, data1><, data2>) output MIDI information of 3 bytes or less. data fields are optional status byte could be: 0xc0 = program change 0x90 = note on etc. data bytes are optional and assumed 0 if omitted example: note 65 on with velocity 100 WriteShort(0x90,65,100) WriteSysEx(,) writes a timestamped system-exclusive midi message. can be a *list* or a *string* example: (assuming y is an input MIDI stream) y.WriteSysEx(0,'\xF0\x7D\x10\x11\x12\x13\xF7') is equivalent to y.WriteSysEx(pypm.Time, [0xF0, 0x7D, 0x10, 0x11, 0x12, 0x13, 0xF7]) SetFilter() sets filters on an open input stream to drop selected input types. By default, only active sensing messages are filtered. To prohibit, say, active sensing and sysex messages, call SetFilter(stream, FILT_ACTIVE | FILT_SYSEX); Filtering is useful when midi routing or midi thru functionality is being provided by the user application. For example, you may want to exclude timing messages (clock, MTC, start/stop/continue), while allowing note-related messages to pass. Or you may be using a sequencer or drum-machine for MIDI clock information but want to exclude any notes it may play. Note: SetFilter empties the buffer after setting the filter, just in case anything got through. SetChannelMask() filters incoming messages based on channel. The mask is a 16-bit bitfield corresponding to appropriate channels Channel() can assist in calling this function. i.e. to set receive only input on channel 1, call with SetChannelMask(Channel(1)) Multiple channels should be OR'd together, like SetChannelMask(Channel(10) | Channel(11)) note: PyPortMidi Channel function has been altered from the original PortMidi c call to correct for what seems to be a bug --- i.e. channel filters were all numbered from 0 to 15 instead of 1 to 16. Poll tests whether input is available, returning TRUE, FALSE, or an error value. Read(length): returns up to midi events stored in the buffer and returns them as a list: [[[status,data1,data2,data3],timestamp], [[status,data1,data2,data3],timestamp],...] example: Read(50) returns all the events in the buffer, up to 50 events. !<`DHppSEpppppLppSEppppp$RASAppRDRASASBRBRBRASASASApQpRASASApRASASASAQ CppQ>@_PyExc_BaseExceptionQq@_PyExc_Exception@_PyExc_IndexErrorq @_PyExc_NameError@_PyExc_RuntimeError@_PyExc_TypeErrorq@_PyList_Type@_PyString_Type @_PyTraceBack_Typeq @_PyType_Typeq@__Py_NoneStruct@_Pt_Timeq,@__DefaultRuneLocale@dyld_stub_binderqq<@_Pm_Abortq@@_Pm_CloseqD@_Pm_CountDevicesqH@_Pm_GetDefaultInputDeviceIDqL@_Pm_GetDefaultOutputDeviceIDqP@_Pm_GetDeviceInfoqT@_Pm_GetErrorTextqX@_Pm_Initializeq\@_Pm_OpenInputq`@_Pm_OpenOutputqd@_Pm_Pollqh@_Pm_Readql@_Pm_SetChannelMaskqp@_Pm_SetFilterqt@_Pm_Terminateqx@_Pm_Writeq|@_Pm_WriteSysExq@_Pt_Startq@_Pt_Timeq>@_PyCode_Newq>@_PyDict_Newq>@_PyErr_Fetchq>@_PyErr_Occurredq>@_PyErr_Restoreq>@_PyErr_SetObjectq>@_PyErr_SetStringq>@_PyErr_WriteUnraisableq>@_PyFile_SoftSpaceq>@_PyFile_WriteObjectq>@_PyFile_WriteStringq>@_PyFrame_Newq>@_PyImport_AddModuleq>@_PyInt_AsLongq>@_PyInt_AsSsize_tq>@_PyInt_FromLongq>@_PyInt_FromSsize_tq>@_PyIter_Nextq>@_PyList_Newq>@_PyModule_GetDictq>@_PyNumber_Addq>@_PyNumber_Andq>@_PyNumber_Lshiftq>@_PyNumber_Orq>@_PyNumber_Subtractq>@_PyObject_CallObjectq>@_PyObject_Cmpq>@_PyObject_GetAttrq>@_PyObject_GetAttrStringq>@_PyObject_GetItemq>@_PyObject_GetIterq>@_PyObject_SetAttrq>@_PyObject_SetAttrStringq>@_PyObject_Sizeq>@_PyString_AsStringq>@_PyString_FromStringq>@_PyString_FromStringAndSizeq>@_PyString_InternInPlaceq>@_PyString_Sizeq>@_PySys_GetObjectq>@_PyThreadState_Getq>@_PyTraceBack_Hereq>@_PyTuple_Newq>@_PyType_IsSubtypeq>@_PyType_Readyq>@_Py_InitModule4q>@__PyArg_ParseTupleAndKeywords_SizeTq>@__PyObject_CallFunction_SizeTq@___maskrune_initpypm$__pyx_type_4pypm_*Output;InputAd/d6fQO.$$N.$$N.$$PNP.H$H$JNJ.$$N.$$XNX.!$!$N."$"$N.#8$#$CNC.$]$$$N.&}$&$yNy.1'$1'$DND.u+$u+$JNJ.+$+$TNT.,$,$N.-$-$LNL.S2 $S2$GNG.G=$G$N.AI\$AI$3N3.tJz$tJ$[N[.M$M$N.P$P${N{. R$ R$N.T$T$yNy.U $U$yNy.U1$U$yNy.VX$V$PNP.TVq$TV$lNl.V$V$N  &s& s&s&s&(s/&8sD&@sY&Hsn&`s}&t&v&v&v&v&v&w&Pw2&twM&xl&x&(y&y&>{&@{&F{&R{&b{&z{&{&{&{&{'&{2&{=&{H&{S&{^&{i&{t& |&|&-|&8|&B|&L|&[|&`|&l|&s|&y|&|&|&| &|&|&}(&}2&}<&6}G&L}R&~}]&}h&}s&}&&&&#&@&|]& r& & & & & & & & #& Ċ,& Ȋ5& ̊C& ЊS& Ԋ\& ؊g& ܊v& & & & & & & & #& 6& N& a& & & & & & & $ & (& ,0& 0H& 4V& 8k& <{& @& D& H& L& P& T& X& \& `& d& h& l& p& t(& x4& |>& H& c& @& h& t& & @& h& td0JWHfz!"#$&%1'Gu+X+l,}-S2GAItJM8PO RlTUUVTV ls- sBsWsl(s8s@sHs`stvv v v1vMwhPwtwxx(yy >{@{!F{,R{7b{Bz{M{X{c{n{y{{{{{{{ ||-|8|B|L|[|`|l|)s|3y|=|H|R|\|f|p}z}}6}L}~}}}},Nu|     ! 6 K ` u Ċ~ Ȋ ̊ Њ Ԋ ؊ ܊     +  A  R  c  u              .  H  $\  (o  ,  0  4  8  <  @  D  H  L  P  T  X)  \4  `?  dJ  hV  lb  pn  tz  x  |    @  h  t  #  @?  hZ  tt @r `q V       0 ? M \ e n             /F[l~.>Q^jw #5GYq 0BOao|@@ __mh_bundle_header___pyx_tp_new_4pypm_Output___pyx_tp_new_4pypm_Input___Pyx_Raise___Pyx_GetName___Pyx_AddTraceback___pyx_f_4pypm_5Input_Read___pyx_f_4pypm_GetErrorText___pyx_f_4pypm_5Input_Poll___pyx_f_4pypm_5Input_SetChannelMask___pyx_f_4pypm_5Input_SetFilter___pyx_f_4pypm_Time___pyx_f_4pypm_6Output_WriteSysEx___Pyx_GetStdout___Pyx_PrintNewline___Pyx_PrintItem___pyx_f_4pypm_6Output_WriteShort___pyx_f_4pypm_6Output_Write___pyx_f_4pypm_5Input___init_____pyx_tp_dealloc_4pypm_Input___pyx_tp_dealloc_4pypm_Output___pyx_f_4pypm_6Output___init_____pyx_f_4pypm_Channel___pyx_f_4pypm_GetDeviceInfo___pyx_f_4pypm_CountDevices___pyx_f_4pypm_GetDefaultOutputDeviceID___pyx_f_4pypm_GetDefaultInputDeviceID___pyx_f_4pypm_Terminate___pyx_f_4pypm_Initialize stub helpers___pyx_argnames.9613___pyx_argnames.9513___pyx_argnames.9459___pyx_argnames.9287___pyx_argnames.9189___pyx_argnames.9006___pyx_argnames.9372___pyx_argnames.8871___pyx_methods___pyx_string_tab___pyx_argnames.8824___pyx_argnames.8786___pyx_argnames.8690___pyx_filenames___pyx_methods_4pypm_Output___pyx_methods_4pypm_Input___pyx_doc_4pypm_Initialize___pyx_doc_4pypm_Terminate___pyx_doc_4pypm_GetDeviceInfo___pyx_doc_4pypm_Time___pyx_doc_4pypm_GetErrorText___pyx_doc_4pypm_Channel___pyx_k10___pyx_k40___pyx_k19___pyx_k32___pyx_k30___pyx_k21___pyx_k34___pyx_k23___pyx_k25___pyx_k36___pyx_k29___pyx_k35___pyx_k22___pyx_k31___pyx_k33___pyx_k28___pyx_k27___pyx_k37___pyx_k38___pyx_k20___pyx_k24___pyx_k39___pyx_k26___pyx_k41___pyx_k18___pyx_k16___pyx_k9___pyx_k4___pyx_k11___pyx_k1___pyx_k2___pyx_k3___pyx_k5___pyx_k6___pyx_k7___pyx_k8___pyx_k12___pyx_k13___pyx_k14___pyx_k15___pyx_k17___pyx_doc_4pypm_6Output_Write___pyx_doc_4pypm_6Output_WriteShort___pyx_doc_4pypm_6Output_WriteSysEx___pyx_doc_4pypm_5Input_SetFilter___pyx_doc_4pypm_5Input_SetChannelMask___pyx_doc_4pypm_5Input_Poll___pyx_doc_4pypm_5Input_Read___pyx_argnames.9560___pyx_ptype_4pypm_Output___pyx_ptype_4pypm_Input___pyx_argnames.8757___pyx_argnames.8654___pyx_argnames.8628___pyx_argnames.8602___pyx_argnames.8586___pyx_argnames.8570___pyx_m___pyx_b___pyx_lineno___pyx_filename___pyx_f___pyx_n_B___pyx_n_FALSE___pyx_n_FILT_ACTIVE___pyx_n_FILT_AFTERTOUCH___pyx_n_FILT_CHANNEL_AFTERTOUCH___pyx_n_FILT_CLOCK___pyx_n_FILT_CONTROL___pyx_n_FILT_F9___pyx_n_FILT_FD___pyx_n_FILT_MTC___pyx_n_FILT_NOTE___pyx_n_FILT_PITCHBEND___pyx_n_FILT_PLAY___pyx_n_FILT_POLY_AFTERTOUCH___pyx_n_FILT_PROGRAM___pyx_n_FILT_REALTIME___pyx_n_FILT_RESET___pyx_n_FILT_SONG_POSITION___pyx_n_FILT_SONG_SELECT___pyx_n_FILT_SYSEX___pyx_n_FILT_TICK___pyx_n_FILT_TUNE___pyx_n_FILT_UNDEFINED___pyx_n_TRUE___pyx_n___version_____pyx_n_append___pyx_n_array___pyx_n_range___pyx_n_tostring___pyx_k1p___pyx_k2p___pyx_k3p___pyx_k5p___pyx_k6p___pyx_k7p___pyx_k8p___pyx_k12p___pyx_k13p___pyx_k14p___pyx_k15p___pyx_k17p___pyx_d1___pyx_d2___pyx_tp_as_number_Output___pyx_tp_as_sequence_Output___pyx_tp_as_mapping_Output___pyx_tp_as_buffer_Output___pyx_tp_as_number_Input___pyx_tp_as_sequence_Input___pyx_tp_as_mapping_Input___pyx_tp_as_buffer_Input___pyx_type_4pypm_Input___pyx_type_4pypm_Output_initpypm_Pm_Abort_Pm_Close_Pm_CountDevices_Pm_GetDefaultInputDeviceID_Pm_GetDefaultOutputDeviceID_Pm_GetDeviceInfo_Pm_GetErrorText_Pm_Initialize_Pm_OpenInput_Pm_OpenOutput_Pm_Poll_Pm_Read_Pm_SetChannelMask_Pm_SetFilter_Pm_Terminate_Pm_Write_Pm_WriteSysEx_Pt_Start_Pt_Time_PyCode_New_PyDict_New_PyErr_Fetch_PyErr_Occurred_PyErr_Restore_PyErr_SetObject_PyErr_SetString_PyErr_WriteUnraisable_PyExc_BaseException_PyExc_Exception_PyExc_IndexError_PyExc_NameError_PyExc_RuntimeError_PyExc_TypeError_PyFile_SoftSpace_PyFile_WriteObject_PyFile_WriteString_PyFrame_New_PyImport_AddModule_PyInt_AsLong_PyInt_AsSsize_t_PyInt_FromLong_PyInt_FromSsize_t_PyIter_Next_PyList_New_PyList_Type_PyModule_GetDict_PyNumber_Add_PyNumber_And_PyNumber_Lshift_PyNumber_Or_PyNumber_Subtract_PyObject_CallObject_PyObject_Cmp_PyObject_GetAttr_PyObject_GetAttrString_PyObject_GetItem_PyObject_GetIter_PyObject_SetAttr_PyObject_SetAttrString_PyObject_Size_PyString_AsString_PyString_FromString_PyString_FromStringAndSize_PyString_InternInPlace_PyString_Size_PyString_Type_PySys_GetObject_PyThreadState_Get_PyTraceBack_Here_PyTraceBack_Type_PyTuple_New_PyType_IsSubtype_PyType_Ready_PyType_Type_Py_InitModule4__DefaultRuneLocale__PyArg_ParseTupleAndKeywords_SizeT__PyObject_CallFunction_SizeT__Py_NoneStruct___maskrunedyld_stub_binder/Users/kpy/sw/pyPortMidi-0.0.3/pypm.c/Users/kpy/sw/pyPortMidi-0.0.3/build/temp.macosx-10.6-universal-2.6/pypm.o___pyx_tp_new_4pypm_Output___pyx_tp_new_4pypm_Input___Pyx_Raise___Pyx_GetName___Pyx_AddTraceback___pyx_f_4pypm_5Input_Read___pyx_f_4pypm_GetErrorText___pyx_f_4pypm_5Input_Poll___pyx_f_4pypm_5Input_SetChannelMask___pyx_f_4pypm_5Input_SetFilter___pyx_f_4pypm_Time___pyx_f_4pypm_6Output_WriteSysEx___Pyx_GetStdout___Pyx_PrintNewline___Pyx_PrintItem/usr/include/ctype.h___pyx_f_4pypm_6Output_WriteShort___pyx_f_4pypm_6Output_Write___pyx_f_4pypm_5Input___init_____pyx_tp_dealloc_4pypm_Input___pyx_tp_dealloc_4pypm_Output___pyx_f_4pypm_6Output___init_____pyx_f_4pypm_Channel___pyx_f_4pypm_GetDeviceInfo___pyx_f_4pypm_CountDevices___pyx_f_4pypm_GetDefaultOutputDeviceID___pyx_f_4pypm_GetDefaultInputDeviceID___pyx_f_4pypm_Terminate___pyx_f_4pypm_Initialize_initpypm___pyx_type_4pypm_Output___pyx_type_4pypm_Input___pyx_argnames.9613___pyx_argnames.9513___pyx_argnames.9459___pyx_argnames.9287___pyx_argnames.9189___pyx_argnames.9006___pyx_argnames.9372___pyx_argnames.8871___pyx_methods___pyx_string_tab___pyx_argnames.8824___pyx_argnames.8786___pyx_argnames.8690___pyx_filenames___pyx_methods_4pypm_Output___pyx_methods_4pypm_Input___pyx_doc_4pypm_Initialize___pyx_doc_4pypm_Terminate___pyx_doc_4pypm_GetDeviceInfo___pyx_doc_4pypm_Time___pyx_doc_4pypm_GetErrorText___pyx_doc_4pypm_Channel___pyx_k10___pyx_k40___pyx_k19___pyx_k32___pyx_k30___pyx_k21___pyx_k34___pyx_k23___pyx_k25___pyx_k36___pyx_k29___pyx_k35___pyx_k22___pyx_k31___pyx_k33___pyx_k28___pyx_k27___pyx_k37___pyx_k38___pyx_k20___pyx_k24___pyx_k39___pyx_k26___pyx_k41___pyx_k18___pyx_k16___pyx_k9___pyx_k4___pyx_k11___pyx_k1___pyx_k2___pyx_k3___pyx_k5___pyx_k6___pyx_k7___pyx_k8___pyx_k12___pyx_k13___pyx_k14___pyx_k15___pyx_k17___pyx_doc_4pypm_6Output_Write___pyx_doc_4pypm_6Output_WriteShort___pyx_doc_4pypm_6Output_WriteSysEx___pyx_doc_4pypm_5Input_SetFilter___pyx_doc_4pypm_5Input_SetChannelMask___pyx_doc_4pypm_5Input_Poll___pyx_doc_4pypm_5Input_Read___pyx_argnames.9560___pyx_ptype_4pypm_Output___pyx_ptype_4pypm_Input___pyx_argnames.8757___pyx_argnames.8654___pyx_argnames.8628___pyx_argnames.8602___pyx_argnames.8586___pyx_argnames.8570___pyx_m___pyx_b___pyx_lineno___pyx_filename___pyx_f___pyx_n_B___pyx_n_FALSE___pyx_n_FILT_ACTIVE___pyx_n_FILT_AFTERTOUCH___pyx_n_FILT_CHANNEL_AFTERTOUCH___pyx_n_FILT_CLOCK___pyx_n_FILT_CONTROL___pyx_n_FILT_F9___pyx_n_FILT_FD___pyx_n_FILT_MTC___pyx_n_FILT_NOTE___pyx_n_FILT_PITCHBEND___pyx_n_FILT_PLAY___pyx_n_FILT_POLY_AFTERTOUCH___pyx_n_FILT_PROGRAM___pyx_n_FILT_REALTIME___pyx_n_FILT_RESET___pyx_n_FILT_SONG_POSITION___pyx_n_FILT_SONG_SELECT___pyx_n_FILT_SYSEX___pyx_n_FILT_TICK___pyx_n_FILT_TUNE___pyx_n_FILT_UNDEFINED___pyx_n_TRUE___pyx_n___version_____pyx_n_append___pyx_n_array___pyx_n_range___pyx_n_tostring___pyx_k1p___pyx_k2p___pyx_k3p___pyx_k5p___pyx_k6p___pyx_k7p___pyx_k8p___pyx_k12p___pyx_k13p___pyx_k14p___pyx_k15p___pyx_k17p___pyx_d1___pyx_d2___pyx_tp_as_number_Output___pyx_tp_as_sequence_Output___pyx_tp_as_mapping_Output___pyx_tp_as_buffer_Output___pyx_tp_as_number_Input___pyx_tp_as_sequence_Input___pyx_tp_as_mapping_Input___pyx_tp_as_buffer_Input  __TEXT__text__TEXT m$ __picsymbolstub1__TEXT00 __cstring__TEXTM__DATA __dyld__DATA__nl_symbol_ptr__DATA4D__la_symbol_ptr__DATA<<Q__data__DATALDL__bss__DATA8__LINKEDITP@\dY'UQ4RSg#@dD PP L/Users/kpy/sw/portmidi/Release/libportmidi.dylib h&,/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation \1/System/Library/Frameworks/CoreMIDI.framework/Versions/A/CoreMIDI \/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio 4} /usr/lib/libSystem.B.dylib|B}|}cx=z}| x=|8N |B}h|=kkz}iN 8}N 8}N ||@&Ba|#x|}xA<_!z|+x@;@;`/A]8B].A^8B^-A4<_;Bz9);A<x8u(H}T/AhA$<_<xBz8uTbHnHC||x=?x)z8B\Hsu/@.<x8uH4x8!`xxexaa|}q }p HnH<_BzbHnyA0^8B/^@^x| | xN!/A0\8B/\@\x| | xN!AL[8B/[@8[8!`cxaa}q }p | | x|N 8!`aa|}q }p N |B!|#xHp)|~y@<_xBxXbHmM8!Px|N ||@&B|~xA!p<cHp|}yAxHp-||xA4<cHn|zyA 8`Hqm-|~x@ &W`;`N ~&V`H,<8cs@HpY.|{x@~&V&W; H>8`8<@DaL888gxxxxHHk|yy&AdHpEx$x8Hl|zy~&Ax@HpyHh]x| | xN!A0\8B/\@\x| | xN!A0^8B/^@^x| | xN!A0[8B/[@[cx| | xN! A0Y8B/Y@Y#x| | xN!~ AZ8B/Z@Z8!Cxa؀}r }q | | x}p |N ~&;@H,;;`; ;@.M~&V&W]8B/]@K8!a|}r }q }p N ||@&B8|yxA!`|#x<|+x<;8w8pd8 PHo%/Ax9a L<_8`uH9)9K8BK<9)<Hke|}y@0}&<_xx:`B8"<_"Hd\8B/\@\x| | xN!8`Hj|{y@4}&<_x:`8B؁"<_"<_H $;A Ha LdxExHk/@\;@<_xx,B;:`:::}&"8<_~ &"MN~&MHH H8@/A8@A H[8B/[@[cx| | xN! H,&AH<_<:`8Bu tx/}&UbKy<_8B؁bH88`HiQ|{y@,}&<_x:`8B؁"<_"Ka LdxExHjq/@pWހ>Ё Wހ><_Wޠ> W`>xW> W@>Bxxxx;:`:":<_:;@8"H HT H[8B/[@[cx| | xN! H.A@<_<8xBu xx:`bK=<_8B؁bHa LxHg|{xHf/@$yex8HHeHg|xy@,}&<_x:`8B؁"<_"KP\8B/\@\x| | xN!8`Hg|{yAxdxExHh/@`}&U<_x;:`~ &V1U>} U`>B}{x::M:;@8"<_"Hd HT H[8B/[@[cx| | xN! H,&A}&UxHfu|~xHe-,`&@hxHcHi|~y@ }&HL<_x8BuLbKy^8B/^@^x| | xN!ox<_:`8B؁"<_"H48`Hfu|wy@0}&<_:`8B؁"<_"<_H]8B/]@]x| | xN!8`He|{y@,}&<_~x:`8B؁"<_"KExxdxHf/@pWހ>Ё Wހ><_Wޠ> W`>xW> W@>Bxx~xx;:`:":<_:;@8"HP H|T H[8B/[@[cx| | xN! H/@ xHP<<c̀HK|{y@,}&<_~x:`8B؁"<_"K|8`Hg-|~x@@~&V`<_~xx:`M B}&U`"~ &V1`N HPXcxx8BX He9|sy}&@P~ &<_~xxNB~&"M<_:::";@8<_HĀ[8B/[@[cx| | xN!^8B/^@^x| | xN!~cxHe!|{y@,<_~x8B؁b<_=?БiHЀS8B/S@S~cx| | xN!x=HxcxHc .||x@hHa=/A0}&U<_~x;:`~ &V1B:::;@M8~&V"<_M"HDR8B/R@R~Cx| | xN!@~xHc|sy}&@4~ &<_~xx;NBM~&"MHxHa|~xH`Y.A4;@<_~x,B~&"MM~ &NHHW88 P|BbHa-|~x@H~ &V1`V1>~0 V1><_V1>~2 V1@>~0xB~xx"::HxHa|}xH_,@&A~ &V1K8 PW8|BbHa|ty~&@ MH$xH`|}xH_],~@&A,M~ &V1@<_~xxNB؁"Kh8 PW8|BbH`|uy~ &@ NH(xH`Y|}xH^/A,WZ>P WZ>M<_~xxB؁"H8 PW8|BbH`--|vx@ N<_~xxB؁"H8`H`].|zx@0<_8~xxB؁"<_"<_H# xZ : Z H_}|~xH^/A@VR>~R VR@><_VR>~Q VR`>~PxB~Qx~x"x;HLW88 P|BbH_=-|~x@4~ &V1`<_~xx~&V`BM ":H48`H_Y|ty~&@,M<_~x~ &Bx"::H4 8`IT Hb |uy~ &@0N<_~xMx;MB؁":HL ~cx~xH_-|vx@LM<_~x~&V@Bx;:N";@<_8"<_H4S8B/S@S~cx| | xN!U8B/U@U~x| | xN!V8B/V@ЀV~óx| | xN!K[8B/[@[cx| | xN!W~x~x8BWH;@x::,:~ &N~&MHL[cx| | xN!A0^8B/^@^x| | xN!} A0S8B/S@S~cx| | xN!~ A0T8B/T@T~x| | xN!~8 A0U8B/U@U~x| | xN!A0V8B/V@V~óx| | xN!A0Z8B/Z@ZCx| | xN!<;8cphKU]8B/]@]x| | xN!X8B/X@Xx| | xN!R8B/R@R~Cx| | xN!Y8B/Y@Y#x| | xN!A L"9)/"@8a LC| | xN!H[8B/[@K8! xa|}r }q }p N ||#x|+xB!8;<<8j8_h8PH^=/AAL"9)"aLHY|~xHX/@ xHVH\,A |~xH4<_<8=?B~8c_|;b<_~ԑi~KqAL"9)/"@aLC| | xN!8!`x|N |B!|}x|#x|+x;<<8}8^dH]=/A]}8B]HVA/@lHUH[|~yAH<_x8BcPbK^8B/^@^x| | xN!<_8B}܁bH(HX,A |~xH4<_8B}܁b<<_=?;8c^}ԑi}K]8B/]@]x| | xN!8!Px|N |B!8|}x|#x|+x<<;8d8]8PH[/A`=aL9)=K8BKaLHW|~xHVM/A<_8xB|bH}xHT/@lHTHZ|~yAH<_x8BbbK恀^8B/^@^x| | xN!<_8yB|bH =?)aI}>Kx8BIH$<<_=?;8c]P|i|K艀]8B/]@]x| | xN!AL"9)/"@aLC| | xN!8!`x|N |B!8|}x|#x|+x<<;8b8[T8PHZ/A=aL9)=K8BKaLHU|~xHT/A<_8cBzȁbH4}x;DHS=/@pxHRMHXI|~yAH<_x8B`Kx8BIH$<<_=?;8c[zizK-]8B/]@]x| | xN!AL"9)/"@aLC| | xN!8!`x|N ||#x|+xB!<<8x<8XHW8/ALHQHS,A |`xH4<_<8=?Bxd8cY\b<_x\ix`K588!P|x|N ||@&Ba|{x|#xA!|+x<<8;8_8X8L9HHLHW/AЁ;aL8`9);K8BK!HI8BIHVU|~y@<_8*BẃbH!H<xc] I8BIH HS.|}x@<_8*BẃbH^8B/^@^x| | xN!]8B/]@]x| | xN!<_B]@X?<cwx8KQ|~y@(<_8+Bẃb<_=?wđiwHx8HSa.|}xA^8B/^@^x| | xN!8`HU|~yA<=?xxiwЀK8BK)wБ> aHK8BKHHR-||x@<_8+BẃbH]8B/]@]x| | xN!^8B/^@^x| | xN!<xx@HRQ.|}x@(<_8+=?Bẃb<_wđiwH\8B/\@\x| | xN!x8HQ|~y@0M<_8+;Bẃ"<_w<_"wH]8B/]@]x| | xN!AH"9)/"@aHC| | xN!HaHHR-|}y@<_8,BẃbKHM||xaLHOa|~xHN/A<_8.BẃbK{ xxHM-/@HKHQ-||x@(<_8/=?Bẃb<_wđiwH<_|dx8B]@bK!\8B/\@\x| | xN!<_8/BẃbKHLA=?)]Kx8BIHM^x;| | xN!A0]8B/]@]x| | xN!A0\8B/\@\x| | xN!<;8cXK߭[8B/[@[cx| | xN!AL"9)/"@aLC| | xN!AH"9)/"@PaHC| | xN!H4<_=?wđiwȀ^8B,^A;-K8!pxaa|}q }p N |B!<8cRHP|~y@<_<BV8RbHK8!Px|N |B!K|~yA0<x8cRXHL /Ax8HK8`H8`8!P|N |B!|~xK!||yA8HKe/A<x8cQHK/Axx8HKU/A^TtAxHNU|}xxHN|`y@p8]|bp`@ =?Tb:)V$|BJ4TH8@HO0C|/A(/ Ax8HJH 8`H8`8!P|N |@&|AB||xA|#x!|+x8=<_<kpD<;BpH8W8P8\9X\aXAT9!THN/A\<a\9)<K8BK!XI8BIaTK8BKHHaP8`HJ|~y@<_8BobHlaTxHKQ.|}xA^8B/^@^x| | xN!<`HJ1|~y@0M<_;`M;@8Bo"<_"oHTxxHJ-|{xA@]8B/]@]x| | xN!^8B/^@^x| | xN!8`HI.|}x@ MHaXxHJE|~y@0M<_8;@Bo"<_o<_"oH(]8B/]@]x| | xN!8``cHH.|}xAHxxHI-|zxA0^8B/^@^x| | xN!]8B/]@]x| | xN!cxDxHIq|~y@(<_8=?Bob<_oioHl[8B/[@[cx| | xN!Z8B/Z@ZCx| | xN!8`HG.|}x@M<_;`Bo"Ha\xHHu-|{x@(<_8=?Bob<_oioH܀]8B/]@]x| | xN!xdxHHM-|zx@0N<_;Bo"<_8o<_"oHl^8B/^@^x| | xN![8B/[@[cx| | xN!CxHFu|~xHE-/A(<_8=?Bob<_oioH؀Z8B/Z@ZCx| | xN!L/AH<cp,K/AKU/@(<_8Bob<_=?oioH| 8L8HC/@HBeHHa.|}x@8M<_;`M;@8Bo"<_"o<_oH<_|dx8BUbKԕ]8B/]@]x| | xN!<_8BobK8=?)U I}>Kx8BIHM^x;@| | xN!A0]8B/]@]x| | xN!A0[8B/[@[cx| | xN!A0Z8B/Z@ZCx| | xN!<;8cPK\8B/\@\x| | xN!A\"9)/"@a\C| | xN!AX"9)/"@aXC| | xN!AT"9)/"@@aTC| | xN!H$^8B,^Ap;@-K8!xaA|}r }q }p N ||@&BA8|{xA!`|#x<|+x<;8O8H48 `HF/A;a \<_M9);K8BK=a \9)=HE/@4<_;8xBg-"<_"g<_gH/@@<_<8;BLh(x-bKy<_8BgbH>>wghKӁ|yy@4M<_8=?xBg;b<_gigHa \HDE/@P8@:x;-AL<_;Bg} &U)`~`&Vs`!@M "aDHHHA-|xx@0~`&Vs@<_x;MBgaDa@"H`8`HD-|~x@ L H$ x#xHB-|xx@LL|&<_x~`&@DBg":HL<_8"g<_gH`Y8B/Y@Y#x| | xN!^8B/^@^x| | xN!xHBu|yy@$<_8xBg"<_gH\X8B/X@Xx| | xN!x>_HTx#xH@i.|zx@`H>/A|&T<_:;;MBgM~`&Vs@"D<_8HL"gHT8B/T@T~x| | xN!a \DxHAI-|xx@0~`&Vs@<_Tx;MBgaDa@"H@8`H?I-|~x@H|&T`<_Tx~`&Vs`@DBg":HL<_8"gHxxH@|uy~`&@,aDa@<_TxBg"8@AHALKX8B/X@Xx| | xN!^8B/^@^x| | xN!~xH@/||x@L8@;Tx;-AL<_Bg} &U)`|&T`!DM "@HKU8B/U@U~x| | xN!a \DxH?-|xx@0~`&Vs@<_Tx;MBgaDa@"H@8`H=-|~x@H|&T`<_Tx~`&Vs`@DBg":HL<_8"gH8xxH>|uy~`&@,aDa@<_TxBg"8@AHALKX8B/X@Xx| | xN!^8B/^@^x| | xN!~xH>/|~x@L8@;Tx;-AL<_Bg} &U)`|&T`!DM "@HKU8B/U@U~x| | xN!/A /Ala \DxH=-|xxAL8`H;-|~xAxxxH=|uy~`&@,aDa@<_TxBg"8@AHALHX8B/X@Xx| | xN!^8B/^@^x| | xN!~xH=/|~x@L8@;Tx;-AL<_Bg} &U)`|&T`!DM "@HH~r Vs@><_aDa@BgHd8`H9-|xxAx xxH7E|byAH} &!@@(~`&!D<_TxBg":LK\^8B/^@^x| | xN!X8B/X@Xx| | xN!aHH7M|uy~`&@0MaD<_;MTxBg;"LKā!HI8B/I@IaH| | xN!~xH5=-|~x@DH3m/A|&T`<_M BgD@";TxHLK@H4m||xH3%.AD9 8@;Tx, AL<_Bg} &M!@"H|@&ADK^8B/^@^x| | xN!CxH4 |~xH2/@8 `W8|BbH4-|xx@,|&T@<_TxMBg@D"Hta \DxH5|byAH} &!@@$M!D<_Tx;Bg"H<8`H3-|~x@@|&T`<_TxBgDb8@AL8<_=?gigH aHxH4|byAL} &!DA!HI8B/I@IaH| | xN!^8B/^@^x| | xN!xH2|byAH} &!@A aLHH4]-|~xAP!LI8B/I@IaL| | xN!!HI8B/I@IaH| | xN!8`H2)|byAL} &!D@$!@<_TxBgb8@AHKLxH2|byAH} &!@A^8B/^@^x| | xN!!LI8B/I@IaL| | xN!W8H1q-|~xAaHxH29|byAL} &!D@,<_8TxBg"<_g<_"gH !HI8B/I@IaH| | xN!^8B/^@^x| | xN!LxH1U|byAH} &!@@ M<_Tx;BgbK0X8B/X@Xx| | xN!!LI8B/I@IaL| | xN!aHH/||xH..A@8@9 Tx;AL<_-;Bg|&T`M "DH!HI8B/I@IaH| | xN!CxH/}|~xH./AL|&T<_Tx;MBgMD@";HL<_8"gH@W88 `|BK0U8B/U@U~x| | xN!a \DxH0.||xAx8`H.-|xx@8|&T@<_TxxMBg~`&Vs@@D"HXxxH0Y|byAL} &!D@(M!@<_Tx~`&Bgx"H\8B/\@\x| | xN!X8B/X@Xx| | xN!aLH-|xxH,y.A4~`&Vs`<_Tx;M Bga@":HH!LI8B/I@IaL| | xN!CxH-i||xH,-AH~`&Vs<_Tx;MBgaDa@":HL<_8"gH0W89! `|BJ/ACxK/A0rh0K/A CxH,||xH+i,&A~`&VsH8 `W8|BbH,|byAH} &!@@M<_~`&BgH K!/@,~`&Vs@<_BgaDTx;:"HL!HI8B/I@IaH| | xN!rh0K߹/ACxH+||xH*/A~`&Vs@H8 `W8|BbH+|uy~`&@M<_aDa@BgH,KQ/@8W> W@>@D<_Bg";TxHLHtU8B/U@U~x| | xN!K}/@xVs>~r Vs@>aDa@<_:Tx;Bg"HL<_8"g<_gHhY8B/Y@Y#x| | xN!/A@<ch4KI/AK/@ M<_;8Bg"Hpa \H,/|ex@ <_;8Bg-bH{ 8\H'/@H&H,|~y@0M<_;8Bg"<_g<_"gH<_x8BMbK^8B/^@^x| | xN!<_;8Bg-b<_=?gigH]x8B]Hd8@:;,ALH~`&MaDa@HY#x| | xN!A0X8B/X@Xx| | xN!A0^8B/^@^x| | xN!~x A0U8B/U@U~x| | xN!@| A4!HI8B/I@IaH| | xN!D| A4!LI8B/I@IaL| | xN!<;8cIKT8B/T@T~x| | xN![8B/[@[cx| | xN!A \"9)/"@8a \C| | xN!HY8B/Y@HK,8! xaA|}r }q }p N |B!8|}x|#x|+x<<;838,(8PH*/A=aL9)=K8BKaLH&|~xH%],A<_8?BKbHؐ} <x18}88d9H#Y/@lH# H) |~yAH<_x8B1bKu^8B/^@^x| | xN!<_8BBKbH@ /AX<cL0K١/AK-/@8<_8CBKb<<_=?;8c-KiKK]H;]8B/]@]x| | xN!AL"9)/"@aLC| | xN!8!`x|N |B!|}x8H8aL8DH# ]/8B]A8<cJ,Kؑ/AK/@<_8GBIbH}H /@pxH!AH'=|~yAH<_x8B/bK^8B/^@^x| | xN!<_8IBIbH}H 5H <<_=?8c+IiIKŀ]8B/]@]x| | xN!H"/A xH"]aLHD8B]H"y]x| | xN!8!`|N |AB!||x8H8aL8DH!<<_-`9)<^8B^/@A<<cHlK/AKa/@<_x8ـBG"H,| HH# |{y@$<_x8ڀBG"<_GH̀^8B/^@^x| | xN!8`H"|~yA;A@cxxExH#/@(<_8=?BGb<_GiGH8@T@^8B/^@^x| | xN!@/AcxH!|~xH /@\xHH$|~yAH<_x8B-dbK^8B/^@^x| | xN!<_8ۀBGbH(| HyH!|}y@(<_8܀BGb<_=?GiGHt[8B/[@[cx| | xN!8`H!5|~yAExxxH"}/@,<_8xBG"<_G<_"GH@T@^8B/^@^x| | xN!@/AxH a|~xH/@\xH H#|~yAH<_x8B-dbKq^8B/^@^x| | xN!<_8xBG"<_G<_"GH^x| | xN!<}x8c)Ky]8B/]@]x| | xN!\8B/\@\x| | xN!H /A xH}\aLHD8B\H\x| | xN!8!pA|N ^8B/^@,K|B!|}x|#x|+x8<<;8+8$d8L9HHLH"/A=aL9)=K8BK!HI8BIaLHQaDH |byA<_8̀BC`bHD]H]|~y@<_8ЀBC`bHlaHx8DH/@<<_8=?BC`b<_CXiC\^8B/^@HxD|4T~D^8B/^@^x| | xN!D;/@ <_(Ȁ/DA8<cCK/AKН/@<_8ԀBC`bHaHH|~xH/A<_8ՀBC`bHXxx8} 889;HT`/DAHuHq|~y@(<_8րBC`b<_=?CXiC\Hd<_x8B(ԀbK^8B/^@^x| | xN!K^x| | xN!<;8c%K]8B/]@]x| | xN!AL"9)/"@aLC| | xN!AH"9)/"@aHC| | xN!8!`x|N ||#x|+xB!8;<<8+8 x8PHM/AAL8`"9)"HM|~yAaLxHY|}y@<<_8=?B?b<_?i?^8B/^@H^8B/^@^x| | xN!xH|~xH=/A<<_8=?B?b<_?i?]8B/]@H|]8B/]@]x| | xN!8`|c0HE,A |~xH\<_8=?B?b<_?i?H(^xH ]x| | xN!<;8c!KmAL"9)/"@aLC| | xN!8!`x|N ||#x|+x|@&B!8;A!<<8)8\8PH)/AAL"9)"aLH|~xH/A<_8B=ЁbH4xH]|~yAd~Hm|yy@(<_8B=Ёb<_=?=ȑi=H(~H9-|}x@(N <_;M &W`B=Ё"H0~ H-||x@<&W@<_NB=Ё"<_8;`;@"=<_=H~H5.|{x@4&Wހ<_8;@B=Ё"<_=<_"=H~H|zy&A8`H=,@(<_8=?B=Ёb<_=ȑi=H\|~x# cCH =?)#@I}>Kx8BIHY#x| | xN!A0]8B/]@]x| | xN!A0\8B/\@\x| | xN!A0[8B/[@[cx| | xN! A0Z8B/Z@ZCx| | xN!<;8cKAL"9)/"@8aLC| | xN!HY8B/Y@K8!pxa!|}r }q }p N ||#x|+xB!<<8:08H8/ALHH,A |`xH4<_<8=?B:T8cHb<_:Li:PK%88!P|x|N ||#x|+xB!<<89887H|}yA8`H|zyAx|7hH|~y@N;; H H}.|yxA <x~xx8'xHxH|~xH ZCx| | xN!HN; ;]8B/]@]x| | xN!A0Y8B/Y@Y#x| | xN!/@[7x8 "H \7|7hx;7hHY/@[7x8 "H ؀^8B/^@^x| | xN!8`H |~y@[7x8c"H <|7hx7H/@[7x8c"H `^8B/^@^x| | xN!8`H|~y@[7x8d"H l<|7hx7Hi/@[7x8d"H ^8B/^@^x| | xN!8`H|~y@[7x8e"H <|7hx7H/@[7x8e"H p^8B/^@^x| | xN!8`H|~y@[7x8f"H |<}x7Hy/@[7x8f"H ^8B/^@^x| | xN!8`H-|~y@[7x8g"H <}x7H/@[7x8g"H ^8B/^@^x| | xN!8`H |~y@[7x8h"H<}x7H/@[7x8h"H ^8B/^@^x| | xN!8` H =|~y@[7x8i"H<}x7H/@[7x8i"H^8B/^@^x| | xN!8`0H |~y@[7x8j"H<}x7H/@[7x8j"H^8B/^@^x| | xN!8`@H M|~y@[7x8k"H$<}x7H!/@[7x8k"H^8B/^@^x| | xN!8`H |~y@[7x8l"H<}x7H /@[7x8l"H(^8B/^@^x| | xN!8`H ]|~y@[7x8m"H4<}x7H 1/@[7x8m"H^8B/^@^x| | xN!8`H |~y@[7x8n"H<}x7H /@[7x8n"H8^8B/^@^x| | xN!8`H m|~y@[7x8o"HD<}x7H A/@[7x8o"H^8B/^@^x| | xN!8`H |~y@[7x8p"H<}x7H /@[7x8p"HH^8B/^@^x| | xN!8`H }|~y@[7x8q"HT<}x7H Q/@[7x8q"HЀ^8B/^@^x| | xN!8`H |~y@[7x8r"H<}x7H /@[7x8r"HX^8B/^@^x| | xN!8`H|~y@[7x8s"Hd<}x7H a/@[7x8s"H^8B/^@^x| | xN!8` H|~y@[7x8t"H<}x7H /@[7x8t"Hh^8B/^@^x| | xN!8`@H|~y@[7x8u"Ht<}x7H q/@[7x8u"H^8B/^@^x| | xN!8``cH!|~y@[7x8v"H<}x7H/@[7x8v"Ht^8B/^@^x| | xN!<`H|~y@[7x8w"H<}x7H}/@[7x8w"H^8B/^@^x| | xN!8`H1|~y@[7x8x"H<}x7H/@[7x8x"H^8B/^@^x| | xN!8`H|~y@[7x8y"H<}x7H/@[7x8y"H ^8B/^@^x| | xN!8`HA|`yA<_8`8 H),@$[7x8"<_7p<_"7tH@8!p<_aؐb8$|}p N ^x| | xN!8!pxa|}p K4<_;xH5/@PKh;Z8B/Z@Kh<_7p<_"7t^8B/^@Kl|B}h=k|}N |B}h=k| }N |B}h=k|D}N |B}h=k|}N |B}h=k|}N |B}h=k| }N |B}h=k|H}N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| p}N |B}h=k| L}N |B}h=k| }N |B}h=k| P}N |B}h=k| }N |B}h=k| P}N |B}h=k| }N |B}h=k| L}N |B}h=k| }N |B}h=k| x}N |B}h=k| P}N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| t}N |B}h=k| P}N |B}h=k| 8}N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| T}N |B}h=k| }N |B}h=k| |}N |B}h=k| }N |B}h=k| }N |B}h=k| @}N |B}h=k| 8}N |B}h=k| }N |B}h=k|}N |B}h=k|}N |B}h=k| }N |B}h=k|}N |B}h=k| }N |B}h=k|p}N |B}h=k|$}N |B}h=k|}N |B}h=k|}N |B}h=k|}N |B}h=k|}N |B}h=k|D}N |B}h=k|}N |B}h=k|}N |B}h=k|\}N |B}h=k|$}N |B}h=k|}N |B}h=k|H}N |B}h=k| }N |B}h=k|}N |B}h=k|}N |B}h=k|x}N |B}h=k|l}N |B}h=k||}N |B}h=k|}N |B}h=k|}N raise: arg 3 must be a traceback or Noneinstance exception may not have a separate valueraise: exception class must be a subclass of BaseExceptionOpypm.Input.Readpypm.GetErrorTextpypm.Input.Pollpypm.Input.SetChannelMaskpypm.Input.SetFilterpypm.TimeOOpypm.Output.WriteSysExstdoutlost sys.stdout O|OOpypm.Output.WriteShortpypm.Output.Writepypm.Input.__init__pypm.Input.__dealloc__pypm.Output.__dealloc__pypm.Output.__init__pypm.Channelpypm.GetDeviceInfopypm.CountDevicespypm.GetDefaultOutputDeviceIDpypm.GetDefaultInputDeviceIDpypm__builtin____builtins__OutputInput__import__OOOOpypm.Output class Output: define an output MIDI stream. Takes the form: x = pypm.Output(MidiOutputDevice, latency) latency is in ms. If latency = 0 then timestamps for output are ignored. pypm.Input class Input: define an input MIDI stream. Takes the form: x = pypm.Input(MidiInputDevice) lengthmaskfilterswhenmsgstatusdata1data2dataInputDeviceOutputDevicelatencyInitializeTerminateGetDefaultInputDeviceIDGetDefaultOutputDeviceIDCountDevicesGetDeviceInfoTimeGetErrorTextChannelchanerripypm.pyxWriteWriteShortWriteSysExSetFilterSetChannelMaskPollRead                                                                    Tbt8D`gX\,a$\ ,8_l rr<8$q<pXp\hlx2L+jP ,D P `hp |      ( 4$D(L ,X0`4h8p <|@3DHLPTX0\D2`xdhC;2/.,,| Initialize: call this first Terminate: call this to clean up Midi streams when done. If you do not call this on Windows machines when you are done with MIDI, your system may crash. GetDeviceInfo(): returns 5 parameters - underlying MIDI API - device name - TRUE iff input is available - TRUE iff output is available - TRUE iff device stream is already open Time() returns the current time in ms of the PortMidi timer GetErrorText() returns human-readable error messages translated from error numbers Channel() is used with ChannelMask on input MIDI streams. Example: to receive input on channels 1 and 10 on a MIDI stream called MidiIn: MidiIn.SetChannelMask(pypm.Channel(1) | pypm.Channel(10)) note: PyPortMidi Channel function has been altered from the original PortMidi c call to correct for what seems to be a bug --- i.e. channel filters were all numbered from 0 to 15 instead of 1 to 16. BFALSEFILT_ACTIVEFILT_AFTERTOUCHFILT_CHANNEL_AFTERTOUCHFILT_CLOCKFILT_CONTROLFILT_F9FILT_FDFILT_MTCFILT_NOTEFILT_PITCHBENDFILT_PLAYFILT_POLY_AFTERTOUCHFILT_PROGRAMFILT_REALTIMEFILT_RESETFILT_SONG_POSITIONFILT_SONG_SELECTFILT_SYSEXFILT_TICKFILT_TUNEFILT_UNDEFINEDTRUE__version__appendarrayrangetostringOpening Midi OutputClosing MIDI output stream and destroying instancemaximum list length is 1024 arguments in event list : writing to midi bufferWriting to MIDI bufferMIDI input opened.Closing MIDI input stream and destroying instancemaximum buffer length is 1024minimum buffer length is 10.03 Write(data) output a series of MIDI information in the form of a list: Write([[[status <,data1><,data2><,data3>],timestamp], [[status <,data1><,data2><,data3>],timestamp],...]) fields are optional example: choose program change 1 at time 20000 and send note 65 with velocity 100 500 ms later. Write([[[0xc0,0,0],20000],[[0x90,60,100],20500]]) notes: 1. timestamps will be ignored if latency = 0. 2. To get a note to play immediately, send MIDI info with timestamp read from function Time. 3. understanding optional data fields: Write([[[0xc0,0,0],20000]]) is equivalent to Write([[[0xc0],20000]]) WriteShort(status <, data1><, data2>) output MIDI information of 3 bytes or less. data fields are optional status byte could be: 0xc0 = program change 0x90 = note on etc. data bytes are optional and assumed 0 if omitted example: note 65 on with velocity 100 WriteShort(0x90,65,100) WriteSysEx(,) writes a timestamped system-exclusive midi message. can be a *list* or a *string* example: (assuming y is an input MIDI stream) y.WriteSysEx(0,'\xF0\x7D\x10\x11\x12\x13\xF7') is equivalent to y.WriteSysEx(pypm.Time, [0xF0, 0x7D, 0x10, 0x11, 0x12, 0x13, 0xF7]) SetFilter() sets filters on an open input stream to drop selected input types. By default, only active sensing messages are filtered. To prohibit, say, active sensing and sysex messages, call SetFilter(stream, FILT_ACTIVE | FILT_SYSEX); Filtering is useful when midi routing or midi thru functionality is being provided by the user application. For example, you may want to exclude timing messages (clock, MTC, start/stop/continue), while allowing note-related messages to pass. Or you may be using a sequencer or drum-machine for MIDI clock information but want to exclude any notes it may play. Note: SetFilter empties the buffer after setting the filter, just in case anything got through. SetChannelMask() filters incoming messages based on channel. The mask is a 16-bit bitfield corresponding to appropriate channels Channel() can assist in calling this function. i.e. to set receive only input on channel 1, call with SetChannelMask(Channel(1)) Multiple channels should be OR'd together, like SetChannelMask(Channel(10) | Channel(11)) note: PyPortMidi Channel function has been altered from the original PortMidi c call to correct for what seems to be a bug --- i.e. channel filters were all numbered from 0 to 15 instead of 1 to 16. Poll tests whether input is available, returning TRUE, FALSE, or an error value. Read(length): returns up to midi events stored in the buffer and returns them as a list: [[[status,data1,data2,data3],timestamp], [[status,data1,data2,data3],timestamp],...] example: Read(50) returns all the events in the buffer, up to 50 events. <@@@D@H@L@P@T@X@\@`@d@h@l@p@t@x@|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@ @$@(@,@0@4@8@<@@@D@H@L@\@h@@@@@@@@@ @,@D@H@L@d@l@@@@@@@@@@@@ @@@ @(@,@4@8@<@D@H@L@X@\@h@l@x@|@@@@@@@@@@@@@@@@@@@@@@ @(@0@8@@@H@P@X@`@h@p@x@@@@@@@@@@@@@@@@@@@@@ @(@0@8@@@H@P@X@`@h@p@x@@@@@@@@@@@@@@@@@@@@@ @(@0@8@@@H@P@h@p@x@@@@@@@@@@@@@@@@@@@@@@@.dNdUf OQ.\$\$N.l$l$N.|$|$0N0.$$TNT.$$N.$$N.+ $+$N.,<$,$PNP..,W$.,$N./|$/$\N\.2L$2L$N.2$2$PNP.9<$9<$\N\.9$9$hNh.:$:$N.;$;$N.C?$C$ N ._\$_$N.a${$a$$N.b$b$N.gX$gX$lNl.j$j$N.l$l$|N|.p\ $p\$N.p($p$N.qP$q$N.r<w$r<$tNt.r$r$N.s4$s4$N  &&&$&9&N& c&x&&(&&h&p&x&&&5&Q&8l&&&&P&&&&&,&D&P%&`0&h;&pF&|Q&\&g&r&}&&&&&&&(&4&D&L&X&`&h &p&|&)&3&=&G&Q&[&0f&Dq&x|&&&&&&&B&_&||&&&&&&&&-&B&K&T&b&r&{&&&&&&&&&0&B&U&m&&&&&& &&)&<&O& g&$u&(&,&0&4&8&<&@&D&H&L&P &T&X#&\/&`;&dG&hS&l]&pg&t&&8&D&\& & '&,d .<A\\lv|+,.,/=2LQ2s9<9:;C_a$%bDgXdj{lp\pqr<r6LH]r (h&p;xPa}8"P;FQ\g,rD}P`hp| "(-48DCLNXY`chmpx|0Dx8\~|'<Qf{  & G [ q         . B ^ x    $ ( , 0 4 8 -< 8@ CD NH YL dP oT zX \ ` d h l p t  8 D 9\ S o ,  P s4      = O ` o }          .=N_v +?M^n);Sew *;N`r" __mh_bundle_headerdyld_stub_binding_helper__dyld_func_lookup___pyx_tp_new_4pypm_Output___pyx_tp_new_4pypm_Input___Pyx_Raise___Pyx_GetName___Pyx_AddTraceback___pyx_f_4pypm_5Input_Read___pyx_f_4pypm_GetErrorText___pyx_f_4pypm_5Input_Poll___pyx_f_4pypm_5Input_SetChannelMask___pyx_f_4pypm_5Input_SetFilter___pyx_f_4pypm_Time___pyx_f_4pypm_6Output_WriteSysEx___Pyx_GetStdout___Pyx_PrintNewline___Pyx_PrintItem___pyx_f_4pypm_6Output_WriteShort___pyx_f_4pypm_6Output_Write___pyx_f_4pypm_5Input___init_____pyx_tp_dealloc_4pypm_Input___pyx_tp_dealloc_4pypm_Output___pyx_f_4pypm_6Output___init_____pyx_f_4pypm_Channel___pyx_f_4pypm_GetDeviceInfo___pyx_f_4pypm_CountDevices___pyx_f_4pypm_GetDefaultOutputDeviceID___pyx_f_4pypm_GetDefaultInputDeviceID___pyx_f_4pypm_Terminate___pyx_f_4pypm_Initializedyld__mach_header___pyx_argnames.9610___pyx_argnames.9510___pyx_argnames.9456___pyx_argnames.9284___pyx_argnames.9186___pyx_argnames.9003___pyx_argnames.9369___pyx_argnames.8868___pyx_methods___pyx_string_tab___pyx_argnames.8821___pyx_argnames.8783___pyx_argnames.8687___pyx_filenames___pyx_methods_4pypm_Output___pyx_methods_4pypm_Input___pyx_doc_4pypm_Initialize___pyx_doc_4pypm_Terminate___pyx_doc_4pypm_GetDeviceInfo___pyx_doc_4pypm_Time___pyx_doc_4pypm_GetErrorText___pyx_doc_4pypm_Channel___pyx_k10___pyx_k40___pyx_k19___pyx_k32___pyx_k30___pyx_k21___pyx_k34___pyx_k23___pyx_k25___pyx_k36___pyx_k29___pyx_k35___pyx_k22___pyx_k31___pyx_k33___pyx_k28___pyx_k27___pyx_k37___pyx_k38___pyx_k20___pyx_k24___pyx_k39___pyx_k26___pyx_k41___pyx_k18___pyx_k16___pyx_k9___pyx_k4___pyx_k11___pyx_k1___pyx_k2___pyx_k3___pyx_k5___pyx_k6___pyx_k7___pyx_k8___pyx_k12___pyx_k13___pyx_k14___pyx_k15___pyx_k17___pyx_doc_4pypm_6Output_Write___pyx_doc_4pypm_6Output_WriteShort___pyx_doc_4pypm_6Output_WriteSysEx___pyx_doc_4pypm_5Input_SetFilter___pyx_doc_4pypm_5Input_SetChannelMask___pyx_doc_4pypm_5Input_Poll___pyx_doc_4pypm_5Input_Read___pyx_argnames.9557___pyx_ptype_4pypm_Output___pyx_ptype_4pypm_Input___pyx_argnames.8754___pyx_argnames.8651___pyx_argnames.8625___pyx_argnames.8599___pyx_argnames.8583___pyx_argnames.8567___pyx_m___pyx_b___pyx_lineno___pyx_filename___pyx_f___pyx_n_B___pyx_n_FALSE___pyx_n_FILT_ACTIVE___pyx_n_FILT_AFTERTOUCH___pyx_n_FILT_CHANNEL_AFTERTOUCH___pyx_n_FILT_CLOCK___pyx_n_FILT_CONTROL___pyx_n_FILT_F9___pyx_n_FILT_FD___pyx_n_FILT_MTC___pyx_n_FILT_NOTE___pyx_n_FILT_PITCHBEND___pyx_n_FILT_PLAY___pyx_n_FILT_POLY_AFTERTOUCH___pyx_n_FILT_PROGRAM___pyx_n_FILT_REALTIME___pyx_n_FILT_RESET___pyx_n_FILT_SONG_POSITION___pyx_n_FILT_SONG_SELECT___pyx_n_FILT_SYSEX___pyx_n_FILT_TICK___pyx_n_FILT_TUNE___pyx_n_FILT_UNDEFINED___pyx_n_TRUE___pyx_n___version_____pyx_n_append___pyx_n_array___pyx_n_range___pyx_n_tostring___pyx_k1p___pyx_k2p___pyx_k3p___pyx_k5p___pyx_k6p___pyx_k7p___pyx_k8p___pyx_k12p___pyx_k13p___pyx_k14p___pyx_k15p___pyx_k17p___pyx_d1___pyx_d2___pyx_tp_as_number_Output___pyx_tp_as_sequence_Output___pyx_tp_as_mapping_Output___pyx_tp_as_buffer_Output___pyx_tp_as_number_Input___pyx_tp_as_sequence_Input___pyx_tp_as_mapping_Input___pyx_tp_as_buffer_Input___pyx_type_4pypm_Input___pyx_type_4pypm_Output_initpypm_Pm_Abort_Pm_Close_Pm_CountDevices_Pm_GetDefaultInputDeviceID_Pm_GetDefaultOutputDeviceID_Pm_GetDeviceInfo_Pm_GetErrorText_Pm_Initialize_Pm_OpenInput_Pm_OpenOutput_Pm_Poll_Pm_Read_Pm_SetChannelMask_Pm_SetFilter_Pm_Terminate_Pm_Write_Pm_WriteSysEx_Pt_Start_Pt_Time_PyCode_New_PyDict_New_PyErr_Fetch_PyErr_Occurred_PyErr_Restore_PyErr_SetObject_PyErr_SetString_PyErr_WriteUnraisable_PyExc_BaseException_PyExc_Exception_PyExc_IndexError_PyExc_NameError_PyExc_RuntimeError_PyExc_TypeError_PyFile_SoftSpace_PyFile_WriteObject_PyFile_WriteString_PyFrame_New_PyImport_AddModule_PyInt_AsLong_PyInt_AsSsize_t_PyInt_FromLong_PyInt_FromSsize_t_PyIter_Next_PyList_New_PyList_Type_PyModule_GetDict_PyNumber_Add_PyNumber_And_PyNumber_Lshift_PyNumber_Or_PyNumber_Subtract_PyObject_CallObject_PyObject_Cmp_PyObject_GetAttr_PyObject_GetAttrString_PyObject_GetItem_PyObject_GetIter_PyObject_SetAttr_PyObject_SetAttrString_PyObject_Size_PyString_AsString_PyString_FromString_PyString_FromStringAndSize_PyString_InternInPlace_PyString_Size_PyString_Type_PySys_GetObject_PyThreadState_Get_PyTraceBack_Here_PyTraceBack_Type_PyTuple_New_PyType_IsSubtype_PyType_Ready_PyType_Type_Py_InitModule4__DefaultRuneLocale__PyArg_ParseTupleAndKeywords_SizeT__PyObject_CallFunction_SizeT__Py_NoneStruct___maskrune/Users/kpy/sw/pyPortMidi-0.0.3/pypm.c/Users/kpy/sw/pyPortMidi-0.0.3/build/temp.macosx-10.6-universal-2.6/pypm.o___pyx_tp_new_4pypm_Output___pyx_tp_new_4pypm_Input___Pyx_Raise___Pyx_GetName___Pyx_AddTraceback___pyx_f_4pypm_5Input_Read___pyx_f_4pypm_GetErrorText___pyx_f_4pypm_5Input_Poll___pyx_f_4pypm_5Input_SetChannelMask___pyx_f_4pypm_5Input_SetFilter___pyx_f_4pypm_Time___pyx_f_4pypm_6Output_WriteSysEx___Pyx_GetStdout___Pyx_PrintNewline___Pyx_PrintItem/usr/include/ctype.h___pyx_f_4pypm_6Output_WriteShort___pyx_f_4pypm_6Output_Write___pyx_f_4pypm_5Input___init_____pyx_tp_dealloc_4pypm_Input___pyx_tp_dealloc_4pypm_Output___pyx_f_4pypm_6Output___init_____pyx_f_4pypm_Channel___pyx_f_4pypm_GetDeviceInfo___pyx_f_4pypm_CountDevices___pyx_f_4pypm_GetDefaultOutputDeviceID___pyx_f_4pypm_GetDefaultInputDeviceID___pyx_f_4pypm_Terminate___pyx_f_4pypm_Initialize_initpypm___pyx_type_4pypm_Output___pyx_type_4pypm_Input___pyx_argnames.9610___pyx_argnames.9510___pyx_argnames.9456___pyx_argnames.9284___pyx_argnames.9186___pyx_argnames.9003___pyx_argnames.9369___pyx_argnames.8868___pyx_methods___pyx_string_tab___pyx_argnames.8821___pyx_argnames.8783___pyx_argnames.8687___pyx_filenames___pyx_methods_4pypm_Output___pyx_methods_4pypm_Input___pyx_doc_4pypm_Initialize___pyx_doc_4pypm_Terminate___pyx_doc_4pypm_GetDeviceInfo___pyx_doc_4pypm_Time___pyx_doc_4pypm_GetErrorText___pyx_doc_4pypm_Channel___pyx_k10___pyx_k40___pyx_k19___pyx_k32___pyx_k30___pyx_k21___pyx_k34___pyx_k23___pyx_k25___pyx_k36___pyx_k29___pyx_k35___pyx_k22___pyx_k31___pyx_k33___pyx_k28___pyx_k27___pyx_k37___pyx_k38___pyx_k20___pyx_k24___pyx_k39___pyx_k26___pyx_k41___pyx_k18___pyx_k16___pyx_k9___pyx_k4___pyx_k11___pyx_k1___pyx_k2___pyx_k3___pyx_k5___pyx_k6___pyx_k7___pyx_k8___pyx_k12___pyx_k13___pyx_k14___pyx_k15___pyx_k17___pyx_doc_4pypm_6Output_Write___pyx_doc_4pypm_6Output_WriteShort___pyx_doc_4pypm_6Output_WriteSysEx___pyx_doc_4pypm_5Input_SetFilter___pyx_doc_4pypm_5Input_SetChannelMask___pyx_doc_4pypm_5Input_Poll___pyx_doc_4pypm_5Input_Read___pyx_argnames.9557___pyx_ptype_4pypm_Output___pyx_ptype_4pypm_Input___pyx_argnames.8754___pyx_argnames.8651___pyx_argnames.8625___pyx_argnames.8599___pyx_argnames.8583___pyx_argnames.8567___pyx_m___pyx_b___pyx_lineno___pyx_filename___pyx_f___pyx_n_B___pyx_n_FALSE___pyx_n_FILT_ACTIVE___pyx_n_FILT_AFTERTOUCH___pyx_n_FILT_CHANNEL_AFTERTOUCH___pyx_n_FILT_CLOCK___pyx_n_FILT_CONTROL___pyx_n_FILT_F9___pyx_n_FILT_FD___pyx_n_FILT_MTC___pyx_n_FILT_NOTE___pyx_n_FILT_PITCHBEND___pyx_n_FILT_PLAY___pyx_n_FILT_POLY_AFTERTOUCH___pyx_n_FILT_PROGRAM___pyx_n_FILT_REALTIME___pyx_n_FILT_RESET___pyx_n_FILT_SONG_POSITION___pyx_n_FILT_SONG_SELECT___pyx_n_FILT_SYSEX___pyx_n_FILT_TICK___pyx_n_FILT_TUNE___pyx_n_FILT_UNDEFINED___pyx_n_TRUE___pyx_n___version_____pyx_n_append___pyx_n_array___pyx_n_range___pyx_n_tostring___pyx_k1p___pyx_k2p___pyx_k3p___pyx_k5p___pyx_k6p___pyx_k7p___pyx_k8p___pyx_k12p___pyx_k13p___pyx_k14p___pyx_k15p___pyx_k17p___pyx_d1___pyx_d2___pyx_tp_as_number_Output___pyx_tp_as_sequence_Output___pyx_tp_as_mapping_Output___pyx_tp_as_buffer_Output___pyx_tp_as_number_Input___pyx_tp_as_sequence_Input___pyx_tp_as_mapping_Input___pyx_tp_as_buffer_Input X(__TEXTpp__text__TEXTkX__symbol_stub1__TEXT____cstring__TEXTaa__stub_helper__TEXTxfxf__unwind_info__TEXT0i0i__eh_frame__TEXTii `__DATAp0p0__nl_symbol_ptr__DATApxpD__la_symbol_ptr__DATAxp xpS__data__DATArr__bss__DATAH__LINKEDITPXI21e-sS"0``x`اH 0( PQ P/Users/kpy/sw/portmidi/Release/libportmidi.dylib h,&/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation `1/System/Library/Frameworks/CoreMIDI.framework/Versions/A/CoreMIDI `/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio 8 }/usr/lib/libSystem.B.dylibUHH1L0AUHH1L0AUHH]LeLmLuH IHIHh1H9HDI9LDHtHHtHMt-I$HHHHHu HCHP0HvHHvov+HcEHHu)HfvHHTvBvH={F1I$HI$Hu ID$LP0H[A\UHATSHHHHHELEH YHE1BEE1HHEHH}^DIDHt HuHHuuxH{DCyc~CHDIHt/1HHVSH8I$HI$Hu ID$LP0HDuHH2u uyH_SHIH=XEmE1HHHHu HCHP0HEHHHHu H}HGP0LH[A\UHATSH IHHHELEH pXHD1C1ۅI$HEHH} CHBHt HhtHHVtDtc I|$H`Byc+BHCCHHt,1HHRH8HHHHu HCHP0HsHHssdH]I|$AtvI|$HAy܉AHBHHt,1HHxQH8HHHHu HCHP0HisHHWsEsgHQHHH=C1I$HI$Hu ID$LP0HEHHHHu H}HGP0HH [A\UHHHH rHnB1)B1҅t@1AHZAHHu)HrHHrrH=C1HUHH]LeLmLuH0IHHHEHELMLEH VHB1A1ۅ[IHEHHEHSAHHu HrHHqq*HEHHEHCH=OH@IHu HqHHqq*HHHHu HCHP0I$HI$Hu ID$LP0L;%}OH58rH=9qnHHu HEqHH3q!q+H5qH@IHteHHHHu HCHP01@HHHpHHpHCHEHHEHC HL?IHu HpHHpp+I$HI$Hu ID$LP0HHHHu HCHP0H5>qL2?IHu H?pHH-pp+IEHIEHu IELP01L>HHu HoHHoo+GI$HI$Hu ID$LP0HEHHHHu H}HGP0H]H}>HHu HoHHtobo,1=IH}=I=Ht HFoHH4o"o.I~HLN=yb=H>IHt.1HHLH8{IEHIEHu IELP0HnHHnn/g1<I9tHLHHZHCHP0E1MtI$HI$Hu ID$LP0MtIEHIEHu IELP0H=>1IHIHu IFLP0HEHHHHu H}HGP0HEHHHHu'H}HGP0HHHE1HJ8HH]LeLmLuUHSHH=C><HHuH56>HKH8;HH[UHSHHHt!HH= >;x1H;1H[UHH]LeLmH HdIHH};tLH==v;LHX;xqHCtkH;IH;H~SJ\(;@ǀuHcHJDeHDž/H3HHuH&eHHee1OB4HHt"HHCHL3HHuDHdHHddHDžHDžHDžM@IHIHu IGLP0HHHHu HCHP0HP3IHu HKdHH9d'dzHHHHHu HBHP0MLL2HHu0B2H,HcHHcc1IHIHu IFLP0H}H2HHu HcHHvcdc,12HHu HYcHHGc5cyHH!2HHu HcHH cbIHHHHHu HBHP0HHHHu HCHP0H1IHu HbHHbb;HHHHHu HBHP0H}HZ1HHu'HWbHHEb3bL10HHu H!bHHbaAHH0HHu HaHHaaHHHHHu HBHP0HHHHu HCHP0H0HHu HzaHHhaVaHHHHHu HBHP0I HH}H0HH1/HHHH/HHu H`HH`` HHHHHu HBHP0HHHHu HCHP0H/HHu2Hr`HH``N`LHDž+HHHHHu HBHP0H.HHu H `HH__(/HHu'H_HH__L HHCH==Hy.HHu H_HH|_j_) HHHHu HCHP0H5^`H.HHu)H7_HH%__L1A HHHHHu HBHP01HH<H8jHHHHHu HBHP0H^HH^^4H,-H,Ht4H^HHp^^^LHDž1v HHDŽH5_H=^LHHu H#^HH^] H}H,HH_1,HHu'H]HH]]L HH,HHu H]HHx]f]HHHHHu HBHP0HHHHHu HBHP0H/,IHu H]HH]\HHHHHu HBHP0Ly+HH<+HHHHHPHHh+HHu2H}\HHk\Y\LHDžHHHHu HCHP0HHHHHu HBHP0H+HHu H[HH[[ HHHHHu HBHP0H`*HHu)HMH(*I)Ht H[HHr[`[HHHHu HCHP0H)H)HHH)HHu H[HH[ZH}H)HHu'HZHHZZL1K)HHu'HZHHZ|ZLHHa)HHrHHHHHu HBHP0HHHHu HCHP0Ic(HHHH(HHHHHHHu HBHP0HHHHHu HBHP0G(HHu'HYHHYtYLhHH)(HHtnHHHHu HCHP0HHHHHu HBHP0B<Hc'HHcHH'HHu'HXHHXXLrHHHHHu HBHP0HHHHu HCHP0HH8'HHu)HkXHHYXGXL1HHHHHu HBHP0HHHHHu HBHP0H&IK&Ht4HWHHWWLHDž1HHHHHu HBHP0H)&H%Ht HWHHmW[WHLHHHHHu HBHP0H}H&IHR%HHu#HVHHVVLHL%HHu*HVHHVVLLIHIHu IFLP0HHHHHu HBHP0H$H$HtHHAVHH/VVLHDžHDžHDžHHHHHu HBHP0Hk$I!$Ht HUHHUUIHJ5ȿEU EzH<hH=}V(TH#I#H7IJ5#HHtHy2HUHHTTLHDžHHHHHu HBHP0H=UyH;#I"HIJ5ȿ#HHtH+y/H`THHNT,HAD$ E̅t6H=Nx _yHMHHMM5I|$HcKIHu#HMHHM|MI5HHHHu HCHP01HHL}LHL%y#H0HcHHu)H=CHH+CCH=vw1HUHHHH BH1M1҅t>HcHHu)HBHHBBH= 1HUHHHH eBH*11҅t>fHcHHu)HmBHH[BIBH=觹1HUHHHH BH1}1҅t@HM HHHUHHHH AH1A1҅t 11H HHHUHAWAVAUATSHH,HAA11H5%H=*H]AHKHH=HFAH,H=.AHH5AH&y7HsHH{9I$H{H?Ct!H LcMu|H=@HY!H5y H@HH@@$H"!HC@H="xH=l@H"H5D{y Hn@HH\@J@3 Hf"H?HAH5AH=@)y H"@HH@?| H@HEH=?H5HH1IE1E1HtZH=?rIHX IHG MILHUH5dH1I! ID$LP0HHHHu HCHP0MtIEHIEHu IELP0Mu H-?HH? ? H5?H=>L y H>HH>> IHIHu IGLP0T IHu H>HH>>c H5>H=b>Hv y Ho>HH]>K>c IHIHu IGLP0 IHu H%>HH>>d H5>H==H y H=HH==d IHIHu IGLP0L IHu H=HH=}=e H5=H=Z=Hn y Hg=HHU=C=e IHIHu IGLP0 IHu H=HH =<fw H5e=H=<H y H<HH<<f IHIHu IGLP0D IHu H<HH<u<g H5<H=R<Hf y H_<HHM<;<g IHIHu IGLP0 IHu H<HH<;ho H5<H=;H y H;HH;;h IHIHu IGLP0 < IHu H;HH;m;iH5;H=J;H^ y HW;HHE;3;iIHIHu IGLP00 IHu H ;HH::jgH5;H=:H y H:HH::jyIHIHu IGLP0@4 IHu H:HHw:e:kH5:H=B:HV y HO:HH=:+:kIHIHu IGLP0IHu H:HH99l_H5e:H=9Hy H9HH99lqIHIHu IGLP0,IHu H9HHo9]9mH59H=:9HNy HG9HH59#9mIHIHu IGLP0IHu H8HH88nWH59H=8Hy H8HH88niIHIHu IGLP0$IHu Hy8HHg8U8oH58H=28HFy H?8HH-88oIHIHu IGLP0IHu H7HH77pOH57H=7Hy H7HH77paIHIHu IGLP0IHu Hq7HH_7M7qH57H=*7H>y H77HH%77qIHIHu IGLP0IHu H6HH66rGH57H=6Hy H6HH66rYIHIHu IGLP0IHu Hi6HHW6E6sH56H="6H6y H/6HH6 6sIHIHu IGLP0 IHu H5HH55t?H56H=5Hy H5HH55tQIHIHu IGLP0@ IHu Ha5HHO5=5uH55H=5H.y H'5HH55uIHIHu IGLP0IHu H4HH44v7H5U5H=4Hy H4HH44vIIHIHu IGLP0IHu HY4HHG454wH54H=4H&y H4HH 43wIHIHu IGLP01IHu H3HH33x2H53H=3Hy H3HH3z3xDIHIHu IGLP0IHu HT3HHB303yH53H= 3H!y H3HH32yIHIHu IGLP01~HtH&41kHuH2HH22 H3H[A\A]A^A_IGLP0H='H[A\A]A^A_ͩH=pI$HI$HIHIHu%z%|%~%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%raise: arg 3 must be a traceback or Noneinstance exception may not have a separate valueraise: exception class must be a subclass of BaseExceptionOpypm.Input.Readpypm.GetErrorTextpypm.Input.Pollpypm.Input.SetChannelMaskpypm.Input.SetFilterpypm.TimeOOpypm.Output.WriteSysExstdoutlost sys.stdout O|OOpypm.Output.WriteShortpypm.Output.Writepypm.Input.__init__pypm.Input.__dealloc__pypm.Output.__dealloc__pypm.Output.__init__pypm.Channelpypm.GetDeviceInfopypm.CountDevicespypm.GetDefaultOutputDeviceIDpypm.GetDefaultInputDeviceIDpypm__builtin____builtins__OutputInput__import__OOOOpypm.Output class Output: define an output MIDI stream. Takes the form: x = pypm.Output(MidiOutputDevice, latency) latency is in ms. If latency = 0 then timestamps for output are ignored. pypm.Input class Input: define an input MIDI stream. Takes the form: x = pypm.Input(MidiInputDevice) lengthmaskfilterswhenmsgstatusdata1data2dataInputDeviceOutputDevicelatencyInitializeTerminateGetDefaultInputDeviceIDGetDefaultOutputDeviceIDCountDevicesGetDeviceInfoTimeGetErrorTextChannelchanerripypm.pyxWriteWriteShortWriteSysExSetFilterSetChannelMaskPollReadL AS% hhh!h9h\hhhVhohhhxhnhdhZhPh)FhH): returns 5 parameters - underlying MIDI API - device name - TRUE iff input is available - TRUE iff output is available - TRUE iff device stream is already open Time() returns the current time in ms of the PortMidi timer GetErrorText() returns human-readable error messages translated from error numbers Channel() is used with ChannelMask on input MIDI streams. Example: to receive input on channels 1 and 10 on a MIDI stream called MidiIn: MidiIn.SetChannelMask(pypm.Channel(1) | pypm.Channel(10)) note: PyPortMidi Channel function has been altered from the original PortMidi c call to correct for what seems to be a bug --- i.e. channel filters were all numbered from 0 to 15 instead of 1 to 16. BFALSEFILT_ACTIVEFILT_AFTERTOUCHFILT_CHANNEL_AFTERTOUCHFILT_CLOCKFILT_CONTROLFILT_F9FILT_FDFILT_MTCFILT_NOTEFILT_PITCHBENDFILT_PLAYFILT_POLY_AFTERTOUCHFILT_PROGRAMFILT_REALTIMEFILT_RESETFILT_SONG_POSITIONFILT_SONG_SELECTFILT_SYSEXFILT_TICKFILT_TUNEFILT_UNDEFINEDTRUE__version__appendarrayrangetostringOpening Midi OutputClosing MIDI output stream and destroying instancemaximum list length is 1024 arguments in event list : writing to midi bufferWriting to MIDI bufferMIDI input opened.Closing MIDI input stream and destroying instancemaximum buffer length is 1024minimum buffer length is 10.03 Write(data) output a series of MIDI information in the form of a list: Write([[[status <,data1><,data2><,data3>],timestamp], [[status <,data1><,data2><,data3>],timestamp],...]) fields are optional example: choose program change 1 at time 20000 and send note 65 with velocity 100 500 ms later. Write([[[0xc0,0,0],20000],[[0x90,60,100],20500]]) notes: 1. timestamps will be ignored if latency = 0. 2. To get a note to play immediately, send MIDI info with timestamp read from function Time. 3. understanding optional data fields: Write([[[0xc0,0,0],20000]]) is equivalent to Write([[[0xc0],20000]]) WriteShort(status <, data1><, data2>) output MIDI information of 3 bytes or less. data fields are optional status byte could be: 0xc0 = program change 0x90 = note on etc. data bytes are optional and assumed 0 if omitted example: note 65 on with velocity 100 WriteShort(0x90,65,100) WriteSysEx(,) writes a timestamped system-exclusive midi message. can be a *list* or a *string* example: (assuming y is an input MIDI stream) y.WriteSysEx(0,'\xF0\x7D\x10\x11\x12\x13\xF7') is equivalent to y.WriteSysEx(pypm.Time, [0xF0, 0x7D, 0x10, 0x11, 0x12, 0x13, 0xF7]) SetFilter() sets filters on an open input stream to drop selected input types. By default, only active sensing messages are filtered. To prohibit, say, active sensing and sysex messages, call SetFilter(stream, FILT_ACTIVE | FILT_SYSEX); Filtering is useful when midi routing or midi thru functionality is being provided by the user application. For example, you may want to exclude timing messages (clock, MTC, start/stop/continue), while allowing note-related messages to pass. Or you may be using a sequencer or drum-machine for MIDI clock information but want to exclude any notes it may play. Note: SetFilter empties the buffer after setting the filter, just in case anything got through. SetChannelMask() filters incoming messages based on channel. The mask is a 16-bit bitfield corresponding to appropriate channels Channel() can assist in calling this function. i.e. to set receive only input on channel 1, call with SetChannelMask(Channel(1)) Multiple channels should be OR'd together, like SetChannelMask(Channel(10) | Channel(11)) note: PyPortMidi Channel function has been altered from the original PortMidi c call to correct for what seems to be a bug --- i.e. channel filters were all numbered from 0 to 15 instead of 1 to 16. Poll tests whether input is available, returning TRUE, FALSE, or an error value. Read(length): returns up to midi events stored in the buffer and returns them as a list: [[[status,data1,data2,data3],timestamp], [[status,data1,data2,data3],timestamp],...] example: Read(50) returns all the events in the buffer, up to 50 events. !x`DDpp(SEpp0p8ppxpp(SEpp0p8ppPRBSAppRBRASASBRBRBRASASASAp Qp(RASASAp RASASASAQ>@_PyExc_BaseExceptionQq@_PyExc_Exception@_PyExc_IndexError@_PyExc_NameError@_PyExc_RuntimeError@_PyExc_TypeError@_PyList_Type@_PyString_Type@_PyTraceBack_Type@_PyType_Type@__Py_NoneStruct@_Pt_Timeq@__DefaultRuneLocaleP@dyld_stub_binderqx@_Pm_Abortq@_Pm_Closeq@_Pm_CountDevicesq@_Pm_GetDefaultInputDeviceIDq@_Pm_GetDefaultOutputDeviceIDq@_Pm_GetDeviceInfoq@_Pm_GetErrorTextq@_Pm_Initializeq@_Pm_OpenInputq@_Pm_OpenOutputq@_Pm_Pollq@_Pm_Readq@_Pm_SetChannelMaskq@_Pm_SetFilterq@_Pm_Terminateq@_Pm_Writeq@_Pm_WriteSysExq@_Pt_Startq@_Pt_Timeq>@_PyCode_Newq>@_PyDict_Newq>@_PyErr_Fetchq>@_PyErr_Occurredq>@_PyErr_Restoreq>@_PyErr_SetObjectq>@_PyErr_SetStringq>@_PyErr_WriteUnraisableq>@_PyFile_SoftSpaceq>@_PyFile_WriteObjectq>@_PyFile_WriteStringq>@_PyFrame_Newq>@_PyImport_AddModuleq>@_PyInt_AsLongq>@_PyInt_AsSsize_tq>@_PyInt_FromLongq>@_PyInt_FromSsize_tq>@_PyIter_Nextq>@_PyList_Newq>@_PyModule_GetDictq>@_PyNumber_Addq>@_PyNumber_Andq>@_PyNumber_Lshiftq>@_PyNumber_Orq>@_PyNumber_Subtractq>@_PyObject_CallObjectq>@_PyObject_Cmpq>@_PyObject_GetAttrq>@_PyObject_GetAttrStringq>@_PyObject_GetItemq>@_PyObject_GetIterq>@_PyObject_SetAttrq>@_PyObject_SetAttrStringq>@_PyObject_Sizeq>@_PyString_AsStringq>@_PyString_FromStringq>@_PyString_FromStringAndSizeq>@_PyString_InternInPlaceq>@_PyString_Sizeq>@_PySys_GetObjectq>@_PyThreadState_Getq>@_PyTraceBack_Hereq>@_PyTuple_Newq>@_PyType_IsSubtypeq>@_PyType_Readyq>@_Py_InitModule4_64q>@__PyArg_ParseTupleAndKeywords_SizeTq>@__PyObject_CallFunction_SizeTq@___maskrune_initpypm$__pyx_type_4pypm_*Output;InputAd2d9fQO.$$N.$$N.$$N.B $B $@N@. $ $&N&. $ $N.P$P$N.  $ $N.;$$RNR.Y`$Y$N.6$6$jNj.$$N.h$$h$$=N=.$$$$CNC.$$$$N.%$%$N.+#$+$PNP.A@$A$N.B_$B$=N=.C}$C$N.G$G$N.iJ$iJ$N.K$K$N.N$N$hNh.O $O$hNh.zO4$zO$hNh.O[$O$<N<.Pt$P$JNJ.hP$hP$N  & u& u& u& v& v2& @vG& Pv\& `vq& v& w& }& }& }& 0}& @}& }& `~5& ~P& (o& & @& & Z& \& b& n& ~& & & & & *& ǂ5& т@& K& V& a& l& w& %& 8& I& T& ^& h& w& |& & & & & & & & !& +& $5& ;?& RJ& hU& `& k& ӄv& ؄& & & & && @C& `& u& ȑ& Б& ؑ& & & & & && /& 8& F& V& (_& 0j& 8y& @& H& P& X& `& h& p& x&& 9& Q& d& & & & & & & Ȓ & В & ؒ3& K& Y& n& ~& & & & & & (& 0& 8& @& H& P& X& `& h+& p7& xA& K& f& & 0& `& & & 0 & `d0JWB f z P Y6%Gh$X$l$}%+ABCG8iJOKlNOzOOP xf u- uB uW vl v @v Pv `v v w } }  }  0}1 @}M }h `~ ~ (  @  Z \! b, n7 ~B M X c n y ǂ т      % 8 I T ^ h w | ) 3 = H R \ f p z $ ; R h   ӄ ؄  , N u @   ȑ Б ؑ  ! 6 K ` u ~    ( 0 8 @ H P  X+  `A  hR  pc  xu          .  H  Ȓ\  Вo  ؒ               (  0)  84  @?  HJ  PV  Xb  `n  hz  p  x     0  `  #  ?  0Z  `t  @t  r hP       0 ? M \ e n             /F[l~.>Q^jw #5GYq 0BOao|@@ __mh_bundle_header___pyx_tp_new_4pypm_Output___pyx_tp_new_4pypm_Input___Pyx_Raise___Pyx_GetName___Pyx_AddTraceback___pyx_f_4pypm_5Input_Read___pyx_f_4pypm_GetErrorText___pyx_f_4pypm_5Input_Poll___pyx_f_4pypm_5Input_SetChannelMask___pyx_f_4pypm_5Input_SetFilter___pyx_f_4pypm_Time___pyx_f_4pypm_6Output_WriteSysEx___Pyx_GetStdout___Pyx_PrintNewline___Pyx_PrintItem___pyx_f_4pypm_6Output_WriteShort___pyx_f_4pypm_6Output_Write___pyx_f_4pypm_5Input___init_____pyx_tp_dealloc_4pypm_Input___pyx_tp_dealloc_4pypm_Output___pyx_f_4pypm_6Output___init_____pyx_f_4pypm_Channel___pyx_f_4pypm_GetDeviceInfo___pyx_f_4pypm_CountDevices___pyx_f_4pypm_GetDefaultOutputDeviceID___pyx_f_4pypm_GetDefaultInputDeviceID___pyx_f_4pypm_Terminate___pyx_f_4pypm_Initialize stub helpers___pyx_argnames.9656___pyx_argnames.9555___pyx_argnames.9501___pyx_argnames.9329___pyx_argnames.9231___pyx_argnames.9046___pyx_argnames.9414___pyx_argnames.8908___pyx_methods___pyx_string_tab___pyx_argnames.8860___pyx_argnames.8822___pyx_argnames.8723___pyx_filenames___pyx_methods_4pypm_Output___pyx_methods_4pypm_Input___pyx_doc_4pypm_Initialize___pyx_doc_4pypm_Terminate___pyx_doc_4pypm_GetDeviceInfo___pyx_doc_4pypm_Time___pyx_doc_4pypm_GetErrorText___pyx_doc_4pypm_Channel___pyx_k10___pyx_k40___pyx_k19___pyx_k32___pyx_k30___pyx_k21___pyx_k34___pyx_k23___pyx_k25___pyx_k36___pyx_k29___pyx_k35___pyx_k22___pyx_k31___pyx_k33___pyx_k28___pyx_k27___pyx_k37___pyx_k38___pyx_k20___pyx_k24___pyx_k39___pyx_k26___pyx_k41___pyx_k18___pyx_k16___pyx_k9___pyx_k4___pyx_k11___pyx_k1___pyx_k2___pyx_k3___pyx_k5___pyx_k6___pyx_k7___pyx_k8___pyx_k12___pyx_k13___pyx_k14___pyx_k15___pyx_k17___pyx_doc_4pypm_6Output_Write___pyx_doc_4pypm_6Output_WriteShort___pyx_doc_4pypm_6Output_WriteSysEx___pyx_doc_4pypm_5Input_SetFilter___pyx_doc_4pypm_5Input_SetChannelMask___pyx_doc_4pypm_5Input_Poll___pyx_doc_4pypm_5Input_Read___pyx_argnames.9602___pyx_ptype_4pypm_Output___pyx_ptype_4pypm_Input___pyx_argnames.8793___pyx_argnames.8686___pyx_argnames.8659___pyx_argnames.8632___pyx_argnames.8616___pyx_argnames.8600___pyx_m___pyx_b___pyx_lineno___pyx_filename___pyx_f___pyx_n_B___pyx_n_FALSE___pyx_n_FILT_ACTIVE___pyx_n_FILT_AFTERTOUCH___pyx_n_FILT_CHANNEL_AFTERTOUCH___pyx_n_FILT_CLOCK___pyx_n_FILT_CONTROL___pyx_n_FILT_F9___pyx_n_FILT_FD___pyx_n_FILT_MTC___pyx_n_FILT_NOTE___pyx_n_FILT_PITCHBEND___pyx_n_FILT_PLAY___pyx_n_FILT_POLY_AFTERTOUCH___pyx_n_FILT_PROGRAM___pyx_n_FILT_REALTIME___pyx_n_FILT_RESET___pyx_n_FILT_SONG_POSITION___pyx_n_FILT_SONG_SELECT___pyx_n_FILT_SYSEX___pyx_n_FILT_TICK___pyx_n_FILT_TUNE___pyx_n_FILT_UNDEFINED___pyx_n_TRUE___pyx_n___version_____pyx_n_append___pyx_n_array___pyx_n_range___pyx_n_tostring___pyx_k1p___pyx_k2p___pyx_k3p___pyx_k5p___pyx_k6p___pyx_k7p___pyx_k8p___pyx_k12p___pyx_k13p___pyx_k14p___pyx_k15p___pyx_k17p___pyx_d1___pyx_d2___pyx_tp_as_number_Output___pyx_tp_as_sequence_Output___pyx_tp_as_mapping_Output___pyx_tp_as_buffer_Output___pyx_tp_as_number_Input___pyx_tp_as_sequence_Input___pyx_tp_as_mapping_Input___pyx_tp_as_buffer_Input___pyx_type_4pypm_Input___pyx_type_4pypm_Output_initpypm_Pm_Abort_Pm_Close_Pm_CountDevices_Pm_GetDefaultInputDeviceID_Pm_GetDefaultOutputDeviceID_Pm_GetDeviceInfo_Pm_GetErrorText_Pm_Initialize_Pm_OpenInput_Pm_OpenOutput_Pm_Poll_Pm_Read_Pm_SetChannelMask_Pm_SetFilter_Pm_Terminate_Pm_Write_Pm_WriteSysEx_Pt_Start_Pt_Time_PyCode_New_PyDict_New_PyErr_Fetch_PyErr_Occurred_PyErr_Restore_PyErr_SetObject_PyErr_SetString_PyErr_WriteUnraisable_PyExc_BaseException_PyExc_Exception_PyExc_IndexError_PyExc_NameError_PyExc_RuntimeError_PyExc_TypeError_PyFile_SoftSpace_PyFile_WriteObject_PyFile_WriteString_PyFrame_New_PyImport_AddModule_PyInt_AsLong_PyInt_AsSsize_t_PyInt_FromLong_PyInt_FromSsize_t_PyIter_Next_PyList_New_PyList_Type_PyModule_GetDict_PyNumber_Add_PyNumber_And_PyNumber_Lshift_PyNumber_Or_PyNumber_Subtract_PyObject_CallObject_PyObject_Cmp_PyObject_GetAttr_PyObject_GetAttrString_PyObject_GetItem_PyObject_GetIter_PyObject_SetAttr_PyObject_SetAttrString_PyObject_Size_PyString_AsString_PyString_FromString_PyString_FromStringAndSize_PyString_InternInPlace_PyString_Size_PyString_Type_PySys_GetObject_PyThreadState_Get_PyTraceBack_Here_PyTraceBack_Type_PyTuple_New_PyType_IsSubtype_PyType_Ready_PyType_Type_Py_InitModule4_64__DefaultRuneLocale__PyArg_ParseTupleAndKeywords_SizeT__PyObject_CallFunction_SizeT__Py_NoneStruct___maskrunedyld_stub_binder/Users/kpy/sw/pyPortMidi-0.0.3/pypm.c/Users/kpy/sw/pyPortMidi-0.0.3/build/temp.macosx-10.6-universal-2.6/pypm.o___pyx_tp_new_4pypm_Output___pyx_tp_new_4pypm_Input___Pyx_Raise___Pyx_GetName___Pyx_AddTraceback___pyx_f_4pypm_5Input_Read___pyx_f_4pypm_GetErrorText___pyx_f_4pypm_5Input_Poll___pyx_f_4pypm_5Input_SetChannelMask___pyx_f_4pypm_5Input_SetFilter___pyx_f_4pypm_Time___pyx_f_4pypm_6Output_WriteSysEx___Pyx_GetStdout___Pyx_PrintNewline___Pyx_PrintItem/usr/include/ctype.h___pyx_f_4pypm_6Output_WriteShort___pyx_f_4pypm_6Output_Write___pyx_f_4pypm_5Input___init_____pyx_tp_dealloc_4pypm_Input___pyx_tp_dealloc_4pypm_Output___pyx_f_4pypm_6Output___init_____pyx_f_4pypm_Channel___pyx_f_4pypm_GetDeviceInfo___pyx_f_4pypm_CountDevices___pyx_f_4pypm_GetDefaultOutputDeviceID___pyx_f_4pypm_GetDefaultInputDeviceID___pyx_f_4pypm_Terminate___pyx_f_4pypm_Initialize_initpypm___pyx_type_4pypm_Output___pyx_type_4pypm_Input___pyx_argnames.9656___pyx_argnames.9555___pyx_argnames.9501___pyx_argnames.9329___pyx_argnames.9231___pyx_argnames.9046___pyx_argnames.9414___pyx_argnames.8908___pyx_methods___pyx_string_tab___pyx_argnames.8860___pyx_argnames.8822___pyx_argnames.8723___pyx_filenames___pyx_methods_4pypm_Output___pyx_methods_4pypm_Input___pyx_doc_4pypm_Initialize___pyx_doc_4pypm_Terminate___pyx_doc_4pypm_GetDeviceInfo___pyx_doc_4pypm_Time___pyx_doc_4pypm_GetErrorText___pyx_doc_4pypm_Channel___pyx_k10___pyx_k40___pyx_k19___pyx_k32___pyx_k30___pyx_k21___pyx_k34___pyx_k23___pyx_k25___pyx_k36___pyx_k29___pyx_k35___pyx_k22___pyx_k31___pyx_k33___pyx_k28___pyx_k27___pyx_k37___pyx_k38___pyx_k20___pyx_k24___pyx_k39___pyx_k26___pyx_k41___pyx_k18___pyx_k16___pyx_k9___pyx_k4___pyx_k11___pyx_k1___pyx_k2___pyx_k3___pyx_k5___pyx_k6___pyx_k7___pyx_k8___pyx_k12___pyx_k13___pyx_k14___pyx_k15___pyx_k17___pyx_doc_4pypm_6Output_Write___pyx_doc_4pypm_6Output_WriteShort___pyx_doc_4pypm_6Output_WriteSysEx___pyx_doc_4pypm_5Input_SetFilter___pyx_doc_4pypm_5Input_SetChannelMask___pyx_doc_4pypm_5Input_Poll___pyx_doc_4pypm_5Input_Read___pyx_argnames.9602___pyx_ptype_4pypm_Output___pyx_ptype_4pypm_Input___pyx_argnames.8793___pyx_argnames.8686___pyx_argnames.8659___pyx_argnames.8632___pyx_argnames.8616___pyx_argnames.8600___pyx_m___pyx_b___pyx_lineno___pyx_filename___pyx_f___pyx_n_B___pyx_n_FALSE___pyx_n_FILT_ACTIVE___pyx_n_FILT_AFTERTOUCH___pyx_n_FILT_CHANNEL_AFTERTOUCH___pyx_n_FILT_CLOCK___pyx_n_FILT_CONTROL___pyx_n_FILT_F9___pyx_n_FILT_FD___pyx_n_FILT_MTC___pyx_n_FILT_NOTE___pyx_n_FILT_PITCHBEND___pyx_n_FILT_PLAY___pyx_n_FILT_POLY_AFTERTOUCH___pyx_n_FILT_PROGRAM___pyx_n_FILT_REALTIME___pyx_n_FILT_RESET___pyx_n_FILT_SONG_POSITION___pyx_n_FILT_SONG_SELECT___pyx_n_FILT_SYSEX___pyx_n_FILT_TICK___pyx_n_FILT_TUNE___pyx_n_FILT_UNDEFINED___pyx_n_TRUE___pyx_n___version_____pyx_n_append___pyx_n_array___pyx_n_range___pyx_n_tostring___pyx_k1p___pyx_k2p___pyx_k3p___pyx_k5p___pyx_k6p___pyx_k7p___pyx_k8p___pyx_k12p___pyx_k13p___pyx_k14p___pyx_k15p___pyx_k17p___pyx_d1___pyx_d2___pyx_tp_as_number_Output___pyx_tp_as_sequence_Output___pyx_tp_as_mapping_Output___pyx_tp_as_buffer_Output___pyx_tp_as_number_Input___pyx_tp_as_sequence_Input___pyx_tp_as_mapping_Input___pyx_tp_as_buffer_Input