sections store their state
implemented custom back stack