def _PythonValueToJsonProto(py_value):
    if isinstance(py_value, dict):
        return _PythonValueToJsonObject(py_value)
    if (isinstance(py_value, collections.Iterable) and (not isinstance(py_value, basestring))):
        return _PythonValueToJsonArray(py_value)
    return _PythonValueToJsonValue(py_value)
def _PythonValueToJsonProto(py_value):
    if isinstance(py_value, dict):
        return _PythonValueToJsonObject(py_value)
    if (isinstance(py_value, collections.Iterable) and (not isinstance(py_value, basestring))):
        return _PythonValueToJsonArray(py_value)
    return _PythonValueToJsonValue(py_value)