void reverse(char *s) {
char *t = s + strlen(s);
if (s+2 > t) return;
*t = *s;
*s = *(t-1);
*(t-1) = '\0';
reverse(s+1);
*(t-1) = *t;
*t = '\0';
}