added segmented controller