code: def test_adamw_optimizer(
      dtype_x_lr,
      beta1_n_beta2_n_epsilon,
      weight_decay,
      inplace,
      stop_gradients,
      on_device,
      class_name,
      method_name,
      backend_fw,
      ground_truth_backend,
      test_gradients,
      init_flags,
      method_flags,
  ):
      input_dtype, x, lr = dtype_x_lr
      beta1, beta2, epsilon = beta1_n_beta2_n_epsilon
      xs_grad_idxs = (
          [[0, 0]] if method_flags.num_positional_args else [[1, "v"]]
      )
      helpers.test_method(
          backend_to_test=backend_fw,
          ground_truth_backend=ground_truth_backend,
          init_flags=init_flags,
          method_flags=method_flags,
          init_all_as_kwargs_np={
              "lr": lr,
              "beta1": beta1,
              "beta2": beta2,
              "epsilon": epsilon,
              "weight_decay": weight_decay,
              "inplace": inplace,
              "stop_gradients": stop_gradients,
          },
          method_input_dtypes=input_dtype,
          method_all_as_kwargs_np={
              "v": x[0],
              "grads": x[1],
          },
          class_name=class_name,
          method_name=method_name,
          rtol_=1e-1,
          atol_=1e-1,
          test_gradients=test_gradients,
          xs_grad_idxs=xs_grad_idxs,
          on_device=on_device,
      )
  
file_path: ivy/ivy_tests/test_ivy/test_stateful/test_optimizers.py
imports: from hypothesis import strategies
  import ivy_tests.test_ivy.helpers
  from ivy_tests.test_ivy.helpers import handle_method
  from ivy_tests.test_ivy.test_functional.test_core.test_gradients import get_gradient_arguments_with_lr
label_desc: Use image node_id 2 for calling a global function with example usage: test_adamw_optimizer(dtype_x_lr, beta1_n_beta2_n_epsilon, weight_decay, inplace, stop_gradients, on_device, class_name, method_name, backend_fw, ground_truth_backend, test_gradients, init_flags, method_flags) without return types