Add initial input implementation, and ports.