add ezekiel's changes and fix his bugs