Any particular reason the signal stuff was moved back out of this function?