MtrxMultiModel0935882/0000700010244600004550000000000011332065354014425 5ustar csujejdcsugradMtrxMultiModel0935882/num_add.e0000600010244600004550000000054111332047040016174 0ustar csujejdcsugrad%eden /* This function adds the current value of Matrix C with the multiplication of the current vale of Matrix A and B */ func num_add{ execute ("C_"// str(currentC_col)//str(currentC_row)// "= C_" // str(currentC_col)//str(currentC_row)//"+ A_"//str(currentA_col)//str(currentA_row)//"* B_"//str(currentB_col)//str(currentB_row)// ";"); } num_add();MtrxMultiModel0935882/num_multi.e0000600010244600004550000000050111332063074016577 0ustar csujejdcsugrad%eden /*This function multiplies the current number in Matrix A and the one in Matrix B and is displayed in the current one from C.*/ func num_multi{ execute("C_"// str(currentC_col)//str(currentC_row)// "= A_"//str(currentA_col)//str(currentA_row)//"* B_"//str(currentB_col)//str(currentB_row)// ";"); } num_multi();MtrxMultiModel0935882/basicgrid.e0000600010244600004550000020115011332062204016512 0ustar csujejdcsugrad%eden ## File 1: initial set up for the basic sudoku model ## needs to be using tkeden-1.67 or later because of eddi requirements installeddi(); proc garbage_collect {}; %eddi ##definition of 3 matrices, status is going to be used to recognized if the digit has been used or not, or if in the case of C to mark the end of the multiplication. ##Matrices (4x4, to start!) matrixAgrid(rowix int, colix int, digit int, status int); matrixBgrid(rowix int, colix int, digit int, status int); matrixCgrid(rowix int, colix int, digit int, status int); %eden /* matrixAgrid << [1,1,5,0]; matrixAgrid << [2,2,5,0]; matrixAgrid << [3,3,5,0]; matrixAgrid << [4,4,5,0]; matrixBgrid << [1,1,5,0]; matrixBgrid << [1,2,7,0]; matrixBgrid << [1,3,8,0]; matrixBgrid << [1,4,5,0]; */ ##autocalc=0; %eddi row1A is matrixAgrid : rowix == 1 % colix, digit; row2A is matrixAgrid : rowix == 2 % colix, digit; row3A is matrixAgrid : rowix == 3 % colix, digit; row4A is matrixAgrid : rowix == 4 % colix, digit; row1B is matrixBgrid : rowix == 1 % colix, digit; row2B is matrixBgrid : rowix == 2 % colix, digit; row3B is matrixBgrid : rowix == 3 % colix, digit; row4B is matrixBgrid : rowix == 4 % colix, digit; row1C is matrixCgrid : rowix == 1 % colix, digit; row2C is matrixCgrid : rowix == 2 % colix, digit; row3C is matrixCgrid : rowix == 3 % colix, digit; row4C is matrixCgrid : rowix == 4 % colix, digit; col1A is matrixAgrid : colix == 1 % rowix, digit; col2A is matrixAgrid : colix == 2 % rowix, digit; col3A is matrixAgrid : colix == 3 % rowix, digit; col4A is matrixAgrid : colix == 4 % rowix, digit; col1B is matrixBgrid : colix == 1 % rowix, digit; col2B is matrixBgrid : colix == 2 % rowix, digit; col3B is matrixBgrid : colix == 3 % rowix, digit; col4B is matrixBgrid : colix == 4 % rowix, digit; col1C is matrixCgrid : colix == 1 % rowix, digit; col2C is matrixCgrid : colix == 2 % rowix, digit; col3C is matrixCgrid : colix == 3 % rowix, digit; col4C is matrixCgrid : colix == 4 % rowix, digit; ## blank MATRIX grid %eden ##MATRIX A A_11 = 0; A11_fixed=0; A_12 = 0; A12_fixed=0; A_3 = 0; A13_fixed=0; A_14 = 0; A14_fixed=0; A_21 = 0; A21_fixed=0; A_22 = 0; A22_fixed=0; A_23 = 0; A23_fixed=0; A_24 = 0; A24_fixed=0; A_31 = 0; A31_fixed=0; A_32 = 0; A32_fixed=0; A_33 = 0; A33_fixed=0; A_34 = 0; A34_fixed=0; A_41 = 0; A41_fixed=0; A_42 = 0; A42_fixed=0; A_43 = 0; A43_fixed=0; A_44 = 0; A44_fixed=0; ##MATRIX B B_11 = 0; B11_fixed=0; B_12 = 0; B12_fixed=0; B_13 = 0; B13_fixed=0; B_14 = 0; B14_fixed=0; B_21 = 0; B21_fixed=0; B_22 = 0; B22_fixed=0; B_23 = 0; B23_fixed=0; B_24 = 0; B24_fixed=0; B_31= 0; B31_fixed=0; B_32 = 0; B32_fixed=0; B_33 = 0; B33_fixed=0; B_34 = 0; B34_fixed=0; B_41 = 0; B41_fixed=0; B_42 = 0; B42_fixed=0; B_43 = 0; B43_fixed=0; B_44 = 0; B44_fixed=0; ##MATRIX C C_11 = 0; C11_fixed=0; C_12 = 0; C12_fixed=0; C_13 = 0; C13_fixed=0; C_14 = 0; C14_fixed=0; C_21 = 0; C21_fixed=0; C_22 = 0; C22_fixed=0; C_23 = 0; C23_fixed=0; C_24 = 0; C24_fixed=0; C_31 = 0; C31_fixed=0; C_32 = 0; C32_fixed=0; C_33 = 0; C33_fixed=0; C_34 = 0; C34_fixed=0; C_41 = 0; C41_fixed=0; C_42 = 0; C42_fixed=0; C_43 = 0; C43_fixed=0; C_44 = 0; C44_fixed=0; ##autocalc=1; ##MATRIX DEFINITOON: matrixAgrid is [[["int","int","int","int"],"rowix","colix","digit","status"], [1,1,A_11, A11_fixed],[1,2,A_21, A21_fixed],[1,3,A_31, A31_fixed],[1,4,A_41, A41_fixed],[2,1,A_12, A12_fixed],[2,2,A_22, A22_fixed],[2,3,A_32, A32_fixed],[2,4,A_42, A42_fixed],[3,1,A_13, A13_fixed],[3,2,A_23, A23_fixed],[3,3,A_33, A33_fixed],[3,4,A_43, A43_fixed],[4,1,A_14, A14_fixed],[4,2,A_24, A24_fixed],[4,3,A_34, A34_fixed],[4,4,A_44, A44_fixed]]; matrixBgrid is [[["int","int","int","int"],"rowix","colix","digit","status"], [1,1,B_11, B11_fixed],[1,2,B_21, B21_fixed],[1,3,B_31, B31_fixed],[1,4,B_41, B41_fixed],[2,1,B_12, B12_fixed],[2,2,B_22, B22_fixed],[2,3,B_32, B32_fixed],[2,4,B_42, B42_fixed],[3,1,B_13, B13_fixed],[3,2,B_23, B23_fixed],[3,3,B_33, B33_fixed],[3,4,B_43, B43_fixed],[4,1,B_14, B14_fixed],[4,2,B_24, B24_fixed],[4,3,B_34, B34_fixed],[4,4,B_44, B44_fixed]]; matrixCgrid is [[["int","int","int","int"],"rowix","colix","digit","status"], [1,1,C_11, C11_fixed],[1,2,C_21, C21_fixed],[1,3,C_31, C31_fixed],[1,4,C_41, C41_fixed],[2,1,C_12, C12_fixed],[2,2,C_22, C22_fixed],[2,3,C_32, C32_fixed],[2,4,C_42, C42_fixed],[3,1,C_13, C13_fixed],[3,2,C_23, C23_fixed],[3,3,C_33, C33_fixed],[3,4,C_43, C43_fixed],[4,1,C_14, C14_fixed],[4,2,C_24, C24_fixed],[4,3,C_34, C34_fixed],[4,4,C_44, C44_fixed]]; /* introduce slightly modified form of Beynon's sudoku file at this point */ %eden tcl("tk_focusFollowsMouse"); %scout string DFfont; string SD_bgcolour="white"; string SD_fgcolour="black"; string SD_bdcolour="black"; string SD_focus_colour="blue"; string SD_fixed_fgcolour="red"; string SD_relief="flat"; string SD_font=DFfont; string SD_fixed_font="{courier 20 bold}"; ## on linux integer spacer_x=15; integer spacer_y=2; integer spacer_xC=30; integer spacer_yC=2; %eden DFfont="{courier 20}"; %scout ##have to be adapted to the interface later. integer grid_startAx=10; integer grid_startAy=10; integer grid_startBx=150; integer grid_startBy=10; integer grid_startCx=300; integer grid_startCy=10; integer gridsquare_width=2; integer gridsquare_height=1; integer gridsquare_widthC=3; integer gridsquare_heightC=1; ##GRID MATRIX As window A1a; integer A1a_X1=grid_startAx; integer A1a_Y1=grid_startAy; string A1a_bdcolour=SD_bdcolour; string A1a_bgcolour=SD_bgcolour; integer A1a_border=1; string A1a_fgcolour=SD_fgcolour; string A1a_relief=SD_relief; window A2a; integer A2a_X1=grid_startAx; integer A2a_Y1=grid_startAy+1.r+spacer_y; string A2a_bdcolour=SD_bdcolour; string A2a_bgcolour=SD_bgcolour; integer A2a_border=1; string A2a_fgcolour=SD_fgcolour; string A2a_relief=SD_relief; window A3a; integer A3a_X1=grid_startAx; integer A3a_Y1=grid_startAy+2.r+(spacer_y); string A3a_bdcolour=SD_bdcolour; string A3a_bgcolour=SD_bgcolour; integer A3a_border=1; string A3a_fgcolour=SD_fgcolour; string A3a_relief=SD_relief;; window A4a; integer A4a_X1=grid_startAx; integer A4a_Y1=grid_startAy+3.r+(3*spacer_y); string A4a_bdcolour=SD_bdcolour; string A4a_bgcolour=SD_bgcolour; integer A4a_border=1; string A4a_fgcolour=SD_fgcolour; string A4a_relief=SD_relief; window B1a; integer B1a_X1=grid_startAx+1.c+spacer_x; integer B1a_Y1=grid_startAy; string B1a_bdcolour=SD_bdcolour; string B1a_bgcolour=SD_bgcolour; integer B1a_border=1; string B1a_fgcolour=SD_fgcolour; string B1a_relief=SD_relief; window B2a; integer B2a_X1=grid_startAx+1.c+spacer_x; integer B2a_Y1=grid_startAy+1.r+spacer_y; string B2a_bdcolour=SD_bdcolour; string B2a_bgcolour=SD_bgcolour; integer B2a_border=1; string B2a_fgcolour=SD_fgcolour; string B2a_relief=SD_relief; window B3a; integer B3a_X1=grid_startAx+1.c+spacer_x; integer B3a_Y1=grid_startAy+2.r+(2*spacer_y); string B3a_bdcolour=SD_bdcolour; string B3a_bgcolour=SD_bgcolour; integer B3a_border=1; string B3a_fgcolour=SD_fgcolour; string B3a_relief=SD_relief; window B4a; integer B4a_X1=grid_startAx+1.c+spacer_x; integer B4a_Y1=grid_startAy+3.r+(3*spacer_y); string B4a_bdcolour=SD_bdcolour; string B4a_bgcolour=SD_bgcolour; integer B4a_border=1; string B4a_fgcolour=SD_fgcolour; string B4a_relief=SD_relief; window C1a; integer C1a_X1=grid_startAx+2.c+(2*spacer_x); integer C1a_Y1=grid_startAy; string C1a_bdcolour=SD_bdcolour; string C1a_bgcolour=SD_bgcolour; integer C1a_border=1; string C1a_fgcolour=SD_fgcolour; string C1a_relief=SD_relief; window C2a; integer C2a_X1=grid_startAx+2.c+(2*spacer_x); integer C2a_Y1=grid_startAy+1.r+spacer_y; string C2a_bdcolour=SD_bdcolour; string C2a_bgcolour=SD_bgcolour; integer C2a_border=1; string C2a_fgcolour=SD_fgcolour; string C2a_relief=SD_relief; window C3a; integer C3a_X1=grid_startAx+2.c+(2*spacer_x); integer C3a_Y1=grid_startAy+2.r+(2*spacer_y); string C3a_bdcolour=SD_bdcolour; string C3a_bgcolour=SD_bgcolour; integer C3a_border=1; string C3a_fgcolour=SD_fgcolour; string C3a_relief=SD_relief; window C4a; integer C4a_X1=grid_startAx+2.c+(2*spacer_x); integer C4a_Y1=grid_startAy+3.r+(3*spacer_y); string C4a_bdcolour=SD_bdcolour; string C4a_bgcolour=SD_bgcolour; integer C4a_border=1; string C4a_fgcolour=SD_fgcolour; string C4a_relief=SD_relief; window D1a; integer D1a_X1=grid_startAx+3.c+(3*spacer_x); integer D1a_Y1=grid_startAy; string D1a_bdcolour=SD_bdcolour; string D1a_bgcolour=SD_bgcolour; integer D1a_border=1; string D1a_fgcolour=SD_fgcolour; string D1a_relief=SD_relief; window D2a; integer D2a_X1=grid_startAx+3.c+(3*spacer_x); integer D2a_Y1=grid_startAy+1.r+spacer_y; string D2a_bdcolour=SD_bdcolour; string D2a_bgcolour=SD_bgcolour; integer D2a_border=1; string D2a_fgcolour=SD_fgcolour; string D2a_relief=SD_relief; window D3a; integer D3a_X1=grid_startAx+3.c+(3*spacer_x); integer D3a_Y1=grid_startAy+2.r+(2*spacer_y); string D3a_bdcolour=SD_bdcolour; string D3a_bgcolour=SD_bgcolour; integer D3a_border=1; string D3a_fgcolour=SD_fgcolour; string D3a_relief=SD_relief; window D4a; integer D4a_X1=grid_startAx+3.c+(3*spacer_x); integer D4a_Y1=grid_startAy+3.r+(3*spacer_y); string D4a_bdcolour=SD_bdcolour; string D4a_bgcolour=SD_bgcolour; integer D4a_border=1; string D4a_fgcolour=SD_fgcolour; string D4a_relief=SD_relief; ##MATRIX B window A1b; integer A1b_X1=grid_startBx; integer A1b_Y1=grid_startBy; string A1b_bdcolour=SD_bdcolour; string A1b_bgcolour=SD_bgcolour; integer A1b_border=1; string A1b_fgcolour=SD_fgcolour; string A1b_relief=SD_relief; window A2b; integer A2b_X1=grid_startBx; integer A2b_Y1=grid_startBy+1.r+spacer_y; string A2b_bdcolour=SD_bdcolour; string A2b_bgcolour=SD_bgcolour; integer A2b_border=1; string A2b_fgcolour=SD_fgcolour; string A2b_relief=SD_relief; window A3b; integer A3b_X1=grid_startBx; integer A3b_Y1=grid_startBy+2.r+(2*spacer_y); string A3b_bdcolour=SD_bdcolour; string A3b_bgcolour=SD_bgcolour; integer A3b_border=1; string A3b_fgcolour=SD_fgcolour; string A3b_relief=SD_relief;; window A4b; integer A4b_X1=grid_startBx; integer A4b_Y1=grid_startBy+3.r+(3*spacer_y); string A4b_bdcolour=SD_bdcolour; string A4b_bgcolour=SD_bgcolour; integer A4b_border=1; string A4b_fgcolour=SD_fgcolour; string A4b_relief=SD_relief; window B1b; integer B1b_X1=grid_startBx+1.c+spacer_x; integer B1b_Y1=grid_startBy; string B1b_bdcolour=SD_bdcolour; string B1b_bgcolour=SD_bgcolour; integer B1b_border=1; string B1b_fgcolour=SD_fgcolour; string B1b_relief=SD_relief; window B2b; integer B2b_X1=grid_startBx+1.c+spacer_x; integer B2b_Y1=grid_startBy+1.r+spacer_y; string B2b_bdcolour=SD_bdcolour; string B2b_bgcolour=SD_bgcolour; integer B2b_border=1; string B2b_fgcolour=SD_fgcolour; string B2b_relief=SD_relief; window B3b; integer B3b_X1=grid_startBx+1.c+spacer_x; integer B3b_Y1=grid_startBy+2.r+(2*spacer_y); string B3b_bdcolour=SD_bdcolour; string B3b_bgcolour=SD_bgcolour; integer B3b_border=1; string B3b_fgcolour=SD_fgcolour; string B3b_relief=SD_relief; window B4b; integer B4b_X1=grid_startBx+1.c+spacer_x; integer B4b_Y1=grid_startBy+3.r+(3*spacer_y); string B4b_bdcolour=SD_bdcolour; string B4b_bgcolour=SD_bgcolour; integer B4b_border=1; string B4b_fgcolour=SD_fgcolour; string B4b_relief=SD_relief; window C1b; integer C1b_X1=grid_startBx+2.c+(2*spacer_x); integer C1b_Y1=grid_startBy; string C1b_bdcolour=SD_bdcolour; string C1b_bgcolour=SD_bgcolour; integer C1b_border=1; string C1b_fgcolour=SD_fgcolour; string C1b_relief=SD_relief; window C2b; integer C2b_X1=grid_startBx+2.c+(2*spacer_x); integer C2b_Y1=grid_startBy+1.r+spacer_y; string C2b_bdcolour=SD_bdcolour; string C2b_bgcolour=SD_bgcolour; integer C2b_border=1; string C2b_fgcolour=SD_fgcolour; string C2b_relief=SD_relief; window C3b; integer C3b_X1=grid_startBx+2.c+(2*spacer_x); integer C3b_Y1=grid_startBy+2.r+(2*spacer_y); string C3b_bdcolour=SD_bdcolour; string C3b_bgcolour=SD_bgcolour; integer C3b_border=1; string C3b_fgcolour=SD_fgcolour; string C3b_relief=SD_relief; window C4b; integer C4b_X1=grid_startBx+2.c+(2*spacer_x); integer C4b_Y1=grid_startBy+3.r+(3*spacer_y); string C4b_bdcolour=SD_bdcolour; string C4b_bgcolour=SD_bgcolour; integer C4b_border=1; string C4b_fgcolour=SD_fgcolour; string C4b_relief=SD_relief; window D1b; integer D1b_X1=grid_startBx+3.c+(3*spacer_x); integer D1b_Y1=grid_startBy; string D1b_bdcolour=SD_bdcolour; string D1b_bgcolour=SD_bgcolour; integer D1b_border=1; string D1b_fgcolour=SD_fgcolour; string D1b_relief=SD_relief; window D2b; integer D2b_X1=grid_startBx+3.c+(3*spacer_x); integer D2b_Y1=grid_startBy+1.r+spacer_y; string D2b_bdcolour=SD_bdcolour; string D2b_bgcolour=SD_bgcolour; integer D2b_border=1; string D2b_fgcolour=SD_fgcolour; string D2b_relief=SD_relief; window D3b; integer D3b_X1=grid_startBx+3.c+(3*spacer_x); integer D3b_Y1=grid_startBy+2.r+(2*spacer_y); string D3b_bdcolour=SD_bdcolour; string D3b_bgcolour=SD_bgcolour; integer D3b_border=1; string D3b_fgcolour=SD_fgcolour; string D3b_relief=SD_relief; window D4b; integer D4b_X1=grid_startBx+3.c+(3*spacer_x); integer D4b_Y1=grid_startBy+3.r+(3*spacer_y); string D4b_bdcolour=SD_bdcolour; string D4b_bgcolour=SD_bgcolour; integer D4b_border=1; string D4b_fgcolour=SD_fgcolour; string D4b_relief=SD_relief; #MATRIX C window A1c; integer A1c_X1=grid_startCx; integer A1c_Y1=grid_startCy; string A1c_bdcolour=SD_bdcolour; string A1c_bgcolour=SD_bgcolour; integer A1c_border=1; string A1c_fgcolour=SD_fgcolour; string A1c_relief=SD_relief; window A2c; integer A2c_X1=grid_startCx; integer A2c_Y1=grid_startCy+1.r+spacer_yC; string A2c_bdcolour=SD_bdcolour; string A2c_bgcolour=SD_bgcolour; integer A2c_border=1; string A2c_fgcolour=SD_fgcolour; string A2c_relief=SD_relief; window A3c; integer A3c_X1=grid_startCx; integer A3c_Y1=grid_startCy+2.r+(2*spacer_yC); string A3c_bdcolour=SD_bdcolour; string A3c_bgcolour=SD_bgcolour; integer A3c_border=1; string A3c_fgcolour=SD_fgcolour; string A3c_relief=SD_relief; window A4c; integer A4c_X1=grid_startCx; integer A4c_Y1=grid_startCy+3.r+(3*spacer_yC); string A4c_bdcolour=SD_bdcolour; string A4c_bgcolour=SD_bgcolour; integer A4c_border=1; string A4c_fgcolour=SD_fgcolour; string A4c_relief=SD_relief; window B1c; integer B1c_X1=grid_startCx+1.c+spacer_xC; integer B1c_Y1=grid_startCy; string B1c_bdcolour=SD_bdcolour; string B1c_bgcolour=SD_bgcolour; integer B1c_border=1; string B1c_fgcolour=SD_fgcolour; string B1c_relief=SD_relief; window B2c; integer B2c_X1=grid_startCx+1.c+spacer_xC; integer B2c_Y1=grid_startCy+1.r+spacer_yC; string B2c_bdcolour=SD_bdcolour; string B2c_bgcolour=SD_bgcolour; integer B2c_border=1; string B2c_fgcolour=SD_fgcolour; string B2c_relief=SD_relief; window B3c; integer B3c_X1=grid_startCx+1.c+spacer_xC; integer B3c_Y1=grid_startCy+2.r+(2*spacer_yC); string B3c_bdcolour=SD_bdcolour; string B3c_bgcolour=SD_bgcolour; integer B3c_border=1; string B3c_fgcolour=SD_fgcolour; string B3c_relief=SD_relief; window B4c; integer B4c_X1=grid_startCx+1.c+spacer_xC; integer B4c_Y1=grid_startCy+3.r+(3*spacer_yC); string B4c_bdcolour=SD_bdcolour; string B4c_bgcolour=SD_bgcolour; integer B4c_border=1; string B4c_fgcolour=SD_fgcolour; string B4c_relief=SD_relief; window C1c; integer C1c_X1=grid_startCx+2.c+(2*spacer_xC); integer C1c_Y1=grid_startCy; string C1c_bdcolour=SD_bdcolour; string C1c_bgcolour=SD_bgcolour; integer C1c_border=1; string C1c_fgcolour=SD_fgcolour; string C1c_relief=SD_relief; window C2c; integer C2c_X1=grid_startCx+2.c+(2*spacer_xC); integer C2c_Y1=grid_startCy+1.r+spacer_yC; string C2c_bdcolour=SD_bdcolour; string C2c_bgcolour=SD_bgcolour; integer C2c_border=1; string C2c_fgcolour=SD_fgcolour; string C2c_relief=SD_relief; window C3c; integer C3c_X1=grid_startCx+2.c+(2*spacer_xC); integer C3c_Y1=grid_startCy+2.r+(2*spacer_yC); string C3c_bdcolour=SD_bdcolour; string C3c_bgcolour=SD_bgcolour; integer C3c_border=1; string C3c_fgcolour=SD_fgcolour; string C3c_relief=SD_relief; window C4c; integer C4c_X1=grid_startCx+2.c+(2*spacer_xC); integer C4c_Y1=grid_startCy+3.r+(3*spacer_yC); string C4c_bdcolour=SD_bdcolour; string C4c_bgcolour=SD_bgcolour; integer C4c_border=1; string C4c_fgcolour=SD_fgcolour; string C4c_relief=SD_relief; window D1c; integer D1c_X1=grid_startCx+3.c+(3*spacer_xC); integer D1c_Y1=grid_startCy; string D1c_bdcolour=SD_bdcolour; string D1c_bgcolour=SD_bgcolour; integer D1c_border=1; string D1c_fgcolour=SD_fgcolour; string D1c_relief=SD_relief; window D2c; integer D2c_X1=grid_startCx+3.c+(3*spacer_xC); integer D2c_Y1=grid_startCy+1.r+spacer_yC; string D2c_bdcolour=SD_bdcolour; string D2c_bgcolour=SD_bgcolour; integer D2c_border=1; string D2c_fgcolour=SD_fgcolour; string D2c_relief=SD_relief; window D3c; integer D3c_X1=grid_startCx+3.c+(3*spacer_xC); integer D3c_Y1=grid_startCy+2.r+(2*spacer_yC); string D3c_bdcolour=SD_bdcolour; string D3c_bgcolour=SD_bgcolour; integer D3c_border=1; string D3c_fgcolour=SD_fgcolour; string D3c_relief=SD_relief; window D4c; integer D4c_X1=grid_startCx+3.c+(3*spacer_xC); integer D4c_Y1=grid_startCy+3.r+(3*spacer_yC); string D4c_bdcolour=SD_bdcolour; string D4c_bgcolour=SD_bgcolour; integer D4c_border=1; string D4c_fgcolour=SD_fgcolour; string D4c_relief=SD_relief; string A11=""; string A12=""; string A13=""; string A14=""; string A21=""; string A22=""; string A23=""; string A24=""; string A31=""; string A32=""; string A33=""; string A34=""; string A41=""; string A42=""; string A43=""; string A44=""; string B11=""; string B12=""; string B13=""; string B14=""; string B21=""; string B22=""; string B23=""; string B24=""; string B31=""; string B32=""; string B33=""; string B34=""; string B41=""; string B42=""; string B43=""; string B44=""; string C11=""; string C12=""; string C13=""; string C14=""; string C21=""; string C22=""; string C23=""; string C24=""; string C31=""; string C32=""; string C33=""; string C34=""; string C41=""; string C42=""; string C43=""; string C44=""; string A1a_font=SD_font; string A2a_font=SD_font; string A3a_font=SD_font; string A4a_font=SD_font; string B1a_font=SD_font; string B2a_font=SD_font; string B3a_font=SD_font; string B4a_font=SD_font; string C1a_font=SD_font; string C2a_font=SD_font; string C3a_font=SD_font; string C4a_font=SD_font; string D1a_font=SD_font; string D2a_font=SD_font; string D3a_font=SD_font; string D4a_font=SD_font; string A1b_font=SD_font; string A2b_font=SD_font; string A3b_font=SD_font; string A4b_font=SD_font; string B1b_font=SD_font; string B2b_font=SD_font; string B3b_font=SD_font; string B4b_font=SD_font; string C1b_font=SD_font; string C2b_font=SD_font; string C3b_font=SD_font; string C4b_font=SD_font; string D1b_font=SD_font; string D2b_font=SD_font; string D3b_font=SD_font; string D4b_font=SD_font; string A1c_font=SD_font; string A2c_font=SD_font; string A3c_font=SD_font; string A4c_font=SD_font; string B1c_font=SD_font; string B2c_font=SD_font; string B3c_font=SD_font; string B4c_font=SD_font; string C1c_font=SD_font; string C2c_font=SD_font; string C3c_font=SD_font; string C4c_font=SD_font; string D1c_font=SD_font; string D2c_font=SD_font; string D3c_font=SD_font; string D4c_font=SD_font; %eden A1a_font is A11_fixed?SD_fixed_font:SD_font; A2a_font is A11_fixed?SD_fixed_font:SD_font; A3a_font is A13_fixed?SD_fixed_font:SD_font; A4a_font is A14_fixed?SD_fixed_font:SD_font; B1a_font is A21_fixed?SD_fixed_font:SD_font; B2a_font is A22_fixed?SD_fixed_font:SD_font; B3a_font is A23_fixed?SD_fixed_font:SD_font; B4a_font is A24_fixed?SD_fixed_font:SD_font; C1a_font is A31_fixed?SD_fixed_font:SD_font; C2a_font is A32_fixed?SD_fixed_font:SD_font; C3a_font is A33_fixed?SD_fixed_font:SD_font; C4a_font is A34_fixed?SD_fixed_font:SD_font; D1a_font is A41_fixed?SD_fixed_font:SD_font; D2a_font is A42_fixed?SD_fixed_font:SD_font; D3a_font is A43_fixed?SD_fixed_font:SD_font; D4a_font is A44_fixed?SD_fixed_font:SD_font; A1b_font is B11_fixed?SD_fixed_font:SD_font; A2b_font is B12_fixed?SD_fixed_font:SD_font; A3b_font is B13_fixed?SD_fixed_font:SD_font; A4b_font is B14_fixed?SD_fixed_font:SD_font; B1b_font is B21_fixed?SD_fixed_font:SD_font; B2b_font is B22_fixed?SD_fixed_font:SD_font; B3b_font is B23_fixed?SD_fixed_font:SD_font; B4b_font is B24_fixed?SD_fixed_font:SD_font; C1b_font is B31_fixed?SD_fixed_font:SD_font; C2b_font is B32_fixed?SD_fixed_font:SD_font; C3b_font is B33_fixed?SD_fixed_font:SD_font; C4b_font is B34_fixed?SD_fixed_font:SD_font; D1b_font is B41_fixed?SD_fixed_font:SD_font; D2b_font is B42_fixed?SD_fixed_font:SD_font; D3b_font is B43_fixed?SD_fixed_font:SD_font; D4b_font is B44_fixed?SD_fixed_font:SD_font; A1c_font is C11_fixed?SD_fixed_font:SD_font; A2c_font is C12_fixed?SD_fixed_font:SD_font; A3c_font is C13_fixed?SD_fixed_font:SD_font; A4c_font is C14_fixed?SD_fixed_font:SD_font; B1c_font is C21_fixed?SD_fixed_font:SD_font; B2c_font is C22_fixed?SD_fixed_font:SD_font; B3c_font is C23_fixed?SD_fixed_font:SD_font; B4c_font is C24_fixed?SD_fixed_font:SD_font; C1c_font is C31_fixed?SD_fixed_font:SD_font; C2c_font is C32_fixed?SD_fixed_font:SD_font; C3c_font is C33_fixed?SD_fixed_font:SD_font; C4c_font is C34_fixed?SD_fixed_font:SD_font; D1c_font is C41_fixed?SD_fixed_font:SD_font; D2c_font is C42_fixed?SD_fixed_font:SD_font; D3c_font is C43_fixed?SD_fixed_font:SD_font; D4c_font is C44_fixed?SD_fixed_font:SD_font; ##COLOUR A1a_fgcolour is A11_fixed?SD_fixed_fgcolour:SD_fgcolour; A2a_fgcolour is A12_fixed?SD_fixed_fgcolour:SD_fgcolour; A3a_fgcolour is A13_fixed?SD_fixed_fgcolour:SD_fgcolour; A4a_fgcolour is A14_fixed?SD_fixed_fgcolour:SD_fgcolour; B1a_fgcolour is A21_fixed?SD_fixed_fgcolour:SD_fgcolour; B2a_fgcolour is A22_fixed?SD_fixed_fgcolour:SD_fgcolour; B3a_fgcolour is A23_fixed?SD_fixed_fgcolour:SD_fgcolour; B4a_fgcolour is A24_fixed?SD_fixed_fgcolour:SD_fgcolour; C1a_fgcolour is A31_fixed?SD_fixed_fgcolour:SD_fgcolour; C2a_fgcolour is A32_fixed?SD_fixed_fgcolour:SD_fgcolour; C3a_fgcolour is A33_fixed?SD_fixed_fgcolour:SD_fgcolour; C4a_fgcolour is A34_fixed?SD_fixed_fgcolour:SD_fgcolour; D1a_fgcolour is A41_fixed?SD_fixed_fgcolour:SD_fgcolour; D2a_fgcolour is A42_fixed?SD_fixed_fgcolour:SD_fgcolour; D3a_fgcolour is A43_fixed?SD_fixed_fgcolour:SD_fgcolour; D4a_fgcolour is A44_fixed?SD_fixed_fgcolour:SD_fgcolour; A1b_fgcolour is B11_fixed?SD_fixed_fgcolour:SD_fgcolour; A2b_fgcolour is B12_fixed?SD_fixed_fgcolour:SD_fgcolour; A3b_fgcolour is B13_fixed?SD_fixed_fgcolour:SD_fgcolour; A4b_fgcolour is B14_fixed?SD_fixed_fgcolour:SD_fgcolour; B1b_fgcolour is B21_fixed?SD_fixed_fgcolour:SD_fgcolour; B2b_fgcolour is B22_fixed?SD_fixed_fgcolour:SD_fgcolour; B3b_fgcolour is B23_fixed?SD_fixed_fgcolour:SD_fgcolour; B4b_fgcolour is B24_fixed?SD_fixed_fgcolour:SD_fgcolour; C1b_fgcolour is B31_fixed?SD_fixed_fgcolour:SD_fgcolour; C2b_fgcolour is B32_fixed?SD_fixed_fgcolour:SD_fgcolour; C3b_fgcolour is B33_fixed?SD_fixed_fgcolour:SD_fgcolour; C4b_fgcolour is B34_fixed?SD_fixed_fgcolour:SD_fgcolour; D1b_fgcolour is B41_fixed?SD_fixed_fgcolour:SD_fgcolour; D2b_fgcolour is B42_fixed?SD_fixed_fgcolour:SD_fgcolour; D3b_fgcolour is B43_fixed?SD_fixed_fgcolour:SD_fgcolour; D4b_fgcolour is B44_fixed?SD_fixed_fgcolour:SD_fgcolour; A1c_fgcolour is C11_fixed?SD_fixed_fgcolour:SD_fgcolour; A2c_fgcolour is C12_fixed?SD_fixed_fgcolour:SD_fgcolour; A3c_fgcolour is C13_fixed?SD_fixed_fgcolour:SD_fgcolour; A4c_fgcolour is C14_fixed?SD_fixed_fgcolour:SD_fgcolour; B1c_fgcolour is C21_fixed?SD_fixed_fgcolour:SD_fgcolour; B2c_fgcolour is C22_fixed?SD_fixed_fgcolour:SD_fgcolour; B3c_fgcolour is C23_fixed?SD_fixed_fgcolour:SD_fgcolour; B4c_fgcolour is C24_fixed?SD_fixed_fgcolour:SD_fgcolour; C1c_fgcolour is C31_fixed?SD_fixed_fgcolour:SD_fgcolour; C2c_fgcolour is C32_fixed?SD_fixed_fgcolour:SD_fgcolour; C3c_fgcolour is C33_fixed?SD_fixed_fgcolour:SD_fgcolour; C4c_fgcolour is C34_fixed?SD_fixed_fgcolour:SD_fgcolour; D1c_fgcolour is C41_fixed?SD_fixed_fgcolour:SD_fgcolour; D2c_fgcolour is C42_fixed?SD_fixed_fgcolour:SD_fgcolour; D3c_fgcolour is C43_fixed?SD_fixed_fgcolour:SD_fgcolour; D4c_fgcolour is C44_fixed?SD_fixed_fgcolour:SD_fgcolour; ##FOCUS COLOUR A1a_bgcolour is a1A_focus?SD_focus_colour:SD_bgcolour; A2a_bgcolour is a2A_focus?SD_focus_colour:SD_bgcolour; A3a_bgcolour is a3A_focus?SD_focus_colour:SD_bgcolour; A4a_bgcolour is a4A_focs?SD_focus_colour:SD_bgcolour; B1a_bgcolour is b1A_focus?SD_focus_colour:SD_bgcolour; B2a_bgcolour is b2A_focus?SD_focus_colour:SD_bgcolour; B3a_bgcolour is b3A_focus?SD_focus_colour:SD_bgcolour; B4a_bgcolour is b4A_focus?SD_focus_colour:SD_bgcolour; C1a_bgcolour is c1A_focus?SD_focus_colour:SD_bgcolour; C2a_bgcolour is c2A_focus?SD_focus_colour:SD_bgcolour; C3a_bgcolour is c3A_focus?SD_focus_colour:SD_bgcolour; C4a_bgcolour is c4A_focus?SD_focus_colour:SD_bgcolour; D1a_bgcolour is d1A_focus?SD_focus_colour:SD_bgcolour; D2a_bgcolour is d2A_focus?SD_focus_colour:SD_bgcolour; D3a_bgcolour is d3A_focus?SD_focus_colour:SD_bgcolour; D4a_bgcolour is d4A_focus?SD_focus_colour:SD_bgcolour; A1b_bgcolour is a1B_focus?SD_focus_colour:SD_bgcolour; A2b_bgcolour is a2B_focus?SD_focus_colour:SD_bgcolour; A3b_bgcolour is a3B_focus?SD_focus_colour:SD_bgcolour; A4b_bgcolour is a4B_focus?SD_focus_colour:SD_bgcolour; B1b_bgcolour is b1B_focus?SD_focus_colour:SD_bgcolour; B2b_bgcolour is b2B_focus?SD_focus_colour:SD_bgcolour; B3b_bgcolour is b3B_focus?SD_focus_colour:SD_bgcolour; B4b_bgcolour is b4B_focus?SD_focus_colour:SD_bgcolour; C1b_bgcolour is c1B_focus?SD_focus_colour:SD_bgcolour; C2b_bgcolour is c2B_focus?SD_focus_colour:SD_bgcolour; C3b_bgcolour is c3B_focus?SD_focus_colour:SD_bgcolour; C4b_bgcolour is c4B_focus?SD_focus_colour:SD_bgcolour; D1b_bgcolour is d1B_focus?SD_focus_colour:SD_bgcolour; D2b_bgcolour is d2B_focus?SD_focus_colour:SD_bgcolour; D3b_bgcolour is d3B_focus?SD_focus_colour:SD_bgcolour; D4b_bgcolour is d4B_focus?SD_focus_colour:SD_bgcolour; A1c_bgcolour is a1C_focus?SD_focus_colour:SD_bgcolour; A2c_bgcolour is a2C_focus?SD_focus_colour:SD_bgcolour; A3c_bgcolour is a3C_focus?SD_focus_colour:SD_bgcolour; A4c_bgcolour is a4C_focus?SD_focus_colour:SD_bgcolour; B1c_bgcolour is b1C_focus?SD_focus_colour:SD_bgcolour; B2c_bgcolour is b2C_focus?SD_focus_colour:SD_bgcolour; B3c_bgcolour is b3C_focus?SD_focus_colour:SD_bgcolour; B4c_bgcolour is b4C_focus?SD_focus_colour:SD_bgcolour; C1c_bgcolour is c1C_focus?SD_focus_colour:SD_bgcolour; C2c_bgcolour is c2C_focus?SD_focus_colour:SD_bgcolour; C3c_bgcolour is c3C_focus?SD_focus_colour:SD_bgcolour; C4c_bgcolour is c4C_focus?SD_focus_colour:SD_bgcolour; D1c_bgcolour is d1C_focus?SD_focus_colour:SD_bgcolour; D2c_bgcolour is d2C_focus?SD_focus_colour:SD_bgcolour; D3c_bgcolour is d3C_focus?SD_focus_colour:SD_bgcolour; D4c_bgcolour is d4C_focus?SD_focus_colour:SD_bgcolour; %scout ##MATRIX A ##ABILITATE THE TEXT WINDOW window A1a = { type: TEXT frame: ([{A1a_X1, A1a_Y1}, {A1a_X1+gridsquare_width.c,A1a_Y1+gridsquare_height.r}]) font: A1a_font bgcolor: A1a_bgcolour fgcolor: A1a_fgcolour bdcolor: A1a_bdcolour border: A1a_border relief: A1a_relief alignment: CENTRE sensitive: ON string: A11 }; window A2a = { type: TEXT frame: ([{A2a_X1, A2a_Y1}, {A2a_X1+gridsquare_width.c,A2a_Y1+gridsquare_height.r}]) font: A1a_font bgcolor: A2a_bgcolour fgcolor: A2a_fgcolour bdcolor: A2a_bdcolour border: A2a_border relief: A2a_relief alignment: CENTRE sensitive: ON string: A12 }; window A3a = { type: TEXT frame: ([{A3a_X1, A3a_Y1}, {A3a_X1+gridsquare_width.c,A3a_Y1+gridsquare_height.r}]) font: A3a_font bgcolor: A3a_bgcolour fgcolor: A3a_fgcolour bdcolor: A3a_bdcolour border: A3a_border relief: A3a_relief alignment: CENTRE sensitive: ON string: A13 }; window A4a = { type: TEXT frame: ([{A4a_X1, A4a_Y1}, {A4a_X1+gridsquare_width.c,A4a_Y1+gridsquare_height.r}]) font: A4a_font bgcolor: A4a_bgcolour fgcolor: A4a_fgcolour bdcolor: A4a_bdcolour border: A4a_border relief: A4a_relief alignment: CENTRE sensitive: ON string: A14 }; window B1a = { type: TEXT frame: ([{B1a_X1, B1a_Y1}, {B1a_X1+gridsquare_width.c,B1a_Y1+gridsquare_height.r}]) font: B1a_font bgcolor: B1a_bgcolour fgcolor: B1a_fgcolour bdcolor: B1a_bdcolour border: B1a_border relief: B1a_relief alignment: CENTRE sensitive: ON string: A21 }; window B2a = { type: TEXT frame: ([{B2a_X1, B2a_Y1}, {B2a_X1+gridsquare_width.c,B2a_Y1+gridsquare_height.r}]) font: B2a_font bgcolor: B2a_bgcolour fgcolor: B2a_fgcolour bdcolor: B2a_bdcolour border: B2a_border relief: B2a_relief alignment: CENTRE sensitive: ON string: A22 }; window B3a = { type: TEXT frame: ([{B3a_X1, B3a_Y1}, {B3a_X1+gridsquare_width.c,B3a_Y1+gridsquare_height.r}]) font: B3a_font bgcolor: B3a_bgcolour fgcolor: B3a_fgcolour bdcolor: B3a_bdcolour border: B3a_border relief: B3a_relief alignment: CENTRE sensitive: ON string: A23 }; window B4a = { type: TEXT frame: ([{B4a_X1, B4a_Y1}, {B4a_X1+gridsquare_width.c,B4a_Y1+gridsquare_height.r}]) font: B4a_font bgcolor: B4a_bgcolour fgcolor: B4a_fgcolour bdcolor: B4a_bdcolour border: B4a_border relief: B4a_relief alignment: CENTRE sensitive: ON string: A24 }; window C1a = { type: TEXT frame: ([{C1a_X1, C1a_Y1}, {C1a_X1+gridsquare_width.c,C1a_Y1+gridsquare_height.r}]) font: C1a_font bgcolor: C1a_bgcolour fgcolor: C1a_fgcolour bdcolor: C1a_bdcolour border: C1a_border relief: C1a_relief alignment: CENTRE sensitive: ON string: A31 }; window C2a = { type: TEXT frame: ([{C2a_X1, C2a_Y1}, {C2a_X1+gridsquare_width.c,C2a_Y1+gridsquare_height.r}]) font: C2a_font bgcolor: C2a_bgcolour fgcolor: C2a_fgcolour bdcolor: C2a_bdcolour border: C2a_border relief: C2a_relief alignment: CENTRE sensitive: ON string: A32 }; window C3a = { type: TEXT frame: ([{C3a_X1, C3a_Y1}, {C3a_X1+gridsquare_width.c,C3a_Y1+gridsquare_height.r}]) font: C3a_font bgcolor: C3a_bgcolour fgcolor: C3a_fgcolour bdcolor: C3a_bdcolour border: C3a_border relief: C3a_relief alignment: CENTRE sensitive: ON string: A33 }; window C4a = { type: TEXT frame: ([{C4a_X1, C4a_Y1}, {C4a_X1+gridsquare_width.c,C4a_Y1+gridsquare_height.r}]) font: C4a_font bgcolor: C4a_bgcolour fgcolor: C4a_fgcolour bdcolor: C4a_bdcolour border: C4a_border relief: C4a_relief alignment: CENTRE sensitive: ON string: A34 }; window D1a = { type: TEXT frame: ([{D1a_X1, D1a_Y1}, {D1a_X1+gridsquare_width.c,D1a_Y1+gridsquare_height.r}]) font: D1a_font bgcolor: D1a_bgcolour fgcolor: D1a_fgcolour bdcolor: D1a_bdcolour border: D1a_border relief: D1a_relief alignment: CENTRE sensitive: ON string: A41 }; window D2a = { type: TEXT frame: ([{D2a_X1, D2a_Y1}, {D2a_X1+gridsquare_width.c,D2a_Y1+gridsquare_height.r}]) font: D2a_font bgcolor: D2a_bgcolour fgcolor: D2a_fgcolour bdcolor: D2a_bdcolour border: D2a_border relief: D2a_relief alignment: CENTRE sensitive: ON string: A42 }; window D3a = { type: TEXT frame: ([{D3a_X1, D3a_Y1}, {D3a_X1+gridsquare_width.c,D3a_Y1+gridsquare_height.r}]) font: D3a_font bgcolor: D3a_bgcolour fgcolor: D3a_fgcolour bdcolor: D3a_bdcolour border: D3a_border relief: D3a_relief alignment: CENTRE sensitive: ON string: A43 }; window D4a = { type: TEXT frame: ([{D4a_X1, D4a_Y1}, {D4a_X1+gridsquare_width.c,D4a_Y1+gridsquare_height.r}]) font: D4a_font bgcolor: D4a_bgcolour fgcolor: D4a_fgcolour bdcolor: D4a_bdcolour border: D4a_border relief: D4a_relief alignment: CENTRE sensitive: ON string: A44 }; ##MATRIX B window A1b = { type: TEXT frame: ([{A1b_X1, A1b_Y1}, {A1b_X1+gridsquare_width.c,A1b_Y1+gridsquare_height.r}]) font: A1b_font bgcolor: A1b_bgcolour fgcolor: A1b_fgcolour bdcolor: A1b_bdcolour border: A1b_border relief: A1b_relief alignment: CENTRE sensitive: ON string: B11 }; window A2b = { type: TEXT frame: ([{A2b_X1, A2b_Y1}, {A2b_X1+gridsquare_width.c,A2b_Y1+gridsquare_height.r}]) font: A1b_font bgcolor: A2b_bgcolour fgcolor: A2b_fgcolour bdcolor: A2b_bdcolour border: A2b_border relief: A2b_relief alignment: CENTRE sensitive: ON string: B12 }; window A3b = { type: TEXT frame: ([{A3b_X1, A3b_Y1}, {A3b_X1+gridsquare_width.c,A3b_Y1+gridsquare_height.r}]) font: A3b_font bgcolor: A3b_bgcolour fgcolor: A3b_fgcolour bdcolor: A3b_bdcolour border: A3b_border relief: A3b_relief alignment: CENTRE sensitive: ON string: B13 }; window A4b = { type: TEXT frame: ([{A4b_X1, A4b_Y1}, {A4b_X1+gridsquare_width.c,A4b_Y1+gridsquare_height.r}]) font: A4b_font bgcolor: A4b_bgcolour fgcolor: A4b_fgcolour bdcolor: A4b_bdcolour border: A4b_border relief: A4b_relief alignment: CENTRE sensitive: ON string: B14 }; window B1b = { type: TEXT frame: ([{B1b_X1, B1b_Y1}, {B1b_X1+gridsquare_width.c,B1b_Y1+gridsquare_height.r}]) font: B1b_font bgcolor: B1b_bgcolour fgcolor: B1b_fgcolour bdcolor: B1b_bdcolour border: B1b_border relief: B1b_relief alignment: CENTRE sensitive: ON string: B21 }; window B2b = { type: TEXT frame: ([{B2b_X1, B2b_Y1}, {B2b_X1+gridsquare_width.c,B2b_Y1+gridsquare_height.r}]) font: B2b_font bgcolor: B2b_bgcolour fgcolor: B2b_fgcolour bdcolor: B2b_bdcolour border: B2b_border relief: B2b_relief alignment: CENTRE sensitive: ON string: B22 }; window B3b = { type: TEXT frame: ([{B3b_X1, B3b_Y1}, {B3b_X1+gridsquare_width.c,B3b_Y1+gridsquare_height.r}]) font: B3b_font bgcolor: B3b_bgcolour fgcolor: B3b_fgcolour bdcolor: B3b_bdcolour border: B3b_border relief: B3b_relief alignment: CENTRE sensitive: ON string: B23 }; window B4b = { type: TEXT frame: ([{B4b_X1, B4b_Y1}, {B4b_X1+gridsquare_width.c,B4b_Y1+gridsquare_height.r}]) font: B4b_font bgcolor: B4b_bgcolour fgcolor: B4b_fgcolour bdcolor: B4b_bdcolour border: B4b_border relief: B4b_relief alignment: CENTRE sensitive: ON string: B24 }; window C1b = { type: TEXT frame: ([{C1b_X1, C1b_Y1}, {C1b_X1+gridsquare_width.c,C1b_Y1+gridsquare_height.r}]) font: C1b_font bgcolor: C1b_bgcolour fgcolor: C1b_fgcolour bdcolor: C1b_bdcolour border: C1b_border relief: C1b_relief alignment: CENTRE sensitive: ON string: B31 }; window C2b = { type: TEXT frame: ([{C2b_X1, C2b_Y1}, {C2b_X1+gridsquare_width.c,C2b_Y1+gridsquare_height.r}]) font: C2b_font bgcolor: C2b_bgcolour fgcolor: C2b_fgcolour bdcolor: C2b_bdcolour border: C2b_border relief: C2b_relief alignment: CENTRE sensitive: ON string: B32 }; window C3b = { type: TEXT frame: ([{C3b_X1, C3b_Y1}, {C3b_X1+gridsquare_width.c,C3b_Y1+gridsquare_height.r}]) font: C3b_font bgcolor: C3b_bgcolour fgcolor: C3b_fgcolour bdcolor: C3b_bdcolour border: C3b_border relief: C3b_relief alignment: CENTRE sensitive: ON string: B33 }; window C4b = { type: TEXT frame: ([{C4b_X1, C4b_Y1}, {C4b_X1+gridsquare_width.c,C4b_Y1+gridsquare_height.r}]) font: C4b_font bgcolor: C4b_bgcolour fgcolor: C4b_fgcolour bdcolor: C4b_bdcolour border: C4b_border relief: C4b_relief alignment: CENTRE sensitive: ON string: B34 }; window D1b = { type: TEXT frame: ([{D1b_X1, D1b_Y1}, {D1b_X1+gridsquare_width.c,D1b_Y1+gridsquare_height.r}]) font: D1b_font bgcolor: D1b_bgcolour fgcolor: D1b_fgcolour bdcolor: D1b_bdcolour border: D1b_border relief: D1b_relief alignment: CENTRE sensitive: ON string: B41 }; window D2b = { type: TEXT frame: ([{D2b_X1, D2b_Y1}, {D2b_X1+gridsquare_width.c,D2b_Y1+gridsquare_height.r}]) font: D2b_font bgcolor: D2b_bgcolour fgcolor: D2b_fgcolour bdcolor: D2b_bdcolour border: D2b_border relief: D2b_relief alignment: CENTRE sensitive: ON string: B42 }; window D3b = { type: TEXT frame: ([{D3b_X1, D3b_Y1}, {D3b_X1+gridsquare_width.c,D3b_Y1+gridsquare_height.r}]) font: D3b_font bgcolor: D3b_bgcolour fgcolor: D3b_fgcolour bdcolor: D3b_bdcolour border: D3b_border relief: D3b_relief alignment: CENTRE sensitive: ON string: B43 }; window D4b = { type: TEXT frame: ([{D4b_X1, D4b_Y1}, {D4b_X1+gridsquare_width.c,D4b_Y1+gridsquare_height.r}]) font: D4b_font bgcolor: D4b_bgcolour fgcolor: D4b_fgcolour bdcolor: D4b_bdcolour border: D4b_border relief: D4b_relief alignment: CENTRE sensitive: ON string: B44 }; ##MATRIX C window A1c = { type: TEXT frame: ([{A1c_X1, A1c_Y1}, {A1c_X1+gridsquare_widthC.c,A1c_Y1+gridsquare_heightC.r}]) font: A1c_font bgcolor: A1c_bgcolour fgcolor: A1c_fgcolour bdcolor: A1c_bdcolour border: A1c_border relief: A1c_relief alignment: CENTRE sensitive: ON string: C11 }; window A2c = { type: TEXT frame: ([{A2c_X1, A2c_Y1}, {A2c_X1+gridsquare_widthC.c,A2c_Y1+gridsquare_heightC.r}]) font: A1c_font bgcolor: A2c_bgcolour fgcolor: A2c_fgcolour bdcolor: A2c_bdcolour border: A2c_border relief: A2c_relief alignment: CENTRE sensitive: ON string: C12 }; window A3c = { type: TEXT frame: ([{A3c_X1, A3c_Y1}, {A3c_X1+gridsquare_widthC.c,A3c_Y1+gridsquare_heightC.r}]) font: A3c_font bgcolor: A3c_bgcolour fgcolor: A3c_fgcolour bdcolor: A3c_bdcolour border: A3c_border relief: A3c_relief alignment: CENTRE sensitive: ON string: C13 }; window A4c = { type: TEXT frame: ([{A4c_X1, A4c_Y1}, {A4c_X1+gridsquare_widthC.c,A4c_Y1+gridsquare_heightC.r}]) font: A4c_font bgcolor: A4c_bgcolour fgcolor: A4c_fgcolour bdcolor: A4c_bdcolour border: A4c_border relief: A4c_relief alignment: CENTRE sensitive: ON string: C14 }; window B1c = { type: TEXT frame: ([{B1c_X1, B1c_Y1}, {B1c_X1+gridsquare_widthC.c,B1c_Y1+gridsquare_heightC.r}]) font: B1c_font bgcolor: B1c_bgcolour fgcolor: B1c_fgcolour bdcolor: B1c_bdcolour border: B1c_border relief: B1c_relief alignment: CENTRE sensitive: ON string: C21 }; window B2c = { type: TEXT frame: ([{B2c_X1, B2c_Y1}, {B2c_X1+gridsquare_widthC.c,B2c_Y1+gridsquare_heightC.r}]) font: B2c_font bgcolor: B2c_bgcolour fgcolor: B2c_fgcolour bdcolor: B2c_bdcolour border: B2c_border relief: B2c_relief alignment: CENTRE sensitive: ON string: C22 }; window B3c = { type: TEXT frame: ([{B3c_X1, B3c_Y1}, {B3c_X1+gridsquare_widthC.c,B3c_Y1+gridsquare_heightC.r}]) font: B3c_font bgcolor: B3c_bgcolour fgcolor: B3c_fgcolour bdcolor: B3c_bdcolour border: B3c_border relief: B3c_relief alignment: CENTRE sensitive: ON string: C23 }; window B4c = { type: TEXT frame: ([{B4c_X1, B4c_Y1}, {B4c_X1+gridsquare_widthC.c,B4c_Y1+gridsquare_heightC.r}]) font: B4c_font bgcolor: B4c_bgcolour fgcolor: B4c_fgcolour bdcolor: B4c_bdcolour border: B4c_border relief: B4c_relief alignment: CENTRE sensitive: ON string: C24 }; window C1c = { type: TEXT frame: ([{C1c_X1, C1c_Y1}, {C1c_X1+gridsquare_widthC.c,C1c_Y1+gridsquare_heightC.r}]) font: C1c_font bgcolor: C1c_bgcolour fgcolor: C1c_fgcolour bdcolor: C1c_bdcolour border: C1c_border relief: C1c_relief alignment: CENTRE sensitive: ON string: C31 }; window C2c = { type: TEXT frame: ([{C2c_X1, C2c_Y1}, {C2c_X1+gridsquare_widthC.c,C2c_Y1+gridsquare_heightC.r}]) font: C2c_font bgcolor: C2c_bgcolour fgcolor: C2c_fgcolour bdcolor: C2c_bdcolour border: C2c_border relief: C2c_relief alignment: CENTRE sensitive: ON string: C32 }; window C3c = { type: TEXT frame: ([{C3c_X1, C3c_Y1}, {C3c_X1+gridsquare_widthC.c,C3c_Y1+gridsquare_heightC.r}]) font: C3c_font bgcolor: C3c_bgcolour fgcolor: C3c_fgcolour bdcolor: C3c_bdcolour border: C3c_border relief: C3c_relief alignment: CENTRE sensitive: ON string: C33 }; window C4c = { type: TEXT frame: ([{C4c_X1, C4c_Y1}, {C4c_X1+gridsquare_widthC.c,C4c_Y1+gridsquare_heightC.r}]) font: C4c_font bgcolor: C4c_bgcolour fgcolor: C4c_fgcolour bdcolor: C4c_bdcolour border: C4c_border relief: C4c_relief alignment: CENTRE sensitive: ON string: C34 }; window D1c = { type: TEXT frame: ([{D1c_X1, D1c_Y1}, {D1c_X1+gridsquare_widthC.c,D1c_Y1+gridsquare_heightC.r}]) font: D1c_font bgcolor: D1c_bgcolour fgcolor: D1c_fgcolour bdcolor: D1c_bdcolour border: D1c_border relief: D1c_relief alignment: CENTRE sensitive: ON string: C41 }; window D2c = { type: TEXT frame: ([{D2c_X1, D2c_Y1}, {D2c_X1+gridsquare_widthC.c,D2c_Y1+gridsquare_heightC.r}]) font: D2c_font bgcolor: D2c_bgcolour fgcolor: D2c_fgcolour bdcolor: D2c_bdcolour border: D2c_border relief: D2b_relief alignment: CENTRE sensitive: ON string: C42 }; window D3c = { type: TEXT frame: ([{D3c_X1, D3c_Y1}, {D3c_X1+gridsquare_widthC.c,D3c_Y1+gridsquare_heightC.r}]) font: D3c_font bgcolor: D3c_bgcolour fgcolor: D3c_fgcolour bdcolor: D3c_bdcolour border: D3c_border relief: D3c_relief alignment: CENTRE sensitive: ON string: C43 }; window D4c = { type: TEXT frame: ([{D4c_X1, D4c_Y1}, {D4c_X1+gridsquare_widthC.c,D4c_Y1+gridsquare_heightC.r}]) font: D4c_font bgcolor: D4c_bgcolour fgcolor: D4c_fgcolour bdcolor: D4c_bdcolour border: D4c_border relief: D4c_relief alignment: CENTRE sensitive: ON string: C44 }; string background_bgcolour; background_bgcolour = "black"; window background = { type: TEXT frame: ([{grid_startAx-7, grid_startAy-7},{D4c_X1+gridsquare_widthC.c+7,D4c_Y1+gridsquare_heightC.r+7}]) bgcolor: background_bgcolour sensitive: ON string: "" }; ##buttoms!! window button1 = { type: TEXT frame: ([{10,150}, 1, 15]) string: "Load example" border: 1 bgcolor: "white" sensitive: ON }; window button2 = { type: TEXT frame: ([{10,200}, 1, 16]) string: "MultiplyMatrices" border: 1 bgcolor: "white" sensitive: ON }; window button3 = { type: TEXT frame: ([{320,250}, 1, 15]) string: "Clear Modell" border: 1 bgcolor: "white" sensitive: ON }; window button3a = { type: TEXT frame: ([{320,200}, 1, 15]) string: "clearsolution" border: 1 bgcolor: "white" sensitive: ON }; window button3b = { type: TEXT frame: ([{320,150}, 1, 17]) string: "clear parrameter" border: 1 bgcolor: "white" sensitive: ON }; window button4 = { type: TEXT frame: ([{260,150}, 2, 2]) string: "*" border: 1 bgcolor: "white" sensitive: ON }; window button5 = { type: TEXT frame: ([{260,200}, 2, 2]) string: "+" border: 1 bgcolor: "white" sensitive: ON }; display region1=; display region2=; display region3=; display buttonMenu=; display grid=region1®ion2®ion3&buttonMenu&; screen=grid; %eden ##Matrix A, only allow number 1-9 proc edit_A1a : A1a_key_1 { if (!A11_fixed) A_11 = ((470) ? str(dig) : ""; } A11 is mkstr(A_11); A12 is mkstr(A_12); A13 is mkstr(A_13); A14 is mkstr(A_14); A21 is mkstr(A_21); A22 is mkstr(A_22); A23 is mkstr(A_23); A24 is mkstr(A_24); A31 is mkstr(A_31); A32 is mkstr(A_32); A33 is mkstr(A_33); A34 is mkstr(A_34); A41 is mkstr(A_41); A42 is mkstr(A_42); A43 is mkstr(A_43); A44 is mkstr(A_44); B11 is mkstr(B_11); B12 is mkstr(B_12); B13 is mkstr(B_13); B14 is mkstr(B_14); B21 is mkstr(B_21); B22 is mkstr(B_22); B23 is mkstr(B_23); B24 is mkstr(B_24); B31 is mkstr(B_31); B32 is mkstr(B_32); B33 is mkstr(B_33); B34 is mkstr(B_34); B41 is mkstr(B_41); B42 is mkstr(B_42); B43 is mkstr(B_43); B44 is mkstr(B_44); C11 is mkstr(C_11); C12 is mkstr(C_12); C13 is mkstr(C_13); C14 is mkstr(C_14); C21 is mkstr(C_21); C22 is mkstr(C_22); C23 is mkstr(C_23); C24 is mkstr(C_24); C31 is mkstr(C_31); C32 is mkstr(C_32); C33 is mkstr(C_33); C34 is mkstr(C_34); C41 is mkstr(C_41); C42 is mkstr(C_42); C43 is mkstr(C_43); C44 is mkstr(C_44); %eddi rowbandA is ((matrixAgrid: rowix>0).(matrixAgrid : rowix>5)) : digit>0; rowbandB is ((matrixBgrid: rowix>0).(matrixBgrid : rowix>5)) : digit>0; rowbandC is ((matrixCgrid: rowix>0).(matrixCgrid : rowix>5)) : digit>0; colbandA is ((matrixAgrid: colix>0).(matrixAgrid : colix>5)) : digit>0; colbandB is ((matrixBgrid: colix>0).(matrixBgrid : colix>5)) : digit>0; colbandC is ((matrixCgrid: colix>0).(matrixCgrid : colix>5)) : digit>0; regionAdigits is (rowbandA . colbandA) % digit; regionBdigits is (rowbandB . colbandB) % digit; regionBdigits is (rowbandC . colbandC) % digit; %eden rowsA is [row1A, row2A, row3A, row4A]; colsA is [col1A, col2A, col3A, col4A]; rowsB is [row1B, row2B, row3B, row4B]; colsB is [col1B, col2B, col3B, col4B]; rowsC is [row1C, row2C, row3C, row4C]; colsC is [col1C, col2C, col3C, col4C]; regiondigits is [regionAdigits, regionBdigits,regionCdigits]; /* setting up the currently selected square context */ ## current square is determined by current_row and current_col e.g. ## current_row = 7; ## current_col = 4; ## these observables are in turn determined by setting of currentsquare by mouse current_rowbandA is int((currentA_row-1)/3)+1; current_colbandA is int((currentA_col-1)/3)+1; current_rowbandB is int((currentB_row-1)/3)+1; current_colbandB is int((currentB_col-1)/3)+1; current_rowbandC is int((currentC_row-1)/3)+1; current_colbandC is int((currentC_col-1)/3)+1; currentA_row is max(int(char(currentsquareA[2])),48)-48; currentA_col is max(int(char(currentsquareA[1])),64)-64; currentB_row is max(int(char(currentsquareB[2])),48)-48; currentB_col is max(int(char(currentsquareB[1])),64)-64; currentC_row is max(int(char(currentsquareC[2])),48)-48; currentC_col is max(int(char(currentsquareC[1])),64)-64; ## currentsquare = ["A", "1"] or in singular cases ["", ""] ## in singular case int(char(currentsquare[2]))=int(char(""))=0 currentsquareA = ["",""]; ## default values currentsquareB = ["",""]; ## default values currentsquareC = ["",""]; ## default values ## background highlighting adapted from sudokuKing2006: ## recall the foreground colours as these are set to "white" in colour sudoku model SD_fgcolour = "black"; SD_fixed_fgcolour="red"; SD_relevant_colour = "yellow"; ##MATRIX A NUMBER FOR MATRIX C A1a_bgcolour is a1A_focus ? SD_focus_colour : ( ((currentC_row==1)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); B1a_bgcolour is b1A_focus ? SD_focus_colour : ( ((currentC_row==1)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); C1a_bgcolour is c1A_focus ? SD_focus_colour :( ((currentC_row==1)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); D1a_bgcolour is d1A_focus ? SD_focus_colour : ( ((currentC_row==1)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); A2a_bgcolour is a2A_focus ? SD_focus_colour :( ((currentC_row==2)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); B2a_bgcolour is b2A_focus ? SD_focus_colour : ( ((currentC_row==2)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); C2a_bgcolour is c2A_focus ? SD_focus_colour : ( ((currentC_row==2)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); D2a_bgcolour is d2A_focus ? SD_focus_colour : ( ((currentC_row==2)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); A3a_bgcolour is a3A_focus ? SD_focus_colour :( ((currentC_row==3)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); B3a_bgcolour is b3A_focus ? SD_focus_colour : ( ((currentC_row==3)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); C3a_bgcolour is c3A_focus ? SD_focus_colour : ( ((currentC_row==3)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); D3a_bgcolour is d3A_focus ? SD_focus_colour : ( ((currentC_row==3)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); A4a_bgcolour is a4A_focus ? SD_focus_colour : ( ((currentC_row==4)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); B4a_bgcolour is b4A_focus ? SD_focus_colour : ( ((currentC_row==4)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); C4a_bgcolour is c4A_focus ? SD_focus_colour : ( ((currentC_row==4)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); D4a_bgcolour is d4A_focus ? SD_focus_colour : ( ((currentC_row==4)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); ##MATRIX B DEPENDENCY TO MATRIX C A1b_bgcolour is a1B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==1)) ? SD_relevant_colour : SD_bgcolour); A2b_bgcolour is a2B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==1)) ? SD_relevant_colour : SD_bgcolour); A3b_bgcolour is a3B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==1)) ? SD_relevant_colour : SD_bgcolour); A4b_bgcolour is a4B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==1)) ? SD_relevant_colour : SD_bgcolour); B1b_bgcolour is b1B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==2)) ? SD_relevant_colour : SD_bgcolour); B2b_bgcolour is b2B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==2)) ? SD_relevant_colour : SD_bgcolour); B3b_bgcolour is b3B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==2)) ? SD_relevant_colour : SD_bgcolour); B4b_bgcolour is b4B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==2)) ? SD_relevant_colour : SD_bgcolour); C1b_bgcolour is c1B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==3)) ? SD_relevant_colour : SD_bgcolour); C2b_bgcolour is c2B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==3)) ? SD_relevant_colour : SD_bgcolour); C3b_bgcolour is c3B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==3)) ? SD_relevant_colour : SD_bgcolour); C4b_bgcolour is c4B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==3)) ? SD_relevant_colour : SD_bgcolour); D1b_bgcolour is d1B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==4)) ? SD_relevant_colour : SD_bgcolour); D2b_bgcolour is d2B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==4)) ? SD_relevant_colour : SD_bgcolour); D3b_bgcolour is d3B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==4)) ? SD_relevant_colour : SD_bgcolour); D4b_bgcolour is d4B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==4)) ? SD_relevant_colour : SD_bgcolour); ## adapting Karl's puzzle saving procedure: proc save_grid { para nameA; auto fp,i,j,k,result,columnsA, columnsB,rowsA, rowsB,this_cellA, this_cellB; fp=fopen(name, "w"); fprintf(fp, "%%eden\n"); ## %% required to print a % symbol fprintf(fp,"autocalc=0;\n"); fclose(fp); result=[]; columnsA=["a","b","c","d"]; rowsA=["1","2","3","4"]; columnsB=["a","b","c","d"]; rowsB=["1","2","3","4"]; columnsC=["a","b","c","d"]; rowsC=["1","2","3","4"]; for(i=1;i<=columnsA#;i++) { for(j=1;j<=rowsA#;j++) { this_cellA=columnsA[i]// "_" // rowsA[j]; this_cell_nameA = columnsA[i] // rowsA[j]; this_cellB=columnsB[i]// "_" // rowsA=B[j]; this_cell_nameA = columnsB[i] // rowsB[j]; this_stringA=symboldefinition(this_cellA); this_fixedA=symboldefinition((this_cell_nameA // "_fixed")); this_stringB=symboldefinition(this_cellB); this_fixedB=symboldefinition((this_cell_nameA // "_fixed")); append result, result+this_stringA*this_stringB; append result, this_fixed; } } for(k=1;k<=result#;k++) { save_def(name,result[k]); } fp=fopen(name, "a"); fprintf(fp,"autocalc=1;\n"); fclose(fp); } proc save_def { para filename,toSave; auto fp; fp=fopen(filename,"a"); fprintf(fp,toSave//"\n"); fclose(fp); } autocalc=1; %eden FileLoadedOkay = 1; MtrxMultiModel0935882/example.e~0000600010244600004550000000065411332012061016416 0ustar csujejdcsugrad%eden ##puzzle nr. 5 autocalc=0; ##MATRIX A A_11 = 1; A_12 = 4; A_13 = 2; A_14 = 3; A_21 = 5; A_22 = 7; A_23 = 8; A_24 = 1; A_31 = 2; A_32 = 3; A_33 = 7; A_34 = 1; A_41 = 1; A_42 = 2; A_43 = 7; A_44 = 2; ##MATRIX B B_11 = 2; B_12 = 1; B_13 = 2; B_14 = 7; B_21 = 9; B_22 = 1; B_23 = 2; B_24 = 2; B_31= 4; B_32 = 6; B_33 = 6; B_34 = 4; B_41 = 3; B_42 = 2; B_43 = 2; B_44 = 1; autocalc=1; %eden FileLoadedOkay = 1;MtrxMultiModel0935882/mtrxmulti.e~0000600010244600004550000000056611332045236017044 0ustar csujejdcsugrad%eden /* Function that multiplicates two matrix A and B to writes the result in matrix C i = row, j=col so X_ij = j col, i row in X matrix */ func mtrx_multi { auto i,j,k; for (i=1; i<=4; i++) { for(k=1; k<=4;k++){ for (j=1; j<=4;j++){ execute("C_"// str(i)//str(k) // "= C_"// str(i)//str(k) // "+ A_"// str(j)//str(k) // "* B_"// str(i)//str(j) // ";"); } } } } MtrxMultiModel0935882/basicgrid.e~0000600010244600004550000020124611332062160016717 0ustar csujejdcsugrad%eden ## File 1: initial set up for the basic sudoku model ## needs to be using tkeden-1.67 or later because of eddi requirements installeddi(); proc garbage_collect {}; %eddi ##definition of 3 matrices, status is going to be used to recognized if the digit has been used or not, or if in the case of C to mark the end of the multiplication. ##Matrices (4x4, to start!) matrixAgrid(rowix int, colix int, digit int, status int); matrixBgrid(rowix int, colix int, digit int, status int); matrixCgrid(rowix int, colix int, digit int, status int); %eden /* matrixAgrid << [1,1,5,0]; matrixAgrid << [2,2,5,0]; matrixAgrid << [3,3,5,0]; matrixAgrid << [4,4,5,0]; matrixBgrid << [1,1,5,0]; matrixBgrid << [1,2,7,0]; matrixBgrid << [1,3,8,0]; matrixBgrid << [1,4,5,0]; */ ##autocalc=0; %eddi row1A is matrixAgrid : rowix == 1 % colix, digit; row2A is matrixAgrid : rowix == 2 % colix, digit; row3A is matrixAgrid : rowix == 3 % colix, digit; row4A is matrixAgrid : rowix == 4 % colix, digit; row1B is matrixBgrid : rowix == 1 % colix, digit; row2B is matrixBgrid : rowix == 2 % colix, digit; row3B is matrixBgrid : rowix == 3 % colix, digit; row4B is matrixBgrid : rowix == 4 % colix, digit; row1C is matrixCgrid : rowix == 1 % colix, digit; row2C is matrixCgrid : rowix == 2 % colix, digit; row3C is matrixCgrid : rowix == 3 % colix, digit; row4C is matrixCgrid : rowix == 4 % colix, digit; col1A is matrixAgrid : colix == 1 % rowix, digit; col2A is matrixAgrid : colix == 2 % rowix, digit; col3A is matrixAgrid : colix == 3 % rowix, digit; col4A is matrixAgrid : colix == 4 % rowix, digit; col1B is matrixBgrid : colix == 1 % rowix, digit; col2B is matrixBgrid : colix == 2 % rowix, digit; col3B is matrixBgrid : colix == 3 % rowix, digit; col4B is matrixBgrid : colix == 4 % rowix, digit; col1C is matrixCgrid : colix == 1 % rowix, digit; col2C is matrixCgrid : colix == 2 % rowix, digit; col3C is matrixCgrid : colix == 3 % rowix, digit; col4C is matrixCgrid : colix == 4 % rowix, digit; ## blank MATRIX grid %eden ##MATRIX A A_11 = 0; A11_fixed=0; A_12 = 0; A12_fixed=0; A_3 = 0; A13_fixed=0; A_14 = 0; A14_fixed=0; A_21 = 0; A21_fixed=0; A_22 = 0; A22_fixed=0; A_23 = 0; A23_fixed=0; A_24 = 0; A24_fixed=0; A_31 = 0; A31_fixed=0; A_32 = 0; A32_fixed=0; A_33 = 0; A33_fixed=0; A_34 = 0; A34_fixed=0; A_41 = 0; A41_fixed=0; A_42 = 0; A42_fixed=0; A_43 = 0; A43_fixed=0; A_44 = 0; A44_fixed=0; ##MATRIX B B_11 = 0; B11_fixed=0; B_12 = 0; B12_fixed=0; B_13 = 0; B13_fixed=0; B_14 = 0; B14_fixed=0; B_21 = 0; B21_fixed=0; B_22 = 0; B22_fixed=0; B_23 = 0; B23_fixed=0; B_24 = 0; B24_fixed=0; B_31= 0; B31_fixed=0; B_32 = 0; B32_fixed=0; B_33 = 0; B33_fixed=0; B_34 = 0; B34_fixed=0; B_41 = 0; B41_fixed=0; B_42 = 0; B42_fixed=0; B_43 = 0; B43_fixed=0; B_44 = 0; B44_fixed=0; ##MATRIX C C_11 = 0; C11_fixed=0; C_12 = 0; C12_fixed=0; C_13 = 0; C13_fixed=0; C_14 = 0; C14_fixed=0; C_21 = 0; C21_fixed=0; C_22 = 0; C22_fixed=0; C_23 = 0; C23_fixed=0; C_24 = 0; C24_fixed=0; C_31 = 0; C31_fixed=0; C_32 = 0; C32_fixed=0; C_33 = 0; C33_fixed=0; C_34 = 0; C34_fixed=0; C_41 = 0; C41_fixed=0; C_42 = 0; C42_fixed=0; C_43 = 0; C43_fixed=0; C_44 = 0; C44_fixed=0; ##autocalc=1; ##MATRIX DEFINITOON: matrixAgrid is [[["int","int","int","int"],"rowix","colix","digit","status"], [1,1,A_11, A11_fixed],[1,2,A_21, A21_fixed],[1,3,A_31, A31_fixed],[1,4,A_41, A41_fixed],[2,1,A_12, A12_fixed],[2,2,A_22, A22_fixed],[2,3,A_32, A32_fixed],[2,4,A_42, A42_fixed],[3,1,A_13, A13_fixed],[3,2,A_23, A23_fixed],[3,3,A_33, A33_fixed],[3,4,A_43, A43_fixed],[4,1,A_14, A14_fixed],[4,2,A_24, A24_fixed],[4,3,A_34, A34_fixed],[4,4,A_44, A44_fixed]]; matrixBgrid is [[["int","int","int","int"],"rowix","colix","digit","status"], [1,1,B_11, B11_fixed],[1,2,B_21, B21_fixed],[1,3,B_31, B31_fixed],[1,4,B_41, B41_fixed],[2,1,B_12, B12_fixed],[2,2,B_22, B22_fixed],[2,3,B_32, B32_fixed],[2,4,B_42, B42_fixed],[3,1,B_13, B13_fixed],[3,2,B_23, B23_fixed],[3,3,B_33, B33_fixed],[3,4,B_43, B43_fixed],[4,1,B_14, B14_fixed],[4,2,B_24, B24_fixed],[4,3,B_34, B34_fixed],[4,4,B_44, B44_fixed]]; matrixCgrid is [[["int","int","int","int"],"rowix","colix","digit","status"], [1,1,C_11, C11_fixed],[1,2,C_21, C21_fixed],[1,3,C_31, C31_fixed],[1,4,C_41, C41_fixed],[2,1,C_12, C12_fixed],[2,2,C_22, C22_fixed],[2,3,C_32, C32_fixed],[2,4,C_42, C42_fixed],[3,1,C_13, C13_fixed],[3,2,C_23, C23_fixed],[3,3,C_33, C33_fixed],[3,4,C_43, C43_fixed],[4,1,C_14, C14_fixed],[4,2,C_24, C24_fixed],[4,3,C_34, C34_fixed],[4,4,C_44, C44_fixed]]; /* introduce slightly modified form of Beynon's sudoku file at this point */ %eden tcl("tk_focusFollowsMouse"); %scout string DFfont; string SD_bgcolour="white"; string SD_fgcolour="black"; string SD_bdcolour="black"; string SD_focus_colour="blue"; string SD_fixed_fgcolour="red"; string SD_relief="flat"; string SD_font=DFfont; string SD_fixed_font="{courier 20 bold}"; ## on linux integer spacer_x=15; integer spacer_y=2; integer spacer_xC=30; integer spacer_yC=2; %eden DFfont="{courier 20}"; %scout ##have to be adapted to the interface later. integer grid_startAx=10; integer grid_startAy=10; integer grid_startBx=150; integer grid_startBy=10; integer grid_startCx=300; integer grid_startCy=10; integer gridsquare_width=2; integer gridsquare_height=1; integer gridsquare_widthC=3; integer gridsquare_heightC=1; ##GRID MATRIX As window A1a; integer A1a_X1=grid_startAx; integer A1a_Y1=grid_startAy; string A1a_bdcolour=SD_bdcolour; string A1a_bgcolour=SD_bgcolour; integer A1a_border=1; string A1a_fgcolour=SD_fgcolour; string A1a_relief=SD_relief; window A2a; integer A2a_X1=grid_startAx; integer A2a_Y1=grid_startAy+1.r+spacer_y; string A2a_bdcolour=SD_bdcolour; string A2a_bgcolour=SD_bgcolour; integer A2a_border=1; string A2a_fgcolour=SD_fgcolour; string A2a_relief=SD_relief; window A3a; integer A3a_X1=grid_startAx; integer A3a_Y1=grid_startAy+2.r+(spacer_y); string A3a_bdcolour=SD_bdcolour; string A3a_bgcolour=SD_bgcolour; integer A3a_border=1; string A3a_fgcolour=SD_fgcolour; string A3a_relief=SD_relief;; window A4a; integer A4a_X1=grid_startAx; integer A4a_Y1=grid_startAy+3.r+(3*spacer_y); string A4a_bdcolour=SD_bdcolour; string A4a_bgcolour=SD_bgcolour; integer A4a_border=1; string A4a_fgcolour=SD_fgcolour; string A4a_relief=SD_relief; window B1a; integer B1a_X1=grid_startAx+1.c+spacer_x; integer B1a_Y1=grid_startAy; string B1a_bdcolour=SD_bdcolour; string B1a_bgcolour=SD_bgcolour; integer B1a_border=1; string B1a_fgcolour=SD_fgcolour; string B1a_relief=SD_relief; window B2a; integer B2a_X1=grid_startAx+1.c+spacer_x; integer B2a_Y1=grid_startAy+1.r+spacer_y; string B2a_bdcolour=SD_bdcolour; string B2a_bgcolour=SD_bgcolour; integer B2a_border=1; string B2a_fgcolour=SD_fgcolour; string B2a_relief=SD_relief; window B3a; integer B3a_X1=grid_startAx+1.c+spacer_x; integer B3a_Y1=grid_startAy+2.r+(2*spacer_y); string B3a_bdcolour=SD_bdcolour; string B3a_bgcolour=SD_bgcolour; integer B3a_border=1; string B3a_fgcolour=SD_fgcolour; string B3a_relief=SD_relief; window B4a; integer B4a_X1=grid_startAx+1.c+spacer_x; integer B4a_Y1=grid_startAy+3.r+(3*spacer_y); string B4a_bdcolour=SD_bdcolour; string B4a_bgcolour=SD_bgcolour; integer B4a_border=1; string B4a_fgcolour=SD_fgcolour; string B4a_relief=SD_relief; window C1a; integer C1a_X1=grid_startAx+2.c+(2*spacer_x); integer C1a_Y1=grid_startAy; string C1a_bdcolour=SD_bdcolour; string C1a_bgcolour=SD_bgcolour; integer C1a_border=1; string C1a_fgcolour=SD_fgcolour; string C1a_relief=SD_relief; window C2a; integer C2a_X1=grid_startAx+2.c+(2*spacer_x); integer C2a_Y1=grid_startAy+1.r+spacer_y; string C2a_bdcolour=SD_bdcolour; string C2a_bgcolour=SD_bgcolour; integer C2a_border=1; string C2a_fgcolour=SD_fgcolour; string C2a_relief=SD_relief; window C3a; integer C3a_X1=grid_startAx+2.c+(2*spacer_x); integer C3a_Y1=grid_startAy+2.r+(2*spacer_y); string C3a_bdcolour=SD_bdcolour; string C3a_bgcolour=SD_bgcolour; integer C3a_border=1; string C3a_fgcolour=SD_fgcolour; string C3a_relief=SD_relief; window C4a; integer C4a_X1=grid_startAx+2.c+(2*spacer_x); integer C4a_Y1=grid_startAy+3.r+(3*spacer_y); string C4a_bdcolour=SD_bdcolour; string C4a_bgcolour=SD_bgcolour; integer C4a_border=1; string C4a_fgcolour=SD_fgcolour; string C4a_relief=SD_relief; window D1a; integer D1a_X1=grid_startAx+3.c+(3*spacer_x); integer D1a_Y1=grid_startAy; string D1a_bdcolour=SD_bdcolour; string D1a_bgcolour=SD_bgcolour; integer D1a_border=1; string D1a_fgcolour=SD_fgcolour; string D1a_relief=SD_relief; window D2a; integer D2a_X1=grid_startAx+3.c+(3*spacer_x); integer D2a_Y1=grid_startAy+1.r+spacer_y; string D2a_bdcolour=SD_bdcolour; string D2a_bgcolour=SD_bgcolour; integer D2a_border=1; string D2a_fgcolour=SD_fgcolour; string D2a_relief=SD_relief; window D3a; integer D3a_X1=grid_startAx+3.c+(3*spacer_x); integer D3a_Y1=grid_startAy+2.r+(2*spacer_y); string D3a_bdcolour=SD_bdcolour; string D3a_bgcolour=SD_bgcolour; integer D3a_border=1; string D3a_fgcolour=SD_fgcolour; string D3a_relief=SD_relief; window D4a; integer D4a_X1=grid_startAx+3.c+(3*spacer_x); integer D4a_Y1=grid_startAy+3.r+(3*spacer_y); string D4a_bdcolour=SD_bdcolour; string D4a_bgcolour=SD_bgcolour; integer D4a_border=1; string D4a_fgcolour=SD_fgcolour; string D4a_relief=SD_relief; ##MATRIX B window A1b; integer A1b_X1=grid_startBx; integer A1b_Y1=grid_startBy; string A1b_bdcolour=SD_bdcolour; string A1b_bgcolour=SD_bgcolour; integer A1b_border=1; string A1b_fgcolour=SD_fgcolour; string A1b_relief=SD_relief; window A2b; integer A2b_X1=grid_startBx; integer A2b_Y1=grid_startBy+1.r+spacer_y; string A2b_bdcolour=SD_bdcolour; string A2b_bgcolour=SD_bgcolour; integer A2b_border=1; string A2b_fgcolour=SD_fgcolour; string A2b_relief=SD_relief; window A3b; integer A3b_X1=grid_startBx; integer A3b_Y1=grid_startBy+2.r+(2*spacer_y); string A3b_bdcolour=SD_bdcolour; string A3b_bgcolour=SD_bgcolour; integer A3b_border=1; string A3b_fgcolour=SD_fgcolour; string A3b_relief=SD_relief;; window A4b; integer A4b_X1=grid_startBx; integer A4b_Y1=grid_startBy+3.r+(3*spacer_y); string A4b_bdcolour=SD_bdcolour; string A4b_bgcolour=SD_bgcolour; integer A4b_border=1; string A4b_fgcolour=SD_fgcolour; string A4b_relief=SD_relief; window B1b; integer B1b_X1=grid_startBx+1.c+spacer_x; integer B1b_Y1=grid_startBy; string B1b_bdcolour=SD_bdcolour; string B1b_bgcolour=SD_bgcolour; integer B1b_border=1; string B1b_fgcolour=SD_fgcolour; string B1b_relief=SD_relief; window B2b; integer B2b_X1=grid_startBx+1.c+spacer_x; integer B2b_Y1=grid_startBy+1.r+spacer_y; string B2b_bdcolour=SD_bdcolour; string B2b_bgcolour=SD_bgcolour; integer B2b_border=1; string B2b_fgcolour=SD_fgcolour; string B2b_relief=SD_relief; window B3b; integer B3b_X1=grid_startBx+1.c+spacer_x; integer B3b_Y1=grid_startBy+2.r+(2*spacer_y); string B3b_bdcolour=SD_bdcolour; string B3b_bgcolour=SD_bgcolour; integer B3b_border=1; string B3b_fgcolour=SD_fgcolour; string B3b_relief=SD_relief; window B4b; integer B4b_X1=grid_startBx+1.c+spacer_x; integer B4b_Y1=grid_startBy+3.r+(3*spacer_y); string B4b_bdcolour=SD_bdcolour; string B4b_bgcolour=SD_bgcolour; integer B4b_border=1; string B4b_fgcolour=SD_fgcolour; string B4b_relief=SD_relief; window C1b; integer C1b_X1=grid_startBx+2.c+(2*spacer_x); integer C1b_Y1=grid_startBy; string C1b_bdcolour=SD_bdcolour; string C1b_bgcolour=SD_bgcolour; integer C1b_border=1; string C1b_fgcolour=SD_fgcolour; string C1b_relief=SD_relief; window C2b; integer C2b_X1=grid_startBx+2.c+(2*spacer_x); integer C2b_Y1=grid_startBy+1.r+spacer_y; string C2b_bdcolour=SD_bdcolour; string C2b_bgcolour=SD_bgcolour; integer C2b_border=1; string C2b_fgcolour=SD_fgcolour; string C2b_relief=SD_relief; window C3b; integer C3b_X1=grid_startBx+2.c+(2*spacer_x); integer C3b_Y1=grid_startBy+2.r+(2*spacer_y); string C3b_bdcolour=SD_bdcolour; string C3b_bgcolour=SD_bgcolour; integer C3b_border=1; string C3b_fgcolour=SD_fgcolour; string C3b_relief=SD_relief; window C4b; integer C4b_X1=grid_startBx+2.c+(2*spacer_x); integer C4b_Y1=grid_startBy+3.r+(3*spacer_y); string C4b_bdcolour=SD_bdcolour; string C4b_bgcolour=SD_bgcolour; integer C4b_border=1; string C4b_fgcolour=SD_fgcolour; string C4b_relief=SD_relief; window D1b; integer D1b_X1=grid_startBx+3.c+(3*spacer_x); integer D1b_Y1=grid_startBy; string D1b_bdcolour=SD_bdcolour; string D1b_bgcolour=SD_bgcolour; integer D1b_border=1; string D1b_fgcolour=SD_fgcolour; string D1b_relief=SD_relief; window D2b; integer D2b_X1=grid_startBx+3.c+(3*spacer_x); integer D2b_Y1=grid_startBy+1.r+spacer_y; string D2b_bdcolour=SD_bdcolour; string D2b_bgcolour=SD_bgcolour; integer D2b_border=1; string D2b_fgcolour=SD_fgcolour; string D2b_relief=SD_relief; window D3b; integer D3b_X1=grid_startBx+3.c+(3*spacer_x); integer D3b_Y1=grid_startBy+2.r+(2*spacer_y); string D3b_bdcolour=SD_bdcolour; string D3b_bgcolour=SD_bgcolour; integer D3b_border=1; string D3b_fgcolour=SD_fgcolour; string D3b_relief=SD_relief; window D4b; integer D4b_X1=grid_startBx+3.c+(3*spacer_x); integer D4b_Y1=grid_startBy+3.r+(3*spacer_y); string D4b_bdcolour=SD_bdcolour; string D4b_bgcolour=SD_bgcolour; integer D4b_border=1; string D4b_fgcolour=SD_fgcolour; string D4b_relief=SD_relief; #MATRIX C window A1c; integer A1c_X1=grid_startCx; integer A1c_Y1=grid_startCy; string A1c_bdcolour=SD_bdcolour; string A1c_bgcolour=SD_bgcolour; integer A1c_border=1; string A1c_fgcolour=SD_fgcolour; string A1c_relief=SD_relief; window A2c; integer A2c_X1=grid_startCx; integer A2c_Y1=grid_startCy+1.r+spacer_yC; string A2c_bdcolour=SD_bdcolour; string A2c_bgcolour=SD_bgcolour; integer A2c_border=1; string A2c_fgcolour=SD_fgcolour; string A2c_relief=SD_relief; window A3c; integer A3c_X1=grid_startCx; integer A3c_Y1=grid_startCy+2.r+(2*spacer_yC); string A3c_bdcolour=SD_bdcolour; string A3c_bgcolour=SD_bgcolour; integer A3c_border=1; string A3c_fgcolour=SD_fgcolour; string A3c_relief=SD_relief; window A4c; integer A4c_X1=grid_startCx; integer A4c_Y1=grid_startCy+3.r+(3*spacer_yC); string A4c_bdcolour=SD_bdcolour; string A4c_bgcolour=SD_bgcolour; integer A4c_border=1; string A4c_fgcolour=SD_fgcolour; string A4c_relief=SD_relief; window B1c; integer B1c_X1=grid_startCx+1.c+spacer_xC; integer B1c_Y1=grid_startCy; string B1c_bdcolour=SD_bdcolour; string B1c_bgcolour=SD_bgcolour; integer B1c_border=1; string B1c_fgcolour=SD_fgcolour; string B1c_relief=SD_relief; window B2c; integer B2c_X1=grid_startCx+1.c+spacer_xC; integer B2c_Y1=grid_startCy+1.r+spacer_yC; string B2c_bdcolour=SD_bdcolour; string B2c_bgcolour=SD_bgcolour; integer B2c_border=1; string B2c_fgcolour=SD_fgcolour; string B2c_relief=SD_relief; window B3c; integer B3c_X1=grid_startCx+1.c+spacer_xC; integer B3c_Y1=grid_startCy+2.r+(2*spacer_yC); string B3c_bdcolour=SD_bdcolour; string B3c_bgcolour=SD_bgcolour; integer B3c_border=1; string B3c_fgcolour=SD_fgcolour; string B3c_relief=SD_relief; window B4c; integer B4c_X1=grid_startCx+1.c+spacer_xC; integer B4c_Y1=grid_startCy+3.r+(3*spacer_yC); string B4c_bdcolour=SD_bdcolour; string B4c_bgcolour=SD_bgcolour; integer B4c_border=1; string B4c_fgcolour=SD_fgcolour; string B4c_relief=SD_relief; window C1c; integer C1c_X1=grid_startCx+2.c+(2*spacer_xC); integer C1c_Y1=grid_startCy; string C1c_bdcolour=SD_bdcolour; string C1c_bgcolour=SD_bgcolour; integer C1c_border=1; string C1c_fgcolour=SD_fgcolour; string C1c_relief=SD_relief; window C2c; integer C2c_X1=grid_startCx+2.c+(2*spacer_xC); integer C2c_Y1=grid_startCy+1.r+spacer_yC; string C2c_bdcolour=SD_bdcolour; string C2c_bgcolour=SD_bgcolour; integer C2c_border=1; string C2c_fgcolour=SD_fgcolour; string C2c_relief=SD_relief; window C3c; integer C3c_X1=grid_startCx+2.c+(2*spacer_xC); integer C3c_Y1=grid_startCy+2.r+(2*spacer_yC); string C3c_bdcolour=SD_bdcolour; string C3c_bgcolour=SD_bgcolour; integer C3c_border=1; string C3c_fgcolour=SD_fgcolour; string C3c_relief=SD_relief; window C4c; integer C4c_X1=grid_startCx+2.c+(2*spacer_xC); integer C4c_Y1=grid_startCy+3.r+(3*spacer_yC); string C4c_bdcolour=SD_bdcolour; string C4c_bgcolour=SD_bgcolour; integer C4c_border=1; string C4c_fgcolour=SD_fgcolour; string C4c_relief=SD_relief; window D1c; integer D1c_X1=grid_startCx+3.c+(3*spacer_xC); integer D1c_Y1=grid_startCy; string D1c_bdcolour=SD_bdcolour; string D1c_bgcolour=SD_bgcolour; integer D1c_border=1; string D1c_fgcolour=SD_fgcolour; string D1c_relief=SD_relief; window D2c; integer D2c_X1=grid_startCx+3.c+(3*spacer_xC); integer D2c_Y1=grid_startCy+1.r+spacer_yC; string D2c_bdcolour=SD_bdcolour; string D2c_bgcolour=SD_bgcolour; integer D2c_border=1; string D2c_fgcolour=SD_fgcolour; string D2c_relief=SD_relief; window D3c; integer D3c_X1=grid_startCx+3.c+(3*spacer_xC); integer D3c_Y1=grid_startCy+2.r+(2*spacer_yC); string D3c_bdcolour=SD_bdcolour; string D3c_bgcolour=SD_bgcolour; integer D3c_border=1; string D3c_fgcolour=SD_fgcolour; string D3c_relief=SD_relief; window D4c; integer D4c_X1=grid_startCx+3.c+(3*spacer_xC); integer D4c_Y1=grid_startCy+3.r+(3*spacer_yC); string D4c_bdcolour=SD_bdcolour; string D4c_bgcolour=SD_bgcolour; integer D4c_border=1; string D4c_fgcolour=SD_fgcolour; string D4c_relief=SD_relief; string A11=""; string A12=""; string A13=""; string A14=""; string A21=""; string A22=""; string A23=""; string A24=""; string A31=""; string A32=""; string A33=""; string A34=""; string A41=""; string A42=""; string A43=""; string A44=""; string B11=""; string B12=""; string B13=""; string B14=""; string B21=""; string B22=""; string B23=""; string B24=""; string B31=""; string B32=""; string B33=""; string B34=""; string B41=""; string B42=""; string B43=""; string B44=""; string C11=""; string C12=""; string C13=""; string C14=""; string C21=""; string C22=""; string C23=""; string C24=""; string C31=""; string C32=""; string C33=""; string C34=""; string C41=""; string C42=""; string C43=""; string C44=""; string A1a_font=SD_font; string A2a_font=SD_font; string A3a_font=SD_font; string A4a_font=SD_font; string B1a_font=SD_font; string B2a_font=SD_font; string B3a_font=SD_font; string B4a_font=SD_font; string C1a_font=SD_font; string C2a_font=SD_font; string C3a_font=SD_font; string C4a_font=SD_font; string D1a_font=SD_font; string D2a_font=SD_font; string D3a_font=SD_font; string D4a_font=SD_font; string A1b_font=SD_font; string A2b_font=SD_font; string A3b_font=SD_font; string A4b_font=SD_font; string B1b_font=SD_font; string B2b_font=SD_font; string B3b_font=SD_font; string B4b_font=SD_font; string C1b_font=SD_font; string C2b_font=SD_font; string C3b_font=SD_font; string C4b_font=SD_font; string D1b_font=SD_font; string D2b_font=SD_font; string D3b_font=SD_font; string D4b_font=SD_font; string A1c_font=SD_font; string A2c_font=SD_font; string A3c_font=SD_font; string A4c_font=SD_font; string B1c_font=SD_font; string B2c_font=SD_font; string B3c_font=SD_font; string B4c_font=SD_font; string C1c_font=SD_font; string C2c_font=SD_font; string C3c_font=SD_font; string C4c_font=SD_font; string D1c_font=SD_font; string D2c_font=SD_font; string D3c_font=SD_font; string D4c_font=SD_font; %eden A1a_font is A11_fixed?SD_fixed_font:SD_font; A2a_font is A11_fixed?SD_fixed_font:SD_font; A3a_font is A13_fixed?SD_fixed_font:SD_font; A4a_font is A14_fixed?SD_fixed_font:SD_font; B1a_font is A21_fixed?SD_fixed_font:SD_font; B2a_font is A22_fixed?SD_fixed_font:SD_font; B3a_font is A23_fixed?SD_fixed_font:SD_font; B4a_font is A24_fixed?SD_fixed_font:SD_font; C1a_font is A31_fixed?SD_fixed_font:SD_font; C2a_font is A32_fixed?SD_fixed_font:SD_font; C3a_font is A33_fixed?SD_fixed_font:SD_font; C4a_font is A34_fixed?SD_fixed_font:SD_font; D1a_font is A41_fixed?SD_fixed_font:SD_font; D2a_font is A42_fixed?SD_fixed_font:SD_font; D3a_font is A43_fixed?SD_fixed_font:SD_font; D4a_font is A44_fixed?SD_fixed_font:SD_font; A1b_font is B11_fixed?SD_fixed_font:SD_font; A2b_font is B12_fixed?SD_fixed_font:SD_font; A3b_font is B13_fixed?SD_fixed_font:SD_font; A4b_font is B14_fixed?SD_fixed_font:SD_font; B1b_font is B21_fixed?SD_fixed_font:SD_font; B2b_font is B22_fixed?SD_fixed_font:SD_font; B3b_font is B23_fixed?SD_fixed_font:SD_font; B4b_font is B24_fixed?SD_fixed_font:SD_font; C1b_font is B31_fixed?SD_fixed_font:SD_font; C2b_font is B32_fixed?SD_fixed_font:SD_font; C3b_font is B33_fixed?SD_fixed_font:SD_font; C4b_font is B34_fixed?SD_fixed_font:SD_font; D1b_font is B41_fixed?SD_fixed_font:SD_font; D2b_font is B42_fixed?SD_fixed_font:SD_font; D3b_font is B43_fixed?SD_fixed_font:SD_font; D4b_font is B44_fixed?SD_fixed_font:SD_font; A1c_font is C11_fixed?SD_fixed_font:SD_font; A2c_font is C12_fixed?SD_fixed_font:SD_font; A3c_font is C13_fixed?SD_fixed_font:SD_font; A4c_font is C14_fixed?SD_fixed_font:SD_font; B1c_font is C21_fixed?SD_fixed_font:SD_font; B2c_font is C22_fixed?SD_fixed_font:SD_font; B3c_font is C23_fixed?SD_fixed_font:SD_font; B4c_font is C24_fixed?SD_fixed_font:SD_font; C1c_font is C31_fixed?SD_fixed_font:SD_font; C2c_font is C32_fixed?SD_fixed_font:SD_font; C3c_font is C33_fixed?SD_fixed_font:SD_font; C4c_font is C34_fixed?SD_fixed_font:SD_font; D1c_font is C41_fixed?SD_fixed_font:SD_font; D2c_font is C42_fixed?SD_fixed_font:SD_font; D3c_font is C43_fixed?SD_fixed_font:SD_font; D4c_font is C44_fixed?SD_fixed_font:SD_font; ##COLOUR A1a_fgcolour is A11_fixed?SD_fixed_fgcolour:SD_fgcolour; A2a_fgcolour is A12_fixed?SD_fixed_fgcolour:SD_fgcolour; A3a_fgcolour is A13_fixed?SD_fixed_fgcolour:SD_fgcolour; A4a_fgcolour is A14_fixed?SD_fixed_fgcolour:SD_fgcolour; B1a_fgcolour is A21_fixed?SD_fixed_fgcolour:SD_fgcolour; B2a_fgcolour is A22_fixed?SD_fixed_fgcolour:SD_fgcolour; B3a_fgcolour is A23_fixed?SD_fixed_fgcolour:SD_fgcolour; B4a_fgcolour is A24_fixed?SD_fixed_fgcolour:SD_fgcolour; C1a_fgcolour is A31_fixed?SD_fixed_fgcolour:SD_fgcolour; C2a_fgcolour is A32_fixed?SD_fixed_fgcolour:SD_fgcolour; C3a_fgcolour is A33_fixed?SD_fixed_fgcolour:SD_fgcolour; C4a_fgcolour is A34_fixed?SD_fixed_fgcolour:SD_fgcolour; D1a_fgcolour is A41_fixed?SD_fixed_fgcolour:SD_fgcolour; D2a_fgcolour is A42_fixed?SD_fixed_fgcolour:SD_fgcolour; D3a_fgcolour is A43_fixed?SD_fixed_fgcolour:SD_fgcolour; D4a_fgcolour is A44_fixed?SD_fixed_fgcolour:SD_fgcolour; A1b_fgcolour is B11_fixed?SD_fixed_fgcolour:SD_fgcolour; A2b_fgcolour is B12_fixed?SD_fixed_fgcolour:SD_fgcolour; A3b_fgcolour is B13_fixed?SD_fixed_fgcolour:SD_fgcolour; A4b_fgcolour is B14_fixed?SD_fixed_fgcolour:SD_fgcolour; B1b_fgcolour is B21_fixed?SD_fixed_fgcolour:SD_fgcolour; B2b_fgcolour is B22_fixed?SD_fixed_fgcolour:SD_fgcolour; B3b_fgcolour is B23_fixed?SD_fixed_fgcolour:SD_fgcolour; B4b_fgcolour is B24_fixed?SD_fixed_fgcolour:SD_fgcolour; C1b_fgcolour is B31_fixed?SD_fixed_fgcolour:SD_fgcolour; C2b_fgcolour is B32_fixed?SD_fixed_fgcolour:SD_fgcolour; C3b_fgcolour is B33_fixed?SD_fixed_fgcolour:SD_fgcolour; C4b_fgcolour is B34_fixed?SD_fixed_fgcolour:SD_fgcolour; D1b_fgcolour is B41_fixed?SD_fixed_fgcolour:SD_fgcolour; D2b_fgcolour is B42_fixed?SD_fixed_fgcolour:SD_fgcolour; D3b_fgcolour is B43_fixed?SD_fixed_fgcolour:SD_fgcolour; D4b_fgcolour is B44_fixed?SD_fixed_fgcolour:SD_fgcolour; A1c_fgcolour is C11_fixed?SD_fixed_fgcolour:SD_fgcolour; A2c_fgcolour is C12_fixed?SD_fixed_fgcolour:SD_fgcolour; A3c_fgcolour is C13_fixed?SD_fixed_fgcolour:SD_fgcolour; A4c_fgcolour is C14_fixed?SD_fixed_fgcolour:SD_fgcolour; B1c_fgcolour is C21_fixed?SD_fixed_fgcolour:SD_fgcolour; B2c_fgcolour is C22_fixed?SD_fixed_fgcolour:SD_fgcolour; B3c_fgcolour is C23_fixed?SD_fixed_fgcolour:SD_fgcolour; B4c_fgcolour is C24_fixed?SD_fixed_fgcolour:SD_fgcolour; C1c_fgcolour is C31_fixed?SD_fixed_fgcolour:SD_fgcolour; C2c_fgcolour is C32_fixed?SD_fixed_fgcolour:SD_fgcolour; C3c_fgcolour is C33_fixed?SD_fixed_fgcolour:SD_fgcolour; C4c_fgcolour is C34_fixed?SD_fixed_fgcolour:SD_fgcolour; D1c_fgcolour is C41_fixed?SD_fixed_fgcolour:SD_fgcolour; D2c_fgcolour is C42_fixed?SD_fixed_fgcolour:SD_fgcolour; D3c_fgcolour is C43_fixed?SD_fixed_fgcolour:SD_fgcolour; D4c_fgcolour is C44_fixed?SD_fixed_fgcolour:SD_fgcolour; ##FOCUS COLOUR A1a_bgcolour is a1A_focus?SD_focus_colour:SD_bgcolour; A2a_bgcolour is a2A_focus?SD_focus_colour:SD_bgcolour; A3a_bgcolour is a3A_focus?SD_focus_colour:SD_bgcolour; A4a_bgcolour is a4A_focs?SD_focus_colour:SD_bgcolour; B1a_bgcolour is b1A_focus?SD_focus_colour:SD_bgcolour; B2a_bgcolour is b2A_focus?SD_focus_colour:SD_bgcolour; B3a_bgcolour is b3A_focus?SD_focus_colour:SD_bgcolour; B4a_bgcolour is b4A_focus?SD_focus_colour:SD_bgcolour; C1a_bgcolour is c1A_focus?SD_focus_colour:SD_bgcolour; C2a_bgcolour is c2A_focus?SD_focus_colour:SD_bgcolour; C3a_bgcolour is c3A_focus?SD_focus_colour:SD_bgcolour; C4a_bgcolour is c4A_focus?SD_focus_colour:SD_bgcolour; D1a_bgcolour is d1A_focus?SD_focus_colour:SD_bgcolour; D2a_bgcolour is d2A_focus?SD_focus_colour:SD_bgcolour; D3a_bgcolour is d3A_focus?SD_focus_colour:SD_bgcolour; D4a_bgcolour is d4A_focus?SD_focus_colour:SD_bgcolour; A1b_bgcolour is a1B_focus?SD_focus_colour:SD_bgcolour; A2b_bgcolour is a2B_focus?SD_focus_colour:SD_bgcolour; A3b_bgcolour is a3B_focus?SD_focus_colour:SD_bgcolour; A4b_bgcolour is a4B_focus?SD_focus_colour:SD_bgcolour; B1b_bgcolour is b1B_focus?SD_focus_colour:SD_bgcolour; B2b_bgcolour is b2B_focus?SD_focus_colour:SD_bgcolour; B3b_bgcolour is b3B_focus?SD_focus_colour:SD_bgcolour; B4b_bgcolour is b4B_focus?SD_focus_colour:SD_bgcolour; C1b_bgcolour is c1B_focus?SD_focus_colour:SD_bgcolour; C2b_bgcolour is c2B_focus?SD_focus_colour:SD_bgcolour; C3b_bgcolour is c3B_focus?SD_focus_colour:SD_bgcolour; C4b_bgcolour is c4B_focus?SD_focus_colour:SD_bgcolour; D1b_bgcolour is d1B_focus?SD_focus_colour:SD_bgcolour; D2b_bgcolour is d2B_focus?SD_focus_colour:SD_bgcolour; D3b_bgcolour is d3B_focus?SD_focus_colour:SD_bgcolour; D4b_bgcolour is d4B_focus?SD_focus_colour:SD_bgcolour; A1c_bgcolour is a1C_focus?SD_focus_colour:SD_bgcolour; A2c_bgcolour is a2C_focus?SD_focus_colour:SD_bgcolour; A3c_bgcolour is a3C_focus?SD_focus_colour:SD_bgcolour; A4c_bgcolour is a4C_focus?SD_focus_colour:SD_bgcolour; B1c_bgcolour is b1C_focus?SD_focus_colour:SD_bgcolour; B2c_bgcolour is b2C_focus?SD_focus_colour:SD_bgcolour; B3c_bgcolour is b3C_focus?SD_focus_colour:SD_bgcolour; B4c_bgcolour is b4C_focus?SD_focus_colour:SD_bgcolour; C1c_bgcolour is c1C_focus?SD_focus_colour:SD_bgcolour; C2c_bgcolour is c2C_focus?SD_focus_colour:SD_bgcolour; C3c_bgcolour is c3C_focus?SD_focus_colour:SD_bgcolour; C4c_bgcolour is c4C_focus?SD_focus_colour:SD_bgcolour; D1c_bgcolour is d1C_focus?SD_focus_colour:SD_bgcolour; D2c_bgcolour is d2C_focus?SD_focus_colour:SD_bgcolour; D3c_bgcolour is d3C_focus?SD_focus_colour:SD_bgcolour; D4c_bgcolour is d4C_focus?SD_focus_colour:SD_bgcolour; %scout ##MATRIX A ##ABILITATE THE TEXT WINDOW window A1a = { type: TEXT frame: ([{A1a_X1, A1a_Y1}, {A1a_X1+gridsquare_width.c,A1a_Y1+gridsquare_height.r}]) font: A1a_font bgcolor: A1a_bgcolour fgcolor: A1a_fgcolour bdcolor: A1a_bdcolour border: A1a_border relief: A1a_relief alignment: CENTRE sensitive: ON string: A11 }; window A2a = { type: TEXT frame: ([{A2a_X1, A2a_Y1}, {A2a_X1+gridsquare_width.c,A2a_Y1+gridsquare_height.r}]) font: A1a_font bgcolor: A2a_bgcolour fgcolor: A2a_fgcolour bdcolor: A2a_bdcolour border: A2a_border relief: A2a_relief alignment: CENTRE sensitive: ON string: A12 }; window A3a = { type: TEXT frame: ([{A3a_X1, A3a_Y1}, {A3a_X1+gridsquare_width.c,A3a_Y1+gridsquare_height.r}]) font: A3a_font bgcolor: A3a_bgcolour fgcolor: A3a_fgcolour bdcolor: A3a_bdcolour border: A3a_border relief: A3a_relief alignment: CENTRE sensitive: ON string: A13 }; window A4a = { type: TEXT frame: ([{A4a_X1, A4a_Y1}, {A4a_X1+gridsquare_width.c,A4a_Y1+gridsquare_height.r}]) font: A4a_font bgcolor: A4a_bgcolour fgcolor: A4a_fgcolour bdcolor: A4a_bdcolour border: A4a_border relief: A4a_relief alignment: CENTRE sensitive: ON string: A14 }; window B1a = { type: TEXT frame: ([{B1a_X1, B1a_Y1}, {B1a_X1+gridsquare_width.c,B1a_Y1+gridsquare_height.r}]) font: B1a_font bgcolor: B1a_bgcolour fgcolor: B1a_fgcolour bdcolor: B1a_bdcolour border: B1a_border relief: B1a_relief alignment: CENTRE sensitive: ON string: A21 }; window B2a = { type: TEXT frame: ([{B2a_X1, B2a_Y1}, {B2a_X1+gridsquare_width.c,B2a_Y1+gridsquare_height.r}]) font: B2a_font bgcolor: B2a_bgcolour fgcolor: B2a_fgcolour bdcolor: B2a_bdcolour border: B2a_border relief: B2a_relief alignment: CENTRE sensitive: ON string: A22 }; window B3a = { type: TEXT frame: ([{B3a_X1, B3a_Y1}, {B3a_X1+gridsquare_width.c,B3a_Y1+gridsquare_height.r}]) font: B3a_font bgcolor: B3a_bgcolour fgcolor: B3a_fgcolour bdcolor: B3a_bdcolour border: B3a_border relief: B3a_relief alignment: CENTRE sensitive: ON string: A23 }; window B4a = { type: TEXT frame: ([{B4a_X1, B4a_Y1}, {B4a_X1+gridsquare_width.c,B4a_Y1+gridsquare_height.r}]) font: B4a_font bgcolor: B4a_bgcolour fgcolor: B4a_fgcolour bdcolor: B4a_bdcolour border: B4a_border relief: B4a_relief alignment: CENTRE sensitive: ON string: A24 }; window C1a = { type: TEXT frame: ([{C1a_X1, C1a_Y1}, {C1a_X1+gridsquare_width.c,C1a_Y1+gridsquare_height.r}]) font: C1a_font bgcolor: C1a_bgcolour fgcolor: C1a_fgcolour bdcolor: C1a_bdcolour border: C1a_border relief: C1a_relief alignment: CENTRE sensitive: ON string: A31 }; window C2a = { type: TEXT frame: ([{C2a_X1, C2a_Y1}, {C2a_X1+gridsquare_width.c,C2a_Y1+gridsquare_height.r}]) font: C2a_font bgcolor: C2a_bgcolour fgcolor: C2a_fgcolour bdcolor: C2a_bdcolour border: C2a_border relief: C2a_relief alignment: CENTRE sensitive: ON string: A32 }; window C3a = { type: TEXT frame: ([{C3a_X1, C3a_Y1}, {C3a_X1+gridsquare_width.c,C3a_Y1+gridsquare_height.r}]) font: C3a_font bgcolor: C3a_bgcolour fgcolor: C3a_fgcolour bdcolor: C3a_bdcolour border: C3a_border relief: C3a_relief alignment: CENTRE sensitive: ON string: A33 }; window C4a = { type: TEXT frame: ([{C4a_X1, C4a_Y1}, {C4a_X1+gridsquare_width.c,C4a_Y1+gridsquare_height.r}]) font: C4a_font bgcolor: C4a_bgcolour fgcolor: C4a_fgcolour bdcolor: C4a_bdcolour border: C4a_border relief: C4a_relief alignment: CENTRE sensitive: ON string: A34 }; window D1a = { type: TEXT frame: ([{D1a_X1, D1a_Y1}, {D1a_X1+gridsquare_width.c,D1a_Y1+gridsquare_height.r}]) font: D1a_font bgcolor: D1a_bgcolour fgcolor: D1a_fgcolour bdcolor: D1a_bdcolour border: D1a_border relief: D1a_relief alignment: CENTRE sensitive: ON string: A41 }; window D2a = { type: TEXT frame: ([{D2a_X1, D2a_Y1}, {D2a_X1+gridsquare_width.c,D2a_Y1+gridsquare_height.r}]) font: D2a_font bgcolor: D2a_bgcolour fgcolor: D2a_fgcolour bdcolor: D2a_bdcolour border: D2a_border relief: D2a_relief alignment: CENTRE sensitive: ON string: A42 }; window D3a = { type: TEXT frame: ([{D3a_X1, D3a_Y1}, {D3a_X1+gridsquare_width.c,D3a_Y1+gridsquare_height.r}]) font: D3a_font bgcolor: D3a_bgcolour fgcolor: D3a_fgcolour bdcolor: D3a_bdcolour border: D3a_border relief: D3a_relief alignment: CENTRE sensitive: ON string: A43 }; window D4a = { type: TEXT frame: ([{D4a_X1, D4a_Y1}, {D4a_X1+gridsquare_width.c,D4a_Y1+gridsquare_height.r}]) font: D4a_font bgcolor: D4a_bgcolour fgcolor: D4a_fgcolour bdcolor: D4a_bdcolour border: D4a_border relief: D4a_relief alignment: CENTRE sensitive: ON string: A44 }; ##MATRIX B window A1b = { type: TEXT frame: ([{A1b_X1, A1b_Y1}, {A1b_X1+gridsquare_width.c,A1b_Y1+gridsquare_height.r}]) font: A1b_font bgcolor: A1b_bgcolour fgcolor: A1b_fgcolour bdcolor: A1b_bdcolour border: A1b_border relief: A1b_relief alignment: CENTRE sensitive: ON string: B11 }; window A2b = { type: TEXT frame: ([{A2b_X1, A2b_Y1}, {A2b_X1+gridsquare_width.c,A2b_Y1+gridsquare_height.r}]) font: A1b_font bgcolor: A2b_bgcolour fgcolor: A2b_fgcolour bdcolor: A2b_bdcolour border: A2b_border relief: A2b_relief alignment: CENTRE sensitive: ON string: B12 }; window A3b = { type: TEXT frame: ([{A3b_X1, A3b_Y1}, {A3b_X1+gridsquare_width.c,A3b_Y1+gridsquare_height.r}]) font: A3b_font bgcolor: A3b_bgcolour fgcolor: A3b_fgcolour bdcolor: A3b_bdcolour border: A3b_border relief: A3b_relief alignment: CENTRE sensitive: ON string: B13 }; window A4b = { type: TEXT frame: ([{A4b_X1, A4b_Y1}, {A4b_X1+gridsquare_width.c,A4b_Y1+gridsquare_height.r}]) font: A4b_font bgcolor: A4b_bgcolour fgcolor: A4b_fgcolour bdcolor: A4b_bdcolour border: A4b_border relief: A4b_relief alignment: CENTRE sensitive: ON string: B14 }; window B1b = { type: TEXT frame: ([{B1b_X1, B1b_Y1}, {B1b_X1+gridsquare_width.c,B1b_Y1+gridsquare_height.r}]) font: B1b_font bgcolor: B1b_bgcolour fgcolor: B1b_fgcolour bdcolor: B1b_bdcolour border: B1b_border relief: B1b_relief alignment: CENTRE sensitive: ON string: B21 }; window B2b = { type: TEXT frame: ([{B2b_X1, B2b_Y1}, {B2b_X1+gridsquare_width.c,B2b_Y1+gridsquare_height.r}]) font: B2b_font bgcolor: B2b_bgcolour fgcolor: B2b_fgcolour bdcolor: B2b_bdcolour border: B2b_border relief: B2b_relief alignment: CENTRE sensitive: ON string: B22 }; window B3b = { type: TEXT frame: ([{B3b_X1, B3b_Y1}, {B3b_X1+gridsquare_width.c,B3b_Y1+gridsquare_height.r}]) font: B3b_font bgcolor: B3b_bgcolour fgcolor: B3b_fgcolour bdcolor: B3b_bdcolour border: B3b_border relief: B3b_relief alignment: CENTRE sensitive: ON string: B23 }; window B4b = { type: TEXT frame: ([{B4b_X1, B4b_Y1}, {B4b_X1+gridsquare_width.c,B4b_Y1+gridsquare_height.r}]) font: B4b_font bgcolor: B4b_bgcolour fgcolor: B4b_fgcolour bdcolor: B4b_bdcolour border: B4b_border relief: B4b_relief alignment: CENTRE sensitive: ON string: B24 }; window C1b = { type: TEXT frame: ([{C1b_X1, C1b_Y1}, {C1b_X1+gridsquare_width.c,C1b_Y1+gridsquare_height.r}]) font: C1b_font bgcolor: C1b_bgcolour fgcolor: C1b_fgcolour bdcolor: C1b_bdcolour border: C1b_border relief: C1b_relief alignment: CENTRE sensitive: ON string: B31 }; window C2b = { type: TEXT frame: ([{C2b_X1, C2b_Y1}, {C2b_X1+gridsquare_width.c,C2b_Y1+gridsquare_height.r}]) font: C2b_font bgcolor: C2b_bgcolour fgcolor: C2b_fgcolour bdcolor: C2b_bdcolour border: C2b_border relief: C2b_relief alignment: CENTRE sensitive: ON string: B32 }; window C3b = { type: TEXT frame: ([{C3b_X1, C3b_Y1}, {C3b_X1+gridsquare_width.c,C3b_Y1+gridsquare_height.r}]) font: C3b_font bgcolor: C3b_bgcolour fgcolor: C3b_fgcolour bdcolor: C3b_bdcolour border: C3b_border relief: C3b_relief alignment: CENTRE sensitive: ON string: B33 }; window C4b = { type: TEXT frame: ([{C4b_X1, C4b_Y1}, {C4b_X1+gridsquare_width.c,C4b_Y1+gridsquare_height.r}]) font: C4b_font bgcolor: C4b_bgcolour fgcolor: C4b_fgcolour bdcolor: C4b_bdcolour border: C4b_border relief: C4b_relief alignment: CENTRE sensitive: ON string: B34 }; window D1b = { type: TEXT frame: ([{D1b_X1, D1b_Y1}, {D1b_X1+gridsquare_width.c,D1b_Y1+gridsquare_height.r}]) font: D1b_font bgcolor: D1b_bgcolour fgcolor: D1b_fgcolour bdcolor: D1b_bdcolour border: D1b_border relief: D1b_relief alignment: CENTRE sensitive: ON string: B41 }; window D2b = { type: TEXT frame: ([{D2b_X1, D2b_Y1}, {D2b_X1+gridsquare_width.c,D2b_Y1+gridsquare_height.r}]) font: D2b_font bgcolor: D2b_bgcolour fgcolor: D2b_fgcolour bdcolor: D2b_bdcolour border: D2b_border relief: D2b_relief alignment: CENTRE sensitive: ON string: B42 }; window D3b = { type: TEXT frame: ([{D3b_X1, D3b_Y1}, {D3b_X1+gridsquare_width.c,D3b_Y1+gridsquare_height.r}]) font: D3b_font bgcolor: D3b_bgcolour fgcolor: D3b_fgcolour bdcolor: D3b_bdcolour border: D3b_border relief: D3b_relief alignment: CENTRE sensitive: ON string: B43 }; window D4b = { type: TEXT frame: ([{D4b_X1, D4b_Y1}, {D4b_X1+gridsquare_width.c,D4b_Y1+gridsquare_height.r}]) font: D4b_font bgcolor: D4b_bgcolour fgcolor: D4b_fgcolour bdcolor: D4b_bdcolour border: D4b_border relief: D4b_relief alignment: CENTRE sensitive: ON string: B44 }; ##MATRIX C window A1c = { type: TEXT frame: ([{A1c_X1, A1c_Y1}, {A1c_X1+gridsquare_widthC.c,A1c_Y1+gridsquare_heightC.r}]) font: A1c_font bgcolor: A1c_bgcolour fgcolor: A1c_fgcolour bdcolor: A1c_bdcolour border: A1c_border relief: A1c_relief alignment: CENTRE sensitive: ON string: C11 }; window A2c = { type: TEXT frame: ([{A2c_X1, A2c_Y1}, {A2c_X1+gridsquare_widthC.c,A2c_Y1+gridsquare_heightC.r}]) font: A1c_font bgcolor: A2c_bgcolour fgcolor: A2c_fgcolour bdcolor: A2c_bdcolour border: A2c_border relief: A2c_relief alignment: CENTRE sensitive: ON string: C12 }; window A3c = { type: TEXT frame: ([{A3c_X1, A3c_Y1}, {A3c_X1+gridsquare_widthC.c,A3c_Y1+gridsquare_heightC.r}]) font: A3c_font bgcolor: A3c_bgcolour fgcolor: A3c_fgcolour bdcolor: A3c_bdcolour border: A3c_border relief: A3c_relief alignment: CENTRE sensitive: ON string: C13 }; window A4c = { type: TEXT frame: ([{A4c_X1, A4c_Y1}, {A4c_X1+gridsquare_widthC.c,A4c_Y1+gridsquare_heightC.r}]) font: A4c_font bgcolor: A4c_bgcolour fgcolor: A4c_fgcolour bdcolor: A4c_bdcolour border: A4c_border relief: A4c_relief alignment: CENTRE sensitive: ON string: C14 }; window B1c = { type: TEXT frame: ([{B1c_X1, B1c_Y1}, {B1c_X1+gridsquare_widthC.c,B1c_Y1+gridsquare_heightC.r}]) font: B1c_font bgcolor: B1c_bgcolour fgcolor: B1c_fgcolour bdcolor: B1c_bdcolour border: B1c_border relief: B1c_relief alignment: CENTRE sensitive: ON string: C21 }; window B2c = { type: TEXT frame: ([{B2c_X1, B2c_Y1}, {B2c_X1+gridsquare_widthC.c,B2c_Y1+gridsquare_heightC.r}]) font: B2c_font bgcolor: B2c_bgcolour fgcolor: B2c_fgcolour bdcolor: B2c_bdcolour border: B2c_border relief: B2c_relief alignment: CENTRE sensitive: ON string: C22 }; window B3c = { type: TEXT frame: ([{B3c_X1, B3c_Y1}, {B3c_X1+gridsquare_widthC.c,B3c_Y1+gridsquare_heightC.r}]) font: B3c_font bgcolor: B3c_bgcolour fgcolor: B3c_fgcolour bdcolor: B3c_bdcolour border: B3c_border relief: B3c_relief alignment: CENTRE sensitive: ON string: C23 }; window B4c = { type: TEXT frame: ([{B4c_X1, B4c_Y1}, {B4c_X1+gridsquare_widthC.c,B4c_Y1+gridsquare_heightC.r}]) font: B4c_font bgcolor: B4c_bgcolour fgcolor: B4c_fgcolour bdcolor: B4c_bdcolour border: B4c_border relief: B4c_relief alignment: CENTRE sensitive: ON string: C24 }; window C1c = { type: TEXT frame: ([{C1c_X1, C1c_Y1}, {C1c_X1+gridsquare_widthC.c,C1c_Y1+gridsquare_heightC.r}]) font: C1c_font bgcolor: C1c_bgcolour fgcolor: C1c_fgcolour bdcolor: C1c_bdcolour border: C1c_border relief: C1c_relief alignment: CENTRE sensitive: ON string: C31 }; window C2c = { type: TEXT frame: ([{C2c_X1, C2c_Y1}, {C2c_X1+gridsquare_widthC.c,C2c_Y1+gridsquare_heightC.r}]) font: C2c_font bgcolor: C2c_bgcolour fgcolor: C2c_fgcolour bdcolor: C2c_bdcolour border: C2c_border relief: C2c_relief alignment: CENTRE sensitive: ON string: C32 }; window C3c = { type: TEXT frame: ([{C3c_X1, C3c_Y1}, {C3c_X1+gridsquare_widthC.c,C3c_Y1+gridsquare_heightC.r}]) font: C3c_font bgcolor: C3c_bgcolour fgcolor: C3c_fgcolour bdcolor: C3c_bdcolour border: C3c_border relief: C3c_relief alignment: CENTRE sensitive: ON string: C33 }; window C4c = { type: TEXT frame: ([{C4c_X1, C4c_Y1}, {C4c_X1+gridsquare_widthC.c,C4c_Y1+gridsquare_heightC.r}]) font: C4c_font bgcolor: C4c_bgcolour fgcolor: C4c_fgcolour bdcolor: C4c_bdcolour border: C4c_border relief: C4c_relief alignment: CENTRE sensitive: ON string: C34 }; window D1c = { type: TEXT frame: ([{D1c_X1, D1c_Y1}, {D1c_X1+gridsquare_widthC.c,D1c_Y1+gridsquare_heightC.r}]) font: D1c_font bgcolor: D1c_bgcolour fgcolor: D1c_fgcolour bdcolor: D1c_bdcolour border: D1c_border relief: D1c_relief alignment: CENTRE sensitive: ON string: C41 }; window D2c = { type: TEXT frame: ([{D2c_X1, D2c_Y1}, {D2c_X1+gridsquare_widthC.c,D2c_Y1+gridsquare_heightC.r}]) font: D2c_font bgcolor: D2c_bgcolour fgcolor: D2c_fgcolour bdcolor: D2c_bdcolour border: D2c_border relief: D2b_relief alignment: CENTRE sensitive: ON string: C42 }; window D3c = { type: TEXT frame: ([{D3c_X1, D3c_Y1}, {D3c_X1+gridsquare_widthC.c,D3c_Y1+gridsquare_heightC.r}]) font: D3c_font bgcolor: D3c_bgcolour fgcolor: D3c_fgcolour bdcolor: D3c_bdcolour border: D3c_border relief: D3c_relief alignment: CENTRE sensitive: ON string: C43 }; window D4c = { type: TEXT frame: ([{D4c_X1, D4c_Y1}, {D4c_X1+gridsquare_widthC.c,D4c_Y1+gridsquare_heightC.r}]) font: D4c_font bgcolor: D4c_bgcolour fgcolor: D4c_fgcolour bdcolor: D4c_bdcolour border: D4c_border relief: D4c_relief alignment: CENTRE sensitive: ON string: C44 }; string background_bgcolour; background_bgcolour = "black"; window background = { type: TEXT frame: ([{grid_startAx-7, grid_startAy-7},{D4c_X1+gridsquare_widthC.c+7,D4c_Y1+gridsquare_heightC.r+7}]) bgcolor: background_bgcolour sensitive: ON string: "" }; ##buttoms!! window button1 = { type: TEXT frame: ([{10,150}, 1, 15]) string: "Load example" border: 1 bgcolor: "white" sensitive: ON }; window button2 = { type: TEXT frame: ([{10,200}, 1, 16]) string: "MultiplyMatrices" border: 1 bgcolor: "white" sensitive: ON }; window button3 = { type: TEXT frame: ([{320,250}, 1, 15]) string: "Clear Modell" border: 1 bgcolor: "white" sensitive: ON }; window button3a = { type: TEXT frame: ([{320,200}, 1, 15]) string: "clearsolution" border: 1 bgcolor: "white" sensitive: ON }; window button3b = { type: TEXT frame: ([{320,150}, 1, 17]) string: "clear parrameter" border: 1 bgcolor: "white" sensitive: ON }; window button4 = { type: TEXT frame: ([{260,150}, 2, 2]) string: "*" border: 1 bgcolor: "white" sensitive: ON }; window button5 = { type: TEXT frame: ([{260,200}, 2, 2]) string: "+" border: 1 bgcolor: "white" sensitive: ON }; display region1=; display region2=; display region3=; display buttonMenu=; display grid=region1®ion2®ion3&buttonMenu&; screen=grid; %eden ##Matrix A, only allow number 1-9 proc edit_A1a : A1a_key_1 { if (!A11_fixed) A_11 = ((470) ? str(dig) : ""; } A11 is mkstr(A_11); A12 is mkstr(A_12); A13 is mkstr(A_13); A14 is mkstr(A_14); A21 is mkstr(A_21); A22 is mkstr(A_22); A23 is mkstr(A_23); A24 is mkstr(A_24); A31 is mkstr(A_31); A32 is mkstr(A_32); A33 is mkstr(A_33); A34 is mkstr(A_34); A41 is mkstr(A_41); A42 is mkstr(A_42); A43 is mkstr(A_43); A44 is mkstr(A_44); B11 is mkstr(B_11); B12 is mkstr(B_12); B13 is mkstr(B_13); B14 is mkstr(B_14); B21 is mkstr(B_21); B22 is mkstr(B_22); B23 is mkstr(B_23); B24 is mkstr(B_24); B31 is mkstr(B_31); B32 is mkstr(B_32); B33 is mkstr(B_33); B34 is mkstr(B_34); B41 is mkstr(B_41); B42 is mkstr(B_42); B43 is mkstr(B_43); B44 is mkstr(B_44); C11 is mkstr(C_11); C12 is mkstr(C_12); C13 is mkstr(C_13); C14 is mkstr(C_14); C21 is mkstr(C_21); C22 is mkstr(C_22); C23 is mkstr(C_23); C24 is mkstr(C_24); C31 is mkstr(C_31); C32 is mkstr(C_32); C33 is mkstr(C_33); C34 is mkstr(C_34); C41 is mkstr(C_41); C42 is mkstr(C_42); C43 is mkstr(C_43); C44 is mkstr(C_44); %eddi rowbandA is ((matrixAgrid: rowix>0).(matrixAgrid : rowix>5)) : digit>0; rowbandB is ((matrixBgrid: rowix>0).(matrixBgrid : rowix>5)) : digit>0; rowbandC is ((matrixCgrid: rowix>0).(matrixCgrid : rowix>5)) : digit>0; colbandA is ((matrixAgrid: colix>0).(matrixAgrid : colix>5)) : digit>0; colbandB is ((matrixBgrid: colix>0).(matrixBgrid : colix>5)) : digit>0; colbandC is ((matrixCgrid: colix>0).(matrixCgrid : colix>5)) : digit>0; regionAdigits is (rowbandA . colbandA) % digit; regionBdigits is (rowbandB . colbandB) % digit; regionBdigits is (rowbandC . colbandC) % digit; %eden rowsA is [row1A, row2A, row3A, row4A]; colsA is [col1A, col2A, col3A, col4A]; rowsB is [row1B, row2B, row3B, row4B]; colsB is [col1B, col2B, col3B, col4B]; rowsC is [row1C, row2C, row3C, row4C]; colsC is [col1C, col2C, col3C, col4C]; regiondigits is [regionAdigits, regionBdigits,regionCdigits]; /* setting up the currently selected square context */ ## current square is determined by current_row and current_col e.g. ## current_row = 7; ## current_col = 4; ## these observables are in turn determined by setting of currentsquare by mouse current_rowbandA is int((currentA_row-1)/3)+1; current_colbandA is int((currentA_col-1)/3)+1; current_rowbandB is int((currentB_row-1)/3)+1; current_colbandB is int((currentB_col-1)/3)+1; current_rowbandC is int((currentC_row-1)/3)+1; current_colbandC is int((currentC_col-1)/3)+1; currentA_row is max(int(char(currentsquareA[2])),48)-48; currentA_col is max(int(char(currentsquareA[1])),64)-64; currentB_row is max(int(char(currentsquareB[2])),48)-48; currentB_col is max(int(char(currentsquareB[1])),64)-64; currentC_row is max(int(char(currentsquareC[2])),48)-48; currentC_col is max(int(char(currentsquareC[1])),64)-64; ## currentsquare = ["A", "1"] or in singular cases ["", ""] ## in singular case int(char(currentsquare[2]))=int(char(""))=0 currentsquareA = ["",""]; ## default values currentsquareB = ["",""]; ## default values currentsquareC = ["",""]; ## default values ## background highlighting adapted from sudokuKing2006: ## recall the foreground colours as these are set to "white" in colour sudoku model SD_fgcolour = "black"; SD_fixed_fgcolour="red"; SD_relevant_colour = "yellow"; ##MATRIX A NUMBER FOR MATRIX C A1a_bgcolour is a1A_focus ? SD_focus_colour : ( ((currentC_row==1)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); B1a_bgcolour is b1A_focus ? SD_focus_colour : ( ((currentC_row==1)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); C1a_bgcolour is c1A_focus ? SD_focus_colour :( ((currentC_row==1)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); D1a_bgcolour is d1A_focus ? SD_focus_colour : ( ((currentC_row==1)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); A2a_bgcolour is a2A_focus ? SD_focus_colour :( ((currentC_row==2)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); B2a_bgcolour is b2A_focus ? SD_focus_colour : ( ((currentC_row==2)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); C2a_bgcolour is c2A_focus ? SD_focus_colour : ( ((currentC_row==2)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); D2a_bgcolour is d2A_focus ? SD_focus_colour : ( ((currentC_row==2)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); A3a_bgcolour is a3A_focus ? SD_focus_colour :( ((currentC_row==3)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); B3a_bgcolour is b3A_focus ? SD_focus_colour : ( ((currentC_row==3)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); C3a_bgcolour is c3A_focus ? SD_focus_colour : ( ((currentC_row==3)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); D3a_bgcolour is d3A_focus ? SD_focus_colour : ( ((currentC_row==3)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); A4a_bgcolour is a4A_focus ? SD_focus_colour : ( ((currentC_row==4)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); B4a_bgcolour is b4A_focus ? SD_focus_colour : ( ((currentC_row==4)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); C4a_bgcolour is c4A_focus ? SD_focus_colour : ( ((currentC_row==4)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); D4a_bgcolour is d4A_focus ? SD_focus_colour : ( ((currentC_row==4)&& ((currentC_col==1) ||(currentC_col==2)|| (currentC_col==3)||(currentC_col==4))) ? SD_relevant_colour : SD_bgcolour); ##MATRIX B DEPENDENCY TO MATRIX C A1b_bgcolour is a1B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==1)) ? SD_relevant_colour : SD_bgcolour); A2b_bgcolour is a2B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==1)) ? SD_relevant_colour : SD_bgcolour); A3b_bgcolour is a3B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==1)) ? SD_relevant_colour : SD_bgcolour); A4b_bgcolour is a4B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==1)) ? SD_relevant_colour : SD_bgcolour); B1b_bgcolour is b1B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==2)) ? SD_relevant_colour : SD_bgcolour); B2b_bgcolour is b2B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==2)) ? SD_relevant_colour : SD_bgcolour); B3b_bgcolour is b3B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==2)) ? SD_relevant_colour : SD_bgcolour); B4b_bgcolour is b4B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==2)) ? SD_relevant_colour : SD_bgcolour); C1b_bgcolour is c1B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==3)) ? SD_relevant_colour : SD_bgcolour); C2b_bgcolour is c2B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==3)) ? SD_relevant_colour : SD_bgcolour); C3b_bgcolour is c3B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==3)) ? SD_relevant_colour : SD_bgcolour); C4b_bgcolour is c4B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==3)) ? SD_relevant_colour : SD_bgcolour); D1b_bgcolour is d1B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==4)) ? SD_relevant_colour : SD_bgcolour); D2b_bgcolour is d2B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==4)) ? SD_relevant_colour : SD_bgcolour); D3b_bgcolour is d3B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==4)) ? SD_relevant_colour : SD_bgcolour); D4b_bgcolour is d4B_focus ? SD_focus_colour : ( (((currentC_row==1) ||(currentC_row==2)|| (currentC_row==3)||(currentC_row==4))&& (currentC_col==4)) ? SD_relevant_colour : SD_bgcolour); ## adapting Karl's puzzle saving procedure: proc save_grid { para nameA; auto fp,i,j,k,result,columnsA, columnsB,rowsA, rowsB,this_cellA, this_cellB; fp=fopen(name, "w"); fprintf(fp, "%%eden\n"); ## %% required to print a % symbol fprintf(fp,"autocalc=0;\n"); fclose(fp); result=[]; columnsA=["a","b","c","d"]; rowsA=["1","2","3","4"]; columnsB=["a","b","c","d"]; rowsB=["1","2","3","4"]; columnsC=["a","b","c","d"]; rowsC=["1","2","3","4"]; for(i=1;i<=columnsA#;i++) { for(j=1;j<=rowsA#;j++) { this_cellA=columnsA[i]// "_" // rowsA[j]; this_cell_nameA = columnsA[i] // rowsA[j]; this_cellB=columnsB[i]// "_" // rowsA=B[j]; this_cell_nameA = columnsB[i] // rowsB[j]; this_stringA=symboldefinition(this_cellA); this_fixedA=symboldefinition((this_cell_nameA // "_fixed")); this_stringB=symboldefinition(this_cellB); this_fixedB=symboldefinition((this_cell_nameA // "_fixed")); append result, result+this_stringA*this_stringB; append result, this_fixed; } } for(k=1;k<=result#;k++) { save_def(name,result[k]); } fp=fopen(name, "a"); fprintf(fp,"autocalc=1;\n"); fclose(fp); } proc save_def { para filename,toSave; auto fp; fp=fopen(filename,"a"); fprintf(fp,toSave//"\n"); fclose(fp); } autocalc=1; %eden FileLoadedOkay = 1; MtrxMultiModel0935882/mtrxmulti.e0000600010244600004550000000060411332046275016643 0ustar csujejdcsugrad%eden /* Function that multiplicates two matrix A and B to writes the result in matrix C i = row, j=col so X_ij = j col, i row in X matrix */ func mtrx_multi { auto i,j,k; for (i=1; i<=4; i++) { for(k=1; k<=4;k++){ for (j=1; j<=4;j++){ execute("C_"// str(i)//str(k) // "= C_"// str(i)//str(k) // "+ A_"// str(j)//str(k) // "* B_"// str(i)//str(j) // ";"); } } } } mtrx_multi(); MtrxMultiModel0935882/num_add.e~0000600010244600004550000000054111332032175016375 0ustar csujejdcsugrad$eden /* This function adds the current value of Matrix C with the multiplication of the current vale of Matrix A and B */ func num_add{ execute ("C_"// str(currentC_col)//str(currentC_row)// "= C_" // str(currentC_col)//str(currentC_row)//"+ A_"//str(currentA_col)//str(currentA_row)//"* B_"//str(currentB_col)//str(currentB_row)// ";"); } num_add();MtrxMultiModel0935882/example.e0000600010244600004550000000065411332046526016235 0ustar csujejdcsugrad%eden ##puzzle nr. 5 autocalc=0; ##MATRIX A A_11 = 1; A_12 = 4; A_13 = 2; A_14 = 3; A_21 = 5; A_22 = 7; A_23 = 8; A_24 = 1; A_31 = 2; A_32 = 3; A_33 = 7; A_34 = 1; A_41 = 1; A_42 = 2; A_43 = 7; A_44 = 2; ##MATRIX B B_11 = 2; B_12 = 1; B_13 = 2; B_14 = 7; B_21 = 9; B_22 = 1; B_23 = 2; B_24 = 2; B_31= 4; B_32 = 6; B_33 = 6; B_34 = 4; B_41 = 3; B_42 = 2; B_43 = 2; B_44 = 1; autocalc=1; %eden FileLoadedOkay = 1;MtrxMultiModel0935882/num_multi.e~0000600010244600004550000000050111332032217016770 0ustar csujejdcsugrad %eden /*This function multiplies the current number in Matrix A and the one in Matrix B and is displayed in the current one from C.*/ func num_multi{ execute("C_"// str(currentC_col)//str(currentC_row)// "= A_"//str(currentA_col)//str(currentA_row)//"* B_"//str(currentB_col)//str(currentB_row)// ";"); } num_multi();MtrxMultiModel0935882/clear_solution.e0000600010244600004550000000031611332034567017621 0ustar csujejdcsugrad%eden ##This function sets all parameters in matrix C null func clear_solution { auto i,j; for(i=1; i<=4;i++){ for(j=1; j<=4;j++){ execute("C_"//str(i)//str(j)//"="// "0" //";"); } } } clear_solution();MtrxMultiModel0935882/Readme.pdf0000600010244600004550000012105711332053773016327 0ustar csujejdcsugrad%PDF-1.4 %äüöß 2 0 obj <> stream x[Iϯ9& `8@|OmnR1xoFd/յ~UR.rUg&^%Ƿ>` E˷)=_MjoWsSno馂ߎz /5"_L: {63lD/| iӎޛ:;`OF\,/OaSO/ﰩR1oո7O]v\Bn'0^ t>~ɱ`K0:/#>%PG#i?Zuc{J>PGw%#(R)tJJ8ŤB_PaXPJߵ[m;T[ TXpP+g8|2_d΀H'|zxt:Cg[e5XQ=DF'G#99l/Җ,~ϲKaTa#"d^e[ WwEGy0_[|U~!6Xb x勢HŔ"kȳƘ<;'$N[4k"` h0Aees?4?NwƩD{p.Ί.hS9!m"P$SXN?lYfIu/Bs6aC`]M bqEޒ.SՋX]V0no\Dwb6 3i6Kekvu^ch K\Ȳ XН“n"Yfhq=!'%~1n4^Fӫk0Fh';y+*ً9ɚ,5RywIDV/=FzѽńuEL Zdh%ER֚ZlaGbLP##4-Y mgHY &WVI!s,;LHK̚_^YDV@;P<~y޷oUci;cOםX^r qQK-W> $;ڱ#=z*Pl1cFU_AWa?T!qʼzey]Nmqǵ"~6+]zvF; wwaUe[[c=r֬^NcNya ":sSl_YŐȌA-b.;~D:Fi&9'6iL|RKuP6{5ûT ~!C8W"FS ZWm^4h&95iV*R45 xG[!EA˰Jh:o^f Y$ziSu)6& aa"asVs5Nik%!^XZl!A {W`n4:rR.a6pqRv"ȮtkxbM$gݏ fzJe{%yR3ev@='DtCT(nx1^zSJaGP.pN@ G1$(ۍDvP9\žm>JNM% ;oC EizMxt`xS9vE[,X+m. ^oY]/bF3AipGXw=~bMU\">%&9=-<ͷ+U@L}\prMjzQꂧD;nɎKzՃF.KtYMn!\ r GaD$I>ن}ٷo1!7Eq;ŸjG7;ѝ~E,}K E7O.ilh~ʥzэ v'޺1VL7JZp`|*WiC\}]g~O9}_YۢWۤDlP W}0t3ONK\%<ƗPzh.oa9ɽkBtZ MA]arUg>ƑkDؗ?k, 02>'<<|տ'3RE7 x9^߸Dcc}ñR /j 彑ֽ7ky>썯&mE,0XkKs{?vw~(1-zhH|ks3ٗ7> sh¹)Yi`·W endstream endobj 3 0 obj 3161 endobj 5 0 obj <> stream xRKkQ=dZQ"ŸbIK #nty4ָw.(EqW]~[wDx&MD!w9&Q1<v^p)AbRqMox+gMvYKM Ow5d0Mgб> endobj 8 0 obj <> stream x]j0z= ۹CI diX}֊Bf>iVܾ`;L0xrsX"8zRe۴D9Zxs.;;dO#Νn'jp8=& uۧ(_sU壊 h,U] ԗK?o' KdUO7j ؅YsqO=1č~my endstream endobj 9 0 obj <> endobj 10 0 obj <> stream x8{T\坿y`1!ga !Dn $20L`fH iDVFcv6ibz={V]75]ݶ#{YfߝIvw~L|j: 0 ,ɂ\k&d;/0Ó#7PP+GW^} @h844Tqhc(/Ϫ,/̖ro~;_7Ry#p2}ӲT O>6Ŀ4zM8**FKKr UnU~ rxgs坉B-')|/ e"r>x3~ O/vx3~:< ϭ^[aqfz դ~~1BbGFI3 0,pycיǠ=r|2ɓ93ܽq܉.p45O#btpj!a fIV̐c8J7)+by2N|a܇{Q^03n+aĨ~ XYk M#<-zz=N_Ǎvx ۶߰nsJWP(s9ѠHi5jR2=BKXzBH!%I-WH|P㯖QrI1))J#_r#7 " <,Ғ aEd bm%=R9O-隄Y 4JRSٲ&N+EА xmv{|e4&%UM:ݵh}AG0α! R-o`a\hHjkuO$(s#,s5%[0ss-2 -&f Q[HO`@lR]18Jmj̝7$ ! }n]}0̩N?(>D@a]^ RNV̮pVՃVE;XH݇B0Jmva.׹zeY1%e1*`P9?LK6ؔ h`{p4 rH; T< .Df|K,Bj=[? $K4әy\9%t΂;qqa#o{  [=sa چp ]{B K 3Tv3JLSw/w6I29E3B4-'i4|(hD߂XOI]ۈ U4!psJWUvjXSQ4ym^{r3S&ջbp'@fdey> ^aD_F#g9 9Zu_I ^Ah2mmrV_Eװw9ƅA@wH@[Xlɫg%WDQlCs?P/K-tLh'ݍrrGH3 a DP*%RԅFfeB&"Y\d4 A"IeJ9cܿ=_{i3_"afGض@URH ސ(]AY~˜#|&I'oGĈ%0a2ImjULsfFmhf? f kߠWa !C jQ3Fs)43fu,U ^7]Yv5::~TUI'%v֚%J:Nz3T-o֝:rWWSq;VScSu^͘證w?wFĊ#dS̱RC&Zs9'䰊8+ Ἒy1Wh+"fd1Yi<#3ZaahbuWocj6 z\P6]ɲ虥^LȾۂ[y4T~'I{:=wޗ훆g'B+#֡/OEfy(;}$&ٙ{vF#<.Z Vb4h 9`^ɱT*SGcq..VGF_DCTR r8jBVRSpx܇wmY:୚/)n|=ѝv:zWVTV8%}卲|VpX,WfUG:rnfa< 0EMޙrRN T*/yhQ);JJ._8`Y1Ӛa)%,Zʲg8l2m Z6Mz_#䖞ۺ7z,[<:~j|-70m7yU{%l[\n}b>jۗ55ñܙѰh<~=CdX7mFJlSdS) Lj1 dZ C4=I>-jT$c@)'7̺ɝ6dyb?qҽx:+D+oɼ+ ݩ3˱v݃ӑ%=w#:W>I>^Vґˈt]!3uy#1X?Gx]8JƞeT ӵ;k\9m \+=O4mj* ,2'˰t^6ßPt fɝL{MFF7Ourᣚ}QCLK֒&t%:{-I-de6vbg!N&[7q2dl1k毘0a3qL2dƜ03fbv]ל/QX:Oylިݫ]RUڰخ i@pt R֝m놟onv|ːV@⮿6% Ӿ7f̩`_73 ״6㬧 m4.) xW%&PMO FK#&Fk6m(kI5;<ODd #1>ǧBC|t8x9cb)$F&  q>41w*v G2q0<p4>Ć"tX⏇աx<N[\CURƒ([1w)^dx(L`XD<EcT޷?<Q Fq(8:͇Óq,ٱU%Shx!PZC 3a%xDQ'gHEn,;(b2Ƒ窀'S>/S"0 ;dON' U622=*Wl\'6ƌ94qC#q nFZT+UY.6+ReIɈl%O֤˳MRיg mXrxc(IVbnesqC(oT&a $.> endobj 13 0 obj <> stream x]n <b"::ĘX&.zI>ђT$ ߾pI\OT5F+Ih0O@;&qB-FnH:;OyNw_]鮔S$z}TŘ/A;HQP !Bվܺj&*b0.r=+h^-P[Vҧs|Oitg3C' ggqf͹~T 7 o,bہ>?2 *> endobj 15 0 obj <> stream xԼ{|Sǵ0:kfoi$˒d[eacy~W`16o4 $$<8iJ艒Мi|$E'M㶴=&nh͗Sbْy$9ʖfͬ5k֚Y{ CZ4mlyvCap؅?#D.!oՏ?򽆐<߼G1s͸/KI l:rL4–u=3GGnm59niﶞ}oO lE)zKYp_;h:I7BF, +Jh2[6{*ty@,.TEc5uf7&9 $߈ hPCN# >7ho_BS :~(64Џi.P:K<F.B/ڊ}6%Dя( @@w(֏h/B__{="MW>D6{{nY!=~Ҳ1)7gnX@)˔[2auᲫ,$d+'>1'E,JwVuzKSk^ѿ9v` aZEk4L3bzۺlaƼsU[zho\>i+Ft p1^ZȌ.]K{ZHWgpMXW钫~: ڟ{-tdFR~Ħ/f|&>Z^tXh+PNaUrBq.p&oaxZ- < 禾}UFj'?G-UEh4e"?|nl\Jˠ|Lmٟnu/]2M?WuC5hu3ͣ|UܲUoƓvҕ]etWWfFGl6[y./\ڱ.ߑ\C[>ƿʕC.#*")H34;ڔA~:r.չi72ޖ<K߀g4/9Mϼ˷ڗTcZ7LklPE$H%ƲwϿڿRmlxQZ<`i LL~xtw_|?C#D3Tgtɫgk]tEysl/_5[N-Z VSa69?ܷ9 [ޱeRz-[!I,e%e4!%FRNΐ^$ yֽsyty\.O؇R:T~x{|iՌǑ tt+onFX~S._3[-`$A S>:Q`8~Tv~#.ra)yij\J $7J%,dYYLiz3^-ӁXULbBkj<܈ωLF1)MF?lĆFF/J75T#FR#h|V;8ި4O(A;u&_"'"jhD=t Z5k+5QM5]]Ѫp@M%66ƒ5}EjceaF|ӗ:޹u{K 5w/ |Zp4;᪲o>6Iêɖ/@y.6H־B>7 H.iTB#X\!UxKTn5bK{-ɱDToWGUaY~3@ * njjkcDOdv[VTܢ֗;~Pbgp"{-ӕ'΀vޤ^pDķk  ״vQۀtn 7%/Pa 4Ƥ N(;L)e"&MlO.q.WdvvhP̤tk1&Q w뾪Z]X@Tz ,XA 3؄Ikg+ H5kXIƫ3 @'3$kYlpa3]WޙO9iyeG?FGNH*%U )ed1[BT`Š$Ykq+C^&AuKJz^ 2@ &l$*}OͰLŲyЌaZr6TNiQN ω5]`ہ̹Joԗ}Cx ىiAFj.0D$G$]99'I9o ņr cV_ݒTh[uﲿKjԅe55k]en]D㒚WZXEQ*/ Tlj54MG7Ai)ӋM| X9ݲY9-IVM&\mbdzk:b:ohlR,<jp^yEe?7 j ˏ߼䇳2(rrrnEy u慤\19=hQ?`?j{9+4s38'r} aGw2H7#~~?}'3Gdt /~/M U B_cEqL)*@WU%!Yѭ:V57&&'459'ZN+ ֫{5fo|2thX\/w7*Z2w׷iPkDiǢʗ"c)Gda y>|LlqiE`eFJtMɥD2Q:OY I)V2}<ߝ/~_q6_ 6:‡S(?፵Y͏0/$/pj/MB I`7Uҋz~LN?Wzۉ%'4SN 0ETiɠҧ֜ZBg=,(CL3UM.F{& ³ %[oʞ ײI=9QQ ^Gs2BtTcS.sAk m$eI[ŢDD$^BiS*IOոa52&iuW0ty:Fg1,ԸYk)}ǝ}M?yCUpmk^(O'wϙVQ[ A  *EUnez .[ "Љ K!bCk W%#!C `h4t8DX I l%m4( x@!R䱊y"˛: 6$M9:OG:1̎OU̮8h 0úsw.]Qؔiڝ&Kå:1Pd.iQ6x AMYԜ(EW^+E ~ 3|mbV8 .GrH(TNx[ddU&6 ޔCT,55&dm# S}TIb[5]tYM8snZUopCuK1_߻Ԋ:˦]T扝;-ceFJltqǭ`p5pr k5)KWK)%^AԔWJRŘ/ A`hjǎ2obïޱaQ2N.J¨)9ʰmeeum Q3V \K bW$& 80 hgD1} |N&`fbe": %K,>xov&`uj \ Ïs͝OMpzJtȁR%|^O@2gO.KMf *eS'|2|_re_X>N r4{N_qbf))!ы_d Gѻ3Ab.QyX)*֒%H P#9,|B_H@&1 9A<:$ɆP:k:q"Il*)RJ7&oDn&.'`1J &FoHbmu꠮>5`.TmU DT]]gZQGbRh }. nRށXN.a,*JƢȨzqs]K,-Ԙ˟iK3vZZ0Dž79ow>$C/va8hDۯ*-|JĪ2#W:3yU1-f fv@qYry |[aPkhV*mzޢNp:-"9va5r$綸q]nvOϺϻ/U,?@3Yy}٭g59WYCͦKP1ؓ)7nɍkDZQAk:>й,.$Q[QSddms2v4,I #}ialfrg5˜@YrE%qA ٵ-_fVg/ ;}.X%\kEg+9\ُ@5{i..*Qޥ)Ϗz<'ʑQye(P[xq΁+h3rdbӤlYȦ|HryU*l%\/VQpEmu[ܩW @|ArT|b8T4wB/ f-TW}R)FA0mFwGBXD4oZȣ!yXC-jIiNh210\M^ȀZ*EOQ{. }Z[THj>TK}#"Xᆽ#F0^ &ЛWKՀGq=WT"dI5m\a[?Ǭ}_aU2B%K9R0=9yK]r-&l~{*jݖ5Ǯyod7Z3m[.(^X͆7Ɔb:=nŽ3iZЩ5޹=+Te "rSΐQ4 U*)O.2T lDٹKe|*eϖ~7v'wWcuAbKf,mdK"k'hMnrY &grV3\X6X?g]h]fkכfїw|kYSVg_UZ%䷔>?ze$P9RIN,vئѼ6Md%x6x1՟dfCY@p,A , PζQ1[^9GWBxS~SxRzՁ%~ }۞qj{nmNeAYfv]# (j']_;K1T~h9Lf0ѯ 7#\X^ʤ+ޞrZ)*IE?BޥNCY$ k̳D% d|ئ'b<#O`sa`h[ݭZWh5:{QomO²XqAe/Э)14ڌvi걫;*:ʵjݳ0ʈL%yijٝIك5י+9;+5?;<tkv ̊4 ?k?<NP)G_ W/YYmmƂ12۹%NN>ƴtɢ*傒hMVT뭅ZT|%ݵ֒B\Rb\\_i֜/5LQr_AD7aRiw1[A]j㟔߳&y,]EԳvnW_ΛC˷4=;rvĖeUK 4Ӟҥ+画gw̓zf[[ʆ"ot 34|:ԛդmBx'`lV)e=]TCxi/qc5, UjJưLP m[G"Ф3&U*  $t9N"X\2&E8#ϋrn=#)^J$'i!A  jBRZ W_)׈CCم6Sӱotָ('^SS} wů _[ȦO&3xV|l@쎀"I`(0`= .b7(ڽXKGqX~Ki8\)+/WzX9ԴLL!OmN_) iDLVDf/Wy͉.3ٽUG 4ά6iQUu[5[qj].XTZa.* *s4/[_719 .e?ĩ5T՟y^RQ9o~ƕ%t`Y(T%n^X] dKaѕBm4hj:5ĥ^ȎAF{1(^3( z,ӵ J (J*^U n@Q U1KFJ e4r]FѕqaUE3ҮsK.Aa?F3.J0^/9MؖVVY50YV[ʁH)+91[ӗZQuX6eP|]~UWSAm720Lɴ7}#SWV]kaюeX՟ݽ27ซ|?ON5#ھGם̯%oGvXDal|b<(Er^'FG Dk(QhG{DuE[ (y& HC %߈™(l=%R&|% Gh5<  >;XhFΣQ!r 9}?߉B& {G'u nmBmm0Q髬#Q%G((ٜHf1?\Cta37bF΃6:&:qjz);GOCcE <q*ӊyET7.NLtf?Y_E|r\ "Q]ZL?#;WXEwMIAe?5 Yɽl7™uֲ%_<>We[/]j8(whGTf&E([v* $f"Y/@)*aY:&eV vMz][J!m3+~HgH7Uό`>=[ӝ& I:;AꄚNvB'k۴:턑NHw™γXv-nOν';IZvb'_La1#r(r48(P#\:!IFf^*̅;fު'z#sNɝE,lCUr&T0G?vo}T(㻶0姖36Na5|D7g*]&b& co{`5!GE"` x: gŊU𕵶eX~킎=+˲/lFͬ]٪=O>R1sgO?P[TB3_%)*2>\KHMhV;w7u.*a:JL2&QJp+xhJE11nH$t٪iM^:akW]'_߮ܡ2> ?_NšR;LVIak`0t-[K0ExݣE*(Bef4P7RI>DҁLHp&Y;y3LiDž"n9]bGv3ǿg( PWOyݏLe~tJ 6kb]ajSUMH#$]ͅb!+v}l!'Bg P"ђDb4pB"7J@GJ1&l(mft[,bQ*V٭"UV`̩ ssbBiH\st6|1ߛs5 pOe_% 0'-8#TnHW̏{?/Lc%K ?VB4n/wuüTX-piw8w)PĀt`0&̲[&{pCcj!I1C ʿ8B`P4V'*2*ͪU==|{%%%,{tN߱s(Pdi)S:/^ ީߓz~4)ݡC!0 t:0:"GJ=qRǮx8U?(0?_ Vǡ!0+.STqŅ,&iٹ$+q`8OQ/I߈_ߊ]39A$i??%Nҭfwd{қSqF^3֑cI8L;X^q8n"4ŗPҗJGQq*Q{8R@xg8Γ,+K⠉xj8 ơ=Uq8N几p68bh7.9DT|0J,RM; w A2 fPѠh=nrwLm9UGX|vpδ ղpeBx9|}-7̇boQkB/w$T?ѽr ./p2o:n} o~gJKBɬӭ/4&j~B侗+wyJh98TjImfwvw.Bwaf۩TPfHTƤm/R2ː%Q`u`c`W, #PM>y?p%|39x&pg`s7+8@Gp0wǶP? VGL~aU3/4@C`a83[#p Ux!~(gXd~f"_tOF{xe?q> ~1z !Hpu`nOW >/|2_ͣ@{Z` Tˬ?~Je 4q(L$dLOdX+fvǬ 77p$p2@pj:)2RU4)7` sE/ v\``4p8 xC` ݏ*%Zm!{Xi;AvюUF7h`r1r{Un2_vg!Knhqpqs`s?*,"ajyE͍X;dZ{ohKN;_mwzlgJsQԵu.{o>y0@]=hvk 9w -Β36PesfIÙ#ُ5Ts\+75I2(kAY"AjZ1i#͢_$F='jԡT d-^\lTkJ6,ڪh@1ellJnp] "t+pFuuF][Hd>wv ܴy tk?͖=k]yYI~J;"{hkxsAd ȁBhԡ10 ^1 Eh|*0{Cؠ)#}ֱɟʞ,k6Z1Ϫ'WSegu)Jo۽|fjN0жv% B8{>t17@ ]gBȑhBv89CNoJ\W("OOv2 & +#*- uʍ<CRgwbM]R4GP&4:RB Mp!a9L|)%Ȏ;{姀ϿaL`A5f#6>g$Od'Y9'ʒPr 8% snNHqqAZ¢F :8lFmapչ߫ _wM;wuŦ_aÜɜ5NƎV>{߳1l_R 'y٧~KYAj@zDWMZ9aO.r?}˴-T`L4j2u] @F4̧k0v v1]P0Vc#El%nYCQ8%b$J2s 'Hx]cr`~[/Gr(ZP2hIuCypEg(|ru3[JyՍ-vPP (v+IaR=~ɟOޑqvbK,` =+*nIq7Sa_e\Iׁ63 n|F_m(>\]mH'{ĶUM+?2|''h!&p3h.f="[ g!.U.!BG(Jv$KOeGb֦]e/ߧ1F&n?wURlTT(8N.{)j]0#|t_~*;lw#?t ¯>?S,CSz!mRI 55 Ax6W[2T8,VE|*+XCX R`Rc7 t7>“fq7ݰշɱũ{ʰ<|"~wӺ7}oLi<*΄_ɾJ/u Av_59 ka C.z$|&|6|1|9,aLp:<*jbenCx1)..tkDQurS~T~lً^+ݲYοm{zlk=ӞD-rrFvԙ44UC7lOg\ipOkq|.oavh|W'֟Y 4psLd-;v6y3gs;r^#tE(`pg:'C;s9vG\~KbK9g8 :[~x&0nY1g}Ě^s?4){ ;;_va_+W]=qK-Vo'iT\G˶'ЍzW_ێǧn콹n9}Q-ke#d!Q0I4D./D.8Q Ҽ<-vFN_Gm؄+I*]1⽊2 EVTG[BsJ]]ޫ?la8a8/t 5N.߲RRpaq;OՌgfOg*6/ E^_L{3LBXyus R15R8Z8Gaqi?Jt;z<T|\CP╰"סݰ'ף0ƬǜFqE>ȋcoqy1Q TDJtTu*TH=נ:x>Ep?u(q=%?ڼqƑz{{FzVWUzl_׷o;o`xp`gdJ-[o7rƵ}r3|AMʪkeݸ3;]F)߶vh#}4s6TH߶o϶^oՊK73 P v o޻qkm{ 򑾝}=##}mz뭕=yurU6ko(ݕFnY3xGnco߱vSߺntlU{me{|농6xw [78BG=̕Ug\$5h=R t}~Q9h;ZGaQ>h#2 Z]Nѐ)Urε^\و2[vP\=4=WRmZb4QFN6v#r Viib㜔k|Zw?^y/~ Sy0]A.&68;76>viL}71|]ya _ iz4(><y%[WW> endobj 18 0 obj <> stream x]M0>籹%"H%L8w=acZ+\øXU)v^C)Qχ>=s w1edM}mb;^BZ"|͐ӹtTU:!k-q\e p~!_o {ޒp#>dKb]S^MMgMFbH,=|4ԢQG->F_~uG]55 Si߀QA- A .7rߊ'_ znXK,oK6_fI<胥wKww? K 8cE~AL04#J>9r endstream endobj 19 0 obj <> endobj 20 0 obj <> stream xzkX[ו^-:BIyY9<, `A~%itq;mIqN7n#'nbO mIܺ7Ii| u<&Mbk lig~=蜳{^{mԾI#3#xt{CSB4?._9%B(1^|p+;v9^!B4GOHhr  !7:?A@|xPt`-6WGNG9oB\7Ŀ=:91-Rɩ3w #>kCT0r2BRkith2[|F&AdBS.4"î>/~* &p?C( ̤ r y{tС>I3yOKO޾ CAN3:4XhY^fqsBzW/V}9A_:y ݊=|*ets A[Q[?Q/ZLn$w,k|R,.6/q3ĆޞΎ m[[M ֊kV (+ }acOKUBs(h@Јn>|tDeZJ;Yn$X}JpZ^`(Yz]R 951 |b^qܽQ!!Fzؘ{$/!<5W]a8 D\^B3^M4I2y-̪ܭ̸;e`ϛXmKgwc1hi=ϞEGٲu7Ϻ;{VIҘA>ce"Ua2;7ξ,ny]7X{&y=BDJ"0Y@D%ϋH\Ds@$jdM K44Y&J4v,e17l~ne1Nx~ 53@i ;Vкkt+12YCL5O.O]ҁ+ՉIݜN>K#Qb@g"SFSM`4?ꪨ2z*\V%2~4a[KMluq?"DxQt OO҅4C8]IfpnqNCn^.lY%s^}1WZ+H`n"R۹rg.LDl.WȅYY4d4lC\lYݩ0hmt 68_)AA6SSSyozJ P19\qy𸳥_3PmT~֭0 kN+̬ˤmWJu@CX愆^ԀF)˔,HX~Q9NqAIg9p9/9y;j=sz)aN]7{b gI gw,F^,".[;%εk-5;,֌rk8N9/"<|I=#6$%˳ :MaHxw6|A| ɱwFwEUU>X^YeM]wg+}k,ytZK/^yxmFѭ5ŷp? <**Axڂ-ZD+F8 q6ib Cʼn2uETAk \T VT]R$`@%WT¹9E6)ߨ8I֜va8y#'sĶֿw>.]tT\UU HRXÙ5m+-<ěu9mjKqA]I禁C]>kձܴ/?Ծ̺6״(ɴsӺߔB-+#ǫ<-W.ޒI5Vd^|[ Jj|>N[ [ ,Z%+qE6-@gWlDF`*mnFjjVԴUSfa3֋N(}L%X V-Ζ@ "Amq e,rХ ƌL d k ^~di`3QPZ5UJO2 $MP W8E.jA5+Sx u5>oSNg ;`|W;2{SI[LQaT{ᵖ k`K":J57}`皍7v+3yDt%^^ -|/PRQ8>p-YƼn)oOϛ93fԆ&b6R޶Z=y9y#x0o{Dx= %ydȩϡ9$ 9E̕۞OWjfu5ݼ۹,P ֮޿ߘE"_Mⲗ1SҸ8p`/~ ,_{y`8EW'K)ŵŇ+~gŗneE;Qs6$Sĕن+_Y8JJAWNyY[ M3;/y%vͯBu8PmҶg[uX=Y_L6k8V51!==nP.p|ΓWהǍeʠ*mzx?SA #wK"M~%ǩnMȘ̌3(̼PAB w!8z.D AHN5PQ&Ľs^!  61ŢPs{.f~7Bp&^?~3ح{B-!Z:{.]+!h&k5!z |dXx/B'Pw$Yנ+u!X ]. Bc~#.쳡_Xϐ=Fy&AfúUF f]Cn Q^lG%Շ2jBs!Fl Su]E6PHL>cCLFBP"$  6tmbf{Нih[.؇W=.kJ9 u]̫I*;I%U|J4MI ,xlD: jchm]^G.OmU5k޼SSZf+֛X<؈Xrw n@F,Id18I eIz0?Q:bq7| :>)GDd7梆dl\伴߲iCWzчRmcI .urL\nR%x·O<8V^_+iBWh>6ŷd[qG&^rBΰ㨖*@& !|Ζׄ9)?O@BE?-ҟ& DUDuQũڳ RA3F|2.؋>6* R)YNX/T`D؀Tf7peJ.|ksR;Y5'X}z9S>h}?}ʧ'7$+.d,c0#W|e.nVJ(FD hZ]]WƵ;se`kbMMw ²ʬpfcEb(nK3@+M<}pO Gy:C=\_gS&߳/8ôڞj;◾7慇x=ñaxσy??sKշ7婝!<.& ̮0bTI~Q<@){Kwk <ŵ ^, *wyYg }tSGc#P-lg_w2|N2x =q {,}>\tN,:' 4-: ׭-å( p|=1,uVnK7GOG}` sNMp9匠۹&Ip F쐾Dn>h6wS $zkiBgx98qm=\hM(#[p{"=ō} ݷ qs&;{0"f08wz:L{q/ۻmZ§Olj;=-HGw!L4L0MOG>Ͱ3a<RpY, endstream endobj 21 0 obj 9007 endobj 22 0 obj <> endobj 23 0 obj <> stream x]Kn0=2]D`BB"!E*Rb,CܾJ]}~!,Ke9|ua]oi;[o ݫyѯ^tc_fY-<zsn `fy.4t>7TȷK6/ٳQԨט"+< l*(JNwL>\;6'4Ay^}#ޣ ] 6a+ywFkey$O|dΟ5pErH^%EBݝ ~3vXE7DZ endstream endobj 24 0 obj <> endobj 25 0 obj <> endobj 26 0 obj <> endobj 1 0 obj <>/Contents 2 0 R>> endobj 4 0 obj <> endobj 27 0 obj <> endobj 28 0 obj < /Producer /CreationDate(D:20100202165107Z')>> endobj xref 0 29 0000000000 65535 f 0000040227 00000 n 0000000019 00000 n 0000003251 00000 n 0000040370 00000 n 0000003272 00000 n 0000003893 00000 n 0000003913 00000 n 0000004102 00000 n 0000004393 00000 n 0000004551 00000 n 0000009772 00000 n 0000009794 00000 n 0000010000 00000 n 0000010352 00000 n 0000010570 00000 n 0000028905 00000 n 0000028928 00000 n 0000029124 00000 n 0000029704 00000 n 0000030127 00000 n 0000039221 00000 n 0000039243 00000 n 0000039446 00000 n 0000039846 00000 n 0000040110 00000 n 0000040172 00000 n 0000040469 00000 n 0000040553 00000 n trailer < <7A22FCC788C125028D4004526511E0FE> ] /DocChecksum /9D2BC993B49CFBFD9644A151233B9558 >> startxref 40735 %%EOF MtrxMultiModel0935882/clearmatrix.e~0000600010244600004550000000113511332030261017273 0ustar csujejdcsugrad%eden ##This function sets all parameters in matrix C null func clear_solution { auto i,j; for(i=1; i<=4;i++){ for(j=1; j<=4;j++){ execute("C_"//str(i)//str(j)//"="// "0" //";"); } } } ##this function sets all parameters null func clear_model{ auto i,j; for(i=1; i<=4;i++){ for(j=1; j<=4;j++){ execute("A_"//str(i)//str(j)//"="// "0" //";"); execute("B_"//str(i)//str(j)//"="// "0" //";"); execute("C_"//str(i)//str(j)//"="// "0" //";"); } } } ##this function clears the current parameter in matrix c func clear_currentparameter { execute("C_"//str(currentC_col)//str(currentC_row)//"=0;"); } MtrxMultiModel0935882/clear_currentparameter.e0000600010244600004550000000026711332034636021332 0ustar csujejdcsugrad%eden ##this function clears the current parameter in matrix c func clear_currentparameter { execute("C_"//str(currentC_col)//str(currentC_row)//"=0;"); } clear_currentparameter();MtrxMultiModel0935882/clear_model.e0000600010244600004550000000044111332034653017040 0ustar csujejdcsugrad%eden ##this function sets all parameters null func clear_model{ auto i,j; for(i=1; i<=4;i++){ for(j=1; j<=4;j++){ execute("A_"//str(i)//str(j)//"="// "0" //";"); execute("B_"//str(i)//str(j)//"="// "0" //";"); execute("C_"//str(i)//str(j)//"="// "0" //";"); } } } clear_model();