class_docstr: Base class for operators implemented in Python.
  
  Parameters
  ----------
  need_top_grad : bool
      the default need_top_grad() function returns this value.
class_docstr_tok: ["Base","class","for","operators","implemented","in","Python",".","Parameters","--","--","--","--","--","need_top_grad",":","bool","the","default","need_top_grad","(",")","function","returns","this","value","."]
docstr: Backward interface. Can override when creating new operators.
  
  Parameters
  ----------
  out_grad, in_data, out_data, in_grad : list
      input and output for backward. See document for
      corresponding arguments of Operator::Backward
docstr_tok: ["Backward","interface",".","Can","override","when","creating","new","operators",".","Parameters","--","--","--","--","--","out_grad",",","in_data",",","out_data",",","in_grad",":","list","input","and","output","for","backward",".","See","document","for","corresponding","arguments","of","Operator",":",":Backward"]
code: def backward(self, out_grad, in_data, out_data, in_grad):
      """Backward interface. Can override when creating new operators.
  
      Parameters
      ----------
      out_grad, in_data, out_data, in_grad : list
          input and output for backward. See document for
          corresponding arguments of Operator::Backward
      """
      # pylint: disable=W0613
      in_grad[0][:] = 1.0
  
imports: import traceback
  import warnings
  import collections
  from array import array
  from threading import Lock
  import ctypes
  from ctypes import CFUNCTYPE, POINTER, Structure, pointer
  from ctypes import c_void_p, c_int, c_char, c_char_p, cast, c_bool
  from .base import _LIB, check_call, MXCallbackList, c_array, c_array_buf, mx_int, OpHandle
  from .base import c_str, mx_uint, mx_float, ctypes2numpy_shared, NDArrayHandle, py_str
  from .None import symbol, context
  from .ndarray import NDArray, dtype_np_to_mx, dtype_mx_to_np
  from .ndarray.ndarray import _STORAGE_TYPE_STR_TO_ID, _STORAGE_TYPE_ID_TO_STR
  from .ndarray.ndarray import _STORAGE_TYPE_UNDEFINED, _STORAGE_TYPE_DEFAULT
  from .ndarray.ndarray import _STORAGE_TYPE_CSR, _STORAGE_TYPE_ROW_SPARSE
  from .ndarray import _ndarray_cls
  from .numpy.multiarray import _np_ndarray_cls
  from .util import is_np_array
label_desc: Use image node_id 5 for calling the PythonOp obj's underlying member method code with example usage: obj.backward(out_grad, in_data, out_data, in_grad) without return types