working on threading for abort
better abort behavior