
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.StringTokenizer;

public class difficult {

    static HashSet<Pair> set1 = new HashSet<Pair>();
    static HashSet<Pair> set2 = new HashSet<Pair>();
    static HashSet<Pair> set3 = new HashSet<Pair>();

    public static void main(String[] args) throws Exception {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String line;
        StringTokenizer tokenizer;
        String token;
        List<Integer> all = new ArrayList<Integer>();
        while ((line = reader.readLine()) != null) {
//            tokenizer = new StringTokenizer(line);
//            while ((token = tokenizer.nextToken()) != null) {
//                all.add(Integer.valueOf(token));
//            }
            
            if (line.equals("0")) {
                break;
            }
            
            String[] parts = line.split(" ");
            for (String p : parts) {
                if (p.length() > 0) {
                    all.add(Integer.valueOf(p));
                }
            }
        }

        int numberOfProblems;
        int i = 0;
        int size = all.size();
        List<int[][]> list = new ArrayList<int[][]>();
        int[][] array;
        while (i < size) {
            numberOfProblems = all.get(i);
            array = new int[3][numberOfProblems];
            for (int j = 0; j < 3; j++) {
                for (int k = 0; k < numberOfProblems; k++) {
                    array[j][k] = all.get(i + 1 + k + (j * numberOfProblems));
                }
            }

            list.add(array);

            i = i + (3 * numberOfProblems) + 1;
        }

        for (int[][] a : list) {
            createPairs(a[0], set1);
            createPairs(a[1], set2);
            createPairs(a[2], set3);
            set1.retainAll(set2);
            set1.retainAll(set3);
            System.out.println(set1.size());
            set1 = new HashSet<Pair>();
            set2 = new HashSet<Pair>();
            set3 = new HashSet<Pair>();
        }

    }

    public static void createPairs(int[] numbers, HashSet<Pair> set) {
        for (int i = 0; i < numbers.length; i++) {
            for (int j = i + 1; j < numbers.length; j++) {
                set.add(new Pair(numbers[i], numbers[j]));
            }
        }
    }

    private static class Pair implements Comparable<Pair> {

        public int first;
        public int second;

        Pair(int first, int second) {
            this.first = first;
            this.second = second;
        }

        public int compareTo(Pair other) {
            return this.first == other.first && this.second == other.second ? 0 : -1345;
        }

        @Override
        public boolean equals(Object obj) {
            if (obj == null) {
                return false;
            }
            if (getClass() != obj.getClass()) {
                return false;
            }
            final Pair other = (Pair) obj;
            if (this.first != other.first) {
                return false;
            }
            if (this.second != other.second) {
                return false;
            }
            return true;
        }

        @Override
        public int hashCode() {
            int hash = 5;
            hash = 79 * hash + this.first;
            hash = 79 * hash + this.second;
            return hash;
        }
    }
}
