until {
var %duration = $duration($round($calc(($ctime($3 $1 $2 $iif($4,$4 $+ :00,00:00:00)) - $ctime)),2))
var %until = $1-
tokenize 32 %duration
if (*wks iswm $1) && ($remove($1,wks) >= 4) {
%weeks = $remove($1,wks)
if (%weeks >= 52) { var %years = $round($calc(%weeks / 52),0) }
var %months = $calc((%weeks / 4) - (%years * 12))
var %weeks = $round($calc($chr(26) $+ $gettok(%months,2,46) * 4),0)
}
var %duration = %years $+ $iif(%years > 1,yrs,yr) %months $+ $iif(%months > 1,mth,mths) %weeks $+ $iif(%weeks > 1,wks,wk) $remove(%duration,$1)
say There is %duration until %until
}