new util function try_silent