code: def test_network(self, input):
      # Create a network
      model = torch.nn.Sequential(torch.nn.ReLU(), torch.nn.Sigmoid())
  
      # Forward
      output = model(input)
  
      # Decorate with NVTX Range
      model1 = Range()(model)
      model2 = Range("Model2")(model)
      model3 = Range(name="Model3", methods="forward")(model)
  
      # Forward with Range
      output1 = model1(input)
      output2 = model2(input)
      output3 = model3(input)
  
      # Check the outputs
      self.assertIsInstance(output, torch.Tensor)
      self.assertIsInstance(output1, torch.Tensor)
      self.assertIsInstance(output2, torch.Tensor)
      self.assertIsInstance(output3, torch.Tensor)
      np.testing.assert_equal(output.numpy(), output1.numpy())
      np.testing.assert_equal(output.numpy(), output2.numpy())
      np.testing.assert_equal(output.numpy(), output3.numpy())
  
file_path: MONAI/tests/test_nvtx_decorator.py
imports: from __future__ import annotations
  import unittest
  import numpy
  import torch
  from parameterized import parameterized
  from monai.transforms import Compose, CuCIM, Flip, Flipd, OneOf, RandAdjustContrast, RandCuCIM, RandFlip, RandomizableTrait, Rotate90, ToCupy, ToNumpy, TorchVision, ToTensor, ToTensord
  from monai.utils import Range, optional_import
  from tests.utils import HAS_CUPY
label_desc: Use image node_id 7 for calling the TestNVTXRangeDecorator obj's underlying member method code with example usage: obj.test_network(input) without return types