Just wondering... why do we need all this port stuff in here?