F - Buscando palabras II

Languages: C, C++, Java, Haskell, Pascal, Python, JavaScript, Tiger, C#
Time & Memory limits: (details)

Fito está buscando algunos conceptos de Programación Orientada a Objetos en uno de sus libros preferidos. El libro no es muy grande pero el programa que usa Fito para leer pdfs es muy lento cuando de encontrar palabras se trata. Fito por otra parte no ayuda mucho, porque su mala memoria lo obliga a buscar reiteradamente palabras parecidas hasta encontrar la correcta.

Cuando lleva un tiempo en este proceso agotador Fito decide hacer un buscador mejor él mismo. El buscador de Fito va a usar como patrón una especie de expresión regular. Este patrón es comparado con cada substring del texto y si son iguales se imprime como una ocurrencia. En el patrón puede aparecer además de las letras el símbolo $*$. Este símbolo significa que en esa posición la palabra puede tener cualquier letra.

Ayuda a Fito a construir un programa que calcula para un patrón cuantas ocurrencias puede encontrar este algoritmo en un texto.

Input

La primera línea de la entrada es un string $P$ $(1 \leq |P| \leq 100)$ representando el patrón. Le sigue una línea con el texto $T$ $(1 \leq |T| \leq 10^5)$ en el que se busca el patrón. Las letras que aparecen en el texto y en el patrón son letras minúsculas del alfabeto latino.

Output

Se debe imprimir la cantidad de veces que ocurre el patrón $P$ en el texto $T$.

Sample test(s)

Input
a*b abbacbadb
Output
3