1. Cheriton School of Computer Science, University of Waterloo, Canada and Department of Computer Science, University of Toronto, Canada
2. Univ. Lille, Inria, CNRS, Centrale Lille, UMR 9189 CRIStAL, France and Cheriton School of Computer Science, University of Waterloo, Canada
3. Univ. Lille, CNRS, Inria, Centrale Lille, UMR 9189 CRIStAL, France and Cheriton School of Computer Science, University of Waterloo, Canada
4. Cheriton School of Computer Science, University of Waterloo, Canada