add support for time.Duration