Copyright (c) BMS 2011-2012