refactored Requirements widget