Added more parameter validation