rinomina asUnmodifiableSet in allowedModules
usa una enum al posto dei switch