fix LUP and add LUPsolve