add parameter checking to handlers