#include <iostream>

using namespace std;

int a[1000][1000], used[1000];

int main() {
    
    int n,m,x,y,br(0),t(1);
       
    cin >> n >> m;
    
    for(int i(0); i < m ;i++) {
            cin >> x >> y;
            a[x][y] = 1;
            a[y][x] = 1;
            used[x]++;
            used[y]++;
            }
    
    for(int i(1); i <= n ;i++)
            if (used[i]%2 != 0)br++;

    if(br%2 != 0) cout << "No" << endl;
    else {
         cout << "Yes" << endl;
         for(int i(1); i <= n; i++) {
                 if(used[i]%2 == 0) {
                 t = 0;
                 for(int j(1); j <= n; j++)
                         if(a[i][j] == 1 && t < used[i]/2){
                            t++;        
                            a[j][i] = 0;
                            }
                         }
                 else {
                      t = 0;
                      for(int j(1); j <= n; j++)
                         if(a[i][j] == 1 && t <= used[i]/2){
                            t++;        
                            a[j][i] = 0;
                         }
                      }
         }
         for(int i(1); i <= n; i++)
         for(int j(1); j <= n; j++)
         if(a[i][j] == 1) cout << i << " " << j << endl;
                 
         }
    return 0;

}
