B. Большие данные
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
512 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Даны массив a длины n, и массив b длины m. Все элементы обоих массивов — цифры от 0 до 9 включительно. Составим по этим массивам таблицу c размера n × m, где элемент в i-й строке и j-м столбце определяется формулой ci, j = ai·109 + bj.

Рассмотрим всевозможные пути из клетки c1, 1 в клетку cn, m, состоящие только из перемещений вниз и вправо (то есть, из клетки ci, j можно переходить только в клетки ci + 1, j и ci, j + 1, если эти клетки находятся внутри таблицы). Среди всех этих путей выберите такой, что сумма чисел в посещённых клетках максимальна, и выведите эту сумму.

Входные данные

Первая строка содержит два целых числа n и m — размеры массивов a и b соответственно (1 ≤ n, m ≤ 100 000).

Во второй строке записано n целых чисел a1, ..., an (0 ≤ ai ≤ 9).

Во третьей строке записано m целых чисел b1, ..., bm (0 ≤ bj ≤ 9).

Выходные данные

Выведите одно число — максимальную сумму чисел в клетках среди путей в таблице c, удовлетворяющих правилам выше.

Примеры
Входные данные
3 4
1 1 1
1 1 1 1
Выходные данные
6000000006
Входные данные
5 3
1 2 3 4 5
6 7 8
Выходные данные
25000000045
Входные данные
7 4
0 7 1 7 6 7 6
4 1 9 7
Выходные данные
55000000068
Примечание

Во втором примере оптимальный путь сначала идёт вниз от клетки (1, 1) до клетки (5, 1), а затем до упора направо до клетки (5, 3).

В третьем примере оптимальным ответом является путь

.