reorganized for final submit
final submission