Permission to use or modify this software for educational or for commercial purposes, and without fee, is hereby granted, provided that the above copyright notice appears in connection with any and all uses, with clear indication as to any modifications made. The author RESERVES the sole rights of reproduction, publication and distribution and hence permission to print this source code in any book, reference manual, magazine, or other type of publication, including any digital medium, must be granted in writing by W. Richard Stevens. The author makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.