, Department of Computer Science, University of Auckland, Private Bag 92019, Auckland, New Zealand, New Zealand