private boolean evaluateIShape() {
		float angleLArm = PVector.angleBetween(skeleton.getLeftUpperArmLCS(),skeleton.getLeftLowerArmLCS());
		float angleRArm = PVector.angleBetween(skeleton.getRightUpperArmLCS(),skeleton.getRightLowerArmLCS());
		float angleIShape = PVector.angleBetween(skeleton.getLeftUpperArmLCS(),skeleton.getRightUpperArmLCS());
		float angleToBodyY = PVector.angleBetween(skeleton.getLeftUpperArmLCS(),skeleton.getOrientationY());
		if (SkeletonMath.isValueBetween(angleLArm,0,PApplet.radians(10)+postureAngleTolerance) && SkeletonMath.isValueBetween(angleRArm,0,PApplet.radians(10)+postureAngleTolerance)) { // arms form a straight line
			if (SkeletonMath.isValueBetween(angleIShape,0,PApplet.radians(15)+postureAngleTolerance)) { // arms are parallel
				if (SkeletonMath.isValueBetween(angleToBodyY,0,PApplet.radians(15)+postureAngleTolerance) || SkeletonMath.isValueBetween(angleToBodyY,PApplet.radians(165)-postureAngleTolerance,PApplet.radians(180))) { // arms are parallel to y body axis
					return true;
				}
			}
		}
		return false;
	}