fix all bugs. visualization also work great.