avoid --b when == begin()