AxleBase

The future by design.


summary

description

applications

home page

documentation

inquiries

policy letter

queued

caution




Advanced Technology

In A Database Manager







Applications

( Please scroll down. )

tests

limitations

change log

demonstrators

date protocol

syslink protocol

nomenclature

research



                               
         
The Foundation
Disaster Recovery
Torrent Technology
Mobile Base Queries
Surplus Assets
Data Consolidation
Under Developed Country
Cost Reduction
Data Warehouse Identity Crisis
Cloud Computing Crisis
Negotiation

Technology And Web Site
Copyright 2003 - 2011 John E. Ragan.





__________________________________________________
__________________________________________________
AxleBase Applications
Section
The Foundation



The following sections are interesting and fun. Who would have thought that a database manager could do all of that?

But he was not designed for those interesting jobs. He is simply a database manager. Well, maybe not simply because he was designed to be the best database manager, so let us first examine his architectural foundation that enables those interesting sections.

Packaged :

A packaged software system is identifiable by its ability to be transmitted intact without disruption or degradation for installation on similar computers without special programming for immediate operation. At this time in history, it means that the system can be sent on disks or across a data connection such as the internet.

The world has many powerful software systems that are confined to a single in-house computer system. Many others can be installed on other computers, but are akin to Tinker Toys, requiring an installation staff of skilled technicians and programmers.

AxleBase, on the other hand, is packaged and ready for transmission. Not only is he packaged, but he fits on a small part of a single CD. He has a small installation program, and after it is run, which takes a few seconds, AxleBase is immediately ready for operation.

Size :

Of all the packaged database managers, including the big-name high-dollar brands, AxleBase can manage the world's biggest data load. It was for that purpose that he was built.

If you are planning a database that will contain very large tables of billions or trillions of rows, then you may need AxleBase. He can handle it. In fact, he can handle thousands of tables of that magnitude in a database.

( Beware : A recent news release spoke of a petabyte-sized database that turned out to be nothing more than a lot of large photographs. Another advertized managing a database with terrabytes of data that turned out to be nothing more than a lot of normal-sized tables.
      Despite what some think, other database managers are not in the AxleBase class.)

Cost :

In this age of bloated budgets and software and insect mentality, AxleBase individualism stands alone. He was designed specifically to run on the cheapest desktop computers. Some of the test computers in the AxleBase lab were built at the turn of the century.

Most interestingly, he builds and manages those very large tables on those cheap computers. If his DBA gives him permission, he begins spreading a large table across the network and manages all of its pieces so that it remains a single table to the user.

If cost effectiveness is more important to you than the high status of using a big-name brand, then AxleBase may be made for you.

Computing Power :

If you envision AxleBase limping along with a huge database on tiny computers, forget it. He can bring vast computing power to bear on that large database from those desktop computers.

If you want fast queries or some other benefit of great computing power, your DBA can configure AxleBase in distributed mode so that he is distributed across many computers. In that configuration, he can run those computers in parallel to deliver super computer power for very low cost.

Notice that the distribution of the database and the distribution of AxleBase are different things. Each can be done independently.

Security :

The security that is found in other database managers is basic. AxleBase provides all standard basic database security needs.

Additionally, AxleBase was expected to meet expanded needs, so he was given a more sophisticated VPN-level (virtual private network) security atop the basic security features. VPN-level security is needed on public networks such as the internet and on some very large internal networks. AxleBase security can do away with more complex security solutions such as active directories.

Details :

If any of the above surprised you, please read the Description page before reading the following sections.

Etc. :

This web page is simplified. All that AxleBase does is manage databases, but the richness of features in him can become an overwhelming complexity that awes even the builder. Even this statement is unwelcome, but it needs to be made to let you know that he may have more options for your problem.

Scenarios :
      Technically correct illustrative fiction was used in subsequent sections.

AxleBase :     Designed for power.





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Disaster Recovery



Problem:

An attack or environmental onslaught that is severe enough to shut down the primary facilities will probably put the company out of business. But how can a company afford the capital investment and support of a one hundred percent disaster recovery site.

Solution:

As of today, the cost has plummeted. The reason is the new kid on the block, AxleBase.

