#define getint(n) int n; read(n)
#define getll(n) ll n; read(n)
#define inta getint(a)
#define intab getint(a); getint(b)
char get()
{
    static char buf[100000], *S=buf, *T=buf;
    if(S == T)
    {
        S = buf;
        T = buf + fread(buf, 1, 100000, stdin);
        if(S == T) return EOF;
    }
    return *S++;
}
void read(int& n)
{
    n = 0;
    char c; bool neg = false;
    for(c = get(); c < '0'; c=get()) if(c=='-') neg = true;
    for(;c>='0';c=get()) n = n*10+c-'0';
    if(neg) n = -n;
}
void read(ll& n)
{
    n = 0;
    char c; bool neg = false;
    for(c = get(); c < '0'; c=get()) if(c=='-') neg = true;
    for(;c>='0';c=get()) n = n*10+c-'0';
    if(neg) n = -n;
}
int read(char s[])
{
    char c; int p = 0;
    while((c = get()) <= ' ');

    s[p++] = c;
    while((c = get()) >= ' ') s[p++] = c;
    s[p] = '\0';

    return p;
}