code: def test_array_grad_no_deepcopy():
      dtype = chainerx.float32
      array = chainerx.array([2, 5, 1], dtype)
      grad = chainerx.array([5, 7, 8], dtype)
  
      # Set grad
      array.require_grad().set_grad(grad)
  
      # Retrieve grad twice and assert they share the same underlying data
      grad1 = array.get_grad()
      grad2 = array.get_grad()
  
      grad1 *= chainerx.array([2, 2, 2], dtype)
      assert grad2._debug_flat_data == [
          10,
          14,
          16,
      ], "grad getter must not incur a copy"
  
imports: import copy
  import math
  import pickle
  import numpy
  import pytest
  import chainerx
  import chainerx.testing
  from chainerx_tests import array_utils
label_desc: Use image node_id 23 for calling a global function with example usage: test_array_grad_no_deepcopy() without return types