experimental change to avoid mallocs