add SegmentTreeImplementation