Need to optmize the first argument too.