shouldn't we return false here if we encounter invalid JSON?