moved modifiers to separate src package to allow optional inclusion