code: def test_3x4(self):
      grid1 = [
          ["0", "E", "0", "0"],
          ["E", "0", "W", "E"],
          ["0", "E", "0", "0"],
      ]
      self.assertEqual(3, bomb_enemy.max_killed_enemies(grid1))
  
      grid1 = [
          ["0", "E", "0", "E"],
          ["E", "E", "E", "0"],
          ["E", "0", "W", "E"],
          ["0", "E", "0", "0"],
      ]
      grid2 = [
          ["0", "0", "0", "E"],
          ["E", "0", "0", "0"],
          ["E", "0", "W", "E"],
          ["0", "E", "0", "0"],
      ]
      self.assertEqual(5, bomb_enemy.max_killed_enemies(grid1))
      self.assertEqual(3, bomb_enemy.max_killed_enemies(grid2))
  
imports: from algorithms.matrix import bomb_enemy, copy_transform, crout_matrix_decomposition, cholesky_matrix_decomposition, matrix_exponentiation, matrix_inversion, multiply, rotate_image, sparse_dot_vector, spiral_traversal, sudoku_validator, sum_sub_squares, sort_matrix_diagonally
  import unittest
label_desc: Use image node_id 1 for calling the TestBombEnemy obj's underlying member method code with example usage: obj.test_3x4() without return types