import java.io.PrintStream;
import java.util.Scanner;

public class Main {
	static final PrintStream out = System.out;
	static final Scanner sc = new Scanner(System.in);
	static final long Mod = 1000_000_007L;
	int a,b;

	public static void main(String[] args) {
		Main main = new Main();
		main.solve();
		System.exit(0);
	}

	void solve() {
		a = nextInt();
		b = nextInt();

		long res = 0;
		if(a < b) {
			for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			}
		}else {
			for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			}
		}

		out.println(res);
	}

	public int[] nextIntArray(int n) {
		int[] a = new int[n];
		for (int i = 0; i < n; i++)a[i] = nextInt();
		return a;
	}
	public long[] nextLongArray(int n) {
		long[] a = new long[n];
		for (int i = 0; i < n; i++)a[i] = nextLong();
		return a;
	}
	public int nextInt() {
		return Integer.parseInt(next());
	}
	public long nextLong() {
		return Long.parseLong(next());
	}
	public String next() {
		return sc.next();
	}

	long gcd(long m,long n) {
		if (m<n) return gcd(n,m);
		if (n==0)return m;
		return gcd(n,m%n);
	}

	long lcm(long m, long n) {
	        return m * n / gcd(m, n);
	}
} import java.io.PrintStream; PrintStream java.io import java.util.Scanner; Scanner java.util public class Main {
	static final PrintStream out = System.out;
	static final Scanner sc = new Scanner(System.in);
	static final long Mod = 1000_000_007L;
	int a,b;

	public static void main(String[] args) {
		Main main = new Main();
		main.solve();
		System.exit(0);
	}

	void solve() {
		a = nextInt();
		b = nextInt();

		long res = 0;
		if(a < b) {
			for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			}
		}else {
			for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			}
		}

		out.println(res);
	}

	public int[] nextIntArray(int n) {
		int[] a = new int[n];
		for (int i = 0; i < n; i++)a[i] = nextInt();
		return a;
	}
	public long[] nextLongArray(int n) {
		long[] a = new long[n];
		for (int i = 0; i < n; i++)a[i] = nextLong();
		return a;
	}
	public int nextInt() {
		return Integer.parseInt(next());
	}
	public long nextLong() {
		return Long.parseLong(next());
	}
	public String next() {
		return sc.next();
	}

	long gcd(long m,long n) {
		if (m<n) return gcd(n,m);
		if (n==0)return m;
		return gcd(n,m%n);
	}

	long lcm(long m, long n) {
	        return m * n / gcd(m, n);
	}
} Main static final PrintStream out = System.out; out System.out System System.out static final Scanner sc = new Scanner(System.in); sc new Scanner(System.in) static final long Mod = 1000_000_007L; Mod 1000_000_007L int a a b; b public static void main(String[] args) {
		Main main = new Main();
		main.solve();
		System.exit(0);
	} main {
		Main main = new Main();
		main.solve();
		System.exit(0);
	} Main main = new Main(); main new Main() main.solve() main.solve main System.exit(0) System.exit System 0 String[] args args void solve() {
		a = nextInt();
		b = nextInt();

		long res = 0;
		if(a < b) {
			for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			}
		}else {
			for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			}
		}

		out.println(res);
	} solve {
		a = nextInt();
		b = nextInt();

		long res = 0;
		if(a < b) {
			for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			}
		}else {
			for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			}
		}

		out.println(res);
	} a = nextInt() a nextInt() nextInt b = nextInt() b nextInt() nextInt long res = 0; res 0 if(a < b) {
			for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			}
		}else {
			for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			}
		} a < b a b {
			for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			}
		} for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			} int i=0,multi = 1; int i=0 i 0 multi = 1; multi 1 i<b i b i++,multi*=10 i++ i multi*=10 multi 10 {
				res += a * multi;
			} {
				res += a * multi;
			} res += a * multi res a * multi a multi {
			for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			}
		} for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			} int i=0,multi = 1; int i=0 i 0 multi = 1; multi 1 i<a i a i++,multi*=10 i++ i multi*=10 multi 10 {
				res += b * multi;
			} {
				res += b * multi;
			} res += b * multi res b * multi b multi out.println(res) out.println out res public int[] nextIntArray(int n) {
		int[] a = new int[n];
		for (int i = 0; i < n; i++)a[i] = nextInt();
		return a;
	} nextIntArray {
		int[] a = new int[n];
		for (int i = 0; i < n; i++)a[i] = nextInt();
		return a;
	} int[] a = new int[n]; a new int[n] n for (int i = 0; i < n; i++)a[i] = nextInt(); int i = 0; int i = 0; i 0 i < n i n i++ i++ i a[i] = nextInt(); a[i] = nextInt() a[i] a i nextInt() nextInt return a; a int n n public long[] nextLongArray(int n) {
		long[] a = new long[n];
		for (int i = 0; i < n; i++)a[i] = nextLong();
		return a;
	} nextLongArray {
		long[] a = new long[n];
		for (int i = 0; i < n; i++)a[i] = nextLong();
		return a;
	} long[] a = new long[n]; a new long[n] n for (int i = 0; i < n; i++)a[i] = nextLong(); int i = 0; int i = 0; i 0 i < n i n i++ i++ i a[i] = nextLong(); a[i] = nextLong() a[i] a i nextLong() nextLong return a; a int n n public int nextInt() {
		return Integer.parseInt(next());
	} nextInt {
		return Integer.parseInt(next());
	} return Integer.parseInt(next()); Integer.parseInt(next()) Integer.parseInt Integer next() next public long nextLong() {
		return Long.parseLong(next());
	} nextLong {
		return Long.parseLong(next());
	} return Long.parseLong(next()); Long.parseLong(next()) Long.parseLong Long next() next public String next() {
		return sc.next();
	} next {
		return sc.next();
	} return sc.next(); sc.next() sc.next sc long gcd(long m,long n) {
		if (m<n) return gcd(n,m);
		if (n==0)return m;
		return gcd(n,m%n);
	} gcd {
		if (m<n) return gcd(n,m);
		if (n==0)return m;
		return gcd(n,m%n);
	} if (m<n) return gcd(n,m); m<n m n return gcd(n,m); gcd(n,m) gcd n m if (n==0)return m; n==0 n 0 return m; m return gcd(n,m%n); gcd(n,m%n) gcd n m%n m n long m m long n n long lcm(long m, long n) {
	        return m * n / gcd(m, n);
	} lcm {
	        return m * n / gcd(m, n);
	} return m * n / gcd(m, n); m * n / gcd(m, n) m * n m n gcd(m, n) gcd m n long m m long n n public class Main {
	static final PrintStream out = System.out;
	static final Scanner sc = new Scanner(System.in);
	static final long Mod = 1000_000_007L;
	int a,b;

	public static void main(String[] args) {
		Main main = new Main();
		main.solve();
		System.exit(0);
	}

	void solve() {
		a = nextInt();
		b = nextInt();

		long res = 0;
		if(a < b) {
			for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			}
		}else {
			for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			}
		}

		out.println(res);
	}

	public int[] nextIntArray(int n) {
		int[] a = new int[n];
		for (int i = 0; i < n; i++)a[i] = nextInt();
		return a;
	}
	public long[] nextLongArray(int n) {
		long[] a = new long[n];
		for (int i = 0; i < n; i++)a[i] = nextLong();
		return a;
	}
	public int nextInt() {
		return Integer.parseInt(next());
	}
	public long nextLong() {
		return Long.parseLong(next());
	}
	public String next() {
		return sc.next();
	}

	long gcd(long m,long n) {
		if (m<n) return gcd(n,m);
		if (n==0)return m;
		return gcd(n,m%n);
	}

	long lcm(long m, long n) {
	        return m * n / gcd(m, n);
	}
} public class Main {
	static final PrintStream out = System.out;
	static final Scanner sc = new Scanner(System.in);
	static final long Mod = 1000_000_007L;
	int a,b;

	public static void main(String[] args) {
		Main main = new Main();
		main.solve();
		System.exit(0);
	}

	void solve() {
		a = nextInt();
		b = nextInt();

		long res = 0;
		if(a < b) {
			for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			}
		}else {
			for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			}
		}

		out.println(res);
	}

	public int[] nextIntArray(int n) {
		int[] a = new int[n];
		for (int i = 0; i < n; i++)a[i] = nextInt();
		return a;
	}
	public long[] nextLongArray(int n) {
		long[] a = new long[n];
		for (int i = 0; i < n; i++)a[i] = nextLong();
		return a;
	}
	public int nextInt() {
		return Integer.parseInt(next());
	}
	public long nextLong() {
		return Long.parseLong(next());
	}
	public String next() {
		return sc.next();
	}

	long gcd(long m,long n) {
		if (m<n) return gcd(n,m);
		if (n==0)return m;
		return gcd(n,m%n);
	}

	long lcm(long m, long n) {
	        return m * n / gcd(m, n);
	}
} Main
import java.io.PrintStream;
import java.util.Scanner;

