move special handling in simplify to class level