memory peak usage: 18.60 MB