why do you need to call close directly?