some modernizations