rename api to efunc, arrayapi to func