The database that is running on that mainframe can be streamed offsite each night, not to another mainframe, but to a personal computer. The world's most powerful relational database manager runs on very cheap desktop computers.

Capacity :
      Not to worry. Just add more cheap desktop computers and AxleBase will transparantly spread each large table across the network and autonomously manage it on all the equipment.

Software :
      AxleBase supports the industry standard ODBC interface. Chances are that your software is already written to that interface. (If it is not, you may want to have a serious talk with your I.T. department.)

Computing Power :
      Perhaps most amazing is the computing power that AxleBase can deliver. He can be distributed (Yes, the software system itself.) across many desktop computers so that he uses them to multiply power for each query.

Caveat :
      If your business actually needs a mainframe, then AxleBase will not replace it for daily operations. His primary goal is the delivery of astronomically large power to the management of astronomically large databases. He can certainly do every database operation that is done on your mainframe, and can probably do it with more power, but he and the personal computer will not replace your mainframe.
      However, his power, cost, and features may be the world's very best long term disaster recovery solution.

AxleBase :     Designed for support.

Enabling Technologies :
      Desktop Computer Support
      Distributed Data Table
      Distributed System
      Industry Standards





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Torrent Technology



Torrent Technology provides the ability to digest a steady stream of vast quantities of data. Most applications trying to capture a torrent of data resemble a man trying to drink from a firehose. The advanced AxleBase technologies allow configuration for data torrent management.

Some examples of areas that sometimes need the technology are seismic event monitors, mobile phone support and monitoring, meteorology monitors, ocean state monitors, inter-system routing, multi-dimension population states, government spying on citizens, and big business spying on citizens.

Problem:

Local Storage Problem :
      The apps frequently must be very light-weight, precluding local data storage.

Communication Problem :
      The distributed apps frequently cannot reliably communicate with the distant database.

The apps can be designed to continuously upload data, and the app array can be geographically divided into local app clusters.

Solution 1 :
      Each cluster will be served by its own database in a local AxleBase installation.
      The local database installations can periodically upload from their tables into the central database.
      ( This option is not as reliable or as safe as the following, but has an attractive simplicity.)

Solution 2 :
      The central database may be distributed geographically so that tables in the cluster databases become part of one large database.
      With the database distribution, the AxleBase system also can be distributed so that there is a system node serving each local app cluster. Each local table appears to be part of the great distributed database.
      At intervals, the central controller dispatches SQL queries to the distributed system to insert that data into the central tables.

Solution 3 :
      Each cluster will be served by its own database in a local AxleBase installation.
      The central installation will virtualize the distant tables in its own table or tables, thereby rolling up harvested data as desired through virtualized tables. (The AxleBase virtualization technology expresses real-time remote data in localized instances.)

Solution 4 :
      ( The most elegant, but the most complex solution. )
      A single central giant database will be used. It will be locally distributed on many desktop computers.
      The database will be managed by multiple servers, each on its own desktop computer.
      Torrent segments will be directed to each server.
      Each server will insert into tables on designated target computers so that the hardware can tolerate the load.
      Since it is a single database, the data will be safely in-house while the torrent continues.
      If the expense is justified, added data security can be provided by a geographically distributed database that treats the primary site as part of itself so that failover monitors redirect the torrent if the primary site goes down.

( The AxleBase technology compensates for communication flickers, temporary connection losses, hostile environments, security problems, table name confusion, etc., etc.)

Data Capacity :
      It is extremely unlikely that the twenty exabyte capacity of an AxleBase table would be exceeded. However, if even that unlikely event ever becomes possible, AxleBase offers a solution.
      In that case, multiple large tables can be created, with each receiving a managable part of the data torrent. They can all be virtualized in a single table because there is no size limit for AxleBase virtual tables. (AxleBase virtualization allows multiple instancing of a single dataset; i.e, a virtual table presents real data although that data is in another table someplace else.)

Etc., etc., etc. ( Not an exhaustive exploration of topic or of AxleBase power.)

AxleBase :     Designed for the future.

Enabling Technologies :
      Flexibility
      Configurability
      Very Large Tables
      Real-Time Virtualization
      Distributed Database
      Distributed Database Manager
      Multi-Server Database





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Mobile Base Queries



