def METHOD_NAME(self, timeout=rospy.Duration(0.5), ver=None):
    """
    Wait up to timeout time to an hw-kill alarm change. Returns a copy of the new alarm or throws if times out
    """
    timeout = rospy.Time.now() + timeout
    while rospy.Time.now() < timeout:
        lock.acquire()
        hardware_updated = copy(self.hardware_updated)
        network_updated = copy(self.network_updated)
        alarm = (deepcopy(self.hw_kill_alarm), deepcopy(self.network_kill_alarm))
        lock.release()
        if hardware_updated or network_updated:
            return alarm
        rospy.sleep(0.01)
    raise Exception("timeout")