#!/usr/bin/python3
import random
def read_integer():
  while  True:
    try:
       m=int(input("Dose m:"))
       if m<=10:
         raise ValueError("To m >10")
       return m
    except Exception as e:
       print (f"Error:{e})
       exit (1)
def generate_complex_2d_list(m):
  return [[
    complex(round(random.uniform(-1,1)2),round(random.uniform(-1,1)2)
    for _ in range (m)
    ] for _ in range(m) ]

def split_real_imag(matrix):
    real_parts=[]
    imag_parts=[]
    for row in matrix:
      for z in row:
         real_parts.append(z.real)
         imag_parts.append(z.imag)
    return real_parts,imag_parts


def main():
   m=read_integer()
   complex_matrix=generate_complex_2d_list(m)
   #print(complex_matrix)
   for row in complex_matrix:
      print([f"{z.real}+{z.imag}j" for z in row])
    real_parts,imag_parts=split_real_imag(complex_matrix)
    print (f"Max real={max(real_parts)}, Mean imag={sum(imag_parts)/len(imag_parts)}")

if __name__=="--main--":
          main()
