CLASS cok net/minecraft/world/loot/LootSupplier CLASS cok$a Builder FIELD a pools Ljava/util/List; FIELD b functions Ljava/util/List; FIELD c type Lcqh; METHOD a withPool (Lcoj$a;)Lcok$a; ARG 1 poolBuilder METHOD a withType (Lcqh;)Lcok$a; ARG 1 context METHOD b create ()Lcok; CLASS cok$b Serializer METHOD deserialize (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object; ARG 1 lootTableRootJson ARG 2 unused ARG 3 context METHOD serialize (Ljava/lang/Object;Ljava/lang/reflect/Type;Lcom/google/gson/JsonSerializationContext;)Lcom/google/gson/JsonElement; ARG 1 supplier ARG 2 unused ARG 3 context FIELD a EMPTY Lcok; FIELD b GENERIC Lcqh; FIELD c LOGGER Lorg/apache/logging/log4j/Logger; FIELD d type Lcqh; FIELD e pools [Lcoj; FIELD f functions [Lcpr; FIELD g combinedFunction Ljava/util/function/BiFunction; METHOD (Lcqh;[Lcoj;[Lcpr;)V ARG 1 contextType ARG 2 pools ARG 3 functions METHOD a getType ()Lcqh; METHOD a supplyInventory (Lagr;Lcoh;)V ARG 1 inventory ARG 2 context METHOD a getFreeSlots (Lagr;Ljava/util/Random;)Ljava/util/List; ARG 1 inventory ARG 2 random METHOD a getDrops (Lcoh;)Ljava/util/List; ARG 1 context METHOD a drop (Lcoh;Ljava/util/function/Consumer;)V ARG 1 context ARG 2 itemDropper METHOD a check (Lcol;Ljava/util/function/Function;Ljava/util/Set;Lcqh;)V ARG 1 reporter ARG 2 supplierGetter ARG 3 parentLootTables ARG 4 contextType METHOD a shuffle (Ljava/util/List;ILjava/util/Random;)V ARG 1 drops ARG 2 freeSlots ARG 3 random METHOD a limitedConsumer (Ljava/util/function/Consumer;)Ljava/util/function/Consumer; ARG 0 itemDropper METHOD a (Ljava/util/function/Consumer;Lbbx;)V ARG 1 stack METHOD b builder ()Lcok$a; METHOD b dropLimited (Lcoh;Ljava/util/function/Consumer;)V ARG 1 context ARG 2 dropItemConsumer