clean up and compatability