úÎ"ô9      !"#$%&'()*+,-./012345678 (c) 2014 Kai ZhangBSD3None!"234mutable matrix+row-major matrix supporting efficient slice9:;<9:;<None!"HM =      = None  None  None  (c) 2014 Kai ZhangBSD3None!"3"3doesn't check if the list of list is a valid matrix#convert different matrix type&O(1) extract sub matrix)Fcreate a square matrix with given diagonal, other entries default to 0*Bcreate a rectangular matrix with default values and given diagonal+/extracts the diagonal from a rectangular matrix# !"#$%&"upper left corner of the submatrix$bottom right corner of the submatrix'()diagonal* default valuediagonal+, default value-./012345# !"#$%&'()*+,-./012345# !"#'$%&()*+,-.1/02345# !"#$%&'()*+,-./012345None6$ !"#$%&'()*+,-./012345666None7$ !"#$%&'()*+,-./012345777 (c) 2014 Kai ZhangBSD3None!"' !"#$%&'()*+,-./012345 None8$ !"#$%&'()*+,-./012345888>         !"#$%&'()*+,-./0123456789:;   #'<=>?matrices-0.3.0Data.Matrix.Generic.TypesData.Matrix.Generic.MutableData.Matrix.MutableData.Matrix.Storable.MutableData.Matrix.Unboxed.MutableData.Matrix.Generic.BaseData.Matrix.StorableData.Matrix.Unboxed Data.MatrixData.Matrix.GenericMMatrixMatrix fromMVectorthaw unsafeThawfreeze unsafeFreezewrite unsafeWriteread unsafeRead replicatenewcreaterowscolsdim! unsafeIndexemptymatrixflatten fromVectortoListtoRows toColumnsfromRows fromColumnstoLists fromListsconverttakeRow takeColumn subMatrixtridentdiagdiagRecttakeDiag fromBlocks isSymmetricforceimapmapfoldlmapMmapM_forMforM_ $fShowMatrix $fShowMatrix0<$>