introduce client module