removed optimization as default, added a warning to mirror() since it does not work reliably