Refactoring to remove static Rules & SequenceProvider