private boolean isBalanced(STNode<Key, Value> x)
	{
		if (x == null)
			return true;

		int leftH = (x.left == null) ? -1 : x.left.h;
		int rightH = (x.right == null) ? -1 : x.right.h;
		if (Math.abs(leftH - rightH) > 1)
			return false;

		if (isBalanced(x.left))
			return isBalanced(x.right);
		return false;
	}