optimize the json parser