code: def squeezing(r, phi):
      """Squeezing in the phase space.
  
      Args:
          r (float): squeezing magnitude
          phi (float): rotation parameter
  
      Returns:
          array: symplectic transformation matrix
      """
      cp = math.cos(phi)
      sp = math.sin(phi)
      ch = math.cosh(r)
      sh = math.sinh(r)
      return np.array(
          [[ch - cp * sh, -sp * sh], [-sp * sh, ch + cp * sh]]
      )
  
imports: import math
  import cmath
  import numpy
  from scipy.special import factorial
  import pennylane
  from pennylane.ops import Identity
  from pennylane import Device
  from .._version import __version__
label_desc: Use image node_id 5 for calling a global function with example usage: squeezing(r, phi) and returns: np