use non-throwing version of function