private boolean evaluateUShape() {
		float angleL = PVector.angleBetween(skeleton.getLeftUpperArmLCS(),skeleton.getLeftLowerArmLCS());
		float angleR = PVector.angleBetween(skeleton.getRightUpperArmLCS(),skeleton.getRightLowerArmLCS());
		float angleUShape = PVector.angleBetween(skeleton.getLeftUpperArmLCS(), skeleton.getRightUpperArmLCS());
		float angleToBodyY = PVector.angleBetween(skeleton.getLeftLowerArmLCS(),skeleton.getOrientationY());
		if (SkeletonMath.isValueBetween(angleL,PApplet.radians(85)-postureAngleTolerance,PApplet.radians(95)+postureAngleTolerance) && SkeletonMath.isValueBetween(angleR,PApplet.radians(85)-postureAngleTolerance,PApplet.radians(95)+postureAngleTolerance)) { // arms angle ~90 degree
			if (SkeletonMath.isValueBetween(angleUShape,PApplet.radians(170)-postureAngleTolerance,PApplet.radians(180))) { // upper arms form a straight line
				if (SkeletonMath.isValueBetween(angleToBodyY,0,PApplet.radians(15)+postureAngleTolerance)) {// arms upwards 
					return true;
				}
			}
		}
		return false;
	}