The LU Decomposition
Worksheet by Russell Blyth and Mike May, S.J.
restart: with(LinearAlgebra): with(plots): with(plottools):
Warning, the name changecoords has been redefined
Warning, the assigned name arrow now has a global binding
Finding an LU Decomposition
First define a random 3 x 4 matrix.
A := RandomMatrix(3,4,generator=rand(-5..5));
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USJBRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjsvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EjOj1GKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2JS1GX282M1EiW0YoL0Zjb1EncHJlZml4RigvRmZvRjtGZ28vRmpvUS50aGlubWF0aHNwYWNlRigvRl1wRl9yL0ZfcEY7RmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiMtSSdtdGFibGVHRiU2JS1JJG10ckdGJTYmLUkkbXRkR0YlNiMtSSNtbkdGJTY5RmdwRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRltzNiMtRl5zNjlRIjRGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRltzNiMtRl5zNjlRIjBGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRltzNiMtRl5zNjlRKSZtaW51czs0RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZocjYmLUZbczYjLUZeczY5USI1RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USkmbWludXM7MkYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcb0Zocy1GW3M2Iy1GXnM2OVEpJm1pbnVzOzFGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRmhyNiZGZHQtRltzNiMtRl5zNjlRKSZtaW51czs1RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USIyRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRl51LUZfbzYzUSJdRigvRmNvUShwb3N0Zml4RihGXXJGZ29GXnIvRl1wUTJ2ZXJ5dGhpbm1hdGhzcGFjZUYoRmFyRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJBR0YoLUknUlRBQkxFR0YoNiUiKHdoUCUtSSdNQVRSSVhHRig2IzclNyYiIiIiIiUiIiEhIiU3JiIiJiEiI0ZpdyEiIjcmRlx4ISImIiIjRl54SSdNYXRyaXhHNiQlKnByb3RlY3RlZEdGKjcjLUZieDYjL0kkJWlkR0YoRmF3
Let's keep track of the elementary matrices corresponding to the row operations used, as well as the cumulative product of the elementary matrices, which we can do by starting with the matrix A augmented by the appropriate identity matrix:
Iden:=IdentityMatrix(3);
AAug := <A | Iden>;
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USVJZGVuRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjsvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EjOj1GKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2JS1GX282M1EiW0YoL0Zjb1EncHJlZml4RigvRmZvRjtGZ28vRmpvUS50aGlubWF0aHNwYWNlRigvRl1wRl9yL0ZfcEY7RmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiMtSSdtdGFibGVHRiU2JS1JJG10ckdGJTYlLUkkbXRkR0YlNiMtSSNtbkdGJTY5RmdwRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRltzNiMtRl5zNjlRIjBGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GY3MtRmhyNiVGY3NGanJGY3MtRmhyNiVGY3NGY3NGanItRl9vNjNRIl1GKC9GY29RKHBvc3RmaXhGKEZdckZnb0Zeci9GXXBRMnZlcnl0aGlubWF0aHNwYWNlRihGYXJGYHBGYnBGZXBGaHBGanBGXHFGXnFGYHFGYnFGZHE3Iy1fRilJLG1wcmludHNsYXNoR0YoNiQ3Iz5JJUlkZW5HRigtSSdSVEFCTEVHRig2JSIoI2ZfVy1JJ01BVFJJWEdGKDYjNyU3JSIiIiIiIUZldTclRmV1RmR1RmV1NyVGZXVGZXVGZHVJJ01hdHJpeEc2JCUqcHJvdGVjdGVkR0YqNyMtRmh1NiMvSSQlaWRHRihGXnU=
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USVBQXVnRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjsvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EjOj1GKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2JS1GX282M1EiW0YoL0Zjb1EncHJlZml4RigvRmZvRjtGZ28vRmpvUS50aGlubWF0aHNwYWNlRigvRl1wRl9yL0ZfcEY7RmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiMtSSdtdGFibGVHRiU2JS1JJG10ckdGJTYpLUkkbXRkR0YlNiMtSSNtbkdGJTY5RmdwRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRltzNiMtRl5zNjlRIjRGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRltzNiMtRl5zNjlRIjBGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRltzNiMtRl5zNjlRKSZtaW51czs0RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmpyRmhzRmhzLUZocjYpLUZbczYjLUZeczY5USI1RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USkmbWludXM7MkYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcb0Zocy1GW3M2Iy1GXnM2OVEpJm1pbnVzOzFGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GaHNGanJGaHMtRmhyNilGZHQtRltzNiMtRl5zNjlRKSZtaW51czs1RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USIyRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRl51RmhzRmhzRmpyLUZfbzYzUSJdRigvRmNvUShwb3N0Zml4RihGXXJGZ29GXnIvRl1wUTJ2ZXJ5dGhpbm1hdGhzcGFjZUYoRmFyRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSVBQXVnR0YoLUknUlRBQkxFR0YoNiUiKHdtXiUtSSdNQVRSSVhHRig2IzclNykiIiIiIiUiIiEhIiVGZ3dGaXdGaXc3KSIiJiEiI0ZpdyEiIkZpd0Znd0ZpdzcpRlx4ISImIiIjRl54Rml3Rml3Rmd3SSdNYXRyaXhHNiQlKnByb3RlY3RlZEdGKjcjLUZieDYjL0kkJWlkR0YoRmF3
Now we apply elementary row operations to the augmented matrix to get a row echelon form. We intend to use only elementary row operations of the form that add multiples of rows to lower rows (in order to get an LU-decomposition). We exhibit the elementary matrices at each step.
(Note that the matrix A is not truly "random" - every time the worksheet is started, it produces the same matrix A. Thus we know in advance which row operations are required in this worksheet. This is handy for teaching purposes. If you want a truly "random" matrix, you need to precede the randmatrix command with a "randomize()", which generates a seed for the random functions in Maple, based on the computer clock.)
type(AAug,Matrix);
NiQtSSNtaUc2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGKDY5USV0cnVlRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHRiwvJSp1bmRlcmxpbmVHRjUvJSpzdWJzY3JpcHRHRjUvJSxzdXBlcnNjcmlwdEdGNS8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjUvJStleGVjdXRhYmxlR0Y1LyUpcmVhZG9ubHlHRiwvJSljb21wb3NlZEdGNS8lKmNvbnZlcnRlZEdGNS8lK2ltc2VsZWN0ZWRHRjUvJSxwbGFjZWhvbGRlckdGNS8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZALyUvbWF0aGJhY2tncm91bmRHRkMvJStmb250ZmFtaWx5R0YvLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0YyNyNJJXRydWVHJSpwcm90ZWN0ZWRH
L1 := -AAug[2,1]/AAug[1,1];
AAugR := RowOperation(AAug,[2,1],L1);
E1 := RowOperation(Iden,[2,1],L1);
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USNMMUYoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y7LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRIzo9RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEpJm1pbnVzOzVGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSNMMUdGKCEiJjcjRmVy
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USZBQXVnUkYoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y7LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRIzo9RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUYkNiUtRl9vNjNRIltGKC9GY29RJ3ByZWZpeEYoL0Zmb0Y7RmdvL0Zqb1EudGhpbm1hdGhzcGFjZUYoL0ZdcEZfci9GX3BGO0ZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYjLUknbXRhYmxlR0YlNiUtSSRtdHJHRiU2KS1JJG10ZEdGJTYjLUkjbW5HRiU2OUZncEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvLUZbczYjLUZeczY5USI0RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USIwRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USkmbWludXM7NEYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcb0ZqckZoc0Zocy1GaHI2KUZocy1GW3M2Iy1GXnM2OVEqJm1pbnVzOzIyRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmhzLUZbczYjLUZeczY5USMxOUYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcby1GW3M2Iy1GXnM2OVEpJm1pbnVzOzVGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GanJGaHMtRmhyNiktRltzNiMtRl5zNjlRIjVGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GXnUtRltzNiMtRl5zNjlRIjJGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRltzNiMtRl5zNjlRKSZtaW51czsxRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmhzRmhzRmpyLUZfbzYzUSJdRigvRmNvUShwb3N0Zml4RihGXXJGZ29GXnIvRl1wUTJ2ZXJ5dGhpbm1hdGhzcGFjZUYoRmFyRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSZBQXVnUkdGKC1JJ1JUQUJMRUdGKDYlIigzPmYlLUknTUFUUklYR0YoNiM3JTcpIiIiIiIlIiIhISIlRlx4Rl54Rl54NylGXnghI0FGXngiIz4hIiZGXHhGXng3KSIiJkZjeCIiIyEiIkZeeEZeeEZceEknTWF0cml4RzYkJSpwcm90ZWN0ZWRHRio3Iy1GaHg2Iy9JJCVpZEdGKEZmdw==
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USNFMUYoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y7LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRIzo9RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUYkNiUtRl9vNjNRIltGKC9GY29RJ3ByZWZpeEYoL0Zmb0Y7RmdvL0Zqb1EudGhpbm1hdGhzcGFjZUYoL0ZdcEZfci9GX3BGO0ZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYjLUknbXRhYmxlR0YlNiUtSSRtdHJHRiU2JS1JJG10ZEdGJTYjLUkjbW5HRiU2OUZncEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvLUZbczYjLUZeczY5USIwRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmNzLUZocjYlLUZbczYjLUZeczY5USkmbWludXM7NUYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcb0ZqckZjcy1GaHI2JUZjc0Zjc0Zqci1GX282M1EiXUYoL0Zjb1EocG9zdGZpeEYoRl1yRmdvRl5yL0ZdcFEydmVyeXRoaW5tYXRoc3BhY2VGKEZhckZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcTcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkjRTFHRigtSSdSVEFCTEVHRig2JSIoR1xoJS1JJ01BVFJJWEdGKDYjNyU3JSIiIiIiIUZqdTclISImRml1Rmp1NyVGanVGanVGaXVJJ01hdHJpeEc2JCUqcHJvdGVjdGVkR0YqNyMtRl52NiMvSSQlaWRHRihGY3U=
L2 := -AAugR[3,1]/AAugR[1,1];
AAugR := RowOperation(AAugR,[3,1],L2);
E2 := RowOperation(Iden,[3,1],L2);
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USNMMkYoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y7LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRIzo9RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEpJm1pbnVzOzVGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSNMMkdGKCEiJjcjRmVy
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USZBQXVnUkYoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y7LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRIzo9RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUYkNiUtRl9vNjNRIltGKC9GY29RJ3ByZWZpeEYoL0Zmb0Y7RmdvL0Zqb1EudGhpbm1hdGhzcGFjZUYoL0ZdcEZfci9GX3BGO0ZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYjLUknbXRhYmxlR0YlNiUtSSRtdHJHRiU2KS1JJG10ZEdGJTYjLUkjbW5HRiU2OUZncEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvLUZbczYjLUZeczY5USI0RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USIwRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USkmbWludXM7NEYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcb0ZqckZoc0Zocy1GaHI2KUZocy1GW3M2Iy1GXnM2OVEqJm1pbnVzOzIyRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmhzLUZbczYjLUZeczY5USMxOUYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcby1GW3M2Iy1GXnM2OVEpJm1pbnVzOzVGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GanJGaHMtRmhyNilGaHMtRltzNiMtRl5zNjlRKiZtaW51czsyNUYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcby1GW3M2Iy1GXnM2OVEiMkYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcb0ZpdEZedUZoc0Zqci1GX282M1EiXUYoL0Zjb1EocG9zdGZpeEYoRl1yRmdvRl5yL0ZdcFEydmVyeXRoaW5tYXRoc3BhY2VGKEZhckZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcTcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmQUF1Z1JHRigtSSdSVEFCTEVHRig2JSIoOyFRWS1JJ01BVFJJWEdGKDYjNyU3KSIiIiIiJSIiISEiJUZnd0Zpd0ZpdzcpRml3ISNBRml3IiM+ISImRmd3Rml3NylGaXchI0QiIiNGXXhGXnhGaXdGZ3dJJ01hdHJpeEc2JCUqcHJvdGVjdGVkR0YqNyMtRmJ4NiMvSSQlaWRHRihGYXc=
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USNFMkYoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y7LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRIzo9RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUYkNiUtRl9vNjNRIltGKC9GY29RJ3ByZWZpeEYoL0Zmb0Y7RmdvL0Zqb1EudGhpbm1hdGhzcGFjZUYoL0ZdcEZfci9GX3BGO0ZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYjLUknbXRhYmxlR0YlNiUtSSRtdHJHRiU2JS1JJG10ZEdGJTYjLUkjbW5HRiU2OUZncEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvLUZbczYjLUZeczY5USIwRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmNzLUZocjYlRmNzRmpyRmNzLUZocjYlLUZbczYjLUZeczY5USkmbWludXM7NUYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcb0Zjc0Zqci1GX282M1EiXUYoL0Zjb1EocG9zdGZpeEYoRl1yRmdvRl5yL0ZdcFEydmVyeXRoaW5tYXRoc3BhY2VGKEZhckZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcTcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkjRTJHRigtSSdSVEFCTEVHRig2JSIoM0BtJS1JJ01BVFJJWEdGKDYjNyU3JSIiIiIiIUZqdTclRmp1Rml1Rmp1NyUhIiZGanVGaXVJJ01hdHJpeEc2JCUqcHJvdGVjdGVkR0YqNyMtRl52NiMvSSQlaWRHRihGY3U=
L3 := -AAugR[3,2]/AAugR[2,2];
AAugR := RowOperation(AAugR,[3,2],L3);
E3 := RowOperation(Iden,[3,2],L3);
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USNMM0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y7LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRIzo9RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkmbWZyYWNHRiU2Ki1JI21uR0YlNjlRKiZtaW51czsyNUYoRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRmpxNjlRIzIyRihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLyUubGluZXRoaWNrbmVzc0dRIjFGKC8lK2Rlbm9tYWxpZ25HUSdjZW50ZXJGKC8lKW51bWFsaWduR0Zoci8lKWJldmVsbGVkR0Y4RmJxRmRxNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSNMM0dGKCMhI0QiI0E3I0Zlcw==
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USZBQXVnUkYoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y7LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRIzo9RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUYkNiUtRl9vNjNRIltGKC9GY29RJ3ByZWZpeEYoL0Zmb0Y7RmdvL0Zqb1EudGhpbm1hdGhzcGFjZUYoL0ZdcEZfci9GX3BGO0ZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYjLUknbXRhYmxlR0YlNiUtSSRtdHJHRiU2KS1JJG10ZEdGJTYjLUkjbW5HRiU2OUZncEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvLUZbczYjLUZeczY5USI0RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USIwRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUZeczY5USkmbWludXM7NEYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcb0ZqckZoc0Zocy1GaHI2KUZocy1GW3M2Iy1GXnM2OVEqJm1pbnVzOzIyRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmhzLUZbczYjLUZeczY5USMxOUYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcby1GW3M2Iy1GXnM2OVEpJm1pbnVzOzVGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GanJGaHMtRmhyNilGaHNGaHMtRltzNiMtRl5zNjlRIjJGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRltzNiMtSSZtZnJhY0dGJTYqLUZeczY5USombWludXM7NTdGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRl5zNjlRIzIyRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLyUubGluZXRoaWNrbmVzc0dRIjFGKC8lK2Rlbm9tYWxpZ25HUSdjZW50ZXJGKC8lKW51bWFsaWduR0Zqdi8lKWJldmVsbGVkR0Y4RmJxRmRxLUZbczYjLUZddjYqLUZeczY5USMxNUYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcb0ZidkZldkZodkZbd0Zdd0ZicUZkcS1GW3M2Iy1GXXY2Ki1GXnM2OVEqJm1pbnVzOzI1RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmJ2RmV2Rmh2Rlt3Rl13RmJxRmRxRmpyLUZfbzYzUSJdRigvRmNvUShwb3N0Zml4RihGXXJGZ29GXnIvRl1wUTJ2ZXJ5dGhpbm1hdGhzcGFjZUYoRmFyRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSZBQXVnUkdGKC1JJ1JUQUJMRUdGKDYlIihTXm8lLUknTUFUUklYR0YoNiM3JTcpIiIiIiIlIiIhISIlRmV5Rmd5Rmd5NylGZ3khI0FGZ3kiIz4hIiZGZXlGZ3k3KUZneUZneSIiIyMhI2QiI0EjIiM6RmF6IyEjREZhekZleUknTWF0cml4RzYkJSpwcm90ZWN0ZWRHRio3Iy1GZno2Iy9JJCVpZEdGKEZfeQ==
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USNFM0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y7LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRIzo9RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUYkNiUtRl9vNjNRIltGKC9GY29RJ3ByZWZpeEYoL0Zmb0Y7RmdvL0Zqb1EudGhpbm1hdGhzcGFjZUYoL0ZdcEZfci9GX3BGO0ZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYjLUknbXRhYmxlR0YlNiUtSSRtdHJHRiU2JS1JJG10ZEdGJTYjLUkjbW5HRiU2OUZncEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvLUZbczYjLUZeczY5USIwRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmNzLUZocjYlRmNzRmpyRmNzLUZocjYlRmNzLUZbczYjLUkmbWZyYWNHRiU2Ki1GXnM2OVEqJm1pbnVzOzI1RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZeczY5USMyMkYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcby8lLmxpbmV0aGlja25lc3NHUSIxRigvJStkZW5vbWFsaWduR1EnY2VudGVyRigvJSludW1hbGlnbkdGXHUvJSliZXZlbGxlZEdGOEZicUZkcUZqci1GX282M1EiXUYoL0Zjb1EocG9zdGZpeEYoRl1yRmdvRl5yL0ZdcFEydmVyeXRoaW5tYXRoc3BhY2VGKEZhckZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcTcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkjRTNHRigtSSdSVEFCTEVHRig2JSIocyE0Wi1JJ01BVFJJWEdGKDYjNyU3JSIiIiIiIUZqdjclRmp2Rml2Rmp2NyVGanYjISNEIiNBRml2SSdNYXRyaXhHNiQlKnByb3RlY3RlZEdGKjcjLUZgdzYjL0kkJWlkR0YoRmN2
AAugR is in row echelon form. Note we don't bother to force leading ones. The matrix U can now be extracted:
U := DeleteColumn(AAugR,5..7);
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USJVRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjsvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EjOj1GKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2JS1GX282M1EiW0YoL0Zjb1EncHJlZml4RigvRmZvRjtGZ28vRmpvUS50aGlubWF0aHNwYWNlRigvRl1wRl9yL0ZfcEY7RmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiMtSSdtdGFibGVHRiU2JS1JJG10ckdGJTYmLUkkbXRkR0YlNiMtSSNtbkdGJTY5RmdwRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRltzNiMtRl5zNjlRIjRGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRltzNiMtRl5zNjlRIjBGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRltzNiMtRl5zNjlRKSZtaW51czs0RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZocjYmRmhzLUZbczYjLUZeczY5USombWludXM7MjJGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GaHMtRltzNiMtRl5zNjlRIzE5RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZocjYmRmhzRmhzLUZbczYjLUZeczY5USIyRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZbczYjLUkmbWZyYWNHRiU2Ki1GXnM2OVEqJm1pbnVzOzU3RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLUZeczY5USMyMkYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcby8lLmxpbmV0aGlja25lc3NHUSIxRigvJStkZW5vbWFsaWduR1EnY2VudGVyRigvJSludW1hbGlnbkdGZXYvJSliZXZlbGxlZEdGOEZicUZkcS1GX282M1EiXUYoL0Zjb1EocG9zdGZpeEYoRl1yRmdvRl5yL0ZdcFEydmVyeXRoaW5tYXRoc3BhY2VGKEZhckZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcTcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiVUdGKC1JJ1JUQUJMRUdGKDYlIigjKlx0JS1JJ01BVFJJWEdGKDYjNyU3JiIiIiIiJSIiISEiJTcmRmR4ISNBRmR4IiM+NyZGZHhGZHgiIiMjISNkIiNBSSdNYXRyaXhHNiQlKnByb3RlY3RlZEdGKjcjLUZeeTYjL0kkJWlkR0YoRlx4
The matrix B referred to in class is the product of the three elementary matrices used. This matrix B can also be extracted from AAugR:
E3.E2.E1;
B := DeleteColumn(AAugR,1..4);
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtb0dGJTYzUSJbRigvJSVmb3JtR1EncHJlZml4RigvJSZmZW5jZUdRJXRydWVGKC8lKnNlcGFyYXRvckdRJmZhbHNlRigvJSdsc3BhY2VHUS50aGlubWF0aHNwYWNlRigvJSdyc3BhY2VHRjsvJSlzdHJldGNoeUdGNS8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR1EqMkR+T3V0cHV0RigvJSVzaXplR1EjMTJGKC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigtRiQ2Iy1JJ210YWJsZUdGJTYlLUkkbXRyR0YlNiUtSSRtdGRHRiU2Iy1JI21uR0YlNjlGRy8lJ2ZhbWlseUdRMFRpbWVzfk5ld35Sb21hbkYoLyUlc2l6ZUdGUy8lJWJvbGRHRjgvJSdpdGFsaWNHRjgvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHRlYvJStiYWNrZ3JvdW5kR0ZZLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y1LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHRlAvJSptYXRoY29sb3JHRlYvJS9tYXRoYmFja2dyb3VuZEdGWS8lK2ZvbnRmYW1pbHlHRmRvLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGKC8lKW1hdGhzaXplR0ZTLUZdbzYjLUZgbzY5USIwRihGYm9GZW9GZ29GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXnJGYHItRmpuNiUtRl1vNiMtRmBvNjlRKSZtaW51czs1RihGYm9GZW9GZ29GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXnJGXG9GYHItRmpuNiUtRl1vNiMtSSZtZnJhY0dGJTYqLUZgbzY5USMxNUYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yLUZgbzY5USMyMkYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yLyUubGluZXRoaWNrbmVzc0dRIjFGKC8lK2Rlbm9tYWxpZ25HUSdjZW50ZXJGKC8lKW51bWFsaWduR0ZedC8lKWJldmVsbGVkR0Y4RlRGVy1GXW82Iy1GYXM2Ki1GYG82OVEqJm1pbnVzOzI1RihGYm9GZW9GZ29GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXnJGZnNGaXNGXHRGX3RGYXRGVEZXRlxvLUYtNjNRIl1GKC9GMVEocG9zdGZpeEYoRjNGNkY5L0Y9UTJ2ZXJ5dGhpbm1hdGhzcGFjZUYoRj5GQEZCRkVGSEZKRkxGTkZRRlRGVzcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjLUknUlRBQkxFR0YoNiUiKEs8KFstSSdNQVRSSVhHRig2IzclNyUiIiIiIiFGYXY3JSEiJkZgdkZhdjclIyIjOiIjQSMhI0RGZ3ZGYHZJJ01hdHJpeEc2JCUqcHJvdGVjdGVkR0YqNyMtRmp2NiMvSSQlaWRHRihGanU=
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USJCRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjsvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EjOj1GKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2JS1GX282M1EiW0YoL0Zjb1EncHJlZml4RigvRmZvRjtGZ28vRmpvUS50aGlubWF0aHNwYWNlRigvRl1wRl9yL0ZfcEY7RmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiMtSSdtdGFibGVHRiU2JS1JJG10ckdGJTYlLUkkbXRkR0YlNiMtSSNtbkdGJTY5RmdwRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRltzNiMtRl5zNjlRIjBGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GY3MtRmhyNiUtRltzNiMtRl5zNjlRKSZtaW51czs1RihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvRmpyRmNzLUZocjYlLUZbczYjLUkmbWZyYWNHRiU2Ki1GXnM2OVEjMTVGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8tRl5zNjlRIzIyRihGMEYzRjZGYHNGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmFzRlxvLyUubGluZXRoaWNrbmVzc0dRIjFGKC8lK2Rlbm9tYWxpZ25HUSdjZW50ZXJGKC8lKW51bWFsaWduR0ZhdS8lKWJldmVsbGVkR0Y4RmJxRmRxLUZbczYjLUZkdDYqLUZeczY5USombWludXM7MjVGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GaXRGXHVGX3VGYnVGZHVGYnFGZHFGanItRl9vNjNRIl1GKC9GY29RKHBvc3RmaXhGKEZdckZnb0Zeci9GXXBRMnZlcnl0aGlubWF0aHNwYWNlRihGYXJGYHBGYnBGZXBGaHBGanBGXHFGXnFGYHFGYnFGZHE3Iy1fRilJLG1wcmludHNsYXNoR0YoNiQ3Iz5JIkJHRigtSSdSVEFCTEVHRig2JSIoJT0pKlstSSdNQVRSSVhHRig2IzclNyUiIiIiIiFGZnc3JSEiJkZld0ZmdzclIyIjOiIjQSMhI0RGXHhGZXdJJ01hdHJpeEc2JCUqcHJvdGVjdGVkR0YqNyMtRl94NiMvSSQlaWRHRihGX3c=
The matrix L we seek is just the inverse of this B:
L := MatrixInverse(B);
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtaUdGJTY5USJMRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjsvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EjOj1GKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2JS1GX282M1EiW0YoL0Zjb1EncHJlZml4RigvRmZvRjtGZ28vRmpvUS50aGlubWF0aHNwYWNlRigvRl1wRl9yL0ZfcEY7RmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiMtSSdtdGFibGVHRiU2JS1JJG10ckdGJTYlLUkkbXRkR0YlNiMtSSNtbkdGJTY5RmdwRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRltzNiMtRl5zNjlRIjBGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GY3MtRmhyNiUtRltzNiMtRl5zNjlRIjVGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG9GanJGY3MtRmhyNiVGanMtRltzNiMtSSZtZnJhY0dGJTYqLUZeczY5USMyNUYoRjBGM0Y2RmBzRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZhc0Zcby1GXnM2OVEjMjJGKEYwRjNGNkZgc0Y8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYXNGXG8vJS5saW5ldGhpY2tuZXNzR1EiMUYoLyUrZGVub21hbGlnbkdRJ2NlbnRlckYoLyUpbnVtYWxpZ25HRmF1LyUpYmV2ZWxsZWRHRjhGYnFGZHFGanItRl9vNjNRIl1GKC9GY29RKHBvc3RmaXhGKEZdckZnb0Zeci9GXXBRMnZlcnl0aGlubWF0aHNwYWNlRihGYXJGYHBGYnBGZXBGaHBGanBGXHFGXnFGYHFGYnFGZHE3Iy1fRilJLG1wcmludHNsYXNoR0YoNiQ3Iz5JIkxHRigtSSdSVEFCTEVHRig2JSIoT25wIy1JJ01BVFJJWEdGKDYjNyU3JSIiIiIiIUZfdzclIiImRl53Rl93NyVGYXcjIiNEIiNBRl53SSdNYXRyaXhHNiQlKnByb3RlY3RlZEdGKjcjLUZmdzYjL0kkJWlkR0YoRmh2
Now note the remarkable relationship between the entries of L, the elementary matrices, and the multipliers used in the row reductions! The matrix L can in fact be written down without actually computing the inverse of B.
The off diagonal entries of L are the negatives of the multipliers used in the row operations.
The off diagonal entries of L are also the off diagonal entries of the inverses of the elementary matrices corresponding to the row operations.
[-L1, -L2, -L3];
[E1^(-1),E2^(-1),E3^(-1)];
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtb0dGJTYzUSJbRigvJSVmb3JtR1EncHJlZml4RigvJSZmZW5jZUdRJXRydWVGKC8lKnNlcGFyYXRvckdRJmZhbHNlRigvJSdsc3BhY2VHUS50aGlubWF0aHNwYWNlRigvJSdyc3BhY2VHRjsvJSlzdHJldGNoeUdGNS8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR1EqMkR+T3V0cHV0RigvJSVzaXplR1EjMTJGKC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigtRiQ2Jy1JI21uR0YlNjlRIjVGKC8lJ2ZhbWlseUdRMFRpbWVzfk5ld35Sb21hbkYoLyUlc2l6ZUdGUy8lJWJvbGRHRjgvJSdpdGFsaWNHRjgvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHRlYvJStiYWNrZ3JvdW5kR0ZZLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y1LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHRlAvJSptYXRoY29sb3JHRlYvJS9tYXRoYmFja2dyb3VuZEdGWS8lK2ZvbnRmYW1pbHlHRlxvLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGKC8lKW1hdGhzaXplR0ZTLUYtNjNRIixGKC9GMVEmaW5maXhGKC9GNEY4L0Y3RjUvRjpRJDBlbUYoL0Y9UTN2ZXJ5dGhpY2ttYXRoc3BhY2VGKC9GP0Y4RkBGQkZFRkhGSkZMRk5GUUZURldGZm5GaHEtSSZtZnJhY0dGJTYqLUZnbjY5USMyNUYoRmpuRl1vRl9vRmFvRmNvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmZxLUZnbjY5USMyMkYoRmpuRl1vRl9vRmFvRmNvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmZxLyUubGluZXRoaWNrbmVzc0dRIjFGKC8lK2Rlbm9tYWxpZ25HUSdjZW50ZXJGKC8lKW51bWFsaWduR0Zicy8lKWJldmVsbGVkR0Y4RlRGVy1GLTYzUSJdRigvRjFRKHBvc3RmaXhGKEYzRjZGOS9GPVEydmVyeXRoaW5tYXRoc3BhY2VGKEY+RkBGQkZFRkhGSkZMRk5GUUZURlc3IzclIiImRmB0IyIjRCIjQQ==
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtb0dGJTYzUSJbRigvJSVmb3JtR1EncHJlZml4RigvJSZmZW5jZUdRJXRydWVGKC8lKnNlcGFyYXRvckdRJmZhbHNlRigvJSdsc3BhY2VHUS50aGlubWF0aHNwYWNlRigvJSdyc3BhY2VHRjsvJSlzdHJldGNoeUdGNS8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR1EqMkR+T3V0cHV0RigvJSVzaXplR1EjMTJGKC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigtRiQ2Jy1GJDYlRiwtRiQ2Iy1JJ210YWJsZUdGJTYlLUkkbXRyR0YlNiUtSSRtdGRHRiU2Iy1JI21uR0YlNjlGRy8lJ2ZhbWlseUdRMFRpbWVzfk5ld35Sb21hbkYoLyUlc2l6ZUdGUy8lJWJvbGRHRjgvJSdpdGFsaWNHRjgvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHRlYvJStiYWNrZ3JvdW5kR0ZZLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y1LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHRlAvJSptYXRoY29sb3JHRlYvJS9tYXRoYmFja2dyb3VuZEdGWS8lK2ZvbnRmYW1pbHlHRmhvLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGKC8lKW1hdGhzaXplR0ZTLUZhbzYjLUZkbzY5USIwRihGZm9GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXXJGX3JGYnJGZHItRl5vNiUtRmFvNiMtRmRvNjlRIjVGKEZmb0Zpb0ZbcEZdcEZfcEZhcEZjcEZlcEZncEZpcEZbcUZdcUZfcUZhcUZjcUZlcUZncUZpcUZbckZdckZfckZickZgb0Zkci1GXm82JUZkckZkckZgby1GLTYzUSJdRigvRjFRKHBvc3RmaXhGKEYzRjZGOS9GPVEydmVyeXRoaW5tYXRoc3BhY2VGKEY+RkBGQkZFRkhGSkZMRk5GUUZURlctRi02M1EiLEYoL0YxUSZpbmZpeEYoL0Y0RjgvRjdGNS9GOlEkMGVtRigvRj1RM3Zlcnl0aGlja21hdGhzcGFjZUYoL0Y/RjhGQEZCRkVGSEZKRkxGTkZRRlRGVy1GJDYlRiwtRiQ2Iy1GW282JUZdby1GXm82JUZkckZgb0Zkci1GXm82JUZbc0ZkckZgb0Zic0Zpcy1GJDYlRiwtRiQ2Iy1GW282JUZdb0ZbdS1GXm82JUZkci1GYW82Iy1JJm1mcmFjR0YlNiotRmRvNjlRIzI1RihGZm9GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXXJGX3JGYnItRmRvNjlRIzIyRihGZm9GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXXJGX3JGYnIvJS5saW5ldGhpY2tuZXNzR1EiMUYoLyUrZGVub21hbGlnbkdRJ2NlbnRlckYoLyUpbnVtYWxpZ25HRmd2LyUpYmV2ZWxsZWRHRjhGVEZXRmBvRmJzRmJzNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM3JS1JJ1JUQUJMRUdGKDYlIig7KHBFLUknTUFUUklYR0YoNiM3JTclIiIiIiIhRl14NyUiIiZGXHhGXXg3JUZdeEZdeEZceEknTWF0cml4RzYkJSpwcm90ZWN0ZWRHRiotRmR3NiUiKGtsLSYtRmh3NiM3JUZbeDclRl14Rlx4Rl14NyVGX3hGXXhGXHhGYXgtRmR3NiUiKF9iMCYtRmh3NiM3JUZbeEZqeDclRl14IyIjRCIjQUZceEZheDcjNyUtRmF4NiMvSSQlaWRHRihGZnctRmF4NiMvRlt6RmZ4LUZheDYjL0ZbekZeeQ==
Check that A = LU
(L . U); (A);
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtb0dGJTYzUSJbRigvJSVmb3JtR1EncHJlZml4RigvJSZmZW5jZUdRJXRydWVGKC8lKnNlcGFyYXRvckdRJmZhbHNlRigvJSdsc3BhY2VHUS50aGlubWF0aHNwYWNlRigvJSdyc3BhY2VHRjsvJSlzdHJldGNoeUdGNS8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR1EqMkR+T3V0cHV0RigvJSVzaXplR1EjMTJGKC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigtRiQ2Iy1JJ210YWJsZUdGJTYlLUkkbXRyR0YlNiYtSSRtdGRHRiU2Iy1JI21uR0YlNjlGRy8lJ2ZhbWlseUdRMFRpbWVzfk5ld35Sb21hbkYoLyUlc2l6ZUdGUy8lJWJvbGRHRjgvJSdpdGFsaWNHRjgvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHRlYvJStiYWNrZ3JvdW5kR0ZZLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y1LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHRlAvJSptYXRoY29sb3JHRlYvJS9tYXRoYmFja2dyb3VuZEdGWS8lK2ZvbnRmYW1pbHlHRmRvLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGKC8lKW1hdGhzaXplR0ZTLUZdbzYjLUZgbzY5USI0RihGYm9GZW9GZ29GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXnItRl1vNiMtRmBvNjlRIjBGKEZib0Zlb0Znb0Zpb0ZbcEZdcEZfcEZhcEZjcEZlcEZncEZpcEZbcUZdcUZfcUZhcUZjcUZlcUZncUZpcUZbckZeci1GXW82Iy1GYG82OVEpJm1pbnVzOzRGKEZib0Zlb0Znb0Zpb0ZbcEZdcEZfcEZhcEZjcEZlcEZncEZpcEZbcUZdcUZfcUZhcUZjcUZlcUZncUZpcUZbckZeci1Gam42Ji1GXW82Iy1GYG82OVEiNUYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yLUZdbzYjLUZgbzY5USkmbWludXM7MkYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yRmVyLUZdbzYjLUZgbzY5USkmbWludXM7MUYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yLUZqbjYmRmFzLUZdbzYjLUZgbzY5USkmbWludXM7NUYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yLUZdbzYjLUZgbzY5USIyRihGYm9GZW9GZ29GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXnJGW3QtRi02M1EiXUYoL0YxUShwb3N0Zml4RihGM0Y2RjkvRj1RMnZlcnl0aGlubWF0aHNwYWNlRihGPkZARkJGRUZIRkpGTEZORlFGVEZXNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyMtSSdSVEFCTEVHRig2JSIoJ3okeiMtSSdNQVRSSVhHRig2IzclNyYiIiIiIiUiIiEhIiU3JiIiJiEiI0ZkdiEiIjcmRmd2ISImIiIjRml2SSdNYXRyaXhHNiQlKnByb3RlY3RlZEdGKjcjLUZddzYjL0kkJWlkR0YoRlx2
NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiUtSSNtb0dGJTYzUSJbRigvJSVmb3JtR1EncHJlZml4RigvJSZmZW5jZUdRJXRydWVGKC8lKnNlcGFyYXRvckdRJmZhbHNlRigvJSdsc3BhY2VHUS50aGlubWF0aHNwYWNlRigvJSdyc3BhY2VHRjsvJSlzdHJldGNoeUdGNS8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR1EqMkR+T3V0cHV0RigvJSVzaXplR1EjMTJGKC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigtRiQ2Iy1JJ210YWJsZUdGJTYlLUkkbXRyR0YlNiYtSSRtdGRHRiU2Iy1JI21uR0YlNjlGRy8lJ2ZhbWlseUdRMFRpbWVzfk5ld35Sb21hbkYoLyUlc2l6ZUdGUy8lJWJvbGRHRjgvJSdpdGFsaWNHRjgvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHRlYvJStiYWNrZ3JvdW5kR0ZZLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y1LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHRlAvJSptYXRoY29sb3JHRlYvJS9tYXRoYmFja2dyb3VuZEdGWS8lK2ZvbnRmYW1pbHlHRmRvLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGKC8lKW1hdGhzaXplR0ZTLUZdbzYjLUZgbzY5USI0RihGYm9GZW9GZ29GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXnItRl1vNiMtRmBvNjlRIjBGKEZib0Zlb0Znb0Zpb0ZbcEZdcEZfcEZhcEZjcEZlcEZncEZpcEZbcUZdcUZfcUZhcUZjcUZlcUZncUZpcUZbckZeci1GXW82Iy1GYG82OVEpJm1pbnVzOzRGKEZib0Zlb0Znb0Zpb0ZbcEZdcEZfcEZhcEZjcEZlcEZncEZpcEZbcUZdcUZfcUZhcUZjcUZlcUZncUZpcUZbckZeci1Gam42Ji1GXW82Iy1GYG82OVEiNUYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yLUZdbzYjLUZgbzY5USkmbWludXM7MkYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yRmVyLUZdbzYjLUZgbzY5USkmbWludXM7MUYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yLUZqbjYmRmFzLUZdbzYjLUZgbzY5USkmbWludXM7NUYoRmJvRmVvRmdvRmlvRltwRl1wRl9wRmFwRmNwRmVwRmdwRmlwRltxRl1xRl9xRmFxRmNxRmVxRmdxRmlxRltyRl5yLUZdbzYjLUZgbzY5USIyRihGYm9GZW9GZ29GaW9GW3BGXXBGX3BGYXBGY3BGZXBGZ3BGaXBGW3FGXXFGX3FGYXFGY3FGZXFGZ3FGaXFGW3JGXnJGW3QtRi02M1EiXUYoL0YxUShwb3N0Zml4RihGM0Y2RjkvRj1RMnZlcnl0aGlubWF0aHNwYWNlRihGPkZARkJGRUZIRkpGTEZORlFGVEZXNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyMtSSdSVEFCTEVHRig2JSIod2hQJS1JJ01BVFJJWEdGKDYjNyU3JiIiIiIiJSIiISEiJTcmIiImISIjRmR2ISIiNyZGZ3YhIiYiIiNGaXZJJ01hdHJpeEc2JCUqcHJvdGVjdGVkR0YqNyMtRl13NiMvSSQlaWRHRihGXHY=