/**************************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 *************************************************************/




#include <sfx2/sfx.hrc>
#include "starmath.hrc"


////////////////////////////////////////////////////////////

String RID_PLUSX 			{ Text = "+<?> " ; };
String RID_MINUSX 			{ Text = "-<?> " ; };
String RID_PLUSMINUSX 		{ Text = "+-<?> " ; };
String RID_MINUSPLUSX 		{ Text = "-+<?> " ; };
String RID_NEGX 			{ Text = "neg <?> " ; };
String RID_XPLUSY 			{ Text = "<?> + <?> " ; };
String RID_XMINUSY 			{ Text = "<?> - <?> " ; };
String RID_XCDOTY 			{ Text = "<?> cdot <?> " ; };
String RID_XTIMESY 			{ Text = "<?> times <?> " ; };
String RID_XSYMTIMESY 		{ Text = "<?> * <?> " ; };
String RID_XSYMDIVIDEY 		{ Text = "<?> / <?> " ; };
String RID_XDIVY 			{ Text = "<?> div <?> " ; };
String RID_XOVERY           { Text = "{<?>} over {<?>} " ; };
String RID_XODIVIDEY 		{ Text = "<?> odivide <?> " ; };
String RID_XODOTY 			{ Text = "<?> odot <?> " ; };
String RID_XOMINUSY 		{ Text = "<?> ominus <?> " ; };
String RID_XOPLUSY 			{ Text = "<?> oplus <?> " ; };
String RID_XOTIMESY 		{ Text = "<?> otimes <?> " ; };
String RID_XANDY 			{ Text = "<?> and <?> " ; };
String RID_XORY 			{ Text = "<?> or <?> " ; };
String RID_XEQY 			{ Text = "<?> = <?> " ; };
String RID_XNEQY 			{ Text = "<?> <> <?> " ; };
String RID_XLTY 			{ Text = "<?> < <?> " ; };
String RID_XGTY 			{ Text = "<?> > <?> " ; };
String RID_XLEY 			{ Text = "<?> <= <?> " ; };
String RID_XGEY 			{ Text = "<?> >= <?> " ; };
String RID_XLESLANTY 		{ Text = "<?> leslant <?> " ; };
String RID_XGESLANTY 		{ Text = "<?> geslant <?> " ; };
String RID_XLLY 			{ Text = "<?> << <?> " ; };
String RID_XGGY 			{ Text = "<?> >> <?> " ; };
String RID_XDEFY 			{ Text = "<?> def <?> " ; };
String RID_XEQUIVY 			{ Text = "<?> equiv <?> " ; };
String RID_XAPPROXY 		{ Text = "<?> approx <?> " ; };
String RID_XSIMY 			{ Text = "<?> sim <?> " ; };
String RID_XSIMEQY 			{ Text = "<?> simeq <?> " ; };
String RID_XPROPY 			{ Text = "<?> prop <?> " ; };
String RID_XORTHOY 			{ Text = "<?> ortho <?> " ; };
String RID_XPARALLELY 		{ Text = "<?> parallel <?> " ; };
String RID_XTOWARDY 		{ Text = "<?> toward <?> " ; };
String RID_XTRANSLY 		{ Text = "<?> transl <?> " ; };
String RID_XTRANSRY 		{ Text = "<?> transr <?> " ; };
String RID_XINY 			{ Text = "<?> in <?> " ; };
String RID_XNOTINY 			{ Text = "<?> notin <?> " ; };
String RID_XOWNSY 			{ Text = "<?> owns <?> " ; };
String RID_XUNIONY 			{ Text = "<?> union <?> " ; };
String RID_XINTERSECTIONY 	{ Text = "<?> intersection <?> " ; };
String RID_XSETMINUSY 		{ Text = "<?> setminus <?> " ; };
String RID_XSLASHY 			{ Text = "<?> slash <?> " ; };
String RID_XSUBSETY 		{ Text = "<?> subset <?> " ; };
String RID_XSUBSETEQY 		{ Text = "<?> subseteq <?> " ; };
String RID_XSUPSETY 		{ Text = "<?> supset <?> " ; };
String RID_XSUPSETEQY 		{ Text = "<?> supseteq <?> " ; };
String RID_XNSUBSETY 		{ Text = "<?> nsubset <?> " ; };
String RID_XNSUBSETEQY 		{ Text = "<?> nsubseteq <?> " ; };
String RID_XNSUPSETY 		{ Text = "<?> nsupset <?> " ; };
String RID_XNSUPSETEQY 		{ Text = "<?> nsupseteq <?> " ; };
String RID_ABSX 			{ Text = "abs{<?>} " ; };
String RID_FACTX            { Text = "fact {<?>} " ; };
String RID_SQRTX 			{ Text = "sqrt{<?>} " ; };
String RID_NROOTXY 			{ Text = "nroot{<?>}{<?>} " ; };
String RID_EX 				{ Text = "func e^{<?>} " ; };
String RID_EXPX 			{ Text = "exp(<?>) " ; };
String RID_LNX 				{ Text = "ln(<?>) " ; };
String RID_LOGX 			{ Text = "log(<?>) " ; };
String RID_SINX 			{ Text = "sin(<?>) " ; };
String RID_COSX 			{ Text = "cos(<?>) " ; };
String RID_TANX 			{ Text = "tan(<?>) " ; };
String RID_COTX 			{ Text = "cot(<?>) " ; };
String RID_ARCSINX 			{ Text = "arcsin(<?>) " ; };
String RID_ARCCOSX 			{ Text = "arccos(<?>) " ; };
String RID_ARCTANX 			{ Text = "arctan(<?>) " ; };
String RID_ARCCOTX 			{ Text = "arccot(<?>) " ; };
String RID_SINHX 			{ Text = "sinh(<?>) " ; };
String RID_COSHX 			{ Text = "cosh(<?>) " ; };
String RID_TANHX 			{ Text = "tanh(<?>) " ; };
String RID_COTHX 			{ Text = "coth(<?>) " ; };
String RID_ARSINHX 			{ Text = "arsinh(<?>) " ; };
String RID_ARCOSHX 			{ Text = "arcosh(<?>) " ; };
String RID_ARTANHX 			{ Text = "artanh(<?>) " ; };
String RID_ARCOTHX 			{ Text = "arcoth(<?>) " ; };
String RID_SUMX 			{ Text = "sum <?> " ; };
String RID_PRODX 			{ Text = "prod <?> " ; };
String RID_COPRODX 			{ Text = "coprod <?> " ; };
String RID_LIMX 			{ Text = "lim <?> " ; };
String RID_LIMINFX 			{ Text = "liminf <?> " ; };
String RID_LIMSUPX 			{ Text = "limsup <?> " ; };
String RID_EXISTS 			{ Text = "exists " ; };
String RID_FORALL 			{ Text = "forall " ; };
String RID_INTX 			{ Text = "int <?> " ; };
String RID_IINTX 			{ Text = "iint <?> " ; };
String RID_IIINTX 			{ Text = "iiint <?> " ; };
String RID_LINTX 			{ Text = "lint <?> " ; };
String RID_LLINTX 			{ Text = "llint <?> " ; };
String RID_LLLINTX 			{ Text = "lllint <?> " ; };
String RID_FROMX 			{ Text = "from{<?>} <?> " ; };
String RID_TOX 				{ Text = "to{<?>} <?> " ; };
String RID_FROMXTOY 		{ Text = "from{<?>} to{<?>} <?> " ; };
String RID_ACUTEX 			{ Text = "acute <?> " ; };
String RID_BARX 			{ Text = "bar <?> " ; };
String RID_BREVEX 			{ Text = "breve <?> " ; };
String RID_CHECKX 			{ Text = "check <?> " ; };
String RID_CIRCLEX 			{ Text = "circle <?> " ; };
String RID_DOTX 			{ Text = "dot <?> " ; };
String RID_DDOTX 			{ Text = "ddot <?> " ; };
String RID_DDDOTX 			{ Text = "dddot <?> " ; };
String RID_GRAVEX 			{ Text = "grave <?> " ; };
String RID_HATX 			{ Text = "hat <?> " ; };
String RID_TILDEX 			{ Text = "tilde <?> " ; };
String RID_VECX 			{ Text = "vec <?> " ; };
String RID_UNDERLINEX       { Text = "underline {<?>} " ; };
String RID_OVERLINEX        { Text = "overline {<?>} " ; };
String RID_OVERSTRIKEX      { Text = "overstrike {<?>} " ; };
String RID_PHANTOMX         { Text = "phantom {<?>} " ; };
String RID_BOLDX 			{ Text = "bold <?> " ; };
String RID_ITALX 			{ Text = "ital <?> " ; };
String RID_SIZEXY           { Text = "size <?> {<?>} " ; };
String RID_FONTXY           { Text = "font <?> {<?>} " ; };
String RID_COLORX           { Text = "color <?> {<?>} " ; };
String RID_LRGROUPX 		{ Text = "{<?>} " ; };
String RID_LRPARENTX 		{ Text = "(<?>) " ; };
String RID_LRBRACKETX 		{ Text = "[<?>] " ; };
String RID_LRDBRACKETX 		{ Text = "ldbracket <?> rdbracket " ; };
String RID_LRBRACEX 		{ Text = "lbrace <?> rbrace " ; };
String RID_LRANGLEX 		{ Text = "langle <?> rangle " ; };
String RID_LRCEILX 			{ Text = "lceil <?> rceil " ; };
String RID_LRFLOORX 		{ Text = "lfloor <?> rfloor " ; };
String RID_LRLINEX 			{ Text = "lline <?> rline " ; };
String RID_LRDLINEX 		{ Text = "ldline <?> rdline " ; };
String RID_LMRANGLEXY 		{ Text = "langle <?> mline <?> rangle " ; };
String RID_SLRPARENTX 		{ Text = "left ( <?> right ) " ; };
String RID_SLRBRACKETX 		{ Text = "left [ <?> right ] " ; };
String RID_SLRDBRACKETX		{ Text = "left ldbracket <?> right rdbracket " ; };
String RID_SLRBRACEX 		{ Text = "left lbrace <?> right rbrace " ; };
String RID_SLRANGLEX 		{ Text = "left langle <?> right rangle " ; };
String RID_SLRCEILX 		{ Text = "left lceil <?> right rceil " ; };
String RID_SLRFLOORX 		{ Text = "left lfloor <?> right rfloor " ; };
String RID_SLRLINEX 		{ Text = "left lline <?> right rline " ; };
String RID_SLRDLINEX 		{ Text = "left ldline <?> right rdline " ; };
String RID_SLMRANGLEXY 		{ Text = "left langle <?> mline <?> right rangle " ; };
String RID_XOVERBRACEY      { Text = "{<?>} overbrace {<?>} " ; };
String RID_XUNDERBRACEY     { Text = "{<?>} underbrace {<?>} " ; };
String RID_RSUBX 			{ Text = "<?>_{<?>}" ; };
String RID_RSUPX 			{ Text = "<?>^{<?>}" ; };
String RID_LSUBX 			{ Text = "<?> lsub{<?>} " ; };
String RID_LSUPX 			{ Text = "<?> lsup{<?>} " ; };
String RID_CSUBX 			{ Text = "<?> csub{<?>} " ; };
String RID_CSUPX 			{ Text = "<?> csup{<?>} " ; };
String RID_SBLANK 			{ Text = "`" ; };
String RID_BLANK 			{ Text = "~" ; };
String RID_NEWLINE 			{ Text = "newline " ; };
String RID_BINOMXY 			{ Text = "binom{<?>}{<?>} " ; };
String RID_STACK 			{ Text = "stack{<?> # <?> # <?>} " ; };
String RID_MATRIX 			{ Text = "matrix{<?> # <?> ## <?> # <?>} " ; };
String RID_ALIGNLX 			{ Text = "alignl <?> " ; };
String RID_ALIGNCX 			{ Text = "alignc <?> " ; };
String RID_ALIGNRX 			{ Text = "alignr <?> " ; };
String RID_ALEPH 			{ Text = "aleph " ; };
String RID_EMPTYSET 		{ Text = "emptyset " ; };
String RID_RE 				{ Text = "Re " ; };
String RID_IM 				{ Text = "Im " ; };
String RID_INFINITY 		{ Text = "infinity " ; };
String RID_PARTIAL 			{ Text = "partial " ; };
String RID_NABLA 			{ Text = "nabla " ; };
String RID_WP 				{ Text = "wp " ; };
String RID_DOTSAXIS 		{ Text = "dotsaxis " ; };
String RID_DOTSUP 			{ Text = "dotsup " ; };
String RID_DOTSDOWN 		{ Text = "dotsdown " ; };
String RID_DOTSLOW 			{ Text = "dotslow " ; };
String RID_DOTSVERT 		{ Text = "dotsvert " ; };
String RID_XCIRCY	 		{ Text = "<?> circ <?> " ; };
String RID_XWIDESLASHY      { Text = "{<?>} wideslash {<?>} " ; };
String RID_XWIDEBSLASHY     { Text = "<?> widebslash <?> " ; };
String RID_XDIVIDESY		{ Text = "<?> divides <?> " ; };
String RID_XNDIVIDESY 		{ Text = "<?> ndivides <?> " ; };
String RID_DLARROW	 		{ Text = "<?> dlarrow <?> " ; };
String RID_DLRARROW	 		{ Text = "<?> dlrarrow <?> " ; };
String RID_DRARROW	 		{ Text = "<?> drarrow <?> " ; };
String RID_SETN	 			{ Text = "setN " ; };
String RID_SETZ	 			{ Text = "setZ " ; };
String RID_SETQ	 			{ Text = "setQ " ; };
String RID_SETR	 			{ Text = "setR " ; };
String RID_SETC	 			{ Text = "setC " ; };
String RID_WIDEHATX         { Text = "widehat {<?>} " ; };
String RID_WIDETILDEX       { Text = "widetilde {<?>} " ; };
String RID_WIDEVECX         { Text = "widevec {<?>} " ; };
String RID_HBAR				{ Text = "hbar " ; };
String RID_LAMBDABAR		{ Text = "lambdabar " ; };
String RID_LEFTARROW		{ Text = "leftarrow " ; };
String RID_RIGHTARROW		{ Text = "rightarrow " ; };
String RID_UPARROW			{ Text = "uparrow " ; };
String RID_DOWNARROW		{ Text = "downarrow " ; };
String RID_NOSPACE			{ Text = "nospace {<?>} " ; };


