Êþº¾E¶  java/lang/Object()Vjava/util/HashMap   )net/minecraft/world/level/ServerExplosion hitPlayersLjava/util/Map;  level(Lnet/minecraft/server/level/ServerLevel;  source#Lnet/minecraft/world/entity/Entity;  radiusF  centerLnet/minecraft/world/phys/Vec3; ! "#fireZ % &'blockInteraction6Lnet/minecraft/world/level/Explosion$BlockInteraction; )*+ ,-&net/minecraft/server/level/ServerLevel damageSources2()Lnet/minecraft/world/damagesource/DamageSources; /01 23.net/minecraft/world/damagesource/DamageSources explosionV(Lnet/minecraft/world/level/Explosion;)Lnet/minecraft/world/damagesource/DamageSource; 5 67 damageSource/Lnet/minecraft/world/damagesource/DamageSource; 9 :;makeDamageCalculatorZ(Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/ExplosionDamageCalculator; = >?damageCalculator5Lnet/minecraft/world/level/ExplosionDamageCalculator; A B?EXPLOSION_DAMAGE_CALCULATORD>net/minecraft/world/level/EntityBasedExplosionDamageCalculator CF G&(Lnet/minecraft/world/entity/Entity;)V IJK LM!net/minecraft/world/entity/EntitygetBoundingBox!()Lnet/minecraft/world/phys/AABB; OPQ RSnet/minecraft/world/phys/AABBmaxXD OU VSminX@ OZ [SmaxY O] ^SminY O` aSmaxZ Oc dSminZ fgh ijjava/lang/Mathfloor(D)D lmn opnet/minecraft/util/Mthlerp(DDD)Drnet/minecraft/world/phys/Vec3 qt u(DDD)V Iw x#()Lnet/minecraft/world/level/Level;z%net/minecraft/world/level/ClipContext |}~ €+net/minecraft/world/level/ClipContext$BlockCOLLIDER-Lnet/minecraft/world/level/ClipContext$Block; ‚ƒ„ …†+net/minecraft/world/level/ClipContext$FluidNONE-Lnet/minecraft/world/level/ClipContext$Fluid; yˆ ‰¾(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/ClipContext$Block;Lnet/minecraft/world/level/ClipContext$Fluid;Lnet/minecraft/world/entity/Entity;)V ‹Œ� Ž�net/minecraft/world/level/LevelclipR(Lnet/minecraft/world/level/ClipContext;)Lnet/minecraft/world/phys/BlockHitResult; ‘’“ ”•'net/minecraft/world/phys/BlockHitResultgetType+()Lnet/minecraft/world/phys/HitResult$Type; —˜™ š›'net/minecraft/world/phys/HitResult$TypeMISS)Lnet/minecraft/world/phys/HitResult$Type;�java/util/HashSet œAp f¡ ¢jsqrt?333 )¥ ¦§random!Lnet/minecraft/util/RandomSource; ©ª« ¬­net/minecraft/util/RandomSource nextFloat()F?™š q° ±Sx q³ ´Sy q¶ ·Sz>™™š º»¼ ½¾net/minecraft/core/BlockPos containing"(DDD)Lnet/minecraft/core/BlockPos; )À Á getBlockStateQ(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; )Ä ÅÆ getFluidStateN(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/FluidState; )È ÉÊisInWorldBounds (Lnet/minecraft/core/BlockPos;)Z ÌÍÎ ÏÐ3net/minecraft/world/level/ExplosionDamageCalculatorgetBlockExplosionResistanceà(Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)Ljava/util/Optional; ÒÓÔ ÕÖjava/util/Optional isPresent()Z ÒØ ÙÚget()Ljava/lang/Object;Üjava/lang/Float ÛÞ ß­ floatValue Ìá âãshouldBlockExplodeŸ(Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;F)Z åæç èé java/util/Setadd(Ljava/lang/Object;)Z?Ó33@>ffgî-it/unimi/dsi/fastutil/objects/ObjectArrayList íð ñ(Ljava/util/Collection;)V7'Ŭ lô iõ(D)I O÷ ø (DDDDDD)V )ú ûü getEntitiesT(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; þÿ java/util/Listiterator()Ljava/util/Iterator;  Öjava/util/IteratorhasNext   Únext I  ignoreExplosion((Lnet/minecraft/world/level/Explosion;)Z I  distanceToSqr"(Lnet/minecraft/world/phys/Vec3;)D)net/minecraft/world/entity/item/PrimedTnt I position!()Lnet/minecraft/world/phys/Vec3; I getEyePosition q subtract@(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; q! " normalize Ì$ %&shouldDamageEntityK(Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/entity/Entity;)Z Ì( )*getKnockbackMultiplier&(Lnet/minecraft/world/entity/Entity;)F , -.getSeenPercentE(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)F I0 12doTeamsAllowDamage&(Lnet/minecraft/world/entity/Entity;)Z Ì4 56getEntityDamageAmountL(Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/entity/Entity;F)F I8 9: hurtServer[(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;F)Z<'net/minecraft/world/entity/LivingEntity >?@ AB3net/minecraft/world/entity/ai/attributes/AttributesEXPLOSION_KNOCKBACK_RESISTANCELnet/minecraft/core/Holder; ;D EFgetAttributeValue(Lnet/minecraft/core/Holder;)D qH IJscale"(D)Lnet/minecraft/world/phys/Vec3; IL MNpushFromExplosion"(Lnet/minecraft/world/phys/Vec3;)V PQR ST!net/minecraft/tags/EntityTypeTagsREDIRECTABLE_PROJECTILELnet/minecraft/tags/TagKey; IV WXis(Lnet/minecraft/tags/TagKey;)ZZ0net/minecraft/world/entity/projectile/Projectile \]^ _`-net/minecraft/world/damagesource/DamageSource getEntity%()Lnet/minecraft/world/entity/Entity; Yb cGsetOwnere(net/minecraft/world/entity/player/Player dg hÖ isSpectator dj kÖ isCreative dm no getAbilities/()Lnet/minecraft/world/entity/player/Abilities; qrs t#+net/minecraft/world/entity/player/Abilitiesflying vwx yz java/util/Mapput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; I| }GonExplosionHitjava/util/ArrayList ~ ‚ƒ„ …†net/minecraft/util/Utilshuffle4(Ljava/util/List;Lnet/minecraft/util/RandomSource;)Vˆ ‰Šaccept1(Ljava/util/List;)Ljava/util/function/BiConsumer; Œ�Ž }�0net/minecraft/world/level/block/state/BlockStateŒ(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Explosion;Ljava/util/function/BiConsumer;)V‘8net/minecraft/world/level/ServerExplosion$StackCollector �“ ”•posLnet/minecraft/core/BlockPos; �— ˜™stack$Lnet/minecraft/world/item/ItemStack; ›œ� žŸ%net/minecraft/world/level/block/Block popResourcee(Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V ©¡ ¢£nextInt(I)I Œ¥ ¦ÖisAir º¨ ©ªbelow()Lnet/minecraft/core/BlockPos; Œ¬ ­Ö isSolidRender ¯°± ²³-net/minecraft/world/level/block/BaseFireBlockgetStatex(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; )µ ¶·setBlockAndUpdateR(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z ¹º» ¼½-net/minecraft/world/level/gameevent/GameEventEXPLODE%Lnet/minecraft/core/Holder$Reference; )¿ ÀÁ gameEvent`(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;)V à ÄÅcalculateExplodedPositions()Ljava/util/List; Ç È hurtEntities Ê ËÖinteractsWithBlocks ÍÎÏ ÙÐ%net/minecraft/util/profiling/Profiler/()Lnet/minecraft/util/profiling/ProfilerFiller;Òexplosion_blocks ÔÕÖ ×Ø+net/minecraft/util/profiling/ProfilerFillerpush(Ljava/lang/String;)V Ú ÛÜinteractWithBlocks(Ljava/util/List;)V ÔÞ ßpop á âÜ createFire þä åæsize()I �è éêtryMerge'(Lnet/minecraft/world/item/ItemStack;)V ìíî ïÖ"net/minecraft/world/item/ItemStackisEmpty �ñ òD(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V þæ õö÷ ø'4net/minecraft/world/level/Explosion$BlockInteractionKEEP úûü ýþ#net/minecraft/world/level/ExplosiongetIndirectSourceEntityN(Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; õ ' TRIGGER_BLOCK  &net/minecraft/world/entity/EntityTypesBREEZE_WIND_CHARGE'Lnet/minecraft/world/entity/EntityType; I Wé )    getGameRules1()Lnet/minecraft/world/level/gamerules/GameRules;  -net/minecraft/world/level/gamerules/GameRules MOB_GRIEFING.Lnet/minecraft/world/level/gamerules/GameRule;  ÙB(Lnet/minecraft/world/level/gamerules/GameRule;)Ljava/lang/Object;java/lang/Boolean  Ö booleanValue   WIND_CHARGE õ !ÖshouldAffectBlocklikeEntities # $%addOrAppendStackT(Ljava/util/List;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V ÌMAX_DROPS_PER_COMBINED_STACKI ConstantValueLARGE_EXPLOSION_RADIUS@RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable; SignatureZLjava/util/Map; (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;Lnet/minecraft/world/phys/Vec3;FZLnet/minecraft/world/level/Explosion$BlockInteraction;)VCodeLineNumberTableLocalVariableTablethis+Lnet/minecraft/world/level/ServerExplosion; StackMapTableMethodParametersfromzzyyxxentitybbLnet/minecraft/world/phys/AABB;xsyszsxOffsetzOffsethitscountblock2Lnet/minecraft/world/level/block/state/BlockState;fluid/Lnet/minecraft/world/level/material/FluidState; resistanceLjava/util/Optional;xdydzddremainingPowerxpypzpstepSize toBlowSetLjava/util/Set;LocalVariableTypeTable'Ljava/util/Optional;.Ljava/util/Set;\-net/minecraft/world/level/material/FluidState1()Ljava/util/List; livingEntity)Lnet/minecraft/world/entity/LivingEntity; projectile2Lnet/minecraft/world/entity/projectile/Projectile;player*Lnet/minecraft/world/entity/player/Player;dist entityOrigin directionknockbackMultiplierexposureknockbackResistanceknockbackPower knockback doubleRadiusx0x1y0y1z0z1entitiesLjava/util/List;5Ljava/util/List;:Lnet/minecraft/world/level/ServerExplosion$StackCollector; targetBlocksstacks/Ljava/util/List;LLjava/util/List;2(Ljava/util/List;)Vexplodeprofiler-Lnet/minecraft/util/profiling/ProfilerFiller;toBlowstackCollector�(Ljava/util/List;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V getHitPlayers()Ljava/util/Map;\()Ljava/util/Map;*()Lnet/minecraft/server/level/ServerLevel;+()Lnet/minecraft/world/entity/LivingEntity;getDirectSourceEntitygetDamageSource1()Lnet/minecraft/world/damagesource/DamageSource;getBlockInteraction8()Lnet/minecraft/world/level/Explosion$BlockInteraction;canTriggerBlocksmobGriefingEnabledisNotWindChargeisSmalllambda$interactWithBlocks$0 SourceFileServerExplosion.java NestMembersBootstrapMethods—'(Ljava/lang/Object;Ljava/lang/Object;)V™ š �%œD(Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)Vž Ÿ ¡ ¢£"java/lang/invoke/LambdaMetafactory metafactoryÌ(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; InnerClassesBlockInteractionBlockFluid©"net/minecraft/world/phys/HitResultTypeStackCollector­#net/minecraft/core/Holder$Reference¯net/minecraft/core/Holder Reference²%java/lang/invoke/MethodHandles$Lookup´java/lang/invoke/MethodHandlesLookup! ú B?'()*+),"#&'-.67>?/012p Y*·*»Y· µ *+µ*,µ*µ*µ*µ *µ$*-Ç+¶(*¶.§-µ4*Ç *,¶8§µ<±3. 869:;<%=+>1?E@XA4\ Y56YYY67Y>?YYY"#Y&'7oÿA  )I\Ìqõ ÿ  )I\Ìqõ \P ÿ  )I\Ìqõ Ì8!6>"&-...:;2T+Ç ²@§ »CY+·E°3D4567 GÌ8- . -.2¸ '+¶HM,´N,´TgWkcoJ,´Y,´\gWkco9,´_,´bgWkco9)o¸e)kgWo9 o¸ekgWo9 )˜›˜› ˜œ ®6 69˜��9˜�Š9˜�v,´T,´N¸k9,´\,´Y¸k9,´b,´_¸k9»qY c c·s:+¶v»yY*²{²�+·‡¶Š¶�²–¦„ „c9§ÿ‰c9§ÿu)c9§ÿb ††n®3bHIJ*K=MMN_PsQuSxT{U…V�W™X¨Y·ZÆ[Û\ü]ÿ_W VUd4¬¨Z±S·K´SÆ<·SÛ'9’z:SˆŽ;S~¡<S''=">?@S*ýAS=êBSMÚCS _ÈDS x¯E( {¬F(7e ÿsqIOþü ü ÿlqIOqÿ qIOú ú8 =­2/*´®3i4 562/*´°3n4 56ÄÅ2›©»œY·žL=>¢�6¢€6¢p™$Ÿ™Ÿ™ Ÿ§E†Ÿn j f�9†Ÿn j f�9†Ÿn j f�9 kkc  kc¸ 9  o9 o9  o9 *´£*´´¤¹¨®jbj8*´´¯9*´´²9*´´µ9¸8 •žµ¸¹:*´¶¿:*´¶Ã:*´¶Çš§…*´<**´¶Ë:¶Ñ™¶×À۶ݸb¸jf8 •ž!*´<**´¶à™ +¹äWêkc9êkc9 êkc9ìf8§ÿJ„§þ�„§þ„§þp»íY+·ï°3ž'rt uvw'xIyL|X}e~rˆ��‚–ƒ�…¶†¿‡ÈˆÑŠÕ‹ÜŒç�òŽý� ‘ ” •(–>™Zšc�nžyŸ„ ‹¡Žw”všu ¦4À礔•ò™GHýŽIJ kKLX6MSe)NSrOS ˆPS ¶ØQ¿ÏRSÈÆSSѽTSÕ¹U t:(„;( “<(©56¡VW žå(X kKY¡VZ7Z þ åüü +ÿˆ åþ6ºŒ[ü1Ò$ÿ* åúúú/]È24*´ò–œ±*´ jD*´´¯#�gg¸ó=*´´¯#�cc¸ó>*´´²#�gg¸ó6*´´²#�cc¸ó6*´´µ#�gg¸ó6*´´µ#�cc¸ó6*´*´»OY‡‡‡‡‡‡·ö¶ù:¹ý:  ¹™l ¹ÀI:  *¶ ™§ÿá *´¶¸ #�o9  —ž§ÿÆ Á™  ¶§ ¶:  *´¶¶ :*´<* ¶#6*´< ¶'8š  •™*´ ¸+§ 8™0*´Æ*´ ¶/™ *´*´4*´<* ¶3¶7W Á;™ À;:²=¶C§9 g�k�kgk9¶G: ¶K ²O¶U™! ÁY™ ÀY:*´4¶[¶a§; Ád™3 Àd:¶fš$¶i™¶l´pš*´ ¹uW *´¶{§þ�±3’$ª « ­¯"°2±C²T³e´vµš·¹¸Â¹Å»Ö¼Ý½àÀ÷ÁÃÄÅ7Ç<ÈOÉi͆ϙТѩÓÃÔÒÕáÖü× ÛÜÝ4Þx ^_Ã`aá)bcÖ=dS ÷e f%#÷g7Üh†�iS™zjS¢qk¹Z= 56l"õm(2ån(CÔo(TÃp(e²q(v¡r(š}stX š}su7} ÿ—  þü!IüDqÿ2 þIqq @ü@þMqý)dù ÿ  þÛÜ2%z»~Y·€M+*´´¤¸�+¹ýN-¹™*-¹Àº:*´¶¿*´*,º‡¶‹§ÿÓ,¹ýN-¹™"-¹À�:*´´’´–¸š§ÿÛ±3& àáã.äGåJçeèvéyê44.”•e˜vz56zwtrxtXzwyrxz7ýþú/üú'8w/{âÜ2Ò^+¹ýM,¹™P,¹ÀºN*´´¤¹ š3*´-¶¿¶¤™%*´-¶§¶¿¶«™*´-*´-¸®¶´W§ÿ­±3íîIïZñ]ò4 @”•^56^wtX ^wy7üûRú8w/{|æ2ÔM*´*´²¸*´¶¾*¶ÂL*¶Æ*¶É™¸ÌM,ѹÓ*+¶Ù,¹Ý*´ ™*+¶à+¹ã¬3. õ÷øú"û&ü/ý4þ:AF4 &}~M566tX 6y7 ü:þ $%2Á=*¹ýN-¹™-¹À�:+¶ç+¶ë™±§ÿÞ*»�Y,+·ð¹óW±3!(), <!4*€v=xt=˜™=”•X =xz7 ü!ú8 x˜”/�ËÖ2E*´$²ô¥§¬3$4 567@‚ƒ2/*´ °3(4 56/„…2/*´°3-4 56ý†22*´¸ù°324 56-.‡`2/*´°374 56-.ˆ‰2/*´4°3;4 56Š‹2/*´$°3@4 56ŒÖ2z6*´$²ÿ¥¬*´Æ$*´²¶™*´¶ ²¶À¶¬¬3E F I J4M4 6567 '!Ö2¹U*´¶ ²¶À¶<*´Æ*´²¶š*´²¶š§=™¬*´$¶™ ™§¬3RS;T?UAW4 U56A�#;Ž#7ü5@ü@�Ö2L*´ –› *¶Éš§¬3[4 567@ �%2E*+,¸"±3ä4 xt˜™•‘2# »ÌY·&³@±3)’“”�• �–˜›¤:õú¥@|y¦@‚y§@—¨ª@� « ¬®° ±³µ