func_code_string: #include <bits/stdc++.h>   long long MOD = 1e9 + 7;   using namespace std;   int main() {     long long n, t;     cin >> n >> t;     long long a[200010], x[200010], b[200010];     for (int i = 0; i < n; i++) cin >> a[i];     for (int i = 0; i < n; i++) {       cin >> x[i];       x[i]--;       if ((i > 0 && x[i] < x[i - 1]) || x[i] < i) {         cout <<  No ;         return 0;       }     }     int c[200010] = {};     for (int i = 0; i < n; i++) {       long long temp = x[i];       c[x[i]] = 1;       if (temp == i) {         if (i > 0)           b[i] = max(a[i] + t, b[i - 1] + 1);         else           b[i] = a[i] + t;         if (i < n - 1 && b[i] >= a[i + 1] + t) {           cout <<  No ;           return 0;         }       } else {         if (i > 0)           b[i] = max(a[i + 1] + t, b[i - 1] + 1);         else           b[i] = a[i + 1] + t;       }       if (i < n - 1 && c[i] && b[i] >= a[i + 1] + t) {         cout <<  No ;         return 0;       }     }     cout <<  Yes  << endl;     for (int i = 0; i < n; i++) {       printf( %lld  , b[i]);     }     return 0;   }   