more performance improvement