İki ədəd və sətiri verilir, hər iki sətirin bütün sonluqlarını saxlayan sıxılmış sonluq ağacı qurun.
Elə bir ağac tapın ki, o, mümkün olan ən az sayda zirvəni ehtiva etsin.
Birinci sətirdə sətiri verilir (1 \leq |\textbf{s}| \leq 10^5), burada sonuncu simvol ""-dir, qalan bütün simvollar isə kiçik latın hərfləridir.
İkinci sətirdə sətiri verilir (1 \leq |\textbf{t}| \leq 10^5), burada sonuncu simvol "\textbf{#}"-dır, qalan bütün simvollar isə kiçik latın hərfləridir.
Ağacın zirvələrini -dan n-1-ə qədər dərinlik üzrə öncəli (DFS) qaydada, hər bir zirvədən çıxan qolları ASCII kodlarına əsasən leksikqrafik ardıcıllıqla gəzərək nömrələyin.
Birinci sətirdə — ağacın zirvələrinin sayını çap edin. Növbəti n-1 sətirin hər birində, nömrələr üzrə artan qaydada (kökdən başqa), hər bir zirvənin təsvirini verin.
Hər bir zirvə təsvirində dörd tam ədəd olur: , , , , burada (0 \leq p < n, p \neq v) — cari zirvə -nin valideynidir, (0 \leq w \leq 1) — qollardakı altsətirlərin hansı sətirdən götürüldüyünü göstərən ədəddir. Əgər w = 0-dırsa, -dən -yə gedən qolda \textbf{s}[lf \ldots rg-1] alt sətri yerləşir (0 \leq lf < rg \leq |\textbf{s}|), əgər w = 1-dirsə, \textbf{t}[lf \ldots rg-1] alt sətri yerləşir (0 \leq lf < rg \leq |\textbf{t}|).
Nümunə 1
Nümunə 2
Alt sətri \textbf{s}[l \ldots r] (0 \leq l \leq r < |\textbf{s}|) deyərkən, \textbf{s}_l\textbf{s}_{l+1}\ldots\textbf{s}_r nəzərdə tutulur, burada \textbf{s} = s_0s_1 \ldots s_{|\textbf{s}|-1} və -in uzunluğudur.