import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashSet;class Main {static char c[];static String s1;static int count = 0;static HashSet<String> set = new HashSet<>(); public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); s1 = br.readLine(); int n = Integer.parseInt(br.readLine()); while(n-->0){ String s2 = br.readLine(); c = s2.toCharArray(); boolean b [] = new boolean [8]; char d[] = new char[8]; f(d,b,0); count+=set.size(); set.clear(); } System.out.println(count);}private static void f(char[] d, boolean[] b, int i) {if(i==8){String s = new String (d);if(s1.contains(s))set.add(s);return;}HashSet<Character> set2 = new HashSet<>();for (int j = 0; j < b.length; j++) {if(!b[j] && set2.add(c[j])){b[j] = true;d[i] = c[j];f(d,b,i+1);b[j] = false;}}}}