Chars: use structured answer.
Password: add structured answer.

Also, a nearly-complete rewrite to make it works as intended, while
still being easy to follow.