open()->close() is a must