Copyright (c) 1993 Don Yacktman.  All Rights Reserved.  Version 0.5.

How the MiscKit License Agreement applies to you (explanatory notes)

In order to understand what is required in order to properly comply with this license, this file describes what is expected of you.  It follows the same numbering scheme as the points above, adding clarification to particular requirements.  This section is as legally binding as the above license, in that it attempts to provide the proper interpretation of the license requirements.

There are very few actual restrictions imposed by the MiscKit license.  To use it in an app, you should note that you used it somewhere in the app±point 4±and to distribute the MiscKit, you need permission from the MiscKit administrator only if your distribution falls under one of the categories in point 3; most distributions will be via ftp or on a floppy from a friend, and are already freely permitted.  If you contribute to the MiscKit, the most important thing to understand is that a contribution cannot be removed once it has been made.  You will note that there are actually very few restrictions here.

1.	Software built using the MiscKit does not have this restriction; this restriction applies only to the MiscKit source code and development tools.  So, if you redistribute MiscKit source you must supply these documents in the distribution.  An app built with the MiscKit, containing MiscKit objects should not include these documents, as they apply to the MiscKit only.

2..	Distributing modified versions of the MiscKit.  This is highly discouraged, but some will want to do this.  It is preferred to donate your alterations to the MiscKit and make them a part of the official MiscKit distribution.  This license automatically grants permission to redistribute the MiscKit without requesting the permission of the MiscKit administrator, but only for unmodified distributions, and under the circumstances delineated in other areas of the license, part 3. in particular.  If you have altered the MiscKit or added to it, then part 2. applies to the re-distribution.  When you attempt to request permission under the terms of part 2. you will be expected to give a very good reason for wanting to do this; contribution to the kit should be the norm.  It would be preferred that any modifications to the MiscKit be forwarded to the maintainers of the MiscKit so that such modifications become part of the official MiscKit, but this is not required by this license.  The warning you will be required to give should clearly state that modified versions are wholly unsupported and may not be compatible with future versions of the MiscKit. The license and charter (part 1.) which you must include with modified versions of the MiscKit are both found in the official MiscKit distribution.

	Due to part 5., the MiscKit administrator hereby grants you permission to redistribute partial versions of the MiscKit comprised of unchanged MiscKit resources, subject to the restrictions of part 3. but you must mark the distribution as being incomplete.  If the resources are modified, you must obtain permission to redistribute from the MiscKit administrator or the original author of a resource.  Some resources may explicitly give permission for any type of redistribution, if the author has included such permission at the top of the file and/or accompanying README file.  If you decide to distribute a partial version of the unmodified kit, you should be careful that you include all necessary resources; many MiscKit resources depend on each other.  For this reason, partial distributions are not really recommended; they could cause unnecessary hassle.  It is preferred to distribute the full MiscKit wherever possible.

3.	Any redistribution of the MiscKit without the MiscKit administrator's explicit permission must contain all files which are in the original distribution as it originates from the MiscKit administrator.  Currently, the definitive, ªoriginalº distribution is available via anonymous ftp from ftp.byu.edu.  Any modified distributions fall under part (2.) above and should have all changes clearly marked, and require the MiscKit administrator's permission.  For commercial distributions, it is suggested that, where possible, you provide the MiscKit in an uncompressed form so that the user can peruse the documentation easily.  (For example, on a CD-ROM, it would be most convenient for the user to have the compressed and the uncompressed MiscKit on the disc.  Then, the documentation is easily accessible, without taking up hard drive space, but when a user decides to install the kit, it is much faster to read the compressed version off of the CD-ROM.  Obviously such a move increases the value of your product, and would be desirable in most cases.)  Also, as this is a free kit, it is hoped that commercial re±distributors will not attempt to gouge their customers.  (This is unlikely to have happen since this document must be included unchanged in all distributions, and anyone who was bamboozled and then read this would get pretty darn mad, and would likely take the matter into their own hands.)

3.a.  A large-scale distribution is one which is mass-produced; in other words, any time more than 50 copies would be distributed.  (In other words, the typical user group could give it out to members, but if they went to press a CD-ROM, then they need to get permission first.)  Requiring you to ask permission is mostly to make sure that you have the option of distributing the latest version of the MiscKit and to allow us to be aware which versions of the kit came from a particular source, which makes the job of support much easier when bug reports come in from users.  Upon contact, you will be provided with any newer versions of the kit, and will be given the option to be added to a list of people who are notified of new releases of the MiscKit.  Your product will also be added to a public listing which points to products which contain the MiscKit.  (For example, if you produce a CD-ROM and someone wanted a permanent copy of the MiscKit on CD-ROM, they would then be directed to your product.)  An individual making copies for a friend is not required to contact the MiscKit administrator; restriction 3.a. applies only to commercial products.  In practically all circumstances, permission will be granted, but you are still required to obtain it from the MiscKit administrator first. 

3.b.  If you want to put the MiscKit on your ftp site, or are mailing it to a friend, or whatever, go right ahead.  Permission is basically only necessary for portable media like CDROMs, diskettes in some cases (see 3.a.), and printed form (part 3.c.) and even then, only when those clauses are applicable.  Note that this permission is for unmodified distributions of the MiscKit.  Permission is always required for modified versions of the kit.

