add InPort class