add Array port logic