Дано два рядки і . Необхідно знайти всі позиції, в яких рядок зустрічається в рядку як підрядок.
Перший рядок містить рядок (1 \leq |A| \leq 10^5).Другий рядок містить рядок (1 \leq |B| \leq 10^5).
У першому рядку виведіть кількість входжень рядка в рядок як підрядка.У другому рядку виведіть через пропуск позиції всіх входжень у порядку зростання.
Формат вхідних і вихідних даних має відповідати зразку.
Приклад 1