import java.util.*;
public class Main{
  public static void main(String[] args){
      Scanner sc = new Scanner(System.in);
      int n=sc.nextInt();
      int m=sc.nextInt();
      Map<Integer, Integer>map = new HashMap<>();
      List<int[]> intList = new ArrayList<>();
      for(int i=0; i<n; i++){
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      }
      for(int i=1; i<=m; i++){
        map.put(i, 0);
      }
      for(int[] array: intList){
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      }
    int count = 0;
      for(int i=1; i<=m; i++){
        if(map.get(i) == n){
          count++;
        }
      }
      System.out.println(count);
  }
} import java.util.*; util.* java public class Main{
  public static void main(String[] args){
      Scanner sc = new Scanner(System.in);
      int n=sc.nextInt();
      int m=sc.nextInt();
      Map<Integer, Integer>map = new HashMap<>();
      List<int[]> intList = new ArrayList<>();
      for(int i=0; i<n; i++){
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      }
      for(int i=1; i<=m; i++){
        map.put(i, 0);
      }
      for(int[] array: intList){
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      }
    int count = 0;
      for(int i=1; i<=m; i++){
        if(map.get(i) == n){
          count++;
        }
      }
      System.out.println(count);
  }
} Main public static void main(String[] args){
      Scanner sc = new Scanner(System.in);
      int n=sc.nextInt();
      int m=sc.nextInt();
      Map<Integer, Integer>map = new HashMap<>();
      List<int[]> intList = new ArrayList<>();
      for(int i=0; i<n; i++){
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      }
      for(int i=1; i<=m; i++){
        map.put(i, 0);
      }
      for(int[] array: intList){
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      }
    int count = 0;
      for(int i=1; i<=m; i++){
        if(map.get(i) == n){
          count++;
        }
      }
      System.out.println(count);
  } main {
      Scanner sc = new Scanner(System.in);
      int n=sc.nextInt();
      int m=sc.nextInt();
      Map<Integer, Integer>map = new HashMap<>();
      List<int[]> intList = new ArrayList<>();
      for(int i=0; i<n; i++){
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      }
      for(int i=1; i<=m; i++){
        map.put(i, 0);
      }
      for(int[] array: intList){
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      }
    int count = 0;
      for(int i=1; i<=m; i++){
        if(map.get(i) == n){
          count++;
        }
      }
      System.out.println(count);
  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n=sc.nextInt(); n sc.nextInt() sc.nextInt sc int m=sc.nextInt(); m sc.nextInt() sc.nextInt sc Map<Integer, Integer>map = new HashMap<>(); map new HashMap<>() List<int[]> intList = new ArrayList<>(); intList new ArrayList<>() for(int i=0; i<n; i++){
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      } int i=0; int i=0; i 0 i<n i n i++ i++ i {
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      } {
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      } int ki = sc.nextInt(); ki sc.nextInt() sc.nextInt sc int[] array = new int[ki]; array new int[ki] ki for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            } int j=0; int j=0; j 0 j<ki j ki j++ j++ j {
              array[j] = sc.nextInt();
            } {
              array[j] = sc.nextInt();
            } array[j] = sc.nextInt() array[j] array j sc.nextInt() sc.nextInt sc intList.add(array) intList.add intList array for(int i=1; i<=m; i++){
        map.put(i, 0);
      } int i=1; int i=1; i 1 i<=m i m i++ i++ i {
        map.put(i, 0);
      } {
        map.put(i, 0);
      } map.put(i, 0) map.put map i 0 for(int[] array: intList){
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      } int[] array intList {
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      } {
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      } for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        } int i array {
          int j = map.get(i) + 1;
          map.put(i, j);
        } {
          int j = map.get(i) + 1;
          map.put(i, j);
        } int j = map.get(i) + 1; j map.get(i) + 1 map.get(i) map.get map i 1 map.put(i, j) map.put map i j int count = 0; count 0 for(int i=1; i<=m; i++){
        if(map.get(i) == n){
          count++;
        }
      } int i=1; int i=1; i 1 i<=m i m i++ i++ i {
        if(map.get(i) == n){
          count++;
        }
      } {
        if(map.get(i) == n){
          count++;
        }
      } if(map.get(i) == n){
          count++;
        } map.get(i) == n map.get(i) map.get map i n {
          count++;
        } count++ count System.out.println(count) System.out.println System.out System System.out count String[] args args public class Main{
  public static void main(String[] args){
      Scanner sc = new Scanner(System.in);
      int n=sc.nextInt();
      int m=sc.nextInt();
      Map<Integer, Integer>map = new HashMap<>();
      List<int[]> intList = new ArrayList<>();
      for(int i=0; i<n; i++){
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      }
      for(int i=1; i<=m; i++){
        map.put(i, 0);
      }
      for(int[] array: intList){
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      }
    int count = 0;
      for(int i=1; i<=m; i++){
        if(map.get(i) == n){
          count++;
        }
      }
      System.out.println(count);
  }
} public class Main{
  public static void main(String[] args){
      Scanner sc = new Scanner(System.in);
      int n=sc.nextInt();
      int m=sc.nextInt();
      Map<Integer, Integer>map = new HashMap<>();
      List<int[]> intList = new ArrayList<>();
      for(int i=0; i<n; i++){
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      }
      for(int i=1; i<=m; i++){
        map.put(i, 0);
      }
      for(int[] array: intList){
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      }
    int count = 0;
      for(int i=1; i<=m; i++){
        if(map.get(i) == n){
          count++;
        }
      }
      System.out.println(count);
  }
} Main
import java.util.*;
public class Main{
  public static void main(String[] args){
      Scanner sc = new Scanner(System.in);
      int n=sc.nextInt();
      int m=sc.nextInt();
      Map<Integer, Integer>map = new HashMap<>();
      List<int[]> intList = new ArrayList<>();
      for(int i=0; i<n; i++){
        int ki = sc.nextInt();
        int[] array = new int[ki];
        	for(int j=0; j<ki; j++){
              array[j] = sc.nextInt();
            }
        intList.add(array);
      }
      for(int i=1; i<=m; i++){
        map.put(i, 0);
      }
      for(int[] array: intList){
        for(int i: array){
          int j = map.get(i) + 1;
          map.put(i, j);
        }
      }
    int count = 0;
      for(int i=1; i<=m; i++){
        if(map.get(i) == n){
          count++;
        }
      }
      System.out.println(count);
  }
}
