CLASS xy net/minecraft/tag/Tag
	CLASS xy$a Builder
		FIELD a entries Ljava/util/Set;
		FIELD b ordered Z
		METHOD a create ()Lxy$a;
		METHOD a add (Ljava/lang/Object;)Lxy$a;
			ARG 0 value
		METHOD a add (Ljava/util/Collection;)Lxy$a;
			ARG 0 values
		METHOD a applyTagGetter (Ljava/util/function/Function;)Z
			ARG 0 function
		METHOD a fromJson (Ljava/util/function/Predicate;Ljava/util/function/Function;Lcom/google/gson/JsonObject;)Lxy$a;
		METHOD a add (Lpz;)Lxy$a;
			ARG 0 id
		METHOD a add (Lxy$b;)Lxy$a;
			ARG 0 entry
		METHOD a add (Lxy;)Lxy$a;
			ARG 0 tag
		METHOD a ordered (Z)Lxy$a;
			ARG 0 value
		METHOD a add ([Ljava/lang/Object;)Lxy$a;
			ARG 0 values
		METHOD b build (Lpz;)Lxy;
			ARG 0 id
	CLASS xy$b Entry
		METHOD a toJson (Lcom/google/gson/JsonArray;Ljava/util/function/Function;)V
		METHOD a build (Ljava/util/Collection;)V
			ARG 0 target
		METHOD a applyTagGetter (Ljava/util/function/Function;)Z
			ARG 0 tagGetter
	CLASS xy$c TagEntry
		FIELD a id Lpz;
		FIELD b tag Lxy;
		METHOD <init> (Lpz;)V
			ARG 0 id
		METHOD <init> (Lxy;)V
			ARG 0 tag
		METHOD a getId ()Lpz;
		METHOD a toJson (Lcom/google/gson/JsonArray;Ljava/util/function/Function;)V
		METHOD a build (Ljava/util/Collection;)V
			ARG 0 target
		METHOD a applyTagGetter (Ljava/util/function/Function;)Z
			ARG 0 tagGetter
	CLASS xy$d CollectionEntry
		FIELD a values Ljava/util/Collection;
		METHOD a toJson (Lcom/google/gson/JsonArray;Ljava/util/function/Function;)V
		METHOD a build (Ljava/util/Collection;)V
			ARG 0 target
	FIELD a id Lpz;
	FIELD b values Ljava/util/Set;
	FIELD c entries Ljava/util/Collection;
	METHOD <init> (Lpz;Ljava/util/Collection;Z)V
		ARG 1 id
		ARG 2 entries
	METHOD a values ()Ljava/util/Collection;
	METHOD a contains (Ljava/lang/Object;)Z
		ARG 0 value
	METHOD a getRandom (Ljava/util/Random;)Ljava/lang/Object;
	METHOD a toJson (Ljava/util/function/Function;)Lcom/google/gson/JsonObject;
	METHOD b entries ()Ljava/util/Collection;
	METHOD c getId ()Lpz;
