added design for programming adapter