CLASS net/minecraft/class_1662 net/minecraft/recipe/RecipeMatcher
	COMMENT Matching class that matches a recipe to its required resources.
	COMMENT This specifically does not check patterns (See {@link ShapedRecipe} for that).
	FIELD field_7550 inputs Lit/unimi/dsi/fastutil/ints/Int2IntMap;
	METHOD method_20478 addInput (Lnet/minecraft/class_1799;I)V
		COMMENT Adds an item stack to the pool of available resources.
		ARG 1 stack
		ARG 2 maxCount
	METHOD method_7400 addInput (Lnet/minecraft/class_1799;)V
		COMMENT Adds a full item stack to the pool of available resources.
		COMMENT
		COMMENT <p>This is equivalent to calling {@code addInput(stack, Item.DEFAULT_MAX_COUNT)}.</p>
		ARG 1 stack
	METHOD method_7401 addInput (II)V
		COMMENT Adds an input to be used for recipe matching.
		ARG 1 itemId
			COMMENT the raw ID of the item to match
		ARG 2 count
			COMMENT the item's count
	METHOD method_7402 match (Lnet/minecraft/class_1860;Lit/unimi/dsi/fastutil/ints/IntList;)Z
		COMMENT Attempts to match the recipe against the collected inputs.
		COMMENT Assumes only one output is required.
		ARG 1 recipe
			COMMENT the recipe to match against
		ARG 2 output
			COMMENT optional output list of item ids that were matched whilst evaluating the recipe conditions
	METHOD method_7403 countCrafts (Lnet/minecraft/class_1860;ILit/unimi/dsi/fastutil/ints/IntList;)I
		COMMENT Determines the number of crafts that can be produced for a recipe using the
		COMMENT collected resources available to this crafter.
		ARG 1 recipe
			COMMENT the recipe to match against
		ARG 2 limit
		ARG 3 output
			COMMENT optional output list of item ids that were matched whilst evaluating the recipe conditions
	METHOD method_7404 addUnenchantedInput (Lnet/minecraft/class_1799;)V
		COMMENT Adds a full item stack to the pool of available resources.
		COMMENT
		COMMENT <p>This is equivalent to calling {@code addInput(stack, Item.DEFAULT_MAX_COUNT)}.</p>
		ARG 1 stack
	METHOD method_7405 getStackFromId (I)Lnet/minecraft/class_1799;
		ARG 0 itemId
	METHOD method_7406 match (Lnet/minecraft/class_1860;Lit/unimi/dsi/fastutil/ints/IntList;I)Z
		COMMENT Attempts to match the recipe against the collected inputs. Will only succeed if there has been enough
		COMMENT resources gathered to produce the requested number of outputs.
		ARG 1 recipe
			COMMENT the recipe to match against
		ARG 2 output
			COMMENT optional output list of item ids that were matched whilst evaluating the recipe conditions
		ARG 3 multiplier
			COMMENT the number of expected outputs
	METHOD method_7407 countCrafts (Lnet/minecraft/class_1860;Lit/unimi/dsi/fastutil/ints/IntList;)I
		COMMENT Determines the number of crafts that can be produced for a recipe using the
		COMMENT collected resources available to this crafter.
		ARG 1 recipe
			COMMENT the recipe to match against
		ARG 2 output
			COMMENT optional output list of item ids that were matched whilst evaluating the recipe conditions
	METHOD method_7408 getItemId (Lnet/minecraft/class_1799;)I
		ARG 0 stack
	METHOD method_7409 clear ()V
	METHOD method_7410 contains (I)Z
		COMMENT Determines whether a raw item id is present in the pool of crafting resources.
		ARG 1 itemId
	METHOD method_7411 consume (II)I
		COMMENT Consumes a resource from the pool of available items.
		ARG 1 itemId
			COMMENT the raw id of the item being consumed
		ARG 2 count
			COMMENT the number of times that item must be consumed
	CLASS class_1663 Matcher
		FIELD field_7551 requiredItems [I
		FIELD field_7552 ingredients Ljava/util/List;
		FIELD field_7553 totalRequiredItems I
		FIELD field_7555 recipe Lnet/minecraft/class_1860;
		FIELD field_7556 totalIngredients I
		FIELD field_7557 ingredientItemLookup Lit/unimi/dsi/fastutil/ints/IntList;
		FIELD field_7558 requirementsMatrix Ljava/util/BitSet;
		METHOD <init> (Lnet/minecraft/class_1662;Lnet/minecraft/class_1860;)V
			ARG 2 recipe
		METHOD method_7413 addRequirement (ZI)V
			ARG 1 reversed
			ARG 2 itemId
		METHOD method_7414 flipRequirement (ZII)V
			ARG 1 reversed
			ARG 2 itemIndex
			ARG 3 ingredientIndex
		METHOD method_7415 getMaximumCrafts ()I
		METHOD method_7416 getRequirement (I)Z
			ARG 1 itemId
		METHOD method_7417 match (ILit/unimi/dsi/fastutil/ints/IntList;)Z
			ARG 1 multiplier
			ARG 2 output
		METHOD method_7418 needsRequirement (ZII)Z
			ARG 1 reversed
			ARG 2 itemIndex
			ARG 3 ingredientIndex
		METHOD method_7419 getRequirementIndex (I)I
			ARG 1 itemId
		METHOD method_7420 getRequirementIndex (ZII)I
			ARG 1 reversed
			ARG 2 itemIndex
			ARG 3 ingredientIndex
		METHOD method_7421 unfulfillRequirement (I)V
			ARG 1 itemId
		METHOD method_7422 createItemRequirementList ()[I
		METHOD method_7423 checkRequirements (I)Z
			ARG 1 multiplier
		METHOD method_7424 getRequirementIndex (ZI)I
			ARG 1 reversed
			ARG 2 itemId
		METHOD method_7425 checkRequirement (ZII)Z
			ARG 1 reversed
			ARG 2 itemIndex
			ARG 3 ingredientIndex
		METHOD method_7426 isRequirementUnfulfilled (ZI)Z
			ARG 1 reversed
			ARG 2 itemId
		METHOD method_7427 countCrafts (ILit/unimi/dsi/fastutil/ints/IntList;)I
			ARG 1 minimum
			ARG 2 output
