memory peak usage: 24.91 MB