recode timeout functions