finish some details and add reedit feature