CLASS ey net/minecraft/util/math/Facing
	CLASS ey$a Axis
		CLASS ey$a$1
			METHOD <init> (Ljava/lang/String;ILjava/lang/String;)V
				ARG 0 name
			METHOD a choose (DDD)D
				ARG 1 x
				ARG 3 y
				ARG 5 z
			METHOD a choose (III)I
		CLASS ey$a$2
			METHOD <init> (Ljava/lang/String;ILjava/lang/String;)V
				ARG 0 name
			METHOD a choose (DDD)D
				ARG 1 x
				ARG 3 y
				ARG 5 z
			METHOD a choose (III)I
		CLASS ey$a$3
			METHOD <init> (Ljava/lang/String;ILjava/lang/String;)V
				ARG 0 name
			METHOD a choose (DDD)D
				ARG 1 x
				ARG 3 y
				ARG 5 z
			METHOD a choose (III)I
		FIELD a X Ley$a;
		FIELD b Y Ley$a;
		FIELD c Z Ley$a;
		FIELD d BY_NAME Ljava/util/Map;
		FIELD e name Ljava/lang/String;
		METHOD <init> (Ljava/lang/String;ILjava/lang/String;)V
			ARG 0 name
		METHOD a getName ()Ljava/lang/String;
		METHOD a choose (DDD)D
			ARG 1 x
			ARG 3 y
			ARG 5 z
		METHOD a choose (III)I
		METHOD a contains (Ley;)Z
			ARG 0 facing
		METHOD a fromName (Ljava/lang/String;)Ley$a;
			ARG 0 name
		METHOD a (Ljava/util/Random;)Ley$a;
			ARG 0 random
		METHOD b isVertical ()Z
		METHOD c isHorizontal ()Z
		METHOD m asString ()Ljava/lang/String;
	CLASS ey$b Direction
		FIELD a POSITIVE Ley$b;
		FIELD b NEGATIVE Ley$b;
		FIELD c offset I
		FIELD d desc Ljava/lang/String;
		METHOD a offset ()I
	CLASS ey$c
		FIELD a HORIZONTAL Ley$c;
		FIELD b VERTICAL Ley$c;
		FIELD c facingArray [Ley;
		FIELD d axisArray [Ley$a;
		METHOD a contains (Ley;)Z
			ARG 0 facing
		METHOD a random (Ljava/util/Random;)Ley;
			ARG 0 rand
	FIELD a DOWN Ley;
	FIELD b UP Ley;
	FIELD c NORTH Ley;
	FIELD d SOUTH Ley;
	FIELD e WEST Ley;
	FIELD f EAST Ley;
	FIELD g id I
	FIELD h idOpposite I
	FIELD i idHorizontal I
	FIELD j name Ljava/lang/String;
	FIELD k axis Ley$a;
	FIELD l direction Ley$b;
	FIELD m vector Lfn;
	FIELD n ALL [Ley;
	FIELD o NAME_MAP Ljava/util/Map;
	FIELD q HORIZONTAL [Ley;
	METHOD <init> (Ljava/lang/String;IIIILjava/lang/String;Ley$b;Ley$a;Lfn;)V
		ARG 3 id
		ARG 4 idOpposite
		ARG 5 idHorizontal
		ARG 6 name
		ARG 7 direction
		ARG 8 axis
	METHOD a getId ()I
	METHOD a fromRotation (D)Ley;
		ARG 0 rotation
	METHOD a getFacing (DDD)Ley;
		ARG 0 x
	METHOD a getFacing (FFF)Ley;
		ARG 0 x
		ARG 1 y
		ARG 2 z
	METHOD a byId (I)Ley;
		ARG 0 id
	METHOD a getEntityFacingOrder (Lagk;)[Ley;
		ARG 0 entity
	METHOD a rotateClockwise (Ley$a;)Ley;
	METHOD a from (Ley$a;Ley$b;)Ley;
		ARG 0 axis
		ARG 1 direction
	METHOD a get (Ley$b;Ley$a;)Ley;
		ARG 0 direction
		ARG 1 axis
	METHOD a byName (Ljava/lang/String;)Ley;
		ARG 0 name
	METHOD a random (Ljava/util/Random;)Ley;
		ARG 0 random
	METHOD b getHorizontal ()I
	METHOD b fromHorizontal (I)Ley;
		ARG 0 value
	METHOD c getDirection ()Ley$b;
	METHOD d getOpposite ()Ley;
	METHOD e rotateYClockwise ()Ley;
	METHOD f rotateYCounterclockwise ()Ley;
	METHOD g getOffsetX ()I
	METHOD h getOffsetY ()I
	METHOD i getOffsetZ ()I
	METHOD j getName ()Ljava/lang/String;
	METHOD k getAxis ()Ley$a;
	METHOD l asRotation ()F
	METHOD m asString ()Ljava/lang/String;
	METHOD n getVector ()Lfn;
	METHOD o rotateXClockwise ()Ley;
	METHOD q rotateZClockwise ()Ley;
