void reverse(char *s) {
char c = *s;
if (!c) return;
reverse(s+1);
for (; *(s+1); s++)
*s = *(s+1);
*s = c;
}