upgraded redux