make heapLimit optional