Notice how much of the following solution to a complex problem is done with simple database toggles, a cheap computer, and telling personnel about existing AxleBase features.

Requirement:

The organization employs many field supervisors and trouble shooters who are constantly moving about city streets and country roads. Management envisions giving them the ability to query the central databases for customer information, routing tables, work orders, and equipment data.

Problem:

Unreliable communications would intermittently interrupt queries forcing restarts with frustration while the central database was churning uselessly. The teams would be forced to sit beside the highway restarting failed queries or waiting on long running queries even during high priority action situations. Frustration and disgust would doom the project.

Solution:

Meetings with the senior DBA informs management that AxleBase sub-systems were specifically engineered to grapple with unreliable communication even during massive and delicate queries. The DBA staff then offers an AxleBase solution that not only meets the requirement, but can do it at a very low cost while delivering more benefit than was imagined.

The Database

The solution could be delivered by the existing production database, but this new requirement will move the company into an unfamiliar type of operation. Since virtualization is so easy in AxleBase, a mobile-support database is created that has all the needed data in virtual tables. Additional security is provided by sharing the source tables from the main database in read-only mode.

Total capital cost on the server side will merely be another desktop computer and connections to it. ( An expensive high-end server computer can be used, but AxleBase does not demand it and frequently does not need it.) The database part of the puzzle is so cheap and easy to operate that management is free to consider multiple database instances. AxleBase virtualization is a local manifestation of remote data, so the technology supports multiple virtualizations.

The AxleBase database configuration table contains parameters for communication support that are unused in normal operations. After setting up the new database, the DBA staff sets parameters to support the mobile operations. For example, attention will be given to lock timeouts due to frequent link drops.

Queries

Field software can be designed to allow the operator to type in a query off-line to avoid comm problems. When ready, the operator can connect and burst the query to AxleBase. AxleBase needs only a valid query, and he does not require a database connection after he gets the query. He does not even require a graceful disconnect. After getting the query, he will go to work on it until finished and then file the result until somebody asks for it.

During training, field personnel can be told that all that the home station needs is a complete and valid query. Thereafter, AxleBase will control and protect the operation. Communication quality will be so irrelevant that the user can turn off the radio if he wants and retrieve the results when he is ready. (But personnel are trained for controlled exits when possible to clear the database.)

AxleBase can manage trillions of open, failed, and pending query returns. One reason that the DBA wanted a separate database was the clutter that would arise from unclaimed query returns. Of course, a database configuration parameter allows the DBA to set a timeout for query return death.

Data Returns

If the communication link persists reliably, the data return can come back immediately as though a normal database manager is being used. If the link fails, then the operator can reconnect to retrieve the staged result. (Even error messages will be staged.)

What will happen if an operator unknowingly requests a terrabyte data return? Since AxleBase is far more powerful than people and their client software, he tries to protect them. An AxleBase query return is not just a big glob of data that he throws at somebody. It is a controlled and identified object. When he builds a dataset, he creates and and attaches a detailed description to it.

If the field operator finds ten million rows of a hundred megabytes staged in his return, and his equipment cannot handle that much data, AxleBase offers a solution. The operator can tell AxleBase to send him a manageable number of rows. AxleBase will do it and decrement the remaining data. The dataset can thus be retrieved in pieces until the data is exhausted.

Security

The database cannot be updated because it is entirely virtual and the source tables are shared in read-only mode. There are also security parameters in the database configuration. For example, the DBA can turn on the switch that requires that all traffic be encrypted.

The query requestor can also specify encryption. A documented extension allows him to place the specification in each query. (He cannot over-ride an "on" toggle in the database.)

The available security goes far beyond that. For a more detailed coverage of AxleBase security, see the Description page.

Additional Benefits :
      Negligible cost.
      Ease of implementation.
      Perhaps you have already noticed that the AxleBase solution can reduce communication cost tremendously. The burst mode query transmission and managed returns might allow sharing of narrow band radio channels instead of high quality "phone" links.

( Transaction Failure :
      AxleBase has a transaction rollback mechanism that is specially engineered for very large distributed tables. However, research in this area reveals many serious potential problems that will probably arise in a mobile situation. It is therefore recommended that data updates by mobile units be avoided.
      If updates cannot be avoided, then the local DBA should design the total system solution to isolate and mitigate transaction errors to prevent ripples through large entities. AxleBase provides features to support this need. )

