Êþº¾Ec  0net/minecraft/server/level/GenerationChunkHolder'(Lnet/minecraft/world/level/ChunkPos;)V   &net/minecraft/server/level/ChunkHolderUNLOADED_LEVEL_CHUNK_FUTURE(Ljava/util/concurrent/CompletableFuture;   fullChunkFuture   tickingChunkFuture   entityTickingChunkFuturejava/util/BitSet  ()V  blockChangedLightSectionFilterLjava/util/BitSet;  !skyChangedLightSectionFilter #$% &'&java/util/concurrent/CompletableFuturecompletedFuture<(Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; ) * pendingFullStateConfirmation , - sendSync / 0 saveSync 2 34levelHeightAccessor/Lnet/minecraft/world/level/LevelHeightAccessor; 6 78 lightEngine5Lnet/minecraft/world/level/lighting/LevelLightEngine; : ;< onLevelChange ?@playerProvider7Lnet/minecraft/server/level/ChunkHolder$PlayerProvider; BCD EF%net/minecraft/server/level/ChunkLevel MAX_LEVELI H IFoldTicketLevel K LF ticketLevel N OF queueLevel Q RSsetTicketLevel(I)V UVW XY-net/minecraft/world/level/LevelHeightAccessorgetSectionsCount()I[%it/unimi/dsi/fastutil/shorts/ShortSet ] ^_changedBlocksPerSection([Lit/unimi/dsi/fastutil/shorts/ShortSet; a bcgetTickingChunkFuture*()Ljava/util/concurrent/CompletableFuture; e fgUNLOADED_LEVEL_CHUNK(Lnet/minecraft/server/level/ChunkResult; #i jkgetNow&(Ljava/lang/Object;)Ljava/lang/Object;m&net/minecraft/server/level/ChunkResult lo pkorElser*net/minecraft/world/level/chunk/LevelChunk #t uvisDone()Z x yzgetTickingChunk.()Lnet/minecraft/world/level/chunk/LevelChunk;| }~apply!()Ljava/util/function/BiFunction; #€ �‚ thenCombineo(Ljava/util/concurrent/CompletionStage;Ljava/util/function/BiFunction;)Ljava/util/concurrent/CompletableFuture;| … †‡hasChangedSectionsZ ‰Š‹ ŒYnet/minecraft/core/BlockPosgetY UŽ ��getSectionIndex(I)I’-it/unimi/dsi/fastutil/shorts/ShortOpenHashSet ‘ •–— ˜™net/minecraft/core/SectionPossectionRelativePos (Lnet/minecraft/core/BlockPos;)S Z› œ�add(S)Z Ÿ ¡ ¢£2net/minecraft/world/level/chunk/status/ChunkStatusINITIALIZE_LIGHT4Lnet/minecraft/world/level/chunk/status/ChunkStatus; ¥ ¦§getChunkIfPresentc(Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/ChunkAccess; ©ª« ¬+net/minecraft/world/level/chunk/ChunkAccess markUnsaved ®¯° ±Y3net/minecraft/world/level/lighting/LevelLightEnginegetMinLightSection ®³ ´YgetMaxLightSection ¶·¸ ¹º$net/minecraft/world/level/LightLayerSKY&Lnet/minecraft/world/level/LightLayer; ¼ ½¾get(I)Z À ÁSset à ÄvisEmpty Æ ÇvhasChangesToBroadcast qÉ ÊËgetLevel#()Lnet/minecraft/world/level/Level; Í ÎÏpos$Lnet/minecraft/world/level/ChunkPos; ÑÒÓ ÔÕ5net/minecraft/server/level/ChunkHolder$PlayerProvider getPlayers7(Lnet/minecraft/world/level/ChunkPos;Z)Ljava/util/List; ×ÃØjava/util/ListÚ@net/minecraft/network/protocol/game/ClientboundLightUpdatePacket qÜ ÝÞgetPos&()Lnet/minecraft/world/level/ChunkPos; Ùà á€(Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/lighting/LevelLightEngine;Ljava/util/BitSet;Ljava/util/BitSet;)V ã äå broadcast:(Ljava/util/List;Lnet/minecraft/network/protocol/Packet;)V ç èclear Uê ë�getSectionYFromSectionIndex •í îïofF(Lnet/minecraft/world/level/ChunkPos;I)Lnet/minecraft/core/SectionPos; Zñ òYsize Zô õöiterator.()Lit/unimi/dsi/fastutil/shorts/ShortIterator; øùú ûü*it/unimi/dsi/fastutil/shorts/ShortIterator nextShort()S •þ ÿrelativeToBlockPos (S)Lnet/minecraft/core/BlockPos;  net/minecraft/world/level/Level getBlockStateQ(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState;@net/minecraft/network/protocol/game/ClientboundBlockUpdatePacket   R(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V  broadcastBlockEntityIfNeededƒ(Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V q  getSection6(I)Lnet/minecraft/world/level/chunk/LevelChunkSection;Hnet/minecraft/network/protocol/game/ClientboundSectionBlocksUpdatePacket  |(Lnet/minecraft/core/SectionPos;Lit/unimi/dsi/fastutil/shorts/ShortSet;Lnet/minecraft/world/level/chunk/LevelChunkSection;)V acceptz(Lnet/minecraft/server/level/ChunkHolder;Ljava/util/List;Lnet/minecraft/world/level/Level;)Ljava/util/function/BiConsumer;    runUpdates"(Ljava/util/function/BiConsumer;)V "#$ %v0net/minecraft/world/level/block/state/BlockStatehasBlockEntity ' ()broadcastBlockEntityQ(Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V + ,-getBlockEntityS(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; /01 232net/minecraft/world/level/block/entity/BlockEntitygetUpdatePacket)()Lnet/minecraft/network/protocol/Packet;5 6F(Lnet/minecraft/network/protocol/Packet;)Ljava/util/function/Consumer; ×8 9:forEach (Ljava/util/function/Consumer;)V #< =>cancel(Z)Z #A BCrun�(Lnet/minecraft/server/level/ChunkHolder;Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/FullChunkStatus;)Ljava/lang/Runnable; #E FG thenRunAsync](Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;I JG(Ljava/util/concurrent/CompletableFuture;)Ljava/util/function/Consumer; #L MN thenAcceptG(Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; PQR ST#net/minecraft/server/level/ChunkMaponFullChunkStatusChangeS(Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V BV WX fullStatus/(I)Lnet/minecraft/server/level/FullChunkStatus; Z[\ ]^*net/minecraft/server/level/FullChunkStatusFULL,Lnet/minecraft/server/level/FullChunkStatus; Z` ab isOrAfter/(Lnet/minecraft/server/level/FullChunkStatus;)Z d e‡wasAccessibleSinceLastSave Pg hiprepareAccessibleChunkR(Lnet/minecraft/server/level/ChunkHolder;)Ljava/util/concurrent/CompletableFuture; k lmscheduleFullChunkPromotion›(Lnet/minecraft/server/level/ChunkMap;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/Executor;Lnet/minecraft/server/level/FullChunkStatus;)V o pqaddSaveDependency+(Ljava/util/concurrent/CompletableFuture;)V #s tucomplete(Ljava/lang/Object;)Z Zw x^ BLOCK_TICKING Pz {iprepareTickingChunk Z} ~^ENTITY_TICKING€java/lang/IllegalStateException  ƒ„… †‡net/minecraft/util/Util pauseInIde,(Ljava/lang/Throwable;)Ljava/lang/Throwable; P‰ ŠiprepareEntityTickingChunk Œ �ŽdemoteFullChunkT(Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/FullChunkStatus;)V� ‘’getAsIntJ(Lnet/minecraft/server/level/ChunkHolder;)Ljava/util/function/IntSupplier;” •J(Lnet/minecraft/server/level/ChunkHolder;)Ljava/util/function/IntConsumer; —˜™ ;š:net/minecraft/server/level/ChunkHolder$LevelChangeListenerh(Lnet/minecraft/world/level/ChunkPos;Ljava/util/function/IntSupplier;ILjava/util/function/IntConsumer;)VI l� žŸ ifSuccessG(Ljava/util/function/Consumer;)Lnet/minecraft/server/level/ChunkResult; ¡¢£ ¤¥'net/minecraft/server/level/ServerPlayer connection;Lnet/minecraft/server/network/ServerGamePacketListenerImpl; §¨© ª«9net/minecraft/server/network/ServerGamePacketListenerImplsend*(Lnet/minecraft/network/protocol/Packet;)V­Unloaded level chunk l¯ °±error<(Ljava/lang/String;)Lnet/minecraft/server/level/ChunkResult; SignatureVLnet/minecraft/server/level/ChunkResult;€Ljava/util/concurrent/CompletableFuture;>;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;+Ljava/util/concurrent/CompletableFuture<*>;ÿ(Lnet/minecraft/world/level/ChunkPos;ILnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/lighting/LevelLightEngine;Lnet/minecraft/server/level/ChunkHolder$LevelChangeListener;Lnet/minecraft/server/level/ChunkHolder$PlayerProvider;)VCodeLineNumberTableLocalVariableTablethis(Lnet/minecraft/server/level/ChunkHolder;MethodParameters‚()Ljava/util/concurrent/CompletableFuture;>;getEntityTickingChunkFuturegetFullChunkFuturegetChunkToSend StackMapTablegetSendSyncFuture-()Ljava/util/concurrent/CompletableFuture<*>;addSendDependencysyncLocalVariableTypeTable.(Ljava/util/concurrent/CompletableFuture<*>;)VgetSaveSyncFutureisReadyForSaving blockChanged (Lnet/minecraft/core/BlockPos;)ZLnet/minecraft/core/BlockPos;chunk,Lnet/minecraft/world/level/chunk/LevelChunk;hadChangedSections sectionIndexchangedBlocksInSection'Lit/unimi/dsi/fastutil/shorts/ShortSet;sectionLightChanged*(Lnet/minecraft/world/level/LightLayer;I)ZlayerchunkY-Lnet/minecraft/world/level/chunk/ChunkAccess; tickingChunkminLightSectionmaxLightSectionfilterindexbroadcastChanges/(Lnet/minecraft/world/level/chunk/LevelChunk;)V lightPacketBLnet/minecraft/network/protocol/game/ClientboundLightUpdatePacket; borderPlayersLjava/util/List;state2Lnet/minecraft/world/level/block/state/BlockState;section3Lnet/minecraft/world/level/chunk/LevelChunkSection;packetJLnet/minecraft/network/protocol/game/ClientboundSectionBlocksUpdatePacket; changedBlockssectionY sectionPosLnet/minecraft/core/SectionPos;level!Lnet/minecraft/world/level/Level;players;Ljava/util/List;®(Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V'Lnet/minecraft/network/protocol/Packet;blockPos blockEntity4Lnet/minecraft/world/level/block/entity/BlockEntity;*Lnet/minecraft/network/protocol/Packet<*>;|(Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Vh(Ljava/util/List;Lnet/minecraft/network/protocol/Packet<*>;)VgetTicketLevel getQueueLevel setQueueLevel scheduler%Lnet/minecraft/server/level/ChunkMap;taskmainThreadExecutorLjava/util/concurrent/Executor;status confirmation:Ljava/util/concurrent/CompletableFuture;ó(Lnet/minecraft/server/level/ChunkMap;Ljava/util/concurrent/CompletableFuture;>;Ljava/util/concurrent/Executor;Lnet/minecraft/server/level/FullChunkStatus;)V updateFuturesG(Lnet/minecraft/server/level/ChunkMap;Ljava/util/concurrent/Executor;)V oldFullStatus newFullStatus wasAccessible isAccessible wasTicking isTickingwasEntityTickingisEntityTickingjava/util/concurrent/ExecutorrefreshAccessibility#lambda$scheduleFullChunkPromotion$1S(Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/server/level/ChunkResult;)Vr#lambda$scheduleFullChunkPromotion$2W(Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/world/level/chunk/LevelChunk;)Vl#lambda$scheduleFullChunkPromotion$0lambda$broadcast$0S(Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/server/level/ServerPlayer;)Vplayer)Lnet/minecraft/server/level/ServerPlayer;lambda$broadcastChanges$0lambda$addSaveDependency$08(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;aLjava/lang/Object;blambda$addSendDependency$0 SourceFileChunkHolder.java NestMembersBootstrapMethods!- . %!0 1  !3'(Ljava/lang/Object;Ljava/lang/Object;)V5 6  9(Ljava/lang/Object;)V; < >,(Lnet/minecraft/server/level/ServerPlayer;)VA B ŽD E G+(Lnet/minecraft/server/level/ChunkResult;)VYJ K üYSN O ýSQ R àU VWX YZ"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; InnerClassesLevelChangeListenerPlayerProvider_%java/lang/invoke/MethodHandles$Lookupajava/lang/invoke/MethodHandlesLookup!fg²³ ²´34B ²´B ²´B ²´IFLFOF†‡^_µ ¶!78;<?@e‡* ²·- ²·0 ²·#¸¹9‹*+·*²µ *²µ*²µ*»Y·µ*»Y·µ*¸"µ(*¸"µ+*¸"µ.*-µ1*µ5*µ9*µ=*²A`µG**´GµJ**´GµM*¶P*-¹T½Zµ\±ºN=& '(1%20889@:H>M?S@YA_BhCpDxE}FŠG»H‹¼½‹ÎÏ‹LF‹34‹78‹;<‹?@¾ÎL37;?bc¹/*´°ºK» ¼½²¿Àc¹/*´°ºP» ¼½²¿Ác¹/*´ °ºU» ¼½²¿yz¹A*¶`²d¶hÀl¹nÀq°ºZ» ¼½µ¶Âz¹L*´+¶sš°*¶w°º^ _ a» ¼½Ã µ¶Äc¹/*´+°ºe» ¼½²ÅÆq¹€$*´+¶s™ *+µ+§**´++º{¶µ+±ºi jl#n»$¼½$Ç È $ǷþDzÉÊc¹/*´.°ºq» ¼½²ÅËv¹2*´.¶s¬ºu» ¼½pq¹€$*´.¶s™ *+µ.§**´.+ºƒ¶µ.±ºz {}#»$¼½$Ç È $ǷþDzÉÌ͹ûZ*¶wM,Ǭ*´„>*´1+¶ˆ¹�6*´\2:Ç*µ„»‘Y·“:*´\S+¸”¹šWš§¬º2 „… † ‰Š‹(Œ-�2Ž;�D‘P’»>Z¼½ZÎÎUÏÐJч;ÒF(2ÓÔÃü qþ8Z@¾ÎÕÖ¹N n*²ž¶¤N-Ǭ-¶¨*¶w:Ǭ*´5¶­6*´5¶²6¡ ¤¬+²µ¦ *´§*´:d6¶»š ¶¿¬¬ºF–— ˜›�žŸ¢(£1¤=¥?¨S©Yªc«j¬l®»\ n¼½n׺nØFfÏÙVÚÐ(FÛF1=ÜFSÝYÞFà ü©üqý Cý¾ רÇv¹W!*´„š*´¶Â™ *´¶Âš§¬º²» !¼½Ã@ßà¹Æ B*¶Åš±+¶ÈM*´¶Â™ *´¶ÂšI*´=*´Ì¹ÐN-¹Öš#»ÙY+¶Û*´5*´*´·ß:*-¶â*´¶æ*´¶æ*´„š±*´=*´Ì¹ÐN6*´\¾¢´*´\2:ǧ�*´\S-¹Ö™§‰*´1¹é6+¶Û¸ì:¹ð ;¹ó¹÷¶ý:,¶: *-»Y · ¶â*-, ¶ §.+¶:»Y·: *- ¶â *-,º¶„§ÿH*µ„±ºŽ#¶·º ¼!½0¾9¿RÀYÂ`ÃgÆnÇoÊ~ˋ͙̔ΜФҭӰսÖÈØÓÙæÚîÜþÝÞ ßà"â)ã6Ë<æA绎Ráâ07ãäæ"ÎÎîåæ #çè"éê ”¢ëÔ½yìFÈníî�»ÒFB¼½BÏÐ 5ïð~ÄñäÈ07ãò~ÄñòÃ. üü7×ú ý×üZýZ•ø*ú¾Ï¹…¶!™ *+,-¶&±ºêëí»4¼½ñäïðÎÎåæÈ ñòþñïÎå²ó()¹º ,-¶*:ƶ.:Æ *+¶â±ºðñ òóô÷»> éô ¼½ ñä ïð õÎö÷È éø ñòÃü/¾ ñïõ²ùäå¹k +,º4¹7±º ú û»  ¼½ ñä éôÈ ñò éø¾ ñé²úûY¹/*´J¬ºÿ» ¼½üY¹/*´M¬º» ¼½ýS¹>*µM±º  »¼½OF¾ORS¹>*µJ±º   »¼½LF¾Llm¹Á5*´(¶;W»#Y·?:*+º@-¶DW*µ(,ºH¶KW±º "(4»>5¼½5þÿ5 55^# È5´#¾þ²�޹Y*´(¶;W+*´Ì,¶O±º » ¼½þÿ^¾ þ¹¼ o*´G¸UN*´J¸U:-²Y¶_6²Y¶_6*Y´c€µcš&™!*+*¶fµ *+*´ ,²Y¶j**´ ¶n™š*´ ²d¶rW*²µ -²v¶_6²v¶_6š&™!*+*¶yµ*+*´,²v¶j**´¶n™š*´²d¶rW*²µ-²|¶_6 ²|¶_6  š> ™9*´²¥»Y·�¸‚À¿*+*¶ˆµ*+*´,²|¶j**´¶n ™ š*´²d¶rW*²µ-¶_š *+¶‹*´9*´Ì*º�*´J*º“¹–**´JµG±º–%!"$#/%9&B'O(W*a+l,s/|0†2�3™4¦5®7¸8Ã9Ê<Ó=Ý?ç@ñAÿCDEG'H2I9LBMIPfQnR»p o¼½oþÿog ^^ ^U ‡$K ‡|ó ‡†é‡Óœ‡ Ý’‡ Ã)ÿWPZZý:ý4¾ þev¹/*´c¬ºU» ¼½¹@**´J¸U²Y¶_µc±º YZ» ¼½ ¹B+*º›¹œW±º» g ¹;*¶rW±º» ÐŽ¹H +*´Ì,¶O±º»  ¼½ þÿ ^ ¹= +´ *¶¦±ºú» éô ¹\ *+,-¶ ±ºã»4 ¼½ ñä ïð ÎÎ åæ  !¹6°º}»"#$# %!¹6°ºl»"#$#&¹/¬¸®³d²d¸"³±º ! "'()Ñ—*\ T+,+T+/+T247T8:=T?@?T8CFTHIHTLMLT8PS[—\ Ñ] ^`b