code: def test_nd_array_narrow_fill(self, ctx_name):
      self.try_to_set_ctx(ctx_name)
  
      # child fill first
      ref_0 = np.array([0, 0, 5, 5, 3, 3, 5, 5, 7, 7])
      # grandchild fill first
      ref_1 = np.array([0, 0, 5, 5, 5, 5, 5, 5, 7, 7])
  
      x = nn.NdArray(10)
      x.fill(0)
      x = F.identity(x)
  
      # parent-child relation
      # x -- a -- b
      #  \-- c
      a = x.narrow(0, 2, 6)
      b = a.narrow(0, 2, 2)
      c = x.narrow(0, 8, 2)
  
      a.fill(5)
      b.fill(3)
      c.fill(7)
      assert (x.get_data(mode="r") == ref_0).all()
  
      x.fill(0)
      b.fill(3)
      a.fill(5)
      c.fill(7)
      assert (x.get_data(mode="r") == ref_1).all()
  
imports: import numpy
  import nnabla
  import pytest
  from nnabla.ext_utils import get_extension_context
  import nnabla.functions
label_desc: Use image node_id 6 for calling the TestNdArrayNarrow obj's underlying member method code with example usage: obj.test_nd_array_narrow_fill(ctx_name) without return types