The logic for removing a connection from the signal table is duplicated within the callbackThread function used by Once and Wait, and also exists in the Connection:Disconnect() method
You can create a helper function to reduce redundancy, code readability, and if you want to change how it work,s it would be easier to do so