object oriented rewrite initiated