sub new { return bless {}, shift; }