Solution #27 complete and working