memory peak usage: 23.99 MB