reorganize for variants