Êþº¾EÔ  java/lang/Object()V   !net/minecraft/world/entity/EntitygetDeltaMovement!()Lnet/minecraft/world/phys/Vec3;  level#()Lnet/minecraft/world/level/Level;   position  4net/minecraft/world/entity/projectile/ProjectileUtil computeMargin&(Lnet/minecraft/world/entity/Entity;)F  +net/minecraft/world/level/ClipContext$BlockCOLLIDER-Lnet/minecraft/world/level/ClipContext$Block; ! "# getHitResultô(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;FLnet/minecraft/world/level/ClipContext$Block;)Lnet/minecraft/world/phys/HitResult; % & getHeadLookAngle ( ) getEyePosition +,- ..net/minecraft/world/item/component/AttackRangeeffectiveMinRange 012 34net/minecraft/world/phys/Vec3scale"(D)Lnet/minecraft/world/phys/Vec3; 06 78add@(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; : ; getKnownMovement 0= >?dot"(Lnet/minecraft/world/phys/Vec3;)D +A BeffectiveMaxRange DEF GHjava/lang/Mathmax(DD)D +J KL hitboxMargin()F N OPgetHitEntitiesAlongñ(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Ljava/util/function/Predicate;Lnet/minecraft/world/phys/Vec3;FLnet/minecraft/world/level/ClipContext$Block;)Lcom/mojang/datafixers/util/Either; R ST getViewVector"(F)Lnet/minecraft/world/phys/Vec3;V%net/minecraft/world/level/ClipContext XYZ [\+net/minecraft/world/level/ClipContext$FluidNONE-Lnet/minecraft/world/level/ClipContext$Fluid; U^ _¾(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 abc denet/minecraft/world/level/LevelclipIncludingBorderR(Lnet/minecraft/world/level/ClipContext;)Lnet/minecraft/world/phys/BlockHitResult; ghi jk"net/minecraft/world/phys/HitResultgetType+()Lnet/minecraft/world/phys/HitResult$Type; mno pq'net/minecraft/world/phys/HitResult$TypeMISS)Lnet/minecraft/world/phys/HitResult$Type; gs t  getLocation v wxgetBoundingBox!()Lnet/minecraft/world/phys/AABB; z{| }~net/minecraft/world/phys/AABB expandTowards@(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; z€ �‚inflate"(D)Lnet/minecraft/world/phys/AABB; „ …†getEntityHitResultì(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;F)Lnet/minecraft/world/phys/EntityHitResult; ˆh‰'net/minecraft/world/phys/BlockHitResult ˆs 0Œ �? distanceToSqr ��‘ ’“!com/mojang/datafixers/util/Eitherleft7(Ljava/lang/Object;)Lcom/mojang/datafixers/util/Either; z• –—ofSizeC(Lnet/minecraft/world/phys/Vec3;DDD)Lnet/minecraft/world/phys/AABB; 0™ š8subtract œ �žgetManyEntityHitResult(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;FLnet/minecraft/world/level/ClipContext$Block;ZZ)Ljava/util/Collection;  ¡¢ £¤java/util/CollectionisEmpty()Z �¦ §“right a© ª« getEntitiesr(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List; ­®¯ °±java/util/Listiterator()Ljava/util/Iterator; ³´µ ¶¤java/util/IteratorhasNext ³¸ ¹ºnext()Ljava/lang/Object; ¼ ½L getPickRadius z¿ ÀÁclipT(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional; zà ÄÅcontains"(Lnet/minecraft/world/phys/Vec3;)Z Ç È¤canBePickedFromInside ÊËÌ ÍÎjava/util/OptionalorElse&(Ljava/lang/Object;)Ljava/lang/Object; ÊРѤ isPresent ÊÓ Ôºget Ö ×ØgetRootVehicle%()Lnet/minecraft/world/entity/Entity;Ú(net/minecraft/world/phys/EntityHitResult ÙÜ ÝE(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V>™™š à áâ tickCountIA  Då æçmin(FF)F Dé Gçëjava/lang/Doubleïÿÿÿÿÿÿ Êï ðñempty()Ljava/util/Optional;ójava/util/ArrayList ò ­ö 7÷(Ljava/lang/Object;)Z Ê¡ zú û  getCenter 0ý þÿ lengthSqr()D 0 ÿhorizontalDistance 0 zD 0  x    Hnet/minecraft/util/Mthatan2@L¥ÜB´  setYRot(F)V 0 y  setXRot  LgetXRot  !"xRotOFÃ4C´C4 ' (LgetYRot * +"yRotO  - ./lerp(FFF)F 123 45'net/minecraft/world/entity/LivingEntitygetMainHandItem&()Lnet/minecraft/world/item/ItemStack; 789 :÷"net/minecraft/world/item/ItemStackis <=> ?@#net/minecraft/world/InteractionHand MAIN_HAND%Lnet/minecraft/world/InteractionHand; <B C@OFF_HAND 7E FGgetItem!()Lnet/minecraft/world/item/Item;I"net/minecraft/world/item/ArrowItem KLM NOnet/minecraft/world/item/ItemsARROWLnet/minecraft/world/item/Item; 1 HR ST createArrowÏ(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/projectile/arrow/AbstractArrow; VWX Y9net/minecraft/world/entity/projectile/arrow/AbstractArrowsetBaseDamageFromMob DEFAULT_ENTITY_HIT_RESULT_MARGIN ConstantValueCodeLineNumberTableLocalVariableTablethis6Lnet/minecraft/world/entity/projectile/ProjectileUtil;getHitResultOnMoveVectorg(Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;)Lnet/minecraft/world/phys/HitResult;source#Lnet/minecraft/world/entity/Entity;matchingLjava/util/function/Predicate;movementLnet/minecraft/world/phys/Vec3;!Lnet/minecraft/world/level/Level;fromLocalVariableTypeTableCLjava/util/function/Predicate;MethodParameters SignatureŒ(Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;)Lnet/minecraft/world/phys/HitResult;Ã(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/component/AttackRange;Ljava/util/function/Predicate;Lnet/minecraft/world/level/ClipContext$Block;)Lcom/mojang/datafixers/util/Either;attacker attackRange0Lnet/minecraft/world/item/component/AttackRange; blockClipTypelook eyePositionmovementComponenttoU(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/component/AttackRange;Ljava/util/function/Predicate;Lnet/minecraft/world/level/ClipContext$Block;)Lcom/mojang/datafixers/util/Either;>;”(Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Lnet/minecraft/world/level/ClipContext$Block;)Lnet/minecraft/world/phys/HitResult;clipType¹(Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Lnet/minecraft/world/level/ClipContext$Block;)Lnet/minecraft/world/phys/HitResult;getHitResultOnViewVectorh(Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/HitResult;distance viewVector�(Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/HitResult;delta entityMargin hitResult$Lnet/minecraft/world/phys/HitResult; entityHit StackMapTable(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;FLnet/minecraft/world/level/ClipContext$Block;)Lnet/minecraft/world/phys/HitResult;origin)Lnet/minecraft/world/phys/BlockHitResult; searchAreaLnet/minecraft/world/phys/AABB;Ljava/util/Collection;BLjava/util/Collection;ƒ(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Ljava/util/function/Predicate;Lnet/minecraft/world/phys/Vec3;FLnet/minecraft/world/level/ClipContext$Block;)Lcom/mojang/datafixers/util/Either;>;Ë(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/EntityHitResult;locationddbb clipPointLjava/util/Optional;entityexceptboxmaxValuenearesthovered hoveredPos5Ljava/util/Optional;Ÿjava/util/function/Predicateð(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/EntityHitResult;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;ú(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Lnet/minecraft/world/phys/EntityHitResult;2Lnet/minecraft/world/entity/projectile/Projectile;targetSearchArea(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Lnet/minecraft/world/phys/EntityHitResult;nearestLocation hitEntity(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;F)Lnet/minecraft/world/phys/EntityHitResult;Ù(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;ZZ)Ljava/util/Collection;includeFromEntityZprojectSurfaceHitLocation*(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;ZZ)Ljava/util/Collection;entityBBexactHit outsideHitoutsideHitPosition towardsTarget surfaceHit collectorLjava/util/List;;X(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;FLnet/minecraft/world/level/ClipContext$Block;ZZ)Ljava/util/Collection;rotateTowardsMovement'(Lnet/minecraft/world/entity/Entity;F)V projectile rotationSpeedsdgetWeaponHoldingHando(Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/InteractionHand;mob)Lnet/minecraft/world/entity/LivingEntity; weaponItem getMobArrow¯(Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;FLnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/projectile/arrow/AbstractArrow;$Lnet/minecraft/world/item/ItemStack;powerfiredFromWeapon arrowItem$Lnet/minecraft/world/item/ArrowItem;arrow;Lnet/minecraft/world/entity/projectile/arrow/AbstractArrow;Ínet/minecraft/world/item/Item SourceFileProjectileUtil.java InnerClassesBlockFluidType1Z"[Þ\/*·±]^ _` ab\‘!*¶M*¶ N*¶:*+,-*¸²¸ °]#$ &'^4!cd!efgh ijhk !elm ceno Op\ó S*¶$:*¶':+*¶*�¶/¶5:*¶9¶<9+*¶@�¸Cc¶/¶5: *, +¶I-¸M°],- ./)0B1^\ SqdSrsSefStMuh Gvh5jh)*wBxh k Selmqretny az\›!*¶N*¶ :*¶:*+-*¸,¸ °]67 9:^>!cd!ef!{gh ijhk !elm ce{n| }~\¡'* ¶Q(¶/:*¶ :*¶':*+ ²¸ °]> ?AB^>'cd'ef' €hijhk 'elm cen� "#\ V*-¶5:»UY*²W+·]¶`:¶f²l¥ ¶r:+*+¶u-¶y¶,¸ƒ:  Æ :°]"FGI)J0LJNOOSR^f VjhVcdVefV‚hViVƒ"V{Oxh8„…J †… k Vel‡ý00gü"gmjce‚ƒ{nˆ OP\v Š*¶ :»UY+²W*·]¶`:¶‡²l¥¶Š:+¶‹+,¶‹˜œ ¸Ž°,���¸”,¶˜¶y¶: *, -¸›:  ¹Ÿš  ¸¥°¸Ž°]. VXZ([/\>^Dc`dtf~g„j^p ŠcdЉhŠjhŠefŠxhŠƒ"Š{„im„Š`*‹Œ t†� kŠelt†Ž ‡ýDaˆý?z mc‰jexƒ{n� …�\‡å*¶ :9: : *-¶¨¹¬:  ¹²™« ¹·À:  ¶u ¶»�¶:+,¶¾:+¶Â™'—›s ¶Æ™k : +¶ÉÀ0: 9§V¶Ï™N¶ÒÀ0:+¶‹9˜› —š- ¶Õ*¶Õ¦—š : : § : : 9§ÿQ ǰ»ÙY  ·Û°]nno p qs6tFuOvXwgxkyvz|}„~Ž–€¥�±‚¸ƒ¼„ÇLjˉώÒ�בٓ^˜ŽA‘h–9’F‰“ŒO€”•6™–d å—dåjhåxh嘌åefå™ßi Ûš Ø›d Õœh kO€”�åel‡bÿ 00zža0³þ[zÊý(0ÿ 00zža0³úm—jx˜e™n ¡¢ …£\~*+,-+¸¸ƒ°]—^>ic¤jhxh¥Œefk elmcjx¥en¦¡¢ \> Þ*´ßd†ãn¸ä¸è®]›^ cdmc …†\Ð�ì9¸î: : *+¶¨¹¬:  ¹²™R ¹·À:  ¶u�¶:  ,-¶¾:¶Ï™%,¶ÒÀ0¶‹9˜œ : 9: §ÿª ǰ»ÙY  ¶ÒÀ0·Û°]BŸ  ¡ £3¤@¥I¦Q§_¨g©kªo«s®v°{±}³^Ž_’@3“Œ I*‘•3@–d �i�cd�jh�xh�¥Œ�ef�ƒ"Šš …§• ‚¨d k I*‘��el …§� ‡-ÿ a00zžÊ³ûUúmcjx¥eƒn©¡¢ �ª\™ *+,-+¸²¸›°]·^Ricdjhxh¥Œef«¬­¬k elm!cjx¥e«­n® �ž\Œ$»òY·ô: *+¶¨¹¬:  ¹²™ ¹·À:  ¶u: ™! ,¶Â™ »ÙY ,·Û¹õW§ÿà ,-¶¾:¶Ï™ »ÙY ¶ÒÀ0·Û¹õW§ÿ–�˜�§ÿ‹ �¶,-¶¾:¶ø™§ÿq¶ÒÀ0: ¶ù:*»UY²W+·]¶`:¶‡²l¥ ¶Š: ¶u¶¾:¶Ï™& »ÙY  ™¶ÒÀ0§·Û¹õW§þû °]f» ½/¾6ÁDÂVÃYÅbÆjǃȆʎˑ͠ΨϫѵҼÓÓÕÞÖåØóÙûÚÜ!Þ^À6诌 b¼°• ~±•µi²h¼b³hÓK„Šó+´•/ï–d $i$cd$jh$xh$¥Œ$ef$ƒ"${$«¬$­¬ µ¶ k4b¼°� ~±�ó+´�$el µ· ‡ê ý­³ý?zü,Ê üÊþ900ˆÿ-a00zž­³zÊÊ00ˆÊ­ýýÿa00zž­³zÊÊ00ˆÊ­ýý0ÿ a00zž­³úm) cjx¥eƒ{«­n¸ ¹º\|Þ*¶M,¶ü—š±,¶J*,´,´¸ k�b¶*),´¸ k�f¶*¶*´f#–œ*Y´$fµ§ÿä*¶*´f%•›*Y´$bµ§ÿä*¶&*´)f#–œ*Y´)$fµ)§ÿä*¶&*´)f%•›*Y´)$bµ)§ÿä*#*´*¶¸,¶*#*´)*¶&¸,¶±]Fãåæéê,ëAíQî`ðpñô�õž÷®ø½ûÍüÝý^*Þ»dÞ¼"Ùghʽ‡ü0ü1m »¼ ¾¿\V*¶0+¶6™ ²;§²A°]^ÀÁÂO‡B<m À ÃÄ\¥0+¶DÁH™ +¶D§²JÀH:*¶P+*-¶Q:$¶U°]'-^>0ÀÁ0»Å0Æ"0ÇÅÈÉ' ÊˇBÌmÀ»ÆÇ¡ ¢ÎÏÐUÑ@XUÒ@mgÓ@