interim commit, switch to RAII