Êþº¾E¾  java/lang/Object()VKnet/minecraft/world/level/levelgen/structure/templatesystem/CappedProcessor Inet/minecraft/world/level/levelgen/structure/templatesystem/RuleProcessor Inet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRuleJnet/minecraft/world/level/levelgen/structure/templatesystem/BlockMatchTest  *(Lnet/minecraft/world/level/block/Block;)V  Jnet/minecraft/world/level/levelgen/structure/templatesystem/AlwaysTrueTestINSTANCELLnet/minecraft/world/level/levelgen/structure/templatesystem/AlwaysTrueTest;  Mnet/minecraft/world/level/levelgen/structure/templatesystem/PosAlwaysTrueTestOLnet/minecraft/world/level/levelgen/structure/templatesystem/PosAlwaysTrueTest;  !"%net/minecraft/world/level/block/BlockdefaultBlockState4()Lnet/minecraft/world/level/block/state/BlockState;$Wnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/AppendLoot #& '((Lnet/minecraft/resources/ResourceKey;)V ) *p(Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifier;)V ,-. /0java/util/Listof$(Ljava/lang/Object;)Ljava/util/List; 2 3(Ljava/util/List;)V 567 /8-net/minecraft/util/valueproviders/ConstantInt2(I)Lnet/minecraft/util/valueproviders/ConstantInt; : ;‚(Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor;Lnet/minecraft/util/valueproviders/IntProvider;)V =>? @AGnet/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces WARM_RUINS%[Lnet/minecraft/resources/Identifier; CDE FGnet/minecraft/util/Util getRandomH([Ljava/lang/Object;Lnet/minecraft/util/RandomSource;)Ljava/lang/Object;I"net/minecraft/resources/Identifier =K LABIG_WARM_RUINS NOP QRnet/minecraft/util/RandomSource nextFloat()F TUV WXJnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructurelargeProbabilityF?fff?LÌÍ =\ ]^addPiece[(Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;ZF)V T` aXclusterProbability =c deaddClusterRuinsY(Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)Vgnet/minecraft/core/BlockPos fi jkgetX()I fm nkgetZ fp q(III)V stu vw&net/minecraft/world/level/block/MirrorNONE(Lnet/minecraft/world/level/block/Mirror; fy z{ZEROLnet/minecraft/core/BlockPos; }~ €�Mnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate transform«(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; fƒ „…offset9(Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos; ‡ˆ‰ Š‹8net/minecraft/world/level/levelgen/structure/BoundingBox fromCornersp(Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; �Ž� �‘java/lang/Mathmin(II)I f“ ”kgetY =– —˜ allPositionsP(Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/List; š›œ �žnet/minecraft/util/MthnextInt&(Lnet/minecraft/util/RandomSource;II)I ,  ¡¢isEmpty()Z ,¤ ¥ksize N§ �¨(I)I ,ª «¬remove(I)Ljava/lang/Object; ®¯° F±(net/minecraft/world/level/block/RotationM(Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/Rotation; ‡³ ´µ intersects=(Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z ·¸¹ º»com/google/common/collect/Lists newArrayList()Ljava/util/ArrayList; f½ „¾"(III)Lnet/minecraft/core/BlockPos; ,À ÁÂadd(Ljava/lang/Object;)Z ÄÅÆ ÇÈInet/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces$1Z$SwitchMap$net$minecraft$world$level$levelgen$structure$structures$OceanRuinStructure$Type[I TÊ ËÌ biomeTempQLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; ÎÏÐ ÑkOnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Typeordinal =Ó ÔÕgetBigWarmRuinG(Lnet/minecraft/util/RandomSource;)Lnet/minecraft/resources/Identifier; =× ØÕgetSmallWarmRuinÚVnet/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces$OceanRuinPiece ÙÜ Ý(Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/Identifier;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;FLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;Z)V ßàá ]âJnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder@(Lnet/minecraft/world/level/levelgen/structure/StructurePiece;)V =ä åABIG_RUINS_BRICK =ç èA RUINS_BRICK =ê ëABIG_RUINS_CRACKED =í îA RUINS_CRACKED =ð ñABIG_RUINS_MOSSY =ó ôA RUINS_MOSSY?333? øùú ûü&net/minecraft/world/level/block/BlocksSAND'Lnet/minecraft/world/level/block/Block; øþ ÿüSUSPICIOUS_SAND  8net/minecraft/world/level/storage/loot/BuiltInLootTablesOCEAN_RUIN_WARM_ARCHAEOLOGY%Lnet/minecraft/resources/ResourceKey; =  archyRuleProcessorÅ(Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; =   WARM_SUSPICIOUS_BLOCK_PROCESSORPLnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; ø üGRAVEL ø üSUSPICIOUS_GRAVEL  OCEAN_RUIN_COLD_ARCHAEOLOGY =  COLD_SUSPICIOUS_BLOCK_PROCESSORunderwater_ruin/warm_1 H withDefaultNamespace8(Ljava/lang/String;)Lnet/minecraft/resources/Identifier;!underwater_ruin/warm_2#underwater_ruin/warm_3%underwater_ruin/warm_4'underwater_ruin/warm_5)underwater_ruin/warm_6+underwater_ruin/warm_7-underwater_ruin/warm_8/underwater_ruin/brick_11underwater_ruin/brick_23underwater_ruin/brick_35underwater_ruin/brick_47underwater_ruin/brick_59underwater_ruin/brick_6;underwater_ruin/brick_7=underwater_ruin/brick_8?underwater_ruin/cracked_1Aunderwater_ruin/cracked_2Cunderwater_ruin/cracked_3Eunderwater_ruin/cracked_4Gunderwater_ruin/cracked_5Iunderwater_ruin/cracked_6Kunderwater_ruin/cracked_7Munderwater_ruin/cracked_8Ounderwater_ruin/mossy_1Qunderwater_ruin/mossy_2Sunderwater_ruin/mossy_3Uunderwater_ruin/mossy_4Wunderwater_ruin/mossy_5Yunderwater_ruin/mossy_6[underwater_ruin/mossy_7]underwater_ruin/mossy_8_underwater_ruin/big_brick_1aunderwater_ruin/big_brick_2cunderwater_ruin/big_brick_3eunderwater_ruin/big_brick_8gunderwater_ruin/big_mossy_1iunderwater_ruin/big_mossy_2kunderwater_ruin/big_mossy_3munderwater_ruin/big_mossy_8ounderwater_ruin/big_cracked_1qunderwater_ruin/big_cracked_2sunderwater_ruin/big_cracked_3uunderwater_ruin/big_cracked_8wunderwater_ruin/big_warm_4yunderwater_ruin/big_warm_5{underwater_ruin/big_warm_6}underwater_ruin/big_warm_7CodeLineNumberTableLocalVariableTablethisILnet/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces;candidateBlockreplacementBlock lootTableLocalVariableTypeTableYLnet/minecraft/resources/ResourceKey;MethodParameters Signatureù(Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor;random!Lnet/minecraft/util/RandomSource; addPiecesY(Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;)VstructureTemplateManagerVLnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;positionrotation*Lnet/minecraft/world/level/block/Rotation;builderLLnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder; structureLLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;isLargeZ baseIntegrity StackMapTableidxIpos nextRotation nextCornernextBB:Lnet/minecraft/world/level/levelgen/structure/BoundingBox;ip parentPos parentCornerparentBBparentBottomLeftLjava/util/List;ruins/Ljava/util/List;­Tnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManagerorigin positionso(Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/List;startPieceLocation$Lnet/minecraft/resources/Identifier;brickscrackedmossyA SourceFileOceanRuinPieces.java NestMembers InnerClassesTypeOceanRuinPiece!=    @AèAîAôAåAñAëALA ~/*·±8€ �‚  ~— 7»Y» Y» Y» Y*·²²+¶»#Y,·%·(¸+·1¸4·9°…Œ)‡0‘6…€ 7ƒü7„ü7…† 7…‡ˆ ƒ„…‰Š ØÕ~5 ²<*¸BÀH°–€  ‹Œˆ‹ ÔÕ~5 ²J*¸BÀH°š€  ‹Œˆ‹ �Ž~îU¹M´S–�§6™Y§Z8*+,-¸[™¹M´_–�*,+-¸b±žŸ%¡4£I¤T¦€RU��U‘{U’“U”•U‹ŒU–—>˜™%0šX›@ü Aü0ˆ�‘’”‹– de~³ó»fY-¶hZ-¶l·o:»fY·o²r,²x¸|¶‚:¸†:»fY¶h¶h¸Œ¶’¶l¶l¸Œ·o: + ¸•: +¸™6 6   ¢y ¹Ÿši+ ¹£¹¦6   ¹©Àf:+¸­:»fY·o²r²x¸|¶‚:¸†:¶²™§*+Z¸[„ §ÿ†±Jª«0¬9­a®i¯r±|²†³•´£µ©¶Æ·Ï¸Ù¹Ü¼ì±ò¿€¶•Wœ� £Iž{©CŸ“Æ& {Ï¡¢u}£� ó��ó‹Œó’“ó¤{ó–—ó”•à¥{0æ{9º§¢a’¨{ iŠ—© r�ª� † iŠ—« ›�ÿu ¬N®fTßff‡f,ÿf¬N®fTßff‡f,f®f‡ÿ ¬N®fTßff‡f,úˆ�‹’¤–” —˜~nú¸¶M,+ð*¸™`*¸™`¶¼¹¿W,+ð*¸™`*¸™¶¼¹¿W,+ð*¸™`ð*¸™`¶¼¹¿W,+*¸™*¸™`¶¼¹¿W,+*¸™ð*¸™`¶¼¹¿W,+*¸™`*¸™`¶¼¹¿W,+*¸™`*¸™¶¼¹¿W,+*¸™`ð*¸™`¶¼¹¿W,°* ÂÃ$ÄAÅaÆ~Ç›È»ÉØÊøÌ€ ú‹Œú®{ö¯©† ö¯«ˆ ‹®‰° ]^~ã é²Ã´É¶Í.«L™ ¸Ò§¸Ö:-»ÙY*+,´É·Û¶Þ§“™ ²ã§²æ: ™ ²é§²ì: ™ ²ï§²ò:  ¾¹¦6 -»ÙY*  2+,´É·Û¶Þ-»ÙY*  2+,õ´É·Û¶Þ-»ÙY*  2+,ö´É·Û¶Þ±2 Ð(Ó<ÔUÕX×hØxو۔ܰÝÌÞèင <±²h€³A xp´A ˆ`µA ”Tœ� é��é‘{钓锕鋌閗阙éšX›& ( DH B¶ý ¶B¶ü ¶B¶øaˆ!�‘’”‹–˜š·~²÷²ý²¸³ ²²²¸³½HY¸SY ¸SY"¸SY$¸SY&¸SY(¸SY*¸SY,¸S³<½HY.¸SY0¸SY2¸SY4¸SY6¸SY8¸SY:¸SY<¸S³æ½HY>¸SY@¸SYB¸SYD¸SYF¸SYH¸SYJ¸SYL¸S³ì½HYN¸SYP¸SYR¸SYT¸SYV¸SYX¸SYZ¸SY\¸S³ò½HY^¸SY`¸SYb¸SYd¸S³ã½HYf¸SYh¸SYj¸SYl¸S³ï½HYn¸SYp¸SYr¸SYt¸S³é½HYv¸SYx¸SYz¸SY|¸S³J±î;9:<(=1>:?C@LAUB_CiDpGzHƒIŒJ•KžL§M±N»OÂRÌSÕTÞUçVðWùXY Z]^'_0`9aBbKcUd_efhoixj�kŠl‘ošp£q¬rµs¼vÅwÎx×yàzç}ð~ù€ �}¸¹ºÄÙ»ÄÎT¼@Ù=½