introduce primitive