// This section describes the geometry of the "Apple Pro" keyboard // included with NewWorld desktop machines // // It adds four new keysyms, labeled SDDN, SDUP, SDNO, EJCT. // // 2005/10 -- Simon Vallet xkb_geometry "applepro" { description= "Apple Pro Keyboard"; width = 455; height = 150; shape.cornerRadius= 1; shape "NORM" { { [ 18, 18] }, { [2, 1], [ 16, 15] } }; shape "FUNC" { { [ 18, 21] }, { [2, 1], [ 16, 16] } }; shape "BKSP" { { [ 38, 18] }, { [2, 1], [ 36, 15] } }; shape "TAB" { { [ 29, 18] }, { [2, 1], [ 26, 15] } }; shape "LFSH" { { [ 28, 18] }, { [2, 1], [ 26, 15] } }; shape "RTSH" { { [ 47, 18] }, { [2, 1], [ 45, 15] } }; shape "RTRN" { { [0,0],[27,0],[27,37],[4,37],[4,18],[0,18] }, { [2,1],[25,1],[25,34],[6,34],[6,15],[2,15] } }; shape "CAPS" { { [ 32, 18] }, { [2, 1], [ 26, 15] } }; shape "LCTL" { { [ 28, 20] }, { [2, 1], [ 26, 17] } }; shape "RCTL" { { [ 28, 20] }, { [2, 1], [ 26, 17] } }; shape "LALT" { { [ 23, 20] }, { [2, 1], [ 21, 17] } }; shape "RALT" { { [ 23, 20] }, { [2, 1], [ 21, 17] } }; shape "LMTA" { { [ 28, 20] }, { [2, 1], [ 26, 17] } }; shape "RMTA" { { [ 28, 20] }, { [2, 1], [ 26, 17] } }; shape "SPCE" { { [121, 20] }, { [3, 1], [118, 17] } }; shape "BOTM" { { [ 18, 20] }, { [2, 1], [ 16, 17] } }; shape "KP0" { { [ 37, 20] }, { [2, 1], [ 35, 17] } }; shape "KPEN" { { [ 18, 39] }, { [2, 1], [ 16, 36] } }; section.left = 7; row.left = 1; key.gap = 1; key.shape = "NORM"; section "Function" { key.shape = "FUNC"; top = 26; row { top= 1; keys { , { , 14 }, , , , { , 14 }, , , , { , 14 }, , , , { , 11 }, , , { , 11 }, , , }; }; }; // End of "Function" section section "Alpha" { top = 48; row { top= 1; keys { , , , , , , , , , , , , , { , "BKSP" } }; }; row { top= 20; keys { { , "TAB" }, , , , , , , , , , , , , { , "RTRN" } }; }; row { top= 39; keys { { , "CAPS" }, , , , , , , , , , , , }; }; row { top= 58; keys { { , "LFSH" }, , , , , , , , , , , , { , "RTSH" } }; }; row { top= 77; keys { { , "LCTL" }, { , "LALT" }, { , "LMTA" }, { , "SPCE" }, { , "RMTA" }, { , "RALT" }, { , "RCTL" } }; }; }; // End of "Alpha" section section "Editing" { top = 48; left = 303; row { top= 1; keys { , , }; }; row { top= 20; keys { , , }; }; row { top= 58; left= 20; keys { }; }; row { top= 77; key.shape = "BOTM"; keys { , , }; }; }; // End of "Editing" section section "Keypad" { top = 48; left = 370; row { top= 1; keys { , , , }; }; row { top= 20; keys { , , , }; }; row { top= 39; keys { , , , }; }; row { top= 58; keys { , , , { , "KPEN" } }; }; row { top= 77; keys { { , "KP0" }, { , "BOTM" } }; }; }; // End of "Keypad" section }; // End of "applepro" geometry // Aluminium Keyboard, ANSI model (United States, 109 keys) xkb_geometry "applealu_ansi" { width= 430; height= 113.5; baseColor= "white"; labelColor= "black"; xfont= "-*-helvetica-medium-r-normal--*-80-*-*-*-*-iso8859-1"; description= "Aluminium Keyboard (ANSI)"; shape "NORM" { corner= 1, { [ 15.5, 15 ] } }; shape "FUNC" { corner= 1, { [ 16.1, 9 ] } }; shape "FUNS" { corner= 1, { [ 15.5, 9 ] } }; shape "BKSP" { corner= 1, { [ 24.5, 15 ] } }; shape "TAB" { corner= 1, { [ 24.5, 15 ] } }; shape "RTRN" { corner= 1, { [ 29.5, 15 ] } }; shape "CAPS" { corner= 1, { [ 29.5, 15 ] } }; shape "LCTL" { corner= 1, { [ 25, 18 ] } }; shape "LALT" { corner= 1, { [ 20, 18 ] } }; shape "LMTA" { corner= 1, { [ 25, 18 ] } }; shape "LFSH" { corner= 1, { [ 39, 15 ] } }; shape "RCTL" { corner= 1, { [ 25, 18 ] } }; shape "RALT" { corner= 1, { [ 20, 18 ] } }; shape "RMTA" { corner= 1, { [ 25, 18 ] } }; shape "RTSH" { corner= 1, { [ 39, 15 ] } }; shape "SPCE" { corner= 1, { [ 110.5, 18 ] } }; shape "KP0" { corner= 1, { [ 34.5, 18 ] } }; shape "KPEN" { corner= 1, { [ 15.5, 36.5 ] } }; shape "KPDT" { corner= 1, { [ 15.5, 18 ] } }; shape "LED" { corner= 0.5, { [ 1.5, 1.5 ] } }; section "Function" { key.color= "white"; priority= 7; top= 4.5; left= 4.7; width= 420.5; height= 10; row { top= 0; left= 0; keys { { , "FUNC", 0 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.5 }, { , "FUNS", 11.5 }, { , "FUNS", 3.5 }, { , "FUNS", 3.5 }, { , "FUNS", 11.5 }, { , "FUNS", 3.5 }, { , "FUNS", 3.5 }, { , "FUNS", 3.5 } }; }; }; // End of "Function" section section "Alpha" { key.color= "white"; priority= 8; top= 17; left= 5; width= 271.5; height= 92; row { top= 0; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "BKSP", 3.5 } }; }; row { top= 18.5; left= 0; keys { { , "TAB", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 37; left= 0; keys { { , "CAPS", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "RTRN", 3.5 } }; }; row { top= 55.5; left= 0; keys { { , "LFSH", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "RTSH", 3.5 } }; }; row { top= 74; left= 0; keys { { , "LCTL", 0 }, { , "LALT", 3.5 }, { , "LMTA", 3.5 }, { , "SPCE", 3.5 }, { , "RMTA", 3.5 }, { , "RALT", 3.5 }, { , "RCTL", 3.5 } }; }; }; // End of "Alpha" section section "Editing" { key.color= "white"; priority= 9; top= 17; left= 287.7; width= 53.5; height= 92; row { top= 0; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 18.5; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 58.5; left= 19; keys { { , "NORM", 0 } }; }; row { top= 77; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; }; // End of "Editing" section section "Keypad" { key.color= "white"; priority= 10; top= 17; left= 352.7; width= 72.5; height= 92; row { top= 0; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 18.5; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 37; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 55.5; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "KPEN", 3.5 } }; }; row { top= 74; left= 0; keys { { , "KP0", 0 }, { , "KPDT", 3.5 } }; }; }; // End of "Keypad" section indicator "Caps Lock" { top= 56; left= 6.7; priority= 2; onColor= "green"; offColor= "gray"; shape= "LED"; }; }; // Aluminium Keyboard, ISO model (International, 110 keys) xkb_geometry "applealu_iso" { width= 430; height= 113.5; baseColor= "white"; labelColor= "black"; xfont= "-*-helvetica-medium-r-normal--*-80-*-*-*-*-iso8859-1"; description= "Aluminium Keyboard (ISO)"; shape "NORM" { corner= 1, { [ 15.5, 15 ] } }; shape "FUNC" { corner= 1, { [ 16.1, 9 ] } }; shape "FUNS" { corner= 1, { [ 15.5, 9 ] } }; shape "BKSP" { corner= 1, { [ 24.5, 15 ] } }; shape "TAB" { corner= 1, { [ 24.5, 15 ] } }; shape "RTRN" { corner= 1, { [ 0, 0 ], [ 15.5 , 0 ], [ 15.5 , 33.5 ], [ 5, 33.5 ], [ 5, 15 ], [ 0, 15 ] } }; shape "CAPS" { corner= 1, { [ 29.5, 15 ] } }; shape "LCTL" { corner= 1, { [ 25, 18 ] } }; shape "LALT" { corner= 1, { [ 20, 18 ] } }; shape "LMTA" { corner= 1, { [ 25, 18 ] } }; shape "LFSH" { corner= 1, { [ 20, 15 ] } }; shape "RCTL" { corner= 1, { [ 25, 18 ] } }; shape "RALT" { corner= 1, { [ 20, 18 ] } }; shape "RMTA" { corner= 1, { [ 25, 18 ] } }; shape "RTSH" { corner= 1, { [ 39, 15 ] } }; shape "SPCE" { corner= 1, { [ 110.5, 18 ] } }; shape "KP0" { corner= 1, { [ 34.5, 18 ] } }; shape "KPEN" { corner= 1, { [ 15.5, 36.5 ] } }; shape "KPDT" { corner= 1, { [ 15.5, 18 ] } }; shape "LED" { corner= 0.5, { [ 1.5, 1.5 ] } }; section "Function" { key.color= "white"; priority= 7; top= 4.5; left= 4.7; width= 420.5; height= 10; row { top= 0; left= 0; keys { { , "FUNC", 0 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.5 }, { , "FUNS", 11.5 }, { , "FUNS", 3.5 }, { , "FUNS", 3.5 }, { , "FUNS", 11.5 }, { , "FUNS", 3.5 }, { , "FUNS", 3.5 }, { , "FUNS", 3.5 } }; }; }; // End of "Function" section section "Alpha" { key.color= "white"; priority= 8; top= 17; left= 5; width= 271.5; height= 92; row { top= 0; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "BKSP", 3.5 } }; }; row { top= 18.5; left= 0; keys { { , "TAB", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "RTRN", 3.5 } }; }; row { top= 37; left= 0; keys { { , "CAPS", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 55.5; left= 0; keys { { , "LFSH", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "RTSH", 3.5 } }; }; row { top= 74; left= 0; keys { { , "LCTL", 0 }, { , "LALT", 3.5 }, { , "LMTA", 3.5 }, { , "SPCE", 3.5 }, { , "RMTA", 3.5 }, { , "RALT", 3.5 }, { , "RCTL", 3.5 } }; }; }; // End of "Alpha" section section "Editing" { key.color= "white"; priority= 9; top= 17; left= 287.7; width= 53.5; height= 92; row { top= 0; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 18.5; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 58.5; left= 19; keys { { , "NORM", 0 } }; }; row { top= 77; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; }; // End of "Editing" section section "Keypad" { key.color= "white"; priority= 10; top= 17; left= 352.7; width= 72.5; height= 92; row { top= 0; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 18.5; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 37; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 55.5; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "KPEN", 3.5 } }; }; row { top= 74; left= 0; keys { { , "KP0", 0 }, { , "KPDT", 3.5 } }; }; }; // End of "Keypad" section indicator "Caps Lock" { top= 56; left= 6.7; priority= 2; onColor= "green"; offColor= "gray"; shape= "LED"; }; }; // Aluminium Keyboard, JIS model (Japanese, 112 keys) xkb_geometry "applealu_jis" { width= 430; height= 113.5; baseColor= "white"; labelColor= "black"; xfont= "-*-helvetica-medium-r-normal--*-80-*-*-*-*-iso8859-1"; description= "Aluminium Keyboard (JIS)"; shape "NORM" { corner= 1, { [ 15.5, 15 ] } }; shape "FUNC" { corner= 1, { [ 16.1, 9 ] } }; shape "FUNS" { corner= 1, { [ 15.5, 9 ] } }; shape "KEY1" { corner= 1, { [ 24.5, 15 ] } }; shape "BKSP" { corner= 1, { [ 15.5, 15 ] } }; shape "TAB" { corner= 1, { [ 15.5, 15 ] } }; shape "RTRN" { corner= 1, { [ 0, 0 ], [ 24.5 , 0 ], [ 24.5 , 33.5 ], [ 4.5, 33.5 ], [ 4.5, 15 ], [ 0, 15 ] } }; shape "CAPS" { corner= 1, { [ 35, 18 ] } }; shape "LCTL" { corner= 1, { [ 20, 15 ] } }; shape "LALT" { corner= 1, { [ 27, 18 ] } }; shape "LMTA" { corner= 1, { [ 27, 18 ] } }; shape "LFSH" { corner= 1, { [ 29.5, 15 ] } }; shape "HNGL" { corner= 1, { [ 20, 18 ] } }; shape "RCTL" { corner= 1, { [ 27, 18 ] } }; shape "RALT" { corner= 1, { [ 27, 18 ] } }; shape "RMTA" { corner= 1, { [ 27, 18 ] } }; shape "RTSH" { corner= 1, { [ 29.5, 15 ] } }; shape "HJCV" { corner= 1, { [ 20, 18 ] } }; shape "SPCE" { corner= 1, { [ 64, 18 ] } }; shape "KPDT" { corner= 1, { [ 15.5, 18 ] } }; shape "KPEN" { corner= 1, { [ 15.5, 36.5 ] } }; shape "LED" { corner= 0.5, { [ 1.5, 1.5 ] } }; section "Function" { key.color= "white"; priority= 7; top= 4.5; left= 4.7; width= 420.5; height= 10; row { top= 0; left= 0; keys { { , "FUNC", 0 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.6 }, { , "FUNC", 3.5 }, { , "FUNC", 3.5 }, { , "FUNS", 11.5 }, { , "FUNS", 3.5 }, { , "FUNS", 3.5 }, { , "FUNS", 11.5 }, { , "FUNS", 3.5 }, { , "FUNS", 3.5 }, { , "FUNS", 3.5 } }; }; }; // End of "Function" section section "Alpha" { key.color= "white"; priority= 8; top= 17; left= 5; width= 271.5; height= 92; row { top= 0; left= 0; keys { { , "KEY1", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "BKSP", 3.5 } }; }; row { top= 18.5; left= 0; keys { { , "TAB", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "RTRN", 3.5 } }; }; row { top= 37; left= 0; keys { { , "LCTL", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 55.5; left= 0; keys { { , "LFSH", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "RTSH", 3.5 } }; }; row { top= 74; left= 0; keys { { , "LALT", 0 }, { , "LMTA", 3.5 }, { , "HNGL", 3.5 }, { , "SPCE", 3.5 }, { , "HJCV", 3.5 }, { , "RMTA", 3.5 }, { , "RALT", 3.5 }, { , "CAPS", 3.5 } }; }; }; // End of "Alpha" section section "Editing" { key.color= "white"; priority= 9; top= 17; left= 287.7; width= 53.5; height= 92; row { top= 0; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 18.5; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 58.5; left= 19; keys { { , "NORM", 0 } }; }; row { top= 77; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; }; // End of "Editing" section section "Keypad" { key.color= "white"; priority= 10; top= 17; left= 352.7; width= 72.5; height= 92; row { top= 0; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 18.5; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 37; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "NORM", 3.5 } }; }; row { top= 55.5; left= 0; keys { { , "NORM", 0 }, { , "NORM", 3.5 }, { , "NORM", 3.5 }, { , "KPEN", 3.5 } }; }; row { top= 74; left= 0; keys { { , "KPDT", 0 }, { , "KPDT", 3.5 }, { , "KPDT", 3.5 } }; }; }; // End of "Keypad" section indicator "Caps Lock" { top= 93; left= 273.2; priority= 2; onColor= "green"; offColor= "gray"; shape= "LED"; }; };