#include using namespace std; struct st{ int x, y; }; int n,m,G[550][550]; st a[550],b[550]; int xi (int x,int y){ return xb.x&&a.x>c.x) return 1; if(a.xb.y&&a.y>c.y) return 1; return 0; } double fun(st a,st b,st c) { double x1=a.x-c.x,y1=a.y-c.y,x2=b.x-c.x,y2=b.y-c.y; return x1*y2-x2 *y1; } int main() { while(scanf("%d", &n)!=EOF){ for(int i=1;i<=n;i++) scanf("%d %d",&a[i].x,&a[i].y); scanf("%d", &m); for(int i=1;i<=m;i++) scanf("%d %d",&b[i].x,&b[i].y); for(int i=1;i<=m;i++) for(int j=1;j<=m;j++) G[i][j]=0x3f3f3f3f; for(int i=1;i<=m;i++) for(int j=1;j<=m;j++){ bool f=1; for(int k=1;k<=n;k++) { if(fun(a[k],b[j],b[i])<0)f=0; if(fun(a[k],b[j],b[i])==0&& cc(a[k],b[j],b[i]))f=0; if(!f)break; } if(f)G[i][j]=1; } for(int i=1;i<=m;i++) for(int j=1;j<=m;j++){ if(G[j][i]==0x3f3f3f3f)continue; for(int k=1;k<=m;k++) G[j][k]=xi(G[j][k],G[j][i]+G[i][k]); } int ans=0x3f3f3f3f; for(int i=1;i<=m;i++) ans=xi(ans,G[i][i]); if(ans>m)printf("ToT\n"); else printf("%d\n",m-ans); } return 0; }