#include <iostream>

using namespace std;

#define rep(i,n) for(int i=0; i<(int)(n); i++)

const int N = (int)1e5;
int p[N];

int find(int a){
  if(p[a] == a) return a;
  return p[a] = find(p[a]);
}
 
void uni(int a, int b){
  p[find(b)] = find(a);
}

int main() {
  int n, m, k;
  cin >> n >> m >> k;
  int a[m], b[m], c[k], d[k];
  rep(i,m) cin >> a[i] >> b[i], a[i]--, b[i]--;
  rep(i,k) cin >> c[i] >> d[i], c[i]--, d[i]--;
  
  rep(i,n) p[i] = i;
  rep(i,m) uni(a[i], b[i]);
  
  int cc[n], fc[n], bc[n];
  rep(i,n) cc[i] = 0, fc[i] = 0, bc[i] = 0;
  rep(i,n) cc[find(i)]++;
  rep(i,m) fc[a[i]]++, fc[b[i]]++;
  rep(i,k) if(find(c[i]) == find(d[i])) bc[c[i]]++, bc[d[i]]++;
  
  rep(i,n) cout << cc[find(i)] - fc[i] - bc[i] - 1 << (i != n-1 ? " " : "");
  return 0;
}