#include using namespace std; #define rep(i,a,b) for(int i=a;i=b;i--) #define fore(i,a) for(auto& i:a) #define ff first #define ss second #define all(a) begin(a),end(a) #define allr(a) rbegin(a),rend(a) #define pb push_back using ll =long long; using pii=pair; using pll=pair; using vi=vector; using vll=vector; template inline bool chmin(T& a,T b){return a>b?a=b,1:0;} template inline bool chmax(T& a,T b){return a::max()/2; const ll INFL=numeric_limits::max()/2; void solve(){ } int main(){ int n,k;cin>>n>>k; string s;cin>>s; { int cur{}; rep(i,0,n){ if(s[i]=='(')cur++; else cur--; if(cur<0){ cout<<"No"< q; rep(i,0,n){ if(s[i]=='('){ cur++; } else { cur--; } if(s[i]==')'){ if(s[i-1]=='('){ ans.pb('1');ans.pb('+');ans.pb('1'); ans.pb(')'); sum+=2; }else{ if(!q.top()){ ans.pb('+');ans.pb('1'); sum++; } ans.pb(')'); } q.pop(); }else{ if(i!=0&&s[i-1]==')'){ ans.pb('+'); if(!q.empty()){ q.pop(); q.push(1); }else{ flag=1; } } ans.pb('('); q.push(0); } } if(!flag){ ans.pb('+'); ans.pb('1');sum++; } while(sum