( Not an exhaustive exploration of topic or of AxleBase power.)

AxleBase :     Designed for solutions.

Enabling Technologies :
      Communication Fault Guards
      Advanced Data Return Management
      Internal System Self-Control
      Object Virtualization
      Communication Security
      AxleBase PC Support





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Surplus Assets



Large organizations typically have vast computing power that is unused. It is not wastage, but is a result of having many very cheap desktop computers that have no use outside of normal working hours. It is not uncommon to find organizations that have thousands of computers sitting idle on the network all night every night simply because there is no other way.

If such an organization also has a database requirement that
      will have extraordinarily large data stores,
      low priority usage,
      and budgetary constraints,
then a distributed database and distributed database manager may be the answer. They would be distributed across the existing desktop infrastructure, segregated from daytime user software and data, and brought on line each evening.

Depending upon management judgement, additional hardware may be needed for storage to segregate the database from daytime user data. Also, a master DBA who can manage such a large abstract operation would be needed. Management and security might be complex, so the presentation of this option is not necessarily also a recommendation.

However, with the negatives of this option said, it could use AxleBase to deliver phenomenally large database operations with minimal investment. A wasted commodity would become a technology wonder.

An interesting aspect of such an operation is that, although it might suffer from using only "leftover" hardware, it would also benefit from a huge pool of surplus hardware. That might allow the DBA to engineer well beyond shortcomings through massive redundancies and the use of vast computing power.

Tiny query node hosts could be built as system services that come on line on each workstation when the computer is turned on. They would sit there out of the way of the user all day consuming minor computer resources. In the evening, the DBA would open his console to begin operations, and would begin sending commands to the nodes.

Operation :
      A command to load AxleBase would go to them.
      AxleBase would then be told to open the database.
      The axsys would then automatically configure itself.
      A monitor node would verify the health of all nodes.
      Standby nodes would replace failed nodes.
      A ShowObjectHealth command would verify data objects.
      The system would then be on line and ready for work.
      In the morning, the axsys would close the database.
      All hosts would unload AxleBase.
      They might be told to reboot their computers to clear them.
Morning would find the vast machine gone and the many desktop computers ready for daily work. AxleBase has tools for the unexpected such as the AbortJob command if a query runs into the morning.

( Not an exhaustive exploration of topic or of AxleBase power.)

Enabling Technologies :
      Desktop Computer Support
      Configurability
      Distributed Database
      Distributed System





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Data Consolidation



Problem:

Large organizations frequently have many departmental databases scattered throughout the organization that gather similar data as it pertains to each department. Central management could benefit from the information, which would also help central management better support the departments. However, consolidation may be difficult or impossible because departmental reporting and usage patterns vary. Furthermore, departmental ownership and management of databases provides incentive for data quality.

Solution:

AxleBase databases can be run on very low cost computers in any department. Each departmental database will be a user-friendly industry-standard database running on a desktop computer. Each departmental DBA will be asked to share his tables in a password protected read-only mode.

The same AxleBase software will be run at the corporate level. The difference is that the advanced technology that is hidden in it will be used to unobtrusively consolidate data from all departments in real time. (This is not spying. AxleBase requires that tables be shared at the source.)

The central database will virtualize all of the departmental data in local tables. Those local virtual tables will be designed as needed at the corporate level.

AxleBase virtualization is flexible. Each remote table can be virtualized as a single local table, or many remote tables can be virtualized in a single local table. There is no limit on the number of remote tables in a virtual table and there is no limit on the number of virtual tables per database. A local virtual table can contain remote tables with different table and column names if their structures are identical.

AxleBase virtualization is actually a local instantiation of remote data. Therefore, the corporate tables are live and always current.

Since a virtual table appears to be a local table, SQL queries can be run against the entire corporate data store. The technology insures remote availability and data integrity during every query. If a comm link goes down, the technology will automatically restore the table when the link is restored.

Despite all that centralized power, the AxleBase technology allows the various departments to remain in control of their own data. (AxleBase allows them to share their tables in update mode, but that is not advised.)

