Êþº¾EZ  java/lang/Object()V   2net/minecraft/client/renderer/texture/SpriteLoaderlocation$Lnet/minecraft/resources/Identifier;  maxSupportedTextureSizeI  2net/minecraft/client/renderer/texture/TextureAtlas&()Lnet/minecraft/resources/Identifier;  ()I  ((Lnet/minecraft/resources/Identifier;I)V  !%net/minecraft/util/profiling/Profilerget/()Lnet/minecraft/util/profiling/ProfilerFiller;# $S(Lnet/minecraft/client/renderer/texture/SpriteLoader;)Ljava/util/function/Supplier; &'( )*+net/minecraft/util/profiling/ProfilerFillerzoneB(Ljava/util/function/Supplier;)Lnet/minecraft/util/profiling/Zone;,java/lang/Integerÿÿÿ /01 23java/util/Listiterator()Ljava/util/Iterator; 567 89java/util/IteratorhasNext()Z 5; <=next()Ljava/lang/Object;?4net/minecraft/client/renderer/texture/SpriteContents >A Bwidth >D Eheight GHI JKjava/lang/Mathmin(II)I +M NO lowestOneBit(I)I Q RSLOGGERLorg/slf4j/Logger;U9Texture {} with size {}x{} limits mip level from {} to {} >W Xname +Z [\valueOf(I)Ljava/lang/Integer; ^_` aOnet/minecraft/util/Mthlog2 cde fgorg/slf4j/Loggerwarn((Ljava/lang/String;[Ljava/lang/Object;)ViH{}: dropping miplevel from {} to {}, because of minimum power of two: {} klm nonet/minecraft/client/Minecraft getInstance"()Lnet/minecraft/client/Minecraft; kq rsoptionsLnet/minecraft/client/Options; uvw xynet/minecraft/client/OptionstextureFiltering'()Lnet/minecraft/client/OptionInstance; {|} =#net/minecraft/client/OptionInstance €� ‚ƒ+net/minecraft/client/TextureFilteringMethod ANISOTROPIC-Lnet/minecraft/client/TextureFilteringMethod; u… †ymaxAnisotropyBit +ˆ ‰intValue‹.net/minecraft/client/renderer/texture/Stitcher Š� Ž(IIII)V Š� ‘’registerSprite9(Lnet/minecraft/client/renderer/texture/Stitcher$Entry;)V Š” •stitch—7net/minecraft/client/renderer/texture/StitcherException™ Stitching ›œ� žŸnet/minecraft/CrashReport forThrowableD(Ljava/lang/Throwable;Ljava/lang/String;)Lnet/minecraft/CrashReport;¡Stitcher ›£ ¤¥ addCategory7(Ljava/lang/String;)Lnet/minecraft/CrashReportCategory;§Sprites –© ª« getAllSprites()Ljava/util/Collection; ­®¯ °±java/util/Collectionstream()Ljava/util/stream/Stream;³ ´µapply()Ljava/util/function/Function; ·¸¹ º»java/util/stream/Streammap8(Ljava/util/function/Function;)Ljava/util/stream/Stream;½, ¿ÀÁ ÂÃjava/util/stream/Collectorsjoining6(Ljava/lang/CharSequence;)Ljava/util/stream/Collector; ·Å ÆÇcollect0(Ljava/util/stream/Collector;)Ljava/lang/Object; ÉÊË ÌÍ!net/minecraft/CrashReportCategory setDetailI(Ljava/lang/String;Ljava/lang/Object;)Lnet/minecraft/CrashReportCategory;ÏMax Texture SizeÑnet/minecraft/ReportedException ÐÓ Ô(Lnet/minecraft/CrashReport;)V ŠÖ ×getWidth ŠÙ Ú getHeight Ü ÝÞgetStitchedSpritesC(Lnet/minecraft/client/renderer/texture/Stitcher;II)Ljava/util/Map; àáâ ã?net/minecraft/client/renderer/texture/MissingTextureAtlasSprite getLocation åæç è java/util/Map&(Ljava/lang/Object;)Ljava/lang/Object;ê8net/minecraft/client/renderer/texture/TextureAtlasSpriteì íîrun&(Ljava/util/Map;I)Ljava/lang/Runnable; ðñò óô&java/util/concurrent/CompletableFuturerunAsync](Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;ö?net/minecraft/client/renderer/texture/SpriteLoader$Preparations õø ùw(IIILnet/minecraft/client/renderer/texture/TextureAtlasSprite;Ljava/util/Map;Ljava/util/concurrent/CompletableFuture;)V ûüý þ!net/minecraft/util/profiling/Zoneclosejava/lang/Throwable ÿ  addSuppressed(Ljava/lang/Throwable;)V /® ´€(Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/concurrent/Executor;)Ljava/util/function/Function; ·   toList()Ljava/util/List;  net/minecraft/util/Utilsequence:(Ljava/util/List;)Ljava/util/concurrent/CompletableFuture;³ ð  thenApplyG(Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture;  @net/minecraft/client/renderer/texture/atlas/SpriteResourceLoadercreateS(Ljava/util/Set;)Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;  y(Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/Identifier;)Ljava/util/function/Supplier; ð" #$ supplyAsyncf(Ljava/util/function/Supplier;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; ð' ( thenCompose* ´+s(Lnet/minecraft/client/renderer/texture/SpriteLoader;ILjava/util/concurrent/Executor;)Ljava/util/function/Function;-java/util/HashMap ,0 12load„(Lnet/minecraft/client/renderer/texture/SpriteLoader;Ljava/util/Map;II)Lnet/minecraft/client/renderer/texture/Stitcher$SpriteLoader; Š4 56 gatherSprites@(Lnet/minecraft/client/renderer/texture/Stitcher$SpriteLoader;)V é8 9b(Lnet/minecraft/resources/Identifier;Lnet/minecraft/client/renderer/texture/SpriteContents;IIIII)V å; <=put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; ? •@s(Ljava/util/List;ILjava/util/concurrent/Executor;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; B CDrunSpriteSuppliers›(Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/List;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; FGH 1In opincreaseMipLevel(I)V rst uvjava/util/LocaleROOTLjava/util/Locale;x %s[%dx%d] zW{4net/minecraft/client/renderer/texture/Stitcher$Entry zA zD €� ‚ƒjava/lang/StringformatK(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; … [†&(Ljava/lang/Object;)Ljava/lang/String; ˆ ‰ŠmakeConcatWithConstants&(Ljava/lang/String;)Ljava/lang/String; Œ�Ž ��com/mojang/logging/LogUtils getLogger()Lorg/slf4j/Logger;CodeLineNumberTableLocalVariableTablethis4Lnet/minecraft/client/renderer/texture/SpriteLoader;MethodParametersj(Lnet/minecraft/client/renderer/texture/TextureAtlas;)Lnet/minecraft/client/renderer/texture/SpriteLoader;atlas4Lnet/minecraft/client/renderer/texture/TextureAtlas;lowestTextureBit spriteInfo6Lnet/minecraft/client/renderer/texture/SpriteContents;mipLevelreportLnet/minecraft/CrashReport;category#Lnet/minecraft/CrashReportCategory;e9Lnet/minecraft/client/renderer/texture/StitcherException;maxTextureSize minTexelSizeminSize minPowerOfTwo anisotropyBitstitcher0Lnet/minecraft/client/renderer/texture/Stitcher;resultLjava/util/Map; missingSprite:Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;readyForUpload(Ljava/util/concurrent/CompletableFuture;ignored#Lnet/minecraft/util/profiling/Zone;spritesLjava/util/List;maxMipmapLevelsexecutorLjava/util/concurrent/Executor;LocalVariableTypeTablehLnet/minecraft/client/renderer/texture/Stitcher;oLjava/util/Map;:Ljava/util/concurrent/CompletableFuture;HLjava/util/List; StackMapTable¿java/util/concurrent/Executor Signature«(Ljava/util/List;ILjava/util/concurrent/Executor;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;resourceLoaderBLnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader; spriteFuturesSLjava/util/List;rLjava/util/List;>;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;((Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/List;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;>; loadAndStitch³(Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/Identifier;ILjava/util/concurrent/Executor;Ljava/util/Set;)Ljava/util/concurrent/CompletableFuture;manager6Lnet/minecraft/server/packs/resources/ResourceManager;atlasInfoLocation taskExecutoradditionalMetadataLjava/util/Set;spriteResourceLoaderMLjava/util/Set;>;4(Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/Identifier;ILjava/util/concurrent/Executor;Ljava/util/Set;>;)Ljava/util/concurrent/CompletableFuture; atlasWidth atlasHeightÛ(Lnet/minecraft/client/renderer/texture/Stitcher;II)Ljava/util/Map;lambda$getStitchedSprites$0M(Ljava/util/Map;IILnet/minecraft/client/renderer/texture/SpriteContents;III)Vxypaddinglambda$loadAndStitch$2s(ILjava/util/concurrent/Executor;Ljava/util/List;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; resourceslambda$loadAndStitch$1™(Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage;lambda$loadAndStitch$0l(Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/Identifier;)Ljava/util/List;lambda$runSpriteSuppliers$2"(Ljava/util/List;)Ljava/util/List;llambda$runSpriteSuppliers$0Ì(Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/concurrent/Executor;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$Loader;)Ljava/util/concurrent/CompletableFuture;supplierALnet/minecraft/client/renderer/texture/atlas/SpriteSource$Loader;lambda$runSpriteSuppliers$1»(Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$Loader;Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents;lambda$stitch$2(Ljava/util/Map;I)Vlambda$stitch$3>(ILnet/minecraft/client/renderer/texture/TextureAtlasSprite;)Vslambda$stitch$1J(Lnet/minecraft/client/renderer/texture/Stitcher$Entry;)Ljava/lang/String;6Lnet/minecraft/client/renderer/texture/Stitcher$Entry;lambda$stitch$0()Ljava/lang/String; SourceFileSpriteLoader.java NestMembersBootstrapMethods=þ ÿ õööè  òóó  íî  çèk(Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$Loader;)Ljava/util/concurrent/CompletableFuture;  äåå  âã   àá8(Ljava/util/List;)Ljava/util/concurrent/CompletionStage;  ÝÞ S(Ljava/util/List;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;"<(Lnet/minecraft/client/renderer/texture/Stitcher$Entry;III)V$ % ØÙ'<(Lnet/minecraft/client/renderer/texture/SpriteContents;III)V)(Ljava/lang/Object;)Z+ ,-. /)java/util/ObjectsnonNull19(Lnet/minecraft/client/renderer/texture/SpriteContents;)Z3 4 ëìl7(Ljava/lang/Object;)V9 : ïð<=(Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V>stitch @ ABC DE"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;G HIJ ‰K$java/lang/invoke/StringConcatFactory˜(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; InnerClassesEntry PreparationsP;net/minecraft/client/renderer/texture/Stitcher$SpriteLoader SpriteLoaderS8net/minecraft/client/renderer/texture/atlas/SpriteSourceLoaderV%java/lang/invoke/MethodHandles$LookupXjava/lang/invoke/MethodHandlesLookup!RS ‘Y*·*+µ*µ ±’'( )*“ ”• –   —‘:»Y*¶*¶·°’-“ ˜™–˜•@‘é3¸*º"¹%:*´ 6-6x6+¹.:¹4™ˆ¹:À>:  ¶@ ¶C¸F¸F6 ¶@¸L ¶C¸L¸F6  ¢I²PT½Y ¶VSY ¶@¸YSY ¶C¸YSY¸]¸YSY ¸]¸YS¹b 6§ÿt¸F6¸]6  ¢6²Ph½Y*´SY¸YSY ¸YSY¸YS¹b 6 §6 ¸j´p:  ¶t¶z²~¥§ ¶„¶zÀ+¶‡6 »ŠY  ·Œ: +¹.:¹4™¹:À>: ¶�§ÿã ¶“§T:˜¸š: ¶¢:¦¶¨¹¬º²¹¶¼¸¾¹Ä¶ÈWθY¶ÈW»ÐY·Ò¿ ¶Õ6 ¶Ø6* ¶Û:¸ß¹äÀé: ºë-¸ï:»õY ·÷:ƶú°:ƶú§ :¶¿ejm– ÿ$'ÿ’¢(12457=8Q9f:m;¯<³>¶A¿BÆEÌFøGÿIL M,N=O[PbQeTj\mUoVxW�X§Y´Z¾^Å_Ì`Øaçcöe fe1“fMš =v›œ ü� [›œxFžŸ�= ¡oO¢£¤þ¥ùN¿Y¦ÆR§ �  rs ,ì¨ =Û©ª ÅSBÌLEØ@«¬ç1­®ö"¯°#±²3”•3³´3µ3¶·¸*=Û©¹ Ø@«ºö"¯»3³¼½¨ÿ' /¾û5û‹úýHüüuMþŠ5úG–ûPÿV/¾ûuŠåéðõÿ/¾ûÿÿ/¾ûÿÿ– ³µ¶ÀÁ CD‘§%+¹*,º¹¶¹ N-¸ º¶°’ jk“*%ÂÃ%³´%¶· Ä´¸%³Å ÄÆÇ@ È– ³¶ÀÉÊË‘´,¸:+,º¸!º%¶&*º)¶°’opq(r+p“H,”•,ÌÍ,Î ,µ,Ï·,ÐÑ%Òø ,ÐÓ–ÌεÏÐÀÔÝÞ‘�»,Y·.:+*º/¶3°’v x|“4”•©ªÕÖ «¬¸©¹ «º– ©ÕÖÀ×ØÙ‘’ "+¶V»éY*´·7¹:W±’y“R"”•"«¬"Õ"Ö"kœ"Ú"Û"ÜÝÞ‘P*-,¶>°’r“*”•µÏ·ß´ àá‘E*,+¸A°’q“ ÒÃÏ·³´ âã‘> *+¸E*¶J°’p“ ÌÍ Î  äå‘@*¹ºN¹R¹ °’k“ æ´ çè‘J ,*ºV+¸!°’j“  Âà ¶· éê ëì‘<*+¹Y°’j“éêÂà íî‘F*¹^ºa¹e±’c“«¬� ïð‘= +¶i¶m±’c“ � ñ® òó‘Y/²qw½Y*¹ySY*¹|¸YSY*¹}¸YS¸~°’X“ /ñôõö‘7 *´¸„º‡°’1“  ”•÷‘¸‹³P±’"øùúõû€ ?üý???  ??ü???!#&?(*0?ü25?68;F=L*zŠM õNOŠQ ZRT UWY