client processing