trying different algorithms
better choice of diags
plot M instead of W
report exit flag
changed sign of df