abstract signal binding