package yukicoder; import java.util.Scanner; public class Main{ public static void main(String[] args)throws Exception{ new Main().solve(); } int mod=1000003; void solve(){ Scanner sc=new Scanner(System.in); int l=sc.nextInt(); l=l/4; int count=0; bi:for(int i=1;;i++){ for(int j=i+1;;j++){ long gcd=GCD(i,j); if(gcd!=1)continue; if(j%2==1&&i%2==1)continue; if(2*i*j+2*j*j>l){ if(j==i+1)break bi; else break; } // System.out.println(2*i*j+" "+(j*j-i*i)+" "+(2*i*j)*(2*i*j)+(j*j-i*i)*(j*j-i*i)); count++; count%=mod; } } System.out.println(count); } long LCM(long t1,long t2){ long a=GCD(t1,t2); long tt1=t1/a; long tt2=t2/a; return tt1*tt2*a; } long GCD(long t1,long t2){ if(t1