# Matrix Diagonal Sum Lab

In this lab, you will be working on finding the sum of matrix diagonals. Given a square matrix `mat`

, your task is to return the sum of the matrix diagonals. You need to include the sum of all the elements on the primary diagonal and all the elements on the secondary diagonal that are not part of the primary diagonal.

## Lab Requirements

Make sure to follow these requirements:

- Use ESM import/export everywhere.
- The final length of the array
`testlog`

should be the same as the number of challenges. - The order of evaluation script try-catch blocks must match the order of challenges written.

## Description

Given a square matrix `mat`

, return the sum of the matrix diagonals.

Only include the sum of all the elements on the primary diagonal and all the elements on the secondary diagonal that are not part of the primary diagonal.

### Example 1:

**Input:** mat = [[**1**,2,**3**],
[4,**5**,6],
[**7**,8,**9**]]
**Output:** 25
**Explanation:** Diagonals sum: 1 + 5 + 9 + 3 + 7 = 25
Notice that element mat[1][1] = 5 is counted only once.

### Example 2:

**Input:** mat = [[**1**,1,1,**1**],
[1,**1**,**1**,1],
[1,**1**,**1**,1],
[**1**,1,1,**1**]]
**Output:** 8

### Example 3:

**Input:** mat = [[**5**]]
**Output:** 5

### Constraints:

`n == mat.length == mat[i].length`

`1 <= n <= 100`

`1 <= mat[i][j] <= 100`

## Challenges

- Implement the
`diagonalSum`

function that takes a square matrix`mat`

and returns the sum of the matrix diagonals. Make sure to export this function. - Test your implementation with various inputs and make sure it is working correctly.

## Initial File Structure

You will be provided with the following initial file structure:

`/** * @param {number[][]} mat * @return {number} */ var diagonalSum = function(mat) { };`

`{ "name": "codedamn-lab", "type": "module" }`

```
tabs: ['index.js']
terminals: ['yarn install']
```

Happy Coding!