Didn't really look at your code, nor do I intend to, but I'll propose a few methods for breaking out of nested loops:
- LIke WaltP suggested, use a variable as a break condition. Check it in your loop condition statement or in an if statement at the end of the loop.
- use a goto. This can be dangerous if not done properly. But it can also be the easiest way to get the job done. If you can't think of why it could be bad, it's likely you shouldn't use it. If you know what the problems with using a goto are, but you've decided your specific code segment is safe, go for it.
- similar to above, but use an exception instead. There are some similar consequences if you're not neat about it (e.g. if you have some dynamic allocation inside the loop, it won't be deleted unless you do that when you handle the exception). Still a little more safe than a goto though.

The last two will probably receive some criticism, but they are possible ways of solving the problem.

goto is widely criticized from where it was rightfully criticized -- BASIC. C and C++ are not BASIC. The same rules don't really apply.

It can be abused in C and C++, but this is not 1979, and the languages are different. So avoiding it for historical reasons in an unrelated language really loses more weight as time passes.

Most often (97% of the time, given that 86.7% of statistics are made up on the spot), the avoidance of goto is justified by a better code construct. But there is that remaining percentage that don't obtain any benefit -- avoiding the gotoadds confusion, extra unnecessary memory usage, or what-not (the very things it is supposed to be the sole pariah of).

Breaking a loop from a switch, breaking nested loops, sharing common exit code, or jumping into the middle of a loop are a few reasons to use it -- which is why it is probably still available to the language.

im trying to break out of the inner most look which is in red
any advice?

Turn the inner loop into a function and just break or return from it normally. With a suitable return value, you can then break from the outer loop without using goto or state flags. That's my favorite method because it ends up refactoring the code into something better anyway, but you can do it however you want.