eliminate need for callback queue