modified for 74HC595N