// WithAuditInit initializes the audit context and attaches the Audit-ID associated with a request. // // a. If the caller does not specify a value for Audit-ID in the request header, we generate a new audit ID // b. We echo the Audit-ID value to the caller via the response Header 'Audit-ID'. func WithAuditInit(handler http.Handler) http.Handler { … } func withAuditInit(handler http.Handler, newAuditIDFunc func() string) http.Handler { … }