update
add auto hide feature