much improvement (parser, behavior of gg/G and so on)