#include <bits/stdc++.h>
using namespace std;
int main() {
  long long m, n;
  while (cin >> m >> n) {
    if (n == m) {
      cout << "Yes" << endl;
      for (int i = 0; i < n; i++) {
        printf("0%c", i == n - 1 ? '\n' : ' ');
      }
    } else {
      int p[100000] = {0}, k = 80000, c1 = 0;
      long long mh = m;
      while (mh != 0) {
        p[k] = mh % 2;
        mh /= 2;
        if (p[k] == 1) c1++;
        k++;
      }
      if (c1 > n)
        cout << "No" << endl;
      else {
        cout << "Yes" << endl;
        for (int i = k - 1; i >= 0; --i) {
          int j = i;
          if (n - c1 < p[j]) break;
          while (j > 0 && n > c1) {
            if (p[j]) {
              p[j]--;
              p[j - 1] += 2;
              c1++;
            } else
              break;
          }
        }
        for (int i = 1; i < k; i++) {
          if (n > c1 && p[i]) {
            c1++;
            p[i]--;
            p[i - 1] += 2;
            i -= 2;
          }
        }
        int qqq = 0;
        for (int i = k - 1; i >= 0; --i) {
          while (p[i]) {
            p[i]--;
            qqq++;
            printf("%d%c", i - 80000, qqq == c1 ? '\n' : ' ');
          }
        }
      }
    }
  }
  return 0;
}
