modified protocol for json