added several fns