https://videosashka.com/watch/RsfLFu30pLg/pattern-8-solving-pattern-problems-in-java-java