Revert "Revert "Homework of Vladimir Pechev""

This reverts commit c0f112d27d69fde6fab0cd60f4ebb46bd6e667d5.