After code clean up and with code comments