code: def __init__(
      self,
      hidden_dim: _typ.Optional[int] = 64,
      layer_number: _typ.Optional[int] = 2,
      dropout: _typ.Optional[float] = 0.9,
      input_dim: _typ.Optional[int] = None,
      output_dim: _typ.Optional[int] = None,
      gnn_ops: _typ.Sequence[
          _typ.Union[str, _typ.Any]
      ] = GRAPHNAS_DEFAULT_GNN_OPS,
      act_ops: _typ.Sequence[
          _typ.Union[str, _typ.Any]
      ] = GRAPHNAS_DEFAULT_ACT_OPS,
      con_ops: _typ.Sequence[
          _typ.Union[str, _typ.Any]
      ] = GRAPHNAS_DEFAULT_CON_OPS,
  ):
      super().__init__()
      self.layer_number = layer_number
      self.hidden_dim = hidden_dim
      self.input_dim = input_dim
      self.output_dim = output_dim
      self.gnn_ops = gnn_ops
      self.act_ops = act_ops
      self.con_ops = con_ops
      self.dropout = dropout
  
imports: import typing
  import torch
  import torch.nn.functional
  from nni.nas.pytorch import mutables
  from .None import register_nas_space
  from .base import BaseSpace
  from ...model import BaseAutoModel
  from ..utils import count_parameters, measure_latency
  from torch import nn
  from .operation import act_map, gnn_map
  from ..backend import *
label_desc: Use image node_id 1 to create a new GraphNasNodeClassificationSpace object from inherited base classes: BaseSpace with example: obj = GraphNasNodeClassificationSpace(hidden_dim, layer_number, dropout, input_dim, output_dim, gnn_ops, act_ops, con_ops)