В рамках этой строки размещён детализированный обзор. В финале даны подсказки, чтобы было проще избежать лишних шагов. Когда требуется можно подстроить эту подачу под свою задачу. В основной части комбинируются альтернативные конструкции, чтобы уменьшить шаблонность. Если анализировать построение, становится заметно, что эта логика не зацикливается в одном шаблоне, а перестраивается между вариантами.