BLENDER_v222REND actionSRdGSRactionnterfacecree p`` DATAH`DATA`HPDATAPH`DATAHPDATAH`DATA`HDATAH`DATAHpDATApH DATA HpDATAI`PDATAI0DATA0IDATAI0`DATAI@`DATA@I`DATAI@PDATAIPDATAPIpDATAIPp`DATAI` DATA`I DATAI` pDATAIpDATApI`DATA`J```00dDB4KDDP2DATA@D8dC7'ڠDO*AdCC(BDC?z? 0eDATA@B SAVE FILEc:\Documents and Settings\randall\Desktop\_publisher-templates\tutorial\blendfiles\walkthrough_demo2.blendDATAJ``P0000dBВDpDo;DATAJ` p'>=o? dxDBuCxDxDpBBDATA=p??^;K>??`s0?^>K??'>o;=0 :W?@ s/$<4AC^>K??5?5@ B?=C^;ҾK@`Ĺ433?_>_>ZDATA@pBSAVE FILERYC:\Documents and Settings\randall\My Documents\_publisher-templates\tutorial\blendfiles\walkthrough_template.blendDATA`Jp `@Z>H>o?  >dB@G0GИP P DATAXИE > =DATA?И?5CAGC,,A #< #<`jFzD 0T0OB?5CADATADPCC3U?"=@@?DATAP=3??3?3w? ??2?d/HN2??2w @?@Z2o@Z>H2o.@ڱH>o*`> ,}?FV 5;#@ݩ4],40j@7w @??;#@ B? #<C?w? gDATA|P BCHBC||?CFC= ADATAY REPLACE IMAGE,&  \r&rrfb(r&hxcarpet1.tgajpg1c:\Documents and Settings\randall\Desktop\_publisher-templates\c:\Documents and Settings\randall\Desktop\_publisher-templates\\SteamQuake\Textures\TGA\carpet1.tgajpg1c:\Documents and Settings\randall\Desktop\_publisher-templates\c:\Documents and Settings\randall\Desktop\_publisher-templates\\SteamQuake\Textures\TGA\PFDATA@BSAVE FILEABLOCKC:\Documents and Settings\randall\My Documents\_publisher-templates\tutorial\blendfiles\walkthrough_demo1.blendblend`SC;SCactiona000dd??<d??_@??///render///#DATA090_U0DATA090_UDATA90_DATA9_DATA(08,2dd = B@OB6OBcamera0 P7`A;?\1???????>T?[ȺS?[??3Ⱥ`???+??`AA?q2 1]3H)?w ?OBd??ezt??>ezt?? ???OB6OBshoulderlane.0E_A;Ĺ(?????¸3T?[3V`??>T?[?>¸3¸Q?[?\1?????`A9333?DOBd?? #=?>= @???DATA@Zpitchrop?DATALesensor`DATA`DATAh_pitchDATAPhcont1@DATA@DATAfpitch < -89DATAPhcont2 ЬDATAЬDATA fpitch > 91DATA<vshoulderipoctPDATA0PppitchDATA<vact1`DATAL`npitch-89.0DATA<vact2pDATALpnpitch9181.0OB60OBCube0@`Ĺ433????????4??D??i!3?i!3?ù@`=433?Dd?? #=?>=?@???OB06OBviewerlayerlayer0T0????ɿ??.;?.;???????DOBd??fff????    `pP@???DATA0DATA@ZPsensitivityrop>DATA@PZinitrop|DATA@ZpPplayerrop DATA@pZmaxspeedrop@@DATA@Zpmousefilterrop>,DATA@Z flymoderopDATA@ ZrotropLDATALe`flykeyensor`DATA` DATAH^DATAL`efwdkeyensor1`DATA`DATAH`^DATALe`backkeyensor4 DATA`DATAH ^DATALe`leftkeykeyensor2`DATA``DATAH^DATAL`e rightkeyeftkeyensor3 DATA `DATAH^DATAL e `clickirstframeensor1DATA`DATA\DATAL e  unclickensorDATA`DATA\DATAL e mousemoveensorDATA`DATA\DATAP h`flymode.pyont2DATAgp~DATAP`h` walk.pyont2 DATA pDATAgDATAP`h`aim.pyont DATA PDATAg`\DATA<pvPfloormovect2DATAxoOCK!DATA<PvpplayerrotctDATA0protME2MECube.005???ME2MEPlane.005p???DATAp@ME2MEPlane0???MA@!MAwalkthroughlayer???????????L??2 ????IM IMcarpet1.tgac:\Documents and Settings\randall\Desktop\_publisher-templates\carpet1.tgaCAlPCACamera=pB?AA?IPPE0TIPshoulderPitchbCClW”B=AOBDATAPC)0CBAOB5DATAx0C%o? /q<A@@BACpA@ IPP0TEIPObIpoSSGC,,AOBDATAPS)]?5CAOB DATAx]%aׂEz?LdBY }:M B Y@5CAkwCEzAT WOa7WOWorld?AA@pATXd`\p~TXaim.pyext B`Z[[22pDATAB_Z reenDATA__BY'PosiDATA_0__PeDATA0_^_d#|<DATA^^0_dDATA^o^@d'('mDATAoo^0pDATAo0ooc+DATA0onoc$DATAnn0o c$DATAn@nnWDATA@npgnW0.0DATApg g@n@WplayDATA gfpgb DATAff gP^DATAf0ffV priDATA0fefVD NEDATAeA0f` ouseDATAAAepSDATAAPAA@V/NEW DATAPAAAU(DATAA@PAU.DATA@`@A U*NEW DATA`@r@v")enDATArq`@u.prinDATAq`qr@u.reenDATA`qqqtUity)DATAqp`q tUDATApppq@ldDATApp[ps-reenDATA[P[ppPs3#plaDATAP[[[7tOriDATA[ZP[r*DATAZ`Z[P,dDATA`ZZFREEDATA$Zfrom Rasterizer import showMouseleDATA(Ycont = GameLogic.getCurrentController()DATA Peclick = cont.getSensor('click')DATA$dunclick = cont.getSensor('unclick')DATAdplayer = cont.getOwner()DATA(@dmousemove = cont.getSensor('mousemove')DATA0p.geDATA,cif click.isPositive() and player.init == 0:DATA(c player.initx = click.getXPosition()DATA( c player.inity = click.getYPosition()DATAW player.init = 1DATAW player.mousex = 0.015DATA@W player.mousey = 0.015DATAb showMouse(0)rDATAP^romDATAVelif unclick.isPositive(): DATAV player.init = 0eenDATA` showMouse(1)DATApS DATA0@Vif player.init == 1 and mousemove.isPositive():DATA,U from Rasterizer import setMousePositionREEDATA0U shoulderipo = cont.getActuator('shoulderipo')DATA, U playerrot = cont.getActuator('playerrot')DATA$v shoulder = shoulderipo.getOwner()EDATA0u nmousex = click.getXPosition() - player.initxDATA0@u nmousey = click.getYPosition() - player.inityDATAXt player.mousex= player.mousex + (float(nmousex) - player.mousex) * player.mousefilterDATAX t player.mousey= player.mousey + (float(nmousey) - player.mousey) * player.mousefilterDATA@leenDATA0s setMousePosition(player.initx, player.inity)DATA4Ps player.rot -= (player.mousex * player.sensitivity)DATA8 shoulder.pitch -= (player.mousey * player.sensitivity)DATA,r GameLogic.addActiveActuator(playerrot, 1)DATA0P GameLogic.addActiveActuator(shoulderipo, 1)DATAeenTXdp~`\TXflymode.pye  ~z{{hLDATA ~}Pz'iDATA}} ~y!PjDATA}0}}yDATA0}|}PytOwnDATA||0}x$PwDATA|@||xitatDATA@|{|`xDATA{{@|x!:DATA{P{{wynamDATAP{{{welseDATA{zP{ w%itatDATAz{5` DATA(Pzcont = GameLogic.getCurrentController()DATA$yflykey = cont.getSensor('flykey')enDATAyif flykey.isPositive():DATAPy player = cont.getOwner()DATA(x player.flymode = 1 - player.flymodex 3DATAxitaDATA`x if player.flymode:DATA$x GameLogic.setGravity([0, 0, 0])DATAweenDATAw else:DATA( w GameLogic.setGravity([0, 0, -9.81])5DATAeenTXdp~TXwalk.py    LDATA @ sqrDATA@ `hDATA@P DATA+dDATA@ DDATAp`DATAp ceneDATA p-vADATA pDATAЏ aDATAЏ&geneDATA0Џser DATA00DATA0/ VECDATA@6 |ADATA@0'ntCoDATA@DATA!etSeDATA00# obDATA0#001DATA0p%key'DATA@0dDATA@).isPDATA@p)():DATAP0PosiDATAPl@ DATAP.maxDATA`PDATA`Q DATA`DATApP6tiveDATAp &zL DATA preenDATA pDATA0$yer.DATA0yerODATA0=on()DATA@@= @ DATA@`@ DATA@@0R DATAP`reenDATAP DATAPнPosiDATA`p)rY)DATA`0, plDATA`tiveDATAp$R DATAp Py| DATA ptiveDATA )"R DATA0`\yDATA0 DATA0*ormoDATApDATA0, upDATA0%DATA0FREEDATA0 7reenDATA@@*iveADATA@DATA@ybDATAfrom math import sqrtatDATA`REEDATAPdef VEC_length(x):DATA, return sqrt(x[0]*x[0]+x[1]*x[1]+x[2]*x[2])DATAfDATA`def VEC_normalize(x): DATA length = VEC_length(x)DATA0 return [x[0]/length,x[1]/length,x[2]/length]DATApDATA def VEC_mul(s, x):6DATA( return [s * x[0], s * x[1], s * x[2]]DATADATA0def VEC_add(x, y):nDATA0 return [x[0] + y[0], x[1] + y[1], x[2] + y[2]]DATAB DATA(0cont = GameLogic.getCurrentController()DATAeenDATA$fwdkey = cont.getSensor('fwdkey')) DATA$0backkey = cont.getSensor('backkey')DATA$leftkey = cont.getSensor('leftkey')DATA(prightkey = cont.getSensor('rightkey')DATA0 DATA,floormove = cont.getActuator('floormove')veDATA,pGameLogic.addActiveActuator(floormove, 0)EEDATA0A DATAplayer = cont.getOwner()veDATAspeed = player.maxspeedDATAPvec = [0, 0, 0]DATAvecDATAif player.flymode:DATA8P shoulder = cont.getActuator('shoulderipo').getOwner()DATA( playerOri = shoulder.getOrientation()DATAeenDATApelse:DATA( playerOri = player.getOrientation()15DATAeenDATA@playerX = [playerOri[0][0], playerOri[1][0], playerOri[2][0]]DATA@@playerY = [playerOri[0][1], playerOri[1][1], playerOri[2][1]] DATADATAif fwdkey.isPositive():DATA ` vec = VEC_add(vec, playerY) 32DATA y =DATAнif backkey.isPositive():DATA,p vec = VEC_add(vec, VEC_mul(-1, playerY))7DATA0(R DATAif rightkey.isPositive():DATA  vec = VEC_add(vec, playerX)DATAPR DATAif leftkey.isPositive():1DATA, vec = VEC_add(vec, VEC_mul(-1, playerX))EEDATA`y) DATAif vec == [0, 0, 0]:15DATA, GameLogic.addActiveActuator(floormove, 0)EDATApGamDATA0else:DATA vec = VEC_normalize(vec)EDATA vel = VEC_mul(speed, vec)EDATA8  floormove.setLinearVelocity(vel[0], vel[1], vel[2], 0)DATA,@ GameLogic.addActiveActuator(floormove, 1)EDATAS DATAR SOzSOExplosion05.wave:\Box\Squish_the_Bunny\sound\Explosion 05.wav?=??GLOB KDNA1BX-kSDNANAME*next*prev*first*lastxyzwxminxmaxyminymax*newid*libname[24]usflagpadid*idblock*filedataname[160]totcurvecurblocktypeshowkeypostotelemtypert*data*refkeyelemstr[32]elemsizecurvalblock*ipo*fromtotkeyslurphactkey**scripts*flagactscripttotscript*linelenblen*nameflagsnlineslines*curl*sellcurcselc*undo_bufundo_posundo_len*compiledsizeseekdrawzoomholdclipstaclipendnetstanetendlensdrawsizehololenhololen1scriptlink*anim*ibuf*mipmap[10]oklastframelastqualitytpageflagtotbindxrepyreptwstatwendbindcode*repbind*packedfiletexcomaptomaptonegblendtype*object*texprojxprojyprojzmappingofs[3]size[3]texflagcolormodelrgbkdef_varcolfacnorfacvarfac*handle*pname*stnamesstypesvars*varstr*result*cfradata[32](*doit)()(*callback)()versionaipotypedata[16]*ima*cube[6]imat[4][4]stypenotlaycuberesnoisesizeturbulbrightcontrastrfacgfacbfacfiltersizenoisedepthnoisetypeimaflagcropxmincropymincropxmaxcropymaxxrepeatyrepeatextendframesoffsetsfrafie_ima*nor*plugin*coba*envfradur[4][2]modetotexenergydistspotsizespotblendhaintatt1att2bufsizesampshadspotsizebiassofttexactshadhalostep*mtex[8]layspecrspecgspecbmirrmirgmirbambrambbambgambemitangspectraalpharefspeczoffsaddkfacharseed1seed2mode2flarecstarclinecringchasizeflaresizesubsizeflareboostrgbselpr_typeseptexpr_backpr_lamppad1*renfrictionfhreflectfhdistxyfrictdynamodename[255]namenullscaleselcolexpxexpyexpzradrad2smaxrad2*mat*imat*bbelemsdisp**mattotcolloc[3]rot[3]wiresizerendersizethreshvec[3][3]alfas[3][2]h1h2f1f2f3hidevec[4]s[2]mat_nrpntsupntsvresoluresolvorderuordervflaguflagv*knotsu*knotsv*bp*beztnurb*bevobj*textoncurve*path*keybev*orcopathlenbevresolwidthext1ext2spacemodespacinglinedistshearfsizexofyof*strfamily[24]*vfontmaxrcttotrctadrcodevartypetotvertipoextrapbitmaskv1v2v3v4punoedcodeuv[4][2]col[4]no[3]transptile*tpage*clutdef_nrweight*dwtotweightreserved1co[3]co[2]effect*mface*dface*tface*mvert*dvert*mcol*msticky*texcomesh*oc*sumohandletotfacesmoothreshsubdivcubemapsizertfpntswtypeutypevtypew*defmax**obname[32]partypepar1par2par3parsubstr[32]*parent*track*action*posenetworkdefbase*lifedloc[3]orig[3]dsize[3]drot[3]quat[4]dquat[4]obmat[4][4]parentinv[4][4]colbitstransflagipoflagtrackflagupflagipowinscaflagscavisflagboundtypedupondupoffdupstadupendsfctimemassdampinginertiaformfactordummy_1rdampingsizefacdtdtxactcolpropsensorscontrollersactuatorslbufportbbsize[3]dfrasactdefgameflaggameflag2anisotropicFriction[3]constraintsmistypehorrhorghorbhorkzenrzengzenbzenkambkfastcolexposuregravityactivityBoxRadiusskytypemisimiststamistdistmisthistarrstargstarbstarkstarsizestarmindiststardiststarcolnoisedofstadofenddofmindofmaxhemiresmaxiterdrawtypesubshootpsubshootenodelimmaxsublamppamapamielmaelmimaxnodeconvergenceradfacgammasxsycfraefraimagesframaptoframelenblurfacedgeRedgeGedgeBfullscreenxplayyplayfreqplaymaximsizexschyschxaspyaspxpartsypartssafetyborderwinposplanesimtypebufflagqualityscemodealphamodedogammaosafrs_secedgeintpostmulpostgammapostaddpostigammabackbuf[160]pic[160]ftype[160]movie[160]*camera*world*setbase*basact*groupcursor[3]*fcam*ed*radiozoomblendximyim*rectspacetypeviewmat[4][4]viewinv[4][4]persmat[4][4]persinv[4][4]viewquat[4]perspviewlocalviewlayactscenelockaroundcamzoomgridnearfarmxmymxomyopr_xminpr_xmaxpr_yminpr_ymaxpr_sizexpr_sizeygridlinesviewbutpr_facxpr_facy*bgpic*localvdverthormaskmin[2]max[2]minzoommaxzoomscrollkeeptotkeepaspectkeepzoomrowbutv2d*editipoipokeytotipopinbutofschannelmenunrlockcursenscuractmainbmainbo*lockpointexnrtexfromshowgrouprectxrectycurymodeltypescriptblockpad2*filelisttotfiletitle[24]dir[160]file[80]ofssortmaxnamelencollums*libfiledataretvalmenuact(*returnfunc)()*menupoopsvisiflag*imageimanrcurtileleft*texttopviewlinesfont_idlheightpix_per_linetxtscrolltxtbar*py_draw*py_event*py_buttondupflagsavetimetempdir[64]fontdir[64]renderdir[64]textudir[64]plugtexdir[64]plugseqdir[64]pythondir[64]sounddir[64]versionsgameflagsvertbaseedgebaseareabase*scenestartxendxstartyendysizexsizeyscenenrscreennrfullmainwinwinakt*newvvec*v1*v2*v3*v4*full*headqueue*hq*winqueue*wqwinmat[4][4]headrctwinrctheadwinwinheadertypebutspacetypewinxwinyhead_swaphead_equalwin_swapwin_equalheadbutlenheadbutofscursor(*headchange)()(*winchange)()(*headdraw)(void)(*windraw)(void)(*headqread)()(*winqread)()spacedatauiblocks*curscreendisplaymodefileflagsname[40]*se1*se2*se3nrdone*stripdatadir[80]orxoryname[80]*newseqstartstartofsendofsstartstillendstillmachinedepthstartdispenddispmulhandsize*strip*curelemfacf0facf1*seq1*seq2*seq3seqbase*seqbasepmetastackbuttypestaendlifetimetotpartseednormfacobfacrandfactexfacrandlifeforce[3]dampnablavectsizedefvec[3]mult[4]life[4]child[4]mat[4]texmapcurmultstaticstep*keysheightnarrowspeedminfactimeoffs*obpremat[4][4]postmat[4][4]vec[3]faclenoalphaoeff[2]iterlastfralimbbaseeff[3]effg[3]effn[3]memslowtotytotxxyconstrainttotdefdef_scrolllimb_scrolldxdy*idlinkfasesubfasemouse_move_redrawimafasedirslidirsli_linesdirsli_sxdirsli_eydirsli_exdirsli_himaslifileselmenuitemimasli_sximasli_eyimasli_eximasli_hdssxdssydsexdseydesxdesydeexdeeyfssxfssyfsexfseydsdhfsdhfesxfesyfeexfeeyinfsxinfsyinfexinfeydnsxdnsydnwdnhfnsxfnsyfnwfnhfole[128]dor[128]file[128]dir[128]*firstdir*firstfiletopdirtotaldirshilitetopfiletotalfilesimage_sliderslider_heightslider_spacetopimatotalimacurimaxcurimay*first_sel_ima*hilite_imatotal_selectedima_redraw*cmapotypedataold*poin*oldpoinresetdistlastval*makeyqualqual2targetName[32]toggleName[32]value[32]maxvalue[32]materialName[32]damptimeranglerangeaxisdelaypropname[32]matname[32]axisflag*fromObjectsubject[32]body[32]pulsefreqtotlinks**linksinvertfreq2str[128]*mynewinputstotslinkspad3**slinksvalvalopad5time*actblendinprioritystridelengthstrideaxisreserved2reserved3sndnr*soundmakecopycopymadepad[1]*melinVelocity[3]localflagforceloc[3]forcerot[3]linearvelocity[3]angularvelocity[3]addedlinearvelocity[3]anotherpad[4]butstabutendminvisifacminloc[3]maxloc[3]minrot[3]maxrot[3]distributionint_arg_1int_arg_2float_arg_1float_arg_2toPropName[32]*toObjectbodyTypegoaccellerationmaxspeedmaxrotspeedmaxtiltspeedrotdamptiltdampspeeddamptotportactport*portals*campos*camframe*dynamesh*texmeshtotcamtotfra*sectoroldloc[3]speed[3]oldloc1[3]loc1[3]speed1[3]startloc[3]startrot[3]rotspeed[3]oldimat[4][4]frictrotfrictaxsizefrictfacaeropadf*sensors*contact*collision*floor*oldmeshtotsensactsenstimerdflagstate[4]colloc[3]floorloc[3]links*sample*snd_soundvolumepanningattenuationpitchmin_gainmax_gaindistancechannelspad[7]gaindopplerfactordopplervelocitynumsoundsblendernumsoundsgameengine*gkeyokeygobjectgkey*activechildbaserollhead[3]tail[3]parmat[4][4]defmat[4][4]irestmat[4][4]posemat[4][4]bonebasechainbaseres1res2res3chanbase*achan*pchanactnrenforceoffset[3]orient[3]roll[3]*tartoleranceiterationssubtarget[32]zminzmaxTYPEcharucharshortushortintlongulongfloatdoublevoidLinkListBasevec2svec2ivec2fvec2dvec3ivec3fvec3dvec4ivec4fvec4drctirctfIDLibraryIpoKeyBlockKeyScriptLinkTextLineTextPackedFileCameraImageanimImBufMTexObjectTexPluginTexCBDataColorBandEnvMapLampWaveMaterialVFontVFontDataMetaElemMetaBallBoundBoxBezTripleBPointNurbCurvePathIpoCurveMFaceMFaceIntTFaceMDeformWeightBoneMDeformVertMVertMColMStickyMeshOcInfoLatticeLBufbDeformGroupbActionbPoseLifeWorldRadioBaseRenderDataSceneGroupFreeCameraBGpicView3DView2DSpaceIpoSpaceButsSpaceSeqSpaceFiledirentrySpaceOopsSpaceImageSpaceTextUserDefbScreenScrVertScrEdgeScrAreaFileGlobalStripElemStripPluginSeqSequenceEditingEffectBuildEffPartEffParticleWaveEffDeformLimbIkaOopsSpaceImaSelImaDirOneSelectableImabPropertybNearSensorbMouseSensorbTouchSensorbKeyboardSensorbPropertySensorbCollisionSensorbRadarSensorbRandomSensorbRaySensorbMessageSensorbSensorbControllerbExpressionContbPythonContbActuatorbAddObjectActuatorbActionActuatorbSoundActuatorbSoundbEditObjectActuatorbSceneActuatorbPropertyActuatorbObjectActuatorbIpoActuatorbCameraActuatorbConstraintActuatorbGroupActuatorbRandomActuatorbMessageActuatorSectorbSamplebSoundListenerSpaceSoundGroupKeyObjectKeyGroupObjectbArmaturebPoseChannelbActionChannelSpaceActionbConstraintbKinematicConstraintbTrackToConstraintbRotateLikeConstraintbLocateLikeConstraintbFollowPathConstraintbRotationConstraintTLEN  0Ptdl PPx4@H<0P H  L ,@x(D($p@Xd @l8(,@0,HhH,(lDLP< <@Lx0848l@0pP<`,,,,STRC                     !"# $%&'()*+,-./0 123 456789:; < =>2 !?@ABCDEFGH%I"#J$K$LMNOPQRSTUVW X%YZ[\&]'^_`abcdefghijklmn( opqrs tuvwx yz)ghi{*|)}+ &]"~"ABMN'#/m%"~(*+,fghijAB%%I-%.:fghiYZ%%.I/0 X111/23 %.ed4 5666 5 4 7&3  & &%8. de/4 /!9995 4 "#$%&'(  )#:*+,-./;*+,-./< 01234 5 6=78>?=9:;@<2A{ghiB=C3 > %. ? @ A@B?CADBECFDG H&IedJKLME NOPQ5R%FS&TGGGU &NVWXYZ&[&\%83H]I^  > _ `.Jabcddefghijklmnopqrstuvwxyz{|}~I     HFF1 K+f%%ILMMM&]N/x=O&KO"~ MPQ L HNgIR "~'^=S*SSEc&     RST  !"UUU#T$ % &%&'()*+,;VVV-.T$/+(0 123456789pWWWT$/:XXXY;<=>?@ABCDE|FG HIZ ZZT$ J(K 1[[[T$"L:(MN,\\\OPQR2+STUVW X Y Z][\]^_`abcdef}^ g h iOjklmnopqrstu____v w```_x_ya&aa_x_y_z_{^|}~#        b c$KcccMd dd/ce  opsz tvw x yf fff /dc%Oj#Jefff g   hhhiii/jjj'klllkmm &VWXYn nn/oV %&[WXYmRp pp qNqq=       !"#$%r&r'()*+,-./0123s4s567$8 Ht ttU9:; < =uU>?v:wU.@xABCDEyUFGzUHI:{UJKL|UM}UKNOP~&QRS9TUV:U W&XYZP[\V9]:^U W_`abc& HdUefgh;ij klmno c&CpUqrOj&UF& stbeuvwx Uyz&{SL|}~ UyzPN&R:S [9U &Q y& F   'CCdghiJ- yghi .&&& CCCF ' X %2 T$lk,:UVWXY&[&\%bcddefghiklmnwx& P  >>>>[ U8bddfgh    dfhU;I % U;H  ,T$H](;  %9Uc&&;i&;&;&   ENDB