Недавно в Немалополисе разработали инновационный метод телепортации. Для повышения комфорта жителей в городе было установлено $$$n$$$ телепортов, пронумерованных от $$$1$$$ до $$$n$$$.
Учёные-немалисты рассчитали ограничения, которые обеспечат безопасность телепортационной сети. Для каждого телепорта было выписано слово $$$s_i$$$ соответственно. За $$$|s_i|$$$ они обозначили длину строки $$$i$$$. Также они выбрали целое число $$$k$$$. Учёные разрешили горожанам телепортироваться из телепорта $$$i$$$ в телепорт $$$j$$$ при условии, что пассажир предъявит такое число $$$m$$$, что:
При этом стоимость такой телепортации составляет $$$m$$$ немалей (местная валюта).
Например, для $$$s_i =$$$ «abcde» и $$$s_j =$$$ «cdef» подходит только $$$m = 3$$$, и стоить такая телепортация будет $$$3$$$ немаля.
Мэр города, Немалуй, собирает сведения об эффективности телепортов. Для каждого телепорта $$$i$$$ ($$$2 \le i \le n$$$) вам нужно найти минимальное число немалей, необходимое для того, чтобы добраться от $$$1$$$-го телепорта до телепорта $$$i$$$, совершив какое-то количество телепортаций.
Каждый тест состоит из нескольких наборов входных данных. Первая строка содержит одно целое число $$$t$$$ ($$$1 \le t \le 2 \cdot 10^4$$$) — количество наборов входных данных. Далее идут описания наборов входных данных.
Первая строка каждого набора входных данных содержит два целых числа $$$n$$$ ($$$2 \le n \le 3 \cdot 10^5$$$) и $$$k$$$ ($$$1 \le k \le 3 \cdot 10^5$$$) — количество телепортов и ограничение на стоимость телепортации соответственно.
Следующие $$$n$$$ строк каждого набора входных данных содержат $$$s_i$$$ ($$$1 \le |s_i| \le 3 \cdot 10^5$$$), состоящие только из строчных латинских букв — надписи над соответствующими телепортами.
Гарантируется, что сумма $$$|s_i|$$$ по всем наборам входных данных не превышает $$$3 \cdot 10^5$$$.
Для каждого набора входных данных в отдельной строке выведите $$$n - 1$$$ число — стоимости проезда от телепорта $$$1$$$ до телепортов $$$2, 3, 4, \dots, n$$$ соответственно. Если до какого-то телепорта никак нельзя доехать, выведите вместо стоимости проезда до него число $$$-1$$$.
55 1skolkonemalokolbazamkadomaramzamzam4 2arbuzikikrapupupukokos2 1uwuuuuuuwu2 1uuuuuuuuuu4 7extraordinarilymagnificentunbelievablilityoverenthusiasticallyhyperactiveoverenthusiasticallyhyperactiveperpetualmotionunintentionallymisunderstoodunintentionallymisunderstoodhilariousscenariofantasticallyextraordinarifantasticallyextraordinarilybizarreadventure
-1 2 6 3 2 -1 -1 3 5 31 59 85
В первом наборе входных данных мы можем телепортироваться: «skolko» $$$\overset{2}{\to}$$$ «kolba» $$$\overset{1}{\to}$$$ «aramzamzam» $$$\overset{3}{\to}$$$ «zamkadom».
Во втором наборе входных данных мы не можем попасть из «arbuzik» в «kokos», так как проезд между ними стоит $$$1$$$, что меньше $$$k = 2$$$.
В третьем наборе входных данных мы не можем попасть из «uwuuu» в «uuuwu», предъявив $$$m = 1$$$ или $$$m = 2$$$, так как условие на то, что суффикс $$$s_i$$$ длины $$$m + 1$$$ не совпадает с префиксом $$$s_j$$$ длины $$$m + 1$$$, не выполнено.
В четвёртом наборе входных данных мы можем попасть из «uuuuu» в «uuuuu» только при $$$m = 5$$$, так как при меньших условие на $$$m + 1$$$ не выполнено.
Пятый набор входных данных настолько немалый, что его мы комментировать не будем.
| Name |
|---|


