refactored accordian module