public class Main {
	static final PrintStream out = System.out;
	static final Scanner sc = new Scanner(System.in);
	static final long Mod = 1000_000_007L;
	int a,b;

	public static void main(String[] args) {
		Main main = new Main();
		main.solve();
		System.exit(0);
	}

	void solve() {
		a = nextInt();
		b = nextInt();

		long res = 0;
		if(a < b) {
			for(int i=0,multi = 1;i<b;i++,multi*=10) {
				res += a * multi;
			}
		}else {
			for(int i=0,multi = 1;i<a;i++,multi*=10) {
				res += b * multi;
			}
		}

		out.println(res);
	}

	public int[] nextIntArray(int n) {
		int[] a = new int[n];
		for (int i = 0; i < n; i++)a[i] = nextInt();
		return a;
	}
	public long[] nextLongArray(int n) {
		long[] a = new long[n];
		for (int i = 0; i < n; i++)a[i] = nextLong();
		return a;
	}
	public int nextInt() {
		return Integer.parseInt(next());
	}
	public long nextLong() {
		return Long.parseLong(next());
	}
	public String next() {
		return sc.next();
	}

	long gcd(long m,long n) {
		if (m<n) return gcd(n,m);
		if (n==0)return m;
		return gcd(n,m%n);
	}

	long lcm(long m, long n) {
	        return m * n / gcd(m, n);
	}
}