add spec funcs