use time.Duration, add TimeImprecise