added feedback and CPU savoing