#include <bits/stdc++.h>
using namespace std;
const int maxn = 110000;
int n, m, D[maxn], E[maxn][2];
namespace Ninit {
void init() {
  int i, ai, bi;
  scanf("%d%d", &n, &m);
  for (i = 0; i < m; ++i) {
    scanf("%d%d", &ai, &bi);
    if (D[ai] < 2) E[ai][D[ai]] = bi;
    if (D[bi] < 2) E[bi][D[bi]] = ai;
    ++D[ai], ++D[bi];
  }
}
}  // namespace Ninit
namespace Nsolve {
int ans;
void solve() {
  int i, ai, bi;
  for (i = 1; i <= n; ++i) D[i] & 1 ? ++ans : 0;
  ans /= 2;
  for (i = 1; i <= n; ++i)
    if (D[i] == 2) {
      ai = E[i][0], bi = E[i][1];
      if (ai == bi)
        ++ans, D[ai] = 0;
      else
        E[ai][E[ai][1] == i] = bi, E[bi][E[bi][1] == i] = ai;
    }
  printf("%d %d\n", ans, m);
}
}  // namespace Nsolve
int main() {
  Ninit::init();
  Nsolve::solve();
  return 0;
}
