Êþº¾E�  java/lang/Object()V   4net/minecraft/util/worldupdate/RegionStorageUpgrader dataFixer!Lcom/mojang/datafixers/DataFixer;   dataFixType)Lnet/minecraft/util/datafix/DataFixTypes;  typeLjava/lang/String;   folderName  recreateRegionFilesZ  defaultVersionI ! "#upgradeProgress0Lnet/minecraft/util/worldupdate/UpgradeProgress; % & startIndex ( )*dataFixContextTagLnet/minecraft/nbt/CompoundTag; , -. tagModifiers*Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;09net/minecraft/world/level/chunk/storage/RegionStorageInfo 234 56Gnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess getLevelId()Ljava/lang/String; /8 9L(Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)V 2; <=getDimensionPath;(Lnet/minecraft/resources/ResourceKey;)Ljava/nio/file/Path; ?@A BCjava/nio/file/Pathresolve((Ljava/lang/String;)Ljava/nio/file/Path; E FG dimensionKey%Lnet/minecraft/resources/ResourceKey; I JK createStorageŽ(Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage; M NOstorage=Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage; Q RSgetFilesToProcessa(Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Ljava/util/List; U VWfilesLjava/util/List;Yjava/lang/IllegalStateException[.RegionStorageUpgrader has not been initialized X] ^(Ljava/lang/String;)V `ab cdjava/util/ListisEmpty()Z fgh ij.net/minecraft/util/worldupdate/UpgradeProgressgetTotalFileFixStats?()Lnet/minecraft/util/worldupdate/UpgradeProgress$FileFixStats; lmn op;net/minecraft/util/worldupdate/UpgradeProgress$FileFixStatstotalOperations()I rst uv5net/minecraft/util/worldupdate/UpgradeProgress$Status UPGRADING7Lnet/minecraft/util/worldupdate/UpgradeProgress$Status; fx yz setStatus:(Lnet/minecraft/util/worldupdate/UpgradeProgress$Status;)V `| }~ listIterator()Ljava/util/ListIterator; f€ �d isCanceled ƒ„… †djava/util/ListIteratorhasNext ƒˆ ‰Šnext()Ljava/lang/Object;Œ,net/minecraft/util/worldupdate/FileToUpgrade ‹Ž ��chunksToUpgrade()Ljava/util/List; `’ “”iterator()Ljava/util/Iterator; –„—java/util/Iterator –ˆš"net/minecraft/world/level/ChunkPos œ �žprocessOnePositiond(Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Lnet/minecraft/world/level/ChunkPos;)Z ‹  ¡¢file6()Lnet/minecraft/world/level/chunk/storage/RegionFile; ¤ ¥¦onFileFinished7(Lnet/minecraft/world/level/chunk/storage/RegionFile;)V ¨ ©ªLOGGERLorg/slf4j/Logger;¬ Failed to convert region file {} ®¯° ±²2net/minecraft/world/level/chunk/storage/RegionFilegetPath()Ljava/nio/file/Path; ´µ¶ ·¸org/slf4j/Loggererror'(Ljava/lang/String;Ljava/lang/Object;)V ƒº »p nextIndex f½ ¾¿setDimensionProgress)(Lnet/minecraft/resources/ResourceKey;F)V fÁ ÂÃsetTotalProgress(F)V rÅ ÆvFINISHED ÈÉÊ Ë;net/minecraft/world/level/chunk/storage/SimpleRegionStoragecloseÍjava/lang/ExceptionÏError upgrading chunk ´Ñ ·Ò*(Ljava/lang/String;Ljava/lang/Throwable;)VÔEnet/minecraft/world/level/chunk/storage/RecreatingSimpleRegionStorageÖsource /Ø ÙÚwithTypeSuffixO(Ljava/lang/String;)Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ütarget Þ ßàresolveRecreateDirectory*(Ljava/nio/file/Path;)Ljava/nio/file/Path; Óâ ãì(Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/util/datafix/DataFixTypes;)V Èå æ�(Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/util/datafix/DataFixTypes;)V è éSgetAllChunkPositions `ë ìpsize fî ïðaddTotalFileFixOperations(I)V `ò óôstream()Ljava/util/stream/Stream;ö ÷ø applyAsInt$()Ljava/util/function/ToIntFunction; úûü ýþjava/util/stream/StreammapToInt@(Ljava/util/function/ToIntFunction;)Ljava/util/stream/IntStream;  pjava/util/stream/IntStreamsum f ðaddTotalChunks ?   toFile()Ljava/io/File;  accept()Ljava/io/FilenameFilter;   java/io/File listFiles)(Ljava/io/FilenameFilter;)[Ljava/io/File; ` �of  com/google/common/collect/Lists newArrayList()Ljava/util/ArrayList;   !REGEXLjava/util/regex/Pattern; # $6getName &'( )*java/util/regex/Patternmatcher3(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; ,-. /djava/util/regex/Matchermatches ,1 23group(I)Ljava/lang/String; 567 89java/lang/IntegerparseInt(Ljava/lang/String;)I ; <²toPath ®> ?g(Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Ljava/nio/file/Path;Z)V ™A B(II)V ®D EFdoesChunkExist'(Lnet/minecraft/world/level/ChunkPos;)Z `H IJadd(Ljava/lang/Object;)Z ‹L MG(Lnet/minecraft/world/level/chunk/storage/RegionFile;Ljava/util/List;)V ®ÉPjava/lang/Throwable OR ST addSuppressed(Ljava/lang/Throwable;)VV)Failed to read chunks from region file {} ´X ·Y9(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V [ \žtryProcessOnePosition^net/minecraft/ReportedException`(java/util/concurrent/CompletionException bcd efjava/lang/RuntimeExceptiongetCause()Ljava/lang/Throwable;hjava/io/IOExceptionjError upgrading chunk {} fl mincrementConverted fo pincrementSkipped Èr streadN(Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; vwx yŠ&java/util/concurrent/CompletableFuturejoin{java/util/Optional z} ~orElse&(Ljava/lang/Object;)Ljava/lang/Object;�net/minecraft/nbt/CompoundTag ƒ„… †‡net/minecraft/nbt/NbtUtilsgetDataVersion"(Lnet/minecraft/nbt/CompoundTag;)I ‰Š‹ Œ�net/minecraft/SharedConstantsgetCurrentVersion()Lnet/minecraft/WorldVersion; ��‘ ’“net/minecraft/WorldVersion dataVersion1()Lnet/minecraft/world/level/storage/DataVersion; •–— ˜p-net/minecraft/world/level/storage/DataVersionversion š›œ �ž(it/unimi/dsi/fastutil/ints/Int2ObjectMapint2ObjectEntrySet+()Lit/unimi/dsi/fastutil/objects/ObjectSet;  ¡¢ “£'it/unimi/dsi/fastutil/objects/ObjectSet0()Lit/unimi/dsi/fastutil/objects/ObjectIterator;¥.it/unimi/dsi/fastutil/ints/Int2ObjectMap$Entry ¤§ ¨p getIntKey ª «¬ upgradeTag~(Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Lnet/minecraft/nbt/CompoundTag;I)Lnet/minecraft/nbt/CompoundTag; ¤® ¯ŠgetValue±@net/minecraft/util/worldupdate/RegionStorageUpgrader$TagModifier °³ ´µmodifyTagAfterFixF(Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Z · ¸¹previousWriteFuture(Ljava/util/concurrent/CompletableFuture; È» ¼½writem(Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/concurrent/CompletableFuture; È¿ ÀÁupgradeChunkTaga(Lnet/minecraft/nbt/CompoundTag;ILnet/minecraft/nbt/CompoundTag;I)Lnet/minecraft/nbt/CompoundTag; ?à IJ getParent ?Æ Dz getFileName ?É Ê6toString Ì Ídexists ÏÐÑ ÒÓjava/nio/file/Filesdelete(Ljava/nio/file/Path;)VÕjava/nio/file/CopyOption Ï× ØÙmoveY(Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)Ljava/nio/file/Path;ÛAFailed to replace an old region file. New file {} does not exist.Ý$Failed to replace an old region fileß àámakeConcatWithConstants&(Ljava/lang/String;)Ljava/lang/String; ?ã äCresolveSiblingæ9net/minecraft/world/level/chunk/storage/RegionFileStorageè.mca êëì íîjava/lang/StringendsWith(Ljava/lang/String;)Z ðñò óôcom/mojang/logging/LogUtils getLogger()Lorg/slf4j/Logger;ö ^r\.(-?[0-9]+)\.(-?[0-9]+)\.mca$ &ø ùúcompile-(Ljava/lang/String;)Ljava/util/regex/Pattern;NEW_DIRECTORY_PREFIX ConstantValueþnew_ Signature:Ljava/util/concurrent/CompletableFuture;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;HLnet/minecraft/resources/ResourceKey;@Ljava/util/List;nLit/unimi/dsi/fastutil/ints/Int2ObjectMap;í(Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;Ljava/lang/String;IZLnet/minecraft/util/worldupdate/UpgradeProgress;ILnet/minecraft/nbt/CompoundTag;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;)VCodeLineNumberTableLocalVariableTablethis6Lnet/minecraft/util/worldupdate/RegionStorageUpgrader;LocalVariableTypeTableMethodParameters1(Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;Ljava/lang/String;IZLnet/minecraft/util/worldupdate/UpgradeProgress;ILnet/minecraft/nbt/CompoundTag;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;)Vinitq(Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)V levelStorageILnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;info;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; regionFolderLjava/nio/file/Path;”(Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)VupgradechunkPos$Lnet/minecraft/world/level/ChunkPos; fileToUpgrade.Lnet/minecraft/util/worldupdate/FileToUpgrade; convertedworked totalProgressFcurrentDimensionProgresscurrentTotalProgresseLjava/lang/Exception; totalSizeLjava/util/ListIterator;HLjava/util/ListIterator; StackMapTablefilesToUpgrade‘(Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Ljava/util/List; fileAmountposzx regionSource4Lnet/minecraft/world/level/chunk/storage/RegionFile;tLjava/lang/Throwable;regexLjava/util/regex/Matcher;xOffsetzOffsetchunkPositions regionFileLjava/io/File;[Ljava/io/File;regionFileChunks6Ljava/util/List;:causeLjava/lang/RuntimeException; neededVersiontagFixer0Lit/unimi/dsi/fastutil/ints/Int2ObjectMap$Entry; latestVersionchanged upgradedTagchunkTagtLit/unimi/dsi/fastutil/ints/Int2ObjectMap$Entry; targetVersionLjava/io/IOException;filePath directoryPath newFilePathlambda$getAllChunkPositions$0#(Ljava/io/File;Ljava/lang/String;)Zdirnamelambda$getFilesToProcess$01(Lnet/minecraft/util/worldupdate/FileToUpgrade;)I SourceFileRegionStorageUpgrader.java NestMembersX*·*+µ*,µ *-µ*µ*µ*µ*µ *µ$* µ'* µ+±2 CD EFGHI%J+K1L7M=N p >  > >>>>>>"#>&>)* >-.  >-  ) "&)-ÿ µ=»/Y,¶1+*´·7N,+¶:*´¹>:*+µD**-¶HµL**-¶PµT±QR!S&T1U<V 4=  =FG=,! =F Fÿ¾ ?*´DÆ*´LÆ *´TÇ »XYZ·\¿*´T¹_™±*´ ¶e¶k†D*´ ²q¶w*´T¹{M*´ ¶šË> 8,¹‚™{,¹‡À‹:6¶�¹‘:¹•™-¹˜À™:™**´L¶›™§6>§ÿÏ*´™&™*¶Ÿ¶£§²§«¶Ÿ¶­¹³,¹¹6†#n8*´$`†#n8*´ *´D¶¼b8*´ ¶Àš§§ÿ1*´ ²Ä¶w*´L¶Ç§N²§Î-¹Ð±(/2Ì’$YZ\+],_8aBcLdVeXg[hdiojrk”l­m¯n²o¹p¾qÊsÜxäyëz÷{| }€‚„(‡/Š2ˆ3‰>‹ z ”omrjXÃ[À ä7»ë0! ÷$" 3 #$?  8% Ló“& Ló“'(; ýƒÿ1ƒ‹–ü+™@ùùù>SÌ JK� >*´™'»ÓY+Õ¶×,+Û¶×,¸Ý*´*´ ·á§»ÈY+,*´*´ ·ä°Ž��‘+–=Ž >  >>(+QÈ RS—1+,¸çN*´ -¹ê¶í*´ -¹ñºõ¹ù¹ÿ¶-°š›œ/� *1  11+)W +) ÿ*+pN*´TǬ*´T¹ê¬¡¢ ¤   ( éS+¹º ¶M,Ǹ°¸N,:¾66¢ð2:²¶"¶%:¶+š§Ë¶0¸4x6 ¶0¸4x6 ¸: »®Y*¶:+·=: 6   ¢@6 ¢0»™Y  ` `·@: ¶C™  ¹GW„§ÿÏ„ §ÿ¿ ¹_š-»‹Y  ·K¹GW ¶N§:  ¶N§ : ¶Q ¿§: ²§U¶: ¹W„§ÿ-°|ßçOéîñOkýOr©«¬¯°4±A²I³L¶Y·f¹kº|»†¼�½£¾­¿·¼½»ÃÃÍÄ߯çºýÈÆÇ°Ê Ž£,‰4-D. |�/0 12 AÓ34Y»5 f®6 k©7W 4à89 V:;W k©7< ;(¯ü=ÿ/?=`=ý%,ÿ2/?=`=,`®ü -úúGOÿ /?=`=,`®OOùBOÿ/?=`=ø ÿ*�ž H>*+,¶Z>§(:¶a:Ág™²§i,¹W§¿™ *´ ¶k§ *´ ¶n¬ ] _2 ÎÐ Ø ÑÒÓÔ.Ö1Ù5Ú?ÜFÞ >>2##?H  HNOH,F($ÿ È™bý!bOù  N,\ž  Ã+,¶q¶uÀz¶|À€N-Æ­-¸‚6¸ˆ¹Ž¶”66*´+¹™¹Ÿ:¹•™:¹˜À¤:¹¦6 *+- ¶©N¹­À°,-¹²€6§ÿÂ*+-¶©:¢§€6š *´™*´¶Æ *´¶¶uW*+,¶ºµ¶¬¬Jâãäå*ç-èSé\êeë{ì~íˆî™ð¥ñ¬ò´ô¿õÁø f \@ S(AB¤˜*—C-”Dˆ9E*à  ÃNOÃ,°F* S(AG(hÿ=È™€–ú@ÿÈ™€€ÿÈ™€€ÿ È™€ N,«¬W+,*´*´'¶¾°ü *  NOF*H NFH¥¦0x*´š±*´¶Æ *´¶¶uW+¶­M,¹ÂN-¸Ý,¹Å¹È¹>:¹¶Ë™,¸Î,½Ô¸ÖW§²§Ú¹³§:²§Ü¹Ð±9ehg>#9 F J Xehjw >j #Ix  x80\J#UK9?L(þ@??? Bg 8 ßàA**¹Å¹ÈºÞ¹â° K K MN<+ç¶é¬© O9P QR4 *¶�¹ê¬œ  S,¸ï³§õ¸÷³± &(TUV°WYfZ\_f`a`mds:2tvlfw rfx@¤šy °z W{ |~€