event loop style..
go