This code may be duplicated in whole or in part provided that
[1] there is no commercial gain involved in the duplication, and
[2] that this copyright notice is preserved on all copies. 
Any other duplication requires written notice of the author.