code: def block_augment_array(A, B, C, D):
      """Given a n1xn2 array A, an n1xn3 array B, an n4xn5 array C, and a
      n4x(n2 + n3 - n5) array D, this returns (n1+n4)x(n2+n3) array of the form
      [A, B; C; D].
      """
      AB = np.hstack((A, B))
      CD = np.hstack((C, D))
      return np.vstack((AB, CD))
  
imports: from __future__ import print_function
  from __future__ import division
  import numpy
  from scipy.sparse import dok_matrix
  from scipy.linalg import solve_triangular
label_desc: Use image node_id 30 for calling a global function with example usage: block_augment_array(A, B, C, D) and returns: np