reduced gc overhead