#include
#include<unordered_map>
#include
using namespace std;
int main()
{ int a=99999;
int b=-1;
int comp=99999;
int ax,bx=0;
string ip;
getline(cin,ip);
char arr[ip.length()+1];
int j=0;
for(int i=0;i<ip.length();i++)
{
if(ip[i]!=’ ')
{
arr[j++]=ip[i];
}
}
arr[j]='\0';
string x=arr;
string y;
getline(cin,y);
unordered_map<char,int> m;
int ctr=0;
for(int i=0;i<y.length();i++)
{
if(y[i]!=' ')
{ ctr++;
m[y[i]]=-1;
}
}
for(int i=0;i<x.length();i++)
{
if(x[i]!=' ')
{ auto it=m.find(x[i]);
if(it!=m.end())
{ if(m[x[i]]==-1)
{
ctr--;
}
m[x[i]]=i;
}
if(ctr==0)
{ int min=999,max=-1;
for(auto it=m.begin();it!=m.end();it++)
{
if((*it).second<min)
{
min=(*it).second;
}
if((*it).second>max)
{
max=(*it).second;
}
}
comp=(comp>(max-min))?(max-min):comp;
if(comp==max-min)
{
a=min;
b=max;
}
}
}
}
for(int i=a;i<=b;i++)
{
cout<<x[i];
}
if(ctr!=0)
{
cout<<"No string"<<endl;
}
}