/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.util.Scanner;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static boolean fun
(String s1,
int a
[]) {
for(int i=0;i<s1.length();i++)
{
if(s1.charAt(i)=='?')
{
continue;
}
else
{
if(a[s1.charAt(i)]>0)
{
a[s1.charAt(i)]--;
}
else
{
return false;
}
}
}
return true;
}
public static void main
(String args
[]) {
Scanner in
= new Scanner
(System.
in); int a[] = new int[256];
for(int i=0;i<s2.length();i++)
{
a[s2.charAt(i)]++;
}
int counter=0;
int b[] = new int[a.length];
for(int i=0;i<=s1.length()-s2.length();i++)
{
for(int j=0;j<256;j++)
{
b[j] = a[j];
}
if(fun(s1.substring(i,s2.length()+i),b))
counter++;
}
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLnV0aWwuU2Nhbm5lcjsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyBib29sZWFuIGZ1bihTdHJpbmcgczEsaW50IGFbXSkKCXsKCQlmb3IoaW50IGk9MDtpPHMxLmxlbmd0aCgpO2krKykKCQl7CgkJCWlmKHMxLmNoYXJBdChpKT09Jz8nKQoJCQl7CgkJCQljb250aW51ZTsKCQkJfQoJCQllbHNlCgkJCXsKCQkJCWlmKGFbczEuY2hhckF0KGkpXT4wKQoJCQkJewoJCQkJCWFbczEuY2hhckF0KGkpXS0tOwoJCQkJfQoJCQkJZWxzZQoJCQkJewoJCQkJCXJldHVybiBmYWxzZTsKCQkJCX0KCQkJfQoJCX0KCQlyZXR1cm4gdHJ1ZTsKCX0KCQoJCglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmcgYXJnc1tdKQoJewoJCVNjYW5uZXIgaW4gPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwoJCVN0cmluZyBzMSA9IGluLm5leHQoKTsKCQlTdHJpbmcgczIgPSBpbi5uZXh0KCk7CgkJaW50IGFbXSA9IG5ldyBpbnRbMjU2XTsKCQlmb3IoaW50IGk9MDtpPHMyLmxlbmd0aCgpO2krKykKCQl7CgkJCWFbczIuY2hhckF0KGkpXSsrOwoJCX0KCQlpbnQgY291bnRlcj0wOwoJCWludCBiW10gPSBuZXcgaW50W2EubGVuZ3RoXTsKCQlmb3IoaW50IGk9MDtpPD1zMS5sZW5ndGgoKS1zMi5sZW5ndGgoKTtpKyspCgkJewoJCQlmb3IoaW50IGo9MDtqPDI1NjtqKyspCgkJCXsKCQkJCWJbal0gPSBhW2pdOwoJCQl9CgkJCWlmKGZ1bihzMS5zdWJzdHJpbmcoaSxzMi5sZW5ndGgoKStpKSxiKSkKCQkJCWNvdW50ZXIrKzsKCQl9CgkJU3lzdGVtLm91dC5wcmludGxuKGNvdW50ZXIpOwoJfQoKfQ==