Write a function that accepts two square matrices (`N x N` two dimensional arrays), and return the sum of the two. Both matrices being passed into the function will be of size `N x N` (square), containing only integers.

How to sum two matrices:

Take each cell `[n][m]` from the first matrix, and add it with the same `[n][m]` cell from the second matrix. This will be cell `[n][m]` of the solution matrix.

Visualization: 
```
|1 2 3|     |2 2 1|     |1+2 2+2 3+1|     |3 4 4|
|3 2 1|  +  |3 2 3|  =  |3+3 2+2 1+3|  =  |6 4 4|
|1 1 1|     |1 1 3|     |1+1 1+1 1+3|     |2 2 4|
```

## Example

Source: codewars | Difficulty: EASY
Tags: Matrices

Data structures

Starter code: def matrix_addition(a, b):
	

Solutions:
import numpy as np

def matrix_addition(a, b):
	return (np.mat(a) + np.mat(b)).tolist()


def matrix_addition(a, b):
	for row in range(len(a)):
		for index in range(len(a)):
			a[row][index] += b[row][index]
	return a


def matrix_addition(a, b):
	return [[sum(xs) for xs in zip(ra, rb)] for (ra, rb) in zip(a, b)]


def matrix_addition(a, b):
	return [[a[row][col] + b[row][col] for col in range(len(a[0]))] for row in range(len(a))]


from numpy import matrix

def matrix_addition(a, b):
	return (matrix(a) + matrix(b)).tolist()


def matrix_addition(a, b):
	return [[a[i][j] + b[i][j] for j in range(len(a))] for i in range(len(a))]


def matrix_addition(A, B):
	return [[cellA + cellB for (cellA, cellB) in zip(rowA, rowB)] for (rowA, rowB) in zip(A, B)]


import numpy as np

def matrix_addition(a, b):
	S = np.array(a) + np.array(b)
	return S.tolist()


def matrix_addition(a, b):
	result = [[a[i][j] + b[i][j] for j in range(len(a[0]))] for i in range(len(a))]
	return result