program kmp;
var re,c,d,e,f,g,h,i,j,k:longint;
s,t,r:string;
next:array[1.. 10000] of longint;
procedure getnext;
var i,j,k:longint;
begin
j:=1;
k:=0;
while j<=length(t) do begin
if (k=0) or (t[j]=t[k]) then begin
inc(j);
inc(k);
next[j]:=k;
end
else k:=next[k];
end;
end;
function index(p,q:string):longint;
var i,j:longint;
begin
getnext;
index:=0;
i:=1;
j:=1;
while (i<=length(s)) and (j<=length(t)) do begin
if (j=0) or (s[i]=t[j]) then begin
inc(i);
inc(j);
end
else j:=next[j];
end;
if j>length(t) then index:=i-length(t);
end;
begin
fillchar(next,sizeof(next),0);
readln(s);
readln(t);
re:=index(s,t);
if re>0 then begin
writeln(re);
end
else begin
writeln('Error');
end;
end.
var re,c,d,e,f,g,h,i,j,k:longint;
s,t,r:string;
next:array[1.. 10000] of longint;
procedure getnext;
var i,j,k:longint;
begin
j:=1;
k:=0;
while j<=length(t) do begin
if (k=0) or (t[j]=t[k]) then begin
inc(j);
inc(k);
next[j]:=k;
end
else k:=next[k];
end;
end;
function index(p,q:string):longint;
var i,j:longint;
begin
getnext;
index:=0;
i:=1;
j:=1;
while (i<=length(s)) and (j<=length(t)) do begin
if (j=0) or (s[i]=t[j]) then begin
inc(i);
inc(j);
end
else j:=next[j];
end;
if j>length(t) then index:=i-length(t);
end;
begin
fillchar(next,sizeof(next),0);
readln(s);
readln(t);
re:=index(s,t);
if re>0 then begin
writeln(re);
end
else begin
writeln('Error');
end;
end.