memory peak usage: 14.66 MB