memory peak usage: 14.61 MB