Факторизація#4237

Факторизація

1 секунда
64 мегабайти
Середня

Одного разу увечері до нас у гості зайшов математик Петров М.М. Він копався у першоджерелах PGP (version ) і виявив у реалізації алгоритму генерації відкритого ключа однієї дуже відомої криптографічної системи недолік.

Ключ у цій системі є добутком двох великих простих чисел, які не рівні одне одному. Петров стверджує, що якщо числа відрізняються несуттєво, то розкласти ключ не складає труднощів. Програміст, який написав модуль до PGP, під час генерації ключа не врахував цього, він лише перевіряв, що множники різні.

Вам задано число , яке являє собою добуток двох простих чисел та .

Ваша задача — знайти ці числа.

Вхідні дані

У першому і єдиному рядку вхідного файлу записано натуральне число (10^{98} \leq n \leq 10^{102}).

Вихідні дані

Якщо виявиться, що p = q, то виведіть у вихідний файл рядок Impossible. У протилежному випадку у першому рядку вихідного файлу виведіть менший множник, а у другому рядку — більший.

Приклади

Приклад 1

Loading
Loading

Примітка

Зображення, що знаходиться за посиланням, не містить жодної важливої інформації для розв'язання завдання.