buffer and debounce blocks