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: Wrong Answer)

class String
  def to_ia
    split(/\s+/).map { |s| s.to_i }
  end
end

def solve(n, x)
  memo = {}
  (1..n).each do |i|
    (1..n).each do |j|
      next if i == j
      v = i + j
      if memo[v].nil?
        memo[v] = [[i, j]]
      else
        res = true
        memo[v].each do |c|
          res = false if c.include? i
          res = false if c.include? j
        end
        memo[v] << [i, j] if res
      end
    end
  end
  ans = []
  memo.each do |sum, ary|
    v = x - sum
    next unless v > 0 and v <= n
    res = true
    ans.each do |a|
      res = false if a.include? v
    end
    if res
      ary.each do |c|
        ans << c + [v] unless c.include? v
      end
    end
  end
  ans.size
end

loop do
  ary = STDIN.gets.chomp.to_ia
  n = ary[0]
  x = ary[1]
  break if n == 0 and x == 0
  puts solve(n, x)
end