Restructure and comment