separate main_body to main_body_initialize and main_body_body