Fourth implementation, minimum code, but 3 failed test with holes