further optimaze