//IN THE NAMME OF GOD #include <bits/stdc++.h> using namespace std; vector < pair < double , int > > v; const int maxn=1e6; int del=10513; double sum[maxn+10]; void qqsort(int l,int r){ if(r<=l) return ; int p=l; for(int i=l+1;i<=r;i++){ if(v[i].first>v[p].first || (v[i].first==v[p].first && v[i].second<v[p].second)){ swap(v[i].first,v[p+1].first); swap(v[p].first,v[p+1].first); swap(v[i].second,v[p+1].second); swap(v[p].second,v[p+1].second); p++; } } qqsort(l,p-1); qqsort(p+1,r); } int main(){ for(int i=1;i<=maxn;i++){ for(int j=i+i;j<=maxn;j+=i) sum[j]+=i; if(sum[i]>=i){ v.push_back(make_pair(double(sum[i]/i),i)); } } qqsort(0,v.size()-1); int V=v[12].second; V%=del; int t=V*V;t%=del; V*=t;V%=del; cout<<(V+t)%del<<endl; return 0; }