add clean up & finalize