correction & improvements