backward compatible with go 1.0