Moving to a type activator based pattern instead of using Activator