From cdfe6935835a79b831e1a9dc61bf2fd4950cf2ad Mon Sep 17 00:00:00 2001 From: billy1380 Date: Sat, 23 Mar 2013 16:04:51 +0000 Subject: [PATCH 1/2] - changed cocos2d mac project to support universal build and x86 - fixed issues associated with that --- cocos2dx/platform/mac/CCDirectorCaller.mm | 2 +- .../third_party/mac/libraries/libwebp.a.REMOVED.git-id | 2 +- .../cocos2dx.xcodeproj/project.pbxproj.REMOVED.git-id | 2 +- .../HelloCpp/proj.mac/HelloCpp.xcodeproj/project.pbxproj | 8 ++++---- .../TestCpp.xcodeproj/project.pbxproj.REMOVED.git-id | 2 +- .../HelloCpp.xcodeproj/project.pbxproj.REMOVED.git-id | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cocos2dx/platform/mac/CCDirectorCaller.mm b/cocos2dx/platform/mac/CCDirectorCaller.mm index dcd6befed2..46309ee5b0 100755 --- a/cocos2dx/platform/mac/CCDirectorCaller.mm +++ b/cocos2dx/platform/mac/CCDirectorCaller.mm @@ -59,7 +59,7 @@ static id s_sharedDirectorCaller; -(void) dealloc { s_sharedDirectorCaller = nil; - CCLOG("cocos2d: deallocing CCDirectorCaller %x", (unsigned int)self); + CCLOG("cocos2d: deallocing CCDirectorCaller %x", self); if (displayLink) { CVDisplayLinkRelease(displayLink); } diff --git a/cocos2dx/platform/third_party/mac/libraries/libwebp.a.REMOVED.git-id b/cocos2dx/platform/third_party/mac/libraries/libwebp.a.REMOVED.git-id index ea13f7d85f..57cce30b7a 100644 --- a/cocos2dx/platform/third_party/mac/libraries/libwebp.a.REMOVED.git-id +++ b/cocos2dx/platform/third_party/mac/libraries/libwebp.a.REMOVED.git-id @@ -1 +1 @@ -581d190d221ecc4ab65b7fd571266951e0c81602 \ No newline at end of file +98a9f91fff796092bb7afab1f50fb11c3fe696d9 \ No newline at end of file diff --git a/cocos2dx/proj.mac/cocos2dx.xcodeproj/project.pbxproj.REMOVED.git-id b/cocos2dx/proj.mac/cocos2dx.xcodeproj/project.pbxproj.REMOVED.git-id index cfeeddfd88..cdb0cac2cf 100644 --- a/cocos2dx/proj.mac/cocos2dx.xcodeproj/project.pbxproj.REMOVED.git-id +++ b/cocos2dx/proj.mac/cocos2dx.xcodeproj/project.pbxproj.REMOVED.git-id @@ -1 +1 @@ -76880c9d57ad50a4e121f0113e5d7c3394b33408 \ No newline at end of file +593eeddbb616c30af1167e9add361f1cd8e7996e \ No newline at end of file diff --git a/samples/Cpp/HelloCpp/proj.mac/HelloCpp.xcodeproj/project.pbxproj b/samples/Cpp/HelloCpp/proj.mac/HelloCpp.xcodeproj/project.pbxproj index 929e1408ff..80ec1ae874 100644 --- a/samples/Cpp/HelloCpp/proj.mac/HelloCpp.xcodeproj/project.pbxproj +++ b/samples/Cpp/HelloCpp/proj.mac/HelloCpp.xcodeproj/project.pbxproj @@ -315,7 +315,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; COPY_PHASE_STRIP = NO; GCC_C_LANGUAGE_STANDARD = "compiler-default"; GCC_DYNAMIC_NO_PIC = NO; @@ -341,7 +341,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; COPY_PHASE_STRIP = YES; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_C_LANGUAGE_STANDARD = "compiler-default"; @@ -359,7 +359,7 @@ 41851BB115B93C33004083E9 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; CLANG_CXX_LANGUAGE_STANDARD = "compiler-default"; GCC_C_LANGUAGE_STANDARD = "compiler-default"; GCC_INLINES_ARE_PRIVATE_EXTERN = NO; @@ -394,7 +394,7 @@ 41851BB215B93C33004083E9 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; CLANG_CXX_LANGUAGE_STANDARD = "compiler-default"; GCC_C_LANGUAGE_STANDARD = "compiler-default"; GCC_INLINES_ARE_PRIVATE_EXTERN = NO; diff --git a/samples/Cpp/TestCpp/proj.mac/TestCpp.xcodeproj/project.pbxproj.REMOVED.git-id b/samples/Cpp/TestCpp/proj.mac/TestCpp.xcodeproj/project.pbxproj.REMOVED.git-id index 2239bc5869..d243567c49 100644 --- a/samples/Cpp/TestCpp/proj.mac/TestCpp.xcodeproj/project.pbxproj.REMOVED.git-id +++ b/samples/Cpp/TestCpp/proj.mac/TestCpp.xcodeproj/project.pbxproj.REMOVED.git-id @@ -1 +1 @@ -7328a9217c44d1618836e55d3df76897d5335ca9 \ No newline at end of file +4d8aa68dc5f18cfa35ec2a6c7d9c2a0632f05855 \ No newline at end of file diff --git a/template/multi-platform-cpp/proj.mac/HelloCpp.xcodeproj/project.pbxproj.REMOVED.git-id b/template/multi-platform-cpp/proj.mac/HelloCpp.xcodeproj/project.pbxproj.REMOVED.git-id index 2a36eca2f1..43109df6d9 100644 --- a/template/multi-platform-cpp/proj.mac/HelloCpp.xcodeproj/project.pbxproj.REMOVED.git-id +++ b/template/multi-platform-cpp/proj.mac/HelloCpp.xcodeproj/project.pbxproj.REMOVED.git-id @@ -1 +1 @@ -9e877ea63dd2d4a53a7e283bf0f1c234d5ce69c8 \ No newline at end of file +1b7c61e11a503cf6c5b902591364c0394d67a545 \ No newline at end of file From fc806d0496f5b54fd515be0096975879c8514a82 Mon Sep 17 00:00:00 2001 From: billy1380 Date: Sat, 23 Mar 2013 17:21:26 +0000 Subject: [PATCH 2/2] added sample game xcode project for mac --- .../Cpp/SimpleGame/proj.mac/AppController.h | 42 + .../Cpp/SimpleGame/proj.mac/AppController.mm | 86 ++ samples/Cpp/SimpleGame/proj.mac/Icon.icns | Bin 0 -> 77152 bytes .../SampleGame.xcodeproj/project.pbxproj | 610 +++++++++++++ .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../SimpleGame/proj.mac/SampleGame_Prefix.pch | 7 + .../proj.mac/en.lproj/InfoPlist.strings | 2 + .../SimpleGame/proj.mac/en.lproj/MainMenu.xib | 812 ++++++++++++++++++ samples/Cpp/SimpleGame/proj.mac/main.m | 30 + 9 files changed, 1597 insertions(+) create mode 100644 samples/Cpp/SimpleGame/proj.mac/AppController.h create mode 100644 samples/Cpp/SimpleGame/proj.mac/AppController.mm create mode 100644 samples/Cpp/SimpleGame/proj.mac/Icon.icns create mode 100644 samples/Cpp/SimpleGame/proj.mac/SampleGame.xcodeproj/project.pbxproj create mode 100644 samples/Cpp/SimpleGame/proj.mac/SampleGame.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 samples/Cpp/SimpleGame/proj.mac/SampleGame_Prefix.pch create mode 100644 samples/Cpp/SimpleGame/proj.mac/en.lproj/InfoPlist.strings create mode 100644 samples/Cpp/SimpleGame/proj.mac/en.lproj/MainMenu.xib create mode 100644 samples/Cpp/SimpleGame/proj.mac/main.m diff --git a/samples/Cpp/SimpleGame/proj.mac/AppController.h b/samples/Cpp/SimpleGame/proj.mac/AppController.h new file mode 100644 index 0000000000..d671ffdc23 --- /dev/null +++ b/samples/Cpp/SimpleGame/proj.mac/AppController.h @@ -0,0 +1,42 @@ +/**************************************************************************** + Copyright (c) 2010 cocos2d-x.org + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#pragma once + +#import "cocos2d.h" +#import "EAGLView.h" + +@interface AppController : NSObject + { + NSWindow *window; + EAGLView *glView; + } + + @property (nonatomic, assign) IBOutlet NSWindow* window; + @property (nonatomic, assign) IBOutlet EAGLView* glView; + + -(IBAction) toggleFullScreen:(id)sender; + -(IBAction) exitFullScreen:(id)sender; + +@end diff --git a/samples/Cpp/SimpleGame/proj.mac/AppController.mm b/samples/Cpp/SimpleGame/proj.mac/AppController.mm new file mode 100644 index 0000000000..a3ff12bdda --- /dev/null +++ b/samples/Cpp/SimpleGame/proj.mac/AppController.mm @@ -0,0 +1,86 @@ +/**************************************************************************** + Copyright (c) 2010 cocos2d-x.org + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#import "AppController.h" +#import "AppDelegate.h" + +static AppDelegate s_sharedApplication; + +@implementation AppController + + @synthesize window, glView; + + -(void) applicationDidFinishLaunching:(NSNotification *)aNotification + { + // create the window + // note that using NSResizableWindowMask causes the window to be a little + // smaller and therefore ipad graphics are not loaded + NSRect rect = NSMakeRect(0, 0, 2048, 1536); + window = [[NSWindow alloc] initWithContentRect:rect + styleMask:( NSClosableWindowMask | NSTitledWindowMask ) + backing:NSBackingStoreBuffered + defer:YES]; + + // allocate our GL view + // (isn't there already a shared EAGLView?) + glView = [[EAGLView alloc] initWithFrame:rect]; + + // set window parameters + [window becomeFirstResponder]; + [window setContentView:glView]; + [window setTitle:@"SampleGame"]; + [window makeKeyAndOrderFront:self]; + [window setAcceptsMouseMovedEvents:NO]; + + [glView setFrameZoomFactor:0.4]; + + cocos2d::CCApplication::sharedApplication()->run(); + } + + -(BOOL) applicationShouldTerminateAfterLastWindowClosed:(NSApplication*)theApplication + { + return YES; + } + + -(void) dealloc + { + cocos2d::CCDirector::sharedDirector()->end(); + [super dealloc]; + } + +#pragma mark - +#pragma mark IB Actions + + -(IBAction) toggleFullScreen:(id)sender + { + EAGLView* pView = [EAGLView sharedEGLView]; + [pView setFullScreen:!pView.isFullScreen]; + } + + -(IBAction) exitFullScreen:(id)sender + { + [[EAGLView sharedEGLView] setFullScreen:NO]; + } + +@end diff --git a/samples/Cpp/SimpleGame/proj.mac/Icon.icns b/samples/Cpp/SimpleGame/proj.mac/Icon.icns new file mode 100644 index 0000000000000000000000000000000000000000..285dee82b3d3f80acf3c0037b6b6ce35df0e9e5c GIT binary patch literal 77152 zcmeFZXIxat_Ab0T(TVPcCg&WwF((wvIgtbb0l@$Yf+$9U!rtBFj7Ss^6+xmXS&|aF z0l}Pe9`lUjIL3ZgHO@J6=AQq(U*1pmcR^-g*WPQbTD7Y7s%Jgb0ULvNVx+O_0(MTG zgkcnJ)SEEf@#a<*=Hn~`LW^;F@yiUYEQJKZ+=Qc z@;C=Ct#KBLYV?`;X4u#qA!fFSC$v=LaWrsMs`_?qirQk9g*k`KC#_sfo*6ckVr!*o zZp=~SaF|Yk>zo}H3pfV)h8!M;qew9xD=_6Vb+mO2tr;9eHk(9MpeQIQtLrF7eY@Q^ z*gw=Gx!N@-kqq=bywpD+8SEYKE4bA)B$W>Ib@aj2;qLifao4*CCDMUYOsqAiFMWCN%jT>Ly@S&1;^L0ra@nm@kJ?xIfsBN-+{E3|Q}16qt4&(a zE0u=FhN~T`t-ly|wK93@k*hsXK@kDts@odtvO3};Lz1ubcyISyU*j_;xh`qk@~sDM zbg%O9Se|Ku2@aZLMy?xr`t9vJCPy+o-5q`0S<5H1x7jaSJ$1Rm1aE(jaZ@J8*VowD ztypEb%*Vxf!R$$%1v#ZF?d?{s)HfMtF~)R}I3_)J%QCy=v#d4wn(CHzUVFtcI^W+s zc>Lh$-G}dPJ$?A-@q>5p--l1`J>FjX@zzuPQPjhm_a8pK|NQO}&%9snJbC!&(eUNF z_n+Mg2!9oF@b}wrbGP)um8V-Sd<74j_~qV{N6qIt?-FIQo2MSOuiW+ft*15h%@yJO zr{BMLTAR4!-lIoHYV!1t*VbQ>d!X^%ovh=DV{6(PkOQK&7rwodc!=<=@t&1bpEzcD z;IR+uZWGBd&gsYlW|-mXZTB8TMkFtaV6F9X+~C1lHvQJM$j~^irH&K90~4l9K7M5& zGBP}7?&9^US1+7BVb{5)zOcy1h<%fc$Cz1}t*tC?IFlK^KXikem9CM|%)rRQ<&`_9 zZwUU_irEm-6;R4qAKEDgNKR6pUcO zi4|y=nwmk2Kp?cVG9zc~KJ@A0HnK5DiV>(8n?Rd6TAqa1soPDmPp_InFv~cBhLMrH z$h-G^55C@ge>10SJ;t^W3v_jK zboC6hEjZJkJdZyA{Qi?0Pai%k%1v5i2y2-T7wBqf>*(mSjIsFN$|j$^bLGbM>sRlV zXNba<(6lpH0s{`0$K!JpBeUEw1&oTh7umyqY1ndmjG`(q7YJ~UE{~&%xgK=G z$P9gKcHSJ!kdBd-EHzayLlFS&TtyX%8L@+hX^g{GrL4rp^D&;|YIVN35!@l-Xe;u_ zt8hCIYJ_jurvX;Xa5JWvz>CS$47DoJ)OMeivR)A}M`9GJO8r(10XX${3KmkiERxI|!GV1AP~cRX;c@9hAgK6(j?_53WiF z#8S3ou;)q=lkLQ=2nP4T*{LSbziMC$2QA$sT{e|Jp?*5Pc<~Ro$ZmpJM-d6X7b*Gk5@7| zrI&h!K)hB(^{K{|_H&Z{p>}%Zy$0FmXKe+%rs2LpiCC&tQdW7guBr8G=dfY4?CG~J zf66*K5(Sm{O>Pc$>;35TiNBuFk!!BfRK76 zB&TQPrPT&ad-fD&?Y$>Ao;yME

DIFU*Fwvw&PsdsixNYgCbE#(d^=@ zJ&6K6Ah~Ftfg*`gDEL;`xDF3udR>IR^%=_YK^Ho4eNJ=Gw1X>6TP+ zygb&$dde)f{KfG%PUdrl2ma4r7&R@q;w%_w@9668%P~bN4VxFNLk^I( zNhJ1m_Rh{5v>Y;>FiJq5kxj16xFH`Bb>1o?gN7yu7DIbGJBJl(CmG>Ed{WA1ixsI0 zCd(o)m1S!*wl-HZHMiRnb~-Dac=r2OVl1l3{>|Y!Y&vPmnla-lj#gElZnVekbnTbB zOjPy_T0hTezrW{};0cpwIn3oH9xg{b~m7}?lNm@>u2#zb{P z%>KBzBosCdjv#ya;0|tjC)e=_%96 zWGYMBYRvTIuKs%?A!?Ei9a-YE0=Lsxv2@A2Su<^IY-Y_{xYXHe!(s{&-#&XB{fPbW>7BQy znd0}4?mvAH_lW%X!NVAI@xkp0{28}i-g)*Q_7UarjXU?nk2nvW-Fbdj?eu1zpWc1d!%hk<`2A`ox9#S=+j_b5_Ks5;Sx1>q3~h=`qR90iSO?gZ5*`tIFDhwv!sJWW)RR-!nIICZw*A z?G_f7meg8f3y0g}GdFvFO@C|6{upuE^o!3PJbv^jH@~>3a>|szzR{VRej3eOu{fk? zPQyEt9cN}0WY>%hPCeY3u_55+%w04uXlvoD;!h~QPD#s2tD5dyo13%Jarx?`%F>D$ zr>T=?x*b}4=vUMp6_=QicznfzlZSRLRcC5@z|36*Gk5xej48!m(GB95q_}*4n7M&y z=Bh>I?Um2m1yR;V&)x(BBcq~YQlc~>GFM?t1s>*7unglV(6G6|dX%td*B(9Gzdurp zXIR)}IbzhU1Ew%@Ctln@rp$9TG`)2B`mMVL`}gmQ3Qu)35CtkzGQJ5{q%E+PMPVvS zJ=DZE`mbERLG0Iw+(&5IMXtaU=_dRA!*zK~(i9KjjKOn*gCm#m{kr?2!eX7cn_%WT z?(_Ey3?4sersG_G#kr0i2prLV?WnN0@fz!WcL%w+FLQ#4yJ7(&zN49YKYsh)#_tc= z=YQ;K|I@p&@0GIu+=u^X`gm55Il;RVKz|Hb!GCUI{3!$~s9odZg zyctGgEXxHanuDPRdL^=KFgBk>F^&%kZw<9HXW#t4Pg0+yu-?A0)gOjk2)70`s^EXP_})d;9U zO9ncH6xP5lU!V*yivpcW##n0RX9Ofm3&OGrv{~wa<|#r<0msNn zrdBPe1-GmgC?N%Om&5?{sv{{ISXea)aA>I!@HiOBxZ`z*9!4Tz3~ftcqX08UO;zA8 zKFBZraX!kL0(()KmbtJ28VS%?w`^e^M&>2-Q1oM}D`tw|6dD2ueg@kbp1;SbZVMYN214Pm+Ei5esmWKqomO?WX zGDc=G$QToI|MW@rOG{N%>=ZH?g3Jgcn-XRs=!3{IPe8UZ<>MqRrD^U0jEyb2122S| z)fJUViz(m>wmxz-W-9u5d$zz>C^Y4hV1K-*XTJsX*t+{q+4oO9MJKBdE+K(~So#7O zOB@ss<_Z=T<`x#n`3D6i@Ei|1N?F+{TZ@g2+l0j;{OC!2$;pZXc5HZ(Z2)5=l0S%g zeNbR*!iN2~(uQH#g9%vH%MTOR$iB#ae7{~@SyPqch>!t}QMG_%VuG7SgEr*Sbb*=B zoC7WN&6i}qp4Q{v{UW;%bL9t2l8=2QRW+3dmtx>Ij!6|fXNtp!sW9_WU7xP+eA8U6#2VJVN4`354YW%$P7iwvKu+QJ^j~Q--Lc z?6~s{o}S2gfac|wFFyzw_w$9)6IC^32bWMFKDZVY0*bMTF+7fZL^79;F>VPl zNcN_z`D>Dl_pb4HWo1>>abgTerRiFh2}nl9IH<+{_9!7x)@Q+^)A~>j@m=<^>sJ}{ z7yA(-<9)ePQ4SI+5AT5~g)t4w1friti_LKGx7d;?5SVZ<1|}T*O30``WFMb@iI$Om z{D_t*ed;Q&0PU590V*((TvGrEG2vkW$E)xiz|qrU84ZBa zx9At8A5UseR8>@0mgTL{0y!!cfN)t@6bUGXMuvt2_~G9^WLsLQU>Hq1KhBj@R#sG2o+#X^54}<{7YYp&6pVymj=nx_ zK>X|(@)2&%GzI^V)X#kV_ATM7;+JoqWiL`RF!iE0KfVxOHNM}jI#zk2yu9LQfsZ;B zBl888np8}8j9e69AO=yR?iQIbv`~;FfB5z}@lVB1pZ}0Ong@Sd+?IVN{?z>XYy08y z(z3D>WqGNKAV_J3LOzD6SqcvcMEZo>B;+H)lnoG@5gTUu{HwB$NuM}>{P|IK*K|zL zUiHZ5-#_A?Xn%gYSWCH8ekPk zPmlO13mK*e@UR|@j2R`p`TFhy{u}md{BP>NetEsa@5-ld5AdK{U*G@s+lLSD&K4az zLL8+Y$&YrTM8iU0a!5eY)BQ`7n?zrKC<_T#nE!eZixLP_qyFg}SS!pIaYVZMN*3y9xeP7}d&W1DHidZi@( z_4ikAU*m7E*Ku#u-@g8>>C~UE-o1VG`QgaxH*ep(dH3tn#yoK`?Qj<1ijl-HltNh9 zaa}?#O9TT+7^|8X@nOBTd-VRzO8~K6zIyW-_8l>=)Ly)N^ZGTq^!jJRtG7di1)?Ha zao&NwW^|CoHU()SkT&Wy6c&6F4JrlGEPwz0=`YWpzxd^sH?Mw)f5H6aS<8&wN>siQ4|eu`lXNQN+=s>X(B*Xi{7mlsc; zJ$wG-}k?7%Bu$eXXW$q3bPZ!Cr~l24iA=afn}}$)5UcNT@lzt z7>EpUBUKc}lZ)Ozc?{o=p8s-YUD~r3kJFxDPsLAYkDos7%*+wx^78W1qc-YN#yi-M zF$H5wVU9qggL)^@rx+L-fFLzvF3ixim!ASQ^5D^<=Z_aFrQUn-Am<_V!PCLKOi>Om zJNIC8h0rHyYT>XlFbs6)7}+@c+Z8#Vin_LfKwi1 z-KRge`{de*w5)6*i<6y|DsnXO%kWWvS2J{pqOGN^jmstB`eZIk2RC3D8X76VTn{|| z>@I$XefR#;5>?D7;?~n!cjNBR?%us~`_A3iI|{cS+-^=ico1YB%svo1&j>%d6_$O5 zc`n$dg@bj-Q#5@ZNf|8^8hT8O#Ljwg^UkeXw{JY}oU4rKZM*XL#_fb#dgFD2bhtn7Q$=+NlO#g zB0wOntE8vLgSWb_zP=tC0wVO%E&M9y+LcG$Zj?O(6D`i)xpFP;D*f6uN!#U{SFXie zrCqss@pw`yk;Y5SIJjnd^uhG>b>JvPBo@~sX=#b&-8KNBBxOB)Z8}WN0}n4;y?pt~ z#ryfRt=Dggg|&AsUX8iTymINr%`id#?Tc4pF4HbuzgU%+jHf82CTAqr`KDzgXKn`> zbYqY!0&7Je)<{Z`*Ho!)SN_~M0&BR6_{Jce&vz2gyo`O?L>3kp}R8DcdT zuf$!TUcPWDA(2SpB_>DjNK8peN(+O{JypjN9H60rYl^@HgbrDcN5U~3MIDr)?j5;w zVPyEi(7k-s?0Z8Ou9W5WT^YU*J;FYJWu!`#6w-U+{Dooh2yOVna6@83Od>leF)=A6 zY7r!vd~>;2ktQJ*OX7l5Eeclw64avW(!s%j^MfNnd-^X93=Iu*OV39Sat4MZSEW95 z%&_f-bZ9^{h!0WDw~0=w8=WiQpkwOn8uFIkv<9DPamo(IXl?b-;ejj_p=A3MS2QjIGZ{y^h)u5rbN=) zCzYPd6i3I$Fk@qU)gY+!kW4~-)J$BP0~tE3t{_o6p-0+F^icYn+WLqdqBpunr@Oc7 zd`B2>O5q~K!xy^yx_f%Mr41*$CEd9qB3{gljtMe_w~)2~S*fOmtBd4za<#c&Argxj z=J$1Xi@L~X&vhqvanE(18)&mp7u`BMcVm5jH_^rDZ^*5Zb{!(3;zTS$934EF1&NrY z@Sp(yw=~#%U`FF%z%5VqwV&-EI`Ol~ow|VJ_cv(IX*nw`-+Z9I{cLCF+0Krv)Yk5z zsQpAN&Wa-Nka>_MsF;H^LXD8yrlh5XmM*7VurXTJ*w@R&^R_@9b@= z>1fA0Se@I~=tSkBegBQ9G6@qr?^jkyKT2xh#<;hYKe86)vEw1vmAyw8giI z+M-)IXWEjqhDLj5G}msrp{_n*ukQx zhtEsLnE$mElLsMguxKX*O;Y>|(cyww+SX5+0csTsSBbfUlLR@tqP7FadNmT_` z6~O?BHCS8{8CzV?-aJpY7_S%CaqF9#PaG77hejq8oNQ@4jn~oZ>l*S8G}oVwt>c}p z>!=lbxw$&Jcm?c@2-_bH*l`ZwB zPM?B*ryFb11Kn0GUADq$U07ai(`oz^?ewXVWA&%wPAN6kmnV2kojhUUq$zV(1%!t0 zCHAoP?%nQY4y%to5{~f+6%lxaQ0HkV!NqAwEw!y-7I7^#wfIT;sk)>4-Bzq}!`E=# zoL8-nK2mr3Zp-TDn1 zd^h-P&aNnrKf$diB{q0(@ZIP#XYO41htH@27}9#d*|y!?2)pRd2)raP+`!)&xvhcyH9t~q+_*wK=bV@FDl?OW@! zVg1HUn_cGHOr17!k$X_EzyGGFqOzEyn#W2GZuRpI2==wNF*h+2Oq{cL!Myo%XU+4* zgXvp0Iaz_jwUJkpaAlEPK3h#qT@e-_w-d!jit!_Q#lr+xte1aEnTp1-W;bb!9hX3_7*ULI+oA{ zLWuz9Q&jjW;3S3`2Ubjn;={$F!#YQbV|~|e+T!n^35zHRp%SopwcD~IFe2}$_%OS; zIAzWQ=dail6d1VC-W1XrT>$}`eT+vajXH{@s>XwuUwELX zumCSqEGWtk-LyF<&_NY;^dgLnbntAq?%9=CR6rE63yQKMcI{m&fcXw@Fr1`{>CIiS zc;V7@fm;IBuP`8y$oc|v*jc9vNW7maL@Ep=&^tBi@S!|BpOtqgGi1w_9WLq^B@UyL zD3ry!LicBh@|k%BiD99BdQ=iA7E=L1rpuNuS>mxdV6)FsSh_$i0dPo)0RNX*1sD<| zzr%S%j$(Fh%C_Jg{u5zkz(~>XgJU#?bLjp=Xk_K)#72a`(h6_)cua{oX2pu7E)Yjv z3sqsQH?Ty2RI)$>VhI>oT!jYd9c_65k;Oikl@+&rTj(MNJeq(3#=u-hhz`QlgE?t& zq01mgO~f=vnBsz!E1cGE+PG#mz%(pFgxr{$fzU(&iOUu7L?D;oGgK8}gEu|<;6Xf- zaqwXD&YjzY7%2tg(H8AZ$T*mpc_1q>CK!^{6ikgi*}=il$8Uq{bcipmvAMaKu8M}4 z7@!VABX;7F{>t?W}7395s5O0S#$!%j*H%IF_YcucIw3>hxQ)Tr738SBFDpur}K z5aUq?qO28gOo60iVr6Bj6oaXOXJ&eOInOq>oVv(;3QQ%Yo|);tkg+&$xrm2@0uBjw ztHC0WAB9J!3NU~I#F!x;LCjYCpIwL&MeWZZY#~X;6wCmU9%D+2#sEN3T;{cA(e#Bb zYu7I4!%D0s`Y9i`Oq9!4QRcx=Gw19Rp^_kxV?8QeO;;!s2!)0ai~tB6ihx>RO59>P zj?t9`Rs#5^9E|};tF*>*^(t34m(?zYpqQm+3iuX+TX74LrDc*lX81}<=oO$56cru; zNlW@>b+kOF>4FR^D}9hpC9ld4g{HU^X9mdUS|a(DJg}aO>2CCJTIKBQ;sQH7GNx)Y z3Ra2C$pBWRzyPT5cuI;WqMX7aLPPh2#UxnErE@LDf((R1QOvd<*t0im@BRb6EF4x9 zL&Az=M2o?cSaUbHIjnMYT(v?MRxFmT2``E2SB!OHSiOFS=Af6RzTaN5SDaN+6=(f$9RTvP!oAX1ZWwOtIFfT;)0p_?%lp)`}W=0n-$O-N*-tc zY|TzRv~7Dx$o6gF*khUpf}_khuB?Btnp=$P_or=B(gy0jDEjvx2s63E1Ml zIV;DS4d^zNLMBsaVA;&t6T$ugTebuQZVB3uSS!+o5u%XcElYt>QLqnmS+Hcu(q&U& zSAi)2f+3Q_qzF95&2nLJfsg?5&ej0jpWz#nRpDx(gx+;52!D%dm8Xdf0hhWm}Y3h!(=7Be}RD_6AA!$W_cU~MYL4tyZUeT^YdLF7++K3 zH(6k;r*CQHTG&;NuiHrY>1|r)v2L?>P)Kw9f7{i^JmSSKX2Z2Bl$|D zN&t{Hin5A~$-q-Q#F@{gL9i*#+pxjgXRVLV8V|n^JRvb^lZTg=kB_%ETymW|*L|J$ zdbfqMXU zlmIju#Uu$sk`Y8P4w8)vI9x?2RFN>%`5sah?&?dVkUDIP@!hdvYn(0?xT{qTDm_$z`x+(0uF`CVW9UKW3I=VHSRHP%I+?+ zr`j%c@o-&iJ!8faSEt$52{yPb#d@4B+(rf&e?fohr zi(HglS1-4jK7F3UGU(ilCCg@6+r-RZPKV!ZrcV)Sp)Qg+nh0teg%go1!ssxEtVjnf z3M}JA_RcQO;#Eq{tL9oyn>J&{G;8bWHq)nBPm8f8rcHHoS*Vdk6#%k1nO>>V8DOh#g+5>v3LF;h6xrcD}aWg=fv zFq$&)6Pg;uS&=ozII2tvhJILwXl1I&BEzDqprQeA z$*2)%+)+4@3=K;-d^RK$@H|7ycnmx+ZN{uQ(-J1)lXw%ygJLZu8fql7`2Zat1Ph^U zqYlLlO5{UJ5y6tKVJsvj&?ZhCKYqga*a`IUa417xodZo&Do0iQU(fzEuw+96ZV9k# z*$kRoIYw62w-8#59XEc$1o1e=*s)fYCi)u6kaN+=bgqi33c`DEFaTggG#aS?IP?JH z7H|kfCYuG{K&eHPTOqiDuB57CXo8YvNTiGn^)!{(Xm^BGaWaj`Q&NJg4>m%upChUN zg!@Ki68ab`3nZ$rfuRc$nJgxQ$z;$O3N)0O5hMdNZ(xCD{C&3lOV(PzTkr)h| zPRNB(DDbYqVZ(xxXk-eNN~7TlnshK8Nrk>cdI~<}^HmX-`Cs@c8~Sa??R?8nW$+YJ zVV4rg>x!u8)#T4-_p5@ z=_n}6?Nx%2hoNG!Mu&<4{ROMVP<@C6p(JE1PRGEbWN-m4_W=(@00aQ+w?%S$`M~ei z);8o@VJ$LVrwK!asmx7}Zx4I>rPU3M@r57~nc8mjj6; zu1rNy&KCigGb&0=TT{(S#o)@1KV`>cU;cbG4WlWkakq6E&z z<*3IfiiNzSuC1vH$F)BG{{6SlKYja~M=WWOW++IQLK&$6%2J1}Jyw;56~@z1Td{2>)Jbpi$(jvc6LsTg1_&txyp zBfbp>m4M&=D*N`e3r=Yblt@VuNegh}`v-auBknsPV|`MRnK~N5cFeH+r{sluIt3}EI zqWob02-M#@Zrtu2I3Z<82BZT`CgTh121d?EIRgXI!QKmh%KHB78Xg)blPUrtf4+Ss zOJ(DUuED`G!0#Uz>3S#oZD{yXrIg)&z5`dqm>PIn?_i6RJs`PwvH#C+z2`6V50oRa z{<$n2jEXUr7xsZxNu!h|89IONcPTzlDOHvX_SKp|0*-OU2Q&dgUm|G$ONWOf{R0;z zaD&o-w8sMWMX<1II2XXFxPb;K9onV6{pTgsQstq3dq^E=bQ%?#?AI;@Z`Ml{1_vbF zebW9aDPMBFD<0qzAoVbz3}Jr?1lOa2g0!o*_)F8rQ~)3g~TAuEa)AokZOU5Q+4$q1Zo7xTR&|8BMwMS2Zl~N0Rr$3hSB4O zBjr8!leNi;*qkH1gXL0f5K?=puCBfTq#!Z!K?PgD>1k36$&eHXUNlT;Vv!?^{HMX=c7sMo37zaZl8E#qwtf&9NTT=Rbv9!Fr z=KQNzIuqmA!5N_AFwRnGIY9E&HK^O*KnMo#Ac}MO>;XGtrOLzg9ss`oCy_~Yl*m+4 zb?289J{alR1t(V|N2SIf@kBYm{QvGc3NVN-7+dIiFSs&V${cFn1yk!E{3ibQdu0_> zCACi;?Promygi-6{R2m(HXyMKv05stLFOsccNBBTOu3yX=HR#zR4WJila(Oi=3V<6 z^+_2~pQ?`6y}Ij)AgQ!2sD(PE&bQ4OK41 zIRBk9b)vGO>d3%{GiD^1L=ERfQqs`iA?YNLeDoN|E(I?GBMZU-M32V)XgGkIyI~RS zaE1j#|9@suRaTuSx%g-9IEa4F4g$`6wVWN0E2 z?}QNU>Goz*sQ-;$r3L&da7yXP+ux#@;I|#pfx*6!ki?DRYr!B(-#xddjw|{W1w19I}3S7prmbbrcgLybJ2Tq)I*|@_Boh#J` z*#!kf$oOL=P_jV-3lW1ROFdc|@G~4_eBClwjs6=Gi~PsAV|b-Xd1=@0ZMFa{d9@5k z@=Z7e7bF8Ya^d;;1%+Vyk)z1@KfMpW0q-|7;?0U@&U7}o!qWafu(Py)omEnCqP+CT z;Fl9)m>ADpGO$M#i@(wj;>UvRd3lEl3XuXdyl8Ys1OBh|qq(I%&II~A%Gu)l2WRUu z{-@SY($=1(^_(19Xwavnw*cW6X1kS(}BfV#(ZH-^{=KaZrtIw{S{%FfBnKU7cv9e@!=@m~gE2I3+9Po1t$(gU%Xo8(Nd;9FmR{fp^E9OV@sef%~TfPdH>kuaC4!5q2h%*=yXV0#`&FFbs> z_$V^ItPGq3%i_tC^+nF$bVUDp_crmJ##=e{>)elD-+q0F|Bd=3DrV%J`SQ?|Lcw5< zN9BhPO9ry!;hvEJ^0RV~`+pAa(GsB6$=zR5)gT6tOey-;4=>?l`5XK->CKzy*XnOx z|Jr!!)62JSUjF%D7_Ps5{pLLo!idB4!o&I3K9nMy5>m5GgZ-dH2<}Nu%Q%pkiMjz! zk`Hn*ic;jG%F3E!ez4ZsJpgg|D+=O?#l7OZ{^jLcIL8hrmS4Sj1=snnU%nYAJXBa% zR8W*v{`%PxKrvyF%D=P@WbQBi(sFOb7EPrQ8#Rp2xkQAodvkf-Gl`(SCXU_GWpG=n$_kty}iM7KQ23|%(bJ(j+d5~6*)o=9AEwN{OQvt&qnEFFP_Ff!=8$s;ZKQYw5LyB-mlBV z^HlP43)0J8yxXXVDd_|3U_0192-(PFke`^8oRX53egG*zu_X6X5iCV8+?87mXyi$S z@1Hz+{P6L^r!RnJ_VjuBBMeU0QJ*~OKqNDz?5ytZ=jUM)+!iQc1{K}sL99B6O-M+B zauN6+EQcVK&jGwh8)EeMk!tkb_{lnZ`0&}oMM`ORUp&ZuNPG0)=}>Mak)xcQn|AE+ z=SY?}0v&nOO%57Gl0R5cY?%r(iT@&WjtjZr;3g z{n<}$+N0~Y5^j=j-MtlmlY0AhcX~RJp`4zXl6%?9ETQa>4+S$ThI7IPq-Nj{ktjMQ zHa0#H+yaA$!X$4AW)yNbzaY<79m5=2pIjrZvv1wXkn_|o-M<3-G=*!|Ze71|?OH7S zc55geXwPAIgbq6U>KhU%nQ5m44;gwf?qCH?9D2?b?-_7fO;usr;0*OqXfmY@)u5 zNyBV9hG2)5F3;>EqX5&Q}fKui5~}~{)`7BS1w(;eBmC@*sk3W z2~Xa>csb@0^YX>(H$nxy@;_)7uZ>hCB;hH1D0(KW+?ad-uR3i{!>no`Ng3@2oKTCx zMItdGWuXvCPRUpXGtFR2);1H2WL{UqEp5col!{`p*B3(zv49{He9}*AXgVdqc#Mn4-JTD<0f-|bInM1** z*2C&Nsw6b@ry87y#$$A#N2#!%L5c7U_edp&bQP=={n{^di~H!^u!%i;KqQWhRusqW zuIOIK!Sr$=-5r&`Yj@~gc_&7P1ym$1L_I*|Ded@fNe|IY>1%B56?Nl1(cQXTJ?Dnn zfgo3~NU><7s~2_-UH$bnU6QUG0*8{XA`!FuNY@SnOed~u05qUPcIVFBd-jHg;Sr>L zkvOgdL!Yn!JcNKypv(21Bf4nk&OvT}E~$%iuKTRC)mELjSu|(k>3*V%d9JrEyFzj< zACHO!6imD~``jTRrXA5Sm;w7csWc>H*DksAaNvZ=M>}=_EJDU|_FPS0TW1H}iOGMG z5QDD0uU>mjbEl+i^MSrLpwD%7wjWGxIae69ACHM*M-pN29i3A#4gcn$40#M~581I} z=PqP@7@XeZL*T|NfHm0(KIKSZX_vwqbRJP zvnVnGQQ*SyGgoaf6_-=Pqe8a^L&*@Njygpd>=w_5HNvj|G3y$;np@+~h+3o1Fk9N1 z`tlaUcekFw+prem46C)Jqbxk8`e;SR|H=Gy5k?M>0my09&6Mtiho*r~Ok-CEO``tFpCRcD&uQgkz`v7?#@ z%`Dg-8W9#7!4BWm@Om-EHYvH-4=Nbo?=68_w+3&+cW5B5>^62g z-B#BqZs0c7H=Jo}hMj$DTQh9U@dj4Y>9(}cX1Lxk+TK!~6edmy4~GxV2@Au+i7-}3 z?XN2_CcWr#A1E>eMNmsbnqUB+KYL*S_U*F=>i^H55krn*zHrwvb?Zm$)4xH#K6t=YUcA{1;54c)spxcZ$pWMf%Z`v%kG zlWVj8mcT%8n_LefxP^zUf};wvGTIt)%vLnj)e@()YELy(CHvVgm@{YI68BwMH4Ud= zPhMMFa-=TylyPlsV_jM7YN#~`t;X3p`iF*t^MNY2wes~2sI_NYMw(EdZrbc05CEz` z7sM2b*}Wc`7&axT`Q({U^VsIMDD*fwI;~peuzX{7bv0f^sjjZ7imqf0(&S5K=Y)lx^7P>jym>RR>|cW7kf96O632tFf%A z>d4ytH76j+J{GuaC1`PWCRQ_CS35iSWRzC|r_QvzvNY7$!FBagYp9q_pKfhEZQ@j~ z9Xms|hxi|R6mJN6;Psj&M^)Bu*tiiXf~W`#LZh`aWE)^I=~Gv1*}gT{ujqCR=!%AvJ54$V zbfK#2`i;K6en=Y%jP1dD#)B^Js^VjiwH`ZqQJP0T=#q(4;-FnM^cUF+=) z>xB1^lcW*ojnt7@n4^RWi!yU5{A0^0I^Ay>qG2P7y_Sl>*Wyw zu^6<~38-NU(hCmdlG&X<^#7i|5Um@8!Q~UG4=pNPSa>&i2BaRSI|;!q0%t3i`mCKI@>!5AO8e65wTu zVUzb4=H=kItem{GE%50n4r&-B9_oga`N1J!2l9wqW=?)wNXR-J*g3{RsY%Od!Qut; zT>SjjHbI_iV#&FoNCpJfv#XLyt4E&21sKXF0S-ik;qwl($9vfifG0v3Yp7zc&jm_ueNOG*aL#v!!R=dKqfr+_xtq+$c0Txu~sjE9oTu+z@5SV_BMifkK zV|p4&c9Zas@Cg_crOnAu6=k9lEM0+0qAnrgQenpypR@@+V~VQ4fCeZ`1HXpA41v0_ z*v`?*c~3#GE*!ZLsDmq3G;DuiHTfI`vWiDK9y=y3Uc8b{Ve{1V;OwnXU!4b)2DyI5R3}$Y zdvT5-3R~al(a|x{ z;(gooAvpvYG?t34r7~5Gs%&YX!lGfz4v1qQ@r_!jK;vncm??1BG&oJjV?aF|`l~R} z$=%I8F@+855xi^7V;j%>gpUy-jY>(dJ+>Fwg~J;aUUVqX(HqFqXO#dBr+JFwU`K_E zqjni0-;<~eo{pvI+SJkm8>}o1xr&(00V0|pQufcJF*QsqCx;zA95&g~RGm$O&V%yF ztJk=>Z}rAB$C&{-NM2K22N|3kx|f$s01}5)!#>(BR33XUn@1`4Uh`pbFu=u;INCVw zlaD)@#!@x2aBlk|`#i8}f(2>kP{>E{oavy zyannunWm^VMnCWM*U#TR70t2GRK{#FBO>=jq(s_MIVJ+PXEHb({nTrmAs?I$sudTx zyDhMu>)`1Llx+%i+v$^#-NE4v)N_RKB9ywf*FMgU3aXt};Vv7%>0V9(;9brRiwc7? z9Q!k-j4I}7j-Ajg`}XDg*Q={dbd<5V*^u3aC5RVMl?}&dyho?9-)BrQP(wTrV1>J^ zadvcZUFGa*0fTRwR96G|AOPejS;kxG@)A>bw|%@FAB{FdJDTjSGvP^%!2Nir_nv*p z8-RfgJ9Dn)IIH#_-@g9%^MbR9E{EovwFmf=;`miGC8G&RZ+?9J`r~!#WW%3&wb!{p z>^eHRIA{W4CAb{0XL;=hP=9$%1rGy}cdE+nn*$0c(~6{Ks|J8@hY<&b^}O zDWI23y-~ z|K^91J61PJ{AyFB9PM4FviHyEv^jF4E9{myyXsOf zwsS6Ii|7nDczCpsSb#_WFY#V~N28CvZDbdyS$C~PDn^+mB@fe7BY3}K^V(E&-E^BRIxiO3ZTpHkJ zgqNd2ncTHd%7FqD=+gtQ!kW2A9b$EH$kw2stpQO(U@NQZ;s$EEDm*fC@8SIc zfm?%s%$a$32~AN&9oOgRX{vIWRCrF)ar25L_);S;2NZ>y^Nz_Y81j-=Rn=$(5mhi+ zTI@6JEJ2;4F_>lI5#k@XC2&(}`aeL9@`?s3_JFd<_V$hr^C1_) zW^LKB*&leA8JX6=TvhvBt5IDB+w7F!1ubiDnc8h5Uhzzh61$FR|c$_yJ+D& zXP+6cyE9!9BYm_)?90i|8I{I46aua&bjm#gO6$5uu8p=pZvl z(bup5NV61qqCizJydlu@aFvrYx3;yhPP1aNvDR0Vm)9^c0PIvj&p<^^F-t*GUPemWYOm=Q2tj&X zY<4ExJRMM zB?Ac_g#6k@o7nt-;IHuHKoWD_Bf^Witd zH4RLlxgxcxshNd=yp*(bstk#=bec?xw2X|jjH0QZ{chl#Njc5p37K-DQjt$o6G~xd zkU{=Y=~`iE3UhN~na%J#Mo-Qrt^{#sVq$7)Y^;(cg^^B|5|Ne^moapAm8B;mA&31k z7J9>>94yN7BZq)L2);(zB9wqpfiR;fqE-$<{JcE<-$_t>vQ8XA86T6^@6mF~nAzGu z$)~6Hp1_dssMt6#hV&1VXD5mi#J~h;v=UcMYG7_rY8Gf}Vr*onr=z6_)VUG_wv3Df zxQvq)?h=qe5(?TaJ9Y_6NJ)tBb28FUQ^0d1{4Euepo)g3u7Rvu3 zxCFHLX>cMyOcBm8;^t6Zb)eGK%(BRAhbc@9)jDdb13|98^C2<1C|N) z2AGeike~n`?~d)9+t^rHpt&(T_ojd^Q%Q6P!9qbz%fQUa&bgh34;chJTvb!Y(8S!@ z-pSp2Pe5p7%zkV#tQtBqvj{sCC~&3a`STx)tW7Pz;4Tvs7@AO3i{>RIE-C{4x5S1GBXBk~sLr4052c8fyjD5|Jy1JZ6`>)`C}vo|m_A_nEX zlQuRP!d{SHSbQMkMa-h2laZxqzL@}V(I6NhL?B@+1i4^CMi1%QS<4Y(Bgczkf^9QtRCzl>RLJm zM#Qjmhp-F|jU-4O@$m%Ni5N1Oxmks&RV^R>}#&%n^c6dp%y9h_X;Js_V;$gc*6p|mkU8;Jwm0;xsGsTt`d$;nTDuB}(E zuYGy%Af#<+XKsOma{*^gYGwurjTBRy@g~?<43J?x-4s2XE>4e2SKq)Go+seO9iFz~ zu3{s*if&{B0&&3(@CE-$W8Tmn_fGfZK2F>|Cug?xm=xbWSmTuNW zFjQ#9PJEU`c|TO!4!2#9i}rz}w?8gG1fB|zMggt@Wd}w~NJ>tPkNeOPvJTx0QA5LT z-`Ce(j_O#On46!4O9kBGTiX(|P%bVww_T8gf*c|-uZej2s(f?iyd(8KV@^4t<`p$$*6u!sZ3 zp$AX3ur#;u{RjG0+BF#G=hF1b(#o@?wnfV2CH&&z!a~m?^~$rwmD!cGpV0b>dTnuL z^~EZFe!dk?F?;*Y%ED|fo^>9-^kQXx5gt$1SMRMa&nzzE=N1-P!2UeGC+0YC8}mJQ zmIe5&rN#LLcy+@3vow%&j~s*@~gzC?1<$?8VbAK>tgF7rd!ralRW*0fVi~d`($6hG(8%oE-#?8LEQhV~6Kwm*DVD zqeEU@UYJ{erpw3hj0^ZFBqG3F7l(V-^Vx-kGhlyybqPNUOvh3D7HAv1H0uDDRs!v; z9QkkoynhByxwtStGl!q+03*wj2e$+5EJC229d4{F&!53lEiU4xr{`v8ar1}qEb~h< zSA{lc=S`GUAtxU_g#)1hcTGK+o|&1Qn?HhQS;Wu6BO(uxcBZ8eJ2KJbrOuvL2GL|015R5Qt}1+rinTB6O&~jJpPX7cMwsU4z5CE{ z2)akpZX7op`22hso^Juadcz-4&-(u~Q~ZZ|-bA8vVrJY3%A7L32B zXA(#(SoO~>&L1Mo?arNHI5L>ueHe{!WD{^;)3{mKk8<#$3;5*`7wZ2Od*0+eGP^Y2 zhNpz%yLJ1{ZQNbVDDEE9eOPz!+2akL!69bh*%$CDclSaq_kV*ulQ1}p&%@5g3qwLh z!tFbE2p+r-E<_74J~=TtHI2e>c0Lo&v~tTAZg>B|o_|9B#{V08_I$DmTT?Tv8jLuE z7-Tf}5pd;izC@=G^5uLge$&!}G&slpFYuY=ckmg*lrg?Kw*coGITQK7>K%7e^m2&Q}w>-G2plbsG|)2quPy?*JJ^@c9E2#*cAN=%#0; z0_e&AN91!Vx{5u;)hy309Kh3qCCGULnvJx(K^#bT8>b0G3WOgTesXg5QL7-h{J$rk zb&t+3Pd(B09iLk~0NwrZcwl7c2&Dxu`VhDW`h8Im{WJCe_lO>iK5PqD!T$;Q95A{# ze|-1mF1Y+v5!`YSdQ7oF!k#FW5KwzUn4>tyJ)nE^@X3e|G_v>~lFv*&_=R*fO!cd| zMdI+l-1G?$N?xE}7aaaS2GEuSfjLqm1pCkbjC>};?CyH*iNPdJ;x~@|Jn%OHkOK$r z1MY+t7sVzDO>oftvHMT@_2~aU$Y)0DYryTv9Dh2$P>B}-*CQ?I0@NZ9W&kBezgB=4 z{P)N1q=Vo8$K*4k&n^@J@HT-;v{mAX)cr-m_{8ubR6D>56Ssu6otO>sIsYB&+i%Y! z_B{LoO)f(xzx{?jGd2>@XEFl%?9smfgVVy`XE(Hoi?~bMQOOZ3Fw#QNse5~Pc&yhG zPC@mR&#zv;%6rX^&}Z8LBKq9^Ti46RrpCtK;b+!t*b^%Vfz#cM>)AytFY4P^00@8L z={0<7tO{zF0Dk`P?Bzf3Gs8>N4U+&rf1SJg;w3=QWC(u7)l)arHPk%%@QZ%l2RE%1 zgjqmxoLKsUyTD2G6Ra~qR)p8N3}1=`7S3$`^}p!n?B{e(p8-=%grA=g;pbNXKSR>0 zuA%ZD_}S_D++qc~|HA{DM5sD}DxQlMFW@dw5`*bFZjk=w&}hMq{|bIiStUW8GdI}h zlp4l^wZ#BGBee-KB_jEFn1L*ePf$)kDFVR;v=dap1Y!|kIj#*2p7($WSVAw&#U;2K zCiK!=T}lV|83+HSE|V<5f4G*Go&y051b$6*UC{;s&CNuK(OiVfav5PUPITc;QbQgb zvpbNwJ}nTKtS)jJhcqNqGJbv z0v$eaV8Xd@5sKcBgRb|Fm_jW7BB1drcp#vm?*P4q}L}7ratYM<{l>cBx$qL-~txqI}p%Jm0fwwT0TIP44E8W>9Is?~Aa1l@m1 zKyy5qx>^i;eQ9Y)c|p|%0!@w)J_E1NE5!@IVG|Vw$j75{91z;hp6PSI2;~f1xO^cV zXd#P>{}F+nLkKhl5rNJer+EBmYPh;ErG%xpw5U8^!Mu`yKr_WYUV&SUV#56kC_o@$ zfOAl}5;*6~nLZ~B#^q%1w*1_MnA4D?8AUSVnxQ*pVi zTv`>8f!2Ps1h+`VgjL;86$phnxGp{jn_g!OIaOHC`NK-UKtn4}#6aJh+hCxfmFGVU z^w5*hvGn_tWA`2rdwCKeXy1Y|T*qm1N{sY1{QLrOfk9tF>3)J<2P+M8=>aPk!Su7) zq8L*7?iuLp2@v#vCqU4sv*-Q$_tHl)?ciISZX;Fc?uMVJgg)x<@zfK<7`yKo5@MZj;>_7`j8~ z{CV@iE$IBoePR5@om=U*Dem04n3o9*G$sd^MVp)4jTmUvn{ba=OgMoXAyZFK0gwcU zG{DX?$OwU6pf@=C2;NG0V}pT)54VSJ-bjZ+<(osqR-i{l;oIniV>fTy?k`HuOv_?G zs7UVquFKm=FoKsLzKZcX!DmpngOnJe6oYiRj?>5tVuCPik(ckL4w9qJptn*6Nv>bd z8l=5`>t^kCDlxh}mqxFp4pIa2bmInU44Roim!2JS3}Mi`$KZ{W#ptmMUsng6=!g>` z#PP9XC+%Q#7#sBoy?WzUpU~86FnY!{uB)g~XabRg-e?qh^~HAUkcpc0ce`|lnVervv~}yz-f#;ao_;%AT?Ao z5e^wTax=6YvxPy41a!~U-VFkpo=8CFT)S}o;-$U|h=4wSxjiAHqd7StDGN&*AK$Z} ziDA;Z1h-N}gcw1(2B8cNjf{f7^_UF|Odz03&LaYP2W;2C&j7%KE|rKi=sAD-T7ggJ zMfCApZ|b?tXD@Z2KBGx-iSgLP#DtVYx`c#i1VYmb_dcHkOX&JSD9J)<5~x17MkcV; z?g9XX>7nbe@`1FGK{aE0j$Ha9l4wC-gjV$hnL4G4p#@9AkP!tRTVNw4ngJ$n*& ziV8rP4GfwAVbG~gHdbbqPJS_o`(sk#=nw_{#sl`_!>?z+2ujnGp&B9NIwY&&>UT9X zHHAP?%mxL0?li)kPj;O=+nMKMs-dc;uICU{c>-FUc2S%}81%{XE*AI+0thWG0 zu9Ho1rkeUDIP=Y>h6avFbtg~4E_wXe(G%&%*-jik0WfrsnW6-=sF9Tx7glqRh>ea$ zF!Yh9`&mgbwNHP!57j>rl|K}698eNgmj?X_cjI~hh7Pc(JK53M(b-kEN7DekwQV!d z3Z@2Lz(T{z20D*-q<69b(9njpHa6Fm1t}Ah9%(TdtH|gm+&-GXL(7PTu7VrwBEpR} zlI;kp6e6B3tpuKFKYR$`&_~;kw1t~k*Z_5%Vn;*BDLdG@BOJP&{77qpqaDr(V~SHEg{*ms z0+Y0gZ$v~`_}-?u%pJeXNP-z8=pikVAXcME)l}80Lge_KY;A*WxUIFdy}j7M)ZPZv zZx?r*Cyke<8{n1>fd`MaX0*|?9&Sx@advZY@wCHfk|ViC8K=l7V;mF_9J;4rIvs3P zz};mLUIT1__65Q?K~F`(US-w6$`(y{X!Gc70_?iAwWaw`ON_NGfOT%}CaN+LQu6BN z-oEbcE^)Q(&1o$x&CPA4zOEjgzAgqbJ9&5oM3pqva4L-Q%C4ayA-;8wv2cr1hDUJ$ zIZ^ztsykdUBd`llUwNRS$qa22?F~(7joX^by=+{Z+&!!%Iq47{v6)NKG5}DF4EUyC zQv(puu08?Yx_nzv-!gJ~w%uxQS|}@;1%w9p)ILH)bk*V%ZoYt!&LC=FgrYEXgNAhI z8c(?GvuLQVPp#u@sK+@wx_WvV!f$~niT;CO*YgSRimGf(ucK+m-m^E@j(|hsfb!i+ zxm{5k1WtY55Pz?lhyDy?nA&A{kKSAXAuodj(v5;b@MRe+T;+jK=vb{&Qnx`vSBJZ} zd3!^9X95ikm$%LGz9GRGbp#r^t}H4j)Q%qjNzfHJLF(gB(bZ7bat-tY8rqSZ64SIg zF*`FmKR2ICFb66r7(`g>h87MRNwPdCMmA}KhCW#0@8KO_1_V$Rh8oaK&ET-OG9nJ0 z85ZUauQJ%cp|y3jH0}26@u<413juayWnyL{Ih9TDVLFJGMA03YLSa%?T3|>DICMP_ z&$LxJdwl}j#gL@?i-x8$4~x#MN~xf!sz{Cq_y>m;0)^AU+t>5JbrpE?%?bSDsj1mH zLVg@lc4%V6KnowEnhIDws7g%r+Y_qs4-f4ai-o@~hgdA@a~_`g(|mK6p+B!=Qe4?(yWqk^Fz`cS*92!HKLc)q6*9=W5C@m=|F3ZCD{YM&F($K)v!`<&7(9m0)dmoRF z9tuvrKRX3WHJ3q1F{I#-Im7{EL4hK{hlLdZ@YuO4d4q;d3X3oY$SxJb0X_SmyAnAF zq9i07t{K_I2#C&#)CTn*M@|XfAcs{W0@23CrtZ#RHIT+<@hnKRu@Mk&8k-^H;b&2@ zQW)k5!fXnGnIJ46vRznM7AXa<7W649Mt{spj);>$Kr}fi1qBrij*bm+&m`n}NdzD| zC);NOh=xW~G?f1WqV-J7-E3p)!niP00+K+DVeCerHWa17k%*Ck=K?N+1s3D?K}8bEj)@lTt+bL8`*mRLg!9N2Y@Fz6&Fufa#9Lf zRzXpxOYka!XFm6hxCI1u|HIzwy=D zkF`&&y22bx7^SkrWNczSR+(%wzqtGA`j55s6>n)imQ4^VzffomOIH_5K%ptqM(>P5 zQW=>hWZcoB&rHu|V>OU`PS{s6GIIB8q7Jn2xcJ0`1Z=Sk(Jljrq}1qGIVn2i%=|J{Z&KEU-W*We$&SntL1-&Gd!Xre!&OPY_1suYMh*xxDCg1ffIu?{h*~}V0pFRh zmEOrhM4;8(5dsbE>Jb8M*fETLj`C!>Nh zN6I3$ILSg*bjKzDpkq+AYDiv+1SN}rq|Dx&+`Y1rd~9?eTmk^?fdFVj8~g2K7zUrS zHwSS;%)bN{5CI{Y#*l980e_}r+PVW?qrQWciF8v;9Tt_y1&8>T)f-UIv$FH-+{wei z$^h#J__GB8f93)FnGD032xUO1oe?oj4{7KPISmw~a_kmZz$8=_!0!?n5EKx+x1b2h zg>e)N2r&X6hY{%K>f*hD0k}YcAiwx}L_aeyv9O@6A1-_tMgvbveSJe6Cu?44Htc-v z>Sf#j4M7tiB)#w8hA9cc<=BG?tQqV!fxKW#Eief1=DmB0OXUB>KGOpapbC|dfQ&%> zpI?Ai*0E%`iV>O!Zotp}*4hSoTDG1_u)m9(IFGwb1<3(|eucY1OVGv$`osOPDlBVq ziWXe0Sqy@}%wC_s;#ONhxI=*3Mc4!cfPKb#?)8OwJot}~Z%KC!f}gjNvT@snIqK+W zYnlWj_?gn{+$EGZ#`QB3%peDXOoki?0aA(GnV6i26^Hq3x83UtuSW0$__@JbdN&Wi z&%(9`FC4;pc&GS?`?@>2?{Nz#JDF-GK!l%#oT7e%pUE~mUF?MidP1UoU;uZO9%b}V z_!IT4YU~c2#TMAFckT7^_VDs_^^B`IbG$q;G%D|K&)Mb}XSY-@4R0$ecOOqTA3&eu z_Sl=4ItA^IbT`yc)l$=sv_M_YEjxQI5IZsTAz6j!I4H#@#{5V%c2i=UHk=sb3Z6hd z+j}}Ygrt`@9_c*M(Nvoi=nin^YqqqC!>o`$ljhPu2_pdI2)q%)7>y2(+d0&?!m8#>PK zD^!h@OiD=cMenp@Hgt1!0`%G0$<7)cF>Os$4eXs=oSmFq?R6Bj>|C8~5%>(nwkZnY zipoGf%NqE3z;hVsrpV)vDMva8Os5wF1VV`o=s5(r5d^_oHCXzj7(4WaH5M&LCn&JO z+0!`KJ3!Tqp@N3FJ>LDT}Ho$y@BT1at+%>DP3I*dvUX zG6#`jLp~TlCLjQA)?(>!@#YBi1@hV6-Y&zI+1?t+XMJl28(koub!{!x^E>l|tpcJU$vGC_|bsA;v>&56m;YBb`6jvxUtePST-+Msf-a-3KBm(uL5{)}w(Fbm0w>@ID_2Ekn~3V9_Wo3>BnhrKMA3Nn~Ww zWK(5!Ny{pm`Z)+wLIDS#Z{y)3kYVT`wDcnQ1ErZz)PQ_R1!nt2=ZE^?M>V#3Cvm zP^Uwz4uWQ9XdOXoYQVAsJR9f1k8Toye3k<8SxsBd&_q{GJXexkN>WrrLdVSuq0g{v z3aPbit*G#!9e0G2&_V8BGSG&rHzdnO>{b{y-d_`HMIkcSd4#2HyYy&-_i_pajl&gRB(YxFaPX~2aOi~J# zG{Rmmg@g`6&dMt!1}Lu>kk2?VQedEQ!fGOt%KBDzX4=vO_?bdBsEClYgd{G}1fg^Z zDntlnFT}+puI8mnz%w2MpCrV`K}Udn(V=!q(3lFMo0Mt0fRKm;P6{WXBPj(9lT|de z^^EnEpzjBIg59DW1kYThQRBih8O`cLkvfPq(zMLi+vYUu*nrzzr;i^5)~O1 z9Owr<$K5;}Rk_gvDm<%DF>TuolqV3@z+Y-{bgFj~TF8#ph$mj%YN=9}; zNkw&S15~0A^3q39t2}g4bs_l-ZE@!=T)eO^30I2cOib7x6B!;7=#LCJJK9-Wni?7D zi!i|z1d~EyLP^WYEg&K(4e&D;6Tr{p1o)YjUCzeA$<@o(KPW6JHZeIZ2MpHKH$xsA z!U`kVk15^_2g0VQ=!JtI>~Tga;TB04x8m!4f%dZ4xuRlg9{3+9H- zkkhAe-IRU3=b7O-u@K7xZ6YGWg8bp7KQ0agQ@UDe%1{XbIZb|EPNq#{dB~$U5^-`m zHXZ?CaTy?=we*b5tpTtGNH;PzF(o6fsJyzN1+@i)vjxs_WCwSO=FFMib0PESpg!Vh)KK86^!P>$V*`1%yPU z=<2m6Ff3|+Qfd}*VIzbGl3fTp3UM1ed+yY;FYsE6LaadI{^(ybf`zg$ zHq-;(DFAXUvRhy$Hy6ABiGhZK9EairN1~0INHemsb8+w7B_syavzn%^5wuircK7uU z4v$Gdi&k1y2N8+i`nsBGDvHRH zV!{Ak15nP%nF6m2)ZyCB&C9n7RRW-%-w2KeXF9t9j32rWc{8`D;sA8Uku!PfkUqond0Ne~g|9dB>)v<;;N;AYL11p@SC#`Q_U}ORn5SEZ1b#etuK>S0E zL3~n5W=>vF8JyrK-%iwRz^SOJ4R?eQx_z8%UJtr=`TqL*ynO{}I9y^L7L%BUWhI!5 z-WM4GcgcYPd-wQydwIIUJp_rfbDEP8DmO=U_3*N%pisbj9SGx< zhYNB0;2Ap?OOlwFfyE`}V9DU=5u2ZAfNDJ8IR|AFQA!aqLnz7pE1?c8-B5GDe~Dae z?QKns>qi3D;SIy<@Xy-X`j7Whk;#ckJ#c|TkHNS!2|~V$SPy{m<;1a&@Nn>8H9>rW z$ZBqBTK%;C{64~;qZC7eFc?kP9nlpG_DF%a%QN`7Kkzj_KYCCLo(Kp#HZl*X4N_k0 zApY%_uV23YuYZAwkI%+hHBf$sU>xq(7`%F)um91n?|1V=01ZZ-hvK?~1z1;D+duXN z#=dt#A`%|uA)kQzfD#se_Up&m&(qN21CnagG4FtH|I=STq0f2GZgOa=<2VK9)Sq-d zVX8lWtgn5ogcsawJ4M)${`CA|#y{34;hpa8PyYPmHzxb@>k$T)u78_(IEpzVt4IG% z`)?`_tp4$p|IOg%TQ}bQ_QyZ|@!QP&mp^XwH-q0-Ua$T3$3OmY?bX|Vul?6={@VZJ ztNxF{wZH!V8-M?V!yo_jH~#+ae}6paelz$t{{F__Z{hIAKmLuszw!6SgYGwjf8+0O z{QVXVfBfU$`1>1we>~`ZGx#_D{>I;L;qb>l{*AxC@%P7r?l*&f?{NvyF z`x}3MJm`Ki_&5Ik#@}z@@W(&?jlaL~_s4_oH-mrU?{ED577l;>Or{rV>W*IrM5{^w7B{?qrBt8f3j)qgC0ohtpe)*pQuG#LAL)?dBKr#t-PkJtYF zOu;LU^?cZP-hA&(t42fVK5+Z30kxj9UEB_>Y76Ke+;6>-7O%sJuo6 z&`^YIczXKJI^e}%9O|P;Fb_vS!RT;y?$w7c-`4*3zrK8WyL=~g7ZvJ$`p*{`lVSeF z(YaUu+h4C&9uGD9azlR^RC$iU1o%iQVlb|S@R2Uil81+$CJP#KVz%s!+8-VmF3kg< zF&qE4fdBi$AK9QoNhI;NVFYq2!dTE~Ei5>aI3;MOhS}-kyJs&n)InbmWdvL3yQtY7 zYKa41Fr3f2#kv(n8vO}A3ETfexQ0UO`^I(PA-j;?m+$>%|x}HH=FW{7%`(l`Yg$XO3ShxVM+*p&Ik9 zL(Ec9n{~yvyc_ncP`T$?P06OV>6Hd9eUwBpm;5XyRWtP4>XeB`m%%vO%{Y1OokOc@ zw2b+DI#-_waZ?@(N&VDe{XqBw5DQlEle!R4bAM`(!6Y;>cUVWs0 zkvrD+XftCC#-6`M?I1h5rBOP|8F}Rxz5D{&daKfNFSjeDnMLN$)Hynq3wLTCs#?%s zbt7fm)BAel3N@3BlCsN!%GeVry2@ikQE_i1X(uE`j?u~9TXAp}XVH|C9z%0J+$p{qr2Tpcb|v%eE)m<7e7eN~BBqY} zyixe_?D+hw$3$8j&-q*KlvSkoOZ2?yl3T7b_8)PKvbq*wscy5brjt`js`7nVG3ik2+^SC0!EFQP#qXVQbd;*vQt@I$_aPJ)Hh? ztC-WZb2XTwH}}MxINCZi_m(>?I4NWBfQDz>D)*lNlkjQ)bg@T#9?fm&rLh29Zp}vLr+Zj$+o$$!ajuYwr;PN* z!P~5JorgDPwy%2mROV4|3Huwj%ZNN`y`mfc`mUc5&-KkJ-HoqqwJExqJEc<$gf~TQ ziLH2kp)Fw*!_zkEP=onG5g5#4{%G{-%kZqp5r!+cRK5o|84c%W z?xQ}}V$|;)Et}lt7a7z{rh8w$<9_btSBJSyJY-KT^AI0?J{5FyM{}i~$v34dw$0PA zVi9bC6tW+VRVz*CnW>TljTukmy?l^d(ql~7cI|3fw`fwO-O=0@kJHNm<1H&{vD+ix zjhC3G4t597u*XEc6s6nFj^Vn#N%iqNrI(AF-CEUxt23l(0-wWG-{5L}y1xgl zhP$4uf7+u`m-j;k4f~b*8pI8(gw94gn@OCT#a(5ht=xZpjE242>TV8`z*6awfV}`+ z=#C2-I`W2^*OeWv-CXf(38xc&5f%nzaa%0Y`*O>Kpz4!0hsCD42qPw1Pt z`cl29{~N=Z1N#(`s9EqWUFS|#o-wld#C~k?MC6C_{3`YSR7#A>96Yzx-qKZ&UqYUzUeGb*)i~eV#iwn47AzG{<=|4%_Amipb~mQ$*Po3>dvLa-2|8y?i?) z*zMx$ed^@ghYf{(nBk)~NsB2x&t4DT;d(-a^dgVyHX&&$U*0WpO06FY86FE7YP&p3 z*;(A6HTYtnL#~86Dbvu{%TZHvXujR@dsK{u8vP})1I>I{LRypV?6fwqW|7AnhriRG zjvR11y*qkGb}+M-8Mfrol5m-egnK~i(8{pz-8;qtk6jjMf8wTDigX9n-}E^6@sQ0I zkZv*MJufcmMS1nnMDCW4{3f;USPbvJ@BXUJ_*ML>-8DbE6Q7=o@xRP@zC)7N{PehU zM}s%{tS@)_W4u_d?EEHj0c@6pAFo$+8G~OB9+PN_f+_dnTVJaF_nQw8qTM zY&3rDOm7a3-Vo~0JEUzByf?eM-jh_D#_Boq3#(44$yklC3+kpf5^L)N*}J2dWxnMF z8s5k`GAMx&km(f^&+NS+w7~Bq?sTjEY2|gSK-b>pcRh^Hzqo6Y)ekbuu@>4kmgU#K z^w&&?K5uG3d3>DqW%sj9O&W(IEdx#odwT9$qPKMs*3fcWuK6N-XV{x>O*Nq*eTWyU z_#<1huJ5>Ieol>R~1T)SJU6P?_KhZSvL-I`0(ld(4Hiju2ZGHaX$h&wL>LNOgJ3M z5MWlkAcdPgH^EBRvri>WgM)F1^nO%zY~>-Hme-!HJ(*dm(k;0nAHyC#WhKSN{@m<4 z=l9ITnw^PFhAjQLR+9+F>D&r|nfrTAjY_0`JQr>1x#jTWfdk_q$qGYLZ<(T-P4X^9 zKab7$Qb*&a)_IEK@;jp|DxBZa*9M#Aza>b_w&>U$PFQshxTWpddal&jsI~8d+PbW% zY19`M5*O10>r#y5Me;way$ed1GhHuMhFkc(<3q%U{b)FK6 z6{9WRzv5>T&s#>H;w^mCdHG_3*)>lujpxa`XD6r+HDn2==yUT|2`9`sOzNeMg@&K{ z;`zfU4_lAb#Fu}?HTnCMSA3N;JnwVmOF_u^ zS8F~yeyckzy{Xa20rRoNRIN6w-e;~@7&x0>;} zY?-g|ROvv=m*OKi3`=>KvOA9wJnhNn1cw-C?gUG?8?dg&AH1{2Qjp7g;0@z$&%NC0 z*4KM#1wThb29)p46%X*fYrLs9ws38#%lwvqg4vayrA-18#{_Rs3tX7BHW?bv{%|tr zCc~%dQwHOgha+ciB$ZrsE{?5kpPs0GA+PJ09q8yR{H)dW{(&#$kLtXVoDRq0FAvK- zby(u4Lm_M_MFYjnxsJ*x4(*oPhsrnk8DN_CVkDoH*9M4L^P-~R5pK~0@kT1B0jpO*&;Il8UwGk&VbVCK)1 z&3%gf;rp%X(Q*3t>{r?4g*W5YrVjrID&}-y-j{RdXHI!$`*2sef8!>)pP>h`VyWnD zZtU@*3S$yA)`!>VbTMhYe#qXi&B9z@JgRa!OV^pqGE}ppgpn!MCDluoe7T(Gl~P}y z(iRzyusDiyWG4GhJ+qh1lRd>q?d9edHrD)eT(;$yVfzI;-V@K2X|ZqUMMWwu)OcU? zdGsk9?v!~ddn|W!oYX4s+dPrmoz(5>FHq_IW1590$P~kx-O9-5l~K}RdpoSbYd*v> zzAN8!*XIsl#`yuWmq$$8T3-1LtcLy!tZ#RvxE8RlLriE~_EK%O!F@v}{amJ724r{g zxSqWY!U?d19(FEPkm?~>UVZ!Z8kXw)d5?NhZ5~sUDkWY|W}0DIR{b`$ zc=MrAv&pygm4-&FuB!hChE62x-dc-*t^14$Ydt@|UAFOAt2b22M};Q7s&pu*$TL1o)YoUCey&$@rF(=Go*-`T)<&V|KT_1aAA>KB0SwBz_=aiR9@?c6#-yuk{zY zvBKpKJC&WDllCM<9=uZ!WWQD_TYj9zBah_bnJLRYn=rY=*sw=!mPh$~a+qCwqW25E zN&o0}=KXk=aQ39~D&tn2mA+^Bs!vlb?G-$dbI-9W9Fs8Vdd;Q3LjTlp$vc3%y@|zt z>g4WYG;w<`#fWfqIXrtiBDJHBC9d*1NuUXJ$Z=jBgOjZd>%q(FT@ItlUq1VvrIL*u zs22CW5GL*YvvBUv)4R@o59J^a$vH`;^yPMM~2 z_q8P(-?d9xT-hI-Udh#aaBJgysQ1K1u^E55#c(x*DRTS$=0Y6i^f3c3?{I?;UmCB7 zL`#Pc&E4cqeW5|dcqSwzA@Y9ly698$XpfI`Ps_>Yt&^x)4zBf(=v6)WHrSUM9!&N8 z>1pK~{i)l-I@=x$?RlKf-QCr826|R+Z~xrk_mJn&c+c%zj~&dCT_=5W90LZWb@N4f z>$6NAO()KTd%KZV+E+~vj9Wf^=t|*I(YC*thk?&y6@?%G(sA<_lvY_`@neVehAJOsF!W5Gqw{x8& zdqzf1t*$9A6kY9j^R$WXHIIdzLsSGO$H+*sx`?Tve_ZsF(?SAmCQN*D=O?lhe%ibp z)d(FC8J1cQsZ#f!4Y`pbJFZ$jvh3l%^X<>BxlHx3cPV>5Igut_8?tselBPgmkSBU4 zdw=4CuS!oSu3X!+Jz-~U&;_cCF7)+HoE$fL;@;^C(1gG2<G$qSRpVW8jQv#0B>6f0pl|D2g_GA`wtlZa(V{=sO$@?Y#6TuDga{N@Kdmr8z7eD?%Ov<#VBmR)ByFl0A$<~LBlJl3C z%uhJmHFZS|n8#aPbfllB*`hu-SF5C9rq)jJj9d+eJj9rwk;Yv8?QL>_FC@(_6Npt=TL*Xnr^#hxI**8y& ztvHB&^X~lqjsA;Q2C0ZQuaRT9L21@w#fHmt{#gpCLPgr)Zf-KizcKQz9)2%JF+J#I zKJn$qqhW?0qEr4ssu?Un4s0D?9V$H1+N*BYEscEKrTwJPXf-6+!eM?^NPLy!c5w+O zb)_E~Cn{Y*J7sI@WPEgYv{c01=On?t zFRbbI+>jmnBzv*o^d6?SUw4K2jZPh*?o`>W-yPkjdWNA)i$(FelnR#R!7ciqOr}!2 z-OVo#wC#CV>{{C`K{ob-R964?(`x+#S8vMgIy`zqom)tlg z|02dR>qVVe`kNW0D?6IPcbIOK?pwOF<>=wo8ziA$BCD9E-AF2rVBaqYE;XyX{A6}3 zjISz}O5y3H&k+Uc4Fyr(t~9;7$u?YcnXJMdJI6(8mdkj=gM#*X1F!PcS54va<1VAP zc0-JqfcOS~+(uOxn$Qc$QO6=CJ>(lgZh2oW~6B7?XDIFuHi`R?OLgR+R@j zGSdmqqL{OI%{_e1X;N^XXUvOP-E$J4=OGT( zvJA}ATfEZWW$4}vbM*1e7F*-@2-f8(+*A3=;Q(LABhRiULbS&Ne6Op~ zE&j0Q96xh?W=^JG+&M9ObmZXqdzqQi>{Z|PZ=0RbX(SPLxgMDrbTj>a*Y0cP;k4@g zPZI*o)tr>g`^-w?I&ZX@8ytDHPi^3qVEv;#=OZj}?dB1rr*pm>%u=fvsU6;0ggdg3 zpcUpAVmW?8jaKmPgjcB+rn|`S`Jo>FljQ;zIbOV?*|Q1rc_cxiU)s4+d{M{qaY5?l zb+`RuyI=cPA6Spt!~J4J4*T$WzOHEY6>*cWs&5za-^nwpK3Tlon<*cR#ge*}&K=h6 zdwslz@vWGZl3&OVFU^y#lgY7xx5~!**4PyHzWq5z8?c<;Q)T=_&#ETVkGYBT8Y@ll zCD-hXt(052EgxHE%)$#h;(VJvaf&6W$Q@p$i(`NU)A`TG8ALQm&(HfxA8&T;6Z-az zPe^|GKu^Qn$jp$B(n9nAk`Y(8%P)y@f%n(;w`20j zHeO^}sZPof+&In`!C7YeN4_&vTnjF5lghTqHxjdwiY%Wwb6>WXue4AeBc&6-)uB*{ z_3F&7e^YM$QSG`(fb?sJ(8~hJlB_+ibeGPvR;hd3SZDBE4ZsaN$}L zYjtU{VL6qGf7b&^EGTLGn+)UWo6jQKA%aZR=ueO|c5IJ=wD@!aLc z*On666%S%hK3={0a#9g{fs>)ft^ea%jYfFcnjf>D>Rmwt7ovy6k6D+PcVvW2_#+s+uj^gxX@RyWPE6GcVTkBzAkM21ZskuKsrU z=X*z&7i_O3R+W9?`tA8=$;jiKoP@unOWBo?UDAw!1QgO$RCX^Dti!%hNeqRrg6n7<+SO z-OOb1^&wrZyXS{!tUfBWkcL=j=-um@?%Iv}VDom<$)AVLYJ4KmGQ4B*&EkjUVJVZ+ zQ|B2DOX=(yPnVD4Kc2gZy-;uBbiK9JW6eIP;3zi@71}2~94<_8T2IIemMi_dP9EM_ zdpWP+=Ck9$$3q3K_}y(}d7C!>D8F-edYW76n$tUzZ?iK2S2SqM?BjWi`_C>}nm;4G zOs_xn_DS>gfji#L#lvFa!rt-PBmKK>_6+AJ-Y`03sl(E5npic={W)*8FV#sfxZJ7s z{YxF$0qRBiBKP__-RviwqSxw4G;;Q&^y(3k&I^`CdxEPP$)F-1331P9drkmT- zGWpVqc^qa9G?X@t?4HpauVd|(p*)o+aHj*aRl_Qt@$G)<)7qQqUAVBLud=icO5M)C zac#uQogDj@4Q|Pt|OGJx!Z(nWM67f@G>qxjBHVUS9OL%aDGZqFnrly3pLg z@|Eo_L1A`+8sEMbJY*x&4=Z_Q?*C)9x7h8KZ{nqoKeXhzE}nbfCh5IwG4u4{9sS~k z$9ELW9p1hCl9aE_%bt3JvnXtQ!twHc4Y5GEkD5oc1=zkcG#4fAE>&1Z(i9wY9ewuD4%k#RcAwzR>DxyR{n${-zDx`{;O_Yt?P0>lGmQ&{B`13OykroQ{yYwy1wsIb#Zze?ZC=;koWopzKIupk763;lCAKMwo(Wm z`{pO~Zs_8zNPOq_Qw}z@%Hf;`b7}8>dbNee?e@e8%(a_a4`;0=&R-JWJxS*3zVKY) z9hua~LB}EI*Bm*_=gt)wnC++WTlc;i(4Trsmi^29$@8m5(fZ^cgD0pHL@gGX-#p3J z;mj8uxo>0Zz;gdxi_~lf_KSFg)iX}nJ;zRS7F-{sX%-Tk7YI03c*>35j~DLbohZGRMmJQ(V1^Zt{6PKEiT{|cr* zRG>^&yfd1aO1iX^coB6zS9RJGMd7c5%KPp{%fdP*k5s@lFi;rp5(-3`JbvS`n|JZ( z*gcX#zD!-&!6}VQeEV8a#t1aDJ zK{d+@F1o5e@0T%25$vT&K%w=lRe}<<@mv(LG3-#rRL7RsP}1gonIx2N1D5+0k+N#4 z#15L{S&7>7kaOqV(mJv~$_o8vsjj&T1Y%~Btcr2F4cwiQNwNR{s+HsW*dw^Kk`VnX zs|oD}apr*oy~Y9%lUZZw<-=yX6Ckt|Za}m-jHL{(V z5QFLo3D$^Wy;ifo@~LS2`J~8GejX)5pmn7^C!vhLzJ7<2$c7`;3gmM5YYw4M5OV8y z`wN|l-fay8;AM`Vnd?g=KH+G722&36^Mzw>tb{=k3`bCHmLc%(A|_nCN&!C|=M6V{ z&t@55;jCUS|0-G3)xh7CWg<++7|JDmS3{_|CvLc*b|pr)cX0|rO8x}l3JOg@kulOr zm6-Wqg-Og?D!|6$^gO@hNvJ#qpWx@DVT8v-BvvF|-#q#%w{!-Z3w88cOFz*t$c5Sq z>+c-U!UOj~Icf$vt+BO=RmPv`A`}W+Piu~Qilr>3vlRbb@8g|S%z5>V7SiP$yOd-3 zS_@y~h*+k?jg5TdwLk_HX0h(%#3j7Rx^?z1FXQy{%zffSf*r5%fxe>IP#~>6w%QIK zIxqTlv5>F4Vd0Ify1CDl4DD}n)nCG4YNEtx&_yUjkZ9my3MyKLVARcPuV1*ZjDpL9 zDUCUKenk~#B$C26ZD#U8s~g@lMUGgrq2uw*W#6V9TnGoX8MqsW3i4m)CVVp8=29~=Xgpp(); zykH?nK1pz?7g!bB&OGFOhBJ0`uec4g8I$UY_)Kuke3V6W-+unW_SQci3zAKhLO7cu z2_x%N040Ers97TqdT&DLlAU&~l@%o#+QVX)xl<%?6+l(L0ej1lI&#QCky$Q%RKmqrtZGj%ID6CWiEICn^EA@e+7wE1} z<8)m&6lC?Xv#HNdtwd9&pItATv!SvzD-y0IM*|c#M@5W+-S?PCI6I5Rrb!qYJU8P zm*Pr8`^}GkO>x>4l9D7H5EEVhc7){t7nn0cNpmsLoM_)6!5b!KQnVNddbG%RR4oRM z$rya446fjr`^$fD=QnCw zRGA=dBY?;OK*H*bLKsI{5s|-y1QWsu+TtYrrg)BxKroEma!{ukI@b0(J>xJY$yly9|xM4iz}29RVr5Pssl^ zKyOU}T;;gQD9(S|@koVxis!$m5m)2q@ZXE=*MH&BAMoh&FSl{;w^*;YpwHpaMn8tz z-)@+H4X^$itoGmU4aF}3@inWl=#v13bdm2i=2h(BtYcx;6@0T_Vw8AH9j5<(?2??7 z!EX1@F_c|!)&UBamN#2yDNMuEYiT#301Y<`}psTy% z$^w+F8*8vd>>RUA@w5Q&dC@u;GAH5aDS~xEKK+)W!JZvO>VZi(vaixNdU1U40*2jT z^f@Y{x(E7Ew{M!=Wv!g>+PfIxQoX4x%rD8Q(spQF-(fO-3Jq|*f)lCXaq)94gSloz zxXCDkx}E`0RqHd|r*Td$v0W2UU79N>R8)?79SP`vc!#w-+G$*EQzkj%;OnS-!^_?> zj#$%}B1;APp8c_!u{YUNHZR!)e;LVnM7I?~ z(a0t&_5k$d>9%JGl!3nbXB-;;9SotZ`N>FZ@p8E!_)0NrQ-1v@yC^Q5Fu<#&N1Pj~ z0{oe}E{#*nyKHIi7L3=xcXS~L@XMwq>fp4L%J9wtzpm%l!MYos_SvBTK*fb);IAkt zllS04N*$iJ+WRs-7WF$-Tx(6p`OUbPKyKtccEL^vtSU$FLxYaN^rbqcvh~FR^}qy& z9!Cw3m&qb;)4yH+I~%*V1moc?45k&9-0N@nNeXtwTVBbx_CZx;I{6c&rLaE>f14-~ zPpyJ+s}SBRINzF>BSF~)>r4YdMco8LmMf}3$=aZXNcsO>(7n@<+ko5^dOk~IYQhO4 zS`Qo(2D^F6O+#gUyWq0jNFWHSh4j@Ib9Mq?a5Q)eM2y5J=wA8nI}8@YErstHP(o=l zK2>_>)0l-nvMDl&>76o3-e(-QP-i*5VvvP%VKF`m{)pDWQ~{#7|7?9qww~zd^ZZrr z)1{BbTTphCb<49Re}k?kpb5SUh5Wh<6A2yiA_8j>79~%<43NU_t`SUwGv@s zb=RdNV#cm9pu#aD@4Rz@uMXtTPWJy2^``XQmB`}uVgD3!_B0br9HYOO#)*Z$u!zH# zSR>t!hN-d!_EG)>KwSAJ^6UI63Q|w=TKtq}yv~v*+u$;Ui7Qo5Kf73oH&v`ZNAFB| za<8g6@v|lMgmLyOy`ShaYn>v4apQA*`n5A6$A9TXn$XpSapR^@ix2$m696inJR%Ta zo+@9iERMiE6-a*Zn^7X(Znd>!iJR4uf0E&TT}z0H@*HVJB@<{8{c|mG5Q%a`fEfXG zjMM3PYFO|8#-OIXzszl{*TkFKZ*>tx-BV~p-2gbLBCWmqE0qzqTM zVEa{A5F)p67#w*ae`$zg z+5%?X9dPc;I&j(z>2WUXM528pN0Mz%4_?bSvna0ON!eLVCZn#vw`+|@;7wyjgaM;6 z6tUH@otlOAS4Q9a2X`-J;&HkBNUT-}^=uH-uA_qmU68os=7G=~Kn(+R0y=e)+AxXM z?_9SRIZ$tGFTMQr1%{&sQ`Iq{B;(ZLlpsj|0fDj#W8lo@`AE)G%aAr4N>0JBJaSa- z{-G+`rs=~tJF?2>I5Lh$w?gAKjg?+jJ7ZneBiH$Q%i!s&ONSn_KG=5t9TztoF@$CD z8UEzT{;G~pk*wdC`58;pYUCUv1Mf&K!D+TUTQ>xyGJ4BAWOn6ossShV?fBc@a;+a5 zSO}Nx;&IBA`1}=Cpj!z`ubUrg`LY0_XRD7sjrOqyWDn&%%CI?oXHcaqYX`rvdT)r4 zYL{hbHNb?qxRSprBX|LITHey+vhIPvROkUE4Prv^%`Mt3vDu4mrd9R4?&&@JOuRc) z@p}CBeKktUL`3mJMYRx|KdtnOcS`*!p}75a%8@_MPsSVM#jgw%tpF9H^&F{~F=%PO zM>y2itDCe)z;jEsr*vyo1&n01le}*n-Mt0fcVm&Kn&h{Z*dOX#I@9fg>e$M;^*ZA; zR<%gyZgDbW^x5avx!e!OZ-2g1yI|Qa$Kg93yDi#YY@1e%+NvibJR2QV*g+xxf6;3# zZ^lIvD&Id~E;Lag2n}{6R3Bb%PXkh~(Iy*sP8X{Cf_mVeD*M@>zA5>n&N|U{zmJvx zidK8QgiDIyUup6*8aMZj|5csyzQ9PuGU}HDDgq?LDmXci1WdSaB3Mac`h=jt@<%Hy zM2N7|R6E)fv-lDA|0T<<=r<2pQb{~MB(8{T;k*U;jK`I2Dp<%rS1>+KKpw)KSH?Zb zxKo>iAKjGuVMd2-umpPqT{70K;;)ZMCML;y>($MqhXe8K%sKhS-=_!2!EIEaUQPgy z33)H9UHtS;b(#5~1EFLncl7mRkbJkJA&#Wl5@!ob%R8rq!^HzYrfgX&vJKM5Y2iLA z#0Vd{XCbppb!od$xzgZ5I2Z-N)kL01HC2wqRTBYR)zVNDE(w}l+v$|5QQcqq^9IJb zD7`Pbz_~NJ<*jdtg123uwEsYA1$X8O&vlck7w$}DD8Q+Z)XNAo_Ea4D2-Dol6aR*e z65-|5i82*RW=L9p4|7m&_MkFJEH#-bDipH%)2n*)kqm*oH10vz(R~4AD7x2n(uWG; zCdn*IhaV6q9psWo!>@c>sBK`n#yytqRa2)7!J@y<6reH^)eNYzy!6N&^Bx+Y^B8wd zU@K73#ue~&d3&&+bb(bOubv2i8%`+9Xt+$CC$5GT8K_Wb>FeYH8o;s|^XtO2w@Ail z%HlpKyH=VKqy^a4d16?ClI_@km-Lq?&lrgh3p$;Zr)p!W)Li$xtnCi-yqyIhyVie! zFRAxCR(5!q#g@SWo~O1=LnLPVSal-$xrjbd53#j`|2w#7NA{HM(TT@NWbO2#;Z6;h zM4zv70N}ZXlA|EF@Ui~kOK8b@JavD){!Jb~bsjAsLTY7f7fx3@tN$REyNRxs4Jt7> zWPqLZRp9>D$h5-gjhle%mI7(Jf@7J5*+t^CFwwf-d8JJT@WhiqDu17n`}Jv5^MS`S{k8dmQ=6Iv z*_3KGCYE}6lP(=3dT<5Y9kjXdWde`)EU@;~H&CnBl~-ZSjIK98o9s8Jpji0ON;o3is!E8UJdTr1{*y zuYLjtbE$}dGHk00x9S@?OPRFgbXW{;yBIEXaRA=kr)!~#!^OEpE#G@(6oM@+>)(RB zZbVJ5!X`XT?L`GRh2n!F-)~94|9N!s^uP1wl5jv=S8wd`M$Y!%WS*a)+P_- z{Hmf|feI6#%D2c=)AB{;+7AF%7G@5;D`sbppFvztug`qon!+r+Ax?76r85FpJt+qK zeQet$ar9snnTcDo#pzwVENApJfFJq(QW@h3)2nd_c!)#$c*Em3t_KX3IHHQJ9OOs( zusscq^mE^hus~`-InKQys{t%gJdGRL*=HI>0ci%iQV$hsrN4>6b?N^N3F59sX8%xy83ebj24X)RxY zLn3v9J=!P|G&NbD8V8wp^V}x*$R_(HPeS5Z+3{9aN;W$DteRi?Ifv=#{6vNt2aLUg zeP`w{RQ!%{Pa7Wrj(aI!CA@Kn+(w6Xi;qlJt_gZo!>#ic<5&mN|7#B^N${eXXtT=Z z+-KAQ*_qm&d1v)Uc@ii@?Fg+^vIEy~8tz!AjSBe^ty{p!MQibCz0LqZV)6GTlAkd6 zD~n|Z9xnVlc_?7`waqHGa?}2q2QtZaO}V;NQ;Gxfvev_Rqi5AwBW=*wJ@Gejn-qti zSWMjr+b>=ngL=5UW2@DxM>n@se)3D7wKo_FzD^!%Q~fpTegT=Mfn7ACW_cq#eGm^`=Qgq4MU^7dC|6M3m?8-vRW4+ZdV{8II+}VYchUwf1t>S0JcAa)LlPj%jnIR2iGPFR39{teP1P`GBZ!$K>K~K zf^xrMAH|dk78H@cGe-5b7uW8+FlfmfF?}1d(zS>xL&G6CK|U$;nUU_o%1SRKifTB4 z)60V)CPE0KLVSAfW%4n@e+g6P<1KU@;GT|R!Re91lvswN7YvlYHBl4 z7Y&DZhcs$3J6Q~8{1KS53xmnmn|8gt0rMyf57DO5H-FRDO2kX=sPhpD%_>C(c^ zuEB}F8@Rj;>H1#L=4&qVjRjV8k`!)$3@cp!V{%*T0X`4i*hJqMw#!C)#sENEn`$N? z);KPCyXkout$=wv!z$co;%WSh~*TZJhz!MiCPcrb@>Q5_!>Ji zjc%Tm1rn@|P3{@#+Z}}S0|D0NkLE#ui*5jJ=5!JpF#A6i%5fG}A-eoT-0mao9`(D7 z%Zi@v+k0h}v~5~4Fz#e)6lMeJ1V3*Q^G`G8Wy&=u<(CgFtQsH5{K=GVoX+dKlV75h zXv{!VA{BOzw5NXj`H-&R{r_||&**i85ya6AR?b5qOY#@$pULm3I?bzdyK`$scG0-Ac zfG}m(O-`xsk9ACU417rR8?bSc1bDoxfc%#YcO74@p#jZea;(|csrm>hk@BGF+>N39zW3dY8O0>t zSrz%=4qrootu22s_t}BBeSTCPEBx3>uW3tAi+}f3n_VSa+>9O?0ZB0kJi}F+{sW(@ zR@}yVqm27Uq|P2%rgsK_;nnnX3|DY1T}Iz0|8?L8_$B`fBhHJy|6BaIQ%lfcf$1e( zd;CumYK~D(Am@giQy_k=f9Wk9)CD)?n1cI&)k3cGvC=UFb8IU1wtrRV`#FMShe=aI zXktA}qMGDq%0)3PRH5+rt87cN@D2$^U64(JZSTF{V$dPbO~$l`4aw08&?9)fA{y-g zxn7E7+(?ZoZ=O^0b4fc?cw$lK)@}M|>*OtP!LrQVog93um_1-YMjzpNt*eWkF0Hdb z;ZIi=C{!&cX;2Zuwxw`{W~yCUQ#Y`_;|uCvMnJ!ID1Iz7m^YL(#&Y7YatT~}t(bTj z6&hUf=F?7ZB~5!Hx|fq$MS2nmM&8Yk z{8Brj;7-m|>Oc#&(%DC(!D>H&B867Qt!zq{cV&{-1R|n>>_0qy!tw+BE&JuMIjhHG z3+NLiDI}r%96ZA_^lce1@7z=k>550j z*v8TTn33^ZYi$klt10-FSvjB4c(Fj=>p%eVAM7ZZYDMtf?` zrPCspg;X`X;&%y|YVim`d1duMu@E!O`@j84%C5f($rwjFn%O<5IoN2}u7ixn87D(G z0GDzl$L7oG^j!OrC1LN^a`ptF;)SwK*xGJ@hg-}e_h-?>DBlGe?wt&UIQ;EW78HUSYf(nwkF>If|&XZ=r9naq7<;? zC!p*PcR)A6%EIhA#Mz#3YxM(S4y7*^8c6-;@vtpBXlefdSL7Ob`fxO+(Y>#T#!6@Gno}+Hb z+UxH2Mp~If$TR+w9}bfT?`NsVFyCOhb_pbODckLoZNu0d5miei&{e}}Ung#IBJ*pt zL-%4Mf5$38sP{7&VB#dwpA>^o*N`J2x80tuH_iHv#y#<46g%u-S`!;JXxSaEv$xatR2JNtt@Y=R3A&)Hj)dC4>X3ddV~cnzq!HE~~v zfGCG^!4ifrWTsZ(IN)q3qxx;&k`FIiKcS3y+-)Ssxac79AF2@U7~kxZCRDg8QQ5V{Yzph)1B@n~+^Yx10Y`1J_+r|5b|bd-v=;k5LZQ ztCrWJxOGA9ACeQ$VeY0|$OB0S`)O#5nQ72_Ea@401VweWXnI@3vmAI9YZ8}$Hh#i*LvRT(Ft!@I(pHfYO{U}i25N+|e zNkIFDYorhj%S^*1BP__7a-;as=i#^TE}YL5we(-}hyv`Ib9KOx;_c1EKg^5u4bXAb zciXn_AZbpu{6pKeC*vO#Ok8hM8>6Q%Ps!bcXcl1@1f1@?U{n$u9c)Ag^U2VgIk&Ep zH5FCyL&4khJ`Y0Y_Zjc;rRT-!7d;Qg`H2iA@hyNMJLY@9&>~iJYdlGnr0h5=oIV6# z;9lnD)h0t89j-NM%tCM~Mn!hO1Jj-9v%_nQmoMBg!Z`9)3P=PWGy{-qHI<6hPDAAH zMhAm#D@gIY^)@ZOA3{yoA`Y>kylAxhp|O2}b|z#@vchf`X2+?k~EwOVcJv7bev42qzA{MXf^qH~>LxJ_niGV@j&PIOPJ73z_i zhH+{Vwq^Wo@ed(|*`{||XCae)=*T!Z*jYoBcg7{AB5E}p@b@g9<%X6q`JyvCk4A> z6V3Sx>~XUSO!MWY&Cik4V&Yga7J$bPLMIw^J3PnR6VSwpGh(0=5dq@o_LHZ&2`_tX z$Rm$AK4?SH%(dhA+#y%Q1ZjW5B<8d)DeraV2F9bISUm)p{~|5y9Ke7bl0X_p%3$m> zXijEujU;;@Bd@-4553~mdycLONa7h=E+l7Eh*MK`)FO2F>209z@T@S@2yO~`mBa>@ z$}xFORA~;yFb6Lim$BH1L$?@e3Z#evJnyEPcl@tHvO{Ns1LH(K!t6QWcGrZ%iWYA`HF)6_M~5Tzk} zIhrmR@v+QmdtK2uNW%W$xw0hsqki2Jln9!Ox}ZkclBXQxWlE#?84b1^*mB;;%^6 zG5ZDnHrno)4>J8U=gkI^$iyov>F^j|!DVe*Yx`8<#*N9EA4()BHcF(Byg~SO)J`lCODJy7z(=Cw-8gU&E$Ru{EExkfzF{EzQ0@g|QeC z6hsOF%-Yufh8-bnb6$)#N>PMG=KEuOVTQBQBJsTTC7@2<;aHm9QYZV|%6SvOzF(EW zs0XMd6z3?0PQe&oL+gCmUxyK`a4g`mqVy1;!`@537SRqsjkrANGgIQbhn-m<%!|v& zNmIW=xQ;oCgVD8!jVV1$V{Z^TQ#OvF%?HmN1}REK-)Pe05oOUDX zI6gGc7pWem^z++%o3aSs8{MSWC=R$2Unkk0MBr9OuJ&Bz-QR%dZveB6afo}82vZpA z;(4|;LWxlr@#6T(<{w$j!XOxU8xw0D+LfxUK+ww4P1!}r%tfEwOtBfEk4cXQyHHq z1iRP%qj~C>5Q%rFeg9m>1ZrB6K}`>MPRH^32MUqowOOQJu9DJ77v39Cdju+ z>Kf>0w<{lJ1i%Q$J*VZzEB`05Q-RI6(Q7k#E*$>FQeZ%FL|DO%j&Y4ZS^?pH*ab-Y zm>2hK{r(PUm)L*os+QH5sB&5g>uD`UbOfmLzv-la?|2?Qxi`*}8b8~Xio~);fP}yo zoO;o2YBAVUvitpg@`H#7`>6MYt(u^dOG*#fPdXA+04NO z>Q+=!c>UxwPVZB)>-rBi4zX%s z2DNsLVd$*yPE3oxX2&mKLCqDJOILrmz=V8Y*5$E5KWJ(lni6pG zw(o+Uib#b>3LsS@hHaNM;%~5u`am)L_+Q{Mc{nje<5Z9iQT&pWuruq;8mBc3eve*! z%S&+CxNncUD=i*sDJ>E0Sck8REOqqT8Mj0p&#U}%~Zc1Cn8ob zQV!tF5Sao0eRaJto>(N&Ghz;vrW6*45k*3CsY{Wvu$aUyLxhtALCySX!g1pJVE1M> zd4z!dBR2rPb5uIA5lA42W0!F2L^+*_;Px4POcqPk@C7^2l}HkWQ*mjy;55QJMAIg8 z-0e&Lss+toS0sPrBxB$n0{gFk^QTlh(uh&~uj=VGffSariqkU%-c=BP7OeSA9Ge08 z-OH$Rd6F2&bRk6F#B-}Hes%m{yttEf`M!1&a|}|ShDcT_z5^!hcufgWL;X(aFfSF& z!gAET5X!;&dgGdRhvF}vt#@DU{L}* zo(yFQs{$+h0_rQbvNdP7I2gHyt`F5wiN&O}vU@q+E^f3NK!33Xyku={3*IilkIN#=SQ3O8U=-MdlCxTXHp*O-Zt$ubt77X?uX0KOx?J@t>&qaY_>s zq_~0sytm4$23N=M#5Io|EVRC_jQ}z7BJG)80hBofEo$ZC7)5hoIY8RDS2XJx#zIqU zUZ%ZPUsg}Zg!-^rnVEa%(lgcj-ulYLpY??%T0__UK)EKwSEl z=owh4N%73#euDDZ8=A-bwQW%;$+<;obI0miP|)!f^ZT~aT$-d{GWOOs^`rgR;`r}J z0RKJy4T*Aoi~%hgkTChBfHH3kZ-p^%`-QjvABChbm{%9b;-Geb@E)?57MT>lV%9i? z++7=Hj(UIp5s!uNdkb%)m{V!+d9Zsa!m%j^;>R^(Gh$1H2x$$-C44&Y5*Fnlvgly{ zE=0O*)FHG@AVhElqaFgUr!G{H2S6<)GunBvWUDl3@iJ$a)K{K%U(P+~`c=)T_a zNQ8(X+@{kk7ujq*an_*zy?Llb%jCr~k8p#jbE{IIuL1{6@Q>e|Y#o?1CIc9^Z5=2% z;d%05Qj7?8_6)dAyp^Ue8$wPqa(ej_Y7lb`aSCLhN zLFA;NFq#mu?*$<2A1W#bkVy+_+@TV5%HaZmib272r*%X@0z zg2NGQsgwwR4`QerbE`o59P%+G8Mmo6M@?_@k#9R)Q7BF5O)|zlWxM+&USdW|YH?4Y zLn`!wt=$gnuT6u-EbA32!~y?fu@>p79LW#Y+xcwpv6Zq+Ob9Z_JCo_*v_t|(IJILsho_moZh(% z?(w?uR9O*sd>kLAa!s6UeoKyX23n3mIMfX7IDA~5*V9#0Klg;Qa&K<5@5hS^*)D*> zIr(jyLO3vN^7uA_$bkP%zC?nUYeB`yEmZkfn|`sPxj7E$*RPerwdvofGa!nMbh7p- z$f<|H3ZuWraYC4ZT`*I?vPr&NZ@_KJ2#5~xpj%JY_G?inB>U#`x=|g}4B1dRh-WXy z7C+v=Wz*t*lZXlW|94ar`!Xm|TRtSVz|pt=h8R1^lJTO&@+GVe;@aGXx@=pB^rRbA z5B8-nahgHUCY==Ge!4c$k}0sijDJAP8iFQ-#=REZxSK6vA7(w^$wqpNRs|Sd>CdS? z;~Fv{!Zm*Q=u-VlcZN=i|9-iyHEcXp$EjVO4xdOL9MT!rdOt@yNOG+5j{daQD+{d^ zz;58ceaOJ-k7oC$qd!v@T(+DxbBCScPkBq;3pc4rcJ&uXDGHm-Ts3g=4K|})iL1#V zd9@p*>_~IsSRBi{|8a`+gE^%5+$qTgWWbaE7{|$TWJeebSjM2OHsNReB0oTfT0je> z7YRkn9gf6qq>0MM2_S)`ej~9>>kaEkn{|P$%GRF>12&mR&cSZ&P@9IHf;4V*W869>_SEGY2(UH7BKzqZx&V6(*$Z z4kJQ8J%t|B{~=`c%s7h<@PJG;>&SVMJ|1J7h}^6+eHWNJRkk#DUQ6Ni@1sEsX)-}F zm7pnV;Njy~Vil08Hg3tL0;Sr1xHbp)ZDZUSb(?)wR)9O4sC9#|MrmY+_cyrk5Jl?T#a&*Kl9SZR5f>6^w2`cr)akmT^u|M@-?_Vis!Q?4diy;X%yJlff zmHQl;kf;s@9cA=`GJu;TzTx?1=xe~*1AaH?{?uj-{@sxEDYmFoHk(A@3h{CP$r5g4$ zYP=m$+f?sFstcj!k@e2F>i7JQioyj$xL*AuMIR_A>df2Kh8h`QH}MnN`9W`KjT%?F z)+DF`d2>Z}&gXmJ!2*4I44K?9t2hwV-NbQ?fO82P^g{A&3L6(QY|-^!4bA4+if*GU zKLSrxJ2yzKj&zAbvv_N7kkoglidM8-e>ulVW{Eczu2rAfuT7q?CngLs&BxiP7}d`; z^G(1yem0-VO1eLj79Pg=RX*>#4vL-m3FFh zg5kruUnAGquUvMiDgAF~f}{w3zrrIarYl|}y3h4YSLxrOa0giPK5yOph1|77Q{%t&=N=qNVX{{2T) zZ6{c67d@m0^J%c-fqJZSMPKR zHuaE3auxELZ@kz+#v@In31W~hMDt5YUM~(-%vm;%MpTY;th+jeOpJ`@S2iKiz^C7}Og>=>`H^xP!f&9@)uA|#(pjdH;%QkhtcJPRFCEf!u6J_u9o zjXtZQyMa@4QH4Wh=e%s)rY{v%-e+Bt0H={%bNh`*16w92^r4Il%t?;hYK*BXD3~UC zf#CB4RweS@*Wz{MhE_+oBv~UTf$ZMzNkA1bERrB>k?^PUVt{!SuPEI-Bo!9*94b*c z^k6JJo_#1hOHs&%8BJl>98(bXGI#No+Wc*`z$??om0SKbx6X(wLMEDz<25%Ycy5R- z+FUB8r8`=ULX{-)of7e~+l0O9yGjs1_q+xn5&i(xOjk|63kaPZeNDiSB|Jt( zj*+-lb+_R{6u&UMQ@yetf=+lzbDJ@%I4}4Z=V{tvW6S0mAWby$Xd)lU6>Ui{(vhgd zsxq2G!|3B_j@4jG((O5IWm9k`@T;bNnuwgDC9o@dS`O^=?+71e(0lCny1ea|Su8g^ zd1zAihRE&n`k1dEPIE*rTMpCngwvln2-o(2xLA>z!lM-4x5kpXQ{FMiAZ3vdbF{oU z_dMxd9Dz|FZeeLJn=!t{YWsx}fwa4~oZJ4}YSNSdmtUC~gimleqZfVE!NKrqE-ZX= z1rqOf81&D<-~Ukt#&&|zK(Z)gHNSuKkScRz#4^OId+1j@ef@7UK|=)5N@;rjUzRGD z_}kycZzu?mfWk9#9wK-WwG2p%x@yGBSBJ1xUDPAlS@Js1n_{SE7q_qqQSv~&Z z&;MfgDC#E{s}cSg0qzc&rt}-H*gLm(ncRn;ewV2IfQtju zS82(%r+7ak@)d+o6F%*uz$x*ihVmg#9Ym?iOv^A9gRpn|%2HK(yLr3so1b9VQVwbR z@FmC&rZ-5~5&tN}CP5$~P`Ldew(1KnC`C*Qj8>u@F!uBMRs2c_{})`5Ow&ZVvK0*O zRPqu48QLqsYf@7k*c&mN5OBU|ET$saJ@sn*MK|EB)M`xQ_MU#zuiAzCP;vWFziKb- zLj9-MKT#*@Aii{;sF3ll>UOcnyWw1tDj3Ket1ya&Bjp6S=1|j6&p&@IFB#!3X;VoA zhI3(-yv2Nv);#0abRlUYv)4QA1cLF@Ez;XfsHbGTye%l5$=%xbYRgn{AP{jOG?z*t zCi=NjcxZ((B@h!A3;Qy0MD_9x;zB0$u*SgehV(H{8ByjW;dH3>Z2)_=IQi4A^XL_& zB0`H*$5ZTxwGi-x6=zZIQ#BH-*y%B3%TY_v(YRcpuYj|F$v__!;z5t2G0z!WN@Eu# zJr=~m{~%L>6{mahVSrJDZ%NSh;N78}uHe_>y{|PB6C%5SHQT&fx`yi~rG^?46JNQm zFx1rUB}${#pXE3DBd$?gR}KB4R7tNh$-Jx)-zYalW6t4En*;D^g(+3C`{uq2eJP3zWKe~G{)r! z@iYLa*Lva->>j`d8_l}kfHY*2xd03!TvLdZXDJD>5x$_|$$isrs3t zaotCkK|ZXkmMid;fArveL^*9q3mj$ZIV#vtku^ju`ns^NV&tE%*PiDYaRugMPK04wg39rM>?Qm!c1G}zS~6C1J)sgWpvk_CD$qp~zo5_zM*<|d z4iPoYher_|qB-%rimEyXUspvX%gFJpX7#)8D~n}Hx(>6yG2rd1|0k;zr_=x0X=83y L0000CLjGoE&y@FX literal 0 HcmV?d00001 diff --git a/samples/Cpp/SimpleGame/proj.mac/SampleGame.xcodeproj/project.pbxproj b/samples/Cpp/SimpleGame/proj.mac/SampleGame.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..e6e04909fb --- /dev/null +++ b/samples/Cpp/SimpleGame/proj.mac/SampleGame.xcodeproj/project.pbxproj @@ -0,0 +1,610 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 15C156BB1683155600D239F2 /* libcocos2dx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15C156B81683151A00D239F2 /* libcocos2dx.a */; }; + 41BC70AD15BF7CCE006A0A6C /* Icon.icns in Resources */ = {isa = PBXBuildFile; fileRef = 41BC70AC15BF7CCE006A0A6C /* Icon.icns */; }; + 41CD6C6515BF7574005E6F29 /* AppController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41CD6C6315BF7574005E6F29 /* AppController.mm */; }; + 41CD6C6615BF7574005E6F29 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 41CD6C6415BF7574005E6F29 /* main.m */; }; + 41CD6C6E15BF7673005E6F29 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 41CD6C6815BF7673005E6F29 /* InfoPlist.strings */; }; + 41CD6C6F15BF7673005E6F29 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 41CD6C6A15BF7673005E6F29 /* MainMenu.xib */; }; + 41CD6C7515BF76FB005E6F29 /* AppDelegate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 41CD6C7115BF76FB005E6F29 /* AppDelegate.cpp */; }; + 41CD6C7615BF76FB005E6F29 /* HelloWorldScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 41CD6C7315BF76FB005E6F29 /* HelloWorldScene.cpp */; }; + 41CD6C8F15BF7793005E6F29 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C8715BF7793005E6F29 /* AppKit.framework */; }; + 41CD6C9015BF7793005E6F29 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C8815BF7793005E6F29 /* AudioToolbox.framework */; }; + 41CD6C9115BF7793005E6F29 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C8915BF7793005E6F29 /* Cocoa.framework */; }; + 41CD6C9215BF7793005E6F29 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C8A15BF7793005E6F29 /* CoreFoundation.framework */; }; + 41CD6C9315BF7793005E6F29 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C8B15BF7793005E6F29 /* Foundation.framework */; }; + 41CD6C9415BF7793005E6F29 /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C8C15BF7793005E6F29 /* OpenAL.framework */; }; + 41CD6C9515BF7793005E6F29 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C8D15BF7793005E6F29 /* OpenGL.framework */; }; + 41CD6C9615BF7793005E6F29 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C8E15BF7793005E6F29 /* QuartzCore.framework */; }; + 41CD6C9915BF77CE005E6F29 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C9715BF77CE005E6F29 /* libxml2.dylib */; }; + 41CD6C9A15BF77CE005E6F29 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 41CD6C9815BF77CE005E6F29 /* libz.dylib */; }; + AB63787616FE1A4C00079CB7 /* CDAudioManager.m in Sources */ = {isa = PBXBuildFile; fileRef = AB63781416FE1A4C00079CB7 /* CDAudioManager.m */; }; + AB63787716FE1A4C00079CB7 /* CDOpenALSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = AB63781716FE1A4C00079CB7 /* CDOpenALSupport.m */; }; + AB63787816FE1A4C00079CB7 /* CDXMacOSXSupport.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB63781916FE1A4C00079CB7 /* CDXMacOSXSupport.mm */; }; + AB63787916FE1A4C00079CB7 /* CocosDenshion.m in Sources */ = {isa = PBXBuildFile; fileRef = AB63781B16FE1A4C00079CB7 /* CocosDenshion.m */; }; + AB63787A16FE1A4C00079CB7 /* SimpleAudioEngine.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB63781C16FE1A4C00079CB7 /* SimpleAudioEngine.mm */; }; + AB63787B16FE1A4C00079CB7 /* SimpleAudioEngine_objc.m in Sources */ = {isa = PBXBuildFile; fileRef = AB63781E16FE1A4C00079CB7 /* SimpleAudioEngine_objc.m */; }; + AB63789A16FE1A8D00079CB7 /* GameOverScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB63789916FE1A8D00079CB7 /* GameOverScene.cpp */; }; + ABC96BDA16FE18D00089A41B /* app.config.txt in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BC516FE18D00089A41B /* app.config.txt */; }; + ABC96BDB16FE18D00089A41B /* app.icf in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BC616FE18D00089A41B /* app.icf */; }; + ABC96BDC16FE18D00089A41B /* background-music-aac.wav in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BC716FE18D00089A41B /* background-music-aac.wav */; }; + ABC96BDD16FE18D00089A41B /* development.icf in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BC816FE18D00089A41B /* development.icf */; }; + ABC96BDE16FE18D00089A41B /* Marker Felt.ttf in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BCA16FE18D00089A41B /* Marker Felt.ttf */; }; + ABC96BDF16FE18D00089A41B /* CloseNormal.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BCC16FE18D00089A41B /* CloseNormal.png */; }; + ABC96BE016FE18D00089A41B /* CloseSelected.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BCD16FE18D00089A41B /* CloseSelected.png */; }; + ABC96BE116FE18D00089A41B /* Player.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BCE16FE18D00089A41B /* Player.png */; }; + ABC96BE216FE18D00089A41B /* Projectile.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BCF16FE18D00089A41B /* Projectile.png */; }; + ABC96BE316FE18D00089A41B /* Target.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BD016FE18D00089A41B /* Target.png */; }; + ABC96BE416FE18D00089A41B /* pew-pew-lei.wav in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BD116FE18D00089A41B /* pew-pew-lei.wav */; }; + ABC96BE516FE18D00089A41B /* app.icf in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BD316FE18D00089A41B /* app.icf */; }; + ABC96BE616FE18D00089A41B /* CloseNormal.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BD416FE18D00089A41B /* CloseNormal.png */; }; + ABC96BE716FE18D00089A41B /* CloseSelected.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BD516FE18D00089A41B /* CloseSelected.png */; }; + ABC96BE816FE18D00089A41B /* Player.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BD616FE18D00089A41B /* Player.png */; }; + ABC96BE916FE18D00089A41B /* Projectile.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BD716FE18D00089A41B /* Projectile.png */; }; + ABC96BEA16FE18D00089A41B /* Target.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC96BD816FE18D00089A41B /* Target.png */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 15C156B71683151A00D239F2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 15C156B01683151A00D239F2 /* cocos2dx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 1551A33F158F2AB200E66CFE; + remoteInfo = cocos2dx; + }; + 15C156B91683155000D239F2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 15C156B01683151A00D239F2 /* cocos2dx.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = 1551A33E158F2AB200E66CFE; + remoteInfo = cocos2dx; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 15C156B01683151A00D239F2 /* cocos2dx.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = cocos2dx.xcodeproj; path = ../../../../cocos2dx/proj.mac/cocos2dx.xcodeproj; sourceTree = ""; }; + 41BC70AC15BF7CCE006A0A6C /* Icon.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = Icon.icns; sourceTree = ""; }; + 41CD6C5115BF748C005E6F29 /* SampleGame.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SampleGame.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 41CD6C6215BF7574005E6F29 /* AppController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppController.h; sourceTree = ""; }; + 41CD6C6315BF7574005E6F29 /* AppController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AppController.mm; sourceTree = ""; }; + 41CD6C6415BF7574005E6F29 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 41CD6C6915BF7673005E6F29 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = InfoPlist.strings; sourceTree = ""; }; + 41CD6C6B15BF7673005E6F29 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = MainMenu.xib; sourceTree = ""; }; + 41CD6C6C15BF7673005E6F29 /* SampleGame_Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = SampleGame_Info.plist; sourceTree = ""; }; + 41CD6C6D15BF7673005E6F29 /* SampleGame_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SampleGame_Prefix.pch; sourceTree = ""; }; + 41CD6C7115BF76FB005E6F29 /* AppDelegate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AppDelegate.cpp; path = ../Classes/AppDelegate.cpp; sourceTree = ""; }; + 41CD6C7215BF76FB005E6F29 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = ../Classes/AppDelegate.h; sourceTree = ""; }; + 41CD6C7315BF76FB005E6F29 /* HelloWorldScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = HelloWorldScene.cpp; path = ../Classes/HelloWorldScene.cpp; sourceTree = ""; }; + 41CD6C7415BF76FB005E6F29 /* HelloWorldScene.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HelloWorldScene.h; path = ../Classes/HelloWorldScene.h; sourceTree = ""; }; + 41CD6C8715BF7793005E6F29 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; + 41CD6C8815BF7793005E6F29 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; + 41CD6C8915BF7793005E6F29 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; + 41CD6C8A15BF7793005E6F29 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; }; + 41CD6C8B15BF7793005E6F29 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + 41CD6C8C15BF7793005E6F29 /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; }; + 41CD6C8D15BF7793005E6F29 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; + 41CD6C8E15BF7793005E6F29 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 41CD6C9715BF77CE005E6F29 /* libxml2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libxml2.dylib; path = usr/lib/libxml2.dylib; sourceTree = SDKROOT; }; + 41CD6C9815BF77CE005E6F29 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; }; + AB63780016FE1A4C00079CB7 /* Export.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Export.h; sourceTree = ""; }; + AB63780116FE1A4C00079CB7 /* SimpleAudioEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleAudioEngine.h; sourceTree = ""; }; + AB63781316FE1A4C00079CB7 /* CDAudioManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDAudioManager.h; sourceTree = ""; }; + AB63781416FE1A4C00079CB7 /* CDAudioManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDAudioManager.m; sourceTree = ""; }; + AB63781516FE1A4C00079CB7 /* CDConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDConfig.h; sourceTree = ""; }; + AB63781616FE1A4C00079CB7 /* CDOpenALSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDOpenALSupport.h; sourceTree = ""; }; + AB63781716FE1A4C00079CB7 /* CDOpenALSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDOpenALSupport.m; sourceTree = ""; }; + AB63781816FE1A4C00079CB7 /* CDXMacOSXSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDXMacOSXSupport.h; sourceTree = ""; }; + AB63781916FE1A4C00079CB7 /* CDXMacOSXSupport.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CDXMacOSXSupport.mm; sourceTree = ""; }; + AB63781A16FE1A4C00079CB7 /* CocosDenshion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CocosDenshion.h; sourceTree = ""; }; + AB63781B16FE1A4C00079CB7 /* CocosDenshion.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CocosDenshion.m; sourceTree = ""; }; + AB63781C16FE1A4C00079CB7 /* SimpleAudioEngine.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SimpleAudioEngine.mm; sourceTree = ""; }; + AB63781D16FE1A4C00079CB7 /* SimpleAudioEngine_objc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleAudioEngine_objc.h; sourceTree = ""; }; + AB63781E16FE1A4C00079CB7 /* SimpleAudioEngine_objc.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SimpleAudioEngine_objc.m; sourceTree = ""; }; + AB63789816FE1A8D00079CB7 /* GameOverScene.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GameOverScene.h; path = ../Classes/GameOverScene.h; sourceTree = ""; }; + AB63789916FE1A8D00079CB7 /* GameOverScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = GameOverScene.cpp; path = ../Classes/GameOverScene.cpp; sourceTree = ""; }; + ABC96BC516FE18D00089A41B /* app.config.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = app.config.txt; sourceTree = ""; }; + ABC96BC616FE18D00089A41B /* app.icf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = app.icf; sourceTree = ""; }; + ABC96BC716FE18D00089A41B /* background-music-aac.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = "background-music-aac.wav"; sourceTree = ""; }; + ABC96BC816FE18D00089A41B /* development.icf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = development.icf; sourceTree = ""; }; + ABC96BCA16FE18D00089A41B /* Marker Felt.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Marker Felt.ttf"; sourceTree = ""; }; + ABC96BCC16FE18D00089A41B /* CloseNormal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseNormal.png; sourceTree = ""; }; + ABC96BCD16FE18D00089A41B /* CloseSelected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseSelected.png; sourceTree = ""; }; + ABC96BCE16FE18D00089A41B /* Player.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Player.png; sourceTree = ""; }; + ABC96BCF16FE18D00089A41B /* Projectile.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Projectile.png; sourceTree = ""; }; + ABC96BD016FE18D00089A41B /* Target.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Target.png; sourceTree = ""; }; + ABC96BD116FE18D00089A41B /* pew-pew-lei.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = "pew-pew-lei.wav"; sourceTree = ""; }; + ABC96BD316FE18D00089A41B /* app.icf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = app.icf; sourceTree = ""; }; + ABC96BD416FE18D00089A41B /* CloseNormal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseNormal.png; sourceTree = ""; }; + ABC96BD516FE18D00089A41B /* CloseSelected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseSelected.png; sourceTree = ""; }; + ABC96BD616FE18D00089A41B /* Player.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Player.png; sourceTree = ""; }; + ABC96BD716FE18D00089A41B /* Projectile.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Projectile.png; sourceTree = ""; }; + ABC96BD816FE18D00089A41B /* Target.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Target.png; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 41851B8F15B93C32004083E9 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 15C156BB1683155600D239F2 /* libcocos2dx.a in Frameworks */, + 41CD6C8F15BF7793005E6F29 /* AppKit.framework in Frameworks */, + 41CD6C9015BF7793005E6F29 /* AudioToolbox.framework in Frameworks */, + 41CD6C9115BF7793005E6F29 /* Cocoa.framework in Frameworks */, + 41CD6C9215BF7793005E6F29 /* CoreFoundation.framework in Frameworks */, + 41CD6C9315BF7793005E6F29 /* Foundation.framework in Frameworks */, + 41CD6C9415BF7793005E6F29 /* OpenAL.framework in Frameworks */, + 41CD6C9515BF7793005E6F29 /* OpenGL.framework in Frameworks */, + 41CD6C9615BF7793005E6F29 /* QuartzCore.framework in Frameworks */, + 41CD6C9915BF77CE005E6F29 /* libxml2.dylib in Frameworks */, + 41CD6C9A15BF77CE005E6F29 /* libz.dylib in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 15C156B11683151A00D239F2 /* Products */ = { + isa = PBXGroup; + children = ( + 15C156B81683151A00D239F2 /* libcocos2dx.a */, + ); + name = Products; + sourceTree = ""; + }; + 41851B8715B93C32004083E9 = { + isa = PBXGroup; + children = ( + 15C156B01683151A00D239F2 /* cocos2dx.xcodeproj */, + 41CD6C5D15BF750B005E6F29 /* Classes */, + AB6377E916FE1A4B00079CB7 /* CocosDenshion */, + 41CD6C5E15BF7514005E6F29 /* Frameworks */, + 41CD6C5F15BF7522005E6F29 /* mac */, + 41EFC1BB15BF7AC30083EA95 /* Products */, + ABC96BC316FE18D00089A41B /* Resources */, + ); + sourceTree = ""; + }; + 41CD6C5D15BF750B005E6F29 /* Classes */ = { + isa = PBXGroup; + children = ( + AB63789816FE1A8D00079CB7 /* GameOverScene.h */, + AB63789916FE1A8D00079CB7 /* GameOverScene.cpp */, + 41CD6C7115BF76FB005E6F29 /* AppDelegate.cpp */, + 41CD6C7215BF76FB005E6F29 /* AppDelegate.h */, + 41CD6C7315BF76FB005E6F29 /* HelloWorldScene.cpp */, + 41CD6C7415BF76FB005E6F29 /* HelloWorldScene.h */, + ); + name = Classes; + sourceTree = ""; + }; + 41CD6C5E15BF7514005E6F29 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 41CD6C8715BF7793005E6F29 /* AppKit.framework */, + 41CD6C8815BF7793005E6F29 /* AudioToolbox.framework */, + 41CD6C8915BF7793005E6F29 /* Cocoa.framework */, + 41CD6C8A15BF7793005E6F29 /* CoreFoundation.framework */, + 41CD6C8B15BF7793005E6F29 /* Foundation.framework */, + 41CD6C8C15BF7793005E6F29 /* OpenAL.framework */, + 41CD6C8D15BF7793005E6F29 /* OpenGL.framework */, + 41CD6C8E15BF7793005E6F29 /* QuartzCore.framework */, + 41CD6C9715BF77CE005E6F29 /* libxml2.dylib */, + 41CD6C9815BF77CE005E6F29 /* libz.dylib */, + ); + name = Frameworks; + sourceTree = ""; + }; + 41CD6C5F15BF7522005E6F29 /* mac */ = { + isa = PBXGroup; + children = ( + 41CD6C6215BF7574005E6F29 /* AppController.h */, + 41CD6C6315BF7574005E6F29 /* AppController.mm */, + 41CD6C6415BF7574005E6F29 /* main.m */, + 41BC70AC15BF7CCE006A0A6C /* Icon.icns */, + 41CD6C6715BF7673005E6F29 /* en.lproj */, + 41CD6C6C15BF7673005E6F29 /* SampleGame_Info.plist */, + 41CD6C6D15BF7673005E6F29 /* SampleGame_Prefix.pch */, + ); + name = mac; + sourceTree = ""; + }; + 41CD6C6715BF7673005E6F29 /* en.lproj */ = { + isa = PBXGroup; + children = ( + 41CD6C6815BF7673005E6F29 /* InfoPlist.strings */, + 41CD6C6A15BF7673005E6F29 /* MainMenu.xib */, + ); + path = en.lproj; + sourceTree = ""; + }; + 41EFC1BB15BF7AC30083EA95 /* Products */ = { + isa = PBXGroup; + children = ( + 41CD6C5115BF748C005E6F29 /* SampleGame.app */, + ); + name = Products; + sourceTree = ""; + }; + AB6377E916FE1A4B00079CB7 /* CocosDenshion */ = { + isa = PBXGroup; + children = ( + AB6377FF16FE1A4C00079CB7 /* include */, + AB63781216FE1A4C00079CB7 /* mac */, + ); + name = CocosDenshion; + path = ../../../../CocosDenshion; + sourceTree = ""; + }; + AB6377FF16FE1A4C00079CB7 /* include */ = { + isa = PBXGroup; + children = ( + AB63780016FE1A4C00079CB7 /* Export.h */, + AB63780116FE1A4C00079CB7 /* SimpleAudioEngine.h */, + ); + path = include; + sourceTree = ""; + }; + AB63781216FE1A4C00079CB7 /* mac */ = { + isa = PBXGroup; + children = ( + AB63781316FE1A4C00079CB7 /* CDAudioManager.h */, + AB63781416FE1A4C00079CB7 /* CDAudioManager.m */, + AB63781516FE1A4C00079CB7 /* CDConfig.h */, + AB63781616FE1A4C00079CB7 /* CDOpenALSupport.h */, + AB63781716FE1A4C00079CB7 /* CDOpenALSupport.m */, + AB63781816FE1A4C00079CB7 /* CDXMacOSXSupport.h */, + AB63781916FE1A4C00079CB7 /* CDXMacOSXSupport.mm */, + AB63781A16FE1A4C00079CB7 /* CocosDenshion.h */, + AB63781B16FE1A4C00079CB7 /* CocosDenshion.m */, + AB63781C16FE1A4C00079CB7 /* SimpleAudioEngine.mm */, + AB63781D16FE1A4C00079CB7 /* SimpleAudioEngine_objc.h */, + AB63781E16FE1A4C00079CB7 /* SimpleAudioEngine_objc.m */, + ); + path = mac; + sourceTree = ""; + }; + ABC96BC316FE18D00089A41B /* Resources */ = { + isa = PBXGroup; + children = ( + ABC96BC516FE18D00089A41B /* app.config.txt */, + ABC96BC616FE18D00089A41B /* app.icf */, + ABC96BC716FE18D00089A41B /* background-music-aac.wav */, + ABC96BC816FE18D00089A41B /* development.icf */, + ABC96BC916FE18D00089A41B /* fonts */, + ABC96BCB16FE18D00089A41B /* hd */, + ABC96BD116FE18D00089A41B /* pew-pew-lei.wav */, + ABC96BD216FE18D00089A41B /* sd */, + ); + name = Resources; + path = ../Resources; + sourceTree = ""; + }; + ABC96BC916FE18D00089A41B /* fonts */ = { + isa = PBXGroup; + children = ( + ABC96BCA16FE18D00089A41B /* Marker Felt.ttf */, + ); + path = fonts; + sourceTree = ""; + }; + ABC96BCB16FE18D00089A41B /* hd */ = { + isa = PBXGroup; + children = ( + ABC96BCC16FE18D00089A41B /* CloseNormal.png */, + ABC96BCD16FE18D00089A41B /* CloseSelected.png */, + ABC96BCE16FE18D00089A41B /* Player.png */, + ABC96BCF16FE18D00089A41B /* Projectile.png */, + ABC96BD016FE18D00089A41B /* Target.png */, + ); + path = hd; + sourceTree = ""; + }; + ABC96BD216FE18D00089A41B /* sd */ = { + isa = PBXGroup; + children = ( + ABC96BD316FE18D00089A41B /* app.icf */, + ABC96BD416FE18D00089A41B /* CloseNormal.png */, + ABC96BD516FE18D00089A41B /* CloseSelected.png */, + ABC96BD616FE18D00089A41B /* Player.png */, + ABC96BD716FE18D00089A41B /* Projectile.png */, + ABC96BD816FE18D00089A41B /* Target.png */, + ); + path = sd; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 41851B9115B93C32004083E9 /* SampleGame */ = { + isa = PBXNativeTarget; + buildConfigurationList = 41851BB015B93C33004083E9 /* Build configuration list for PBXNativeTarget "SampleGame" */; + buildPhases = ( + 41851B8E15B93C32004083E9 /* Sources */, + 41851B8F15B93C32004083E9 /* Frameworks */, + 41851B9015B93C32004083E9 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 15C156BA1683155000D239F2 /* PBXTargetDependency */, + ); + name = SampleGame; + productName = Paralaxer; + productReference = 41CD6C5115BF748C005E6F29 /* SampleGame.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 41851B8915B93C32004083E9 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0420; + ORGANIZATIONNAME = "Bullets in a Burning Box, Inc."; + }; + buildConfigurationList = 41851B8C15B93C32004083E9 /* Build configuration list for PBXProject "SampleGame" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 41851B8715B93C32004083E9; + productRefGroup = 41851B8715B93C32004083E9; + projectDirPath = ""; + projectReferences = ( + { + ProductGroup = 15C156B11683151A00D239F2 /* Products */; + ProjectRef = 15C156B01683151A00D239F2 /* cocos2dx.xcodeproj */; + }, + ); + projectRoot = ""; + targets = ( + 41851B9115B93C32004083E9 /* SampleGame */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXReferenceProxy section */ + 15C156B81683151A00D239F2 /* libcocos2dx.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libcocos2dx.a; + remoteRef = 15C156B71683151A00D239F2 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; +/* End PBXReferenceProxy section */ + +/* Begin PBXResourcesBuildPhase section */ + 41851B9015B93C32004083E9 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 41CD6C6E15BF7673005E6F29 /* InfoPlist.strings in Resources */, + 41CD6C6F15BF7673005E6F29 /* MainMenu.xib in Resources */, + 41BC70AD15BF7CCE006A0A6C /* Icon.icns in Resources */, + ABC96BDA16FE18D00089A41B /* app.config.txt in Resources */, + ABC96BDB16FE18D00089A41B /* app.icf in Resources */, + ABC96BDC16FE18D00089A41B /* background-music-aac.wav in Resources */, + ABC96BDD16FE18D00089A41B /* development.icf in Resources */, + ABC96BDE16FE18D00089A41B /* Marker Felt.ttf in Resources */, + ABC96BDF16FE18D00089A41B /* CloseNormal.png in Resources */, + ABC96BE016FE18D00089A41B /* CloseSelected.png in Resources */, + ABC96BE116FE18D00089A41B /* Player.png in Resources */, + ABC96BE216FE18D00089A41B /* Projectile.png in Resources */, + ABC96BE316FE18D00089A41B /* Target.png in Resources */, + ABC96BE416FE18D00089A41B /* pew-pew-lei.wav in Resources */, + ABC96BE516FE18D00089A41B /* app.icf in Resources */, + ABC96BE616FE18D00089A41B /* CloseNormal.png in Resources */, + ABC96BE716FE18D00089A41B /* CloseSelected.png in Resources */, + ABC96BE816FE18D00089A41B /* Player.png in Resources */, + ABC96BE916FE18D00089A41B /* Projectile.png in Resources */, + ABC96BEA16FE18D00089A41B /* Target.png in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 41851B8E15B93C32004083E9 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 41CD6C6515BF7574005E6F29 /* AppController.mm in Sources */, + 41CD6C6615BF7574005E6F29 /* main.m in Sources */, + 41CD6C7515BF76FB005E6F29 /* AppDelegate.cpp in Sources */, + 41CD6C7615BF76FB005E6F29 /* HelloWorldScene.cpp in Sources */, + AB63787616FE1A4C00079CB7 /* CDAudioManager.m in Sources */, + AB63787716FE1A4C00079CB7 /* CDOpenALSupport.m in Sources */, + AB63787816FE1A4C00079CB7 /* CDXMacOSXSupport.mm in Sources */, + AB63787916FE1A4C00079CB7 /* CocosDenshion.m in Sources */, + AB63787A16FE1A4C00079CB7 /* SimpleAudioEngine.mm in Sources */, + AB63787B16FE1A4C00079CB7 /* SimpleAudioEngine_objc.m in Sources */, + AB63789A16FE1A8D00079CB7 /* GameOverScene.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 15C156BA1683155000D239F2 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = cocos2dx; + targetProxy = 15C156B91683155000D239F2 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 41CD6C6815BF7673005E6F29 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 41CD6C6915BF7673005E6F29 /* en */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; + 41CD6C6A15BF7673005E6F29 /* MainMenu.xib */ = { + isa = PBXVariantGroup; + children = ( + 41CD6C6B15BF7673005E6F29 /* en */, + ); + name = MainMenu.xib; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 41851BAE15B93C33004083E9 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + COPY_PHASE_STRIP = NO; + GCC_C_LANGUAGE_STANDARD = "compiler-default"; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.6; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + }; + name = Debug; + }; + 41851BAF15B93C33004083E9 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + GCC_C_LANGUAGE_STANDARD = "compiler-default"; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.6; + SDKROOT = macosx; + }; + name = Release; + }; + 41851BB115B93C33004083E9 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + CLANG_CXX_LANGUAGE_STANDARD = "compiler-default"; + GCC_C_LANGUAGE_STANDARD = "compiler-default"; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = SampleGame_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + CC_TARGET_OS_MAC, + "DEBUG=1", + USE_FILE32API, + "$(inherited)", + ); + GCC_VERSION = ""; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO; + HEADER_SEARCH_PATHS = ( + "\"$(SDKROOT)/usr/include/libxml2/\"", + "\"$(SRCROOT)/../../../../cocos2dx/include\"", + "\"$(SRCROOT)/../../../../cocos2dx\"", + "\"$(SRCROOT)/../../../../cocos2dx/platform/mac\"", + "\"$(SRCROOT)/../../../../cocos2dx/kazmath/include\"", + ); + INFOPLIST_FILE = SampleGame_Info.plist; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../../../../CocosDenshion/third_party/blackberry/libraries/armle-v7\"", + "\"$(SRCROOT)/../../../../CocosDenshion/third_party/blackberry/libraries/x86\"", + ); + MACOSX_DEPLOYMENT_TARGET = 10.6; + OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; + OTHER_LDFLAGS = ""; + PRODUCT_NAME = SampleGame; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + 41851BB215B93C33004083E9 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + CLANG_CXX_LANGUAGE_STANDARD = "compiler-default"; + GCC_C_LANGUAGE_STANDARD = "compiler-default"; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = SampleGame_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + USE_FILE32API, + CC_TARGET_OS_MAC, + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_VERSION = ""; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO; + HEADER_SEARCH_PATHS = ( + "\"$(SDKROOT)/usr/include/libxml2/\"", + "\"$(SRCROOT)/../../../../cocos2dx/include\"", + "\"$(SRCROOT)/../../../../cocos2dx\"", + "\"$(SRCROOT)/../../../../cocos2dx/platform/mac\"", + "\"$(SRCROOT)/../../../../cocos2dx/kazmath/include\"", + ); + INFOPLIST_FILE = SampleGame_Info.plist; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/../../../../CocosDenshion/third_party/blackberry/libraries/armle-v7\"", + "\"$(SRCROOT)/../../../../CocosDenshion/third_party/blackberry/libraries/x86\"", + ); + MACOSX_DEPLOYMENT_TARGET = 10.6; + OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; + OTHER_LDFLAGS = ""; + PRODUCT_NAME = SampleGame; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 41851B8C15B93C32004083E9 /* Build configuration list for PBXProject "SampleGame" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 41851BAE15B93C33004083E9 /* Debug */, + 41851BAF15B93C33004083E9 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 41851BB015B93C33004083E9 /* Build configuration list for PBXNativeTarget "SampleGame" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 41851BB115B93C33004083E9 /* Debug */, + 41851BB215B93C33004083E9 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 41851B8915B93C32004083E9 /* Project object */; +} diff --git a/samples/Cpp/SimpleGame/proj.mac/SampleGame.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/samples/Cpp/SimpleGame/proj.mac/SampleGame.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000000..54782e32fd --- /dev/null +++ b/samples/Cpp/SimpleGame/proj.mac/SampleGame.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded + + + diff --git a/samples/Cpp/SimpleGame/proj.mac/SampleGame_Prefix.pch b/samples/Cpp/SimpleGame/proj.mac/SampleGame_Prefix.pch new file mode 100644 index 0000000000..46c36a7e99 --- /dev/null +++ b/samples/Cpp/SimpleGame/proj.mac/SampleGame_Prefix.pch @@ -0,0 +1,7 @@ +// +// Prefix header for all source files of the 'Paralaxer' target in the 'Paralaxer' project +// + +#ifdef __OBJC__ + #import +#endif diff --git a/samples/Cpp/SimpleGame/proj.mac/en.lproj/InfoPlist.strings b/samples/Cpp/SimpleGame/proj.mac/en.lproj/InfoPlist.strings new file mode 100644 index 0000000000..477b28ff8f --- /dev/null +++ b/samples/Cpp/SimpleGame/proj.mac/en.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +/* Localized versions of Info.plist keys */ + diff --git a/samples/Cpp/SimpleGame/proj.mac/en.lproj/MainMenu.xib b/samples/Cpp/SimpleGame/proj.mac/en.lproj/MainMenu.xib new file mode 100644 index 0000000000..07f04dbab1 --- /dev/null +++ b/samples/Cpp/SimpleGame/proj.mac/en.lproj/MainMenu.xib @@ -0,0 +1,812 @@ + + + + 1080 + 12D78 + 3084 + 1187.37 + 626.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 3084 + + + YES + NSCustomObject + NSMenu + NSMenuItem + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + NSApplication + + + FirstResponder + + + NSApplication + + + AMainMenu + + YES + + + SampleGame + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + submenuAction: + + SampleGame + + YES + + + About SampleGame + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Preferences… + , + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Services + + 1048576 + 2147483647 + + + submenuAction: + + Services + + YES + + _NSServicesMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Hide HelloCpp + h + 1048576 + 2147483647 + + + + + + Hide Others + h + 1572864 + 2147483647 + + + + + + Show All + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Quit HelloCpp + q + 1048576 + 2147483647 + + + + + _NSAppleMenu + + + + + View + + 1048576 + 2147483647 + + + submenuAction: + + View + + YES + + + Toggle Fullscreen + f + 1048576 + 2147483647 + + + + + + + + + Window + + 1048576 + 2147483647 + + + submenuAction: + + Window + + YES + + + Minimize + m + 1048576 + 2147483647 + + + + + + Zoom + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bring All to Front + + 1048576 + 2147483647 + + + + + _NSWindowsMenu + + + + + Help + + 2147483647 + + + submenuAction: + + Help + + YES + + + SampleGame Help + ? + 1048576 + 2147483647 + + + + + _NSHelpMenu + + + + _NSMainMenu + + + AppController + + + NSFontManager + + + + + YES + + + terminate: + + + + 449 + + + + orderFrontStandardAboutPanel: + + + + 142 + + + + delegate + + + + 495 + + + + performMiniaturize: + + + + 37 + + + + arrangeInFront: + + + + 39 + + + + performZoom: + + + + 240 + + + + hide: + + + + 367 + + + + hideOtherApplications: + + + + 368 + + + + unhideAllApplications: + + + + 370 + + + + showHelp: + + + + 493 + + + + toggleFullScreen: + + + + 537 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 29 + + + YES + + + + + + + + + 19 + + + YES + + + + + + 56 + + + YES + + + + + + 57 + + + YES + + + + + + + + + + + + + + + + 58 + + + + + 134 + + + + + 150 + + + + + 136 + + + + + 144 + + + + + 129 + + + + + 143 + + + + + 236 + + + + + 131 + + + YES + + + + + + 149 + + + + + 145 + + + + + 130 + + + + + 24 + + + YES + + + + + + + + + 92 + + + + + 5 + + + + + 239 + + + + + 23 + + + + + 295 + + + YES + + + + + + 296 + + + YES + + + + + + 420 + + + + + 490 + + + YES + + + + + + 491 + + + YES + + + + + + 492 + + + + + 494 + + + + + 536 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 129.IBPluginDependency + 130.IBPluginDependency + 131.IBPluginDependency + 134.IBPluginDependency + 136.IBPluginDependency + 143.IBPluginDependency + 144.IBPluginDependency + 145.IBPluginDependency + 149.IBPluginDependency + 150.IBPluginDependency + 19.IBPluginDependency + 23.IBPluginDependency + 236.IBPluginDependency + 239.IBPluginDependency + 24.IBPluginDependency + 29.IBPluginDependency + 295.IBPluginDependency + 296.IBPluginDependency + 420.IBPluginDependency + 490.IBPluginDependency + 491.IBPluginDependency + 492.IBPluginDependency + 494.IBPluginDependency + 5.IBPluginDependency + 536.IBPluginDependency + 56.IBPluginDependency + 57.IBPluginDependency + 58.IBPluginDependency + 92.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + + + + YES + + + + + 541 + + + + YES + + AppController + NSObject + + YES + + YES + exitFullScreen: + toggleFullScreen: + + + YES + id + id + + + + YES + + YES + exitFullScreen: + toggleFullScreen: + + + YES + + exitFullScreen: + id + + + toggleFullScreen: + id + + + + + YES + + YES + glView + window + + + YES + EAGLView + NSWindow + + + + YES + + YES + glView + window + + + YES + + glView + EAGLView + + + window + NSWindow + + + + + IBProjectSource + ./Classes/AppController.h + + + + EAGLView + NSOpenGLView + + IBProjectSource + ./Classes/EAGLView.h + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + + + YES + {11, 11} + {10, 3} + + + + diff --git a/samples/Cpp/SimpleGame/proj.mac/main.m b/samples/Cpp/SimpleGame/proj.mac/main.m new file mode 100644 index 0000000000..97d9b73282 --- /dev/null +++ b/samples/Cpp/SimpleGame/proj.mac/main.m @@ -0,0 +1,30 @@ +/**************************************************************************** + Copyright (c) 2010 cocos2d-x.org + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#import + +int main(int argc, char *argv[]) +{ + return NSApplicationMain(argc, (const char **)argv); +}