simplification implemented