removed struct from enum declarations, as they're the only sane declaration to put in there anyway