implemented matrix. fixed Strassen