Дана строка $$$s$$$ длины $$$n$$$, состоящая из символов 0 и/или 1. Необходимо ровно один раз выполнить операцию, состоящую из двух шагов:
Блок называется максимальным, если его нельзя расширить влево или вправо, добавив такой же символ. Например, после второго шага строка 100111011 превратится в 10101.
Посчитайте количество различных строк, которые могут получиться после выполнения этой операции.
В первой строке дано целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных.
Каждый набор входных данных состоит из одной строки, содержащей строку $$$s$$$ ($$$3 \le |s| \le 3 \cdot 10^5$$$), состоящую только из символов 0 и 1.
Дополнительные ограничения на входные данные:
Для каждого набора входных данных выведите одно целое число — количество различных строк, которые могут получиться после выполнения операции.
7001000010000101001110110010110101111
1223322
В первом наборе входных данных можно не менять ни одного символа или заменить второй символ. Перед сжатием получатся строки 001 и 011 соответственно. Обе строки после сжатия превратятся в 01, поэтому ответ равен $$$1$$$.
В пятом наборе входных данных:
Всего можно получить три различные строки: 101, 10101 и 1010101.
| Название |
|---|


