#include <bits/stdc++.h>
using namespace std;
#define FILE "SHIP"
#define int long long
#define ii pair<int, int>
#define fast ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
#define FOR(I, L, R) for(int I = (int)L; I <= (int)R; I++)
#define FOD(I, R, L) for(int I = (int)R; I >= (int)L; I--)
#define FOA(I, A) for(auto &I : A)
#define all(A) A.begin(), A.end()
#define fi first
#define se second
const int N = 2e5 + 10;
const int oo = 1e18;
const int mod = 1e9 + 7;
int n, q;
vector<int> g[N];
int lazy[N];
int c;
int h[N], up[N][20];
void dfs(int u, int p){
FOA(v, g[u]) if(v != p){
h[v] = h[u] + 1;
up[v][0] = u;
FOR(i, 1, 18){
up[v][i] = up[up[v][i - 1]][i - 1];
}
dfs(v, u);
}
}
int lca(int u, int v){
if(h[u] > h[v]) swap(u, v);
int c = h[v] - h[u];
FOR(i, 0, 18){
if(c >> i & 1){
v = up[v][i];
}
}
if(v == u) return u;
FOR(i, 0, 18){
if(up[u][i] == up[v][i]) continue;
u = up[u][i];
v = up[v][i];
}
return up[u][0];
}
int ans;
void dp(int u, int p){
FOA(v, g[u]) if(v != p){
dp(v, u);
if(lazy[v] == 0) ans++;
lazy[u] += lazy[v];
}
}
signed main(){ fast
if(fopen(FILE ".INP", "r")){
freopen(FILE".INP", "r", stdin);
freopen(FILE".OUT", "w", stdout);
}
cin >> n;
FOR(i, 1, n - 1){
int u, v;
cin >> u >> v;
g[u].push_back(v);
g[v].push_back(u);
}
dfs(1, 0);
cin >> q;
while(q--){
int u, v;
cin >> u >> v;
lazy[u]++;
lazy[v]++;
lazy[lca(u, v)] -= 2;
}
dp(1, 0);
cout << ans;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgRklMRSAiU0hJUCIKCiNkZWZpbmUgaW50IGxvbmcgbG9uZwojZGVmaW5lIGlpIHBhaXI8aW50LCBpbnQ+CgojZGVmaW5lIGZhc3QgaW9zOjpzeW5jX3dpdGhfc3RkaW8oMCk7IGNpbi50aWUoMCk7IGNvdXQudGllKDApOwojZGVmaW5lIEZPUihJLCBMLCBSKSBmb3IoaW50IEkgPSAoaW50KUw7IEkgPD0gKGludClSOyBJKyspCiNkZWZpbmUgRk9EKEksIFIsIEwpIGZvcihpbnQgSSA9IChpbnQpUjsgSSA+PSAoaW50KUw7IEktLSkKI2RlZmluZSBGT0EoSSwgQSkgZm9yKGF1dG8gJkkgOiBBKQoKI2RlZmluZSBhbGwoQSkgQS5iZWdpbigpLCBBLmVuZCgpCiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKCmNvbnN0IGludCBOID0gMmU1ICsgMTA7CmNvbnN0IGludCBvbyA9IDFlMTg7CmNvbnN0IGludCBtb2QgPSAxZTkgKyA3OwoKaW50IG4sIHE7CnZlY3RvcjxpbnQ+IGdbTl07CmludCBsYXp5W05dOwppbnQgYzsKaW50IGhbTl0sIHVwW05dWzIwXTsKCgp2b2lkIGRmcyhpbnQgdSwgaW50IHApewogICAgIEZPQSh2LCBnW3VdKSBpZih2ICE9IHApewogICAgICAgICAgaFt2XSA9IGhbdV0gKyAxOwogICAgICAgICAgdXBbdl1bMF0gPSB1OwoKICAgICAgICAgIEZPUihpLCAxLCAxOCl7CiAgICAgICAgICAgICAgIHVwW3ZdW2ldID0gdXBbdXBbdl1baSAtIDFdXVtpIC0gMV07CiAgICAgICAgICB9CgogICAgICAgICAgZGZzKHYsIHUpOwogICAgIH0KfQoKaW50IGxjYShpbnQgdSwgaW50IHYpewogICAgIGlmKGhbdV0gPiBoW3ZdKSBzd2FwKHUsIHYpOwoKICAgICBpbnQgYyA9IGhbdl0gLSBoW3VdOwoKICAgICBGT1IoaSwgMCwgMTgpewogICAgICAgICAgaWYoYyA+PiBpICYgMSl7CiAgICAgICAgICAgICAgIHYgPSB1cFt2XVtpXTsKICAgICAgICAgIH0KICAgICB9CgogICAgIGlmKHYgPT0gdSkgcmV0dXJuIHU7CgogICAgIEZPUihpLCAwLCAxOCl7CiAgICAgICAgICBpZih1cFt1XVtpXSA9PSB1cFt2XVtpXSkgY29udGludWU7CgogICAgICAgICAgdSA9IHVwW3VdW2ldOwogICAgICAgICAgdiA9IHVwW3ZdW2ldOwogICAgIH0KCiAgICAgcmV0dXJuIHVwW3VdWzBdOwp9CgppbnQgYW5zOwp2b2lkIGRwKGludCB1LCBpbnQgcCl7CiAgICAgRk9BKHYsIGdbdV0pIGlmKHYgIT0gcCl7CiAgICAgICAgICBkcCh2LCB1KTsKICAgICAgICAgIGlmKGxhenlbdl0gPT0gMCkgYW5zKys7CiAgICAgICAgICBsYXp5W3VdICs9IGxhenlbdl07CiAgICAgfQp9CgpzaWduZWQgbWFpbigpeyBmYXN0CiAgICAgaWYoZm9wZW4oRklMRSAiLklOUCIsICJyIikpewogICAgICAgICAgZnJlb3BlbihGSUxFIi5JTlAiLCAiciIsIHN0ZGluKTsKICAgICAgICAgIGZyZW9wZW4oRklMRSIuT1VUIiwgInciLCBzdGRvdXQpOwogICAgIH0KCiAgICAgY2luID4+IG47CiAgICAgRk9SKGksIDEsIG4gLSAxKXsKICAgICAgICAgIGludCB1LCB2OwogICAgICAgICAgY2luID4+IHUgPj4gdjsKICAgICAgICAgIGdbdV0ucHVzaF9iYWNrKHYpOwogICAgICAgICAgZ1t2XS5wdXNoX2JhY2sodSk7CiAgICAgfQogICAgIGRmcygxLCAwKTsKCiAgICAgY2luID4+IHE7CiAgICAgd2hpbGUocS0tKXsKICAgICAgICAgIGludCB1LCB2OwogICAgICAgICAgY2luID4+IHUgPj4gdjsKCiAgICAgICAgICBsYXp5W3VdKys7CiAgICAgICAgICBsYXp5W3ZdKys7CiAgICAgICAgICBsYXp5W2xjYSh1LCB2KV0gLT0gMjsKICAgICB9CiAgICAgZHAoMSwgMCk7CgogICAgIGNvdXQgPDwgYW5zOwp9Cg==