import java.io.*;

class Main{
	public static void main(String args[]) throws IOException{
		BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
		String[] str;
		int n,x;
		int num=0;

		while(true){
			str = buf.readLine().split(" ");
			n = Integer.parseInt(str[0]);
			x = Integer.parseInt(str[1]);
			if(n==0 && x==0)
				break;
			for(int i=1;i<=n;i++){
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			}
			
			System.out.println(num/6);
			num = 0;
		}	

	}
} import java.io.*; io.* java class Main{
	public static void main(String args[]) throws IOException{
		BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
		String[] str;
		int n,x;
		int num=0;

		while(true){
			str = buf.readLine().split(" ");
			n = Integer.parseInt(str[0]);
			x = Integer.parseInt(str[1]);
			if(n==0 && x==0)
				break;
			for(int i=1;i<=n;i++){
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			}
			
			System.out.println(num/6);
			num = 0;
		}	

	}
} Main public static void main(String args[]) throws IOException{
		BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
		String[] str;
		int n,x;
		int num=0;

		while(true){
			str = buf.readLine().split(" ");
			n = Integer.parseInt(str[0]);
			x = Integer.parseInt(str[1]);
			if(n==0 && x==0)
				break;
			for(int i=1;i<=n;i++){
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			}
			
			System.out.println(num/6);
			num = 0;
		}	

	} main {
		BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
		String[] str;
		int n,x;
		int num=0;

		while(true){
			str = buf.readLine().split(" ");
			n = Integer.parseInt(str[0]);
			x = Integer.parseInt(str[1]);
			if(n==0 && x==0)
				break;
			for(int i=1;i<=n;i++){
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			}
			
			System.out.println(num/6);
			num = 0;
		}	

	} BufferedReader buf = new BufferedReader(new InputStreamReader(System.in)); buf new BufferedReader(new InputStreamReader(System.in)) String[] str; str int n n x; x int num=0; num 0 while(true){
			str = buf.readLine().split(" ");
			n = Integer.parseInt(str[0]);
			x = Integer.parseInt(str[1]);
			if(n==0 && x==0)
				break;
			for(int i=1;i<=n;i++){
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			}
			
			System.out.println(num/6);
			num = 0;
		} true {
			str = buf.readLine().split(" ");
			n = Integer.parseInt(str[0]);
			x = Integer.parseInt(str[1]);
			if(n==0 && x==0)
				break;
			for(int i=1;i<=n;i++){
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			}
			
			System.out.println(num/6);
			num = 0;
		} str = buf.readLine().split(" ") str buf.readLine().split(" ") buf.readLine().split buf.readLine() buf.readLine buf " " n = Integer.parseInt(str[0]) n Integer.parseInt(str[0]) Integer.parseInt Integer str[0] str 0 x = Integer.parseInt(str[1]) x Integer.parseInt(str[1]) Integer.parseInt Integer str[1] str 1 if(n==0 && x==0)
				break; n==0 && x==0 n==0 n 0 x==0 x 0 break; for(int i=1;i<=n;i++){
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			} int i=1; int i=1; i 1 i<=n i n i++ i++ i {
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			} {
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			} for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				} int j=1; int j=1; j 1 j<=n j n j++ j++ j {
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				} {
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				} for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					} int k=1; int k=1; k 1 k<=n k n k++ k++ k {
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					} {
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					} if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						} i+j+k==x && i!=j && i!=k && j!=k i!=k i+j+k==x && i!=j && i!=k && j!=k i+j+k==x i+j+k i+j+k i j k x i!=j i j i!=k i k j!=k j k {
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						} num++ num System.out.println(num/6) System.out.println System.out System System.out num/6 num 6 num = 0 num 0 String args[] args
import java.io.*;

class Main{
	public static void main(String args[]) throws IOException{
		BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
		String[] str;
		int n,x;
		int num=0;

		while(true){
			str = buf.readLine().split(" ");
			n = Integer.parseInt(str[0]);
			x = Integer.parseInt(str[1]);
			if(n==0 && x==0)
				break;
			for(int i=1;i<=n;i++){
				for(int j=1;j<=n;j++){
					for(int k=1;k<=n;k++){
						if(i+j+k==x && i!=j && i!=k && j!=k){
							//System.out.printf("%d %d %d\n",i,j,k);
							num++;
						}
					}
				}
			}
			
			System.out.println(num/6);
			num = 0;
		}	

	}
}