3.c.  Permission of the resource's owner may also be necessary, in the case of printing an incomplete version of the kit, which is likely to be the case.  (It is hard to print out all the resources, since many are binary files¼)  This follows from parts 2. and 5.a.  Again, in practically all circumstances, permission will be granted, but you are still required to obtain it from the MiscKit administrator first.

4.	This acknowledgement should, in the case of a GUI application, be both in the application itself, in the info panel or at some location in the on-line help, and in the printed manual, if such exists.  Placing the phrase ªThe MiscKit was used in development of this softwareº in a help panel and the printed manual or the phrase ªUses the MiscKitº in the Info panel would be sufficient.  In the case of a command-line application, acknowledgement should be placed in the README file distributed with the application.  This restriction applies only to applications which use objects from the MiscKit library and palettes; no acknowledgement is required for applications which only make use specialized development tools (applications) provided with the MiscKit.  Why promote the MiscKit in this way?  So that it gets used by people!  Why develop it if no one ever uses it?  Often a developer will not buy objectware because ªI can do that¼º which defeats the whole purpose of OOPÐcode reuseÐand so we want our code to be used.  As a free project, this is the only kind of ªadvertisingº we can afford! 

5.  There are a few consequences of this which should be understood.  Basically, the author retains all rights and the copyright and the author is granting the MiscKit unlimited permission to use the resource.  As consequences of this:

·	The author may distribute a resource via any means, and for any cost, outside of the MiscKit.  Example:  the owner of a resource is free to sell modified versions of said resource to anyone at any price they set.  And the owner can give you permission to do so, if they so choose.

·	Modifications to a resource become the property of the owner of a resource.

·	Ownership of a resource may be transferred to an individual other than the author or previous owner if a signed agreement between both parties exists.  This is because the original author still retains all rights to the resource, and, more importantly, retains the copyright.

·	The author cannot remove a resource from the MiscKit.  By contributing, an author has granted the unlimited right to redistribute and use the resource.  One that is granted, it cannot be revoked.  However, the author may remove support for the resource.  In such a case, the contributed resource will remain in the MiscKit, and one of the MiscKit authors will be assigned to carry on any future development and bug fixes, but the copyright for the code will remain with the original author.  (In effect the MiscKit will end up being a separate development branch of the resource.)  This provision is to allow authors to stop providing MiscKit support (including folding code submissions into the resource) for a resource, and transfer this responsibility, without having to give up the copyright to the object.  (Resources may not be removed from the MiscKit because of the fact that most MiscKit resources rely upon other MiscKit resources, and removing a resource would most likely ruin the MiscKit.)  Because you can't remove a resource once you have donated it, you should make sure that you truly intend it to be a public resource.  Basically, removing a donated resource is far too detrimental to the MiscKit as people who use the kit will come to depend upon the objects in it.  Pulling an object and then selling it to those who need it would be the height of rudeness, and will make for a lot of enemies.  Thus, it is clearly stated up front that this is not tolerated.  As a concrete example, if Don Yacktman suddenly pulled the String object and starting selling it (which would never happen), the following would happen:  (1) most of the MiscKit objects would break, since they use the String class.  (2)  People would become quite upset and post nasty messages to the net and Don would become a pariah.  (3)  Nearly nobody would buy the object anyway because most would keep the (albeit now illegal to keep) old versions of the String class and keep using it.  Such an action would be detrimental to the kit and all involved.  If this provision weren't included, the MiscKit would be a bunch of disjoint objects that couldn't leverage off the capabilities of existing objects in the kit, for fear of something suddenly disappearing in the future.  Thus, this part of the license should provide a sense of security to everyone.  So, although this one-way thing is quite strong and severe, it is meant to protect all involved, including the contributor, from undue pain.

7.	Such activities are welcome as long as they do not violate this license agreement.

8.	If you are an author and/or owner, and you object to a proposed change, speak up or be forgotten!  See the Charter for details on the voting process.  Also, note that the kit must always remain free to users; changes should not be made to limit the freedom of users and distributors more than the current license.  Note that since a vote of all authors is required to make changes, this should keep itself in check quite easily.

Goals of this license agreement:

NOTICE:  The purpose and intent of this license is to fulfill the following goals:
·	Allow the MiscKit to be freely distributed to as large an audience as possible.
·	Provide a kit of useful programming tools which may be used by anyone, from the lowliest hacker up to the most prestigious consultant or third party application developer without having to pay anyone for it's use.
·	Allow programmers to contribute to a project which will aid themselves and their peers.
·	Assure that there will always be a ªdefinitiveº version of the MiscKit, distributed by the MiscKit administrator, which may be trusted.  By allowing contributors, it is hoped that branches will not break off of the MiscKit, which will make the kit more useful as a whole because there will be less confusion as to which version should be used.
Basically, we're trying to make something which is almost a public domain kit, but do it in a manner that is organized and lacks the confusion of multiple incompatible versions often seen with public domain code.