You are given two integers K and S.
Three variable X, Y and Z takes integer values satisfying 0≤X,Y,Z≤K.
How many different assignments of values to X, Y and Z are there such that X + Y + Z = S?

Constraints

* 2≤K≤2500
* 0≤S≤3K
* K and S are integers.

Input

The input is given from Standard Input in the following format:


K S


Output

Print the number of the triples of X, Y and Z that satisfy the condition.

Examples

Input

2 2


Output

6


Input

5 15


Output

1
#include <bits/stdc++.h>
using namespace std;
int main(){  
  int K,S,A=0;
  cin>>K>>S;
  for(int i=0;i<=min(K,S);i++){
    if(S-i>K){
      if(2*K-S+i+1>0)A+=2*K+1-S+i;
    }
    else A+=S-i+1;
  }
  cout<<A<<endl;
}