 
#include <bits/stdc++.h>
using namespace std;
using pii=pair<int,int>;
#define rep(i,n) for(int i=0;i<n;i++)
#define range(i,a,n) for(int i=a;i<n;i++)
#define all(a) a.begin(),a.end()
#define rall(a) a.rbegin(),a.rend()
#define INF 1e9
#define EPS 1e-9
#define MOD (1e9+7)


int main(){
	int m,n;
	while(cin>>m>>n,n){
		vector<pii> C1(m),C2(n);
		vector<vector<double>> yp(201),zp(201);
		vector<double> y(201,0.0),z(201,0.0);
		rep(i,m){int a,b; cin>>a>>b; C1[i]={a+100,b+100};}	//xy
		rep(i,n){int a,b; cin>>a>>b; C2[i]={a+100,b+100};}	//xz
		int limit[4]={200,0,200,0};
		rep(i,m){
			limit[0]=min(limit[0],C1[i].first);
			limit[1]=max(limit[1],C1[i].first);
			int j=(i+1)%m;
			auto xr=make_pair(C1[i].first,C1[j].first);
			auto yr=make_pair(C1[i].second,C1[j].second);
			if(xr.second<xr.first){
				swap(xr.second,xr.first);
				swap(yr.second,yr.first);
			}
			int diff=xr.second-xr.first;
			if(diff==0){
				y[xr.first]=fabs(yr.second-yr.first);
			}
			rep(x,diff){
				double l=yr.second-yr.first;
				l/=diff;
				yp[x+xr.first].push_back(yr.first+l*x);
			}
		}
		rep(i,n){
			limit[2]=min(limit[2],C2[i].first);
			limit[3]=max(limit[3],C2[i].first);
			int j=(i+1)%n;
			auto xr=make_pair(C2[i].first,C2[j].first);
			auto zr=make_pair(C2[i].second,C2[j].second);
			if(xr.second<xr.first){
				swap(xr.second,xr.first);
				swap(zr.second,zr.first);
			}
			int diff=xr.second-xr.first;
			if(diff==0){
				z[xr.first]=fabs(zr.second-zr.first);
			}
			rep(x,diff){
				double l=zr.second-zr.first;
				l/=diff;
				zp[x+xr.first].push_back(zr.first+l*x);
			}
		}
		rep(i,201){
			if(yp[i].size()!=0) y[i]=fabs(yp[i][0]-yp[i][1]);
			if(zp[i].size()!=0) z[i]=fabs(zp[i][0]-zp[i][1]);
		}
		double ans=0.0;
		//for(auto i:limit)cout<<i<<",";cout<<endl;
		limit[1]--; limit[3]--;
		for(int x=max(limit[0],limit[2]);x<=min(limit[1],limit[3]);x++){
			double f1=y[x]*z[x+1];
			double f2=y[x+1]*z[x];
			double f3=2*(y[x]*z[x]+y[x+1]*z[x+1]);
			ans+=(f1+f2+f3)/6;
		}
		cout.precision(6);
		cout<<fixed<<ans<<endl;
	}
	return 0;
}

