https://clfh.org/6878
В целом, всё понятно, и даже с незнанием языка решаемо. Главное не поломать.