map didn't work with protected callbacks
cleanup