now passing all 105 tests