code: def _run(self, x, axis=None):  # type: ignore
      i = axis or self.axis  # type: ignore
      shape = x.shape
      new_shape = (
          (1, -1) if i == 0 else (np.prod(shape[:i]).astype(int), -1)
      )
      return (x.reshape(new_shape),)
  
imports: import numpy
  from onnx.reference.ops._op import OpRunUnary
label_desc: Use image node_id 1 for calling the Flatten obj's underlying member method code with example usage: obj._run(x, axis) and returns: x