CLASS cor net/minecraft/world/loot/LootSupplier
	CLASS cor$a Builder
		FIELD a pools Ljava/util/List;
		FIELD b functions Ljava/util/List;
		FIELD c type Lcqn;
		METHOD a withPool (Lcoq$a;)Lcor$a;
			ARG 1 poolBuilder
		METHOD a withType (Lcqn;)Lcor$a;
			ARG 1 context
		METHOD b create ()Lcor;
	CLASS cor$b Serializer
		METHOD deserialize (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object;
			ARG 1 json
			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 Lcor;
	FIELD b GENERIC Lcqn;
	FIELD c LOGGER Lorg/apache/logging/log4j/Logger;
	FIELD d type Lcqn;
	FIELD e pools [Lcoq;
	FIELD f functions [Lcpx;
	FIELD g combinedFunction Ljava/util/function/BiFunction;
	METHOD <init> (Lcqn;[Lcoq;[Lcpx;)V
		ARG 1 contextType
		ARG 2 pools
		ARG 3 functions
	METHOD a getType ()Lcqn;
	METHOD a supplyInventory (Lagw;Lcoo;)V
		ARG 1 inventory
		ARG 2 context
	METHOD a getFreeSlots (Lagw;Ljava/util/Random;)Ljava/util/List;
		ARG 1 inventory
		ARG 2 random
	METHOD a getDrops (Lcoo;)Ljava/util/List;
		ARG 1 context
	METHOD a drop (Lcoo;Ljava/util/function/Consumer;)V
		ARG 1 context
		ARG 2 itemDropper
	METHOD a check (Lcos;Ljava/util/function/Function;Ljava/util/Set;Lcqn;)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;Lbcb;)V
		ARG 1 stack
	METHOD b builder ()Lcor$a;
	METHOD b dropLimited (Lcoo;Ljava/util/function/Consumer;)V
		ARG 1 context
		ARG 2 dropItemConsumer
