updated to GPL