rework for use of async lib and introduce bonk and nobonk