add json generate/parse