Correctly handle non-hash extends; fix