#include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
int n,i,j,k,low,high,mid;
int sticks[2000],c,counter,key;
scanf("%d",&n);
while(n!=0){
c=((n)*(n-1)*(n-2))/6;
counter=0;
for(i=0;i<n;i++){
scanf("%d",&sticks[i]);
}
sort(sticks,sticks+n);
for(i=0;i<n-2;i++){
for(j=i+1;j<n-1;j++){
key=sticks[i]+sticks[j];
low=j+1;
high=n-1;
while(low<=high){
mid=(low+high)/2;
if(key==sticks[mid]){
low=mid;
while(sticks[low]==key)
low++;
}
else if(key>sticks[mid])
low = mid+1;
else
high = mid-1;
}
counter = counter + (low-j-1);
}
}
//printf("c -> %ld\n",c);
//printf("counter -> %ld\n",counter);
printf("%d\n",c-counter);
scanf("%d",&n);
}
return 0;
}
I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKCgoKaW50IG1haW4oKQp7CiAgICBpbnQgbixpLGosayxsb3csaGlnaCxtaWQ7CiAgICBpbnQgc3RpY2tzWzIwMDBdLGMsY291bnRlcixrZXk7CiAgICBzY2FuZigiJWQiLCZuKTsKICAgIHdoaWxlKG4hPTApewogICAgICAgICAgICBjPSgobikqKG4tMSkqKG4tMikpLzY7CiAgICAgICAgICAgIGNvdW50ZXI9MDsKICAgICAgICBmb3IoaT0wO2k8bjtpKyspewogICAgICAgICAgICBzY2FuZigiJWQiLCZzdGlja3NbaV0pOwogICAgICAgIH0KICAgICAgICBzb3J0KHN0aWNrcyxzdGlja3Mrbik7CiAgICAgICAgZm9yKGk9MDtpPG4tMjtpKyspewogICAgICAgICAgICBmb3Ioaj1pKzE7ajxuLTE7aisrKXsKICAgICAgICAgICAgICAgIGtleT1zdGlja3NbaV0rc3RpY2tzW2pdOwogICAgICAgICAgICAgICAgbG93PWorMTsKICAgICAgICAgICAgICAgIGhpZ2g9bi0xOwogICAgICAgICAgICAgICAgd2hpbGUobG93PD1oaWdoKXsKICAgICAgICAgICAgICAgICAgICBtaWQ9KGxvdytoaWdoKS8yOwogICAgICAgICAgICAgICAgICAgIGlmKGtleT09c3RpY2tzW21pZF0pewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbG93PW1pZDsKICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUoc3RpY2tzW2xvd109PWtleSkKICAgICAgICAgICAgICAgICAgICAgICAgbG93Kys7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoa2V5PnN0aWNrc1ttaWRdKQogICAgICAgICAgICAgICAgICAgICAgICBsb3cgPSBtaWQrMTsKICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZ2ggPSBtaWQtMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNvdW50ZXIgPSBjb3VudGVyICsgKGxvdy1qLTEpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIC8vcHJpbnRmKCJjIC0+ICVsZFxuIixjKTsKICAgICAgICAvL3ByaW50ZigiY291bnRlciAtPiAlbGRcbiIsY291bnRlcik7CiAgICAgICAgcHJpbnRmKCIlZFxuIixjLWNvdW50ZXIpOwogICAgICAgIHNjYW5mKCIlZCIsJm4pOwogICAgfQogICAgcmV0dXJuIDA7Cn0KCg==