implemented downgrade