created Pengine class