explain works logically now, but with no mechanism to destroy the remote callback