*E>@xӺj47NKZꄬx>None InternalTimeColorFireApplesInfinity2ndVBitsMipZeroVClampUClampUBitsUSizePaletteVSizeSystemCoreEngineLODSetStill FireAnims MaxColorAllBotpack DrawScaleTimerRotator BeginStateBotExplode NormalFireSelect EndStateClientAltFire PlayIdleAnimVectorProjectileFireIdleFinish UnrealShare PlayFiringbMaskedBlowUpMesh PlayerPawn moreammoZoomingWing AmmoName ViewportBegin TakeDamageCarcassFlashO ProjectileFlashYbDrawMuzzleFlashFlashCPostBeginPlay PostRender SelectSound FireSoundAltDamageType MyDamageTypeProjectileClassFlashS FiringSpeedbAltInstantHit bInstantHitPickupAmmoCount MFTexture AmmoAmountMaxAmmoMomentumTransferProjACbunyelbunorn SpawnSound AmmoStringApplesInfinity2ndArenaCollisionRadiusCollisionHeightAltFire SoundVolumeSwitchToBestWeapon LifeSpan WarnTarget ImpactSound WeaponString AdjustAimExplosionDecal DeathMessage Translocator GiveAmmo RateSelf ProcessTouchPickupMessageUseAmmo RemoteRoleWAV PlayRecoilTick SoundRadiusLightBrightnessbFixedRotationDir TraceShotCheckReplacementAnimEnd AnimSequence ClientFire ZoneChangeProcessTraceHit DecapitatedshotStyle AmbientGlow Destroyed LightRadius RotationRate StopZoomWeaponDescriptionDesiredRotationbBounce PickupSoundMuzzleFlashTexture SoundPitchMuzzleFlashScale FireOffsetbUnlit bNoSmoothMuzzleFlashMesh AmbientSoundMuzzleFlashStylebMuzzleFlashParticlesThirdPersonMeshPickupViewMesh NameColorAltRefireRate AIRating RefireRateIconThirdPersonScale BobDampingPlayerViewScalePlayerViewOffsetAutoSwitchPriority shaketimePlayerViewMeshDownFlying Rotation LightHue shakemag shakevert FlashLengthDefaultWeaponInventoryGroupspeed MuzzleScale ItemName MaxSpeed ToggleZoomDamage WeaponNameOtherP DeltaTime projSpeed HitLocationDirNewZone HitNormal StartTrace Acceleration VelocityEnemybestAimRegion InstigatorZonebHighDetailModeOwner TimeSeconds bDropDetail bWarnTargetNetModedistProjectileSpeed DefaultFOV Palette3bSuperRelevantValue Palette1 EndTraceClipY bSniping DesiredFOV aimerrorSoundDampeningSetPos DrawIcon FlashCountOldFlashCount PointRegion Location HurtRadiusbIsPawnPlayOwnedSound DrawColor bUseAltModeXZ AmmoType bPointingYWbOwnsCrosshair ScriptTextSBRG ViewRotation ReturnValueScale AdjustedAimWeapon LevelInfo ZoneInfoAmmo bestDist InventoryCanvasFireDir ProjClassbWarnLevelActorPawnLodMeshPlayerSound EyeHeightbFire bAltFireClipX bWaterZone Palette9TextureClassIconsPackage TextBufferObjecttrailIgnite EightballBigBlackSmokeSpriteOrangeESpriteYellowE WaterRingRifletarg Palette13 Palette11Pickups WeaponPickupSkinsflak GrenadeFloor bHitWater SmokeRatebRing bWaterStartNumExtraRockets RiflePickupNumFire ChunkHit FunctionStateTournamentWeaponStructUnrealIStructPropertyArenaClassProperty NameProperty BulletBox BlastMark ShockBeam RocketTrail FireAdjustbNovicebCanClientFireAimDir MuzzleFlash2muzzsr3Muzzy3OwnerLocation StillTime StillStart UTRocketRocketLauncher RocketFly1ObjectPropertyFloatProperty BoolProperty IntProperty BytePropertySniper JSniper_01 JSniper_02 Sniper3rdJSniper3rd_01 SniperpickupJSniperpickup_01 usesniper NightVisionScopeCrosshairboomac`Jxݗfo@d% $@?+"5,'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ࠀ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@``` `@@`@bI Ih29% $?1A&ejH#(6[u_1xݗԝXԝX1!t"ڭ!t"ښ1?Q rC [$pG^$pG`$BG"`mKUX`S$@j-Ap)$ ף;q`~dQ{deUsxft:Pw:0uM o+2.^sx E"F"F/_>[ 2P2y&̻ԝX> YR@G> Yttt> YR@G> YѸBԝXL]ԝXtѸBtttԝXttԝXtttԝXԝXԝXԝXԝXttL]ԝXԝXԝXԝXttttԝXttttѸBL]tttԝX> Y> Yxxxxxxxxxxxxxxxxxx> Y> Yx v]+*Classification: High Range Infinity Rifle..C"dBA@$ff?}:!>(=o<nV$CP$>W$AH$q= ?I$?G$fff?;d:Y]+*%k just totally Blasted %o into Infinity.F*6\$?5$G=3$ #<7$L$Hz?E7D4K${.?CB@|$L=zyJT:)4SN$BO$AhCAhBC+$Mqq5pD5￿g5D5FHowCCz?OGg<<<   o23p@3@_?H?WWo?׿߿O@O_Ug@UWW@ = P ? g r g  ?M  !!%%$$*,** *4456+58?A?@C@FAFQ? !F?F]%$Hdd?IAA.frdrwwxxx@EE(&vXG%$ZIe\F@fwHCDCCzZhTEDlGEC[bBrpoo^YYJklJ^p^`__Plr=/^PqrkOq<=</O`4.410;;.79:879>?-0:?8>$32#2#W3ZW$Z~G[][MHGE FDBcHIECBF\i\cmnmCDUKKjQNLLVQVjN  y{z|}y{a()')'ba(*zushgvtgsuhXR SdTST R ronnnn__XXXXIIIjjIk_jkk_XXooIo]no^]n]_^oO^kOOkI..qq<I<OIO<qO]^OON]OqppNOpqq.jNN;;;NNppp;;<;<;..Nj_N_],3*,-30*33/00/::+0:-+-,+84985469447667==>6=5>58>3-::/3>96>8974=45= !##2 V1""YV12##"1V 221VY! VY"#!!Y"@}}~}~~\\Z\FZFZFLLLD@D@DE~~E~ZZZGGGDDDECECbbGGbGEECC[[[bbbllBlBBCC?[[h?h[hHHAHAllmAmlBBmBTT?TJJJKJiiiiPKPPMKKJMUPPKMUPUUUiMiiUMMM      zvyzy{zvz{ywwx{|xxw||%&`&%%'')'((&(a``&(a$%%`a$%%)')wyvvwvfdtftufgdfguteerusrregssgetddgedSWWScRcQRSRSQSWW QQ R RM   !"!$%&%$$*+,,/* *456456+58?@AA?@C@FAFQ? !F?F]%$Hdefd?IAA.frdrvwxwxxx@EE(&vXG%$ZIe\F@fwHCDCCzZhTEDlGEC[bBM5,WK,W : E :O5.P.REKvD5O5=5'?''# !x"x#x$%&'()*5+5,5-O.P/O05123O4˘56N7˘8N9N:O;ZG<ZG=>N?ɴ@>AɴBCD^EtF>GtHɭIvDJ5KL>MNlWOlWPgQRSTɺUgVWX=YxZ^[\>]Z^Z_R`abcdefghɭigjxPkxPlmɺnHoHpT|qT|rstuv(w(xy(z{|}>~^tԂ(EE^Ԉt|=|=>7p7pCj>>֜(gt֤tCjɫɽ^t^tʱʲ^^C#;;7 & #&//7w ?? >-0CB0ADC;MB?M  #% $$(242776 2989>(.EG3336NNFEFQXXYY+;I bc#hh)bb0ggMMYX6vBL0U6^;IC3g(iqNP_VhoUUcmZUUq\//beus}C ` rLKJ``}x}xzzw5JJJw5K___<M)773==(M773y()6>>CyC..<_?:BA?:;@RHTIHRSU;ATUIS&,,&-'^-g^'gD00V|VD|~/uauEW~a" !  *b"lb+l* !# #pjjpqkt]Z\[]vt\ZqPrPrsQsnnememnf{o{12o12r3JJK3KJJ^^IIK_I_6I_|6wv66|wwLvLwy^Lyy^v565I65KI33_34_4w||_4J;J^;<;y<<yw(-~(~(42w2<w<2~<;<< <~'' < '~ ~L vv =v=5= B 'B'xB' x x=45=24=2=Bx(Bx-(xx- - L^ ^?9>?:9A>99@AA@778A7:8:?8QHFQEHSFHHGSSGRRTSRETEQT9:77@9TFSTQFGHRHER]#%%,]+$&&f+$,%%&$+],,$+f#]]+f&%##f&.///{{{..CC///{{{UUUCCUUUCC``ttt}}}``ttDDtDVV}}V}``! ! ! !  k kk** a !a)kk a)**k)))a)aa a """""ooigjgioiphpghpjhgs\Y\ss[[W[ZZ\ZXYY\ZXussYXussW[WogppqqOrNrOqOMPMrPMNPrqrMMlbmmlbmmebbdldmcmddlcmbbecnz00n00zzzz1nzn1n11M   #$%% $$234427897; 2989>(.EFGG3336MNONFEFQWXYXYY+;I bcdc#ghih)lb0ggMMYX6vBL0U6^;IC3g(iqNP_VhoUUcmZUUq\//beus}C ` M'?''#>ɭɽɭ5  K  lW P.P:E:>>t,WKE !5"#x$%x&x'T|(7p)g*,W+,-..>/^012ZG354O55O56|=7O859O:O;Z<lW=ZG>5?5@OA5BCjCtDɫEFNG˘H˘I=JHK5LxPMNOPQNRSNTNUtVɺWXYZ[\]^R_=`abcdefxg(hijkglmno(p(qrstuvvDwvDx7pyxPz{^||=}~T|RZE>^ɺH>(Cj֊֌֍Eɴ֐(^>>ttɴtԤtt^^gԭ^^gʷʸ;7C#; # &/&/7"?? >:33s?./r*q! t ?,@ 9  b5 ;w.*a??,(-'.THCa>?(:%:%-( G ?9@"-&a$ 00s p@ n 9  ?,2a!-L>l6-- '? 8m.ra Pw w w*-a  @ BO-766 R?Ca/!*-a/!.-)1,x.?")1,P.?0u"-a/!2a ?,  CCBm"CD8 9`??  e? ~  p ph~  ~  p ~Bcx cc~ ;;>;X  '3IO?Bx B~ >X;X?X?99f~p>@>@ho@h?>o?G_~~~ cXBX~Hfg&pxwx~x~>'' ϿO}o' 9~~ O w GG~_> H ~~e?3p~f?pxw'NOf ~ g & ' N O GNyN>yy>o?G'f~`|>?h~ 9>~ ~ y?9`&y& ~>O~>>=G?9 f ~>9~/f>f`?p~ff`4I? L? >G?ϾO p Rv|>Ͼ>>4> he@O@eOF8ORG?e>G~w~|7~>O~w~7~>GWWf'>~~ w?>w?>'~~ ~e> ~ ? x x   ~ o~@ؾ߾CXC ~ 9`??  e? ~  p ph~  ~  p ~Bcx cc~ ;;>;X  '3IO?Bx B~ >X;X?X?99f~p>@>@ho@h?>o?G_~~~ cXBX~Hfg&pxwx~x~>'' ϿO}o' 9~~ O w GG~_> H ~~e?3p~f?pxw'NOf ~ g & ' N O GNyN>yy>o?G'f~`|>?h~ 9>~ ~ y?9`&y& ~>O~>>=G?9 f ~>9~/f>f`?p~ff`4I? L? >G?ϾO p Rv|>Ͼ>>4> he@O@eOF8ORG?e>G~w~|7~>O~w~7~>GWWf'>~~ w?>w?>'~~ ~e> ~ ? x x   ~ o~@ؾ߾CXC ~

