add collapse menu and some implementation