possibly finished #18, need a failure to test with. :)