Copyright 2017 m31271n Distributed under the terms of the GNU General Public License version 2.