removed unnecessary inner class and copyright notice, since the src no longer resembles original