back to u from q, better bc implementation