[31m-- main is main file of main project written with Ada.[m
[31m-- Main is Copyright (C) 2025 Manuel De Girardi ; [m
[31m--[m
[31m--   This program is free software; you can redistribute it and/or modify[m
[31m--   it under the terms of the GNU General Public License as published by[m
[31m--   the Free Software Foundation; either version 2 of the License, or[m
[31m--   (at your option) any later version.[m
[31m--[m
[31m--   This program is distributed in the hope that it will be useful,[m
[31m--   but WITHOUT ANY WARRANTY; without even the implied warranty of[m
[31m--   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the[m
[31m--   GNU General Public License for more details.[m
[31m--[m
[31m--   You should have received a copy of the GNU General Public License[m
[31m--   along with this program; if not, write to the Free Software[m
[31m--   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA[m
[31m--[m
[31m-- Date := 2025-07-25 08:23:50 ; [m
[31m-- Version := 0.5.0r ; [m
[01;34mwith[m Ada[31m.[mCharacters[31m.[mHandling[31m;[m
[01;34muse[m Ada[31m.[mCharacters[31m.[mHandling[31m;[m
[01;34mwith[m Ada[31m.[mCalendar[31m.[mFormatting[31m;[m
[01;34muse[m Ada[31m.[mCalendar[31m.[mFormatting[31m;[m
[01;34mwith[m M[31m.[mAnsi[31m.[mConsole[31m;[m
[01;34muse[m M[31m.[mAnsi[31m.[mConsole[31m;[m
[01;34mwith[m Text_Io[31m;[m
[01;34muse[m Text_Io[31m;[m
[01;34mwith[m Gnat[31m.[mOs_Lib[31m;[m
[01;34muse[m Gnat[31m.[mOs_Lib[31m;[m
[01;34mwith[m Ada[31m.[mUnchecked_Deallocation[31m;[m

[01;34mpackage[m [01;34mbody[m M[31m.[mEngine [01;34mis[m
   
   [01;34muse[m Ada[31m.[mWide_Text_Io[31m;[m
   [01;34muse[m Element_Vectors[31m;[m
   [01;34mprocedure[m String_Free [01;34mis[m [01;34mnew[m Ada[31m.[m[01;30mUnchecked_Deallocation[m[31m([m[32mString[m[31m,[m String_Access[31m);[m
   [01;34mfunction[m [01;30mSame[m [31m([mLeft[31m,[m Right [31m:[m [01;34min[m Element_Access[31m)[m [01;34mreturn[m [32mBoolean[m [01;34mis[m
   [01;34mbegin[m
      [01;34mreturn[m Left[31m.[m[01;34mall[m [31m=[m Right[31m.[m[01;34mall[m[31m;[m
   [01;34mend[m Same[31m;[m
   
   [01;34mprocedure[m [01;30mObj_Free[m[31m([mO [31m:[m [01;34min[m [01;34mout[m Element_Access[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mWide_Free[m[31m([mO[31m.[mInfo[31m.[mName[31m);[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m Att [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mif[m O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mAtt[31m).[mEnum [31m=[m Str [01;34mthen[m
	       [01;30mString_Free[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mAtt[31m).[mStr[31m);[m
	    [01;34mend[m [01;34mif[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
	      
   [01;34mend[m Obj_Free[31m;[m

   
   [01;34mprocedure[m [01;30mPrint[m [31m([mInfo [31m:[m Element_Info[31m;[m header [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      
      [01;30mDraw[m[31m([mHeader[31m,[m [35m1[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Class : "[m [31m&[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([mInfo[31m.[mTag[31m)));[m
      [01;30mDraw[m[31m([mHeader[31m,[m [35m2[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Index : "[m [31m&[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mInfo[31m.[mIndex[31m)));[m
      [01;34mif[m Info[31m.[mName [31m/=[m [01;34mnull[m [01;34mthen[m
	 [01;30mDraw[m[31m([mHeader[31m,[m [35m3[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Name : "[m [31m&[m Info[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34melse[m
	 [01;30mDraw[m[31m([mHeader[31m,[m [35m3[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Name : "[m[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;30mDraw[m[31m([mHeader[31m,[m [35m4[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Created : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mInfo[31m.[mCreated[31m)));[m
   [01;34mend[m Print[31m;[m
   
   
   
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m None_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;34mnull[m[31m;[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m None_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;34mnull[m[31m;[m
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m None_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;34mnull[m[31m;[m
   [01;34mend[m Read[31m;[m
   
   
   
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mAttr [31m:[m [01;34min[m Attributs[31m;[m Win [31m:[m [01;34min[m Window_type[31m)[m [01;34mis[m
   [01;34mbegin[m      

      [01;34mif[m Attr[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mAttr[31m.[mIndex [01;34mloop[m
	    [01;30mDraw[m[31m([mWin[31m,[m I[31m,[m [35m1[m[31m,[m white[31m,[m [01;30mTo_Wide_String[m[31m([mAttr[31m.[m[01;30mList[m[31m([mI[31m).[mName[31m.[m[01;34mall[m[31m));[m
	    [01;30mDraw[m[31m([mWin[31m,[m I[31m,[m Attr[31m.[m[01;30mList[m[31m([mI[31m).[mName'Length[31m+[m[35m1[m[31m,[m Red[31m,[m [31m"="[m[31m);[m
	    [01;30mDraw[m[31m([mWin[31m,[m I[31m,[m Attr[31m.[m[01;30mList[m[31m([mI[31m).[mName'Length[31m+[m[35m2[m[31m,[m white[31m,[m [01;30mTo_Wide_String[m[31m([mAttr[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Print[31m;[m
      
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Program_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m

      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m

      [01;34mif[m Obj[31m.[mline [31m/=[m [01;34mnull[m [01;34mthen[m

	 [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m white[31m,[m [31m"Project : "[m [31m&[m Obj[31m.[mline[31m.[m[01;34mall[m[31m);[m

      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Program_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Program_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Description_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m Yellow[31m,[m [31m"Description : "[m[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m15[m[31m,[m white[31m,[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Description_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m      
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Description_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m

      
   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m License_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m      
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;34mfor[m Line [01;34min[m [35m1[m[31m..[mObj[31m.[mLicense[31m.[mLine_Last [01;34mloop[m
	 [01;30mDraw[m[31m([mWin[31m,[m Line[31m,[m [35m1[m[31m,[m Yellow[31m,[m Obj[31m.[mLicense[31m.[m[01;30mLines[m[31m([mLine[31m).[m[01;34mall[m[31m);[m
      [01;34mend[m [01;34mloop[m[31m;[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m License_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[32mInteger[m'[01;30mImage[m[31m([mO[31m.[mLicense[31m.[mLine_Last[31m)));[m
      [01;34mfor[m Line [01;34min[m [35m1[m[31m..[mO[31m.[mLicense[31m.[mLine_Last [01;34mloop[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLicense[31m.[m[01;30mLines[m[31m([mLine[31m).[m[01;34mall[m[31m);[m
      [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m License_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
      Length [31m:[m Natural [31m:=[m [35m0[m[31m;[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_Index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      Length [31m:=[m [32mInteger[m'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLicense [31m:=[m [01;34mnew[m [01;30mWide_String_Set[m[31m([mLength[31m);[m
      [01;34mfor[m Line [01;34min[m [35m1[m[31m..[mLength [01;34mloop[m
	 O[31m.[mLicense[31m.[m[01;30mlines[m[31m([mLine[31m)[m [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      [01;34mend[m [01;34mloop[m[31m;[m
      O[31m.[mLicense[31m.[mLine_Last [31m:=[m Length[31m;[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Main_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Name : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Main_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Main_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_Index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Read[31m;[m

   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Library_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m [31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Unit : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Library_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Library_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      

   [01;34mend[m Read[31m;[m
   
   
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Axiomatic_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Title : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Axiomatic_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Axiomatic_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Precondition_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Precondition : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
	   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Precondition_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Precondition_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      

   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Axiom_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Axiom : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Axiom_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Axiom_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Predicate_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Predicate : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Predicate_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      w_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Predicate_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m


   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Condition_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Condition : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Condition_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Condition_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m


   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Component_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Component : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Component_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Component_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m


   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Action_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Action : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Action_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Action_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m


   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Class_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Class : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Class_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Class_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
            O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      

   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Machine_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"Machine : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Machine_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Machine_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      

   [01;34mend[m Read[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m System_Class[31m;[m
		    Header [31m:[m [01;34min[m Window_Type[31m;[m
		    Win [31m:[m [01;34min[m Window_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPrint[m[31m([mObj[31m.[mInfo[31m,[m Header[31m);[m
      [01;30mDraw[m[31m([mWin[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m White[31m,[m [31m"System : "[m [31m&[m Obj[31m.[mLine[31m.[m[01;34mall[m[31m);[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m System_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Enum'[01;30mImage[m[31m([m[01;30mElement_Class[m[31m([mO[31m).[mTag[31m)));[m      
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mElement_Index'[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mIndex[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mO[31m.[mInfo[31m.[mCreated[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[31m);[m
      [01;34mif[m [01;34mnot[m [01;30mIs_Empty[m[31m([mO[31m.[mChilds[31m)[m [01;34mthen[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([m[01;30mLength[m[31m([mO[31m.[mChilds[31m)))));[m
      [01;34melse[m
	 W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([m[35m0[m[31m)));[m
      [01;34mend[m [01;34mif[m[31m;[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLine[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mNatural'[01;30mImage[m[31m([mO[31m.[mDefinition[31m.[mIndex[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mname[31m.[m[01;34mall[m[31m)[m [31m&[m [31m'='[m [31m&[m [01;30mTo_Wide_String[m[31m([mO[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m).[mValue[31m.[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
   [01;34mend[m Write[31m;[m
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m System_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      O[31m.[mInfo[31m.[mIndex [31m:=[m Element_index'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
	    
      O[31m.[mInfo[31m.[mCreated [31m:=[m Formatting[31m.[m[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      
      O[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mInfo[31m.[mChilds_Num [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      O[31m.[mLine [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mDefinition[31m.[mIndex [31m:=[m Natural'[01;30mValue[m[31m([m[01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m)));[m
      [01;34mif[m O[31m.[mDefinition[31m.[mIndex [31m/=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m1[m[31m..[mO[31m.[mDefinition[31m.[mIndex [01;34mloop[m
	    [01;34mdeclare[m
	       Name [31m:[m String_Access[31m;[m
	       Image [31m:[m String_Access[31m;[m
	       Line [31m:[m [01;34mconstant[m [32mString[m [31m:=[m  [01;30mTo_String[m[31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
	    [01;34mbegin[m
	       [01;30mParse[m[31m([mLine[31m,[m Name[31m,[m  Image[31m);[m
	       O[31m.[mDefinition[31m.[m[01;30mList[m[31m([mI[31m)[m [31m:=[m [01;30mMake[m[31m([mName[31m.[m[01;34mall[m[31m,[m Image[31m.[m[01;34mall[m[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      

   [01;34mend[m Read[31m;[m
   
   [01;34muse[m Element_Vectors[31m;[m

[01;34mend[m M[31m.[mEngine [31m;[m 
