1{|))*++,SCOTT CRAIG'S CONNECT-TIME MONITOR VERSION 2.8.6 Release Date - December 17, 1995 Copyright(c) 1995, Scott A. Craig - All Rights Reserved COPYRIGHT INFORMATION This software is owned and copyrighted by the author, however it is released as FreeWare, and may be freely copied and distributed by any means pursuant to the following restrictions: All programs, files and sections remain intact and unmodified. This software may NOT be distributed as part of Bundled software (including CD-ROM or diskette distribution of Shareware and/or Freeware software) for sale without the express written permission of the author. No monetary reimbursement of any kind is received for the copying or distribution of the software. In plain English, you can GIVE a copy to anybody you want to, but you cannot SELL a copy to anybody without my permission. DISCLAIMER This software is provided on an as-is basis. Neither the author nor any distributor of this software offer any warranty of any kind, nor accept responsibility for any damages of any type incurred through or by the use of this software. Through and by the use of this software, you accept all responsibility for any damages incurred or thought to be incurred by using this software. The author expressly disclaims all warranties, implied or expressed, including but not limited to merchantability or fitness for any particular purpose, nor do the authors warrant that the functions contained in this software will be suitable for any particular purpose, or that system operations while using this software will be uninterrupted. Under no circumstances whatsoever shall the author's total liability for any and all damages and losses incurred or thought to be incurred through or by the use of this software exceed the amount that you paid directly to the author for the license to use this software. This software and all associated files are: COPYRIGHT, 1995, SCOTT CRAIG ALL RIGHTS RESERVED ANTI-VIRUS NOTE All of the files in the distribution ZIP file have been scanned for viruses using Symantec's NORTON ANTI-VIRUS FOR WINDOWS 95 and the latest virus data files that they have available. Additionally, the primary upload site at TUCOWS also scans all incoming files. If you should find a virus of any type in any of these files, please send me E-mail at: scraig@ix.netcom.com Include in the mail: 1) The name and version of the anti-virus program that detected the problem. 2) The name of the virus 3) Exactly where you got your copy of my software 4) The version, date, time, and file sizes of the copy of my software 5) Any other information you can think of that might help track down where the virus got into the file UPGRADES This program is currently in a constant state of change. This is due mainly to the large number of E-mail comments I have received from users requesting changes, additions, or modifications. This program was initially released on June 4, 1995, and as of Version 2.8.5 it has undergone 16 version changes. Each version change has included some "Bug" fixes (some minor, some major) and additions or enhancements. The main reason for the upgrades though, has been user coments. Any comments I receive are seriously considered. They may or may not be included in a release, but they do receive serious consideration. If a feature is important to someone, the least I can do is give it some thought. I cannot add every request though. Some additions would conflict with other additions. Some would make things to complicated for the users. But all-in-all, I have added about 75% of the features that users have requested, and I will continue with this practice. If there is something you want added, drop me a line. I may not add it, but I will think about it. There is also a "Down" side to this. With all the changes I make to my code, it is inevitable that I will do something on occasion that will cause a problem with something that was previously working. While I do test everything as thoroughly as possible, and I also have a couple of people who have volunteered to "Beta Test" things before I release them, sometimes things still slip through. I apologize for this, but it does and will happen. If a problem is brought to my attention, I fix it as soon as I can and upload the fixed version. There is no "Commercial" version of this program. This is it, and what you see is what I've got. I always upload the upgrades to THE ULTIMATE COLLECTION OF WINSOCK SOFTWARE (TUCOWS) homepage first. This is an excellent source of Shareware and Freeware Windows and Winsock software, maintained by Scott Swedorski and Shawn Chittle. If you haven't been there, you need to check it out since it truly is a first-class page. The URL is HTTP://WWW.TUCOWS.COM INSTALLATION The SETUP program included will handle all of the installation of this software. Unlike so much software on the market, this program does not spread itself very far. It is completely self-contained, and unless you told the Setup program to create a Program Manager group or update the CTL3DV2.DLL file, the only changes made anywhere on your system will be in the installation directory. Setup will install the following files on your system, in the directory specified during the installation: CCM20.EXE 131,264 bytes 17-DEC-95 00:00pm CCM20.HLP 202,932 bytes 17-DEC-95 00:00pm README.WRI 38,400 bytes 17-DEC-95 00:00pm SURVEY.TXT 3,075 bytes 17-DEC-95 00:00am If you did not create a Program Group, you can use FILE MANAGER to copy the program files to the desired directory, and then use FILE MANAGER to "Drag" CCM20.EXE onto the group that you want to execute it from. You can then execute the program by clicking on the icon. Be sure to read through the Help file to see how to configure the program to best suit your applications. It has several options, but is generally very easy to use. I have included a text file named SURVEY.TXT with this release. If you would like to fill it out, I would certainly appreciate it, however it is completely optional! REVISION NOTES FOR UPGRADING FROM PREVIOUS VERSIONS If you are upgrading to this version from a previous version of the timer, the file TABC.DLL that was previously distributed with the program is no longer required. If it is the only program that is using it on your system, it can be deleted since version 2.8.6 of the timer has built-in Tab controls. The INI file was significantly changed for Version 2.8.4 or later. If you are upgrading to this version from a CCM Version earlier than 2.8.4, I would recommend that you make a copy of your esisting INI file. If you decide you want to go back to a previous version, the INI file for Versions later than 2.8.3 are NOT compatible with versions earlier than 2.8.3. For full information on the INI file, refer to the INI FILE STRUCTURE section of the Help file. The first time you run Version 2.8.4 or later, it will automatically reformat your INI file to the new style. I hope this will be the last major change to the INI file structure. This format is the same as the INI file that is used in the 32-bit CCM version for Windows 95, and some of the features of the Win95 version necessitated part of the changes to the INI file. There are numerous changes for Version 2.8 See the Revision History section below for complete details. To prevent you from having to change all of your script files that call CCM20.EXE, the executable file for version 2.8 is also named CCM20.EXE, and the help file is still named CCM20.HLP. All you need to do is replace the existing CCM20.EXE and CCM20.HLP with the newer versions. This policy will be retained throughout Version 2.x. Hope you enjoy it! Scott Craig SCraig@IX.Netcom.Com Nashville, TN Scott.Craig@Nashville.Com REVISION HISTORY Version 1.0 was a very simple little program, but due to requests by other users, and things I thought of myself, each release adds some new features. It is becoming quite complicated for such a small program. This list of revisions will explain what has been added between each version. Version 1.0 06/04/95 Initial release of Version 1.0. Version 2.0 06/06/95 Initial release of Version 2.0. Added "Launch" capabilities, "Start Minimized", and "Edit" dialog. Version 2.0a 06/14/95 Fixed a bug in the display function that caused a GPF when the total time exceeded about 10 hours. I know better than to use 16-bit Ints for long values! Version 2.1 06/18/95 Added a configurable MessageBox to display the session and total times if the program is exited when the CD drops. Added the ability to remove a Connect without having to edit the INI file. Revised Exiting logic. Revised timers to resolve clock running slow, and added display update variable to the config dialog. Fixed the problem that kept the Help file from being displayed when the Help button was clicked. Since there was a probability that people have already configured Script files to use the program name CCM20.EXE, the name of the executable and help files was not changed even though the version changed. Version 2.2a 07/01/95 Added "Warning" functions. The program can be configured to display a "Warning" when the end of your time period is close. The Warning will turn the display characters red, and play a sound file. The name of the sound file can be specified in a configuration option. Added an optional Prime Time section. The program can be configured to check for Prime Time or Non-Prime Time. The "Totals" section of the display can be toggled between the two values. A red or green bitmap on the display indicates whether it is currently Prime Time or not. Added option to allow the Icon to display either the Session or Total time. If it is set to display the Total time, it will either display Total or Prime depending on the setting for the Totals section of the display. Added an option to allow Sound files to be played when the timer starts and/or stops. Configuration options allow the names of the files to be specified. Fixed the bug that caused the Version 1.0 title to be displayed on the dialog after it was restored from an icon. Completely reworked the timing functions to make them more reliable and accurate. The Window position is now saved between sessions. A configuration option allows this feature to be turned on or off. Added a configuration feature to keep the monitor on top of other windows (such as Help's Always On Top). Revised the [LAUNCH] and [AUTO] button operation. Now, if the program is configured for automatic operation, and the [LAUNCH] button is pressed, the [AUTO] is automatically "Clicked" also. Fixed the problem that caused multiple INI files to be generated. Fixed the problem that caused the CLOSE selection on the System menu to be ignored. Fixed the problem that caused the MAXIMIZE selection on the System menu to make that little dialog fill the entire screen! Reworked the HELP file to make it more understandable, and added some configuration examples. Version 2.2b 07/02/95 Fixed the problem that cause the Session time to get reset when the Total time was reset. Fixed a problem that caused the Prime Time not to be detected and added properly Version 2.3a 07/08/95 Shortened the configuration dialog so that it would fit on a 640x480 screen. Fixed a problem that occasionally caused the control buttons to not be displayed properly. Fixed the problem that caused the main dialog to be improperly sized when using "Large Fonts" Added the Automatic Reset capability to the Total/Prime Time timer. They can be set to automatically reset on a Daily, Weekly, or Monthly basis. Added a logging function. This function writes a log file into the same directory as the program, and keeps a log of all sessions. IMPORTANT NOTICE: The Automatic Reset function has been tested as thouroughly as I can by changing the date on my system, and watching to make sure it resets at the proper times, and does NOT reset at improper times. The logic used, even though it sounds simple at first, is somewhat complicated. Resetting is easy, NOT resetting when it isn't supposed to was the tough part. For this reason, I STRONGLY recommend that you enable the LOG FILE function in the configuration options. Any time the program resets its timers, the values of the prime time and total connect time are written to the log file. If the program resets at the wrong time, you can retrieve the values from the log file and put them back using the EDIT function. If you experience problems with this function, simply disable it in the EDIT dialog by selecting NONE for the reset type. If you DO notice the program resetting at the wrong time (or for that matter if you see it resetting at the RIGHT time), please send me E-mail to let me know. I really need some input from users to make sure this part is working right. Note: Version 2.3 was only distributed to a very few people. I received a request to add additional days to the Prime Time settings, and had a problem with the Monthly Reset calculations, so it was not widely distributed. Version 2.4 07/09/95 Fixed a problem in the Monthly automatic reset. The date for the next reset was not calculated properly. Changed the Prime Time Days from two radio buttons to seven checkboxes so that any days could be selected. Version 2.5 07/15/95 Added switching icons. There are 4 icons in the program that will indicate Normal operation, Prime Time, Non-Prime Time, and Warning. (this feature does not work under Windows 95 at this time). Fixed a problem that caused the main dialog to be displayed off of the screen if the screen resolution was set high, and then reduced, and the position was saved near the high edges. Revised the logic on the Prime Time Hours section to allow them to cross Midnight. Some Internet Providers, I have been informed, have Prime Time hours that cross midnight, and users were unable to specify a starting hour later than the beginning hour. Revised the dialogs to reduce the size slightly for those running 640x480 monitor resolution. Added the ability to switch the Icon display between Session time and Total time by left-clicking in the main dialog section for the desired mode. Added indicators (brackets around the section title text) to denote which mode the icon will be displayed in. Added an LED Indicator for the carrier detect. It is green when a carrier is present, and red when one is not. Version 2.6a 07/23/95 For those who have requested it, I added an additional Iconic display mode. You can now select the normal Icon display or a Floating Dialog. The Floating Dialog is a small dialog box that displays the desired time (Session, Prime or Total), and can be moved around on the desktop. The position of this dialog is retained between sessions, so it will always be displayed in the same place on your desktop. Fixed the memory leaks that were causing the program to allocate and never release some system resources. Added several additional checks during program operation so that if system resources are low, the program will not cause a GPF. Changed the format of the log file entries so they use fewer lines. Added the "Download Estimator" function to estimate the time required to download a file. Fixed the problem that prevented the session time from being reset properly when the [RESET] button was clicked. Fixed a round-off problem in the display routine. The time is displayed a bit more smoothly now. Version 2.7a 07/29/95 Added a [BROWSE] button to the EDIT section to allow selecting a "Launch" program instead of having to type in the file name (an oversight on my part that should have been added weeks ago!) Revised the labels on the [SEARCH] buttons in the configuration section to [BROWSE] to be more consistent with Windows terminology. Added a font selection dialog for the "Floating Dialog" so that you can select the font that you want used for the display. Fixed a problem that kept the LED bitmaps from being displayed in the proper place on the main dialog. Version 2.8.1 08/19/95 Many changes on this release! Fixed a problrm that prevented the areas inside the Session and Total frames from being detected as the "Click" area for switching the icon mode between Session and Total time display (this only showed up on some machines using large fonts on their displays) Fixed a problem that kept the prime time days from being "UnSelected" (once you checked them, you couldn't uncheck them). Fixed a problem that prevented the warning sounds from being played when the program was minimized. Fixed a problem that prevented Connections whose name had remained "[New Entry]" from being able to be deleted. Fixed a problem on some machines that caused the 3D rendering to behave wrong. On some machines it caused the 3D rendering to not show at all, and on some it caused problems in other programs after the timer was closed. The CONFIG and EDIT dialogs were completely rewritten to use "Tabbed" dialogs. This was necessary to allow adding the new options, and still let the dialogs fit on a 640x480 screen. Added the ability to set Prime Time starting and ending times to any time of day on individual days. This will allow those of you whose providers have different "Prime" hours on different days to set them up the way you want. Added a "Daily" total. The left side of the display can be switched between the Session time and Daily time by clicking inside the frame. Removed the "Prime and Total" Radio buttons for the right side of the display. Instead of using radio buttons to switch this display between Prime and Total, all you need to do now is click inside the frame to switch the display. Added a configuration switch that will allow the main dialog to automatically minimize itself to an icon (or "Floating Dialog") when the [AUTO], [START] or [LAUNCH] buttons are clicked. Added several options to the Log File. You can select one of three record formats: 3-line records, 1-line records in Text format, and 1-line records in Data format. You can also select one of three different log file formats: All log entries in one master log file, separate log files for Prime and Non-Prime operations, or a separate log file for each "Connection". Finally, you can select the items that you want logged (Date, Time, Session Time, Total Time, Prime Time, and/or Daily Time). Added [TEST] buttons to the sound selections. You can now "Test" the sound you have selected. Added buttons to the sound selection dialog that enable and disable the sounds. This keeps you from having to clear the name of the sound file to turn it off. Added an adjustable delay to the Warning sound. You can specify how often (in minutes) the sound is repeated. Due to popular demand, if the program is configured for "Auto Start" operation, it will automatically start with the [AUTO] button clicked. You don't have to remember to do this any longer! Negative numbers are accepted! Some people have asked for the capability to use the timer as a "CountDown" timer, or in other words, one that counts toward zero instead of away from zero. This can now be done. Simply enter the desired "CountDown" values as negative numbers. This had no affect on "Normal" operation where the time values counted up. Added a button to allow quick editing of the current Log File. The button is on the LOG page of the CONFIGURATION options dialog. Added the ability to start the timer AND launch a program from the command line. This is done by adding an "L" in front of the "Connection" in the command line (i.e. CCM20.EXE L1). See the COMMAND LINE PARAMETERS section of the help file for more information. Added the ability to turn the caption bar off on the Floating Dialog. A Right button click on the dialog will toggle it on or off, but remember that you can't move it when the caption is off! Version 2.8.2 08/23/95 Fixed the problem in 2.8.1 that caused the program to "Eat" INI files! Fixed the problem in 2.8.1 that prevented editing the connections when a new INI file was created. Version 2.8.3 09/04/95 Fixed the problem in 2.8.2 that prevented the Warning Interval from being saved in the INI file. Added a section to allow editing the Session Time and Today's Time. Version 2.8.4 10/28/95 Fixed a problem that prevented the daily reset time from being read from the INI file properly. Fixed a problem that caused the main dialog to be the topmost window, even if the configuration switch was off, when it is restored from the floating dialog. Fixed a problem that caused the CONFIG and EDIT dialogs to have the Topmost attribute, causing them to be on top of the help files and editor. Fixed a problem that prevented the Total Time and Prime Time from being reset properly when the [RESET] button was clicked. Fixed a problem that prevented the proper log file from being selected for editing when the [EDIT] button on the CONFIG/LOG dialog is clicked. Fixed a problem that prevented the INI file data for the CountDown function from loading properly. Fixed the inability to set initial Reset values. This was significant only when the CountDown ability was used since this function starts at a predefined value and counts toward zero. Fixed a problem that prevented the Today total from being reset properly if the timer was being used when the system clock crossed midnight. Moved the Config, Edit and About dialogs up 25 pixels if they were close to the bottom of the screen so they would be less covered by the taskbar of those running Win95. Changed the Log File Edit function so that, instead of using the default Notepad editor, it will use whatever editor is associated with .TXT files. This way, if you are using a different editor for Text files, it is the one that will be used for the log file. Added a Clipboard Capture function (thanks Derek!). SEE THE HELP FILE FOR PRECAUTIONS AND DETAILS!!! Completely revised the INI file to allow rewriting the connection times when log entries are made, preventing loss of connection data if the timer is not closed properly. Added a "Mini Batch File" capability to the [LAUNCH] command to allow executing more than one command. See the "Connection Configuration" section of the help file for more details. Version 2.8.4a 11/01/95 Fixed the problem in 2.8.4 that caused the fault when the reset activated. Version 2.8.5 11/12/95 This release is more to align releases than it is to add a lot of features. It is being released at the same time as the 32-bit version 3.0.2, and contains basically the same features with the exception ot the ability to start a Windows 95 Dial-Up Networking session. Fixed a problem that prevented the "All Days Are The Same" setting from being read from the INI file properly. Fixed the problem (again!) that prevents the main dialog from not being the top-most window when the Stay On Top switch is turned off. Fixed a problem (hopefully!) that prevented some programs from being "Launched" properly either by using the [LAUNCH] button or a Batch file. Version 2.8.6 12/17/95 Reworked the Help file jumps. Fixed the problem that prevented the text on the Floating Dialog from being displayed in red during a warning. Removed the dependency on TABC.DLL. Microsoft now includes a tab control of their own in the compiler, so the TABC.DLL control is no longer required. Change the terminology in the Help file so that the timer refers to its configurations as Setups in place of the older Connection term to prevent confusion with Windows 95 Dial-Up Connections. Fixed the problem that prevented the name of the clipboard capture file from being written to the INI file Fixed the problem that sometimes prevented the last file in a Batch file from being executed properly. Fixed the problem that prevented the resets from acting properly during the month of December. Fixed the problem (again!) that caused the CONFIG and EDIT dialogs to remain on top of all other windows when the Stay On Top flag is set. Added a check of the Windows date format, and use this format when writing the dates into the log file(s). Resolved the problem of the Floating Dialog always being the topmost window by putting an additional option on the DISPLAY page of the CONFIGURE dialog that will allow those who do not want it to be topmost to set it that way. Revised the Startup logic to make the program start a little more cleanly. This seems to have resolved some of the interference problems that a few people were having with DOS communications programs after the timer closes. Revised the code to hopefully reduce the resource requirements. Added a Daily Total warning. Added a "Carrier Delay" function. Added a Total Call counter for each Setup. This required a revision of the main dialog to accomodate the new information, and also a revision to the log file record format to accomodate the call count. Added a "Roundup" value so that people who have calls limited in multiples of seconds (i.e. 30 seconds minimum) will be able to set the minimum time. Added an Installation Program Added some additional message handlers to hopefully fix the problem of lost INI data if Windows is exited with the timer running. What's Next? Many of you who are using this software have provided many very interesting possibilities for additions and enhancements. Many of them have gone into this and previous versions, and I plan to hold to this policy. If there is something that you want added, or something that you don't like, let me know. I don't promise I'll add everything that is requested, nor do I promise I'll fix everything that you don't like, but I will give your ideas serious consideration. Here is a list of some of the things that people have suggested that will probably be added in future versions: Monthly / Weekly Sumaries - Several people have requested a summary of daily and weekly usage. A Daily summary was added to Version 2.8. I'll see what I can do about the Weekly and Monthly summaries. Stealth Mode - No display at all while the program is running. This would be nice for parents who want to keep track of how much time is spent "Online" without any outward indication that the monitoring is taking place. KNOWN PROBLEMS Ill be the first to admit that this program is not Bug-Free. Any programmer who claims that a program is 100% Bug-Free is far more confident than I as to the capability of ANY program to run properly on every combination of hardware and software. Following is a list of Known Problems with this program. I hate the term Known Problem because it seems to indicate that I know a problem exists, yet am not doing anything to resolve it. This is not true. Every problem that is brought to my attention GETS attention. Its just that some things are more difficult to find a solution to than others. Since June, this project has gotten about 20 hours a week (and this is in addition toa full-time job, a family, and about an hour a day answering E-mail). The problems will get solved, but some will take some time. General There appear to be some combinations of motherboards, serial ports, mouse drivers, and software that disagree with this timer. The symptoms are mouse "Lockups", or software that reports that the specified serial port is in use. There is a section in the Help file entitled "How CCM Detects A Carrier" that explains the method I use for detecting a carrier. The only resolution for the problem that I have been able to find so far is to not use the Auto Carrier Detect feature of the timer. While I readily admit that this pretty much defeats the purpose of an "Automatic" timer, I do not have any other solution at this time. Microcom The Microcom parallel port modems do not use the standard IBM-PC architecture to map EP Modems the serial port registers, rather they use their own Windows driver. This is the normal, approved method of handling hardware for Windows, and they have done an excellent job. My timer will not detect the carrier to one of these modems properly though. I was made aware of the problem, and am trying to find a way to resolve the problem without interferring with any other Windows communications software. Older Some older versions of CTL3DV2.DLL have been known to cause problems with the CTL3DV2 video, especially when the timer switches to or from an Icon. The version that I provide Files with the software is, to my knowledge, the latest available, and it has been the solution to several user's problems with video and 3D rendering. Windows 95 The only known problem running the timer under Windows 95 is that you will not be able to [LAUNCH] a Dial-up Networking connection. I have not yet been able to determine a way to start the Dial-up Networking connections from within the program. There is a 32- bit version available for Windows 95 that includes this feature. Long File Names are not supported. This should not be a problem since there are really no files associated with CCM. All other features of the program appear to work the same way as the do under 3.1 or 3.11 Windows NT The only known problem running the timer under Windows NT other than those mentioned above, is that it does not automatically detect the carrier properly. There are some 32-bit API functions I hope to be able use to resolve this problem. MY THANKS I have received a lot of E-mail from users of this software. Some of it good, some of it bad. To those of you who stuck it out through the bugs, my thanks. To all of you who sent me mail comments, good or bad, my thanks. To those who provided the ideas for most of the enhancements over the past month or so, my thanks. But most of all, to everyone who uses this software, and maybe gets a bit of enjoyment from it, my thanks! Plus, my very special thanks to the people who have helped with "Beta" testing this and previous releases. Their patience through all the bugs and problems really helped get things smoothed out faster. Without their patient help, this program would not be what it is today. The Beta testers for Version 2.8.6 and 3.0.3 were: * Don Moe * David Douglas * Thomas Kuenzli * Derek Pinton * Yigal Ayalon * Jack Van Duffelen * Martin Kirlow * Eric Sisler * Khoa Nguyen * Wilna Wellenbrink * Robert Small * Barry Trotter t sews ok$fb]YLUNQ]LI H I S v.rYmwid`[FWSmO}JI H } w s o k\!gq!c"_("[$W$S,O,K ,-w-s/o0ji5f}5bc6^w6Z ;V ;R]?Nr?J r?AwAsQoQk{RgRcES_[S[[W[S\O\K \^w^sgogkGjgPjcQj_`j[kW*kSlOlJ lTuwVurxnxi{|ePjcQj_`j[kW*kSlOlJXX X5&5555kW"=F$ "<F$ "X$XXXXX_XaXXXXXX[X"=F$ [X0XtXvXX?XXXX?XXXXX"=F$ X7XLXNX_X X X; XW X X X( XG XI X"=F$ I S X X XXXXXwXyXXXX|X~X"=F$ ~XXX4X6XEXGXXX\XXXXX"=F$ XXXHXJXXXX XX XBXkXmX"=F$ mX X X X XD!XZ!X\!X!X"X"Xx"X"X#X"=F$ #k#X $XW$X$X$X$X%X%X%X%X5&X&X&X'X"=F$ ''Xh'X'X'XK(X(X(X(X)X)Xc)Xp)Xr)X)X"=F$ ))X)X@*Xc*Xe*X*X+X.+X0+Xu+Xw+X+X+X+X"=F$ + ,XV,XX,X,X,X,X!-X4-X6-X-X-X-X-X-X"=F$ -A.XX.XZ.X.X.X.X/XZ/X^/X`/X/X/X/X50X"=F$ 500X0X1Xm1X1X 2Xd2X2X2X2XK3X{3X}3X3X"=F$ 34Xp4Xz4X|4X4X5Xg5Xi5X5X5X5X=6Xa6Xc6X"=F$ c66X7XD7XF7X7X7X8X 8XV8X8X8X9X9Xf9X"=F$ f9}9X9X9X:X:Xn:X:X:X:X ;X ;Xp;X;X<X"=F$ <j<X<X<X<X=XA=XC=X=X=X=X>X>Xb>Xv>X"=F$ v>x>X>X>X>XE?X[?X]?X?X @X8@X:@X@X@X@X"=F$ @AXJAXLAXAXAXAXAXAXEBXBXBXCXCXXCX"=F$ XCCXCXCXCXCX?DXpDXrDXDXEXZEX\EXEXEX"=F$ EFX FXqFXFXGXGXeGXGXGXGXKHXHXHXHX"=F$ H|XT|Xe|X"=F$ e|w|Xy|X{|X}|X{X{X{X{X |X|X.|X>|XT|Xe|X"=F$ f=/2$898(F$ {{X.X.X/XZ/X^/X`/X/X/X/X50X"=F$ Times New Roman ArialX 2Xd2X2X2X2XK3X{3X}3X3X"=F$