split into modules by general category