#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define syosu(x) fixed< P; typedef pair pdd; typedef pair pll; typedef vector vi; typedef vector vvi; typedef vector vd; typedef vector vvd; typedef vector vl; typedef vector vvl; typedef vector vc; typedef vector vvc; typedef vector vs; typedef vector vb; typedef vector vvb; typedef vector

vp; typedef vector vvp; typedef vector vpll; typedef pair pip; typedef vector vip; const int inf=1<<28; const ll INF=1ll<<60; const double pi=acos(-1); const double eps=1e-8; const ll mod=1e9+7; const int dx[4]={0,1,0,-1},dy[4]={1,0,-1,0}; vl fact(30); ll Fact(ll n){ if(fact[n]) return fact[n]; if(!n) return fact[n]=1; return fact[n]=Fact(n-1)*n%mod; } int n; vs a; int main(){ cin>>n; a=vs(n); int sum=0; for(int i=0;i>a[i]; sum+=a[i].size(); a[i]+='!'; } assert(1<=n&&n<=20); assert(1<=sum&&sum<=1000); for(int i=0;i