missed a template
add ArrayNumaApply etc. add type check for numa array, change type check to cpp type check