Êþº¾E7  java/lang/Object()V   net/minecraft/core/Direction getClockWise ()Lnet/minecraft/core/Direction;    getOpposite[I  getStepX()I  getStepZ  java/lang/Double isInfinite(D)Z !" #$)net/minecraft/world/level/CollisionGettergetBlockCollisionsX(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/lang/Iterable; &'( )*java/lang/Iterableiterator()Ljava/util/Iterator; ,-. /0java/util/IteratorhasNext()Z ,2 34next()Ljava/lang/Object;6*net/minecraft/world/phys/shapes/VoxelShape 58 90isEmpty ; <=getWorldBorder0()Lnet/minecraft/world/level/border/WorldBorder; ?@A BC,net/minecraft/world/level/border/WorldBorderisWithinBounds"(Lnet/minecraft/world/phys/AABB;)Z EFG HI'net/minecraft/world/entity/LivingEntitygetLocalBoundsForPoseB(Lnet/minecraft/world/entity/Pose;)Lnet/minecraft/world/phys/AABB; KLM NOnet/minecraft/world/phys/AABBmove@(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; QRS TU1net/minecraft/world/entity/vehicle/DismountHelper canDismountTov(Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/AABB;)Z WXY Z[%net/minecraft/world/level/BlockGetter getBlockStateQ(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; ]^_ `anet/minecraft/tags/BlockTags CLIMBABLELnet/minecraft/tags/TagKey; cde fg0net/minecraft/world/level/block/state/BlockStateis(Lnet/minecraft/tags/TagKey;)Z ci jkgetBlock)()Lnet/minecraft/world/level/block/Block;m-net/minecraft/world/level/block/TrapDoorBlock lo pqOPENBLnet/minecraft/world/level/block/state/properties/BooleanProperty; cs tugetValueS(Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/lang/Comparable;wjava/lang/Boolean vy z0 booleanValue |}~ €&net/minecraft/world/phys/shapes/Shapesempty.()Lnet/minecraft/world/phys/shapes/VoxelShape; c‚ ƒ„getCollisionShaper(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; †‡ˆ ‰Šnet/minecraft/core/BlockPosmutable/()Lnet/minecraft/core/BlockPos$MutableBlockPos; Œ�Ž ��java/util/function/Functionapply&(Ljava/lang/Object;)Ljava/lang/Object; †’ “getY •–— ˜™!net/minecraft/core/Direction$AxisY#Lnet/minecraft/core/Direction$Axis; 5› œ�min&(Lnet/minecraft/core/Direction$Axis;)D Ÿ  ¡UPLnet/minecraft/core/Direction; £¤¥ N¦+net/minecraft/core/BlockPos$MutableBlockPosM(Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos$MutableBlockPos;ð X «¬­ ®¯%net/minecraft/world/entity/EntityTypeisBlockDangerous5(Lnet/minecraft/world/level/block/state/BlockState;)Z Q± ²„nonClimbableShape´ µ¶getg(Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;)Ljava/util/function/Supplier; ¸ ¹ºgetBlockFloorHeightL(Lnet/minecraft/world/phys/shapes/VoxelShape;Ljava/util/function/Supplier;)D Q¼ ½isBlockFloorValid †¿ ÀÁbelow()Lnet/minecraft/core/BlockPos; ÃÄÅ ÆÇnet/minecraft/world/phys/Vec3upFromBottomCenterOf<(Lnet/minecraft/core/Vec3i;D)Lnet/minecraft/world/phys/Vec3; «É ÊË getDimensions/()Lnet/minecraft/world/entity/EntityDimensions; ÍÎÏ ÐO+net/minecraft/world/entity/EntityDimensionsmakeBoundingBox ÒÓÔ ÕÖ&net/minecraft/world/entity/EntityTypesPLAYER'Lnet/minecraft/world/entity/EntityType; ]Ø ÙaINVALID_SPAWN_INSIDE †Û ÜÁaboveCodeLineNumberTableLocalVariableTablethis3Lnet/minecraft/world/entity/vehicle/DismountHelper;offsetsForDirection#(Lnet/minecraft/core/Direction;)[[IforwardrightleftbackMethodParametersblockFloorHeightD StackMapTable collision,Lnet/minecraft/world/phys/shapes/VoxelShape;level+Lnet/minecraft/world/level/CollisionGetter; passenger)Lnet/minecraft/world/entity/LivingEntity;boxLnet/minecraft/world/phys/AABB;blockCollisionsLjava/lang/Iterable;LocalVariableTypeTableBLjava/lang/Iterable;—(Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Pose;)ZlocationLnet/minecraft/world/phys/Vec3; dismountPose!Lnet/minecraft/world/entity/Pose;'Lnet/minecraft/world/level/BlockGetter;posLnet/minecraft/core/BlockPos; blockState2Lnet/minecraft/world/level/block/state/BlockState;findCeilingFrom>(Lnet/minecraft/core/BlockPos;ILjava/util/function/Function;)DcollisionShapeblocksI shapeGetterLjava/util/function/Function;cursor-Lnet/minecraft/core/BlockPos$MutableBlockPos;yhLjava/util/function/Function; Signature‰(Lnet/minecraft/core/BlockPos;ILjava/util/function/Function;)DfindSafeDismountLocation‘(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/phys/Vec3;shapetypeblockPoscheckDangerousZ floorHeightpositionaabbworldCollisions*Lnet/minecraft/world/entity/EntityType<*>;”(Lnet/minecraft/world/entity/EntityType<*>;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/phys/Vec3;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;!lambda$findSafeDismountLocation$0v(Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; SourceFileDismountHelper.javaBootstrapMethods4% Q& €) *+, -."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; InnerClassesMutableBlockPosAxis3%java/lang/invoke/MethodHandles$Lookup5java/lang/invoke/MethodHandlesLookup!Q Ý/*·±Þß àá âãÝWß*¶L+¶ M*¶ N½Y¼ Y+¶OY+¶OSY¼ Y,¶OY,¶OSY¼ Y-¶+¶`OY-¶+¶`OSY¼ Y-¶,¶`OY-¶,¶`OSY¼ Y*¶+¶`OY*¶+¶`OSY¼ Y*¶,¶`OY*¶,¶`OSY¼ Y-¶OY-¶OSY¼ Y*¶OY*¶OS°Þ6  0 D!b"€#ž$½%Ò&Þß*ßä¡Úå¡ Õæ¡Ðç¡èä ½ÝH&¸š &˜œ§¬Þ+ß éêë@èé TUÝÛE*+,¹N-¹%:¹+™¹1À5:¶7š¬§ÿà*¹:,¶>š¬¬Þ"/ 0'1/21446A7C:ß4' ìíEîïEðñEòó <ôõö  <ô÷ëý&,úè îðò TøÝW*,,-¶D+¶J¸P¬Þ>ß*îïùúðñûüèîùðû ²„Ý�7*+¹VM,²\¶bš,¶hÁl™,²n¶rÀv¶x™¸{°,*+¶�°ÞBC,D0Fß 7îý7þÿ/ë ü,cè îþ ÝðF*¶…N6¢7,-¹‹À5:¶7š*¶‘`‡²”¶šc¯„-²ž¶¢W§ÿɧ¯Þ* JKLMN"O4Q7R?SBTß>%íFþÿFFA  > ö F ëý£ü+5ú è þ  Ýî Ù™*+,¹©¶ª™°++,¸°+,º³¹·9¸»š°™˜�*+,¶¾¹©¶ª™°,¸Â:*¶È¶Ì:+¹:¹%:  ¹+™ ¹1À5:  ¶7š°§ÿà*²Ñ¦(+,¹©²×¶bš+,¶Ú¹©²×¶b™°+¹:¶>š°°ÞRXY\(]0^2aNbPeXfcgnh�i•j—lšn¡pÄqÆuÔvÖyß\ � í ÙÖÙîïÙÿÙ(±êX�úcvónkõöÙnk÷ë- üÿ& « †ÃK&,ú)èî  Ý= *+¶¾¸°°Þ\ß îï ÿ !" (#$'/£†0 •1@246