some parsing, a little crypto