import java.util.*;
public class Main{
	public static void main(String args[]) {
		Scanner sc=new Scanner(System.in);
		int L=sc.nextInt();
		int R=sc.nextInt();
		int Mi,Mj;
		int answer=Math.floorMod(L*R, 2019);
		sc.close();
		for(int i=L;i<R;i++) {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		}
		System.out.println(answer);
	}
} import java.util.*; util.* java public class Main{
	public static void main(String args[]) {
		Scanner sc=new Scanner(System.in);
		int L=sc.nextInt();
		int R=sc.nextInt();
		int Mi,Mj;
		int answer=Math.floorMod(L*R, 2019);
		sc.close();
		for(int i=L;i<R;i++) {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		}
		System.out.println(answer);
	}
} Main public static void main(String args[]) {
		Scanner sc=new Scanner(System.in);
		int L=sc.nextInt();
		int R=sc.nextInt();
		int Mi,Mj;
		int answer=Math.floorMod(L*R, 2019);
		sc.close();
		for(int i=L;i<R;i++) {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		}
		System.out.println(answer);
	} main {
		Scanner sc=new Scanner(System.in);
		int L=sc.nextInt();
		int R=sc.nextInt();
		int Mi,Mj;
		int answer=Math.floorMod(L*R, 2019);
		sc.close();
		for(int i=L;i<R;i++) {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		}
		System.out.println(answer);
	} Scanner sc=new Scanner(System.in); sc new Scanner(System.in) int L=sc.nextInt(); L sc.nextInt() sc.nextInt sc int R=sc.nextInt(); R sc.nextInt() sc.nextInt sc int Mi Mi Mj; Mj int answer=Math.floorMod(L*R, 2019); answer Math.floorMod(L*R, 2019) Math.floorMod Math L*R L R 2019 sc.close() sc.close sc for(int i=L;i<R;i++) {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		} int i=L; int i=L; i L i<R i R i++ i++ i {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		} {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		} if((R-L+1)>=2019) {
				answer=0;
				break;
			} (R-L+1)>=2019 (R-L+1) R-L R L 1 2019 {
				answer=0;
				break;
			} answer=0 answer 0 break; for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			} int j=(i+1); int j=(i+1); j (i+1) i 1 j<=R j R j++ j++ j {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			} {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			} Mi=Math.floorMod(i, 2019) Mi Math.floorMod(i, 2019) Math.floorMod Math i 2019 Mj=Math.floorMod(j, 2019) Mj Math.floorMod(j, 2019) Math.floorMod Math j 2019 if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				} Math.floorMod(Mi*Mj, 2019)<answer Math.floorMod(Mi*Mj, 2019) Math.floorMod Math Mi*Mj Mi Mj 2019 answer {
					answer=Math.floorMod(Mi*Mj, 2019);
				} answer=Math.floorMod(Mi*Mj, 2019) answer Math.floorMod(Mi*Mj, 2019) Math.floorMod Math Mi*Mj Mi Mj 2019 System.out.println(answer) System.out.println System.out System System.out answer String args[] args public class Main{
	public static void main(String args[]) {
		Scanner sc=new Scanner(System.in);
		int L=sc.nextInt();
		int R=sc.nextInt();
		int Mi,Mj;
		int answer=Math.floorMod(L*R, 2019);
		sc.close();
		for(int i=L;i<R;i++) {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		}
		System.out.println(answer);
	}
} public class Main{
	public static void main(String args[]) {
		Scanner sc=new Scanner(System.in);
		int L=sc.nextInt();
		int R=sc.nextInt();
		int Mi,Mj;
		int answer=Math.floorMod(L*R, 2019);
		sc.close();
		for(int i=L;i<R;i++) {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		}
		System.out.println(answer);
	}
} Main
import java.util.*;
public class Main{
	public static void main(String args[]) {
		Scanner sc=new Scanner(System.in);
		int L=sc.nextInt();
		int R=sc.nextInt();
		int Mi,Mj;
		int answer=Math.floorMod(L*R, 2019);
		sc.close();
		for(int i=L;i<R;i++) {
			if((R-L+1)>=2019) {
				answer=0;
				break;
			}
			for(int j=(i+1);j<=R;j++) {
				Mi=Math.floorMod(i, 2019);
				Mj=Math.floorMod(j, 2019);
				if(Math.floorMod(Mi*Mj, 2019)<answer) {
					answer=Math.floorMod(Mi*Mj, 2019);
				}
			}
		}
		System.out.println(answer);
	}
}