code: def parse_squeeze_layer(
      operation,
      layer_name,
      input_names,
      input_shapes,
      node,
      class_object,
      data_reader,
      config,
  ):
      assert operation == "squeeze"
  
      layer = {}
      layer["class_name"] = "Reshape"
      layer["name"] = layer_name
  
      if (
          len(node.args) > 1 or len(node.kwargs) > 0
      ):  # 'dim' argument is specified
          output_shape = [i for i in input_shapes[0]]
          squeeze_dim = node.kwargs.get("dim", None)
          if squeeze_dim is None:
              squeeze_dim = node.args[1]
          if isinstance(squeeze_dim, tuple):
              for dim in squeeze_dim:
                  del output_shape[dim]
          else:
              del output_shape[squeeze_dim]
      else:
          output_shape = [i for i in input_shapes[0] if i != 1]
  
      layer["target_shape"] = output_shape.copy()
      if layer["target_shape"][0] is None:
          del layer["target_shape"][0]
  
      return layer, output_shape
  
imports: import numpy
  from hls4ml.converters.pytorch_to_hls import pytorch_handler
label_desc: Use image node_id 2 for calling a global function with example usage: parse_squeeze_layer(operation, layer_name, input_names, input_shapes, node, class_object, data_reader, config) and returns: layer,  output_shape