added json configuration support