class_docstr: Skip connection layer.
  
  Adds the original input to the output (regular residual layer) OR uses
  input as hidden state input to a given fan_in_layer.
docstr: Initializes a SkipConnection nn Module object.
  
  Args:
      layer (nn.Module): Any layer processing inputs.
      fan_in_layer (Optional[nn.Module]): An optional
          layer taking two inputs: The original input and the output
          of `layer`.
docstr_tok: ["Initializes","a","SkipConnection","nn","Module","object",".","Args",":","layer","(","nn.Module",")",":","Any","layer","processing","inputs",".","fan_in_layer","(","Optional","[","nn.Module","]",")",":","An","optional","layer","taking","two","inputs",":","The","original","input","and","the","output","of","`","layer","`","."]
code: def __init__(
      self,
      layer: nn.Module,
      fan_in_layer: Optional[nn.Module] = None,
      **kwargs,
  ):
      """Initializes a SkipConnection nn Module object.
  
      Args:
          layer (nn.Module): Any layer processing inputs.
          fan_in_layer (Optional[nn.Module]): An optional
              layer taking two inputs: The original input and the output
              of `layer`.
      """
      super().__init__(**kwargs)
      self._layer = layer
      self._fan_in_layer = fan_in_layer
  
imports: from ray.rllib.utils.framework import try_import_torch
  from ray.rllib.utils.typing import TensorType
  from typing import Optional
label_desc: Use image node_id 1 to create a new SkipConnection object from inherited base classes: nn with example: obj = SkipConnection(layer, fan_in_layer)