import java.io.*;
import java.util.*;

public class Main{
  public static void main(String[] args){
    try {
      Scanner sc = new Scanner(System.in);
      int n, m, ans=0;

      n = Integer.parseInt(sc.next());
      m = Integer.parseInt(sc.next());

      int a[] = new int[m];

      for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      }
      
      for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      }

      System.out.println(ans);
    }
    catch (Exception e) {
    }
  }
} import java.io.*; io.* java import java.util.*; util.* java public class Main{
  public static void main(String[] args){
    try {
      Scanner sc = new Scanner(System.in);
      int n, m, ans=0;

      n = Integer.parseInt(sc.next());
      m = Integer.parseInt(sc.next());

      int a[] = new int[m];

      for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      }
      
      for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      }

      System.out.println(ans);
    }
    catch (Exception e) {
    }
  }
} Main public static void main(String[] args){
    try {
      Scanner sc = new Scanner(System.in);
      int n, m, ans=0;

      n = Integer.parseInt(sc.next());
      m = Integer.parseInt(sc.next());

      int a[] = new int[m];

      for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      }
      
      for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      }

      System.out.println(ans);
    }
    catch (Exception e) {
    }
  } main {
    try {
      Scanner sc = new Scanner(System.in);
      int n, m, ans=0;

      n = Integer.parseInt(sc.next());
      m = Integer.parseInt(sc.next());

      int a[] = new int[m];

      for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      }
      
      for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      }

      System.out.println(ans);
    }
    catch (Exception e) {
    }
  } try {
      Scanner sc = new Scanner(System.in);
      int n, m, ans=0;

      n = Integer.parseInt(sc.next());
      m = Integer.parseInt(sc.next());

      int a[] = new int[m];

      for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      }
      
      for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      }

      System.out.println(ans);
    }
    catch (Exception e) {
    } catch (Exception e) {
    } Exception e {
    } {
      Scanner sc = new Scanner(System.in);
      int n, m, ans=0;

      n = Integer.parseInt(sc.next());
      m = Integer.parseInt(sc.next());

      int a[] = new int[m];

      for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      }
      
      for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      }

      System.out.println(ans);
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n n m m ans=0; ans 0 n = Integer.parseInt(sc.next()) n Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc m = Integer.parseInt(sc.next()) m Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int a[] = new int[m]; a new int[m] m for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      } int i=0; int i=0; i 0 i<n i n i++ i++ i {
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      } {
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      } int k = Integer.parseInt(sc.next()); k Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        } int j=0; int j=0; j 0 j<k j k j++ j++ j {
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        } {
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        } int ij = Integer.parseInt(sc.next()); ij Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc a[ij-1]++ a[ij-1] a ij-1 ij 1 for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      } int i=0; int i=0; i 0 i<m i m i++ i++ i {
        if(a[i]==n){
          ans++;
        }
      } {
        if(a[i]==n){
          ans++;
        }
      } if(a[i]==n){
          ans++;
        } a[i]==n a[i] a i n {
          ans++;
        } ans++ ans System.out.println(ans) System.out.println System.out System System.out ans String[] args args public class Main{
  public static void main(String[] args){
    try {
      Scanner sc = new Scanner(System.in);
      int n, m, ans=0;

      n = Integer.parseInt(sc.next());
      m = Integer.parseInt(sc.next());

      int a[] = new int[m];

      for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      }
      
      for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      }

      System.out.println(ans);
    }
    catch (Exception e) {
    }
  }
} public class Main{
  public static void main(String[] args){
    try {
      Scanner sc = new Scanner(System.in);
      int n, m, ans=0;

      n = Integer.parseInt(sc.next());
      m = Integer.parseInt(sc.next());

      int a[] = new int[m];

      for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      }
      
      for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      }

      System.out.println(ans);
    }
    catch (Exception e) {
    }
  }
} Main
import java.io.*;
import java.util.*;

public class Main{
  public static void main(String[] args){
    try {
      Scanner sc = new Scanner(System.in);
      int n, m, ans=0;

      n = Integer.parseInt(sc.next());
      m = Integer.parseInt(sc.next());

      int a[] = new int[m];

      for(int i=0; i<n; i++){
        int k = Integer.parseInt(sc.next());
        for(int j=0; j<k; j++){
          int ij = Integer.parseInt(sc.next());
          a[ij-1]++;
        }
      }
      
      for(int i=0; i<m; i++){
        if(a[i]==n){
          ans++;
        }
      }

      System.out.println(ans);
    }
    catch (Exception e) {
    }
  }
}
