new contrl & logic added