import java.io.*;

class Main {
	public static void main(String[] args) {
	    BufferedReader kb = new BufferedReader( new InputStreamReader( System.in ) );
	    try {
	     
			int n, x;
			int cnt, ave3, ave2;
			String[] tmpArray;  
			while( true ) {
			    String str = kb.readLine();
			    tmpArray = str.split( " " );
			    n = Integer.parseInt( tmpArray[0] );
			    x = Integer.parseInt( tmpArray[1] );
			
			    if( 0 == n && 0 == x ) {  break; }
			
			    cnt = 0;
			    ave3 = x / 3;
			    int i, j, k;
	            for( i=1; i<ave3; i++ ) {
					ave2 = ( x-i ) / 2;
					for( j=i+1; j<=ave2; j++ ) {
						k = x - i - j;
					    if( j < k && k <= n ) {
					        cnt++;
					    }
					}
	            }
	            System.out.println( cnt );    
	        }
	    } catch( IOException e ) {
	        System.err.println( e );
	    }
	}
}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz