axes and some algorithm changes