Cleaned and optimized go() a little bit