Если вы используете C++, пожалуйста, выберите в качестве компилятора при отправке решения: C++14 (GCC 6-32) или C++17 (GCC 7-32). ×

C. Шестиугольник Геральда
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Геральду на день рождения подарили очень любопытный шестиугольник. Именинник выяснил, что все углы шестиугольника равны . Затем он измерил длины его сторон и обнаружил, что каждая из них равна целому числу сантиметров. На этом свойства самого шестиугольника закончились и Геральд решил на нём порисовать.

Он нарисовал несколько отрезков, параллельных сторонам этого шестиугольника, которые разбили шестиугольник на правильные треугольники со стороной в 1 сантиметр. Теперь Геральду интересно, сколько у него получилось треугольников. Но их так много, что Геральд всё время сбивается со счёта. Помогите имениннику посчитать треугольники.

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

В первой и единственной строке входных данных через пробел перечислены 6 целых чисел a1, a2, a3, a4, a5 и a6 (1 ≤ ai ≤ 1000) — длины сторон шестиугольника в сантиметрах в порядке обхода по часовой стрелке. Гарантируется, что шестиугольник с указанными свойствами и именно такими сторонами существует.

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

Выведите единственное целое число — количество треугольников со стороной 1 сантиметр, на которые оказался разбит шестиугольник.

Примеры
Входные данные
1 1 1 1 1 1
Выходные данные
6
Входные данные
1 2 1 2 1 2
Выходные данные
13
Примечание

Вот так выглядит шестиугольник Геральда в первом примере:

А вот так — во втором: