Author: W. S. Fedunec and T. W. Laviolette