parameter checking WIP