For CS3307 assignments