merge
add listener to lefter
fix conflicx
add left init