def make_prime(f, t): prime_list = [] for i in range(f, t + 1): if i == 1: continue if i == 2: prime_list.append(2) continue isPrime = True for j in range(2, (i // 2) + 1): if i % j == 0: isPrime = False break if isPrime: prime_list.append(i) return prime_list; def calc(p): sum = 0 while p > 0: sum += p % 10 p = p // 10 if sum >= 10: sum = calc(sum) return sum K = int(input()) N = int(input()) prime_list = make_prime(K, N) #print(prime_list) calc_result = [] for p in prime_list: calc_result.append(calc(p)) #print(calc_result) hash_list = [] for i in range(len(calc_result)): temp = [calc_result[i]] length = 1 s_idx = i for j in range(i + 1, len(calc_result)): if calc_result[j] in temp: break else: length += 1 temp.append(calc_result[j]) hash_list.append([s_idx, length]) #print(hash_list) max_sum = 0 max_idx = 0 for hash_item in hash_list: if hash_item[1] >= max_sum: max_sum = hash_item[1] max_idx = hash_item[0] print(prime_list[max_idx])