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

Difficulty: introductory

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

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