improve repeating event support