#include<stdio.h>

int tri[1111];

int main(){
  int i,j,num,max,ans;
  for(i=0;i<1111;i++) tri[i]=(i+1)*(i+1)*(i+1);
  do{
    scanf("%d",&num);
    if(!num) break;
    for(j=num-1,ans=tri[num-1];j>-1;j--){
      max=tri[num-1]-tri[j-1];
      for(i=0;max-tri[i]>0;i++);
      max-=tri[i-1];
      if(max<ans) ans=max;
    }
    printf("%d\n",ans);
  }while(1);
  return 0;
}