Освітня компанія All Computer Math (ACM) має розділ про множення цілих чисел. Вона хоче відображати обчислення у традиційному шкільному форматі, як у наступному прикладі обчислення 432 \times 5678:
432
× 5678
-------
3456
3024
2592
2160
-------
2452896Зверніть увагу, що остаточний добуток виводиться без початкових пробілів, але початкові пробіли потрібні на деяких інших рядках для збереження вирівнювання. За нашими регіональними правилами, у жодному рядку не повинно бути пробілів у кінці рядка. Рядки з тире мають довжину, яка відповідає остаточному добутку.
Як спеціальний випадок, коли одна з цифр другого множника є нулем, вона породжує лише один у часткових відповідях, і наступний частковий результат повинен бути на тому ж рядку, а не з нового рядка. Наприклад, розглянемо добуток 200001 \times 90040:
200001
× 90040
-----------
8000040
180000900
-----------
18008090040Найменш значуща цифра другого множника — , тому у найправішому стовпчику першого часткового добутку з'являється . Замість переходу на новий рядок, частковий добуток 4 \times 200001 розміщується на тому ж рядку, що й цей . Третя та четверта справа цифри другого множника також нулі, кожна з яких призводить до у другому частковому добутку на тому ж рядку, що й 9 \times 200001.
В останньому особливому випадку, якщо є лише один рядок у частковій відповіді, це є повна відповідь, тож немає потреби обчислювати суму. Наприклад, 246 \times 70 має бути відформатовано так:
246
× 70
-----
17220Ваше завдання — створювати такі виводи для цих множень.
Вхід містить один або кілька наборів даних. Кожен набір даних складається з двох додатних цілих чисел в одному рядку, які задають множники у потрібному порядку. Жодне з чисел не матиме більш ніж цифр і жодне не матиме початкових нулів. Після останнього набору даних слідує рядок, що містить лише .
Для кожного набору даних виведіть рядок-мітку, що містить "Problem ", а також номер задачі, після чого — повністю оформлене множення відповідно до описаних правил форматування.
Увага: Стандартний тип int не здатний правильно обробляти -значні числа. Слід використовувати -бітний тип (наприклад, long у Java або long long у C++).
Приклад 1