Done, needs testing on linprog