added interval funcs