add new argument: interval