replace all done
proper structure