add support for port option