hopefully improved memory consumption