improve find functions