Problem:
How many ways?

Write a program which identifies the number of combinations of three integers which satisfy the following conditions:

You should select three distinct integers from 1 to n.

A total sum of the three integers is x.

For example, there are two combinations for n = 5 and x = 9.

1 + 3 + 5 = 9

2 + 3 + 4 = 9

Input

The input consists of multiple datasets. For each dataset, two integers n and x are given in a line.

The input ends with two zeros for n and x respectively. Your program should not process for these terminal symbols.

Constraints

3 ≤ n ≤ 100

0 ≤ x ≤ 300

Output

For each dataset, print the number of combinations in a line.

Sample Input

5 9
0 0

Sample Output

2

Note

      解説

Solution in Ruby (judge verdict: Accepted)

def judge(n, x)
	count = 0
	for a in 1..(x / 3 - 1)	# <=一番小さい数aの最大値は3で割った数から1引いたもの
		for b in (a + 1)..(n - 1) #bはaより大きくcより小さい
			c = x - a - b	
			
			if (c > b) && (c <= n)	#cがbより大きく、nを超えない場合
				count += 1
			end
		end
	end
	
return count
end

imput = gets.chomp.split("\s")
n, x = imput[0].to_i, imput[1].to_i

until (n == 0) && (x == 0)
	puts judge(n, x)
	imput = gets.chomp.split("\s")
	n, x = imput[0].to_i, imput[1].to_i
end