two specialized funcs better than one with many paths