BLENDER_v245REND SceneGLOB  0o&SRxu&SR1-AnimationМ,X(H% DATAМ,(DATA(r"М, DATAr"( DATA,r"DATA,,DATA, ,DATA k,DATAk& DATA&,kDATA,,&DATA,hp,DATAhp8~,DATA8~hpDATA8~DATAX(r"DATAXМ,DATA (,DATA p]# r"DATAp]#  ,DATA0c"p]#k,DATA0c"x &DATAxX0c"k&DATAXx ,DATAXМ,,DATAX,,DATAX(`/,DATA(`/1X,,DATA1 0(`/hpkDATA 0P18~,DATAP( 08~&DATA(Php8~DATA (,DATA ؖ,DATAؖG. hp,DATAG.8w&ؖhpDATA8w&G.,,DATA8w&8~DATA(X -М,,,O xY(-DATA(X(Link and MaterialsEditing>DATAX(-(MeshEditingF>DATA--X(Anim settingsObject>DATA---DrawObjectF>DATA-0--ConstraintsObject>DATA0-H--EffectsObjectDATAH-`-0-HooksObjectF>-DATA`-x-H-Particle InteractionObject>-DATAx--`-SoftbodyObject>-DATA--x-OutputRender>DATA---RenderRenderF>DATA---AnimRender>DATA--FormatRender>DATA wxY333?V,@DhCDhCC(BDC?z?DATAhxYy 333?V,/9DATAX - -(,(r"  !  DATA -pX -hp8~&kG==o?ad--DATA--Transform PropertiesView3d>DATA--3D Viewport propertiesView3d>"DATAard333?V<????????G==o? A*A?G==o??????*A0 B??=C ݢM@ݢM@ݢM@? DATAhdya333?V</9DATAp,0 -k& ,??PףH(l--DATA-Transform PropertiesIpo!>DATA((vk333?V\zC̽̌?zC@ #< #<`jFzD OBzC̽̌?DATAkzn(333?V\CC|||??l|DATAnhk 333?V\zCCHBC|||?CFC= ADATAxh}n 333?V\pZ  =rttDATA|yh 333?V\?zDzDBCl||ll|zDzD=HB DATAyr 333?V\BCBCl|llFzD #<HB DATArrly333?V\??? ???? A???PA A!O?j?}GCHB? A0 B? #<C DATAhlyr333?V\/9DATA,0H%php,, X#--DATA--Link and MaterialsEditing>DATA--MeshEditingF>DATAX 333?VLzCB{ µCB ?BFB= ADATA  X 333?VLzCCHBC$?CFC= ADATA w# 333?VL#DhC`DpJgChCC(BDC?z?DATAh#y 333?VL/9DATAH%,0,,8~} ?=o?.w ),,DATA,,Transform PropertiesView3d>DATA,,3D Viewport propertiesView3d>"DATAwz333?YDATA,,,LampLampF>DATA, ,,SpotLamp>DATA ,8,,Texture and InputLamp>DATA8,P, ,Map ToLamp> ,DATAP,h,8,PreviewMaterial>iDATAh,,P,MaterialMaterialF>iDATA,(,h,PreviewWorld>DATA(,@,,WorldWorldF>DATA@,Ȱ,(,Mist Stars PhysicsWorld>DATAȰ,,@,Texture and InputWorld>DATA,,Ȱ,Map ToWorld>Ȱ,DATA,,,OutputRender>oDATA, ,RenderRenderF>oDATA p',AnimRender>o#DATAp'' FormatRender>oDATA'p'Link and MaterialsEditing>mDATA'MeshEditingF>mDATAf*Mesh ToolsEditing>lDATAf*(g*Mesh Tools 1Editing^>lDATA(g*L-f*CameraEditingF>DATAL-M-(g*ShadersMaterial>iDATAM-xCL-TextureMaterial>iDATAxCDM-Anim settingsObject>DATADxCDrawObjectF>DATADConstraintsObject>DATA`A"ScriptlinksScript>DATA`A"xB"EffectsObjectDATAxB"f#`A"Map InputMaterial>fM-DATAf#h#xB"Map ToMaterial>fM-DATAh#xf#AnimAnim>DATAxh#SoundSound>DATAxListenerSoundF>DATASequencerSound>DATAx-ArmatureEditingF>DATAx--RampsMaterialF>ih,DATA-x-Mirror TranspMaterial>iL-DATA-Mist / Stars / PhysicsWorld>DATAȾAmb OccWorld>DATAȾvShadow and SpotLamp>DATAv(wȾModifiersEditing>mDATA(w@xvShapesEditing>mvDATA@xXy(wMultiresEditing>mDATAXy`0@xSculptEditing>@xDATA`0x0XyBrushEditing>@xDATAx00`0Texture faceEditing>DATA00x0UV CalculationEditing>x0DATA000Links and PipelineMaterial>iDATA000SSSMaterial>iL-DATA000PreviewTexture>NDATA0(#0TextureTextureF>MDATA(#@#0ColorsTextureF>M0DATA@#X#(#MusgraveTexture>DATAX#p#@#CloudsTexture>DATAp##X#WoodTexture>DATA##p#Render LayersRender>o,DATA###BakeRender>oDATA###ImageTexture>MDATA##Map ImageTexture>MDATAw(0333?)@:/DHhC}Djf5hCC(BDC?z?mDATA(0r(333?)??? ???? A??@PA Aj?c3>}GCHB? A0 B? #<C DATA(zX0(0333?) M M M??DATAhX0y(333?)/9DATA-0)P (8&ؒ!ؒ!DATA0 0-/{u??=뼚AHM]S]]S L(0X3<'<'00DATA00Transform PropertiesView3d,>"DATA00View PropertiesView3dT>"DATA(0r`333?0ޕ/?V~'?4F:?>T8185e?6>{>Aۨ?ߕ/?3F:?81X~>75e?'?T1>].Ax8?(>þ''GL>8>?T?PX? l6džQd dAH?_4[fBY@֟ BdO(@??=뼚AHMޕ/?V~'?4F:?>T8185e?6>{>Aۨ?H?N*Z#:4Bl50 B??W;=C!7?X<555^.Ax8? ` DATA(`v@(0333?0zC̽̌?zC@22 #< #<`jFzD OBzC̽̌?DATA@z`333?0 1 12 1??2DATA 0@ 333?0?zDzDBD22FzD #<HB DATA 0wX3333?0DdC8CnD fCC(BDC?z?DATAhX3y 0333?0|SELECT IMAGE PICTURESC:\muray\Textures\extures\xtures\ay\Textures\ents/Resources/Tempgryl.JPGpgpg n rW0-0-DATA 0(0pp0#/w=c >o?[S[[S \LwXh046DATA46Transform PropertiesView3d,>DATA64View PropertiesView3dT>"DATA$X~0333? 0[DATAx0}`X 333? 0x+ c?240DDATA`r0333? 0????????w=c >o?{IA@y?w=c >o??????{IA0 B??*==C7?X<ZH@ZH@ZH@? DATA(v`333? 0zC̽̌?zC@22 #< #<`jFzD OBzC̽̌?DATAz 7333? 0 1 12 1??2DATA 78 333? 0?zDzDBD22FzD #<HB DATA8w 7333? 0DdC8CnD fCC(BDC?z?DATAhy8333? 0EOpen Text FileICTURESC:\uray\..\es\..\umpbug Folder/ender.app/Contents/Resources/processing_export.py *2DATA( 0{"< eS=o?]U]Uo]p \(((@DATA(@Transform PropertiesView3d,>"DATA@(View PropertiesView3dT>"DATAr333?(????????"< eS=o?B6Ay?"< eS=o??????B?0 B??==C7?X<͠A͠A͠A^.Ax8? )DATA(v( 333?(zC̽̌?zC@22 #< #<`jFzD OBzC̽̌?DATA( zX333?( 1 12 1??2DATAX(  333?(?zDzDBD22FzD #<HB DATAwX333?(DdC8CnD fCC(BDC?z?DATAhy333?(LSave FileNT PICTURES/Users/ton/Desktop/umpbug Folder/ender.app/Contents/Resources/untitled.blend DATA(0#P w=і>o?[U[Uo[p\\0 0P|#|#DATATransform PropertiesView3d,>DATAView PropertiesView3dT>"DATA0 0{333?CC.?8?\\Hd?DATAr0 0333?????????w=і>o?{IA @y?w=і>o??????{IA0 B??*==C7?X<ZH@ZH@ZH@? DATA(v0333?zC̽̌?zC@22 #< #<`jFzD OBzC̽̌?DATA0zp333? 1 12 1??2-0JDATA,-0JBOp=A0DATA,J-0CS@ffDATApP0 333??zDzDBD22FzD #<HB DATAPwPp333?DdC8CnD fCC(BDC?z?DATAhPyP333? Save ImageT PICTURESC:\SGWeb\labs\collision\data\ation\..\der\..\tents/Resources/ground.jpgndmapgmaplend hT0SRx&H&SR3-Materialodel Sing8I/`d/H DATADATA DATA0 DATA0ȎDATAȎh0<DATAh@Ȏ<DATA@ hDATA @@DATA@ ,<DATA@,DATADATAG/,DATAG/8I/DATA8I/G/DATA`FDATAF@`0DATA@/FȎDATA/4 @h0DATA4 `m/ȎhDATA`mW4 @DATAW"`m DATA"xW@ DATAx"h DATA8xȎ@DATA8@@hDATA@5 8 DATA5 @@DATA 5 ȎDATA x@DATAx8 DATA8XE/x@DATAXE/X8DATAXF/XE/G/DATAF/xXG/DATAxpI#F/@8I/DATApI#d/x8I/DATAd/pI#G/8I/DATAxU*Ȏh0?@Pף;;!S*"X"DATA"("OutputRender>DATA("@""RenderRenderF>DATA@"X"("AnimRender>DATAX"@"FormatRender>DATA(i#333?V\~CA~CA!?AFA= ADATA(i#p" 333?V\zCCHBC ?CFC= ADATAp"wp"(i#333?V\DhC?DhCC(BDC?z?mDATAp"r-p"333?V\??? ???? A??@PA Aj?c3>}GCHB? A0 B? #<C DATA-zS*p"333?V\@̌AR|B1@lA A@CC #<@DATAhS*y-333?V\/9DATAxU*xV*@  !  DATAxV*l/xU*@ hG@? JL-=-=W-X~0.\k/xW*-\DATAxW*X*OutputRender>DATAX*Y*xW*RenderRender>DATAY*Z*X*AnimRender0>DATAZ*[*Y*FormatRenderH>DATA[*&\Z*PreviewMaterial>DATA&\'\[*MaterialMaterial>DATA'\(\&\ShadersMaterial0>DATA(\)\'\TextureMaterialD>DATA)\*\(\Map InputMaterial\>DATA*\,\)\Map ToMaterial`>DATA,\-\*\RampsMaterial>&\DATA-\,\Mirror TranspMaterialH>DATA0.\wf/333?VChCCvgCC(BDC?z?DATAf/ri/0.\333?VJ>H!?)xu?i6>Pbܗ=(?^L?a?滎z?J>#xu?ܗ=Hi6>(? ?Pb^L?\FAA?4[?[!?@jG>gb>Pb>4Im>k&?]M^L<0@AzA=>Kc<2֍7&> ?:x¸A1vB,jB~@G@? JLJ>H!?)xu?i6>Pbܗ=(?^L?a?滎z?@?$$OA0 B?=Ch?j(4?t'>d DATA(i/vk/f/333?VzC AzC A #< #<`jFzD OBDATAhk/yi/333?V;SAVE FILE/usr/home/intrr/blender/blend/untitled.blendDATAl/0xV*Ȏ@U.=w=o?+=+=W+X,X@0p0DATA@0rm/333?W???h?j(4?t'>????hj(4t'?U.=w=o??OA0 B??=Ch?j(4?t'>dEh@Eh@Eh@? DATAm/wn/@0333?WDdC>9C,DeCC(BDC?z?DATA(n/vp0m/333?WzC AzC A #< #<`jFzD OBDATAhp0yn/333?W SAVE FILE/Users/ton/Desktop/der/blend/untitled.blendDATA0Hl/G/8I/e?B$?AHM+++US0DATA0rX333?W |ݕ/?U~'?3F:?>T8165e?2>Z& 4?ߕ/?7F:?81W~>85e?'?T2>ne@>M@?4z?'''䷄?K??T?v|@?l211A 4Atp>?@@FC>G ?4xB֟&BĭeA(@e?B$?AHMݕ/?U~'?3F:?>T8165e?2>Z& 4?H?N,Z#OA0 B??=Ch?j(4?t'>dA@A@A@? DATAXwX0333?W |DdC>9C,DeCC(BDC?z?DATA(XvX333?W |zC AzC A #< #<`jFzD OBDATAhyX333?W | SAVE FILE/Users/ton/Desktop/der/blend/untitled.blendDATAH0@8I/G/&=+=o?USHH0DATAHrx333?W ?3?3:-vk(4??3?3;@k(40v@?&=PU1n;+=ꉖø;ZO{:?JXA54U0AC;@j(40v@?&=+=o??3?3:-vk(4?5?5IXA0 B??=C:j(4?.vdٚ@ٚ@ٚ@? DATAxw0H333?W DdC>9C,DeCC(BDC?z?DATA(0vH0x333?W zC AzC A #< #<`jFzD OBDATAhH0y0333?W SAVE FILE/Users/ton/Desktop/der/blend/untitled.blendSRxH&SR4-SequenceH0  DATA(\/DATA(\/D/ DATAD/(\/ DATAF/D/DATAF/8DATA80F/DATA0 8DATA 0DATA DATA DATA TDATA TDATADATADATAHxD/(\/DATAx@HDATA@ xF/DATA @8DATA8 8F/DATA8'(\/0DATA' 8 D/DATA mH' 0DATAmH\* 0DATA\*xmH DATAx\*DATA$x DATA$@$ DATA@$($0DATA(p@$ DATAp80( DATA800pF/DATA0C"80DATAC"C"0DATAC"C"8DATAC"DATA0q(F/8@0(p(0(0DATA00OutputRender>DATA000RenderRenderF>DATA0(00AnimRender>DATA(00FormatRender>DATA@0w(p(333?WDhCvDhCC(BDC?z?DATAh(p(y@0333?W/9DATAq(r(00(\/D/  !  DATAr(x(q(F/88=i>o? Ev(DATAED333?W&~CB~CB ?BFB= ADATADxs(E333?W&zCAzCA  A@FB= A DATAs(rv(D333?W&????????8=i>o?fffAD&@??fffA0 B? #<C DATAhv(ys(333?W&AVE TARGA/t1.blend9DATAx( r(  8=H>o?UUU   DATAx 333?W*zCAzCA1||1 A@FB= A DATA r  333?W*????????8=H>o?fffA*@??fffA0 B? #<C DATAh  y 333?W*AVE TARGA/t1.blend9DATA  x(0 8=>o?SSST  DATA( v@,333?W.B̽̌?B̽̌? #< #<`jFzD SQB̽̌?DATA@,r  333?W.????????8=>o?fffA@??fffA0 B? #<C DATAh y@,333?W.OAD FILE/9DATA  8=i>o? 0/\ ,DATA0/\xp ,333?W1zCAzCA A@FB= A DATAp ,r ,0/\333?W1????????8=i>o?fffAD&@??fffA0 B? #<C DATAh ,yp ,333?W1AVE TARGA/t1.blend9SRxHSR5-Scriptingy(0"8,h..0& DATAy(@0DATA@0y( DATAN-@0 DATAN-8O-DATA8O-@h*N-DATA@h*h*8O-DATAh*"@h*DATA""h*DATA"0""DATA0""DATA8,,@0DATA,,8,@h*@0DATA,,,h*DATA,X,,@h*h*DATAX,,,"8O-DATA,(.X,"@h*DATA(.p.,"h*DATAp..(.""DATA..p.@h*8O-DATA.H..8O-y(DATAH...0"y(DATA..H.0"N-DATA. .."0"DATA .h.."0"DATAh. .h*N-DATA..@h*@0h* !  DATA.w+.8O-@h*""z==o?.u+..DATA..Transform PropertiesView3d>DATA..3D Viewport propertiesView3d>"DATA.ru+333?Y.|????????z==o?&A*A?z==o??????*A0 B??=C ?@?@?@? DATAhu+y.333?Y.|/9DATAw+0&.0""h*N-??Pף L`}+x+x+DATAx+Transform PropertiesIpo!>DATAx`}Ȗ, 333?Y/|pZ > =DATAȖ,{y+`333?Y/|CCx??|?DATA(y+v#Ȗ,333?Y/|zC̽̌?zC@;; #< #<`jFzD OBzC̽̌?DATA#zX{+y+333?Y/|CC|||??l|z+z+DATA,z+BOp=A0DATAX{+(|+# 333?Y/|zCCHBC|||?CFC= ADATA(|+|}+X{+ 333?Y/|?zDzDBCl||ll|zDzD=HB DATA}+&(|+ 333?Y/|BCBCl|llFzD #<HB DATA&r}+}+333?Y/|??? ???? A???PA A!O?j?}GCHB? A0 B? #<C DATAh}+y&333?Y/|/9DATA0&w+y(8O-"0"Ohh0&>-DATA0&H&Link and MaterialsEditing>DATAH&`&0&MeshEditingF>DATA`&x&H&Anim settingsObject>DATAx&&`&DrawObjectF>DATA&5-x&ConstraintsObject>DATA5-6-&EffectsObjectDATA6-7-5-HooksObjectF>x&DATA7-9-6-Particle InteractionObject>&DATA9-(:-7-SoftbodyObject>&DATA(:-@;-9-OutputRender>DATA@;-X<-(:-RenderRenderF>DATAX<-p=-@;-AnimRender>DATAp=->-X<-FormatRender>DATA>-p=-ScriptlinksScript>DATAhwh333?Y0|ChC#DhCC(BDC?z?DATAhhyh333?Y0|/9SCpSCScenetageain0`=0909܊3=*.@^.Ax8^.Ax8^.Ax8=?-#dd??< 2ddZ! ??&&????//backbuf/tmp\//ftype@&#@^@&^#D _ 2222222 DATA`=c:rDATA:c9`=.^DATA9c09:AXDATA09c9.F0DATA(?-b,d'=A@DATAL#mL?B ?o: ?? #<=DATA@&h1 RenderLayerIMtIMBlueConcrete.jpg|//..\..\..\muray\Textures\BlueConcrete.jpgjDATA j &DATA&TUPhsyXbnbp}atNXaXbkDMVR\fPRO[_^Y]`JQWDGLLKGYbiGQZXahS]g?[pU_iajoIKF//-QRMmnp:BDDMTS^dKRXdejGEFPZd.6ARZeCO[?O\BISSX^EQ]JRTTZXGHJ;EO\irXciMW`4;EHQIZbXdp\js\ir`ovVdmZhs`mu`nwWakEOXS]gTbmHU^`inT]d`gmKU_OTXgt|M]lZgzXj~Xen[jh|Wgwp}HVcFP\fr~XciR[bLYbWco[gsgq{ysUnk|O[g]gqNXbZdn_ltbmsbkpNW\mmuXciGazXfqPf{OjTboq}OgWf}s@P`CS`cmwgnvXdtitzakt[jqIV__jpuLZeZhqcq|Taj[gs_mvalnU\bo}>Zphsybrgyc{\i|dvv\qjwO_oXfoNVahqxiv[eqgqzZfrxQV\v{p{Xajt-IaQVZfquS`hgwnxP_fkzkxgxupq{`nyq]gqZfralr[gses|`mvYcmLXdr{AQar\dqTdqm{ftj{XbdP[acq|/bfp|A[rf{ohzttrt[gwN_qpzmwanv_isnyvapwvTajT^h[lvmwclsM[hoyTajOZ^[dkjinn|G]kF_s$Og{}hxwufwtXdp[dmscmvGT]szCNTbluens[ltSeqeq}bkthu~esvKaoefhV^aQ\bQcq&K_wVizdp~kwr{s]m}cq~~cpxJT]m~jxP^gQangnvcyjvx\judnzgsdqygrt_kkXekclqzlzsl|mwfv`mbqP\j_irguhr|S^d[hqJ[e`kqq|gsis|io{xlx`hsoz~[diPXZ^gnr{OYcw_hmi{o{rgtvyi{Uaq]gsQ^gtw|PW_cntkx~\r]ehov|S^dhu}[m{KYbJT]ZfrbqxdimYadaggjmrjw}Xah~>Sdq~xwsl|twcsRcsp~r}_hmVages|]hjp~dwclq\juLZer{ao|ewmzvJTS>JHhnnjuwjxaozgt}pw}vn|t}}m]iwT`lbio;FL]iuPZcMPWhel%5nvR`cXbkuv{pqv_q{mzir{R\^X]YbbbxxQ\`co{cpyn{ftrzVcvzYfv]fo`msmtz`gmwdnpistbmshqvhu}ov|ts{ps|izivUcnZbdkkirrrITZhdm|hzn|ewiu{n{W`oemxjsxajo]lsjsxZchs|W^ddour|gjslvpzn{fpqYggOXW=\QZ_}lxp|r{jyo{Xdrr{\fhjtvNY[owzgjoFKO>GLUbhakljqwcq|o{t{?P`KUWCNF`jkXafcado|mykuyhxzv`p}[gsglr\dgZdfdjhC[N]`T[edmtXis^imekwWcqmz_gjgss^hj}dloFDG:CLksr{jwgwlyhxojzco{oow{oy{PUX{rw{iqtm{HSWXjxenwlvbou>BC:?9BLUv{qvztx{SWZWamr`nwtnxspdp~]djabdlurUkybjl^ioS\arovPYXLYbVejgqzZhsjqwIPV}LUTaooaggYcdTX[W^dkr|htxTcjamy]r^k{OXaLMRcomo\bbkvzNXaMVUKTSemp.9;DP\jvcpyx=C?4@@X`bhgcX^\X^^bio]fk]ktmssp|my|UbroK]q@JS]hnox}^mrQVYX^^T]\=>@BMS{ku~woyq\b`IQSlrnLRR\[YKPS`aevptwaggeihmv{m{{rxo^gnfsydoq[a]Y[X<@?dhgXbdkx]]_irqSanr|bkpLURbjlBDAeecTSOswx_gikt}EIJ[dcDHKLQTtergkt]mz\`iXfiVbb.40RSKX]Ybdany{EIHZcjblkw|cdhJOU8<=W[\UUU[WVGHCprqbhhcccfotkopY[Z[_^]felyYfvetjwPY`biqajiMRNRTOBC>u~{jpn9;6CLIX]aHQZ^iofmsefhYXSRSN?>9OLGeecZ\[bln~~48;TZVNRQRWZxjvm~ozXbkdosv}SXRYXThbdPRMHGCUUSOPK.40&22alr8BDW`ejnmJID872YUR_\Wed`ED@EIJ_a`cccX\[OSRV`b]mzcl{brR_e\iqglr]\XUZTXZW\[V_cfab]d_[>IE_flXcgAILcmn_d`GJC_a\ihcQHCaggfa]`baq|~]][PPRIPIiwzeoy^n}}Xbk\en=GPELTDMHOTPglh?HOUX_VWReil>MTcqtJY^\gmitvX]cKMHMMEBA46EM W$[&d)d*d*d*^'^']']'\&]'^'a(`(a(EDDBA>?>@?A ) (/<LY%\&`(a(b)d)\&`(Z%W$Y%[&\&Y%`(a(FGDC@=?@>= ! $ +AN R"Z%^'`(^'X$T#O!U#S#M W$V$^'^'DECC@>?>=;  >N O!Z&Z%\&^'R"T#Q"Q"O!KT#U#^'_'DCAB@?><:9 5>DN R"U#U#T#S#P!Q"R"T#]&`(_'_'DB@=><<89 % 9?HKO!R"U#R"R"S#R"T#\&`(`(`(CDA@@<;:7 !   ! 8<BGKN R"T#[&Z%`(b)b)`(_(`(EC=?><>:8 !   %19?CFIO!R"X%^'_'`(_'`(`(a(CB@?>>=9 &    #16>CHM T#V$^'^'`(a(`(`(a(b)BA@<@>:: % !   &25:@HM O!T#[&^'_(_(`(_'b)`(B@@?>?=< $ #   "0BJV$Y%`(^'b)a(Z&]'^'^'_'`(a(`(B>>>==> ( & !   .2CEV$Y%c)c)`(_'[&^']']&]']']'_(EB@=>>= ' & "    :ALT#]'a( g+!k- i, j,_'^']'\&\&\&]'[&DA?<=A= & % # !    <EL R"^'a( i,!k, h+f+^'`([&]'Z%\&Z%\&D>?@?@< ' ' # $ !   <DBDY%^'f*e*e*d*\&[&Y%X$[&X%Y%W$B?>@>>> ' $ # !  ::??KX%e* g+d)_'\&V$T#U#V$V$V$W$D@??@> & % % # "   38722. '16?FLP!R"R"T#R"S"T#A=@<>= ( $ $ " ! !  415 & + # *0ABGKN Q"P!N P!N!;;=9:: % # " " "<;25      " '<EJIHIJI:888:: " #   79:31 +     # $ABCCCCCC655776 ! ! 8869:8/.  " #-6:=?@?>==IMtO!HIMRender ResultIMtL"O!IMTempgryl.JPG//..\..\..\muray\Textures\Tempgryl.JPGȴȴDATA  ( DATA( |~r}qff^{o}tesrtqots{{vgcd^|q~r|pzqs{wk~qxkyl||ttuzmoniy~rqqtu|yr}wkz|q~~v|{nx}sfbYeaVr|ptpdvj|tg|pu}q|tg|o}{xots}ymttxi|m}p~uppfxm~wh}r`xb_Xwn]zmymyrh}{ozv|um~vi~zopijdz{wy|oyl|rfuixk|qwwo{{sx|m~wxib[Sttl~|onnfrrjy}w{vvjQPLyjy~{ltla|tgxk{tdzmys||turi{o}n}zu~oqzwRSMrrjusyzxlttsntqhvyluqe~|p{k|yp}qwpjxxp|xl}wyvgquz~ph[vg}teuqfzwf~{xoXXPy}qzthxytuoznzff\vryzn{tvtwu{l|uwsgwob|tg{tjV[Uy{ym}ymtig[}{ym|oz{xqu{oylusk`s~rqxnyoc~ruk_ynmme~qdbVwtm^^Tlmgxtimi^yui{ug}zq~xut{n~nsvxmyl{thvwk|tgxpc~r{wuic^XvslynhZ}{n~xj{xogcXy|~~q}mw~yys~rlh_s{sfypa]XUq|vjhe\}zkzvjplatpdw||rxthzm|ozm}pzyx|pzj}r{nz|xlok_TQLvsnb^Stmche^}qJJ>zsihe`qwsy~viwsg}qu~~o|v}r|xl|tgxzmwj{wkvrfbbZnkdba\}r{uizwncb]^[The\u}q}q{{oz}ymsk^zvxzvnaxwuivjxti{sh|tg}qvslmma[[S?:6trfif]xpcgg_tjf[{wkxxn{nxzzyl}qxkvwj{|mw}qoc{uitnb}rxmqngxxpfe`zzr|yp}ypyui|titqhee]vvnwt{o|o}oxpfZx~|psoma{wlpmfwuikje~s|phe^}|wTUOtsn{|vfbY__Wpmfvzvkxuriki]zvjzvjynxkvj}styqdwob}rplc}wkli`yujts[ZUfgb~wvvlwwoed_xtigg_}rwvsmk_{o}r~q}}nv~z}zq{pusgmi]vx|xl{{uiqmbVWRxpe}wkqngw}ywkmma{uszyy~wgtl_x|nsoc|xl}vl}te|m|gd]}}s{tcc[sodmi^xtkvzrsnwzxyz{pxiwhtwyyvwjvsjs{~xvjvrgwobnkb`_]w{xossk{wz{}zv~~{ntzywk|s~yst~|u|ypqmaqngcd\yyy}~v~x{uiwwzmst}pyj~xwuri~xl}nw}}z~r|uklmh}}mkkauw|x}{uylxkusfKH?XULywk|l|}nsy{rcwz{yl]ZSff^uxsw}uux~rssixtkuuk{m}rtrfvl}qxt}|mv~ymyzkole~{rlfXss~zozxltrftmcw{o|p}tcd^xul}{otvncwma{|}p~vi||o^uuxnbtk\~th{o~rd|mzk{xkvxtnl_qqiui`Y|ypuiyrh\[Vzthzxk~zny}m{ym|pvrfztdvgwh|rfyqdxuf|put}nvyuiyuwk~ptyqfu{|znpnbxo{pusg~viuzyiox~rd{l}k}wi~th|wj}nu|owv{oyui|sd}sguvlsmaxyoyotxndwobjh\}p}qvq~q{{lzm~vi~qswhxi}nzymu}pz{shvnazuriwjr}wk{ozvj|timi]uyuiwsylwgl~q{num`{~o{rczqb}nvgrh\~q~rvthzvkzm~znwpfsk`yl}uhwsgwj}ujxth}|ypyjzdwwh|ourkzmv~qyj}n}p{ovqv{|stqjVSLpl`qmb|qu~|pxpc|l|xlwjh\}tt{|n}yp\ZNrnclj^}yn{p~r}rv|}}q~znkg\rl`qsvph]zmwsj|nefawtxteee}ovj~rru~q{kvvny~vx}wksm_yjs}tetux{sf|wj~znrrhxIMtL"IMwalls.jpgC:\SGWeb\labs\collision\data\wallsX&X&DATA  @/0DATA@/0XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXiiijjjjjjjjjkkkkkkkkklll761+)%,,*XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXkkklllllllllmmmmmmnnnnnn01-%%#0.*0/,XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXllllllmmmmmmnnnnnnnnnooo..,21,10+!!XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXkkkkkkkkkllllllmmmmmmnnn2/*))&/.*XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXiiiiiiiiijjjjjjjjjkkkkkk/,'$#*'$(%!('#&%"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXfffggggggggggggggghhhhhh.-* '%")'#%#(&#XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXddddddddddddeeeeeeeeeeee,+(*($!%$""!XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXbbbbbbbbbbbbbbbbbbbbbccc,)%#!%%!%$ +*&mmmiiijjjwwwXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   *)%mmmeeegggrrr{{{XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  ,,)))'''%lllddddddlllwww|||XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ,,(''""")&#))%mmm___]]]gggpppyyy|||XXXWWWWWWWWWXXXXXXXXXWWWXXXXXXXXXXXXXXXXXXXXXXXX"!%%",)%+(%$$"-+(0.*lllYYYZZZaaakkkqqqvvv{{{WWWXXXWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX! nnnUUUVVVZZZdddiiippppppXXXXXXXXXXXXWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX$"%#sssPPP(((TTT[[[***,,,555XXXXXXWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXrrr...------,,,///000;;;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\\\]]]___bbbhhhrrrxxxlllBBB222>>>DDDDDDHHHHHHKKKXXXXXXXXXXXXXXXXXXXXXXXXLJBXSJ[VNIF>\\\]]]___bbbgggooossskkk///,,,...333888;;;???CCCXXXXXXXXXXXXXXXXXXXXXXXXZYPYTKSNBQLE\\\]]]___bbbfffmmmpppiii...+++---000222888999???XXXXXXXXXXXXXXXXXXXXXXXXWQHRMDMKEUPH\\\]]]^^^aaaeeekkkmmmhhh111,,,***,,,333666888===XXXXXXXXXXXXXXXXXXXXXXXX]YP[VMKE=WTM\\\]]]^^^aaadddiiijjjggg000+++)))---222666:::===XXXXXXXXXXXXXXXXXXXXXXXX[UL`ZPTOFTQH\\\]]]^^^aaadddggghhheee///+++''',,,333999;;;???XXXXXXXXXXXXXXXXXXXXXXXX`ZQf`VTOGOLE\\\]]]^^^```cccfffgggddd111+++(((444666<<<<<DB=B B@?LA$LALamp ?????A4B>??? B4B?@@???WO(aWOWorld???===??A@pA A?L= TXhx+pZ TXprocessing_export.py8`,  @V XtDATAC:\processing_export.pyDATA8ν)EEDATAȮ8` FREEDATAȮ FREEDATAXȮ,FREEDATAX8DATAXI extDATA07FREEDATA0x6FREEDATAx0x4FREEDATAx3FREEDATAPFREEDATAPJFREEDATAPFREEDATA(-FREEDATA((FREEDATA(p(XJ3FREEDATAp(J%FREEDATAp2DATAHM:DATAH9#FREEDATAH09#FREEDATA KFREEDATA hFREEDATAh derDATAh`K(1)DATA@8#FREEDATA@x40)[DATA@DATAW FREEDATA`2#0)DATA`K()DATA`L(0)DATA8FREEDATA8hL%0)DATA8Le DATAMps:DATAXMFREEDATAXDATAX0NFREEDATA0xN3: DATA0xor:DATAx0H/#ry DATA xNEFREEDATA P 8O=FREEDATAP   O=ghtDATA  P -#FREEDATA (! P=FREEDATA(!p! P9()DATAp!!(!P:FREEDATA!"p! FREEDATA"H"!)#FREEDATAH"""hQFREEDATA""H"QDATA" #"QL";DATA #h#"@RFREEDATAh#X) #RFREEDATAX))h#RFREEDATA))X)SREEDATA)0*)`SFREEDATA0*x*)SREEDATAx**0*SFREEDATA*+x*8TFREEDATA+P+*T*EEDATAP+++TDATA++P+U#DATA+(,+#DATA(,p,+hU!DATAp,,(,#DATA,-p,U!DATA-H-,P#DATAH---V!DATA--H-#DATA- .-pV!DATA .h.-#DATAh.. .V!FREEDATA..h.H#FREEDATA.@/. W!FREEDATA@//. #FREEDATA//@/FREEDATA/0/(LFREEDATA0`0/H0FREEDATA`0000 #FREEDATA00`00$DATA0810 #DATA81109DATA1181#DATA121UDATA2X21UDATAX2220DATA22X200DATA2032PDATA03x32x01DATAx330386DATA34x3c DATA4P43DATAP4440 FREEDATA44P4pfFREEDATA4(54@FREEDATA(5X14P#FREEDATAX11(580FREEDATA11X1 #FREEDATA10210FREEDATA02x21FREEDATAx2202ȿ0FREEDATA23x20DATA3P32X0DATAP3330DATA33P30DATA3(4300DATA(4p43V DATAp44(4p#DATA45p4x0DATA5H54"FREEDATAH5550,FREEDATA55H5 0'FREEDATA5 65x0FREEDATA 6h650(FREEDATAh66 6 00FREEDATA66h60*FREEDATA6@7600FREEDATA@776P0(FREEDATA77@702FREEDATA7870)FREEDATA8`87x0-DATA`8880(DATA88`880/DATA88980)DATA89980-DATA9989DATA9:9`"DATA:X:9X0%FREEDATAX:::0[FREEDATA::X:@07raDATA:0;:`HrbDATA0;x;:0CFREEDATAx;;0;h"DATA;<x; 04DATA<P<;0EDATAP<<<0DATA<<P<DATA<(=<DATA(=p=<DATAp=((=H0FDATA(pp=0FDATAp(X,*DATAp DATAH DATAHDATAHDATA ,DATA hhDATAh p DATAh,(DATA@ FREEDATA@FREEDATA@`, FREEDATAp FREEDATA`X FREEDATA`,FREEDATA`,'FREEDATA8X,^FREEDATA8,bFREEDATA8,aFREEDATA,^FREEDATAX,0FREEDATAXЍ!oFREEDATAXFREEDATA0HFREEDATA0x FREEDATAx0pFREEDATAxX FREEDATAP,FREEDATAPEFREEDATAPX,/FREEDATA(,FREEDATA(pDATAp(,(FREEDATApJFREEDATAHXFREEDATAH,%FREEDATAH@,FREEDATA 1FREEDATA h FREEDATAh FREEDATAhFREEDATA@,7FREEDATA@FREEDATA@)@ FREEDATA@))TFREEDATA)г)@),0FREEDATAг)))X,;FREEDATA)`)г)`FREEDATA`)))7/FREEDATA))`)6FREEDATA)8))ȿ,FREEDATA8))),,FREEDATA)ȵ)8)x,$FREEDATAȵ)))8FREEDATA)X)ȵ),.FREEDATAX)))0,FREEDATA))X),FREEDATA)0)),$FREEDATA0)x)) ,*h DATAx))0) tryDATA))x), 0: DATA)P)),.cameDATAP)))0,70,-1DATA))P)ocZ+DATA)())`(p, DATA()p)),;p();DATAp))(),'\\'DATA))p)h?DATA)H))0m?DATAH)))h?DATA)غ)H)P,ckgrDATAغ) ))fw, GDATA )h)غ) fa.DATAh)) ), == DATA))h)a().DATA)@)), mageDATA@)))8,0,-1DATA)м)@)pg ShadDATAм)))- lisDATA)`)м),!ocY+DATA`))),"ocZ-DATA))`)x(p,DATA)8))8,not DATA8)))matrDATA)Ⱦ)8),0imagDATAȾ)))   end(DATA)X)Ⱦ),&extuDATAX))) DATA)pXX)P ay fDATApXX) "DATAXYpX &DATAYHYXPDATAHYYYH DATAYYHY DATAY ZYFREEDATA ZhZYFREEDATAhZZ Z FREEDATAZZhZ( DATAZ@[Zp  = fDATA@[[ZhDATA[[@[ DATA[\[ 1DATA\`\[p nWidDATA`\\\ MatrDATA\\`\ax[2DATA\8]\  diusDATA8]]\DATA]]8]`n4DATA]^]XDATA^X^]DATAX^^^DATA^^X^VDATA^0_^xEDATA0_x_^at =DATAx__0_d priDATA_`x_ory DATA`P`_DATAP```0  DATA``P`DATA`(a`DATA(apa`Pne.GDATApaa(aXory DATAabpa1DATAbHbaDATAHbbb`DATAbbHb$DATAb cb3DATA chcbX" DATAhcc ct DATAcchcoDATAc@dcDATA@ddcDATAdd@dPDATAdedWDATAe`ed FDATA`eeeDATAe`eDATAeDATA0DATA0xpL#oDATAx0pDATAxDATAPDATAPWDATAPFDATA(DATA(pDATAp( DATApDATAHDATAHp DATAH2DATA DATA hDATAh @DATAhH8DATA@DATA@/DATA@DATA`*DATA`  DATA`.sizDATA`DATA8 DATA8h"DATA8DATAF DATAX0d1] +DATAXpj[1] DATAX`[1] DATA0.  DATA0xDATAx0XADATAxЁeXDATAPhPDATAP,DATAP[1] DATA(07-ODATA(p@07-ODATAp(18-ODATA p06-ODATA H 0DATAH   x謞DATA  H 1DATA   (DATA ( pndDATA(p retuDATAp(DATApHDATAHDATAHex) DATAرH0DATAر xDATA hرx DATAh FREEDATAhPDATA@HDATA@DATAг@DATAгh* w DATA`г6DATA` KDATA`P&DATA8# +EDATA8DATAȵ8HDATAȵFEDATAXȵDATAX0FREEDATAXxDATA0()) DATA0x\DATAx0x!DATAxЋKDATAP([FREEDATAP us?DATAPhDATA(DATA(p(_by_DATAp(Xix(fDATAp,DATAHDATAHe(0)DATAغHP DATAغ P@zersDATA hغ(M(minDATAh ȎQ'['+DATAh[2])DATA@DATA@ DATAм@FREEDATAм8FREEDATA`мhDATA`PDATA(,`tDATA(,p,DATAp,,(,DATA,,p,N `DATA,H,,g DATAH,,, DATA,؁,H,O DATA؁, ,,?DATA ,h,؁,x#DATAh,, ,8?DATA,,h,DATA,@,,PDATA@,,,xDATA,Ѓ,@,P `DATAЃ,,,P unceDATA,`,Ѓ,tonHDATA`,,,FREEDATA,,`,Q DATA,8,, waysDATA8,,,Q DATA,ȅ,8,ؾDATAȅ,,,8R xtEDATA,X,ȅ,R $FREEDATAX,,, FREEDATA,,X,R DATA,0,,X ]) +DATA0,x,,P + '|DATAx,,0, S DATA,,x,pS 8FREEDATA,P,, DATAP,,,S DATA,,P, IIDATA,(,,(T 8DATA(,p,,pT DATAp,,(,` DATA,,p,T DATA,H,,O-DATAH,,,h DATA,؊,H,U DATA؊, ,,H DATA ,h,؊,0 DATAh,, ,0DATA,,h,XU DATA,@,, D" DATA@,,,hDATA,Ќ,@,DATAЌ,,,U DATA,`,Ќ,zDATA`,,U DATAνimport BlenderEDATA `import osDATAimport structEEDATA,from Blender import *EEDATA8from Blender import Lamp1%DATA$Ifrom Blender.Scene import RenderDATA7from Blender.Draw import *DATA6from Blender.BGL import *DATA x4from Blender import Registry)EDATA3from Blender import TexttryDATADATAJfrom math import *DATA DATA -#globalsx =DATADATA4XJ#get the root directory that the current file is inDATA(J#we'll write the muray files there. EEDATA 2path = Blender.Get('filename')EDATAMtokens = path.split('\\')EEDATA9#fileName = tokens.pop();REEDATA09#file = fileName.split('.')DATAKfileName = file[0]DATADATA path =''ts DATA`Kfor i in tokens:),DATA8# path = path + i + '\\' EEDATAx4 DATADATAWdef export():EDATA2# #open a file to export toEDATA,K f = open(path + fileName + '.mra','wb')DATA,L s = open(path + fileName + '.mrb','wb')0 DATA DATA(hL f.write('muRay scene description\n')DATAL f.write(' ')DATAM def writeln(out):DATAM f.write(out + '\n')EEDATA DATA0N def fmt(input):1DATAxN return '%5.4f' %inputDATAGDATAH/# def point_by_matrix(p, m):DATAHN return [p[0] * m[0][0] + p[1] * m[1][0] + p[2] * m[2][0] + m[3][0],EEDATA@8O p[0] * m[0][1] + p[1] * m[1][1] + p[2] * m[2][1] + m[3][1],gDATA@O p[0] * m[0][2] + p[1] * m[1][2] + p[2] * m[2][2] + m[3][2]]EEDATA -# def vector_by_matrix(p, m):DATA@P return [p[0] * m[0][0] + p[1] * m[1][0] + p[2] * m[2][0],EEDATA<P p[0] * m[0][1] + p[1] * m[1][1] + p[2] * m[2][1],EEDATA<P p[0] * m[0][2] + p[1] * m[1][2] + p[2] * m[2][2]] DATA  DATA )# def contain(min, max, point):DATAhQ for v in point:DATAQ if v[0] < min[0]:;DATAQ min[0] = v[0];DATA@R if v[1] < min[1]:)DATAR min[1] = v[1] DATAR if v[2] < min[2]:lenDATAS min[2] = v[2]DATA`S if v[0] > max[0]:REEDATAS max[0] = v[0]ndDATAS if v[1] > max[1]:EEDATA8T max[1] = v[1]DATAT if v[2] > max[2]:DATAT max[2] = v[2] DATA$U def containSphere(min,max,sphere):DATA # radius = sphere.getSize()[0]DATA$hU if min[0] > sphere.LocX-radius:tDATA # min[0] = sphere.LocX-radiusDATA$U if min[1] > sphere.LocY-radius:(DATA P# min[1] = sphere.LocY-radiusDATA$V if min[2] > sphere.LocZ-radius:)DATA # min[2] = sphere.LocZ-radiusDATA$pV if max[0] < sphere.LocX+radius:')DATA # max[0] = sphere.LocX+radiusDATA$V if max[1] < sphere.LocY+radius:l)DATA H# max[1] = sphere.LocY+radiusDATA$ W if max[2] < sphere.LocZ+radius:))DATA # max[2] = sphere.LocZ+radiusEDATA DATA(LDATAH0 #Grab the sceneDATA0 # scn = Scene.GetCurrent()DATA(0 context = scn.getRenderingContext()REEDATA # obj = Blender.Object.Get()DATA9 DATA# #export general scene dataDATAUDATAUDATA0 #background colorDATA00 w=Blender.World.Get()DATAPDATA4x0 scene = Blender.Scene.GetCurrent().getChildren()EEDATA86DATAc writeln('')EEDATA DATA$0 #create the baked textures listDATApf baked_maps=[]EDATA@ DATAP# #create a materials list%DATA80 material_array =[]DATA # materials = Material.get()DATA0 for m in materials:REEDATA DATAȿ0 refFile = "NULL";DATA0 textureFile = "NULL";DATAX0 alphaFile = "NULL";DATA0 normalFile = "NULL";DATA0 emitFile = "NULL";DATA00 specFile = "NULL";DATAV REEDATA p# for mtex in m.getTextures():EDATAx0 if mtex: DATA " #check if there is an imageDATA00 if mtex.tex.type == Texture.Types.IMAGE:DATA( 0 print mtex.tex.image.getFilename()DATAx0 #map to colorDATA,0 if mtex.mapto == Texture.MapTo.COL:ileDATA4 0 textureFile = mtex.tex.image.getFilename()REEDATA,0 if mtex.mapto == Texture.MapTo.ALPHA: DATA40 alphaFile = mtex.tex.image.getFilename() REEDATA,P0 if mtex.mapto == Texture.MapTo.NOR:NULDATA40 normalFile = mtex.tex.image.getFilename() EDATA,0 if mtex.mapto == Texture.MapTo.EMIT:EDATA0x0 emitFile = mtex.tex.image.getFilename() DATA,0 if mtex.mapto == Texture.MapTo.REF:v[1DATA080 refFile = mtex.tex.image.getFilename() DATA,0 if mtex.mapto == Texture.MapTo.SPEC:[1DATA00 specFile = mtex.tex.image.getFilename()ndDATA DATA `" print m.getDiffuseShader() DATA(X0 material_array.append(m.getName()) EEDATA\0 writeln('shad=' + str(m.rgbCol) + '|' +str(m.getRayMirr()) + '|' + str(m.getHardness()) +DATA8@0 '|' + str(m.getAlpha()) +'|'+ str(m.getIOR()) +'|'+DATAL` str(m.getSpec())+'|'+ str(m.getEmit())+'|' + str(m.getRef()) + '|' + ''DATAD0 str(m.getDiffuseShader()) +'|' + str(m.getSpecShader()) + '|' +DATA h" str(m.getSpecCol()) +'|' +cDATA8 0 str(textureFile) + '|' + str(alphaFile) + '|' + REEDATAH0 str(normalFile) + '|' + str(emitFile)+'|' + str(refFile) + '|' + EEDATA0 str(specFile)DATADATA ) DATADATAHH0 #while looping through the scene, we will need to collect the maximumEDATAH0 #extents of the scene. These will be written to the head of the fileEDATA,X, #after all mesh objects have been measuretDATA  min = [1e300,1e300,1e300];DATA  max = [-1e200,-1e300,-1e300];]DATA numObjects = 0DATADATA, for obj in scene:DATAhDATA p  if obj.getType() == 'Camera':DATA,, cam_mat = obj.getMatrix('worldspace')ns:DATA  print 'Exporting camera'DATA DATA$`, height = context.imageSizeY()\n'DATA p  width = context.imageSizeX()DATA X  lens = obj.getData().lens DATA, fov = lens; DATA(, writeln('cam=' + str(camType.val) + DATA`X, '['+str(cam_mat[0][0]) + ',' + str(cam_mat[0][1]) + ',' + str(cam_mat[0][2]) + ']' + '|' +EDATAd, '['+str(cam_mat[1][0]) + ',' + str(cam_mat[1][1]) + ',' + str(cam_mat[1][2]) + ']' + '|' + "DATAd, '['+str(-cam_mat[2][0]) + ',' + str(-cam_mat[2][1]) + ',' + str(-cam_mat[2][2]) + ']' + '|' +DATA`, '['+str(cam_mat[3][0]) + ',' + str(cam_mat[3][1]) + ',' + str(cam_mat[3][2]) + ']' + '|' +EDATA4, str(width) + ',' + str(height) + ']' + '|' +REEDATApЍ! str(fov) + ',' + str(fov) + ']' + str(obj.getData().getClipStart()) + '|' + str(camRadiusSlider.val) + '|' DATA )EEDATAH DATA   elif obj.getType() == 'Lamp':DATAp print 'Exporting Lamp' DATA X  l=Lamp.Get(obj.getName())DATA, m = obj.getMatrix()EDATAE if l.getType() == 0: DATA0X, #lamp=location,color,size,energy for a lampDATA, writeln('lamp=[' + str(obj.getLocation()) + ']|['+ str(3*l.getEnergy()*l.col[0]) +','+ str(3*l.getEnergy()*l.col[1]) + ','+str(3*l.getEnergy()*l.col[2]) )DATA elif l.getType() == 1:DATA,, #sun=location,color,energy,directionrEDATA J print 'Exporting the sun'irDATAX _DATA(, vec = vector_by_matrix([0,0,1],m)@DATA@, print str(vec)DATA1 writeln('sun=['+ str(vec) + ']|[' + str(3*l.getEnergy()*l.col[0]) +','+ str(3*l.getEnergy()*l.col[1]) + ','+str(3*l.getEnergy()*l.col[2]) )DATA  REEDATADATA  elif obj.getType() =='Surf':fDATA8, material_index = material_array.index(obj.getName())DATADATA  containSphere(min,max,obj) DATAT DATA4, writeln('sphere=[' + str(obj.getLocation()) +REEDATA<X, ']|['+ str(obj.size[0]) + ']|['+ str(material_index))DATA` DATA 7/ elif obj.getType() == 'Mesh':DATA6 DATAȿ, #get standard mesh dataDATA0, m = NMesh.GetRawFromObject(obj.getName())DATA(x, mat = obj.getMatrix('worldspace'))mDATA8 EDATA0, #for every mesh, we dump a list of verticesDATA0, numverts = len(m.verts)DATA, numTris = 0 DATA(, print 'verts ' + str(numverts) )DATA, , writeln('numverts=' + str(numverts)) DATA EEDATA , for i in range(numverts): DATA0, x,y,z = point_by_matrix(m.verts[i].co,mat)DATA80, writeln('v=' + fmt(x) + '|' + fmt(y) +'|' + fmt(z))DATA DATA` DATA<, #iterate through faces - then split faces into trianglesDATA, faces = m.faces'DATAh DATA 0m #lastWDATAh DATAP, lastUVTexture = 0FERDATAf lastidx = 0;DATA DATA, for fa in faces:DATA REEDATA$, #each face may have an imagear.DATA 8, if str(fa.image) == 'None':DATApg idx = -1EEDATA - else:DATA$, #is this image the last one?seDATA$, if lastUVTexture == fa.image:EDATA EDATA8, idx = lastidxDATA EEDATA4, #different texture, have we seen it before?REEDATA   try:DATA(, idx = baked_maps.index(fa.image)EDATA  #create new entry DATAP  except ValueError:DATA$  baked_maps.append(fa.image) EDATA(  idx = baked_maps.index(fa.image)DATAP EEDATA H  lastUVTexture = fa.imageEDATA  lastidx = idx;DATA EDATA REEDATA  if len(fa.v) == 3: DATA(  numTris += 1 mDATAp  numObjects+=1mDATAh EEDATA  #check for uv coordinatesDATA4  #there has got to be a better way to do thisEEDATAp  if len(fa.uv) == 0:DATA  zers=[0,0];bjDATA  fa.uv = [zers,zers,zers];DATA  gDATA ar.DATAp` trans = [point_by_matrix(fa.v[0].co,mat),point_by_matrix(fa.v[1].co,mat),point_by_matrix(fa.v[2].co,mat)]DATAX contain(min,max,trans)DATA EEDATA writeln('t=' + DATAX str(fa.v[0].index) + '|' + str(fa.v[1].index) + '|' + str(fa.v[2].index) + '|' + EDATAHx str(material_array.index(m.materials[fa.mat].getName())) + '|' +EDATA fmt(fa.uv[0][0]) + '|' + fmt(1-fa.uv[0][1]) + '|' + fmt(fa.uv[1][0]) + '|' + fmt(1-fa.uv[1][1]) + '|' + fmt(fa.uv[2][0]) + '|' + fmt(1-fa.uv[2][1]) + '|' + )DATAd str(idx)EEDATA )DATA DATA 0  else:DATA numTris += 2 DATA numObjects+=2eDATAP EEDATA X #check for uv coordinatesDATA4 #there has got to be a better way to do thisEEDATA if len(fa.uv) == 0:DATA` zers=[0,0];^DATA( fa.uv = [zers,zers,zers,zers];oDATA3 DATA X" DATA t try:QDATAp trans = [point_by_matrix(fa.v[0].co,mat),point_by_matrix(fa.v[1].co,mat),point_by_matrix(fa.v[2].co,mat)]DATA  contain(min,max,trans)DATA DATAP writeln('t=' + DATAX str(fa.v[0].index) + '|' + str(fa.v[1].index) + '|' + str(fa.v[2].index) + '|' + DATAH  str(material_array.index(m.materials[fa.mat].getName())) + '|' +EDATA fmt(fa.uv[0][0]) + '|' + fmt(1-fa.uv[0][1]) + '|' + fmt(fa.uv[1][0]) + '|' + fmt(1-fa.uv[1][1]) + '|' + fmt(fa.uv[2][0]) + '|' + fmt(1-fa.uv[2][1]) + '|' + DATA str(idx)EDATA )DATA _eDATAppL# trans = [point_by_matrix(fa.v[2].co,mat),point_by_matrix(fa.v[3].co,mat),point_by_matrix(fa.v[0].co,mat)]DATA p contain(min,max,trans)DATA EDATA writeln('t=' + DATAX str(fa.v[2].index) + '|' + str(fa.v[3].index) + '|' + str(fa.v[0].index) + '|' + DATAH str(material_array.index(m.materials[fa.mat].getName())) + '|' +EDATA fmt(fa.uv[2][0]) + '|' + fmt(1-fa.uv[2][1]) + '|' + fmt(fa.uv[3][0]) + '|' + fmt(1-fa.uv[3][1]) + '|' + fmt(fa.uv[0][0]) + '|' + fmt(1-fa.uv[0][1]) + '|' + DATA str(idx)EDATA  )DATA DATA DATAp except:0DATA4 print 'caught quad exception on ' + str(fa) EDATADATA DATA@ DATA<H #if the background is set pass that in, else pass colorsDATA if Background.val:DATA0 writeln('bgimage=' + str(BackgroundText.val))DATA else:DATA,` writeln('bgcolor=' + str(w[0].getHor()))DATA  exDATA  #write out the baked texturesADATApriDATA for tex in baked_maps:DATA$h s.write('b=' + str(tex) + '\n') DATA DATA #done with the scene rDATA 0d f.closev_SDATA pj s.close_DEDATA` DATA.def render():EEDATA  spawnPath = path + fileNameDATADX os.spawnl(os.P_NOWAIT,executable,'foo ' + path + ' ' + fileName)0]DATAhЁ #os.spawnl(os.P_NOWAIT,"/home/sheemwaza/base/optimized/src/base","monkey","/home/sheemwaza/out.mra")DATATh #retcode=Popen(["/home/sheemwaza/base/src/base","/home/sheemwaza/out.mra"]).pidDATA, print 'no op'EDATADATAmSampleSlider = Create(0)DATA@camRadiusSlider = Create(1)DATAimageSamples = Create(1)DATAshadowSamples = Create(4)DATA0muonSlider = Create(0)EDATAxMuon = Create(0)DATA4BackgroundText = Create('using background color')yDATA(Background = Create(0)DATApnumSample = Create(4)DATAhemiToggle = Create(0)DATAcamType = Create(1)DATAHiCacheToggle = Create(0)DATAsamplerWindow = Create(1)DATAGIWindow = Create(0)DATA0partOutput = Create(0)DATAxbounce = Create(0) DATAfilterWidth = Create(0)DATAjitter = Create(0)EDATAPsbackground = Create(1)DATAHP"DATAmaterialsDrop = Create(0)DATA %DATA h*def draw():DATA8 global mSampleSlider, muonSlider, Muon,BackgroundTextDATAL  global Background, numSample, hemiToggle, bounce, ExitButton, iCacheToggleDATA(P global Button2, camType, exportButtonDATA$ global imageSamples, shadowSamplesDATA global camRadiusSliderDATA H global samplerWindow, GIWindowDATA global partOutputDATA global filterWidth, jitterDATA0 global sbackground REEDATAx DATA[0]DATA\al)DATA$x glClearColor(1.0, 1.0, 1.0, 0.0)ryDATA Ћ glClear(GL_COLOR_BUFFER_BIT)DATA([DATA  leftMargin = 10;DATAh bottomMargin = 15;DATA columnWidth = 170;DATA, buttonWidth = columnWidth - leftMargin;DATAX columnHeight = 35;DATA0 buttonHeight = columnHeight - bottomMargin;DATA*DATA  #always display these buttons1DATAPDATADP Button('Exit', 3, leftMargin, 5, buttonWidth, buttonHeight, '').blDATAP( Button('Export', 1, leftMargin+columnWidth,5, buttonWidth, buttonHeight, '')DATATȎ Button('Render', 2, leftMargin+ 2*columnWidth, 5, buttonWidth, buttonHeight, '')leDATA DATA camType = Menu('Camera Model%t|Perspective %x1|Spherical %x2|Architecture %x3|DOF %x4', 5, leftMargin, 5*columnHeight, buttonWidth, buttonHeight, camType.val, 'Select which type of camera to use.')2DATA  imageSamples = Slider('Image', 11, leftMargin , 6*columnHeight, buttonWidth, buttonHeight, imageSamples.val, 1, 20, imageSamples.val,'')]DATA shadowSamples = Slider('Shadow', 12, leftMargin + columnWidth, 6*columnHeight, buttonWidth, buttonHeight, shadowSamples.val, 1, 20, 1,'') DATA8DATAh DATAP #these are the GI settingsDATAx #Background = Toggle('Set Background', 7,leftMargin, 4*columnHeight, buttonWidth, buttonHeight, Background.val, '')DATA DATA DATAN  sbackground = Menu('Background%t|Uniform %x1|CIE Clear Sky %x2|CIE Overcast %x3|Sky Model %x4', 102, leftMargin, 3*columnHeight, buttonWidth, buttonHeight,sbackground.val, 'Set Background')DATA DATADATAO  numSample = Slider('Samples', 6, leftMargin + columnWidth, 2*columnHeight, buttonWidth, buttonHeight,numSample.val, 1, 64, 4, 'The number of hemisphere samples.')DATADATAx# bounce = Slider('Bounce', 0, leftMargin + 2 * columnWidth, 2*columnHeight, buttonWidth, buttonHeight, bounce.val, 1, 5, 0,'') DATA8 DATA if Background.val == 1:DATAP BackgroundText = String('', 6, leftMargin + columnWidth, 4*columnHeight, buttonWidth, buttonHeight, BackgroundText.val, 512, '')DATAx DATAP  if camType.val == 4:DATAP  camRadiusSlider = Slider('Radius', 0, leftMargin + columnWidth, 5*columnHeight, buttonWidth, buttonHeight, camRadiusSlider.val, 1, 20, 1,'')EDATAgloDATA 0.0DATAQ def setBackground(fname):DATA print fnameREEDATAQ  BackgroundText.val=fnameDATAateDATA8R def event(evt, val):e dDATA(R  if (evt== QKEY and not val): Exit()REEDATA &DATAR def bevent(evt):EaDATAX DATAP !DATA S  if evt == 7: #setBackgroundDATA<pS  Blender.Window.FileSelector(setBackground,'OPEN FILE')ADATA (DATAS  elif evt == 10:lDATA  ?DATA(T  print 'Materials'DATApT  Blender.Redraw()DATA`  DATAT  elif evt == 3: #ExitButtonDATA O- Exit()DATAh DATAU  elif evt == 2: #Button2REEDATA H export()DATA 0 render()DATA0DATA XU  elif evt == 1: #exportButtonDATA D" export()DATAh REEDATA else:DATAU  Blender.Redraw()DATAz _DATA U Register(draw, event, bevent)TXhpZ x+TXText[ [ [ [ P[ DATA[ ({EERFDATA({OB 0[OBCameraamera.001 ^.Ax8`?`?`?*?91<"P???b'?#?>﨎t>4;I?.?? $>^.Ax8??????؈Da0?ݲ&P0?4`X3³?OBd??)d??>)d?????OB [0OBCube.002N0Q.@ Ϯ@y{JdAO"@`?? ?Ʋ??1=Aم?]*4{@R2`Ck3.@ Ϯ@y{?????$=M]>+TX[c>9:<{>2?_>U*@CA?DOBd?? #=?>=??@???} {yDATAQOB [XOBLamp UjA 8@`?`?`????`?YW3`?`YW3UjA 8@????? G?&I+Tx?9>?Z?2??R?DOBd?? #=?>=??@???OB X[OBPlane@R0xS @-XQm1LA@@\  ?Ʋ??8)A ?qO3@_6?ue#? @-XQ?????J`8=N >{(>;ul=}>1k<k F>>$bk@?DOBd?? #=?>=??@???=`0/yDATAxSMAH& 0MAMaterial01>?Zbo>??????????L????AA ????????@?=?==???0????L?L?L?L==ff????DATAx0??????????L>MA 0&c!HMAMaterial.001 1? 1? 1???????????L?????2AA ????????@?=?==???????L?L?L?L==ff????MAc!& 0MAMaterial.005L?L?L???????????L?????2AA ????????@?=?==???@????L?L?L?L==ff????DATAx@H??????????L>TE"TETexx>@???????@@????? @ ??<dg"DATAg" ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????TEH"xTETex.002z>@???????@@????? @??<dMEN02@R0(MECube.002XX"-p'x&M!W- @$3L.1,=@?%?,=@DATAX" 0c!DATA,Wx&DATAx&8??II?I?I???III??II?I??II??,=LAII?,=LAI,=LA?,=LAI??,=lAIII? ,=lAII,=lAI?,=lAII,c{@w=&<@U~K WHK@d̶li|s@Y)bY?G ?@X4I"ZfD>C Awq,y - AD&@DATA,-M!DATAM!5$############ # # # # # ## # # # # #############DATA,-UVTexp'DATAh-4          DATAp'<~>4:4:4:4:~>~>~>L"~>4>4:4>4:|>~>|>L"|>4:4>4:4>~>|>~>L"|>4>4>4>4>|>|>|>L"f??4>A?4>A?|>f??|>L"f??4:A?4:A?~>f??~>L"|>A?4>A?4>f??|>f??L"~>A?4:A?4:f??~>f??L"f??A?A?A?A?f??f??f??L"f??A@?A?A@?A?f?f??f?L"|>A@?4>A@?4>f?|>f?L"~>A@?4:A@?4:f?~>f?L"f_?~>f_?4:A@?4:A@?~>L"f?f_?f?A@?A@?A@?A@?f_?L"f_?A?A@?A?A@?f??f_?f??L"f?h>A`?h>A`?~>f?~>L"f?|>f?4>A@?4>A@?|>L"f_?4>A@?4>A@?|>f_?|>L"ME@R02N0MEPlaneMh0_($b& H@! @4TX=??e>-DATAMHDATA,($DATA8!??2T> :?=AEzR;Q f~?|;^#@4?@s4=M1t34/]=R ]>Ԫ= /MQ?>>y?'?x??R>Dz?Y xk!>~? 位%szP4.TGi4?`v̓J?@3& (1y&V>.`q? ,?? >.>^8E>^7q?>fњQd@?>H@=;١Qx=My???1T>R b~?>;=]Fz?@(?'x@??2T>[U~>?Rr<lH^??׽&y?Yx?=+r}=1%iz@?׽8"_y >X{R&!v?x4[1;o(4, OT`3>g&E67k 4@?8E.O>3=K=Ch@?2v;nw3k>}?DҔ=#+o??.VA}#z@?SW^|?f^Bu>8J51Xt>?>3sC?@?ȿR>3$Fo@?>>7ڞx?>} 4y@E>%U:7n7=4t fm>O@}?T>`UG]>H=,j|s?@:/>l8n@?>9Kc?? ~?@?%?py@?:* ?>C *t>L^7-s>@?,)>]lQ@?@? T>,|>>{l|@?>T=z?=A-w>8rk@?R>qa?==jƌp>u7&>& y@?>8W9Lc>?l< ~@?@y"~`? ?>=F7z`2=9i ֲ=:J{G=+MjO*<;|?_?$^> ??:>{?>m=,~Ny?=r<|?`?  ~?P2z86s?e  `??$^>  ??:>ܱz>?Tצ=:n >?x(ܸ)-b_?}y?x?x?佯Mx_"u=!;֋s>ym=Y g.v8=>~`?}zy ?r6%-z>ې<w.t >ƒG#Vfx_40=,`zWX3>R_h4 ?#E04`?H[ h>3(=%Pc>3-= 3;p ?2Ώ +}`?@ /;"@3]A>9o2smv>[|iL>.j@_ܨ<pz_?Lb%mz?dT|`?++ ay ?t)~?[rsq?O#{>Bl>qC.{>?* > 6>?"c>n/\G?`?G>N'vy? ?wi>\LCd`?>>;gz ??e=ͭu?>~?>E<k`u+> z 'a>H;i+=%'BmM)>7*x|>}ЬA>'~_Vn>`>\ZQj>?0c>9>87j>Z=Zȗo?= D`l?#X>E^Ms`?;=85~n ?)N>sh?_?5;=Cn_@?!My?`? y@?A+=y? ?b>!!z@?Wl|`?*+ |@?e@L { ?f#}_ >B 'Fu?>S-#w>$+ -s?>%5p>[s3t>G `>!aN_;m >ZLd >@?Q>G:;>`?>]Z@Q>@?ڨ>H4MGW> ?{>Cڊry ?@?2>&'@?`?$^>a z~`?@?$^>~@? ?]9>`z>>JB`r>>\=ਫ਼L>>Q$h|>>ٻ!Ii ?>=kx@?>\Z=هx`?>N=9az@?>t<|_^=/(ey?w[= s8_r=Y0bv@PB>?'y=i9p{ =FEd T>MV/q9W> u`?sE>:e@F>)^7` ?u> {$~@_+>ȒS?/>AgG>(x?~f=]m_}x=0u>hX>"Y/{>Ķ!>+#r>h>}>i=}yv ? N>. Hi@?;= >7o`?;=8~n@?)N>H>i=?jQ<nnw>f<=x>?6:2s>_I7l ?@b/z8|@? ;=4~n`?@y@?`_`?]̽{~y`?uy_ ?7e$(;z ?^L|`?^0z`?uz ?O Pw ?4{_ >/Q#,x>!#S&y_>80;s>5!ܽM dt~>Ew._| >~Fj >Ľ`?.<;`?J">HQb> ?J>j<> ?b>Qsa ?`? @>o|`?`?h> ? ?].>{ .{`? ?5B>|>> ѶAR>>B=MV>>V]>>,w ?>ב=Tu`?>= vfy ?>O<}`?=|=|_ʋ= 19u2==>o`)>4} >-}w*=cnEk >WA}dF,>/&wO)>~`A>~o {̻>Kg`_>I7f _>؟KTD>'yOZI>p_=K7d_'=x>3N>R,v>NF=/r>M<>2;Qq>>x ?uM=\Ih`?OX;tz ?r>.`?ӓ=wG/j=Õ=51m>l6_ ? ғ=Dcj`? X;!9z ?``?`DATA,b&_DATA_5 Q#Q#R# R# S#S#T#T#U#U# V#V# W#W#X#X#Y#Y# Z#Z# [#[#\#\#]#]# ^#^# _# _# `#`#a#!a# b#!b# c#"c#"d#d#e##e#f##f#g#$g#$h#h#i#%i#j#%j#k#&k#l#&l#m#'m#n#'n#o#(o#p#(p#q#)q#r#)r#s#*s#t!*t#u#+u#v#+v#w#,w#,x#x#y#-y#z#-z#{#.{#.|#|#}#/}#~#/~##0#0###1##1##2##2##3##3##4##4##5##5# #6##6# !7!#7!#8##8##9##9#!:!#:##;##;# #<##<##=##=##>##># #?##?# !@!#@#'#A###A#2#A#1!A#2#B#$#B#,#B#3#B#(#C#1!C!4#C#)#C!4#D#3#D#+#D#*#D#,#E#"#E#6#E#5#E#6#F#!#F##F#7#F#+#G#5#G#8#G#-#G#8#H#7#H##H#.#H#&#I#)#I#:#I#9#I!:#J#*#J#/#J#;#J#%#K#9#K#<#K##K#<#L#;#L#0#L##L#/#M#-#M#>#M#=#M#>#N#.#N# #N#?#N#0#O#=#O#@#O#!O#@#P#?#P#!P#!P!m#e#!!!f#!#n#!#!####!g####h#x########w##p#!#!####o#!#q####r#######v#####t###u#s#x#d####c###w#########b####a#Y########Z##v########u###y####z###!#!#[!####{###\#|!k#q####r##!l#####!###t####s!}########~##j # # # # # # # #i # # #U # # # #V # # # # ########W####X#}#y####z###~#########{####|#`########_#############T#!!!S!######^##!!!R! ! !] !Q !DATA,HVTexh0UVTexDATAh04em#em'Af#fA2'nAn1A21g$g2Bh$hxBx,2B3B,w3wp1p(C1C4(oCoqq)C4)rr34D3vDv+4Dtt*D+u*susdx"dx,Ec" cE6,wEw5E65b !b6Fa!aYFY6F7FZ7Z v5v+G5G8+uGuyy-G8-zz78H7 [H[8H{{.H\.|\|qk)qk&Ir)rI:&lIl9I:9t*t:Js*s}J}/:J;J/~;~j 9  j% K9   K <%i K  iU UK <  V V  ;  < L;L0<L WWL0XXy}-y}/Mz-zM>/~M~=M>={.{>N|.|`N` >N?N _?_ =0O=O@0OTTO@SS ?@P? ^P^@P RRP  ] Q] QDATA,<*=?4?4p?%=p?H>?*=?%=p?>p?H%=p?4p? 4`? =`?H>p?%=p? =`?>`?H@>?>?>p?@>p?H >?@>?@>p?>p?H@>p?>p?>`?@>`?H>p?@>p?@>`?>`?H =`? 4`?# 4P? =P?H>`? =`? =P?>P?H =P?# 4P?# 4@? =@?H>P? =P? =@?>@?H@>`?>`?>P?@>P?H>`?@>`?@>P?>P?H@>P?>P?>@?@>@?H>P?@>P?@>@?>@?H>? >?>p?>o?H>?>?>o?>o?H>o?>p?>`?>`?H>o?>o?>`?>_?H>?>?>o?>o?H??>?>o??o?H>o?>o?>_?>_?H?o?>o?>_??_?H>`?>`?>P?>P?H>_?>`?>P?>O?H>P?>P?>@?>@?H>O?>P?>@?>@?H>_?>_?>O?>O?H?_?>_?>O??O?H>O?>O?>@?>??H?O?>O?>?????H =@?# 4@?# 40? =0?H>@? =@? =0?>0?H =0?# 40?p4 ?= ?H>0? =0?= ? > ?H@>@?>@?>0? @>0?H>@?@>@? @>0?>0?H @>0?>0? > ? @> ?H>0? @>0? @> ?> ?H= ?p4 ?WH4?=?H > ?= ?=? >?H=?WH4?WH4?=?H >?=?=? >?H @> ? > ? >? @>?H> ? @> ? @>?>?H @>? >? >? @>?H>? @>? @>?>?H>@?>@?>0?>0?H>@?>@?>0?>0?H>0?>0?> ?> ?H>0?>0?> ?> ?H>??>@?>0?>0?H???>??>0??/?H>0?>0?> ?> ?H?/?>0?> ???H> ?> ?>?>?H> ?> ?>?>?H>?>?>?>?H>?>?>?>?H> ?> ?>?>?H??> ?>???H>?>?>?>?H??>?>??>H?????o??o?H ?????o? ?o?H?o??o??_??_?H ?o??o??_? ?_?H0?? ?? ?o?0?o?H@??0??0?o?@?o?H0?o? ?o? ?_?0?_?H@?o?0?o?0?_?@?_?H?_??_??O??O?H ?_??_??O? ?O?H?O??O???????H ?O??O???? ???H0?_? ?_? ?O?0?O?H@?_?0?_?0?O?@?O?H0?O? ?O? ???0???H@?O?0?O?0???@???HP??@??@?o?P?o?H`??P??P?o?`?o?HP?o?@?o?@?_?P?_?H`?o?P?o?P?_?`?_?Hp??`??`?o?p?o?H??p??p?o??o?Hp?o?`?o?`?_?p?_?H?o?p?o?p?_??_?HP?_?@?_?@?O?P?O?H`?_?P?_?P?O?`?O?HP?O?@?O?@???P???H`?O?P?O?P???`???Hp?_?`?_?`?O?p?O?H?_?p?_?p?O??O?Hp?O?`?O?`???p???H?O?p?O?p??????H???????/??/?H ???????/? ?/?H?/??/?????H ?/??/??? ??H0??? ??? ?/?0?/?H@???0???0?/?@?/?H0?/? ?/? ??0??H@?/?0?/?0??@??H????????H ?????? ??H?????>?>H ?????> ?>H0?? ?? ??0??H@??0??0??@??H0?? ?? ?>0?>H@??0??0?>@?>HP???@???@?/?P?/?H`???P???P?/?`?/?HP?/?@?/?@??P??H`?/?P?/?P??`??Hp???`???`?/?p?/?H???p???p?/??/?Hp?/?`?/?`??p??H?/?p?/?p????HP??@??@??P??H`??P??P??`??HP??@??@?>P?>H`??P??P?>`?>Hp??`??`??p??H??p??p????Hp??`??`?>p?>H??p??p?>?>H=?WH4? 4>=>H >?=?=> >>H=> 4> 4>=>H >>=>=>>>H @>? >? >> @>>H>? @>? @>>>>H @>> >>>>@>>H>> @>>@>>>>H=> 4>3> =>H>>=> =>>>H =>3> 3> =>H>> => =>>>H@>>>>>>@>>H>>@>>@>>>>H@>>>>>>@>>H>>@>>@>>>>H>?>?>>>>H>?>?>>>>H>>>>>>>>H>>>>>>>>H>?>?>>>>H?>>?>>?>H>>>>>>>>H?>>>>>?>H>>>>>>>>H>>>>>>>>H>>>>>>>>H>>>>>>>>H>>>>>>>>H?>>>>>?>H>>>>>>>>H?>>>>>?>H => 3> 3 @> = @>H>> => = @>>@>H = @> 3 @> 3 >= >H>@> = @>= >> >H@>>>>>@>@>@>H>>@>>@>@>>@>H@>@>>@>> >@>>H>@>@>@>@>>>>H= > 3 > 3===H> >= >==>=H== 3=VH4= 4H>==== 4=3H@>>> >>=?>=H>>@>>?>=> =H?>=>==3?>3H> =?>=?>3>3H>>>>>@>>@>H>>>>>@>>@>H>@>>@>>>>>H>@>>@>>>>>H>>>>>@>>@>H?>>>>@>?@>H>@>>@>>>>>H?@>>@>>>?>H>>>>> => =H>>>>> => =H> => =>3>3H> => =>3>3H>>>>> => =H?>>>> => =H> => =>3>3H> => =>3>3H?>?>?>?>H ?>?>?> ?>H?>?>?>?>H ?>?>?> ?>H0?> ?> ?>0?>H@?>0?>0?>@?>H0?> ?> ?>0?>H@?>0?>0?>@?>H?>?>?>?>H ?>?>?> ?>H?>?>?>?>H ?>?>?> ?>H0?> ?> ?>0?>H@?>0?>0?>@?>H0?> ?> ?>0?>H@?>0?>0?>@?>HP?>@?>@?>P?>H`?>P?>P?>`?>HP?>@?>@?>P?>H`?>P?>P?>`?>Hp?>`?>`?>o?>H?>p?>o?>?>Ho?>`?>`?>o?>H?>o?>o?>?>HP?>@?>@?>P?>H`?>P?>P?>`?>HP?>@?>@?>P?>H`?>P?>P?>`?>Ho?>`?>`?>o?>H?>o?>o?>?>Ho?>`?>`?>o?>H?>o?>o?>?>H?>?>?@>?@>H ?>?>?@> ?@>H?@>?@>?>?>H ?@>?@>?> ?>H0?> ?> ?@>0?@>H@?>0?>0?@>@?@>H0?@> ?@> ?>/?>H@?@>0?@>/?>??>H?>?>> =? =H ?>?>? =? =H? => =>3? 3H? =? =? 3? 3H/?> ?>? =/? =H??>/?>/? =??=H/? =? =? 3/? 3H??=/? =/? 3?? 3HP?>@?>@?@>O??>H`?>P?>O??>`??>HO??>@?@>??>O?=H`??>O??>O?=_?=Ho?>`?>`??>o??>H?>o?>o??>??>Ho??>`??>_?=o?=H??>o??>o?=?=HO?=??>??=O?=H_?=O?=O?=_?=HO?=??=?? 3O?H_?=O?=O?_?Ho?=_?=_?=o?=H?=o?=o?=?=Ho?=_?=_?o?H?=o?=o??HDNA1@\SDNANAMEF*next*prev*first*lastxyzwxminxmaxyminymax*pointergroupvalpadname[32]typesubtypeflagsaveddatalentotallen*newid*libname[24]usicon_id*propertiesid*idblock*filedataname[240]filename[240]tot*parentcurvecurblocktypeshowkeyposcurvaladrcodetotelem*data*weightsvgroup[32]sliderminslidermax*refkeyelemstr[32]elemsizeblock*ipo*fromtotkeyslurph**scripts*flagactscripttotscript*line*formatblen*nameflagsnlineslines*curl*sellcurcselc*undo_bufundo_posundo_len*compiledsizeseekpassepartalphaangleclipstaclipendlensortho_scaledrawsizeshiftxshiftyYF_dofdistYF_apertureYF_bkhtypeYF_bkhbiasYF_bkhrotscriptlinkh*rectframenrframesoffsetsfrafie_imacyclokmulti_indexlayerpassmenunribufs*anim*rrsourcepad1lastframetpageflagtotbindxrepyreptwstatwendbindcode*repbind*packedfile*previewlastupdatelastusedanimspeedgen_xgen_ygen_type*vnodetexcomaptomaptonegblendtype*object*texuvname[32]projxprojyprojzmappingofs[3]size[3]texflagcolormodelrgbkdef_varcolfacnorfacvarfacdispfacwarpfacname[160]*handle*pname*stnamesstypesvars*varstr*result*cfradata[32](*doit)()(*instance_init)()(*callback)()versionaipotype*ima*cube[6]imat[4][4]obimat[3][3]stypeviewscalenotlaycuberesdepthrecalclastsizenoisesizeturbulbrightcontrastrfacgfacbfacfiltersizemg_Hmg_lacunaritymg_octavesmg_offsetmg_gaindist_amountns_outscalevn_w1vn_w2vn_w3vn_w4vn_mexpvn_distmvn_coltypenoisedepthnoisetypenoisebasisnoisebasis2imaflagcropxmincropymincropxmaxcropymaxxrepeatyrepeatextendcheckerdistnablaiuser*plugin*coba*envloc[3]rot[3]mat[4][4]min[3]max[3]*obmodetotexenergydistspotsizespotblendhaintatt1att2shadspotsizebiassoftbufsizesampbuffersfiltertypebufflagbuftyperay_sampray_sampyray_sampzray_samp_typearea_shapearea_sizearea_sizeyarea_sizeztexactshadhalostepYF_numphotonsYF_numsearchYF_phdepthYF_useqmcYF_bufsizeYF_padYF_causticblurYF_ltradiusYF_glowintYF_glowofsYF_glowtypeYF_pad2*mtex[10]specrspecgspecbmirrmirgmirbambrambbambgambemitangspectraray_mirroralpharefspeczoffsaddtranslucencyfresnel_mirfresnel_mir_ifresnel_trafresnel_tra_ifiltertx_limittx_falloffray_depthray_depth_traharseed1seed2mode_lflarecstarclinecringchasizeflaresizesubsizeflarebooststrand_stastrand_endstrand_easesbiasshad_alphapadfrgbselpr_typeuse_nodespr_backpr_lampseptexml_flagdiff_shaderspec_shaderroughnessrefracparam[4]rmsdarkness*ramp_col*ramp_specrampin_colrampin_specrampblend_colrampblend_specramp_showpad3rampfac_colrampfac_spec*nodetree*groupfrictionfhreflectfhdistxyfrictdynamodepad2sss_radius[3]sss_col[3]sss_errorsss_scalesss_iorsss_colfacsss_texfacsss_frontsss_backsss_flagsss_presetYF_arYF_agYF_abYF_dscaleYF_dpwrYF_dsmpYF_presetYF_djitname[256]scale*bbi1j1k1i2j2k2selcol1selcol2quat[4]expxexpyexpzradrad2s*mat*imatelemsdisp**mattotcolwiresizerendersizethreshvec[3][3]alfaweightradiush1h2f1f2f3hidevec[4]mat_nrpntsupntsvresoluresolvorderuordervflaguflagv*knotsu*knotsv*bp*beztcharidxkernnurb*bevobj*taperobj*textoncurve*path*keybevpathlenbevresolwidthext1ext2resolu_renresolv_renspacemodespacinglinedistshearfsizewordspaceulposulheightxofyoflinewidth*strfamily[24]*vfont*vfontb*vfonti*vfontbisepchartotboxactbox*tbselstartselend*strinfocurinfoname[128]maxrcttotrctvartypetotvertipoextraprtbitmaskslide_minslide_max*drivereffect*mface*mtface*tface*mvert*medge*dvert*mcol*msticky*texcomesh*mselect*oc*sumohandlevdataedatafdatatotedgetotfacetotselectcubemapsizesmoothreshsubdivsubdivrsubsurftype*mr*pv*tpageuv[4][2]col[4]transptileunwrapv1v2v3v4edcodecreasedef_nr*dwtotweightco[3]no[3]co[2]indexv[4]midchildrenstartpad[2]v[2]*verts*faces*colfaces*edges*vert_edge_map*vert_face_map*map_memlevelslevel_countcurrentnewlvledgelvlpinlvlrenderlvluse_col*edge_flags*edge_creases*vert_map*edge_map*old_faces*old_edges*errormodifiersubdivTyperenderLevels*emCache*mCachedefaxispad[6]startlengthrandomizeseed*start_cap*end_cap*curve_ob*offset_oboffset[3]scale[3]merge_distfit_typeoffset_typecountaxistolerancesplit_angle*texturestrengthdirectiondefgrp_name[32]midleveltexmapping*map_objectuvlayer_name[32]uvlayer_tmp*projectors[10]*imagenum_projectorsaspectxaspectypercentfaceCountfacrepeat*objectcenterstartxstartyheightnarrowspeeddamptimeoffslifetimedeformflagparentinv[4][4]cent[3]falloff*indexartotindexforceoperationpntswopntsuopntsvopntswtypeutypevtypewfufvfwdudvdw*defvec[8][3]dvec[3]max**obpartypepar1par2par3parsubstr[32]*track*proxy*proxy_group*proxy_from*action*poseconstraintChannelsnetworkdefbasemodifiersdloc[3]orig[3]dsize[3]drot[3]dquat[4]obmat[4][4]laycolbitstransflagipoflagtrackflagupflagnlaflagprotectflagipowinscaflagscavisflagboundtypedupondupoffdupstadupendsfctimemassdampinginertiaformfactorrdampingsizefacdtdtxactcolempty_drawtypepad1[7]empty_drawsizepropsensorscontrollersactuatorsbbsize[3]actdefgameflaggameflag2softflaganisotropicFriction[3]constraintsnlastripshooks*pd*soft*dup_groupfluidsimFlagrestrictflagshapenrshapeflagrecalcopad4*fluidsimSettings*derivedDeform*derivedFinallastDataMaskcurindexactivedeflectforcefieldpdef_damppdef_rdamppdef_permf_strengthf_powermaxdistpdef_sbdamppdef_sbiftpdef_sbofttotpointtotspring*bpoint*bspringnodemassgravmediafrictrklimitphysics_speedgoalspringgoalfrictmingoalmaxgoaldefgoalvertgroupfuzzynessinspringinfrictefraintervallocalsolverflags**keystotpointkeysecondspringcolballballdampballstiffsbc_modeaeroedgeminloopsmaxloopschokepad5*scratchshow_advancedoptionsresolutionxyzpreviewresxyzrealsizeguiDisplayModerenderDisplayModeviscosityValueviscosityModeviscosityExponentgravxgravygravzanimStartanimEndgstarmaxRefineiniVelxiniVelyiniVelz*orgMesh*meshSurface*meshBBsurfdataPath[240]bbStart[3]bbSize[3]typeFlagsdomainNovecgenvolumeInitTypepartSlipValuegenerateTracersgenerateParticlessurfaceSmoothingsurfaceSubdivsunusedDNADummyparticleInfSizeparticleInfAlphafarFieldSize*meshSurfNormalsmistypehorrhorghorbhorkzenrzengzenbzenkambkfastcolexposureexprangelinfaclogfacgravityactivityBoxRadiusskytypephysicsEnginemisimiststamistdistmisthistarrstargstarbstarkstarsizestarmindiststardiststarcolnoisedofstadofenddofmindofmaxaodistaodistfacaoenergyaobiasaomodeaosampaomixaocolor*aosphere*aotableshemiresmaxiterdrawtypesubshootpsubshootenodelimmaxsublamppamapamielmaelmimaxnodeconvergenceradfacgammaselcolsxsy*lpFormat*lpParmscbFormatcbParmsfccTypefccHandlerdwKeyFrameEverydwQualitydwBytesPerSeconddwFlagsdwInterleaveEveryavicodecname[128]*cdParms*padcdSizeqtcodecname[128]codecaudio_codecvideo_bitrateaudio_bitrategop_sizerc_min_raterc_max_raterc_buffer_sizemux_packet_sizemux_ratemixratemainpad[3]*mat_override*light_overridelayflagpassflagpass_xor*avicodecdata*qtcodecdataffcodecdatacfrapsfrapefraimagesframaptothreadsframelenblurfacedgeRedgeGedgeBfullscreenxplayyplayfreqplayattribrt1rt2stereomodedimensionspresetmaximsizexschyschxaspyaspxpartsypartswinposplanesimtypesubimtypequalityscemoderendererocresrpad[2]alphamodeosafrs_secedgeintsafetyborderdisprectlayersactlaygausspostmulpostgammaposthuepostsatdither_intensitybake_osabake_filterbake_modebake_flagGIqualityGIcacheGImethodGIphotonsGIdirectYF_AAYFexportxmlYF_nobumpYF_clamprgbyfpad1GIdepthGIcausdepthGIpixelspersampleGIphotoncountGImixphotonsGIphotonradiusYF_numprocsYF_raydepthYF_AApassesYF_AAsamplesGIshadowqualityGIrefinementGIpowerGIindirpowerYF_gammaYF_exposureYF_raybiasYF_AApixelsizeYF_AAthresholdbackbuf[160]pic[160]ftype[160]col[3]framename[64]*brushtoolcornertypeeditbutflagjointrilimitdegrstepturnextr_offsdoublimitsegmentsringsverticesunwrapperuvcalc_radiusuvcalc_cubesizeuvcalc_mapdiruvcalc_mapalignuvcalc_flagimapaintselect_threshclean_threshretopo_moderetopo_paint_toolline_divellipse_divretopo_hotspotmultires_subdiv_typepad4[2]dirairbrushview*sessiondrawbrushsmoothbrushpinchbrushinflatebrushgrabbrushlayerbrushflattenbrushbrush_typetexnrtexrepttexfadetexsepaveragingdraw_flagtablet_sizetablet_strengthsymm*camera*world*setbase*basactcursor[3]twcent[3]twmin[3]twmax[3]editbutsizeselectmodeproportionalprop_mode*ed*radioframing*toolsettingsaudiomarkersjumpframe*theDagdagisvaliddagflagssculptdatazoomblendximyimspacetypeblockscale*areablockhandler[8]viewmat[4][4]viewinv[4][4]persmat[4][4]persinv[4][4]winmat1[4][4]viewmat1[4][4]viewquat[4]zfacpad0persp*ob_centre*bgpic*localvd*ri*retopo_view_data*depthsob_centre_bone[32]localviewlayactscenelockaroundcamzoompivot_lastgridgridviewpixsizenearfarcamdxcamdygridlinesviewbutgridflagmodeselecttwtypetwmodetwflagtwdrawflagtwmat[4][4]clip[4][4]*clipbbafterdrawzbufxrayflag2gridsubdivsnap_target*properties_storageverthormaskmin[2]max[2]minzoommaxzoomscrollkeeptotkeepaspectkeepzoomoldwinxoldwinyrowbutv2d*editipoipokeyactname[32]constname[32]totipopinbutofschannellockmedian[3]cursenscuractaligntabomainbmainbo*lockpointexfromshowgroupmodeltypescriptblockre_alignoldkeypresstab[7]chanshown*filelisttotfiletitle[24]dir[160]file[80]ofssortmaxnamelencollums*libfiledataretvalmenuact(*returnfunc)()(*returnfunc_event)()(*returnfunc_args)()*arg1*arg2*menup*pupmenuoopsvisiflagtree*treestoresearch_string[32]search_tsesearch_flagsdo_outlinevisstoreflagdeps_flags*cumapimanrcurtileimtypenrshowsparecentxcenty*info_str*info_spare*spare*texttopviewlinesfont_idlheightleftshowlinenrstabnumbercurrtab_setshowsyntaxunused_paddpix_per_linetxtscrolltxtbar*script*but_refsredraws*idaspect*curfont*edittreetreetypetitle[28]fasesubfasemouse_move_redrawimafasemxmydirslidirsli_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*cmapoutline[4]neutral[4]action[4]setting[4]setting1[4]setting2[4]num[4]textfield[4]textfield_hi[4]popup[4]text[4]text_hi[4]menu_back[4]menu_item[4]menu_hilite[4]menu_text[4]menu_text_hi[4]but_drawtypeiconfile[80]back[4]header[4]panel[4]shade1[4]shade2[4]hilite[4]grid[4]wire[4]select[4]lamp[4]active[4]group[4]group_active[4]transform[4]vertex[4]vertex_select[4]edge[4]edge_select[4]edge_seam[4]edge_sharp[4]edge_facesel[4]face[4]face_select[4]face_dot[4]normal[4]bone_solid[4]bone_pose[4]strip[4]strip_select[4]vertex_sizefacedot_sizebpad[2]syntaxl[4]syntaxn[4]syntaxb[4]syntaxv[4]syntaxc[4]movie[4]image[4]scene[4]audio[4]effect[4]plugin[4]transition[4]meta[4]bpad1[4]tuitbutstv3dtfiletipotinfotsndtacttnlatseqtimatimaseltexttoopsttimetnodebpad[4]spec[4]dupflagsavetimetempdir[160]fontdir[160]renderdir[160]textudir[160]plugtexdir[160]plugseqdir[160]pythondir[160]sounddir[160]yfexportdir[160]versionsvrmlflaggameflagswheellinescrolluiflaglanguageuserprefviewzoomconsole_bufferconsole_outmixbufsizefontsizeencodingtransoptsmenuthreshold1menuthreshold2fontname[256]themesundostepscurssizetb_leftmousetb_rightmouselight[3]tw_hotspottw_flagtw_handlesizetw_sizetextimeouttexcollectratememcachelimitframeserverportpad_rot_angleobcenter_diarvisizervibrightversemaster[160]verseuser[160]recent_filessmooth_viewtxvertbaseedgebaseareabase*sceneendxendysizexsizeyscenenrscreennrfullmainwinwinakthandler[8]*newvvec*v1*v2panelname[64]tabname[64]drawname[64]ofsxofsycontrolsnapold_ofsxold_ofsysortcounter*paneltab*v3*v4*fullwinmat[4][4]headrctwinrctheadwinwinheadertypebutspacetypewinxwinyhead_swaphead_equalwin_swapwin_equalheadbutlenheadbutofscursorspacedatauiblockspanelssubvstr[4]subversionpadsminversionminsubversiondisplaymode*curscreen*curscenefileflagsglobalfname[80]*ibuf*se1*se2*se3nrdone*stripdataorxory*instance_private_data**current_private_data*newseqstartofsendofsstartstillendstillmachinestartdispenddispmulhandsize*strip*curelemfacf0facf1*seq1*seq2*seq3seqbase*sound*hdaudiolevelpancurposstrobe*effectdataanim_preseek*oldbasep*parseq*seqbasepmetastackedgeWidthforwardwipetypefMinifClampfBoostdDistdQualitybNoCompScalexIniScaleyIniScalexFinScaleyFinxInixFinyIniyFinrotInirotFin*frameMapglobalSpeedbuttypeuserjitstaendtotpartnormfacobfacrandfactexfacrandlifeforce[3]vectsizemaxlendefvec[3]mult[4]life[4]child[4]mat[4]texmapcurmultstaticstepomattimetexspeedtexflag2negvertgroup_vvgroupname[32]vgroupname_v[32]*keysminfacusedusedelemdxdylinkotypeold*poin*oldpoinresetdistlastval*makeyqualqual2targetName[32]toggleName[32]value[32]maxvalue[32]materialName[32]damptimerdelaypropname[32]matname[32]axisflag*fromObjectsubject[32]body[32]pulsefreqtotlinks**linksinvertfreq2axisfbuttonbuttonfhathatfprecisionstr[128]*mynewinputstotslinks**slinksvalotime*actblendinprioritystrideaxisstridelengthsndnrpad1[2]makecopycopymadepad2[1]trackvolume*melinVelocity[3]localflagforceloc[3]forcerot[3]linearvelocity[3]angularvelocity[3]butstabutendminvisifacslowminloc[3]maxloc[3]minrot[3]maxrot[3]distributionint_arg_1int_arg_2float_arg_1float_arg_2toPropName[32]*toObjectbodyTypefilename[64]loadaniname[64]goaccellerationmaxspeedmaxrotspeedmaxtiltspeedrotdamptiltdampspeeddamp*sample*stream*newpackedfile*snd_soundpanningattenuationpitchmin_gainmax_gaindistancestreamlenchannelshighpriopad[10]gaindopplerfactordopplervelocitynumsoundsblendernumsoundsgameengine*lamprengobjectchildbaserollhead[3]tail[3]bone_mat[3][3]arm_head[3]arm_tail[3]arm_mat[4][4]xwidthzwidthease1ease2rad_headrad_tailbonebasechainbasepathflaglayer_protectedghostepghostsizeghosttypepathsizeghostsfghostefpathsfpathefconstflagikflagselectflag*bone*childiktree*b_bone_matschan_mat[4][4]pose_mat[4][4]pose_head[3]pose_tail[3]limitmin[3]limitmax[3]stiffness[3]ikstretch*customchanbaseproxy_layerstride_offset[3]cyclic_offset[3]reserved1autosnapactnractwidthtimeslidename[30]enforce*tariterationsrootbonesubtarget[32]orientweightgrabtarget[3]reserved2minmaxflagstickystuckcache[3]lockflagfollowflagzminzmaxvolmodeplaneorglengthbulgepivXpivYpivZaxXaxYaxZminLimit[6]maxLimit[6]extraFzchannel[32]no_rot_axisstride_axiscurmodactstartactendactoffsstridelenblendoutstridechannel[32]offs_bone[32]hasinputhasoutputdatatypesockettypenslimitstack_indexinternstack_index_extlocxlocyown_indexto_index*tosock*link*new_nodelastyoutputs*storageminiwidthcustom1custom2need_execexectotrbutrprvr*typeinfo*fromnode*tonode*fromsocknodeslinks**stackinitstacksizecur_indexalltypes*owntype(*timecursor)()(*stats_draw)()(*test_break)()cyclicmoviesamplesminspeedbokehhuesatt1t2t3fstrengthfalphakey[4]colname[32]bktyperotationpreviewgamcono_zbuffstopmaxblurbthreshshortymintablemaxtableext_in[2]ext_out[2]*curve*table*premultablecurrcliprcm[4]black[3]white[3]bwmul[3]offset[2]innerradiusratergb[3]cloneactive_rndpad[4]*layerstotlayermaxlayertotsizeTYPEcharucharshortushortintlongulongfloatdoublevoidLinkListBasevec2svec2ivec2fvec2dvec3ivec3fvec3dvec4ivec4fvec4drctirctfIDPropertyDataIDPropertyIDLibraryFileDataIpoKeyBlockKeyScriptLinkTextLineTextPackedFileCameraPreviewImageImageUserImageanimRenderResultMTexObjectTexPluginTexCBDataColorBandEnvMapImBufTexMappingLampWaveMaterialbNodeTreeGroupVFontVFontDataMetaElemBoundBoxMetaBallBezTripleBPointNurbCharInfoTextBoxCurvePathIpoDriverIpoCurveMeshMFaceMTFaceTFaceMVertMEdgeMDeformVertMColMStickyMSelectOcInfoCustomDataMultiresPartialVisibilityMDeformWeightMultiresColMultiresColFaceMultiresFaceMultiresEdgeMultiresLevelMultiresMapNodeModifierDataSubsurfModifierDataLatticeModifierDataCurveModifierDataBuildModifierDataArrayModifierDataMirrorModifierDataEdgeSplitModifierDataDisplaceModifierDataUVProjectModifierDataDecimateModifierDataSmoothModifierDataCastModifierDataWaveModifierDataArmatureModifierDataHookModifierDataSoftbodyModifierDataBooleanModifierDataLatticebDeformGroupLBufbActionbPosePartDeflectSoftBodyFluidsimSettingsDerivedMeshObHookSBVertexBodyPointBodySpringSBScratchWorldRadioBaseAviCodecDataQuicktimeCodecDataFFMpegCodecDataAudioDataSceneRenderLayerRenderDataGameFramingTimeMarkerImagePaintSettingsBrushToolSettingsBrushDataSculptDataSculptSessionSceneDagForestBGpicView3DSpaceLinkScrAreaRenderInfoRetopoViewDataViewDepthsView2DSpaceInfoSpaceIpoSpaceButsSpaceSeqSpaceFiledirentryBlendHandleSpaceOopsTreeStoreTreeStoreElemSpaceImageCurveMappingSpaceNlaSpaceTextSpaceScriptScriptSpaceTimeSpaceNodeSpaceImaSelImaDirOneSelectableImaThemeUIThemeSpacebThemeSolidLightUserDefbScreenScrVertScrEdgePanelFileGlobalStripElemStripPluginSeqSequencebSoundhdaudioMetaStackEditingWipeVarsGlowVarsTransformVarsSolidColorVarsSpeedControlVarsEffectBuildEffPartEffParticleWaveEffOopsbPropertybNearSensorbMouseSensorbTouchSensorbKeyboardSensorbPropertySensorbCollisionSensorbRadarSensorbRandomSensorbRaySensorbMessageSensorbSensorbControllerbJoystickSensorbExpressionContbPythonContbActuatorbAddObjectActuatorbActionActuatorbSoundActuatorbCDActuatorbEditObjectActuatorbSceneActuatorbPropertyActuatorbObjectActuatorbIpoActuatorbCameraActuatorbConstraintActuatorbGroupActuatorbRandomActuatorbMessageActuatorbGameActuatorbVisibilityActuatorFreeCamerabSamplebSoundListenerSpaceSoundGroupObjectBonebArmaturebPoseChannelbActionChannelSpaceActionbConstraintChannelbConstraintbKinematicConstraintbTrackToConstraintbRotateLikeConstraintbLocateLikeConstraintbMinMaxConstraintbSizeLikeConstraintbActionConstraintbLockTrackConstraintbFollowPathConstraintbDistanceLimitConstraintbRotationConstraintbStretchToConstraintbLocLimitConstraintbRotLimitConstraintbSizeLimitConstraintbRigidBodyJointConstraintbClampToConstraintbActionModifierbActionStripbNodeStackbNodeSocketbNodeLinkbNodebNodePreviewbNodeTypeNodeImageAnimNodeBlurDataNodeHueSatNodeImageFileNodeChromaNodeGeometryNodeVertexColNodeDefocusCurveMapPointCurveMapBrushCloneCustomDataLayerTLEN  L4(Thxh tx T8pDDlh8$88\,< @ @ 44DX`Dt<<<\h`4@t( <(,((0@XP Lt<$x$(h x$ 8x h (88,@0,HhH,(lDLP@< <@Lh48<8l(DlP<,4D4,,D,@,<4` <$t (@  ,<STRC                 !"#$ %&'( )*+, -./01 234* 56789 :;<=!!!>?@" ABC D!E!FGHIJK L#MNB -$OPQRSTUVWXYZ[\6 ]%^_& `abcdefghij'! k(l)mfnopqrstuvwx#y%z{|}~ *+,-   .)&/#&.0+'1QRfp,4dabc&6'-/02+34QR   * 6 ]465p  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHI/J/KLMNOPQRS* 6T67UVWXYZ[\]^_`abcdefghijklmno ]8pq9-#y:::;rstuvwxyz{|}~<;r  65= >???>=@\A^B9;r  +++6C5 \D)8888A@@D+'+EEE>='+  *DF);r 65GHIJKLMNFOP QQQ\RS I GKTLTJMNOH'UVUWX Y YYJ W V X   ZR QQSGK[[[\[ !"B # $][ +^[ +%&_[ '()*` [ +++,+-+./0(123B4a[ 56b[ 7Bc [ ,89:;<=+>?@d [ +A'BBCDE?@e[ FGf[ H;Ig[ +HM;h[ +J;,8+>KLMNOP=@?QRi[ So\+;j [ +TUVWXYk[ l[ +Zm[\]^\_`abcdefg>h6Lnnn;iPjo#k+l+gmnopq+$+r+s+t+u6C;rpvqw - x  y  z {5|}~{T ]        rs7tuu vvv+$TUVWXYr ws(xycw8Qzt(FFF6     J{9 !"#$%&'()*+,-./0123456789:;<=6*  ]|>?@ABCDEFGHIJKL}}}MNO+~ P QRSTUVWXYZ[ \ ]^\_ `abcdBefghijkl 5m7nopqe~rstucvwxyz{|}~M \o\QQ\M9* %+{' }     >6T |  ] o\Q '&MD !"#$%&'()*+++,-./01@234567oS89:;<=>?@ABjCDEFGH;I JKLMNO\ P#&QRSTUVWXYZ[\]   ^\_ ` a67bcdefg('jhi#. jklm_njeo pqrstuvw _nx\ yz{|}~      _ e p  _'B&jh\1  jh_ "Bj Bjo __7j 6T6Q\1       l0   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQ@R4STUVWXYZ[\]^_`abcdefghijklmn opqrstuvwxyz{|}~&   KL  ]      1f | p     ) 'c6(l      P B(c-R8*   P  M7UKLMNOPQR, - !" # $% & '()o\5*+,-./0123P\P5*456o7+89:$;<=o\ ->+?@ 5ABCDEFG"HI=$J\Q ->KLM+ pNOPQR STUVWSXY M+FZ[\+0+ ]^|_` o&ab+MckH5dPefghi l&ab7U*jklmn5o+p9qo\:rs H$t -+ uvwxyz{| }#y#~ 6YB_Sh\+ 7 h$ (h  @Sh \$  {+q 6 xp  _pveh6 - ++B++ +bo\+ +'ckpN++b+o\/   +   M   o   o++o\+ +6pN+';IO {ck -   o      j I   z           6       ac voHL\p`c !"#$ %&'()*+,q- ./01234 &56789:;'B; M<=>* ?b@A -QBCDEENDB