change from Duplex to transfrom