Click here for an overview of the Compass Users Group Archives:
Messsage #: 44
Date: Fri, 19 Jan 2007 00:10:09 -0000 From: "macjc11" Subject: EZ Compass 3A I am wondering if anybody from the compass-users have experience using EZ Compass 3A. I am presently using a LabVIEW Programming Software and wanted to create an interface software. Thanks for any help.
Messsage #: 45
Date: Thu, 18 Jan 2007 20:11:53 -0700 From: Paul Jorgenson KE7HR Subject: Re: [compass-users] EZ Compass 3A I have no direct use of this device, but it appears to put out a simle NMEA text stream with the data. See the documentation at: http://www.aositilt.com/APPCOMP3A%20user%20manual.pdf Just use a serial stream, receive the data into a buffer, and then parse the NMEA lines you wish to have data from. I have written several NMEA parsers in BASIC and Visual Basic. Anything that can parse text strings should work. Good luck. Paul KE7HR (remotely) I am wondering if anybody from the compass-users have experience using EZ Compass 3A. I am presently using a LabVIEW Programming Software and wanted to create an interface software. Thanks for any help.
Messsage #: 46
Date: Mon, 30 Apr 2007 07:53:45 -0700 (PDT) From: "Jean Krejca, Ph.D." Subject: distance to entrance Greetings, Has anyone used the 'distance from entrance' feature successfully? My cave is in a single .dat file which I'm using to determine distances from the entrance where some cave species are found for a cave life study. The distances all say "0" when I display them or when I go to them in the "find station" window. I've swam around the help menu and webpage quite a bit with no luck. Any ideas? thanks, Creature Greetings, Has anyone used the 'distance from entrance' feature successfully? My cave is in a single .dat file which I'm using to determine distances from the entrance where some cave species are found for a cave life study. The distances all say "0" when I display them or when I go to them in the "find station" window. I've swam around the help menu and webpage quite a bit with no luck. Any ideas? thanks, Creature
Messsage #: 47
Date: Mon, 30 Apr 2007 14:30:36 -0600 From: "Larry Fish" Subject: RE: [compass-users] distance to entrance Jean, I have a few of thoughts about why you might not be able to use the "Distance" feature. The most likely cause is that the Compass "Plot" file for the cave has not been updated since you installed the newest version of Compass. The necessary information is contained in the PLT files and old versions of Compass do not insert the distances. Compass won't automatically recompile a cave survey file when install a new version. In fact, it will only automatically recompile if the "DAT" file has changed. To force it to recompile, select the "Always" option under the "Compile When" section of the "Project Manager" and press the "Process and View Cave" option. That will recompile the cave, putting the necessary information in the plot file. If that doesn't work, it is possible that there is some conflict with PLT files. If you have several different copies of your survey data on your computer, it may be that the Compass Viewer is displaying an old copy of the plot file. This can happen if you are running the Viewer directly without going through the Project Manager. One way to solve the problem is to consolidate your versions of the data, so there is only one copy so program can't get confused about which version you are working with. I have also seen it happen a few times where the "PLT" file is "Write Protected" and so the compiler cannot overwrite the old file with a newly compiled one. The Compiler now has the ability to un-protect plot files, but under certain circumstances, the operating system won't allow changing the file attributes. To solve this problem, try deleting the associated PLT file(s) manually and then recompiling the data. If these options do not work, there may be some other anomaly in your survey data. If you want, you can send me a copy of the data and I can look it. Send it to this address: [email protected]. Larry Fish _____ From: [email protected] [mailto:[email protected]] On Behalf Of Jean Krejca, Ph.D. Sent: Monday, April 30, 2007 8:54 AM Subject: [compass-users] distance to entrance Greetings, Has anyone used the 'distance from entrance' feature successfully? My cave is in a single .dat file which I'm using to determine distances from the entrance where some cave species are found for a cave life study. The distances all say "0" when I display them or when I go to them in the "find station" window. I've swam around the help menu and webpage quite a bit with no luck. Any ideas? thanks, Creature v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} st1\:*{behavior:url(#default#ieooui) }
Messsage #: 48
Date: Sun, 20 May 2007 10:09:25 -0000 From: "bikerguy1927" Subject: Handsome and Cool Bikers looking for fun! Handsome and Cool Bikers looking for fun! Chat with them here: http://coolbiker0187.googlepages.com/bikerboyz.htm From [email protected] Wed May 30 05:39:18 2007
Messsage #: 49
Date: Wed, 30 May 2007 14:44:14 -0600 From: "Larry Fish" Subject: New Features/Progress report I thought that this would be a good time to give everybody an update on Compass. I have finally added the "Developed Profile" feature that people have been requesting for several years. I'm calling it an "Unfolded Profile" because I think it is more descriptive. There is a description of the newest features on the web site: http://www.fountainware.com/compass/ There are several options for the new feature. In the simplest mode, the azimuth for every shot is set to a fixed angle. This will make every passage run in the same direction, which is good for making simple, clear profiles of ascending and descending passages. On the other hand, this option produces the most distortion of the cave plot. In the other mode, the azimuth of each passage is set to angle the one nearest the angle of the vertical plane that was used to flatten the cave. In other words, it will be set the azimuth to the angle of the plane or the 180 degrees from the angle of the plane depending on which is nearest the original azimuth. The angle of the plane is selectable, which allows you to get different profiles that make some passages easier to see. In some cases, this mode will produce a zigzagging profile, but the overall cave plot will be less distorted. I'm still working on other new features, but I haven't had a lot of time this year. My hard drive crash the day after Christmas 2006 and I have spent months recovering from the disaster. I think the crash was caused by a power surge, because it also wiped out some of my backup files on my Linux server. As a result, I lost almost two months of work. Fortunately, none of the Compass source files were lost, but two months of work for one of my clients was lost. I spent two months re-writing all the code I had produce in November and December. That put me two months behind on all the other work I needed to do. I have been working over time since then trying to catch up. I hope to be back to normal by the end of the summer. Needless to say, I now have a new, more rigorous backup system. I used to do backup daily to my Linux server and make CDs and DVDs about once a month. Since the power surge took my main computer and the backup, I decided that it was very important to have an off-site backup system. I finally chose a company called Carbonite, which automatically backs up your files over the internet the minute they change. I think it works great. It took about two days for it to do the initial backup of about 2-gigabytes of files. From that point on, it only backed when a file changed. The backup process is completely painless; it only operates when the computer is idle, and it doesn't slow down your computer even the tiniest amount. I never even notice that it is working. If you have a broadband connection, it is only $50 a year and it is the ideal way to keep yourself safe. If anyone is interested, let me know - I get a free month of service for everyone that signs up through me. There is a 15 day free trial that will let you test it to see if it meets your needs. Larry
Messsage #: 50
Date: Thu, 31 May 2007 22:35:20 +0200 From: "Paul De Bie" Subject: RE: [compass-users] New Features/Progress report Hi Larry, I would like to express my thanks and admiration for all the work you do and have done for the caving community... and that even after such a disastrous computer crash! The new "Unfolded Profile" is indeed something we have been waiting for for a long time. I haven't looked at it yet, but I was wondering how you deal with loops? Do you break up the loop or what? Another new option that I like a lot is the "distance to entrance" . But could you provide a possibility to set the actual beginning of the measurements? The entrance, in fact. When using a project (MAK), I guess it will start with the Base Location (if set). Correct? But what if only using a DAT file? I think it will start with the first shot. But that could be anything, in some cases the survey even starts a long way in the cave. It would also help that, when the "Display Entrance Distance" in the viewer is turned on, you could see where the zero-point is. By means of an icon, or something. It would even be better if we could set that zero-point dynamically. In case of multiple-entrance caves, it could be very interesting to be able to compare the distances from the entrances to a common point (the bottom, for instance). Or for measuring the length of a through-trip from entrance A to B. regards, PS: about your hard-drive: why don't you buy a USB external drive? They cost virtually nothing these days. say for 150-200 USD you've got a 300 GB drive. Buy yourself Norton Ghost too and you don't have to worry a lot about your backups anymore. The drive can be unplugged when you don't need it, which will make it a true offline backup medium. I would never rely on a slow backupsystem over the Internet, with only a couple of gigabyte of storage (it is nothing these days, where people are having thousands of photos and music files on their PC's). Just my 2 c. Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon.be _____ From: [email protected] [mailto:[email protected]] On Behalf Of Larry Fish Sent: Wednesday, May 30, 2007 10:44 PM Subject: [compass-users] New Features/Progress report I thought that this would be a good time to give everybody an update on Compass. I have finally added the "Developed Profile" feature that people have been requesting for several years. I'm calling it an "Unfolded Profile" because I think it is more descriptive. There is a description of the newest features on the web site: http://www.fountainware.com/compass/ There are several options for the new feature. In the simplest mode, the azimuth for every shot is set to a fixed angle. This will make every passage run in the same direction, which is good for making simple, clear profiles of ascending and descending passages. On the other hand, this option produces the most distortion of the cave plot. In the other mode, the azimuth of each passage is set to angle the one nearest the angle of the vertical plane that was used to flatten the cave. In other words, it will be set the azimuth to the angle of the plane or the 180 degrees from the angle of the plane depending on which is nearest the original azimuth. The angle of the plane is selectable, which allows you to get different profiles that make some passages easier to see. In some cases, this mode will produce a zigzagging profile, but the overall cave plot will be less distorted. I'm still working on other new features, but I haven't had a lot of time this year. My hard drive crash the day after Christmas 2006 and I have spent months recovering from the disaster. I think the crash was caused by a power surge, because it also wiped out some of my backup files on my Linux server. As a result, I lost almost two months of work. Fortunately, none of the Compass source files were lost, but two months of work for one of my clients was lost. I spent two months re-writing all the code I had produce in November and December. That put me two months behind on all the other work I needed to do. I have been working over time since then trying to catch up. I hope to be back to normal by the end of the summer. Needless to say, I now have a new, more rigorous backup system. I used to do backup daily to my Linux server and make CDs and DVDs about once a month. Since the power surge took my main computer and the backup, I decided that it was very important to have an off-site backup system. I finally chose a company called Carbonite, which automatically backs up your files over the internet the minute they change. I think it works great. It took about two days for it to do the initial backup of about 2-gigabytes of files. From that point on, it only backed when a file changed. The backup process is completely painless; it only operates when the computer is idle, and it doesn't slow down your computer even the tiniest amount. I never even notice that it is working. If you have a broadband connection, it is only $50 a year and it is the ideal way to keep yourself safe. If anyone is interested, let me know - I get a free month of service for everyone that signs up through me. There is a 15 day free trial that will let you test it to see if it meets your needs. Larry @font-face { font-family: Wingdings; } @page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; } #YGRP-MLMSG { FONT-WEIGHT: normal; FONT-SIZE: x-small; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal } #YGRP-MLMSG TABLE { } #YGRP-MLMSG PRE { FONT-SIZE: 100% } CODE { FONT-SIZE: 100% } #ygrp-mlmsg * { LINE-HEIGHT: 1.22em } #YGRP-ACTBAR .LEFT { FLOAT: left } #YGRP-VITAL UL LI .CT { FLOAT: right } #ygrp-vital A:hover { TEXT-DECORATION: underline } #ygrp-sponsor .ad A:hover { TEXT-DECORATION: underline } o { FONT-SIZE: 0px } P.MsoNormal { FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman" } LI.MsoNormal { FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman" } DIV.MsoNormal { FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman" } A:link { COLOR: blue; TEXT-DECORATION: underline } SPAN.MsoHyperlink { COLOR: blue; TEXT-DECORATION: underline } A:visited { COLOR: blue; TEXT-DECORATION: underline } SPAN.MsoHyperlinkFollowed { COLOR: blue; TEXT-DECORATION: underline } P { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } CODE { FONT-FAMILY: "Courier New" } PRE { FONT-SIZE: 10pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Courier New" } TT { FONT-FAMILY: "Courier New" } P.left1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left9 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left9 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left9 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left10 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left10 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left10 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left11 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left11 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left11 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left12 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left12 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left12 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left13 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left13 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left13 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left14 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left14 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left14 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left15 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left15 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left15 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left16 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left16 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left16 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left17 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left17 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left17 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left18 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left18 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left18 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left19 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left19 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left19 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left20 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left20 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left20 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left21 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left21 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left21 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left22 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left22 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left22 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left23 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left23 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left23 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left24 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left24 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left24 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left25 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left25 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left25 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left26 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left26 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left26 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left27 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left27 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left27 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left28 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left28 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left28 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left29 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left29 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left29 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left30 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left30 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left30 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left31 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left31 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left31 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left32 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left32 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left32 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left33 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left33 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left33 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left34 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left34 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left34 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left35 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left35 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left35 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left36 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left36 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left36 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld18 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld18 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld18 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left37 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left37 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left37 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left38 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left38 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left38 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld19 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld19 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld19 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left39 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left39 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left39 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left40 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left40 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left40 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld20 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld20 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld20 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left41 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left41 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left41 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left42 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left42 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left42 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld21 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld21 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld21 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left43 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left43 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left43 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left44 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left44 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left44 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld22 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld22 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld22 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left45 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left45 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left45 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left46 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left46 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left46 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld23 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld23 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld23 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left47 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left47 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left47 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left48 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left48 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left48 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld24 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld24 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld24 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left49 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left49 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left49 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left50 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left50 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left50 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld25 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld25 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld25 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.replbq { FONT-SIZE: 12pt; MARGIN: 3pt; FONT-FAMILY: "Times New Roman" } LI.replbq { FONT-SIZE: 12pt; MARGIN: 3pt; FONT-FAMILY: "Times New Roman" } DIV.replbq { FONT-SIZE: 12pt; MARGIN: 3pt; FONT-FAMILY: "Times New Roman" } P.left51 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left51 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left51 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left52 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left52 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left52 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } SPAN.EmailStyle145 { COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal-reply } DIV.Section1 { page: Section1 } OL { MARGIN-BOTTOM: 0in } UL { MARGIN-BOTTOM: 0in } Hi Larry, I would like to express my thanks and admiration for all the work you do and have done for the caving community... and that even after such a disastrous computer crash! The new "Unfolded Profile" is indeed something we have been waiting for for a long time. I haven't looked at it yet, but I was wondering how you deal with loops? Do you break up the loop or what? Another new option that I like a lot is the "distance to entrance" . But could you provide a possibility to set the actual beginning of the measurements? The entrance, in fact. When using a project (MAK), I guess it will start with the Base Location (if set). Correct? But what if only using a DAT file? I think it will start with the first shot. But that could be anything, in some cases the survey even starts a long way in the cave. It would also help that, when the "Display Entrance Distance" in the viewer is turned on, you could see where the zero-point is. By means of an icon, or something. It would even be better if we could set that zero-point dynamically. In case of multiple-entrance caves, it could be very interesting to be able to compare the distances from the entrances to a common point (the bottom, for instance). Or for measuring the length of a through-trip from entrance A to B. regards, PS: about your hard-drive: why don't you buy a USB external drive? They cost virtually nothing these days. say for 150-200 USD you've got a 300 GB drive. Buy yourself Norton Ghost too and you don't have to worry a lot about your backups anymore. The drive can be unplugged when you don't need it, which will make it a true offline backup medium. I would never rely on a slow backupsystem over the Internet, with only a couple of gigabyte of storage (it is nothing these days, where people are having thousands of photos and music files on their PC's). Just my 2 c. Paul De BieSpeleoclub Avalon vzw - BELGIEhttp://www.scavalon.be From: [email protected] [mailto:[email protected]] On Behalf Of Larry FishSent: Wednesday, May 30, 2007 10:44 PMTo: [email protected]: [compass-users] New Features/Progress report I thought that this would be a good time to give everybody an update on Compass. I have finally added the "Developed Profile" feature that people have been requesting for several years. I'm calling it an "Unfolded Profile" because I think it is more descriptive. There is a description of the newest features on the web site: http://www.fountainware.com/compass/ There are several options for the new feature. In the simplest mode, the azimuth for every shot is set to a fixed angle. This will make every passage run in the same direction, which is good for making simple, clear profiles of ascending and descending passages. On the other hand, this option produces the most distortion of the cave plot. In the other mode, the azimuth of each passage is set to angle the one nearest the angle of the vertical plane that was used to flatten the cave. In other words, it will be set the azimuth to the angle of the plane or the 180 degrees from the angle of the plane depending on which is nearest the original azimuth. The angle of the plane is selectable, which allows you to get different profiles that make some passages easier to see. In some cases, this mode will produce a zigzagging profile, but the overall cave plot will be less distorted. I'm still working on other new features, but I haven't had a lot of time this year. My hard drive crash the day after Christmas 2006 and I have spent months recovering from the disaster. I think the crash was caused by a power surge, because it also wiped out some of my backup files on my Linux server. As a result, I lost almost two months of work. Fortunately, none of the Compass source files were lost, but two months of work for one of my clients was lost. I spent two months re-writing all the code I had produce in November and December. That put me two months behind on all the other work I needed to do. I have been working over time since then trying to catch up. I hope to be back to normal by the end of the summer. Needless to say, I now have a new, more rigorous backup system. I used to do backup daily to my Linux server and make CDs and DVDs about once a month. Since the power surge took my main computer and the backup, I decided that it was very important to have an off-site backup system. I finally chose a company called Carbonite, which automatically backs up your files over the internet the minute they change. I think it works great. It took about two days for it to do the initial backup of about 2-gigabytes of files. From that point on, it only backed when a file changed. The backup process is completely painless; it only operates when the computer is idle, and it doesn't slow down your computer even the tiniest amount. I never even notice that it is working. If you have a broadband connection, it is only $50 a year and it is the ideal way to keep yourself safe. If anyone is interested, let me know - I get a free month of service for everyone that signs up through me. There is a 15 day free trial that will let you test it to see if it meets your needs. Larry
Messsage #: 51
Date: Fri, 1 Jun 2007 05:10:24 -0600 From: "Larry Fish" Subject: RE: [compass-users] New Features/Progress report Paul, I haven't looked at it yet, but I was wondering how you deal with loops? Do you break up the loop or what? That's a good question. I hadn't even thought of them. At this point if you don't close the loop, a large offset will occur at the closing station. If you do close the loops, the offset is distributed throughout the loop. I probably should break the loop, but the question would be: what is the best place? Hopefully most of the caves where the profiles are need don't have many loops. Another new option that I like a lot is the "distance to entrance" . But could you provide a possibility to set the actual beginning of the measurements? The entrance, in fact. All your suggestions, like setting entrance the entrance position etc. will have to wait until I come out with the new data format. The old one really doesn't have room for the data that is necessary for the feature. By the way, I have a lot of the code written for the new format and I have some exciting new ideas for making it easier to edit and organize surveys. For example, I want to be able to drag and drop surveys, files and shots from place to place in the project. Unfortunately, that will have to wait for a couple of months since I'm behind on three projects for clients as a result of the disk crash. PS: about your hard-drive: why don't you buy a USB external drive? They cost virtually nothing these days. say for 150-200 USD you've got a 300 GB drive. Yes I immediately bought a 250 gig USB hard drive and I run automated daily and weekly backups to it. However, since both my main computer and the backup server got hit by the power surge, I realized that I was vulnerable to anything that could hit my house - like lightening, fire, meteor impact. :-) I would never rely on a slow backupsystem over the Internet, with only a couple of gigabyte of storage (it is nothing these days, where people are having thousands of photos and music files on their PC's). Actually, the storage is unlimited. I just chose a specific subset of my files that were the most crucial to my work because I thought maybe the speed would be a problem. I'm not sure it would be. Once it completes the initial backup, the program chips away at the new files as you work. It is really amazing how much time you spend just sitting there without the computer doing anything. Even when I'm working hard, I probably don't' average more than five or ten new files every hour and it keeps up with that just fine. Maybe if you were video editing and making lots of copies as work, it would be a problem. But even then, it would be backing up while you were editing in memory and viewing the play back. At any rate, it is completely painless and I'm never even aware of it working. Larry_
Messsage #: 52
Date: Tue, 5 Jun 2007 19:01:13 +0200 From: "Paul De Bie" Subject: Converting from PLT file? Hi Larry, is it somehow possible to convert from a PLT file to a DAT file? You don't have some little tool for that? I need to convert a big survey file which was made in Visual Topo. This program has an export possibility to Compass PLT. But I really need the survey data to be able to continue in the future with this survey. TIA Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon.be
Messsage #: 53
Date: Tue, 05 Jun 2007 18:51:47 -0400 From: Christian Chenier Subject: Re: [compass-users] Converting from PLT file? Hi Paul, One method for going from VisualTopo to Compass would be to go through Auriga (www.speleo.qc.ca/auriga) . The Auriga Conduit can input and output both the Visual Topo and Compass formats. I also wrote a quick converter a few years back to bring some VTopo data into Compass, but it was very specific to my needs at the time and for this reason never published it. (The data format for both VTopo and Compass is rather straightforward, so a converter was not too hard to write.) Notice that VTopo can also copy & paste to Excel (but this needs to be done one "session" ("survey") at a time. Maybe there's a quick way to get Excel data into Compass? Chris At 13:01 2007-06-05, Paul De Bie wrote: Hi Larry, is it somehow possible to convert from a PLT file to a DAT file? You don't have some little tool for that? I need to convert a big survey file which was made in Visual Topo. This program has an export possibility to Compass PLT. But I really need the survey data to be able to continue in the future with this survey. TIA Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon.be Christian Ch�nier Gatineau (Qu�bec), Canada (819) 772-8824 Hi Paul, One method for going from VisualTopo to Compass would be to go through Auriga ( www.speleo.qc.ca/auriga) . The Auriga Conduit can input and output both the Visual Topo and Compass formats. I also wrote a quick converter a few years back to bring some VTopo data into Compass, but it was very specific to my needs at the time and for this reason never published it. (The data format for both VTopo and Compass is rather straightforward, so a converter was not too hard to write.) Notice that VTopo can also copy & paste to Excel (but this needs to be done one "session" ("survey") at a time. Maybe there's a quick way to get Excel data into Compass? Chris At 13:01 2007-06-05, Paul De Bie wrote: Hi Larry, is it somehow possible to convert from a PLT file to a DAT file? You don't have some little tool for that? I need to convert a big survey file which was made in Visual Topo. This program has an export possibility to Compass PLT. But I really need the survey data to be able to continue in the future with this survey. TIA Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon.be Christian Ch�nier Gatineau (Qu�bec), Canada (819) 772-8824
Messsage #: 54
Date: Wed, 6 Jun 2007 17:57:37 +0200 From: "Paul De Bie" Subject: RE: [compass-users] Converting from PLT file? Hi Chris, I know the Compass format quite well, I have also written a converter from a specific Text format to Compass, from Compass to Onstation etc (you can find it here, but I should translate it in English one day): http://www.scavalon.be/avalonnl/software/convert.htm As for VTopo: it's easy to get to the raw data (Excel, or even Notepad :-) but it is not immediately useable and it needs a lot of slow manual work. I've been through it several times... One problem is that in VTopo the passage dimensions are mesured at the FROM station and not at the (more conventional) TO station. So that makes it already a big hassle if you want to copy/paste the raw data into some Compass-like textformat: you have to shift all LRUD data to their correct stations... But, if you use the PLT export option in VTopo, then it seems to take this into account (should check it again to be sure). That's why I wondered if one could use to PLT file to recalculate the shot data: then the passage dimensions would be adjusted to the correct shots. Auriga: I don't know if it takes these "shifted" passage dimensions into account or not when converting to Compass. I will send a copy of this message to Luc Leblanc... Anyway I don't have a Palm computer so I'm afraid this won't help me out. Another awkward thing in VTopo is that in pits, the "UP"/Down dimension is the height/depth of the pit. Which is wrong, dimensions are what they are: the dimensions of the passage, measured in a PERPENDICULAR way around the station. They should represent the diameter of the pit, not its total height/depth. We are exploring at the Pierre-St-Martin area and each time our French friends have surveyed in "VTopo-style" I have to correct all LRUD data. Because you get stuff like A1 A2 12.23 180 -83 3.0 2.0 60.0 30.0 - A downwards measure in the middle of a nearly vertical 90 m pit but the up/down is wrong. It should have been something like 4.0 3.5 (in a pit 7.5 m wide). However, VTopo will draw the passage dimensions correctly, so in my opinion it is already screwed up in the program itself. Personally I don't understand why Eric David (the author of VTopo) has chosen to export to PLT and not to DAT... PLT is not a surveying format; it is an intermediate format only used by the Compass/CaveX viewer... ciao Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon.be _____ From: [email protected] [mailto:[email protected]] On Behalf Of Christian Chenier Sent: Wednesday, June 06, 2007 12:52 AM Subject: Re: [compass-users] Converting from PLT file? Hi Paul, One method for going from VisualTopo to Compass would be to go through Auriga ( www.speleo.qc.ca/auriga) . The Auriga Conduit can input and output both the Visual Topo and Compass formats. I also wrote a quick converter a few years back to bring some VTopo data into Compass, but it was very specific to my needs at the time and for this reason never published it. (The data format for both VTopo and Compass is rather straightforward, so a converter was not too hard to write.) Notice that VTopo can also copy & paste to Excel (but this needs to be done one "session" ("survey") at a time. Maybe there's a quick way to get Excel data into Compass? Chris At 13:01 2007-06-05, Paul De Bie wrote: Hi Larry, is it somehow possible to convert from a PLT file to a DAT file? You don't have some little tool for that? I need to convert a big survey file which was made in Visual Topo. This program has an export possibility to Compass PLT. But I really need the survey data to be able to continue in the future with this survey. TIA Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon.be Christian Ch�nier Gatineau (Qu�bec), Canada (819) 772-8824 Hi Chris, I know the Compass format quite well, I have also written a converter from a specific Text format to Compass, from Compass to Onstation etc (you can find it here, but I should translate it in English one day): http://www.scavalon.be/avalonnl/software/convert.htm As for VTopo: it's easy to get to the raw data (Excel, or even Notepad :-) but it is not immediately useable and it needs a lot of slow manual work. I've been through it several times... One problem is that in VTopo the passage dimensions are mesured at the FROM station and not at the (more conventional) TO station. So that makes it already a big hassle if you want to copy/paste the raw data into some Compass-like textformat: you have to shift all LRUD data to their correct stations... But, if you use the PLT export option in VTopo, then it seems to take this into account (should check it again to be sure). That's why I wondered if one could use to PLT file to recalculate the shot data: then the passage dimensions would be adjusted to the correct shots. Auriga: I don't know if it takes these "shifted" passage dimensions into account or not when converting to Compass. I will send a copy of this message to Luc Leblanc... Anyway I don't have a Palm computer so I'm afraid this won't help me out. Another awkward thing in VTopo is that in pits, the "UP"/Down dimension is the height/depth of the pit. Which is wrong, dimensions are what they are: the dimensions of the passage, measured in a PERPENDICULAR way around the station. They should represent the diameter of the pit, not its total height/depth. We are exploring at the Pierre-St-Martin area and each time our French friends have surveyed in "VTopo-style" I have to correct all LRUD data. Because you get stuff like A1 A2 12.23 180 -83 3.0 2.0 60.0 30.0 -> A downwards measure in the middle of a nearly vertical 90 m pit but the up/down is wrong. It should have been something like 4.0 3.5 (in a pit 7.5 m wide). However, VTopo will draw the passage dimensions correctly, so in my opinion it is already screwed up in the program itself. Personally I don't understand why Eric David (the author of VTopo) has chosen to export to PLT and not to DAT... PLT is not a surveying format; it is an intermediate format only used by the Compass/CaveX viewer... ciao Paul De BieSpeleoclub Avalon vzw - BELGIEhttp://www.scavalon.be From: [email protected] [mailto:[email protected]] On Behalf Of Christian ChenierSent: Wednesday, June 06, 2007 12:52 AMTo: [email protected]: Re: [compass-users] Converting from PLT file? Hi Paul, One method for going from VisualTopo to Compass would be to go through Auriga ( www.speleo.qc.ca/auriga) . The Auriga Conduit can input and output both the Visual Topo and Compass formats. I also wrote a quick converter a few years back to bring some VTopo data into Compass, but it was very specific to my needs at the time and for this reason never published it. (The data format for both VTopo and Compass is rather straightforward, so a converter was not too hard to write.) Notice that VTopo can also copy & paste to Excel (but this needs to be done one "session" ("survey") at a time. Maybe there's a quick way to get Excel data into Compass?ChrisAt 13:01 2007-06-05, Paul De Bie wrote: Hi Larry,is it somehow possible to convert from a PLT file to a DAT file?You don't have some little tool for that?I need to convert a big survey file which was made in Visual Topo. This program has an exportpossibility to Compass PLT.But I really need the survey data to be able to continue in the future with this survey. TIAPaul De BieSpeleoclub Avalon vzw - BELGIEhttp://www.scavalon.be --------------------------------------------Christian Ch�nierGatineau (Qu�bec), Canada(819) 772-8824
Messsage #: 55
Date: Wed, 6 Jun 2007 15:04:33 -0600 From: "Larry Fish" Subject: RE: [compass-users] Converting from PLT file? Sorry I didn't get back to you earlier. I have been in and out for the past couple of days. I don't have a program that will directly convert a PLT file into a Compass DAT file. The closest I have is a very old DOS program that allows you to enter Cartesian coordinates and will create the corresponding Compass "DAT" file. To convert a Compass PLT file with it, you would need to open the PLT file in a text editor and look at the X,Y,Z coordinates for each station and enter them in the program. It would be time consuming, but it would work. If the files is very big (as you describe), it is probably not a useful solution. You can find a copy here, in case that seems like a viable option: http://www.fountainware.com/download/CART2CSS.zip Since the PLT, plot file is in Cartesian coordinates, I wonder if it wouldn't be easier to use the VTopo input file. I don't know anything about VTopo, but it seems like at some point they must have entered the data as Azimuth, Length and Inclination. That would be easier to convert although I don't know of any program that would do it. I don't know if anyone has checked, but a lot of programs support the SEF export format for exchanging with other programs. If VTopo did, Compass can import SEF data. Also, there might be another path. The program "Rosetta Stal" is designed to be a kind of Rosetta Stone for a variety file formats. It will import 11 different formats. None of them are VTopo formats, but if you could find a way to get the VTopo data into one of those formats, that would solve the problem. You can find VTopo here: http://www.resurgentsoftware.com/rosettastal.htm Larry _____ From: [email protected] [mailto:[email protected]] On Behalf Of Paul De Bie Sent: Tuesday, June 05, 2007 11:01 AM Subject: [compass-users] Converting from PLT file? Hi Larry, is it somehow possible to convert from a PLT file to a DAT file? You don't have some little tool for that? I need to convert a big survey file which was made in Visual Topo. This program has an export possibility to Compass PLT. But I really need the survey data to be able to continue in the future with this survey. TIA Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon .be v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} st1\:*{behavior:url(#default#ieooui) }
Messsage #: 56
Date: Wed, 6 Jun 2007 23:17:20 -0400 From: Luc Le Blanc Subject: RE: [compass-users] Converting from PLT file? Selon Paul De Bie : One problem is that in VTopo the passage dimensions are mesured at the FROM station and not at the (more conventional) TO station. So that makes it already a big hassle if you want to copy/paste the raw data into some Compass-like textformat: you have to shift all LRUD data to their correct stations... But, if you use the PLT export option in VTopo, then it seems to take this into account (should check it again to be sure). That's why I wondered if one could use to PLT file to recalculate the shot data: then the passage dimensions would be adjusted to the correct shots. Auriga: I don't know if it takes these "shifted" passage dimensions into account or not when converting to Compass. I will send a copy of this message to Luc Leblanc... Auriga allows dimensions to be set at either station of each survey shot. If you upload a VTopo file into Auriga, the conduit should thus set the LRUDs to the the start (from) station. It is then possible to change that in Auriga before you download the data into Compass, but there currently is no quick method to do it all at once in Auriga (I'm currently working on such mass changes). Anyway I don't have a Palm computer so I'm afraid this won't help me out. Actually, if you install POSE (Palm OS Emulator), you can try Auriga on your PC and even run the conduit on it. You can get a POSE executable pre-loaded with Auriga through the Download page of the Auriga Web site : http://www.speleo.qc.ca/Auriga Personally I don't understand why Eric David (the author of VTopo) has chosen to export to PLT and not to DAT... Did you ask him? If �ric gets as little feedback as I do for Auriga, he'd have to read minds to guess what people would prefer... Luc Le Blanc
Messsage #: 57
Date: Thu, 7 Jun 2007 18:49:20 +0200 From: "Paul De Bie" Subject: RE: [compass-users] Converting from PLT file? Hi Larry, thanks for the offer but it will be quicker to use the VT data. Actually the data format is a simple text file, Compass style if you like. That's what I like so much about text files: you can always get away with them (I've told you my objections against your XML project :-) ) I will first ask the author of VT to see what he can do. If he doesn't move, I'll write the convertor myself; Not such a big deal if it weren't for those bloody passage dimensions that have all got to go to the correct shots. I know about and sometimes use Rosettastal but it can't help me out here. regards Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon.be _____ From: [email protected] [mailto:[email protected]] On Behalf Of Larry Fish Sent: Wednesday, June 06, 2007 11:05 PM Subject: RE: [compass-users] Converting from PLT file? Sorry I didn't get back to you earlier. I have been in and out for the past couple of days. I don't have a program that will directly convert a PLT file into a Compass DAT file. The closest I have is a very old DOS program that allows you to enter Cartesian coordinates and will create the corresponding Compass "DAT" file. To convert a Compass PLT file with it, you would need to open the PLT file in a text editor and look at the X,Y,Z coordinates for each station and enter them in the program. It would be time consuming, but it would work. If the files is very big (as you describe), it is probably not a useful solution. You can find a copy here, in case that seems like a viable option: http://www.fountainware.com/download/CART2CSS.zip Since the PLT, plot file is in Cartesian coordinates, I wonder if it wouldn't be easier to use the VTopo input file. I don't know anything about VTopo, but it seems like at some point they must have entered the data as Azimuth, Length and Inclination. That would be easier to convert although I don't know of any program that would do it. I don't know if anyone has checked, but a lot of programs support the SEF export format for exchanging with other programs. If VTopo did, Compass can import SEF data. Also, there might be another path. The program "Rosetta Stal" is designed to be a kind of Rosetta Stone for a variety file formats. It will import 11 different formats. None of them are VTopo formats, but if you could find a way to get the VTopo data into one of those formats, that would solve the problem. You can find VTopo here: http://www.resurgentsoftware.com/rosettastal.htm Larry v\:* { BEHAVIOR: url(#default#VML) } o\:* { BEHAVIOR: url(#default#VML) } w\:* { BEHAVIOR: url(#default#VML) } .shape { BEHAVIOR: url(#default#VML) } st1\:* { BEHAVIOR: url(#default#ieooui) } @font-face { font-family: Wingdings; } @font-face { font-family: Tahoma; } @page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; } #YGRP-MLMSG { FONT-WEIGHT: normal; FONT-SIZE: x-small; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal } #YGRP-MLMSG TABLE { } #YGRP-MLMSG PRE { FONT-SIZE: 100% } CODE { FONT-SIZE: 100% } #ygrp-mlmsg * { LINE-HEIGHT: 1.22em } #YGRP-ACTBAR .LEFT { FLOAT: left } #YGRP-VITAL UL LI .CT { FLOAT: right } #ygrp-vital A:hover { TEXT-DECORATION: underline } #ygrp-sponsor .ad A:hover { TEXT-DECORATION: underline } o { FONT-SIZE: 0px } P.MsoNormal { FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman" } LI.MsoNormal { FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman" } DIV.MsoNormal { FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman" } A:link { COLOR: blue; TEXT-DECORATION: underline } SPAN.MsoHyperlink { COLOR: blue; TEXT-DECORATION: underline } A:visited { COLOR: blue; TEXT-DECORATION: underline } SPAN.MsoHyperlinkFollowed { COLOR: blue; TEXT-DECORATION: underline } P { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } CODE { FONT-FAMILY: "Courier New" } PRE { FONT-SIZE: 10pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Courier New" } TT { FONT-FAMILY: "Courier New" } P.left1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left9 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left9 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left9 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left10 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left10 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left10 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left11 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left11 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left11 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left12 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left12 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left12 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left13 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left13 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left13 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left14 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left14 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left14 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left15 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left15 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left15 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left16 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left16 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left16 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left17 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left17 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left17 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left18 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left18 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left18 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left19 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left19 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left19 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left20 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left20 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left20 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left21 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left21 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left21 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left22 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left22 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left22 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat1 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left23 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left23 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left23 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left24 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left24 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left24 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left25 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left25 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left25 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left26 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left26 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left26 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat3 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left27 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left27 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left27 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left28 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left28 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left28 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat4 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left29 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left29 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left29 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left30 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left30 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left30 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat5 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left31 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left31 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left31 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left32 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left32 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left32 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat6 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left33 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left33 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left33 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left34 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left34 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left34 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat7 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left35 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left35 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left35 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left36 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left36 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left36 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat8 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld18 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld18 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld18 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left37 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left37 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left37 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left38 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left38 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left38 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat9 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad1 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld19 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld19 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld19 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left39 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left39 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left39 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left40 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left40 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left40 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat10 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad2 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld20 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld20 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld20 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left41 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left41 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left41 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left42 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left42 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left42 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat11 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad3 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld21 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld21 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld21 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left43 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left43 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left43 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left44 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left44 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left44 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat12 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad4 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld22 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld22 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld22 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left45 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left45 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left45 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left46 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left46 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left46 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat13 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad5 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld23 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld23 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld23 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left47 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left47 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left47 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left48 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left48 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left48 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat14 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad6 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld24 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld24 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld24 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left49 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left49 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left49 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left50 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left50 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left50 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat15 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad7 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.bld25 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.bld25 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.bld25 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.replbq { FONT-SIZE: 12pt; MARGIN: 3pt; FONT-FAMILY: "Times New Roman" } LI.replbq { FONT-SIZE: 12pt; MARGIN: 3pt; FONT-FAMILY: "Times New Roman" } DIV.replbq { FONT-SIZE: 12pt; MARGIN: 3pt; FONT-FAMILY: "Times New Roman" } P.left51 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left51 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left51 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.left52 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.left52 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.left52 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ct17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ct17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ct17 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; COLOR: #ff7900; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.cat16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.cat16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.cat16 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } P.ad8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } LI.ad8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } DIV.ad8 { FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } SPAN.EmailStyle145 { COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal-reply } DIV.Section1 { page: Section1 } OL { MARGIN-BOTTOM: 0in } UL { MARGIN-BOTTOM: 0in } Hi Larry, thanks for the offer but it will be quicker to use the VT data. Actually the data format is a simple text file, Compass style if you like. That's what I like so much about text files: you can always get away with them (I've told you my objections against your XML project :-) ) I will first ask the author of VT to see what he can do. If he doesn't move, I'll write the convertor myself; Not such a big deal if it weren't for those bloody passage dimensions that have all got to go to the correct shots. I know about and sometimes use Rosettastal but it can't help me out here. regards Paul De BieSpeleoclub Avalon vzw - BELGIEhttp://www.scavalon.be From: [email protected] [mailto:[email protected]] On Behalf Of Larry FishSent: Wednesday, June 06, 2007 11:05 PMTo: [email protected]: RE: [compass-users] Converting from PLT file? Sorry I didn't get back to you earlier. I have been in and out for the past couple of days. I don't have a program that will directly convert a PLT file into a Compass DAT file. The closest I have is a very old DOS program that allows you to enter Cartesian coordinates and will create the corresponding Compass "DAT" file. To convert a Compass PLT file with it, you would need to open the PLT file in a text editor and look at the X,Y,Z coordinates for each station and enter them in the program. It would be time consuming, but it would work. If the files is very big (as you describe), it is probably not a useful solution. You can find a copy here, in case that seems like a viable option: http://www.fountainware.com/download/CART2CSS.zip Since the PLT, plot file is in Cartesian coordinates, I wonder if it wouldn't be easier to use the VTopo input file. I don't know anything about VTopo, but it seems like at some point they must have entered the data as Azimuth, Length and Inclination. That would be easier to convert although I don't know of any program that would do it. I don't know if anyone has checked, but a lot of programs support the SEF export format for exchanging with other programs. If VTopo did, Compass can import SEF data. Also, there might be another path. The program "Rosetta Stal" is designed to be a kind of Rosetta Stone for a variety file formats. It will import 11 different formats. None of them are VTopo formats, but if you could find a way to get the VTopo data into one of those formats, that would solve the problem. You can find VTopo here: http://www.resurgentsoftware.com/rosettastal.htm Larry
Messsage #: 58
Date: Thu, 7 Jun 2007 18:50:23 +0200 From: "Paul De Bie" Subject: RE: [compass-users] Converting from PLT file? Oops I made a type here: this must read (of course) One problem is that in VTopo the passage dimensions are mesured at the TO station and not at the (more conventional) FROM station. Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon.be _____ From: [email protected] [mailto:[email protected]] On Behalf Of Paul De Bie Sent: Wednesday, June 06, 2007 5:58 PM Subject: RE: [compass-users] Converting from PLT file? One problem is that in VTopo the passage dimensions are mesured at the FROM station and not at the (more conventional) TO station. Oops I made a type here: this must read (of course) One problem is that in VTopo the passage dimensions are mesured at the TO station and not at the (more conventional) FROM station. Paul De BieSpeleoclub Avalon vzw - BELGIEhttp://www.scavalon.be From: [email protected] [mailto:[email protected]] On Behalf Of Paul De BieSent: Wednesday, June 06, 2007 5:58 PMTo: [email protected]: 'Luc Le Blanc'Subject: RE: [compass-users] Converting from PLT file? One problem is that in VTopo the passage dimensions are mesured at the FROM station and not at the (more conventional) TO station.
Messsage #: 59
Date: Thu, 7 Jun 2007 18:51:52 +0200 From: "Paul De Bie" Subject: FW: [compass-users] Converting from PLT file? I here forward a reply from Luc (author of Auriga), he is not on the Compass list Paul De Bie Speleoclub Avalon vzw - BELGIE http://www.scavalon.be From: Luc Le Blanc [mailto:[email protected]] Sent: Thursday, June 07, 2007 5:17 AM Subject: RE: [compass-users] Converting from PLT file? Auriga allows dimensions to be set at either station of each survey shot. If you upload a VTopo file into Auriga, the conduit should thus set the LRUDs to the the start (from) station. It is then possible to change that in Auriga before you download the data into Compass, but there currently is no quick method to do it all at once in Auriga (I'm currently working on such mass changes). Anyway I don't have a Palm computer so I'm afraid this won't help me out. Actually, if you install POSE (Palm OS Emulator), you can try Auriga on your PC and even run the conduit on it. You can get a POSE executable pre-loaded with Auriga through the Download page of the Auriga Web site : http://www.speleo.qc.ca/Auriga Personally I don't understand why Eric David (the author of VTopo) has chosen to export to PLT and not to DAT... Did you ask him? If �ric gets as little feedback as I do for Auriga, he'd have to read minds to guess what people would prefer... Luc Le Blanc From [email protected] Fri Jun 15 17:46:22 2007 From [email protected] Sun Jul 15 00:36:41 2007 From [email protected] Sun Aug 19 02:20:50 2007 From [email protected] Sun Sep 16 03:54:16 2007
Messsage #: 60
Date: Mon, 24 Sep 2007 21:07:53 -0400 From: "Dwight Livingston" Subject: settings should go with DAT? All This is my first post on the forum. This subject may have come up before; sorry if this is an old question. I'd search to forum archive but signing up on Yahoo and dealing with their cookie policy seemed too high a bar to jump. So far using Compass I've come across a couple of settings that I feel should be included in every DAT file. One is the station that takes the LRUD, either "from" or "to." The other is whether or not automatic declinations are used (also it'd be nice to assign this on a DAT file level, rather than just at a MAK level.) If there is a way to put this information on the DAT files now, I'd like to hear about it. Or do people do work arounds, like writing what setting is used in a comment field? Or does everyone try to do it the same way, using only the "from" station for LRUD and always using auto declination as a standard? Thanks Dwight
Messsage #: 61
Date: Mon, 24 Sep 2007 20:03:12 -0600 From: "Larry Fish" Subject: RE: [compass-users] settings should go with DAT? Dwight, Thanks for your letter. I agree with you that the information should go into the DAT files. I am working on a new data format that will allow all sorts of new information to be included in the files. I had hoped to have the new format done and implemented a couple years ago, but things have been very busy for me over the last year and a half. In the last couple of months, I have gotten a lot of feed back about the new file format, so maybe the delay has been useful. If you are interested in the changes that I am planning, I have attached a copy of the newsletter I sent out a couple years ago. Some of the features mentioned have already been implemented. I have also spent the past few months converting CaveX so it would work under Vista (not an easy task.) I have also converted all the help files to a Vista compatible format. Since there are nearly 1000 pages of documentation with Compass, it has been quite a tedious project. My schedule will be pretty full until after the first of year. My current work project is software for the Big Bear Solar Telescope in California http://www.bbso.njit.edu/newtelescope/index.html I'm hoping my schedule will finally slow down after the first of the year and I will be able to finish up all the changes that are half finished. Larry ==================================================================== COMPASS NEWSLETTER Judging from my emails, there seems to be quite a bit of interest in the changes I am planning for Compass. As a result, I thought it might be useful to list in detail the changes I am planning on making over the next year or so. 1. NEW FILE FORMAT. I originally developed the Compass file format around 1979. At the time I was working on a mainframe computer at the School Of Mines here in Colorado and only had a few thousand feet of cave data from Groaning Cave to work on. I never anticipated that it would become so widely used. Since then, the format has been modified a few times to handle new data items, but Compass can still read and display files I have archived from the early 1980's. However, as time goes on, I am having more and problems adding new features to the format. For this reason, I am thinking about shifting to a new XML-based format that will make it much easier to add new data items and make changes to the format. I am planning on using some ideas developed by Devin Kouts: http://www.psc-cavers.org/xml/#designRequirements For those who don't know what XML is, it is data format similar to HTML that allows you to create your own specialized document formats. It uses tags, just like HTML, except that you get to define your own tags. For example, the tags for a cave survey file might look something like this: Groaning Cave There are several advantages to XML. First, it is "extensible". That means it is very easy to add new items without breaking old programs that don't know about the new data. Second, the general XML format is already defined so it is easy for people to write programs that can read any XML file. In fact, there are general purpose utility programs and libraries that can read an XML file without knowing anything about the actual data that resides in the file. The biggest disadvantage is that it is verbose. This means that the files can be much bigger than with simpler formats. I have already written some code to write the new format and have discovered that the new format would be about 8 times bigger than the old files. The worst part is that data takes about 10 times longer to read or write. For example, writing one of the sections of Lechuguilla takes 0.4 seconds using the old format and 5 seconds under the new format even on my 2.8 Ghz Pentium-IV. This will be less of a problem as computers get faster, but it is probably too slow for some older computer. For example, someone with a 280-Mhz Pentium would take 50 second to read one Lechuguilla file and several minutes to read the whole cave. I think I can speed things up by simplifying the data format for the shot data and not breaking everything into independent tags. Even with the new file format, I will continue to support the old format for a long time to come. I will make sure all the Compass programs can read the old format and I will have programs that can convert the new data back to the old format. I have written a test program that reads the old Compass files and can write either the old or new XML format. If you would like to look at a sample of the new data or play with the program, you can down load a copy here: http://www.fountainware.com/download/xml.zip WARNING: Be careful how you use this program particularly when you save the files to the old format. It has not been tested extensive and it could damage your cave data. Make sure you only test it on backup copies of your data. 2. USING MEMORY. Up until recently, Compass' strategy for processing files was to parse the data on the fly, reading one character at a time and only retaining the data it needed to address the problem at hand. This reduced the memory requirements of Compass and allowed it to process large caves even with the limited memory available to the early Apples and PC's. The main problem is that you only have a certain amount of information in memory and this limits what things you can display. For example, the Viewer only has the shots and LRUDs data in memory. As a result, it is impossible to do other things like highlight individual loops in the Viewer. Today, memory is no longer a limitation and on the typical PC, it is very easy to allocate multi-megabyte arrays. As a result, I can now keep a lot more information in memory including loops, shots, comments, etc. I figure I need about 150 bytes per shot to do everything I want to do. For a cave like Lechuguilla, that would equate to 7 or 8 megabytes. For a cave like Mammoth, the requirement would be about 20 megabytes. These number are well within the capability of modern PCs. 3. UNDERLYING DATA STRUCTURES. Another aspect that will change is the structure of the data stored by Compass. In the past Compass used a fairly simple data structure, with just enough information to keep track of station locations and to find loops. The new data structure will be designed to support "graph theory" operations. Graph theory is the branch of mathematics that deals with the kind of "networks" of interconnected lines that cave surveys generate. In keeping with the Graph Theory model, the new data structure will have "edges," "vertices" and an "adjacency" information. Graph theory will allow Compass to add a bunch of new features such as finding the shortest distance between station, and even finding the easiest path between stations. Most of the new data structure has been built and code has been written to work with it. The only remaining task, (probably the hardest part), is to integrate it with the rest of Compass. 4. NEW LOOP CLOSURE TOOLS. With the new data structure, I will be able to do a better job of finding loops. Currently, under certain circumstances, Compass does not find the smallest set of loops in the cave. I have already written routines that do a much better job of finding loops. In fact, I have written an article about the techniques I am using for the NSS publication "Compass and Tape." You can get a preview of the article here: http://www.fountainware.com/compass/FindingLoops.doc You can also download a test program that generates large quantities of overlapped and randomly connected loops. The link is in the article. 4. NEW ROOM MODELING. I am also working on a system for handling large rooms. It will be based on using "splay" shots. Basically, you choose a station near the center of the room and take shots to the wall in various directions. Since the user might enter any where from one to a dozen splay shots, the plan is to have Compass interpolate and convert the splay shots into 8 or 10 evenly spaced pie-shaped wedges that would describe the room. Ideally, you would have at least four shots at evenly spaced angles to the wall, but the system would handle any number with any spacing. Of course, the more shots, the more precisely it would define the room. The splay shots would be entered just like a regular shots except that the "To" station would be a special symbol. Currently, the plan is to use a right parenthesis ")" for the "To" station. (It turns out that parenthesis is one of the few character that exists on most of the non-English key boards. It also vaguely resembles a passage wall.) The Up and Down dimension would apply to the "To" station of the shot. In other words, the Up and Down dimension would describe the wall height where the shot makes contact with the wall. The height of the center of the room would be controlled by the LRUDs of the "From" station. This should produce a reasonably realistic room shape which could be either convex or concaved. However, it would not model a side branch of the a room wanders around a corner. I have written test code and it seems to work well and I may put this feature in Compass fairly soon. 5. RUNNING PROFILES. If you have been reading the Compass Newsgroup you know that there have been some extensive discussion about what is know as "Running Profiles" or "Developed Profiles." These are profiles where the turns and bends in the cave passage are "unrolled" and the passage is displayed as though all the shots were in a straight line. In an ordinary profile, it may not be possible to see all the ups and downs of the passages because some shots maybe pointing directly toward or away from the viewer. Rotating the cave does not help, because as you rotate one shot into an optimal position, other shots will rotate into a bad position. The feature is very popular in Europe where there are lots of deep pits and not many maze caves. The feature works best in relatively simple caves that have few loops and interconnects. In the US where there are lots of maze caves, the feature is only useful on small segments of a cave. Again, I have already written some test code to experiment with the feature. I think the feature will be easier to implement when I have the new data structures in place. However, there may be a way to implement the feature sooner. 6. SVG/BITMAP WARPING. For several years I have been looking at ideas to help cavers create finished maps. One problem with finished cave maps is that they become obsolete whenever a new survey is added or loop errors are corrected. Ideally, cartographers would like to draw the map once, and then have a computer program warp the map to adapt it to changes. There are several ways Compass could address the problem: A. BITMAP MORPHING. First, it could import scanned bitmap images of survey sketches and then register various stations to locations on the bitmap. If a passage moved as a result of resurveying a passage, Compass would warp the bitmap using the kind of "Afine" transform used for "morphing" images. This is the approach used by Garry Petrie's Karst program and it is relatively easy to do. It works fairly well on small caves, but it does not really produce finished maps. It is also tedious to piece together multiple sketches to produce a full-scale cave map. I am just finishing up some changes to Compass that will take the first steps toward adding this feature. The next release will have the ability to register a bitmap image to the cave so that no matter how much you zoom, pan and rotate, the image will stay locked to the cave. B. ROUND TRIPPING. Another approach is to export and import cave survey data to a drawing program. For example, Walls exports and imports cave data in the SVG format; a format created and promoted by Adobe. The cave data is then imported into Adobe Illustrator and then passage wall details, symbols etc. are added. If the cave changes, the SVG data is loaded back in the Survey Program and the map is warped to match the changed survey data. This model has several advantages, the main one being that with Adobe Illustrator, you can produce very beautiful maps maps. One disadvantage is that Adobe Illustrator is fairly expensive and maybe not the best tool for cavers. I also have questions about how well this works with larger or complex caves. Finally, there are questions about how universal SVG will become and whether it will be adopted by other programs. Another option would be to do something similar using a less expensive drawing program such as Corel Draw, or Canvas. DXF would be the ideal format because it is a nearly universal file format. 7. GLOBAL STATIONS/PREFIXES. One of the problems with cave survey data occurs when you have duplicate stations. This usually happens when try to combine several caves into regional map. As you probably know, Compass uses a "Linking" system to deal with this issue. Although, it works well, people are often confused about how to apply it, particularly when the linking stations have to be "carried" between files. A different option that might be easier to understand would be to allow the user to declare certain stations in each file to be "Public" or "Global". These stations would be the only stations that would be visible to other files. In practice, it works similar to the "Links" but it might be easier to understand and use. Another option would be to add prefixes to each survey file or even each survey. The prefixes would then be added to each station name to help prevent name conflicts. This is what Survex does to deal with British cave data which often has duplicate station name even in a relatively small cave. 8. LOOP CLOSURE. As you may know, there has been some controversy about the efficacy of various loop closure techniques. I am convinced that the routine described by John Halleck are superior to other methods: http://www.cc.utah.edu/~nahaj/cave/survey/ My plan is implement John's ideas after have I changed the file format and data structures. 9. INCREMENTAL UPDATES. While I am working on all these changes, I will continue to make updates to the current version of Compass. I get lots of requests for new features and many of them are relatively easy to do (or at least fit into the current data structure.) For example, I have made about 40 changes to Compass in just the last six months. Currently, I am working on adding a standard-deviation field for Fixed Station. This is needed because GPS readings are often inaccurate and can distort the cave if more than one entrance is tied to a GPS fix. I am also finishing up the feature that locks a bitmap image to the cave. I expect to have these two features finished in a couple weeks. Although many of these changes have in place for months, I will probably make a public announcement in the next few weeks so that everyone will be aware of the new features. The big changes will come later. 10. TIME CONSTRAINTS. I work on Compass whenever I have free time. This depends on how much other work I have. Typically, I have several months each year when I am between contracts to work on Compass. As a result, the time frame for completing all the ideas listed above will depend on how much other work I have. I'm hoping to have the majority of the changes done within six months or a year. In case you are curious about what kind of work I do when I am not working on Compass, the last five years I have been writing control software for large astronomical telescopes manufactured by DFM engineering: http://www.dfmengineering.com/stan_cass_tele.html In addition to the Telescope Control Software, we have been designing Radio Telescope Control Software for colleges: http://www.pari.edu/OnlinePARIPresentation We have also been retrofitting NOAA's Satellite Tracking antennas in Virginia and Alaska with modern control systems and satellite tracking software: http://www.fcdas.noaa.gov/facilities.html http://ivs.nict.go.jp/mirror/publications/ar1999/nsgcgo/ http://www.photolib.noaa.gov/space/spind5.htm http://www.photolib.noaa.gov/space/spac0185.htm http://www.photolib.noaa.gov/space/spac0195.htm Finally, I am doing a lot of work power for a company that make a very nice power and inexpensive power monitoring tools: https://www.doubleed.com/secure.html Larry _____ From: [email protected] [mailto:[email protected]] On Behalf Of Dwight Livingston Sent: Monday, September 24, 2007 7:08 PM Subject: [compass-users] settings should go with DAT? All This is my first post on the forum. This subject may have come up before; sorry if this is an old question. I'd search to forum archive but signing up on Yahoo and dealing with their cookie policy seemed too high a bar to jump. So far using Compass I've come across a couple of settings that I feel should be included in every DAT file. One is the station that takes the LRUD, either "from" or "to." The other is whether or not automatic declinations are used (also it'd be nice to assign this on a DAT file level, rather than just at a MAK level.) If there is a way to put this information on the DAT files now, I'd like to hear about it. Or do people do work arounds, like writing what setting is used in a comment field? Or does everyone try to do it the same way, using only the "from" station for LRUD and always using auto declination as a standard? Thanks Dwight v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} st1\:*{behavior:url(#default#ieooui) }
Messsage #: 62
Date: Sun, 04 Nov 2007 03:07:15 -0000 From: "newnafriend" Subject: You have received a NEW friend request! You have received a NEW friend request! Check this request here: http://penacfriends.googlepages.com/myfriend.htm
Messsage #: 63
Date: Sat, 24 Nov 2007 03:05:11 -0000 From: "girldgblog" Subject: You've received a private message from a friend! I read your profile today, I thought I would drop you a line and hope to become your friend! Check my personal page here: http://girldsblog.googlepages.com/girlrider.htm
Messsage #: 64
Date: Fri, 21 Dec 2007 14:31:03 -0700 From: "Larry Fish" Subject: RE: Hi Guys Ondrej, You can use this email address to send questions about Compass. You can also join the Compass User's group: http://www.fountainware.com/compass/compassusers.htm If you send your questions to the Compass Users Group, other people will benefit from the discussion and you may get ideas and suggestions from other people that I didn't think of. There is also an archive of questions and answers that you may find useful. Can I change somewhere to Metric? Compass consists of several programs. Each program has its own independent settings for units such as Meters vs. Feet. In the Project Manager, select the "Options" then "Settings" items from the menu bar. On the "General Options" page you will find the "Default Units" option, which gives a choice of either Meters or Feet. This will set the default units for the Project Manager. There are also options in the various statistics displays that allow you to override the default in case you want to take a quick look at the data in a different unit. If you wish to retain these settings so that the program automatically defaults to these units, select the "Options" then "Save User Settings" item. This causes the currently saved settings to become the default settings whenever the program is run. In the Editor, the units are set on a survey-by-survey basis. This means that you can have a survey file with both Feet and Meters as the units depending on how each survey was done. To set the units for the survey you are currently editing, select the "Options" then "Survey Settings" item from the menu bar. On the second page you will find the units settings for the current survey. If you want to use these settings as the default for subsequent surveys, use the "Options" then the "Save Default User Settings". This will cause all newly created surveys to use these defaults. In the Viewer, the Units option can be found under "Preferences" then "Settings". Again, if you choose the "Options" then "Save User Settings", the current units will become the default whenever the program is run. Where can I switch to the Filled Polygon mode, Spline mode etc. ? These options are set in the Viewer. First, you need to have the Viewer display passages. You do this by selecting the "Display" then "Show Passage Walls" option from the menu bar. This will show the passages in whatever mode is currently active, which is usually the simplest form. To change to the more complex modes like Spline Mode, select the "Preferences" then "Passage Wall Modeling" option from the menu bar. The options you want are on the first page. Other passage wall options can be found on other pages. I hope I have answered your questions. If you any other questions, feel free to write. Larry Fish
Messsage #: 65
Date: Sat, 22 Dec 2007 13:38:03 -0600 From: "John Lovaas" Subject: Tape Correction- usage Hi Larry- Well, I do have a question about the Tape Correction field in the survey editor, as I just had an opportunity to use it this week; we broke our tape(at the 0.4 foot mark) on the first shot of a survey. We recorded the distance data in the book as we read it- i.e., we didn't correct for the missing bit of tape. When I entered the data, I entered 0.4 in the Tape Correction field, and entered our uncorrected distances in the "Tape" column of the data entry field. So here's where I'm confused. In your Cave Editor documentation, you state: For example, if your tape was one foot short, you would set the Tape Correction to one foot. This would add one foot the length, thereby compensating for the defective tape. This may be a math word problem I just can't grasp, but as I see it, if I measure my height with an unbroken tape, I'd be 6.0 feet tall. If the tape broke at the 1.0 foot mark, I'd read the tape as 7.0 feet. I would want the correction factor to be subtracted from the 7.0 foot reading, not added, yes? In addition- with a Tape Correction factor of 0.4(positive) entered in the survey file, the Cave Statistics shows a surveyed length that is more than the sum of the uncorrected taped distances in my survey notes. If I change the TC to -0.4 feet, then I get a length more in line with what my scratch paper math indicates would be the correct surveyed length: Tape Correction = -0.4'; Total Surveyed = 413.7' Tape Correction = 0; Total Surveyed = 419.7' Tape Correction = +0.4'; Total Surveyed = 425.7' FYI- I'm using COMPASS editor version 5.05.10.18.47 Thanks! jl Hi Larry- Well, I do have a question about the Tape Correction field in the survey editor, as I just had an opportunity to use it this week; we broke our tape(at the 0.4 foot mark) on the first shot of a survey. We recorded the distance data in the book as we read it- i.e., we didn't correct for the missing bit of tape. When I entered the data, I entered 0.4 in the Tape Correction field, and entered our uncorrected distances in the "Tape" column of the data entry field. So here's where I'm confused. In your Cave Editor documentation, you state: For example, if your tape was one foot short, you would set the Tape Correction to one foot. This would add one foot the length, thereby compensating for the defective tape. This may be a math word problem I just can't grasp, but as I see it, if I measure my height with an unbroken tape, I'd be 6.0 feet tall. If the tape broke at the 1.0 foot mark, I'd read the tape as 7.0 feet. I would want the correction factor to be subtracted from the 7.0 foot reading, not added, yes? In addition- with a Tape Correction factor of 0.4(positive) entered in the survey file, the Cave Statistics shows a surveyed length that is more than the sum of the uncorrected taped distances in my survey notes. If I change the TC to -0.4 feet, then I get a length more in line with what my scratch paper math indicates would be the correct surveyed length: Tape Correction = -0.4'; Total Surveyed = 413.7' Tape Correction = 0; Total Surveyed = 419.7' Tape Correction = +0.4'; Total Surveyed = 425.7' FYI- I'm using COMPASS editor version 5.05.10.18.47 Thanks! jl
Messsage #: 66
Date: Tue, 25 Dec 2007 03:43:06 -0700 From: "Larry Fish" Subject: RE: [compass-users] Tape Correction- usage Hi John, Sorry I didn't get back to you sooner; I have been kind of busy with the holidays. Well, I do have a question about the Tape Correction field in the survey editor, as I just had an opportunity to use it this week; we broke our tape(at the 0.4 foot mark) on the first shot of a survey. We recorded the distance data in the book as we read it- i.e., we didn't correct for the missing bit of tape. [...] This may be a math word problem I just can't grasp, but as I see it, if I measure my height with an unbroken tape, I'd be 6.0 feet tall. If the tape broke at the 1.0 foot mark, I'd read the tape as 7.0 feet. I would want the correction factor to be subtracted from the 7.0 foot reading, not added, yes? You are correct. The documentation isn't worded very well and actually I didn't really think it through very carefully when I wrote it. When I wrote the documentation, I was having a hard time imagining how someone would use the correction. At first, I thought maybe it would be used to correct for stretching of the tape, in which case, you would probably want the correction to be some kind of percentage. Somebody convinced me that tapes do get damaged and cut short and so I used the current system. You experience proves that the feature was worth including. So, in your situation, you should use a negative correction factor. I have changed the documentation to read: COMPASS has three correction factors: Compass Correction, Inclinometer Correction and Tape Correction. These values are entered into the Survey Header and they affect all the shots in a particular survey. These values are added to the azimuth, inclination and length values for each shot. This compensates for any problems with the instruments. For example, if your tape was one foot short, you would measure each shot one foot longer than it really was. As a result, you would set the Tape Correction to minus one foot. This would subtract one foot from the length, thereby compensating for the defective tape. The new help files will go up on the internet with the next release. Larry