more branch logic stuff