Before revision:  Our algorithm can be used to both pre-process training data as well as post-process the output of existing ranking algorithms .
After revision:  Our algorithm works with group fairness constraints for any number of groups .