finished duplexer redux