func_code_string: #include <bits/stdc++.h>   using namespace std;   int n, w, s, a[110];   int in[110], out[110];   int main() {     scanf( %d%d , &n, &w);     for (int i = 0; i < n; i++) {       scanf( %d , &a[i]);       s += a[i];     }     if (n == 1 && w == a[0]) {       puts( Yes );       for (int i = 0; i < w * 2; i++) {         printf( 1  );       }     } else if (n >= 2 && w >= 2 && w <= s) {       in[0] = a[0] - 1;       in[1] = a[1] - 1;       for (int i = 2; i < n; i++) {         in[i] = a[i];       }       for (int i = 0; i < n; i++) {         int x = min(w - 2, in[i]);         in[i] -= x;         out[i] += x;         w -= x;       }       puts( Yes );       for (int i = 0; i < n; i++) {         for (int j = 0; j < out[i] * 2; j++) {           printf( %d  , i + 1);         }       }       printf( 1  );       for (int i = 1; i < n; i++) {         for (int j = 0; j < in[i] * 2; j++) {           printf( %d  , i + 1);         }       }       printf( 1 2  );       for (int i = 0; i < in[0] * 2; i++) {         printf( 1  );       }       puts( 2 );     } else if (n >= 2 && w == 1) {       int k = 0;       while (k < n && a[k] != 1) {         k++;       }       if (k == n) {         puts( No );       } else {         puts( Yes );         printf( %d  , k + 1);         for (int i = 0; i < n; i++) {           if (i == k) {             continue;           }           for (int j = 0; j < a[i] * 2; j++) {             printf( %d  , i + 1);           }         }         printf( %d n , k + 1);       }     } else {       puts( No );     }     return 0;   }   