program assign2_2
implicit none
integer :: io,n,i
real, allocatable :: mat(:,:)
open(1,file='a2-2.dat')
do
   read(1,*,iostat=io) n
   if(io /= 0) exit
   allocate(mat(n,n))
   do i=1,n
      read(1,*) mat(i,:)
      write(*,*) mat(i,:)
   enddo
   deallocate(mat)
enddo
end program assign2_2