refine structure
add acknowledgment