Added Go implementation