better handle for file