code: def test_array_require_grad_multiple_graphs_forward():
      x1 = chainerx.array([1, 1, 1], chainerx.float32)
      x2 = chainerx.array([1, 1, 1], chainerx.float32)
  
      with chainerx.backprop_scope(
          "bp1"
      ) as bp1, chainerx.backprop_scope(
          "bp2"
      ) as bp2, chainerx.backprop_scope(
          "bp3"
      ) as bp3:
          x1.require_grad(bp1)
          x2.require_grad(bp2)
  
          assert x1.is_grad_required(bp1)
          assert x2.is_grad_required(bp2)
          assert x1.is_backprop_required(bp1)
          assert x2.is_backprop_required(bp2)
  
          assert not x1.is_grad_required(bp2)
          assert not x2.is_grad_required(bp1)
          assert not x1.is_backprop_required(bp2)
          assert not x2.is_backprop_required(bp1)
  
          y = x1 * x2
  
          assert not y.is_grad_required(bp1)
          assert not y.is_grad_required(bp2)
          assert y.is_backprop_required(bp1)
          assert y.is_backprop_required(bp2)
  
          # No unspecified graphs are generated
          assert not y.is_backprop_required(None)
          assert not y.is_backprop_required(bp3)
  
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 26 for calling a global function with example usage: test_array_require_grad_multiple_graphs_forward() without return types