use native JSON when available
v2.2.2