TODO take a look at C++ strk pugixml for xml parsing implement eager branching for straight line detection NOTES run 3 optimizations, or combine them in a single one for free, flat and FAI ? generate approximate solutions faster to tighten lower bound