func_code_string: #include <bits/stdc++.h>   using namespace std;   const int N = 1e5 + 9, M = 998244353;   int dp[2][205][2], n, a[N];   long long sum[2][205][2];   int f(int i, int x, int z) {     if (a[i] > 0 && x != a[i]) return dp[i % 2][x][z] = 0;     if (i == n - 1) return dp[i % 2][x][z] = z;     long long ans = 0, l = 0, r = 200;     i %= 2;     ans = z * (sum[1 - i][x - 1][1] - sum[1 - i][l][1]) % M + dp[1 - i][x][1] +           (sum[1 - i][r][0] - sum[1 - i][x][0]) % M + 2 * M;     return dp[i][x][z] = ans % M;   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(NULL);     long long i, j;     cin >> n;     for (i = 0; i < n; i++) cin >> a[i];     for (i = n - 1; i >= 0; i--)       for (j = 1; j < 201; j++) {         sum[i % 2][j][0] = f(i, j, 0) + sum[i % 2][j - 1][0];         sum[i % 2][j][1] = f(i, j, 1) + sum[i % 2][j - 1][1];       }     cout << sum[0][200][0] % M << endl;     return 0;   }   