Êþº¾E›  java/lang/Object()Vjava/util/ArrayList   1net/minecraft/world/entity/EntityFluidInteraction fluidTrackersLjava/util/List;6it/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap   currentAccumulators3Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;   java/util/Setiterator()Ljava/util/Iterator;  !"java/util/IteratorhasNext()Z $ %&next()Ljava/lang/Object;(net/minecraft/tags/TagKey*Dnet/minecraft/world/entity/EntityFluidInteraction$CurrentAccumulator ) -./ 011it/unimi/dsi/fastutil/objects/Reference2ObjectMapput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;3 45test ()Ljava/util/function/Predicate; 789 :;java/util/ListremoveIf!(Ljava/util/function/Predicate;)Z -= >?values2()Lit/unimi/dsi/fastutil/objects/ObjectCollection;A BCaccept()Ljava/util/function/Consumer; EFG HI.it/unimi/dsi/fastutil/objects/ObjectCollectionforEach (Ljava/util/function/Consumer;)V KLM NO!net/minecraft/world/entity/EntitygetFluidInteractionBox!()Lnet/minecraft/world/phys/AABB; QRS TUnet/minecraft/world/phys/AABBminXD WXY Z[net/minecraft/util/Mthfloor(D)I Q] ^UminY Q` aUminZ Qc dUmaxX Wf g[ceil Qi jUmaxY Ql mUmaxZ Ko pqlevel#()Lnet/minecraft/world/level/Level; s tuhasFluidAndLoaded*(Lnet/minecraft/world/level/Level;IIIIII)Z Kw xOgetBoundingBox Kz {| getBlockX()I K~ €getEyeY()D K‚ ƒ| getBlockZ…+net/minecraft/core/BlockPos$MutableBlockPos „ „ˆ ‰Šset2(III)Lnet/minecraft/core/BlockPos$MutableBlockPos; Œ�Ž ��%net/minecraft/world/level/BlockGetter getFluidStateN(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/FluidState; ’“” •"-net/minecraft/world/level/material/FluidStateisEmpty „— ˜|getY ’š ›œ getHeightG(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F ’ž Ÿ  typeHolder()Lnet/minecraft/core/Holder; ¢ £¤getOrCreateTrackerForX(Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/EntityFluidInteraction$Tracker; ¦ §¨getCurrentAccumulatorForc(Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/EntityFluidInteraction$CurrentAccumulator; ’ª «œgetHeightForCamera ­®¯ °±9net/minecraft/world/entity/EntityFluidInteraction$Tracker eyesInsideZ ­³ ´Uheight ¶·¸ ¹ºjava/lang/Mathmax(DD)D ’¼ ½¾getFlowe(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; )³?Ù™™™™™š ÃÄÅ ÆÇnet/minecraft/world/phys/Vec3scale"(D)Lnet/minecraft/world/phys/Vec3; )É ÊË accumulate"(Lnet/minecraft/world/phys/Vec3;)V ÍÎÏ ÐÑnet/minecraft/core/SectionPosblockToSectionCoord(I)I ÓÔÕ Ö×2net/minecraft/world/level/chunk/status/ChunkStatusFULL4Lnet/minecraft/world/level/chunk/status/ChunkStatus; ÙÚÛ ÜÝnet/minecraft/world/level/LevelgetChunkf(IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/ChunkAccess; ßàá âã+net/minecraft/world/level/chunk/ChunkAccess getSections6()[Lnet/minecraft/world/level/chunk/LevelChunkSection; ßå æÑgetSectionIndexFromSectionY èéê ë"1net/minecraft/world/level/chunk/LevelChunkSectionhasFluid 7 ­î ïð fluidTypeLnet/minecraft/core/Holder; òóô õönet/minecraft/core/Holderequals(Ljava/lang/Object;)Z ­ø ù(Lnet/minecraft/core/Holder;)V 7û üöadd þÿ 2it/unimi/dsi/fastutil/objects/Reference2ObjectMaps fastIterablec(Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)Lit/unimi/dsi/fastutil/objects/ObjectIterable;  ,it/unimi/dsi/fastutil/objects/ObjectIterable0()Lit/unimi/dsi/fastutil/objects/ObjectIterator; 7it/unimi/dsi/fastutil/objects/Reference2ObjectMap$Entry   &getKey ò is(Lnet/minecraft/tags/TagKey;)Z  &getValue - get&(Ljava/lang/Object;)Ljava/lang/Object; ) applyTo'(Lnet/minecraft/world/entity/Entity;D)V  getFluidHeight(Lnet/minecraft/tags/TagKey;)D SignatureMLjava/util/List;ÂLit/unimi/dsi/fastutil/objects/Reference2ObjectMap;Lnet/minecraft/world/entity/EntityFluidInteraction$CurrentAccumulator;>;(Ljava/util/Set;)VCodeLineNumberTableLocalVariableTablefluidLnet/minecraft/tags/TagKey;this3Lnet/minecraft/world/entity/EntityFluidInteraction;fluidsWithCurrentLjava/util/Set;LocalVariableTypeTableGLnet/minecraft/tags/TagKey;XLjava/util/Set;>; StackMapTableMethodParameters[(Ljava/util/Set;>;)Vupdate'(Lnet/minecraft/world/entity/Entity;Z)ZfluidTopForCameraflowLnet/minecraft/world/phys/Vec3; fluidState/Lnet/minecraft/world/level/material/FluidState; fluidBottomfluidTopzIyxentity#Lnet/minecraft/world/entity/Entity; ignoreCurrentboxLnet/minecraft/world/phys/AABB;x0y0z0x1y1z1entityY eyeBlockXeyeY eyeBlockZ lastFluidTypetracker;Lnet/minecraft/world/entity/EntityFluidInteraction$Tracker;currentFLnet/minecraft/world/entity/EntityFluidInteraction$CurrentAccumulator;'Lnet/minecraft/world/level/BlockGetter; mutablePos-Lnet/minecraft/core/BlockPos$MutableBlockPos;GLnet/minecraft/core/Holder; sectionIndexsectionYchunk-Lnet/minecraft/world/level/chunk/ChunkAccess;sections4[Lnet/minecraft/world/level/chunk/LevelChunkSection;chunkXchunkZ!Lnet/minecraft/world/level/Level; sectionX0 sectionY0 sectionZ0 sectionX1 sectionY1 sectionZ1]„(Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/EntityFluidInteraction$Tracker;entry9Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap$Entry;ÈLit/unimi/dsi/fastutil/objects/Reference2ObjectMap$Entry;Lnet/minecraft/world/entity/EntityFluidInteraction$CurrentAccumulator;>;�(Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/EntityFluidInteraction$CurrentAccumulator;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;applyCurrentToB(Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/entity/Entity;D)Vn(Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/entity/Entity;D)VJ(Lnet/minecraft/tags/TagKey;)D isInFluidJ(Lnet/minecraft/tags/TagKey;)Z isEyeInFluid SourceFileEntityFluidInteraction.java NestMembersBootstrapMethodsö| ­} ~"reset€>(Lnet/minecraft/world/entity/EntityFluidInteraction$Tracker;)Z‚(Ljava/lang/Object;)V„ )… ~‡I(Lnet/minecraft/world/entity/EntityFluidInteraction$CurrentAccumulator;)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; InnerClassesCurrentAccumulator’net/minecraft/core/BlockPosMutableBlockPosTrackerEntry—%java/lang/invoke/MethodHandles$Lookup™java/lang/invoke/MethodHandlesLookup!  ! " #$×J*·*»Y· µ *»Y·µ+¹M,¹™",¹#À'N*´-»)Y·+¹,W§ÿÛ±%#!$4%F&I'& 4'(J)*J+,-4'.J+/0ÿ! ú'1+ 234$½ ì*´ º2¹6W*´¹<º@¹D+¶JN-Ǭ-´P¸V6-´\¸V6-´_¸V6-´b¸ed6-´h¸ed6-´k¸ed6 +¶ndd` `¸rš¬+¶v´\9 +¶y6 +¶}9 +¶�6:::+¶n:»„Y·†:6£6£ 6 £û¶‡W¹‹:¶‘™§Ó¶–‡9¶™�c9-´\˜œ§¯¶�:¥:*¶¡:š *¶¥:  / ( —› ¶©�c9 ˜� µ¬ g´²¸µµ²Æ?¶»:´²´¿¸µµ¿´¿À˜œ´¿¶Â:¶È„§ÿ„§þó„§þâÆ§¬%Ú6*+"-'.+/-263?4H5S6^7i;‡<‰@’A˜BžC¤E§FªG­I³K¼MÇNÒOÝPéQôRüSÿVWX Y#\*]1^5_=`AaIe_fngvh|kŽm“nžp°q¼rÈtÏOÕNÛMáz&n5Už167ôÛ89È:U¹;U*¥ïðÖÿ<=Ë>=À!?=ì)*ì@AìB±'ÅCD6¶E=?­F=H¤G=S™H=^ŽI=iƒJ= ’ZKU ˜TL= žNMU ¤HN=§EOðªBPQ­?RS³9pT¼0UV-*¥ïW§EOW0£ü-Qÿ[  KQÿ6 KQò­)Œ„ü ü ü(’ý#ü%ò2üKÃÿ KQò­)Œ„úúú@1 @B tu$¢¸Ì6¸Ì6¸Ì6 ¸Ì6 ¸Ì6 ¸Ì6 6  6 £m6 £\*²Ò¶Ø:Ǭ¶Þ:6 £/¶ä6›¾¡§ 2¶ç€6 „§ÿЄ§ÿ£„§ÿ’ ¬%Z~ €�‚ ƒ'„*…5†@‡NˆS‰U‹\Œg�pŽ}�€‘�Œ“†™…Ÿ•&ÊpX=`3Y=NEZ[\7\]9`^=.q_=¢p`¢E=¢F=¢G=¢H=¢I=¢J=œa= –b=�c= ‰d= ‚e= '{f= *xë± 0; ÿ.Ùü üßý güú øúú1pEFGHIJ£¤$ÉE*´ ¹ìM,¹™,¹#À­N-´í+¹ñ™-°§ÿÞ»­Y+·÷M*´ ,¹úW,°%™š*›,�/ž8ŸC &*PQE)*Eïð8 PQ- EïW0 ü !ú1ï h§¨$½A*´¸ý¹M,¹™,,¹#ÀN+-¹ À'¹ ™ -¹À)°§ÿѰ%¥ ¦2§<©?ª&  ijA)*A'ð- ikA'W0 ü .ú1' lmnop$š*´+¹À):Æ ,)¶±%®¯°²&4)*'(@AÆU RS- '.0ü)1 '@Æ q$ÇFI*´ ¹ì:¹™0¹#À­:´²(—ž´í+¹ ™ ´²I§ÿÌ(¯%µ¶#·;¸AºD»&*#PQF)*F'(D´U- F'.0 ý 3ú1' rs$a*+¶—ž§¬%¿&)*'(- '.0@1' tu$ª8*´ ¹ìM,¹™&,¹#À­N-´¬™-´í+¹ ™¬§ÿ׬%ÃÄ1Å3Ç6È& PQ8)*8'(- 8'.0 ü (ú1' tvwx)­yˆz{ˆ�ƒ†�*) � „‘“ ­ ” -• –˜š