#include<iostream>
using namespace std;
bool isMatch(const char*s,const char*p)
{
    if(*s=='\0'&&*p=='\0')
    {
        return true;
    }
    if(*s=='\0'||*p=='\0')
    {
        return false;
    }
    if(*p=='?')
    {
        if(!isdigit(*p)&&!isalpha(*s))
        {
            return false;
        }
        return isMatch(s+1, p+1);
    }
    else if(*p=='*')
    {
        while(*p!='\0'&&*p=='*')p++;
        p--;
        return isMatch(s,p+1)||isMatch(s+1,p+1)||isMatch(s+1,p);
    }
    else if(tolower(*p)==tolower(*s))
    {
        return isMatch(s+1,p+1);
    }
    return false;
}
int main()
{
    string p,s;
    while(cin>>p>>s)
    {
        bool res=isMatch(s.c_str(),p.c_str());
        if(res)
        {
            cout<<"true"<<endl;
        }
        else
        {
            cout<<"false"<<endl;
        }
    }
    return 0;
}