//////////////////////////////////////////


Menu RID_COMMANDMENU
{
	ItemList =
	{
		MenuItem
		{
			Identifier = RID_UNBINOPS_MENU ;
			HelpId = HID_SMA_UNBINOPS_TBX ;
			Text [ en-US ] = "~Unary/Binary Operators" ;
			SubMenu = Menu
			{
				ItemList =
				{
					MenuItem
					{
						Identifier = RID_PLUSX;
						HelpId = HID_SMA_PLUSX;
						Text = "+a";
					};
					MenuItem
					{
						Identifier = RID_MINUSX;
						HelpId = HID_SMA_MINUSX;
						Text = "-a";
					};
					MenuItem
					{
						Identifier = RID_PLUSMINUSX;
						HelpId = HID_SMA_PLUSMINUSX;
						Text = "+-a";
					};
					MenuItem
					{
						Identifier = RID_MINUSPLUSX;
						HelpId = HID_SMA_MINUSPLUSX;
						Text = "-+a";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_XPLUSY;
						HelpId = HID_SMA_XPLUSY;
						Text = "a + b";
					};
					MenuItem
					{
						Identifier = RID_XMINUSY;
						HelpId = HID_SMA_XMINUSY;
						Text = "a - b";
					};
					MenuItem
					{
						Identifier = RID_XCDOTY;
						HelpId = HID_SMA_XCDOTY;
						Text = "a cdot b";
					};
					MenuItem
					{
						Identifier = RID_XTIMESY;
						HelpId = HID_SMA_XTIMESY;
						Text = "a times b";
					};
					MenuItem
					{
						Identifier = RID_XSYMTIMESY;
						HelpId = HID_SMA_XSYMTIMESY;
						Text = "a * b";
					};
					MenuItem
					{
						Identifier = RID_XOVERY;
						HelpId = HID_SMA_XOVERY;
						Text = "a over b";
					};
					MenuItem
					{
						Identifier = RID_XDIVY;
						HelpId = HID_SMA_XDIVY;
						Text = "a div b";
					};
					MenuItem
					{
						Identifier = RID_XSYMDIVIDEY;
						HelpId = HID_SMA_XSYMDIVIDEY;
						Text = "a / b";
					};
					MenuItem
					{
						Identifier = RID_XCIRCY;
						HelpId = HID_SMA_XCIRCY;
						Text = "a circ b";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_XWIDESLASHY;
						HelpId = HID_SMA_XWIDESLASHY;
						Text = "a wideslash b";
					};
					MenuItem
					{
						Identifier = RID_XWIDEBSLASHY;
						HelpId = HID_SMA_XWIDEBSLASHY;
						Text = "a widebslash b";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_NEGX;
						HelpId = HID_SMA_NEGX;
						Text = "neg a";
					};
					MenuItem
					{
						Identifier = RID_XANDY;
						HelpId = HID_SMA_XANDY;
						Text = "a and b";
					};
					MenuItem
					{
						Identifier = RID_XORY;
						HelpId = HID_SMA_XORY;
						Text = "a or b";
					};
				};
			};
		};
		MenuItem
		{
			Identifier = RID_RELATIONS_MENU ;
			HelpId = HID_SMA_RELATIONS_TBX ;
			Text [ en-US ] = "~Relations" ;
			SubMenu = Menu
			{
				ItemList =
				{
					MenuItem
					{
						Identifier = RID_XEQY;
						HelpId = HID_SMA_XEQY;
						Text = "a = b";
					};
					MenuItem
					{
						Identifier = RID_XNEQY;
						HelpId = HID_SMA_XNEQY;
						Text = "a <> b";
					};
					MenuItem
					{
						Identifier = RID_XLTY;
						HelpId = HID_SMA_XLTY;
						Text = "a < b";
					};
					MenuItem
					{
						Identifier = RID_XLEY;
						HelpId = HID_SMA_XLEY;
						Text = "a <= b";
					};
					MenuItem
					{
						Identifier = RID_XLESLANTY;
						HelpId = HID_SMA_XLESLANTY;
						Text = "a leslant b";
					};
					MenuItem
					{
						Identifier = RID_XGTY;
						HelpId = HID_SMA_XGTY;
						Text = "a > b";
					};
					MenuItem
					{
						Identifier = RID_XGEY;
						HelpId = HID_SMA_XGEY;
						Text = "a >= b";
					};
					MenuItem
					{
						Identifier = RID_XGESLANTY;
						HelpId = HID_SMA_XGESLANTY;
						Text = "a geslant b";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_XAPPROXY;
						HelpId = HID_SMA_XAPPROXY;
						Text = "a approx b";
					};
					MenuItem
					{
						Identifier = RID_XSIMY;
						HelpId = HID_SMA_XSIMY;
						Text = "a sim b";
					};
					MenuItem
					{
						Identifier = RID_XSIMEQY;
						HelpId = HID_SMA_XSIMEQY;
						Text = "a simeq b";
					};
					MenuItem
					{
						Identifier = RID_XEQUIVY;
						HelpId = HID_SMA_XEQUIVY;
						Text = "a equiv b";
					};
					MenuItem
					{
						Identifier = RID_XPROPY;
						HelpId = HID_SMA_XPROPY;
						Text = "a prop b";
					};
					MenuItem
					{
						Identifier = RID_XPARALLELY;
						HelpId = HID_SMA_XPARALLELY;
						Text = "a parallel b";
					};
					MenuItem
					{
						Identifier = RID_XORTHOY;
						HelpId = HID_SMA_XORTHOY;
						Text = "a ortho b";
					};
					MenuItem
					{
						Identifier = RID_XDIVIDESY;
						HelpId = HID_SMA_XDIVIDESY;
						Text = "a divides b";
					};
					MenuItem
					{
						Identifier = RID_XNDIVIDESY;
						HelpId = HID_SMA_XNDIVIDESY;
						Text = "a ndivides b";
					};
					MenuItem
					{
						Identifier = RID_XTOWARDY;
						HelpId = HID_SMA_XTOWARDY;
						Text = "a toward b";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_DLARROW;
						HelpId = HID_SMA_DLARROW;
						Text = "a dlarrow b";
					};
					MenuItem
					{
						Identifier = RID_DLRARROW;
						HelpId = HID_SMA_DLRARROW;
						Text = "a dlrarrow b";
					};
					MenuItem
					{
						Identifier = RID_DRARROW;
						HelpId = HID_SMA_DRARROW;
						Text = "a drarrow b";
					};
				};
			};
		};
		MenuItem
		{
			Identifier = RID_SETOPERATIONS_MENU ;
			HelpId = HID_SMA_SETOPERATIONS_TBX ;
			Text [ en-US ] = "~Set Operations" ;
			SubMenu = Menu
			{
				ItemList =
				{
					MenuItem
					{
						Identifier = RID_XINY;
						HelpId = HID_SMA_XINY;
						Text = "a in A";
					};
					MenuItem
					{
						Identifier = RID_XNOTINY;
						HelpId = HID_SMA_XNOTINY;
						Text = "a notin A";
					};
					MenuItem
					{
						Identifier = RID_XOWNSY;
						HelpId = HID_SMA_XOWNSY;
						Text = "A owns a";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_XINTERSECTIONY;
						HelpId = HID_SMA_XINTERSECTIONY;
						Text = "A intersection B";
					};
					MenuItem
					{
						Identifier = RID_XUNIONY;
						HelpId = HID_SMA_XUNIONY;
						Text = "A union B";
					};
					MenuItem
					{
						Identifier = RID_XSETMINUSY;
						HelpId = HID_SMA_XSETMINUSY;
						Text = "A \\ B";
					};
					MenuItem
					{
						Identifier = RID_XSLASHY;
						HelpId = HID_SMA_XSLASHY;
						Text = "A / B";
					};
					MenuItem
					{
						Identifier = RID_XSUBSETY;
						HelpId = HID_SMA_XSUBSETY;
						Text = "A subset B";
					};
					MenuItem
					{
						Identifier = RID_XSUBSETEQY;
						HelpId = HID_SMA_XSUBSETEQY;
						Text = "A subseteq B";
					};
					MenuItem
					{
						Identifier = RID_XSUPSETY;
						HelpId = HID_SMA_XSUPSETY;
						Text = "A supset B";
					};
					MenuItem
					{
						Identifier = RID_XSUPSETEQY;
						HelpId = HID_SMA_XSUPSETEQY;
						Text = "A supseteq B";
					};
					MenuItem
					{
						Identifier = RID_XNSUBSETY;
						HelpId = HID_SMA_XNSUBSETY;
						Text = "A nsubset B";
					};
					MenuItem
					{
						Identifier = RID_XNSUBSETEQY;
						HelpId = HID_SMA_XNSUBSETEQY;
						Text = "A nsubseteq B";
					};
					MenuItem
					{
						Identifier = RID_XNSUPSETY;
						HelpId = HID_SMA_XNSUPSETY;
						Text = "A nsupset B";
					};
					MenuItem
					{
						Identifier = RID_XNSUPSETEQY;
						HelpId = HID_SMA_XNSUPSETEQY;
						Text = "A nsupseteq B";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_EMPTYSET;
						HelpId = HID_SMA_EMPTYSET;
						Text = "emptyset";
					};
					MenuItem
					{
						Identifier = RID_ALEPH;
						HelpId = HID_SMA_ALEPH;
						Text = "aleph";
					};
					MenuItem
					{
						Identifier = RID_SETN;
						HelpId = HID_SMA_SETN;
						Text = "setN";
					};
					MenuItem
					{
						Identifier = RID_SETZ;
						HelpId = HID_SMA_SETZ;
						Text = "setZ";
					};
					MenuItem
					{
						Identifier = RID_SETQ;
						HelpId = HID_SMA_SETQ;
						Text = "setQ";
					};
					MenuItem
					{
						Identifier = RID_SETR;
						HelpId = HID_SMA_SETR;
						Text = "setR";
					};
					MenuItem
					{
						Identifier = RID_SETC;
						HelpId = HID_SMA_SETC;
						Text = "setC";
					};
				};
			};
		};
		MenuItem
		{
			Identifier = RID_FUNCTIONS_MENU ;
			HelpId = HID_SMA_FUNCTIONS_TBX ;
			Text [ en-US ] = "~Functions" ;
			SubMenu = Menu
			{
				ItemList =
				{
					MenuItem
					{
						Identifier = RID_ABSX;
						HelpId = HID_SMA_ABSX;
						Text = "|x|";
					};
					MenuItem
					{
						Identifier = RID_FACTX;
						HelpId = HID_SMA_FACTX;
						Text = "x!";
					};
					MenuItem
					{
						Identifier = RID_SQRTX;
						HelpId = HID_SMA_SQRTX;
						Text = "sqrt x";
					};
					MenuItem
					{
						Identifier = RID_NROOTXY;
						HelpId = HID_SMA_NROOTXY;
						Text = "nroot x y";
					};
					MenuItem
					{
						Identifier = RID_RSUPX;
						HelpId = HID_SMA_RSUPX;
						Text = "x^y";
					};
					MenuItem
					{
						Identifier = RID_EX;
						HelpId = HID_SMA_EX;
						Text = "e^x";
					};
					MenuItem
					{
						Identifier = RID_LNX;
						HelpId = HID_SMA_LNX;
						Text = "ln(x)";
					};
					MenuItem
					{
						Identifier = RID_EXPX;
						HelpId = HID_SMA_EXPX;
						Text = "exp(x)";
					};
					MenuItem
					{
						Identifier = RID_LOGX;
						HelpId = HID_SMA_LOGX;
						Text = "log(x)";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_SINX;
						HelpId = HID_SMA_SINX;
						Text = "sin(x)";
					};
					MenuItem
					{
						Identifier = RID_COSX;
						HelpId = HID_SMA_COSX;
						Text = "cos(x)";
					};
					MenuItem
					{
						Identifier = RID_TANX;
						HelpId = HID_SMA_TANX;
						Text = "tan(x)";
					};
					MenuItem
					{
						Identifier = RID_COTX;
						HelpId = HID_SMA_COTX;
						Text = "cot(x)";
					};
					MenuItem
					{
						Identifier = RID_SINHX;
						HelpId = HID_SMA_SINHX;
						Text = "sinh(x)";
					};
					MenuItem
					{
						Identifier = RID_COSHX;
						HelpId = HID_SMA_COSHX;
						Text = "cosh(x)";
					};
					MenuItem
					{
						Identifier = RID_TANHX;
						HelpId = HID_SMA_TANHX;
						Text = "tanh(x)";
					};
					MenuItem
					{
						Identifier = RID_COTHX;
						HelpId = HID_SMA_COTHX;
						Text = "coth(x)";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_FUNCTIONSOTHER1_MENU;
						HelpId = HID_SMA_FUNCTIONSOTHER1_MENU;
						Text [ en-US ] = "More";
						SubMenu = Menu
						{
							ItemList =
							{
								MenuItem
								{
									Identifier = RID_ARCSINX;
									HelpId = HID_SMA_ARCSINX;
									Text = "arcsin(x)";
								};
								MenuItem
								{
									Identifier = RID_ARCCOSX;
									HelpId = HID_SMA_ARCCOSX;
									Text = "arccos(x)";
								};
								MenuItem
								{
									Identifier = RID_ARCTANX;
									HelpId = HID_SMA_ARCTANX;
									Text = "arctan(x)";
								};
								MenuItem
								{
									Identifier = RID_ARCCOTX;
									HelpId = HID_SMA_ARCCOTX;
									Text = "arcot(x)";
								};
								MenuItem
								{
									Identifier = RID_ARSINHX;
									HelpId = HID_SMA_ARSINHX;
									Text = "arsinh(x)";
								};
								MenuItem
								{
									Identifier = RID_ARCOSHX;
									HelpId = HID_SMA_ARCOSHX;
									Text = "arcosh(x)";
								};
								MenuItem
								{
									Identifier = RID_ARTANHX;
									HelpId = HID_SMA_ARTANHX;
									Text = "artanh(x)";
								};
								MenuItem
								{
									Identifier = RID_ARCOTHX;
									HelpId = HID_SMA_ARCOTHX;
									Text = "arcoth(x)";
								};
							};
						};
					};
				};
			};
		};
		MenuItem
		{
			Identifier = RID_OPERATORS_MENU ;
			HelpId = HID_SMA_OPERATORS_TBX ;
			Text [ en-US ] = "O~perators" ;
			SubMenu = Menu
			{
				ItemList =
				{
					MenuItem
					{
						Identifier = RID_LIMX;
						HelpId = HID_SMA_LIMX;
						Text = "lim x";
					};
					MenuItem
					{
						Identifier = RID_SUMX;
						HelpId = HID_SMA_SUMX;
						Text = "sum x";
					};
					MenuItem
					{
						Identifier = RID_PRODX;
						HelpId = HID_SMA_PRODX;
						Text = "prod x";
					};
					MenuItem
					{
						Identifier = RID_COPRODX;
						HelpId = HID_SMA_COPRODX;
						Text = "coprod x";
					};
					MenuItem
					{
						Identifier = RID_INTX;
						HelpId = HID_SMA_INTX;
						Text = "int x";
					};
					MenuItem
					{
						Identifier = RID_IINTX;
						HelpId = HID_SMA_IINTX;
						Text = "iint x";
					};
					MenuItem
					{
						Identifier = RID_IIINTX;
						HelpId = HID_SMA_IIINTX;
						Text = "iiint x";
					};
					MenuItem
					{
						Identifier = RID_LINTX;
						HelpId = HID_SMA_LINTX;
						Text = "lint x";
					};
					MenuItem
					{
						Identifier = RID_LLINTX;
						HelpId = HID_SMA_LLINTX;
						Text = "llint x";
					};
					MenuItem
					{
						Identifier = RID_LLLINTX;
						HelpId = HID_SMA_LLLINTX;
						Text = "lllint x";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_FROMXTOY;
						HelpId = HID_SMA_FROMXTOY;
						Text = "... from a to b";
					};
					MenuItem
					{
						Identifier = RID_FROMX;
						HelpId = HID_SMA_FROMX;
						Text = "... from a";
					};
					MenuItem
					{
						Identifier = RID_TOX;
						HelpId = HID_SMA_TOX;
						Text = "... to b";
					};
				};
			};
		};
		MenuItem
		{
			Identifier = RID_ATTRIBUTES_MENU ;
			HelpId = HID_SMA_ATTRIBUTES_TBX ;
			Text [ en-US ] = "~Attributes" ;
			SubMenu = Menu
			{
				ItemList =
				{
					MenuItem
					{
						Identifier = RID_ACUTEX;
						HelpId = HID_SMA_ACUTEX;
						Text = "acute a";
					};
					MenuItem
					{
						Identifier = RID_GRAVEX;
						HelpId = HID_SMA_GRAVEX;
						Text = "grave a";
					};
					MenuItem
					{
						Identifier = RID_CHECKX;
						HelpId = HID_SMA_CHECKX;
						Text = "check a";
					};
					MenuItem
					{
						Identifier = RID_BREVEX;
						HelpId = HID_SMA_BREVEX;
						Text = "breve a";
					};
					MenuItem
					{
						Identifier = RID_CIRCLEX;
						HelpId = HID_SMA_CIRCLEX;
						Text = "circle a";
					};
					MenuItem
					{
						Identifier = RID_DOTX;
						HelpId = HID_SMA_DOTX;
						Text = "dot a";
					};
					MenuItem
					{
						Identifier = RID_DDOTX;
						HelpId = HID_SMA_DDOTX;
						Text = "ddot a";
					};
					MenuItem
					{
						Identifier = RID_DDDOTX;
						HelpId = HID_SMA_DDDOTX;
						Text = "dddot a";
					};
					MenuItem
					{
						Identifier = RID_BARX;
						HelpId = HID_SMA_BARX;
						Text = "bar a";
					};
					MenuItem
					{
						Identifier = RID_VECX;
						HelpId = HID_SMA_VECX;
						Text = "vec a";
					};
					MenuItem
					{
						Identifier = RID_TILDEX;
						HelpId = HID_SMA_TILDEX;
						Text = "tilde a";
					};
					MenuItem
					{
						Identifier = RID_HATX;
						HelpId = HID_SMA_HATX;
						Text = "hat a";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_WIDEVECX;
						HelpId = HID_SMA_WIDEVECX;
						Text = "widevec abc";
					};
					MenuItem
					{
						Identifier = RID_WIDETILDEX;
						HelpId = HID_SMA_WIDETILDEX;
						Text = "widetilde abc";
					};
					MenuItem
					{
						Identifier = RID_WIDEHATX;
						HelpId = HID_SMA_WIDEHATX;
						Text = "widehat abc";
					};
					MenuItem
					{
						Identifier = RID_OVERLINEX;
						HelpId = HID_SMA_OVERLINEX;
						Text = "overline abc";
					};
					MenuItem
					{
						Identifier = RID_UNDERLINEX;
						HelpId = HID_SMA_UNDERLINEX;
						Text = "underline abc";
					};
					MenuItem
					{
						Identifier = RID_OVERSTRIKEX;
						HelpId = HID_SMA_OVERSTRIKEX;
						Text = "overstrike abc";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_PHANTOMX;
						HelpId = HID_SMA_PHANTOMX;
						Text = "phantom b";
					};
					MenuItem
					{
						Identifier = RID_BOLDX;
						HelpId = HID_SMA_BOLDX;
						Text = "bold b";
					};
					MenuItem
					{
						Identifier = RID_ITALX;
						HelpId = HID_SMA_ITALX;
						Text = "ital b";
					};
					MenuItem
					{
						Identifier = RID_SIZEXY;
						HelpId = HID_SMA_SIZEXY;
						Text = "size s b";
					};
					MenuItem
					{
						Identifier = RID_FONTXY;
						HelpId = HID_SMA_FONTXY;
						Text = "font f b";
					};
				};
			};
		};
		MenuItem
		{
			Identifier = RID_BRACKETS_MENU ;
			HelpId = HID_SMA_BRACKETS_TBX ;
			Text [ en-US ] = "~Brackets" ;
			SubMenu = Menu
			{
				ItemList =
				{
					MenuItem
					{
						Identifier = RID_LRGROUPX;
						HelpId = HID_SMA_LRGROUPX;
						Text = "{...}";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_LRPARENTX;
						HelpId = HID_SMA_LRPARENTX;
						Text = "(x)";
					};
					MenuItem
					{
						Identifier = RID_LRBRACKETX;
						HelpId = HID_SMA_LRBRACKETX;
						Text = "[x]";
					};
					MenuItem
					{
						Identifier = RID_LRDBRACKETX;
						HelpId = HID_SMA_LRDBRACKETX;
						Text = "ldbracket x rdbracket ";
					};
					MenuItem
					{
						Identifier = RID_LRBRACEX;
						HelpId = HID_SMA_LRBRACEX;
						Text = "{x}";
					};
					MenuItem
					{
						Identifier = RID_LRANGLEX;
						HelpId = HID_SMA_LRANGLEX;
						Text = "langle x rangle";
					};
					MenuItem
					{
						Identifier = RID_LMRANGLEXY;
						HelpId = HID_SMA_LMRANGLEXY;
						Text = "langle x mline y rangle";
					};
					MenuItem
					{
						Identifier = RID_LRCEILX;
						HelpId = HID_SMA_LRCEILX;
						Text = "lceil x rceil";
					};
					MenuItem
					{
						Identifier = RID_LRFLOORX;
						HelpId = HID_SMA_LRFLOORX;
						Text = "lfloor x rfloor";
					};
					MenuItem
					{
						Identifier = RID_LRLINEX;
						HelpId = HID_SMA_LRLINEX;
						Text = "lline x rline";
					};
					MenuItem
					{
						Identifier = RID_LRDLINEX;
						HelpId = HID_SMA_LRDLINEX;
						Text = "ldline x rdline";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_SLRPARENTX;
						HelpId = HID_SMA_SLRPARENTX;
						Text = "left ( x right )";
					};
					MenuItem
					{
						Identifier = RID_SLRBRACKETX;
						HelpId = HID_SMA_SLRBRACKETX;
						Text = "left [ x right ]";
					};
					MenuItem
					{
						Identifier = RID_SLRDBRACKETX;
						HelpId = HID_SMA_SLRDBRACKETX;
						Text = "left ldbracket x right rdbracket ";
					};
					MenuItem
					{
						Identifier = RID_SLRBRACEX;
						HelpId = HID_SMA_SLRBRACEX;
						Text = "left { x right }";
					};
					MenuItem
					{
						Identifier = RID_SLRANGLEX;
						HelpId = HID_SMA_SLRANGLEX;
						Text = "left langle x right rangle";
					};
					MenuItem
					{
						Identifier = RID_SLMRANGLEXY;
						HelpId = HID_SMA_SLMRANGLEXY;
						Text = "left langle x mline y right rangle";
					};
					MenuItem
					{
						Identifier = RID_SLRCEILX;
						HelpId = HID_SMA_SLRCEILX;
						Text = "left lceil x right rceil";
					};
					MenuItem
					{
						Identifier = RID_SLRFLOORX;
						HelpId = HID_SMA_SLRFLOORX;
						Text = "left lfloor x right rfloor";
					};
					MenuItem
					{
						Identifier = RID_SLRLINEX;
						HelpId = HID_SMA_SLRLINEX;
						Text = "left lline x right rline";
					};
					MenuItem
					{
						Identifier = RID_SLRDLINEX;
						HelpId = HID_SMA_SLRDLINEX;
						Text = "left ldline x right rdline";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_XOVERBRACEY;
						HelpId = HID_SMA_XOVERBRACEY;
						Text = "x overbrace y";
					};
					MenuItem
					{
						Identifier = RID_XUNDERBRACEY;
						HelpId = HID_SMA_XUNDERBRACEY;
						Text = "x underbrace y";
					};
				};
			};
		};
		MenuItem
		{
			Identifier = RID_FORMAT_MENU ;
			HelpId = HID_SMA_FORMAT_TBX ;
			Text [ en-US ] = "For~mats" ;
			SubMenu = Menu
			{
				ItemList =
				{
					MenuItem
					{
						Identifier = RID_RSUPX;
						HelpId = HID_SMA_RSUPX;
						Text = "^x";
					};
					MenuItem
					{
						Identifier = RID_RSUBX;
						HelpId = HID_SMA_RSUBX;
						Text = "_x";
					};
					MenuItem
					{
						Identifier = RID_LSUPX;
						HelpId = HID_SMA_LSUPX;
						Text = "lsup x";
					};
					MenuItem
					{
						Identifier = RID_LSUBX;
						HelpId = HID_SMA_LSUBX;
						Text = "lsub x";
					};
					MenuItem
					{
						Identifier = RID_CSUPX;
						HelpId = HID_SMA_CSUPX;
						Text = "csup x";
					};
					MenuItem
					{
						Identifier = RID_CSUBX;
						HelpId = HID_SMA_CSUBX;
						Text = "csub x";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_NEWLINE;
						HelpId = HID_SMA_NEWLINE;
						Text [ en-US ] = "New Line";
					};
					MenuItem
					{
						Identifier = RID_SBLANK;
						HelpId = HID_SMA_SBLANK;
						Text [ en-US ] = "Small Gap";
					};
					MenuItem
					{
						Identifier = RID_BLANK;
						HelpId = HID_SMA_BLANK;
						Text [ en-US ] = "Gap";
					};
					MenuItem
					{
						Identifier = RID_NOSPACE;
						HelpId = HID_SMA_NOSPACE;
						Text [ en-US ] = "nospace {...}";
					};
					MenuItem
					{
						Identifier = RID_BINOMXY;
						HelpId = HID_SMA_BINOMXY;
						Text = "binom x y";
					};
					MenuItem
					{
						Identifier = RID_STACK;
						HelpId = HID_SMA_STACK;
						Text = "stack {...}";
					};
					MenuItem
					{
						Identifier = RID_MATRIX;
						HelpId = HID_SMA_MATRIX;
						Text = "matrix {...}";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_ALIGNLX;
						HelpId = HID_SMA_ALIGNLX;
						Text = "alignl x";
					};
					MenuItem
					{
						Identifier = RID_ALIGNCX;
						HelpId = HID_SMA_ALIGNCX;
						Text = "alignc x";
					};
					MenuItem
					{
						Identifier = RID_ALIGNRX;
						HelpId = HID_SMA_ALIGNRX;
						Text = "alignr x";
					};
				};
			};
		};
		MenuItem
		{
			Identifier = RID_MISC_MENU ;
			HelpId = HID_SMA_MISC_MENU ;
			Text [ en-US ] = "~Others" ;
			SubMenu = Menu
			{
				ItemList =
				{
					MenuItem
					{
						Identifier = RID_INFINITY;
						HelpId = HID_SMA_INFINITY;
						Text = "infinity";
					};
					MenuItem
					{
						Identifier = RID_PARTIAL;
						HelpId = HID_SMA_PARTIAL;
						Text = "partial";
					};
					MenuItem
					{
						Identifier = RID_NABLA;
						HelpId = HID_SMA_NABLA;
						Text = "nabla";
					};
					MenuItem
					{
						Identifier = RID_EXISTS;
						HelpId = HID_SMA_EXISTS;
						Text = "exists";
					};
					MenuItem
					{
						Identifier = RID_FORALL;
						HelpId = HID_SMA_FORALL;
						Text = "forall";
					};
					MenuItem
					{
						Identifier = RID_HBAR;
						HelpId = HID_SMA_HBAR;
						Text = "hbar";
					};
					MenuItem
					{
						Identifier = RID_LAMBDABAR;
						HelpId = HID_SMA_LAMBDABAR;
						Text = "lambdabar";
					};
					MenuItem
					{
						Identifier = RID_RE;
						HelpId = HID_SMA_RE;
						Text = "Re";
					};
					MenuItem
					{
						Identifier = RID_IM;
						HelpId = HID_SMA_IM;
						Text = "Im";
					};
					MenuItem
					{
						Identifier = RID_WP;
						HelpId = HID_SMA_WP;
						Text = "wp";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_LEFTARROW;
						HelpId = HID_SMA_LEFTARROW;
						Text = "leftarrow";
					};
					MenuItem
					{
						Identifier = RID_RIGHTARROW;
						HelpId = HID_SMA_RIGHTARROW;
						Text = "rightarrow";
					};
					MenuItem
					{
						Identifier = RID_UPARROW;
						HelpId = HID_SMA_UPARROW;
						Text = "uparrow";
					};
					MenuItem
					{
						Identifier = RID_DOWNARROW;
						HelpId = HID_SMA_DOWNARROW;
						Text = "downarrow";
					};
					MenuItem
					{
						Separator = TRUE;
					};
					MenuItem
					{
						Identifier = RID_DOTSLOW;
						HelpId = HID_SMA_DOTSLOW;
						Text = "dotslow";
					};
					MenuItem
					{
						Identifier = RID_DOTSAXIS;
						HelpId = HID_SMA_DOTSAXIS;
						Text = "dotsaxis";
					};
					MenuItem
					{
						Identifier = RID_DOTSVERT;
						HelpId = HID_SMA_DOTSVERT;
						Text = "dotsvert";
					};
					MenuItem
					{
						Identifier = RID_DOTSUP;
						HelpId = HID_SMA_DOTSUP;
						Text = "dotsup";
					};
					MenuItem
					{
						Identifier = RID_DOTSDOWN;
						HelpId = HID_SMA_DOTSDOWN;
						Text = "dotsdown";
					};
				};
			};
		};
	};
};
















































