I want to replace the diagonal of a square list of matrices with another list of matrices. What is the fastest and most efficient way to do so. (I will need to do this for very large arrays)

Small example below

```
m1 = {{{{1, 2}, {3, 4}}, {{5, 6}, {7, 8}}}, {{{9, 10}, {11, 
      12}}, {{13, 14}, {15, 16}}}};

v1 = {{{11, 3}, {7, 5}}, {{13, 97}, {3, 16}}};

m1[[1, 1]] = v1[[1]]; m1[[2, 2]] = v1[[2]];

m1

{{{{11, 3}, {7, 5}}, {{5, 6}, {7, 8}}}, {{{9, 10}, {11, 
    12}}, {{13, 97}, {3, 16}}}}

```