Êþº¾E  java/lang/Record()V   Pnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProviderfallbackLnet/minecraft/core/Holder;  rulesLjava/util/List;  java/util/OptionalorElse&(Ljava/lang/Object;)Ljava/lang/Object;net/minecraft/core/Holder  .(Lnet/minecraft/core/Holder;Ljava/util/List;)V  !Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderofx(Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/SimpleStateProvider; # $%ifTrueThenProvideå(Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider;'Unet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider$Rule ) *+direct/(Ljava/lang/Object;)Lnet/minecraft/core/Holder; &- .a(Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/core/Holder;)V 012 3java/util/List$(Ljava/lang/Object;)Ljava/util/List; 5 67CODEC#Lcom/mojang/serialization/MapCodec; 9 :;getOptionalState›(Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; =>? @A'net/minecraft/world/level/LevelAccessor getBlockStateQ(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; 0C DEiterator()Ljava/util/Iterator; GHI JKjava/util/IteratorhasNext()Z GM NOnext()Ljava/lang/Object; &Q RSifTrueE()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; UVW XYAnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicatetest'(Ljava/lang/Object;Ljava/lang/Object;)Z &[ \]then()Lnet/minecraft/core/Holder; _ `Ovalue 9cXnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider$Builder be fQ(Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Vh ijtoStringf(Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider;)Ljava/lang/String;l mnhashCodeU(Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider;)Ip qrequalsg(Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider;Ljava/lang/Object;)Z t 6u Lcom/mojang/serialization/Codec; xyz {|com/mojang/serialization/CodecoptionalFieldOf7(Ljava/lang/String;)Lcom/mojang/serialization/MapCodec;~ €apply()Ljava/util/function/Function; ‚ƒ„ …†!com/mojang/serialization/MapCodec forGetterS(Ljava/util/function/Function;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; &t x‰ Š‹listOf"()Lcom/mojang/serialization/Codec; xŽ �|fieldOf~ ’“” •–;com/mojang/serialization/codecs/RecordCodecBuilder$Instancegroupg(Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lcom/mojang/datafixers/Products$P2;˜ ™!()Ljava/util/function/BiFunction; ›œ� ž!com/mojang/datafixers/Products$P2k(Lcom/mojang/datafixers/kinds/Applicative;Ljava/util/function/BiFunction;)Lcom/mojang/datafixers/kinds/App;   ¡¢ ofNullable((Ljava/lang/Object;)Ljava/util/Optional;~ ¥¦§ ¨©2com/mojang/serialization/codecs/RecordCodecBuildermapCodecB(Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; SignaturekLnet/minecraft/core/Holder;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;iLjava/util/List;wLcom/mojang/serialization/MapCodec;'(Ljava/util/Optional;Ljava/util/List;)VCodeLineNumberTableLocalVariableTablethisRLnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider;Ljava/util/Optional;LocalVariableTypeTable�Ljava/util/Optional;>;MethodParametersí(Ljava/util/Optional;>;Ljava/util/List;)V×(Lnet/minecraft/core/Holder;Ljava/util/List;)V¾(Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider;CLnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; thenProvide'Lnet/minecraft/world/level/block/Block;NLnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;codec%()Lcom/mojang/serialization/MapCodec;y()Lcom/mojang/serialization/MapCodec;getStatelevel)Lnet/minecraft/world/level/LevelAccessor;random!Lnet/minecraft/util/RandomSource;posLnet/minecraft/core/BlockPos;result2Lnet/minecraft/world/level/block/state/BlockState; StackMapTableÏ0net/minecraft/world/level/block/state/BlockState optionalStateruleWLnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider$Rule;builder\()Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider$Builder;ª(Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider$Builder;()Ljava/lang/String;()I(Ljava/lang/Object;)ZoLjava/lang/Object;m()Lnet/minecraft/core/Holder;()Ljava/util/List;k()Ljava/util/List;lambda$static$0`(Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App;i=Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;lambda$static$2d(Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider;)Ljava/util/List;plambda$static$1h(Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider;)Ljava/util/Optional;provider SourceFileRuleBasedStateProvider.java NestMembersRecordBootstrapMethodsïfallback;rules ô õ åææø ù âããü8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;þ ÿ °x(Ljava/util/Optional;Ljava/util/List;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedStateProvider;  Þßß     java/lang/runtime/ObjectMethods bootstrap±(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/TypeDescriptor;Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/invoke/MethodHandle;)Ljava/lang/Object;  "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; InnerClassesRuleBuilderInstancecom/mojang/datafixers/ProductsP2%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandlesLookup1 ª«¬­ª®67ª¯°±l*+¶À,·±²  ³ ´µ ¶· ¸®¹  ªº±i*·*+µ*,µ ±²³ ´µ · «®¹  ª»¬ ­ $¼±= *+¸¸"°²³ R½ ¾¿¹ R¾ $%±O»YÀ»&Y*+¸(·,¸/·°²"³R½¾À¹ R¾Á±.²4°²'³ ´µªÃÄ;±ƒ*+,-¶8:Ƨ +-¹<°² , -³4´µÅÆÇÈÉÊ ËÌÍ üÎFι ÅÇÉ:;±ÿr*´ ¹B:¹F™@¹LÀ&:¶P+-¹T™"¶Z¹^À+,-¹a:ư§ÿ¼*´Ç§*´¹^À+,-¹a°²2!304G5L6O9R;³>GÐÌ!.ÑÒr´µrÅÆrÇÈrÉÊÍü GûCú Sι ÅÇɬ­ ÓÔ±! »bY·d°²? ÓÕ±3 »bY*·d°²C³  À¹ ¬ ­iÖ±1*ºg°²³ ´µm×±1*ºk¬²³ ´µqر<*+ºo¬²³´µÙÚ¹Ù ]±/*´°²³ ´µªÛ¬­Ü±/*´ °²³ ´µªÝ Þß±u7*²sv¹wº}¶�²‡¹ˆŒ¹�º�¶�¶‘*º—¶š°²*36³ 7àá âã±/*´ °²³ äµ åæ±2*´¸Ÿ°²³ çµè±$ º£¸¤³4±²éêëb&ì, ª«¬­ª®í6îðñ òóö ò÷ú ûý ò*&b ’¥›