CLASS net/minecraft/class_1317 net/minecraft/entity/SpawnRestriction
	FIELD field_6313 RESTRICTIONS Ljava/util/Map;
	METHOD method_20637 register (Lnet/minecraft/class_1299;Lnet/minecraft/class_1317$class_1319;Lnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_1317$class_4306;)V
		ARG 0 type
		ARG 1 location
		ARG 2 heightmapType
		ARG 3 predicate
	METHOD method_20638 canSpawn (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z
		ARG 0 type
		ARG 1 world
		ARG 2 spawnReason
		ARG 3 pos
		ARG 4 random
	METHOD method_6159 getLocation (Lnet/minecraft/class_1299;)Lnet/minecraft/class_1317$class_1319;
		ARG 0 type
	METHOD method_6160 getHeightmapType (Lnet/minecraft/class_1299;)Lnet/minecraft/class_2902$class_2903;
		ARG 0 type
	CLASS class_1318 Entry
		FIELD field_19349 predicate Lnet/minecraft/class_1317$class_4306;
		FIELD field_6314 heightmapType Lnet/minecraft/class_2902$class_2903;
		FIELD field_6315 location Lnet/minecraft/class_1317$class_1319;
		METHOD <init> (Lnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_1317$class_1319;Lnet/minecraft/class_1317$class_4306;)V
			ARG 1 heightmapType
			ARG 2 location
			ARG 3 predicate
	CLASS class_1319 Location
		METHOD <init> (Ljava/lang/String;I)V
			ARG 1 name
			ARG 2 id
	CLASS class_4306 SpawnPredicate
		METHOD test (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z
			ARG 1 type
			ARG 2 world
			ARG 3 spawnReason
			ARG 4 pos
			ARG 5 random
