cleanups
implement (partially) contract elim