now with unlimited callbacks
fix missing `identifier` variable
formatting change