@palday In looking at the code for sparseL, motivated by my comment on a sparseA extractor for #878, I noticed that our _coord utility to return coordinate representation, (I, J, V), of a block of L duplicates the effect of SparseArrays.findnz. It seems desirable to use findnz instead of defining our own extractor and to add methods for the BlockedSparseMatrix and UniformBlockedDiagonal types. However, defining a method for the LinearAlgebra.Diagonal type would be type piracy. Is that a big deal and, if so, how would one avoid type piracy?