Êþº¾E`4net/minecraft/world/level/storage/LevelStorageSource  java/util/ObjectsrequireNonNull&(Ljava/lang/Object;)Ljava/lang/Object;  Gnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccessthis$06Lnet/minecraft/world/level/storage/LevelStorageSource;  java/lang/Object()V  com/google/common/collect/Maps newHashMap()Ljava/util/HashMap;   resourcesLjava/util/Map; !"levelIdLjava/lang/String;$Cnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory #& '(Ljava/nio/file/Path;)V ) *+levelDirectoryELnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory; - . createLock #0 12pathLjava/nio/file/Path; 456 78 net/minecraft/util/DirectoryLockcreate8(Ljava/nio/file/Path;)Lnet/minecraft/util/DirectoryLock; : ;<lock"Lnet/minecraft/util/DirectoryLock; > ?close ABC D)org/apache/commons/io/function/IORunnablerun FGH IJjava/nio/file/Files getFileStore/(Ljava/nio/file/Path;)Ljava/nio/file/FileStore; LMN OPjava/nio/file/FileStoregetUsableSpace()JRjava/lang/ExceptionTjava/lang/Longÿÿÿÿÿÿÿ X YPestimateDiskSpace]java/io/IOException _ `aLOGGERLorg/slf4j/Logger;c#Failed to unlock access to level {} e fg getLevelId()Ljava/lang/String; ijk lmorg/slf4j/Loggerwarn9(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Vo pqapplyd(Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;)Ljava/util/function/Function; stu vw java/util/MapcomputeIfAbsentC(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;yjava/nio/file/Path #{ 1|()Ljava/nio/file/Path; ~€ �‚1net/minecraft/world/level/dimension/DimensionTypegetStorageFolderO(Lnet/minecraft/resources/ResourceKey;Ljava/nio/file/Path;)Ljava/nio/file/Path; 4„ …†isValid()Zˆjava/lang/IllegalStateExceptionŠLock is no longer valid ‡Œ �(Ljava/lang/String;)V � � checkLock’3net/minecraft/world/level/storage/PlayerDataStorage ” •– fixerUpper!Lcom/mojang/datafixers/DataFixer; ‘˜ ™m(Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;)V › œ�getUnfixedDataTag%(Z)Lcom/mojang/serialization/Dynamic; Ÿ ¡ ¢£net/minecraft/nbt/NbtUtilsgetDataVersion%(Lcom/mojang/serialization/Dynamic;)I ¥¦§ ¨©'net/minecraft/util/datafix/DataFixTypesLEVEL)Lnet/minecraft/util/datafix/DataFixTypes; ¥« ¬­updateToCurrentVersionh(Lcom/mojang/datafixers/DataFixer;Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; ¯ °±makeLevelSummary›(Lcom/mojang/serialization/Dynamic;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;ZI)Lnet/minecraft/world/level/storage/LevelSummary; ³ ´µfixAndGetSummaryFromTagT(Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/level/storage/LevelSummary; ¥· ¸© LEVEL_SUMMARYºnet/minecraft/nbt/NbtException¼&net/minecraft/nbt/ReportedNbtException¾!Failed to load world data from {} #À Á|dataFileÃAttempting to use fallback {} #Å Æ| oldDataFile iÈ ÉÊinfo'(Ljava/lang/String;Ljava/lang/Object;)V Ì Í†restoreLevelDataFromOld Ï ÐÑ getDataFile(Z)Ljava/nio/file/Path; Ó ÔÕreadLevelDataTagRaw5(Ljava/nio/file/Path;)Lnet/minecraft/nbt/CompoundTag;× com/mojang/serialization/Dynamic ÙÚÛ ÜÝnet/minecraft/nbt/NbtOpsINSTANCELnet/minecraft/nbt/NbtOps;ßData áâã äånet/minecraft/nbt/CompoundTaggetCompoundOrEmpty3(Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; Öç è:(Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)V ê ëì saveDataTag@(Lnet/minecraft/world/level/storage/WorldData;Ljava/util/UUID;)V îïð ñò+net/minecraft/world/level/storage/WorldData createTag1(Ljava/util/UUID;)Lnet/minecraft/nbt/CompoundTag; á áõ ö÷putB(Ljava/lang/String;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; ù úû saveLevelData"(Lnet/minecraft/nbt/CompoundTag;)V Öý þÿconvertI(Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; Ö getValue()Ljava/lang/Object;net/minecraft/nbt/Taglevel .dat %java/nio/file/attribute/FileAttribute F createTempFilev(Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;  net/minecraft/nbt/NbtIowriteCompressed6(Lnet/minecraft/nbt/CompoundTag;Ljava/nio/file/Path;)V  net/minecraft/util/UtilsafeReplaceFile?(Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)VFailed to save level {} i  merror "#$ %&java/util/Optionalempty()Ljava/util/Optional; #( )|iconFile "+ ,-of((Ljava/lang/Object;)Ljava/util/Optional; #/ 0|lockFile2Deleting level {}4 Attempt {}... 678 9:java/lang/IntegervalueOf(I)Ljava/lang/Integer;<Inet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess$1 ;> ?`(Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/nio/file/Path;)V FA BC walkFileTreeE(Ljava/nio/file/Path;Ljava/nio/file/FileVisitor;)Ljava/nio/file/Path;EFailed to delete {}ô IJK LMjava/lang/Threadsleep(J)VOjava/lang/InterruptedExceptionQ RSaccept1(Ljava/lang/String;)Ljava/util/function/Consumer; U VWmodifyLevelDataWithoutDatafix (Ljava/util/function/Consumer;)VQ Z[\ R]java/util/function/Consumer(Ljava/lang/Object;)V _`a bc7net/minecraft/world/level/storage/FileNameDateFormatter FORMATTER$Ljava/time/format/DateTimeFormatter; efg hijava/time/ZonedDateTimenow()Ljava/time/ZonedDateTime; klm no"java/time/format/DateTimeFormatterformat9(Ljava/time/temporal/TemporalAccessor;)Ljava/lang/String;q rsmakeConcatWithConstants8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; u v| getBackupPath xyz {'net/minecraft/util/FileUtilcreateDirectoriesSafe}java/lang/RuntimeException | €(Ljava/lang/Throwable;)V‚.zip x„ …†findAvailableNameL(Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; xˆ ‰Šresolve((Ljava/lang/String;)Ljava/nio/file/Path;Œjava/util/zip/ZipOutputStreamŽjava/io/BufferedOutputStream�java/nio/file/OpenOption F’ “”newOutputStreamG(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/OutputStream; �– —(Ljava/io/OutputStream;)V ‹–šjava/lang/String œ�ž Ÿ java/nio/file/Pathsget;(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;¢Inet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess$2 ¡¤ ¥(Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/nio/file/Path;Ljava/util/zip/ZipOutputStream;)V ‹>¨java/lang/Throwable §ª «€ addSuppressed F­ ®¯size(Ljava/nio/file/Path;)J±java/nio/file/LinkOption F³ ´µexists2(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z 4> #¸ ¹ºcorruptedDataFile/(Ljava/time/ZonedDateTime;)Ljava/nio/file/Path; ¼ ½¾safeReplaceOrMoveFile@(Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;Z)Z À ÁÂgetFileModificationTime)(Ljava/nio/file/Path;)Ljava/time/Instant;Ä2net/minecraft/world/level/storage/PrimaryLevelDataÆ LevelName ™È Égtrim áË ÌÍ putString'(Ljava/lang/String;Ljava/lang/String;)VÏsingleplayer_uuid áÑ ÒÓremove+(Ljava/lang/String;)Lnet/minecraft/nbt/Tag;Õjava/lang/AutoCloseable SignatureVLjava/util/Map;_(Lnet/minecraft/world/level/storage/LevelStorageSource;Ljava/lang/String;Ljava/nio/file/Path;)VCodeLineNumberTableLocalVariableTablethisILnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; ExceptionsMethodParametersreleaseTemporarilyAndRun.(Lorg/apache/commons/io/function/IORunnable;)Vrunnable+Lorg/apache/commons/io/function/IORunnable; StackMapTableignoredLjava/lang/Exception;checkForLowDiskSpace safeCloseeLjava/io/IOException;parent8()Lnet/minecraft/world/level/storage/LevelStorageSource;getLevelDirectoryG()Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory; getLevelPathG(Lnet/minecraft/world/level/storage/LevelResource;)Ljava/nio/file/Path;resource1Lnet/minecraft/world/level/storage/LevelResource;getDimensionPath;(Lnet/minecraft/resources/ResourceKey;)Ljava/nio/file/Path;name%Lnet/minecraft/resources/ResourceKey;LocalVariableTypeTableHLnet/minecraft/resources/ResourceKey;^(Lnet/minecraft/resources/ResourceKey;)Ljava/nio/file/Path;createPlayerStorage7()Lnet/minecraft/world/level/storage/PlayerDataStorage; collectIssues(Z)V useFallbackZunfixedDataTag"Lcom/mojang/serialization/Dynamic; dataVersionI fixedDataTag%Lcom/mojang/serialization/Dynamic<*>;fixAndGetSummary2()Lnet/minecraft/world/level/storage/LevelSummary;dataTag dataTagFixedW(Lcom/mojang/serialization/Dynamic<*>;)Lnet/minecraft/world/level/storage/LevelSummary;getUnfixedDataTagWithFallback$()Lcom/mojang/serialization/Dynamic;'()Lcom/mojang/serialization/Dynamic<*>;rootLnet/minecraft/nbt/CompoundTag;((Z)Lcom/mojang/serialization/Dynamic<*>;0(Lnet/minecraft/world/level/storage/WorldData;)V levelData-Lnet/minecraft/world/level/storage/WorldData;singleplayerUUIDLjava/util/UUID;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;%(Lcom/mojang/serialization/Dynamic;)Vtag genericTagLnet/minecraft/nbt/Tag;((Lcom/mojang/serialization/Dynamic<*>;)V currentFileworldDir getIconFile,()Ljava/util/Optional; deleteLevelattemptlockPath renameLevelnewNamerenameAndDropPlayerupdaterLjava/util/function/Consumer;>Ljava/util/function/Consumer;A(Ljava/util/function/Consumer;)VmakeWorldBackuprootPathstreamLjava/util/zip/ZipOutputStream; zipFilePrefix zipFilePath hasWorldData(Z)Ljava/time/Instant;fallbacklambda$renameAndDropPlayer$04(Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)Vlambda$renameLevel$0 SourceFileLevelStorageSource.javaNestHostBootstrapMethods= #> ?ð resourcePathð]C D 65ûG H 45J_L MNO PQ"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;S TUV rW$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; InnerClassesLevelStorageAccessLevelDirectory\%java/lang/invoke/MethodHandles$Lookup^java/lang/invoke/MethodHandlesLookup! Ô;<*+!"Ö× #ØÙ‡+*+Y¸Wµ *·*¸µ*,µ*»#Y-·%µ(*¶,±Ú•“–—&˜*™Û*+ÜÝ+ +!"+12Þ\ß  €!1.Ù=**´(´/¸3µ9±Ú œ�Û ÜÝÞ\àáÙz*¶=+¹@*¶,§ M*¶,,¿± Ú ¢ ¤¥¤¥¦ÛÜÝâãäQ§Þ\ßâYPÙc*´(´/¸E¶K­LU­ QÚª«­ÛåæÜÝäNQç†ÙF*¶WZ”œ§¬Ú²Û ÜÝä@èÙq*¶=§L²^b*¶d+¹h±\Ú·º¸¹»ÛéêÜÝäG\ëìÙ/*´ °Ú¾Û ÜÝíîÙ/*´(°ÚÂÛ ÜÝfgÙ/*´°ÚÆÛ ÜÝïðÙP*´+*´(Y¸Wºn¹rÀx°ÚÊÛÜÝñòßñóôÙR +*´(¶z¸}°ÚÎÛ ÜÝ õö÷  õøßõÖù�ÙP*´9¶ƒš »‡Y‰·‹¿±ÚÒ ÓÕÛ ÜÝäúûÙB*¶Ž»‘Y**´ ´“·—°Ú ØÙÛ ÜÝüýÙ³1*¶Ž*¶šM,¸ž>²¤*´ ´“,¶ª:*´ *´(¶®W±ÚÝß àá â0ãÛ41ÜÝ1þÿ '" ÷ ' Þ\ßþÙ<*¶Ž**¶š¶²°Ú æçÛ ÜÝÞ\´µÙ˜(*¶Ž+¸ž=²¶*´ ´“+¶ªN*´ -*´(¶®°Úëì íîÛ*(ÜÝ(  ÷( ßÖ   Ùä:*¶šL§2M²^½*´(¶¿,¹h²^Â*´(¶Ä¹Ç*¶šL*¶ËW+° \ ¹ »Ú"ôú õ ö÷-ø3ù8ûÛ* .éæ:ÜÝ3÷3ä IQü.ÖÞ\Ö œ�Ùt *¶Ž*¶ÎM,¸ÒN»ÖY²Ø-Þ¶à·æ°Úÿ Û* ÜÝ þÿ Á2Þ\ßþÖÐÑÙW™ *´(¶Ä§ *´(¶¿°ÚÛÜÝþÿäFxßþëÙ?*+¶é±Ú   ÛÜÝßëìÙƒ!+,¹íN»áY·ó:Þ-¶ôW*¶ø±Ú Û4!ÜÝ!!ß  úÙŽ$+²Ø¶ü¶ÀM»áY·óN-Þ,¶ôW*-¶ø±Ú#Û*$ÜÝ$÷ $ßÖúûÙöH*´(¶zM,½ ¸ N+-¸*´(¶Ä:*´(¶¿:-¸§N²^,-¹±69QÚ* !"$%%.&6)9':(G*ÛHÁ2%Æ2.2: éæHÜÝH@2äÿ9 áxQ ß&ÙT*´9¶ƒš¸!°*´(¶'¸*°Ú- .0Û ÜÝäÖ !Ù>x*¶Ž*´(¶.L²^1*´¹Ç=£X²^3¸5¹Ç*´(¶z»;Y*+·=¸@W§2N¢$²^D*´(¶z-¹hF¸H§ :§-¿„§ÿ©±1EH\agjNÚF46 89":1=EYHZI[N\a^g`j_l`obq9wfÛ*I(éêZ"xÜÝ l#2ä(ýxj\ÿ! x\NúúÞ\$�ÙC *+ºP¶T±Ú i jÛ ÜÝ %"Þ\ß%&�ÙC *+ºX¶T±Ú m qÛ ÜÝ %"Þ\ß%VWÙ�!*¶Ž*´(¶¿¸ÒM+,Þ¶à¹Y*,¶ø±Útvwx yÛ !ÜÝ!'(÷ !')Þ\ß'Ö*+PÙ¥ž*¶Ž²^¸d¶j*´ºpL*´ ¶tM,¸w§ N»|Y-·~¿,,+�¸ƒ¹‡N»‹Y»�Y-½�¸‘·•·˜:*´½™¸›:*´(¶z»¡Y*·£¸@W¶¦§:¶¦§ :¶©¿-¸¬­#&\W{ƒ§…Š�§Ú:|}�#„&‚'ƒ0…?‡WˆdŠ{˜ƒ‡™šÛH' éêd,2WB-.žÜ݇/"2?_02äOÿ& ™x\ ÿR ™xx‹§ÿ  ™xx‹§§ùÞ\1†Ù^(*´(¶¿½°¸²š*´(¶Ä½°¸²™§¬ÚžÛ (ÜÝä"@?Ù6*´9¶¶±Ú £¤Û ÜÝÞ\͆ÙG*´(¶¿*´(¶Ä*´(¸d¶·¸»¬Ú§Û ÜÝÁ2Ù= *¶Î¸¿°Ú«Û ÜÝ 3ÿß3 45ÙP+Å*¶ǶÊ+ζÐW±Ún opÛ%" 65Ù@ +Å*¶ǶʱÚiÛ %" 789:&K;<@KABEKAFERIX* Y#Z;¡[]_