modify argument checking