segmented controller refactoring;