block-diagonal matrix