Rewrite of scirrus in Go