Your micro-benchmark improvements are significant, but do you have evidence to suggest that the performance of this method is actually critical to real applications? In other words, is the added code complexity really worth it? - Mark