https://book.etudes.ru/articles/patternhappen/@bookspread/