PKcc1META-INF/MANIFEST.MFMLK-. K-*ϳR03PKPK ]19com/groovemanager/spi/asio/ASIOAudioFormat$Encoding.class.3com/groovemanager/spi/asio/ASIOAudioFormat$Encoding(javax/sound/sampled/AudioFormat$Encoding(Ljava/lang/String;)VCode  LineNumberTableLocalVariableTablethis5Lcom/groovemanager/spi/asio/ASIOAudioFormat$Encoding;typeLjava/lang/String; SourceFileASIOAudioFormat.java InnerClasses*com/groovemanager/spi/asio/ASIOAudioFormatEncoding >*+     PK ]1n]0com/groovemanager/spi/asio/ASIOAudioFormat.class.l*com/groovemanager/spi/asio/ASIOAudioFormatjavax/sound/sampled/AudioFormat(FII)VCode getEncoding-(I)Ljavax/sound/sampled/AudioFormat$Encoding;   getSampleSizeInBits(I)I  getFrameSize(II)I   getEndianess(I)Z  3(Ljavax/sound/sampled/AudioFormat$Encoding;FIIIFZ)V  LineNumberTableLocalVariableTablethis,Lcom/groovemanager/spi/asio/ASIOAudioFormat; sampleRateFtypeIchannels)com/groovemanager/spi/asio/ASIOSampleType$ASIOSTFloat32LSB &" %'ASIOSTFloat32MSB )" %*ASIOSTFloat64LSB ," %-ASIOSTFloat64MSB /" %03com/groovemanager/spi/asio/ASIOAudioFormat$Encoding2 PCM_FLOAT4(Ljava/lang/String;)V 6 37 PCM_SIGNED*Ljavax/sound/sampled/AudioFormat$Encoding; 9: 3;ASIOSTInt16LSB =" %>ASIOSTInt16MSB @" %AASIOSTInt32LSB16 C" %DASIOSTInt32MSB16 F" %GASIOSTInt32LSB18 I" %JASIOSTInt32MSB18 L" %MASIOSTInt32LSB20 O" %PASIOSTInt32MSB20 R" %SASIOSTInt24LSB U" %VASIOSTInt24MSB X" %YASIOSTInt32LSB24 [" %\ASIOSTInt32MSB24 ^" %_ASIOSTInt32LSB a" %bASIOSTInt32MSB d" %esize SourceFileASIOAudioFormat.java InnerClassesEncoding0m* ##* !"#"  h*(+. 1 3Y58<%&'(*&+ *!" ?BE HK NQ TWZ] `(+c f . 1@f5678:<&=-?0A7B>DAFHGOHVI]K`MgNnOuP|RTUWY !" OE4K-Q&]HNT `h=hl2 defgh#i*j1k8m<oApHq O!"O#"Ag" C(;.4?-W&cEKQ ]. |}~#*18?A C!"hij 3kPK ]1/com/groovemanager/spi/asio/ASIOSampleRate.class./)com/groovemanager/spi/asio/ASIOSampleRate&com/groovemanager/spi/asio/NativeClass()VCode  LineNumberTableLocalVariableTablethis+Lcom/groovemanager/spi/asio/ASIOSampleRate;(J)V  pointerJ(D)VsetValue  valueD createClass()JcleanUp doubleValue()DconvertToDouble(Ljava/nio/ByteBuffer;)Djava/nio/ByteBuffer  getDouble " !#bufferLjava/nio/ByteBuffer; convertBack(Ljava/nio/ByteBuffer;D)V putDouble(D)Ljava/nio/ByteBuffer; )* !+ SourceFileASIOSampleRate.java0 3*    >*   F * *' !" #   /*$ 8 %& '(?*',W @A %&-.PK ]1 /com/groovemanager/spi/asio/ASIOSampleType.class.m)com/groovemanager/spi/asio/ASIOSampleTypejava/lang/ObjectASIOSTInt16MSBIASIOSTInt16LSBASIOSTInt24MSBASIOSTInt24LSBASIOSTInt32MSBASIOSTInt32LSBASIOSTInt32MSB16ASIOSTInt32LSB16ASIOSTInt32MSB18ASIOSTInt32LSB18ASIOSTInt32MSB20ASIOSTInt32LSB20ASIOSTInt32MSB24ASIOSTInt32LSB24ASIOSTFloat32MSBASIOSTFloat32LSBASIOSTFloat64MSBASIOSTFloat64LSB()VCode()I        "  $  &  (  *  ,  .  0  2  4  6  8  :  <  >  @  B  D  F  H  J  L  N  P  R  T  V  X  Z  \  ^  `  bLineNumberTableLocalVariableTable f gthis+Lcom/groovemanager/spi/asio/ASIOSampleType; SourceFileASIOSampleType.java0     m!#%')+-/13579;=?ACEGIKMOQSUWY[]_acdN $*06<BHNTZ`fl e                  f3*hd 45e ijklPK ]1SRR/com/groovemanager/spi/asio/ASIODriverInfo.class.U)com/groovemanager/spi/asio/ASIODriverInfo&com/groovemanager/spi/asio/NativeClass()VCode  setAsioVersion(I)V   setSysRef(J)V  LineNumberTableLocalVariableTablethis+Lcom/groovemanager/spi/asio/ASIODriverInfo;  pointerJ asioVersion()I driverVersionname()Ljava/lang/String; errorMessagesysRef()J createClasscleanUptoStringjava/lang/StringBuffer%ASIODriverInfo{ Pointer: '(Ljava/lang/String;)V ) &* getPointer ,! -append(J)Ljava/lang/StringBuffer; /0 &1 3,(Ljava/lang/String;)Ljava/lang/StringBuffer; /5 &6 asioVersion: 8  :(I)Ljava/lang/StringBuffer; /< &= driverVersion: ?  A name: C  E errorMessage: G  I sysRef: K ! M}O $ &Q SourceFileASIODriverInfo.java0 E* * *   >*   !"!#$s&Y(+*.24797*;>47@7*B>47D7*F747H7*J747L7*N247P7R& N OP&Q7RHSYTjUoN sSTPK ]1J%J5com/groovemanager/spi/asio/DoubleHalfRingBuffer.class./com/groovemanager/spi/asio/DoubleHalfRingBufferjava/lang/Object writeAheadZopen granularityI readBuffer-Lcom/groovemanager/spi/asio/DoubleHalfBuffer; writeBuffer1(Lcom/groovemanager/spi/asio/DoubleHalfBuffer;I)VCode()V      +com/groovemanager/spi/asio/DoubleHalfBuffer remaining()I  "java/lang/IllegalArgumentException+Granularity doens´t match buffer capacity.(Ljava/lang/String;)V ! "slice/()Lcom/groovemanager/spi/asio/DoubleHalfBuffer; $% & ( *LineNumberTableLocalVariableTablethis1Lcom/groovemanager/spi/asio/DoubleHalfRingBuffer;buffer readAvailableisOpen()Z 23 4position 6 7readPoswritePoswriteAvailableread([BII)I([BIIZ)I <> ?b[Bofflenjava/lang/StringBufferE Can´t read G F"append(I)Ljava/lang/StringBuffer; JK FL bytes beginning at offset N,(Ljava/lang/String;)Ljava/lang/StringBuffer; JP FQ into Array of length StoString()Ljava/lang/String; UV FW 1 Yjava/lang/Math[min(II)I ]^ \_size a bget3([BII)Lcom/groovemanager/spi/asio/DoubleHalfBuffer; de frewind h% ilimit k l0(I)Lcom/groovemanager/spi/asio/DoubleHalfBuffer; 6n onotify q r overwrite availablewrite v> w Can´t write y from Array of length {wait(J)V   ; put e java/lang/InterruptedExceptionwrittentoWrite  closecapacity  flush setPositions(IIZ)V SourceFileDoubleHalfRingBuffer.java     2***+p Y #*+')*+'+,( )*!+),1-- 2./20 2 !1:*5*)8<*+8=d * *)`,3 456"788- :./)9 !: !;1*)8<*+8=d * *+`,?@AB/C- 1./)9 !: <=Q *+@,P-* ./ AB C  D <>s*5*pd>`+.YFYHIMORMTR+MX#*Y:*)86*Z`> *c`>*)6D*)+gW*)jW*)+`dgW*)8*)m2*)jW'*)+gW*)8*)m *)jW*c`*)8*+8O*+8`*+85*+8`*cd*+8*+87*0*+*)8pW**)8*+8**sçÿJtv,ra bcEdJeSfdgmhvjklmnorsuvwx"yAzT|c}kd-H./ABC D tS<9 u v=Q *+x,-* ./ AB C  D v>k %*pd>`+.YFYzIMORM|R+MX#6*Y:§P*}:**+86*c`6d*`6*+6  Y*++` W `6*+jW*++` dW d`6*+8*+m=*+jW2*++`W`6*+8*+m *+jWsi*cQ*)8`*)86*)8`*cd*)8*)8**)*+8pW* *5v*5o*`>*+6>*++`W`6*+jW*++`dWd`6*++`W`6*çÿJTTD,+ <?DGbk}$)2Mm "-p %./%AB%C %D %t? z  k): u Zu 4*, - ./23/*,- ./4*, - ./a2*),- ./!L*+jW*)jW*,- ./!hL*)jW*+jW*,    - ./!z"*+pW*)pW *>, !-*"./"9 ": "PK ]1޴-com/groovemanager/spi/asio/AsioTimeInfo.class.X'com/groovemanager/spi/asio/AsioTimeInfo&com/groovemanager/spi/asio/NativeClassFLAG_kSystemTimeValidJFLAG_kSamplePositionValidFLAG_kSampleRateValidFLAG_kSpeedValidFLAG_kSampleRateChangedFLAG_kClockSourceChanged()VCodekSystemTimeValid()J    kSamplePositionValid    kSampleRateValid     kSpeedValid    "kSampleRateChanged $ %  'kClockSourceChanged ) *  ,LineNumberTableLocalVariableTable 0 1this)Lcom/groovemanager/spi/asio/AsioTimeInfo;(J)V 05 6pointer createClasscleanUp jsystemTimejsamplePosition jsampleRateflagsspeed()D systemTime,()Lcom/groovemanager/spi/asio/ASIOTimeStamp;(com/groovemanager/spi/asio/ASIOTimeStampC ; E D6samplePosition*()Lcom/groovemanager/spi/asio/ASIOSamples;&com/groovemanager/spi/asio/ASIOSamplesJ < L K6 sampleRate-()Lcom/groovemanager/spi/asio/ASIOSampleRate;)com/groovemanager/spi/asio/ASIOSampleRateQ = S R6 SourceFileAsioTimeInfo.java0    ]%!#&(+-.IK MOQS$ /0 3*2. / 3405>*7. /3489: ;<=>?@AB6 DY*FG.3/  34HI6 KY*MN.;/  34OP6 RY*TU.C/  34     $ )VWPK ]1mKbTT1com/groovemanager/spi/asio/DoubleHalfBuffer.class.+com/groovemanager/spi/asio/DoubleHalfBufferjava/lang/Object firstBufferLjava/nio/ByteBuffer; secondBufferreadOnlyZlimitIpositioncapacity firstLimit.(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Z)VCode()V        java/nio/ByteBuffer()I     " $ &LineNumberTableLocalVariableTablethis-Lcom/groovemanager/spi/asio/DoubleHalfBuffer;firstsecond-(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)V isReadOnly()Z /0 1  3asReadOnlyBuffer/()Lcom/groovemanager/spi/asio/DoubleHalfBuffer; duplicateget(I)B!java/nio/BufferUnderflowException: ; 89 =()B =bB1([B)Lcom/groovemanager/spi/asio/DoubleHalfBuffer;3([BII)Lcom/groovemanager/spi/asio/DoubleHalfBuffer; 8D Edst[B remaining I J#java/lang/IndexOutOfBoundsExceptionL M(I)Ljava/nio/Buffer; O P([BII)Ljava/nio/ByteBuffer; 8R Srewind()Ljava/nio/Buffer; UV Woffsetlengthput1(IB)Lcom/groovemanager/spi/asio/DoubleHalfBuffer; java/nio/ReadOnlyBufferException] ^ java/nio/BufferOverflowException` a(IB)Ljava/nio/ByteBuffer; [c dvalue0(B)Lcom/groovemanager/spi/asio/DoubleHalfBuffer; [\ h [D jsrc [R mslice O pwrap([B)Ljava/nio/ByteBuffer; rs t()Ljava/nio/ByteBuffer; ov wresultclearflip hasRemaining0(I)Lcom/groovemanager/spi/asio/DoubleHalfBuffer;posjava/lang/Mathmax(II)I toString()Ljava/lang/String;java/lang/StringBuffer java/lang/StringvalueOf&(Ljava/lang/Object;)Ljava/lang/String; (Ljava/lang/String;)V   cap: append,(Ljava/lang/String;)Ljava/lang/StringBuffer; (I)Ljava/lang/StringBuffer; , pos: , lim:   SourceFileDoubleHalfBuffer.java      9**+*,***!***!*`Z#%*'("89 :;<=3>8?)*9*+9,9-9 .\*+,+2,24( GH) *+,-56;Y**4(O) *+76>Y***4(W) *+89k/*% ;Y<*! *>**!d>(`a!b)/*+/ 8?Q**'@<*Y'`'(k lm)*+ AB8C= *++F(x) *+ GH8Dw*K ;Y< `+ MYN*'*!***'*!dQW*+TW*XW*'`*!%**'QW*+TW*XWY**'QW*+*!*'dTW*XW*XW*+*!`*'d*!d*'`TW*XW*Y'`'*(J(3DOZgs~)**+GHY Z [\E* ^Y_*% aYb*!*eW**!deW*(4C) E*+E EfB[gR**'iW*Y'`'*( )*+fB[C= *++k() *+ lH[D* ^Y_*K aYb `+ MYN*'*!***'*!dQW*+nW*XW*'`*!%**'QW*+nW*XWY**'QW*+*!*'dnW*XW*XW*+*!`*'d*!d*'`nW*XW*Y'`'*(N7BS^iv)**+lHY Z o6 *'*!Y**'*!dQW**%*!dqWYu*x*4L**#*!dqW*XW+*%*!J**'QW**%qWY*xu*4L**!qW*XW+**'QW*XW**%*!dqWY*x*x*4L**#*!dqW*XW+(V -FW_alx )* *+Fy+y+y+ /*#() *+z6A*'**#%*( ) *+{6A**'%*'*(!" #) *+|09*'*%(,) *+/0/*(3) *+ /*%(:) *+ }?*%*( BC)*+  /*'(J) *+ }?*'*( RS)*+~ I8*%*'d([) *+U65*'*( bc) *+`6Y**#*'*%(f) 6*+PK ]135*com/groovemanager/spi/asio/ASIOError.class.|$com/groovemanager/spi/asio/ASIOErrorjava/lang/ExceptionASE_OKI ASE_SUCCESSASE_NotPresentASE_HWMalfunctionASE_InvalidParameterASE_InvalidModeASE_SPNotAdvancing ASE_NoClock ASE_NoMemorycode()VCode,com/groovemanager/spi/asio/ASIOMixerProvider getLibName()Ljava/lang/String;  java/lang/System loadLibrary(Ljava/lang/String;)V  ()I    "  $  &  (  *  ,  .  0  2  4  6  8  :  <  >  @  BLineNumberTableLocalVariableTablegetCode  Gthis&Lcom/groovemanager/spi/asio/ASIOError;(I)Vjava/lang/StringBufferM ASIO Error: O K NQ getMessage(I)Ljava/lang/String; ST Uappend,(Ljava/lang/String;)Ljava/lang/StringBuffer; WX NYtoString [ N\ QEverything OK._Success.a5Hardware Input or Output is not present or available.cHardware is malfunctioningeInput parameter invalid.g0Hardware is in a bad mode or used in a bad mode.i9Hardware is not running when sample position is inquired.kEIJ         STk#`'b+d/f3h7j;l?nCpNYrRu]D* P QRS(T2U<VFWPXZYE kvLwF#' YyD bcE z{PK ]1b,com/groovemanager/spi/asio/NativeClass.class./&com/groovemanager/spi/asio/NativeClassjava/lang/ObjectpointerJ selfCreatedZ()VCode,com/groovemanager/spi/asio/ASIOMixerProvider  getLibName()Ljava/lang/String;  java/lang/System loadLibrary(Ljava/lang/String;)V  LineNumberTableLocalVariableTable     createClass()J  !  #this(Lcom/groovemanager/spi/asio/NativeClass;(J)VcleanUp getPointerfinalize ( + SourceFileNativeClass.java   +    Q****"$*  ! %&' O***$( )*%& ( )  /*$; %&*  : **, B C  %&-.PK ]1J''-com/groovemanager/spi/asio/ASIODataLine.class.'com/groovemanager/spi/asio/ASIODataLinejava/lang/Object"javax/sound/sampled/SourceDataLine"javax/sound/sampled/TargetDataLine ringBuffers2[Lcom/groovemanager/spi/asio/DoubleHalfRingBuffer; asioBuffers[[Ljava/nio/ByteBuffer; listenersLjava/util/ArrayList;mixer&Lcom/groovemanager/spi/asio/ASIOMixer;info)Lcom/groovemanager/spi/asio/ASIOLineInfo;desiredBufferSizeIopenZformat!Ljavax/sound/sampled/AudioFormat;channelsopenSeqJ frameSize sampleSizestartedflushedcontrols[Ljavax/sound/sampled/Control; emptyArray[B()VCode,com/groovemanager/spi/asio/ASIOMixerProvider' getLibName()Ljava/lang/String; )* (+java/lang/System- loadLibrary(Ljava/lang/String;)V /0 .1LineNumberTableLocalVariableTablegetMixer(()Lcom/groovemanager/spi/asio/ASIOMixer;  7this)Lcom/groovemanager/spi/asio/ASIODataLine;R(Lcom/groovemanager/spi/asio/ASIOMixer;Lcom/groovemanager/spi/asio/ASIOLineInfo;)V ;% =java/util/ArrayList? @=  B  D  F  H  J  L  NdrainisInput()Z QR SisOpen UR Vjava/lang/ThreadXsleep(JI)V Z[ Y\ available()I ^_ ` getBufferSize b_ cjava/lang/InterruptedExceptioneflush h/com/groovemanager/spi/asio/DoubleHalfRingBufferjsize l_ km "# orewind q% krwrite([BII)I tu kvlengthistartisActive {R |$com/groovemanager/spi/asio/ASIOMixer~ startLine,(Lcom/groovemanager/spi/asio/ASIODataLine;)V stopstopLine  isRunning   getStatus _  getFormat#()Ljavax/sound/sampled/AudioFormat;   readAvailable _ kwriteAvailable _ kgetFramePositiongetSamplePosition()J getMicrosecondPosition getLevel()F getLineInfo!()Ljavax/sound/sampled/Line$Info; Exceptions,javax/sound/sampled/LineUnavailableException getSampleRate()D javax/sound/sampled/AudioFormat *com/groovemanager/spi/asio/ASIOAudioFormat'com/groovemanager/spi/asio/ASIOLineInfogetChannelInfo.()Lcom/groovemanager/spi/asio/ASIOChannelInfo; *com/groovemanager/spi/asio/ASIOChannelInfotype _ (FII)V ;  getFrameSize _ openLine-(Lcom/groovemanager/spi/asio/ASIODataLine;I)V  rateFclose closeLine-(Lcom/groovemanager/spi/asio/ASIODataLine;J)V  getControls ()[Ljavax/sound/sampled/Control; ! ASIOInit .com/groovemanager/spi/asio/ASIOStaticFunctionsASIOGetClockSources0(I)[Lcom/groovemanager/spi/asio/ASIOClockSource; ASIOExit(J)V javax/sound/sampled/Control1com/groovemanager/spi/asio/ASIOClockSourceControlY(Lcom/groovemanager/spi/asio/ASIODataLine;[Lcom/groovemanager/spi/asio/ASIOClockSource;)V ; $com/groovemanager/spi/asio/ASIOErrorprintStackTrace % ; seqsources-[Lcom/groovemanager/spi/asio/ASIOClockSource;e&Lcom/groovemanager/spi/asio/ASIOError;isControlSupported%(Ljavax/sound/sampled/Control$Type;)Z6com/groovemanager/spi/asio/ASIOClockSourceControl$Type CLOCK_SOURCE8Lcom/groovemanager/spi/asio/ASIOClockSourceControl$Type; control"Ljavax/sound/sampled/Control$Type; getControlA(Ljavax/sound/sampled/Control$Type;)Ljavax/sound/sampled/Control; caddLineListener%(Ljavax/sound/sampled/LineListener;)Vadd(Ljava/lang/Object;)Z  @listener"Ljavax/sound/sampled/LineListener;removeLineListenerremove   @ %(Ljavax/sound/sampled/AudioFormat;I)VisFormatSupported$(Ljavax/sound/sampled/AudioFormat;)Z  Audio Format not supported. ;0  getChannels _  %  buffersize$(Ljavax/sound/sampled/AudioFormat;)Vreadjava/lang/Math min(II)I "# !$  & u k(  *bofflenframesj"java/lang/IllegalArgumentException1java/lang/StringBuffer3java/lang/String5valueOf(I)Ljava/lang/String; 78 69 48 does not represent an integral number of sample frames.<append,(Ljava/lang/String;)Ljava/lang/StringBuffer; >? 4@toString B* 4C 2 R FwrittentoWrite getChannelchannel K_ L Sopened(J[[Ljava/nio/ByteBuffer;)V Q java/nio/ByteBufferTcapacity V_ UWallocateDirect(I)Ljava/nio/ByteBuffer; YZ U[+com/groovemanager/spi/asio/DoubleHalfBuffer]-(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)V ;_ ^`1(Lcom/groovemanager/spi/asio/DoubleHalfBuffer;I)V ;b kc kjavax/sound/sampled/LineEventf"javax/sound/sampled/LineEvent$TypehOPEN$Ljavax/sound/sampled/LineEvent$Type; jk il _ nB(Ljavax/sound/sampled/Line;Ljavax/sound/sampled/LineEvent$Type;J)V ;p gqnotifyListeners"(Ljavax/sound/sampled/LineEvent;)V st ubuffersinternalBuffersbsizeSTART zk i{iterator()Ljava/util/Iterator; }~ @java/util/Iteratornext()Ljava/lang/Object;   javax/sound/sampled/LineListenerupdate t hasNext R Ljavax/sound/sampled/LineEvent;iterLjava/util/Iterator;stoppedSTOP k iclosed % CLOSE k ifinalize SourceFileASIODataLine.java!   !"#$$%&+,23 c456&/*83l4 9:;<&3*>*@YAC*E*G* I*K*M*+8*,O3* o+7CHT#X(p-q2r4 39:33P%&m'*T *W ]L*a*df3uvxyv&{4 '9:g%&p*W*i2n<*p *p *p*8YM>(*i2s*i2*pwW*i2s*G*M,ç,ÿ0ll32 ~)05>NWbgo4 p9:^x20yz%&C*}*8*34 9:%&C*}*8*34 9:R&<*} *M34 9:{R&G**8 *K34 9:&/*34 9:b_&9*i2n*Gh34 9:^_&`.*W*T*i2*Gh*i2*Gh3 4 .9:_&3 *834  9:&2*834 9:&-34 9:&/*O34 9:%&d***8D *D*Y#*O*G*E*8**E*lƧ *8*ȱ3#=[c4 d9:#A%&G**8**Iϱ34 9:UR&/*34 9:&b**Ӱ @*8@N*8-,*YY*-S*ӰN-*8YY*SEE32 $)=EFJR4*b9:T)F &? +34 9: &\+ *M,23  4 9: !&B *C+W3  4 9:    &B *C+W3  4 9:   &5**O+Y*+*+G*E*3#+044 59:55&x0**O+Y*+*+G*3 !"##+$/%409:0u&/*M*8Y:*a%>*'pd>*G*i2+)WM*'l6686&*i2+*'h`*+h`*+)W*Gׄçÿ 3:)* ,-0'276?7E8K:k8w7*?4H9:,#-.?B/B?yH/0tu& *'p2Y4Y:;=ADE*M6 ]:*a *G*G*8Y:*a%6*G*i2+wW`6K*'l6656 #*i 2+`*+wW*+`6  *Gڄd>çÿQ3;;f]3bC%D*E-G0I3J=IKNUP]QgSoU}VZ[\^_\[cPGf4\ 9:,#-.-HgwI?/<y,0 J_&5 *OM3o4  9:QR&5 *ON3y4  9:OP&Z *I**µ'**'*Gl+*-R*GS:**Gki-22X66Z2\S2\S*ikY^Y2222a**ldS*i2e*G**gY*m*orv3B"-8BHT`4>9:w -x ByEcy%&U*K*M*gY*|*orv3 4 9:st&~&*CM,N-+,3 %4*&9:&  %&X"*K*K*gY**orv3 !4 "9:%&{5***E*G*i**gY**orv3"  44 59:%&= *K*3 4  9:PK 7b1ބS_,com/groovemanager/spi/asio/ASIOMixer$1.class.0&com/groovemanager/spi/asio/ASIOMixer$1java/lang/Threadthis$0&Lcom/groovemanager/spi/asio/ASIOMixer; Synthetic)(Lcom/groovemanager/spi/asio/ASIOMixer;)VCode()V    LineNumberTableLocalVariableTablethis(Lcom/groovemanager/spi/asio/ASIOMixer$1;run$com/groovemanager/spi/asio/ASIOMixerASIOInit()J  .com/groovemanager/spi/asio/ASIOStaticFunctionsASIOControlPanel  $com/groovemanager/spi/asio/ASIOError printStackTrace " !#ASIOExit(J)V %& 'seqJe&Lcom/groovemanager/spi/asio/ASIOError; SourceFileASIOMixer.java InnerClasses0  8 * *+     | @*@N-$*(!  )*+,-./ PK 7b1:W2]2]*com/groovemanager/spi/asio/ASIOMixer.class.H$com/groovemanager/spi/asio/ASIOMixerjava/lang/Objectjavax/sound/sampled/Mixer'com/groovemanager/spi/asio/ASIOListenerPOSSIBLE_RATES[D sourceInfo [Ljavax/sound/sampled/Line$Info; targetInfo mixerInfo()VCode@@@È@ň@p@@@ӈ@Ո@p@L@@@@刀@p@@pAp ],com/groovemanager/spi/asio/ASIOMixerProvider_ getLibName()Ljava/lang/String; ab `cjava/lang/Systeme loadLibrary(Ljava/lang/String;)V gh fiLineNumberTableLocalVariableTableinitVMfreeVM setDriverInfo.(Lcom/groovemanager/spi/asio/ASIODriverInfo;)V  qthis&Lcom/groovemanager/spi/asio/ASIOMixer;getName  v:com/groovemanager/spi/asio/ASIOMixerProvider$ASIOMixerInfox ub yzgetDriverVersion()I)com/groovemanager/spi/asio/ASIODriverInfo~ driverVersion }  getStatus   createLines !" java/util/HashMap ; getSourceLineInfo"()[Ljavax/sound/sampled/Line$Info; 'com/groovemanager/spi/asio/ASIOLineInfojava/lang/StringBuffer zjava/lang/StringvalueOf&(Ljava/lang/Object;)Ljava/lang/String; h getFirstChannel } append(I)Ljava/lang/StringBuffer; isInput()Z (Z)Ljava/lang/StringBuffer; toString b 'com/groovemanager/spi/asio/ASIODataLineR(Lcom/groovemanager/spi/asio/ASIOMixer;Lcom/groovemanager/spi/asio/ASIOLineInfo;)V put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; getTargetLineInfo infosiinfo)Lcom/groovemanager/spi/asio/ASIOLineInfo;showControlPanel&com/groovemanager/spi/asio/ASIOMixer$1)(Lcom/groovemanager/spi/asio/ASIOMixer;)V start ; ?(Lcom/groovemanager/spi/asio/ASIOMixerProvider$ASIOMixerInfo;)V java/util/ArrayList   #  ()  *)  +)  ,)  -)  .)  /)  1  getMixerInfo"()Ljavax/sound/sampled/Mixer$Info; setStatus(I)V m; javax/sound/sampled/LineEvent"javax/sound/sampled/LineEvent$TypeOPEN$Ljavax/sound/sampled/LineEvent$Type; B(Ljavax/sound/sampled/Line;Ljavax/sound/sampled/LineEvent$Type;J)V notifyListeners"(Ljavax/sound/sampled/LineEvent;)V  n;  $% CLOSE START  STOP   oldstatusASIOInit()J Exceptions$com/groovemanager/spi/asio/ASIOError )(Lcom/groovemanager/spi/asio/ASIOMixer;)J  `  ASIOPrepare0([Lcom/groovemanager/spi/asio/ASIOBufferInfo;I)JV(Lcom/groovemanager/spi/asio/ASIOMixer;[Lcom/groovemanager/spi/asio/ASIOBufferInfo;I)J  ` ASIOStart  `ASIOStop)(Lcom/groovemanager/spi/asio/ASIOMixer;)Z  ` ASIOUnPrepare  `ASIOExit(J)V*(Lcom/groovemanager/spi/asio/ASIOMixer;J)V  `!seq $  &javax/sound/sampled/Line$Info(.com/groovemanager/spi/asio/ASIOStaticFunctions*ASIOGetOutputChannels ,} +-ASIOGetMinBufferSize /} +0ASIOGetMaxBufferSize 2} +3ASIOGetChannelinfo0(IZ)Lcom/groovemanager/spi/asio/ASIOChannelInfo; 56 +7getAudioFormatsP(Lcom/groovemanager/spi/asio/ASIOChannelInfo;)[Ljavax/sound/sampled/AudioFormat; 9: ;getMinFrameSize%([Ljavax/sound/sampled/AudioFormat;)I => ?getMaxFrameSize A> By(Lcom/groovemanager/spi/asio/ASIOMixer;Lcom/groovemanager/spi/asio/ASIOChannelInfo;[Ljavax/sound/sampled/AudioFormat;II)V D E  GprintStackTrace I;  J maxOutputs minBufferSize maxBufferSize,Lcom/groovemanager/spi/asio/ASIOChannelInfo;formats"[Ljavax/sound/sampled/AudioFormat;e&Lcom/groovemanager/spi/asio/ASIOError;javax/sound/sampled/AudioFormatT getFrameSize V} UWjava/lang/MathYmin(II)I [\ Z]max _\ Z`*com/groovemanager/spi/asio/ASIOChannelInfobtype d} ceASIOCanSampleRate(D)Z gh +ijava/lang/Doublek(D)V m lnadd(Ljava/lang/Object;)Z pq r cASIOGetInputChannels u} +vchannel x} cysize {} |*com/groovemanager/spi/asio/ASIOAudioFormat~(FII)V  iterator()Ljava/util/Iterator;  java/util/Iteratornext()Ljava/lang/Object;   floatValue()F  lhasNext  cInfolistpossibleChannelse1jiterLjava/util/Iterator;elementLjava/lang/Double;  maxInputsA(Ljavax/sound/sampled/Line$Info;)[Ljavax/sound/sampled/Line$Info; 56 "javax.sound.sampled.SourceDataLinejava/lang/ClassforName%(Ljava/lang/String;)Ljava/lang/Class;  java/lang/NoClassDefFoundErrorjava/lang/Throwable getMessage b   getLineClass()Ljava/lang/Class;  )isAssignableFrom(Ljava/lang/Class;)Z   java/lang/ClassNotFoundExceptionLjavax/sound/sampled/Line$Info; 86 "javax.sound.sampled.TargetDataLinegetMinBufferSizeresultgetMaxBufferSizeisLineSupported(Ljavax/sound/sampled/Line;)ZgetMixer(()Lcom/groovemanager/spi/asio/ASIOMixer;  lLjavax/sound/sampled/Line;"(Ljavax/sound/sampled/Line$Info;)Z!javax/sound/sampled/DataLine$Info  }  }  getFormats$()[Ljavax/sound/sampled/AudioFormat;    isFormatSupported$(Ljavax/sound/sampled/AudioFormat;)Z  #Ljavax/sound/sampled/DataLine$Info;kgetLine;(Ljavax/sound/sampled/Line$Info;)Ljavax/sound/sampled/Line;,javax/sound/sampled/LineUnavailableException  Line not supported.  ;  containsKey q get&(Ljava/lang/Object;)Ljava/lang/Object;  javax/sound/sampled/LinekeySet()Ljava/util/Set;   java/util/Set getChannelInfo.()Lcom/groovemanager/spi/asio/ASIOChannelInfo;   asioInfoZ getMaxLines"(Ljavax/sound/sampled/Line$Info;)IgetSourceLines()[Ljavax/sound/sampled/Line;javax/sound/sampled/Line;getTargetLines synchronize([Ljavax/sound/sampled/Line;Z)VisSynchronizationSupported([Ljavax/sound/sampled/Line;Z)Z   contains q lines maintainSync unsynchronize([Ljavax/sound/sampled/Line;)Vremove q getMaxInChannelsresgetMaxOutChannels   getLineInfo!()Ljavax/sound/sampled/Line$Info; 96 !javax.sound.sampled.Mixer#(Ljava/lang/Class;)V % )&open  close * +closed -; .isOpen getControls ()[Ljavax/sound/sampled/Control;javax/sound/sampled/Control3isControlSupported%(Ljavax/sound/sampled/Control$Type;)Zcontrol"Ljavax/sound/sampled/Control$Type; getControlA(Ljavax/sound/sampled/Control$Type;)Ljavax/sound/sampled/Control;addLineListener%(Ljavax/sound/sampled/LineListener;)Vlistener"Ljavax/sound/sampled/LineListener;removeLineListener javax/sound/sampled/LineListener@update B ACLjavax/sound/sampled/LineEvent;openLine,(Lcom/groovemanager/spi/asio/ASIODataLine;)VgetPreferredBufferSize H} I-(Lcom/groovemanager/spi/asio/ASIODataLine;I)V FK Lline)Lcom/groovemanager/spi/asio/ASIODataLine;ASIOGetPreferredBufferSize P} +Q 0 S,ASIO is already activated with another Line.Uprepare.([Lcom/groovemanager/spi/asio/ASIODataLine;I)V WX Y startLine FG \ Jstarted _; `bufferSwitchTimeInfo+(Lcom/groovemanager/spi/asio/ASIOTime;IZZ)V bc d &' f 0 h  j.Ljavax/sound/sampled/LineUnavailableException; getFormat#()Ljavax/sound/sampled/AudioFormat; mn o getChannels q} Ur)com/groovemanager/spi/asio/ASIOBufferInfot u getChannel w} x setChannelNum z u{  setIsInput(Z)V ~ ugetBufferSizeGranularity }   [[Ljava/nio/ByteBuffer;channels   createBuffersD(Lcom/groovemanager/spi/asio/ASIOBufferInfo;I)[Ljava/nio/ByteBuffer;  +opened(J[[Ljava/nio/ByteBuffer;)V   channelcountgranbuffersbInfosASIOGetBufferSizeGranularity } +stopLine  stopped ; getMicrosecondPosition getSystemTime  +timejBufferSwitchTimeInfo(JIZ)Vjava/lang/Thread currentThread()Ljava/lang/Thread;   setPriority  #com/groovemanager/spi/asio/ASIOTime  asioTimeindex directProcess%Lcom/groovemanager/spi/asio/ASIOTime; } outLjava/io/PrintStream;  f.bufferSwitchTimeInfo() called in wrong state!!java/io/PrintStreamprintln h freeAll ; `timeInfo)Lcom/groovemanager/spi/asio/AsioTimeInfo;  'com/groovemanager/spi/asio/AsioTimeInfoflags  FLAG_kSystemTimeValid ) FLAG_kSamplePositionValid ) samplePosition*()Lcom/groovemanager/spi/asio/ASIOSamples;  &com/groovemanager/spi/asio/ASIOSamples doubleValue()D   2  asioBuffers  java/nio/ByteBufferrewind()Ljava/nio/Buffer;  capacity }  34 ([BII)Ljava/nio/ByteBuffer;   ringBuffers2[Lcom/groovemanager/spi/asio/DoubleHalfRingBuffer;  /com/groovemanager/spi/asio/DoubleHalfRingBufferwrite([BIIZ)I  read     processNowinternaltlength closeLine-(Lcom/groovemanager/spi/asio/ASIODataLine;J)V getSampleRateASIOGetSampleRate   +rateDgetSamplePosition   ;elapsed sampleRateaddASIOListener,(Lcom/groovemanager/spi/asio/ASIOListener;)V)Lcom/groovemanager/spi/asio/ASIOListener;removeASIOListenersampleRateChanged*(Lcom/groovemanager/spi/asio/ASIOMixer;D)V  !mixernewRate resetRequest % &supportsBufferSizeChange ( )bufferSizeChanged*(Lcom/groovemanager/spi/asio/ASIOMixer;I)Z +, -newSizeacceptedsupportsResyncRequest 1 2 resyncRequest 4 5supportsLatenciesChanged 7 8latenciesChanged : ;getInputLatencyASIOGetInputLatency >} +?getOutputLatencyASIOGetOutputLatency B} +C SourceFileASIOMixer.java InnerClasses!    !"#$%&'()*)+),)-).)/)01234567867967J:;<xY=RY?RYARYCRYERYGRYIRYKRYMRY ORY QRY SRY URY WRYYRY[R^djkR#$ %&'($)+*2+9,@-G.N/U0\1c2j3m#qwlm;n;op<>*+rk lstub<2*w{kl st|}<?*r*rk  l st}</*kl st;<4**Y*L==+2N*Y---Y*-W+*L==+2N*Y---Y*-W+ñk6 $T]bgnl>st C$0dCn0;<> Y*Ŷȱk l  st<_**Y͵**Y͵* *Ե*Ե*Ե*Ե*Ե*Ե*Y͵*+wk& HU]j$nNvY^l_st_</*wkl st<**=*"***Y* )$****Y* **Y* **Y* *k:  $7DHM]}l st  </*kl st  <E*+k l st'0  <E*+k0l st'0  </*k9l st  </*kCl st<>*"k NOlst#)<_ *%*% @*'@Ԕ).>1646*)%698:*<:*%Y*@hChFS*%*H*%N-K*H) kNW XZ[ ]$^)_.b6d<eDfLgod|jkmnopl\ st#)$bL)]M.XN9CD+OL#PQRS=><6<=* *2X<*2X*2X^<*k|}~+}4l 6PQ4[0A><~,<=  *2X<*2Xa<*k!*l ,PQ*_&9:<V +f=YN 7*'76$^1j-lY^1osW^+tw+zd6 .+zd6*H:K*HU-}^1U:6Y`S`-}hU:6-: > l: 6 "h `Y  `S  ݄ mm kr :FZdmotzlstOd  Wd #)-oS'PQTPQ$NH , ) <_ ** @*'@Ԕ)w>1646*)698:*<:*Y*@hChFS**H*N-K*H) kN  $).6<DLo|l\ st#)$b)]M.XN9CD+OL#PQRS<u5YWYZ_+)*k 0l5st5<u5YW¸YZ_+)*k 0l5st5}  <Z*'@1>*Hk  l st #) }  <Z*'@4>*Hk l st #) <P++*k $ %lst<+К+MYWYZ_,Ѷ *N8YW¸YZ_,Ѷ *N,*,ٸ@h,*,ٸCh :K,:6*6-22ߙ-#IOVv kN./ 14A5t7v;<=>?BCDEFDCJlf st> q ` S7PQ2! <+W*+Y**+[+M*Y,,,-*Y,,,YWYZ_+=>YW¸YZ_+=Y*NN-:t7+ж:6 2*-YkFRTU%V*W}[\]_`abcd8cC_Lhlf WstW*S_W@+PQ(<D *+k p ql st <R*L+M>=+2:,*YS+,kyz |}~G|Pl4RstM  G C/ <R*L+M>=+2:,*YS+,k GPl4RstM  G C/  <1*+>*+2*+2sW+k '0l*1st11 $<d=*+2W+kl st}<w*'@w>*HL k l*st #) RS}<w*'@.>*HL k l*st #) RS  <p>*+2+kl*st <[))Y"YW$Y"Z_' kl )st(; <a**'ӧLY+)꿱  k  lst RS*;<@**Ӷ,* ӱk l st*<~,*H*">*2/**k+l ,st,#)0<6 *kl  st12</4kl st56<6klst789:<6klst78;<<B *+sWk & 'l st =>?<<B *+Wk . /l st =><~&*϶M,AN-+D,k6 786%:l*&st&RE=>FG <B *+*JMk B Cl st NOH}< @*'@R>*HN*H k"KMN OPQRSl*st#) 0RSFK <p+T*YV*+;*Ѷ}N6*Ѷ:-S Y+SN*-lZk. _`c&d1e4f@gNf^jglomlHpstpNOp01-%g %4*=![G<d**+] M,^*=*2a**Ե*Ե*e**g*ikXM,KN^^ kBtvwxy|}#~,}8?FN^_cl4dstdNORl _SWX<l>6+2ps`>+u:>6Z+2ps669`uYvS`2+2y`|`2+2}`>+*6*6*6a=^=pd= 7*7*Ե*Ե*Ե*Ե*g*i6 m+ 2ps6  :  u: 67  `2+ 2pXh+ 2lS  `2S + 2   +*+ :Kdd k+%'-9?Mar| 0=GR\dfkllstl%l0j%G'*a9H<@[_#)t [ S L'  >fRS}< @*'@>*HN*H k" l*st#) RSG<6*WM,K* +=*2* k"   )5l*6st6NO RS<;* *Ԕ *Ԕ*ۭ@*e*amk '+l;st+)<{ Y:*ekl4st) bc< * *¶Ǹʱ+ζӲ <7*Ԕ * ۧ*Ԕ*Y*ea*+ζӲ D+ζݶ7*Ԕ * ݧ*Ԕ*Y*ea**Y: **6*2:622W226 * * * }/22* W2* W,2* W22* Wc*Gçÿk! !&6;N i!o#$%&'+,-./0356!7)8>9U<i=~0.+Elp st;4)4)NOv    <P * ,+/kMN Ol  st NO #) < @*'@J*H)N*H k"VXY Z[\]^l*st#)  RS<V* *Ԕ *Ԕ*ݭ@*eB*9S9*!mkak"h ij'k+l2m8nFol*Vst++)2$)8<B *+sWk x yl st =<B *+Wk  l st = <2+**::*("k'1l42st2#t2$" =%<,+**M,N-*',k"+l*,st,#t=(<y+*L+M,*+k  )l +st! =+,<M+*>*:/:**.>k !AKl>MstM#tM/ D09! =1<y+*L+M,3+k  )l +st! =4<I+*=*N--:3*6=-k >Gl4IstI#t @06=7<y+*L+M,9+k  )l +st! =:<I+*=*N--:9*<=-k >Gl4IstI#t @06==}< @*'@@>*HN-K*H k&  l*st#)  RSA}< @*'@D>*HN-K*H k&  l*st#)  RSEFG PK ]1#^^-com/groovemanager/spi/asio/ASIOTimeCode.class.s'com/groovemanager/spi/asio/ASIOTimeCode&com/groovemanager/spi/asio/NativeClass FLAG_kTcValidJFLAG_kTcRunningFLAG_kTcReverseFLAG_kTcOnspeed FLAG_kTcStillFLAG_kTcSpeedValid()VCodekTcValid()J     kTcRunning     kTcReverse     kTcOnspeed    "kTcStill $ %  ' kTcSpeedValid ) *  ,LineNumberTableLocalVariableTable 0 1this)Lcom/groovemanager/spi/asio/ASIOTimeCode;(J)V 05 6pointer createClasscleanUpspeed()DjtimeCodeSamplesflagstimeCodeSamples*()Lcom/groovemanager/spi/asio/ASIOSamples;&com/groovemanager/spi/asio/ASIOSamplesA = C B6toString()Ljava/lang/String;java/lang/StringBufferHASIOTimeCode{ Pointer: J(Ljava/lang/String;)V 0L IM getPointer O Pappend(J)Ljava/lang/StringBuffer; RS IT V,(Ljava/lang/String;)Ljava/lang/StringBuffer; RX IY speed: [ ;< ](D)Ljava/lang/StringBuffer; R_ I` timeCodeSamples: b ?@ d,(Ljava/lang/Object;)Ljava/lang/StringBuffer; Rf Ig flags: i > k}m FG Io SourceFileASIOTimeCode.java0    ]%!#&(+-.79 ;=?A$ /0 3*2. / 3405>*7. /3489: ;<=>?@6 BY*DE.1/  34     $ )FGQIYKN*QUWZ\Z*^aWZcZ*ehWZjZ*lUWZnZp.E FG&H7IHJME/ Q34qrPK ]1=00<com/groovemanager/spi/asio/ASIOClockSourceControl$Type.class.6com/groovemanager/spi/asio/ASIOClockSourceControl$Type$javax/sound/sampled/EnumControl$Type CLOCK_SOURCE8Lcom/groovemanager/spi/asio/ASIOClockSourceControl$Type;()VCode Clock Source (Ljava/lang/String;)V   LineNumberTableLocalVariableTable thisnameLjava/lang/String; SourceFileASIOClockSourceControl.java InnerClasses1com/groovemanager/spi/asio/ASIOClockSourceControlType! 1 Y  J I  >*+ LM  PK ]1r}&7com/groovemanager/spi/asio/ASIOClockSourceControl.class.h1com/groovemanager/spi/asio/ASIOClockSourceControljavax/sound/sampled/EnumControlsources-[Lcom/groovemanager/spi/asio/ASIOClockSource;dataLine)Lcom/groovemanager/spi/asio/ASIODataLine;Y(Lcom/groovemanager/spi/asio/ASIODataLine;[Lcom/groovemanager/spi/asio/ASIOClockSource;)VCode6com/groovemanager/spi/asio/ASIOClockSourceControl$Type  CLOCK_SOURCE8Lcom/groovemanager/spi/asio/ASIOClockSourceControl$Type;  N(Ljavax/sound/sampled/EnumControl$Type;[Ljava/lang/Object;Ljava/lang/Object;)V      LineNumberTableLocalVariableTablethis3Lcom/groovemanager/spi/asio/ASIOClockSourceControl;line,(Lcom/groovemanager/spi/asio/ASIODataLine;)Vjava/lang/StringInternal!setValue(Ljava/lang/Object;)V*com/groovemanager/spi/asio/ASIOClockSource%index()I '( &)'com/groovemanager/spi/asio/ASIODataLine+getMixer(()Lcom/groovemanager/spi/asio/ASIOMixer; -. ,/$com/groovemanager/spi/asio/ASIOMixer1ASIOInit()J 34 25.com/groovemanager/spi/asio/ASIOStaticFunctions7ASIOSetClockSource(I)V 9: 8; #$ =$com/groovemanager/spi/asio/ASIOError?printStackTrace()V AB @CASIOExit(J)V EF 2GvalueLjava/lang/Object;IiseqJe&Lcom/groovemanager/spi/asio/ASIOError;toString()Ljava/lang/String;java/lang/StringBufferSClock Source: U(Ljava/lang/String;)V W TXgetValue()Ljava/lang/Object; Z[ \append,(Ljava/lang/Object;)Ljava/lang/StringBuffer; ^_ T` QR Tb SourceFileASIOClockSourceControl.java InnerClassesType!  `*,,2*,*+ !"   T* Y"S"*+*+,#$ _=+ =(>*2+ *2*=* B*06B<*+> :D*0!H5LL@6 3467'63:5<@=D>L?N@SB^C>__IJ]'K#LK5*MNNOPQR >TYVY*]acS def  g PK }1~ {O@com/groovemanager/spi/asio/ASIOMixerProvider$ASIOMixerInfo.class.9:com/groovemanager/spi/asio/ASIOMixerProvider$ASIOMixerInfojavax/sound/sampled/Mixer$Info driverNameLjava/lang/String;'(Ljava/lang/String;Ljava/lang/String;)VCodejava/lang/StringBuffer java/lang/String valueOf&(Ljava/lang/Object;)Ljava/lang/String;  (Ljava/lang/String;)V   (ASIO)append,(Ljava/lang/String;)Ljava/lang/StringBuffer;  toString()Ljava/lang/String;  Unknown ASIO Driver!K(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V # $  &LineNumberTableLocalVariableTablethis()VCodejava/util/HashMap$ &" %'  )&com/groovemanager/spi/asio/AsioDrivers+ ,'  .0  2  4  6java/util/ArrayList8 9'  ;freeAll =" >LineNumberTableLocalVariableTable getLibName()Ljava/lang/String; jsasio_1.0D 'this.Lcom/groovemanager/spi/asio/ASIOMixerProvider;removeCurrentDriver I" ,JgetDriverNames()[Ljava/lang/String; LM ,N loadDriver(Ljava/lang/String;)Z PQ ,R TiIisMixerSupported#(Ljavax/sound/sampled/Mixer$Info;)Z:com/groovemanager/spi/asio/ASIOMixerProvider$ASIOMixerInfoZ Ljavax/sound/sampled/Mixer$Info;getActiveMixer(()Lcom/groovemanager/spi/asio/ASIOMixer; getBufferInfo.()[Lcom/groovemanager/spi/asio/ASIOBufferInfo;  anextSeq()J getMixerInfo#()[Ljavax/sound/sampled/Mixer$Info;  i  kjavax/sound/sampled/Mixer$Infom.com/groovemanager/spi/asio/ASIOStaticFunctionsoASIOInit-()Lcom/groovemanager/spi/asio/ASIODriverInfo; qr psjava/lang/StringBufferu v')com/groovemanager/spi/asio/ASIODriverInfox driverVersion()I z{ y|append(I)Ljava/lang/StringBuffer; ~ vtoString C vUnknownc(Ljava/lang/String;Ljava/lang/String;Lcom/groovemanager/spi/asio/ASIOMixerProvider$ASIOMixerInfo;)V & [$com/groovemanager/spi/asio/ASIOErrorversioninfoe&Lcom/groovemanager/spi/asio/ASIOError;getMixer=(Ljavax/sound/sampled/Mixer$Info;)Ljavax/sound/sampled/Mixer;"java/lang/IllegalArgumentExceptionNot a valid ASIO Mixer(Ljava/lang/String;)V &  getDriverName C [get&(Ljava/lang/Object;)Ljava/lang/Object; %$com/groovemanager/spi/asio/ASIOMixer?(Lcom/groovemanager/spi/asio/ASIOMixerProvider$ASIOMixerInfo;)V & addASIOListener,(Lcom/groovemanager/spi/asio/ASIOListener;)V put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; %java/lang/ClassCastExceptionOL/j2SWtMvYw,}L :+Ll[Yj2+S/Kjl9RR@:"&+-9=RT[ntA4GH-J= (WVWT#A+[MNY*,N-Y,N*-*,-W-@&  !%.3?A>AGHA\V.V ! C#$3@Ar#$@A #JUU* 3U* */*[S 3*U*@* %8=?CHA J q#B*ʚe*̭t**Ÿ̳7LU*+722@. $)237<> AB 3 #**B!ee*!+سb*!@#(A** **W%#4*+B!ee*!*Ÿߧ :*!"((@& ()*,".(0*1/224A44 44W-*#d"U* 3**@?@ ACEF GA " #W***@R SUVWA  #X *U**7*@ bcA  #q*WL+/KU*ű@kl m opqrA #[' * **@&  $/=KYA[GH[W #x*<L+"$M,'+*@ (A *GH!+, -. #x*<L+"$M,1+*@ (A *GH!+, -. #x*<L+"$M,4+*@ (A *GH!+, -.5#}%<M,"$N-+7,*@ $A*%GH% +,-.8#D=<N0-"$:'U;=-*@ 9BA4DGHD<WB=> 9+,"-.? #@<<M,,"$N-4-UA<,*@ 5>A*@GH>=> 5+,-.B #@<<M,,"$N-1-UD<,*@ 5>A*@GH>=> 5+,-.EF#**HUNU7J*-K*M*O*Q@V  )-6;=FPR[dfoxzA*GHWRW-S #A <+WW@ A GH -.X#A <+[W@ A GH -.\]#E *_Yae@  A GH fbc#+<M,"$N-U+jn,*@ !*A*+GH+op#+, -.qrs [t PK ]1ɲD$$/com/groovemanager/spi/asio/ASIOBufferInfo.class.S)com/groovemanager/spi/asio/ASIOBufferInfo&com/groovemanager/spi/asio/NativeClass()VCode  LineNumberTableLocalVariableTablethis+Lcom/groovemanager/spi/asio/ASIOBufferInfo;(J)V  pointerJisInput()Z setIsInput(Z)V channelNum()I setChannelNum(I)Vbuffers()[J createClass()JcleanUptoString()Ljava/lang/String;java/lang/StringBuffer"ASIOBufferInfo{ Pointer: $(Ljava/lang/String;)V & #' getPointer ) *append(J)Ljava/lang/StringBuffer; ,- #. 0,(Ljava/lang/String;)Ljava/lang/StringBuffer; ,2 #3 isInput: 5  7(Z)Ljava/lang/StringBuffer; ,9 #: channelNum: <  >(I)Ljava/lang/StringBuffer; ,@ #A buffers:{ C [0]: E  G [1]: I }K}M ! #O SourceFileASIOBufferInfo.java0 3*    >*    !p#Y%(*+/1464*8;14=4*?B14D4F4*H//14J4*H//14L4N4P * > ?@&A7B<CODbEgFl> p QRPK ]1cc4com/groovemanager/spi/asio/ASIOStaticFunctions.class..com/groovemanager/spi/asio/ASIOStaticFunctionsjava/lang/Object'MESSAGE_SELECTOR_kAsioSelectorSupportedJ#MESSAGE_SELECTOR_kAsioEngineVersion"MESSAGE_SELECTOR_kAsioResetRequest&MESSAGE_SELECTOR_kAsioBufferSizeChange#MESSAGE_SELECTOR_kAsioResyncRequest&MESSAGE_SELECTOR_kAsioLatenciesChanged&MESSAGE_SELECTOR_kAsioSupportsTimeInfo&MESSAGE_SELECTOR_kAsioSupportsTimeCode()VCode,com/groovemanager/spi/asio/ASIOMixerProvider getLibName()Ljava/lang/String;  java/lang/System loadLibrary(Ljava/lang/String;)V  kAsioSelectorSupported()J    !kAsioEngineVersion # $  &kAsioResetRequest ( )  +kAsioBufferSizeChange - .  0kAsioResyncRequest 2 3  5kAsioLatenciesChanged 7 8  :kAsioSupportsTimeInfo < =  ?kAsioSupportsTimeCode A B  DLineNumberTableLocalVariableTable H Ithis0Lcom/groovemanager/spi/asio/ASIOStaticFunctions;ASIOInit-()Lcom/groovemanager/spi/asio/ASIODriverInfo; Exceptions$com/groovemanager/spi/asio/ASIOErrorP)com/groovemanager/spi/asio/ASIODriverInfoR SI getPointer U SV jASIOInit(J)I XY ZthrowASIOError(I)V \] Q^info+Lcom/groovemanager/spi/asio/ASIODriverInfo;codeIASIOExit jASIOExit()I ef g ASIOStart jASIOStart jf kASIOStop jASIOStop nf oASIOGetInputChannelsASIOGetChannels()[I rs tASIOGetOutputChannelsjASIOGetChannels([I)I wx ychannels[IASIOGetInputLatencyASIOGetLatencies ~s ASIOGetOutputLatencyjASIOGetLatencies x  latenciesASIOGetMinBufferSizeASIOGetBufferSize s ASIOGetMaxBufferSizeASIOGetPreferredBufferSizeASIOGetBufferSizeGranularityjASIOGetBufferSize x dataASIOCanSampleRate(D)Z)com/groovemanager/spi/asio/ASIOSampleRate(D)V H jASIOCanSampleRate.(Lcom/groovemanager/spi/asio/ASIOSampleRate;)I ASE_OK c Q ASE_NoClock c Q sampleRateDASIOGetSampleRate()D IjASIOGetSampleRate  doubleValue rate+Lcom/groovemanager/spi/asio/ASIOSampleRate;ASIOSetSampleRatejASIOSetSampleRate ASIOGetClockSources0(I)[Lcom/groovemanager/spi/asio/ASIOClockSource;jASIOGetClockSources([J)I *com/groovemanager/spi/asio/ASIOClockSource(J)V H  numSourcespointers[Jclocks-[Lcom/groovemanager/spi/asio/ASIOClockSource;iASIOSetClockSourcejASIOSetClockSource(I)I indexASIOGetChannelinfo0(IZ)Lcom/groovemanager/spi/asio/ASIOChannelInfo;*com/groovemanager/spi/asio/ASIOChannelInfo I setChannel ]  setIsInput(Z)V VjASIOGetChannelInfo Y channelisInputZ,Lcom/groovemanager/spi/asio/ASIOChannelInfo;ASIOCreateBuffers[([Lcom/groovemanager/spi/asio/ASIOBufferInfo;I)[Lcom/groovemanager/spi/asio/ASIOBufferInfo;)com/groovemanager/spi/asio/ASIOBufferInfo VjASIOCreateBuffers([JI)I  infos,[Lcom/groovemanager/spi/asio/ASIOBufferInfo; bufferSize infopointerASIODisposeBuffersjASIODisposeBuffers f ASIOOutputReadyjASIOOutputReady f ASIOControlPaneljASIOControlPanel f  ASIOFuture(IJ)V jASIOFuture(IJ)I selectorpointerkAsioEnableTimeCodeReadkAsioDisableTimeCodeReadkAsioSetInputMonitor createBuffer(JII)Ljava/nio/ByteBuffer; getSystemTimecurrentTimeMillis   createBuffersD(Lcom/groovemanager/spi/asio/ASIOBufferInfo;I)[Ljava/nio/ByteBuffer;java/nio/ByteBuffer  +Lcom/groovemanager/spi/asio/ASIOBufferInfo;asiobuffersize SourceFileASIOStaticFunctions.java0     <{7 "%'*,/1469;>@CEF* l nprt$v*x0z6GH/*JFG KLMNOQVSYTK*W[<_*FG`abcdOQ; h;_F#$%G bciOQ; l;_F,-.G bcmOQ; p;_F567G bcqfOQ&u.F@GvfOQ&u.FJGrsOQ?  K*z_*FTU VG  {|}fOQ&.F_GfOQ&.FhG~sOQ?  K*_*Frs tG  |fOQ&.F~GfOQ&.FGfOQ&.FGfOQ&.FGsOQ?  K*_*F G  |OQh$Y&=_F "G$ bcOQVYK*<_*F G bcOQMY&=_F G bcOQ8` L+=_+/N6-Y+/S--F" ,6G48c2 -bc!c]OQF <_F G cbcOQ| YM,,,ָ>_,F G* c `bcOQG* M>,*2P*,>_6*Y,/S**F*   " & ,; EG>GGcBc"%bc)cOQ; ;_FG bcOQ; ;_F"#$G bcOQ; ;_F+,-G bcOQQ >_F67 8G  c bc XY ef jf nf wx x x      Y  f f f     ,  q iFYG  QY*SY*SFeG`c  # ( - 2 7 < APK ]1p0com/groovemanager/spi/asio/ASIOChannelInfo.class.[*com/groovemanager/spi/asio/ASIOChannelInfo&com/groovemanager/spi/asio/NativeClass()VCode  LineNumberTableLocalVariableTablethis,Lcom/groovemanager/spi/asio/ASIOChannelInfo;(J)V  pointerJchannel()IisInput()ZisActive channelGrouptypename()Ljava/lang/String; setChannel(I)V setIsInput(Z)V createClass()JcleanUptoStringjava/lang/StringBuffer$ASIOChannelInfo{ Pointer: &(Ljava/lang/String;)V ( %) getPointer +! ,append(J)Ljava/lang/StringBuffer; ./ %0 2,(Ljava/lang/String;)Ljava/lang/StringBuffer; .4 %5 channel: 7  9(I)Ljava/lang/StringBuffer; .; %< isInput: >  @(Z)Ljava/lang/StringBuffer; .B %C isActive: E  G channelGroup: I  K type: M  O name: Q  S}U # %W SourceFileASIOChannelInfo.java0 3*    >*    !"#%Y'**-13686*:=36?6*AD36F6*HD36J6*L=36N6*P=36R6*T636V6X * V WX&Y7ZH[Y\j]{^V  YZPK ]1)N N -com/groovemanager/spi/asio/ASIOLineInfo.class.k'com/groovemanager/spi/asio/ASIOLineInfo!javax/sound/sampled/DataLine$InfocInfo,Lcom/groovemanager/spi/asio/ASIOChannelInfo;mixer&Lcom/groovemanager/spi/asio/ASIOMixer;class$0Ljava/lang/Class; Syntheticclass$1y(Lcom/groovemanager/spi/asio/ASIOMixer;Lcom/groovemanager/spi/asio/ASIOChannelInfo;[Ljavax/sound/sampled/AudioFormat;II)VCode getLineClass?(Lcom/groovemanager/spi/asio/ASIOChannelInfo;)Ljava/lang/Class;  8(Ljava/lang/Class;[Ljavax/sound/sampled/AudioFormat;II)V      LineNumberTableLocalVariableTablethis)Lcom/groovemanager/spi/asio/ASIOLineInfo;formats"[Ljavax/sound/sampled/AudioFormat;minSizeImaxSize*com/groovemanager/spi/asio/ASIOChannelInfo$isInput()Z &' %( *"javax.sound.sampled.TargetDataLine,java/lang/Class.forName%(Ljava/lang/String;)Ljava/lang/Class; 01 /2java/lang/NoClassDefFoundError4java/lang/Throwable6 getMessage()Ljava/lang/String; 89 7:(Ljava/lang/String;)V < 5= ?"javax.sound.sampled.SourceDataLineA java/lang/ClassNotFoundExceptionCgetMixer(()Lcom/groovemanager/spi/asio/ASIOMixer;getFirstChannel()Ichannel IH %JgetChannelInfo.()Lcom/groovemanager/spi/asio/ASIOChannelInfo;getName LM Oname Q9 %RtoStringjava/lang/StringBufferU N9 Wjava/lang/StringYvalueOf&(Ljava/lang/Object;)Ljava/lang/String; [\ Z] V=: `append,(Ljava/lang/String;)Ljava/lang/StringBuffer; bc Vd T9 f Vf SourceFileASIOLineInfo.java      *,-*,*+# $%&> !"#" I*)$+YW-3Y+5Z_;>@YWB3Y@5Z_;>D05<D /(0 IEF/*8 GH2*KA LM/*I &'2*)R N92*PSZ T9HVY*X^_ae*geh] ijPK ]1MUĺbb)com/groovemanager/spi/asio/ASIOTime.class..#com/groovemanager/spi/asio/ASIOTime&com/groovemanager/spi/asio/NativeClasstimeCode)Lcom/groovemanager/spi/asio/ASIOTimeCode;timeInfo)Lcom/groovemanager/spi/asio/AsioTimeInfo;()VCode  'com/groovemanager/spi/asio/ASIOTimeCode   'com/groovemanager/spi/asio/AsioTimeInfo   LineNumberTableLocalVariableTablethis%Lcom/groovemanager/spi/asio/ASIOTime;(J)V   jTimeCode()J  !  jTimeInfo $ % pointerJ createClasscleanUp SourceFile ASIOTime.java0  Q* *Y*Y   d$**Y*"#*Y*&'$%&#'$$()* + $  ,-PK ]1W`M$$-com/groovemanager/spi/asio/ASIOListener.class.'com/groovemanager/spi/asio/ASIOListenerjava/lang/ObjectsampleRateChanged*(Lcom/groovemanager/spi/asio/ASIOMixer;D)V resetRequest)(Lcom/groovemanager/spi/asio/ASIOMixer;)VsupportsBufferSizeChange()ZbufferSizeChanged*(Lcom/groovemanager/spi/asio/ASIOMixer;I)ZsupportsResyncRequest resyncRequest)(Lcom/groovemanager/spi/asio/ASIOMixer;)ZsupportsLatenciesChangedlatenciesChanged SourceFileASIOListener.java    PK ]1σ,com/groovemanager/spi/asio/ASIOSamples.class.&com/groovemanager/spi/asio/ASIOSamples&com/groovemanager/spi/asio/NativeClass()VCode  LineNumberTableLocalVariableTablethis(Lcom/groovemanager/spi/asio/ASIOSamples;(J)V  pointerJ createClass()JcleanUp doubleValue()D SourceFileASIOSamples.java03*    >*   PK ]1-0com/groovemanager/spi/asio/ASIOClockSource.class.**com/groovemanager/spi/asio/ASIOClockSource&com/groovemanager/spi/asio/NativeClass()VCode  LineNumberTableLocalVariableTablethis,Lcom/groovemanager/spi/asio/ASIOClockSource;(J)V  pointerJindex()IassociatedChannelassociatedGroupisCurrentSource()Zname()Ljava/lang/String; createClass()JcleanUptoString  equals(Ljava/lang/Object;)Z  #objLjava/lang/Object;other SourceFileASIOClockSource.java0 3*    >*   /*  G  !"g++M*$,$ JK LN  %& ' ()PK ]1 '',com/groovemanager/spi/asio/AsioDrivers.class.3&com/groovemanager/spi/asio/AsioDrivers&com/groovemanager/spi/asio/NativeClass MAX_DRIVERSI ConstantValue2()VCode  LineNumberTableLocalVariableTablethis(Lcom/groovemanager/spi/asio/AsioDrivers;(J)V  pointerJ loadDriver(Ljava/lang/String;)ZprepareDriverNames(I)I getDriverName(I)Ljava/lang/String;getCurrentDriverName()Ljava/lang/String;getCurrentDriverIndex()IremoveCurrentDrivergetDriverNames()[Ljava/lang/String;  $java/lang/String&  (sizenames[Ljava/lang/String;i createClass()JcleanUp SourceFileAsioDrivers.java0  3*     >*   ! "# $*2%<'M>,*)S,,CD EFE"H*$* +,-./0 12PK ]1_ W  .com/groovemanager/spi/asio/ASIOTimeStamp.class.(com/groovemanager/spi/asio/ASIOTimeStamp&com/groovemanager/spi/asio/NativeClass()VCode  LineNumberTableLocalVariableTablethis*Lcom/groovemanager/spi/asio/ASIOTimeStamp;(J)V  pointerJ createClass()JcleanUp doubleValue()D SourceFileASIOTimeStamp.java03*    >*   PK κ0 META-INF/PK Ӻ0META-INF/services/PK 05,,7META-INF/services/javax.sound.sampled.spi.MixerProvidercom.groovemanager.spi.asio.ASIOMixerProviderPK]0݁Ϡ8pMETA-INF/jsasio.jar[{pu?JڗzddY~I+aɖmɖe˖'iծ2؁@G! oK̔Ҥ4i3N&S:i3Nνw}h-,<{{{ι.ɊmWN4rxyhtuwthd'}<onyofOYdhVD.mO L$ ϷF7#х@7N .pdr8 _ɟ-TQb!Mދ{[Ő5_ܣ42\ <5 ͶN"8Q~د;vΪQp .Ο#sA]#p Ny#@TßCn~iA^!FbħOyc(#lUbxn] idMBud0>-8֛̞dz&b y ѫA3Q1hD)%Őrr5ӷ6Vް_ۚ|+˥k4 İ7`",8 FbaH (RoH*glrku)/ֺ/va_KqNzc Cp 6~QiILJlr0:ڇ'mg#G(Ld.1sD6g#Vlq]#x݃cVux i񄉡#kq}e ؽH2Zd$0Pª;;/#+guАD[9aY1Ac9b&#OJD"r%oLv:.!w]yw:Qs^:&*Xf7 T5qw ;gqz=> G h#R&z^$*ڌ^=b=<ʳejx*4=KhZ%;hkqڹ}e!(@C&!CR9p \57(0 08(I%ף\Rq e'$` 8% J4+VhF-ei.9dZ2n @Ъ v P3ĂӇd< #4]s4,REWh_SN5C;&mKZYaw#Lj9*4`T-mCpB\rWϕX)5ҡ ԜHsp< P|JND;1EP/'U /[~\flVJMKS+~-Do}`p?]h@!W W!װNCY_m E~O~u #Wf@!y(2| \Eɬ¹ \.7ɯcPLD8cSuO=.TJqMB'Z|AmXx"NbF/GbԨR%gfH7.ˁPr;j39=6àY\ɼ뻠QUnBsb,%@cΑ\xwSV)*LlqP@z8p(Fnu.`E"Omg *ɦP,,!O)e֠ega<ۗ"EH`6Az9ݠi)NP"jN:ݍT-IE`<[U),Ӗ7C~"L"A* (2ivy֮rV֡"Ֆ֩Zjm-TKUNŪ-UmWML!MRYffP#d42OD["(#CpVnsKj^8)=ϐ!WVqˆKѓQpQ1#K6h7 YBVdty9k/fy1UCD‘=QT'Kr8U[caIAlɪv+,S/mR:+߰ юƃX Mlf]XC~ +hl+10Jpy>"[Yz 2tCRT q2ֆt ~:0׊Haax-}}āH#XpM.#;p.V[íVOJi[1wPauKS,cA2n8)y-TR)'E2~8 Ź)JU~YZ`yCu0Z~O`6D\* F2Wf46uf5vpP·,Ss2q#$ H 30j2|06sƠ8/8t FfP>}!b0=\?o|su>]nƛGuHjh0έ!kǞ,6Em=ZS[ru=1h03*v'p4t߃|.IthG[7 3/`g ' Kq,x :~;?dղ1:1ܥ;BcuXd@QkΎh)#T!Cz#%PJ9(r 2tN9h'ď+Eq#؜ԻYNwsxG1Cϙb~yͱ0~O wМxEpFm kI!P8/(7HDޔk.J7B `K 3|erXo fW -,BLJ!֨6-p!Y\ <cO§^QH :?ԪoK>Lp1:7r'^_yLe-U9(]6ҥkEѠFǧ&v͜|hx(( Eor0AIz~BͰi~B˴w?Z{Yjd)Tgb=dH':cۍ҉Zhſd]JRHO\^ې슒lg@jT/@O ؒUgȃPJ^04av*a0%0% Pŷy5yt(D^ f}o[4m4GkAȦȯ}TŎǓ.r1']{18h>~f T4pߛ}1y@֛n}_[uo]ƯXN/WSA52\ӏzv7*Iz: Զ_jWZ;_?藦JzTO*-2-گzPhaö #b~KH9JO˻ڂ,&.Thf+_MA!<盕WV>J\`Lro8'{Q+ʕϖ[M!"?eBhH/ao4>]Q0(夜LM7kw9)?+)_Vf=St} qWs 'E:Z ڤOFԮWTԮ5-G yW>BuLre|Lkg58{ 1}LyƮR8z<(+?>P_u?CLþ 8anrZRTiW>8撝_ ,T)fbXZQaf|[k#,Ε}xݮQYbxݱ6q>߯+UN߱{ifƚ@ |گqF-=Ď/N@"7X _wK #{Bf.W8ڽVKi񰝎3㌟N7*S\:XI:^y2k~.^ΊI5A8'h}Sm-y[f[(y\ 6T0'N*Xn3XHɌ)?Zrnr$[xؓM s6 w$3NfK}N(!v&^w-sA?Yذ ڳGY]ynL2 BBȄJ<̋$Cd&dd27*`"U6vWA$-TvkWk_j[ۭKknkG{ν? k{{ē𳜃58#nHa"N*8, H106h,*&B0F`K$ڱ0{4[,<e`+~j>_rm*]9ȋ89IV 5q,~gף!n S~(.LK! ;F}m-$ri'iܛ"3b9Aj3?$IP`u%]L&kFHtIEqNrBW`-jzg•JBvjڴ&koa]|jprbaPcn8wA{,N_5,%VplkljdY,V5 FBF!ETR 4P0>< &:=C5Ѱɢ"#[ -TU+䆍Ў B'/D IӪ: g@o4v51sӌ);LDp't8IM@nכ~_7=szivFZ|&Zv1*#5WĪO?pӎk,,5i(7 Fn%Õ}n0mdhg,xhpA"j^\5h뉣&]to/cۄHH"W $-qH<p="t$}>!oNsfىL(KIڋHzϗM  =C>=R_CrI P`#mjFۆt*\!bwX7 E*QKw>eBrTJTov$zW0R!-mq:H} {L@Y d(.=-CҷsB[RSCѸ]h4 j7`i&a!Р"9 ,4X~aV%tГF ĩ'6 1}"4w|xx@yV-u`!m'~a$8mn>i|&R73 }Qn0*yrY=O'w!QXS@IUv:E*4_Dݯޅw㒻 sy0l{a~$oQx ai7w8 NpҰL/*_R2I /m-S< |7:DHtsƶ9 镫.c>xM*^3:jb* åpwI[$?q~jУ`賸 E橞8|bݑ }!C%Cw*>"R-u'9$ߞ3> ב }e!P^|\& [p\<?Fv H5~ > <~I%9Txqg:;x^N@Q'AYjj?x6FҚ>i`)XT"!)F0j^Ơ*a&j+=QnO<v '/(| Tx, ,)c唭B؏%0dSd4ZJ_,p _-1\䡵埈Mt l@p4$5\ d4*/RNߜӐy胬 fcPAd㪨2G%h|l|d,&[a8Yj=Ӥ֫˺Գ%*&员l%:&c0iALZc`rd¤Z$p0NJJ[\-"Dԅ(u@bI;cspGF8PN/'DO2.Tz -Q浞WQΨyП Q@n iƕSKAK@3[v4mJ,zhR[[*ghnHӏ/ַ7+ǩng ZvSM=ن \a7#ՎߏDܐ&}^~w,yq5.]zWWcQ7-H˙g'cݧ a&鮋HbiKWQ&LiS6XFefLR &XFeUTfxw-!Wʴ̉rT2*SFj$~5!QEȕ \Ts㙤8.3hyh8$%,a4-gh[._SU AT& 8}]֦M 3ȣ95ݍo>^i^)ox~rƦ TSڧ/G,r zJ֤3vyvka9~#-r1XjlE|ocHf]>'uk{(ZiS?>{:>8} Bc -ڃUn0 :>瞠OMƷxv{{=]Ħ3{)IHI^wUd1}ꉕEh&[v9pI^t+] mWBn"M.VրņEq5BI e+xUrD4Z3!7BX-{syM؀uD;}v;rGp`[n$0/3a%." JJ!2XPb[,Cre(o -!p;~C  ^ҧ`B!,SJ"*PJTJ7QiTJ*Rt(A0o$x|p[wxXL 㕭@ݒ2HU{L[VR> Sh4OQ7ote$kfEfWLg/#:vb]=rmavԊ1}I3!t!|靝1I2./Z&i4 p uS߻roeClZ^is9Ge QyjJy|_y\\TyBl^v6:^'$1H5ajŪţV*V@E-|D?OO |=$C&x牔hdY5Gnx "#jhgQq$S iI-T 5b -H| qwh&J|żFT"p-<&B|@p_:?yZ]C$d[? սV̳6%m\Iϙq1 }CBg  ~;UAGⓐԸ~ JشkhQʡ{wN~FGpN~K>$)$3 }v/) sN08>g7 ⥅Y܉14GoKr`'u~ 6V^Yf2^S*DU%͉eֈ/l6+5VF Hfs-}lM8SL>\Ē(+cXU4w[v6=]êl [jfW9)985Ct|v^EM@pZ_IdQ&)VWG|YkfYqֱi]l@k^,l X=tk)2P>>\50ư ڑcnܔP X⤴ֱ\YF:a7&!I.F\PE뉡SRUĎ>\Ͳ;^ v۝7(A,P{\ԍbf-ٱ;`OyKSoes%V . ni/ VD)R|B{gnbSRM@*Fv';`wK߁laY bGppv#aa_v^D␇o\>5ڰˋ.ʴֶf ;&B\xvX؃b3?CNJ' :1F>&p#pe:/LiuJ!U [0r/<3s%_'2pu~Y݈tT|>mCPyM南r!J9X1֖2 udXg D4P(A54 I;Iw ;ς6Pbqt[oBJ-PHN*fE>[n AIr$L>;t(8iΎSYn,HD v2_~~@r]dE3,ؕ8J+*\x*<1q:r*~Q!ۮ>Le)ԟ!Z7T2*_@cέH,s$ ܎cX ]F "wd3_-"tJKܺVZSrp7\ +ÈqG Q<I=E!ǣģ_\.=W`Ho8i9)\适NFpO2SLOqNDhz?|9Z<i6ec2Hd+0B ~EG"&_č%Co Uoުdo~Dw SxNJ% 3gO)~$yjG4ij4jF-U`gA r0ߔMIɏƧ䩚o{|B0D0 GTBe*ӺnD7&onno x:]<,3~>.ղuXɰi4X !a};)n 4MiZfF䍟G1ޘe *g72W ¾jr(C/?oG#&o57ZmCuwv_㗋x CZk !J,{I6|Nsp(PpD `j"KH$Pk=@E֪5QQWbwţԪx73߷n6]|7f͛73f2| gWTodmB]?AJA) M&(_׺&B9>A8~W@[g<?I.Ml.(/1#q@G0Ne)D M'~'M߀(RBt`i.6{TՈh.qVrEمqgmKhE>=HiVuٺLʡm:cJ3)+?5bj@S Ob7ppUazC ,bVE\UHW:`7LKCeVɲyxB5Qn%aRXvƇ--enS6Cg5 f3ю1 0Nq"V IϬt"*txe ĤDoiyk%]*jgV Q3 3Spl8 sLcL#`eWQz+Y!]":F_HRd:,0ؒL@8P![tVk1y(.m^{0hQԣG687bnN+9vlH-U]r[Q1aD,`+;c`cx\)OQd~D+0%N5+c]niyGJL?CM1-y3g!p"\I0PɃlMisps`1B΁_㹰a=^\/8v ;%pҼMEJ#V#ՈGt#f*^L'q=و7n  a] Y9y㌀lY5cͅIXLb`c2 v FhJ. G,#8ޔ`.(!ݳ+IJ#%(.E$f,!ٽHQrЭ3Vф:$N^׬܃2JUMX݄Ƭ )ԑIh%א\#p-uzl\ ؀%٨mÛIg>=OYnX,ǐ&xpY6X=_W}N\N里w@oiqKxorL2R0VN|rƖ4c(fR\vC>B4|fὶ0R־QK|*X_|4핅7QM@pvhj:a ܰUeG+\-Ԗ؀LaZ\廉 C /~CI2oظہ! zwoW?pӂa*a4`!6 vSe^}w嗀Huc2QuDSqdu'G,M,8rױk^ ˋ~Dtcʉr9hjp~Lt^W)C4ܽFqX檴:W!WdDq9P+d._'~aX?*us԰%Mxo`:Qt8ބY3 &L4`IN)(HOZpȉVU8 U 7~VIԺ*+ɟ>s|._Gԙkj^u%Cab8yyO+VA*4k|6s(v&!s]Q<ζLuהp7 :LKNaãva B fxʱ$?_6DV{K84LϹ Ĝ8|]Sa`f4]b < X|]*j݇FH"ErW#r k2y#sj-'z-z債xZ9}ڂC\ >tC;fӿsҠ~R$VkK{3mQQ$lbþj+740mL] 0{LcYA!Ã}t9"oI 722`G0I),d } 7iL<6<:m@z?w p=+ݙ{_ ^b nʠ ^gh2 4H oo|{/CW>OxLS1*Jf`$lX+O_LT\pWժl@mnm6 {hڣ?[ l6lvR| =ںEzb}D`Z :—<"|X CvB0yb:,7-6BߠjS PGR{<̆?0i+WCx >ve]+Z˽5<+ ֐P<09~ !tiN|gE!SN(|2H-8?=t)R[$^=ZT|v55U5okkVxKhʑWjL-V^Shpd؄>DbCIHNOX2 ( $2 NM:,g{p)M{Gq"Qy%3 G~ 8Kעy0\0V >#Ӥ#h4f4 )r3-'ۗLϱEoCgq>,1pLl"eŗ{ ZG nS^MN͋^YUX.Eus06SԺ2YpXupJC\ QqYlc<-E̓tɪ+o8ʕ)R.pWyZ5G(ymeN1wT:u"gYlSzepzq#kM%Ԁ̒TikBH՝ ܪ쎄TyB4F%tģXb+2;88>  %HhBо~v=Z= h֪ %nĽ~PF*U,S b#!ނ]ZS@rlP* gUWoei\dr`y4KmQ=*``CKzFZB9M#iqxzOkeN_P5(sӼpxWP ,cZ5x^G,{1Ar]CLB#^u!AF[{<Ⰺϻ'opy \ARgC5Ļ=xGo@?hjp>js$ KK|jwq >#ye7+N/9ߊVߟ+7q-V8#?.h> 0`,#_W6ՙēWi}a9f9b~A`n A)@8R96sz*KkxvyU];0O ,>P/WpOxsˑ>NNU`&ʫ9*}ߔr72h >FPʐj81Vٍ 6T!zJ.gP許I]i4IGCwwj݃~%5G>j0{m'i.oN ,s~lM6)򩮤NΔaku{$߿_ҕ'&>,r$肢d[P babA3&&ÔD ʣMΠG\2̤+ΡG|2H9 #!1.(x.lfHᾗ/g?8q 'q 8Cqĥ)ġ|\J }QI4.ZID +c4=qվ(?J:e5P6PF[l|\)MinR\?`Ys)aTi5 )YM!m;_5WM]dҷ~2VH8?؏f1չzr,f8EDaQIKu*U=ZeOc%4?|CF!~ #1u QBYlxYJ{؀1R: )5M͘p?11XMVd&iwgys{L&&$$L!@@/! a1 a m݋m] .FmZV-]D׶ڟΛ7 @{ss=,w9',2b+watcWգv*ό$ʻaڶF=牑LSM^l5VCtL|>)гYQM.13@1a#IJ1hwҩ(d!olOL❻5c2Y -s(vGf1vrY _׽_VvrMbR+ %Sd!1]'Sg|(M, "#T&Vh&T%f_+7Դnh,.kߩFCE("1) e_QL9 S,Hǁi7UQo1K\ V{+ylQ|XJmzʌ,9#ϣ)K=bh;捜u(w ׀%2Dz$,\f(0ēE+AǴ4TkTPE`YfV,woP/N,E6,HŘAYX]FgpKzm@b.ZIlgηP˶]ԹY\+@*W2] z򗻙^wC븎Gh‡r娠{۟"n_'[Kč5s "xSOc=G+ QW5RUY\a7$*S?<ʹNm}<}H^wHp{01jQ,c u=9IVw=e fu^ N^TzSb_=uj, &&cSH*?#"ANw*8$0[ XǥD;'-M%8/GsZqgIf1r"_:.00Rc(Hu0κ1Xv[FhZB hYڪ >Oc :p1h ,K<|BGO֗ߡ0xE.^.Uī]U]O#ڥ"-(4:o|~T|Qǯ>u1ԓʶXk o[f 2^Rm]n$?(38wKQXH2\Lc4f<<>g3("Q T°R1h1vEQA`TR1c}crIC{(>ĜF10Cl;u;-թ 5p,:B%]R?4ޣgRDMSSPğA`종 {f"|/R{mG8JS4&Qv*$>?*B.V#I -p&u&%'?v+hU0I%)e@@)ӎ0|7ƿt&7fQ1z5Th̡13j頱 cX,Lcd,Y2X.F9X$p +5 0axLm;* ͗&"(۩A° =4ib&& #pE N9[.=`R9>Eya$I)~FU RFE¸ |b\Mk(˸&#=˸^:TAaz}(&rYIet\„2vآeBH`r/V2x- ,h=~=z F[_]hj%>R 1b$߃Ͷ9\1v, `?L+F:]OCe%)`JTbbG>&67`/)Kit(1_(R:&t00C_h1zD:h˹`b4ʳǮ5,ezҧrUT9,g\5f14fY0@1Z51<n3(CĶN:.M_2ߌY@4,tY%m>[_+>o}|jM!qvDzQɎ N#:՛C)F~ ,b(#n_1ۘ(-<{HGt&IVp@02^VjcSlnzD1;OtJ'4gNM'YΠf53)ÜEY楎ކ X)ziuk۝{;Uo4Smxў_oNګuYce_h'Cct,ۭ専j%pM79rpP Ts]uMƂNetsTŔc.rlJkj<ki6d -6޷ojI0T~XR1QsUercZQH|zQ=yfŌ/Nfe}l2b8_ ˂ X뚌 S2j`-K6<ʯLja^Ck tud NKo VJ.еguħ 8w7.Ket^1UlF^o[B֥c0~W#A6e$;2󻗶W6k[5$CƵQ߮ ߐK_'-6lZ;eI&2w. ]VOj+rs-++<ÓVnq qv-1ʶ`pr2o=m aS)/r?;jl? Fן47[\;ꚍdFܔ&i_d&gB=7y7K'o+%B v p/4w~Tl>H#͇@  s-3+~(}0z|2OSS`#y^4:m63;3Of3}f/$EgEyLT =|N6byR6O O% Qg[ur -)9 KB1YnY7^'Aa3Kwi%ِD){#ZZ-ЗU-ITe܇RȚj.̃oNQ; Kp1Woe9a^Er^I0WQ, H=E1GJɔYP{n(|7?x3䀷*exAfKgs2d (Ҽ9;j1^Wfc{UcdwW)of~i)"y0[^"Ǎ'40yӝ!xg*w]y~ێ1,kˤtˢ\y6.&RjSO:zR,7Vh{k*i<~.^a;7'2BƩfgnz(qx·i44Ac (Y"sLZ钘\\0gWhz?2~WVxQU[ s\.~z0ZG;R+?/o+@L~|Rqy=&1>vC0A{BƧdL”(jٜߺ/{\v"er8Oa,nJVuR|+zYʡ2+FYyTmuVOlM{>CNXE+@ZAz*_[tHl abU&X\\F뭁bU$G-u` +QbpIb2լ`I\@-rd/wzp19`nvӃHkofi ÐcGZaUǚ쏕l{Ǟ:O05;Mlwӊv5;?[sȰۚO)e٪^@Bʲ.B`P6 ɀ;0lWX 8[vBfHW p߇RH9zu5mVkwExjZkY(hRkhяy6 jWJ}lL;z"almԝg$Z1nWeԙyl$=ڪh]ofx%~myrMYٖ7Yy ?jX^u%Y7co֭4غKm8JH q`i0XCX,4L٢((-;55h||wR.ʱN:?4|iQF-2U{%kxL jx`EG̀ Q0sXH! b=@~A4z1dmMq 0fy!q1Q=ݔ1=j4i7b=Y{p_rlr%jk?fcz8Ta(1ga s`HN#X|{'!bXm j(aY>iHjmZ( 9=6J+»Ib0z}1HO~3SmNh/+]LmPO);`vxx<<x< <,a<_GFqtBx|x| x< <x|x< lw6ÜyId)y p,1{wyw1ƎgnF瘐 [w.)ݭ^2vǭ|Tuyp yaPy6MmZj+r|iU|Ȯfۺ:A;#)S;C o$-3d07d,AA0r8̐2h}2C>; ~ȓ?0~cTw| ' e=HP*Fl}nBZxGJhQZ7K~dɽnղMskW5^|oӵ鋛;H_:pe4T ^}em>)8뙥0RLv^BU^n.㣙 YQ>lz`*yi^G#e\Xȑbr "ny/KAv䚖59oߴ\MWHh|]2m$7 hl88#ZJgLO~z3E>;R{%Z$-fJoԭ)z4SFL}3X)‘(N%fA=?EFPM oQm@eAr𶞺  87B אˋEYNYT׊ ;YH6>ş M4ݲ2O**4~쮟=~m {=zgZ>!4DshACL}X> ZaPgل?!\D$8~ Fs*N>ѡK5}E"ZPWQ 6ؠH'FnTvaI1'sB7jKjfΝ=~ꨶOWeC\3(͖,lihmI(g a XIIeZLܔ,mH2 QD<Mqy#U2E]l K8Iݤ%dcRI~u !j_{aXmxuq僱+nוaA3^GA^&|ɯ<-,hOv:O YoOTV=tuiX=AQS ^䭫nrn*@+>Gm:?#x>KaR J88 kTJ. "p.f6Vh # =>LR _pJ煮4>^42]rzAV ƳSm^C)ф4-,u.wX?928,_V7__C*J%#E^ RK9@u)*2K!NEGcRyhz 6_)u_tϩI`zBM ,TߎMRb(pv`8Ei+EEZ#Q"%U=I#86<CЂY"Y@  AzfGzcXD,-)i?,-ĵT,Rq$ˠZC E4/`8;dWCaDG?灾D,6+;<`(j̾ۈx nHQvpT'1-ޅbSljhC@K/(0.2ƫ<W|'Q`\}UXU퐮V R5uܒygظ,I&`٪+gNZ\xA(86uR ͭ! nl 䁂7Kx(Ky+SCYrTY[Fxa2,|NN0+ i? +(-"-v oqrxfiʻD1=*E@^ʴ^,A񼔳϶Qym`:\ dv Q?[NydPr˖QL`nlrw[~QJz`wtv9j%}9تBWx*yt+CG"~56rnxUj#^ptnQYɛF6{/]/ꥅt[K8r:jǖY"kbOڶ3ұ:խZ5WrܪH zeĀTD ٶyӗp*wr!=L즟Yr#A85_ e$ڠRj&H*Bn!Fi-4it3]y#NaC^4Օ U%hb<k^Nq-Wt}qM8. xNpi_H]$W'\aWpv1h;s92䔆f&!rUE#GSW5Kw :\Ro R?=po͗ݸj5T#r< >O `b]MKߓEXWGj1KhicKd𲦮KL 4+ڹRMn&/.C`܁|1k2Y+276SSCH/IhS#ՓLQl)OW3mBAW}#D7UIwS~ rZY$(=Ȧ&~4WFlۡWŸݏ݅#al#w=͡a?I) tUnVLӀ|I&pKo|"NK#ESEڢ&~u8Dߑ<0i(2n< X/`$"&)u\ҦJ'9|eTyw~^so&hR:m+Z8[W:mK/ڈa..O`f~!z֒x9`Xf7>/0V^"2 yg1sp!?b`}M\2ێ'C{wH~Ʉus%w3 hp |Sjᑩ]//y/Hz(f lV܂4mr\/^FZH,"0(o%:SLAEW/}u+TD0xǶ`y't?7rP: ># _-qzJ-wI ]Nqs.'EnQ@7pVH@ނT*y Pv7渂=y69ݪ+DD>fzW <9P*b$xMYb p| 勱-l0=Ij$y9w1t*2L49\`=/AAsIg\ [21.ROqCΗƫCܕ`>V̝wD_lw(+Ld ݂kѵuM\|ktGZ0X?-J-̹i؏DN ?B tKM"E.~vm!;)]܅1NCZq6^(a* !>3~MOxcSav>GvS/|W+b1G.{ţb (' ?a( @$xPHa65_-B/`yb/p480a4:mMa1(@qKP)^9& z*)#K+Ml9sQfԍi KT)p-0ߚahN'98 +#%&$\3k c6HC2QQ=:Wsba>VN0Lja}{/ă\ Ù 0u1NHٹ; =HN]$s9.yiS ILhKj{6eMbUl2ծ2b3SV\Uި %htwA bes\ p xPl[$msTrUBqJBm=v Eށ9<\ӡH`vsOrGu^L_pQ7ɹN|C@(ŽGR;V ޓ+q/=ї^zt7e"*z%>]D\~Q`ȇɣ8 p`yk5c<<1JFcOT+x,&_σgP.J>˒\̘E֌u?nKl:=x)8_X/ N .wA]O%p Ir[)Wfx>Wâ|Ƭ :Ŗ]^Da7>8DCFhP>\5J}&SAviT'DٽU+c @.A?4Fx l9Du 5͎fܜ"69]쿀sd"*YL6ѭZ7Nh8v>xMx8 vxDj.7Kw[u۪n[PˮZ37Lr +oum2O^ Vo @o'(oCypJGR8v3,\i}ZLfw <Lz]ȼ˫Jw3wBL[F C=G]yѨJ ձTR"2j36w%QW}n͆$r@H6$lP4DsbCH$BIP表XAk`b-% sp(,¢Q QXF/i l26!O|`:[ RnXYHN4٬$qE||5c&Vҧqhm _NA/@Be72ÊzCxv`#t34V*V%LLA'H\eĒ2K|,Yn r%+-Y^BXeKյL8؆B@ӂ3DvF>jYV$8{@!K?~"PBir,m6P_Av[ei 1K#,]%B}*4K uh1PƆBEgmcBo2P_8cyq~ު8 8m*kEq~En}8|9_Y}nOuJ3Zm~@u:L<jچ0p_32X# f8v=(km n>uB ФQ`nU}!$&=d[hPǑ CR0%Q,9E 3]&. BQY~Q8^^:K]p_Fs++#G~/`/a:9Qq b` < Ta6L8,Ž뀣{=T*B.70cA3~v x q1ǰo d1x&0ᅥ9d@/w!M,}J`nֻr^dgr!^ezXWveqR O`V1WX+o$~d{=w'`qQba*ي$B@U*),+Z{z,b*J7 DZB */FTB~H qJH,b2Y#K%YՒe RK \- /Vw2hUb,dL9)-F9F$uG0xrT̜a/^;Xxp/c]=)< q7߷EqCl_C>X%B`h@lAzJ\>}w!]+(WccBQeJ{4*עJrK^vȁ 铣RVPÕ;2p"oZWo#qvn\|ME_(VX"'|[H=fĜpЉ":_,zЦ?!BD :QF.P họHJ :PUaXev2rkZ@0xTb:gQ-6dL?&c#!)mPtds( E6(C,Υ,Jx&w] cz3D f҉7 60>a.kAa^`ٞ؋t.pK`nic u!%< Q=5 [wkT¥ޙ6g)9pgQeG>Q2͑a8$(-sp!K"bɻqB+ͧ6du60C"N[<8qk YyTK04ݕic34hMn;M %CE*Z 8!(iפQ(9IG`1< g/`Il3_CnBܯe ;Zf糙K n |ω 8v@cH+d1qW?CE:>v< UG>*JGIQ,fWQӌ0GQy4bm$ΥRxq)ܭKn}0LĂdw a+& ۃO\t,65zM.)L7~k"@_/|*;XʘS]SǕ1Xszs:KC\=gnPwO+ӣ'}4)5*C(|q&i\+ȃ}z9e'tduŹP/v}rw>?Znr"543, L2賖1g}_oٵ5"ߦ Q`z}Մ||C,H`J7s堅3 7$~/1yc7x kH4%8 Mk;kJg=~N~1;A4_(/@Qq<֞t=(:ޅ>o75.ozg5G;[y(Vgh}8iX64SQꪇ@E )Q%rU2ES%bԾL 9|R }g2J9B\AUF*ahJGD bQHi.|yP8(2،Cq !l? I1?ga`jQ:L.gńKrYҎc Ʈ0"D9LI\<錿yM"柞2{f-#heګE~?>n4jP?^90lm.mXYWZޡ{ ᅪΗJv,~Lg {@YyUJTfwL`kob?`[l3ԚW(Cz&5knB9+~P@io+b4uE+^y |KO^ٽ~֜ޚht|8[st~kxB0_|ۚg+VgOdxɺuJ6>폞JSJ;/?/ԯŕS?~27DeG\0WqKf.;?{ l[S6]i韢z[fȖZf?eo:lM-nhmi\9+n_]^{?:sWbd$K\Q\dnhudVvNۣXZ:NJKUnh@{h2_PKy0V @wtMETA-INF/jsasio_1.0.dll:mpSוWֳbg ˎDBvb;Nȓl?aiL(40TYÚb|&[N]R؎-#G !ג t!C;kgkM9I$lvXzs{WC>AH'1rOW~GN˪c-o{}-Ƿ79r9(l7qXL:x2&,OK%!G1BnLBdBoB3Bj;@KPp\=dB Sٸd[ӣG6y$|0ߒ8Y⼆n.ٶiffʴwSggyfgyfgyfGEZAdOdH{tUnFZZU=wjhn}݇Gjp4Pwfz2D1: Ge Yu,ZH4#lD=1T9!pja3ꍝIy:z,[ -vJȤ*h=,eZ_wL R~竈')$^ SD>F8>_Gtrҗ^ڞ ZBbPKc7[x.}+b)Vݛ6+ZzI}KG% E^&&6Vk;bk;"PTF$: ~21\6 u4B_Ou7GkoHx^a,j ڝ@e,os!:pL 9w[t>Цn;ɕַHG-aLkt2aV2N|;4.DO|>Yg)“Y7/pz#;0]'ѝ{.o/R5@|@[ &d[x7N| R-a ?:`ȉ<. Nep%:e[ԞJ^Fv!bZ/vY)I!@ڌb;EFlLm/$0.e7?Żh=7y&5>=^[gezzD9 oe-VFY=XDo(8KxB5!. #tRByAIfw838_W_Fo.?L^hxށo.|^!]"@^!Ń첫~ۏQ0Ml%w6)vx Z$ bk\}>k'!Fw(z̽/w,DNʺIe:#yz0<(1٪l@m%jlޕl3+|1 W$A[N\W_ A_uFf!J@9lYc=e'VC6jmAK@UZ~XnE 8_4g3PT{h[K4NylbSzh"5tàal-d]KVf\ǝA ") 'R-~3xfuFt;~$q[ 7f}M ] ׿DFb3pS$"G91Sfef4׉Qw`OڻSV }-5bBltf9l@!a(^kQ ɣj)\1vpTupX~fc[%Gu :?yg8y̯3鴗4)\0yvFlO` ,vpH5vq <@ͷ15 - p>,%xyZWNLtrK«B y'{r~"=y=$3YeNjI=PJd:qs8աb<0.Pf*)4nM֛3j:{!n3KӸ@u!sU仆;N PKSق &vl6_Fފ-~1IhKn=e(U$ԇB) m W!t7muxt^DŽ^*%R]F8\&S]j%a0Pc%|xƅxLkRgOvζ~kGrkp>p@ 8t'9d4XH448' ip~<; 444x^* gS#4XUBn>yXpyX3Bs}$+1fE7X_i6EH&x:ch7O?Uq B9 '9NJ eALtR^zϪ#\5] n=8X A]̾tw}P8L z. x1P:UZ?Sˆ^7"9>^W*v%!ߌph]K 9@ EY6hxx]SDzD^Jj -*˺=nTBrk=h=MкUl=-UFhEN5੢IT7fA6~zI&#vǼ~Y;_oM(H483 J`WR]ίU𲨈M\8Q4esI*>SvrrA*':v2MJ[ii0y%/NkR/~#MNޥ?W,'C[٥ @*om>@#bx_ 5+9".@|a/j@Yh hynbcj,>H3exo!ls~Ff( :wN"A{{^H̗AƽI ?Mr\M|)c\+ҭRh,) (J$i*WAeS# $8gڪj8k!.$4P&6\w}_@AA$V`&-VZx 'ޠEE~ARjh->ǚ 8|081X8.Wh̋Tl|*Ez }HLD]싅 2mYG4|ӂY@#|gte豽uym]W6@wF.;#56vŝ#:V}[Al],w!H!\ހRE tX59m"4Ԝs'zs0Иw=j\lVWijVV(e퐛Khh;`L  ]֘ŶV~p46gc%^kd}j}1j-C.pQfgTTۘX U(HJ2@pV:1