import std.algorithm;
import core.stdc.stdio;

void main(){
	while(1){
		int n,m,s;
		scanf("%d%d%d",&n,&m,&s);
		if(n==0&&m==0&&s==0)
			break;
		int[] now = new int[(m+1)*(s+1)];
		int[] next = new int[(m+1)*(s+1)];
		now[0] = 1;
		int minM=0;
		int minS=0;
		for(int _=0;_<n*n;_++){
			next[] = 0;
			int nmm = 114514;
			int nms = 114514;
			for(int k=1;k<=m;k++){
				for(int j=minS;j+k*(n*n-_)+(n*n-_)*(n*n-_-1)/2<=s;j++){
					int ns = j+k*(n*n-_);
					for(int i=minM;i+k+(n*n-_-1)<=m;i++){
						int nm = i+k;
						nmm = min(nmm,nm);
						nms = min(nms,ns);
						next[nm*(s+1)+ns] = (next[nm*(s+1)+ns]+now[i*(s+1)+j])%100000;
					}
				}
			}
			swap(now,next);
			minM = nmm;
			minS = nms;
		}
		int ans=0;
		for(int i=1;i<=m;i++)
			ans = (ans+now[i*(s+1)+s])%100000;
		printf("%d\n",ans);
	}
}