func_code_string: #include <bits/stdc++.h>   using namespace std;   int main() {     long long n, k;     cin >> n >> k;     long long x = __builtin_popcount(n);     if (k > n || k < x) {       cout <<  NO  << endl;     } else {       cout <<  YES n ;       k = k - x;       long long count[30] = {0};       int i = 0;       int a = n;       n = 0;       while (a > 0) {         count[i] = a % 2;         n++;         a = a / 2;         i++;       }       long long cur = 29;       while (k--) {         if (count[cur]) {           count[cur - 1] += 2;           count[cur]--;         } else if (count[cur] == 0) {           cur = cur - 1;           k++;         }       }       cur = 1;       for (int i = 0; i < 30; i++) {         for (int j = 0; j < count[i]; j++) {           cout << cur <<    ;         }         cur *= 2;       }       cout << endl;     }   }   