#include using namespace std; #define rep(i,a,b) for(int i=(a),i##_end=(b);i<=i##_end;i++) #define per(i,a,b) for(int i=(b),i##_st=(a);i>=i##_st;i--) #define x first #define y second #define I inline #define OP operator #define pb push_back #define mp make_pair #define RT return *this #define dbg(x) cerr<<#x" = "<nxt) typedef long long ll;typedef pair pii; const int inf=~0u>>1,MOD=1e9+7;char *TT,*mo,but[(1<<15)+2]; #define getchar() ((TT==mo&&(mo=((TT=but)+fread(but,1,1<<15,stdin)),TT==mo))?-1:*TT++) I bool IS(char x){return x==10||x==13||x==' ';} struct Cg{I char OP()(){return getchar();}};struct Cp{I void OP()(char x){putchar(x);}}; #define RX char c,f=1;while(!isdigit(c=P()))f=c!='-';x=c-'0';while(isdigit(c=P()))x=x*10+c-'0';x=f?x:-x #define TR *this,x;return x struct Fr{Cg P;I Fr&OP,(int&x){RX;RT;}I OP int(){int x;TR;}I Fr&OP,(ll &x){RX;RT;}I OP ll(){ll x;TR;} I Fr&OP,(char&x){while(IS(x=P()));RT;}I OP char(){char x;TR;} I Fr&OP,(char*x){char t=P();for(;IS(t);t=P());if(~t){for(;!IS(t)&&~t;t=P())*x++=t;}*x++=0;RT;}}in; #define WI if(x){if(x<0)P('-'),x=-x;char s[22],c=0;while(x)s[c++]=x%10+'0',x/=10;while(c--)P(s[c]);}else P('0') struct Fw{Cp P;I Fw&OP,(int x){WI;RT;}I Fw&OP,(ll x){WI;RT;}I Fw&OP,(char x){P(x);RT;} I Fw&OP,(const char *x){while(*x)P(*x++);RT;}}out; char s[11111]; int decode(char x){ if('a'<=x&&x<='z')return 1; else if('A'<=x&&x<='Z')return 2; else if('0'<=x&&x<='9')return 3; else if(x=='!'||x=='@'||x=='#'||x=='$'||x=='%'||x=='^'||x=='&'||x=='*'||x=='('||x==')'||x=='-'||x=='+')return 4; else return 0; } int tt[40],n; int main(){ in,n,s+1; int m=n; rep(i,1,n){ tt[decode(s[i])]=1; } rep(i,1,4)if(!tt[i])n++; n=max(6,n); cout<