complete the new data collecting system, fix #4