This isn't always that useful and I'm not sure what performance impact it has so I'm going to keep this in a branch in case I need it in the future.