Не така вже й тривіальна проблема
У XML деякі символи мають спеціальні значення. Наприклад, символ "<" використовується для початку стартових і кінцевих тегів. XML надає засоби для включення тексту зі спеціальними символами, замінюючи їх на визначені сутності "entity_name;". Існує п'ять таких сутностей: lt; представляє "<" (менше), gt; представляє ">" (більше), amp; представляє "" (амперсанд), apos; представляє "’" (одинарна лапка), quot; представляє """ (подвійна лапка). Назвемо цю трансформацію функцією XMLEncode(S), де S — вхідний рядок. XMLEncode() може бути застосована до вхідних даних кілька разів.
Наприклад, якщо S дорівнює "2<3<4", то XMLEncode(S) буде "2lt;3lt;4", а XMLEncode(XMLEncode(S)) буде "2amp;lt;3amp;lt;4".
Напишіть програму, яка за заданим рядком R визначить максимальну кількість викликів функції XMLEncode.
Вхідні дані
Єдиний рядок вхідного файлу містить рядок R (1 ≤ length(R) ≤ 100000). Рядок може містити символи з ASCII кодами від 32 до 127.
Вихідні дані
Вихідний файл повинен містити одне ціле число — кількість викликів функції XMLEncode, або -1, якщо рядок може бути закодований нескінченно.