no need to check for callback, typing demands one to exist