Added port abstraction.