added opposite mode