implemented matrix addition