code: def instantiate(
      self,
      hidden_dim: _typ.Optional[int] = 64,
      layer_number: _typ.Optional[int] = 2,
      dropout: _typ.Optional[float] = 0.8,
      input_dim: _typ.Optional[int] = None,
      output_dim: _typ.Optional[int] = None,
      ops: _typ.Tuple = gnn_list,
  ):
      super().instantiate()
      self.input_dim = input_dim or self.input_dim
      self.output_dim = output_dim or self.output_dim
      self.hidden_dim = hidden_dim or self.hidden_dim
      self.steps = layer_number or self.steps
      self.dropout = dropout or self.dropout
      self.ops = ops or self.ops
      his_dim, cur_dim, hidden_dim, out_dim = (
          self.input_dim,
          self.input_dim,
          self.hidden_dim,
          self.hidden_dim,
      )
      self.cells = nn.ModuleList()
  
      self.cell = CellWS(
          self.steps, his_dim, hidden_dim, self.output_dim, self.dropout
      )
      his_dim = cur_dim
      cur_dim = self.steps * out_dim
  
      self.classifier = nn.Linear(cur_dim, self.output_dim)
  
      self.initialize_alphas()
  
imports: import typing
  from .None import register_nas_space
  from .base import apply_fixed_architecture
  from .base import BaseSpace
  from ...model import BaseAutoModel
  from ....utils import get_logger
  from ..backend import *
  from ..utils import count_parameters, measure_latency
  import torch
  import torch.nn
  import torch.nn.functional
  from torch.nn import Module
  from .gasso_space import *
  from torch.autograd import Variable
  from collections import namedtuple
label_desc: Use image node_id 2 for calling the GassoSpace obj's underlying member method code with example usage: obj.instantiate(hidden_dim, layer_number, dropout, input_dim, output_dim, ops) without return types