[31m-- Skywalker is another attempt of A. i. written with Ada.[m
[31m-- Skywalker is Copyright (C) 2024 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 := 2024-11-19 17:59:13 ; [m
[31m-- Version := 0.8.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 Sky[31m.[mAnsi[31m.[mConsole[31m;[m
[01;34muse[m Sky[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 Sky[31m.[mClasses [01;34mis[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;34mprocedure[m [01;30mObj_Free[m[31m([mO [31m:[m [01;34min[m [01;34mout[m Abstract_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;34mcase[m O[31m.[mTag [01;34mis[m
	 [01;34mwhen[m Event [31m=>[m
	    [01;30mWide_Free[m[31m([m[01;30mEvent_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mLocality[31m);[m
	    [01;30mWide_Free[m[31m([m[01;30mEvent_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mDefine[31m);[m
	 [01;34mwhen[m Job [31m=>[m
	    [01;30mWide_Free[m[31m([m[01;30mJob_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mLocality[31m);[m
	    [01;30mWide_Free[m[31m([m[01;30mJob_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mDefine[31m);[m
	 [01;34mwhen[m Meeting [31m=>[m
	    [01;30mWide_Free[m[31m([m[01;30mMeeting_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mLocality[31m);[m
	    [01;30mWide_Free[m[31m([m[01;30mMeeting_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mDefine[31m);[m
	 [01;34mwhen[m Rendezvous [31m=>[m
	    [01;30mWide_Free[m[31m([m[01;30mRendezvous_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mLocality[31m);[m
	    [01;30mWide_Free[m[31m([m[01;30mRendezvous_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mDefine[31m);[m
	 [01;34mwhen[m Content [31m=>[m
	    [01;30mWide_Free[m[31m([m[01;30mcontent_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mDescription[31m);[m
	 [01;34mwhen[m Profile [31m=>[m
	    [01;30mWide_Free[m[31m([m[01;30mProfile_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mFull_name[31m);[m
	    [01;30mWide_Free[m[31m([m[01;30mProfile_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mAddr[31m);[m
	    [01;30mWide_Free[m[31m([m[01;30mProfile_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mPhone[31m);[m
	    [01;30mWide_Free[m[31m([m[01;30mProfile_Class[m[31m([mO[31m.[m[01;34mall[m[31m).[mEmail[31m);[m
	 [01;34mwhen[m [01;34mothers[m [31m=>[m
	    [01;34mnull[m[31m;[m
      [01;34mend[m [01;34mcase[m[31m;[m
	      
   [01;34mend[m Obj_Free[31m;[m
   
   
   [01;34mfunction[m [01;30mSame[m [31m([mLeft[31m,[m Right [31m:[m [01;34min[m Abstract_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;30mPrint[m [31m([mInfo [31m:[m Abstract_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([mClass_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([mAbstract_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
		    Main [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;34muse[m Abstract_Vectors[31m;[m
   [31m----------------------------------------------------------------------------[m
   [31m-- Universe[m
   
   [01;34mfunction[m Create [01;34mreturn[m Universe_Class [01;34mis[m
      Obj [31m:[m Universe_Class[31m;[m
   [01;34mbegin[m
      Obj[31m.[mInfo[31m.[mName [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([m[31m"Universe"[m[31m);[m
      Obj[31m.[mInfo[31m.[mCreated [31m:=[m Clock[31m;[m
      [01;34mreturn[m Obj[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Universe_Class[31m;[m
		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
		    Main [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;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Universe_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([mClass_Enum'[01;30mImage[m[31m([m[01;30mAbstract_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([mAbstract_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
   [01;34mend[m Write[31m;[m
   
   
   
   [01;34mprocedure[m [01;30mRead[m [31m([mO [31m:[m [01;34mout[m Universe_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 Abstract_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
      [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
   
   [31m----------------------------------------------------------------------------[m
   [31m-- Planning[m
   
   [01;34mfunction[m Create [01;34mreturn[m Planning_Class [01;34mis[m
      Obj [31m:[m Planning_Class[31m;[m
   [01;34mbegin[m
      Obj[31m.[mInfo[31m.[mCreated [31m:=[m Clock[31m;[m
      [01;34mreturn[m Obj[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Planning_Class[31m;[m
		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
		    Main [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([mMain[31m,[m [35m1[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"From : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mObj[31m.[mFrom[31m)));[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m2[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"To : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mObj[31m.[mTo[31m)));[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Planning_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([mClass_Enum'[01;30mImage[m[31m([m[01;30mAbstract_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([mAbstract_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([m[01;30mImage[m[31m([mO[31m.[mfrom[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.[mto[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).[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 Planning_Class[31m;[mFile [31m:[m [01;34min[m W_Io[31m.[mFile_Type[31m)[m [01;34mis[m
      Date_From [31m:[m Wide_String_Access[31m;[m
   [01;34mbegin[m
      
      O[31m.[mInfo[31m.[mIndex [31m:=[m Abstract_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 [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
      W_io[31m.[m[01;30mPut_Line[m[31m([m[31m"Name :"[m [31m&[m  O[31m.[mInfo[31m.[mName[31m.[m[01;34mall[m[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.[mFrom [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.[mTo [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.[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
   
   [31m----------------------------------------------------------------------------[m
   [31m-- Event[m
   
   [01;34mfunction[m Create [01;34mreturn[m Event_Class [01;34mis[m
      Obj [31m:[m Event_Class[31m;[m
   [01;34mbegin[m
      Obj[31m.[mInfo[31m.[mCreated [31m:=[m Clock[31m;[m
      [01;34mreturn[m Obj[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Event_Class[31m;[m
		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
		    Main [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([mMain[31m,[m [35m1[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Date : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mObj[31m.[mDate[31m)));[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m2[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Period : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[32mInteger[m'[01;30mImage[m[31m([m[32mInteger[m[31m([mObj[31m.[mPeriod[31m/[m[35m60.0[m[31m)))[m [31m&[m  [31m" minutes"[m[31m);[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m3[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Locality : "[m [31m&[m Obj[31m.[mLocality[31m.[m[01;34mall[m[31m);[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m4[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Define : "[m [31m&[m Obj[31m.[mDefine[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 Event_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([mClass_Enum'[01;30mImage[m[31m([m[01;30mAbstract_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([mAbstract_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([m[01;30mImage[m[31m([mO[31m.[mDate[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[32mDuration[m'[01;30mImage[m[31m([mO[31m.[mPeriod[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLocality[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mDefine[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 Event_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 Abstract_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 [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.[mDate [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.[mPeriod [31m:=[m [32mDuration[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.[mLocality [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      
      O[31m.[mDefine [31m:=[m [01;34mnew[m [32mWide_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
      [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
   
   [31m----------------------------------------------------------------------------[m
   [31m-- Job[m
   
   [01;34mfunction[m Create [01;34mreturn[m Job_Class [01;34mis[m
      Obj [31m:[m Job_Class[31m;[m
   [01;34mbegin[m
      Obj[31m.[mInfo[31m.[mCreated [31m:=[m Clock[31m;[m
      [01;34mreturn[m Obj[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Job_Class[31m;[m
		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
		    Main [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([mMain[31m,[m [35m1[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Date : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mObj[31m.[mDate[31m)));[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m2[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Period : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[32mInteger[m'[01;30mImage[m[31m([m[32mInteger[m[31m([mObj[31m.[mPeriod[31m/[m[35m60.0[m[31m)))[m [31m&[m  [31m" minutes"[m[31m);[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m3[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Locality : "[m [31m&[m Obj[31m.[mLocality[31m.[m[01;34mall[m[31m);[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m4[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Define : "[m [31m&[m Obj[31m.[mDefine[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 Job_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([mClass_Enum'[01;30mImage[m[31m([m[01;30mAbstract_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([mAbstract_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([m[01;30mImage[m[31m([mO[31m.[mDate[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[32mDuration[m'[01;30mImage[m[31m([mO[31m.[mPeriod[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLocality[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mDefine[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 Job_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 Abstract_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 [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.[mDate [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.[mPeriod [31m:=[m [32mDuration[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.[mLocality [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m

      O[31m.[mDefine [31m:=[m [01;34mnew[m [32mWide_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
      [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
   
   [31m----------------------------------------------------------------------------[m
   [31m-- Meeting[m
   
   [01;34mfunction[m Create [01;34mreturn[m Meeting_Class [01;34mis[m
      Obj [31m:[m Meeting_Class[31m;[m
   [01;34mbegin[m
      Obj[31m.[mInfo[31m.[mCreated [31m:=[m Clock[31m;[m
      [01;34mreturn[m Obj[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Meeting_Class[31m;[m
		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
		    Main [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([mMain[31m,[m [35m1[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Date : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mObj[31m.[mDate[31m)));[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m2[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Period : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[32mInteger[m'[01;30mImage[m[31m([m[32mInteger[m[31m([mObj[31m.[mPeriod[31m/[m[35m60.0[m[31m)))[m [31m&[m  [31m" minutes"[m[31m);[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m3[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Locality : "[m [31m&[m Obj[31m.[mLocality[31m.[m[01;34mall[m[31m);[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m4[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Define : "[m [31m&[m Obj[31m.[mDefine[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 Meeting_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([mClass_Enum'[01;30mImage[m[31m([m[01;30mAbstract_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([mAbstract_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([m[01;30mImage[m[31m([mO[31m.[mDate[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[32mDuration[m'[01;30mImage[m[31m([mO[31m.[mPeriod[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLocality[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mDefine[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 Meeting_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 Abstract_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 [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.[mDate [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.[mPeriod [31m:=[m [32mDuration[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.[mLocality [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      
      O[31m.[mDefine [31m:=[m [01;34mnew[m [32mWide_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
      [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
   
   [31m----------------------------------------------------------------------------[m
   [31m-- Rendezvous[m
   
   [01;34mfunction[m Create [01;34mreturn[m Rendezvous_Class [01;34mis[m
      Obj [31m:[m Rendezvous_Class[31m;[m
   [01;34mbegin[m
      Obj[31m.[mInfo[31m.[mCreated [31m:=[m Clock[31m;[m
      [01;34mreturn[m Obj[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Rendezvous_Class[31m;[m
		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
		    Main [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([mMain[31m,[m [35m1[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Date : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mObj[31m.[mDate[31m)));[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m2[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Period : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[32mInteger[m'[01;30mImage[m[31m([m[32mInteger[m[31m([mObj[31m.[mPeriod[31m/[m[35m60.0[m[31m)))[m [31m&[m  [31m" minutes"[m[31m);[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m3[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Locality : "[m [31m&[m Obj[31m.[mLocality[31m.[m[01;34mall[m[31m);[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m4[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Define : "[m [31m&[m Obj[31m.[mDefine[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 Rendezvous_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([mClass_Enum'[01;30mImage[m[31m([m[01;30mAbstract_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([mAbstract_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([m[01;30mImage[m[31m([mO[31m.[mDate[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m [01;30mTo_Wide_String[m[31m([m[32mDuration[m'[01;30mImage[m[31m([mO[31m.[mPeriod[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mLocality[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mDefine[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 Rendezvous_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 Abstract_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 [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.[mDate [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.[mPeriod [31m:=[m [32mDuration[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.[mLocality [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      
      O[31m.[mDefine [31m:=[m [01;34mnew[m [32mWide_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
      [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
   
   [31m----------------------------------------------------------------------------[m
   [31m-- Profile[m
   
   [01;34mfunction[m Create [01;34mreturn[m Profile_Class [01;34mis[m
      Obj [31m:[m Profile_Class[31m;[m
   [01;34mbegin[m
      Obj[31m.[mInfo[31m.[mCreated [31m:=[m Clock[31m;[m
      [01;34mreturn[m Obj[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Profile_Class[31m;[m
		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
		    Main [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.[mFull_Name [31m/=[m [01;34mnull[m [01;34mthen[m
	 [01;30mDraw[m[31m([mMain[31m,[m [35m1[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Name : "[m [31m&[m Obj[31m.[mFull_Name[31m.[m[01;34mall[m[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m2[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Born : "[m [31m&[m [01;30mTo_Wide_String[m[31m([m[01;30mImage[m[31m([mObj[31m.[mBorn[31m)));[m
      [01;34mif[m Obj[31m.[mAddr [31m/=[m [01;34mnull[m [01;34mthen[m
	 [01;30mDraw[m[31m([mMain[31m,[m [35m3[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Addr : "[m [31m&[m Obj[31m.[mAddr[31m.[m[01;34mall[m[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;34mif[m Obj[31m.[mPhone [31m/=[m [01;34mnull[m [01;34mthen[m
	 [01;30mDraw[m[31m([mMain[31m,[m [35m4[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Phone : "[m [31m&[m Obj[31m.[mPhone[31m.[m[01;34mall[m[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;34mif[m Obj[31m.[mEmail [31m/=[m [01;34mnull[m [01;34mthen[m
	 [01;30mDraw[m[31m([mMain[31m,[m [35m5[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Email : "[m [31m&[m Obj[31m.[mEmail[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 Profile_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([mClass_Enum'[01;30mImage[m[31m([m[01;30mAbstract_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([mAbstract_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.[mFull_Name[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([m[01;30mImage[m[31m([mO[31m.[mBorn[31m)));[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mAddr[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mPhone[31m.[m[01;34mall[m[31m);[m
      W_Io[31m.[m[01;30mPut_Line[m[31m([mFile[31m,[m O[31m.[mEmail[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 Profile_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 Abstract_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 [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.[mFull_Name [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      
      O[31m.[mborn [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.[mAddr [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      
      O[31m.[mPhone [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      
      O[31m.[mEmail [31m:=[m [01;34mnew[m [32mWide_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
      [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
   
   [31m----------------------------------------------------------------------------[m
   [31m-- Content[m
   
   [01;34mfunction[m Create [01;34mreturn[m Content_Class [01;34mis[m
      Obj [31m:[m Content_Class[31m;[m
   [01;34mbegin[m
      Obj[31m.[mInfo[31m.[mCreated [31m:=[m Clock[31m;[m
      [01;34mreturn[m Obj[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Content_Class[31m;[m
		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
		    Main [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.[mDescription [31m/=[m [01;34mnull[m [01;34mthen[m
	 [01;30mDraw[m[31m([mMain[31m,[m [35m1[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Define : "[m [31m&[m Obj[31m.[mDescription[31m.[m[01;34mall[m[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;30mDraw[m[31m([mMain[31m,[m [35m2[m[31m,[m [35m2[m[31m,[m White[31m,[m [31m"Price : "[m [31m&[m [01;30mTo_Wide_String[m[31m([mFixed_Unit_Ttc'[01;30mImage[m[31m([mObj[31m.[mPrice[31m)));[m
   [01;34mend[m Print[31m;[m
   
   [01;34mprocedure[m [01;30mWrite[m [31m([mO [31m:[m [01;34min[m Content_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([mClass_Enum'[01;30mImage[m[31m([m[01;30mAbstract_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([mAbstract_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.[mDescription[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([mFixed_Unit_Ttc'[01;30mImage[m[31m([mO[31m.[mPrice[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 Content_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 Abstract_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 [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.[mDescription [31m:=[m [01;34mnew[m [32mWide_String[m ' [31m([mW_Io[31m.[m[01;30mGet_Line[m[31m([mFile[31m));[m
      O[31m.[mPrice [31m:=[m Fixed_Unit_Ttc'[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
      [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;34mfunction[m Create [01;34mreturn[m Book_Class [01;34mis[m
      Book [31m:[m Book_Class[31m;[m
   [01;34mbegin[m
      [01;34mreturn[m Book[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Book_Class[31m;[m
   		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
   		    Main [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 Book_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 Book_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;34mfunction[m Create [01;34mreturn[m CDROM_Class [01;34mis[m
      CDROM [31m:[m CDROM_Class[31m;[m
   [01;34mbegin[m
      [01;34mreturn[m CDROM[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m CDROM_Class[31m;[m
   		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
   		    Main [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 CDROM_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 CDROM_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;34mfunction[m Create [01;34mreturn[m DVD_Class [01;34mis[m
      DVD [31m:[m DVD_Class[31m;[m
   [01;34mbegin[m
      [01;34mreturn[m DVD[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m DVD_Class[31m;[m
   		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
   		    Main [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 DVD_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 DVD_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;34mfunction[m Create [01;34mreturn[m Car_Class [01;34mis[m
      Car [31m:[m Car_Class[31m;[m
   [01;34mbegin[m
      [01;34mreturn[m Car[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m Car_Class[31m;[m
   		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
   		    Main [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 Car_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 Car_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;34mfunction[m Create [01;34mreturn[m House_Class [01;34mis[m
      House [31m:[m House_Class[31m;[m
   [01;34mbegin[m
      [01;34mreturn[m House[31m;[m
   [01;34mend[m Create[31m;[m
   
   [01;34mprocedure[m [01;30mPrint[m [31m([mObj    [31m:[m [01;34min[m House_Class[31m;[m
   		    Header    [31m:[m [01;34min[m Window_Type[31m;[m
   		    Main [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 House_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 House_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;34mend[m Sky[31m.[mClasses [31m;[m 
