op := func() (*http.Response, error) {
        resp, err := o.client.Do(req)
        if err != nil {
            return nil, backoff.Permanent(err)
        }