Try to make a fixed-depth solution for lvish1 before generalizing.  Currently bugged.  Infinite loops.