switched to JSON data format, more flexible