improve char parser, update deps