don't depend on namspace::autoclean