source code of http://www.apjd.de/