update at 2014-04-18
add tranverse