memory peak usage: 14.18 MB