apply @pyrotechnik's temporary var technique to reduce GC load
1.0.1