import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        // 输入数据
        Scanner in = new Scanner(System.in);
        String a = in.next();
        String b = in.next();
        
        // 算法核心
        // 采用HashSet记录匹配成功的字符串,实现去重的目的
        HashSet<String> set = new HashSet<>();
        int al = a.length();
        int bl = b.length();
        for (int aStart = 0; aStart < al - bl + 1; aStart++) {
            // aStart表示新一轮匹配在a上的起点下标,要与b的0位置对齐
            boolean yes = true;
            for (int ai = aStart, bi = 0; bi < bl; ai++, bi++) {
                // 构造字符匹配成功的条件
                boolean match = b.charAt(bi) == '?' || b.charAt(bi) == a.charAt(ai);
                if (!match) {
                    // 若匹配失败
                    yes = false;
                    break;
                }
            }
            if (yes) {
                // 匹配成功时,对应在a上就是aStart ~ aStart + bl - 1上,
                // 将其记录进set中
                set.add(a.substring(aStart, aStart + bl));
            }
        }

        // 结果输出
        System.out.println(set.size());
    }
}