code: def euclidean_distance(X, Y=None):
      """
      Considering the rows of X (and Y=X) as vectors, compute the
      distance matrix between each pair of vectors
  
      Parameters
      ----------
      X, array of shape (n1,p)
      Y=None, array of shape (n2,p)
              if Y==None, then Y=X is used instead
  
      Returns
      -------
      ED, array of shape(n1, n2) with all the pairwise distance
      """
      if Y is None:
          Y = X
      if X.shape[1] != Y.shape[1]:
          raise ValueError(
              "incompatible dimension for X and Y matrices"
          )
  
      n1 = X.shape[0]
      n2 = Y.shape[0]
      NX = np.reshape(np.sum(X * X, 1), (n1, 1))
      NY = np.reshape(np.sum(Y * Y, 1), (1, n2))
      ED = np.repeat(NX, n2, 1)
      ED += np.repeat(NY, n1, 0)
      ED -= 2 * np.dot(X, Y.T)
      ED = np.maximum(ED, 0)
      ED = np.sqrt(ED)
      return ED
  
label_desc: Use image node_id 1 for calling a global function with example usage: euclidean_distance(X, Y) and returns: ED