Original version kindly provided by
FMJD
.
Modifications and additions by
The Checker Maven
.