#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;
struct jh {
int n;
bool flag;
} xa[70], ya[70];
int x, y, a;
int main() {
cin >> x;
for (int i = 1; i <= 63; i++) {
xa[i].flag = 0;
xa[i].n = 0;
ya[i].flag = 0;
ya[i].n = 0;
}
for (int i = 0; i < x; i++) {
cin >> a;
xa[a].flag = 1;
}
cin >> y;
for (int i = 0; i < y; i++) {
cin >> a;
ya[a].flag = 1;
}
cout << x << endl;
for (int i = 1; i <= 63; i++) {
if (xa[i].flag && ya[i].flag)cout << i << " ";
}
cout << endl;
for (int i = 1; i <= 63; i++) {
if (xa[i].flag || ya[i].flag)cout << i << " ";
}
return 0;
}