fix somoe bugs
add pass4