code: def backward(ctx, grad_output):
      input, weight1, weight2, gelu_in, output1 = ctx.saved_tensors
      (
          grad_input,
          grad_weight1,
          grad_bias1,
          grad_weight2,
          grad_bias2,
      ) = fused_dense_cuda.linear_gelu_linear_backward(
          input, gelu_in, output1, weight1, weight2, grad_output
      )
      return (
          grad_input,
          grad_weight1,
          grad_bias1,
          grad_weight2,
          grad_bias2,
      )
  
imports: import torch
  from torch import nn
  import fused_dense_cuda
  from apex._autocast_utils import _cast_if_autocast_enabled
label_desc: Use image node_id 2 for calling the FusedDenseGeluDenseFunc obj's underlying member method code with example usage: obj.backward(ctx, grad_output) and returns: grad_input,  grad_weight1,  grad_bias1,  grad_weight2,  grad_bias2