further memory use reduction