Copyright (C) 2012-2020 by various contributors (see AUTHORS)