My only concern with this is that INPUT-PORTs and OUTPUT-PORTs should NOT be made disjoint from each other. I use ports in SCM which are both input and output ports.