class_docstr: Flip the image horizontally with probability flip_prob.
  Operates on raw arrays (not tensors).
  
  Parameters
  ----------
  flip_prob : float
      The probability with which to flip each image in the batch
      horizontally.
code: def declare_state_and_memory(
      self, previous_state: State
  ) -> Tuple[State, Optional[AllocationQuery]]:
      return (
          replace(previous_state, jit_mode=True),
          AllocationQuery(previous_state.shape, previous_state.dtype),
      )
  
file_path: ffcv/ffcv/transforms/flip.py
imports: from dataclasses import replace
  from numpy.random import rand
  from typing import Callable, Optional, Tuple
  from ..pipeline.allocation_query import AllocationQuery
  from ..pipeline.operation import Operation
  from ..pipeline.state import State
  from ..pipeline.compiler import Compiler
label_desc: Use image node_id 3 for calling the RandomHorizontalFlip obj's underlying member method code with example usage: obj.declare_state_and_memory(previous_state) and returns: replace,  AllocationQuery