Additional Benefit :
      Note that this powerful solution requires very little non-standard knowledge. The most that is needed is of the central DBA, but even that is simply how to define a virtual table.

Additional Benefit :
      Despite its power, the central database may require even less equipment than the departments will need. A virtual table needs nearly no disk space.

Additional Benefit :
      The entire corporate data store can be backed up into a local table with a single query of the virtual table.

Additional Benefit :
      No programming beyond the hosts is needed for this solution.

( The AxleBase virtualization technology expresses real-time remote data in localized instances. Therefore, any table can be virtualized in multiple locations.)

( Not an exhaustive exploration of topic or of AxleBase power.)

Enabling Technologies :
      Desktop Computer Support
      Configurability
      Virtual Tables





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Under Developed Country



( Any insensitivity is unintentional. The writer started life in a dirt-floor shack and my dearest friend today is from one of the world's poorest countries.)

Problem:

The tax base of your country is too small to provide an adequate database technology for its people.
      Or
Your country cannot afford what your current database manager is costing.

Solution:

Your country can now have adequate driver license control, centralized tax records, centralized accounting and budget control, voter registration, law enforcement statistics, etc., etc.

Equipment Cost :
      The world's most powerful database manager will run on used computers that can be bought for the cost of scrap, and a cheap network will be perfectly adequate. AxleBase was specifically engineered for the task.
      ( If you are now renting an expensive mainframe or high cost server computers, you can get rid of them.)

Software Cost :
      An under developed country can obtain AxleBase for absolutely no cost.
      The offer includes multiple instances for department databases and other needs.
      The only requirement will be official assurance of copyright and license protection.

Documentation Cost :
      Documentation will be provided for that country at absolutely no cost.
      That documentation will be on disks that can be read by old cd drives.
      The only requirement will be official assurance of copyright protection.

Training :
      The government must provide a cadre of motivated people who can teach others and are fluent in English.
      Each of them must agree to a period of service.
      Those people will be trained. After training, they will be mentored in bringing the database on line.
      Cost will be travel expenses only.

Technical Skill Required :
      When used in his basic form to manage tables of only millions of rows, AxleBase is as easy to use as a desktop database manager.
      Cadre must be experienced with desktop computers and operation of a database manager that can be a desktop database.

Reservations :
      - Not available to totalitarian or oppressive governments.
      - Encryption and authentication are not included.
      - Reminder: The government's programmers must develop simple host software in which to embed AxleBase.

AxleBase :     Designed for the people.

Enabling Technologies :
      Desktop Computer Support
      Old Computer Support
      God's Mercy





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Cost Reduction



Problem:

Your company is paying vast amounts for mainframe or server equipment that are marginally needed and that are beyond the support ability of the current economy.

Solution:

The world's most powerful database manager runs on cheap desktop computers.

He also runs large data stores on very small and cheap disk drives. Your data stores can be migrated from the "big iron" to desktops.

He is engineered to store the world's largest databases by using multiple desktop computers to create a distributed database.

If processing power is a problem, he can, himself, be distributed to use the power of multiple computers.

If servicing user queries is a problem, his database will support multiple servers and each can be placed on its own desktop computer for speed. (However, multiplexing distributed database managers has not been tested and is discouraged unless it is done through a single server host with queue control.)

Caveat :
      He is a database manager, so he cannot replace other mainframe functions. He was created to deliver astronomically large power to the management of astronomically large databases.
      However, the good news is that many mainframe functions are merely databases with other names, and many are merely front-end processors for databases such as the many customer service systems.

( But you are advised to not reduce the cost of personnel. You want the best people administering the complexity of your data.)

AxleBase :     Designed for the future.

Enabling Technologies :
      Desktop Computer Support
      Large Data On Small Disk Drives
      Distributed Database
      Distributed Database Manager
      Multiple Servers Per Database





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Data Warehouse Identity Crisis



Problem:

Your company developed a data warehouse. Line personnel subsequently found so many uses for it that requests for data now lay overnight or for days while administrators wrestle queries through it.

Solution:

AxleBase can store more data than can a data warehouse. Yes, more. AND AxleBase runs standard SQL queries against it.

Problem:

Getting queries through your data warehouse is as slow as commuting in a dog-sled.

Solution:

Put the data in a distributed AxleBase database and also distribute the database manager. Queries can run with super computer speed on those cheap desktop computers.

Or just use multiple servers. An AxleBase database can support multiple AxleBase instances, each on its own computer. Since the servers will not be on the computers that house the data, contention between servers will be lessened. (However, multiplexing distributed database managers has not been tested and is discouraged.)

Problem:

Bringing production data on line in the data warehouse is slow and is interfering with the warehouse's daily workload.

Solution:

AxleBase can bring up data in an off-line mode and snap it into production when it is ready. Even the massive indexing jobs of those objects can be run off-line before the snap-in.

Or master data could be in virtual tables that are virtualizations of many smaller tables. New data could be brought on line in a new small table and the virtual table could then be updated to include it.

(Ok, let us stop the "or's" because they become confusing in examples. Merely understand that AxleBase the solutions offered here are not comprehensive.)

Problem:

The DBA staff spends a lot of time interacting with "customers" to take orders for queries and to answer "are we there yet" questions.

Additionally, the increasingly sophisticated workforce expects data to be stored in relational entities and expects all data to be accessible through the power of standard SQL. And why not since AxleBase can do it?

Solution:

If a customer can run a standard SQL query in a desktop database manager, then he can run a query in AxleBase. With suitable controls, select customers can run their own queries.

AxleBase has a ShowJobState function that reports the state and statistics of the currently running job. He also has an abort command for long-running jobs.

He has a DisableSqlUpdates toggle. When turned on, it applies to everybody and all tables in the entire database to prevent updates, deletes, inserts, imports, creates, and drops. It is not intended to replace security permissions, but to enhance the security of a warehouse. When encountered, it returns an error message that reminds the operator of the toggle setting.

Additional Benefit :
      All of the above can be done on low-cost desktop computers. AxleBase will spread a database across a network of desktop computers, handling nearly all of the details autonomously. He constantly evaluates each table size. When a table reaches the limit of a drive, he will begin spreading it across drives and computers.

Enabling Technologies :
      Very Large Data Objects
      Distributed Database
      Distributed Database Manager
      Desktop Computer Support
      Off-line Data Preparation
      Configurability
      Flexibility

AxleBase :     Designed for expansion.





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Cloud Computing Crisis



Problem:

The C.E.O. wakes in the middle of the night in a cold sweat with the realization that he doesn't know whether his data is in the same block, or in the same city, or in China. He then wonders whether the data is in the care of one with moral character or somebody who carefully guards it because she has not been offered enough for it. But the thought that stuns him is malfeasance guilt in a class action suit for failure to protect customer information.

The sudden awakening to reality and panic has him working at dawn to bring his future back under his control. Some things become clear in his feverish thoughts :
      Quick action is paramount.
      Vast storage is needed.
      The solution must be cheap.
      Personal legal counsel must be found.
      Fire somebody for the Cloud Computing idea.

Solution:

Being well informed, the C.E.O. knows that, of all the database managers on the market, only AxleBase can meet all requirements. (But the C.E.O. must do his own firing.) He orders the immediate acquisition of AxleBase and a DBA to run it.

He then orders acquisition of a dozen desktop computers packed with disk drives. When the DBA is found, the hardware will be on hand, operational, and tied into the network. He can do whatever magic that DBA's and witchdoctors do and then recover the company data.

Finally, he directs Programming to begin data interfaces for a local industry-standard AxleBase source to replace interfaces for the wherever source.

In his panic, he then wonders what to do next. Nothing. It's that simple. Like most businessmen, he will not rest easy until the data is on an expensive mainframe that is run by a host of expensive experts. In the meantime, and as long as needed, AxleBase will handle it very well.

Enabling Technologies :
      Desktop Computer Support
      Very Large Tables
      Distributed Tables

AxleBase :     Designed for control.





__________________________________________________
__________________________________________________
AxleBase Applications
Section
Negotiation



Problem:

You use one of the big name brands to manage your data.

Solution:

Send a link to this web site to their sales rep before your next meeting. Expect unannounced fee reductions for software and hardware and more attentive service.       : )       They are already watching AxleBase, but they don't know that you know.





__________________________________________________

                                             





Copyright 2003 - 2012 John Ragan

Web site maintained with Notepad and command line FTP.