requires Go 1.1