updated with checklist