Johannes provided us we the debugged version of noncrossing(), kept the old version for sentimental reason as noncrossing_()