v1.4 added debounce