reverted callback support as was going down the wrong path