memory peak usage: 30.74 MB