úÎ3¤-žh      !"#$%&'()*+,-./012345678 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g None6=K.Create a mutable matrix without initializationDerived methodsNone246mutable matrix hi    hiNone36=HKM/Default algorithm is O((m*n) * O(unsafeIndex)).:Extract a row. Default algorithm is O(n * O(unsafeIndex)).=Extract a column. Default algorithm is O(m * O(unsafeIndex)).HExtract the diagonal. Default algorithm is O(min(m,n) * O(unsafeIndex)).Derived methodsReturn the number of rowsReturn the number of columnsIndexing*O(m*n) Create a list by concatenating rowsO(m*n) Matrix construction`O(m*n) Create matrix from list of lists, it doesn't check if the list of list is a valid matrix O(m*n) Create matrix from rows!Extract a row."O(m) Return the rows#Extract a row.$O(m*n) Return the columns%O(m*n) List of lists number of columnsrow list !"#$%&  !"#$%&  !"#$%&  !"#$%&None 2346=K'Symmetric square matrix*#Upper triangular imap, i.e., i <= j '()*+,jkl !&'()*+,'(   !&)*+,'()*+,jklNone246-mutable matrix-./m -./ -./-./mNone0 /000None1 /111None 2346=K3"Compressed Sparse Row (CSR) matrix7rConstruct CSR from ascending association list. Items must be sorted first by row index, and then by column index.n%mutable sparse matrix not implemented 234567opnqrs  !"#$%23456756342  !#7  "$% 234567opnqrs None8 /888 None 2346=K9+row-major matrix supporting efficient slice;!O(m*n) Create matrix from columns<$O(m*n) Convert different matrix type=O(1) Extract sub matrix>O(m*n) Matrix transpose? O(m*n) Create an identity matrix@MO(m*n) Create a square matrix with given diagonal, other entries default to 0AIO(m*n) Create a rectangular matrix with default values and given diagonal.9:;<="upper left corner of the submatrix$bottom right corner of the submatrix>?@diagonalA default valuediagonalB default valueCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdtuD  !"#$%&9:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdD9:  !#  ;"$%<>=?@ABCDGEFHIJKLMNOPQRSTUVWXYZ[\]^_`abcd&-9:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdtu NoneeC  !"#$%&;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdeee NonefC  !"#$%&;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdfff NonegC  !"#$%&;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdgggv !"#$%&'()*+,-./012334567-899:;<    = > ? @ A B C D E F 5 4 G H I J K 7 L M N O P Q R S T 6 U V W X Y Z [ \ ] ^ _ ` a b   cdcefghijklm n opmatrices-0.4.2Data.Matrix.Generic.MutableData.Matrix.Symmetric.MutableData.Matrix.GenericData.Matrix.Symmetric!Data.Matrix.Dense.Generic.MutableData.Matrix.Storable.MutableData.Matrix.Unboxed.MutableData.Matrix.Sparse.GenericData.Matrix.MutableData.Matrix.Dense.GenericData.Matrix.StorableData.Matrix.Unboxed Data.MatrixMMatrixdim unsafeRead unsafeWritenew replicatewriteread SymMMatrixMatrix unsafeIndexunsafeFromVectorflatten unsafeTakeRowunsafeTakeColumntakeDiagthaw unsafeThawfreeze unsafeFreezeMutablerowscols!toListempty fromVectorfromListmatrix fromListsfromRowstakeRowtoRows takeColumn toColumnstoListscreate SymMatrixmapimapzipzipWith AssocListCSRZerozero fromAscAL fromColumnsconvert subMatrixtridentdiagdiagRect fromBlocks isSymmetricforcefoldlmapMmapM_forMforM_zipWith3zipWith4zipWith5zipWith6izipWith izipWith3 izipWith4 izipWith5 izipWith6zip3zip4zip5zip6zipWithM zipWithM_unzipunzip3unzip4unzip5unzip6sequence sequence_generateidx$fMMatrixSymMMatrixva$fMatrixSymMatrixvaTFCo:R:MutableSymMatrix$fMMatrixMMatrixvaTFCo:R:MutableCSRbinarySearchByBounds $fMatrixCSRva$fZero[] $fZeroDouble $fZeroInt$fMatrixMatrixvaTFCo:R:MutableMatrix