update: check input parameters
update: anykernelmaker