Let *s* be a string whose length equals *n*. Its characters are numbered from 0 to *n* - 1, *i* and *j* are integers, 0 ≤ *i* &lt; *j* &lt; *n*. Let's define function *f* as follows:

*f*(*s*, *i*, *j*) = *s*[*i* + 1... *j* - 1] + *r*(*s*[*j*... *n* - 1]) + *r*(*s*[0... *i*]).

Here *s*[*p*... *q*] is a substring of string *s*, that starts in position *p* and ends in position *q* (inclusive); "+" is the string concatenation operator; *r*(*x*) is a string resulting from writing the characters of the *x* string in the reverse order. If *j* = *i* + 1, then the substring *s*[*i* + 1... *j* - 1] is considered empty.

You are given two strings *a* and *b*. Find such values of *i* and *j*, that *f*(*a*, *i*, *j*) = *b*. Number *i* should be maximally possible. If for this *i* there exists several valid values of *j*, choose the minimal *j*.
The first two input lines are non-empty strings *a* and *b* correspondingly. Each string's length does not exceed 10<sup class="upper-index">6</sup> characters. The strings can contain any characters with ASCII codes from 32 to 126 inclusive.
print("_RANDOM_GUESS_1689416122.0896587")# 1689416122.089679