var
s,p:string;
i,j,k:longint;
next:array[1..1000]of longint;
begin
readln(s);
readln(p);
j:=1;
k:=0;
next[j]:=k;
while j<=length(p) do
begin
if (k=0) or (p[j]=p[k]) then
begin
inc(j);
inc(k);
next[j]:=k;
end
else
k:=next[k];
end;
i:=1;
j:=1;
while (i<=length(s)) and (j<=length(p)) do
if s[i]=p[j] then
begin
inc(i);
inc(j);
end
else
j:=next[j];
if j>length(p) then
writeln(i-length(p))
else
writeln(0);
end.
s,p:string;
i,j,k:longint;
next:array[1..1000]of longint;
begin
readln(s);
readln(p);
j:=1;
k:=0;
next[j]:=k;
while j<=length(p) do
begin
if (k=0) or (p[j]=p[k]) then
begin
inc(j);
inc(k);
next[j]:=k;
end
else
k:=next[k];
end;
i:=1;
j:=1;
while (i<=length(s)) and (j<=length(p)) do
if s[i]=p[j] then
begin
inc(i);
inc(j);
end
else
j:=next[j];
if j>length(p) then
writeln(i-length(p))
else
writeln(0);
end.