implemented bubbling effect