wrapped handler, added client reading