added more json support