import java.io.IOException;
import java.util.Scanner;


public class Main {

	public static void main(String[] args) throws IOException {
		//File fi=new File("file.txt");

		Scanner sc=new Scanner(System.in);
		for(;;){
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		}
		sc.close();
		
	
	}} import java.io.IOException; IOException java.io import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) throws IOException {
		//File fi=new File("file.txt");

		Scanner sc=new Scanner(System.in);
		for(;;){
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		}
		sc.close();
		
	
	}} Main public static void main(String[] args) throws IOException {
		//File fi=new File("file.txt");

		Scanner sc=new Scanner(System.in);
		for(;;){
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		}
		sc.close();
		
	
	} main {
		//File fi=new File("file.txt");

		Scanner sc=new Scanner(System.in);
		for(;;){
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		}
		sc.close();
		
	
	} Scanner sc=new Scanner(System.in); sc new Scanner(System.in) for(;;){
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		} ; {
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		} {
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		} int n=sc.nextInt(); n sc.nextInt() sc.nextInt sc int x=sc.nextInt(); x sc.nextInt() sc.nextInt sc if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			} n==0&&x==0 n==0 n 0 x==0 x 0 break; {int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			} int count=0; count 0 for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				} int a=1; int a=1; a 1 a<n a n a++ a++ a {
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				} {
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				} for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					} int b=a+1; int b=a+1; b a+1 a 1 b<n b n b++ b++ b {
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					} {
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					} for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					} int c=b+1; int c=b+1; c b+1 b 1 c<=n c n c++ c++ c {
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					} {
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					} if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						} a+b+c==x a+b+c a+b+c a b c x {
								if(a!=b&&a!=c&&b!=c)count++;
								
						} if(a!=b&&a!=c&&b!=c)count++; a!=b&&a!=c&&b!=c a!=b&&a!=c&&b!=c a!=b a b a!=c a c b!=c b c count++ count System.out.println(count) System.out.println System.out System System.out count sc.close() sc.close sc String[] args args public class Main {

	public static void main(String[] args) throws IOException {
		//File fi=new File("file.txt");

		Scanner sc=new Scanner(System.in);
		for(;;){
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		}
		sc.close();
		
	
	}} public class Main {

	public static void main(String[] args) throws IOException {
		//File fi=new File("file.txt");

		Scanner sc=new Scanner(System.in);
		for(;;){
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		}
		sc.close();
		
	
	}} Main
import java.io.IOException;
import java.util.Scanner;


public class Main {

	public static void main(String[] args) throws IOException {
		//File fi=new File("file.txt");

		Scanner sc=new Scanner(System.in);
		for(;;){
			int n=sc.nextInt();
			int x=sc.nextInt();
			
			if(n==0&&x==0)break;
			else{int count=0;
				for(int a=1;a<n;a++){
					for(int b=a+1;b<n;b++){
						for(int c=b+1;c<=n;c++){
							if(a+b+c==x){
								if(a!=b&&a!=c&&b!=c)count++;
								
						}
					}
					}
				}System.out.println(count);
				
			}
		}
		sc.close();
		
	
	}}