Redistribution and use in source and binary forms of parts of or the whole original
or derived work are permitted provided that the original work is properly attributed
to the author. The name of the author may not be used to endorse or promote products
derived from this software without specific prior written permission. This work is
provided "as is" and without any express or implied warranties.