#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<vector>
using namespace std;

int main(){
  int cnt=0;
  int s,e;
  int m1,s1,m2,s2;
  int n,m;
  int nn[101]={0},mm[101]={0};
  int teans=0;
  int stans=0;
  int ans=0;
  cin>>cnt; 
  int data[cnt][2];
  for(int i=0;i<cnt;i++){
    scanf("%d:%d-%d:%d",&m1,&s1,&m2,&s2);
    data[i][0]=m1*60+s1,data[i][1]=m2*60+s2;
  }
  cin>>n;
  int teacher[101][101][2]={0};
  for(int i=0;i<n;i++){
    
    cin>>nn[i];
    //teacher[i].pb(
    for(int j=0;j<nn[i];j++){
      scanf("%d:%d-%d:%d",&m1,&s1,&m2,&s2);
      teacher[i][j][0]=m1*60+s1,teacher[i][j][1]=m2*60+s2;
    }
  }
  cin>>m;
  int student[101][101][2]={0};
  for(int i=0;i<m;i++){
    cin>>mm[i];
    for(int j=0;j<mm[i];j++){
      scanf("%d:%d-%d:%d",&m1,&s1,&m2,&s2);
      student[i][j][0]=m1*60+s1,student[i][j][1]=m2*60+s2;
    }
  }
  for(int i=0;i<cnt;i++){
    teans=0;
    stans=0;
    for(int j=0;j<n;j++){
      for(int k=0;k<nn[j];k++){
	if(teacher[j][k][0]<=data[i][0] && teacher[j][k][1]>=data[i][1]){
	  teans++;
	}
      }
    }
    for(int a=0;a<m;a++){
      for(int b=0;b<mm[a];b++){
	if(student[a][b][0]<=data[i][0] && student[a][b][1]>=data[i][1]){
	  stans++;
	}
      }
    }
    ans+=min(teans,stans);
  }
  cout<<ans<<endl;
  return 0;
}