http://thisthread.blogspot.com/2013/12/fish-eat-fish-linear-solution.html