close #1 no use try catch throw