charm: parse test passes
charm: change some error messages, move some code