> @ ~7 > 7?  A~e8 a~` ;>X?;>h?7  o @/=@A'Ex ? X?>h<9(bp~?ChChX7A = dDX=~h~NցG|7|7g}8? @}/@' 6  ?>7?> #h Gb,A=h@Ͽ?>/@. ? G    / @~}@>~.B&nB7??o??Ac>0C@}(@}8> 7  ? A>BO7>'@c g |eؾg ?HH>/ p X? '7׿o?~ X? ~~ vCB@_g?gg-A ~f?P(?d>N>8~>lAvCH׿[>??W//@??W/???dH OO=> /?\ > } H ~ H> H H G ?~XEPB~ H} x?:?h?X@?ʷ@O+GAGAwFx?x ??h > :0 a` `~ ?Dh?DhxwAO?~ e DX =(>6CBʇ@BG { @?AG?wO6  @WA?/?g?O % (w  ](p h( G@O@Co@ˏǾOw ~ } @CBvCCfX??ʷ7ȇAB'@b @WA{ 7 ƞ'6 _?_~ȇ:0? ' e> ggx 7 WAb g z e~ g  +{ p? Wg?7 p? `> > ~`X7(~f>Q ?c>N>~wGU /??X?G???@@fop~ppWV}  p~ p~ >} x x   w G ?>x?FP?B>}  X}>xP>(Th8~X~|}~X X@ P~8@~f_~]X:??:@h? HW˷@#Y|߁쏁AGp> @h ?:8^H~H>Eh(@Eh(ׁ?zH=d~EPh}h}}~F 8GGx?A˷5og/ާ >((U|i  8wͯǏ@f׀6wͷ|}X}f^DD H@W@Awşˏ`h>B/AB'x=7ˏ&DD7>x?>}_o}/:8?+(d>@7>w`hgvdg>$Y"/(ㇿ"?~~P~~P~pCǟ@e~Qb~M~8~ȃ쏁pC(J)///@@j?Ҿ8?8h}J1X}~~=X}@@>~GPB`}80 9`??  e? ~  p ph~  ~  p ~Bcx cc~ ;;>;X  '3IO?Bx B~ >X;X?X?99f~p>@>@ho@h?>o?G_~~~ cXBX~Hfg&pxwx~x~>'' ϿO}o' 9~~ O w GG~_> H ~~e?3p~f?pxw'NOf ~ g & ' N O GNyN>yy>o?G'f~`|>?h~ 9>~ ~ y?9`&y& ~>O~>>=G?9 f ~>9~/f>f`?p~ff`4I? L? >G?ϾO p Rv|>Ͼ>>4> he@O@eOF8ORG?e>G~w~|7~>O~w~7~>GWWf'>~~ w?>w?>'~~ ~e> ~ ? x x   ~ o~@ؾ߾CXC ~~ f`?  L  Ӑ?ˈ? p? > pMhˈ? $)> )? p px ~ W~_~WX* * 뿾 ' 돿 '?[I? Oȟmx? m> 'X_X'Xgi?p䠾d>gh%hdh?""hG@X~~> XpXӨ>>H?f g & 'p?w Ͼ ~ '+  ϿO@o>'? g~L O? ԧ?? w @@ X~? OH ~O [p 䐿&p?w~ '>N O f? g &?' N?O ~G? N? > N > ~ >?)~ ) > ? o? ?G' ~ >C~̯?ȟ f>>  ?h`  & &  ~>O~دG?f Mȿ? ׾>hо />о ` p`?^ImO >@?Ⱦ HK p ?wDC>Ⱦ?>>^~h@?u@?uؾӐ?j8OwD؂@?@>~w~C7>>O@~w~7>>@W>W''>>'p?'>%p?%> Ө>˰> $~˰> ް~  x x?᰾   ~h~gؾ%ؾjXj~  ͸> R`?? 7 |~  p ~ p8h? ?  p? ΐ~[{x? |{> I>N>IX~  ׿  ?׏ 'II O?Yx Y~ X?NX?XRS?>pϠ~S>Uhh?Sh?ؾhG_>͠ |X[XHf? > g&? pw ' ? Oo~>' R~7 O? w @G>>_͐ 9H 9ΘxIp~?ϐpw'N? O f ~ g &' N O ~ϸG N? > N > ~ >? > ? ֿ ֏ o G'> >p@?|C@> R>~ ~  ? S`׿ & &  ~Oǯ>>=?GQ 8ȿ~ ׾Sо?/>~ ~` p`?KI ]9? ? @~O~6 p? fC>ȾȾK~ h?y@c@yc>Y8Of @xG>~w7~O>w7~@W>~W>z'>~ pоpо ¨ >| ʰ  x x?̰>   >hUؾ>XXX͸> ˠˀ 1`?z?z  ]? ~  }p } }ph~  ~  p ~:[x [[~ 33>3X ' '+IyO?:x :~ >_3X?_?11^~p>8>8ho8h?>o?G_~}~~ [X:X~Hfg&wpwp~p~z>'x'' ϿOuo' 1~~ }O~ w GG~_> H ~~]?+p~^?wpw'NOf ~ g & ' N O }GNpN>pp>o?G'^~Xt>?`z~ 1>~ ~ p?1`&p& ~>O~>>=G?1 ^ ~>}1~z/^>^`?zp~^^`z+I? D? >G?ϾO pz zJntݷ>Ͼ>>+> h]@G@]G>8OJzG?]>G}~w~t7~>O~w~7~>GyW}yW^'>~~ w?>w?>'~~ ~]> ~ ? x x}}   ~ o~8ؾ߾;X; ~<9P}ꇽ x} xeq}ؼx=p`=<`= Pꇽp=w`=B<chc<c;;м;H|p}|=w}=39=?~=BhBмH;HH9p9} f`= | @ȼ@P}W}@PϼW7~Oc@=B@=<8N=<O==`xgxx꿽| }?}_||=9?=}g7/<}|y>}.=y|y.=pw_}?~<<f `p=|ohx}9|o<y<9P y=w?߻= ?} 9=f= 9 }|f|fP}`f} fP  49L} =7 p eih>hP~ } P~ H w ho>oP~ p B} cXc} c;==;;8>h}>o~=3)>o~/?>BXB8>;889` 9} f P~ @@@>G>@@G/?=p = c0~ B0~ ==(>>~}?~~PxWxx ~}>/}O׽>>9 x x /~~W>'>}o}7h> p ( x x ei3=P f` h PxW¿}}=&~'~F¿G&/} } '~.~}y.~>y}y>=h>=o>O/}}f= ``B~|g>hh>= 9 _=y==9@> y} =g/=}/9=  f= =o 9= w>~f f@ P f} f@> 4)L= wo'=/= P~ } }Rv|׾}>4@~e >O >e=O=}h>F/?R'e}=W=|=/׽=W=='>/}/}fWW}==e} P~ P~ =}  O @==C0>C=} ` @~ 9 'H  e x  ~ @~ >'  G  ~ Bp~c cp~cH ;p>p>;p;>@~  G~ > >3?'?B BH p>;99~f8>0@`~@>>@~g~~?0 c~B~8x>>~n~~~xx_x__0~~ W?}}>? 98( ~/7 > >   /( e3yfxo~¯~w>~~ o ¯ @>@>~~~~y~>y~~y>@G>?o߿~‡~fX`܏?|~7'hߏ?0 9X ‡>y>9_?y> >7}w~߿ꧾ9> Xf> _>9X?ć=fX f f~fH4پ L> '׾W>=> ?> ~Rv|?W>wWW4y >e>O>e>O>`>FC?R`׾e9~}?|>?}f}Xn __~8@ ?eA @ 8> ? >8~ / @`>g>C>Cx>H~ ( 9`??  e? ~  p ph~  ~  p ~Bcx cc~ ;;>;X  '3IO?Bx B~ >X;X?X?99e~p>@>@`g@`?>g?G_~~ cXBX~H^g&wxwx~x~>'' O|o' 9~~ O w GG~_> H ~~e?3p~e?wxw'NOf ~ g & ' N O GNxN>xx>o?G'eо`|>?h 9>~ ~ x9`&x& ~>O~>>=G?9 e ~>9о/e>e`?p~ee`3I? L? >G?ϾO p Rv|>Ͼ>>3> `e@O@eOF8ORG?e>G~w~|/~>O~w~/~>GWWf='>~~ w?>w?>'~ e> ~ ? x x   ~ o~@ؾ߾CXC ~#AARAA ABCCBm"CpKO CCBCCB CCBPCBhBCCBCCBCCBCCBCCBCB4BPCBhB CBBCCB BA{}CBA{}CP0ApAC8@@PCUCBA{}CABASVC@BAoCBAC {}C@@{}CApApCBAC ==L>??T   "%'+4566&&   CDHI3GIPRS 1 ''%[Q]^^/ gGHDE;CEssusu<Y}} "\Z(:Dn1]QRST&&=W'xt~0%[}aPR3Td/^ V]:R1Lj20;;2P`_PQQ]]gppppGt  W46i::88 /-,.79/.-*?@|g fc0 0X21kWMlb2j43gb> >{ 3*?@+jl eLfcW1k4M{=Y=| Y  dBi %CACd% hvwxzyvV$"$P#!V#!FprsooFGrONJOnKnmJSUS`^_`aT;[)[(Z(]\}}Z\];q<i68 86967976575445 .+.,.,.---874789-.+-+,)>)*>?*{ifk deebKb WeV0b0//WV10/jjV1LLj1Li33kkaa==ii={3{k2k=2kfafaa ===  <<z{z 2 XffX >)?)>>?*?)i{3kf ddebKK Vee0bb/WW1V00/j/V1Ljj1iL3Lka=<z <z XX < z{{ 2X fccc cA@gh$hg$ABA$hB@ @BA B B c$cc$B$g$tvtwvtwsvswuxuyuxsxyy U" " ##!#"UOU"O  OU !#!EFCEoFECqEqrDonnnDqrqDCFCqDC}}}~~~mNINlMlNmMINHmJJmIHlmlHGHJGGJSP`STTTQPPQ]`R]_^__^`_PP_`PSQQQ]]P]SRRR&:ppppZ'p'p&'Y('(ZY'Z(YZ\[[%:(\|Y|Y%|\Y\[%\%|\[%:&;Zp:&:pp;;&T   "%&''+456566&& @ CDEDGHII3MIPQRRS 1 Y'%[Q]_^/ gGHDE;CEstususu<Y}~} "\Z(:Dn1QST&=W'xt~0%[}aPR3Td/^ V]:R1Lj20;;2P`_P  W   Tɸv?ɳlg ,W K l?Eɸɲx˘N !"#$%=&}'V(\)x*x+N,˘-N.N/v0v12ɭ3ɬ4O55657O8O9O:m;g<=ɹ>?x@,WAgBgCDEFGHIJK?LMNOPdcQ^zRg3Sh@TxPUVvWlXYJZ[[A\G]5y^-d_.l`0caɹblcgd?elfɲg5hiɳjkɬlmnop`qrs(tuv(wx(yz{ɭ|@}~ԆԇO`ja֍FP{i4g\kN}vJ(֚jAvORɼYHZ<T;MKN;F<ɩjl?vla>/nvB|m]1ɫʾXl?|o}shlɮ2bm4l0rfe1ttO5|==|==O5:h_{b&6z5e\1^?X<4Q<K=|FFDDF|43d3k@H(:EK95&=5&9ɺ ɹ ? ? 5 555ɸ&# #A#$!?? >A// ============================================================ // ApplesInfinity2nd.ApplesInfinity2nd: AppleBlossom Says HI!! // ============================================================ class ApplesInfinity2nd extends TournamentWeapon; #exec MESH IMPORT MESH=Sniper ANIVFILE=MODELS\Sniper_a.3d DATAFILE=MODELS\Sniper_d.3d X=0 Y=0 Z=0 //Unmirror=1 #exec MESH ORIGIN MESH=Sniper X=0 Y=0 Z=0 YAW=128 #exec MESH SEQUENCE MESH=Sniper SEQ=All STARTFRAME=0 NUMFRAMES=35 #exec MESH SEQUENCE MESH=Sniper SEQ=Still STARTFRAME=0 NUMFRAMES=1 #exec MESH SEQUENCE MESH=Sniper SEQ=Down STARTFRAME=1 NUMFRAMES=4 RATE=16 #exec MESH SEQUENCE MESH=Sniper SEQ=Fire STARTFRAME=5 NUMFRAMES=4 RATE=21 #exec MESH SEQUENCE MESH=Sniper SEQ=Select STARTFRAME=9 NUMFRAMES=4 RATE=16 GROUP=Select #exec MESHMAP NEW MESHMAP=Sniper MESH=Sniper #exec MESHMAP SCALE MESHMAP=Sniper X=0.1 Y=0.1 Z=0.2 #exec TEXTURE IMPORT NAME=JSniper_01 FILE=Textures\JSniper_01.PCX GROUP=Skins LODSET=2 //Material #1 #exec TEXTURE IMPORT NAME=JSniper_02 FILE=Textures\JSniper_02.PCX GROUP=Skins LODSET=2 //2 #exec MESHMAP SETTEXTURE MESHMAP=Sniper NUM=0 TEXTURE=JSniper_01 #exec MESHMAP SETTEXTURE MESHMAP=Sniper NUM=1 TEXTURE=JSniper_02 //3rd person #exec MESH IMPORT MESH=Sniper3rd ANIVFILE=MODELS\Sniper3rd_a.3d DATAFILE=MODELS\Sniper3rd_d.3d X=0 Y=0 Z=0 #exec MESH ORIGIN MESH=Sniper3rd X=-130 Y=0 Z=-10 #exec MESH SEQUENCE MESH=Sniper3rd SEQ=All STARTFRAME=0 NUMFRAMES=1 #exec MESH SEQUENCE MESH=Sniper3rd SEQ=still STARTFRAME=0 NUMFRAMES=1 #exec MESHMAP NEW MESHMAP=Sniper3rd MESH=Sniper3rd #exec MESHMAP SCALE MESHMAP=Sniper3rd X=0.1 Y=0.1 Z=0.2 #exec TEXTURE IMPORT NAME=JSniper3rd_01 FILE=Textures\JSniper3rd_01.PCX GROUP=Skins LODSET=2 //Material #1 #exec MESHMAP SETTEXTURE MESHMAP=Sniper3rd NUM=0 TEXTURE=JSniper3rd_01 //pickup #exec MESH IMPORT MESH=Sniperpickup ANIVFILE=MODELS\Sniperpickup_a.3d DATAFILE=MODELS\Sniperpickup_d.3d X=0 Y=0 Z=0 #exec MESH ORIGIN MESH=Sniperpickup X=100 Y=0 Z=0 #exec MESH SEQUENCE MESH=Sniperpickup SEQ=All STARTFRAME=0 NUMFRAMES=1 #exec MESH SEQUENCE MESH=Sniperpickup SEQ=Still STARTFRAME=0 NUMFRAMES=1 #exec MESHMAP NEW MESHMAP=Sniperpickup MESH=Sniperpickup #exec MESHMAP SCALE MESHMAP=Sniperpickup X=0.1 Y=0.1 Z=0.2 #exec TEXTURE IMPORT NAME=JSniperpickup_01 FILE=Textures\JSniperpickup_01.PCX GROUP=Skins LODSET=2 //Material #1 #exec TEXTURE IMPORT NAME=usesniper FILE=Textures\useSniper.PCX GROUP="Icons" MIPS=OFF #exec MESHMAP SETTEXTURE MESHMAP=Sniperpickup NUM=0 TEXTURE=JSniperpickup_01 #exec TEXTURE IMPORT NAME=NightVision FILE=TEXTURES\NightVision.PCX GROUP="Icons" MIPS=OFF FLAGS=2 LODSET=2 #exec TEXTURE IMPORT NAME=ScopeCrosshair FILE=TEXTURES\ScopeCrosshair.PCX GROUP="Icons" MIPS=OFF FLAGS=2 LODSET=2 #exec AUDIO IMPORT FILE="Sounds\boom.wav" NAME="boom" GROUP="fire" var int NumFire; var name FireAnims[5]; var vector OwnerLocation; var float StillTime, StillStart; simulated function PostRender( canvas Canvas ) { local PlayerPawn P; local float Scale; // Super.PostRender(Canvas); P = PlayerPawn(Owner); if ( (P != None) && (P.DesiredFOV != P.DefaultFOV) ) { bOwnsCrossHair = true; Scale = Canvas.ClipX/256; Canvas.SetPos(0.5 * Canvas.ClipX - 128 * Scale, 0.5 * Canvas.ClipY - 128 * Scale ); Canvas.Style = ERenderStyle.STY_Modulated; Canvas.DrawIcon(Texture'NightVision', Scale); Scale = Canvas.ClipX/640; Canvas.SetPos(0.5 * Canvas.ClipX - 128 * Scale, 0.5 * Canvas.ClipY - 128 * Scale ); Canvas.DrawIcon(Texture'ScopeCrosshair', Scale); Canvas.SetPos(0.5 * Canvas.ClipX + 64 * Scale, 0.5 * Canvas.ClipY + 96 * Scale); Canvas.Style = ERenderStyle.STY_Translucent; Canvas.DrawColor.R = 0; Canvas.DrawColor.G = 255; Canvas.DrawColor.B = 0; Scale = P.DefaultFOV/P.DesiredFOV; Canvas.DrawText("X"$int(Scale)$"."$int(10 * Scale - 10 * int(Scale))); } else bOwnsCrossHair = false; } function float RateSelf( out int bUseAltMode ) { local float dist; if ( AmmoType.AmmoAmount <=0 ) return -2; bUseAltMode = 0; if ( (Bot(Owner) != None) && Bot(Owner).bSniping ) return AIRating + 1.15; if ( Pawn(Owner).Enemy != None ) { dist = VSize(Pawn(Owner).Enemy.Location - Owner.Location); if ( dist > 1200 ) { if ( dist > 2000 ) return (AIRating + 0.75); return (AIRating + FMin(0.0001 * dist, 0.45)); } } return AIRating; } simulated function PlayFiring() { local int r; PlayOwnedSound(FireSound, SLOT_None, Pawn(Owner).SoundDampening*3.0); PlayAnim(FireAnims[Rand(5)],0.6 + 0.6 * FireAdjust, 0.05); } simulated function bool ClientAltFire( float Value ) { GotoState('Zooming'); return true; } function AltFire( float Value ) { ClientAltFire(Value); } /////////////////////////////////////////////////////// state NormalFire { function EndState() { Super.EndState(); OldFlashCount = FlashCount; } Begin: FlashCount++; ProjectileFire(ProjectileClass, ProjectileSpeed, bWarnTarget); PlayFiring(); FinishAnim(); Finish(); } function Timer() { local actor targ; local float bestAim, bestDist; local vector FireDir; local Pawn P; bestAim = 0.95; P = Pawn(Owner); if ( P == None ) { GotoState(''); return; } if ( VSize(P.Location - OwnerLocation) < 6 ) StillTime += FMin(2.0, Level.TimeSeconds - StillStart); else StillTime = 0; StillStart = Level.TimeSeconds; OwnerLocation = P.Location; FireDir = vector(P.ViewRotation); targ = P.PickTarget(bestAim, bestDist, FireDir, Owner.Location); if ( Pawn(targ) != None ) { SetTimer(1 + 4 * FRand(), false); bPointing = true; Pawn(targ).WarnTarget(P, 200, FireDir); } else { SetTimer(0.4 + 1.6 * FRand(), false); if ( (P.bFire == 0) && (P.bAltFire == 0) ) bPointing = false; } } function ProcessTraceHit(Actor Other, Vector HitLocation, Vector HitNormal, Vector X, Vector Y, Vector Z) { // local UT_Shellcase s; // s = Spawn(class'UT_Shellcase',, '', Owner.Location + CalcDrawOffset() + 30 * X + (2.8 * FireOffset.Y+5.0) * Y - Z * 1); // if ( s != None ) // { // s.DrawScale = 2.0; // s.Eject(((FRand()*0.3+0.4)*X + (FRand()*0.2+0.2)*Y + (FRand()*0.3+1.0) * Z)*160); // } if (Other == Level) Spawn(class'bunyel',,, HitLocation+HitNormal, Rotator(HitNormal)); else if ( (Other != self) && (Other != Owner) && (Other != None) ) { if ( Other.bIsPawn ) Other.PlaySound(Sound 'ChunkHit',, 4.0,,100); if ( Other.bIsPawn && (HitLocation.Z - Other.Location.Z > 0.62 * Other.CollisionHeight) && (instigator.IsA('PlayerPawn') || (instigator.IsA('Bot') && !Bot(Instigator).bNovice)) ) Other.TakeDamage(120, Pawn(Owner), HitLocation, 35000 * X, AltDamageType); else Other.TakeDamage(80, Pawn(Owner), HitLocation, 30000 * X, myDamageType); if ( !Other.bIsPawn && !Other.IsA('Carcass') ) spawn(class'bunyel',,,HitLocation+HitNormal*9); } } function Projectile ProjectileFire(class ProjClass, float ProjSpeed, bool bWarn) { local vector HitLocation, HitNormal, StartTrace, EndTrace, X,Y,Z, AimDir; local actor Other; Owner.MakeNoise(Pawn(Owner).SoundDampening); GetAxes(Pawn(owner).ViewRotation,X,Y,Z); StartTrace = Owner.Location + pawn(owner).Eyeheight * Z; //adjust for current accuracy of weapon and player AdjustedAim = pawn(owner).AdjustAim(ProjSpeed, StartTrace, 2*AimError, False, False); X = vector(AdjustedAim); EndTrace = StartTrace + 10000 * X; AimDir = vector(AdjustedAim); Other = Pawn(Owner).TraceShot(HitLocation,HitNormal,EndTrace,StartTrace); return Spawn(ProjClass,,, StartTrace,AdjustedAim); } function Finish() { if ( (Pawn(Owner).bFire!=0) && (FRand() < 0.6) ) Timer(); Super.Finish(); } state Idle { function Fire( float Value ) { if ( AmmoType == None ) { // ammocheck GiveAmmo(Pawn(Owner)); } if (AmmoType.UseAmmo(1)) { GotoState('NormalFire'); bCanClientFire = true; bPointing=True; if ( Owner.IsA('Bot') ) { // simulate bot using zoom if ( Bot(Owner).bSniping && (FRand() < 0.65) ) AimError = AimError/FClamp(StillTime, 1.0, 8.0); else if ( VSize(Owner.Location - OwnerLocation) < 6 ) AimError = AimError/FClamp(0.5 * StillTime, 1.0, 3.0); else StillTime = 0; } Pawn(Owner).PlayRecoil(FiringSpeed); // ProjectileFire(ProjectileClass, 10000, False); AimError = Default.AimError; ClientFire(Value); } } function BeginState() { bPointing = false; SetTimer(0.4 + 1.6 * FRand(), false); Super.BeginState(); } function EndState() { SetTimer(0.0, false); Super.EndState(); } Begin: bPointing=False; if ( AmmoType.AmmoAmount<=0 ) Pawn(Owner).SwitchToBestWeapon(); //Goto Weapon that has Ammo if ( Pawn(Owner).bFire!=0 ) Fire(0.0); Disable('AnimEnd'); PlayIdleAnim(); } /////////////////////////////////////////////////////// state Zooming { simulated function Tick(float DeltaTime) { if ( Pawn(Owner).bAltFire == 0 ) { if ( (PlayerPawn(Owner) != None) && PlayerPawn(Owner).Player.IsA('ViewPort') ) PlayerPawn(Owner).StopZoom(); SetTimer(0.0,False); GoToState('Idle'); } } simulated function BeginState() { if ( Owner.IsA('PlayerPawn') ) { if ( PlayerPawn(Owner).Player.IsA('ViewPort') ) PlayerPawn(Owner).ToggleZoom(); SetTimer(0.2,True); } else { Pawn(Owner).bFire = 1; Pawn(Owner).bAltFire = 0; Global.Fire(0); } } } /////////////////////////////////////////////////////////// simulated function PlayIdleAnim() { if ( Mesh != PickupViewMesh ) PlayAnim('Still',1.0, 0.05); } E3P 3 B<0"b.. +  .. W/ D?,((9 ?''9&.g6- a0  @IDY q!,' G6NH&{N$.@@a,#??L= m class ApplesInfinity2ndArena expands Arena; function bool CheckReplacement(Actor Other, out byte bSuperRelevant) { if ( Other.IsA('Translocator') ) return true; return Super.CheckReplacement( Other, bSuperRelevant ); /* if ( Other.IsA('Ammo') ) { if ((AmmoString != "") && !Other.IsA(AmmoName)) ReplaceWith(Other, AmmoString); return false; } bSuperRelevant = 0; return true; */ }    " """* "^ii H@AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:::::::AAAAAAAAAAAAAAA:A{:BAAAAAAAAAAAAA9{AAzA:s{BAAAAAAAAAAAAAAAAAABz:ABsAAAAAAAAAAAAAAArArAA{AAAAAAAAAAAAAAAAAArs{::AA{BBAAAAAAAAAAAAAAzrrA{AAA{B{9AAAAAAAAAAAAAAA9zAAz{A999::::::ABAIBA9:9AAAAAAAAAAAAAAAAAzAA{:|99999999AAAAIBAs:999:999AAAAAAAAAAAAAAAAAAzsBB:AA999999AAAJBA9999999::AAAAAAAAAAAAAAAAAAAAszAss|:A9999BABAA999999zAAAAAAAAAAAAAAAAAAAAA{BB{A::A9AAsBA999rAIAAAAAAAAAAAAAAAAAAAzzBA:AAABAABHAAAAAAAAAAAAAAAAABBsIzI{AA:{ÉIAAAAAAAAAAAAAAABB{{Iz:A{JzAAAAAAAAAAAAAszssz{:J{BAÊIBAAAAAAAAAAAAAAsBz{B9AABBAB{AAAAAAAAAAAAAAAt{{B9BAA{BA:AAAAAAAAAAAAAAAAAAB{{:9:ABB:AAAAAAAAAAAAAAAAA|{BBBA::AABA:AAAAAAAAAAAAAAAA{{AzAA::sBAAAAAAAAAAAAAAAAAA|zBAA:::::BsAAAAAAAAAAAAAAAA|ssAAA:A{:AAAAAAAAAAAAAAAAAA{sAA::::AAAAAAAAAAAAAAAAAAs{BsA99::BA:AAAAAAAAAAAAAAAAABB9999::AAAAAAAAAAAAAAAAA{AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBAAAAAAAAAAABBBBBBBBBBBBBBBBBBAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBB5AAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBB5AAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBB5AAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAABBBBBBBBBBBBBBBBBB55AAAAAAAAAAAAABBBBBBBBBBBBB555AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY@AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB{sAAAAAzzB9AAAAAAz{BAAAAAAAz9AIB9AAAAAsAr999AIB999AAAAA9B{9zz9ABA9zIAAAAAAs{AzIAAAAAA9szzzzAAAA9z{AA9AAAAAA{J9:IB:AAAAAABA::»AAAAAAssA:z9AAAAAA:C999AAAAAAAA9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAA  AAAAAAAAAAA