Restructured entire program