Copyright (C) 2012-17 University of Michigan
Copyright (C) 1998-14 ETH Zurich
