# 1-dimension Rolling Hash class RollingHash: def __init__(self, s, base, mod): self.mod = mod self.pw = pw = [1] * (len(s) + 1) l = len(s) self.h = h = [0] * (l + 1) v = 0 for i in range(l): h[i + 1] = v = (v * base + ord(s[i])) % mod v = 1 for i in range(l): pw[i + 1] = v = v * base % mod def get(self, l, r): return (self.h[r] - self.h[l] * self.pw[r - l]) % self.mod # 非クラス版 base = 37 mod = 10 ** 9 + 9 S = input() N = len(S) RHS = RollingHash(S, base, mod) M = int(input()) ans = 0 for i in range(M): C = input() K = len(C) RH = RollingHash(C, base, mod) hash = RH.get(0, K) for i in range(N - K + 1): if RHS.get(i, i + K) == hash: ans += 1 print(ans)