https://eslizn.com/posts/two-solutions-to-the-pyramid-callback-problem/