not close and use it as singleton