modify get_signal()